制作数据集(一):将视频数据剪辑为图片数据

本文介绍如何制作数据集,特别是将视频转换为图片。作者尝试使用Python但未成功,最终推荐使用ffmpeg软件,详细介绍了ffmpeg的安装和使用命令,成功将视频按帧剪辑成图片。
摘要由CSDN通过智能技术生成

概要

由于我自己的项目缺少合适的数据集,所以我需要自己制作数据集,即我需要自己完成从用摄像头录制视频到制作图片数据集的整个过程。所以这篇博客旨在记录我将视频数据剪辑为图片数据的过程。

先声明我的设备配置为:
Windows 7 + 只有CPU+ Anaconda 3 + Pythorch + cygwin

一、尝试用Python 3 将视频数据剪辑为图片数据(此方法我未成功)

参考链接:深度学习训练数据打标签过程

https://blog.csdn.net/weixin_41863685/article/details/79932451

这篇博客详细的介绍了将视频的数据一帧一帧的读取出来,并生成图片保存到本地,再将图片打好标签保存在pkl文件中的过程。由于我是想将我的标签和图片信息保存在txt文件中,所以我没有参考他打标签的过程,只参考了他用Python 3 来将视频剪辑为图片的过程。但是我运行这段代码的时候还是出现了这样的报错
Error opening file(/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:834)
找了好久也没找到出现这个问题的原因,但是我看评论中有一些小伙伴是通过他的代码实现了将视频剪辑为图片的,所以我也将这个方法贴了出来,看有没有其他小伙伴能顺利的跑通这段代码,实现用Python3 来将视频变成图片。

此博客中剪辑视频为图片的具体代码实现过程:

#导入所需要的库
import cv2
import numpy as np

# 定义保存图片函数
# image:要保存的图片名字
# addr;图片地址与相片名字的前部分
# num: 相片,名字的后缀。int 类型
自定义时空动作/行为视频数据集制作过程需要以下步骤: 1. 数据收集:收集与目标动作/行为相关的视频片段。可以通过在公共视频平台上搜索相关关键词,或者使用摄像头拍摄自己感兴趣的动作/行为。确保视频片段的质量和多样性。 2. 数据预处理:对收集到的视频进行预处理,包括视频剪辑、格式转换和标注。选择关键帧或者将视频切割成短小的视频片段,并将其转换成计算机可读取的格式(如mp4)。同时,根据视频内容对每个视频片段进行标注,标注目标动作/行为的位置和类别。 3. 数据标注:使用标注工具(如LabelImg)对每个视频片段进行标注。通过框选或者用关键点标记目标动作/行为的起始点和终止点,以形成标注数据。 4. 数据划分:将整个数据集分成训练集和测试集。通常,将80%的数据作为训练集,20%的数据作为测试集。确保训练集和测试集的数据分布均匀,避免数据集不平衡的问题。 5. 数据增强:对训练集进行数据增强,以提高模型的泛化能力。可以使用图像处理技术如平移、旋转、缩放等进行图像增强,也可以使用视频处理技术如帧采样、速度调整等进行视频增强。 6. 模型训练:选择合适的深度学习模型(如YOLOv5、Deep等),使用训练集对模型进行训练。在训练过程,将训练集输入到模型,通过最小化损失函数来优化模型参数,使其能够准确地检测时空动作/行为。 7. 模型评估:使用测试集对训练好的模型进行评估。将测试集输入到模型,计算模型的精确度、召回率等评价指标,以评估模型的性能。 8. 模型优化:根据评估结果,对模型进行优化。可以调整模型的超参数,增加训练集的规模,或者增加训练轮数等,以进一步提高模型的性能。 通过以上步骤,就可以完成自定义的时空动作/行为视频数据集制作,并使用YOLOv5、Deep等深度学习模型进行训练和测试。这样训练出来的模型可以用于检测和识别视频的时空动作/行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值