Seam carving

This is a little project in OCaml I’ve done with the cheerful Julien Herrmann, as part of the Projet 1 course in L3.

You can fetch the subject we used as a base for our work. If you’re eager for a further understanding of the process, be sure to read the original paper or to browse the dedicated webpage, where you can find this pretty video. As for our work, we intended at first to use a matrix to represent a picture, but finally one week before the deadline I decided that I would use a double-linked list data structure (or more accurately quintuple-linked cells, one cell for each pixel of the image). Eventually we ended up with a rather fast and satisfying programm with a lot of functionnalities (reduction, enlargement, several energy functions, etc.).

The final report is located here, and you can download the source code of the programm, as well as some examples.