0% ont trouvé ce document utile (0 vote)
160 vues5 pages

Compte Rendu Projet Traitement Images

Ce document présente une méthode de traitement d'images pour la détection de cellules et la segmentation de traits. Il décrit les étapes de seuillage, fermeture, ouverture et nettoyage des bords pour isoler une cellule cible. Il présente également un filtrage médian, un seuillage de contour et une fermeture pour segmenter les traits d'une image.

Transféré par

JihadJiji
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
160 vues5 pages

Compte Rendu Projet Traitement Images

Ce document présente une méthode de traitement d'images pour la détection de cellules et la segmentation de traits. Il décrit les étapes de seuillage, fermeture, ouverture et nettoyage des bords pour isoler une cellule cible. Il présente également un filtrage médian, un seuillage de contour et une fermeture pour segmenter les traits d'une image.

Transféré par

JihadJiji
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Compte Rendu Mini Projet Traitement des Images

Partie I : Détection d’une cellule à l’aide de la segmentation d’images

%Affichage de l'image de base


Im1=imread('[Link]');
figure(1),imshow(Im1)

%Affichage de l'histogramme de
l'image de départ
figure(2),imhist(Im1) 1200

1000

800

600

400

200

0 50 100 150 200 250

Grâce à l’affichage de l’histogramme, nous pouvons choisir une valeur de seuil permettant de
binariser l’image afin de faire ressortir les objets du fond.

1
%réalisation seuillage en fonction
d'un niveau observé dans
l'histogramme
Im2 = im2bw(Im1,85/255);
Im3 = im2bw(Im1);
result=xor(~Im2,Im3);
figure(3),imshow(result)

On réalise une fermeture afin de fermer les objets.

%Réalisation d'une fermeture


FERM1=imdilate(result,strel('disk',6));
FERM2=imerode(FERM1,strel('disk',6));
figure(4), imshow(FERM2)

On vient faire une ouverture afin de supprimer les tâches blanches présentent sur le fond noir.

%Réalisation d'une Ouverture


ER=imerode(FERM2,strel('disk',1));
OUV=imdilate(ER,strel('disk',1));
figure(5), imshow(OUV)

On vient isoler la cellule qui nous intéresse en supprimant la cellule proche du bord.

2
%Nettoyage des bords de l'image
Im3 = imclearborder(OUV);
figure(6), imshow(Im3)

%récupération du périmètre
PERIMETRE = BWPERIM(Im3,8)
figure(7), imshow(PERIMETRE)

Ici on vient superposer l’image de départ avec le périmètre de la cellule voulue.

%Image finale
Im1(PERIMETRE)=255
figure(8), imshow(Im1)

3
Partie II : Segmentation de traits d’une image

On peut observer un bruit impulsionnel sur l’image, il faut donc appliquer un filtre non linéaire (Filtre
Médian)

%Lecture de l'image de base


Im1=imread('Image_MP2.jpg');
figure(1), imshow(Im1)

%Conversion de l'image en niveaux de


gris
Im2 = double(rgb2gray(Im1))/255;
figure(2), imshow(Im2)

%Application d'un filtre médian pour


enlever le bruit impulsionnel
MEDIAN=medfilt2(Im2);
figure(3),imshow(MEDIAN)

4
%Binarisation de l'image et
récupération du contour
[BW, S]=edge(MEDIAN,'canny');
Contour=edge(MEDIAN,'canny', 3*S,
2);
figure(4),imshow(Contour)

%Réalisation d'une fermeture


FERM1=imdilate(Contour,strel('diamon
d',10));
FERM2=imerode(FERM1,strel('diamond',
10));
figure(5), imshow(FERM2)

On ferme les trous qu’il nous reste dans l’image.

I=imfill(~FERM2,'holes');
figure(6), imshow(~I)

Vous aimerez peut-être aussi