imgs.ai
imgs.ai is a fast, dataset-agnostic, deep visual search engine for digital art history based on neural network embeddings. It utilizes modern approximate k-NN algorithms via Spotify's Annoy library to deliver fast search results even for very large datasets in low-resource environments, and integrates the OpenAI CLIP model for text-based visual search.
Try it here on the complete Rijksmuseum and Metropolitan Museum of Art collections or sign up for an account to access more functions/datasets (institutional email address and approval required).
imgs.ai is developed by Fabian Offert, with contributions by Peter Bell and Oleg Harlamov. Get in touch at [email protected].
Local installation
Only MacOS and Linux environments are currently supported.
- Download and install the Anaconda or Miniconda (preferred) package manager.
- Create a Python 3.8 conda environment with
conda create --yes -n imgs.ai python=3.8
and activate it withconda activate imgs.ai
. - Clone or download the repository and run the install.sh shell script with your preferred shell. If you would like to install with GPU support, add the following parameter:
cudatoolkit=10.1
, where the version number is the version of your installed CUDA framework (see https://pytorch.org/ for more information). - To start imgs.ai, run the run.sh shell script with your preferred shell.
- Open a web browser and navigate to
localhost:5000
to see the interface.
We provide the Rijksmuseum dataset (embeddings only) for testing purposes. (Download here and extract to the models/public
folder). The dataset is trained on nearly 400,000 works in the Rijksmuseum collection. This is a live dataset, images are pulled from the Rijksmuseum servers on request. Right-click an image to go to the source website on the Rijksmuseum servers.
Local training (experimental)
Please see the separate imgs.ai-custom repository to train your own dataset.