1. A method of analyzing an image made up of a plurality of pixels, each pixel having a brightness intensity, the method comprising: identifying a subset of the pixels; for each identified pixel: defining a local patch of pixels surrounding the identified pixel; and grouping the pixels in the local patch into a number of bins based on the brightness intensities of the pixels; dividing the local patch into a plurality of sub-patches; determining, for each sub-patch, how many pixels in each sub-patch fall into each of the bins; creating an intermediate vector for each sub-patch based upon how many pixels in each sub-patch fall into each of the bins; and concatenating the intermediate vectors to form a feature vector and to describe the local patch.