# US 2014/0192050 A1 · Three-dimensional point processing and model generation

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

- Number: US 2014/0192050 A1
- Document ID: US20140192050A1
- Status: Published application
- Kind: A1
- Application number: 14/201,200
- Filed: 2014-03-07
- Published: 2014-07-10
- Earliest claimed: 2012-10-05
- Assignees: University of Southern California
- Applicants: University of Southern California
- Inventors: Rongqi Qiu; Ulrich Neumann
- Web page: https://patentgrep.com/patent/US20140192050A1

## CPC

- G06T 17/10: Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
- G06V 20/653: {by matching three-dimensional models, e.g. conformal mapping of Riemann surfaces}
- G06T 2210/56: Particle system, point based geometry or rendering
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

A method for three-dimensional point processing and model generation includes applying a primitive extraction to the data in a point cloud to associate primitive shapes with points within the point cloud, the primitive extraction including, estimating normal vectors for the point cloud, projecting the estimated normal vectors onto a Gaussian sphere, detecting and eliminating point-clusters corresponding to planar areas of the point cloud to obtain a residual Gaussian sphere, detecting great-circle patterns on the residual Gaussian sphere to produce a segmented point cloud, projecting each segment of the segmented point cloud onto respective planes to produce respective two-dimensional point clouds, detecting circle patterns in each two-dimensional point cloud, and processing the circle patterns to determine cylinder parameters for each of a plurality of candidate cylinders, and assembling the candidate cylinders into a three-dimensional surface model of the scene.

## Claims

### Claim 1

A method for three-dimensional point processing and model generation, comprising:
providing data comprising a three-dimensional point cloud representing a scene, the three-dimensional point cloud comprising a plurality of points arrayed in three dimensions;
applying a primitive extraction to the data to associate primitive shapes with points within the three-dimensional point cloud, the primitive extraction comprising:
estimating normal vectors for the three-dimensional point cloud;
projecting the estimated normal vectors onto a Gaussian sphere for the three-dimensional point cloud;
detecting and eliminating point-clusters corresponding to planar areas of the three-dimensional point cloud to obtain a residual Gaussian sphere;
detecting great-circle patterns on the residual Gaussian sphere to produce a segmented point cloud;
projecting each segment of the segmented point cloud onto respective planes to produce respective two-dimensional point clouds;
detecting circle patterns in each two-dimensional point cloud; and
processing the circle patterns to determine cylinder parameters for each of a plurality of candidate cylinders; and
assembling the candidate cylinders into a three-dimensional surface model of the scene.

### Claim 2 (depends on 1)

The method of claim 1, further comprising, dividing the point cloud into a plurality of sub-volumes to obtain a plurality of respective divided three-dimensional point clouds prior to the applying a primitive extraction to the data and wherein the applying comprises applying the primitive extraction to each divided three-dimensional point cloud separately.

### Claim 3 (depends on 2)

The method of claim 2, wherein the assembling comprises assembling candidate cylinders from each of the plurality of sub-volumes into a single three-dimensional surface model of the scene.

### Claim 4 (depends on 1)

The method of claim 1, wherein the assembling the candidate cylinders further comprises calculating boundaries of cylinders including closing gaps between adjacent parallel cylinders that are less than a threshold distance.

### Claim 5 (depends on 4)

The method of claim 4, wherein the assembling the candidate cylinders further comprises detecting joints between adjacent cylinders.

### Claim 6 (depends on 5)

The method of claim 5, wherein the detecting joints further comprises detecting T-junctions, elbows and boundary joints by the application of heuristic criteria.

### Claim 7 (depends on 6)

The method of claim 6, wherein the heuristic criteria comprise criteria selected from the group consisting of: joint radius, gap distance, skew, angle, and combinations thereof.

### Claim 8 (depends on 1)

The method of claim 1, wherein the scene comprises a plant containing a plurality of cylindrical components.

### Claim 9 (depends on 8)

The method of claim 8, wherein the plant comprises a hydrocarbon facility and at least a portion of the plurality of cylindrical components comprise pipes.

### Claim 10 (depends on 1)

The method of claim 1, wherein the assembling further comprises smoothing the cylinders and joints to form the three-dimensional surface model of the scene.

### Claim 11

A system for three-dimensional point processing and model generation, the system comprising:
a database configured to store data comprising a three-dimensional point cloud point cloud representing a scene;
a computer processer configured to receive the stored data from the database, and to execute software responsive to the stored data; and
a software program executable on the computer processer, the software program containing computer readable software instructions for:
applying a primitive extraction to the data to associate primitive shapes with points within the three-dimensional point cloud, the primitive extraction comprising:
estimating normal vectors for the three-dimensional point cloud;
projecting the estimated normal vectors onto a Gaussian sphere for the three-dimensional point cloud;
detecting and eliminating point-clusters corresponding to planar areas of the three-dimensional point cloud to obtain a residual Gaussian sphere;
detecting great-circle patterns on the residual Gaussian sphere to produce a segmented point cloud;
projecting each segment of the segmented point cloud onto respective planes to produce respective two-dimensional point clouds;
detecting circle patterns in each two-dimensional point cloud; and
processing the circle patterns to determine cylinder parameters for each of a plurality of candidate cylinders; and
assembling the candidate cylinders into a three-dimensional surface model of the scene.

### Claim 12 (depends on 11)

The system of claim 11, wherein the software instructions further comprise instructions for dividing the point cloud into a plurality of sub-volumes to obtain a plurality of respective divided three-dimensional point clouds prior to the applying a primitive extraction to the data and wherein the applying comprises applying the primitive extraction to each divided three-dimensional point cloud separately.

### Claim 13 (depends on 12)

The system of claim 12, wherein the assembling comprises assembling candidate cylinders from each of the plurality of sub-volumes into a single three-dimensional surface model of the scene.

### Claim 14 (depends on 11)

The system of claim 11, wherein the assembling the candidate cylinders further comprises calculating boundaries of cylinders including closing gaps between adjacent parallel cylinders that are less than a threshold distance.

### Claim 15 (depends on 14)

The system of claim 14, wherein the assembling the candidate cylinders further comprises detecting joints between adjacent cylinders.

### Claim 16 (depends on 15)

The system of claim 15, wherein the detecting joints further comprises detecting T-junctions, elbows and boundary joints by the application of heuristic criteria.

### Claim 17 (depends on 16)

The system of claim 16, wherein the heuristic criteria comprise criteria selected from the group consisting of: joint radius, gap distance, skew, angle, and combinations thereof.

### Claim 18 (depends on 11)

The system of claim 11, wherein the scene comprises a plant containing a plurality of cylindrical components.

### Claim 19 (depends on 18)

The system of claim 18, wherein the plant comprises a hydrocarbon facility and at least a portion of the plurality of cylindrical components comprise pipes.

### Claim 20

A non-transitory processor readable medium containing computer readable software instructions used for three-dimensional point processing and model generation, the software instructions comprising instructions for:
applying a primitive extraction to three-dimensional point cloud data to associate primitive shapes with points within the three-dimensional point cloud, wherein the three-dimensional point cloud represents a scene, the primitive extraction comprising:
estimating normal vectors for the three-dimensional point cloud;
projecting the estimated normal vectors onto a Gaussian sphere for the three-dimensional point cloud;
detecting and eliminating point-clusters corresponding to planar areas of the three-dimensional point cloud to obtain a residual Gaussian sphere;
detecting great-circle patterns on the residual Gaussian sphere to produce a segmented point cloud;
projecting each segment of the segmented point cloud onto respective planes to produce respective two-dimensional point clouds;
detecting circle patterns in each two-dimensional point cloud; and
processing the circle patterns to determine cylinder parameters for each of a plurality of candidate cylinders.; and
assembling the candidate cylinders into a three-dimensional surface model of the scene.
