1. A computer-implemented method for retrieving and generating targeted information, the method comprising: receiving an input image from a user device; performing, with one or more processors, a visual search using the input image to produce recognized text; receiving a history of produced recognized text from previous visual searches by a user of the user device; generating, with the one or more computers, a list of relevant topics based on the recognized text and the history of produced recognized text; receiving targeted information; generating a list of relevant information based on the recognized text and the targeted information; generating a final list of targeted information by comparing the list of relevant topics to the list of relevant information.