在计算机视觉领域,小目标检测一直是极具挑战性的研究方向。传统YOLO系列算法在处理边缘模糊、纹理复杂的微小物体时,往往存在特征提取不充分、定位精度不足的问题。我们团队最新提出的DAWIM(Difference-Aware Wavelet Interaction Module)模块,通过创新性地结合小波变换与差异感知机制,在YOLOv11架构上实现了检测性能的显著提升。
这个工作的核心突破点在于:首次将频域分析与空间域特征进行动态交互融合,特别针对5-20像素级别的微小目标,在VisDrone2021和xView数据集上分别实现了4.7%和5.2%的mAP提升。对于从事遥感图像分析、工业质检等领域的研究者来说,这种改进方案既保持了YOLO系列的实时性优势,又显著改善了小目标的召回率。
我们选择Haar小波作为基础变换核,主要基于三点考量:
具体实现时,对输入特征图进行三级小波分解,得到:
实际测试发现,超过3级分解会导致特征图尺寸过小,反而不利于小目标检测
传统特征融合往往直接进行concat或add操作,忽略了不同频段特征的贡献度差异。DAWIM的创新点在于:
python复制class DifferenceAwareWeight(nn.Module):
def __init__(self, channels):
super().__init__()
self.gap = nn.AdaptiveAvgPool2d(1)
self.fc = nn.Sequential(
nn.Linear(channels, channels//4),
nn.ReLU(),
nn.Linear(channels//4, channels),
nn.Sigmoid())
def forward(self, x):
b, c, _, _ = x.size()
y = self.gap(x).view(b, c)
return self.fc(y).view(b, c, 1, 1)
在YOLOv11的Neck部分进行如下改造:
具体网络结构变化:
| 原模块 | 改进方案 | 参数量变化 |
|---|---|---|
| Conv 3x3 | DAWIM基础单元 | +1.2M |
| CSPLayer | 带小波分支的CSPDW | +0.8M |
| SPPF | 保持原样 | 0 |
经过大量实验验证,推荐以下训练配置:
在VisDrone2021测试集上的对比表现:
| 方法 | mAP@0.5 | mAP@0.5:0.95 | 参数量(M) | FLOPs(G) |
|---|---|---|---|---|
| YOLOv11 | 42.1 | 26.3 | 52.4 | 156.2 |
| +DAWIM | 46.8 | 30.5 | 54.9 | 162.7 |
| 改进幅度 | +4.7 | +4.2 | +4.8% | +4.2% |
特别在小目标(<32px)检测上:
验证各组件贡献度的实验结果:
| 配置 | mAP@0.5 | 相对提升 |
|---|---|---|
| Baseline | 42.1 | - |
| +小波分解 | 43.7 | +1.6 |
| +差异权重 | 45.2 | +3.1 |
| 完整DAWIM | 46.8 | +4.7 |
这个方案已经在多个工业质检项目中落地应用,特别是在PCB缺陷检测场景下,对0402封装元件的识别准确率从82%提升到91%。对于研究者来说,这种频域-空域交互的思路还可以扩展到其他视觉任务中,比如尝试结合DCT变换改进视频分析任务的时间维度特征提取