IP Library Granted Patent US 12,342,075
Granted Patent B2
US 12,342,075 · App. 18/233,729 · Granted Jun 24, 2025

Dynamic adjustment of exposure and ISO to limit motion blur

Inventors: Bo Ding (Boulder, CO); Ozi Egri (Yassur, IL); Matthias Kalkgruber (Vienna, AT); Daniel Wolf (Mödling, AT)
Assignee: SNAP INC.
H04N23/6811H04N23/6812H04N23/684G06T19/006
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,342,075
App. No.
18/233,729
Granted
Jun 24, 2025
Kind
B2
Abstract

A method for limiting motion blur in a visual tracking system is described. In one aspect, the method includes accessing a first image generated by an optical sensor of the visual tracking system, identifying camera operating parameters of the optical sensor for the first image, determining a motion of the optical sensor for the first image, determining a motion blur level of the first image based on the camera operating parameters of the optical sensor and the motion of the optical sensor, and adjusting the camera operating parameters of the optical sensor based on the motion blur level.

Claims (70)

1. A method comprising:

accessing a first image generated by an optical sensor of a visual tracking system;

identifying camera operating parameters of the optical sensor for the first image;

determining, using the visual tracking system, a motion of the optical sensor for the first image;

determining a motion blur level of the first image based only on the camera operating parameters of the optical sensor and the motion of the optical sensor;

detecting that the motion blur level of the first image exceeds a motion blur threshold; and

in response to detecting that the motion blur level of the first image exceeds the motion blur threshold, adjusting an exposure time of the optical sensor and an ISO value of the optical sensor based on the motion blur level of the first image.

2. The method of claim 1 , wherein determining the motion of the optical sensor comprises:

retrieving inertial sensor data from an inertial sensor of the visual tracking system, the inertial sensor data corresponding to the first image; and

determining an angular velocity of the visual tracking system based on the inertial sensor data,

wherein the motion blur level is further based on the angular velocity of the visual tracking system without analyzing a content of the first image.

3. The method of claim 1 , wherein determining, using the visual tracking system, the motion of the optical sensor for the first image comprises:

accessing VIO data from the visual tracking system, the VIO data comprising an estimated angular velocity of the optical sensor, an estimated linear velocity of the optical sensor, and locations of feature points in the first image,

wherein the motion blur in different areas of the first image is based on the estimated angular velocity, the estimated linear velocity of the optical sensor, and the locations of 3D feature points in corresponding different areas of the first image with respect to the optical sensor.

4. The method of claim 2 , further comprising:

sampling the angular velocity of the visual tracking system based on the inertial sensor data during an exposure time of the first image,

wherein the motion blur level in the first image is determined based on the sampled angular velocity of the visual tracking system and the camera operating parameters.

5. The method of claim 2 , further comprising:

identifying a maximum angular velocity of the visual tracking system based on the inertial sensor data during an exposure time of the first image,

wherein the motion blur level in the first image is determined based on the maximum angular velocity of the visual tracking system and the camera operating parameters.

6. The method of claim 1 , wherein the camera operating parameters comprise a combination of the exposure time of the optical sensor, a field of view of the optical sensor, the ISO value of the optical sensor, and an image resolution.

7. The method of claim 1 , wherein adjusting the exposure time of the optical sensor and the ISO value of the optical sensor based on the motion blur level of the first image comprises:

decreasing the exposure time of the optical sensor and increasing the ISO value of the optical sensor.

8. The method of claim 7 , further comprising:

detecting that the increased ISO value exceeds a predefined maximum ISO value; and

in response to detecting that the increased ISO value exceeds the predefined maximum ISO value, adjusting the increased ISO value to the predefined maximum ISO value.

9. The method of claim 6 , further comprising:

detecting that the motion blur level of the first image is within the motion blur threshold; and

in response to detecting that the motion blur level of the first image is within the motion blur threshold, increasing the exposure time of the optical sensor and decreasing the ISO value of the optical sensor.

10. The method of claim 1 , further comprising:

accessing a second image generated by the optical sensor that is operating with the adjusted camera operating parameters; and

identifying a feature in the second image.

11. A computing apparatus comprising:

a processor; and

a memory storing instructions that, when executed by the processor, configure the apparatus to perform operations comprising:

accessing a first image generated by an optical sensor of a visual tracking system;

identifying camera operating parameters of the optical sensor for the first image;

determining, using the visual tracking system, a motion of the optical sensor for the first image;

determining a motion blur level of the first image based only on the camera operating parameters of the optical sensor and the motion of the optical sensor;

detecting that the motion blur level of the first image exceeds a motion blur threshold; and

in response to detecting that the motion blur level of the first image exceeds the motion blur threshold, adjusting an exposure time of the optical sensor and an ISO value of the optical sensor based on the motion blur level of the first image.

12. The computing apparatus of claim 11 , wherein determining the motion of the optical sensor comprises:

retrieving inertial sensor data from an inertial sensor of the visual tracking system, the inertial sensor data corresponding to the first image; and

determining an angular velocity of the visual tracking system based on the inertial sensor data,

wherein the motion blur level is further based on the angular velocity of the visual tracking system without analyzing a content of the first image.

13. The computing apparatus of claim 11 , wherein determining, using the visual tracking system, the motion of the optical sensor for the first image comprises:

accessing VIO data from the visual tracking system, the VIO data comprising an estimated angular velocity of the optical sensor, an estimated linear velocity of the optical sensor, and locations of feature points in the first image,

wherein the motion blur in different areas of the first image is based on the estimated angular velocity, the estimated linear velocity of the optical sensor, and the locations of 3D feature points in corresponding different areas of the first image with respect to the optical sensor.

14. The computing apparatus of claim 12 , wherein the operations further comprise:

sampling the angular velocity of the visual tracking system based on the inertial sensor data during an exposure time of the first image,

wherein the motion blur level in the first image is determined based on the sampled angular velocity of the visual tracking system and the camera operating parameters.

15. The computing apparatus of claim 12 , wherein the operations further comprise:

identifying a maximum angular velocity of the visual tracking system based on the inertial sensor data during an exposure time of the first image,

wherein the motion blur level in the first image is determined based on the maximum angular velocity of the visual tracking system and the camera operating parameters.

16. The computing apparatus of claim 11 , wherein the camera operating parameters comprise a combination of the exposure time of the optical sensor, a field of view of the optical sensor, the ISO value of the optical sensor, and an image resolution.

17. The computing apparatus of claim 11 , wherein adjusting the exposure time of the optical sensor and the ISO value of the optical sensor based on the motion blur level of the first image comprises:

decreasing the exposure time of the optical sensor and increasing the ISO value of the optical sensor.

18. The computing apparatus of claim 7 , wherein the operations further comprise:

detecting that the increased ISO value exceeds a predefined maximum ISO value; and

in response to detecting that the increased ISO value exceeds the predefined maximum ISO value, adjusting the increased ISO value to the predefined maximum ISO value.

19. The computing apparatus of claim 16 , wherein the operations further comprise:

detecting that the motion blur level of the first image is within the motion blur threshold; and

in response to detecting that the motion blur level of the first image is within the motion blur threshold, increasing the exposure time of the optical sensor and decreasing the ISO value of the optical sensor.

20. A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to perform operations comprising:

accessing a first image generated by an optical sensor of a visual tracking system;

identifying camera operating parameters of the optical sensor for the first image;

determining, using the visual tracking system, a motion of the optical sensor for the first image;

determining a motion blur level of the first image based only on the camera operating parameters of the optical sensor and the motion of the optical sensor;

detecting that the motion blur level of the first image exceeds a motion blur threshold; and

in response to detecting that the motion blur level of the first image exceeds the motion blur threshold, adjusting an exposure time of the optical sensor and an ISO value of the optical sensor based on the motion blur level of the first image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2023
From: DING, BO; EGRI, OZI; KALKGRUBER, MATTHIAS; WOLF, DANIEL
To: SNAP INC.
Reel/Frame 064631/0236 →
Continuity (3)
Continuation 17522642 · Nov 9, 2021
Provisional Application 63190106 · May 18, 2021
Related Publication 20230388632A1 · Nov 30, 2023
References Cited (67)
US 11683585B2 · Kalkgruber et al. · 2023 [cited by applicant]
US 11765457B2 · Ding et al. · 2023 [cited by applicant]
US 12148128B2 · Borys et al. · 2024 [cited by applicant]
US 12192625B2 · Kalkgruber et al. · 2025 [cited by applicant]
US 20100119171A1 · Gobert · 2010 [cited by applicant]
US 20100208944A1 · Fukunishi · 2010 [cited by applicant]
US 20110193990A1 · Pillman et al. · 2011 [cited by applicant]
US 20120314093A1 · Tamayama et al. · 2012 [cited by applicant]
US 20140037137A1 · Broaddus et al. · 2014 [cited by applicant]
US 20140363096A1 · Zhou et al. · 2014 [cited by applicant]
US 20150187133A1 · Martini · 2015 [cited by applicant]
US 20160173749A1 · Dallas et al. · 2016 [cited by applicant]
US 20190122378A1 · Aswin · 2019 [cited by applicant]
US 20200228718A1 · Chen et al. · 2020 [cited by applicant]
US 20200374455A1 · Ilic et al. · 2020 [cited by applicant]
US 20200389583A1 · Levy et al. · 2020 [cited by applicant]
US 20210026366A1 · Horesh · 2021 [cited by applicant]
US 20210110615A1 · Zhao et al. · 2021 [cited by applicant]
US 20210114748A1 · Takahashi et al. · 2021 [cited by applicant]
US 20220028094A1 · Bleyer et al. · 2022 [cited by applicant]
US 20220245832A1 · Gupte et al. · 2022 [cited by applicant]
US 20220375041A1 · Borys et al. · 2022 [cited by applicant]
US 20220377238A1 · Kalkgruber et al. · 2022 [cited by applicant]
US 20220377239A1 · Ding et al. · 2022 [cited by applicant]
US 20230300464A1 · Kalkgruber et al. · 2023 [cited by applicant]
US 20230308758A1 · Karpushin et al. · 2023 [cited by applicant]
US 20250037249A1 · Borys et al. · 2025 [cited by applicant]
CN 117321635 · 2023 [cited by applicant]
CN 117337575 · 2024 [cited by applicant]
CN 117441343 · 2024 [cited by applicant]
KR 20130124837 · 2013 [cited by applicant]
WO WO2022245648A1 · 2022 [cited by applicant]
WO WO2022245821A1 · 2022 [cited by applicant]
WO WO2022245821A9 · 2022 [cited by applicant]
WO WO2022246383A1 · 2022 [cited by applicant]
“U.S. Appl. No. 17/521,109, Non Final Office Action mailed Dec. 1, 2022”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,109, Notice of Allowance mailed Feb. 8, 2023”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,109, Response filed Jan. 16, 2023 to Non Final Office Action mailed Dec. 1, 2022”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/522,642, Non Final Office Action mailed Oct. 14, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/522,642, Notice of Allowance mailed May 5, 2023”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/522,642, Response filed Jan. 12, 2023 to Non Final Office Action mailed Oct. 14, 2022”, 11 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/029182, International Search Report mailed Aug. 30, 2022”, 5 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/029182, Written Opinion mailed Aug. 30, 2022”, 5 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/029629, International Search Report mailed Sep. 1, 2022”, 4 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/029629, Written Opinion mailed Sep. 1, 2022”, 7 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/072340, International Search Report mailed Sep. 30, 2022”, 5 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/072340, Written Opinion mailed Sep. 30, 2022”, 12 pgs. [cited by applicant]
Bretzner, L., et al., “Feature Tracking with Automatic Selection of Spatial Scales”, Computer Vision and Image Understanding, Academic Press, US, vol. 71, No. 3, (Sep. 1, 1998), 385-392. [cited by applicant]
Jurik, Martin, et al., “Trade-off Between Resolution and Frame Rate for Visual Tracking of Mini-robots on Planar Surfaces”, International Conference on Manipulation, Automation and Robotics at Small Scales (MARSS), IEEE… [cited by applicant]
“International Application Serial No. PCT US2022 029629, International Preliminary Report on Patentability mailed Nov. 30, 2023”, 9 pgs. [cited by applicant]
“International Application Serial No. PCT US2022 072340, International Preliminary Report on Patentability mailed Nov. 30, 2023”, 14 pgs. [cited by applicant]
“International Application Serial No. PCT US2022 029182, International Preliminary Report on Patentability mailed Nov. 30, 2023”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,081, Non Final Office Action mailed Dec. 7, 2023”, 14 pgs. [cited by applicant]
U.S. Appl. No. 17/521,109 U.S. Pat. No. 11,683,585, filed Nov. 8, 2021, Direct Scale Level Selection for Multilevel Feature Tracking Under Motion Blur. [cited by applicant]
U.S. Appl. No. 17/521,081, filed Nov. 8, 2021, Selective Image Pyramid Computation for Motion Blur Mitigation in Visual-Inertial Tracking. [cited by applicant]
U.S. Appl. No. 18/321,565, filed May 22, 2023, Direct Scale Level Selection for Multilevel Feature Tracking Under Motion Blur. [cited by applicant]
U.S. Appl. No. 17/522,642, filed Nov. 9, 2021, Dynamic Adjustment of Exposure and ISO to Limit Motion Blur. [cited by applicant]
“U.S. Appl. No. 17/521,081, Response filed Mar. 6, 2024 to Non Final Office Action mailed Dec. 7, 2023”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,081, Final Office Action mailed Apr. 5, 2024”, 16 pgs. [cited by applicant]
“U.S. Appl. No. 18/321,565, Non Final Office Action mailed May 8, 2024”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,081, Response filed May 29, 2024 to Final Office Action mailed Apr. 5, 2024”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,081, Advisory Action mailed Jun. 7, 2024”, 4 pgs. [cited by applicant]
“U.S. Appl. No. 17/521,081, Notice of Allowance mailed Jul. 17, 2024”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 18/321,565, Response filed Aug. 8, 2024 to Non Final Office Action mailed May 8, 2024”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 18/321,565, Notice of Allowance mailed Sep. 6, 2024”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 18/321,565, Corrected Notice of Allowability mailed Sep. 18, 2024”, 2 pgs. [cited by applicant]
“Korean Application Serial No. 10-2023-7043392, Notice of Preliminary Rejection mailed Nov. 21, 2024”, With English Machine Translation, 13 pgs. [cited by applicant]