Você definitivamente pode armazenar imagens com metadados (ou seja, tags) em um banco de dados. É uma coisa bastante trivial de se fazer. Isso não resolverá seu problema, pois você precisará visitar todas as fotos da sua coleção para classificá-las (atribuir tags a ela, como gato, outono, água, etc.).
Se tudo que você realmente precisa saber é quantos rostos há em cada imagem, você pode querer verificar a biblioteca OpenCV (para fazer a detecção de rostos, não o reconhecimento de rostos, pois tudo que você precisa é um número).
Se você está atrás de uma classificação mais geral, como objetos, animais, eventos - você precisará de uma solução muito mais elaborada da área de Machine Learning (confira Cybula para isso).
Na prática, provavelmente será mais rápido percorrer a coleção de milhares de imagens e atribuir marcas manualmente usando um aplicativo de gerenciamento de imagens (o Picasa costumava fazer isso) e depois fazer uma pesquisa por tags.