qlfaaa
2010-06-22, 22:11
请教大家一个问题,我想把一段avi视频截图出来,比方说取前500帧的图像,(一般视频1s25帧),下面这个程序以前是可以用的,每秒读出的图像数目是大概一致的,但是最近试试发现不对了 ,有时一秒的图像写出了200多张,有时几十张,有时跳过几秒,求教高人这是怎么回事,我用的是matlab7.92009b,程序如下:
clc;
clear all;
close all;
dir = 'E:\……'; %%填写要存放序列图像的目录
mov=mmreader('JXXX.avi'); %%填写视频文件的名称
for i=1:1:500 %%要转换的帧数
images=read(mov,i);%
filename = sprintf('%s%d.bmp' , dir ,i);
imwrite(images,filename)
end
clc;
clear all;
close all;
dir = 'E:\……'; %%填写要存放序列图像的目录
mov=mmreader('JXXX.avi'); %%填写视频文件的名称
for i=1:1:500 %%要转换的帧数
images=read(mov,i);%
filename = sprintf('%s%d.bmp' , dir ,i);
imwrite(images,filename)
end