Вы находитесь на странице: 1из 6

Traitement d’images avec MATLAB

TP N°1

RÉALISÉ PAR : *BENMALEK IMEN *LAHMAR ASMA

07 avril 2011
Traitement d’images avec MATLAB
TP N°1

PLAN DU TRAVAIL
Introduction
Sous échantillonnage d’images
 Ecrire un programme sous Mtlab effectuant les opérations
suivantes :
• Lecture d’une image de taille N*N
• Sous échantillonnage de l’image en (N/2n, N/2n) n=1,
2, 3
• Affichage de l’image résultat (image sous
échantillonnée)
Manipulation d’histogramme
 Ecrire un programme sous Matlab effectuant une
expansion dynamique :
• Lecture d’une image de taille N*N
• Calcul de l’histogramme
• Expansion dynamique
• Affichage de l’image résultat (image sous
échantillonnée)
 Ecrire un programme en langage MATLAB effectuant une
Traitement d’images avec MATLAB | 07/04/2011

égalisation d’histogramme

1
Introduction :
Le traitement d’images sous Matlab est pour présenter la notion
d’image et effectuer des opérations simples d’analyse d’images telles
que la détection de contours, le changement d’espace de couleur… le
traitement d’images est un thème de recherche situé entre
l’informatique et le traitement du signal.
Sous échantillonnage d’images :
clc;
clear all;
a=imread('C:\Users\acer\Desktop\Image37.jpg');
subplot(2,2,1)
imshow(a);
for N=1:3
se=a(1:2^N:end,1:2^N:end)
subplot(2,2,N+1)
imshow(se)
end

Traitement d’images avec MATLAB | 07/04/2011

2
Manipulation d’histogramme :
clc;
clear all;
a=imread('C:\Users\acer\Desktop\Image37.jpg');
subplot(3,2,1)
imshow(a);
k=0;
[nl,nc]=size(a);
for h=1:256
for i=1:nl
for j=1:nc
if a(i,j)==h-1
k=k+1;
end
end
end
l(h)=k;
k=0;
end
subplot(3,2,2)
bar(l)
Ou tout simplement on utilise le programme suivant:
clc;
clear all;
a=imread('C:\Users\acer\Desktop\Image37.jpg');
subplot(1,2,1)
imshow(a);title('original')
subplot(1,2,2)
imhist(a);title('Histogramme')
Traitement d’images avec MATLAB | 07/04/2011

3
L’expansion dynamique :
clc;
clear all;
a=imread('C:\Users\acer\Desktop\Image37.jpg');
subplot(2,2,1)
imshow(a);title('original')
subplot(2,2,2)
imhist(a);title('Histogramme')
a=im2double(a(:,:,1));
[nl,nc]=size(a);
a0=min(min(a));
a1=max(max(a));
amin=0;
amax=255;
alpha=((amin*a1)-(amax*a0))/(a1-a0);
B=(amax-amin)/(a1-a0);
for i=1:nl,
for j=1:nc,
h(i,j)=alpha+(B*a(i,j));
end;
end;
hh=mat2gray(h);
subplot(2,2,3)
imshow(hh);title('expansion dynamique')
subplot(2,2,4)
imhist(hh);title('Histogramme de lexpansion')

Traitement d’images avec MATLAB | 07/04/2011

4
L’égalisation d’histogramme :
clc;
clear all;
nl=2;
nc=2;
a=imread('C:\Users\acer\Desktop\Image37.jpg');
subplot(2,2,1)
imshow(a);title('original')
subplot(2,2,2)
imhist(a);title('Histogramme')
J=histeq(a);
subplot(2,2,3)
imshow(J);title('image égalisé')
subplot(2,2,4)
imhist(J) ;title('Histogramme égalisé')
Traitement d’images avec MATLAB | 07/04/2011

Вам также может понравиться