IP Library Granted Patent US 11,455,894
Granted Patent B2
US 11,455,894 · App. 16/896,066 · Granted Sep 27, 2022

Structure scan using unmanned aerial vehicle

Inventors: Peter Henry (San Francisco, CA); Jack Zhu (San Francisco, CA); Brian Richman (San Francisco, CA); Harrison Zheng (Palo Alto, CA); Hayk Martirosyan (San Francisco, CA); Matthew Donahoe (Redwood City, CA); Abraham Galton Bachrach (Redwood City, CA); Adam Bry (Redwood City, CA)
Assignee: Skydio, Inc.
G08G5/003B64C39/024B64D47/08G01S13/89G01S17/89G05D1/0016G05D1/0038G05D1/106G06F3/04817G06F3/04845G06F3/04847G06T17/05G06T17/10G06T19/006G06V20/13G06V20/176G08G5/04H04N5/272B64C2201/027B64C2201/123B64C2201/127B64C2201/14B64C2201/146G05D2201/0207H04N13/204
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,455,894
App. No.
16/896,066
Granted
Sep 27, 2022
Kind
B2
Abstract

Described herein are systems and methods for structure scan using an unmanned aerial vehicle. For example, some methods include accessing a three-dimensional map of a structure; generating facets based on the three-dimensional map, wherein the facets are respectively a polygon on a plane in three-dimensional space that is fit to a subset of the points in the three-dimensional map; generating a scan plan based on the facets, wherein the scan plan includes a sequence of poses for an unmanned aerial vehicle to assume to enable capture, using image sensors of the unmanned aerial vehicle, of images of the structure; causing the unmanned aerial vehicle to fly to assume a pose corresponding to one of the sequence of poses of the scan plan; and capturing one or more images of the structure from the pose.

Claims (130)

1. An unmanned aerial vehicle comprising:

a propulsion mechanism,

one or more image sensors, and

a processing apparatus, wherein the processing apparatus is configured to:

access a three-dimensional map of a structure, wherein the three-dimensional map encodes a set of points in three-dimensional space on surfaces of the structure;

generate, using the three-dimensional map, a scan plan including a sequence of poses for the unmanned aerial vehicle to assume to capture images of the structure by:

generating one or more facets based on coplanar points of the set of points encoded in the three-dimensional space by the three-dimensional map, wherein a given facet of the one or more facets is a polygon on a plane in three-dimensional space fit to a subset of the points in the three-dimensional map; and

generating the scan plan based on the one or more facets;

control the propulsion mechanism to cause the unmanned aerial vehicle to fly to assume a pose corresponding to one of the sequence of poses of the scan plan; and

capture, using the one or more image sensors, one or more images of the structure from the pose.

2. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

capture, using the one or more image sensors, an overview image of the structure;

generate a facet suggestion based on the three-dimensional map; and

determine a two-dimensional polygon as a convex hull of a subset of points of the three-dimensional map, the subset of points corresponding to the facet suggestion, as projected into an image plane of the overview image.

3. The unmanned aerial vehicle of claim 2 , wherein the processing apparatus is configured to:

present the two-dimensional polygon overlaid on the overview image;

determine an edited two-dimensional polygon in the image plane of the overview image based on data indicating a user edit of the two-dimensional polygon; and

determine one of the one or more facets based on the edited two-dimensional polygon.

4. The unmanned aerial vehicle of claim 3 , wherein the processing apparatus is configured to:

prior to presenting the two-dimensional polygon overlaid on the overview image, simplify the two-dimensional polygon by removing a convex edge from the two-dimensional polygon and extending edges of the two-dimensional polygon adjacent to the convex edge to a point at which the extended edges intersect each other.

5. The unmanned aerial vehicle of claim 4 , wherein the processing apparatus is configured to:

check that removal of the convex edge increases area of the two-dimensional polygon by an amount less than a threshold.

6. The unmanned aerial vehicle of claim 4 , wherein the processing apparatus is configured to:

check that removal of the convex edge increases perimeter of the two-dimensional polygon by an amount less than a threshold.

7. The unmanned aerial vehicle of claim 1 , wherein the sequence of poses of the scan plan are for orthographic imaging of each of the one or more facets.

8. The unmanned aerial vehicle of claim 1 , wherein the one or more images sensors are configured to support stereoscopic imaging used to provide range data, and wherein the processing apparatus is configured to:

control the propulsion mechanism to cause the unmanned aerial vehicle to fly to a vicinity of the structure; and

scan the structure using the one or more image sensors to generate the three-dimensional map.

9. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

capture, using the one or more image sensors, an overview image of the structure;

present, to a user, a graphical representation of the scan plan overlaid on the overview image; and

receive an indication of an approval of the scan plan from the user.

10. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

detect, while flying between poses in the sequence of poses of the scan plan, an obstacle, wherein the detection is performed based on images captured using the one or more image sensors; and

dynamically adjust a pose of the sequence of poses of the scan plan to avoid the obstacle.

11. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

detect, while flying between poses in the sequence of poses of the scan plan, a deviation of points on a surface of the structure from one of the one or more facets, wherein the detection is performed based on images captured using the one or more image sensors; and

dynamically adjust a pose of the sequence of poses of the scan plan to adapt to the deviation and maintain a consistent distance for image capture.

12. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

generate a coverage map of the one or more facets indicating which of the one or more facets have been successfully imaged during execution of the scan plan; and

present the coverage map.

13. The unmanned aerial vehicle of claim 1 , wherein the processing apparatus is configured to:

determine area estimates for each of the one or more facets; and

present a data structure including the one or more facets, the area estimates of each of the one or more facets, and images of the structure captured during execution of the scan plan.

14. The unmanned aerial vehicle of claim 1 , wherein the structure is a roof of a building, a bridge, or a building under construction.

15. A method comprising:

accessing a three-dimensional map of a structure, wherein the three-dimensional map encodes a set of points in three-dimensional space on surfaces of the structure;

generating one or more facets based on coplanar points of the set of points encoded in the three-dimensional space by the three-dimensional map, wherein a given facet of the one or more facets is a polygon on a plane in three-dimensional space fit to a subset of the points in the three-dimensional map; and

generating a scan plan based on the one or more facets, wherein the scan plan includes a sequence of poses for an unmanned aerial vehicle to assume to enable capture, using one or more image sensors of the unmanned aerial vehicle, of images of the structure at a consistent distance from each of the one or more facets.

16. The method of claim 15 , comprising:

controlling a propulsion mechanism of an unmanned aerial vehicle to cause the unmanned aerial vehicle to fly to assume a pose corresponding to one of the sequence of poses of the scan plan; and

capturing, using the one or more image sensors, one or more images of the structure from the pose.

17. The method of claim 16 , wherein the one or more images sensors are configured to support stereoscopic imaging used to provide range data, and the method comprises:

controlling the propulsion mechanism to cause the unmanned aerial vehicle to fly to a vicinity of the structure; and

scanning the structure using the one or more image sensors to generate the three-dimensional map.

18. The method of claim 16 , comprising:

detecting, while flying between poses in the sequence of poses of the scan plan, an obstacle, wherein the detection is performed based on images captured using the one or more image sensors; and

dynamically adjusting a pose of the sequence of poses of the scan plan to avoid the obstacle.

19. The method of claim 16 , comprising:

detecting, while flying between poses in the sequence of poses of the scan plan, a deviation of points on a surface of the structure from one of the one or more facets, wherein the detection is performed based on images captured using the one or more image sensors; and

dynamically adjusting a pose of the sequence of poses of the scan plan to adapt to the deviation and maintain the consistent distance for image capture.

20. The method of claim 16 , comprising:

generating a coverage map of the one or more facets indicating which of the one or more facets have been successfully imaged during execution of the scan plan; and

presenting the coverage map.

21. The method of claim 16 , comprising:

determining area estimates for each of the one or more facets; and

presenting a data structure including the one or more facets, the area estimates of each of the one or more facets, and images of the structure captured during execution of the scan plan.

22. The method of claim 15 , wherein generating the one or more facets comprises:

capturing, using the one or more image sensors, an overview image of the structure;

generating a facet suggestion based on the three-dimensional map; and

determining a two-dimensional polygon as a convex hull of a subset of points of the three-dimensional map, the subset of points corresponding to the facet suggestion, as projected into an image plane of the overview image.

23. The method of claim 22 , comprising:

presenting the two-dimensional polygon overlaid on the overview image;

determining an edited two-dimensional polygon in the image plane of the overview image based on data indicating a user edit of the presented two-dimensional polygon; and

determining one of the one or more facets based on the edited two-dimensional polygon.

24. The method of claim 23 , comprising:

prior to presenting the two-dimensional polygon overlaid on the overview image, simplifying the two-dimensional polygon by removing a convex edge from the two-dimensional polygon and extending edges of the two-dimensional polygon adjacent to the convex edge to a point at which the extended edges intersect each other.

25. The method of claim 24 , comprising:

checking that removal of the convex edge increases area of the two-dimensional polygon by an amount less than a threshold.

26. The method of claim 24 , comprising:

checking that removal of the convex edge increases perimeter of the two-dimensional polygon by an amount less than a threshold.

27. The method of claim 15 , wherein the sequence of poses of the scan plan are for orthographic imaging of each of the one or more facets.

28. The method of claim 15 , comprising:

capturing, using the one or more image sensors, an overview image of the structure;

presenting a graphical representation of the scan plan overlaid on the overview image; and

receiving an indication of an approval of the scan plan from a user.

29. The method of claim 15 , comprising:

controlling a propulsion mechanism of the unmanned aerial vehicle to cause the unmanned aerial vehicle to fly to a first location in a vicinity of a dock that includes a landing surface configured to hold the unmanned aerial vehicle and a fiducial on the landing surface;

accessing one or more images captured using an image sensor of the unmanned aerial vehicle;

detecting the fiducial in at least one of the one or more images;

determining a pose of the fiducial based on the one or more images; and

controlling, based on the pose of the fiducial, the propulsion mechanism to cause the unmanned aerial vehicle to land on the landing surface.

30. The method of claim 29 , comprising:

automatically charging a battery of the unmanned aerial vehicle using a charger included in the dock while the unmanned aerial vehicle is on the landing surface.

31. A non-transitory computer-readable storage medium that includes instructions that, when executed by a processor, facilitate performance of operations comprising:

accessing a three-dimensional map of a structure, wherein the three-dimensional map encodes a set of points in three-dimensional space on surfaces of the structure; and

generating, using the three-dimensional map, a scan plan including a sequence of poses for an unmanned aerial vehicle to assume to capture images of the structure at a consistent distance from each of the one or more facets by:

generating one or more facets based on coplanar points of the set of points encoded in the three-dimensional space by the three-dimensional map, wherein a given facet of the one or more facets is a polygon on a plane in three-dimensional space fit to a subset of the points in the three-dimensional map; and

generating the scan plan based on the one or more facets.

32. The non-transitory computer-readable storage medium of claim 31 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

controlling a propulsion mechanism of an unmanned aerial vehicle to cause the unmanned aerial vehicle to fly to assume a pose corresponding to one of the sequence of poses of the scan plan; and

capturing, using the one or more image sensors, one or more images of the structure from the pose.

33. The non-transitory computer-readable storage medium of claim 32 , wherein the one or more images sensors are configured to support stereoscopic imaging used to provide range data, and the non-transitory computer-readable storage medium includes instructions that, when executed by a processor, facilitate performance of operations comprising:

controlling the propulsion mechanism to cause the unmanned aerial vehicle to fly to a vicinity of the structure; and

scanning the structure using the one or more image sensors to generate the three-dimensional map.

34. The non-transitory computer-readable storage medium of claim 32 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

generating a coverage map of the one or more facets indicating which of the one or more facets have been successfully imaged during execution of the scan plan; and

presenting the coverage map.

35. The non-transitory computer-readable storage medium of claim 32 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

determining area estimates for each of the one or more facets; and

presenting a data structure including the one or more facets, the area estimates of each of the one or more facets, and images of the structure captured during execution of the scan plan.

36. The non-transitory computer-readable storage medium of claim 31 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

capturing, using the one or more image sensors, an overview image of the structure;

generating a facet suggestion based on the three-dimensional map; and

determining a two-dimensional polygon as a convex hull of a subset of points of the three-dimensional map, the subset of points corresponding to the facet suggestion, as projected into an image plane of the overview image.

37. The non-transitory computer-readable storage medium of claim 36 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

presenting the two-dimensional polygon overlaid on the overview image;

determining an edited two-dimensional polygon in the image plane of the overview image based on data indicating a user edit of the two-dimensional polygon; and

determining one of the one or more facets based on the edited two-dimensional polygon.

38. The non-transitory computer-readable storage medium of claim 37 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

prior to presenting the two-dimensional polygon overlaid on the overview image, simplifying the two-dimensional polygon by removing a convex edge from the two-dimensional polygon and extending edges of the two-dimensional polygon adjacent to the convex edge to a point at which the extended edges intersect each other.

39. The non-transitory computer-readable storage medium of claim 38 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

checking that removal of the convex edge increases area of the two-dimensional polygon by an amount less than a threshold.

40. The non-transitory computer-readable storage medium of claim 38 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

checking that removal of the convex edge increases perimeter of the two-dimensional polygon by an amount less than a threshold.

41. The non-transitory computer-readable storage medium of claim 31 , wherein the sequence of poses of the scan plan are for orthographic imaging of each of the one or more facets.

42. The non-transitory computer-readable storage medium of claim 31 , including instructions that, when executed by a processor, facilitate performance of operations comprising:

capturing, using the one or more image sensors, an overview image of the structure;

presenting a graphical representation of the scan plan overlaid on the overview image; and

receiving an indication of an approval of the scan plan from a user.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jul 21, 2025
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY
To: SKYDIO, INC.
Reel/Frame 072107/0066 →
RELEASE OF SECURITY INTEREST Recorded Jul 21, 2025
From: HERCULES CAPITAL, INC.
To: SKYDIO, INC.
Reel/Frame 072128/0698 →
SECURITY INTEREST Recorded Dec 5, 2024
From: SKYDIO, INC.
To: ACQUIOM AGENCY SERVICES LLC
Reel/Frame 069516/0452 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 9, 2021
From: SKYDIO, INC.
To: HERCULES CAPITAL, INC., AS COLLATERAL AND ADMINISTRATIVE AGENT
Reel/Frame 058081/0677 →
SECURITY INTEREST Recorded Nov 8, 2021
From: SKYDIO, INC.
To: SILICON VALLEY BANK
Reel/Frame 058053/0768 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2020
From: HENRY, PETER; ZHU, JACK; RICHMAN, BRIAN; ZHENG, HARRISON; MARTIROSYAN, HAYK; DONAHUE, MATTHEW; BACHRACH, ABRAHAM GALTON; BRY, ADAM
To: SKYDIO, INC.
Reel/Frame 053603/0577 →
Cited By (2)
US 12,189,389 US 12,197,236