Recommendations for building a big search engine
you might consider to use an indexing framework like Apache Lucene as well. If not, I would recommend to model an inverted index like database. An inverted index uses keywords as key identifier for a set of images.

Inverted Index Table:

keyword image_ids
"sun" : [1,5,6]


Image Table

image_id  size    ...
   1     200x300  ...