Darknet yolo 环境搭建以及训练测试自己的数据集
2017-08-28 14:08
826 查看
Darknet yolo环境搭建
Darknet是一个c语言实现的神经网络框架,它运行速度快,易安装,支持CPU和GPU两种模式。Yolo是运行在Darknet上的一个神经网络,二者搭配一起使用。
在Ubuntu下依次输入以下命令 即可下载Darknet
git clone https://github.com/pjreddie/darknet cd darknet make
接下来下载权重文件
wget https://pjreddie.com/media/files/yolo.weights[/code]
运行检测器./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg
输出如下:
以上是检测单张图片的做法,如果想连续检测多张图片,那么可以输入命令而不指定后面的文件:./darknet detect cfg/yolo.cfg yolo.weights
接下来会提示输入图片路径
在此处输入路径./data/horses.jpg
此时会显示检测结果,并提示输入下一张想检测的图片的路径,如果想停止检测,可按ctrl+c退出。
默认情况下,YOLO仅显示以0.25以上的置信度检测到的对象。可以通过将该-thresh 标志传递给该yolo命令来进行更改。例如,要显示所有检测,可以将阈值设置为0:./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg -thresh 0训练测试自己的数据集
准备数据
环境安装好了,接下来试着训练自己的数据集。
首先我们需要准备自己的数据集,使用固定格式的jpg图像,可下载freename重命名工具对文件进行重命名,在名字上最好使用像VOC一样类似000001.jpg、000002.jpg这样。
设置文件结构
按照图片上的目录结构自己建立文件夹
文件夹Annotation中主要存放xml文件;
而ImageSets我们只需要用到Main文件夹,这里面存放的是一些文本文件,通常为train.txt、test.txt等;
JPEGImages文件夹中放我们已按统一规则命名好的原始图像。
其他文件夹暂时不用管。
注:VOC文件夹可命名为voc+年份。如VOC2017。
用labelimg软件进行数据标注,然后把xml文件和原始的jpg文件拷贝到对应的文件夹下。
生成相关文件
按darknet的说明编译好后,接下来在darknet-master/scripts文件夹中新建文件夹VOCdevkit,然后将整个VOC2017文件夹都拷到VOCdevkit文件夹下。
接下来修改scripts文件夹下的voc_label.py文件,来生成相关文件。
将文件中的sets和class改
9f85
成自己的数据集名和类别。
修改好后在该目录下运行命令:python voc_label.py,之后则在文件夹scripts\VOCdevkit\VOC2007下生成了文件夹lable,里面有各个图片对应的txt文件。同时在scripts\下应该也生成了train_2007.txt这个文件,里面包含了所有训练样本的绝对路径。
配置文件修改
打开cfg文件夹,可以看到下面有许多cfg后缀的文件,类似于caffe中的prototxt
选择tiny-yolo-voc.cfg进行修改
修改最后一层卷积层中的filter,根据自己的参数计算(filter=num×(classes + coords + 1))
以及region下的classes,修改为自己的类别。
接着需要修改cfg文件夹中的voc.data文件。也是按自己需求和路径修改。
运行训练
输入下面的命令进行训练./darknet detector train ./cfg/voc.data cfg/tiny-yolo-voc.cfg
结果如图:
训练完成后会根据迭代次数保存训练的权重模型,然后就可以拿来测试了。
测试命令:./darknet detector test cfg/voc.data cfg/tiny-yolo-voc.cfg results/tiny-yolo-voc_6000.weights data/images.jpg
相关文章推荐
- Ubuntu14.04+caffe+cuda7.5 环境搭建以及MNIST数据集的训练与测试
- faster-rcnn训练和测试自己的数据(VGG/ResNet)以及遇到的问题
- Mobilenet-SSD训练环境搭建和训练自己的数据
- Faster rcnn 训练自己的数据—环境搭建
- SSD配置、训练、测试以及应用到自己的数据集
- matconvnet环境下训练自己的数据集及模型测试-mnist网络结构-cifar10部分数据集
- TensorFlow识别复杂验证码以及搭建生产环境(6)—— 训练与测试
- ubuntu14.04+caffe训练测试自己的图片数据
- windows 训练、微调caffenet 训练测试自己的数据
- 3,数据挖掘环境搭建-Hadoop集群搭建与测试
- 学习大数据的第一步-搭建Scala开发环境,以及使用Intellij IDEA开发Scala程序
- 大数据测试之hadoop单机环境搭建(超级详细版)
- 代码备份:处理 SUN397 的代码,将其分为 80% 训练数据 以及 20% 的测试数据
- 用caffe训练并测试自己收集的数据,踩了一堆坑
- 【大数据】自己动手做大数据系统(第三章 大数据环境搭建和配置-下)
- MongoDB分片集群环境搭建好后简单的创建和测试数据库表
- Tiny_cnn用自己的数据训练和测试
- 大数据测试环境搭建
- MFC环境下搭建OpenGL框架并进行数据文件读取以及模型绘制的注意事项
- 基于RedHatEnterpriseLinux V7(RHEL7)下SPEC CPU 2006环境搭建以及测试流程(之三)——OS调试过程