Fall 2015

Face recognition

Face recognition has wide ranging applications. In this project we focus on images taken by regular users with the constraint that training examples could be quite limited in number.

– Get familiar with the state-of-the-art. Two references to start with are:

(a) Regularized Robust Coding for Face Recognition
(b) Fast L1 Minimimzation Algorithms for Robust Face Recognition

– Implement, test, and compare one state-of-the-art technique

– Working implementation, preferably in C/C++

– Knowledge of image processing, computer vision algorithms
– Knowledge of programming in Matlab, C/C++

Type of work:
35% research
65% development and testing


Radhakrishna Achanta ([email protected])


Video super-resolution


Given one or more low-resolution images, we can apply a super-resolution algorithm which builds a higher resolution image of the scene, which upscales the image to be suitable for a HD display.
This project would require learning about one algorithm and adapt it to videos. Ideally, the algorithm uses multiple images, which is directly applicable to videos, as it is a sequence of images.

Note: This project can be potentially used for the Montreux Jazz Festival archive.

– Study and understand an image super-resolution algorithm from chosen (or given) paper
– Implement it such that it will work on a video.

– Knowledge in image processing and computer vision
– Knowledge of Python or Matlab or C/C++

– Written report
– Implementation of the algorithm.

Type of work:
50% research
50% implementation


Supervisor: Damien Firmenich ([email protected])

Photo picker

Implementation of an app (Android, iOS or web) which allows the user to quickly sift through a large collection of photos, to possibly make a photo album. The user is presented with an image from the collection, and can swipe left or right to, respectively, discard or keep the photo.
The challenges are: making a user-friendly interface, and implement an algorithm to detect similar pictures (and possibly choose the best picture automatically)
– Implement a mobile application as suggested
– Implement an algorithm to detect similar pictures and choose the best one
– Knowledge of Android or iOS or web development
– Knowledge of image processing and computer vision
– Written report
– Application source code
Type of work:
70% implementation
30% research
Bachelor or Master
Supervisor: Damien Firmenich ([email protected])

Harvesting the discriminative patches of the keywords

SynopsisWith the help of image search engines like Google and Bing, one can easily download hundreds of images for a keyword. However, why are these images correspond to the keyword? What makes a keyword different from other keywords in images? In this project we aim at finding the discriminative patches that defines the keyword in images. The student are required to explore the visual features of the image patches and using machine learning techniques to find the discriminative patches. So by the end of the project, the students should understand “what makes paris look like paris”!


In this project you will:


    • Build up a dataset of images for several keywords
    • Extract and explore the visual features of the patches
    • Use machine learning techniques to find the discriminative patches for each keyword



[1] Doersch, C., Singh, S., Gupta, A., Sivic, J., & Efros, A. (2012). What makes Paris look like Paris?. ACM Transactions on Graphics, 31(4).

[2] Singh, Saurabh, Abhinav Gupta, and Alexei A. Efros. “Unsupervised discovery of mid-level discriminative patches.” Computer Vision–ECCV 2012. Springer Berlin Heidelberg, 2012. 73-86.

[3] Doersch, C., Gupta, A., & Efros, A. A. (2013). Mid-level visual element discovery as discriminative mode seeking. In Advances in Neural Information Processing Systems (pp. 494-502).

[4] Sun, J., & Ponce, J. (2013, December). Learning discriminative part detectors for image classification and cosegmentation. In Computer Vision (ICCV), 2013 IEEE International Conference on (pp. 3400-3407). IEEE.

[5] Lindner, A., Bonnier, N., & Süsstrunk, S. (2012, January). What is the color of chocolate?–Extracting color values of semantic expressions. In Conference on Colour in Graphics, Imaging, and Vision.

DeliverablesIn the end of the semester, the student should provide a written report on the work done as well as the program that could find the discriminative patches of the images.

PrerequisitesKnowledge of image processing/computer vision and machine learning, programming with Matlab or C/C++ using OpenCV. 

Type of work: 50% research and 50% implementation.

Level: MS, semester project.

Supervisor: Bin Jin ([email protected])