1. A method for enabling searching of objects in images, the method comprising: using one or more processors to perform steps comprising: programmatically analyzing each image in a collection of images, including determining at least a local feature for individual objects that appear in each image of the collection, the local feature of each object having a visual characteristic; determining, from user-input, one or more search criteria; corresponding to at least a portion of an object in a user selected image; determining a similarity measurement between (i) the one or more search criteria and (ii) the local feature of objects individually depicted in at least some of the images in the collection; making a determination, from the similarity measurements, as to N images representing a portion of the collection that display corresponding objects that (i) individually have one or more local features with visual characteristics that are most similar to at least the portion of the object in the user selected image, (ii) but which are not uniquely identifiable from the one or more search criteria; wherein determining, from user-input, one or more search criteria further comprises: selecting the portion of the object in the user selected image from user-input, determining a value of a visual characteristic of the selected portion of the object in the user selected image, wherein the visual characteristic corresponds to at least one of a color, shape, pattern, or texture of the of the object, selecting, from user-input, an alternative value for the visual characteristic of the selected portion of the object, specifying at least a color and a shape criteria for the selected portion of the object in the user selected image and assigning weights for the specified color and shape criteria, including specifying or weighting the color or shape criteria using the alternative value.