1. A method for obtaining image features of an image, the method comprising: extracting from the image, by a processor, a color histogram of the image, the extraction of the color histogram including performing one-dimensional sampling of pixels comprising the image in each of a first dimension of a color space, a second dimension of the color space, and a third dimension of the color space; analyzing an edge map corresponding to the image to detect a pattern included in the image; in response to a confidence level of the pattern detection being below a pre-defined threshold, extracting from the image an orientation histogram of the image; and extracting from the image a dominant color of the image.