--- title: Visual Place Recognition Demo emoji: 🗺️ colorFrom: blue colorTo: purple sdk: gradio sdk_version: 4.44.0 app_file: app.py pinned: false license: mit short_description: Upload a query image to find similar places --- # Visual Place Recognition Demo This is a Visual Place Recognition (VPR) demo using EigenPlaces model. Upload a query image to find similar places in our database of 400+ images from various cities. ## How it works 1. Upload a query image 2. The model extracts visual features from your image 3. It compares these features with pre-computed features from 400+ database images 4. Returns the most similar matches with similarity scores and location information ## Dataset - **Database**: 400+ images from various cities - **Cities**: Melbourne, Boston, and others - **Metadata**: Each image includes place ID, city, and GPS coordinates ## Model - **Architecture**: EigenPlaces with ResNet50 backbone - **Descriptor Dimension**: 2048 - **Similarity Metric**: Cosine similarity ## Usage 1. Upload a query image using the interface 2. Adjust the number of matches you want to see (1-10) 3. Click "Find Matches" to get results 4. View the matched images and their metadata ## Technical Details The demo uses: - EigenPlaces model for visual feature extraction - Pre-computed descriptors for fast similarity search - Cosine similarity for matching - Gradio for the web interface ## Files - `app.py`: Main Gradio application - `model.py`: Model loading and descriptor computation - `dataset.py`: Dataset handling and ground truth lookup - `data/`: Contains database images, query images, and ground truth JSON