EdgeTAM

EdgeTAMはSAM 2のオンデバイス向けバリアントで、点とボックスを使う同じプロンプト指定可能ワークフローを維持しながら、モバイル推論速度を重視して構築されています。LibreYOLOは、LibreYOLO()検出器ファクトリーとは別の専用LibreSAMファクトリーを通じて、その画像セグメンテーション経路に対応します。

タスク
instance segmentation
サイズ
インストール
pip install libreyolo
サポートティア
姉妹ティア、v以降。独自のファクトリと契約を持つ、独立した製品インターフェースです。
アップストリーム
Meta Reality LabsのEdgeTAM、Apache-2.0。論文ソース
ライセンス
コード:MIT、重み:Apache-2.0。商用利用

インストール

EdgeTAMには sam 追加パッケージが必要で、transformerstimm が導入されます。

bash
pip install "libreyolo[sam]"

推論

LibreSAM(...)(またはファミリー固有の LibreEdgeTAM(...))は LibreYOLO(...) とは別のエントリポイントです。空間プロンプトがなければここでの順伝播に意味がないため、検出器ではなくプロンプト指定可能なセグメンターを返します。このファミリーには libreyolo predict CLIコマンドがありません。Python APIを使用してください。対応するのは画像セグメンテーションだけで、EdgeTAMの動画トラッキングはここでは対象外です。

点とボックスのプロンプト
from libreyolo import LibreSAM, SAMPLE_IMAGE # EdgeTAMのサイズはedgeのみ 別名はedgetamとedge-tamとedgetam-edge#model = LibreSAM("edgetam") # 点プロンプト ピクセル座標[x, y]でラベル1は前景result = model.predict(SAMPLE_IMAGE, points=[640, 420], labels=[1])print(result.masks.xy)      # マスクごとのポリゴンprint(result.boxes.xyxy)    # マスクから得た外接ボックス # 点の代わりにボックスプロンプトresult = model.predict(SAMPLE_IMAGE, bboxes=[300, 200, 900, 700]) # プロンプトなしでは画像全体をセグメンテーション# 簡略版の自動マスク生成器で網羅的な参照実装とは異なるresult = model.predict(SAMPLE_IMAGE)
1回エンコードして複数回プロンプトを指定
from libreyolo import LibreEdgeTAM, SAMPLE_IMAGE model = LibreEdgeTAM() # 画像エンコーダーは高コスト set_image()で1回だけ実行し# その後のすべてのpredict()呼び出しでキャッシュ済み埋め込みを再利用model.set_image(SAMPLE_IMAGE)a = model.predict(points=[640, 420], labels=[1])b = model.predict(bboxes=[300, 200, 900, 700])model.reset_image()

点プロンプトは、1つの物体に [x, y]、複数の物体に [[x, y], ...]、またはnumpy配列を受け付けます。labels は各点を 1(前景)または 0(背景)として示し、デフォルトではすべて前景です。ボックスプロンプトは [x1, y1, x2, y2] またはボックス一覧を受け取り、ボックスごとに1つのマスクを生成します。両方のプロンプトを省略すると、密なグリッドでプロンプトを指定し、信頼度が高く重複しないマスクを保持することで画像全体をセグメンテーションします。この「すべてをセグメンテーション」モードは参照用の自動マスク生成器より簡略化されており、混雑した場面ではセグメンテーションが不足する場合があります。そのため、正確な結果には実際の点またはボックスプロンプトを使用します。conf は検出信頼度ではなく、予測されたマスク品質(IoU)でフィルタリングします。すべての候補を保持するには 0.0 を渡してください。multimask=True は、1つの最良マスクの代わりに、プロンプトごとにSAMの全体と部分の曖昧さを表す3つのマスクをすべて返します。device= はモデルを移動し、set_image() セッションが有効であれば、キャッシュ済み埋め込みベクトルも移動します。プロンプト指定可能なマスクには固定クラス集合がないため、すべてのマスクは "object" という名前のクラスID 0 を持ちます。このファミリーでは train()val()export()track() がすべて NotImplementedError を発生させます。ここでLibreYOLOが対応するのは画像推論です。ソースの種類については、推論を参照してください。

バリアント

サイズはedgeの1つで、入力解像度は固定です。そのため、このファミリーを他のSAM階層より優先するかはサイズではなくハードウェアによって決まります。EdgeTAMは制約のあるオンデバイス推論専用として存在します。

チェックポイント

このファミリーで公開されているすべての重みファイルです。

ファイル入力(px)重みのライセンス
Instance segmentation
LibreEdgeTAM.ptapache-2.0

上記のすべてのファイルは現在LibreYOLO orgにあり、初回使用時にダウンロードされます。

ライセンス

ダウンロードする特定の重みについて、Hugging Faceリポジトリのライセンスを確認してください。LibreYOLO orgの各チェックポイントにはライセンスが付与されており、同じファミリー内でも常に同一とは限りません。そのリポジトリが正式な情報源です。以下の概要は、このページを最後に検証した時点で適用されていた内容を示します。

これは関連するライセンスの説明であり、法的助言ではありません。商用上重要な場合は、自分でライセンスを読み、専門家の助言を受けてください。

原著作物
EdgeTAM, Meta Reality Labs
アップストリームのライセンス
Apache-2.0
アップストリームのソース
github.com/facebookresearch/EdgeTAM
LibreYOLOのコード
MIT
重み
Apache-2.0、huggingface.co/LibreYOLOで再公開
解釈
Apache-2.0 is a permissive license, so this code and these weights can be used in commercial and closed-source products. It asks you to keep the license text and attribution notices with any copy you redistribute, and it grants a patent license. LibreYOLO does not vendor EdgeTAM's model source: it calls the Apache-2.0 Transformers adapter and reproduces the pinned upstream image and prompt-coordinate transforms from facebookresearch/EdgeTAM commit 7711e012a30a2402c4eaab637bdb00a521302c91. The republished LibreYOLO/LibreEdgeTAM snapshot is converted from facebook/EdgeTAM revision 14d7ecc48c656b94e5184519f698cd5386c5a2bf, checked tensor-by-tensor against a Transformers-format reference before publication, and tagged Apache-2.0 on the LibreYOLO Hugging Face org. LibreYOLO ships image inference only; EdgeTAM's video tracking is out of scope for this family.

引用

@article{zhou2025edgetam,
  title={EdgeTAM: On-Device Track Anything Model},
  author={Zhou, Chong and Zhu, Chenchen and Xiong, Yunyang and Suri, Saksham and Xiao, Fanyi and Wu, Lemeng and Krishnamoorthi, Raghuraman and Dai, Bo and Loy, Chen Change and Chandra, Vikas and Soran, Bilge},
  journal={arXiv preprint arXiv:2501.07256},
  year={2025}
}

著者によるgithub.com/facebookresearch/EdgeTAM#citing-edgetamの引用ブロックからコピーしています。

LibreYOLO v1.5.0で検証済みです。このページのサポート表、チェックポイント、ベンチマーク値は手作業で記述したものではなく、リリース済みライブラリと公開済みの重みから生成されています。