Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TP9 — Encrage d’une image avec 2 couleurs

Projet réalisé dans le cadre du module LIFAPC — Algorithmique, Programmation et Complexité
Travail réalisé par: TRUONG THI Hanh et MEJDOUB Ines

Objectif du projet

L’objectif de ce TP est de réaliser une binarisation d’une image en niveaux de gris en utilisant un modèle de coupe de graphe, et non un simple seuillage.

L’image est convertie en un graphe orienté :

  • Chaque pixel = un nœud
  • 4 voisins cardinaux (Ouest, Est, Nord, Sud)
  • Deux nœuds spéciaux :
    • S : source (encre noire)
    • P : puits (encre blanche)

Le programme calcule ensuite un flot maximal de S vers P.

Ce flot permet de déterminer une coupe minimale, partitionnant l’image en :

  • pixels connectés à S -> noirs (0)
  • pixels connectés à P -> blancs (255)

Paramètres importants:

  • "sigma" : représente le contraste local : plus il est petit, plus l’algorithme détecte vite les différences entre pixels. Plus il est grand, plus l’image est considérée comme lisse.

  • "alpha" : contrôle si un pixel est plutôt sombre ou clair : un grand alpha pousse fortement les pixels sombres vers le noir et les pixels clairs vers le blanc.

  • "H" : valeur maximale possible pour les capacités entre deux pixels

Description des modules

  • Pixel : stocke l’intensité et les capacités/flots sortants d’un pixel.
  • Image : gère la lecture d’image, la création du graphe, les capacités, le flot maximal et la binarisation.
  • comparaison : génère une image avant/après en mettant l’originale et la binarisée côte à côte.

Compilation et exécution

  • Compiler: Ouvrir un terminal, se placer dans le dossier du projet Puis compiler avec : make

  • Exécuter; Après la compilation, lancer le programme avec : ./bin/main.ex

  • Le programme génère:

data/resultat.pgm -> image binarisée

data/comparaison.pgm -> originale + binaire

Resultat obtenu (avant et apres la binarisation de lilage baboonreduced.pgm)

Capture du résultat

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages