IP Library Granted Patent US 12704900
Granted Patent B2
US 12704900 · App. 18/970,124 · Granted Aug 11, 2026

Periodic parameter estimation for visual-inertial tracking systems

Inventors: Georg Halmetschlager-Funek (Vienna, AT); Matthias Kalkgruber (Vienna, AT); Daniel Wolf (Mödling, AT); Jakob Zillner (Absdorf, AT)
Assignee: Snap Inc.
G06F3/012G06F3/038H04L67/131G06F2203/0383
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 12704900
App. No.
18/970,124
Filed
Dec 5, 2024
Granted
Aug 11, 2026
Kind
B2
Art Unit
2624
USPC
345/156
Abstract

A method for calibrating a visual-inertial tracking system is described. A device operates the visual-inertial tracking system without receiving a tracking request from a virtual object display application. In response to operating the visual-inertial tracking system, the device accesses sensor data from sensors at the device. The device identifies, based on the sensor data, a first calibration parameter value of the visual-inertial tracking system and stores the first calibration parameter value. The system detects a tracking request from the virtual object display application. In response to the tracking request, the system accesses the first calibration parameter value and determines a second calibration parameter value from the first calibration parameter value.

Claims (57)

1 . A method comprising:

detecting a calibration trigger event at a wearable device;

in response to detecting the calibration trigger event, identifying, at the wearable device, a first calibration parameter value based on sensor data from a sensor of the wearable device;

storing the first calibration parameter value in a memory of the wearable device;

detecting a tracking request from an application at the wearable device; and

in response to detecting the tracking request, using the first calibration parameter value as a starting point for estimating a second calibration parameter value of a visual-inertial tracking system of the wearable device.

2 . The method of claim 1 , wherein updating the first calibration parameter value is performed during an offline calibration parameter estimation of the visual-inertial tracking system, the offline calibration parameter estimation performed after an online calibration parameter estimation.

3 . The method of claim 2 , further comprising:

in response to detecting the tracking request, switching the offline calibration parameter estimation of the visual-inertial tracking system to the online calibration parameter estimation and using the first calibration parameter value as the starting point for estimating the second calibration parameter value of the visual-inertial tracking system.

4 . The method of claim 1 , wherein detecting the calibration trigger event comprises:

identifying a sensor threshold corresponding to the sensor; and

determining that the sensor data exceeds the sensor threshold.

5 . The method of claim 1 , wherein the calibration trigger event comprises at least one of a temperature change exceeding a temperature threshold, an accelerometer change exceeding an accelerometer threshold, or a battery level transgressing a battery threshold.

6 . The method of claim 1 , wherein detecting the calibration trigger event comprises:

detecting that the wearable device is worn by a user.

7 . The method of claim 1 , further comprising:

operating, absent a tracking request, the visual-inertial tracking system by periodically accessing the sensor data from the sensor of the wearable device;

periodically updating, at the wearable device, the first calibration parameter value based on the sensor data; and

storing, in the memory of the wearable device, the updated first calibration parameter value.

8 . The method of claim 1 , further comprising:

turning off the visual-inertial tracking system after storing the first calibration parameter value at the wearable device; and

activating the visual-inertial tracking system in response to detecting the tracking request from the application.

9 . The method of claim 1 , further comprising:

calibrating the visual-inertial tracking system with the first calibration parameter value before operating the application or with the second calibration parameter value after detecting the tracking request from the application.

10 . The method of claim 1 , wherein the application comprises an augmented reality application.

11 . A wearable device comprising:

a processor; and

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

detecting a calibration trigger event at a wearable device;

in response to detecting the calibration trigger event, identifying, at the wearable device, a first calibration parameter value based on sensor data from a sensor of the wearable device;

storing the first calibration parameter value in a memory of the wearable device;

detecting a tracking request from an application at the wearable device; and

in response to detecting the tracking request, using the first calibration parameter value as a starting point for estimating a second calibration parameter value of a visual-inertial tracking system of the wearable device.

12 . The wearable device of claim 11 , wherein updating the first calibration parameter value is performed during an offline calibration parameter estimation of the visual-inertial tracking system, the offline calibration parameter estimation performed after an online calibration parameter estimation.

13 . The wearable device of claim 12 , wherein the operations further comprise:

in response to detecting the tracking request, switching the offline calibration parameter estimation of the visual-inertial tracking system to the online calibration parameter estimation and using the first calibration parameter value as the starting point for estimating the second calibration parameter value of the visual-inertial tracking system.

14 . The wearable device of claim 11 , wherein detecting the calibration trigger event comprises:

identifying a sensor threshold corresponding to the sensor; and

determining that the sensor data exceeds the sensor threshold.

15 . The wearable device of claim 11 , wherein the calibration trigger event comprises at least one of a temperature change exceeding a temperature threshold, an accelerometer change exceeding an accelerometer threshold, or a battery level transgressing a battery threshold.

16 . The wearable device of claim 11 , wherein detecting the calibration trigger event comprises:

detecting that the wearable device is worn by a user.

17 . The wearable device of claim 11 , wherein the operations further comprise:

operating, absent a tracking request, the visual-inertial tracking system by periodically accessing the sensor data from the sensor of the wearable device;

periodically updating, at the wearable device, the first calibration parameter value based on the sensor data; and

storing, in the memory of the wearable device, the updated first calibration parameter value.

18 . The wearable device of claim 11 , wherein the operations further comprise:

turning off the visual-inertial tracking system after storing the first calibration parameter value at the wearable device; and

activating the visual-inertial tracking system in response to detecting the tracking request from the application.

19 . The wearable device of claim 11 , wherein the operations further comprise:

calibrating the visual-inertial tracking system with the first calibration parameter value before operating the application or with the second calibration parameter value after detecting the tracking request from the application.

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:

detecting a calibration trigger event at a wearable device;

in response to detecting the calibration trigger event, identifying, at the wearable device, a first calibration parameter value based on sensor data from a sensor of the wearable device;

storing the first calibration parameter value in a memory of the wearable device;

detecting a tracking request from an application at the wearable device; and

in response to detecting the tracking request, using the first calibration parameter value as a starting point for estimating a second calibration parameter value of a visual-inertial tracking system of the wearable device.