IP Library › Granted Patent US 10,970,855
Granted Patent B1
US 10,970,855 · App. 16/809,681 · Granted Apr 6, 2021

Memory-efficient video tracking in real-time using direction vectors

Inventors: Umar Asif (Melbourne, AU); Jianbin Tang (Doncaster East, AU); Subhrajit Roy (Melbourne, AU)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06T7/248G06T7/73G06T2207/10016
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 10,970,855
App. No.
16/809,681
Granted
Apr 6, 2021
Kind
B1
Abstract

Provided are embodiments for a computer-implemented method. The method includes receiving a sequence of image data, transforming objects in each frame of the sequence of the image data into direction vectors, and clustering the direction vectors based at least in part on features of the objects. The method also includes mapping the direction vectors for the objects in each frame into a position-orientation data structure, and performing tracking using the mapped direction vectors in the position-orientation data structure. Also provided are embodiments of a computer program product and a system for performing object tracking.

Claims (60)

1. A computer-implemented method comprising:

receiving, by a processing engine, a sequence of image data;

transforming objects in each frame of the sequence of the image data into direction vectors;

clustering the direction vectors based at least in part on features of the objects;

mapping the direction vectors for the objects in each frame into a position-orientation data structure; and

performing tracking using the mapped direction vectors in the position-orientation data structure.

2. The computer-implemented method of claim 1 further comprising maintaining the direction vectors for each frame of the sequence of image data.

3. The computer-implemented method of claim 1 , wherein clustering the direction vectors is based at least in part on smallest inter-frame distances and inter-frame orientation differences between the direction vectors of adjacent frames.

4. The computer-implemented method of claim 1 , wherein the position-orientation data structure comprises a plurality of bins that are arranged according to orientation information and position information.

5. The computer-implemented method of claim 4 , wherein a range corresponding to an orientation for each bin and position for each bin are configurable parameters.

6. The computer-implemented method of claim 1 further comprising storing the clustered direction vectors for each frame in the same location in the position-orientation data structure.

7. The computer-implemented method of claim 1 , wherein the features of the objects include position information and orientation information.

8. The computer-implemented method of claim 1 further comprising:

comparing corresponding direction vectors for a current frame with direction vectors of a previous frame;

tracking the object based at least in part on the comparison; and

re-projecting proposed targets for the object based on tracking the object.

9. The computer-implemented method of claim 1 further comprising:

identifying a missing object in a current frame;

performing a look-up operation in the position-orientation data structure based on the feature of the object of the current frame;

retrieving missing object data from the position-orientation data structure; and

displaying output data including the retrieved missing object data.

10. The computer-implemented method of claim 9 , wherein the lookup operation is performed on a region of the position-orientation data structure that is less than all regions of the position-orientation data structure.

11. A system for performing object tracking, the system comprising:

one or more processors; and

at least one memory, the memory including instructions that, upon execution by at least one of the one or more processors, cause the system to perform a method for performing memory-efficient tracking, the method comprising:

receiving a sequence of image data;

transforming objects in each frame of the sequence of the image data into direction vectors;

clustering the direction vectors based at least in part on features of the objects;

mapping the direction vectors for the objects in each frame into a position-orientation data structure; and

performing tracking using the mapped direction vectors in the position-orientation data structure.

12. The system of claim 11 further comprising storing the clustered direction vectors for each frame in the same location in the position-orientation data structure, wherein clustering the direction vectors is based at least in part on smallest inter-frame distances and inter-frame orientation differences between the direction vectors of adjacent frames.

13. The system of claim 11 , wherein the position-orientation data structure comprises a plurality of bins that are arranged according to orientation information and position information.

14. The system of claim 11 , wherein the features of the objects include position information and orientation information.

15. The system of claim 11 further comprising:

comparing corresponding direction vectors for a current frame with direction vectors of a previous frame;

tracking the object based at least in part on the comparison; and

re-projecting proposed targets for the object based on tracking the object.

16. The system of claim 11 further comprising:

identifying a missing object in a current frame;

performing a look-up operation in the position-orientation data structure based on the feature of the object of the current frame, wherein the lookup operation is performed on a region of the position-orientation data structure that is less than all regions of the position-orientation data structure;

retrieving missing object data from the position-orientation data structure; and

displaying output data including the retrieved missing object data.

17. A computer program product for performing object tracking, the computer program product comprising a computer-readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to:

receive a sequence of image data;

transform objects in each frame of the sequence of the image data into direction vectors;

cluster the direction vectors based at least in part on features of the objects, wherein the features of the objects include position information and orientation information;

map the direction vectors for the objects in each frame into a position-orientation data structure, wherein the position-orientation data structure comprises a plurality of bins that are arranged according to orientation information and position information; and

perform tracking using the mapped direction vectors in the position-orientation data structure.

18. The computer program product for performing 17 , wherein:

clustering the direction vectors is based at least in part on smallest inter-frame distances and inter-frame orientation differences between the direction vectors of adjacent frames; and

the program instructions are further executable by the processor to cause the processor to store the clustered direction vectors for each frame in the same location in the position-orientation data structure.

19. The computer program product for performing 17 , wherein the program instructions are further executable by the processor to cause the processor to:

compare corresponding direction vectors for a current frame with direction vectors of a previous frame;

track the object based at least in part on the comparison; and

re-project proposed targets for the object based on tracking the object.

20. The computer program product for performing 17 , wherein the program instructions are further executable by the processor to cause the processor:

identify a missing object in a current frame;

perform a look-up operation in the position-orientation data structure based on the feature of the object of the current frame, wherein the lookup operation is performed on a region of the position-orientation data structure that is less than all regions of the position-orientation data structure;

retrieve missing object data from the position-orientation data structure; and

display output data including the retrieved missing object data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2020
From: ASIF, UMAR; TANG, JIANBIN; ROY, SUBHRAJIT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 052022/0597 →
Cited By (1)
US 12,669,825