Vous êtes sur la page 1sur 39

Université Abou Beker Belkaid Tlemcen

Faculte de Technologie
Département de Telecommunications

Tp1 :Toolbox de matlab de traitement d’images et de la vidéo

Introduction:
Le traitement d'images est une discipline de l'informatique et
des mathématiques appliquées qui étudie les images numériques et leurs
transformations, dans le but d'améliorer leur qualité ou d'en extraire de
l'information.

Il s'agit d'un sous-ensemble du traitement du signal dédié aux images et


aux données dérivées comme la vidéo (par opposition aux parties du
traitement du signal consacrées à d'autres types de données : son et autres
signaux monodimensionnels notamment), tout en opérant dans le domaine
numérique (par opposition aux techniques analogiques de traitement du
signal, comme la photographie ou la télévision traditionnelles).

Objectif :
Visualisation des images

lecture d’une image

histogramme

système de représentation de la couleur


1
Partie :01
1.presentant un image dont la moitie supérieu et noir

clc
clear all;
close all;
eye(100);
a=zeros(50,100);
b=ones(50,100);
c=[a;b]
imshow(c)
2.Des barres
verticales noires et
blanches
Tp1 ques 5
clear all
close all
clc
a2=zeros (100,25);
b2=255*ones(100,25);
d=25*ones(100,25);
s=150*ones(100,25);
e=[a2 b2 d s];
imshow( e,[0 255]);

2
CLEAR ALL
CLOSE ALL
CLC
EYE(100);
A1=ZEROS(50,50);
B1=ONES(50,50);
A2=ONES(50,50);
B2=ZEROS(50,50);
C1=[ A1;B 1];
C2=[ A2,;B2];
C3=[C 1 C 2];
IMSHOW(C 3)

Partie 2 :Visulisation des images

3
Lecture des image :
x=imread('C:\Users\Labo10\Desktop\IMAGES TP1\cameraman.tif');
[N M]=size(x);

%%%%histogramme

h=zeros(size(x));
for i=1:N
for j=1:N
p=x(i,j);
h(p)=h(p)+1;
end
end
figure(1)
bar(h);
figure(2)
imshow(x,[]);
figure(3)
imhist(x);

4
1- ‘valle.JPG’ :

2-cell.tif :

5
3-‘concordaerial.png’ :

4-‘concordorthophoto.png’ :

6
Histogramme :
‘lina.png’ :

7
Systemes de representation de la coleur (image en coleur) :

1.exercice1 :

clc
close all
clear all
A=imread('C:\Users\micro\Desktop\peppers.png');
imshow(A);

A(50,70,1)
A(50,70,2)
A(50,70,3)

8
R=uint8(zeros(size(A)));
R(:,:,1)=A(:,:,1);
figure(2)
imshow(R);
figure(3)
imhist(R(:,:,1))

G=uint8(zeros(size(A)));
G(:,:,2)=A(:,:,2);
figure(4)
imshow(G);
figure(5)
imhist(G(:,:,2))

9
B=uint8(zeros(size(A)));
B(:,:,3)=A(:,:,3);
figure(6)
imshow(B);
figure(7)
imhist(B(:,:,3))

k=R+G+B;
figure(8)
imshow(k)
%espace CMY
C=G+B;
M=B+R;
Y=R+G;
subplot(2,2,1)
imshow(C)
subplot(2,2,2)
imshow(M)
subplot(2,2,3)
imshow(Y)
im=C+Y+M;
subplot(2,2,4)
imshow(im)

10
%espace xyz
figure(9)
x=2.7690*R+1.7518*G+1.1300*B;
y=1.0000*R+4.5907*G+0.0601*B;
z=0.0565*G+5.5943*B;
subplot(2,2,1)
imshow(x)
subplot(2,2,2)
imshow(y)
subplot(2,2,3)
imshow(z)
im=x+y+z;
subplot(2,2,4)
imshow(im(:,:,3))

11
% yiqmap = rgb2ntsc(rgbmap);
% YIQ = rgb2ntsc(RGB)
% espace yuu

y=0.2989*R+0.5866*G+0.1145*B;
u=-0.1687*R-0.3312*G+0.500*B;
v=0.500*R-0.4183*G-0.0817*B;
figure(10)
subplot(3,1,1)
imshow(y)
subplot(3,1,2)
imshow(u)
subplot(3,1,3)
12
imshow(v)

%espace YIQ(NTSC)

Y=0.299*R+0.587*G+0.114*B;
I=0.596*R-0.274*G-0.322*B;
Q=0.211*R-0.523*G+0.312*B;
figure(11)
subplot(3,1,1)
imshow(Y)
subplot(3,1,2)
imshow(I)
subplot(3,1,3)
imshow(Q)

13
%%%%%%%%%%%%%%%%%%%%%%%%
%espace hsv rgb2hsv or hsv2rgb

figure(12)
im2=R+G+v;
w=rgb2hsv(im2)
imshow(w)

14
transforme l’mage rgB dans l’espace des coleurs YIQ :
(rgb2ntsc)
clc
clear all
close all

f=imread('C:\Users\PC\Desktop\IMAGES TP1\peppers.png');
[n,m]=size(f);
imshow(f)
Y=rgb2ntsc(zeros(size(f)));
Y(:,:,1)=f(:,:,1);
I=rgb2ntsc(zeros(size(f)));
I(:,:,2)=f(:,:,2);

15
Q=rgb2ntsc(zeros(size(f)));
Q(:,:,3)=f(:,:,3);
YIQ=Y+I+Q;

figure(1)
subplot(1,4,1);imshow(YIQ);title('YIQ')
subplot(1,4,2);imshow(YIQ(:,:,1));title('Y')
subplot(1,4,3);imshow(YIQ(:,:,2));title('I')
subplot(1,4,4);imshow(YIQ(:,:,3));title('Q')

transforme l’mage rgB dans l’espace des coleurs HsV :


(rgb2hsv)
clc
clear all
close all

[f,map]=imread('C:\Users\PC\Desktop\IMAGES
TP1\peppers.png');
[n,m]=size(f);

y=rgb2hsv(f);
figure(1)
imshow(f,map)
title('rgb')
figure(2)
subplot(1,4,1);imshow(y,map)
title('HSV')
subplot(1,4,2);imshow(y(:,:,1),map)
16
title(' H')
subplot(1,4,3);imshow(y(:,:,2),map)
title(' S')
subplot(1,4,4);imshow(y(:,:,3),map)
title('V')

transforme l’mage rgB dans l’espace des coleurs YcBcr :


(rgb2yrcbcr :
clc
clear all
close all
[f,map]=imread('C:\Users\PC\Desktop\IMAGES
TP1\peppers.png');
[n,m]=size(f);

y=rgb2yrcbcr(f);
figure(1)
subplot(1,4,1),imshow(y(:,:,1))
subplot(1,4,2),imshow(y(:,:,2))
subplot(1,4,3),imshow(y(:,:,3))
subplot(1,4,4),imshow(y,map);title('YCBCR a laide
rgb2ycbcr')

17
transforme l’mage rgB dans l’espace des coleurs YcBcr :
(yrcbcr2rgb)
clc
clear all
close all
[f,map]=imread('C:\Users\PC\Desktop\IMAGES
TP1\peppers.png');
[n,m]=size(f);

y=ycbcr2rgb(f);
figure(1)
subplot(1,4,1),imshow(y(:,:,1))
subplot(1,4,2),imshow(y(:,:,2))
subplot(1,4,3),imshow(y(:,:,3))
subplot(1,4,4),imshow(y,map);title('YCBCR a laide
ycbcr2rgb'

18
*les memes questions pour:
1. Toysflash

2. onion.png

3. Twestconcordaerial

%-------------- Toysflash ---------------


clc
clear all
close all

f=imread('C:\Users\PC\Desktop\IMAGES
TP1\toysflash.png');
[n,m]=size(f);

Figure(1)
R=uint8(zeros(size(f)));
R(:,:,1)=f(:,:,1);
V=uint8(zeros(size(f)));
V(:,:,2)=f(:,:,2);
B=uint8(zeros(size(f)));
B(:,:,3)=f(:,:,3);
subplot(1,3,1);imshow(R(:,:,1))
title(' Red')subplot(1,3,2);
19
imshow(V(:,:,2))
title(' Green')
subplot(1,3,3);imshow(B(:,:,3))
title(' Bleu')

figure(2)
X=2.769*R+1.7518*V+1.1300*B;
Y=1.0000*R+4.5907*V+0.0601*B;
Z=0.0565*V+5.5943*B;
XYZ=X+Y+Z;
imshow(XYZ)
title('XYZ')

20
figure(3)
subplot(1,3,1);imshow(XYZ(:,:,1))
title('XYZ Red')
subplot(1,3,2);imshow(XYZ(:,:,2))
title('XYZ Green')
subplot(1,3,3);imshow(XYZ(:,:,3))
title('XYZ Bleu')

figure(4)
C=V+B;
M=R+B;
Y=R+V;
CMY=C+M+Y;
imshow(CMY)
title('CMY')

figure(5)
subplot(1,3,1);imshow(CMY(:,:,1))

21
title('CMY Red')
subplot(1,3,2);imshow(CMY(:,:,2))
title('CMY Green')
subplot(1,3,3);imshow(CMY(:,:,3))
title('CMY Bleu')

figure(6)
Y=0.299*R+0.5867*V+0.114*B;
I=0.596*R+0.274*V-0.322*B;
Q=0.211*R-0.523*V-0.312*B;
YIQ=Y+I+Q;
imshow(YIQ)
title('YIQ')

figure(7)
subplot(1,3,1);imshow(YIQ(:,:,1))
title('YIQ Red')

22
subplot(1,3,2);imshow(YIQ(:,:,2))
title('YIQ Green')
subplot(1,3,3);imshow(YIQ(:,:,3))
title('YIQ Bleu')

figure(8)
Y=0.2989*R+0.5866*V+0.1145*B;
U=-0.1687*R-0.3312*V+0.5000*B;
V=0.5000*R-0.4183*V-0.0817*B;
YUV=Y+U+V;
imshow(YUV)
title('YUV')

figure(9)
subplot(1,3,1);imshow(YUV(:,:,1))
title('YUV Red')
subplot(1,3,2);imshow(YUV(:,:,2))

23
title('YUV Green')
subplot(1,3,3);imshow(YUV(:,:,3))
title('YUV Bleu')

-------- Quantification----------------------------------------------
************ mandi.tif **********************************
clc
clear all
close all

[f,map]=imread('C:\Users\PC\Desktop\IMAGES
TP1\mandi.tif');
[n,m]=size(f);
figure(1)

subplot(1,2,1),imshow(f,gray(256))
subplot(1,2,2), imhist(f,gray(256))

24
figure(2)
subplot(1,2,1),imshow(f,gray(128))
subplot(1,2,2), imhist(f,gray(128))

25
figure(6)
subplot(1,2,1),imshow(f,gray(8))
subplot(1,2,2), imhist(f,gray(8))

figure(8)
subplot(1,2,1),imshow(f,gray(2))
subplot(1,2,2), imhist(f,gray(2))

26
% l’image est noir et blanc

-------------------------Echantillonnage-----------------------------------------------------
***************Lena.png*****************************************************

clc
clear all
close all

f=imread('C:\Users\PC\Desktop\IMAGES TP1\lena.png');
[n,m]=size(f);
imshow(f)
figure(2)
for i=1:2:n
for j=1:2:m
for l=0:2
for k=0:2
y(i+l,j+k)=f(i,j);
end
end
27
end
end
imshow(y)

28
Partie3:les sequences d’image et les vidos

29
30
* Solution deTravail demande:
EXERCICE:
a=ones(100,600);
b=ones(100,150);
c=10*zeros(100,150);
d=0.2*ones(100,150);
e=ones(100,150);
f=ones(100,150);
g=0.9*ones(100,150);
h=zeros(100,150);
i=ones(100,150);
j=ones(100,600);
l=([a;b c d e;f g h i;j]);
imshow(l);

31
Tp2 : :Améloration des images

Objectif :
Ce tp s’intéresse aux tevhniques d améliorration des
images numériques,pour augmenter a qualite de leur
rendu visuel et pour faciliter leur analyse

*Egalisation d’ un histogramme :
clear all
close all
clc

p=imgetfile
a=imread(p);
[M,N]=size(a);
ngmin=min(min(a));
ngmax=max(max(a));
h=imhist(a);
hn=h/(N*M);
for i=1:256 ;
c(i)=0;
for j=1:i;
c(i)=c(i)+hn(j);
end
end
b(:,:)=c(a(:,:))*255;
b=uint8(b);

figure(1)
imshow(a);

figure(2)
imhist(a);

figure(3)
32
imshow(b);

figure(4)
imhist(b);

figure(5)
g=histeq(a);
imshow(g)

figure(6)
imhist(g);

Invers des niveau de gris


clear all
close all
clc

p=imgetfile
a=imread(p);
[M,N]=size(a);

for i=1:N ;
for j=1:M;
b(i,j)=255-a(i,j);
end
33
end
figure(1)
imshow(a);

figure(2)
imhist(a);

figure(3)
imshow(b);

figure(4)
imhist(b);

Le hisograme est inversée

3)Fonction mathématiques :
c=imcomplement(a);

figure(5)
imshow(c);

figure(6)
imhist(c);

34
clc
close all
clear all

p=imgetfile;
i=imread(p);
[N,M]=size(i)

B=im2double(i);
b=(log(1+(B)));
A=double(i);
c=(exp(A/30)/30);

figure(1)
imshow(i,[])

figure(2)
imhist(i)

figure(3)
imshow(b,[])

figure(4)
imhist(b)

figure(5)
imshow(c,[])

figure(6)
imhist(c)

35
Transformation géometrique :
a)Translation :
%%TRANSLAST
x=imread('C:\Users\micro\Desktop\IMAGES TP1\lena.JPG')
t=[80,30]
y=imtranslate(x,t)
figure(1)
imshow(y)

36
b)Changement d’échelle :

%%echele
z=imresize(x,0.1)
figure(2)
imshow(z)

On peut grandir par augmentation d’ échelle :


%%echele
z=imresize(x,0.9)
figure(2)
imshow(z)

37
c)rotation :
%%rotation
f=imrotate(x,45)
figure(3)
imshow(f)

38
Commentaire :
Par les commande imtranslate,imrotate,imresize on peut
changer la qualite d image faire grandir et rétrécisser par
changement d échelle ou translation et rotation a droit ou a
gauche

39