EdgeTAM

EdgeTAM è una variante on-device di SAM 2, costruita per la velocità di inferenza su mobile mantenendo lo stesso flusso di lavoro con prompt a punti e box. LibreYOLO supporta il suo percorso di segmentazione di immagini attraverso una factory LibreSAM dedicata, separata dalla factory del detector LibreYOLO().

Task
instance segmentation
Dimensioni
Installa
pip install libreyolo
Livello di supporto
Livello parallelo, dalla v. Un'interfaccia di prodotto separata, con una propria factory e un proprio contratto.
Origine
EdgeTAM di Meta Reality Labs, Apache-2.0. Articolo, sorgente
Licenze
Codice MIT, pesi Apache-2.0. Uso commerciale

Installazione

EdgeTAM richiede l'extra sam, che porta con sé transformers e timm.

bash
pip install "libreyolo[sam]"

Predizione

LibreSAM(...) (o il LibreEdgeTAM(...) specifico della famiglia) è un entry point separato da LibreYOLO(...): restituisce un segmentatore guidato da prompt invece di un detector, perché qui un forward pass non ha senso senza un prompt spaziale. Per questa famiglia non esiste un comando CLI libreyolo predict; usa l'API Python. È supportata solo la segmentazione di immagini; il tracking video di EdgeTAM è fuori dallo scopo di questa pagina.

Prompt a punti e box
from libreyolo import LibreSAM, SAMPLE_IMAGE # EdgeTAM ha una sola taglia, "edge". Alias: "edgetam", "edge-tam",# "edgetam-edge".model = LibreSAM("edgetam") # Un prompt a punto: [x, y] in coordinate pixel, etichetta 1 = primo piano.result = model.predict(SAMPLE_IMAGE, points=[640, 420], labels=[1])print(result.masks.xy)      # poligono per mascheraprint(result.boxes.xyxy)    # box aderente derivato dalla maschera # Un prompt a box invece di un punto.result = model.predict(SAMPLE_IMAGE, bboxes=[300, 200, 900, 700]) # Nessun prompt segmenta l'intera immagine (un generatore automatico# di maschere semplificato, non quello esaustivo di riferimento).result = model.predict(SAMPLE_IMAGE)
Codifica una volta, usa molti prompt
from libreyolo import LibreEdgeTAM, SAMPLE_IMAGE model = LibreEdgeTAM() # L'encoder dell'immagine è la parte costosa. set_image() lo esegue una# volta; ogni predict() successiva riusa l'embedding in cache.model.set_image(SAMPLE_IMAGE)a = model.predict(points=[640, 420], labels=[1])b = model.predict(bboxes=[300, 200, 900, 700])model.reset_image()

Un prompt a punto accetta [x, y] per un solo oggetto, [[x, y], ...] per più oggetti, oppure array numpy; labels marca ogni punto con 1 (primo piano) o 0 (sfondo) e per default li considera tutti primo piano. Un prompt a box prende [x1, y1, x2, y2] oppure una lista di box, una maschera per box. Omettere entrambi i prompt segmenta l'intera immagine interrogando una griglia densa e tenendo le maschere sicure e non sovrapposte; questa modalità "segmenta tutto" è semplificata rispetto al generatore automatico di maschere di riferimento e può sotto-segmentare le scene affollate, quindi un vero prompt a punto o a box è la strada precisa. conf filtra in base alla qualità predetta della maschera (IoU), non a una confidenza di rilevamento: passa 0.0 per tenere ogni candidato. multimask=True restituisce per ogni prompt tutte e tre le maschere di ambiguità intero-contro-parte di SAM invece della sola migliore. device= sposta il modello e, se è attiva una sessione set_image(), anche il suo embedding in cache. Ogni maschera porta l'id di classe 0, di nome "object", perché una maschera guidata da prompt non ha un insieme di classi fisso. train(), val(), export() e track() sollevano tutti NotImplementedError per questa famiglia: qui LibreYOLO supporta l'inferenza su immagini. Vedi predizione per i tipi di sorgente.

Varianti

Una sola taglia, edge, a risoluzione di input fissa, quindi scegliere questa famiglia al posto del resto del livello SAM è una decisione hardware più che di dimensionamento: EdgeTAM esiste proprio per l'inferenza on-device su risorse limitate.

Checkpoint

Tutti i file di pesi pubblicati per questa famiglia.

FileIngresso (px)Licenza dei pesi
Instance segmentation
LibreEdgeTAM.ptapache-2.0

Oggi tutti i file elencati sopra sono presenti nell<link>organizzazione LibreYOLO</link> e vengono scaricati al primo utilizzo.

Licenza

Controlla la licenza nel repository Hugging Face degli specifici pesi che scarichi. Ogni checkpoint nell<link>organizzazione LibreYOLO</link> ne include una e non è sempre la stessa per tutta la famiglia. Quel repository è la fonte autorevole; il riepilogo seguente descrive le condizioni applicabili al momento dellultima verifica di questa pagina.

Questa è una descrizione delle licenze coinvolte, non una consulenza legale. Se la risposta è importante a fini commerciali, leggi personalmente le licenze e chiedi una consulenza indipendente.

Lavoro originale
EdgeTAM, Meta Reality Labs
Licenza upstream
Apache-2.0
Codice LibreYOLO
MIT
Pesi
Apache-2.0, ripubblicati su huggingface.co/LibreYOLO
Interpretazione
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.

Citazione

@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}
}

Copiato dal blocco di citazione degli autori disponibile su github.com/facebookresearch/EdgeTAM#citing-edgetam.

Verificato con LibreYOLO v1.5.0. Le tabelle di supporto, i checkpoint e i dati dei benchmark in questa pagina vengono generati dalla libreria rilasciata e dai pesi pubblicati, non scritti a mano.