针对低分辨率或小目标的卷积-SPDConv

针对低分辨率或小目标的卷积-SPDConv

摘要

卷积神经网络在许多计算机视觉任务中取得了巨大成功。然而,在图像低分辨率目标较小任务上,他们的性能迅速下降。在本文中,我们指出,这根源于现有CNN架构中存在的一个有缺陷但常见的设计,即使用strided convolution和/或pooling layers,这导致细粒度信息的丢失和不够有效的特征表示的学习。为此,我们提出了一个新的CNN构建快, 称为SPD-Conv,取代每个strided convolution层和每个pool层(因为完全消除他们)。SPD-Conv由一个space-to-depth(SPD)层和一个non-strided convolution层组成,可以应用于大多数CNN架构。我们将这种新设计解释为两个最具代表性的计算机视觉任务:目标检测和图像分类,然后,我们通过将SPD-Conv应用于YOLOv5和ResNet创建了新的CNN架构。
代码地址: https://github.com/LabSAINT/SPD-Conv

引言

自从AlexNet提出以来,卷积神经网络在许多计算机视觉任务中表现出色。然而,所有这些CNN模型在训练和推断中都需要高质量的输入,例如:AlexNet最初是在227 X 227的清晰图片上进行训练和评估的,但是将图像分辨率降低为1/4和1/8后,其分类的准确性分别下降了14%和30%,类似也使用于VGG和ResNet,在目标检测的情况下,小目标检测是一项非常具有挑战性的任务,因为较小的目标本身分辨率较低,并且对于模型学习而言,上下文信息也受限制。此外,他们通常于同一图像中的大对象共存,大对象往往也在特征学习过程中占主导地位,从而使得小对象无法被检测到。
本文认为,现有CNN中存在的一个缺陷但常见的设计导致了性能下降,即,在CNN架构的早期层使用步幅卷积或池化,这种设计的不利影响通常不会表现出来,因为大多数研究的情况都是友好的,图像具有良好的分辨率,对象的大小适中。因此,存在着大量的冗余像素信息可以被卷积或者池化方便的跳过,模型仍然可以学习到良好的特征。然而,在更困难的任务中,当图像模糊或对象较小时,冗余信息的奢侈假设不在成立,当前的设计开始遭受详细信息和学习特征不足的损失。
为了解决这一问题,我们提出了一种CNN的新构建快,称为SPD-Conv 完全替代了下采样和池化。SPD-Conv是一个空间到深度层,仅跟随一个非步幅卷积层。SPD层对特征图X进行将采样,当保留了通道维度中的所有信息,因此没有信息损失,我们受到了图像转换技术的启发,该技术在将原始图像馈送到神经网络之前对其进行重新缩放,但我们将其广泛推广到网络内部和整个网络中的特征图的将采样,此外,我们在每个SPD之后添加了一卷积操作,使用科学系的参数减少通道数量,我们提出的方法即通用又统一,即SPD可以应用于大多数CNN架构,并且以相同的方式替代了步幅卷积和池化。
在这里插入图片描述

A New Building Block:SPD-Conv

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
论文地址:https://arxiv.org/pdf/2208.03641v1.pdf
在这里插入图片描述

附录

代码:

# SPD-Conv
import torch
import torch.nn as nn
class Spd(nn.Module):
    def __init__(self,dimension=1):
        super().__init__()
        self.d = dimension
    def forward(self,x):
        return torch.cat([x[...,::2,::2],x[...,1::2,::2],x[...,::2,1::2],x[...,1::2,1::2]],1)
data = torch.zeros(3,64,640,640)
con = Spd()
con(data).shape

在这里插入图片描述

  • 7
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: SPD-Conv是一种新的卷积神经网络(CNN)模块,它特别适用于处理低分辨率图像和小物体。SPD-Conv与传统的卷积步长和池化操作不同,它通过一种新颖的方式更好地处理这些特殊情况。 在处理低分辨率图像时,传统的卷积步长或池化操作可能会损失细节和重要信息。因为低分辨率图像具有更少的像素,卷积步长或池化操作可能会导致信息不足,从而影响图像的准确性和细节。 对于处理小物体,卷积步长或池化操作可能会导致物体信息丢失或变形。小物体的尺寸相对较小,如果使用较大的步长或池化操作,可能会将物体压缩成更小的尺寸,导致物体的形状和细节模糊。 而SPD-Conv模块通过引入更精细的卷积方式,能够更好地保留低分辨率图像和小物体的细节和信息。它通过增加卷积核的数量和改变卷积核的形状,使得网络可以更好地处理低分辨率图像和小物体。 此外,SPD-Conv还可以通过增加网络的深度和使用更多的激活函数来增强特征提取能力。这些特性使得SPD-Conv成为一种有助于低分辨率图像和小物体处理的有效模块。 总之,SPD-Conv是一种新的CNN模块,它通过新颖的卷积方式,有效地处理低分辨率图像和小物体。它能够更好地保留细节和信息,并提高准确性和细节的表现。这种新的技术有望在图像处理和目标检测等领域中发挥重要作用。 ### 回答2: SPD-Conv是一种新的CNN模块,它可以用于处理低分辨率图像和小物体。与传统的卷积神经网络不同,SPD-Conv模块不使用卷积步长或池化操作。 传统的卷积神经网络通常使用卷积步长来减小图像的尺寸,或使用池化操作来降低特征图的维度。然而,在处理低分辨率图像或小物体时,这些操作可能导致信息丢失或模糊,因为原始图像或物体的细节已经很有限。 SPD-Conv模块通过使用一种新的策略来解决这个问题。它的核心思想是保留尽可能多的原始信息,并且在学习时增强这些信息。 首先,SPD-Conv模块使用较小的卷积核来捕获图像或物体的细节。这种小的卷积核允许在不降低分辨率的情况下对图像进行处理,并保留更多的原始信息。 其次,SPD-Conv模块引入了一种新的注意力机制,该机制通过自适应地调整每个像素点的权重来增强图像或物体的重要细节。这种注意力机制可以根据具体任务进行学习和调整,以更好地突出低分辨率图像或小物体的特征。 最后,SPD-Conv模块还可以与其他常用的CNN模块结合使用,如残差连接和批归一化等,以进一步提升性能和稳定性。 总之,SPD-Conv模块是一种新的CNN模块,通过不使用卷积步长或池化操作,针对低分辨率图像和小物体的特点,保留更多的原始信息,并增强重要细节,从而在处理这些特定场景时取得更好的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值