# US 11,443,474 B2 · Generation of texture models using a moveable scanner

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

- Number: US 11,443,474 B2
- Document ID: US11443474B2
- Status: Granted
- Kind: B2
- Application number: 17/166,923
- Filed: 2021-02-03
- Published: 2021-05-27
- Granted: 2022-09-13
- Earliest claimed: 2019-02-05
- Assignees: Artec Europe S.à R.L.
- Applicants: Artec Europe S.à R.L.
- Inventors: Anton Bosneaga
- Web page: https://patentgrep.com/patent/US11443474B2

## CPC

- G01B 11/25: by projecting a pattern, e.g. {one or more lines,} moiré fringes on the object (G01B11/255 takes precedence {; image analysis for depth or shape recovery G06T7/50})
- G06T 15/04: Texture mapping
- G06T 7/514: from specularities
- G06T 7/521: from laser ranging, e.g. using interferometry; from the projection of structured light
- G06T 7/90: Determination of colour characteristics
- G06T 13/20: Three-dimensional [3D] animation
- G06T 15/08: Volume rendering
- G06V 20/64: Three-dimensional [3D] objects
- G06V 30/142: using hand-held instruments; Constructional details of the instruments
- G06T 2200/08: involving all processing steps from image acquisition to 3D model generation
- G01B: MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

A method is performed at a moveable scanner with one or more optical sensors. The method includes scanning, using the moveable scanner, an object having a surface. The scanning generates color data from a plurality of orientations of the moveable scanner with respect to the object. The method further includes generating, using at least the color data, a pixel map of the surface of the object, the pixel map including, for each respective pixel of a plurality of pixels: a color value of a corresponding point on the surface of the object; and a value for a non-color property of the corresponding point on the surface of the object.

## Claims

### Claim 1

A method, comprising:
scanning, using a three-dimensional (3D) scanner with one or more optical sensors, an object having a surface, wherein the scanning generates:
color data from a plurality of orientations of the 3D scanner with respect to the object; and
data corresponding to a three-dimensional (3D) shape of at least a portion of the surface of the object;
generating, using the data corresponding to the three-dimensional (3D) shape of the at least portion of the surface of the object, a 3D reconstruction of the shape of the at least portion of the surface of the object, wherein the 3D reconstruction comprises a plurality of pixels;
for each pixel of the plurality of pixels, determining a true normal direction;
generating, using at least the color data, a pixel map of the surface of the object, the pixel map including, for each respective pixel of a plurality of pixels:
a color value of a corresponding point on the surface of the object, wherein, for each respective pixel of the plurality of pixels of the pixel map, the color value is determined using color data from a predefined range of angles relative to the true normal direction for the respective pixel and wherein the predefined range of angles is a range of angles greater than a diffuse threshold angle; and
a value for a specular property of the corresponding point on the surface of the object, wherein the value for the specular property of the corresponding point on the surface of the object is determined using the true normal direction for the corresponding point on the surface of the object, wherein the value of the specular property is determined using color data obtained at angles relative to the true normal direction that are less than the diffuse angle threshold.

### Claim 2 (depends on 1)

The method of claim 1, wherein the pixel map is a texture map of the surface of the object.

### Claim 3 (depends on 1)

The method of claim 1, further including generating, using at least the color data, for each respective pixel of the plurality of pixels, a value for a non-color property of the respective pixel, wherein the non-color property is selected from the group consisting of: a metalness parameter, and a surface roughness.

### Claim 4 (depends on 1)

The method of claim 1, wherein the scanning includes repositioning the 3D scanner at the plurality of orientations with respect to the object.

### Claim 5 (depends on 1)

The method of claim 1, wherein a single optical sensor obtains the color data from the plurality of orientations of the 3D scanner with respect to the object.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
generating, using the 3D reconstruction of the shape of the at least portion of the surface of the object and pixel map, a textured 3D representation of the object.

### Claim 7 (depends on 6)

The method of claim 6, further including:
using the textured 3D representation of the object to animate a corresponding object in an animation.

### Claim 8 (depends on 1)

The method of claim 1, further including:
determining, using the 3D reconstruction of the shape of the at least portion of the surface of the object, the plurality of orientations of the 3D scanner with respect to the object from which the color data was obtained.

### Claim 9 (depends on 1)

The method of claim 1, wherein:
the one or more optical sensors include a first optical sensor; and
generating the data corresponding to the three-dimensional (3D) shape of the at least portion of the surface of the object includes repeatedly performing the operations of:
projecting a spatial pattern of light onto the surface of the object; and
while the spatial pattern of light is projected onto the surface of the object, acquiring, using the first optical sensor, an image of the surface of the object.

### Claim 10 (depends on 1)

The method of claim 1, wherein:
the one or more optical sensors include a second optical sensor; and
generating the color data from the plurality of orientations of the 3D scanner with respect to the object includes acquiring, using the second optical sensor, with the 3D scanner positioned at each of the plurality of orientations with respect to the object, an image of the surface of the object.

### Claim 11 (depends on 1)

The method of claim 1, further including:
determining a pixel-level correspondence between pixels in different images of the surface of the object.

### Claim 12 (depends on 1)

The method of claim 1, wherein:
for each respective pixel of the plurality of pixels of the pixel map, the color value of the corresponding point on the surface of the object is a corrected color value; and
generating the corrected color value includes:
determining a nominal color value for the respective pixel using the color data; and
adjusting the nominal color value for the respective pixel of the pixel map using the value for the specular property of the corresponding point on the surface of the object.

### Claim 13 (depends on 1)

The method of claim 1, wherein, for each respective pixel of the plurality of pixels of the pixel map, the true normal direction is determined by selecting, as the true normal direction, the angle at which a maximum luminance occurs in the color data.

### Claim 14 (depends on 1)

The method of claim 1, wherein, for each respective pixel of the plurality of pixels of the pixel map, the true normal direction is determined by:
fitting the color data to a predetermined function of the angle at which the color data was obtained; and
selecting, as the true normal direction, the angle at which the fitted predetermined function has a maximum luminance.

### Claim 15 (depends on 1)

The method of claim 1, wherein the color value for each of the plurality of pixels is a vector value.

### Claim 16 (depends on 1)

The method of claim 1, wherein the value for the specular property for each of the plurality of pixels is a scalar value.

### Claim 17 (depends on 1)

The method of claim 1, wherein the 3D scanner is a portable handheld 3D scanner.

### Claim 18

A method, comprising:
scanning, using a three-dimensional (3D) scanner with one or more cameras, an object having a surface, wherein the scanning generates:
color data from a plurality of orientations of the 3D scanner with respect to the object, wherein generating the color data from the plurality of orientations of the 3D scanner with respect to the object includes acquiring, with the one or more cameras positioned at each of the plurality of orientations with respect to the object, an image of the surface of the object; and
data corresponding to a three-dimensional (3D) shape of at least a portion of the surface of the object, wherein generating the data corresponding to the three-dimensional (3D) shape of the at least portion of the surface of the object includes repeatedly performing the operations of:
projecting a spatial pattern of light onto the surface of the object; and
while the spatial pattern of light is projected onto the surface of the object, acquiring, using the one or more cameras, an image of the surface of the object;
generating, using the data corresponding to the three-dimensional (3D) shape of the at least portion of the surface of the object, a 3D reconstruction of the shape of the at least portion of the surface of the object;
generating a pixel map of the surface of the object, the pixel map including, for each respective pixel of a plurality of pixels:
a value for a non-color property of a corresponding point on the surface of the object;
a color value of the corresponding point on the surface of the object, wherein the color value is generated using the color data and corrected according to the value of the non-color property of the corresponding point on the surface of the object;
wherein:
for each pixel of the plurality of pixels of the pixel map, the value for the non-color property of the corresponding point on the surface of the object is determined by:
providing, to a solver for a set of one or more texture equations, the images of the surface of the object together with information indicating the orientations of the 3D scanner with respect to the object at which the images were obtained; and
receiving, as an output from the solver for the set of one or more texture equations, the value for the non-color property of the corresponding point on the surface of the object.

### Claim 19 (depends on 18)

The method of claim 18, wherein the pixel map is a texture map of the surface of the object.

### Claim 20 (depends on 18)

The method of claim 18, wherein the non-color property is selected from the group consisting of: a diffuse value, a specular value, a metalness parameter, and a surface roughness.

### Claim 21 (depends on 18)

The method of claim 18, wherein the scanning includes repositioning the 3D scanner at the plurality of orientations with respect to the object.

### Claim 22 (depends on 18)

The method of claim 18, wherein a single optical sensor obtains the color data from the plurality of orientations of the 3D scanner with respect to the object.

### Claim 23 (depends on 18)

The method of claim 18, further comprising:
generating, using the 3D reconstruction of the shape of the at least portion of the surface of the object and pixel map, a textured 3D representation of the object.

### Claim 24 (depends on 23)

The method of claim 23, further including:
using the textured 3D representation of the object to animate a corresponding object in an animation.

### Claim 25 (depends on 18)

The method of claim 18, further including:
determining, using the 3D reconstruction of the shape of the at least portion of the surface of the object, the plurality of orientations of the 3D scanner with respect to the object from which the color data was obtained.

### Claim 26 (depends on 18)

The method of claim 18, further including:
determining a pixel-level correspondence between pixels in different images of the surface of the object.
