检测分割算法改进(篇五) 引入Swin Transformer做检测网络Backbone

本文详细解析了Swin Transformer如何作为检测网络的Backbone,包括Patch Merging、Patch Partition、Linear Embedding、W-MSA和SW-MSA等关键模块,以及相对位置偏移的计算。通过Swin Transformer,网络能够在减少计算量的同时实现信息交互,适用于目标检测任务。
摘要由CSDN通过智能技术生成

检测算法通常包括Backbone、Neck、Head等结构,屠榜的Swin Transformer当然也是可以被作为Backbone的,如下图所示:

在撸代码之前,需要对Swin-Transformer的各个模块有清晰的了解,下面首先是对每个模块的解析及整个网络结构的前向原理。需要注意一点,在Swin Transformer中,Patch需要理解为多通道的像素,即feater map上的一个像素点包含所有通道的值,而非一个token。


Patch Merging

  • 该模块和YOLOX或Yolov5中的Fcous模块是大差小不差。存在于St
  • 19
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Swin Transformer作为backbone在计算机视觉任务中具有很高的性能。它是一种基于Transformer网络架构,通过将输入图像分割成多个Patch,并使用Transformer模块对这些Patch进行处理来提取特征。Swin Transformer网络结构包括多个阶段(Stage),每个阶段都包含多个Swin Transformer块。 在Swin Transformer中,Patch Merging模块的作用是进行降采样,通过该模块后,特征图的形状会减小一倍,通道数会增加一倍。这个模块类似于YOLOX或Yolov5中的Fcous模块。Patch Merging模块存在于Stage2到Stage4中。 Swin Transformer的输入是一个H×W×3的图像,经过Patch Partition和Linear Embedding后,形状和通道维度会变为(H/4,W/4,48)。然后,类似于ResNet,不同的阶段对特征图进行降采样,形状缩小的同时通道数会扩展相同的倍数。这样的目的是为了获得更大的感受野和丰富每个特征点对应原图上的特征信息。 Swin Transformer一共有四个模型,从Tiny、Small、Basic到Large。以Swin-T为例,其中的concat4×4、96-d、LN操作代表Patch Partition和Linear Embedding操作,其和Patch Merging模块一样。其中,concat4×4表示将高和宽下采样四倍,96-d表示Linear Embedding将通道数变为96,LN表示layer norm。win.sz代表window size即窗口大小,dim 96代表通过Swin-Transformer Block输出的特征通道维度为96,head 3代表Multi-Head Self-attention的头数。 此外,Swin Transformer还利用相对位置索引矩阵来计算注意力,通过对索引矩阵进行一系列操作,得到相对位置偏置表,用于Attention计算中的B矩阵。这个表是网络训练过程中真正要训练的参数,且只要窗口大小是固定的,一元索引矩阵的值就是固定的。 综上所述,Swin Transformer作为backbone在计算机视觉任务中通过分割图像为Patch并使用Transformer模块进行特征提取,具有较高的性能和灵活性。 #### 引用[.reference_title] - *1* *2* *3* [检测分割算法改进() 引入Swin Transformer检测网络Backbone](https://blog.csdn.net/qq_42308217/article/details/122861881)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@会飞的毛毛虫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值