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:
#2017/12/02 raulxty@163.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 777 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 
编辑于 2017-12-02
FFmpeg
Shell 编程开发
视频转换
0
View Code

 

正确的命令应该是 ffmpeg -i "Captain_America3test.mp4" -q:v 2 -f image2 ./captainAmerica3/image-3%d.jpeg 

posted @ 2018-04-07 17:48  JarvisLau  阅读(926)  评论(0编辑  收藏  举报