MedSAM の詳細な論文

論文のタイトル: 医療画像内のあらゆるものをセグメント化する

論文アドレス: https://arxiv.org/pdf/2304.12306.pdf

コードアドレス: https://github.com/bowang-lab/MedSAM

フラグを設定します。これをすぐに完了して、自分のデータ セットで使用する必要があります。

1. SAM分解解析

      基本モデルは迅速なエンジニアリングによって実現された強力な汎化能力を備えていますが、迅速なセグメンテーションタスクを実現するには、タスクの目標、モデル構造、データの 3 つの問題を解決する必要があります。

      セグメンテーション プロンプトとは、画像のセグメンテーションを完了するために必要なプロンプトを指します。最も一般的なプロンプトには、ポイント、bbox (ボックス)、マスク、およびテキストの説明が含まれます。このタスクでは、プロンプトがあいまいであっても、プロンプトを受信したときに少なくとも 1 つの有効なマスクを出力する必要があります。例えば、服のポイントは服を分けるためかもしれないし、人体を区別するためかもしれない。どちらも少なくとも 1 つを出力する必要があります。以下の図に示すように、SAM はイメージ エンコーダー、プロンプト エンコーダー、軽量デコーダーを含むシンプルな構造を持っています。

      さらに、大規模なデータセットが不可欠ですが、既存のデータセットでは対応できません。この問題を解決するために、データエンジンは高品質のデータを大量に生成するように設計されており、このデータエンジンを通じて取得できるデータセット SA-1B には、合計 1,100 万枚の高解像度画像と 11 億枚の画像が含まれていますマスク。

      画像エンコーダに関しては、入力画像は入力前に 1024*1024 に前処理され、画像エンコーダは古典的なビジュアル Transformer 構造である MAE VIT-H/16 を使用し、最終的に (256, 64, 64) 画像埋め込みを出力します。

       プロンプトエンコーダに関しては、プロンプトごとにエンコード方法が異なり、ポイントやボックスの埋め込みは位置エンコード、マスクの埋め込みは畳み込み演算、テキストの埋め込みはクリップのエンコーダで得られます。

       マスクデコーダに関しては、まずプロンプトのセルフアテンションとプロンプトから画像埋め込みまでのクロスアテンションを行います。クロスアテンションは、同じ次元の 2 つのシーケンスがあり、1 つのシーケンスがクエリ Q 入力として使用され、もう 1 つのシーケンスがキー K および値 V 入力として使用される場合を指します。同じ次元の 2 つの埋め込みシーケンスを非対称に結合します。次に、右側の MLP には 3 つの層があり、出力次元は画像埋め込みチャネルと同じであり、左側の MLP には 2048 個のニューロンがあり、その主な機能はグローバル特徴を集約することです。MLP を使用してトークンを更新し、画像を埋め込んでクロスアテンションを促します。2 ラウンドのデコード層の後、トークンは再び画像埋め込みとクロスアテンションされ、出力トークンはトレーニング可能なパラメーターとしてデコーダーの前のプロンプトに追加され、マスクとマスクの IOU は 2 つの MLP を通じて取得されます。それぞれ。

2.方法

2.1 SAM の分解分析

        SAM は、自然言語処理や画像認識タスクにおいて非常に効果的であることが証明されているトランスフォーマー ベースのアーキテクチャを利用しています。具体的には、SAM は、トランスフォーマーベースの画像エンコーダーを使用して画像の特徴を抽出し、ヒント エンコーダーを使用してユーザー インタラクションを組み込み、次にマスク デコーダーを使用して、画像の埋め込み、ヒントの埋め込み、および出力トークンに基づいてセグメンテーションの結果と信頼度を生成します。

       画像エンコーダーのビジュアル トランスフォーマーは、高解像度画像 (つまり、1024 x 1024) を処理できるマスクされたオートエンコーダー モデリングを使用して事前トレーニングされています。取得された画像埋め込みは 16x (64x64) に縮小されます。ヒント エンコーダは、さまざまなユーザー入力に合わせてカスタマイズされます。SAM は、ポイント、ボックス、テキスト、マスクの 4 つの異なるヒントをサポートしています。各点は、フーリエ位置コードと、それぞれ前景と背景を指定するための 2 つの学習可能なラベルによってエンコードされます。境界ボックスは、左上と右下のポイント エンコーディングによってエンコードされます。自由形式のテキストは、CLIP の事前トレーニングされたテキスト エンコーダーによってエンコードされます。マスク プロンプトは入力画像と同じ空間解像度を持ち、畳み込み特徴マップによってエンコードされます。最後に、マスク デコーダは、2 層の動的マスク予測ヘッドと Intersection Over Union (IoU) スコア回帰ヘッドで構成される軽量設計を採用しています。マスク予測ヘッドは、オブジェクト全体、オブジェクトの一部、およびサブパートにそれぞれ対応する 3 つの 4x ダウンスケール マスクを生成できます。

       SAM は、完全に自動ですべてをセグメント化する、バウンディング ボックス モード、およびポイント モードの 3 つの主要なセグメント化モードをサポートしています。ただし、このようなセグメンテーション結果の有用性は、2 つの主な理由により制限されます。一方で、セグメンテーションの結果には意味ラベルがありません。一方、臨床医は主に、肝臓、腎臓、脾臓、病変などの臨床シナリオにおける有意義な ROI に焦点を当てます。境界ボックスベースのセグメンテーション モードでは、左上と右下の点のみを指定することで、右腎臓に対して良好な結果が得られます (図 2c)。ポイントベースのセグメンテーション モード (図 2d) の場合、最初に右腎臓の中心に前景ポイントを与えますが、セグメンテーションの結果には腹部組織全体が含まれます。次に、オーバーセグメント化された領域に背景ポイントを追加します。セグメンテーションマスクは肝臓と右腎臓に絞り込まれています。肝臓に別の背景ポイントを追加すると、期待どおりの腎臓のセグメンテーションが得られます。

        要約すると、SAM を医療画像セグメンテーションに適用する場合、セグメントフル モデルは無駄な領域分割が発生する傾向がありますが、ポイントベース モデルは曖昧で複数の予測修正の反復が必要です。対照的に、バウンディング ボックス ベースのモダリティでは、ROI を明示的に指定し、何度も試行錯誤することなく妥当なセグメンテーション結果を得ることができます。さらに、今日一般的に使用されているアノテーション方法の 1 つは、固形腫瘍の反応評価基準 (RECIST) など、放射線医学で最長直径にラベルを付けることです。RECIST アノテーションに基づいて、オブジェクトの境界ボックスのヒントを簡単に取得できます。したがって、医療画像セグメンテーション タスクで SAM を使用する場合、バウンディング ボックス ベースのセグメンテーション スキームは、すべてをセグメント化するベースおよびポイント ベースのセグメンテーション スキームよりも広範な実用的価値があると考えられます。

2.2 MedSAM: 医用画像セグメンテーション専用の基本モデル

       SAM を医療画像のセグメンテーションに適応させるには、適切なユーザー プロンプトと微調整用のネットワーク コンポーネントを選択する必要があります。上記の分析に基づいて、境界ボックス プロンプトはセグメンテーション ターゲットを指定するための正しい選択です。SAM のネットワーク アーキテクチャは、イメージ エンコーダ、ヒント エンコーダ、マスク デコーダの 3 つの主要コンポーネントで構成されます。それらの任意の組み合わせを調整することを選択できます。画像エンコーダーは、SAM で最大の計算オーバーヘッドを持つビジョン トランスフォーマーに基づいています。計算コストを最小限に抑えるために、画像エンコーダーをフリーズしたままにします。ヒント エンコーダはバウンディング ボックスの位置情報をエンコードし、SAM の事前トレーニングされたバウンディング ボックス エンコーダから再利用できるため、このコンポーネントもフリーズします。微調整が必​​要な残りの部分は、図に示すようにマスク デコーダです。

(MedSAM: 医療画像セグメンテーション用の微調整 SAM。画像エンコーダーとヒント エンコーダーをフリーズし、マスク デコーダーのみを微調整します。)

       画像エンコーダーはモデルにヒントを与える前に適用できるため、すべてのトレーニング画像に対して画像埋め込みを実行して、ヒントごとに画像埋め込みの繰り返し計算を回避でき、トレーニング効率が大幅に向上します。ほとんどの場合、境界ボックスのキューが意図したセグメンテーション ターゲットを明確に指定しているため、マスク デコーダは 3 つのマスクではなく 1 つのマスクを生成するだけで済みます。

       次に、バラバラという実験があります。これは非常に単純に思えますが、実行できません。
 

おすすめ

転載: blog.csdn.net/Zosse/article/details/131631978