Overview of DANet
code pytorch

经过dilated residual network 之后,特征图的尺寸变为输入图像的 1/8
1.Position attention module

-
将局部特征A (CxHxW)通过卷积层 生成 B(CxHxW)、C(CxHxW),将B、C reshape成 CxN(N=HxW),将C转置之后与B进行相乘,再通过Softmax层得到S(NxN)

sji 用来衡量第i位置对第j位置的影响 -
将矩阵A(CxHxW)通过卷积层 生成 D(CxHxW),并将其reshape成 CxN, 将D与S的转置相乘,然后将结果reshape成 CxHxW ,最后将结果乘以系数α与A进行逐像素相加。

2.Channel attention module

每个通道图都可以视为特定类的响应,并且不同的语义响应相互关联。 我们构建了一个通道注意力模块来显式地建模通道之间的相互依赖性。
- 直接计算通道特征图X(CxC):先将Areshape成 CxN, 通过A的转置与A 进行矩阵的乘法,再将结果使用softmax得到X (不先将A进行卷积运算)

xji 用来衡量第i个通道对第j个通道的影响。 - 将X的转置和A之间进行矩阵乘法,并将其结果reshape为C×H×W。 然后,将结果乘以比例参数β并用A进行逐元素求和运算,以获得最终输出E(C×H×W)

DANet(Dual Attention Network)是一种用于图像分割的深度学习模型,它包含位置注意力模块和通道注意力模块。位置注意力模块通过计算特征图中各位置间的相互影响,增强局部特征的相关性;通道注意力模块则建模不同通道间的关系,提升特征表达能力。
562

被折叠的 条评论
为什么被折叠?



