研究定位
Backbone 把像素变成分层特征。浅层分辨率高、细节多;深层分辨率低、语义强。检测与分割需要把二者结合。
[B,3,H,W] → C3 [B,C3,H/8,W/8]
→ C4 [B,C4,H/16,W/16]
→ C5 [B,C5,H/32,W/32]
→ FPN 多尺度融合
结构设计线索
DenseNet:复用所有前层特征
xl = Hl([x0, x1, …, xl − 1])
优点是梯度传播与特征复用;代价是频繁拼接和通道增长,需要 growth rate 与 transition layer 控制。
VoVNet:一次性聚合
OSA 模块让卷积层顺序计算,最后统一拼接,减少 DenseNet 式频繁拼接的内存访问。它提醒我:FLOPs 低不一定真实延迟低。
ACNet / DBB:训练多分支,部署单卷积
训练时用 3×3、1×1、非对称卷积等分支提升优化和表达;部署前将线性分支与 BatchNorm 等价融合成一个卷积。非线性激活不能随意跨分支折叠。
RFB-Net:多个感受野一起看
不同卷积核和膨胀率形成多尺度感受野,再融合特征。这里的“多尺度”既可以指不同特征图分辨率,也可以指同一层的有效感受野。
研究小结
我先看五点:下采样发生在哪里、通道如何变化、是否有残差或密集连接、怎样融合多尺度、真实瓶颈是计算还是内存访问。这样就不会只背模块名字。
研究延伸
Backbone 的比较应尽量脱离“模块名字”。后续可以围绕三个变量整理:感受野如何扩大、特征复用如何发生、多尺度信息在哪里融合。DenseNet、VoVNet、DBB 和 RFB-Net 可以作为四种不同结构假设的样本。
如果继续实验,建议固定检测或分割 head,只替换 backbone,记录 FLOPs、参数量、实际延迟、特征图分辨率和小目标表现。这样才能区分“理论计算量”与“硬件上真实速度”。