PaddleDetection训练自己的(VOC)数据集

PaddleDetection训练自己的(VOC)数据集

简介:
PP-YOLO是PaddleDetection优化和改进的YOLOv3的模型,其精度(COCO数据集mAP)和推理速度均优于YOLOv4模型,PP-YOLO在COCO test-dev2017数据集上精度达到45.9%,在单卡V100上FP32推理速度为72.9 FPS, V100上开启TensorRT下FP16推理速度为155.6 FPS

一、项目说明

此项目基于PaddleDetection套件开发,基于PP-YOLO架构实现的目标检测模型

1)任务描述:使用PP-YOLO架构
2)数据说明:本项目数据集采用VOC格式数据集,以开源数据集印刷电路板(PCB)瑕疵数据集为例
3)本教程源码地址:
链接:https://pan.baidu.com/s/121AE_KZr3w4hcm3xzybu2g
提取码:30fo
fff

二、环境配置

操作系统 linux
python 3.6.5
paddlepaddle-gpu 1.8.4
CUDA 10.0
cuDNN 7.6
ppdet 0.0.4

三、项目结构

3.1源码项目结构:

3.2成品项目结构:
在这里插入图片描述

四、准备数据集

1、下载源码后,打开项目,在PaddleDetection/dataset目录下新建文件夹pcb

2、在PaddleDetection/dataset/pcb目录下新建文件夹Annotations、JPEGImages
在这里插入图片描述
3、将所有所有标注的XML文件放到dataset/pcb/Annotations目录下 如下图
在这里插入图片描述
4、将所有标注的图片放到dataset/pcb/ JPEGImages目录下,如下图
在这里插入图片描述
5、将PaddleDetection/create_list_name.py 移动到你新建的pcb文件夹下
在这里插入图片描述
6、执行成功会在dataset/pcb目录下会生成3个txt文件
在这里插入图片描述

五、修改配置文件

****修改configs/ppyolo/ppyolo.yml 和 configs/ppyolo/ppyolo_reader.yml****
	***5.1、修改configs/ppyolo/ppyolo.yml***

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5.2、修改configs/ppyolo/ppyolo_reader.yml
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5.3、将源码中的configs/ppyolo/ppyolo.yml 和 configs/ppyolo/ppyolo_reader.yml与5.1和5.2中的模板对比,修改后即完成配置。

六、开始训练

命令行中运行 python tools/train.py -c configs/ppyolo/ppyolo.yml --eval

在这里插入图片描述
训练过程中根据自己在ppyolo.yml中设置的snapshot_iter会间隔保存模型,本示例项目设置snapshot_iter为1000,所以每间隔1000步就保存一次模型。
根据自己在ppyolo.yml中设置的weights会指定路径保存模型,本示例项目设置weights为output/ppyolo/best_model
在这里插入图片描述

七、预测

PP-YOLO模型部署及推理benchmark需要通过tools/export_model.py导出模型后使用Paddle预测库进行部署和推理,可通过如下命令一键式启动。

7.1、导出模型
命令行执行命令:python tools/export_model.py -c configs/ppyolo/ppyolo.yml -o weights=output/ppyolo/best_model.pdparams
在这里插入图片描述
执行命令后 在output/ppyolo目录下生成infer_cfg.yml。到此处 模型导出工作已完成
在这里插入图片描述
在这里插入图片描述
7.2、预测推理
执行命令:python deploy/python/infer/py --model_dir=output/ppyolo --image_file=demo/test.jpg --use_gpu=True
在这里插入图片描述
在这里插入图片描述

版权声明:本文为CSDN博主「Apαche」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_46116553/article/details/118058651

Apαche

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

yolov5训练数据集划分

yolov5训练数据集划分 按照默认8:1:1划分训练集,测试集,验证集。 txt文件出现在imageset文件夹。 import os import randomtrainval_pe

深度学习之目标检测YOLOv5

一.简介 YOLOV4出现之后不久,YOLOv5横空出世。YOLOv5在YOLOv4算法的基础上做了进一步的改进,检测性能得到进一步的提升。虽然YOLOv5算法并没有与YOLOv4算法进行性能比较与分析&#xff0