IP Library Granted Patent US 12,380,658
Granted Patent B2
US 12,380,658 · App. 18/159,358 · Granted Aug 5, 2025

Deep inertial prediction system and methods

Inventors: Jeffrey Roger Powers (Houston, TX); Anatoly Stanislavovich Baksheev (Málaga, ES); Martin Christophe Laurent Brossard (Madrid, ES)
Assignee: Arcturus Industries LLC
G06T19/006G06F3/011
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,380,658
App. No.
18/159,358
Granted
Aug 5, 2025
Kind
B2
Abstract

A system configured to determine poses of a tracked device in a physical environment and to utilize the poses as an input to control or manipulate a virtual environment or mixed reality environment. In some cases, the system may include a fall back tracking system for when the main tracking system loses visual tracking of the tracked device.

Claims (49)

1. A method comprising:

initializing, based at least in part on data associated with a prior pose of a tracked device, an Extended Kalman Filter of a deep inertial prediction system;

inputting a window of inertial measurement unit (IMU) measurements into a machine learned network, the IMU measurements associated with the tracked device;

receiving, by the Extended Kalman Filter and from the machine learned network, a linear velocity and uncertainty data associated with the linear velocity; and

determining, by the Extended Kalman Filter, a current pose of the tracked device based at least in part on the linear velocity and the uncertainty data.

2. The method as recited in any of claim 1 , further comprising:

responsive to determining that a pose output by a main tracking system of the extended reality system has a confidence score below a threshold confidence value, engaging the deep inertial prediction system.

3. The method as recited in claim 2 , wherein determining that the pose output by the main tracking system has a confidence score below the threshold confidence value further comprises determining that the tracked device is no longer represented in the image data being generated by an image device associated with the extended reality system.

4. The method as recited in claim 1 , wherein the data associated with a prior pose comprises a status of a main tracking system.

5. The method as recited in claim 1 , wherein the machine learned network is a deep neural network having a first set of fully connected layers to output the linear velocity and a second set of fully connected layers to output uncertainty data associated with the linear velocities.

6. The method as recited in claim 1 , further comprising:

determining, by the Extended Kalman Filter, bias data, gravity data, and yaw data associated with the tracked device;

generating, by an IMU data transformation engine, transformed IMU data based at least in part on the IMU data and one or more of the bias data, the gravity data, or the yaw data; and

wherein the window of IMU measurements input into the machine learned network includes the transformed IMU data.

7. The method as recited in claim 6 , wherein the bias data includes Extended Kalman Filter biases and the gravity data includes Extended Kalman Filter gravity rotation and normals.

8. A system comprising:

a display for presenting an extended reality scene to a user;

one or more image devices for capturing image data associated with a tracked device;

one or more communication interfaces for receiving inertial measurement unit (IMU) measurements from the tracked device;

one or more processors;

non-transitory computer-readable media storing computer-executable instructions, which when executed by the one or more processors cause the one or more processors to perform operations comprising:

initializing an Extended Kalman Filter based at least in part on data associated with a prior pose of the tracked device determined by a second tracking component of the system, the second tracking component different than the first tracking component;

inputting the IMU measurements into a machine learned network of a first tracking component;

receiving, from the machine learned network, a linear velocity associated with the tracked device and uncertainty data associated with the linear velocity; and

determining a current pose of the tracked device based at least in part on the linear velocity and the uncertainty data.

9. The system as recited in claim 8 , wherein the operations further comprise:

responsive to determining that a pose output by a second tracking component of the system has a confidence score below a threshold confidence value, engaging the first tracking system.

10. The system as recited in claim 8 , wherein the machine learned network is a deep neural network having a first set of fully connected layers to output the linear velocity and a second set of fully connected layers to output uncertainty data associated with the linear velocities.

11. The system as recited in claim 8 , wherein the operations further comprise:

determining bias data, gravity data, and yaw data associated with the tracked device;

generating transformed IMU measurements based at least in part on the IMU measurements and one or more of the bias data, the gravity data, or the yaw data; and

wherein inputting the IMU measurements into the machine learned network comprises inputting the transformed IMU data into the machine learned network.

12. The system as recited in claim 11 , wherein the bias data includes Extended Kalman Filter biases and the gravity data includes Extended Kalman Filter gravity rotation and normals.

13. The system as recited in claim 8 , wherein the machine learned model is at least partially trained using synthetic ground truth poses generated based at least in part on historical trajectories of tracked devices, the synthetic ground truth poses adjusted based at least in part by applying at least one of white Gaussian IMU noise, IMU biases, or IMU intrinsic.

14. One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform operations comprising:

responsive to determining that a pose output by a main tracking system of the extended reality system has a confidence score below a threshold confidence value:

initializing, based at least in part on data associated with a prior pose of a tracked device, an Extended Kalman Filter of a deep inertial prediction system;

inputting a window of inertial measurement unit (IMU) measurements into a machine learned network, the IMU measurements associated with the tracked device;

receiving, by the Extended Kalman Filter and from the machine learned network, a linear velocity and uncertainty data associated with the linear velocity; and

determining, by the Extended Kalman Filter, a current pose of the tracked device based at least in part on the linear velocity and the uncertainty data.

15. The one or more non-transitory computer-readable media of claim 14 , wherein determining that the pose output by the main tracking system has a confidence score below the threshold confidence value further comprises determining that the tracked device is no longer represented in the image data being generated by an image device associated with the extended reality system.

16. The one or more non-transitory computer-readable media of claim 14 , wherein the data associated with a prior pose comprises a status of a main tracking system.

17. The one or more non-transitory computer-readable media of claim 14 , wherein the machine learned network is a deep neural network having a first set of fully connected layers to output the linear velocity and a second set of fully connected layers to output uncertainty data associated with the linear velocities.

18. The one or more non-transitory computer-readable media of claim 14 , the operations further comprising:

determining, by the Extended Kalman Filter, bias data, gravity data, and yaw data associated with the tracked device;

generating, by an IMU data transformation engine, transformed IMU data based at least in part on the IMU data and one or more of the bias data, the gravity data, or the yaw data; and

wherein the window of IMU measurements input into the machine learned network includes the transformed IMU data.

19. The one or more non-transitory computer-readable media of claim 14 , wherein determining, by the Extended Kalman Filter, the current pose of the tracked device is based at least in part on a last valid pose from the main tracking system.

20. The one or more non-transitory computer-readable media of claim 14 , wherein the threshold confidence value is a threshold drift in the pose estimate.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT ASSIGNEE TO: ARCTURUS INDUSTRIES LLC PREVIOUSLY RECORDED AT REEL: 062530 FRAME: 0094. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 31, 2023
From: POWERS, JEFFREY ROGER; BAKSHEEV, ANATOLY STANISLAVOVICH; BROSSARD, MARTIN CHRISTOPHE LAURENT
To: ARCTURUS INDUSTRIES LLC
Reel/Frame 062592/0645 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2023
From: POWERS, JEFFREY ROGER; BAKSHEEV, ANATOLY STANISLAVOVICH; BROSSARD, MARTIN CHRISTOPHE LAURENT
To: ARCTURUS INDUSTRIES, INC
Reel/Frame 062530/0094 →
Continuity (3)
Provisional Application 63267150 · Jan 26, 2022
Provisional Application 63267175 · Jan 26, 2022
Related Publication 20230260227A1 · Aug 17, 2023
References Cited (8)
US 11199853B1 · Afrouzi · 2021 [cited by examiner]
US 12092467B1 · Ebrahimi Afrouzi · 2024 [cited by examiner]
US 20170113702A1 · Thieberger-Navon · 2017 [cited by examiner]
US 20200207474A1 · Foggia · 2020 [cited by examiner]
US 20210089040A1 · Ebrahimi Afrouzi · 2021 [cited by examiner]
US 20240053770A1 · Patel · 2024 [cited by examiner]
Wang R, Zou D, Pei L, Liu P, Xu C. Velocity prediction for multi-rotor UAVs based on machine learning. InChina Satellite Navigation Conference (CSNC) 2016 Proceedings: vol. II 2016 (pp. 487-500). Springer Singapore. [cited by examiner]
Nobrega JP, Oliveira AL. A sequential learning method with Kalman filter and extreme learning machine for regression and time series forecasting. Neurocomputing. Apr. 14, 2019;337:235-50. [cited by examiner]
Cited By (1)
US 12,704,848