项目简介
本项目是基于Pytorch实现的目标检测训练系统,聚焦于实现PP_YOLO(改进的YOLO算法)的目标检测功能。项目支持自定义数据集的锚框聚类、网络模型的训练和预训练,提供了训练和检测的完整流程。
项目的主要特性和功能
- 网络结构搭建:实现PP_YOLO的网络结构,支持自定义网络配置。
- 数据集处理:支持VOC格式的数据集,提供工具进行锚框的聚类和数据集的划分。
- 模型训练:提供完整训练流程,支持自定义训练参数和路径。
- 模型检测:提供检测脚本,支持加载训练好的模型进行目标检测。
安装使用步骤
假设用户已经下载了本项目的源码文件。
1. 环境准备
确保你的环境满足以下要求: - Windows10 - Python3.7 - Pytorch1.3 - CUDA10.0
2. 数据集准备
- 使用
labelimg
标注自己的数据集为VOC格式,或者使用现有的VOC格式数据集。 - 使用
kmeans_for_anchors.py
进行锚框聚类,获取数据的锚框。 - 使用
voc2yolo3.py
将数据集分为训练集和测试集。 - 使用
voc_annotation.py
获取数据的位置和信息。
3. 模型训练
- 修改
trains.py
中的路径为你的数据集路径。 - 运行
trains.py
进行模型训练。python python trains.py --anchors ./model_data/anchors.txt --classes ./model_data/class_name.txt --annotation ./my_train.txt
4. 模型检测
使用训练好的模型进行目标检测。
python
python detect.py --model_path ./models/Epoch22-Total_Loss18.8616-Val_Loss18.8762.pth --classes_path ./model_data/voc_classes.txt --anchors_path ./model_data/voc07_12anchors.txt
5. 下载预训练模型
你可以从以下链接下载预训练模型: 链接:https://pan.baidu.com/s/1Hm0awb9exJVbM39dQj7MxQ 提取码:yolo
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】