Segment Anything (2023) 

### Segment Anything (Meta AI Research, 2023) 
 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/ebc7a216-8b16-47f4-a7dd-133c5a4e8198.png)

#### 3行要約

1.  ✨ 「Segment Anything」プロジェクトは、新しいタスク、モデル、データセットを導入することで、セグメンテーションの基盤モデル構築を目指します。
2.  🤖 提案されたSegment Anything Model（SAM）はプロンプト可能に設計されており、プロンプトエンジニアリングを通じて未知の画像やタスクにゼロショットで対応できます。
3.  📈 効率的なモデルをデータ収集ループに活用することで、過去最大となる1100万枚の画像と10億個以上のマスクから成るSA-1Bデータセットが構築されました。

#### Q:この論文の概要を教えてください
#### A:
本論文は、segmentation分野におけるfoundation modelの構築を目指すSegment Anythingプロジェクトを提案しています。このプロジェクトは、新しいtaskであるpromptable segmentation、そのためのmodelであるSegment Anything Model (SAM)、そして大規模datasetであるSA-1Bという3つの相互に関連する要素から構成されています。SA-1Bは、効率的なSAMをデータ収集ループで使用することで構築された、10億以上のmaskと1,100万枚のlicensedかつprivacy respectingな画像を含む、現在までで最大のsegmentation datasetです。SAMはprompt可能であるように設計・訓練されており、これにより新しい画像分布やtaskに対してzero-shot転送が可能となります。様々なtaskにおけるその能力を評価した結果、zero-shot性能が印象的であり、既存のfully supervisedな手法に匹敵するか、多くの場合それらを凌駕することさえあります。Segment Anything Model (SAM) および対応するdataset (SA-1B) は、visionにおけるfoundation modelの研究を促進するために公開されています。

**2. Segment Anything Task**
NLPにおけるfoundation modelの成功に着想を得て、本研究ではsegmentationのためのfoundation modelを構築するため、同様の能力を持つtaskを定義することを目指しました。Promptable segmentation taskの目標は、いかなるsegmentation prompt（前景/背景点、おおよそのbounding boxまたはmask、自由形式のtextなど）が与えられた画像に対しても、有効なsegmentation maskを返すことです。Promptが曖昧で複数のobjectを指しうる場合（例: シャツ上の点がシャツまたは人を指す場合）でも、有効なmaskとは、それらのobjectの少なくとも1つに対する合理的なmaskであると定義されます。このtaskをpre-training objectiveとして使用し、prompt engineeringを通じて一般的なdownstream segmentation taskを解決します。Pre-trainingでは、各training sampleに対してprompts（点、box、mask）のシーケンスをシミュレーションし、モデルのmask予測をground truthと比較します。これはinteractive segmentationの手法を応用したものですが、本研究の目的は、promptが曖昧な場合でも常に有効なmaskを予測することです。Zero-shot transferは、適切なprompt engineeringにより実現されます。例えば、catに対するbounding box detectorがあれば、その出力boxをSAMへのpromptとして与えることでcatのinstance segmentationが可能です。本taskは、interactive segmentation、edge detection、object proposal generation、semantic segmentation、instance segmentation、panoptic segmentationなど、既存および新しい多くのsegmentation taskにprompt engineeringを介して適応できる汎用モデルを生み出すことを目指しています。これはtask generalizationの一形態であり、固定されたtaskセットのために訓練されたmulti-taskシステムとは異なります。Promptingとcompositionは、単一のモデルを拡張可能な方法で使用することを可能にし、モデル設計時には不明だったtaskさえも達成できる可能性があります。

**3. Segment Anything Model**
Segment Anything Model (SAM) はpromptable segmentationのためのmodelです。Fig. 4に示すように、Image encoder、flexibleなPrompt encoder、およびfastなMask decoderの3つの構成要素を持ちます。Transformer vision model [14, 33, 20, 62] をベースとしつつ、amortized real-time性能のためのトレードオフを考慮しています。
Image encoderは、scalableかつ強力なpre-training手法から着想を得て、MAE [47] でpre-trainedされたVision Transformer (ViT) [33] を高解像度入力処理に最小限適応させて使用しています [62]。デフォルトではViT-H/16を使用し、14x14のwindowed attentionと4つの等間隔なglobal attention blocksを持ちます。Image encoderは画像ごとに一度実行され、promptingの前に適用できます。入力解像度は1024x1024にrescale・paddingされ、image embeddingは16x downscaledの64x64となります。チャンネル次元は1x1 convolutionで256に削減され、その後に3x3 convolutionも256チャンネルで使用されます。各convolutionの後にはlayer normalization [4] が続きます(§A)。
Prompt encoderは、sparse prompts（点、box、text）とdense prompts（mask）を扱います。点とboxは、点位置のpositional encoding [95] とprompt typeを示すlearned embeddingsの合計で表現されます。Free-form textは、off-the-shelfなCLIP [82] のtext encoderで処理されます。Dense prompts（mask）は、convolutionを使用してembedding化され、image embeddingと要素ごとに合計されます。mask promptがない場合、"no mask"を示すlearned embeddingがimage embeddingの各位置に加えられます(§A)。
Mask decoderは軽量であり、image embedding、prompt embeddings、およびoutput tokenをmaskに効率的にmapします。これはTransformer decoder block [103] を修正したもので [14, 20]、dynamic mask prediction headが続きます。修正されたdecoder blockは、prompt self-attentionと、tokensからimage embeddingへ、およびその逆方向の2方向のcross-attentionを使用して、全てのembeddingsを更新します。2つのblocksを実行後、image embeddingをupsampleし、MLPがoutput tokenをdynamic linear classifierにmapし、各image locationにおけるmask foreground probabilityを計算します(§A)。
曖昧さの解消のため、モデルは単一のmaskを予測する代わりに、複数のoutput tokensを使用して複数のmaskを同時に予測します。デフォルトでは3つのmaskを予測します。Training中は、ground truthと予測された各maskの間のlossを計算し、最低lossのみをbackpropします [15, 45, 64]。Maskをランク付けするために、モデルは各maskのconfidence score（推定IoU）を予測します。効率性の観点から、image embeddingのprecomputation後、prompt encoderとmask decoderはweb browser上でCPUで約50msで実行できます。
Lossesとして、mask predictionはfocal loss [65] とdice loss [73] の線形結合で監督されます [14, 20]。IoU prediction headは、MSE lossで訓練されます。Trainingでは、geometric promptsのmixtureを使用し、interactive setupをシミュレーションします。マスクごとに11ラウンドでpromptsをランダムにサンプリングします [92, 37]。Training recipeにはAdamW [68] optimizer、linear learning rate warmup [42]、step-wise learning rate decayスケジュール、dropout [93]、drop path [53]、layer-wise learning rate decay [5] が使用されます。MAE [47] pre-trained ViT-Hから初期化され、256 GPUで訓練されます(§A)。

**4. Segment Anything Data Engine**
Segmentation maskはinternet上に豊富ではないため、本研究では11億mask datasetであるSA-1Bの収集を可能にするdata engineを構築しました。Data engineは3つの段階を持ちます。(1) model-assisted manual annotation段階、(2) 自動予測maskとmodel-assisted annotationの混合であるsemi-automatic段階、そして (3) annotatorの入力なしにmodelがmaskを生成するfully automatic段階です。
Assisted-manual stageでは、プロのannotatorsがSAMによるbrowser-based interactive segmentation toolを使用してmaskをラベル付けしました。モデルが改善されるにつれて、maskあたりの平均annotation時間は34秒から14秒に減少し、画像あたりのマスク数は20から44に増加しました。この段階で12万枚の画像から430万枚のmaskを収集しました。
Semi-automatic stageでは、maskの多様性を増やすことを目指しました。まず、confidenceの高いmaskを自動検出し、これらのmaskでprefillされた画像をannotatorsに提示し、未注釈のobjectをアノテーションするよう求めました。これにより、より挑戦的なobjectのannotationに焦点を当てました。この段階でさらに590万枚のmaskを18万枚の画像から収集し、合計1020万枚のmaskとなりました。画像あたりのマスク数は44から72に増加しました。
Fully automatic stageでは、annotationが完全に自動化されました。これは、モデルの改善と、曖昧さ考慮モデルの開発により可能になりました。具体的には、32x32のregular gridの前景点でモデルをpromptし、各点に対して有効なobjectに対応しうるmaskのセットを予測させました。IoU prediction moduleでconfidenceの高いmaskを選択し、stable masks（probability mapを異なる閾値で二値化しても類似したmaskが得られるもの）のみを選択しました。重複をフィルタリングするためにNMSを適用しました。Small masksの品質向上のため、重なり合うzoom-inされたimage cropsも複数処理しました。この段階でdatasetの全1,100万枚の画像に自動mask生成を適用し、合計11億枚の高品質maskを生成しました(§B)。

**5. Segment Anything Dataset**
本研究のdataset、SA-1Bは、1,100万枚の多様で高解像度、licensedかつprivacy protectingな画像と11億枚の高品質segmentation maskから構成されています。11億枚のmaskのうち99.1%はfully automatic stageで生成されました。自動生成maskの品質を評価するため、500枚の画像をランダムサンプリングし、プロのannotatorsに全てのmaskの品質向上を依頼しました。自動予測maskと専門家により修正されたmaskのペア間のIoUを計算した結果、94%のペアが90%以上のIoUを示しました。これは既存の研究におけるinter-annotator consistencyの推定値 (85-91% IoU) [44, 60] と比較しても高品質です。§7の実験で、human ratingによりmask品質が高いこと、および自動maskのみでモデルを訓練しても全データ使用時とほぼ同等であることを確認しています。
Datasetのmask propertiesについて、Fig. 5ではimage-size正規化されたmask center分布をプロットしています。全てのdatasetに一般的なphotographer biasが見られますが、SA-1BはLVIS v1 [44] やADE20K [117] と比較してimage cornersのカバー率が高いです。Fig. 6ではdatasetサイズを比較しており、SA-1BはOpen Images [60] と比較して画像数で11倍、マスク数で400倍多いです。画像あたりマスク数は平均でOpen Imagesの36倍です。画像あたりのマスク数分布、image-relative mask size分布、mask concavity分布も比較しています。

**6. Segment Anything RAI Analysis**
Responsible AI (RAI) 分析として、SA-1BおよびSAM使用時の潜在的なfairness懸念やbiasを調査しています。SA-1Bの地理的および所得分布、そして人々のprotected attributesに関するSAMのfairnessに焦点を当てています。画像が撮影された国をキャプションから推定し(§C)、SA-1BはEuropeとAsia & Oceania、およびmiddle income countriesの表現が他のデータセットよりも高いことを確認しました(Table 1)。ただし、Africa、Latin America & Caribbean、およびlow income countriesは全てのデータセットで過小表現されています。
人々のsegmentingにおけるfairnessを評価するため、MIAP [87] datasetを使用して、perceived gender presentation、perceived age group、およびperceived skin toneに関するSAMの性能差を測定しました(§C)。SAMはperceived gender presentationおよびperceived skin tone across groupsで類似した性能を示しました(Table 2)。perceived ageでは、perceived olderな人々に対して最も良い性能を示しました。これらの結果はtaskの性質に起因すると考えられますが、SAMがより大きなシステムの一部として使用される際にはbiasが生じる可能性があることを認識しています。衣服のsegmentingに関する分析も行い、1-point promptではperceived gender presentationに関してbiasが存在する可能性があることを示しました(Table 6)。

**7. Zero-Shot Transfer Experiments**
SAMのzero-shot transfer能力を評価するために、23の多様なsegmentation datasetスイートで実験を行いました(Fig. 8, Table 7)。これはSAMが訓練に見ていない画像分布やtaskを含んでいます。評価タスクには、SAMのcore goalであるsingle pointからの有効なmask生成のほか、edge detection、object proposal generation、instance segmentation、およびtext-to-mask predictionが含まれます。
**7.1. Zero-Shot Single Point Valid Mask Evaluation**: 単一前景点promptからのobject segmentingを評価しました。このtaskは曖昧さを含みうるため、自動mIoUに加えhuman studyによる品質評価も行いました(§D.1, §E)。SAMは23 dataset中16でRITM [92] をmIoUで上回りました(Fig. 9a)。SAMの3つの予測のうち最も関連性の高いものを使用する"oracle"評価では、全てのdatasetでRITMを凌駕し、曖昧さへの対応能力を示しました。Human studyでは、SAMのmask品質が最強ベースラインであるRITMよりも有意に高く評価されました(Fig. 9b)。点数が増えるにつれてSAMとベースラインのmIoUの差は縮まります(Fig. 9c)。random point samplingの場合、SAMはベースラインとの差を広げ、center point samplingと同等の結果を達成しました(Fig. 9d)。
**7.2. Zero-Shot Edge Detection**: BSDS500 [72, 3] でedge detectionを評価しました(§D.2)。SAMの自動mask生成パイプラインを簡略化して使用しました。SAMはedge detectionのために訓練されていないにもかかわらず、妥当なedge mapを生成しました(Fig. 10, Fig. 15)。定量的には、ODS .768、OIS .786、AP .794、R50 .928という結果で、SOTA手法には劣るものの、過去のdeep learning手法であるHED [108] よりも優れています(Table 3)。
**7.3. Zero-Shot Object Proposals**: LVIS v1 [44] でobject proposal generationを評価しました(§D.3)。SAMの自動mask生成パイプラインを修正してproposalを生成しました。ベースラインであるViTDet-H [62] と比較して、AR@1000で全体的には劣るものの、medium/large objectやrare/common objectではSAMが上回るなど、remarkably wellな性能を示しました(Table 4)。
**7.4. Zero-Shot Instance Segmentation**: Object detector (ViTDet-H) の出力boxをSAMへのpromptとして使用し、zero-shot instance segmentationを実行しました(§D.4)。COCO [66] およびLVIS [44] で評価しました。mask APではViTDet-Hに劣るものの、近い性能を示しました(Table 5)。しかし、human studyではSAMのmaskがViTDetよりも高品質であると評価されました(Fig. 11)。これは、ViTDetがCOCOやLVISの特定のannotation biasesを学習しているのに対し、zero-shotなSAMはこれらのbiasを利用できないためと考えられます。
**7.5. Zero-Shot Text-to-Mask**: Free-form textからのobject segmentingを概念実証として評価しました(§D.5)。CLIP [82] image embeddingを最初のinteractionとしてpromptするようにSAMの訓練を修正し、CLIPのtext/image embeddingアラインメントを利用しました。SAMは単純なtext promptやよりニュアンスのあるtext promptに基づいてobjectをsegmentできることを示しました(Fig. 12)。Textのみで失敗する場合でも、追加のpoint promptで修正できることも示されました。
**7.6. Ablations**: 23 datasetスイート、single center point promptプロトコルでablationsを実施しました。Data engineの各段階からの累積データで訓練するとmIoUが向上しました(Fig. 13 左)。automatic masksのみで訓練しても、全データ使用時とほぼ同等の性能が得られることを確認し、これがデフォルトの訓練設定となりました。Training data volumeに関しては、11M画像（全SA-1B）と1M画像（約10%）で比較した結果、1M画像でも全データと匹敵する結果が得られました(Fig. 13 中)。Image encoder scalingについては、ViT-HがViT-Bから大幅に改善しましたが、ViT-Lからの向上はわずかでした(Fig. 13 右)。
**D.6. Probing the Latent Space of SAM**: Latent spaceを調査し、明示的なsemantic supervisionなしでもSAMが何らかのsemantic情報を捉えている可能性を示しました(Fig. 17)。

**8. Discussion**
SAMはsegmentation分野をfoundation modelの時代に引き上げる試みです。Foundation modelの定義 [8] に合致する性質を持ちますが、これはvisionのごく一部に限定されます。SAMはself-supervised technique (MAE [47]) で初期化されていますが、その能力の大部分は大規模supervised trainingに由来します。データエンジンによってannotationをスケール可能な場合、supervised trainingは効果的な解決策となります。SAMはpromptable segmentation taskのために訓練されており、広範なsegmentation promptに対して有効なmaskを予測することで、他のコンポーネントとの信頼性の高いinterfaceを構築します。これにより、CLIP [82] がDALL·E [83] のコンポーネントとして使用されるように、SAMも他のシステム（例: MCC [106]）に容易に組み込まれることができます。
Limitationsとしては、SAMは細かな構造を逃したり、disconnected componentsを生成したりすることがあります。多数の点では専用のinteractive segmentation手法が優れる可能性があります。SAMはprompt処理はリアルタイムですが、重いImage encoder使用時は全体の性能はリアルタイムではありません。Text-to-maskはまだrobustではありません。Semanticやpanoptic segmentationのようなtaskを単純なpromptで実現する方法は不明です。Domain-specific toolがSAMを上回る場合もあります。

**Conclusion**
Segment Anythingプロジェクトは、新しいtask (promptable segmentation)、model (SAM)、およびdataset (SA-1B) を通じて、image segmentationをfoundation modelの時代へと導く試みです。SAMがfoundation modelの地位を確立するかはコミュニティでの使用にかかっていますが、本研究の視点、10億以上のmaskのリリース、そしてpromptable segmentation modelは、今後の研究の道を切り開くことが期待されます。

**Release**
SA-1B datasetは研究目的で、SAMはApache 2.0のopen licenseで
https://segment-anything.com
にてリリースされます。オンラインデモも提供されています。

**Appendices**
Appendixでは、Segment Anything ModelとTaskのさらなる詳細(§A)、Automatic Mask Generationの詳細(§B)、RAIに関する追加の詳細(§C)、実験実装の詳細(§D)、Human Studyの実験デザイン(§E)、Dataset, Annotation, Model Cards(§F)、Annotation Guidelines(§G)が提供されています。

これで論文の重要な情報、手法、結果、議論、貢献が網羅され、要求されたフォーマット、言語、詳細度に沿って記述されています。Proper nounsとtechnical termsは英語で維持しました。数式は論文に明示的に示されていないため、含めていません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/dc2cab7c-d96a-4d2a-8565-6c0f27e5381c.png)

#### Q:提案手法の処理の流れを順序だてて説明してください
#### A:
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/3b7a58a0-ca2a-4fb2-8153-e3e7c6dd74e7.png)

主に3つの主要コンポーネントから構成されており、推論時には以下のような順序で処理が行われます。

1.  **画像エンコーダー (Image Encoder) による画像埋め込みの生成:**
    *   まず、入力画像全体が画像エンコーダーに入力されます。
    *   画像エンコーダーは比較的重い処理であり、画像の特徴を表す「画像埋め込み (image embedding)」を一度だけ計算します。
    *   この画像埋め込みは、その後のプロンプト処理で繰り返し利用されます。

2.  **プロンプトエンコーダー (Prompt Encoder) によるプロンプト埋め込みの生成:**
    *   次に、ユーザーからの入力プロンプト（点、ボックス、テキスト、またはマスク）がプロンプトエンコーダーに入力されます。
    *   プロンプトエンコーダーは、プロンプトの種類に応じて、対応する「プロンプト埋め込み (prompt embedding)」を生成します。これは比較的軽量な処理です。

3.  **マスクデコーダー (Mask Decoder) によるマスクとスコアの予測:**
    *   画像埋め込みとプロンプト埋め込みがマスクデコーダーに入力されます。
    *   マスクデコーダーは、これらの情報をもとに、入力プロンプトに対応するセグメンテーションマスクを予測します。
    *   SAMの特徴として、一つのプロンプトに対して複数の有効なマスクを予測することが可能です。これは、プロンプトが複数のオブジェクトを指す可能性がある場合の曖昧さに対処するためです。
    *   各予測マスクに対して、その信頼度を示すスコア（推定IoU）も出力されます。

このように、画像エンコーダーによる前処理（画像埋め込みの生成）は一度行えばよく、その後のプロンプト処理（プロンプトエンコーダーとマスクデコーダー）が非常に高速であるため、異なるプロンプトに対してリアルタイムに近い速度でマスクを生成することが可能となっています。


#### Q:関連手法との比較について詳しく説明してください
#### A:

1.  **対話型セグメンテーション (Interactive Segmentation) 手法:**
    *   **関連性:** SAMのプロンプト可能なタスクは、対話型セグメンテーション（点やボックスでオブジェクトを指定する）から着想を得ています (§2)。SAMはリアルタイムでプロンプトに応答できるため、対話型ツールに組み込むことが可能です (§2, §3, §4)。
    *   **違い:** 従来の対話型手法は、ユーザーからの繰り返し入力（点など）を受けて徐々にマスクの精度を上げ、最終的に高いIoU（Intersection over Union）を達成することを目指します (§2)。一方、SAMの訓練目標は、どんなプロンプトに対しても「有効な」マスクを返すことです。これは、曖昧なプロンプト（例：一点がシャツと人物の両方を指す場合）に対しても、複数の可能性のあるマスクを予測する能力を含みます (§2, §5)。
    *   **比較実験:** §7.1および§D.1で、RITM [92], FocalClick [18], SimpleClick [67] といった最先端の対話型セグメンテーション手法と、23の多様なデータセットを用いたゼロショット設定で比較されています。特に1点のプロンプトに対する性能が評価の中心です。
    *   **結果:** 1点のプロンプトでは、SAMは多くのデータセットで既存手法よりも高いmIoUを示し、特に曖昧なプロンプトに対する「Oracle」評価（予測された複数のマスクのうち正解に最も近いものを選択）では全ての手法を凌駕します (§7.1, Fig 9a)。また、人間によるマスク品質評価のヒューマンスタディ (§7.1, §E, Fig 9b, Fig 18, Table 8) では、SAMはRITMよりも一貫して高い評価を受けており、これはSAMが曖昧さに対処し、より視覚的に高品質なマスクを生成できていることを示唆しています。ただし、点が複数になるにつれて、SAMと既存手法のmIoUの差は縮小します (§7.1, Fig 9c)。

2.  **基盤モデル (Foundation Models):**
    *   **関連性:** SAMは、NLPにおけるGPT [10], PaLM [21] や、Vision-LanguageにおけるCLIP [82], ALIGN [55] のような大規模データで事前学習され、多様な下流タスクにゼロショットまたは少数ショットで汎化する「基盤モデル」の成功パラダイムに触発されています (§1, §8)。SAMは、セグメンテーションにおける基盤モデルを目指しています (§1)。
    *   **違い:** 既存の基盤モデルがテキストやテキスト-画像のアライメントを扱うのに対し、SAMはセグメンテーションに特化しています (§1)。また、多くの基盤モデルが自己教師あり学習を強調する傾向がある中、SAMの能力の大部分は、データエンジンによって収集された大規模な教師ありデータ（SA-1B）による訓練からもたらされています (§8)。
    *   **比較:** この比較は、特定のタスク性能よりも、モデルの汎化能力と応用可能性という概念的なレベルで行われます。CLIPは、SAMのテキストプロンプト機能の実装に活用されており、異なるモジュールの組み合わせ（Compositionality）の例として示されています (§1, §2, §8)。
    *   **結果:** SAMは、プロンプトエンジニアリングを通じて、訓練時に直接見られなかった多様なデータ分布やタスクにゼロショットで対応できることを示し、セグメンテーション分野における基盤モデルの可能性を実証しました。

3.  **マルチタスクセグメンテーションシステム (Multi-task Segmentation Systems):**
    *   **関連性:** セマンティック、インスタンス、パノプティックセグメンテーションなど、固定された複数のタスクを同時に実行するように訓練されたシステム（Mask Transfomer [19], K-Net [114] など）が過去に提案されています。
    *   **違い:** SAMは、これらのシステムとは異なり、単一のタスク（プロンプト可能なセグメンテーション）で訓練され、それを他のタスク（インスタンスセグメンテーションなど）のための**コンポーネント**として組み込んで使用します (§2)。訓練時とテスト時でタスクが異なりうるという点で区別されます。
    *   **比較:** 論文では、SAMの柔軟な**構成可能性 (Compositionality)**を強調しています。これはCLIPがDALL·E [83] の一部として使われるのと類似しています (§2, §8)。特定のマルチタスクシステムとの直接的なタスク性能比較は行われていません。
    *   **結果:** SAMのプロンプトベースのインターフェースにより、未知のタスクや新しいシステムに容易に組み込むことができ、特定の固定タスクに特化したシステムよりも幅広い応用が可能になるという考え方が示されています。

4.  **エッジ検出 (Edge Detection) 手法:**
    *   **関連性:** エッジ検出は、セグメンテーションよりも低レベルの画像理解タスクですが、SAMの自動マスク生成パイプラインを応用することで、ゼロショットでエッジマップを生成できます (§7.2, §D.2)。
    *   **比較実験:** BSDS500 [72, 3] データセットで、伝統的なSobel [??], Canny [13], Felz-Hutt [35] や、深層学習ベースのHED [108], EDTER [79] とゼロショット設定で比較されています。
    *   **結果:** SAMはゼロショットながら、古い深層学習ベースの手法であるHEDに匹敵し、伝統的手法を大きく上回る性能を示しました (§7.2, Table 3, Fig 10, Fig 15)。ただし、BSDS500データセットのバイアス（どのエッジをアノテーションするか）を学習するEDTERのような最先端の手法には及びません。SAMは人間が捉える多くのエッジを捉える傾向があり（R50が高い）、これはBSDS500のグラウンドトゥルースよりも「多くの」有効なエッジを予測している可能性を示唆しています。

5.  **オブジェクト提案 (Object Proposal Generation) 手法:**
    *   **関連性:** オブジェクト提案は、可能なオブジェクトの位置やマスクを生成するミッドレベルのタスクであり、オブジェクト検出パイプラインの前段として重要でした (§2, §7.3)。SAMは、自動マスク生成パイプラインを提案生成に転用することでゼロショットで対応できます (§7.3, §D.3)。
    *   **比較実験:** LVIS v1 [44] データセットで、AR@1000メトリックを用いて、ViTDet-H [62] をベースとした検出器ベースの提案手法 (DMP [16]) と比較されています。
    *   **結果:** DMP手法が最も高い全体性能を示しますが、SAMもゼロショットでありながら非常に優れた結果を出しています。特に中～大型オブジェクト、レアカテゴリ、コモンカテゴリではViTDet-Hを上回っています (§7.3, Table 4)。これは、SAMの汎化能力と、曖昧さ対応により多様なスケールのマスクを生成できる能力が提案生成に有効であることを示しています。

6.  **インスタンスセグメンテーション (Instance Segmentation) 手法:**
    *   **関連性:** インスタンスセグメンテーションは、画像内の個々のオブジェクトインスタンスに対してマスクを生成するタスクです。SAMは、既存のオブジェクト検出器（ViTDet [62] など）が予測したバウンディングボックスをプロンプトとして与えることで、ゼロショットでインスタンスセグメンテーションを実行できます (§7.4, §D.4)。
    *   **比較実験:** COCO [66] と LVIS v1 [44] データセットで、マスクAPメトリックを用いて、エンドツーエンドで訓練されたViTDet-Hと比較されています。また、人間によるマスク品質評価のヒューマンスタディも行われています (§7.4, Fig 11, Table 5, Table 8)。
    *   **結果:** マスクAPでは、SAMはエンドツーエンドで訓練されたViTDet-Hに劣ります。しかし、ヒューマンスタディでは、SAMのマスクがViTDetのマスクよりも質的に（境界の鮮明さなど）高く評価されています (§7.4, Fig 11, Fig 16)。これは、ViTDetがCOCOやLVISデータセット固有のアノテーションバイアス（例：COCOのマスク品質のばらつき、LVISのアモーダルアノテーション）を学習することでAPを向上させているのに対し、ゼロショットのSAMはそのようなバイアスを学習しないため、より汎用的で高品質なマスクを生成する傾向がある可能性を示唆しています。

7.  **テキストからのマスク生成 (Text-to-Mask):**
    *   **関連性:** 自然言語による指示でオブジェクトをセグメントするタスクです。SAMは、CLIP [82] のテキスト埋め込みを活用することで、テキストプロンプトに対応できるようになります (§7.5, §D.5)。PhraseClick [31] のように、テキストとクリックを組み合わせるインタラクティブな手法も存在します。
    *   **比較:** 主に定性的な例示により、SAMがシンプルなテキストやフレーズでオブジェクトをセグメントできることが示されています (§7.5, Fig 12)。テキストのみで失敗した場合でも、点を追加することで精度が向上する例も示されており、インタラクティブな手法との組み合わせの有効性も示唆されています。
    *   **結果:** この機能は概念実証段階ですが、SAMが幾何学的プロンプトだけでなく、テキストプロンプトにも対応できる柔軟性を持っていることを示しています。

8.  **特定のドメインに特化したツール (Domain-specific Tools):**
    *   **関連性:** 生体画像解析ツールのilastik [7] のような、特定の分野で高度に最適化されたツールが存在します。
    *   **違い:** SAMは汎用的なセグメンテーションモデルですが、これらのツールは特定のドメインのデータ特性やタスク要件に合わせて専門化されています。
    *   **比較:** 論文のLimitations (§8) で言及されています。
    *   **結果:** 特定のドメインに高度に最適化されたツールは、その狭い領域ではSAMよりも優れた性能を発揮することが予想されます。SAMの強みはあくまで幅広いタスクとデータへの対応能力です。

総括すると、SAMは、従来のセグメンテーション手法とは異なる「プロンプト可能なセグメンテーション」というタスクと、それを可能にする効率的なモデル設計、そして大規模データ（SA-1B）によって、多くの下流タスクに対して驚異的なゼロショット汎化能力を発揮します。個別の特定のタスクにおいて、そのタスク専用に大量のデータで訓練された最先端モデルには及ばない場合もありますが、SAMの強みは、その汎用性、多様なプロンプトへの対応能力、効率的な推論、そして他のシステムと容易に組み合わせられる柔軟性にあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/2eda9f82-0076-4d66-a068-c8644ad84672.png)

#### Q:提案手法の限界と今後の課題はなんですか？
#### A:

主な限界は以下の通りです。

1.  **マスクの品質に関する課題:**
    *   **細かい構造の欠落:** 微細なディテールや複雑な形状を捉えきれない場合があります。
    *   **小さな孤立成分の生成:** 時として、意図しない小さなマスクの断片や孤立した成分を生成する可能性があります。
    *   **境界の鮮明さ:** より計算コストの高い、特定のタスクに特化した手法（例えば、ズームインして詳細な境界を処理する手法）に比べると、マスクの境界が常に鮮明であるとは限りません。

2.  **特定の利用シナリオやタスクにおける性能:**
    *   **多数の点プロンプト:** 多数の点を繰り返し与えるインタラクティブセグメンテーションのシナリオでは、専用に設計・訓練されたインタラクティブセグメンテーション手法の方が高いIoU（Intersection over Union）を達成する場合があります。SAMは汎用性とリアルタイム性を重視しています。
    *   **重い画像エンコーダー:** プロンプト処理自体は高速ですが、最初の画像埋め込みを計算するための画像エンコーダーは計算負荷が高く、画像ごとの最初の処理はリアルタイムではありません（複数のプロンプトに対してそのコストが償却される、amortized real-timeです）。
    *   **特定のドメインでの性能:** 医療画像や特定の種類の物体検出など、高度に専門化されたドメイン特有のツールには、その領域で特化した性能で劣る可能性があります。

3.  **プロンプトとタスクの適用範囲:**
    *   **テキストプロンプトの堅牢性:** テキストからマスクを生成する機能は概念実証段階であり、まだ完全に堅牢ではありません。シンプルな指示には対応できますが、複雑な指示や曖昧な指示には苦労することがあります。
    *   **セマンティック/パノプティックセグメンテーション:** 標準的なセマンティックセグメンテーションやパノプティックセグメンテーションのようなタスクを、単純なプロンプトエンジニアリングだけで効果的に行う方法は現在のところ明確ではありません。

今後の課題としては、これらの限界を克服し、SAMの可能性をさらに広げることが挙げられます。

*   **マスク品質の向上:** より細かい構造や鮮明な境界を生成できるよう、モデルや訓練方法を改善する。
*   **テキストプロンプトの強化:** 自然言語の理解度を高め、より複雑で微妙なテキスト指示にも正確に対応できるようにする。
*   **汎用性の拡張:** セマンティックセグメンテーションやパノプティックセグメンテーションなど、既存の重要なセグメンテーションタスクへの適用方法を探るか、それらをより容易に扱うためのモデルの改良を行う。
*   **他のシステムとの連携強化:** SAMを他のAIコンポーネント（検出器、3D再構築システム、ロボットなど）と組み合わせることで、新しいアプリケーションや能力を実現するための方法論をさらに発展させる。
*   **公平性とバイアスの低減:** 特定のグループ（例：知覚された性別による衣服のセグメンテーション精度差）に対する性能差などのバイアスを特定し、データやモデルの改善を通じて軽減する取り組みを進める。
*   **効率性の追求:** 画像エンコーダーを含む全体的な推論速度や計算リソースの効率をさらに高める。

SAMはセグメンテーションの基礎モデルとして強力な基盤を提供しましたが、これらの課題は、セグメンテーションAIの能力を真に「Segment Anything」の目標に近づけるための、活発な研究領域を示しています。共同研究を通じて、これらの課題に挑み、新たな発見や応用につなげていくことができるでしょう。