利用matlab将图像转化成avi视频,需要用到avifile和addframe函数,下面附一段代码。 在将彩色图像转化成灰度图像并保存为视频时,经常会出现花屏的现象。造成这种现象的原因是,avi灰度视频的每一帧图像仍是三通道的,而直接灰度化的图像是单通道的,因此需要利用cat函数将单通道的灰度图像转化成三通道的图像。(见红色代码)
【例】
aviobj=avifile(aviFilename,'FPS',25,'COMPRESSION','None');%定义一个结构体
for j=1:length(img_list)
img=imread(readpath);%readpath是图像的路径
imgGray=rgb2gray(img);
imgGray=cat(3,imgGray,imgGray,imgGray);//转化成三通道图像
disp(readpath);
aviobj=addframe(aviobj,imgGray);
end
aviobj=close(aviobj);
本文介绍如何使用Matlab将一系列图像文件转换为AVI视频格式,并解决在此过程中可能出现的花屏问题。通过使用avifile和addframe函数创建视频,并采用rgb2gray和cat函数确保灰度图像正确显示。

被折叠的 条评论
为什么被折叠?



