1. A method executable by computing device configured for image retrieval, the method comprising: Initiating a search for first images based on query keywords in a query; Identifying, during the search, the first images having associated keywords that match the query keyword, and second images that contain low-level features similar to those of the first images, wherein the second images are retrieved based on the low-level features; Receiving semantic-based relevance feedback and low-level feature relevance feedback; Wherein their semantic-based relevance feedback includes feedback for strengthening or weakening associations between keywords of a search query and the retrieved images, wherein the low-level feature relevance feedback includes feedback for ranking the relevance of each of the retrieved images, wherein a basis of the low-level feature relevance feedback includes one or more of a color histogram, a texture, or a shape in the retrieved images; Implementing a machine learning algorithm based on the received semantic-based relevance feedback and low-level relevance feedback; and Storing the results of the search, the semantic-based relevance feedback and the low-level feature relevance feedback, for later use.