Moving vehicle detection and analysis using low resolution remote sensing imagery
First Claim
1. A method for processing images from an aerial imaging device, the method comprising:
- receiving a plurality of images of a geographical area, each image of the plurality of images captured at a distinct time;
generating, by a machine learning model based on the plurality of images, an output comprising;
a plurality of blobs, wherein each blob comprises one or more adjacent pixels in a distinct image of the plurality of images, the adjacent pixels matching each other based on a pixel attribute;
a score indicative of a likelihood that the plurality of blobs corresponds to a moving vehicle;
storing an association between the plurality of blobs and the moving vehicle responsive to the generated score exceeding a threshold;
determining a count of one or more moving vehicles in the plurality of images, each moving vehicle associated with a corresponding plurality of blobsreceiving a pixel resolution of the plurality of images;
determining a number of pixels in each blob of the plurality of blobs;
determining a size of each vehicle of the one or more moving vehicles based on the pixel resolution and the number of pixels in each blob of the corresponding plurality of blobs associated with the moving vehicle;
determining a number of pixels associated with a length of a vehicular path;
determining the length of the vehicular path based on the pixel resolution and the number of pixels associated with the length of the vehicular path;
for each of the one or more moving vehicles, determining a directional vector for the corresponding plurality of blobs associated with the moving vehicle by determining a difference between a centroid of each blob of the corresponding plurality of blobs, the directional vector corresponding to a speed and a direction of the moving vehicle;
for each of the one or more moving vehicles, determining a length of the directional vector based on the pixel resolution; and
for each of the one or more moving vehicles, determining a speed as the length of the directional vector divided by a difference in time between the plurality of images.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a method and system for processing images from an aerial imaging device. A moving vehicle analysis system receives images from an aerial imaging device. The system may perform edge analysis in the images to identify a pairs of edges corresponding to a road. The system may identify pixel blobs in the images including adjacent pixels matching each other based on a pixel attribute. The system uses a machine learning model for generating an output identifying moving vehicles in the images. The system determines a count of the moving vehicles captured by the images, where each moving vehicle is associated with corresponding pixel blobs.
-
Citations
20 Claims
-
1. A method for processing images from an aerial imaging device, the method comprising:
-
receiving a plurality of images of a geographical area, each image of the plurality of images captured at a distinct time; generating, by a machine learning model based on the plurality of images, an output comprising; a plurality of blobs, wherein each blob comprises one or more adjacent pixels in a distinct image of the plurality of images, the adjacent pixels matching each other based on a pixel attribute; a score indicative of a likelihood that the plurality of blobs corresponds to a moving vehicle; storing an association between the plurality of blobs and the moving vehicle responsive to the generated score exceeding a threshold; determining a count of one or more moving vehicles in the plurality of images, each moving vehicle associated with a corresponding plurality of blobs receiving a pixel resolution of the plurality of images; determining a number of pixels in each blob of the plurality of blobs; determining a size of each vehicle of the one or more moving vehicles based on the pixel resolution and the number of pixels in each blob of the corresponding plurality of blobs associated with the moving vehicle; determining a number of pixels associated with a length of a vehicular path; determining the length of the vehicular path based on the pixel resolution and the number of pixels associated with the length of the vehicular path; for each of the one or more moving vehicles, determining a directional vector for the corresponding plurality of blobs associated with the moving vehicle by determining a difference between a centroid of each blob of the corresponding plurality of blobs, the directional vector corresponding to a speed and a direction of the moving vehicle; for each of the one or more moving vehicles, determining a length of the directional vector based on the pixel resolution; and for each of the one or more moving vehicles, determining a speed as the length of the directional vector divided by a difference in time between the plurality of images. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium comprising instructions executable by a processor, the instructions when executed by the processor causes the processor to:
-
receive a plurality of images of a geographical area, each image of the plurality of images captured at a distinct time; generate, by a machine learning model based on the plurality of images, an output comprising; a plurality of blobs, wherein each blob comprises one or more adjacent pixels in a distinct image of the plurality of images, the adjacent pixels matching each other based on a pixel attribute; and a score indicative of a likelihood that the plurality of blobs corresponds to a moving vehicle; store an association between the plurality of blobs and the moving vehicle responsive to the generated score exceeding a threshold; determine a count of one or more moving vehicles in the plurality of images, each moving vehicle associated with a corresponding plurality of blobs; receive a pixel resolution of the plurality of images; determine a number of pixels in each blob of the plurality of blobs; determine a size of each vehicle of the one or more moving vehicles based on the pixel resolution and the number of pixels in each blob of the corresponding plurality of blobs associated with the moving vehicle; determine a number of pixels associated with a length of a vehicular path; determine the length of the vehicular path based on the pixel resolution and the number of pixels associated with the length of the vehicular path; for each of the one or more moving vehicles, determine a directional vector for the corresponding plurality of blobs associated with the moving vehicle by determining a difference between a centroid of each blob of the corresponding plurality of blobs, the directional vector corresponding to a speed and a direction of the moving vehicle; for each of the one or more moving vehicles, determine a length of the directional vector based on the pixel resolution; and for each of the one or more moving vehicles, determine a speed as the length of the directional vector divided by a difference in time between the plurality of images. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A system, comprising:
-
a processor; a non-transitory computer-readable storage medium comprising computer-readable instructions, that when executed by the processor, cause the processor to; receive a plurality of images of a geographical area, each image of the plurality of images captured at a distinct time; generate, by a machine learning model based on the plurality of images, an output comprising; a plurality of blobs, wherein each blob comprises one or more adjacent pixels in a distinct image of the plurality of images, the adjacent pixels matching each other based on a pixel attribute; and a score indicative of a likelihood that the plurality of blobs corresponds to a moving vehicle; store an association between the plurality of blobs and the moving vehicle responsive to the generated score exceeding a threshold; determine a count of one or more moving vehicles in the plurality of images, each moving vehicle associated with a corresponding plurality of blobs; receive a pixel resolution of the plurality of images; determine a number of pixels in each blob of the plurality of blobs; determine a size of each vehicle of the one or more moving vehicles based on the pixel resolution and the number of pixels in each blob of the corresponding plurality of blobs associated with the moving vehicle; determine a number of pixels associated with a length of a vehicular path; determine the length of the vehicular path based on the pixel resolution and the number of pixels associated with the length of the vehicular path; for each of the one or more moving vehicles, determine a directional vector for the corresponding plurality of blobs associated with the moving vehicle by determining a difference between a centroid of each blob of the corresponding plurality of blobs, the directional vector corresponding to a speed and a direction of the moving vehicle; for each of the one or more moving vehicles, determine a length of the directional vector based on the pixel resolution; and for each of the one or more moving vehicles, determine a speed as the length of the directional vector divided by a difference in time between the plurality of images.
-
Specification