MATLAB读取视频转图片

在matlab自带的example上进行修改,代码如下,通过gui的方式选取文件,创建文件夹,并转为jpg图片

[filename,path]=uigetfile({'*.avi';'*.jpg';'*.*'});
videoname = [path filename];
v = VideoReader(videoname);
%创建新的文件夹
inds = strfind(filename,'.');
new_dir = [path filename(1:inds(end)-1)];
if ~exist(new_dir,'dir')
mkdir(new_dir);
end

v.CurrentTime = 0;
currAxes = axes;
cnt = 1;
while hasFrame(v)
    vidFrame = readFrame(v);
    image(vidFrame, 'Parent', currAxes);
    imshow(vidFrame);
    title(num2str(cnt));
    cnt = cnt +1;

    pause(1/v.FrameRate);
%存为jpg图片
    imwrite(vidFrame,[new_dir '\' num2str(cnt) '.jpg']);
end

你可能感兴趣的:(maltab)