yolo源码解析(2):处理图片
首先安装ffmpeg, 参考https://blog.csdn.net/lwgkzl/article/details/77836207
然后将视频切分为图片, 参考:https://zhuanlan.zhihu.com/p/31637663, 执行有错误, 可以用下面这个方法, 此方法可以供参考
参考https://blog.csdn.net/stone8761/article/details/35985107(用谷歌用谷歌!)
在做之后的步骤前,确保你在想要提取图片的视频文件的目录下。使用cd命令切换到正确的目录。教程中我使用的视频在我的桌面上,我用以下命令将目录切换到我的桌面。
cd /home/oltjano/Desktop
之后我使用以下命令从视频中提取图片。
ffmpeg -i "你是我的小呀小苹果儿.mp4" -r 1 -q:v 2 -f image2 image-3%d.jpeg
-i选项用来获取输入文件,在这里是视频文件名你是我的小呀小苹果儿.mp4,-r选项设置每秒提取图片的帧数。我想要每秒提取一帧。
之后有一个重要的选项是-q:v,应该留意这个选项并且我很喜欢用它,它用来设置提取到的图片质量。我总是设置值为2来从视频中获取高质量图片。
供参考的方法
有一些行车记录仪的视频,需要将其转换为单帧图片以供标注和神经网络学习。 ffmpeg安装很简单,略过不提。 视频全部为mp4格式,放在/home/ffmpeg-project目录下。 需要将其转换并存储在单独目录下,命名为ffout-【视频名】 先贴出最终脚本 #!/bin/bash
#Program:
# convert MP4 to jpg
#History:
#// raulxty@.com First release
PATH=/root/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
export PATH filelist=$(find *.mp4)
OLDIFS="$IFS"
IFS=$"\n"
for filename in *.mp4
#$(find -iname *.mp4)
do
mkdir "ffout-${filename%.*}"
ffmpeg -i $filename /home/ffmpeg-project/"ffout-${filename%.*}"/%03d.jpg
done
IFS=$OLDIFS 运行方式是 [root@centos7 ffmpeg-project]# ./convert_mp4_to_jpg.sh
可能遇到的两个错误,若提示 -bash: ./convert_mp4_to_jpg.sh: Permission denied
解决方法 chmod convert_mp4_to_jpg.sh
若提示 -bash: ./convert_mp4_to_jpg.sh: /bin/bash^M: bad interpreter: No such file or directory
解决方法 sed -i 's/\r$//' convert_mp4_to_jpg.sh
编辑于 --
FFmpeg
Shell 编程开发
视频转换
正确的命令应该是 ffmpeg -i "Captain_America3test.mp4" -q:v -f image2 ./captainAmerica3/image-%d.jpeg
yolo源码解析(2):处理图片的更多相关文章
- 第三十六节,目标检测之yolo源码解析
在一个月前,我就已经介绍了yolo目标检测的原理,后来也把tensorflow实现代码仔细看了一遍.但是由于这个暑假事情比较大,就一直搁浅了下来,趁今天有时间,就把源码解析一下.关于yolo目标检测的 ...
- yolo源码解析(一)
原文:https://www.cnblogs.com/zyly/p/9534063.html yolo源码来源于网址:https://github.com/hizhangp/yolo_tensorfl ...
- yolo源码解析(3):视频检测流程
代码在自己电脑中!!!!不在服务器 根据前文所说yolo代码逻辑: ├── examples │ ├── darknet.c(主程序) │ │── xxx1.c │ └── xxx2.c │ ├── ...
- yolo源码解析(1):代码逻辑
一. 整体代码逻辑 yolo中源码分为三个部分,\example,\include,以及\src文件夹下都有源代码存在. 结构如下所示 ├── examples │ ├── darknet.c(主程序 ...
- yolo源码解析(三)
七 测试网络 模型测试包含于test.py文件,Detector类的image_detector()函数用于检测目标. import os import cv2 import argparse imp ...
- yolo源码解析(二)
五 读取数据pascal_voc.py文件解析 我们在YOLENet类中定义了两个占位符,一个是输入图片占位符,一个是图片对应的标签占位符,如下: #输入图片占位符 [NONE,image_size, ...
- yolo源码解析(3):进行简单跳帧
视频检测命令 ./darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights ../../dataset/ ...
- SDWebImage源码解析
但凡经过几年移动开发经验的人去大公司面试,都会有公司问到,使用过哪些第三方,看过他们的源码嘛?而SDWebImage就是经常被面试官和应聘者的提到的.下面将讲述SDWebImage的源码解析以及实现原 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
随机推荐
- [C++设计模式]observer 观察者模式
有这么一种松耦合的需求: 有一些类的对象对类A对象的状态变化非常感兴趣,不会改变类A的对象,也不会被类A的对象改变,想以一种较小的代价观察对类A对象状态变化. 以下的几种方式也能实现上述目的 (1)通 ...
- MySQL List分区(三)
具体介绍请看 MySQL分区一 样例:该样例为本人个人学习总结分享
- lightoj--1294--Largest Box(三分)
Largest Box Time Limit: 2000MS Memory Limit: 32768KB 64bit IO Format: %lld & %llu Submit Sta ...
- Linux性能优化和监控系列(一)——top工具
解释服务器发生了什么——top工具 在检查服务器的详细工作性能状态前,系统管理员需要对当前服务器状态有总体的了解. top是检查服务器总体状态的强有力工具, 通过top可以获取CPU, Memory, ...
- 实现两个jQuery的API(addClass、text)
目的 给所有的div添加一个叫“red”的class,为方便看到代码的效果,设置如下css,在设置“red”成功时,文本会变红 .red{ color:red; } 将所有的div中的textCont ...
- hdu 3549 Flow Problem 【最大流】
其实还是不是很懂dinic----- 抄了一个模板--- http://www.cnblogs.com/naturepengchen/articles/4403408.html 先放在这里--- #i ...
- HDU 1009 FatMouse' Trade【贪心】
解题思路:一只老鼠共有m的猫粮,给出n个房间,每一间房间可以用f[i]的猫粮换取w[i]的豆,问老鼠最多能够获得豆的数量 sum 即每一间房间的豆的单价为v[i]=f[i]/w[i],要想买到最多的豆 ...
- Run-time type information--RTTI
In computer programming, run-time type information or run-time type identification (RTTI)[1] refers ...
- Prime Distance POJ - 2689 线性筛
一个数 $n$ 必有一个不超过 $\sqrt n$ 的质因子. 打表处理出 $1$ 到 $\sqrt n$ 的质因子后去筛掉属于 $L$ 到 $R$ 区间的素数即可. Code: #include&l ...
- CefSharp获取页面Html代码的两种方式
CefSharp在NuGet的简介是“The CefSharp Chromium-based browser component”,机翻的意思就是“基于Cefsharp Chromium的浏览器组件” ...