1. A computer-implemented method comprising: receiving one or more search terms; identifying, in a collection of images, an image associated with the one or more search terms, the one or more search terms having been extracted from two or more adjacent candidate text regions in the image, the candidate text regions identified as regions of the image containing text; and providing the image in response to receiving the search terms, wherein the one or more search terms that were extracted from the image were extracted using a text recognition process including: processing the image to divide the image into one or more regions; detecting one or more features in each region; detecting one or more candidate text regions including the two or more adjacent candidate text regions, wherein candidate text regions are regions potentially containing text; enhancing the candidate text regions to generate an enhanced image; and performing optical character recognition on the enhanced image.