如何随机抽取每段视频画面中的一帧保存为图片格式?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何随机抽取每段视频画面中的一帧保存为图片格式?相关的知识,希望对你有一定的参考价值。

灵云

    打开FFmpeg软件的官方网站http://ffmpeg.org/,点击"Download"下载按钮就如下载详情页

    请点击输入图片描述

    在下载详情页会看到三个大图标,企鹅代表Linux系统,微软标志代表Windows系统,最后一个苹果代表Mac系统,可以根据自己的系统类型选择不同的下载版本,点击Windows系统,三个图标下方会展示Windows版本的下载详情页连接

    请点击输入图片描述

    请点击输入图片描述

    点击Windows下载详情连接可以看到有一个Architecture代表系统架构,32位系统和64位系统的用户需要选择对应的架构类型,最后点击蓝色的下载按钮开始下载FFmpeg软件zip包

    请点击输入图片描述

    解压下载完的zip包,将解压的文件夹拷贝到C:\\Program Files\\目录下,接着需要将ffmpeg的bin文件所在路径添加到path环境变量中

    请点击输入图片描述

    打开控制面板->系统与安全->系统,点击系统界面左窗口底部的"高级系统设置",在高级选项卡中点击底部"环境变量...",最后选中path路径变量,点击编辑按钮

    请点击输入图片描述

    在path编辑界面添加ffmpeg的bin路径,最后点击确定按钮

    请点击输入图片描述

    关闭前面打开的窗口,运行Windows+R打开运行窗口,在运行窗口中输入cmd命令,点击确认按钮打开命令行窗口

    请点击输入图片描述

    在命令行窗口中输入ffmpeg,如果提示ffmpeg命令的使用法就代表ffmpeg软件安装成功

    请点击输入图片描述

    在命令行窗口中将路径切换到需要抽取图片的视频文件所在目录,执行如下命令:

    ffmpeg  -i "视频文件名" -ss "抽取帧在视频中的秒数" -f image2  "抽取图片文件名"

    例如:ffmpeg -i qldyx.mp4 -ss 10 -f image2 first.jpg

    可以看到已经正确抽取出了第10秒的图像

    请点击输入图片描述

    请点击输入图片描述

参考技术A 答:图片格式一般为.jpg 也可另存为.html文件保存(文件内自含图片)。 参考技术B 可以用AE等视频合成软件来抽取保存。 参考技术C

 这个很操作,分享一操作步骤

1,运行媒体梦工厂,并点击视频封面这个功能

2,把视频导入进去 


3,选 下随机抽出视频中某一帧

4.点开提取

一般都是用这个方法抽取的,有需要也可以下载一个试试下。这个是纯个人操作方法 。

提取视频每一帧保存图片-MATLAB

MATLAB提取视频每一帧并保存图片比较简单,几行代码就可以实现

fileName = 'E:\\文件夹\\WIN_20210917_22_23_15_Pro.avi'; 
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 读取视频的帧数numFrames
for i = 1 : numFrames
frame = read(obj,i);% 读取每一帧
imshow(frame);%显示每一帧
namestyle=sprintf('%6d',i);
imwrite(frame,strcat('E:\\MATLAB\\MyPaper\\2SR\\Spatial-Subspace-Rotation-master\\readVideo\\data\\move2\\',namestyle,'.png'),'png');% 保存每一帧到固定文件夹
%imwrite(frame,strcat(num2str(i),'.png'),'png');% 保存每一帧
end

以上是关于如何随机抽取每段视频画面中的一帧保存为图片格式?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过matlab把AVI格式的视频提取出随意的一帧,并保存为图像,希望能给出完整的代码!

AE怎么提取其中的一帧画面作为一张图片

如何从视频中提取某一帧的图像

如何提取视频中一帧图片

怎么让视频文件封面显示为视频第一帧?

什么软件可以把一段电影视频的每一帧连续自动保存成图片,同时显示每张图片的帧数信息?