# US 10,311,163 B2 · Non-parametric microfacet factor models for isotropic bidirectional reflectance distribution functions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,311,163 B2
- Document ID: US10311163B2
- Status: Granted
- Kind: B2
- Application number: 14/320,636
- Filed: 2014-06-30
- Published: 2015-12-31
- Granted: 2019-06-04
- Earliest claimed: 2014-06-30
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Mahdi MohammadBagher; Derek Nowrouzezahrai; John Michael Snyder
- Web page: https://patentgrep.com/patent/US10311163B2

## CPC

- G01N 21/17: Systems in which incident light is modified in accordance with the properties of the material investigated (where the material investigated is optically excited causing a change in wavelength of the incident light G01N21/63)
- G01N 21/55: Specular reflectivity
- G06F 30/00: Computer-aided design [CAD]
- G06T 15/506: {Illumination models}
- G01N: INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES (measuring or testing apparatus or processes other than immunoassay, involving enzymes or microorganisms C12M, C12Q)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A plurality of measured sample data points associated with reflectance on a surface of a material is obtained. A non-parametric densely tabulated one-dimensional representation for a plurality of factors in a microfacet model is generated, using the obtained sample data points.

## Claims

### Claim 1

A system comprising:
at least one processor; and
a computer-readable storage medium that stores executable code which, when executed by the at least one processor, causes the at least one processor to:
obtain measured three-dimensional (3D) sample data associated with reflectance on a surface of an isotropic material;
fit the 3D sample data to a microfacet model comprising one-dimensional (1D) functions that are factors in the microfacet model by iteratively updating an individual factor while holding the remaining factors constant to generate a non-parametric densely tabulated 1D representation of the reflectance; and
render one or more images using the non-parametric densely tabulated 1D representation.

### Claim 2 (depends on 1)

The system of claim 1, wherein
the measured 3D sample data represent measurements of an appearance of brightness of points on the surface of the isotropic material.

### Claim 3 (depends on 2)

The system of claim 2, wherein:
the appearance of brightness is based at least on brightness perceived under different views and light positions relative to the surface of the isotropic material.

### Claim 4 (depends on 1)

The system of claim 1, wherein the executable code further causes the at least one processor to:
fit the 3D sample data to the microfacet model using a fitting metric that is calculated using a sum-of-squares weighting, wherein the sum-of-squares weighting includes applying a non-constant function of measurement magnitudes of the measured 3D sample data.

### Claim 5 (depends on 4)

The system of claim 4, wherein the executable code further causes the at least one processor to:
minimize the fitting metric using an alternating weighted least squares (AWLS) numerical technique.

### Claim 6 (depends on 1)

The system of claim 1, wherein the 1D functions of that are the factors in the microfacet model include three 1D functions corresponding to three dimensions of the measured 3D sample data.

### Claim 7 (depends on 6)

The system of claim 6, wherein:
the factors include:
a Fresnel factor (F) that represents a dependence of the reflectance on a spread angle θd,
a normal distribution function (D) representing a probability that a microfacet normal makes an angle of θh with a surface macro-scale normal, and
a geometric factor (G) that represents a micro-geometry shadowing and inter-reflecting light onto the micro-geometry itself, as a function of one or more of an obliquity of a light direction or an obliquity of a view direction.

### Claim 8 (depends on 1)

The system of claim 1, wherein the executable code further causes the at least one processor to:
generate the non-parametric densely tabulated 1D representation by applying the microfacet model independently for each color channel of a measurement spectrum.

### Claim 9 (depends on 1)

The system of claim 1, wherein the executable code further causes the at least one processor to:
generate the non-parametric densely tabulated 1D representation by applying the microfacet model independently as a three-channel measurement each of a red channel, a green channel, and a blue channel, for an RGB (red-green-blue) measurement spectrum.

### Claim 10

A computer-implemented method comprising:
obtaining measured three-dimensional (3D) sample data associated with reflectance on a surface of an isotropic material;
fitting the measured 3D sample data to a model that includes one-dimensional (1D) functions to generate a 1D representation of the model, the fitting including applying a model fitting metric to the measured 3D sample data, the model fitting metric calculated using a nonnegative, nonzero power of a ratio of a compressive function and a non-asymptotically increasing function, the compressive function and the non-asymptotically increasing function defined over normalized values of the measured 3D sample data; and
rendering one or more images based at least on the 1D representation of the model.

### Claim 11 (depends on 10)

The method of claim 10, wherein:
the model fitting metric includes a volume form weighting based at least on a three-angle parameterization corresponding to three dimensions of the measured 3D sample data.

### Claim 12 (depends on 10)

The method of claim 10, wherein:
the model fitting metric includes a bidirectional reflectance distribution function (BRDF) importance weighting based at least on a BRDF in a local shading integral over incident lighting directions.

### Claim 13 (depends on 10)

The method of claim 10, further comprising:
minimizing the model fitting metric using an alternating weighted least squares (AWLS) numerical technique.

### Claim 14 (depends on 10)

The method of claim 10, wherein:
the measured 3D sample data include high dynamic range (HDR) data points with values greater than a predetermined threshold.

### Claim 15

A system comprising:
at least one data processing apparatus; and
a computer-readable storage medium storing executable code which, when executed by the at least one data processing apparatus, causes the at least one data processing apparatus to:
obtain measured three dimensional (3D) sample data associated with reflectance on a surface of an isotropic material;
fit the measured 3D sample data to a model that includes 1D functions to generate a one-dimensional (1D) representation of the model by applying a fitting metric to the measured 3D sample data, the fitting metric calculated using a sum-of-squares weighting, the sum-of-squares weighting including a non-constant function of measurement magnitudes of the measured 3D sample data; and
render one or more images using the 1D representation.

### Claim 16 (depends on 15)

The system of claim 15, wherein:
the sum-of-squares weighting includes squared differences between predictions of the model and actual measurement values.

### Claim 17 (depends on 15)

The system of claim 15, wherein:
the measured 3D sample data represent an appearance of brightness of points on the surface of the isotropic material.

### Claim 18 (depends on 15)

The system of claim 15, wherein the executable code further causes the at least one data processing apparatus to:
calculate the fitting metric using a plurality of subweights, the plurality of subweights including a volume form weighting based at least on a three-angle parameterization corresponding to three dimensions of the measured 3D sample data.

### Claim 19 (depends on 15)

The system of claim 15, wherein the executable code further causes the at least one data processing apparatus to:
calculate the fitting metric using a plurality of subweights, the plurality of subweights including a bidirectional reflectance distribution function (BRDF) importance weighting based at least on a BRDF in a local shading integral over incident lighting directions.

### Claim 20 (depends on 15)

The system of claim 15, wherein:
the 1D representation is a non-parametric densely tabulated 1D representation for the 1D functions in the model.
