Skip to content

Commit d99aecc

Browse files
authored
Update README.md
1 parent 52e6991 commit d99aecc

File tree

1 file changed

+84
-1
lines changed

1 file changed

+84
-1
lines changed

README.md

Lines changed: 84 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,85 @@
11
# RevSearch
2-
Reverse Image search based on AI
2+
3+
RevSearch is a Minimum Viable Product (MVP) showcasing a car reverse image search application. It leverages cutting-edge machine learning, computer vision, and cloud-based technologies to provide an efficient and accurate image search experience. Built as a self-initiative, this project demonstrates end-to-end machine learning workflow expertise.
4+
5+
**Note:** The deployment has been taken down due to running costs.
6+
7+
---
8+
9+
## Workflow
10+
11+
1. **Image Upload**: Users upload an image in various formats (JPG, PNG, BMP, etc.).
12+
2. **Feature Encoding**: The uploaded image is encoded into a feature vector using a trained neural network encoder (EfficientNet).
13+
3. **Similarity Search**: The encoded feature vector is compared to precomputed feature vectors in the database.
14+
4. **Top Matches**: The system retrieves the top 10 image URLs based on similarity scores.
15+
5. **Image Retrieval**: Top 10 images are fetched from AWS S3 storage via AWS API Gateway and AWS Lambda.
16+
17+
> **Note**: RevSearch is currently not deployed due to associated operational costs.
18+
19+
---
20+
21+
## Project Details
22+
23+
- **Company**: Self-initiative project for applying end-to-end machine learning workflows.
24+
- **Timeline**: April 2022 - May 2022
25+
- **Codebase**:
26+
- Backend, Frontend, and Core Technology
27+
- [DeepImageSearchAPI](https://github.com/ibadrather/DeepImageSearchAPI)
28+
- [RevSearch](https://github.com/ibadrather/RevSearch)
29+
30+
---
31+
32+
## Key Features
33+
34+
- Upload images in various formats (JPG, PNG, BMP, etc.) for reverse search.
35+
- Interactive slider to select up to 6 similar images.
36+
- Powered by the EfficientNet neural network architecture for accurate feature extraction.
37+
- Responsive and seamless user experience powered by FastAPI.
38+
- Fully interactive **Reverse Image Search WebUI**.
39+
40+
---
41+
42+
## Technologies Used
43+
44+
| **Category** | **Technologies** |
45+
|-----------------------|----------------------------------------------------------------------|
46+
| Core Technologies | Python, PyTorch, ONNX, ONNX Runtime, Pandas |
47+
| Data Preprocessing | Albumentations |
48+
| Model Optimization | MLflow, Optuna |
49+
| Web App & Deployment | Streamlit, FastAPI, Docker, Heroku |
50+
| Cloud Services | AWS S3, AWS API Gateway, AWS Lambda |
51+
| CI/CD & Code Quality | GitHub Actions, Black, Pytest |
52+
| Image Processing | PIL |
53+
54+
---
55+
56+
## About the Dataset
57+
58+
- **Source**: Stanford University AI Lab’s Cars dataset.
59+
- **Composition**:
60+
- 16,185 images across 196 car classes.
61+
- Serves as the foundation for the feature extractor (encoder).
62+
63+
---
64+
65+
## DeepSearchLite Integration
66+
67+
RevSearch integrates **DeepSearchLite**, a custom lightweight library, for fast and efficient similarity searches with minimal dependencies.
68+
Find it on PyPi: [DeepSearchLite](https://pypi.org/project/DeepSearchLite/)
69+
70+
---
71+
72+
## Challenges and Future Improvements
73+
74+
1. **Dataset Limitations**:
75+
- Cars dataset (16,185 images) is outdated, impacting accuracy for newer models.
76+
2. **MVP Status**:
77+
- Currently demonstrates potential but requires further enhancements.
78+
3. **Next Steps**:
79+
- Expand the dataset to include more images and newer models.
80+
- Refine search algorithms for improved accuracy and speed.
81+
- Incorporate user feedback for additional features and functionality.
82+
83+
---
84+
85+
This project highlights expertise in advanced technologies and practical solutions for the automotive domain.

0 commit comments

Comments
 (0)