Skip to content

sayan1999/search-by-image

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

title emoji colorFrom colorTo sdk sdk_version app_file pinned
Search-By-Image
💻
indigo
green
streamlit
1.29.0
app.py
false

Image Reverse Search Web App

Description

Image Reverse Search with Google’s EfficientNet and Facebook’s FAISS library optimizing search efficiency through fast image embeddings and approximate nearest neighbor algorithms | Training speed: 65k images efficientnet-b2: 4 mins vs Resnet-152: 10 mins

Upload a picture, and AI powered by deep learning will instantly show you visually related matches. Explore and discover connections through the magic of image recognition.

Demo

Experience the app in action right in your browser: https://huggingface.co/spaces/Instantaneous1/search-by-image

Demo

Key Features

  • Upload a query image to find visually similar images in the dataset.
  • Explore retrieved images to discover related content.
  • Adjust the number of matches displayed for visual comparisons.
  • Utilizes a pre-trained image feature extractor model (EfficientNet-b2) for accurate image similarity.
  • Employs FAISS index for fast approximate nearest neighbor search.
  • Offers a user-friendly interface powered by Streamlit.

Getting Started

  1. Clone this repository:
git clone [[email protected]:sayan1999/search-by-image.git]([email protected]:sayan1999/search-by-image.git)
  1. Install required libraries:
pip install -r requirements.txt
  1. Run the Streamlit app:

for quickly dl embeddings and skipp training

streamlit run app.py

or

to rebuild embeddings

streamlit run app.py -- --dev
  1. Access the app in your web browser (usually at http://localhost:8501).

Technology Stack

Streamlit: Framework for building and deploying web apps in Python. Torch: Powerful deep learning framework. OpenDatasets: Library for convenient dataset downloading. FAISS: Facebook's fast AI vector similarity search EfficientNet-b2: Pre-trained image classification model for feature extraction.

Usage

  1. Access the app in your web browser at the provided link (usually http://localhost:8501).
  2. Click the "Upload Image" button and select an image from your computer.
  3. Optionally, adjust the number of matches using the slider.
  4. Click the "Search" button to initiate the reverse image search.
  5. The app will display the query image along with the retrieved similar images.

Dataset

https://www.kaggle.com/datasets/kkhandekar/image-dataset

About

Uncover visual connections in a flash with AI-powered reverse image search.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages