IP Library Granted Patent US 11,593,991
Granted Patent B2
US 11,593,991 · App. 17/379,254 · Granted Feb 28, 2023

Generating and validating a virtual 3D representation of a real-world structure

Inventors: Ajay Mishra (Palo Alto, CA); Manish Upendran (San Francisco, CA); A. J. Altman (San Francisco, CA); William Castillo (San Carlos, CA)
Assignee: HOVER Inc.
G06T17/05G06F30/13G06T7/55G06T7/97G06T17/00G06T15/205
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 11,593,991
App. No.
17/379,254
Granted
Feb 28, 2023
Kind
B2
Abstract

A computer system maintains structure data indicating geometrical constraints for each structure category of a plurality of structure categories. The computer system generates a virtual 3D representation of a structure based on a set of images depicting the structure. For each image in the set of images, one or more landmarks are identified. Based on the landmarks, a candidate structure category is selected. The virtual 3D representation is generated based on the geometrical constraints of the candidate structure category and the landmarks identified in the set of images.

Claims (88)

1. A method for forming a virtual 3D model of a real-world structure, the method comprising:

receiving a plurality of captured images of the real-world structure;

for each captured image of the plurality of captured images, identifying one or more landmarks in the captured image,

providing metadata for the landmarks, the metadata for each landmark identifying a shape of the landmark and a label for the landmark;

determining, from a plurality of structure categories, one or more structure categories applicable to the real-world structure based, at least in part, on one or more landmarks of the identified landmarks, wherein each structure category of the plurality of structure categories comprises structure data that defines an overall peripheral shape of structures that belong to the structure category;

determining correlations between one or more landmarks of the identified landmarks in each captured image of the plurality of captured images, and one or more landmarks of the identified landmarks in each other captured image of the plurality of captured images;

generating the virtual 3D model of the real-world structure based, at least in part, on:

the plurality of captured images,

the correlations between landmarks of the identified landmarks for the plurality of captured images; and

geometrical constraints for the one or more structure categories applicable to the real-world structure.

2. The method of claim 1 , wherein the one or more landmarks comprises one or more lines.

3. The method of claim 2 , wherein the lines comprise one or more of: lines forming a gable, lines around windows and doors, lines marking a side of the real-world structure, an apex and a lower apex of a roof, fascia lines, and eve lines.

4. The method of claim 1 , wherein identifying the one or more landmarks in the captured image comprises:

determining a view of the real-world structure depicted by the captured image;

determining one or more expected landmarks for the view; and

identifying one or more of the expected landmarks within the captured image.

5. The method of claim 4 , wherein the view of the real-world structure is one of a front, side, or corner view of the real-world structure.

6. The method of claim 1 , wherein identifying the one or more landmarks in the captured image comprises:

analyzing the image to determine one or more potentially significant areas in the image.

7. The method of claim 6 , wherein the potentially significant areas comprise one or more of:

areas in which multiple lines intersect; and

areas depicting structure features.

8. The method of claim 1 , wherein generating the virtual 3D model of the real-world structure includes:

generating, based on the overall peripheral shape, a portion of the virtual 3D model that corresponds to a portion of the real-world structure that is not visible in the plurality of captured images.

9. The method of claim 1 , further comprising validating the virtual 3D model by:

performing a comparison between the virtual 3D model and a reference representation of the real-world structure, wherein the reference representation comprises one or more of:

a digital image, an outline, a wireframe representation, or a second 3D model;

determining a reprojection error based on the comparison; and

determining, based on the reprojection error, whether the first structure category is a correct structure category for the real-world structure.

10. The method of claim 1 , wherein determining correlations comprises determining that one or more landmarks of the identified landmarks in a captured image of the plurality of captured images do not correlate to one or more landmarks of the identified landmarks in other captured images of the plurality of captured images.

11. The method of claim 10 , further comprising:

responsive to determining that one or more landmarks of the identified landmarks in a captured image of the plurality of captured images do not correlate to one or more landmarks of the identified landmarks in other captured images of the plurality of captured images, generating a user notification to re-capture the image with no correlating landmarks.

12. A system for forming a virtual 3D model of a real-world structure, the system comprising:

one or more processors;

one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a plurality of captured images of the real-world structure;

for each captured image of the plurality of captured images, identifying one or more landmarks in the captured image,

providing metadata for the landmarks, the metadata for each landmark identifying a shape of the landmark and a label for the landmark;

determining, from a plurality of structure categories, one or more structure categories applicable to the real-world structure based, at least in part, on one or more landmarks of the identified landmarks, wherein each structure category of the plurality of structure categories comprises structure data that defines an overall peripheral shape of structures that belong to the structure category;

determining correlations between one or more landmarks of the identified landmarks in each captured image of the plurality of captured images, and one or more landmarks of the identified landmarks in each other captured image of the plurality of captured images;

generating the virtual 3D model of the real-world structure based, at least in part, on:

the plurality of captured images,

the correlations between landmarks of the identified landmarks for the plurality of captured images; and

geometrical constraints for the one or more structure categories applicable to the real-world structure.

13. The system of claim 12 , wherein the one or more landmarks comprises one or more lines.

14. The system of claim 12 , wherein identifying the one or more landmarks in the captured image comprises:

determining a view of the real-world structure depicted by the captured image;

determining one or more expected landmarks for the view; and

identifying one or more of the expected landmarks within the captured image.

15. The system of claim 12 , wherein identifying the one or more landmarks in the captured image comprises:

analyzing the image to determine one or more potentially significant areas in the image, wherein the potentially significant areas comprise one or more of:

areas in which multiple lines intersect; and

areas depicting structure features.

16. The system of claim 12 , wherein generating the virtual 3D model of the real-world structure includes:

generating, based on the overall peripheral shape, a portion of the virtual 3D model that corresponds to a portion of the real-world structure that is not visible in the plurality of captured images.

17. The system of claim 12 , wherein the operations further comprise validating the virtual 3D model by:

performing a comparison between the virtual 3D model and a reference representation of the real-world structure;

wherein the reference representation comprises one or more of:

a digital image, an outline, a wireframe representation, or a second 3D model;

determining a reprojection error based on the comparison; and

determining, based on the reprojection error, whether the first structure category is a correct structure category for the real-world structure.

18. Non-transitory computer storage media storing instructions that when executed by a display system of one or more processors, cause the one or more processors to perform operations comprising:

receiving a plurality of captured images of the real-world structure;

for each captured image of the plurality of captured images, identifying one or more landmarks in the captured image,

providing metadata for the landmarks, the metadata for each landmark identifying a shape of the landmark and a label for the landmark;

determining, from a plurality of structure categories, one or more structure categories applicable to the real-world structure based, at least in part, on one or more landmarks of the identified landmarks, wherein each structure category of the plurality of structure categories comprises structure data that defines an overall peripheral shape of structures that belong to the structure category;

determining correlations between one or more landmarks of the identified landmarks in each captured image of the plurality of captured images, and one or more landmarks of the identified landmarks in each other captured image of the plurality of captured images;

generating the virtual 3D model of the real-world structure based, at least in part, on:

the plurality of captured images,

the correlations between landmarks of the identified landmarks for the plurality of captured images; and

geometrical constraints for the one or more structure categories applicable to the real-world structure.

19. The non-transitory computer storage media of claim 18 , wherein the one or more landmarks comprises one or more lines.

20. The non-transitory computer storage media of claim 18 , wherein identifying the one or more landmarks in the captured image comprises:

determining a view of the real-world structure depicted by the captured image;

determining one or more expected landmarks for the view; and

identifying one or more of the expected landmarks within the captured image.

21. The non-transitory computer storage media of claim 18 , wherein identifying the one or more landmarks in the captured image comprises:

analyzing the image to determine one or more potentially significant areas in the image, wherein the potentially significant areas comprise one or more of:

areas in which multiple lines intersect; and

areas depicting structure features.

22. The non-transitory computer storage media of claim 18 , wherein generating the virtual 3D model of the real-world structure includes:

generating, based on the overall peripheral shape, a portion of the virtual 3D model that corresponds to a portion of the real-world structure that is not visible in the plurality of captured images.

23. The non-transitory computer storage media of claim 18 , wherein the operations further comprise validating the virtual 3D model by:

performing a comparison between the virtual 3D model and a reference representation of the real-world structure;

wherein the reference representation comprises one or more of:

a digital image, an outline, a wireframe representation, or a second 3D model;

determining a reprojection error based on the comparison; and

determining, based on the reprojection error, whether the first structure category is a correct structure category for the real-world structure.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2022
From: MISHRA, AJAY; UPENDRAN, MANISH; ALTMAN, A.J.; CASTILLO, WILLIAM
To: HOVER INC.
Reel/Frame 061230/0982 →
Continuity (2)
Continuation 16220900 · Dec 14, 2018
Related Publication 20210350617A1 · Nov 11, 2021