python视频按帧截取图片工具
作者:剑峰随心 时间:2021-09-08 10:30:56
本文实例为大家分享了python视频按帧截取图片工具的具体代码,供大家参考,具体内容如下
描述:将一个视频流按帧数截取大量的图片
用途:AI的数据集制作,得到大量的图片,之后将其打标签
更改的地方
1.default--间隔的帧数 2.input/output--输入视频的路径、存放截取图片的路径 (将路径放入后面的‘ '中即可)前面加r可表示绝对路径 eg:
args = parser.parse_args(['--input',r'F:\data_video\IMG_4395.MOV','--output',r'F:data_rgb_pic\7video'])
直接上代码
import cv2
import argparse
import os
def parse_args():
"""
Parse input arguments
"""
parser = argparse.ArgumentParser(description='Process pic')
parser.add_argument('--input', help='video to process', dest='input', default=None, type=str)
parser.add_argument('--output', help='pic to store', dest='output', default=None, type=str)
#default为间隔多少帧截取一张图片
parser.add_argument('--skip_frame', dest='skip_frame', help='skip number of video', default=100, type=int)
#input为输入视频的路径 ,output为输出存放图片的路径
args = parser.parse_args(['--input','','--output',''])
return args
def process_video(i_video, o_video, num):
cap = cv2.VideoCapture(i_video)
num_frame = cap.get(cv2.CAP_PROP_FRAME_COUNT)
expand_name = '.jpg'
if not cap.isOpened():
print("Please check the path.")
cnt = 0
count = 0
while 1:
ret, frame = cap.read()
cnt += 1
# how
# many
# frame
# to
# cut
if cnt % num == 0:
count += 1
cv2.imwrite(os.path.join(o_video, str(count) + expand_name), frame)
if not ret:
break
if __name__ == '__main__':
args = parse_args()
if not os.path.exists(args.output):
os.makedirs(args.output)
print('Called with args:')
print(args)
process_video(args.input, args.output, args.skip_frame)
来源:https://www.cnblogs.com/bob-jianfeng/p/11140444.html
标签:python,视频,截取图片
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Django 多环境配置详解
2022-01-25 06:38:49
巧用一条SQL 实现其它进制到十进制转换
2009-01-19 13:16:00
python发送邮件实例分享
2021-07-17 23:14:23
![](https://img.aspxhome.com/file/2023/3/110433_0s.jpg)
Python中的通函数numpy.ufunc详解
2023-09-03 22:52:08
Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解
2022-03-02 10:43:08
![](https://img.aspxhome.com/file/2023/9/112609_0s.png)
Windows安装Anaconda并且配置国内镜像的详细教程
2023-07-06 13:45:15
![](https://img.aspxhome.com/file/2023/8/61708_0s.png)
Oracle 存储过程总结(一、基本应用)
2009-07-07 10:21:00
sql2000如何完美压缩.mdf文件
2010-03-03 15:47:00
TensorFlow实现卷积神经网络
2022-05-21 02:17:02
![](https://img.aspxhome.com/file/2023/0/87650_0s.jpg)
python语言使用技巧分享
2022-10-24 09:29:38
![](https://img.aspxhome.com/file/2023/1/101501_0s.png)
如何利用python正确地为图像添加高斯噪声
2023-08-03 08:26:22
![](https://img.aspxhome.com/file/2023/9/59459_0s.png)
Python3使用requests发闪存的方法
2021-06-09 16:07:20
css基础教程布局篇之一
2008-07-31 17:21:00
![](https://img.aspxhome.com/file/UploadPic/20087/31/200873117275859s.jpg)
Mysql入门系列:优化MYSQL服务器
2008-11-24 13:25:00
关于 Python json中load和loads区别
2021-04-24 20:30:51
一个小时内学习 SQLite 数据库
2012-05-22 18:51:30
Python构建自动在线刷视频的实现
2021-12-17 15:53:37
![](https://img.aspxhome.com/file/2023/6/89396_0s.jpg)
SQL Server 2005 SP3正式版下载
2008-12-16 12:42:00
python实现BP神经网络回归预测模型
2023-01-21 17:53:44
![](https://img.aspxhome.com/file/2023/2/98322_0s.png)
Python pandas实现excel工作表合并功能详解
2021-05-23 01:33:40
![](https://img.aspxhome.com/file/2023/4/70064_0s.png)