VIDEO-BASED VEHICLE DETECTION AND TRACKING USING SPATIO-TEMPORAL MAPS
First Claim
1. A method, performed by a computer having a memory and a processor, for locating objects within video data, the method comprising:
- receiving a selection of a set of pixels of the video data;
for each of a plurality of frames of the video data,capturing pixel data for the selected set of pixels, andadding the captured pixel data to image data associated with the selected set of pixels;
with the processor, detecting strand lines within the image data associated with the selected set of pixels;
clustering the strand lines detected within the image data associated with the selected set of pixels; and
detecting objects based on the clustered strand lines, wherein each cluster of strand lines corresponds to a different object within the video data.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for detecting and tracking objects, such as motor vehicles, within video data. The systems and method analyze video data, for example, to count objects, determine object speeds, and track the path of objects without relying on the detection and identification of background data within the captured video data. The detection system uses one or more scan lines to generate a spatio-temporal map. A spatio-temporal map is a time progression of a slice of video data representing a history of pixel data corresponding to a scan line. The detection system detects objects in the video data based on intersections of lines within the spatio-temporal map. Once the detection system has detected an object, the detection system may record the detection for counting purposes, display an indication of the object in association with the video data, determine the speed of the object, etc.
40 Citations
25 Claims
-
1. A method, performed by a computer having a memory and a processor, for locating objects within video data, the method comprising:
-
receiving a selection of a set of pixels of the video data; for each of a plurality of frames of the video data, capturing pixel data for the selected set of pixels, and adding the captured pixel data to image data associated with the selected set of pixels; with the processor, detecting strand lines within the image data associated with the selected set of pixels; clustering the strand lines detected within the image data associated with the selected set of pixels; and detecting objects based on the clustered strand lines, wherein each cluster of strand lines corresponds to a different object within the video data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer-readable storage medium storing instructions that, if executed by a computer having a memory and a processor, cause the computer to perform operations comprising:
-
for a first set of pixels of the video data, capturing pixel data corresponding to the first set of pixels from each of a plurality of frames of the video data; generating a first spatio-temporal map based on the captured pixel data corresponding to the first set of pixels; for a second set of pixels of the video data, capturing pixel data corresponding to the second set of pixels from each of the plurality of frames of the video data, wherein the first set of pixels is different from the second set of pixels and wherein the pixel data corresponding to the first set of pixels is captured concurrently with the pixel data corresponding to the second set of pixels; generating a second spatio-temporal map based on the captured pixel data corresponding to the second set of pixels; for each generated spatio-temporal map, detecting segments of strand lines within the spatio-temporal map, each segment corresponding to a different strand line, grouping strand lines based at least in part on intersections between the strand lines, each group of strand lines corresponding to a different object. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A system, having a memory and a processor, for detecting objects in video data, the system comprising:
-
a component configured to, for a selected set of pixels of the video data, generate a spatio-temporal map based on pixel data captured from chronologically-ordered frames of the video data; a component configured to detect at least portions of strand lines within the generated spatio-temporal map; a component configured to create a node for each of the strand lines; a component configured to, for each strand line, identify an intersection between the strand line and another strand line, and create an edge between the node associated with the strand line and the node associated with the other strand line; a component configured to identify groups of connected nodes; a component configured to identify strands based on the identified groups of connected nodes, each strand corresponding to a plurality of strand lines; and a component configured to detect objects based on the identified strands. - View Dependent Claims (19, 20, 21)
-
-
22. A computer-readable storage medium storing instructions that, if executed by a computer having a memory and a processor, cause the computer to perform operations for detecting objects within image data comprising a plurality of frames, the operations comprising:
-
receiving a scan line; for each of a plurality of frames of the image data, capturing pixel data corresponding to the scan line, and adding the captured pixel data to a spatio-temporal map associated with the scan line; identifying strand lines within the spatio-temporal map; extending the identified strand lines beyond the spatio-temporal map; identifying intersections between the extended strand lines; identifying groups of strand lines based on the identified intersections; detecting objects based on the identified groups of strand lines. - View Dependent Claims (23, 24, 25)
-
Specification