2025-04-04 15:57:48 +02:00
2025-03-27 10:29:04 +01:00
2025-04-04 15:05:15 +02:00
2025-04-04 15:02:27 +02:00
2025-04-04 15:02:40 +02:00
2025-04-03 16:34:12 +02:00
2025-04-04 15:55:18 +02:00
2025-04-04 15:57:48 +02:00

Seam Carving

Augustin Lucas, François Colin de Verdière

Git repo: https://gitea.augustin64.fr/m1-ENSL/seam-carving

The report is available as PDF file report.pdf

References:

Build

mkdir -p build  # Create build dir if needed
cd build
cmake ..        # Update build/Makefile
make            # Compile
cd ..

Usage

build/seam-carving ...

Mandatory arguments:

  • -s FILE: source image
  • -o FILE: output image

Options:

  • -m FILE: the mask. RGB image, of the same size than the source, red pixel are those to be removed, the green ones must be kept.
  • -n NUMBER: number of seams to compute or remove (default 0)
  • --show-seams: do not carve the image, only outputs the energy and the relevant seams
  • -f FUNCTION NAME: the energy function to use, see the beginning of the source file to see the available functions
  • -u: when a mask is provided and no seam number is provided, remove seams until the zone to remove has disappeared.
  • --vertical: use vertical seam (horizontal by default)
  • --max-step: maximum number of step (distance between two pixel to be removed in two consecutive rows)

Generation of the images of the report

A Makefile is provided at the root of the repo, it can be used to generate the images that are shown in the report.

Description
Final project of the CGDI course
Readme 29 MiB
Languages
C++ 92%
Makefile 4.3%
CMake 2.2%
C 1.5%