IP Library › Granted Patent US 12,340,521
Granted Patent B2
US 12,340,521 · App. 18/508,224 · Granted Jun 24, 2025

Training multi-object tracking models using simulation

Inventors: Ishani Chakraborty (Seattle, WA); Jonathan C. Hanzelka (Kenmore, WA); Lu Yuan (Redmond, WA); Pedro Urbina Escos (Seattle, WA); Thomas M. Soemo (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
G06T7/20G06N20/00G06T17/00G06T19/20G06T2207/10016G06T2207/20081G06T2207/30196G06T2207/30241G06T2219/2004
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,340,521
App. No.
18/508,224
Granted
Jun 24, 2025
Kind
B2
Abstract

Training a multi-object tracking model includes: generating a plurality of training images based at least on scene generation information, each training image comprising a plurality of objects to be tracked; generating, for each training image, original simulated data based at least on the scene generation information, the original simulated data comprising tag data for a first object; locating, within the original simulated data, tag data for the first object, based on at least an anomaly alert (e.g., occlusion alert, proximity alert, motion alert) associated with the first object in the first training image; based at least on locating the tag data for the first object, modifying at least a portion of the tag data for the first object from the original simulated data, thereby generating preprocessed training data from the original simulated data; and training a multi-object tracking model with the preprocessed training data to produce a trained multi-object tracker.

Claims (50)

1. A system for multi-object tracking, the system comprising:

a processor; and

a computer-readable medium storing instructions that are operative upon execution by the processor to:

locate, within original simulated data for a training image of a plurality of training images, tag data for an object, based at least on an anomaly alert associated with the object in the training image; and

based at least on locating the tag data for the object, modify at least a portion of the tag data for the object from the original simulated data for the training image, thereby generating preprocessed training data from the original simulated data.

2. The system of claim 1 , further comprising instructions that are operative upon execution by the processor to:

generate the plurality of training images based at least on scene generation information, each training image of the plurality of training images comprising a plurality of objects to be tracked.

3. The system of claim 2 , further comprising instructions that are operative upon execution by the processor to:

generate, for each training image, the original simulated data based at least on the scene generation information, the original simulated data comprising the tag data for the object of the plurality of objects.

4. The system of claim 2 , wherein the scene generation information includes synthetic camera position information for a modeled scene.

5. The system of claim 2 , wherein the scene generation information includes at least one of a segmentation mask, an occlusion mask, and a landmark data set.

6. The system of claim 5 , wherein the segmentation mask identifies which pixels in a generated image are calculated to correspond to with the object rather than a scene background.

7. The system of claim 1 , wherein the plurality of training images form a sequence of images in time.

8. The system of claim 1 , wherein the preprocessed training data generated from the original simulated data is used to train a multi-object tracking model to produce a trained multi-object tracker.

9. A system for multi-object tracking, the system comprising:

a processor; and

a computer-readable medium storing instructions that are operative upon execution by the processor to:

detect an anomalous condition associated with an object in a training image;

generate an anomaly alert based on the detected anomalous condition;

locate, within original simulated data for the training image, tag data for the object, based on the anomaly alert associated with the object in the training image;

based on locating the tag data for the object, modify at least a portion of the tag data for the object from the original simulated data for the training image; and

generate preprocessed training data from the original simulated data using the modified portion of the tag data for the object from the original simulated data for the training image.

10. The system of claim 9 , further comprising instructions that are operative upon execution by the processor to:

generate a plurality of training images based at least on scene generation information, each training image of the plurality of training images comprising a plurality of objects to be tracked.

11. The system of claim 10 , further comprising instructions that are operative upon execution by the processor to:

generate, for each training image, individual original simulated data based at least on the scene generation information, the individual original simulated data comprising individual tag data for individual object of the plurality of objects to be tracked.

12. The system of claim 9 , wherein the anomalous condition comprises at least one condition selected from the list consisting of:

an object motion, an object interaction, an object occlusion, an object collision, an object behavior, an object proximity.

13. The system of claim 9 , wherein camera position is calibrated to generate the training image to appear to be captured from a camera at a specific position.

14. A method comprising:

detecting, by a computing device, an anomalous condition associated with an object in a training image;

generating an anomaly alert based on the detected anomalous condition;

locating, within original simulated data for the training image, tag data for the object, based on the anomaly alert associated with the object in the training image;

based on locating the tag data for the object, modifying at least a portion of the tag data for the object from the original simulated data for the training image; and

generating preprocessed training data from the original simulated data using the modified portion of the tag data for the object from the original simulated data for the training image.

15. The method of claim 14 , further comprising:

generating a plurality of training images based at least on scene generation information, each training image of the plurality of training images comprising a plurality of objects to be tracked.

16. The method of claim 15 , further comprising:

generating, for each training image, individual original simulated data based at least on the scene generation information, the individual original simulated data comprising individual tag data for individual object of the plurality of objects to be tracked.

17. The method of claim 14 , wherein the anomalous condition comprises at least one condition selected from the list consisting of:

an object motion, an object interaction, an object occlusion, an object collision, an object behavior, an object proximity.

18. The method of claim 14 , further comprising:

calibrating a camera position to generate the training image to appear to be captured from a camera at a specific position.

19. The method of claim 14 , wherein the preprocessed training data generated from the original simulated data is used to train a multi-object tracking model to produce a trained multi-object tracker.

20. The method of claim 14 , wherein modifying the portion of the tag data for the object further comprises at least one of the following:

adding occlusion information to the tag data;

adding proximity information to the tag data;

adding motion information to the tag data;

adding condition information to the tag data; or

adding behavior information to the tag data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2023
From: CHAKRABORTY, ISHANI; HANZELKA, JONATHAN C.; YUAN, LU; ESCOS, PEDRO URBINA; SOEMO, THOMAS M.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065547/0360 →
Continuity (3)
Continuation 17585053 · Jan 26, 2022
Continuation 17026084 · Sep 18, 2020
Related Publication 20240078682A1 · Mar 7, 2024
References Cited (5)
US 11386662B2 · Chakraborty · 2022 [cited by applicant]
US 11854211B2 · Chakraborty · 2023 [cited by examiner]
Notice of Allowance mailed on Dec. 15, 2021, in U.S. Appl. No. 16/886,442, 8 Pages. [cited by applicant]
Notice of Allowance mailed on Oct. 3, 2023, in U.S. Appl. No. 17/827,695, 9 Pages. [cited by applicant]
Communication pursuant to Article 94(3) Received in European Patent Application No. 21724142.1, mailed on Feb. 13, 2025, 08 pages. [cited by applicant]