An open API service indexing awesome lists of open source software.

https://github.com/53845714nf/dinofind

🦕 Dinofind is a search engine for finding visually similar images.
https://github.com/53845714nf/dinofind

dinov2 flask minio qdrant-vector-database tailwindcss

Last synced: 16 days ago
JSON representation

🦕 Dinofind is a search engine for finding visually similar images.

Awesome Lists containing this project

README

          

> [!WARNING]
> The following repository is no longer maintained. A new, improved version is available at: https://github.com/53845714nF/dinofind2


🦕 Dinofind


⚡ A website that allows users to search for images based on images. 🔍



Static Badge

Container image badge


Dependabot Updates


Screenshot

This project is a minimal search for finding visually similar images.
It is an experimental project designed to explore the use of vector databases for image similarity search.

## ✨ Features

- Upload and vectorize in advance.
- Search for visually similar images.
- Store image metadata and embeddings efficiently.
- Scalable and modular architecture.

## 🚀 Getting started

Start with:

```bash
docker compose up
```

Uploade your Images:
Put your Images in the `images` Folder then run:

```bash
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
python -m upload.main
```

## ⚙ Components

The core components of the system include:

- [Kaggle](https://www.kaggle.com/datasets/adityajn105/flickr30k) is a Dataset of 30k Images from Flickr
- [DINOv2](https://github.com/facebookresearch/dinov2) as the image vectorizer to convert images into high-dimensional embeddings.
- [Qdrant](https://github.com/qdrant/qdrant) as the vector database for storing and querying image embeddings.
- [MinIO](https://github.com/minio/minio) as the object storage system to store the original image files.
- [Flask](https://github.com/pallets/flask) as the backend web service framework.