Fall 2017


Pushing the Limits of Secret Messages in Images
Steganography is: “the practice of concealing a file, message, image, or video within another file, message, image, or video” (Wikipedia).
A lot of research has already been carried on least significant bit (LSB) steganography and maybe even more and steganalysis [1] which tries to detect the hidden messages.
LSB steganography is rather simple to implement, the secret message bits are placed as the LSB of every pixel, since the latter’s value hardly affects the image.
In this project you will:
Design a novel algorithm that makes the steganalysis a lot more complex by adding variability to the spatial order in which we hide the messages.
(Optional if time permits: Explore the feasibility of hiding the message bits in different color spaces)
[1] http://ieeexplore.ieee.org/abstract/document/959097/
Encoding-decoding algorithm with added variability.
(Optional if time permits: Feasibility study of encoding across color spaces or actual full implementation.)
Be comfortable with MATLAB, OR very comfortable with Python.
And more importantly to love programming/mathematical puzzles.
Level: MS semester project
Type of work: 20% implementation, 80% research.
Supervisor: Majed El Helou (majed dot elhelou at epfl)

Exploring Beautiful Scenes by Location
Have you ever seen pictures of magnificent scenes online and really wanted to mark them on your bucket list of places to visit but never knew where the photos were taken?
There are multiple websites that collect images of beautiful scenery, usually posted by users who are trying to sell their copyrights.
Some websites reveal which region or country the photo was taken in, but never the exact map location and time of the year.
The goal of this project is to design a web tool where users can upload their scenery photos (or pictures of anything that is relatively long-lasting) with exact geographic location and time of the year. The users should also be able to up/down-vote images and sort them by region and possibly by category.
In this project you will:
Design front and back ends of the web-based tool.
Create gamification on top of the tool to encourage user engagement.
Decide on a database structure for the images and user data.
Deliverables: Functional user-friendly web tool.
Prerequisites: Knowledge of web development, and of handling big data/image storage.
Level: MS semester project
Type of work: 80% implementation, 20% research.
Supervisor: Majed El Helou (majed dot elhelou at epfl)

Semi-Automatic Video Temporal Segmentation Tool for Concert Videos
Professional videos often consist of many separate shots. Each shot is a sequence of consecutive frames captured without interruption by a single camera. The transition between two successive shots can be abrupt or gradual (e.g., fade in/out). Segmenting videos into shots is very useful for further analysis of the video content. In this project, you will build an interactive video segmentation tool. You can develop your own segmentation algorithm or use open source shot detection algorithms. The tool should visualize the segmentation results and allows users to easily correct the segmentation (including cut/ combine shots).
1. Research on open source shot detection algorithms for concert videos
2. Design and implement a GUI or web app for video temporal segmentation
3. (optional) Investigate on automatic similar scene detection
[1] https://en.wikipedia.org/wiki/Shot_transition_detection
[2] https://github.com/Breakthrough/PySceneDetect
[3] Comparison of Automatic Shot Boundary Detection Algorithms: http://www.vis.uky.edu/~cheung/courses/ee639_fall04/readings/spie99.pdf
Deliverables: Report and running code.
Prerequisites:python/ java/ C++
Level: Bachelor semester project
Type of work: 20% research and 80% implementation
Supervisor: Ruofan Zhou ([email protected])

Unwanted objects removal from photos
Often we encounter situations where we are interested in photographing a scene but find there are unwanted object obstructing in the view. Although there already exists software for removal of such objects [1], these techniques are neither easy to use nor efficient for many natural photos. In this project, you will implement a semi-automatic unwanted object removal application. The system will be based on a state-of-the-art algorithm [2]-[4] (potentially improve its performance) and should have a friendly user interface.
1.    Research on current image restoration/inpainting algorithms
2.    Implement a program for photo object removal with user interaction
3.    (optional) Investigate on automatic unwanted objects detection
Deliverables: Report and running code.
Prerequisites:image processing, machine learning, python/ c++/ matlab
Level: Master semester project
Type of work: 40% research and 60% implementation
Supervisor: Ruofan Zhou ([email protected])

Semantic mapping between images
Description: Semantic region-to-region mapping between a pair of images is the task of producing heat maps that relate pixels in one image to the pixels of another, based on semantic content. Such maps can be useful for tasks such as color transfer and style transfer. In this project a deep neural network will be used to perform this mapping automatically.
1. Generate semantic representation using a pre-trained network
2. Create semantic mapping
3. Use mapping for artistic style transfer
4. If time permits, user-study to evaluate results
Deliverables: Report and code
Number of students: 1
– knowledge of machine learning, preferably deep convolutional networks
– coding skills in python, experience with a machine learning library e.g TensorFlow
Level: MS semester project, Computer Science or Communication Systems
Type of work: 30% research and 70% implementation
Supervisor: Edo Collins ([email protected])


Recovery of a hidden watermark on an Android smartphone


A watermark printed with daylight fluorescent inks hidden into a color background can be recovered under blue light. The goal is to adapt an already developed Android software package acquiring images embedding hidden watermaks in order to optimize the watermark recognition success rate. This requires on the fly image acquisition, real-time sharpness evaluation, focus, and appropriate thresholding to recover the watermark. This is a collaboration with industry.
R. Rossier, R.D. Hersch, Hiding patterns with daylight fluorescent inks
Proc. IS&T/SID’s 19th Color Imaging Conference, San Jose, CA, USA, November 7-11, 2011, pp. 223-228, see http://lsp.epfl.ch/colorpublications
Deliverables: Report and running prototype (Matlab and/or Android).
– knowledge of image processing / computer vision
– coding skills in Matlab (and possibly Java Android)
Level: MS semester project
Dr Romain Rossier, Innoview Sàrl, [email protected]
Prof. hon. Roger D. Hersch ([email protected])

Bistable Images
Description: Bistable images are the binary images that have two (or more) different visual interpretations in a mutually exclusive way. This is achieved with high levels of perception where the cognitive system acquires a meaningful content from stimuli under different viewing conditions. In some cases, the emergence of a percept could be impossible with spatial interpretations (i.e. popular Dalmatian dog picture). Once top-down mechanisms operate, the figure emerges and HVS starts also to recognize spatial details. Multi-stable ambiguous images such as Necker cube and the Rubin vase alternate between two stable interpretations as they have two different global solutions. The multi-stable ambiguity could be created also using the idea of contour rivalry, which means that the contours can depict multiple meanings, depending on which way the image is being observed (e.g. Raimondi Stela). Similarly the goal in this project is to create single images having two different global solutions.
1. Match similar faces-objects from a given image database by using a machine learning algorithm.
2. Create binary edge images
3. Combine two edge images by using an optimization process
4. Test if the resulting images are working perceptually
Deliverables: At the end of the semester, the student should provide a framework that match images from a given database and create bistable images automatically.
Prerequisites:  Basic machine learning and computer vision knowledge, experience in Matlab
Type of work: 30% research, 70% development and testing
Level: Master
Supervisor: Sami Arpa ([email protected])


Glitch Art Generator, build the Ultimate Pixel Twisting software


Synopsis: 11010111. Images, like most of the things which are now part of our environment are based on 1 and 0 sequences. 10010111 … Something has gone wrong, but what exactly is the result? How can we interfere with an image file in order to create disorder? Well not disorder, let say artistic chaos. This is more or less the purpose of glitch art, and there is a creative community which is active in experimenting ways to generate artwork based on numeric “errors” with the help of more or less sophisticated and dedicated tools. This project should lead to a prototype of such an application, that should offer many ways to generate glitch art images in an attempt to go a little further than the actual available tools and to question the limits of this practice. Mix an image with data from other representations of reality, shift and disrupt sequences, lead the destruction and the creation of data.
1. collaborate with a student artist photographer of CEPV (Centre Enseignement Professionnel de Vevey)
2. Investigate RAW image format3. Investigate existing glitch art tools
3. Implement an online or offline program with a rich user interface including several mechanisms of changing original file data
“The Art of Glitch | Off Book | PBS Digital Studios”, 9.8.2012, https://www.youtube.com/watch?v=gr0yiOyvas4
“How Does Glitchy Art Show Us Broken Is Beautiful? | Idea Channel | PBS Digital Studios”, 24.7.2013 https://www.youtube.com/watch?v=7MCmBHPqz6I
Deliverables: In the end of the semester, the student should provide a working tool which allows a user to generate and visualize an image as the result of the modification of another image with the help of several algorithms.
Prerequisites: Curiosity, knowledge about images structure, especially the RAW format, and any language in order to build the on/offline application
Type of work: 30% research, 60% development & testing, 10% communication
Level: Master
Leonardo Impett ([email protected])
Sabine Süsstrunk ([email protected])