1 Projet Traitement d'images en C Richet Coraline Han Xiaofei L3 IUP Informatique 2007-2008.
-
Upload
damien-champion -
Category
Documents
-
view
104 -
download
0
Transcript of 1 Projet Traitement d'images en C Richet Coraline Han Xiaofei L3 IUP Informatique 2007-2008.
1
Projet Traitement d'images en C
Richet Coraline
Han Xiaofei
L3 IUP Informatique
2007-2008
2
Plan
Présentation du projet
Mise en œuvre des algorithmes de traitement d’images
Bilan
3
Présentation du projet
Une image en niveau de gris est un tableau bidimensionnel où chaque élément contient une valeur entre 0 et 255
000 008 016 024 032 040 048 056 064 072 080 088 096 104 112 120 128
255 248 240 232 224 216 208 200 192 184 176 168 160 152 144 136
Représentation des différentes nuances de gris
4
Objectifs du projet
Initiation aux techniques de traitements d’image
Manipulation des tableaux bidimensionnels en C
Réalisation de différents algorithmes de traitements d’image
5
Algorithme de Sobel
Appliquer un masque sur l’image pour afficher les endroits de l’image où les différences entre les pixels voisins sont importantes
Schéma d’application de masque
6
Algorithme de Sobel
Somme pondérée:
Normalisation:Dv= Dv / somme des coefficients positifs Calcul du gradient:
7
Algorithme de Sobel
Deux fonctions Sobel :
– void basicThreeSobelFunction(const Image * in, Image * out)
– void genericSobelFunction(const Image * in, Image * out, int ** maskV, int ** maskH, int maskSize)
8
Algorithme de Sobel
Résultat du traitement Sobel
Image originale Image après Sobel
9
Algorithmes Erosion et Dilatation
Erosion :– Supprimer les points de
contour isolés après seuillage des images
Dilatation :– Combler les trous dans
un contour après seuillage des images
10
Algorithmes Erosion et Dilatation
Résultats du traitement érosion et dilatation :
Image originale
Image après seuillage + érosion Image après seuillage + dilatation
11
Algorithmes Ouverture et Fermeture
Ouverture :– Effectuer érosion puis dilatation pour supprimer petits
composants
Fermeture :– Effectuer dilatation puis érosion pour combler les trous
12
Algorithmes Ouverture et Fermeture
Résultats du traitement ouverture et fermeture :
Image originale
Image en ouverture Image en fermeture
13
Filtrage par moyenne
Lisser l’image en appliquant sur chaque pixel de cette image un masque ne contenant que des valeurs à 1
Image originale Image par filtrage
14
Algorithme Segmentation par région
Partitionner l’image en zone homogène
15
Algorithme Segmentation par région
Deux fonctions :
-void segmentationRegionGrowing(const Image *in,Image *out, int xPixelSeed, int yPixelSeed, int seuil)
- void segmentationRegionGrowingRandomSeed(const Image *in,Image *out, int seuil)
16
Algorithme Segmentation par région
Résultat du traitement segmentation par région
Image originale Image partitionnée avec un pixel d’amorce
(220,100) et un seuil de 60
17
Difficultés rencontrées
Installation de la librairie x11-dev
Ecriture de la fonction Sobel générique
Implémentation de la fonction SegmentationRegionGrowing
18
Bilan
Ce que cela nous a apporté :– Approfondissement de nos connaissances du langage C– Appréhension des problématiques de base au traitement
d’images
Améliorations possibles :– Traitement d’autres algorithmes de segmentation avec des
temps de traitement plus court que la segmentation par région