Using video-based imagery for automated detection, tracking, and counting of moving objects, in particular those objects having image characteristics similar to background
First Claim
1. A method for tracking bats, comprising:
- a) employing at least one specially configured computer having computer readable storage media at least some of which contains specialized software implementing at least one algorithm;
b) capturing video images of said bats by employing at least one digital imaging device, said at least one digital imaging device in operable communication with said at least one specially configured computer;
c) employing at least some said specialized software implementing a first said at least one algorithm to create at least one synthetic adaptive temporal background within the field of view (FOV) of said at least one digital imaging device, said synthetic adaptive temporal background at least removing clutter,wherein synthetic target-free background images are generated as said at least one synthetic temporal background at a time interval and number of sequential source images specified by a user, andwherein the value for each pixel in said synthetic target-free background is determined by taking the mode of the histogram of values of said pixels for each location within a said video image;
d) collecting on at least said computer readable storage media at least said video images of said bats, said video images made available as pixels arranged in video frames;
wherein at least said video images of said bats are sent to said computer for processing using at least some of said specialized software;
e) for each said bat imaged by said at least one digital imaging device, differencing said pixels in said video frames sequentially by subtracting a current said synthetic temporal background to yield differenced said pixels as a differenced image;
f) taking the absolute value of each resultant said differenced image,wherein said absolute value is taken to eliminate the effects of polarity;
g) thresholding, to a user-specified threshold, those of said differenced pixels at the tail end of the distribution of said differenced pixels,wherein the location and value of said differenced pixels are saved to a detected pixel report for subsequent processing, andwherein said imaged bats are each identifiable as an individual said pixel cluster of said pixels in said video frame of thresholded differenced pixels, andwherein a track of a said imaged bat is established if two said individual pixel clusters representing an individual said bat exhibit similar size in two successive video frames of said differenced thresholded pixels;
h) applying a standard “
region growing”
technique to find discrete contiguous said pixel clusters to be associated with each candidate said bat,wherein applying said “
region growing”
algorithm establishes a cluster of contiguous single-polarity pixels that identifies an individual said bat, andwherein the center location of said pixel cluster, number of said pixels, and boundary dimensions of said pixel cluster are saved for subsequent processing, andwherein said center location [X, Y] of each said pixel cluster is determined by taking an average of all locations of said pixels within said pixel cluster weighted by a respective absolute difference value;
i) establishing said two pixel clusters of a similar size in at least two successive video frames as location pairs; and
j) updating and labeling each said location pair as a motion vector in each subsequent said differenced thresholded video frame,wherein said updating is used to predict a next position of each said imaged bat; and
k) iterating steps d) through j) said video frame-by-said video frame for each said FOV and respective synthetic temporal background to generate an output of individual said tracks of each said imaged bat represented in said video frames,wherein said method enables simultaneous tracking of multiple bats, andwherein said bats may have a thermal signature in a range that is approximately equal to the range of the thermal signature of said stationary background in the FOV of said digital imaging device, andwherein behavior of said multiple bats may be chaotic.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method to automatically detect, track and count individual moving objects in a high density group without regard to background content, embodiments performing better than a trained human observer. Select embodiments employ thermal videography to detect and track even those moving objects having thermal signatures that are similar to a complex stationary background pattern. The method allows tracking an object that need not be identified every frame of the video, that may change polarity in the imagery with respect to background, e.g., switching from relatively light to dark or relatively hot to cold and vice versa, or both. The methodology further provides a permanent record of an “episode” of objects in motion, permitting reprocessing with different parameters any number of times. Post-processing of the recorded tracks allows easy enumeration of the number of objects tracked with the FOV of the imager.
-
Citations
20 Claims
-
1. A method for tracking bats, comprising:
-
a) employing at least one specially configured computer having computer readable storage media at least some of which contains specialized software implementing at least one algorithm; b) capturing video images of said bats by employing at least one digital imaging device, said at least one digital imaging device in operable communication with said at least one specially configured computer; c) employing at least some said specialized software implementing a first said at least one algorithm to create at least one synthetic adaptive temporal background within the field of view (FOV) of said at least one digital imaging device, said synthetic adaptive temporal background at least removing clutter, wherein synthetic target-free background images are generated as said at least one synthetic temporal background at a time interval and number of sequential source images specified by a user, and wherein the value for each pixel in said synthetic target-free background is determined by taking the mode of the histogram of values of said pixels for each location within a said video image; d) collecting on at least said computer readable storage media at least said video images of said bats, said video images made available as pixels arranged in video frames; wherein at least said video images of said bats are sent to said computer for processing using at least some of said specialized software; e) for each said bat imaged by said at least one digital imaging device, differencing said pixels in said video frames sequentially by subtracting a current said synthetic temporal background to yield differenced said pixels as a differenced image; f) taking the absolute value of each resultant said differenced image, wherein said absolute value is taken to eliminate the effects of polarity; g) thresholding, to a user-specified threshold, those of said differenced pixels at the tail end of the distribution of said differenced pixels, wherein the location and value of said differenced pixels are saved to a detected pixel report for subsequent processing, and wherein said imaged bats are each identifiable as an individual said pixel cluster of said pixels in said video frame of thresholded differenced pixels, and wherein a track of a said imaged bat is established if two said individual pixel clusters representing an individual said bat exhibit similar size in two successive video frames of said differenced thresholded pixels; h) applying a standard “
region growing”
technique to find discrete contiguous said pixel clusters to be associated with each candidate said bat,wherein applying said “
region growing”
algorithm establishes a cluster of contiguous single-polarity pixels that identifies an individual said bat, andwherein the center location of said pixel cluster, number of said pixels, and boundary dimensions of said pixel cluster are saved for subsequent processing, and wherein said center location [X, Y] of each said pixel cluster is determined by taking an average of all locations of said pixels within said pixel cluster weighted by a respective absolute difference value; i) establishing said two pixel clusters of a similar size in at least two successive video frames as location pairs; and j) updating and labeling each said location pair as a motion vector in each subsequent said differenced thresholded video frame, wherein said updating is used to predict a next position of each said imaged bat; and k) iterating steps d) through j) said video frame-by-said video frame for each said FOV and respective synthetic temporal background to generate an output of individual said tracks of each said imaged bat represented in said video frames, wherein said method enables simultaneous tracking of multiple bats, and wherein said bats may have a thermal signature in a range that is approximately equal to the range of the thermal signature of said stationary background in the FOV of said digital imaging device, and wherein behavior of said multiple bats may be chaotic. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method employing at least a specially configured computer in operable communication with at least one digital imaging device for capturing images of objects in motion, said images processed as video frames, said method enabling simultaneous tracking of multiple said objects in motion, said objects in motion having at least one characteristic of their signature in a range that is, at some times, approximately equal to the range of said characteristic in the signature of a background behind said objects in motion, comprising:
-
a) providing at least some specialized software at least some of which implements at least one algorithm on computer readable storage media in operable communication with said specially configured computer; b) employing at least some said specialized software implementing a first said at least one algorithm to create at least one synthetic adaptive temporal background within the field of view (FOV) of each said at least one digital imaging device, said synthetic adaptive temporal background at least removing clutter, wherein synthetic target-free background images are generated as said at least one synthetic temporal background at a time interval and number of sequential source images specified by a user, and wherein the value for each pixel in said synthetic target-free background is determined by taking the mode of the histogram of values of said pixels for each location within a said video image; c) collecting on at least said computer readable storage media at least said video images of said objects in motion, said video images made available as pixels and pixel clusters arranged in video frames, wherein at least said video images of said objects are sent to said specially configured computer for processing, said processing employing at least some of said specialized software; d) for each said object in motion imaged by said at least one digital imaging device, differencing said pixels in said video frames sequentially by subtracting a current said synthetic temporal background to yield differenced said pixels as a differenced image; e) taking the absolute value of each resultant said differenced image, wherein said absolute value is taken to eliminate the effects of polarity; f) thresholding, to a user-specified threshold, those of said differenced pixels at the tail end of the distribution of said differenced pixels, wherein the location and value of said differenced pixels are saved to a detected pixel report for subsequent processing, and wherein said imaged objects in motion are each identifiable as an individual said pixel cluster of said pixels in said video frame of thresholded differenced pixels, and wherein a track of a said imaged object in motion is established if two said individual pixel clusters representing an individual said object in motion exhibit similar size in two successive video frames of said differenced thresholded pixels; g) applying a standard “
region growing”
technique to find discrete contiguous said pixel clusters to be associated with each candidate said object in motion,wherein applying said “
region growing”
algorithm establishes a cluster of contiguous single-polarity pixels that identifies an individual said object in motion, andwherein the center location of said pixel cluster, number of said pixels, and boundary dimensions of said pixel cluster are saved for subsequent processing, and wherein said center location [X, Y] of each said pixel cluster is determined by taking an average of all locations of said pixels within said pixel cluster weighted by a respective absolute difference value; h) establishing said two pixel clusters of a similar size in at least two successive video frames as location pairs; and i) updating and labeling each said location pair as a motion vector in each subsequent said differenced thresholded video frame, wherein said updating is used to predict a next position of each said object in motion; and j) iterating steps c) through i) said video frame-by-said video frame for each said FOV and respective synthetic temporal background to generate an output of individual said tracks of each said object in motion represented in said video frames, wherein said method enables simultaneous tracking of multiple objects in motion, and wherein said objects in motion may have a thermal signature in a range that is approximately equal to the range of the thermal signature of said stationary background in the FOV of each said digital imaging device, and wherein behavior of said objects in motion may be chaotic. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system enabling simultaneous tracking of multiple objects in motion, candidate said objects in motion having at least one characteristic of their signature in a range that is approximately equal to the range of said characteristic in the signature of an established temporal background behind said objects in motion, comprising:
-
at least one tripod; computer readable memory storage media, at least some of said computer readable memory storage media containing at least specialized software implementing at least one specially adapted algorithm; a specially configured computer in operable communication with said computer readable memory storage media; at least one digital imaging device, each said at least one imaging device in operable communication with one said at least one tripod, said at least one digital imaging device for capturing images of said multiple objects in motion that may be processed as video frames, said at least one digital imaging device in operable communication with said at least one specially configured computer, wherein said images are collected on at least some of said computer readable memory storage media, said images made available as pixels that may be arranged as pixel clusters in said video frames, and wherein said specially configured computer processes said captured images by employing at least one said algorithm, and wherein a first said at least one algorithm is applied so that for each said candidate object in motion, said pixels are differenced in said video frames sequentially by subtracting an adaptive temporal background, said subtracting at least removing clutter from said differenced frame, a second said at least one algorithm further enabling thresholding to remove those of said pixels at the tail ends of the distribution of said differenced pixels, resulting in said candidate objects in motion appearing as the only pixel clusters in said thresholded differenced video frame, and further establishing a track of one said candidate object in motion if two said pixel clusters exhibit similar size in a successive frame processed after said initial differenced thresholded video frame, and wherein said two pixel clusters of a similar size are then referred to as location pairs, and wherein said location pairs define a motion vector that is updated in each subsequent said differenced thresholded video frame to predict a next position of said candidate object in motion, and wherein each said at least one algorithm is iterated for successive said video frames to generate an output of at least individual said tracks of each said candidate object in motion that is represented in said differenced thresholded video frames, wherein each said candidate object in motion identified to an individual track that originates on the inside of a said pre-specified polygon and terminates on the outside of said polygon is classified as an emergent track, and wherein an emergence tally is incremented by one for each said candidate object in motion identified thereby, and wherein each said candidate object in motion that originates on the outside of said polygon and terminates on the inside of said polygon is classified as return track, and wherein a return tally is incremented by one for each said candidate object in motion identified thereby, and wherein all other said candidate objects in motion are considered unclassified.
-
Specification