Yolov3实战 基于darknet window版
特此声明:训练过程预先认为你对yolov3神经网络有一定了解的基础上进行。
目录
一、先备齐下面的工具(预先善其事,必先利其器)
(如果你不想走弯路,还是按照我说的来吧)
1、VS2015 x64版本 自定义安装即可
2、darknet windows版本 链接:https://download.csdn.net/download/zsl091125/10856959
3、CUDA9.1 cudnn7.1
先安装在 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1
cudnn解压出来直接覆盖该目录
下面是我的安装路径
. opencv3.4.0 解压,目录命名结构如下(C:\opencv_3.0\opencv\build)
下面是我的安装路径
上面安装完后,看一下环境变量,我的是win10下的环境变量,特别注意opencv_3.0的环境变量; 一般cuda的环境变量会自动加入,不需要我们管
二、接下里使用我们的工具编译我们的环境
1. 打开 darknet\build\darknet\darknet.sln
2. 右击选中部分,点重新生成,如果是按照我上面的流程安装,会编译很顺利的。
darknet \build\darknet\x64 中会生成 darknet.exe
三、 训练自己的数据集
1. 制作训练样本
我本人先用下面博客(https://blog.csdn.net/u011574296/article/details/78953681)使用的工具标注为voc数据集格式的xml文件,然后利用python自己转换了以下格式。
1.1 voc数据集xml格式如下:
1.2 yolov3使用的txt格式如下:
每张图片xxx.jpg对应一个label文件xxx.txt, txt中的数据实际是像素点值除以实际宽高的,也就是占比
含义分别对应:
类别下标(从0开始) 中心点x坐标 中心点y坐标 目标宽度 目标高度
2. 准备训练前必备的文件
2.1、 类名字文件:defect.names 。
我的类文件名字如下:
2.2、 数据描述文件:defect.data。
从上到下分别为类别数量,训练集位置,测试集位置,类名字文件,训练模型保存路径
2.3、 训练集(defect_train.txt)和测试集(defect_test.txt )位置文件:
2.4、存放图片的位置,在当前目录train中,每张图片都会有对应的label文件:
2.5. 网络配置文件(在cfg/yolov3-voc.cfg的基础上改的):
对参数的解释详见https://mp.csdn.net/postedit/85010833
yolo层前面的卷积层的filters数目=3x(classes+5),和聚类数目分布有关。如果想修改默认anchors数值,使用下面命令即可,当然也可以默认就可以。
darknet.exe detector calc_anchors data/voc.data -num_of_clusters 9 -width 416 -heigh 416
四、 训练及测试
4.1训练
开始训练(开始loss比较大,慢慢来,会降下去的):build\darknet\x64\darknet.exe detector train data\defect.data data\yolov3.cfg
(我用了50个小时训练,loss最后稳定在0.7,准确率达到了工程需求)
4.1.2 训练的过程中backup目录里面每到一定迭代次数,会有模型参数文件保存下来(比如yolov3_defect_1000.weights)。
00.weights
4.2 测试
00.weight
Yolov3实战 基于darknet window版的更多相关文章
- YOLO-V3实战(darknet)
一. 准备工作 1)实验环境: darknet 是由 C 和 CUDA 开发的,不需要配置其他深度学习的框架(如,tensorflow.caffe 等),支持 CPU 和 GPU 运算,而且安装过程非 ...
- 学习参考《Flask Web开发:基于Python的Web应用开发实战(第2版)》中文PDF+源代码
在学习python Web开发时,我们会选择使用Django.flask等框架. 在学习flask时,推荐学习看看<Flask Web开发:基于Python的Web应用开发实战(第2版)> ...
- 基于股票大数据分析的Python入门实战(视频教学版)的精彩插图汇总
在我写的这本书,<基于股票大数据分析的Python入门实战(视频教学版)>里,用能吸引人的股票案例,带领大家入门Python的语法,数据分析和机器学习. 京东链接是这个:https://i ...
- 轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)
轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Jav ...
- 《Selenium2自动化测试实战--基于Python语言》 --即将面市
发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...
- 【阿里云产品公测】云引擎ACE新手实战基于Wordpress
[阿里云产品公测]云引擎ACE新手实战基于Wordpress 作者:阿里云用户imnpc ACE(Aliyun Cloud Engine) 是一款弹性.分布式的应用托管环境,支持Java.php多种语 ...
- Swift项目开发实战-基于分层架构的多版本iPhone计算器-直播公开课
Swift项目开发实战-基于分层架构的多版本iPhone计算器-直播公开课 本课程采用Q Q群直播方式进行直播,价值99元视频课程免费直播.完整的基于Swift项目实战,手把手教你做一个Swift版i ...
- 微信小程序实战之百思不得姐精简版
原文:微信小程序实战之百思不得姐精简版 微信小程序基本组件和API已撸完,总归要回到正题的,花了大半天时间做了个精简版的百思不得姐,包括段子,图片,音频,视频,四个模块.这篇就带着大家简述下这个小的A ...
- 关于《Selenium3自动化测试实战--基于python语言》
2016年1月,机缘巧合下我出版了<Selenium2自动化测试实战--基于python语言>这本书,当时写书的原因是,大部分讲Selenium的书并不讲编程语言和单元测试框,如果想在项目 ...
随机推荐
- ignitius and princess 2(全排列)
A - Ignatius and the Princess II Now our hero finds the door to the BEelzebub feng5166. He opens the ...
- 添加按钮 table增加一行 删减按钮 table去掉一行
需求描述:做的一个AA新增功能,同时可以为这个即将新增的AA添加内容,而且AA的内容默认展示一行列表,点击添加按钮后出现下一行列表 解决思路:页面首先展示一个表头和列表的一行,作为默认展示的一行列表, ...
- django配置一个网站建设
第一步: 安装数据库MySQL,也可以使用pycharm自带的数据库sqllite,大项目要使用数据库.安装请参考上篇. 数据库在pycharm中驱动设置,setting文件中修改驱动文件密码等信息. ...
- 配置webpack loader vue 报错:Module build failed: TypeError: this._init is not a function
单文件组件 引入时报错 配置webpage.config.js中的vue 需要如下写法 { test: /\.vue/, loader: "vue-loader", } 之前写的l ...
- Python作业之分页显示内容
#coding:utf8 user_list =[] for i in range(1,302): tmp = "{'user':'alex-%s,'email':'alex%s@email ...
- Python中的日志处理
在日常项目中,总是需要记录下一些细小信息或者错误码.错误信息的,这个时候就需要进行日志的操作.python中用于日志创建.设置和记录等功能的模块,就是logging了,下面是对其基本使用方法的介绍: ...
- 494. Target Sum
You are given a list of non-negative integers, a1, a2, ..., an, and a target, S. Now you have 2 symb ...
- [转] 前后端分手大师——MVVM 模式
之前对 MVVM 模式一直只是模模糊糊的认识,正所谓没有实践就没有发言权,通过这两年对 Vue 框架的深入学习和项目实践,终于可以装B了有了拨开云雾见月明的感觉. Model–View–ViewMod ...
- 前端:Jquery 处理同一Name的Radio组时,绑定checked属性异常的问题.(已解决)
将: $("input[type=radio][name=optionsContractGroup][value=201]").attr("checked",t ...
- sharepoint2013 Restore-SPSite 报错,采用数据库还原
PS C:\Users\spadmin> Restore-SPSite http://hz0xw002049:8099 -Path D:\20170731MossSiteSP.bak -Forc ...