项目简介
本项目基于Pytorch实现了CenterNet目标检测模型。CenterNet算法将目标检测问题转化为关键点检测和回归问题,通过预测目标的中心点及其宽高来实现目标检测。项目提供了模型训练、预测和评估等完整功能。
项目的主要特性和功能
- 模型支持:可使用ResNet50和HourglassNet作为主干网络。
- 数据集支持:支持VOC和COCO数据集,有对应的下载和处理脚本。
- 训练功能:支持多种学习率下降法(如step、cos)和优化器(如adam、sgd),支持多GPU训练。
- 预测功能:支持单张图片和视频预测,还有批量预测功能。
- 评估功能:能计算mAP(平均精度),并给出详细评估报告。
- 可视化功能:可对训练过程中的损失和精度曲线,以及预测结果进行可视化。
安装使用步骤
1. 环境准备
确保安装以下依赖: - Python 3.6+ - PyTorch 1.2.0 - torchvision - numpy - matplotlib - opencv-python
2. 下载项目源码
假设用户已经下载了本项目的源码文件。
3. 数据集准备
- VOC数据集:下载VOC07+12数据集,解压后放于项目根目录。
- COCO数据集:下载COCO2017数据集,解压后放于项目根目录。
4. 训练模型
训练VOC数据集
- 修改
voc_annotation.py
中的annotation_mode=2
,运行生成2007_train.txt
和2007_val.txt
。 - 直接运行
train.py
开始训练。
训练COCO数据集
- 修改
coco_annotation.py
中的参数,运行生成训练和验证集的txt文件。 - 修改
train.py
中的参数,指定COCO数据集路径,开始训练。
5. 模型预测
- 修改
centernet.py
中的model_path
和classes_path
,指向训练好的权重文件和类别文件。 - 运行
predict.py
,输入图片路径进行预测。
6. 模型评估
- 修改
centernet.py
中的model_path
和classes_path
,指向训练好的权重文件和类别文件。 - 运行
get_map.py
,计算并输出mAP评估结果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】