改进的YOLOv9+gui+单目测距与速度测量-pyqt

YOLOv9的最新创新点,截至2024年2月26日,公开信息中提到YOLOv9在目标检测领域实现了SOTA(state-of-the-art)性能,并且在实时性方面表现优秀,超过了RT-DETR、YOLOv8等先前版本和竞品。然而,具体的创新点细节没有直接提供。

gui界面 与交互式选择按钮!如下

YOLO系列模型通常会在以下几个方面进行迭

代和创新:

  • 网络结构优化:可能会引入新的或改进的模块,比如E-ELAN模块,或者对Backbone架构进行改进以增强特征提取能力。
  • 缩放方法:YOLOv7中提出的基于拼接模型的缩放方法可能也被应用到YOLOv9中,使得模型能够更灵活地适应不同的计算资源和精度需求
  • 全局上下文建模:借鉴Global Context Block或其他全局注意力机制来提升对图像全局信息的利用,从而提高检测精度。
  • 重参数化卷积(RepConvN):YOLOv7中使用了重参数化卷积应用于残差模块,YOLOv9可能进一步发展了这一技术。
  • 轻量化与效率:结合Ghost卷积、转置卷积以及高效通道注意力机制如ECA等实现模型的轻量化和加速,同时保持甚至提升检测性能。
  • 信息损失减少:针对输入数据逐层处理导致的信息丢失问题,YOLOv9可能会提出新的策略来保留或恢复重要信息。

至于YOLOv9的实际效果图,由于没有具体资料展示,通常这类深度学习目标检测模型的效果图会包括多个示例,显示模型对不同场景下各类物体的准确检测框及其类别标注。

性能至于YOLOv9的实际效果图,由于没有具体资料展示,通常这类深度学习目标检测模型的效果图会包括多个示例,显示模型对不同场景下各类物体的准确检测框及其类别标注。

在MS COCO数据集上的表现

模型 测试图像尺寸 APval(所有IoU) AP50val(IoU=0.5) AP75val(IoU=0.75) 参数量(M) FLOPs(G)
YOLOv9-S 640 46.8% 63.4% 50.7% 7.2 26.7
YOLOv9-M 640 51.4% 68.1% 56.1% 20.1 76.8
YOLOv9-C 640 53.0% 70.2% 57.8% 25.5 102.8
YOLOv9-E 640 55.6% 72.8% 60.6% 58.1 192.5

有用链接

展开

安装指南

推荐使用Docker环境

展开

评估方法

评估YOLOv9模型

复制代码
python val_dual.py --data data/coco.yaml --img 640 --batch 32 --conf 0.001 --iou 0.7 --device 0 --weights './yolov9-c.pt' --save-json --name yolov9_c_640_val

gui界面 与交互式选择按钮!

评估gelan模型

复制代码
# python val.py --data data/coco.yaml --img 640 --batch 32 --conf 0.001 --iou 0.7 --device 0 --weights './gelan-c.pt' --save-json --name gelan_c_640_val

执行上述命令后,您将得到以下结果:

复制代码
平均精度 (AP) @[ IoU=0.50:0.95 | 区域=全部 | 最大检测数=100 ] = 0.530
平均精度 (AP) @[ IoU=0.50 | 区域=全部 | 最大检测数=100 ] = 0.702
平均精度 (AP) @[ IoU=0.75 | 区域=全部 | 最大检测数=100 ] = 0.578
平均精度 (AP) @[ IoU=0.50:0.95 | 区域=小 | 最大检测数=100 ] = 0.362
平均精度 (AP) @[ IoU=0.50:0.95 | 区域=中 | 最大检测数=100 ] = 0.585
平均精度 (AP) @[ IoU=0.50:0.95 | 区域=大 | 最大检测数=100 ] = 0.693
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=全部 | 最大检测数=1 ] = 0.392
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=全部 | 最大检测数=10 ] = 0.652
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=全部 | 最大检测数=100 ] = 0.702
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=小 | 最大检测数=100 ] = 0.541
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=中 | 最大检测数=100 ] = 0.760
平均召回率 (AR) @[ IoU=0.50:0.95 | 区域=大 | 最大检测数=100 ] = 0.844

训练准备

bash scripts/get_coco.sh

下载并获取MS COCO数据集的图片(训练、验证、测试)及标签。如果您之前使用过YOLO的不同版本,强烈建议删除train2017.cache和val2017.cache文件,并重新下载标签。

单GPU训练

训练YOLOv9模型

复制代码
python train_dual.py --workers 8 --device 0 --batch 16 --data data/coco.yaml --img 640 --cfg models/detect/yolov9-c.yaml --weights '' --name yolov9-c --hyp hyp.scratch-high.yaml --min-items 0 --epochs 500 --close-mosaic 15

训练gelan模型

python train.py --workers 8 --device 0 --batch 32 --data data/coco.yaml --img 640 --cfg models/detect/gelan-c.yaml --weights '' --name gelan-c --hyp hyp.scratch-high.yaml --min-items 0 --epochs 500 --close-mosaic 15

多GPU训练

训练YOLOv9模型

复制代码
python -m torch.distributed.launch --nproc_per_node 8 --master_port 9527 train_dual.py --workers 8 --device 0,1,2,3,4,5,6,7 --sync-bn --batch 128 --data data/coco.yaml --img 640 --cfg models/detect/yolov9-c.yaml --weights '' --name yolov9-c --hyp hyp.scratch-high.yaml --min-items 0 --epochs 500 --close-mosaic 15

训练gelan模型

python -m torch.distributed.launch --nproc_per_node 4 --master_port 9527 train.py --workers 8 --device 0,1,2,3 --sync-bn --batch 128 --data data/coco.yaml --img 640 --cfg models/detect/gelan-c.yaml --weights '' --name gelan-c --hyp hyp.scratch-high.yaml --min-items 0 --epochs 500 --close-mosaic 15

最后,↓↓↓↓↓↓↓

相关推荐
AI程序员12 分钟前
MCP Apps 能直接返回 HTML,为什么还需要 A2UI?
人工智能·agent·mcp
思考着亮12 分钟前
1.MCP
人工智能
MindUp17 分钟前
企业私有化文件管理系统选型实录:从部署架构到AI能力的技术调研笔记
人工智能·笔记·架构
长江后浪博客19 分钟前
无人机AI识虫:用“空中巡检 + GIS地图 + AI识别”解决大规模种植虫害问题
人工智能·无人机·智慧农业·植保无人机·无人机ai识虫·空中巡检·gis地图
ITresearchGuest24 分钟前
AI 是怎么操作浏览器的——browser use 实现原理
人工智能
悟天特斯25 分钟前
智慧楼宇楼宇自控系统:从孤立控制到协同优化的BAS架构演进
人工智能·物联网·架构
法狗狗技术团队30 分钟前
万息投标标书审查功能介绍:AI如何辅助检查投标文件?
人工智能·招标·投标·标书·标书检查·标书审查·标书检查工具
wangchunyu11436 分钟前
Cursor介绍和安装说明
人工智能
LadiesAndGentlemen44 分钟前
环球GeoAI-遥感VLM|2026-08-31|More with Less:通用 VLM 不换架构,也能在遥感基准上打平专用模型
人工智能·神经网络·目标检测·自然语言处理·aigc
小道士写程序1 小时前
自然语言处理NLP - 开篇 什么是 NLP
人工智能·自然语言处理