Windows下使用Yolov3(GPU)训练+测试自己的数据集
Windows下使用Yolov3(GPU)训练+测试自己的数据集
1、配置Yolov3
参考:Windows下使用darknet.exe跑通Yolov3
Window10+VS2017+CUDA10.0+OpenCV3.2.0配置Yolov3生成darknet.exe
2、制作VOC数据集
参考:Labelimg制作数据集
制作完成的数据集如下:
3、将VOC数据集转换成yolov3所需的txt数据集文件
方法(1):在使用labeimg制作数据集时将VOC格式改为YOLO格式,保存时自动生成txt文件。
方法(2):
将第2步制作的VOCdevkit2007文件夹拷贝到..\darknet-master\build\darknet目录下。将..\darknet-master\scripts目录下的voc_label.py文件拷贝到..\darknet-master\build\darknet\VOCdevkit2007目录下,并重命名为voc_label_mine.py,打开进行如下修改。
# 第7行修改所需sets
sets=[('2007', 'train'), ('2007', 'val'), ('2007', 'test')]# 第9行修改为自己的类别
classes = ["ali", "ddg1000", "jg3", "jilong"]# 第26、27行修改路径,可改为绝对路径in_file = open('VOC%s/Annotations/%s.xml'%(year, image_id))out_file = open('VOC%s/labels/%s.txt'%(year, image_id), 'w')# 第48、49、50行修改路径,可改为绝对路径if not os.path.exists('VOC%s/labels/'%(year)):os.makedirs('VOC%s/labels/'%(year))image_ids = open('VOC%s/ImageSets/Main/%s.txt'%(year, image_set)).read().strip().split()# 第53行修改路径,可改为绝对路径list_file.write('%s/VOC%s/JPEGImages/%s.jpg\n'%(wd, year, image_id))
完成后在VOCdevkit2007文件夹中生成如下文件:(txt文件中为对应图片的绝对路径)
在VOC2007文件夹中生成labels文件:(labels文件中为所有图片的xml文件转成的txt文件)
4、下载预训练权重
https://github.com/AlexeyAB/darknet
http://pjreddie.com/media/files/darknet53.conv.74
下载完成后存放在..\darknet-master\build\darknet\x64目录下新建的weights_pr文件夹中。
5、修改文件
(1)修改网络配置文件,..\darknet-master中的Makefile
(2)打开..\darknet-master\build\darknet\x64\data中的voc.data
classes= 4 # 修改为类别数
train = E:\Yolov3\darknet-master\build\darknet\VOCdevkit\2007_train.txt # 修改为文件所在绝对路径
valid = E:\Yolov3\darknet-master\build\darknet\VOCdevkit\2007_test.txt # 修改为文件所在绝对路径
#difficult = data/difficult_2007_test.txt
names = data/voc.names
backup = E:\Yolov3\darknet-master\build\darknet\x64\results_mine # 新建results_mine文件夹存放训练好的权重文件
(3)打开..\darknet-master\build\darknet\x64\data中的voc.names(修改为自己的类别)
(4)打开..\darknet-master\build\darknet\x64中的yolov3-voc.cfg
# 第1-7行
[net]
# Testing
# batch=1
# subdivisions=1
# Training
batch=64 # 控制训练时的batchsize
subdivisions=32# 第20行修改迭代次数
max_batches = 50200# 第605、689、773行
filters=27 # 修改为3×(5+类别数)# 第611、695、779行
classes=4 # 修改为类别数# 第616、700、784行
random=1 # 多尺度输出为1,显存小时改为0关闭
6、开始训练
打开cmd,cd到..\darknet-master\build\darknet\x64目录下,在此目录下新建results_mine文件夹,输入命令:
darknet.exe detector train .\data\voc.data yolov3-voc.cfg .\weights_pr\darknet53.conv.74 .\results_mine
每迭代1000次在results_mine中生成一个权重文件。
7、测试
打开cmd,cd到..\darknet-master\build\darknet\x64目录下,输入命令:
(yolov3-voc_21000.weights为results_mine文件夹中,训练生成的权重文件之一)
darknet.exe detector test data\voc.data yolov3-voc.cfg results_mine\yolov3-voc_21000.weights
按照提示输入测试图片的绝对路径:
参考:
Yolov3:win10下训练自己的数据(GPU版)(详细步骤)
win10下YOLO v3训练自己的数据集
Yolov3参数理解
Windows下使用Yolov3(GPU)训练+测试自己的数据集相关推荐
- Windows 下使用 nmap ncat 命令测试 UDP 端口连接
Windows 下使用 nmap ncat 命令测试 UDP 端口连接_allway2的博客-CSDN博客_windows如何测试udp端口 下载windows版nmap cd C:\Program ...
- Windows下通过c++调用训练好的tf模型
主要参考:Windows下用c++来调用tensorflow训练好的模型 过程与参考博客基本一致,这里主要记录一下我遇到的一些问题 问题1:测试模型的py文件 在pycharm中报错显示 Failed ...
- windows 下用开源流媒体压力测试工具 rtmpstress 测试RTMP媒体服务器负载性能
最近笔者的朋友需要部署流媒体服务作运营,从国外购买了几套流媒体服务器软件,该流媒体服务器软件是基于java开发的,他向笔者咨询,如何检测该流媒体服务器软件是否能支持1000以上并发,笔者建议找一个RT ...
- windows下delf配置:delf测试(三)
windows下delf配置:基础环境(一) windows下delf配置:delf环境(二) 1.准备 oxbuildings创建data data/oxford5d_images (放影像) da ...
- 【目标检测实验系列】使用yolov3 spp训练西工大遥感数据集NWPU VHR-10(包括如何将NWPU VHR-10转为VOC格式和yolov3 spp实验调试的详细步骤,且附上训练完的权重文件)
目录 1. 文章主要内容 2. 西工大数据集转换为VOC格式数据集 2.1 VOC数据集结构 2.2 西工大数据集 2.3 转换格式 2.3.1 构建与VOC类似的数据集文件结构(文件夹名可以自定义) ...
- 【MMDetection3D】环境搭建,使用PointPillers训练测试可视化KITTI数据集
文章目录 前言 3D目标检测概述 KITTI数据集简介 MMDetection3D 环境搭建 数据集准备 训练 测试及可视化 绘制损失函数曲线 参考资料 前言 2D卷不动了,来卷3D,之后更多地工作会 ...
- MMAction2学习笔记 使用C3D训练测试自己的数据集
新手上路,记录一下自己的学习过程,希望也能对你有所帮助. 1.数据集准备 参考官网给出的数据集准备教程 https://github.com/open-mmlab/mmaction2/blob/mas ...
- windows 下 TensorFlow(GPU 版)的安装
windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速 0. 环境 OS:Windows 10,64 bit: 显卡:NVIDIA GeFor ...
- windows下,Anaconda安装GPU版本的tensorflow
文章目录 前言 一.查看windows的CUDA版本 二.使用步骤 1.各个GPU版本tensorflow对应的CUDA版本 2.安装对应的版本的CUDA,我这里选择安装cuda11.0的 2.安装对 ...
最新文章
- 二进制计算机课教案,计算机与二进制教案.pdf
- 【正一专栏】齐达内能熬过2018年的春天吗?
- android控件的对齐方式(转)
- WordCount by C# 结对编程
- vtune mysql user_intel vtune 介绍、安装和使用
- 尤大直播分享:vue3生态进展和展望
- linux微信公众号报警,zabbix报警媒介,微信报警,邮件报警
- 前5月全国快递业务量累计完成396.5亿件 同比增50.1%
- The following tasks did not complete: first Did you forget to signal async completion?
- 【热门技术】三种SEO方式
- 很多人问中国网络安全行业怎么样?这篇文看完让你彻底了解中国网络安全行业的全景
- 联想电脑进入BIOS曾经走过的“坑”
- 电脑桌面云便签怎么将界面最小化?
- 【自然语言处理】【实体匹配】PromptEM:用于低资源广义实体匹配的Prompt-tuning
- 第三篇 ME909s-821设备描述符分析
- DEV 报表设计分组
- 八十年代曾经的十大经典zz
- 中国“互联网+”大学生创新创业大赛“的实施方案及评审规则
- 数据库篇-mysql主备搭建
- spring事务失效了? @Transactional不管用了 ?看看这些@Transation的坑