💡💡💡本文原创自研改进:提出新颖的注意力DSAM(Deformable Bi-level Spatial Attention Module),创新度极佳,适合科研创新,效果秒杀CBAM,Channel Attention+Spartial Attention升级为新颖的 Deformable Bi-level Attention+Spartial Attention
💡💡💡BRA注意力问题点:由可变形点选择的键值对缺乏语义相关性。BiFormer中的查询感知稀疏注意力旨在让每个查询聚焦于top-k路由区域。然而,在计算注意力时,选定的键值对受到太多无关查询的影响,减弱了对更重要查询的注意力。
💡💡💡本文改进:结合C2PSA进行二次创新;
DSAM 结合C2PSA | 亲测在遥感小目标车辆检测涨点,原始mAP50为0.879提升至0.883,对比实验yolov10n 0.824
改进结构图
1.小目标检测介绍
1.1 小目标定义
1)以物体检测领域的通用数据集COCO物体定义为例,小目标是指小于32×32个像素点(中物体是指32*32-96*96,大物体是指大于96*96);
2)在实际应用场景中,通常更倾向于使用相对于原图的比例来定义:物体标注框的长宽乘积,除以整个图像的长宽乘积,再开根号,如果结果小于3%,就称之为小目标;
1.2 难点
1)包含小目标的样本数量较少,这样潜在的让目标检测模型更关注中大目标的检测;
2)由小目标覆盖的区域更小,这样小目标的位置会缺少多样性。我们推测这使得小目标检测的在验证时的通用性变得很难;
3)anchor难匹配问题。这主要针对anchor-based方法,由于小目标的gt box和anchor都很小,anchor和gt box稍微产生偏移,IoU就变得很低,导致很容易被网络判断为negative sample;
4)它们不仅仅是小,而且是难,存在不同程度的遮挡、模糊、不完整现象;
等等难点
参考论文:
2.遥感小目标车辆检测数据集
数据集大小:训练集2100张,验证集900
细节图
3.YOLO11介绍
Ultralytics YOLO11是一款尖端的、最先进的模型,它在之前YOLO版本成功的基础上进行了构建,并引入了新功能和改进,以进一步提升性能和灵活性。YOLO11设计快速、准确且易于使用,使其成为各种物体检测和跟踪、实例分割、图像分类以及姿态估计任务的绝佳选择。
结构图如下:
3.1 C3k2
C3k2,结构图如下
C3k2,继承自类C2f,其中通过c3k设置False或者Ture来决定选择使用C3k还是Bottleneck
实现代码ultralytics/nn/modules/block.py
3.2 C2PSA介绍
借鉴V10 PSA结构,实现了C2PSA和C2fPSA,最终选择了基于C2的C2PSA(可能涨点更好?)
实现代码ultralytics/nn/modules/block.py
3.3 11 Detect介绍
分类检测头引入了DWConv(更加轻量级,为后续二次创新提供了改进点),结构图如下(和V8的区别):
实现代码ultralytics/nn/modules/head.py
4.原理介绍
源码链接:
4.1.CBAM:通道注意力和空间注意力的集成者
轻量级的卷积注意力模块,它结合了通道和空间的注意力机制模块
上图可以看到,CBAM包含CAM(Channel Attention Module)和SAM(Spartial Attention Module)两个子模块,分别进行通道和空间上的Attention。这样不只能够节约参数和计算力,并且保证了其能够做为即插即用的模块集成到现有的网络架构中去。
4.2 原理介绍
论文:
摘要:具有各种注意力模块的视觉变换器在视觉任务上展现出了卓越的性能。虽然在图像分类中使用稀疏自适应注意力(如DAT)取得了显著成果,但在针对语义分割任务进行微调时,由可变形点选择的键值对缺乏语义相关性。BiFormer中的查询感知稀疏注意力旨在让每个查询聚焦于top-k路由区域。然而,在计算注意力时,选定的键值对受到太多无关查询的影响,减弱了对更重要查询的注意力。为解决这些问题,我们提出了可变形双级路由注意力(DBRA)模块,该模块使用代理查询优化键值对的选择,并增强了注意力图中查询的解释性。基于此,我们引入了可变形双级路由注意力变换器(DeBiFormer),这是一种采用DBRA模块构建的新型通用视觉变换器。DeBiFormer已在包括图像分类、目标检测和语义分割在内的多种计算机视觉任务上得到验证,其有效性得到了强有力的证明。
为了提高查询的注意力效率,我们提出了可变形双级路由注意力(DBRA),这是一种用于视觉识别的注意力内注意力架构。在DBRA的过程中,第一个问题是如何定位可变形点。我们利用了[47]中的观察结果,即注意力有一个偏移网络,它以查询特征作为输入,并为所有参考点生成相应的偏移量。因此,候选的可变形点会向重要区域移动,具有高度的灵活性和效率,以便捕获更多信息丰富的特征。第二个问题是如何从语义相关的键值对中聚合信息,然后将这些信息广播回查询。因此,我们提出了一种注意力内注意力架构,该架构如上所述,向可变形点移动,作为查询的代理。当为可变形点选择键值对时,我们使用[56]中的观察结果,通过关注top-k路由区域来选择一小部分最语义相关的键值对,这些键值对是某个区域仅需要的。然后,在选择了语义相关的键值对之后,我们首先应用一个以可变形点查询为条件的token到token的注意力机制。接着,我们应用第二个token到token的注意力机制将信息广播回查询,在这个机制中,可变形点作为键值对被设计来代表一部分语义区域中最重要的点。
描述了一种名为"Deformable Bi-level Routing Attention"(可变形双级路由注意力)的详细架构。该架构包括以下几个部分:
5.如何魔改提升遥感小目标检测精度
5.1 原始网络性能
实验结果如下:
原始mAP50为0.879
YOLO11 summary (fused): 238 layers, 2,582,347 parameters, 0 gradients, 6.3 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 29/29 [00:24<00:00, 1.20it/s]
all 900 6917 0.888 0.829 0.879 0.333
5.2 YOLOv10对比实验
原始YOLOv10n结果如下:
原始mAP50为 0.824
YOLOv10n summary (fused): 285 layers, 2694806 parameters, 0 gradients, 8.2 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 29/29 [00:24<00:00, 1.19it/s]
all 900 6917 0.833 0.754 0.824 0.302
5.3 DSAM 结合C2PSA二次创新
原始mAP50为0.879提升至0.883,对比实验yolov10n 0.824
YOLO11-C2PSA_DSAM summary (fused): 318 layers, 3,113,555 parameters, 0 gradients, 15.7 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 29/29 [00:26<00:00, 1.09it/s]
all 900 6917 0.883 0.822 0.883 0.341
结构图:
源码链接: