Choice 1: Colors

Choice 1: Colors#

In this project, you will develop a content-based image retrieval system with PyTorch. You will focus on the case where the query is a color palette, and the goal is to find images whose dominant colors match the palette. You will build a neural network that learns a similarity metric between natural images and color palettes represented as images, allowing you to retrieve images that match a given set of colors.

Difficulty

Suggested Tutorials

Easy

Convolutional Networks, Transfer Learning, Triplet Loss

Requirements: This project can be completed on a standard laptop without a dedicated GPU. However, having access to a GPU will allow you to choose a larger pre-trained model (e.g., ResNet-50) and fine-tune it for potentially better performance.

Retrieval


Grading

The project will be graded based on the following criteria. Points for each activity are awarded based on quality and completeness (partial credit possible).

Activity

Points (max)

Build a baseline image retrieval system

8

Properly evaluate its performance (precision, recall)

2

Implement and compare a different loss function

2

Collect more images for underperforming color classes

3

Deployment (model made usable)

2

Presentation (clarity & demo)

3

Total

0-20