IP Library Granted Patent US 8,218,818
Granted Patent B2
US 8,218,818 · App. 12/552,197 · Granted Jul 10, 2012

Foreground object tracking

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 8,218,818
App. No.
12/552,197
Granted
Jul 10, 2012
Kind
B2
Abstract

Techniques are disclosed for detecting foreground objects in a scene captured by a surveillance system and tracking the detected foreground objects from frame to frame in real time. A motion flow field is used to validate foreground objects(s) that are extracted from the background model of a scene. Spurious foreground objects are filtered before the foreground objects are provided to the tracking stage. The motion flow field is also used by the tracking stage to improve the performance of the tracking as needed for real time surveillance applications.

Claims (40)

1. A computer-implemented method for tracking a detected foreground patch that depicts a foreground object in a sequence of video frames captured by a video camera, the method comprising:

receiving a video frame in the sequence of video frame;

detecting a foreground patch that depicts a foreground object in the video frame to produce a detected first foreground patch;

receiving a motion flow field for the video frame that includes an angle and magnitude value for the first detected foreground patch in the video frame relative to the first detected foreground patch in a previous video frame;

categorizing the first detected foreground patch as being associated with an existing tracked foreground patch or as a discovered foreground patch based on a combination of the motion flow field and features of the first detected foreground patch; and

updating tracking data that is used to track the foreground object in the sequence of video frames.

2. The method of claim 1 , further comprising computing a covariance matrix using the features of the first detected foreground patch when the motion flow field does not provide enough information to categorize the first detected foreground patch.

3. The method of claim 2 , wherein the features include the red, green, and blue color components included in the video frame.

4. The method of claim 1 , further comprising determining that a second detected foreground patch is a discovered foreground patch and is not associated with the existing tracked foreground patch.

5. The method of claim 4 , wherein the updating comprises adding the second detected foreground patch to the tracking data.

6. The method of claim 1 , wherein the categorizing of the first detected foreground patch associates the first detected foreground patch with the existing tracked foreground patch because the size of the first detected foreground patch and the existing tracked foreground patch is similar.

7. The method of claim 1 , further comprising:

determining that the existing tracked foreground patch no longer exists based on a motion flow field for an additional video frame; and

removing the existing tracked foreground patch from the tracking data.

8. The method of claim 1 , wherein the angle is an average of angles in the motion flow field for each pixel corresponding to the first foreground patch and the magnitude value is an average of magnitude values in the motion flow field for each pixel corresponding to the first foreground patch.

9. A non-transitory computer-readable storage medium containing a program, which when executed by a processor, performs an operation for tracking a detected foreground patch that depicts a foreground object in a sequence of video frames captured by a video camera, the operation comprising: receiving a video frame in the sequence of video frame; detecting a foreground patch that depicts a foreground object in the video frame to produce a detected first foreground patch; receiving a motion flow field for the video frame that includes an angle and magnitude value for the first detected foreground patch in the video frame relative to the first detected foreground patch in a previous video frame; categorizing the first detected foreground patch as being associated with an existing tracked foreground patch or as a discovered foreground patch based on a combination of the motion flow field and features of the first detected foreground patch; and updating tracking data that is used to track the foreground object in the sequence of video frames.

10. The computer-readable storage medium of claim 9 , further comprising computing a covariance matrix using the features of the first detected foreground patch when the motion flow field does not provide enough information to categorize the first detected foreground patch.

11. The computer-readable storage medium of claim 9 , further comprising determining that a second detected foreground patch is a discovered foreground patch and is not associated with the existing tracked foreground patch.

12. The computer-readable storage medium of claim 11 , wherein the updating comprises adding the second detected foreground patch to the tracking data.

13. The computer-readable storage medium of claim 9 , wherein the categorizing of the first detected foreground patch associates the first detected foreground patch with the existing tracked foreground patch because the size of the first detected foreground patch and the existing tracked foreground patch is similar.

14. The computer-readable storage medium of claim 9 , further comprising:

determining that the existing tracked foreground patch no longer exists based on a motion flow field for an additional video frame; and

removing the existing tracked foreground patch from the tracking data.

15. The computer-readable storage medium of claim 9 , wherein the angle is an average of angles in the motion flow field for each pixel corresponding to the first foreground patch and the magnitude value is an average of magnitude values in the motion flow field for each pixel corresponding to the first foreground patch.

16. A system, comprising:

a video input source configured to provide a sequence of video frames;

a processor; and a memory containing a program, which, when executed on the processor is configured to perform an operation for tracking a detected foreground patch that depicts a foreground object in the sequence of video frames, the operation comprising:

receiving a video frame in the sequence of video frame;

detecting a foreground patch that depicts a foreground object in the video frame to produce a detected first foreground patch;

receiving a motion flow field for the video frame that includes an angle and magnitude value for the first detected foreground patch in the video frame relative to the first detected foreground patch in a previous video frame;

categorizing the first detected foreground patch as being associated with an existing tracked foreground patch or as a discovered foreground patch based on a combination of the motion flow field and features of the first detected foreground patch; and

updating tracking data that is used to track the foreground object in the sequence of video frames.

17. The system of claim 16 , further comprising computing a covariance matrix using the features of the first detected foreground patch when the motion flow field does not provide enough information to categorize the first detected foreground patch.

18. The system of claim 16 , further comprising:

determining that a second detected foreground patch is a discovered foreground patch and is not associated with the existing tracked foreground patch; and

adding the second detected foreground patch to the tracking data.

19. The system of claim 16 , wherein the categorizing of the first detected foreground patch associates the first detected foreground patch with the existing tracked foreground patch because the size of the first detected foreground patch and the existing tracked foreground patch is similar.

20. The system of claim 16 , further comprising:

determining that the existing tracked foreground patch no longer exists based on a motion flow field for an additional video frame; and

removing the existing tracked foreground patch from the tracking data.

Assignments (5)
NUNC PRO TUNC ASSIGNMENT Recorded Oct 13, 2022
From: AVIGILON PATENT HOLDING 1 CORPORATION
To: MOTOROLA SOLUTIONS, INC.
Reel/Frame 062034/0176 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2018
From: HSBC BANK CANADA
To: AVIGILON PATENT HOLDING 1 CORPORATION
Reel/Frame 046895/0803 →
CHANGE OF NAME Recorded Dec 12, 2016
From: 9051147 CANADA INC.
To: AVIGILON PATENT HOLDING 1 CORPORATION
Reel/Frame 040886/0579 →
SECURITY INTEREST Recorded Apr 8, 2015
From: CANADA INC.
To: HSBC BANK CANADA
Reel/Frame 035387/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2015
From: BEHAVIORAL RECOGNITION SYSTEMS, INC.
To: 9051147 CANADA INC.
Reel/Frame 034881/0362 →