Github链接:https://github.com/AlexeyAB/darknet#how-to-compile-on-windows

推荐博客:http://blog.csdn.net/qq_14845119/article/details/53589282

 

 

Yolo的配置很简单,下载opencv3.2并安装,下载vs2015并安装,打开darknet-master/build/darknet/darknet.sln,修改为releasedebug X64,并配置opencv3.2头文件、库文件、链接库,编译直接成功。

 

下面讲下如何训练自己的数据集:

1、下载目录文件yolo-data.ratr并解压缩到在darknet-master/build/darkent/x64/下,将yolo-data重名为自己数据集的名字,如mydata

链接: https://pan.baidu.com/s/1o7Q4Iz4 密码: xb5a

2、将图片文件拷贝到JPEGImages目录下;

3、新建voc.names文件(具体名字根据自己需要修改),文件内容为所有类别名,每个类别对应一行,默认情况如图所示:


4、新建voc.data文件(具体名字根据自己需要修改),文件内容为类别数classes(特别注意,yolofaster-rcnn不同,不需要算上背景,实际多少类就是多少类,不需要加1)、训练集路径train、测试集路径valid(非必需,没有则在前面加#注释掉)、类别名文件路径names(第三步中voc.names文件的路径)、训练模型caffemodel文件的保存路径backup,默认情况如图所示:

 

5、修改网络配置文件*.cfg,选择自己的网络模型,修改[region]部分classes为自己数据的类别数,以及最后一个[convolutional]filters后面的值,因为每个预测框需要预测出xywh、存在目标的概率、对应每种类别的概率,总共4+1+classes个值,而每个预测点默认5个框,总共5*5+classes),所以要将filters修改为5*(5+classes),默认20类,5*25=125

至此,数据文件目录创建完成,如图所示:

 

6、生成训练数据。修改voc_label.py文件,并运行,修改内容如下:

 

注意:此处的voc_label.py是经修改后的文件,上面的下载链接中会有。

程序会根据trainval.txt文件在Annotations文件夹下生成xml文件,在labels下生成txt文件。Trainval.txt内数据格式为:

 

分别为:图片名、类名、矩形坐标。

******.txt内数据格式是经归一化的数据:

 

第一个数为类别id,后面四个数为对应矩形坐标归一化后的值。

7、开始训练,可选择从头开始训练或是fine tuning。下载文件http://pjreddie.com/media/files/darknet19_448.conv.23 

并放到mydata目录下。

运行cmdcddarknet-master/build/darkent/x64/下,输入命令行:

darknet.exe detector train mydata/voc.data mydata/tiny-yolo.cfg  mydata/darknet19_448.conv.23

最后一个参数根据之前训练的模型自行修改,通常为backup目录下生成的caffemodel文件。

8、测试

darknet.exe detect mydata/tiny-yolo.cfg  mydata/backup/*.caffemodel  mydata/*.jpg

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐