这个是在YOLO V10源码的基础上实现的。我只是在源码的基础上做了些许的改动。
YOLO V10源码:YOLO V10源码
YOLOv10是清华大学的研究人员在Ultralytics Python包的基础上,引入了一种新的实时目标检测方法,解决了YOLO 以前版本在后处理和模型架构方面的不足。通过消除非最大抑制(NMS)和优化各种模型组件,YOLOv10 在显著降低计算开销的同时实现了最先进的性能。大量实验证明,YOLOv10 在多个模型尺度上实现了卓越的精度-延迟权衡。
正是因为YOLOv10是是在Ultralytics的基础上开发而来,所有可以轻松地按照V8 OBB中的代码来修改。修改一个yaml文件和一个脚本脚本代码就可以实现YOLO V10 OBB(下次有空再截图说明)
YOLO V10X OBB的训练结果
没有预训练权重可以加载,精度没有V8X高,不知道使用预训练权重之后会不会提点,等有空的时候再试试。很多人都想着把第一次训练得到的权重作为预训练权重加载进模型训练第二次,觉得这样或许可以提高精度,但是这样是行不通的,只会降低精度。只有利用包含丰富场景和大量旋转目标样本的数据集(比如 DOTA )对构建的 YOLO v10 OBB 模型进行预训练,得到的权重才有使用价值,因为模型学习到了通用特征,这些通用特征保存在预训练权重中。在使用预训练权重训练时,通过特征迁移,可以将预训练模型学习到的旋转目标特征迁移至目标提取任务中,提升模型对目标检测的精度。
推理结果从肉眼来看和V8X OBB似乎没有太大差异,V8X OBB中没有检测出的农业大棚,V10X OBB可以检测出来(大家可以看下面的对比图)。下面是V10X OBB的推理结果:
下面是V8X OBB的推理结果:
小白一通乱改的,难免有错误或者遗漏的地方,欢迎交流指正