Foreground object tracking
First Claim
Patent Images
1. A computer-implemented method for tracking foreground objects depicted in a sequence of video frames captured by a video camera, the method comprising:
- identifying a first foreground patch in a current video frame of the sequence of video frames;
determining a motion flow field for a first foreground patch relative to at least a previous video frame of the sequence of video frames;
upon determining the motion flow field for the first foreground patch corresponds to a motion history of a first foreground object tracked in the sequence of video frames, associating the first foreground patch with the first foreground object; and
upon determining the motion flow field for the first foreground patch corresponds to a motion history of the first foreground object and a motion history of least a second foreground object tracked in the sequence of video frames, computing a covariance matrix for the foreground patch in the current video frame and each of the first and second foreground objects as depicted in the previous video frame.
6 Assignments
0 Petitions
Accused Products
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.
-
Citations
21 Claims
-
1. A computer-implemented method for tracking foreground objects depicted in a sequence of video frames captured by a video camera, the method comprising:
-
identifying a first foreground patch in a current video frame of the sequence of video frames; determining a motion flow field for a first foreground patch relative to at least a previous video frame of the sequence of video frames; upon determining the motion flow field for the first foreground patch corresponds to a motion history of a first foreground object tracked in the sequence of video frames, associating the first foreground patch with the first foreground object; and upon determining the motion flow field for the first foreground patch corresponds to a motion history of the first foreground object and a motion history of least a second foreground object tracked in the sequence of video frames, computing a covariance matrix for the foreground patch in the current video frame and each of the first and second foreground objects as depicted in the previous video frame. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium containing a program, which when executed by a processor, performs an operation for tracking foreground objects depicted in a sequence of video frames captured by a video camera, the operation comprising:
-
identifying a first foreground patch in a current video frame of the sequence of video frames; determining a motion flow field for a first foreground patch relative to at least a previous video frame of the sequence of video frames; upon determining the motion flow field for the first foreground patch corresponds to a motion history of a first foreground object tracked in the sequence of video frames, associating the first foreground patch with the first foreground object; and upon determining the motion flow field for the first foreground patch corresponds to a motion history of the first foreground object and a motion history of least a second foreground object tracked in the sequence of video frames, computing a covariance matrix for the foreground patch in the current video frame and each of the first and second foreground objects as depicted in the previous video frame. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. 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 by the processor, performs an operation for tracking foreground objects depicted in a sequence of video frames captured by the video input source, the operation comprising; identifying a first foreground patch in a current video frame of the sequence of video frames, determining a motion flow field for a first foreground patch relative to at least a previous video frame of the sequence of video frames, upon determining the motion flow field for the first foreground patch corresponds to a motion history of a first foreground object tracked in the sequence of video frames, associating the first foreground patch with the first foreground object, and upon determining the motion flow field for the first foreground patch corresponds to a motion history of the first foreground object and a motion history of least a second foreground object tracked in the sequence of video frames, computing a covariance matrix for the foreground patch in the current video frame and each of the first and second foreground objects as depicted in the previous video frame. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification