求问matlab对视频进行帧操作

小弟最近在做一个课程设计,老师要求的是给一个视频数据库,先把里面的视频进行提取帧操作,然后放在不同文件夹中,然后对比每个文件中的帧数,找到最小,设置为a,然后对大于a帧的... 小弟最近在做一个课程设计,老师要求的是给一个视频数据库,先把里面的视频进行提取帧操作,然后放在不同文件夹中,然后对比每个文件中的帧数,找到最小,设置为a,然后对大于a帧的文件夹进行删除帧操作,最后使每个文件夹中恰有帧数—a帧(如果可以,尽量删除首尾的帧,保留中间的帧):这是小弟写的前半部分代码,还有后面对帧数的比较和删除的不会,请大神帮忙看看,感激不尽!!!
xyzobj=VideoReader('YYK.3gp');
qweobj=VideoReader('YYK.avi');
asdobj=VideoReader('YYK.mp4');
fnum1 = xyzobj.NumberOfFrames;
fnum2 = qweobj.NumberOfFrames;
fnum3 = asdobj.NumberOfFrames;
for i = 1 : fnum1-1000 %i从1到1047
Img=read(xyzobj,i); %读取第i帧
imwrite(Img,strcat('D:\abc\',['img_',sprintf('%04d',i),'.jpg']));%将第i帧写入到指定文件夹,"img_000i.jpg"图片
end %结束
for j = 1 : fnum2-1000 %i从1到1047
Img=read(qweobj,j); %读取第i帧
imwrite(Img,strcat('D:\def\',['img_',sprintf('%04d',j),'.jpg']));%将第i帧写入到指定文件夹,"img_000j.jpg"图片
end %结束
for k = 1 : fnum3-1000 %i从1到1047
Img=read(asdobj,k); %读取第i帧
imwrite(Img,strcat('D:\ghi\',['img_',sprintf('%04d',k),'.jpg']));%将第i帧写入到指定文件夹,"img_000j.jpg"图片
end %结束
展开
 我来答
加尔heart
2016-01-09
知道答主
回答量:2
采纳率:0%
帮助的人:2.1万
展开全部
你错了,不是这样的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式