用matlab提取avi录像里的每帧图像,并保存,但是保存的图片都是一片黑色,求解,是什么原因,怎么改

mov=aviread('123.AVI');temp=size(mov);fnum=temp(2);fori=1:fnum,strtemp=strcat(int2str... mov=aviread('123.AVI');
temp=size(mov);
fnum=temp(2);
for i=1:fnum,
strtemp=strcat(int2str(i),'.','JPG');
imwrite(mov(i).cdata(:,:,:),strtemp);
end%% 从视频中提出每一帧图像
展开
 我来答
我行我素850915
2015-05-06 · TA获得超过8241个赞
知道大有可为答主
回答量:5788
采纳率:77%
帮助的人:1755万
展开全部
从上面的程序看,主要问题有:1,mov是一个structure,有两个部分mov.cdata和mov.colormap,
2,要区分.avi文件的颜色格式,如是truecolor格式,则mov.cdata的size是M*N*3且mov.colormap是空的,如是 indexed格式,则mov.cdata的size是M*N且mov.colormap的size是M*3,因此,程序中有多处不完善的地方,不能处理所有的情况,就会出现全黑的图像。若要改,可把录像文件发过来,我调试用。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式