方法/步骤
1、首先要下载一个Matlab的mmread包。可以在官网下载。这里直接给了吧。
2、下载好这个包解压到工作目录下,记得添加该路径。
myvideo
=
mmread('FileName.后缀名',1:10);
3、例如:
myvideo=mmread('Mobile.mp4',1:10)
%
myvideo
是一个数组,1:10
表示读取第1:10帧.(读取的文件要在当前目录,否则自己路径)
%注
出现下面的warning是正常情况
4、myvideo数组里面有你想要的一切。
5、或者
[video,sound]
=
mmread('FileName.后缀名',1:10);
%[video,sound]分别表示
视频和音频
6、Enjoy!
一个读取视频,显示帧,并保存每一帧 的代码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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)