A plurality of image data are stored in a hard disk drive in one-to-one correspondence with the image feature amounts of the image data. A CPU calculates the image feature amount of an input image on the basis of each color component value in a predetermined color space of each of regions obtained by segmenting the input image by a predetermined segmentation pattern. Image data similar to the input image is searched for on the basis of the calculated image feature amounts and the image feature amounts of the image data stored in the hard disk drive.