Semantic Segmentation using
Vision Transformers:
A survey
Hans Thisanke, Chamli Deshan, Kavindu Chamith, Sachith Seneviratne,
Rajith Vidanaarachchi, Damayanthi Herath
Engineering Applications of Artificial Intelligence 2023
水野翼(名工大玉木研)
2024/4/18
概要
nSemantic Segmentation [Zheng+, CVPR2021]
• 画像の各ピクセルにクラスラベルを割り当て
nVision Transformer (ViT) [Dosovitskiy+, ICLR 2021]
• Transformer [Vaswani+, NeurIPS2017]をそのまま画像に適用
• CNNに依存しない
• 課題:汎用的なバックボーンではなく,
Prediction-Taskに直接適用不可
n本論文
• Semantic Segmentationに使用できる
ViTアーキテクチャについて議論
• どのようにして課題を解決したか
Semantic Segmentationの応用
nリモートセンシング
• 物理的に接触せず情報を取得,
その地域の特性を監視
• 衛星画像,航空画像など
• 異なる環境領域を
手作業でセグメンテーション
• 時間がかかる
• エラーが発生しやすい
• 専門知識が必要
n医療画像解析
• 医療画像を識別し
セグメンテーション
• モダリティに基づきグループ化
• MRI,CTスキャン,X線,超音波,
顕微鏡,皮膚鏡など
• 課題
• 利用可能な画像数が比較的少ない
• 専門知識が必要
Zhu+, GRSM2017 Cao+, ECCV2022
Semantic Segmentationの応用
nVideo Semantic Segmentation [Shelhamer+, ECCV2016]
• ヒューマンマシンインタラクション[Gorecky+, INDIN2014]
• Augment Reality [Azuma, PTVE1997]
• 自律走行車[Janai+, FTCGV2020]
• 画像検索エンジン
nビデオ=無相関の固定画像の集合 [Jain+, CVPR2019]
• 課題
• 計算の複雑さ
• 時間的フレームレートを使用し
動画の空間次元をスケーリング
• 解決策
• 特徴の再利用
• 特徴ワーピング[Ding+, AAAI2020]
データ制限を克服するための実践的アプローチ
n教師あり学習
• コンピュータ・ビジョンや自然言語処理で好成績を収める
• 現実世界では多くのラベルデータを必要としボトルネック
n自己教師あり学習:Self-supervised Learning (SSL) [Gustavsson, DiVA2019]
• ラベルのないデータセットを用いて学習
1. 事前学習タスクを解くように設定
2. 下流タスクに適用
• 異なる特徴に対し学習された重みを使用
• Semantic SegmentationはSSLを使用して
実行できる主要な下流タスクの一つ
Semantic Segmentationにおける損失関数
n交差エントロピー損失
𝐶𝐸!"## 𝑝, 𝑞 = − (
$%&
'
𝑝$ log(𝑞$)
• 各ピクセルのクラス予測値を独立に評価,全てのピクセルを平均
n重み付き交差エントロピー損失
𝑊𝐶𝐸!"## 𝑝, 𝑞 = − (
$%&
'
𝑝$𝑤$ log(𝑞$)
• データセットの偏りを考慮
• 大きく改善されず
• 交差エントロピーは境界となる隣接ピクセルを考慮せず
平均損失を計算するため
𝑝!:𝑖番目のクラスの真の確率
𝑞!:同じクラスの予想確率
𝑤!:𝑖番目のクラスの重み係数
Semantic Segmentationにおける損失関数
nフォーカル損失 [Lin+, ICCV2017]
• 交差エントロピー損失の構造を大きく変更
• 𝑝" > 0.5に対する相対的な損失を減らす
𝑝":真のクラスの予測確率
𝛼":スケーリング係数
𝛾:集中パラメータ
データセット
nPASCAL-Context [Yuan+, ECCV2020]
nADE20K [Zhou+, CVPR2017]
nKITTI [Geiger+, IJRR2013]
nCityscapes [Marius+, CVPR2016]
nIDD [Varma+, WACV2019]
nVirtual KITTI [Gaidon+, CVPR2016]
nIDDA [Alberti+, IROS2020]
n時間の都合上詳細は省略
PASCAL-Context
Cityscapes
ViTアーキテクチャの一覧
nSETR [Zheng+, CVPR2021]
nSwin-Transformer [Liu+, ICCV2021]
nSegmenter [Strudel+, ICCV2021]
nSegFormer [Xie+, NeurIPS2021]
nPVT [Wang+, ICCV2021]
nTwins [Chu+, NeurIPS2021]
nDPT [Ranftl+, ICCV2021]
nHRFormer [Yuan+, NeurIPS2021]
nMask2Former [Cheng+, CVPR2022]
SEgmentation TRansformer (SETR)
nSemantic Segmentationを,シーケンス間の予測タスクとして提案
nエンコーダとしてTransformerを採用
(a) SETRエンコーダ
• 標準的なTransformer
• 画像をパッチのシーケンスとして扱う
• 線形射影を行う
(b), (c):デコーダ
(b) SETR-PUP
• プログレッシブ・
アップサンプリング設計
(c) SETR-MLA
• マルチレベル特徴集約
Shifted Windows (Swin) -Transformer
n画像分類,密な予測などの汎用バックボーン
n階層的な特徴マップ
• Self-attentionの計算複雑度を線形的に
nシフトウィンドウアプローチ
• スライディングウィンドウアプローチと比ベ
レイテンシが低い
nアーキテクチャ
1. パッチ分割モジュール
2. 線形埋め込みの適用
3. 2連続Swin-Transformerブロック
n特徴マップの解像度がResNet [He+, CVPR2016]
など典型的なCNNアーキテクチャと類似
Segmenter
nSemantic Segmentationのための,純粋なTransformerベースのアプ
ローチ
• ImageNetで事前学習されたViTバックボーンから構成
• デコーダ:Mask Transformer
• 画像分類用のモデルを活用
• 適切な大きさのデータセットによる事前学習,微調整
nPanoptic Segmentationのタスク
にも適用可能
• モデルアーキテクチャを変更
• クラス埋め込みを
オブジェクト埋め込みに置換
SegFormer
nSemantic Segmentationのためのアーキテクチャ
• 階層的なTransformerエンコーダ
• 多層パーセプトロン(MLP)デコーダ
• 最終マスクの予測に使用
nパッチサイズ:4×4
• ViT: 16×16
• 正確なセグメンテーション結果を
得るため
n位置エンコーディングを使用しない
n一般的な破損や振動に対しロバスト
nモデルサイズ,精度,実行時間にトレードオフ
Pyramid Vision Transformer (PVT)
nPVT v1 [Wang+, ICCV2021]
• パッチサイズ:4×4
• SegFormer [Xie+, NeurIPS2021]と同じ
• 高解像度表現学習能力が向上
• 漸進的縮小ピラミッド
• 計算負荷を軽減
• 出力解像度を段階的に縮小
n PVT v1の欠点
• 高解像度処理の計算量が大きい
• 画像の局所的な連続性が失われる
• 可変サイズの入力ができない
nPVT v2
• 3つの特徴
• Linear special reduction attention
(LSRA)
• オーバーラップパッチ
埋め込み
• 畳み込み
フィードフォワード
ネットワーク
nTwins-SVT
• Swin-Transformer [Liu+, ICCV2021]を再検討
• Spatially separable self-attention (SSSA)メカニズムを使用
• 2つのTransformerメカニズム
• Global Sub-sampled Attention (GSA)
• Locally grouped self- attention (LSA)
nTwins-PCPVT
• PVT v1 [Wang+, ICCV2021] を再検討
• Conditional position encoding (CPE)を使用
• Conditional Position encoding Vision Transformer (CPVT) [Chu+, arXiv2021]で導入
Twins
Dense Prediction Transformer (DPT)
nエンコーダ・デコーダ設計の内部にTransformerバックボーンを導入
nDPT-Base, DPT-Large
• パッチベースの埋め込み方式を採用
• 入力画像を非重複画像バッチに分割
• 変換器ブロックに供給
• 学習可能な位置埋め込みを持つ
• 特徴サイズ
Base:12層,Largs:24層
nDPT-Hybrid
• 特徴抽出器:ResNet-50
• トークン入力:ピクセルベースの特徴マップ
• Transformerブロック:MSA [Vaswani+, NeurIPS2017]
• デコーダで残差畳み込みユニットを使って結合
High-Resolution Transformer (HRFormer)
nPrediction-Taskのために開発
• ポーズ推定,セマンティックセグメンテーション
nアーキテクチャ
• FFNによる深度方向の畳み込み設計
• Local window self-attentionを使用して構築
n低解像度の出力を生成する従来のViTモデルを凌駕
• 計算複雑さとメモリ使用量においてより効率的
(a) Self-attention block
(b) FFN
Masked-attention Mask Transformer (Mask2Former)
nセグメンテーションタスクに活用できる新しい変換アーキテクチャ
• 汎用的なアーキテクチャの導入に成功
nTransformer Decoder
• 標準的なTransformer:完全な特徴マップに注意
• Mask2Former
• 予測されたマスクの前景領域に
クロスアテンションを制限
• 局所的な特徴を抽出
n課題
• 特定のタスクごとに個別に学習する必要
• ユニバーサルアーキテクチャーの一般的な限界
まとめ
nこれらのアーキテクチャによる実験結果
• 異なるベンチマークデータセットによる
mIoUに基づくViTモデルの比較
• 最も高い結果
• DPT-HybridとPASCAL-Context
• Mask2FormerとADE20K
• Mask2FormerとCityscapes
nまとめ
• ViTがどのようにしてCNNに代わる強力な代替手段となり
セマンティックセグメンテーションに貢献したか議論
• 長所と限界
• リモートセンシング・医療・動画など様々な領域での使用
補足スライド
データセット
nPASCAL-Context
[Yuan+, ECCV2020]
nADE20K [Zhou+, CVPR2017]
データセット
nKITTI [Geiger+, IJRR2013] nCityscapes
[Marius+, CVPR2016]
データセット
nIDD [Varma+, WACV2019] nVirtual KITTI
[Gaidon+, CVPR2016]
データセット
nIDDA [Alberti+, IROS2020]

論文紹介:Semantic segmentation using Vision Transformers: A survey

  • 1.
    Semantic Segmentation using VisionTransformers: A survey Hans Thisanke, Chamli Deshan, Kavindu Chamith, Sachith Seneviratne, Rajith Vidanaarachchi, Damayanthi Herath Engineering Applications of Artificial Intelligence 2023 水野翼(名工大玉木研) 2024/4/18
  • 2.
    概要 nSemantic Segmentation [Zheng+,CVPR2021] • 画像の各ピクセルにクラスラベルを割り当て nVision Transformer (ViT) [Dosovitskiy+, ICLR 2021] • Transformer [Vaswani+, NeurIPS2017]をそのまま画像に適用 • CNNに依存しない • 課題:汎用的なバックボーンではなく, Prediction-Taskに直接適用不可 n本論文 • Semantic Segmentationに使用できる ViTアーキテクチャについて議論 • どのようにして課題を解決したか
  • 3.
    Semantic Segmentationの応用 nリモートセンシング • 物理的に接触せず情報を取得, その地域の特性を監視 •衛星画像,航空画像など • 異なる環境領域を 手作業でセグメンテーション • 時間がかかる • エラーが発生しやすい • 専門知識が必要 n医療画像解析 • 医療画像を識別し セグメンテーション • モダリティに基づきグループ化 • MRI,CTスキャン,X線,超音波, 顕微鏡,皮膚鏡など • 課題 • 利用可能な画像数が比較的少ない • 専門知識が必要 Zhu+, GRSM2017 Cao+, ECCV2022
  • 4.
    Semantic Segmentationの応用 nVideo SemanticSegmentation [Shelhamer+, ECCV2016] • ヒューマンマシンインタラクション[Gorecky+, INDIN2014] • Augment Reality [Azuma, PTVE1997] • 自律走行車[Janai+, FTCGV2020] • 画像検索エンジン nビデオ=無相関の固定画像の集合 [Jain+, CVPR2019] • 課題 • 計算の複雑さ • 時間的フレームレートを使用し 動画の空間次元をスケーリング • 解決策 • 特徴の再利用 • 特徴ワーピング[Ding+, AAAI2020]
  • 5.
    データ制限を克服するための実践的アプローチ n教師あり学習 • コンピュータ・ビジョンや自然言語処理で好成績を収める • 現実世界では多くのラベルデータを必要としボトルネック n自己教師あり学習:Self-supervisedLearning (SSL) [Gustavsson, DiVA2019] • ラベルのないデータセットを用いて学習 1. 事前学習タスクを解くように設定 2. 下流タスクに適用 • 異なる特徴に対し学習された重みを使用 • Semantic SegmentationはSSLを使用して 実行できる主要な下流タスクの一つ
  • 6.
    Semantic Segmentationにおける損失関数 n交差エントロピー損失 𝐶𝐸!"## 𝑝,𝑞 = − ( $%& ' 𝑝$ log(𝑞$) • 各ピクセルのクラス予測値を独立に評価,全てのピクセルを平均 n重み付き交差エントロピー損失 𝑊𝐶𝐸!"## 𝑝, 𝑞 = − ( $%& ' 𝑝$𝑤$ log(𝑞$) • データセットの偏りを考慮 • 大きく改善されず • 交差エントロピーは境界となる隣接ピクセルを考慮せず 平均損失を計算するため 𝑝!:𝑖番目のクラスの真の確率 𝑞!:同じクラスの予想確率 𝑤!:𝑖番目のクラスの重み係数
  • 7.
    Semantic Segmentationにおける損失関数 nフォーカル損失 [Lin+,ICCV2017] • 交差エントロピー損失の構造を大きく変更 • 𝑝" > 0.5に対する相対的な損失を減らす 𝑝":真のクラスの予測確率 𝛼":スケーリング係数 𝛾:集中パラメータ
  • 8.
    データセット nPASCAL-Context [Yuan+, ECCV2020] nADE20K[Zhou+, CVPR2017] nKITTI [Geiger+, IJRR2013] nCityscapes [Marius+, CVPR2016] nIDD [Varma+, WACV2019] nVirtual KITTI [Gaidon+, CVPR2016] nIDDA [Alberti+, IROS2020] n時間の都合上詳細は省略 PASCAL-Context Cityscapes
  • 9.
    ViTアーキテクチャの一覧 nSETR [Zheng+, CVPR2021] nSwin-Transformer[Liu+, ICCV2021] nSegmenter [Strudel+, ICCV2021] nSegFormer [Xie+, NeurIPS2021] nPVT [Wang+, ICCV2021] nTwins [Chu+, NeurIPS2021] nDPT [Ranftl+, ICCV2021] nHRFormer [Yuan+, NeurIPS2021] nMask2Former [Cheng+, CVPR2022]
  • 10.
    SEgmentation TRansformer (SETR) nSemanticSegmentationを,シーケンス間の予測タスクとして提案 nエンコーダとしてTransformerを採用 (a) SETRエンコーダ • 標準的なTransformer • 画像をパッチのシーケンスとして扱う • 線形射影を行う (b), (c):デコーダ (b) SETR-PUP • プログレッシブ・ アップサンプリング設計 (c) SETR-MLA • マルチレベル特徴集約
  • 11.
    Shifted Windows (Swin)-Transformer n画像分類,密な予測などの汎用バックボーン n階層的な特徴マップ • Self-attentionの計算複雑度を線形的に nシフトウィンドウアプローチ • スライディングウィンドウアプローチと比ベ レイテンシが低い nアーキテクチャ 1. パッチ分割モジュール 2. 線形埋め込みの適用 3. 2連続Swin-Transformerブロック n特徴マップの解像度がResNet [He+, CVPR2016] など典型的なCNNアーキテクチャと類似
  • 12.
    Segmenter nSemantic Segmentationのための,純粋なTransformerベースのアプ ローチ • ImageNetで事前学習されたViTバックボーンから構成 •デコーダ:Mask Transformer • 画像分類用のモデルを活用 • 適切な大きさのデータセットによる事前学習,微調整 nPanoptic Segmentationのタスク にも適用可能 • モデルアーキテクチャを変更 • クラス埋め込みを オブジェクト埋め込みに置換
  • 13.
    SegFormer nSemantic Segmentationのためのアーキテクチャ • 階層的なTransformerエンコーダ •多層パーセプトロン(MLP)デコーダ • 最終マスクの予測に使用 nパッチサイズ:4×4 • ViT: 16×16 • 正確なセグメンテーション結果を 得るため n位置エンコーディングを使用しない n一般的な破損や振動に対しロバスト nモデルサイズ,精度,実行時間にトレードオフ
  • 14.
    Pyramid Vision Transformer(PVT) nPVT v1 [Wang+, ICCV2021] • パッチサイズ:4×4 • SegFormer [Xie+, NeurIPS2021]と同じ • 高解像度表現学習能力が向上 • 漸進的縮小ピラミッド • 計算負荷を軽減 • 出力解像度を段階的に縮小 n PVT v1の欠点 • 高解像度処理の計算量が大きい • 画像の局所的な連続性が失われる • 可変サイズの入力ができない nPVT v2 • 3つの特徴 • Linear special reduction attention (LSRA) • オーバーラップパッチ 埋め込み • 畳み込み フィードフォワード ネットワーク
  • 15.
    nTwins-SVT • Swin-Transformer [Liu+,ICCV2021]を再検討 • Spatially separable self-attention (SSSA)メカニズムを使用 • 2つのTransformerメカニズム • Global Sub-sampled Attention (GSA) • Locally grouped self- attention (LSA) nTwins-PCPVT • PVT v1 [Wang+, ICCV2021] を再検討 • Conditional position encoding (CPE)を使用 • Conditional Position encoding Vision Transformer (CPVT) [Chu+, arXiv2021]で導入 Twins
  • 16.
    Dense Prediction Transformer(DPT) nエンコーダ・デコーダ設計の内部にTransformerバックボーンを導入 nDPT-Base, DPT-Large • パッチベースの埋め込み方式を採用 • 入力画像を非重複画像バッチに分割 • 変換器ブロックに供給 • 学習可能な位置埋め込みを持つ • 特徴サイズ Base:12層,Largs:24層 nDPT-Hybrid • 特徴抽出器:ResNet-50 • トークン入力:ピクセルベースの特徴マップ • Transformerブロック:MSA [Vaswani+, NeurIPS2017] • デコーダで残差畳み込みユニットを使って結合
  • 17.
    High-Resolution Transformer (HRFormer) nPrediction-Taskのために開発 •ポーズ推定,セマンティックセグメンテーション nアーキテクチャ • FFNによる深度方向の畳み込み設計 • Local window self-attentionを使用して構築 n低解像度の出力を生成する従来のViTモデルを凌駕 • 計算複雑さとメモリ使用量においてより効率的 (a) Self-attention block (b) FFN
  • 18.
    Masked-attention Mask Transformer(Mask2Former) nセグメンテーションタスクに活用できる新しい変換アーキテクチャ • 汎用的なアーキテクチャの導入に成功 nTransformer Decoder • 標準的なTransformer:完全な特徴マップに注意 • Mask2Former • 予測されたマスクの前景領域に クロスアテンションを制限 • 局所的な特徴を抽出 n課題 • 特定のタスクごとに個別に学習する必要 • ユニバーサルアーキテクチャーの一般的な限界
  • 19.
    まとめ nこれらのアーキテクチャによる実験結果 • 異なるベンチマークデータセットによる mIoUに基づくViTモデルの比較 • 最も高い結果 •DPT-HybridとPASCAL-Context • Mask2FormerとADE20K • Mask2FormerとCityscapes nまとめ • ViTがどのようにしてCNNに代わる強力な代替手段となり セマンティックセグメンテーションに貢献したか議論 • 長所と限界 • リモートセンシング・医療・動画など様々な領域での使用
  • 20.
  • 21.
  • 22.
    データセット nKITTI [Geiger+, IJRR2013]nCityscapes [Marius+, CVPR2016]
  • 23.
    データセット nIDD [Varma+, WACV2019]nVirtual KITTI [Gaidon+, CVPR2016]
  • 24.