1、使用两个图片,一个是猫的图片(cat.bmp),一个是老虎的图片(tiger.bmp),我们要做一个视频。让猫渐变到老虎。
>> cat=imread('cat.bmp');
>> tiger=imread('tiger.bmp');
>> m=avifile('b.avi');
>> m.quality=100;
>> m=addframe(m,cat);
>>ct=cat;
>>R1=cat(:,:,1);
>>G1=cat(:,:,2);
>>B1=cat(:,:,3);
>>R2=tiger(:,:,1);
>>G2=tiger(:,:,2);
>>B2=tiger(:,:,3);
>>for i=1:100 %利用循环,实现由1的像素逐渐向100像素靠拢
R=R1*((100-i)/100)+R2*(i/100);
G=G1*((100-i)/100)+G2*(i/100);
B=B1*((100-i)/100)+B2*(i/100);
ct(:,:,1)=R;
ct(:,:,2)=G;
ct(:,:,3)=B;
m=addframe(m,ct);
end
>> m=close(m);
>>mov = aviread('abc.avi');
>>imwrite(mov(1).cdata,'frame1.bmp');
>>for i=1:10
filename=['frame',num2str(i*10),'.bmp'];
imwrite(mov(i*10).cdata,filename);
end
2、实验效果图:
|