EdgeTAM

EdgeTAM es una variante de SAM 2 pensada para ejecutarse en el propio dispositivo, construida para la velocidad de inferencia en móvil manteniendo el mismo flujo de trabajo con prompts de punto y de caja. LibreYOLO admite su ruta de segmentación de imágenes mediante una factoría LibreSAM dedicada, separada de la factoría de detectores LibreYOLO().

Tareas
instance segmentation
Tamaños
Instalación
pip install libreyolo
Nivel de compatibilidad
Nivel hermano, desde v. Una superficie de producto independiente con su propia factoría y su propio contrato.
Proyecto original
EdgeTAM de Meta Reality Labs, Apache-2.0. Artículo, fuente
Licencias
Código MIT, pesos Apache-2.0. Uso comercial

Instalación

EdgeTAM necesita el extra sam, que arrastra transformers y timm.

bash
pip install "libreyolo[sam]"

Predicción

LibreSAM(...) (o el LibreEdgeTAM(...) específico de la familia) es un punto de entrada distinto de LibreYOLO(...): devuelve un segmentador guiado por prompts en lugar de un detector, porque aquí un forward pass no significa nada sin un prompt espacial. No hay comando de CLI libreyolo predict para esta familia; usa la API de Python. Solo se admite la segmentación de imágenes; el seguimiento en vídeo de EdgeTAM queda fuera del alcance aquí.

Prompts de punto y de caja
from libreyolo import LibreSAM, SAMPLE_IMAGE # EdgeTAM tiene un único tamaño, "edge". Alias: "edgetam", "edge-tam",# "edgetam-edge".model = LibreSAM("edgetam") # Un prompt de punto: [x, y] en coordenadas de píxel, label 1 = primer plano.result = model.predict(SAMPLE_IMAGE, points=[640, 420], labels=[1])print(result.masks.xy)      # un polígono por máscaraprint(result.boxes.xyxy)    # caja ajustada derivada de la máscara # Un prompt de caja en lugar de un punto.result = model.predict(SAMPLE_IMAGE, bboxes=[300, 200, 900, 700]) # Sin ningún prompt se segmenta la imagen entera (un generador# automático de máscaras simplificado, no el exhaustivo de referencia).result = model.predict(SAMPLE_IMAGE)
Codifica una vez, lanza muchos prompts
from libreyolo import LibreEdgeTAM, SAMPLE_IMAGE model = LibreEdgeTAM() # El encoder de imagen es la parte cara. set_image() lo ejecuta una vez;# cada llamada posterior a predict() reutiliza el embedding cacheado.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 de punto acepta [x, y] para un objeto, [[x, y], ...] para varios, o arrays de numpy; labels marca cada punto con 1 (primer plano) o 0 (fondo) y por defecto son todos de primer plano. Un prompt de caja toma [x1, y1, x2, y2] o una lista de cajas, con una máscara por caja. Omitir ambos prompts segmenta la imagen entera lanzando una rejilla densa de prompts y quedándose con las máscaras de confianza que no se solapan; este modo de «segmentarlo todo» está simplificado frente al generador automático de máscaras de referencia y puede infrasegmentar escenas concurridas, así que un prompt real de punto o de caja es el camino preciso. conf filtra por la calidad de máscara predicha (IoU), no por una confianza de detección: pasa 0.0 para conservar todos los candidatos. multimask=True devuelve las tres máscaras de ambigüedad todo-frente-a-parte de SAM por cada prompt, en lugar de solo la mejor. device= mueve el modelo y, si hay una sesión de set_image() activa, su embedding cacheado. Cada máscara lleva el id de clase 0, con nombre "object", porque una máscara guiada por prompts no tiene un conjunto fijo de clases. train(), val(), export() y track() lanzan todos NotImplementedError en esta familia: aquí lo que LibreYOLO admite es la inferencia sobre imágenes. Consulta predicción para los tipos de fuente.

Variantes

Un único tamaño, edge, con una resolución de entrada fija, así que elegir esta familia frente al resto del nivel SAM es una decisión de hardware más que de tamaño: EdgeTAM existe específicamente para la inferencia en el propio dispositivo, con recursos limitados.

Checkpoints

Todos los archivos de pesos publicados de esta familia.

ArchivoEntrada (px)Licencia de los pesos
Instance segmentation
LibreEdgeTAM.ptapache-2.0

Todos los archivos anteriores existen hoy en la organización de LibreYOLO y se descargan la primera vez que se usan.

Licencia

Comprueba la licencia en el repositorio de Hugging Face de los pesos concretos que descargues. Cada checkpoint de la organización de LibreYOLO incluye una, y no siempre es la misma en toda una familia. Ese repositorio es la fuente autorizada; el resumen siguiente describe qué se aplicaba cuando se verificó esta página por última vez.

Esta es una descripción de las licencias implicadas, no asesoramiento legal. Si la respuesta es importante a nivel comercial, lee las licencias y busca tu propio asesoramiento.

Trabajo original
EdgeTAM, Meta Reality Labs
Licencia del proyecto original
Apache-2.0
Fuente del proyecto original
github.com/facebookresearch/EdgeTAM
Código de LibreYOLO
MIT
Pesos
Apache-2.0, republicados en huggingface.co/LibreYOLO
Interpretación
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.

Cita

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

Copiado del bloque de cita de los autores en github.com/facebookresearch/EdgeTAM#citing-edgetam.

Verificado con LibreYOLO v1.5.0. Las tablas de compatibilidad, los checkpoints y las cifras de rendimiento de esta página se generan a partir de la biblioteca publicada y los pesos publicados; no se escriben a mano.