Patent ID: 6961736

Claim:
A system comprising: an image data store containing a plurality of images; a color feature vector data store including a variable-length color feature vector for each of the plurality of images in the image data store; and a computer program operable to receive an image having one or more colors; estimate a number of colors that can be used to represent the received image so that one or more fuzzy error criteria are satisfied; set a value of a variable to be the estimated number of colors and until a length of the color feature vector is determined: apply a medium-cut quantizer to the received image to produce a quantized image having a number of colors that is equal to the current value of the variable; calculate an error between the quantized image and the received image; and if the calculated error satisfies an error threshold, determine the length of color feature vector based on the current value of the variable; and if the calculated error does not satisfy the error threshold, increment the value of the variable; and generate a color feature vector that is representative of and specific to the received image, the color feature vector having the determined length.