[PDF] Searches related to detection de contours traitement d+image filetype:pdf



Previous PDF Next PDF
















[PDF] filtre moyenneur traitement d'image

[PDF] filtre gaussien matlab traitement d'image

[PDF] moteur de recherche internet

[PDF] moteur de recherche francais

[PDF] francis ponge le parti pris des choses pdf

[PDF] les moteurs de recherche les plus utilisés

[PDF] francis ponge mouvement

[PDF] moteur de recherche définition

[PDF] francis ponge biographie

[PDF] moteurs de recherche gratuits

[PDF] meilleur moteur de recherche

[PDF] moteur de recherche mozilla

[PDF] bourse aux livres scolaires

[PDF] momox

[PDF] fonction de l'arn

Searches related to detection de contours traitement d image filetype:pdf TP3 : filtrage du bruit et détection de contours Pour chaque question, vous devez créer une fonction Matlab permettant de réaliser le

traitement demandé et vérifier son bon fonctionnement en testant le résultat sur certaines des

images fixes fournies ici : Vous choisirez celles qui vous semblent les plus appropriées pour chaque traitement. On travaillera avec des images en niveaux de gris (au besoin, utilisez la fonction rgb2gray de Matlab pour convertir les images couleurs fournies).

Partie 1 : Ajout / filtrage de bruit

1) Ajout de différents types de bruits

Étudiez la fonction imnoise de Matlab qui permet d'ajouter différents types de bruits à une image : -bruit blanc gaussien -bruit " sel et poivre » (ou impulsionnel) -bruit suivant la loi de poisson -bruit exponentiel, ... Comparer ces différents types de bruits sur quelques images que vous choisirez.

2) Filtres de bruit

a. Filtre médian Écrire une fonction Matlab réalisant le filtrage médian (avec une fenêtre de taille 3x3) d'une image en niveau de gris (utilisez les fonctions reshape(fenetre, 1, 9) et sort).

Tester la fonction créée sur les images bruitées obtenues à l'étape précédente ou sur celles

fournies dans la base (dans le répertoire " bruit\ »).

Comparer l'efficacité de ce filtre sur les différents types de bruits énoncés précédemment ?

Comparer votre fonction avec la fonction medfilt2 de Matlab. Faire varier la taille du filtre ou essayer de l'appliquer plusieurs fois sur une même image, que remarquez-vous ? b. Filtre moyenneur Faire de même avec le filtre moyenneur. Vous pourrez utiliser les fonctions Matlab imfilter ou conv2 pour réaliser le produit de convolution en 2D. c. Autres filtres de bruit et rehaussement de contraste

Comparer les résultats précédents avec les autres filtres vus en cours (gaussien et

exponentiel). Utiliser par exemple la fonction fspecial de Matlab, qui peut également servir

à rehausser les contrastes d'une image.

1M1 INFO

Module : TI

3) Calcul de PSNR pour évaluer l'efficacité des filtres de bruits

On définit l'erreur RMS (ou erreur L2) comme la racine carrée de l'erreur quadratique moyenne (EQM ou MSE en anglais) entre l'image initiale I (sans bruit) et la même image bruitée et filtrée par l'un des filtres vus précédemment (^I) :

RMS=√1

n.m∑i=1m ∑j=1n (^I(i,j)-I(i,j))2 avec m = nombre de lignes de l'image et n = nombre de colonnes Il est également courant d'utiliser le facteur de qualité PSNR (Peak Signal to Noise Ratio = Rapport Signal sur Bruit), défini comme le ratio entre la puissance crête du signal (2552 dans notre cas) et la puissance du bruit (erreur entre les images). Il est exprimé en dB :

PSNRdB=10log10

(2552

Pe) avec Pe=1

n.m∑i=1 m ∑j=1 n

(^I(i,j)-I(i,j))2a. Écrire la fonction Matlab PSNR(x,y)permettant de calculer le PSNR entre deux

images x et y.

b. L'utiliser pour évaluer l'efficacité des différents filtres de bruits vus précédemment.

Partie 2 : Détection de contours

Dans cette partie, nous allons comparer les méthodes de détection de contours suivantes :

1)Gradient simple : créer la fonction Matlab permettant de calculer la norme du

gradient en appliquant les filtres simples horizontaux et verticaux (vous choisirez l'une des 3 normes vues en cours et en TD).

2)Gradients de Roberts, de Sobel, de Prewitt et filtre de Canny : utiliser la fonction

edge de Matlab (en faisant varier le seuil : " threshold » en anglais). -[J,seuil] = edge(I, 'sobel'); % seuil prédéfini par Matlab - J = edge(I, 'sobel', seuil); % 0 < seuil ≤ 1

3)Laplacien 4-connexe et 8-connexe : écrire la fonction Matlab permettant de calculer

le laplacien en connexité 4 et 8. Utiliser la fonction edge (I,'zerocross',THRESH,H) pour le seuillage.

4)Laplacien de Gaussienne : utiliser la fonction edge(I,'log',THRESH) de Matlab.

Comparer les résultats des différents filtres sur quelques images que vous choisirez.

Puis appliquer un bruit gaussien aux images et comparer l'efficacité des différents détecteurs

de contours sur les images bruitées.

2M1 INFO

Module : TI

Partie 3 : Filtrage non linéaire du bruit impulsionnel (poivre et sel)

1)Ajouter à l'image " lena », un bruit impulsionnel à 5% (i.e. : 5% des pixels de

l'image seront affectés par le bruit).

2)Construire le filtre non linéaire (de taille 3 x 3 et centré) tel qu'expliqué ci-dessous :

Pour appliquer ce filtre à une image I : on considère, pour chaque pixel p de I, la fenêtre d'analyse de taille 3 x 3 suivante : iparmi les 8 pixels voisins de p (dans la fenêtre), on cherche les 4 voisins : a*(1), a*(2), a*(3) et a*(4) qui minimisent la quantité suivante : (i.e. : les 4 plus proches voisins) ile filtre demandé doit alors remplacer I(p) par F(p), avec : (F(p) doit être un entier compris entre 0 et 255) Pour une image de taille m x n, l'image filtrée sera de taille m-2 x n-2. ATTENTION : certains calculs vous donneront des résultats négatifs ou supérieurs à 255 ! Tester d'abord votre filtre sur une matrice très simple, par exemple :

A = 1 3 12 4

3 6 7 8

9 7 5 1

0 0 5 4

Aide :

1)la fonction reshape de Matlab transforme une matrice en vecteur ligne. Exemple :A =

-5 -3 6 -3 0 1

3 1 -1

B = reshape(A,1,9);

B = [ -5 -3 3 -3 0 1 6 1 -1 ]

2)la fonction sort de Matlab trie un vecteur dans l'ordre croissant. Exemple :

B = [ -5 -3 3 -3 0 1 6 1 -1 ] [C, IX] = sort(abs(B)); C = [ 0 1 1 1 3 3 3 5 6 ] IX = [ 5 6 8 9 2 3 4 1 7 ]  vecteurs d'indices, tel que C = abs(B(IX))

3M1 INFO

Module : TIF(p)=1

4∑k=1

4quotesdbs_dbs2.pdfusesText_2