怎样用matlab读取视频?

我有一个四十分钟的视频,想按每10秒一帧读取视频图像,请给我一个可用的代码... 我有一个四十分钟的视频,想按每10秒一帧读取视频图像,请给我一个可用的代码 展开
 我来答
iwantt
推荐于2017-09-21 · TA获得超过2800个赞
知道小有建树答主
回答量:430
采纳率:100%
帮助的人:426万
展开全部
一个读取视频,显示帧,并保存每一帧 的代码

fileName = 'MVI_1264_clip.avi';
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 帧的总数
for k = 1 : numFrames% 读取数据
frame = read(obj,k);
imshow(frame);%显示帧
imwrite(frame,strcat(num2str(k),'.jpg'),'jpg');% 保存帧
end

如果要间隔10秒时间读取视频的话就 在for循环里面增加步长,如下:

fileName = 'MVI_1264_clip.avi';
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 帧的总数
for k = 1 : 10: numFrames% 读取数据
frame = read(obj,k);
imshow(frame);%显示帧
imwrite(frame,strcat(num2str(k),'.jpg'),'jpg');% 保存帧
end

参考文献:http://bbs.cqupt.edu.cn/bbs/?fromuid=4416
追问
我已经读出图片了,那如何将大量图片转为灰度图并提取特征
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式