0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

#0061(2024/02/28)Segment Anything 2

Posted at

技術的な原理

モデルアーキテクチャ

Segment Anything 2 (SAM2) は画像・動画の両方に対応した統一的なセグメンテーションモデルであり、主に以下の構成要素から成ります。

  • 画像エンコーダ: 階層型ViT「Hiera」を使用し、高精度な特徴抽出を実現。
  • プロンプトエンコーダ: ユーザの入力(点やバウンディングボックスなど)をエンコード。
  • マスクデコーダ: これらの情報をもとにマスクを予測。

SAM2の特徴として、ストリーミングメモリ機構を備えており、動画フレームを順次処理しながら過去フレームの情報を参照できます。初回のフレームで対象物体をユーザがクリックなどで指定すると、そのフレームで得られた物体の**マスク表現(マスクトークン)**が「オブジェクトのポインタ」としてメモリバンクに保存されます。

次のフレーム以降では、現在のフレームの特徴マップに対し、このメモリバンク上のポインタ(過去フレームの物体情報)に**アテンション(Memory Attention)**することで、同じ物体を追跡してセグメンテーションを継続します。

静止画の場合はメモリが空の状態で処理するため、SAM2は従来のSAMと同様の振る舞いになります。マスクデコーダはSAM1と同様にトランスフォーマーデコーダ構造ですが、出力解像度向上のために**エンコーダのマルチスケール特徴(ストライド4・8の特徴)**をアップサンプリング時に取り込むよう改良されています。

また、デコーダにはオクルージョン(物体の非可視)検知ヘッドが追加されており、対象物体が現在フレームで見えているかどうかを予測するスコアを出力します。これにより、一時的に物体が他のものに隠れたりフレーム外に出たりしても、再出現時に途切れず追跡できます。

学習方法・データセット

SAM2の学習には、巨大な独自データセットと段階的な学習戦略が採られています。

  1. 事前学習

    • 静止画上でSAM1と同じ「SA-1B」データセット(約11億のマスクを含む大規模画像データ)を使用。
    • 画像エンコーダには自己教師あり手法で事前学習されたHiera(MAEによるプレトレイン済み)を初期値として使用。
    • フォーカルロス+ダイスロスでマスクを学習。
  2. 本学習(fine-tuning)

    • 新たに構築した大規模動画データセット「SA-V」および関連データでモデルを訓練。
    • SA-Vは51,000本以上の動画と600,000以上のマスクアノテーションから成る。
    • データエンジンを活用し、SAM等のモデルで自動生成したマスクを人間が修正・補完する二段階で効率よくアノテーション。
    • 本学習では、SA-VとSA-1Bの一部サブセット(10%程度)、既存動画データセット(DAVIS、YouTube-VOS、MOSEなど)をミックス。

使用技術・ハードウェア要件

  • トランスフォーマーベースのモデルを採用し、エンコーダには階層ViT(Hiera)を使用。
  • メモリ中の過去情報にクロスアテンションすることで動画セグメンテーションを可能に。
  • GPUによる高速計算が推奨され、A100 GPU上で約30FPS、B+モデルで約44FPSのリアルタイム処理が可能。
  • Apache 2.0ライセンスのオープンソースとして公開され、開発者が容易に利用可能。

適用事例や応用分野

想定される活用業界

  • AR/VR(拡張・仮想現実)
  • ロボティクス
  • 自動運転
  • 動画編集・映像制作
  • 医療画像処理
  • 科学研究(衛星画像解析、細胞画像解析など)

既存の事例・研究

  • Instagramの画像編集機能(背景差し替えや被写体抽出)。
  • 海洋科学: ソナー画像からサンゴ礁をセグメンテーション。
  • 医療分野: MRIや内視鏡動画での臓器・病変部位の抽出。
  • スポーツ映像解析: リアルタイムで選手の動きを追跡。

競合技術との比較

モデル 特徴
SAM2 クラス非依存、画像・動画対応、プロンプト可能なセグメンテーション、リアルタイム処理(30〜44FPS)
SAM1 クラス非依存、静止画のみ対応、プロンプト可能なセグメンテーション、遅めの処理速度(約21FPS)
Mask R-CNN インスタンスセグメンテーション、学習済みクラスのみ対応、静止画向け、動画には非対応
DeepLabv3+ セマンティックセグメンテーション、学習済みクラスのみ対応、高精度、リアルタイム化可能(MobileNet版で数十FPS)

SAM2は、特定クラスの学習が不要であり、画像・動画のどちらでも即座に適用可能な汎用性の高さが特長です。従来のセグメンテーション技術と比較して、

  1. 未知の物体にもゼロショットで対応可能
  2. 動画にも対応し、リアルタイムで高精度なセグメンテーションが可能
  3. オープンソースで提供され、研究・商用利用が容易

という点で、セグメンテーション技術の新たなスタンダードとなる可能性があります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?