构造数据集的流程


视频文件  >>  ffmpeg处理  >>  图片集  >>  labelImg进行标注  >>  标注好的数据集


准备ffmpeg


通过官方下载地址进行下载,根据自己的机器类型进行选择

将下载好的压缩包解压(为了方便,我将文件重命名了)

        >>>>>>>>>>>>>        

将ffmpeg下的bin目录添加到系统的Path中(配置环境变量的具体过程不在此重复啦^^)

在Windows的DOS中输入下面的命令来验证是否环境变量已经配置好

ffmpeg -v

获得的结果如下,说明可以使用ffmpeg啦

使用ffmpeg进行视频取帧,首先进入到存放视频的文件夹

然后进入powershell,输入命令进行视频取帧,命令的格式大致是:ffmpeg -i 视频 -r 每秒帧数 -q:v 图片质量参数 -f 图片命名格式(更多使用情况问度娘^^)

ffmpeg -i "video.mp4" -r 1 -q:v 2 -f image2 vid_%d.jpeg

回车后得到提取的帧图片


在安装好python2.7并配置好环境变量以及安装好pip并配置好环境变量的条件下,安装PyQt4和lxml


安装lxml,在DOS中输入命令,回车后会自动下载并安装

pip install lxml

安装完成后,进入python并输入

import lxml

得到下图的结果,python没有报出异常,说明安装成功

安装PyQt4,点击下载l链接进行下载,根据自己的需求进行下载

下载完成后,双击进行安装,一路next直到安装完成

在github上下载开源的labelImg,地址在这里

下载好后进行解压,得到名为:labelImg-master 的文件夹,根据自己的需求,在data文件中打开 predefined_classes.txt 文件设置标签(我这里设置为光头强、熊大、熊二)

在 labelImg-master 文件中进入powershell

首先执行代码

pyrcc4 -o resources.py resources.qrc

然后执行代码

python labelImg.py


现在就可以撸起袖子标注图片了,里面有打开文件夹或者打开某张图片(这里我绝对不会说一定要用英文命名)


标注一张看一下(视频质量较差,图片也不是特别清晰,例子而已^^)

Windows下 ffmpeg + labelImg 提取视频帧 得到图片集 并 标注图片 来 构造数据集的更多相关文章

  1. C++调用ffmpeg.exe提取视频帧

    有时候,我们获得一段视频,需要将其中的每一帧都提取出来,来进行一些相关的处理,这时候我们就可以需要用到ffmpeg.exe来进行视频帧的提取. ffmpeg简介:FFmpeg是一套可以用来记录.转换数 ...

  2. 交叉编译多平台 FFmpeg 库并提取视频帧

    原文地址: 交叉编译多平台 FFmpeg 库并提取视频帧 交叉编译多平台 FFmpeg 库并提取视频帧 本文档适用于 x86 平台编译 armeabi.armeabi-v7a.arm64-v8a.x8 ...

  3. 交叉编译多平台 FFmpeg 库并提取视频帧(转)

    交叉编译多平台 FFmpeg 库并提取视频帧 转  https://www.cnblogs.com/leviatan/p/11142579.html 本文档适用于 x86 平台编译 armeabi.a ...

  4. 基于C#利用ffmpeg提取视频帧

    利用ffmepg提取视频帧实际上是利用C#调用ffmepg命令行进行处理对应的视频,然后输出出视频帧 GetPicFromVideo("); static public string Get ...

  5. Windows下FFmpeg快速入门

    本系列文章导航 Windows下FFmpeg快速入门 ffmpeg参数解释 mencoder和ffmpeg参数详解(Java处理视频) Java 生成视频缩略图(ffmpeg) 使用ffmpeg进行视 ...

  6. Windows下FFmpeg高速入门

    本系列文章导航 Windows下FFmpeg高速入门 ffmpeg參数解释 mencoder和ffmpeg參数具体解释(Java处理视频) Java 生成视频缩略图(ffmpeg) 使用ffmpeg进 ...

  7. 【FFmpeg】Windows下FFmpeg编译

    由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...

  8. Windows 下 ffmpeg 转 mp4

    最近在研究所有视频格式转  mp4 因为html5 只支持mov MP4 等格式..查阅了 很多资料发现  转成flv  很简单.. 可是要转 mp4 就难了... 经过我不屑的努力..终于转换成功了 ...

  9. Windows下FFmpeg快速入门 <第二篇>

    FFmpeg简介 FFmpeg是什么? FFmpeg是用于录制.转换和流化音频和视频的完整解决方案, 包括 libavcodec ,一套领先的音/视频编解码类库.FFmpeg 在Linux上开发,当可 ...

随机推荐

  1. luogu1540 [NOIp2011]机器翻译 (队列)

    #include<bits/stdc++.h> #define pa pair<int,int> #define CLR(a,x) memset(a,x,sizeof(a)) ...

  2. SpringBoot中的定时任务与Quartz的整合

    SpringBoot集成Quartz 定时任务Quartz : 就是在指定的时间执行一次或者循环执行,在项目的开发中有时候会需要的, 还是很有用的. SpringBoot内置的定时 添加依赖 < ...

  3. 《剑指offer》— JavaScript(34)第一个只出现一次的字符

    第一个只出现一次的字符 题目描述 在一个字符串(1<=字符串长度<=10000,全部由大写字母组成)中找到第一个只出现一次的字符,并返回它的位置. *** 思路 新建一个对象,其中key用 ...

  4. 使用 Nginx 和 Gunicorn 部署 Django 博客(转)

    原文:http://zmrenwu.com/post/20/  http://www.siar.me/post/9/ 针对很多朋友反映按照教程的做法始终只能看到 Nginx 欢迎页面的问题,Tian ...

  5. Java基础-进制转换

    Java基础-进制转换 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Java 程序中常用的进制 1>.十进制,由“0123456789” 这10个数字组成,逢十进一: ...

  6. Spark记录-Scala类与对象小例子

    //基类-Person class Person(val na: String, val ag: Int) { //属性 var name: String = na var age: Int = ag ...

  7. POJ 3537 multi-sg 暴力求SG

    长为n的一列格子,轮流放同种棋子,率先使棋子连成3个者胜. 可以发现每次放一个棋子后,后手都不能放在[x-2,x+2]这个区间,那么相当于每次放棋将游戏分成了两个,不能放棋者败. 暴力求SG即可 /* ...

  8. ngx_lua_API 指令详解(四)ngx.exec指令

    https://github.com/openresty/lua-nginx-module#ngxexec 参照:http://blog.csdn.net/weiyuefei/article/deta ...

  9. Rime中州韵导入QQ五笔词库

    过程记录如下: 1.在QQ五笔中导出QQ五笔系统词库 2.使用「深蓝词库转换」转换QQ五笔系统词库,输入源修改为”五笔86版“,输出方式修改为Rime中州韵-五笔. 3.在Ubuntu中打开Termi ...

  10. 让你的HTML5&CSS3网站在老IE中也能正常显示的3种方法

    起初,IE其实也是一款非常有进取心的浏览器.但经过一段时间的蛰伏后,它已经成为了我们生活中的一道障碍.微软现在又重新开始向其它浏览器发起挑战,但事实情况是,新版的现代IE浏览器一直滞后于谷歌浏览器和火 ...