IP Library Granted Patent US 12,724,413
Granted Patent B2
US 12,724,413 · App. 18/156,052 · Granted Sep 1, 2026

Unmanned aerial vehicle sensor activation and correlation system

Inventors: Hui Li (San Francisco, CA); John Bressler (San Francisco, CA); Volkan Gurel (San Francisco, CA); Bernard J. Michini (San Francisco, CA)
Assignee: Skydio, Inc.
G05D1/101G01C21/1656G05D1/0038H04N7/185H04N7/188H04N23/20H04N23/60H04N23/64H04N23/66B64U10/13B64U2101/31B64U2201/20
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 12,724,413
App. No.
18/156,052
Granted
Sep 1, 2026
Kind
B2
Abstract

An unmanned aerial vehicle (UAV) logs first UAV information at a first frequency. The UAV triggers a camera associated with the UAV to capture an image. In response to triggering the camera to capture the image, the UAV logs second UAV information at a second frequency that is higher than the first frequency. A device that is separate from the UAV identifies a location of the UAV corresponding to the image based on a capture timestamp of the image received from the camera, the first UAV information, and the second UAV information. The device generates a geo-rectified imagery based on the image and the location of the UAV.

Claims (81)

1 . A method, comprising:

logging, by an unmanned aerial vehicle (UAV), first UAV information at a first frequency;

triggering, by the UAV, a camera associated with the UAV to capture an image;

in response to triggering the camera to capture the image, logging, by the UAV, second UAV information at a second frequency that is higher than the first frequency;

identifying, by a device that is separate from the UAV, a location of the UAV corresponding to the image based on a capture timestamp of the image received from the camera, the first UAV information, and the second UAV information; and

generating, by the device, geo-rectified imagery based on the image and the location of the UAV.

2 . The method of claim 1 , wherein the first UAV information includes at least one of location information of the UAV or inertial navigation system (INS) data.

3 . The method of claim 2 , further comprising:

determining, by the device, an optimal time offset for the capture timestamp, wherein the optimal time offset is determined from amongst a time series obtained based on the first UAV information, and the second UAV information, the optimal time offset indicating, for the image, a difference in value between respective metadata timestamps in the time series and the capture timestamp; and

determining, at the device and based on the optimal time offset, the location and INS data of the UAV at the time the image was captured, wherein the location is an estimated location.

4 . The method of claim 1 , wherein identifying the location of the UAV corresponding to the image based on the capture timestamp, the first UAV information, and the second UAV information comprises:

obtaining the image and the capture timestamp from the UAV;

accessing logs describing Global Positioning System (GPS) coordinates of the UAV and associated GPS timestamps;

correlating the GPS timestamps with the capture timestamp, wherein the correlation includes determining that the capture timestamp is between two GPS timestamps; and

determining a likely GPS coordinate corresponding to the capture timestamp based on the correlation, thereby determining the location of the UAV at a time the image was captured.

5 . The method of claim 1 , further comprising:

determining, at the UAV, to re-capture a captured image based on a comparison of a speed of the UAV and a shutter speed of the camera; and

triggering the camera, at the UAV, to re-capture the captured image.

6 . The method of claim 1 , wherein the image is a first image, further comprising:

triggering, at the UAV, the camera to capture a second image;

moving the UAV into a holding position while determining whether the second image is to be re-captured; and

triggering the camera to re-capture the second image responsive to a determination that the second image is to be re-captured.

7 . The method of claim 1 , further comprising:

determining, at the UAV, whether to re-capture the image based on a comparison that includes capabilities of the camera and a height associated with the image.

8 . An unmanned aerial vehicle (UAV) system comprising a non-transitory computer storage medium storing instructions that are operable, when executed by a processor, to cause the processor to:

receive first UAV information logged at a first frequency and second UAV information logged at a second frequency that is higher than the first frequency, wherein the first UAV information and the second UAV information are separated by an image capture event;

identify a location of the UAV corresponding to an image based on a capture timestamp of the image, the first UAV information, and the second UAV information; and

generate geo-rectified imagery based on the image and the location of the UAV.

9 . The UAV system of claim 8 , wherein the first UAV information includes at least one of first location information of the UAV and first inertial navigation system (INS) data.

10 . The UAV system of claim 9 , wherein the instructions are further operable, when executed by the processor, to cause the processor to:

determine an optimal time offset for the capture timestamp, wherein the optimal time offset is determined from amongst a time series obtained based on the first UAV information, and the second UAV information, the optimal time offset indicating, for the image, a difference in value between respective metadata timestamps in the time series and the capture timestamp; and

determine, based on the optimal time offset, the location and INS data of the UAV at the time the image was captured, wherein the location is an estimated location.

11 . The UAV system of claim 8 , wherein the instructions to identify the location of the UAV corresponding to the image based on the capture timestamp of the image received from a camera, the first UAV information, and the second UAV information, comprise instructions that, when executed by the processor, cause the processor to:

obtain the image and the capture timestamp from the UAV;

access logs describing Global Positioning System (GPS) coordinates of the UAV and associated GPS timestamps;

correlate the GPS timestamps with the capture timestamp by determining that the capture timestamp is between two GPS timestamps; and

determining a likely GPS coordinate corresponding to the capture timestamp based on the correlation, thereby determining the location of the UAV at a time the image was captured.

12 . The UAV system of claim 8 ,

wherein the non-transitory computer storage medium is a first non-transitory computer storage medium, the instructions are first instructions, and the processor is a first processor, and

wherein the UAV system further comprises:

a second non-transitory computer storage medium storing second instructions that are operable, when executed by a second processor, to cause the second processor to:

log, at the first frequency, the first UAV information;

trigger a camera to capture the image; and

subsequent to triggering the camera to capture the image, log the second UAV information at the second frequency.

13 . The UAV system of claim 12 , wherein the second instructions are further operable, when executed by the second processor, to cause the second processor to:

determine to re-capture a captured image based on a comparison of a speed of the UAV and a shutter speed of the camera; and

trigger the camera to re-capture the captured image.

14 . The UAV system of claim 12 , wherein the image is a first image, and wherein the second instructions are further operable, when executed by the second processor, to cause the second processor to:

trigger the camera to capture a second image;

move the UAV into a holding position while determining whether the second image is to be re-captured; and

trigger the camera to re-capture the second image responsive to a determination that the second image is to be re-captured.

15 . An unmanned aerial vehicle (UAV), comprising:

a processor, the processor configured to:

log, at a first frequency, first UAV information;

trigger a camera to capture an image; and

in response to triggering the camera to capture the image, log second UAV information at a second frequency that is higher than the first frequency,

wherein a capture timestamp of the image, the first UAV information, and the second UAV information are used to identify a location of the UAV corresponding to the image; and

wherein geo-rectified imagery is generated based on the image and the location of the UAV.

16 . The UAV of claim 15 , wherein the first UAV information includes at least one of first location information of the UAV and first inertial navigation system (INS) data.

17 . The UAV of claim 15 , wherein the processor is further configured to:

determine to re-capture the image based on a comparison of a speed of the UAV and a shutter speed of the camera; and

trigger the camera to re-capture the image.

18 . The UAV of claim 15 , wherein the image is a first image, and wherein the processor is further configured to:

trigger the camera to capture a second image;

move the UAV into a holding position while determining whether the second image is to be re-captured; and

trigger the camera to re-capture the second image responsive to a determination that the second image is to be re-captured.

19 . The UAV of claim 15 , wherein the processor is further configured to:

determine whether to re-capture the image based on a comparison that includes capabilities of the camera and a height associated with the image.

20 . The method of claim 1 , wherein identifying the location comprises selecting UAV records immediately before and after an image's capture time and determining the location based on the selected UAV records.

21 . The method of claim 20 , further comprising:

computing an attitude of the UAV at the capture timestamp by integrating inertial measurements recorded in a UAV log between the selected UAV records and associating the attitude with the image.

22 . The method of claim 1 , further comprising:

embedding, in image metadata, information including the image's capture timestamp, the identified location, and a quality indicator associated with the image.

23 . The method of claim 3 , wherein the optimal time offset is selected by minimizing an error metric between metadata timestamps and logged timestamps.

24 . The method of claim 3 , wherein the optimal time offset is determined based on a relationship between metadata timestamps and logged timestamps that compensates for differences between the timestamps.

25 . The method of claim 3 , further comprising:

computing respective optimal time offsets for multiple camera payloads, and applying, for each image, the offset corresponding to the payload that captured the image.

26 . The UAV system of claim 10 , wherein the processor is configured to write the optimal time offset and per-image adjusted timestamps to a data structure for consumption by geo-rectification software.

27 . The UAV system of claim 10 , wherein the instructions are further operable, when executed by the processor, to cause the processor to output a quality metric with the estimated location of the UAV.

28 . The UAV of claim 15 , wherein the processor is further configured to log location data and inertial data at the second frequency in response to triggering the camera to capture the image.

29 . The unmanned aerial vehicle of claim 15 , wherein the processor determines a camera pose for each image by applying a fixed boresight transform between an inertial sensor frame and a camera frame based on a relationship between an inertial-sensor frame and camera frame and associates the pose with the image.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2023
From: LI, HUI; BRESSLER, JOHN; GUREL, VOLKAN; MICHINI, BERNARD J.
To: UNMANNED INNOVATION INC.
Reel/Frame 062411/0364 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2023
From: UNMANNED INNOVATION INC.
To: AIRWARE, LLC
Reel/Frame 062411/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2023
From: AIRWARE, LLC
To: SKYDIO, INC.
Reel/Frame 062411/0468 →
Continuity (3)
Continuation 15042630 · Feb 12, 2016
Provisional Application 62116303 · Feb 13, 2015
Related Publication 20230236611A1 · Jul 27, 2023
References Cited (38)
US 8527115B2 · Greenfeld et al. · 2013 [cited by applicant]
US 8717361B2 · Sasakawa et al. · 2014 [cited by applicant]
US 8975585B2 · Hiebl · 2015 [cited by applicant]
US 9075415B2 · Kugelmass · 2015 [cited by applicant]
US 9256225B2 · Downey et al. · 2016 [cited by applicant]
US 9256994B2 · Downey et al. · 2016 [cited by applicant]
US 9273981B1 · Downey et al. · 2016 [cited by applicant]
US 9310221B1 · Downey et al. · 2016 [cited by applicant]
US 9311760B2 · Downey et al. · 2016 [cited by applicant]
US 9340283B1 · Downey et al. · 2016 [cited by applicant]
US 9403593B2 · Downey et al. · 2016 [cited by applicant]
US 9406237B2 · Downey et al. · 2016 [cited by applicant]
US 9903719B2 · Hunter, Jr. et al. · 2018 [cited by applicant]
US 11768508B2 · Li · 2023 [cited by examiner]
US 20040143602A1 · Ruiz et al. · 2004 [cited by applicant]
US 20100013927A1 · Nixon · 2010 [cited by applicant]
US 20100157055A1 · Pechatnikov · 2010 [cited by applicant]
US 20100228418A1 · Whitlow et al. · 2010 [cited by applicant]
US 20100305782A1 · Linden et al. · 2010 [cited by applicant]
US 20110035149A1 · McAndrew et al. · 2011 [cited by applicant]
US 20110137547A1 · Kwon et al. · 2011 [cited by applicant]
US 20110208373A1 · Lees et al. · 2011 [cited by applicant]
US 20110234796A1 · Taber · 2011 [cited by applicant]
US 20120123628A1 · Duggan et al. · 2012 [cited by applicant]
US 20120299751A1 · Verna et al. · 2012 [cited by applicant]
US 20140226024A1 · Limbaugh et al. · 2014 [cited by applicant]
US 20140267777A1 · Le Clerc et al. · 2014 [cited by applicant]
US 20140316614A1 · Newman · 2014 [cited by applicant]
US 20140316616A1 · Kugelmass · 2014 [cited by examiner]
US 20140336928A1 · Scott · 2014 [cited by applicant]
US 20140347482A1 · Weinmann et al. · 2014 [cited by applicant]
US 20150192928A1 · Sastre · 2015 [cited by applicant]
US 20160198088A1 · Wang · 2016 [cited by examiner]
US 20170102467A1 · Nielsen · 2017 [cited by examiner]
US 20180068185A1 · Schultz · 2018 [cited by examiner]
US 20180095478A1 · van Cruyningen · 2018 [cited by examiner]
KR 20110134076A · 2011 [cited by applicant]
International Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/US2016/017882, mailed Jun. 23, 2016, 15 pages. [cited by applicant]