IP Library Granted Patent US 12,299,934
Granted Patent B2
US 12,299,934 · App. 17/815,507 · Granted May 13, 2025

Systems, methods, and apparatus for piggyback camera calibration

Inventors: Andrew Russell (San Francisco, CA); Robert McIntosh (Marina Del Rey, CA)
Assignee: GoPro, Inc.
G06T7/85H04N23/685G06T2207/20081
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,299,934
App. No.
17/815,507
Granted
May 13, 2025
Kind
B2
Abstract

Systems, apparatus, and methods for piggyback camera calibration. Existing piggybacked capture techniques use a “beauty camera” and an “action camera” to capture raw footage. The user directly applies the EIS stabilization track of a piggybacked action camera to the cinematic footage to create desired stable footage. Unfortunately, since the action camera may have been slightly offset from the cinematic video camera, the EIS stabilization data will only roughly approximate the necessary corrections. In other words, the user must manually fine tune the corrections. The disclosed embodiments use a calibration sequence to estimate a physical offset between the beauty camera and the action camera. Then, the estimated physical offset can be used to calculate an offset camera orientation for stabilizing the beauty camera. The foregoing process can be performed in-the-field before actual capture. This allows the user to check their set-up and fix any issues before capturing the desired footage.

Claims (56)

1. A method for calibrating a camera system, comprising:

obtaining sensed quaternions from a first camera of the camera system;

obtaining computer vision quaternions from calibration footage shot by a second camera of the camera system;

aligning the sensed quaternions and the computer vision quaternions for a calibration sequence;

comparing the sensed quaternions and the computer vision quaternions to obtain an estimated physical offset quaternion; and

stabilizing unstable footage from the second camera based on a corresponding set of sensed quaternions from the first camera and the estimated physical offset quaternion.

2. The method of claim 1 , further comprising streaming the calibration footage from the second camera during the calibration sequence;

streaming a second calibration footage from the first camera during the calibration sequence; and

displaying the calibration footage and the second calibration footage via a graphical user interface.

3. The method of claim 2 , further comprising reducing at least one resolution of the calibration footage and the second calibration footage for display via the graphical user interface.

4. The method of claim 3 , further comprising obtaining user input via the graphical user interface to adjust the estimated physical offset quaternion.

5. The method of claim 1 , further comprising providing the sensed quaternions and the computer vision quaternions to a neural network logic; and

adjusting the estimated physical offset quaternion based on an output of the neural network logic.

6. The method of claim 1 , where the calibration sequence comprises a calibration window and where the sensed quaternions and the computer vision quaternions are aligned based on peak detection during the calibration window.

7. The method of claim 6 , where the unstable footage from the second camera and the corresponding set of sensed quaternions from the first camera are captured outside the calibration window.

8. An apparatus configured to calibrate a camera system, comprising:

a network interface configured to communicate with a first camera and a second camera of the camera system;

a graphical user interface;

a processor; and

a non-transitory computer-readable medium comprising one or more instructions which, when executed by the processor, causes the apparatus to:

obtain sensed quaternions from the first camera;

calculate computer vision quaternions from calibration footage shot by the second camera;

aligning the sensed quaternions and the computer vision quaternions for a calibration sequence;

comparing the sensed quaternions and the computer vision quaternions to obtain an estimated physical offset quaternion; and

stabilizing unstable footage from the second camera based on a corresponding set of sensed quaternions from the first camera and the estimated physical offset quaternion.

9. The apparatus of claim 8 , further comprising a neural processing unit; and

where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the neural processing unit, causes the neural processing unit to:

obtain the sensed quaternions and the computer vision quaternions;

emulate a neural network of processor nodes; and

adjust the estimated physical offset quaternion.

10. The apparatus of claim 8 , further comprising a codec; and

where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the codec, causes the codec to:

decode a first footage from the first camera;

decode a second footage from the second camera; and

provide the first footage and the second footage for display via the graphical user interface.

11. The apparatus of claim 8 , further comprising a graphical processing unit; and

where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the graphical processing unit, causes the graphical processing unit to calculate motion vectors from the calibration footage shot by the second camera, where the computer vision quaternions are based on the motion vectors.

12. The apparatus of claim 8 , where the network interface is configured to stream the unstable footage from the second camera; and

where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the processor, causes the processor to:

counter rotate the unstable footage based on the corresponding set of sensed quaternions from the first camera and the estimated physical offset quaternion to generate streaming stable footage; and

display the streaming stable footage via the graphical user interface.

13. The apparatus of claim 8 , where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the processor, causes the processor to:

obtain a first audio/visual data structure from the first camera comprising an in-camera stabilized footage and the sensed quaternions; and

obtain a second audio/visual data structure from the second camera comprising the calibration footage.

14. The apparatus of claim 8 , where the non-transitory computer-readable medium further includes one or more instructions which, when executed by the processor, causes the processor to obtain a metadata file identifying a form factor of the first camera or the second camera.

15. A non-transitory computer-readable medium comprising one or more instructions which, when executed by a processor, causes a device to:

calculate a first set of quaternions corresponding to a first camera;

calculate a second set of quaternions corresponding to a second camera;

align the first set of quaternions and the second set of quaternions;

compare the first set of quaternions and the second set of quaternions to obtain an estimated offset quaternion;

determine whether the estimated offset quaternion satisfies an acceptance threshold; and

stabilize unstable footage into stabilized footage based on the estimated offset quaternion.

16. The non-transitory computer-readable medium of claim 15 , further comprising instructions which, when executed by the processor, causes the device to adjust the estimated offset quaternion based on user input.

17. The non-transitory computer-readable medium of claim 15 , further comprising instructions which, when executed by the processor, causes the device to adjust the estimated offset quaternion based on output from a neural processing unit.

18. The non-transitory computer-readable medium of claim 15 , further comprising instructions which, when executed by the processor, causes the device to display the stabilized footage.

19. The non-transitory computer-readable medium of claim 15 , further comprising instructions which, when executed by the processor, causes the device to encode the stabilized footage.

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 Jul 27, 2022
From: RUSSELL, ANDREW; MCINTOSH, ROBERT
To: GOPRO, INC.
Reel/Frame 060647/0439 →
Continuity (1)
Related Publication 20240037793A1 · Feb 1, 2024
References Cited (16)
US 9681111B1 · Newman · 2017 [cited by applicant]
US 10911677B1 · Zhou · 2021 [cited by examiner]
US 20070258707A1 · Raskar · 2007 [cited by applicant]
US 20080253685A1 · Kuranov · 2008 [cited by applicant]
US 20110304694A1 · Nestares · 2011 [cited by examiner]
US 20150341536A1 · Huang · 2015 [cited by applicant]
US 20180130497A1 · McCauley · 2018 [cited by examiner]
US 20210118182A1 · Avnat · 2021 [cited by examiner]
US 20220030177A1 · 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 20230247292A1 · Stimm · 2023 [cited by applicant]
US 20230368414A1 · Afrooze · 2023 [cited by examiner]
CN 113324528A · 2021 [cited by examiner]
CN 114399554B · 2024 [cited by examiner]