1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| % Lecture d'une séquence d'images d'une vidéo
%********************************************
ind = [1:260];
for i=1:250
mov=aviread('video.avi',ind); %Lecture de la video.
data1=rgb2gray(mov(i).cdata);
data1=im2double(data1);
data2=rgb2gray(mov(i+1).cdata);
data2=im2double(data2);
[Ni,Nj]=size(data1);
%**********************
% AFFICHAFE DES DONNEES
%**********************
% figure,
% subplot(1,2,1),
% imshow(data1),title('Image à t=t_0');
% subplot(1,2,2),
% imshow(data2),title('Image à t=t_0+dt'); %Ici, j'obtiens deux images.
% c=input('pause');
%Fin de programme:
% Affichage des résultats sous forme d'une carte de vecteurs sur l'image
% de la video qui a été traitée.
figure,
imshow(data1);
G=sqrt(U.*U + V.*V);
indice=find(G>0.005*G);
Uplot=U.*0;
Vplot=V.*0;
Uplot(indice)=U(indice);
Vplot(indice)=V(indice);
Uplotb = Uplot(1:Ni,1:Nj); %Sous échantillonnage
Vplotb = Vplot(1:Ni,1:Nj);
hold on
quiver(Uplotb,Vplotb) %Affiche carte de vecteurs
hold off |
Partager