# US 12,657,938 B2 · Method for detecting correspondence of a built structure with a designed structure

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

- Number: US 12,657,938 B2
- Document ID: US12657938B2
- Status: Granted
- Kind: B2
- Application number: 17/906,780
- Filed: 2021-03-19
- Published: 2023-05-11
- Granted: 2026-06-16
- Earliest claimed: 2020-03-20
- Assignees: Bim & Scan Limited
- Applicants: BIM & Scan Limited
- Inventors: Shawn O'Keeffe
- Web page: https://patentgrep.com/patent/US12657938B2

## CPC

- G06V 20/653: {by matching three-dimensional models, e.g. conformal mapping of Riemann surfaces}
- G06F 30/20: Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30)
- G06T 7/0006: {using a design-rule based approach}
- G06V 10/56: relating to colour
- G06V 30/274: {Syntactic or semantic context, e.g. balancing}
- G06T 2207/10028: Range image; Depth image; 3D point clouds
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

This invention relates to a computer implemented method for detecting correspondence of a built structure with a designed structure. The method comprises the steps of: receiving an unorganized point cloud (PC) of the built structure, the unorganized PC containing a data set with a plurality of data points, each of which has an RGB value associated therewith; receiving an Industry Foundation Classes (IFC) model of the designed structure, the IFC model including an IFC schema file classifying all object types and object characteristics in the IFC model, the object characteristics including a model object RGB value; integrating the unorganized PC with the IFC model and generating a semantic point cloud by overwriting the RGB value of the data point in the PC with the model object RGB value from the IFC model. In this way, the resulting PC will be easier to evaluate and the evaluation will be more effective.

## Claims

### Claim 1

A computer implemented method for detecting correspondence of a built structure with a designed structure comprising the steps of:
receiving an unorganized point cloud (PC) of the built structure, the unorganized PC containing a data set with a plurality of data points, each of which has an RGB value associated therewith;
receiving an Industry Foundation Classes (IFC) model of the designed structure, the IFC model including an IFC schema file classifying all object types and object characteristics in the IFC model, the object characteristics including a model object RGB value unique to each IFC object's entity type;
integrating the unorganized PC with the IFC model;
identifying objects in the unorganized PC by determining the data points in the unorganized PC that correspond to an object in the IFC model, comprising the step of applying a ray casting object recognition technique from a scan origin on defined trajectories; and
in which the ray casting object recognition technique includes the steps of: (i) targeting, for each data point, by casting a ray in that direction along a direction vector computed from the scan origin towards that data point; (ii) capturing, by the ray travelling through 3D space until it intersects with any object geometry representing the IFC model; (iii) defining, by checking an intersection result, whether a hit depth length of the ray after intersection minus the depth length of the ray between its origin and target point is below the maximum tolerance value, epsilon (ε); and (iv) storing data points, objects and ray depths within a maximum tolerance value, epsilon (ε); and
generating a semantic point cloud, the semantic point cloud comprising the data points from the unorganized PC, and for those data points in the semantic point cloud that correspond to an object in the IFC model, overwriting the RGB value of the data point with the model object RGB value from the IFC model.

### Claim 2 (depends on 1)

A computer implemented method as claimed in claim 1 in which the method comprises the intermediate step of: determining the scan origin.

### Claim 3 (depends on 2)

A computer implemented method as claimed in claim 2 in which the method comprises the intermediate step of: defining trajectories from the scan origin to each of the data points in the data set of the unorganized PC.

### Claim 4 (depends on 1)

A computer implemented method as claimed in claim 1 in which each of the captured data points are compared to the maximum tolerance value, epsilon (ε), and those data points that are within the maximum tolerance value epsilon (ε) with respect to each other are stored as associated data points.

### Claim 5 (depends on 1)

A computer implemented method as claimed in claim 1 in which each of the data points that do not correspond to an object in the IFC model are stored separately.

### Claim 6 (depends on 1)

A computer implemented method as claimed in claim 1 comprising the step of defining a unique ID for each data point.

### Claim 7 (depends on 6)

A computer implemented method as claimed in claim 6 in which an IFC model object type global unique identification (GUID) tag is assigned to data points that correspond to an object in the IFC model.

### Claim 8 (depends on 1)

A computer implemented method as claimed in claim 1 in which the method comprises the step of serializing the semantic point cloud.

### Claim 9 (depends on 1)

A computer implemented method as claimed in claim 1 in which the IFC model is a model view definition (MVD).

### Claim 10 (depends on 1)

A computer implemented method as claimed in claim 1 in which the IFC model is in a Step Physical File Format (SPFF).

### Claim 11

A computer program product, including a non-transitory computer readable medium, having program instructions stored thereon that when operated on a computer, cause the computer to carry out the method steps of:
receiving an unorganized point cloud (PC) of the built structure, the unorganized PC containing a data set with a plurality of data points, each of which has an RGB value associated therewith;
receiving an Industry Foundation Classes (IFC) model of the designed structure, the IFC model including an IFC schema file classifying all object types and object characteristics in the IFC model, the object characteristics including a model object RGB value unique to each IFC object's entity type;
integrating the unorganized PC with the IFC model;
identifying objects in the unorganized PC by determining the data points in the unorganized PC that correspond to an object in the IFC model, comprising the step of applying a ray casting object recognition technique from a scan origin on defined trajectories; and
in which the ray casting object recognition technique includes the steps of: (i) targeting, for each data point, by casting a ray in that direction along a direction vector computed from the scan origin towards that data point; (ii) capturing, by the ray travelling through 3D space until it intersects with any object geometry representing the IFC model; (iii) defining, by checking an intersection result, whether a hit depth length of the ray after intersection minus the depth length of the ray between its origin and target point is below the maximum tolerance value, epsilon (ε); and (iv) storing data points, objects and ray depths within a maximum tolerance value, epsilon (ε); and
generating a semantic point cloud, the semantic point cloud comprising the data points from the unorganized PC, and for those data points in the semantic point cloud that correspond to an object in the IFC model, overwriting the RGB value of the data point with the model object RGB value from the IFC model.

### Claim 12

A system for detecting correspondence of a built structure with a designed structure comprising a processor and a memory, the system further comprising:
means for receiving an unorganized point cloud (PC) of the built structure, the unorganized PC containing a data set with a plurality of data points, each of which has an RGB value associated therewith;
means for receiving an Industry Foundation Classes (IFC) model of the designed structure, the IFC model including an IFC schema file classifying all object types and object characteristics in the IFC model, the object characteristics including a model object RGB value unique to each IFC object's entity type;
means for integrating the unorganized PC with the IFC model;
means for identifying objects in the unorganized PC by determining the data points in the unorganized PC that correspond to an object in the IFC model, comprising means for applying a ray casting object recognition technique from a scan origin on defined trajectories; and
in which the means for applying the ray casting object recognition technique includes: (i) means for targeting, for each data point, by casting a ray in that direction along a direction vector computed from the scan origin towards that data point; (ii) means for capturing, by the ray travelling through 3D space until it intersects with any object geometry representing the IFC model; (iii) means for defining, by checking an intersection result, whether a hit depth length of the ray after intersection minus the depth length of the ray between its origin and target point is below the maximum tolerance value, epsilon (ε); and (iv) means for storing data points, objects and ray depths within a maximum tolerance value, epsilon (ε); and
means for generating a semantic point cloud, the semantic point cloud comprising the data points from the unorganized PC, and for those data points in the semantic point cloud that correspond to an object in the IFC model, having the RGB value of the data point overwritten with the model object RGB value from the IFC model.

### Claim 13 (depends on 12)

A system as claimed in claim 12 in which there is provided means for determining the scan origin.

### Claim 14 (depends on 13)

A system as claimed in claim 13 in which there is provided means for defining trajectories from the scan origin to each of the data points in the data set of the unorganized PC.

### Claim 15 (depends on 12)

A system as claimed in claim 12 in which there is provided means to compare each of the captured data points to the maximum tolerance value, epsilon (ε), and a memory for storage of those data points that are within the maximum tolerance value epsilon (ε) with respect to each other as associated data points.

### Claim 16 (depends on 12)

A system as claimed in claim 12 in which each of the data points that do not correspond to an object in the IFC model are stored separately.

### Claim 17 (depends on 12)

A system as claimed in claim 12 in which there is provided means to define a unique ID for each data point.

### Claim 18 (depends on 17)

A system as claimed in claim 17 in which an IFC model object type global unique identification (GUID) tag is assigned to data points that correspond to an object in the IFC model.

### Claim 19 (depends on 12)

A system as claimed in claim 12 in which there is provided means to serialize the semantic point cloud.

### Claim 20 (depends on 12)

A system as claimed in claim 12 in which the IFC model is a model view definition (MVD).

### Claim 21 (depends on 12)

A system as claimed in claim 12 in which the IFC model is in a Step Physical File Format (SPFF).
