matlab将视频转存成图片

最近要用到大量航拍的汽车图片,目前搜集了bdd100k,BITVehicle_Dataset等,还需要自己搜集一部分进行标注,只能从搜集的视频中找了,之前使用python借助opence实现了一个版本,但是性能很低,这里使用matlab来实现,其实很简单,这里使用函数来实现,三个参数分别是视频路径,步长(每隔多少帧存储一张图片),全部存储没有必要,并且非常耗存储空间,第三个参数是图片存储地址,matlab在使用时要注意,脚本名称和函数名称一定要相同。

function getPictureFromMp4(video_file,pictureDir)
video=VideoReader(video_file);
frame_number=floor(video.Duration * video.FrameRate);
for i=1:frame_number
    %每100帧存储一张图片
    if rem(i,100)==0
        image_name=strcat('11',num2str(i));
        image_name=strcat(image_name,'.jpg');
        I=read(video,i);
        imwrite(I,[pictureDir,'/',image_name],'jpg');
        I=[];
    end
end
end

 

你可能感兴趣的:(图像识别,matlab,数据集)