6,voc数据集训练模型

1)下载数据集

官网提供一些voc数据,是基于2007年到2012年的,你可以通过以下地址下载到:

wget https://pjreddie.com/media/files/VOCtrainval_11-May-2012.tar
wget https://pjreddie.com/media/files/VOCtrainval_06-Nov-2007.tar
wget https://pjreddie.com/media/files/VOCtest_06-Nov-2007.tar
tar xf VOCtrainval_11-May-.tar
tar xf VOCtrainval_06-Nov-.tar
tar xf VOCtest_06-Nov-.tar

可以把数据存放到VOCdevkit/目录下

2)生成识别标签

识别标签必须是.txt文件的,具体格式如下:

<object-class> <x> <y> <width> <height>

Object-class 是分类的名称

其余元素是关联到图片的像素,宽和高的

通过下载官网提供的voc_label.py 我们可以快速的生成这一个文件,把他下载到scripts/目录下:

wget https://pjreddie.com/media/files/voc_label.py
python voc_label.py

几分钟后,就会生成相应的文件存放到:

VOCdevkit/VOC2007/labels/ 或者 VOCdevkit/VOC2012/labels/下面:

ls
2007_test.txt VOCdevkit
2007_train.txt voc_label.py
2007_val.txt VOCtest_06-Nov-.tar
2012_train.txt VOCtrainval_06-Nov-.tar
2012_val.txt VOCtrainval_11-May-.tar

我们可以把自己真正要训练的文件合并成一个:

cat 2007_train.txt 2007_val.txt 2012_*.txt > train.txt

3)修改配置指向的数据(Pascal Data)

在cfg/voc.data里配置数据的指向:

 classes=
train = <path-to-voc>/train.txt
valid = <path-to-voc>2007_test.txt
names = data/voc.names
backup = backup

<path-to-voc> 就是你数据集的指向

4)下载预训练的卷积的权重

这里用到卷积的权重是imageNet预训练提供:

wget https://pjreddie.com/media/files/darknet19_448.conv.23

你也可以通过下载预训练的Darknet19 448x448 model(https://pjreddie.com/darknet/imagenet/#darknet19_448) 模型来产生你自己的权重,执行下面的命名:

./darknet partial cfg/darknet19_448.cfg darknet19_448.weights darknet19_448.conv. 

5)训练模型

./darknet detector train cfg/voc.data cfg/yolo-voc.cfg darknet19_448.conv.

7,用coco 训练yolo模型

Coco数据集,我没有用过,具体可以查看http://cocodataset.org/#overview 了解一下

1)获取coco数据集

下载coco的数据集和标签,可直接通过scripts/get_coco_dataset.sh脚本执行:

cp scripts/get_coco_dataset.sh data
cd data
bash get_coco_dataset.sh

这样标签和数据集都有了。

2)配置数据集的指向

在cfg/coco.data配置文件里配置:

 classes=
train = <path-to-coco>/trainvalno5k.txt
valid = <path-to-coco>/5k.txt
names = data/coco.names
backup = backup

<path-to-coco>是你的具体路径指向

另外还需要配置你数据集是用于训练不是测试的,默认是测试的配置,在cfg/yolo.cfg:

[net]
# Testing
# batch=
# subdivisions=
# Training
batch=
subdivisions=
....

3)训练模型

./darknet detector train cfg/coco.data cfg/yolo.cfg darknet19_448.conv.

4)启用gpus执行训练,加速

./darknet detector train cfg/coco.data cfg/yolo.cfg darknet19_448.conv. -gpus ,,,

5)训练暂停或者从断点开始训练

./darknet detector train cfg/coco.data cfg/yolo.cfg backup/yolo.backup -gpus ,,,

8,官方特别声明的

如果你使用他们的框架,必须在注释里说明框架来源,可以直接在注释里粘入下面的注释:

@article{redmon2016yolo9000,
title={YOLO9000: Better, Faster, Stronger},
author={Redmon, Joseph and Farhadi, Ali},
journal={arXiv preprint arXiv:1612.08242},
year={}
}

参考地址:https://pjreddie.com/darknet/yolo/

论文地址 :https://arxiv.org/abs/1612.08242

yolo算法框架使用二的更多相关文章

  1. YOLO 算法框架的使用一(初级)

    YOLO官方框架使用C写的,性能杠杠的,YOLO算法,我就不做过多介绍了.先简单介绍一下这个框架如何使用.这里默认是yolo2,yolo1接近过时.环境 推荐ubuntu 或者centos YOLO是 ...

  2. 第三十五节,目标检测之YOLO算法详解

    Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: Unified, real-time object de ...

  3. Newtonsoft.Json C# Json序列化和反序列化工具的使用、类型方法大全 C# 算法题系列(二) 各位相加、整数反转、回文数、罗马数字转整数 C# 算法题系列(一) 两数之和、无重复字符的最长子串 DateTime Tips c#发送邮件,可发送多个附件 MVC图片上传详解

    Newtonsoft.Json C# Json序列化和反序列化工具的使用.类型方法大全   Newtonsoft.Json Newtonsoft.Json 是.Net平台操作Json的工具,他的介绍就 ...

  4. [DeeplearningAI笔记]卷积神经网络3.1-3.5目标定位/特征点检测/目标检测/滑动窗口的卷积神经网络实现/YOLO算法

    4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image clas ...

  5. 知识图谱+Recorder︱中文知识图谱API与工具、科研机构与算法框架

    目录 分为两个部分,笔者看到的知识图谱在商业领域的应用,外加看到的一些算法框架与研究机构. 文章目录 @ 一.知识图谱商业应用 01 唯品金融大数据 02 PlantData知识图谱数据智能平台 03 ...

  6. 7、滑动窗口套路算法框架——Go语言版

    前情提示:Go语言学习者.本文参考https://labuladong.gitee.io/algo,代码自己参考抒写,若有不妥之处,感谢指正 关于golang算法文章,为了便于下载和整理,都已开源放在 ...

  7. MVC系列——MVC源码学习:打造自己的MVC框架(二:附源码)

    前言:上篇介绍了下 MVC5 的核心原理,整篇文章比较偏理论,所以相对比较枯燥.今天就来根据上篇的理论一步一步进行实践,通过自己写的一个简易MVC框架逐步理解,相信通过这一篇的实践,你会对MVC有一个 ...

  8. JavaScript 框架设计(二)

    JavaScript 高级框架设计 (二) 上一篇,JavaScript高级框架设计(一)我们 实现了对tag标签的选择 下来我们实现对id的选择,即id选择器. 我们将上一篇的get命名为getTa ...

  9. 【原创】NIO框架入门(二):服务端基于MINA2的UDP双向通信Demo演示

    前言 NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能.这其中最流行的无非就是MINA和Netty了,MINA目前的主要版本是MINA2.而Netty的主要版本是Netty3和Netty ...

随机推荐

  1. Linux 系统调整内核参数

    调整系统内核参数 内核优化:Linux系统(内核 + shell + 应用程序)       针对业务服务应用而进行的系统内核参数调整(主要是/etc/sysctl.conf文件) 1. vim /e ...

  2. Composer 的简介、安装及使用

    Composer的简介 简单说,Composer 就是一个安装包管理工具,服务于 PHP 生态系统.它包括了两个部分:Composer 和 Packagist. Composer Composer 是 ...

  3. [Luogu P4143] 采集矿石 [2018HN省队集训D5T3] 望乡台platform

    [Luogu P4143] 采集矿石 [2018HN省队集训D5T3] 望乡台platform 题意 给定一个小写字母构成的字符串, 每个字符有一个非负权值. 输出所有满足权值和等于这个子串在所有本质 ...

  4. MySQL主从.md

    MySQL Replication 概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它 ...

  5. Uva1395 POJ3522 Slim Span (最小生成树)

    Description Given an undirected weighted graph G, you should find one of spanning trees specified as ...

  6. Kubernetes dashboard 配置

    安装前准备 下载dashboard的yaml文件 wget -O kube-dashboard.yaml https://git.io/kube-dashboard-no-rbac 这个版本是没有权限 ...

  7. 2743: [HEOI2012]采花

    Description 萧芸斓是Z国的公主,平时的一大爱好是采花.今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花 .花园足够大,容纳了n朵花,花有c种颜色(用整数1-c表示),且花是排成一 ...

  8. javascript:typeof与instanceof区别

    from:http://www.wxwdesign.cn/article/skills/javascript_typeof_instanceof.htm JavaScript中typeof和insta ...

  9. Hadoop学习之路(三)Hadoop-2.7.5在CentOS-6.7上的编译

    下载Hadoop源码 1.登录官网 2.确定你要安装的软件的版本 一个选取原则: 不新不旧的稳定版本 几个标准: 1)一般来说,刚刚发布的大版本都是有很多问题 2)应该选择某个大版本中的最后一个小版本 ...

  10. 《Python核心编程》第二版第五章答案

    本人python新手,答案自己做的,如果有问题,欢迎大家评论和讨论! 更新会在本随笔中直接更新. 5-1.整型.讲讲Python普通整型和长整型的区别. Python的标准整形类型是最通用的数字类型. ...