YOLO改进:密集连接扩张卷积模块RFEM
密集连接扩张卷积模块RFEM

该模块是由KCPNet from IEEE Transactions on Geoscience and Remote Sensing中提出。具体来说,输入特征图将经过三个不同空洞率(2,4,8)的空洞卷积,并依次进行通道拼接。该模块的优势在于,能够有效地捕获平衡的非局部上下文特征和局部目标特征,解决小目标局部语义缺失。如果F的分辨率是62*62,且感受野为1,那么R1、R2、R3、P的感受野分别是5、13、29、29。P的感受野达到F的一半大小,这将使得输出特征图包含足够的非局部背景信息。
RFEM模块已经由充足的研究,如:YOLO-FACEV2中的RFEM,其使用三个并联的空洞卷积融合不同尺度的特征信息。然而,KCPNet中提出的RFEM模块通过密集连接金字塔结构将原始的感受野与其他三个尺度的感受野进行叠加(concat)与重用(后续进一步的DConv和Conv),相比于ASPP中的RFEM,缓解了网络的退化问题。此外,其他的RFEM忽视了不同感受野的特征的主导地位与层次关系,导致初始特的泛滥,而KCPNet提出的RFEM保证了初始信息的明显优势。最后,其余的RFEM的通常只是串联或并联,对于串联结构而言,原始的特征将随着级联的卷积被不断稀释;对于并联结构,KCPNet提出的RFEM可以仅在空洞率为8的情况下,将感受野提高到29;而其余的RFEM要想达到相同的感受野尺寸,需要高达14的空洞率。
代码
class RFEM_KCPNet(nn.Module):
def __init__(self, c1, c2):
super(RFEM_KCPNet, self).__init__()
self.dconv1 = nn.Conv2d(in_channels=c1, out_channels=c1 // 2, kernel_size=3, dilation=2, padding=2)
self.dconv2 = nn.Conv2d(in_channels=c1 // 4, out_channels=c1 // 4, kernel_size=3, dilation=4, padding=4)
self.dconv3 = nn.Conv2d(in_channels=c1 // 4, out_channels=c1 // 4, kernel_size=3, dilation=8, padding=8)
self.conv1 = nn.Conv2d(in_channels=3 * c1 // 2, out_channels=c1 // 4, kernel_size=1)
self.conv2 = nn.Conv2d(in_channels=7 * c1 // 4, out_channels=c1 // 4, kernel_size=

文章探讨了YOLO中RFEM模块的改进版本,由KCPNet提出,通过密集连接和金字塔结构增强特征融合。尽管在某些实验中出现性能下降,但RFEM展示了捕捉平衡上下文和目标特征的能力。
最低0.47元/天 解锁文章





