IP Library Granted Patent US 12,262,115
Granted Patent B2
US 12,262,115 · App. 17/804,661 · Granted Mar 25, 2025

Methods and apparatus for electronic image stabilization based on a lens polynomial

Inventors: Daryl Stimm (Encinitas, CA); Kyler William Schwartz (Oceanside, CA); Andrew Russell (San Francisco, CA); Robert McIntosh (Marina Del Rey, CA)
Assignee: GoPro, Inc.
H04N23/683H04N23/45H04N23/6811H04N23/6812H04N23/698
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,262,115
App. No.
17/804,661
Granted
Mar 25, 2025
Kind
B2
Abstract

Methods and apparatus for stabilizing image data based on a lens polynomial. Non-rectilinear footage can be captured and rectified in-camera; the rectified images may be stabilized to provide rectified stable video. In one exemplary embodiment, the footage is rectified and stabilized based on a lens polynomial and the camera's own movement. In some variants, the rectified stable video may be stored along with its margin track. In-camera rectified stable video provides several benefits over traditional techniques (e.g., the ability to share rectilinear content from the camera without additional post-processing, as well as reduced file sizes of the shared videos). Lens-aware post-processing can reuse portions of the in-camera rectified stable videos while providing additional benefits (e.g., the ability to re-frame the video in post-production).

Claims (43)

1. A post-processing apparatus, comprising:

a processor subsystem; and

a non-transitory computer-readable medium that stores instructions which when executed by the processor subsystem, causes the post-processing apparatus to:

obtain a video comprising previously stabilized rectilinear image data according to an originally captured view;

obtain a margin track that corresponds to the previously stabilized rectilinear image data;

obtain telemetry data and a lens characteristic;

determine a new view based on the previously stabilized rectilinear image data and at least one of the margin track, the telemetry data, and the lens characteristic;

correct a first portion of the previously stabilized rectilinear image data and a second portion of the margin track based on the lens characteristic;

stabilize the first portion of the previously stabilized rectilinear image data and the second portion of the margin track based on the telemetry data; and

stitch the first portion and the second portion into a video frame.

2. The post-processing apparatus of claim 1 , further comprising a codec that is configured to approximate image motion based on straight-line motion vectors and address image data based on row and column addressing; and

where the instructions are further configured to cause the post-processing apparatus to encode the video frame into a re-framed rectilinear stabilized video.

3. The post-processing apparatus of claim 2 , further comprising a display, and where the instructions, when executed by the processor subsystem, further causes the post-processing apparatus to display the re-framed rectilinear stabilized video.

4. The post-processing apparatus of claim 2 , further comprising a network interface, and where the instructions, when executed by the processor subsystem, further causes the post-processing apparatus to transfer the re-framed rectilinear stabilized video to another device for display.

5. The post-processing apparatus of claim 1 , further comprising a network interface, and where the instructions, when executed by the processor subsystem, further causes the post-processing apparatus to obtain the previously stabilized rectilinear image data from another device that is streaming the video.

6. The post-processing apparatus of claim 1 , further comprising a user interface that enables a user to identify a subject-of-interest within a frame of the video; and

where the instructions, when executed by the processor subsystem, further causes the post-processing apparatus to determine the new view based on the subject-of-interest.

7. A method, comprising:

obtaining a video comprising previously stabilized rectilinear image data according to an originally captured view;

obtaining a margin track that corresponds to the previously stabilized rectilinear image data;

obtaining telemetry data and a lens characteristic;

determining a new view based on the previously stabilized rectilinear image data and at least one of the margin track, the telemetry data, and the lens characteristic;

correcting a first portion of the previously stabilized rectilinear image data and a second portion of the margin track based on the lens characteristic;

stabilizing the first portion of the previously stabilized rectilinear image data and the second portion of the margin track based on the telemetry data; and

stitching the first portion and the second portion into a video frame.

8. The method of claim 7 , further encoding the video frame into a re-framed rectilinear stabilized video.

9. The method of claim 8 , further comprising displaying the re-framed rectilinear stabilized video.

10. The method of claim 8 , further comprising transferring the re-framed rectilinear stabilized video to another device for display.

11. The method of claim 7 , further comprising obtaining the previously stabilized rectilinear image data from another device that is streaming the video.

12. The method of claim 7 , further comprising identifying a subject-of-interest within a frame of the video and determining the new view based on the subject-of-interest.

13. A method, comprising:

obtaining a video, a margin track, a telemetry track, and a lens characteristic that corresponds to the video;

determining a view based on the video and at least one of the margin track, the telemetry track, and the lens characteristic;

correcting a first frame of the video and a margin portion of the margin track based on the lens characteristic;

stabilizing the first frame of the video and the margin portion of the margin track based on the telemetry track; and

stitching the first frame and the margin portion into a new video frame.

14. The method of claim 13 , where the video comprises a previously stabilized video.

15. The method of claim 13 , where the video, the margin track, and the telemetry track, are obtained from a shared data structure.

16. The method of claim 13 , where at least one of the video, the margin track, and the telemetry track, are obtained from different data structures.

17. The method of claim 13 , where the video, the margin track, and the telemetry track, are obtained from a ready-to-share data stream.

18. The method of claim 13 , where the view is based on user input.

19. The method of claim 13 , where the view is based on the telemetry track.

20. The method of claim 19 , where the telemetry track comprises a flag that identifies an error in stabilization.

Assignments (4)
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 Jul 12, 2024
From: STIMM, DARYL; SCHWARTZ, KYLER WILLIAM; RUSSELL, ANDREW; MCINTOSH, ROBERT
To: GOPRO, INC.
Reel/Frame 067980/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2022
From: STIMM, DARYL; SCHWARTZ, KYLER WILLIAM; RUSSELL, ANDREW; MCINTOSH, ROBERT
To: GOPRO, INC.
Reel/Frame 060056/0312 →
Continuity (2)
Provisional Application 63267289 · Jan 28, 2022
Related Publication 20230247292A1 · Aug 3, 2023
References Cited (220)
US 5130794A · Ritchey · 1992 [cited by applicant]
US 6323934B1 · Enomoto · 2001 [cited by applicant]
US 6337683B1 · Gilbert · 2002 [cited by applicant]
US 6593956B1 · Potts · 2003 [cited by applicant]
US 7222356B1 · Yonezawa · 2007 [cited by applicant]
US 7483618B1 · Edwards · 2009 [cited by applicant]
US 7593635B2 · Jeon · 2009 [cited by applicant]
US 7893985B1 · Ahiska · 2011 [cited by applicant]
US 7912317B2 · Souchard · 2011 [cited by applicant]
US 8274548B2 · Fujita · 2012 [cited by applicant]
US 8416266B2 · Shoemaker · 2013 [cited by applicant]
US 8427538B2 · Ahiska · 2013 [cited by applicant]
US 8446433B1 · Mallet · 2013 [cited by applicant]
US 8466969B2 · Goto · 2013 [cited by applicant]
US 8611422B1 · Yagnik · 2013 [cited by applicant]
US 8718447B2 · Yang · 2014 [cited by applicant]
US 8730299B1 · Kozko · 2014 [cited by applicant]
US 8763023B1 · Goetz · 2014 [cited by applicant]
US 8860816B2 · Corcoran · 2014 [cited by applicant]
US 8910046B2 · Matsuda · 2014 [cited by applicant]
US 8988509B1 · Macmillan · 2015 [cited by applicant]
US 9032299B2 · Lyons · 2015 [cited by applicant]
US 9036001B2 · Chuang · 2015 [cited by applicant]
US 9077956B1 · Morgan · 2015 [cited by applicant]
US 9105080B2 · Mcandrew · 2015 [cited by applicant]
US 9111579B2 · Meaney · 2015 [cited by applicant]
US 9142253B2 · Ubillos · 2015 [cited by applicant]
US 9151933B2 · Sato · 2015 [cited by applicant]
US 9204039B2 · He · 2015 [cited by applicant]
US 9208821B2 · Evans · 2015 [cited by applicant]
US 9245582B2 · Shore · 2016 [cited by applicant]
US 9253533B1 · Morgan · 2016 [cited by applicant]
US 9262807B2 · Stec · 2016 [cited by applicant]
US 9317172B2 · Lyons · 2016 [cited by applicant]
US 9423944B2 · Eppolito · 2016 [cited by applicant]
US 9473758B1 · Long · 2016 [cited by applicant]
US 9479697B2 · Aguilar · 2016 [cited by applicant]
US 9564173B2 · Swenson · 2017 [cited by applicant]
US 9681111B1 · Newman · 2017 [cited by applicant]
US 9754347B2 · Sartor · 2017 [cited by examiner]
US 10186012B2 · Newman · 2019 [cited by applicant]
US 10395338B2 · Newman · 2019 [cited by applicant]
US 10529051B2 · Newman · 2020 [cited by applicant]
US 10529052B2 · Newman · 2020 [cited by applicant]
US 10535115B2 · Newman · 2020 [cited by applicant]
US 10679323B2 · Newman · 2020 [cited by applicant]
US 10817977B2 · Newman · 2020 [cited by applicant]
US 11164282B2 · Newman · 2021 [cited by applicant]
US 11688034B2 · Newman · 2023 [cited by applicant]
US 20020044153A1 · Hoch · 2002 [cited by applicant]
US 20040128317A1 · Sull · 2004 [cited by applicant]
US 20050025454A1 · Nakamura · 2005 [cited by applicant]
US 20060122842A1 · Herberger · 2006 [cited by applicant]
US 20070173296A1 · Hara · 2007 [cited by applicant]
US 20070204310A1 · Hua · 2007 [cited by applicant]
US 20070229665A1 · Tobiason · 2007 [cited by applicant]
US 20070230461A1 · Singh · 2007 [cited by applicant]
US 20070258707A1 · Raskar · 2007 [cited by applicant]
US 20080044155A1 · Kuspa · 2008 [cited by applicant]
US 20080123976A1 · Coombs · 2008 [cited by applicant]
US 20080152297A1 · Ubillos · 2008 [cited by applicant]
US 20080163283A1 · Tan · 2008 [cited by applicant]
US 20080177706A1 · Yuen · 2008 [cited by applicant]
US 20080208791A1 · Das · 2008 [cited by applicant]
US 20080253685A1 · Kuranov · 2008 [cited by applicant]
US 20080253735A1 · Kuspa · 2008 [cited by applicant]
US 20080313541A1 · Shafton · 2008 [cited by applicant]
US 20090213270A1 · Ismert · 2009 [cited by applicant]
US 20090274339A9 · Cohen · 2009 [cited by applicant]
US 20090327856A1 · Mouilleseaux · 2009 [cited by applicant]
US 20100045773A1 · Ritchey · 2010 [cited by applicant]
US 20100064219A1 · Gabrisko · 2010 [cited by applicant]
US 20100086216A1 · Lee · 2010 [cited by applicant]
US 20100104261A1 · Liu · 2010 [cited by applicant]
US 20100183280A1 · Beauregard · 2010 [cited by applicant]
US 20100231730A1 · Ichikawa · 2010 [cited by applicant]
US 20100245626A1 · Woycechowsky · 2010 [cited by applicant]
US 20100251295A1 · Amento · 2010 [cited by applicant]
US 20100278504A1 · Lyons · 2010 [cited by applicant]
US 20100278509A1 · Nagano · 2010 [cited by applicant]
US 20100281375A1 · Pendergast · 2010 [cited by applicant]
US 20100281386A1 · Lyons · 2010 [cited by applicant]
US 20100287476A1 · Sakai · 2010 [cited by applicant]
US 20100299630A1 · Mccutchen · 2010 [cited by applicant]
US 20100318660A1 · Balsubramanian · 2010 [cited by applicant]
US 20100321471A1 · Casolara · 2010 [cited by applicant]
US 20110025847A1 · Park · 2011 [cited by applicant]
US 20110069148A1 · Jones · 2011 [cited by applicant]
US 20110069189A1 · Venkataraman · 2011 [cited by applicant]
US 20110075990A1 · Eyer · 2011 [cited by applicant]
US 20110093798A1 · Shahraray · 2011 [cited by applicant]
US 20110109774A1 · Onomura · 2011 [cited by applicant]
US 20110134240A1 · Anderson · 2011 [cited by applicant]
US 20110173565A1 · Ofek · 2011 [cited by applicant]
US 20110206351A1 · Givoly · 2011 [cited by applicant]
US 20110211040A1 · Lindemann · 2011 [cited by applicant]
US 20110249153A1 · Hirooka · 2011 [cited by applicant]
US 20110258049A1 · Ramer · 2011 [cited by applicant]
US 20110293250A1 · Deever · 2011 [cited by applicant]
US 20110320322A1 · Roslak · 2011 [cited by applicant]
US 20120014673A1 · O'Dwyer · 2012 [cited by applicant]
US 20120027381A1 · Kataoka · 2012 [cited by applicant]
US 20120030029A1 · Flinn · 2012 [cited by applicant]
US 20120057852A1 · Devleeschouwer · 2012 [cited by applicant]
US 20120123780A1 · Gao · 2012 [cited by applicant]
US 20120127169A1 · Barcay · 2012 [cited by applicant]
US 20120206565A1 · Jason · 2012 [cited by applicant]
US 20120311448A1 · Achour · 2012 [cited by applicant]
US 20130024805A1 · In · 2013 [cited by applicant]
US 20130044108A1 · Tanaka · 2013 [cited by applicant]
US 20130044258A1 · Dennis · 2013 [cited by applicant]
US 20130058532A1 · White · 2013 [cited by applicant]
US 20130063561A1 · Stephan · 2013 [cited by applicant]
US 20130078990A1 · Kim · 2013 [cited by applicant]
US 20130127636A1 · Aryanpur · 2013 [cited by applicant]
US 20130136193A1 · Hwang · 2013 [cited by applicant]
US 20130142384A1 · Ofek · 2013 [cited by applicant]
US 20130151970A1 · Achour · 2013 [cited by applicant]
US 20130166303A1 · Chang · 2013 [cited by applicant]
US 20130191743A1 · Reid · 2013 [cited by applicant]
US 20130195429A1 · Fay · 2013 [cited by applicant]
US 20130197967A1 · Pinto · 2013 [cited by applicant]
US 20130208134A1 · Hamalainen · 2013 [cited by applicant]
US 20130208942A1 · Davis · 2013 [cited by applicant]
US 20130215220A1 · Wang · 2013 [cited by applicant]
US 20130259399A1 · Ho · 2013 [cited by applicant]
US 20130263002A1 · Park · 2013 [cited by applicant]
US 20130283301A1 · Avedissian · 2013 [cited by applicant]
US 20130287214A1 · Resch · 2013 [cited by applicant]
US 20130287304A1 · Kimura · 2013 [cited by applicant]
US 20130300939A1 · Chou · 2013 [cited by applicant]
US 20130308921A1 · Budzinski · 2013 [cited by applicant]
US 20130318443A1 · Bachman · 2013 [cited by applicant]
US 20130343727A1 · Rav-Acha · 2013 [cited by applicant]
US 20140003706A1 · Davidson · 2014 [cited by applicant]
US 20140026156A1 · Deephanphongs · 2014 [cited by applicant]
US 20140064706A1 · Lewis, II · 2014 [cited by applicant]
US 20140072285A1 · Shynar · 2014 [cited by applicant]
US 20140093164A1 · Noorkami · 2014 [cited by applicant]
US 20140096002A1 · Dey · 2014 [cited by applicant]
US 20140105573A1 · Hanckmann · 2014 [cited by applicant]
US 20140161351A1 · Yagnik · 2014 [cited by applicant]
US 20140165119A1 · Liu · 2014 [cited by applicant]
US 20140169766A1 · Yu · 2014 [cited by applicant]
US 20140176542A1 · Shohara · 2014 [cited by applicant]
US 20140193040A1 · Bronshtein · 2014 [cited by applicant]
US 20140212107A1 · Saint-Jean · 2014 [cited by applicant]
US 20140219634A1 · Mcintosh · 2014 [cited by applicant]
US 20140226953A1 · Hou · 2014 [cited by applicant]
US 20140232818A1 · Carr · 2014 [cited by applicant]
US 20140232819A1 · Armstrong · 2014 [cited by applicant]
US 20140245336A1 · Lewis, II · 2014 [cited by applicant]
US 20140300644A1 · Gillard · 2014 [cited by applicant]
US 20140328570A1 · Cheng · 2014 [cited by applicant]
US 20140341528A1 · Mahate · 2014 [cited by applicant]
US 20140366052A1 · Ives · 2014 [cited by applicant]
US 20140376876A1 · Bentley · 2014 [cited by applicant]
US 20150015680A1 · Wang · 2015 [cited by applicant]
US 20150022355A1 · Pham · 2015 [cited by applicant]
US 20150029089A1 · Kim · 2015 [cited by applicant]
US 20150049220A1 · Kuwata · 2015 [cited by applicant]
US 20150058709A1 · Zaletel · 2015 [cited by applicant]
US 20150085111A1 · Lavery · 2015 [cited by applicant]
US 20150154452A1 · Bentley · 2015 [cited by applicant]
US 20150178915A1 · Chatterjee · 2015 [cited by applicant]
US 20150186073A1 · Pacurariu · 2015 [cited by applicant]
US 20150220504A1 · Bocanegra Alvarez · 2015 [cited by applicant]
US 20150254871A1 · Macmillan · 2015 [cited by applicant]
US 20150256746A1 · Macmillan · 2015 [cited by applicant]
US 20150256808A1 · Macmillan · 2015 [cited by applicant]
US 20150271483A1 · Sun · 2015 [cited by applicant]
US 20150287435A1 · Land · 2015 [cited by applicant]
US 20150294141A1 · Molyneux · 2015 [cited by applicant]
US 20150318020A1 · Pribula · 2015 [cited by applicant]
US 20150339324A1 · Westmoreland · 2015 [cited by applicant]
US 20150341536A1 · Huang · 2015 [cited by applicant]
US 20150375117A1 · Thompson · 2015 [cited by applicant]
US 20150382083A1 · Chen · 2015 [cited by applicant]
US 20160005435A1 · Campbell · 2016 [cited by applicant]
US 20160005440A1 · Gower · 2016 [cited by applicant]
US 20160026874A1 · Hodulik · 2016 [cited by applicant]
US 20160027470A1 · Newman · 2016 [cited by applicant]
US 20160027475A1 · Hodulik · 2016 [cited by applicant]
US 20160029105A1 · Newman · 2016 [cited by applicant]
US 20160055885A1 · Hodulik · 2016 [cited by applicant]
US 20160088287A1 · Sadi · 2016 [cited by applicant]
US 20160098941A1 · Kerluke · 2016 [cited by applicant]
US 20160119551A1 · Brown · 2016 [cited by applicant]
US 20160180501A1 · Mallet · 2016 [cited by applicant]
US 20160217325A1 · Bose · 2016 [cited by applicant]
US 20160225405A1 · Matias · 2016 [cited by applicant]
US 20160225410A1 · Lee · 2016 [cited by applicant]
US 20160234345A1 · Roberts · 2016 [cited by applicant]
US 20160282599A1 · Shankar · 2016 [cited by applicant]
US 20160343107A1 · Newman · 2016 [cited by applicant]
US 20160358603A1 · Azam · 2016 [cited by applicant]
US 20160366330A1 · Boliek · 2016 [cited by applicant]
US 20170006214A1 · Andreassen · 2017 [cited by applicant]
US 20190139188A1 · Newman · 2019 [cited by applicant]
US 20190362462A1 · Newman · 2019 [cited by applicant]
US 20190362463A1 · Newman · 2019 [cited by applicant]
US 20190362464A1 · Newman · 2019 [cited by applicant]
US 20200118240A1 · Newman · 2020 [cited by applicant]
US 20200286204A1 · Newman · 2020 [cited by applicant]
US 20210004932A1 · Newman · 2021 [cited by examiner]
US 20210006719A1 · Newman · 2021 [cited by examiner]
US 20210035261A1 · Newman · 2021 [cited by applicant]
US 20210044725A1 · Powell · 2021 [cited by examiner]
US 20210124155A1 · Newman · 2021 [cited by examiner]
US 20210218894A1 · Stec · 2021 [cited by examiner]
US 20220030177A1 · Newman · 2022 [cited by examiner]
US 20220051365A1 · Newman · 2022 [cited by applicant]
US 20230109047A1 · Stimm · 2023 [cited by applicant]
US 20230144635A1 · Newman · 2023 [cited by applicant]
US 20230245688A1 · Newman · 2023 [cited by applicant]
US 20230334616A1 · Newman · 2023 [cited by applicant]
EP 1515548A2 · 2005 [cited by applicant]
WO 2001020466 · 2001 [cited by applicant]
WO 2009040538A1 · 2009 [cited by applicant]
WO 2009146319A1 · 2009 [cited by applicant]