IP Library Granted Patent US 10,970,869
Granted Patent B2
US 10,970,869 · App. 16/510,728 · Granted Apr 6, 2021

Method for generating roof outlines from lateral images

Inventors: Ajay Mishra (Palo Alto, CA); William Castillo (San Carlos, CA); A. J. Altman (San Francisco, CA); Manish Upendran (San Francisco, CA)
Assignee: HOVER INC.
G06T7/62G06K9/00637G06K9/4638G06T7/12G06T7/174G06T7/97G06T17/00G06T17/20G06T2207/10016G06T2207/20221G06T2207/30184
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,970,869
App. No.
16/510,728
Granted
Apr 6, 2021
Kind
B2
Abstract

A computer system generates an outline of a roof of a structure based on a set of lateral images depicting the structure. For each image in the set of lateral images, one or more rooflines corresponding to the roof of the structure are determined. The computer system determines how the rooflines connect to one another. Based on the determination, the rooflines are connected to generate an outline of the roof.

Claims (53)

1. A method comprising:

receiving a plurality of photos of a structure, wherein one or more photos in the plurality of photos are non-aerial lateral photos that do not depict a top-down view of the structure;

determining a plurality of rooflines depicted in the plurality of photos;

wherein determining the plurality of rooflines includes determining, for each non-aerial lateral photo of the one or more non-aerial lateral photos, one or more lines associated with a roof of the structure;

determining how rooflines in the plurality of rooflines connect with each other;

wherein the plurality of rooflines comprises a first roofline determined from a first photo of the plurality of photos, and a second roofline determined from a second photo of the plurality of photos;

wherein determining how rooflines in the plurality of rooflines connect with each other comprises determining how the first roofline in the first photo connects with the second roofline in the second photo; and

based on how the rooflines in the plurality of rooflines connect with each other, generating digital data that reflects a closed polygon that has a shape that estimates a shape the roof would have if depicted in the top-down view of the structure;

wherein the method is performed by one or more computing devices.

2. The method of claim 1 wherein determining how rooflines connect with each other comprises determining, for each pair of photos of the plurality of photos, a relative distance corresponding to the pair of photos.

3. The method of claim 1 wherein determining how rooflines connect with each other comprises determining, for each pair of photos of the plurality of photos, a relative rotation corresponding to the pair of photos.

4. The method of claim 1 wherein determining how rooflines connect with each other is based in part on sensor data associated with each photo in the plurality of photos.

5. The method of claim 4 wherein the sensor data includes one or more of: azimuth, gravity vector, linear velocity, angular velocity, GPS location, rotation vector, tilt angle, and object distance.

6. The method of claim 1 wherein determining the plurality of rooflines comprises determining, for each photo of the one or more non-aerial lateral photos, a set of intersection points.

7. The method of claim 1 wherein determining the one or more lines associated with the roof of the structure is based on a roof depiction in a non-aerial lateral photo of the one or more non-aerial lateral photos.

8. The method of claim 1 wherein determining the one or more lines associated with the roof of the structure is based on a wall depicted in a non-aerial lateral photo of the one or more non-aerial lateral photos.

9. The method of claim 1 wherein determining the one or more lines associated with the roof of the structure comprises, for at least one photo in the one or more non-aerial lateral photos:

determining a first line based on a roof depiction in the photo;

determining a second line based on a wall depicted in the photo.

10. The method of claim 1 wherein determining the one or more lines associated with the roof of the structure comprises, for at least one photo in the one or more non-aerial lateral photos, determining one or more particular lines based on one or more building elements depicted in the photo.

11. The method of claim 10 wherein the plurality of photos includes a first particular photo captured at a first angle and a first height and a second particular photo captured at a second angle and a second height, wherein a portion of a roof depicted in the first particular photo is obscured, wherein the same portion of the roof is depicted in the second particular photo and is not obscured, and wherein determining the one or more lines associated with the roof of the structure comprises:

determining a first line based on the first particular photo;

determining a second line corresponding to the obscured portion of the roof based on the second particular photo.

12. The method of claim 1 further comprising scaling each roofline in the plurality of rooflines.

13. The method of claim 1 , wherein the digital data comprises a plurality of points and/or lines; wherein the method further comprises a rendering application generating, based on the digital data, a rendering that depicts the shape of the roof.

14. A 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 performance of:

receiving a plurality of photos of a structure, wherein one or more photos in the plurality of photos are non-aerial lateral photos that do not depict a top-down view of the structure;

determining a plurality of rooflines depicted in the plurality of photos;

wherein determining the plurality of rooflines includes determining, for each non-aerial lateral photo of the one or more non-aerial lateral photos, one or more lines associated with a roof of the structure;

determining how rooflines in the plurality of rooflines connect with each other;

wherein the plurality of rooflines comprises a first roofline determined from a first photo of the plurality of photos, and a second roofline determined from a second photo of the plurality of photos;

wherein determining how rooflines in the plurality of rooflines connect with each other comprises determining how the first roofline in the first photo connects with the second roofline in the second photo; and

based on how the rooflines in the plurality of rooflines connect with each other, generating digital data that reflects a closed polygon that has a shape that estimates a shape the roof would have if depicted in the top-down view of the structure.

15. The system of claim 14 wherein determining how rooflines connect with each other comprises determining, for each pair of photos of the plurality of photos, a relative distance corresponding to the pair of photos.

16. The system of claim 14 wherein determining how rooflines connect with each other comprises determining, for each pair of photos of the plurality of photos, a relative rotation corresponding to the pair of photos.

17. The system of claim 14 wherein determining how rooflines connect with each other is based in part on sensor data associated with each photo in the plurality of photos.

18. The system of claim 17 wherein the sensor data includes one or more of: azimuth, gravity vector, linear velocity, angular velocity, GPS location, rotation vector, tilt angle, and object distance.

19. The system of claim 14 wherein determining the plurality of rooflines comprises determining, for each photo of the one or more non-aerial lateral photos, a set of intersection points.

20. The system of claim 14 wherein determining the one or more lines associated with the roof of the structure is based on a roof depiction in a non-aerial lateral photo of the one or more non-aerial lateral photos.

21. The system of claim 14 wherein determining the one or more lines associated with the roof of the structure is based on a wall depicted in a non-aerial lateral photo of the one or more non-aerial lateral photos.

22. The system of claim 14 wherein determining the one or more lines associated with the roof of the structure comprises, for at least one photo in the one or more non-aerial lateral photos:

determining a first line based on a roof depiction in the photo;

determining a second line based on a wall depicted in the photo.

23. The system of claim 14 wherein determining the one or more lines associated with the roof of the structure comprises, for at least one photo in the one or more non-aerial lateral photos, determining one or more particular lines based on one or more building elements depicted in the photo.

24. The system of claim 23 wherein the plurality of photos includes a first particular photo captured at a first angle and a first height and a second particular photo captured at a second angle and a second height, wherein a portion of the roof depicted in the first particular photo is obscured, wherein the same portion of the roof is depicted in the second particular photo and is not obscured, and wherein determining the one or more lines associated with the roof of the structure comprises:

determining a first line based on the first particular photo;

determining a second line corresponding to the obscured portion of the roof based on the second particular photo.

25. The system of claim 14 , wherein the instructions further comprise instructions that, when executed by the one or more processors, cause scaling of each roofline in the plurality of rooflines.

26. The method of claim 1 , wherein the digital data comprises an image of the closed polygon.

27. The system of claim 14 , wherein the digital data comprises a plurality of points and/or lines; wherein the instructions further comprise instructions that, when executed by the one or more processors, cause a rendering application to generate, based on the digital data, a rendering that depicts the shape of the roof.

28. The system of claim 14 , wherein the digital data comprises an image of the closed polygon.

Assignments (9)
TERMINATION OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Oct 6, 2022
From: SILICON VALLEY BANK, AS AGENT
To: HOVER INC.
Reel/Frame 061622/0761 →
TERMINATION OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Oct 6, 2022
From: SILICON VALLEY BANK
To: HOVER INC.
Reel/Frame 061622/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2022
From: MISHRA, AJAY; CASTILLO, WILLIAM; ALTMAN, A.J.; UPENDRAN, MANISH
To: HOVER INC.
Reel/Frame 061230/0644 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 28, 2021
From: HOVER INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 056423/0222 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 28, 2021
From: SILICON VALLEY BANK, AS AGENT
To: HOVER INC.
Reel/Frame 056423/0189 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 28, 2021
From: HOVER INC.
To: SILICON VALLEY BANK
Reel/Frame 056423/0199 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 28, 2021
From: SILICON VALLEY BANK
To: HOVER INC.
Reel/Frame 056423/0179 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 25, 2020
From: HOVER INC.
To: SILICON VALLEY BANK
Reel/Frame 052229/0986 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 25, 2020
From: HOVER INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 052229/0972 →
Continuity (2)
Continuation 15693347 · Aug 31, 2017
Related Publication 20190355143A1 · Nov 21, 2019
Cited By (3)
US 12,327,310 US 12,406,434 US 12,657,826