cours-m1-eea/455-Codage_Sources/TP/TP3/Manip4.m
2019-01-15 15:56:28 +01:00

44 lines
1 KiB
Matlab

% Aymeric Arnould, Tom Colinot
% TP3
% Codage INTER (1/3)
% Questions 9 à 11
clear all;
n=5; %Nombre d'images à coder
gamma=1; %Pas
file = fopen('Foreman.qcif','r');
[compY,~,~]=yuv_readimage(file,'qcif');
Y=zeros(size(compY,1),size(compY,2),n); %images avant codage
Yc= zeros(size(compY,1),size(compY,2),n); %images codées
%Codage de la première image
[I_rec,PSNR,bpp] = encodeINTRA(compY,gamma);
Y(:,:,1) = compY;
Yc(:,:,1) = I_rec;
%Pour les images suivantes, soustraction de l'image n-1 à l'image n avant
%codage
for k=2:n
[compY,~,~]=yuv_readimage(file,'qcif');
Yk = compY - Yc(:,:,k-1); % différences par rapport à l'image décodée précédente
[I_rec,PSNR,bpp] = encodeINTRA(Yk,gamma);
Y(:,:,k) = Yk;
Yc(:,:,k) = I_rec + Yc(:,:,k-1); % reconstruction à l'aide de l'image décodée précédente
end
% Affichage des images de bases et des images codées de la séquence
figure(1)
colormap(gray)
for i=1:n
subplot(1,n,i); imagesc(Y(:,:,i));
end
figure(2)
colormap(gray)
for i=1:n
subplot(1,n,i); imagesc(Yc(:,:,i));
end