IP Library › Granted Patent US 11,776,275
Granted Patent B2
US 11,776,275 · App. 18/045,373 · Granted Oct 3, 2023

Systems and methods for 3D spatial tracking

Inventors: Ross Bates (Dallas, TX); Paul Aarseth (Murphy, TX); Ruben Luna (Grapevine, TX); Nik Willwerth (Princeton, TX)
Assignee: WORLDS ENTERPRISES, INC.
G06V20/52G06T7/20G06T7/70G06T19/006G06T19/20G06V10/761G06V10/82G06V20/64G06T2200/08G06T2200/24G06T2207/10016G06T2207/30196G06T2219/2004G06V2201/07
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 11,776,275
App. No.
18/045,373
Granted
Oct 3, 2023
Kind
B2
Abstract

According to some embodiments, a method includes accessing a live track list stored in memory. Each track of the live track list includes a coordinate of an object of interest captured by a physical sensor located within a physical environment and a unique ID. The method further includes comparing a new track to the live track list in order to determine if the new track matches any existing tracks. The method further includes merging the new track with the particular existing track when the new track matches a particular track in the live track list. The method further includes adding the new track to the live track list when the new track does not match any existing tracks. The method further includes displaying a virtual 3D environment that corresponds to the physical environment. The method further includes projecting virtual objects into the virtual 3D environment using the live track list.

Claims (85)

1. A system comprising:

one or more memory units; and

one or more computer processors communicatively coupled to the one or more memory units and configured to:

access a live track list stored in the one or more memory units, the live track list comprising a plurality of tracks, each track of the plurality of tracks comprising:

a coordinate of an object of interest captured by a physical sensor located within a physical environment;

a unique identification (ID) for the detected object of interest;

receive a new track for a new object of interest, the new track comprising a coordinate of the new track and unique ID for the new object of interest;

compare the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks, wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks comprises determining if a velocity of the new object of interest matches any velocities of any of the plurality of tracks of the live track list;

if it is determined that the new track matches a particular existing track in the live track list, merge the new track with the particular existing track;

if it is determined that the new track does not match any existing tracks in the live track list, add the new track to the live track list;

display, in a graphical user interface, a virtual three-dimensional (3D) environment that corresponds to the physical environment; and

project virtual objects into the virtual 3D environment using the live track list.

2. The system of claim 1 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if the unique ID for the new object of interest matches any unique IDs in the live track list; and

determining if a 3D position of the new object of interest matches any 3D positions of any of the plurality of tracks of the live track list.

3. The system of claim 2 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if an appearance of the new object of interest matches any appearances of any of the plurality of tracks of the live track list.

4. The system of claim 1 , wherein the one or more computer processors are further configured to:

determine a lifespan for each of the plurality of tracks of the live track list; and

if the determined lifespan for a particular track of the plurality of tracks has expired, remove the particular track from the live track list.

5. The system of claim 1 , wherein the object of interest is:

a person;

a vehicle; or

an animal.

6. The system of claim 1 , wherein the virtual 3D environment is a 3D model of the physical environment.

7. The system of claim 1 , wherein the physical sensor is:

a camera;

a temperature sensor;

an infrared sensor; or

a biometric sensor.

8. A method by a computing system, the method comprising:

accessing a live track list stored in the one or more memory units, the live track list comprising a plurality of tracks, each track of the plurality of tracks comprising:

a coordinate of an object of interest captured by a physical sensor located within a physical environment;

a unique identification (ID) for the detected object of interest;

receiving a new track for a new object of interest, the new track comprising a coordinate of the new track and unique ID for the new object of interest;

comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks, wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks comprises determining if a velocity of the new object of interest matches any velocities of any of the plurality of tracks of the live track list;

if it is determined that the new track matches a particular existing track in the live track list, merging the new track with the particular existing track;

if it is determined that the new track does not match any existing tracks in the live track list, adding the new track to the live track list;

displaying, in a graphical user interface, a virtual three-dimensional (3D) environment that corresponds to the physical environment; and

projecting virtual objects into the virtual 3D environment using the live track list.

9. The method of claim 8 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if the unique ID for the new object of interest matches any unique IDs in the live track list; and

determining if a 3D position of the new object of interest matches any 3D positions of any of the plurality of tracks of the live track list.

10. The method of claim 9 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if an appearance of the new object of interest matches any appearances of any of the plurality of tracks of the live track list.

11. The method of claim 8 , further comprising:

determining a lifespan for each of the plurality of tracks of the live track list; and

if the determined lifespan for a particular track of the plurality of tracks has expired, removing the particular track from the live track list.

12. The method of claim 8 , wherein the object of interest is:

a person;

a vehicle; or

an animal.

13. The method of claim 8 , wherein the virtual 3D environment is a 3D model of the physical environment.

14. The method of claim 8 , wherein the physical sensor is:

a camera;

a temperature sensor;

an infrared sensor; or

a biometric sensor.

15. One or more computer-readable non-transitory storage media embodying instructions that, when executed by a processor, cause the processor to perform operations comprising:

accessing a live track list stored in the one or more memory units, the live track list comprising a plurality of tracks, each track of the plurality of tracks comprising:

a coordinate of an object of interest captured by a physical sensor located within a physical environment;

a unique identification (ID) for the detected object of interest;

receiving a new track for a new object of interest, the new track comprising a coordinate of the new track and unique ID for the new object of interest;

comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks, wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks comprises determining if a velocity of the new object of interest matches any velocities of any of the plurality of tracks of the live track list;

if it is determined that the new track matches a particular existing track in the live track list, merging the new track with the particular existing track;

if it is determined that the new track does not match any existing tracks in the live track list, adding the new track to the live track list;

displaying, in a graphical user interface, a virtual three-dimensional (3D) environment that corresponds to the physical environment; and

projecting virtual objects into the virtual 3D environment using the live track list.

16. The one or more computer-readable non-transitory storage media of claim 15 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if the unique ID for the new object of interest matches any unique IDs in the live track list; and

determining if a 3D position of the new object of interest matches any 3D positions of any of the plurality of tracks of the live track list.

17. The one or more computer-readable non-transitory storage media of claim 16 , wherein comparing the new track to the plurality of tracks of the live track list in order to determine if the new track matches any existing tracks of the plurality of tracks further comprises:

determining if an appearance of the new object of interest matches any appearances of any of the plurality of tracks of the live track list.

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

determining a lifespan for each of the plurality of tracks of the live track list; and

if the determined lifespan for a particular track of the plurality of tracks has expired, removing the particular track from the live track list.

19. The one or more computer-readable non-transitory storage media of claim 15 , wherein the object of interest is:

a person;

a vehicle; or

an animal.

20. The one or more computer-readable non-transitory storage media of claim 15 , wherein the physical sensor is:

a camera;

a temperature sensor;

an infrared sensor; or

a biometric sensor.

Assignments (2)
SECURITY INTEREST Recorded Dec 9, 2024
From: WORLDS ENTERPRISES INC.
To: COMERICA BANK
Reel/Frame 069524/0883 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2022
From: BATES, ROSS; AARSETH, PAUL; LUNA, RUBEN; WILLWERTH, NIK
To: WORLDS ENTERPRISES, INC.
Reel/Frame 061411/0509 →
Continuity (2)
Provisional Application 63254412 · Oct 11, 2021
Related Publication 20230116882A1 · Apr 13, 2023