# US 2017/0286430 A1 · Automatic registration

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

- Number: US 2017/0286430 A1
- Document ID: US20170286430A1
- Status: Published application
- Kind: A1
- Application number: 15/625,499
- Filed: 2017-06-16
- Published: 2017-10-05
- Earliest claimed: 2013-12-02
- Assignees: Autodesk, Inc.
- Applicants: Autodesk, Inc.
- Inventors: Oytun Akman; Ronald Poelman; Seth Koterba
- Web page: https://patentgrep.com/patent/US20170286430A1

## CPC

- G06F 16/24578: {using ranking}
- G06F 16/285: {Clustering or classification}
- G06F 16/583: using metadata automatically derived from the content
- G06T 17/00: Three-dimensional [3D] modelling for computer graphics
- G06T 17/20: Finite element generation, e.g. wire-frame surface description, {tesselation}
- G06V 10/24: Aligning, centring, orientation detection or correction of the image
- G06V 10/44: Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V 10/752: {Contour matching}
- G06T 2210/56: Particle system, point based geometry or rendering
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

A method, system, apparatus, article of manufacture, and computer-readable storage medium provide the ability to merge multiple point cloud scans. A first raw scan file and a second raw scan file (each including multiple points) are imported. The scan files are segmented by extracting segments based on geometry in the scene. The segments are filtered to reduce a number of segments and identify features. A set of candidate matching feature pairs are acquired by coarsely registering features from one scan to features from another scan. The candidate pairs are refined by improving alignment based on corresponding points in the features. The candidate pairs are scored and then merged based on the scores.

## Claims

### Claim 1

A computer-implemented method for merging multiple point cloud scans, comprising:
(a) importing a first raw scan file and a second raw scan file for a scene, wherein each raw scan file comprises multiple points;
(b) segmenting the first raw scan file and the second raw scan file by extracting first segments from the first raw scan file and second segments from the second raw scan file, wherein the extracting is based on geometry in the scene;
(c) filtering the first segments and the second segments to:
(1) reduce a number of the first segments and second segments; and
(2) identify first features from the reduced number of first segments and second features from the reduced number of second segments;
(d) coarsely registering one or more of the first features to one or more of the second features to acquire a set of candidate matching feature pairs;
(e) refining the registering by improving alignment of the set of candidate matching feature pairs, wherein the refining the registering is based on points in the first raw scan file and the second raw scan file corresponding to the first features and the second features;
(f) scoring the candidate matching feature pairs; and
(g) merging the first raw scan file with the second raw scan file based on the scoring, to create a merged scan file.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the filtering the first segments and the second segments is based on segment size, segment normal, and z-coordinates of the first segments and the second segments.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the filtering comprises:
filtering out floor and ceiling segments.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the coarsely registering comprises:
a rotation estimation; and
a translation estimation.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein the rotation estimation comprises:
determining rotation angles around a z-axis for the first features and the second features; and
selecting rotation angle candidate pairs of the first features and the second features based on a similarity of the rotation angles.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5, wherein the translation estimation comprises:
determining a translation for each of the selected rotation angle candidate pairs;
determining candidate matching feature pairs based on a similarity of the translations.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the refining the registering further comprises coarse refining the registering based on all of the candidate matching feature pairs.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the scoring comprises:
computing an amount of overlap between the first feature and the second feature of each candidate matching feature pair.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, further comprising minimizing errors in the merged scan file using a bundle adjustment operation.

### Claim 10

A computer system for merging multiple point cloud scans comprising:
(a) a computer;
(b) a point cloud scanner communicatively coupled to the computer, wherein the point cloud scanner obtains a first raw scan file and a second raw scan file for a scene, wherein each raw scan file comprises multiple points;
(c) an application executing on the computer that:
(1) segments the first raw scan file and the second raw scan file by extracting first segments from the first raw scan file and second segments from the second raw scan file, wherein the extracting is based on geometry in the scene;
(2) filters the first segments and the second segments to:
(i) reduce a number of the first segments and second segments; and
(ii) identify first features from the reduced number of first segments and second features from the reduced number of second segments;
(3) coarsely registers one or more of the first features to one or more of the second features to acquire a set of candidate matching feature pairs;
(4) refines the registering by improving alignment of the set of candidate matching feature pairs, wherein the application refines the registering based on points in the first raw scan file and the second raw scan file corresponding to the first features and the second features;
(f) scores the candidate matching feature pairs; and
(g) merges the first raw scan file with the second raw scan file based on the scoring, to create a merged scan file.

### Claim 11 (depends on 10)

The computer system of claim 10, wherein the application filters the first segments and the second segments based on segment size, segment normal, and z-coordinates of the first segments and the second segments.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein the application filters by:
filtering out floor and ceiling segments.

### Claim 13 (depends on 10)

The computer system of claim 10, wherein the application coarsely registers using a:
a rotation estimation; and
a translation estimation.

### Claim 14 (depends on 13)

The computer system of claim 13, wherein the rotation estimation comprises:
determining rotation angles around a z-axis for the first features and the second features; and
selecting rotation angle candidate pairs of the first features and the second features based on a similarity of the rotation angles.

### Claim 15 (depends on 14)

The computer system of claim 14, wherein the translation estimation comprises:
determining a translation for each of the selected rotation angle candidate pairs;
determining candidate matching feature pairs based on a similarity of the translations.

### Claim 16 (depends on 10)

The computer system of claim 10, wherein the application refines the registering by coarse refining the registering based on all of the candidate matching feature pairs.

### Claim 17 (depends on 10)

The computer system of claim 10, wherein the application scores by:
computing an amount of overlap between the first feature and the second feature of each candidate matching feature pair.

### Claim 18 (depends on 10)

The computer system of claim 10, wherein the application further minimizes errors in the merged scan file using a bundle adjustment operation.
