Systems and methods for providing an image classifier
AssigneeMovidius Limited
InventorsDavid Moloney, Alireza Dehghani
Life of this patent
Estimating the term…
Abstract
Systems and methods are provided for image classification using histograms of oriented gradients (HoG) in conjunction with a trainer. The efficiency of the process is greatly increased by first establishing a bitmap which identifies a subset of the pixels in the HoG window as including relevant foreground information, and limiting the HoG calculation and comparison process to only the pixels included in the bitmap.
Claims28
A compute device for object detection, the compute device comprising:
- at least one memory;
- interface circuitry to access an input image;
- instructions in the compute device;
- and
- processor circuitry to execute the instructions to at least:
- generate a non-rectangular silhouette based on a plurality of training images, the non-rectangular silhouette to represent a relevant portion of an image window corresponding to a class of object;
- generate, from the non-rectangular silhouette, a non-rectangular bitmap, the non-rectangular bitmap to identify fewer than all cells within a rectangular detection window, wherein the rectangular detection window has cell width and a cell height;
- and
- detect the class of object within an image, wherein the processor is to execute the instructions to:
- identify cells within a received image that match identified cells of the non-rectangular bitmap by applying the rectangular detection window containing the non-rectangular silhouette to a portion of the image having the cell width and cell height of the rectangular detection window;
- generate a histogram of orientations of pixels within an identified cell;
- identify a cell block having a plurality of contiguous identified cells from the image portion;
- generate a descriptor for the cell block, wherein a contents of the descriptor is normalized to contents of another descriptor;
- and
- determine whether to identify the image portion as including the class of object by evaluating the cell block descriptor against the plurality of training images.
A computer-implemented method for object detection within an image, the method comprising:
- storing a non-rectangular silhouette generated based on a set of training images, the non-rectangular silhouette to represent a relevant portion of an image window corresponding to a class of object;
- storing a non-rectangular bitmap that identifies a subset of cells of a rectangular detection window, the rectangular detection window having a cell width and cell height;
- and
- detecting the class of object within an image, including:
- identifying cells within an image that match the subset of cells of the non-rectangular bitmap by applying the rectangular detection window to a portion of the image having the cell width and cell height of the rectangular detection window, the image having a first cell width and cell height;
- for an identified cell within the image portion, analyzing orientations of pixels within the cell;
- identifying an overlapping cell block having a plurality of contiguous identified cells from the image portion;
- generating a descriptor for the cell block, wherein a contents of the descriptor is normalized to contents of another descriptor;
- and
- determining whether to identify the image portion as including a desired class of object by evaluating the cell block descriptor against a plurality of training images.
A non-transitory computer readable medium comprising instructions that, when executed, cause a computing device to at least:
- generate, from a plurality of training images, a non-rectangular silhouette representing a relevant portion of an image window;
- generate a non-rectangular bitmap based on a non-rectangular silhouette, the non-rectangular bitmap to identify fewer than all cells within a rectangular detection window having a cell width and cell height;
- and
- detect a class of object within the image, wherein detecting the class of object within the image includes:
- receiving an image;
- identifying cells within the image that match identified cells of the non-rectangular bitmap by applying the rectangular detection window containing the non-rectangular silhouette to a portion of the image having the cell width and cell height of the rectangular detection window;
- generating a histogram of orientations of pixels within an identified cell;
- identifying a cell block having a plurality of contiguous identified cells from the image portion;
- generating a descriptor for the cell block, wherein a contents of the descriptor is normalized to contents of another descriptor;
- and
- determining whether to identify the image portion as including the class of object by evaluating the cell block descriptor against the plurality of training images.
Dependencies are inferred from the claim text.