IP Library Granted Patent US 10,909,757
Granted Patent B2
US 10,909,757 · App. 16/443,125 · Granted Feb 2, 2021

Computer vision systems and methods for modeling roofs of structures using two-dimensional and partial three-dimensional data

Inventors: Bryce Zachary Porter (Lehi, UT); Ryan Mark Justus (Lehi, UT)
Assignee: Geomni, Inc.
G06T17/10G06F30/13G06N3/08G06T15/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,909,757
App. No.
16/443,125
Granted
Feb 2, 2021
Kind
B2
Abstract

A system for modeling a roof of a structure comprising a first database, a second database and a processor in communication with the first database and the second database. The processor selects one or more images and the respective metadata thereof from the first database based on a received a geospatial region of interest. The processor generates two-dimensional line segment geometries in pixel space based on two-dimensional outputs generated by a neural network in pixel space of at least one roof structure present in the selected one or more images. The processor classifies the generated two-dimensional line segment geometries into at least one contour graph based on three-dimensional data received from the second database and generates a three-dimensional representation of the at least one roof structure based on the at least one contour graph and the received three-dimensional data.

Claims (72)

1. A system for modeling a roof of a structure, comprising:

a first database;

a second database; and

a processor in communication with the first database and the second database, the processor:

selecting at least one image and metadata of the image from the first database based on a geospatial region of interest;

generating two-dimensional outputs in pixel space of at least one roof structure present in the selected at least one image;

generating two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs;

classifying the generated two-dimensional line segment geometries into at least one contour graph based on three-dimensional data received from the second database;

generating a three-dimensional representation of the at least one roof structure based on the at least one contour graph and the received three-dimensional data;

transforming the classified two-dimensional line segment geometries into three-dimensional line segment geometries in world space based on the at least one contour graph;

applying at least one constraint to the three-dimensional line segment geometries, the at least one constraint being indicative of a rectification of at least one of parallel, perpendicular and collinear three-dimensional line segment geometries;

generating a plurality of exterior contours based on the rectified three-dimensional line segment geometries, each exterior contour corresponding to a different elevation of the at least one roof structure;

determining interior line segments of each exterior contour via a straight skeleton algorithm; and

generating the three-dimensional representation of the at least one roof structure based on the determined interior line segments.

2. The system of claim 1 , wherein the geospatial region of interest comprises one of latitudinal and longitudinal coordinates of a region, a shape bounding a postal address and a user defined region input via a geospatial mapping interface.

3. The system of claim 1 , wherein the metadata comprises data of a camera utilized to capture the at least one image, the data including intrinsic parameters of the camera and extrinsic parameters of the camera.

4. The system of claim 1 , wherein the at least one image is an aerial image, a satellite image, a ground based image, or a photograph.

5. The system of claim 1 , wherein a neural network generates the two-dimensional outputs, the two-dimensional outputs being indicative of features of the at least one roof structure present in the selected at least one image.

6. The system of claim 5 , wherein the features of the at least one roof structure comprise one or more of:

a line type indicative of an eave, a rake, a hip, a valley, a flat valley, and a ridge,

a line direction indicative of an orientation of each line type,

a gradient indicative of a slope of the at least one roof structure,

a face type indicative of at least one of an extension of, a protrusion from, and a wall of the at least one roof structure, and

a corner indicative of an intersection between two line types.

7. The system of claim 1 , wherein a neural network generates the two-dimensional outputs and the processor generates the two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs and an orientation of a structure corresponding to the at least one roof structure.

8. The system of claim 1 , wherein the three-dimensional data is one of light detection and ranging data, point cloud data and feature triangulation data.

9. The system of claim 1 , wherein the processor:

generates a plurality of candidate three-dimensional representations of the at least one roof structure,

transforms the plurality of candidate three-dimensional representations into pixel space,

determines a confidence score for each of the transformed candidate three-dimensional representations based on a correlation with the generated two-dimensional outputs in pixel space of the at least one roof structure, and

determines the three-dimensional representation of the at least one roof structure among the plurality of transformed candidate three-dimensional representations based on the confidence score.

10. A method for modeling a roof of a structure, comprising:

receiving a geospatial region of interest;

selecting at least one image and metadata of the image from a first database based on the received geospatial region of interest;

generating two-dimensional outputs in pixel space of at least one roof structure present in the selected at least one image;

generating two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs;

classifying the generated two-dimensional line segment geometries into at least one contour graph based on three-dimensional data received from a second database;

generating a three-dimensional representation of the at least one roof structure based on the at least one contour graph and the received three-dimensional data;

transforming the classified two-dimensional line segment geometries into three-dimensional line segment geometries in world space based on the at least one contour graph;

applying at least one constraint to the three-dimensional line segment geometries, the at least one constraint being indicative of a rectification of at least one of parallel, perpendicular and collinear three-dimensional line segment geometries;

generating a plurality of exterior contours based on the rectified three-dimensional line segment geometries, each exterior contour corresponding to a different elevation of the at least one roof structure;

determining interior line segments of each exterior contour via a straight skeleton algorithm; and

generating the three-dimensional representation of the at least one roof structure based on the determined interior line segments.

11. The method of claim 10 , further comprising generating, by a neural network, the two-dimensional outputs, the two-dimensional outputs being indicative of features of the at least one roof structure present in the selected at least one image.

12. The method of claim 10 , further comprising:

generating, by a neural network, the two-dimensional outputs, and

generating the two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs and an orientation of a structure corresponding to the at least one roof structure.

13. The method of claim 10 , further comprising:

generating a plurality of candidate three-dimensional representations of the at least one roof structure,

transforming the plurality of candidate three-dimensional representations into pixel space,

determining a confidence score for each of the transformed candidate three-dimensional representations based on a correlation with the generated two-dimensional outputs in pixel space of the at least one roof structure, and

determining the three-dimensional representation of the at least one roof structure among the plurality of transformed candidate three-dimensional representations based on the confidence score.

14. A non-transitory computer readable medium having instructions stored thereon for modeling a roof of a structure which, when executed by a processor, causes the processor to carry out the steps of:

selecting at least one image and metadata of the image from a first database based on a received geospatial region of interest;

generating two-dimensional outputs in pixel space of at least one roof structure present in the selected at least one image;

generating two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs;

classifying the generated two-dimensional line segment geometries into at least one contour graph based on three-dimensional data received from a second database;

generating a three-dimensional representation of the at least one roof structure based on the at least one contour graph and the received three-dimensional data;

transforming the classified two-dimensional line segment geometries into three-dimensional line segment geometries in world space based on the at least one contour graph;

applying at least one constraint to the three-dimensional line segment geometries, the at least one constraint being indicative of a rectification of at least one of parallel, perpendicular and collinear three-dimensional line segment geometries;

generating a plurality of exterior contours based on the rectified three-dimensional line segment geometries, each exterior contour corresponding to a different elevation of the at least one roof structure;

determining interior line segments of each exterior contour via a straight skeleton algorithm; and

generating the three-dimensional representation of the at least one roof structure based on the determined interior line segments.

15. The non-transitory computer-readable medium of claim 14 , the processor further carrying out the steps of generating, by a neural network, the two-dimensional outputs, the two-dimensional outputs being indicative of features of the at least one roof structure present in the selected at least one image.

16. The non-transitory computer-readable medium of claim 14 , the processor further carrying out the steps of:

generating, by a neural network, the two-dimensional outputs, and

generating the two-dimensional line segment geometries in the pixel space based on the generated two-dimensional outputs and an orientation of a structure corresponding to the at least one roof structure.

17. The non-transitory computer-readable medium of claim 14 , the processor further carrying out the steps of:

generating a plurality of candidate three-dimensional representations of the at least one roof structure,

transforming the plurality of candidate three-dimensional representations into pixel space,

determining a confidence score for each of the transformed candidate three-dimensional representations based on a correlation with the generated two-dimensional outputs in pixel space of the at least one roof structure, and

determining the three-dimensional representation of the at least one roof structure among the plurality of transformed candidate three-dimensional representations based on the confidence score.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2025
From: GEOMNI, INC.
To: INSURANCE SERVICES OFFICE, INC.
Reel/Frame 069733/0016 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2019
From: PORTER, BRYCE ZACHARY; JUSTUS, RYAN MARK
To: GEOMNI, INC.
Reel/Frame 049830/0766 →
Continuity (2)
Provisional Application 62685415 · Jun 15, 2018
Related Publication 20190385363A1 · Dec 19, 2019
Cited By (4)
US 12,333,218 US 12,488,485 US 12,524,949 US 12,694,627