シーンセグメンテーションのためのデュアルアテンションネットワーク(#pic_center)

DANetの概要

コードpytorch
ここに画像の説明を挿入
が拡張された残差ネットワークを通過した、特徴マップのサイズは入力画像の1/8になります

1.位置注意モジュール

ここに画像の説明を挿入

  • ローカルフィーチャーA(CxHxW)は、B(CxHxW)とC(CxHxW)を生成するために畳み込み層を介して生成され、BとCはCxN(N = HxW)に再形成されます。Cを転置した後、それをBで乗算し、Softmax層を渡します。 S(NxN)
    ここに画像の説明を挿入
    s ji取得して、j番目の位置に対するi番目の位置の影響を測定します。

  • 行列A(CxHxW)は、畳み込み層を介して生成され、D(CxHxW)を生成し、それをCxNに再形成し、DとSの転置を乗算し、結果をCxHxWに再形成し、最後に結果に係数αとAを乗算します。ピクセルごとに追加します。
    ここに画像の説明を挿入

2.Channelアテンションモジュール

ここに画像の説明を挿入
各チャネル図は特定のタイプの応答と見なすことができ、異なるセマンティック応答は互いに関連しています。チャネル間の相互依存を明示的にモデル化するために、チャネルアテンションモジュールを作成しました。

  • チャネルフィーチャーマップX(CxC)を直接計算します。まず、AreshapeをCxNに変換し、行列にAの転置とAを乗算します。次に、softmaxを使用してXを取得します(Aの畳み込み演算なし)
    ここに画像の説明を挿入
    x jiは測定に使用されますj番目のチャネルに対するi番目のチャネルの影響。
  • XとAの転置の行列乗算を実行し、結果をC×H×Wに再形成します。次に、結果に比例パラメータβを乗算し、Aで要素ごとの合計演算を実行して、最終出力E(C×H×W)を取得します。
    ここに画像の説明を挿入
12件のオリジナル記事を公開しました 賞賛されました4 訪問1266

おすすめ

転載: blog.csdn.net/qq_36321330/article/details/105255235
おすすめ