Inspiration from my mom who collects more sarees over and over.
What it does This project is an end-to-end AI-powered visual search and outfit recommendation system designed to improve the online fashion shopping experience. Traditional keyword-based searches often fail to describe clothing accurately. Our solution enables users to simply upload an image of a fashion item from social media, their own wardrobe, or the street and instantly get:
Visually similar products from a curated inventory Smart outfit suggestions that match or complement the item Light personalization, using simple rules based on categories (e.g., if input is a dress, suggest jeans)
How we built it
How We Built It This project was developed in 5 main stages:
Data Collection & Preparation We started with two CSV datasets: dresses_bd_processed_data.csv jeans_bd_processed_data.csv These datasets contain metadata like: Product name, brand, category, price Image URLs (feature_image_s3) Description and styling details Steps: Added a category column to each Merged both into one file: combined_fashion_data.csv
Image Downloading We used the feature_image_s3 column to fetch each product’s image. A Python script (download_images.py) downloaded hundreds of images into a local images/ folder using the requests library. Tools Used: Pandas, Requests, TQDM, os
Image Feature Extraction We used a pretrained ResNet50 model from PyTorch. Modified it to remove the final classification layer so it outputs 2048-dimension embeddings. Each product image was passed through this model to extract its feature vector (embedding). These embeddings were saved to features.npy. Tools Used: PyTorch, Torchvision, PIL, NumPy
Visual Similarity Search with FAISS We used Facebook’s FAISS (fast similarity search) to index the image embeddings. A FAISS index was built using faiss.IndexFlatL2. When a user uploads an image, its features are extracted and matched to the most similar products in real-time. Outputs: features.npy – Image feature vectors faiss_index.index – FAISS search index product_ids.csv – Product ID mapping
User Interface (Streamlit App) A clean Streamlit app was developed for demo. Users can: Upload a photo View top 5 similar products See outfit recommendations (cross-category) The UI fetches matching product info and displays product images and names. UI Features: Upload image input Real-time FAISS-based search Outfit logic: e.g., if the input is a dress → recommend jeans
Challenges we ran into
Broken or missing image URLs Some product images failed to download due to invalid links.
Image format and preprocessing issues Some images were corrupted or not compatible with PyTorch input requirements.
OpenMP conflict error (#15) FAISS and PyTorch caused runtime clashes due to multiple OpenMP libraries.
Cross-category outfit pairing Recommending complementary items (e.g., jeans for a dress) required category-aware logic.
Efficient similarity search Matching images in real-time over many embeddings required high-speed indexing.
Streamlit performance bottlenecks Repeated model reloading and UI re-rendering affected user experience.
Accomplishments that we're proud of
This project delivers an end-to-end AI-powered solution to revolutionize the online fashion shopping experience. Traditional keyword-based search methods often fail to capture the nuances of clothing styles and designs. Our system allows users to upload an image whether from social media, their personal wardrobe, or street fashion and instantly receive: Visually similar product recommendations from a curated fashion inventory. Smart outfit suggestions that complement or match the uploaded item, enhancing styling possibilities. Light personalization using straightforward category-based rules (e.g., when the input is a dress, suggest matching jeans).
What we learned
Programming: Python, Pandas, NumPy Deep Learning: PyTorch with ResNet50 pretrained model Similarity Search: FAISS for high-performance vector similarity Frontend: Streamlit for rapid UI development Utilities: TQDM (progress bars), PIL (image processing), Requests (HTTP requests)
What's next for Fashion Visual Search & Intelligent Styling Assistant
In the future, the Fashion Visual Search & Intelligent Styling Assistant can be significantly enhanced to deliver a more personalized and immersive user experience. Advanced personalization features could incorporate user profiles, preferences, and browsing history to tailor recommendations more effectively. Expanding the system to support multimodal search combining images, text, and even voice inputs would make searching more intuitive and flexible. More sophisticated outfit generation techniques, leveraging advanced machine learning models, could suggest complete, trendy ensembles. Integrating augmented reality (AR) technology would enable users to virtually try on recommended outfits, bridging the gap between online and in-person shopping. Additionally, incorporating sustainability-focused recommendations and partnering with eco-friendly brands can align the platform with growing ethical fashion trends. Expanding the dataset and experimenting with cutting-edge models such as Vision Transformers or CLIP would further improve accuracy and robustness. Finally, developing cross-platform accessibility and social features will foster a vibrant community around the app. By following these directions, the project can evolve into a comprehensive, scalable, and user-centric fashion assistant.

Log in or sign up for Devpost to join the conversation.