# US 12,003,695 B2 · Self-organizing rolling shutter camera arrays for low-cost, accurate volumetric capture workflows

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

- Number: US 12,003,695 B2
- Document ID: US12003695B2
- Status: Granted
- Kind: B2
- Application number: 17/901,731
- Filed: 2022-09-01
- Published: 2024-03-07
- Granted: 2024-06-04
- Earliest claimed: 2022-09-01
- Assignees: Sony Group Corporation
- Applicants: Sony Group Corporation
- Inventors: Luis Vanconcelos; Nikolaos Georgis
- Web page: https://patentgrep.com/patent/US12003695B2

## CPC

- G06V 10/46: Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features (colour feature extraction G06V10/56)
- H04N 13/282: for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
- G06V 10/443: {by matching or filtering}
- G06V 10/75: Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V 20/17: taken from planes or by drones
- G06V 20/50: Context or environment of the image
- G06V 20/64: Three-dimensional [3D] objects
- H04N 23/633: {for displaying additional information relating to control or operation of the camera}
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

An apparatus includes one or more processors and logic encoded in one or more non-transitory media for execution by the one or more processors and when executed operable to receive images from a set of cameras that are positioned in a plurality of levels around one or more objects, wherein the set of cameras are positioned at a same orientation and each image is captured by a rolling shutter and associated with a position and orientation of a corresponding camera from the set of cameras. The logic is further operable to, for each level of cameras generate a three-dimensional pointcloud based on the position and orientation of corresponding cameras and matched extracted features. The logic is further operable to merge the three-dimensional pointcloud for each level of the cameras to form a three-dimensional volumetric model of one or more objects.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving images from a set of cameras that are positioned in a plurality of levels around one or more objects, wherein the set of cameras are positioned at a same orientation and each image is captured by a rolling shutter and associated with a position and orientation of a corresponding camera from the set of cameras;
for each level of cameras:
performing feature extraction on a subset of the images corresponding to the level to identify features of one or more objects;
matching extracted features between the subset of the images; and
generating a three-dimensional pointcloud based on the position and orientation of corresponding cameras and matched extracted features; and
merging the three-dimensional pointcloud for each level of the cameras to form a three-dimensional volumetric model of one or more objects.

### Claim 2 (depends on 1)

The method of claim 1, wherein the same orientation is a landscape orientation and each of the levels forms a cylinder around the one or more objects.

### Claim 3 (depends on 1)

The method of claim 1, wherein the same orientation is a portrait orientation and each of the levels forms a column.

### Claim 4 (depends on 1)

The method of claim 1, wherein one or more of the cameras in the set of cameras are part of a drone.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining that a camera in the set of cameras is not positioned or orientated to capture images that are colinear with the subset of the images corresponding to the level.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
generating graphical data for displaying a user interface that provides instructions for how to position a camera from the set of cameras.

### Claim 7 (depends on 6)

The method of claim 6, wherein the instructions are based on achieving a particular position and a particular orientation of the camera.

### Claim 8

An apparatus comprising:
one or more processors; and
logic encoded in one or more non-transitory media for execution by the one or more processors and when executed operable to:
receive images from a set of cameras that are positioned in a plurality of levels around one or more objects, wherein the set of cameras are positioned at a same orientation and each image is captured by a rolling shutter and associated with a position and orientation of a corresponding camera from the set of cameras;
for each level of cameras:
perform feature extraction on a subset of the images corresponding to the level to identify features of one or more objects;
match extracted features between the subset of the images; and
generate a three-dimensional pointcloud based on the position and orientation of corresponding cameras and matched extracted features; and
merge the three-dimensional pointcloud for each level of the cameras to form a three-dimensional volumetric model of one or more objects.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the same orientation is a landscape orientation and each of the levels forms a cylinder around the one or more objects.

### Claim 10 (depends on 8)

The apparatus of claim 8, wherein the same orientation is a portrait orientation and each of the levels forms a column.

### Claim 11 (depends on 8)

The apparatus of claim 8, wherein one or more of the cameras in the set of cameras are part of a drone.

### Claim 12 (depends on 8)

The apparatus of claim 8, wherein the logic when executed is further operable to:
determine that a camera in the set of cameras is not positioned or orientated to capture images that are colinear with the subset of the images corresponding to the level.

### Claim 13 (depends on 8)

The apparatus of claim 8, wherein the logic when executed is further operable to:
generate graphical data for displaying a user interface that provides instructions for how to position a camera from the set of cameras.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the instructions are based on achieving a particular position and a particular orientation of the camera.

### Claim 15

Software encoded in one or more computer-readable media for execution by the one or more processors and when executed is operable to:
receive images from a set of cameras that are positioned in a plurality of levels around one or more objects, wherein the set of cameras are positioned at a same orientation and each image is captured by a rolling shutter and associated with a position and orientation of a corresponding camera from the set of cameras;
for each level of cameras:
perform feature extraction on a subset of the images corresponding to the level to identify features of one or more objects;
match extracted features between the subset of the images; and
generate a three-dimensional pointcloud based on the position and orientation of corresponding cameras and matched extracted features; and
merge the three-dimensional pointcloud for each level of the cameras to form a three-dimensional volumetric model of one or more objects.

### Claim 16 (depends on 15)

The software of claim 15, wherein the same orientation is a landscape orientation and each of the levels forms a cylinder around the one or more objects.

### Claim 17 (depends on 15)

The software of claim 15, wherein the same orientation is a portrait orientation and each of the levels forms a column.

### Claim 18 (depends on 15)

The software of claim 15, wherein one or more of the cameras in the set of cameras are part of a drone.

### Claim 19 (depends on 15)

The software of claim 15, wherein the one or more processors are further operable to:
determine that a camera in the set of cameras is not positioned or orientated to capture images that are colinear with the subset of the images corresponding to the level.

### Claim 20 (depends on 15)

The software of claim 15, wherein the one or more processors are further operable to:
generate graphical data for displaying a user interface that provides instructions for how to position a camera from the set of cameras.
