python将视频抽帧的的多种方式

Posted liangblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python将视频抽帧的的多种方式相关的知识,希望对你有一定的参考价值。

最近有一个需求是将视频抽取为一个个的帧图片,使用python很方便实现,而且有多种方式;

视频转换为帧的三种方式

第一种:使用open-cv

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法;

由于open-cv不是python的内置库,所以使用之前需要先安装;

安装方式推荐有很多种,推荐使用pip;

pip 是 Python 的包安装程序。其实,pip 就是 Python 标准库(The Python Standard Library)中的一个包,只是这个包比较特殊,用它可以来管理 Python 标准库(The Python Standard Library)中其他的包。pip 是一个命令行程序。 安装 pip 后,会向系统添加一个 pip 命令,该命令可以从命令提示符运行。

使用pip安装,打开命令行输入;

pip install open-cv

等待执行安装成功;

安装完成后,导入:

import cv2

需要注意

视频抽帧的4种方式

视频抽帧的4种方式

h264, h265播放可使用potplayer.
ffmpeg是非常强大的,视频抽帧,过滤,视频合并、图片生成视频等均可。

1. ffmpeg.exe/ffmpeg 命令行

可跨平台,可设置抽帧照片的图像质量 -qscale:v 2(2~31,2为图像质量最高)

不同平台得用开源的 ffmpeg的不同可执行版本工具
windows ffmpeg.exe
linux ffmpeg

CMD命令行:

ffmpeg.exe -y -i E:\\mat\\01-test.h265 -ss 00:00:00 -qscale:v 2 -f image2 -vsync 2 D:\\mat\\a1m\\%d.jpg 

注意:D:\\data\\01-test\\image 存放照片的路径在抽帧前需存在

-qscale:v 2~31 图像质量,2代表高质量

以上是关于python将视频抽帧的的多种方式的主要内容,如果未能解决你的问题,请参考以下文章

ffmpeg视频抽帧

多媒体视频开发_(30)使用ffmpeg在视频中进行抽帧

yolox目标检测实现人脸识别换搞笑图

Python之OpenCV读取视频抽帧保存

badapple制作

我的Android进阶之旅使用MediaCodeC实现视频抽帧相关资料