IP Library › Granted Patent US 12,739,507
Granted Patent B2
US 12,739,507 · App. 18/799,975 · Granted Sep 15, 2026

Combined mechanical and electronic image stabilization

Inventors: Sammy Omari (Zurich, CH); Pascal Gohl (Winterthur, CH); Joseph A. Enke (Campbell, CA); Stepan Moskovchenko (Belmont, CA); Benjamin P. Tankersley (San Mateo, CA)
Assignee: GoPro, Inc.
H04N23/6811G03B17/561H04N23/6812H04N23/683H04N23/685H04N23/687H04N23/55
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,739,507
App. No.
18/799,975
Granted
Sep 15, 2026
Kind
B2
Abstract

Systems and methods are disclosed for image signal processing. For example, methods may include, receiving an image from an image sensor; storing a sequence of images captured after the image in a buffer; determining an orientation error between the orientation of the image sensor and an orientation setpoint during capture of the image; determining a rotation corresponding to the orientation error based on orientation estimates from the sequence of orientation estimates corresponding to the sequence of images; and invoking an electronic image stabilization module to correct the image to obtain a stabilized image, in which the electronic image stabilization module corrects the image for the rotation corresponding to the orientation error.

Claims (58)

1 . A system comprising:

an image sensor;

one or more motion sensors configured to detect motion of the image sensor;

an electronic image stabilization module configured to correct images for motion of the image sensor; and

a processing apparatus that is configured to:

receive an image from the image sensor;

store a sequence of images captured after the image in a buffer;

determine an orientation error between the orientation of the image sensor and an orientation setpoint during capture of the image;

determine a rotation corresponding to the orientation error based on a sequence of orientation estimates corresponding to the sequence of images, wherein the orientation estimates are based on sensor data from the one or more motion sensors; and

invoke the electronic image stabilization module to correct the image to obtain a stabilized image, in which the electronic image stabilization module corrects the image for the rotation corresponding to the orientation error.

2 . The system of claim 1 , in which the processing apparatus is further configured to:

determine a trajectory based on the sequence of orientation estimates corresponding to the sequence of images; and

determine the rotation corresponding to the orientation error based on the trajectory.

3 . The system of claim 2 , in which the processing apparatus is further configured to:

determine a sequence of orientation errors based on the sequence of orientation estimates corresponding to the sequence of images and the orientation setpoint; and

apply a filter to the sequence of orientation errors to obtain the trajectory.

4 . The system of claim 3 , further comprising:

a drone that is coupled to a housing of the image sensor by a mechanical stabilization system.

5 . The system of claim 1 , in which the image is captured with an electronic rolling shutter, the orientation error is a first orientation error associated with a first portion of the image, and the processing apparatus is further configured to:

determine a second orientation error between the orientation of the image sensor and the orientation setpoint during capture of a second portion of the image; and

based on the second orientation error, invoke the electronic image stabilization module to correct the second portion of the image for a rotation corresponding to the second orientation error to obtain the stabilized image.

6 . The system of claim 5 , in which the one or more motion sensors include encoders configured to detect a position and an orientation of the image sensor relative to a movable platform.

7 . The system of claim 6 , in which the orientation setpoint includes a quaternion.

8 . The system of claim 7 , in which the electronic image stabilization module is implemented by software executed by the processing apparatus.

9 . A method comprising:

receiving an image from an image sensor;

storing a sequence of images captured after the image in a buffer;

determining an orientation error between the orientation of the image sensor and an orientation setpoint during capture of the image;

determining a rotation corresponding to the orientation error based on orientation estimates from the sequence of orientation estimates corresponding to the sequence of images; and

invoking an electronic image stabilization module to correct the image to obtain a stabilized image, in which the electronic image stabilization module corrects the image for the rotation corresponding to the orientation error.

10 . The method of claim 9 , further comprising:

determining a trajectory based on the sequence of orientation estimates corresponding to the sequence of images; and

determining the rotation corresponding to the orientation error based on the trajectory.

11 . The method of claim 10 , further comprising:

determining a sequence of orientation errors based on the sequence of orientation estimates corresponding to the sequence of images and the orientation setpoint; and

applying a filter to the sequence of orientation errors to obtain the trajectory.

12 . The method of claim 9 , in which the image is captured with an electronic rolling shutter, the orientation error is a first orientation error associated with a first portion of the image, and further comprising:

determining a second orientation error between the orientation of the image sensor and the orientation setpoint during capture of a second portion of the image; and

based on the second orientation error, invoking the electronic image stabilization module to correct the second portion of the image for a rotation corresponding to the second orientation error to obtain the stabilized image.

13 . The method of claim 12 , in which an orientation in the sequence of orientation estimates includes an estimate of orientation of the image sensor with respect to a movable platform and an estimate of orientation of the image sensor with respect to gravity.

14 . A system comprising:

an image sensor configured to capture an image;

an electronic image stabilization module configured to correct the image for motion of the image sensor corresponding to orientation errors between the orientation of the image sensor and an orientation setpoint during capture of the image;

a buffer configured to store a sequence of images captured by the image sensor;

a fast trajectory generator configured to determine a sequence of rotations based on orientation errors corresponding to images in the buffer, wherein the electronic image stabilization module is configured to use a rotation from the sequence of rotations corresponding to an oldest image stored in the buffer; and

a drone that is coupled to a housing of the image sensor.

15 . The system of claim 14 , in which the fast trajectory generator is configured to:

determine a sequence of orientation errors based on a sequence of orientation estimates corresponding to the sequence of images and the orientation setpoint; and

apply a filter to the sequence of orientation errors to obtain a trajectory.

16 . The system of claim 15 , further comprising:

a motion tracking module including one or more motion sensors configured to detect motion of the image sensor and determine a sequence of orientation estimates for the image sensor.

17 . The system of claim 14 , in which the image is captured with an electronic rolling shutter, the orientation error is a first orientation error associated with a first portion of the image, and the electronic image stabilization module is further configured to:

determine a second orientation error between the orientation of the image sensor and the orientation setpoint during capture of a second portion of the image; and

based on the second orientation error, invoke the electronic image stabilization module to correct the second portion of the image for a rotation corresponding to the second orientation error to obtain the stabilized image.

18 . The system of claim 17 , comprising:

encoders configured to detect a position and an orientation of the image sensor relative to a movable platform.

19 . The system of claim 18 , in which the orientation setpoint includes a quaternion.

20 . The system of claim 15 , in which an orientation in the sequence of orientation estimates includes an estimate of orientation of the image sensor with respect to a movable platform and an estimate of orientation of the image sensor with respect to gravity.

Assignments (3)
SECURITY INTEREST Recorded Aug 4, 2025
From: GOPRO, INC.
To: FARALLON CAPITAL MANAGEMENT, L.L.C., AS AGENT
Reel/Frame 072340/0676 →
SECURITY INTEREST Recorded Aug 4, 2025
From: GOPRO, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 072358/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2024
From: OMARI, SAMMY; GOHL, PASCAL; ENKE, JOSEPH A.; MOSKOVCHENKO, STEPAN; TANKERSLEY, BENJAMIN P.
To: GOPRO, INC.
Reel/Frame 068615/0138 →
Continuity (3)
Continuation 17982275 · Nov 7, 2022
Continuation 15837263 · Dec 11, 2017
Related Publication 20240406555A1 · Dec 5, 2024
References Cited (88)
US 5469209A · Gunday · 1995 [cited by examiner]
US 5548327A · Gunday · 1996 [cited by applicant]
US 7643063B2 · Trescott · 2010 [cited by applicant]
US 7932925B2 · Inbar · 2011 [cited by applicant]
US 8861947B2 · Webb · 2014 [cited by applicant]
US 8908090B2 · Webb · 2014 [cited by applicant]
US 9143686B2 · Lee · 2015 [cited by applicant]
US 9144714B2 · Hollinger · 2015 [cited by applicant]
US 9239468B2 · Webb · 2016 [cited by applicant]
US 9277130B2 · Wang · 2016 [cited by applicant]
US 9360740B2 · Wagner · 2016 [cited by applicant]
US 9436181B2 · Peeters · 2016 [cited by applicant]
US 9574703B2 · Firchau · 2017 [cited by applicant]
US 9692972B2 · Karpenko · 2017 [cited by applicant]
US 9777887B2 · Pan · 2017 [cited by applicant]
US 9859938B2 · Piccioni · 2018 [cited by applicant]
US 9863171B1 · Salter · 2018 [cited by applicant]
US 9874308B2 · Saika · 2018 [cited by applicant]
US 10008028B2 · Zuccarino · 2018 [cited by applicant]
US 10129478B2 · Zhao · 2018 [cited by applicant]
US 10150576B2 · Saika · 2018 [cited by applicant]
US 10274127B2 · Wei · 2019 [cited by applicant]
US 10735653B1 · Huang · 2020 [cited by applicant]
US 10827123B1 · Flanigan · 2020 [cited by applicant]
US 11496684B2 · Omari · 2022 [cited by applicant]
US 12063439B2 · Omari · 2024 [cited by applicant]
US 20010013890A1 · Narayanaswami · 2001 [cited by applicant]
US 20050243173A1 · Levine · 2005 [cited by applicant]
US 20090219402A1 · Schneider · 2009 [cited by applicant]
US 20110221900A1 · Reich · 2011 [cited by applicant]
US 20120180789A1 · Tobia · 2012 [cited by applicant]
US 20120268614A1 · Webb · 2012 [cited by applicant]
US 20130088610A1 · Lee · 2013 [cited by applicant]
US 20130210563A1 · Hollinger · 2013 [cited by applicant]
US 20140024999A1 · Levien · 2014 [cited by applicant]
US 20140263823A1 · Wang · 2014 [cited by applicant]
US 20140368911A1 · Becker · 2014 [cited by applicant]
US 20150085149A1 · Tsubaki · 2015 [cited by applicant]
US 20150094883A1 · Peeters · 2015 [cited by applicant]
US 20150097950A1 · Wang · 2015 [cited by applicant]
US 20150149000A1 · Rischmuller · 2015 [cited by applicant]
US 20150304652A1 · Spas · 2015 [cited by applicant]
US 20150350543A1 · Hollinger · 2015 [cited by applicant]
US 20150381891A1 · Karpenko · 2015 [cited by examiner]
US 20160033077A1 · Chen · 2016 [cited by applicant]
US 20160057353A1 · Tuulos · 2016 [cited by examiner]
US 20160201847A1 · Firchau · 2016 [cited by applicant]
US 20160344935A1 · Ardö · 2016 [cited by examiner]
US 20160352992A1 · Saika · 2016 [cited by applicant]
US 20160360111A1 · Thivent · 2016 [cited by applicant]
US 20170041652A1 · Ko · 2017 [cited by applicant]
US 20170064176A1 · Kim · 2017 [cited by applicant]
US 20170134631A1 · Zhao · 2017 [cited by applicant]
US 20170143442A1 · Tesar · 2017 [cited by applicant]
US 20170178392A1 · Zuccarino · 2017 [cited by applicant]
US 20170222676A1 · Piccioni · 2017 [cited by applicant]
US 20170227162A1 · Saika · 2017 [cited by applicant]
US 20170307334A1 · Greenwood · 2017 [cited by examiner]
US 20170358141A1 · Stafford · 2017 [cited by applicant]
US 20180025498A1 · Omari · 2018 [cited by applicant]
US 20180079529A1 · Saika · 2018 [cited by applicant]
US 20180093638A1 · Piccioni · 2018 [cited by applicant]
US 20180194488A1 · Zhao · 2018 [cited by applicant]
US 20180220073A1 · Keal · 2018 [cited by examiner]
US 20180255247A1 · Ristroph · 2018 [cited by examiner]
US 20180321328A1 · Kushleyev · 2018 [cited by applicant]
US 20180352144A1 · Miao · 2018 [cited by applicant]
US 20190008256A1 · Basham · 2019 [cited by applicant]
US 20190182424A1 · Omari · 2019 [cited by applicant]
US 20230059888A1 · Omari · 2023 [cited by applicant]
CN 101370128A · 2009 [cited by applicant]
CN 101872196A · 2010 [cited by applicant]
CN 102355574A · 2012 [cited by applicant]
CN 103064430A · 2013 [cited by applicant]
EP 3139239A1 · 2017 [cited by applicant]
JP 2002051118A · 2002 [cited by applicant]
WO 0235824A1 · 2002 [cited by applicant]
WO 2017035840A1 · 2017 [cited by applicant]
WO 2018027340 · 2018 [cited by applicant]
DJI Inspire 1 User Manual, V2.2, 2017 (Year: 2017) (64 pages). [cited by applicant]
Film Like a Pro: DJI Drone “ActiveTrack”—With Video Tutorials, DJI, Dec. 18, 2017, https://store.dji.com/guides/film-like-a-pro-with-activetrack/(Year: 2017) (12 pages). [cited by applicant]
International Search Report and Written Opinion for Application No. PCT/US 2019/012253, date of mailing Mar. 25, 2019, 14 pages. [cited by applicant]
Karma Grip Let's Get Started retrieved on Feb. 21, 2018 from URL https://gopro.com/content/dam/help/karma/karma-grip-quick-start-guides/Karma-Grip_QSG_HERO5_ENG_REVA.pdf (7 pages). [cited by applicant]
Osmo—Reimagine Movement—DJI retrieved on Feb. 21, 2018 from URL https://www.dji.com/osmo (11 pages). [cited by applicant]
Rick Miller et al.: “Gimbal system configurations and line-of-sight control techniques for small UAV applications”, Proceedings of SPIE, vol. 8713, May 31, 2013 (May 31, 2013), p. 871308, XP044347865, US DOI: 10.1117/12… [cited by applicant]
U.S. Appl. No. 15/892,077, filed Feb. 8, 2018, Flanigan et al., 57 pages. [cited by applicant]
U.S. Appl. No. 15/934,204, filed Mar. 23, 2018, Enke et al., 81 pages. [cited by applicant]
YI Action Gimbal | YI Technology retrieved on Feb. 21, 2018 from URL https://www.yitechnology.com/yi-action-gimbal (18 pages). [cited by applicant]