如何用python实现视频关键帧提取并保存为图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python实现视频关键帧提取并保存为图片相关的知识,希望对你有一定的参考价值。

问题是这样的:
我有一段视频,我想提取出这个视频中的关键帧并保存为图片。有python相关方面的库或者函数可以实现这方面的功能吗?
哪位朋友能指导一下,十分感谢

import cv2

vc = cv2.VideoCapture('Test.avi') #读入视频文件
c=1

if vc.isOpened(): #判断是否正常打开
rval , frame = vc.read()
else:
rval = False

timeF = 1000 #视频帧计数间隔频率

while rval: #循环读取视频帧
rval, frame = vc.read()
if(c%timeF == 0): #每隔timeF帧进行存储操作
cv2.imwrite('image/'+str(c) + '.jpg',frame) #存储为图像
c = c + 1
cv2.waitKey(1)
vc.release()
参考技术A

import cv2

vc = cv2.VideoCapture('Test.avi') #读入视频文件
c=1

if vc.isOpened(): #判断是否正常打开
rval , frame = vc.read()
else:
rval = False

timeF = 1000  #视频帧计数间隔频率

while rval:   #循环读取视频帧
rval, frame = vc.read()
if(c%timeF == 0): #每隔timeF帧进行存储操作
cv2.imwrite('image/'+str(c) + '.jpg',frame) #存储为图像
c = c + 1
cv2.waitKey(1)
vc.release()

拓展:

1、Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。

2、常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。

参考技术B 你这个问题解决了吗,能不能告知我一下方法?

如何提取视频中一帧图片

视频监控中 录制的视频 需要提取一帧和几帧图像 怎么弄?

可以用Adobe Premiere软件将一个视频中的所有帧数提取出来,然后再去查找帧数中需要提取的图片,Premiere软件导出所有帧数步骤如下:

需要工具:电脑、Adobe Premiere

一、打开软件导入视频

二、点击左边或者右边的箭头,移动到要截取的地方,拖动滑块也可以

三、点击导出帧按钮

四、更改好文件名

五、选择保存的格式

六、最后点击确定按钮即可

参考技术A

入绘声绘影,先将光标定位在大致处,再放大时间轴(注意:每次放大到快要超出时间轴之外时,就要停下来,再次将光标定位渐渐向你要的那一帧靠近);最后,时间轴放大到帧,此时,你可一帧一帧寻找,找到你要的那一帧即可(可以直接拖动光标,也可以在预览窗口右下方点击帧的前进小箭头);然后在视频轨上点击一下选中,在点击右边面板上的“保存为单帧图像”。一般它会自动保存在“我的文档”绘声绘影工作文件夹内。路径:C:\\Documents and Settings\\Owner\\My Documents\\Ulead VideoStudio\\11.0 

其他截图工具多得很,比如qq截图、快手截图、暴风影音等等……,太多。但是它们都不能精确到帧。如果你不需要精确到帧,用上面那些更方便。

本回答被提问者采纳
参考技术B

方法很多,请问视频是什么格式?

最简单的请下载附件中的PotPlayer播放器,播放你的视频文件

放到你要截图的位置时,在画面中间点鼠标右键,依次选择“视频”,“图像截取”

菜单中会弹出很多种截取方式,选择其中一种,然后到截图文件夹中找到所图片即可。

参考技术C 暴风影音里边就有截图的功能,2.0版本的暴风“截图”在“文件”里,或者按F5,截图结束会弹出个对话框,提示你保存,然后选择你要保存的格式,按“保存”就可以了 参考技术D 用视频编辑软件,PR或 AE 都行,帧冻结导出图片

以上是关于如何用python实现视频关键帧提取并保存为图片的主要内容,如果未能解决你的问题,请参考以下文章

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

如何提取视频中一帧图片

如何将视频的每一帧提取出来

python tools:将视频的每一帧提取并保存

python tools:将视频的每一帧提取并保存

学习ffmpeg打开视频文件,帧分析,并bmp保存关键帧