TEED

TEED (Tiny and Efficient Edge Detector) es una red convolucional pequeña que predice un mapa denso de probabilidad de borde a partir de una sola imagen RGB. LibreYOLO incluye su arquitectura solo para detección de bordes; la biblioteca no distribuye ningún checkpoint.

Tareas
edge
Tamaños
t at 352 px
Instalación
pip install libreyolo
Nivel de compatibilidad
Solo inferencia, desde v. Solo permite predecir, validar y exportar. Las funciones de entrenamiento no se aplican.
Proyecto original
TEED de Xavier Soria, MIT. Artículo, fuente
Licencias
Código MIT, pesos MIT. Uso comercial

Instalación

TEED no necesita ningún extra opcional. Todo lo que importa está en la instalación base.

bash
pip install libreyolo

Predicción

LibreYOLO no distribuye ningún checkpoint de TEED. Los pesos publicados oficialmente están entrenados sobre BIPED, cuyos términos de dataset publicados restringen el uso a fines no comerciales, así que LibreYOLO no los replica. Convierte un checkpoint que tengas licencia para usar con weights/convert_teed_weights.py, que comprueba las claves de los tensores contra la arquitectura del runtime antes de escribir un archivo que LibreYOLO puede cargar directamente:

bash
python weights/convert_teed_weights.py upstream.pth weights/LibreTEEDt-edge.pt --verify

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("weights/LibreTEEDt-edge.pt")result = model(SAMPLE_IMAGE, save=True) edges = result.edgesprint(edges.array.shape)        # (H, W) float32 en [0, 1]print(edges.binary(0.5).sum())  # nº de píxeles de borde tras el umbral
CLI
libreyolo predict model=weights/LibreTEEDt-edge.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

result.edges contiene el resultado: un array float32 (H, W) en [0, 1], con .binary(threshold) devolviendo una máscara booleana de bordes. No hay boxes, así que conf, iou y max_det no tienen ningún efecto. Consulta predicción para fuentes, streaming y manejo de resultados.

Variantes

TEED incluye un único tamaño en LibreYOLO. El sistema de benchmarks de LibreYOLO no ha medido esta familia, así que no hay números publicados con los que compararla.

Validación

val() informa de las F-measures ODS y OIS al estilo de BSDS contra un dataset emparejado de bordes: imágenes junto a mapas de bordes con el mismo nombre base, con una máscara de validez opcional para que los píxeles de padding nunca cuenten. imgsz debe ser divisible por el stride de downsample de la red, y LibreYOLO lanza un error claro si no lo es.

Python
from libreyolo import LibreYOLO model = LibreYOLO("weights/LibreTEEDt-edge.pt")metrics = model.val(data="my-dataset.yaml", imgsz=352) print(metrics["metrics/ODS"])   # F-measure a escala óptima de datasetprint(metrics["metrics/OIS"])   # F-measure a escala óptima de imagen
CLI
libreyolo val model=weights/LibreTEEDt-edge.pt data=my-dataset.yaml imgsz=352

Exportación

TareaONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
edgeedge to ONNX: compatibleedge to TorchScript: compatibleedge to ExecuTorch: compatibleedge to TensorRT: compatibleedge to OpenVINO: compatibleedge to Paddle: no compatibleedge to MNN: no compatibleedge to RKNN: no compatibleedge to ncnn: no compatibleedge to TFLite: compatibleedge to CoreML: no compatibleedge to Core AI: no compatible

La exportación de bordes usa un contrato de runtime de resolución fija y batch 1: se rechazan dynamic y cualquier batch distinto de 1, y el grafo exportado devuelve un único mapa de probabilidad fusionado. Un artefacto exportado se vuelve a cargar con LibreYOLO() según su extensión de archivo, así que un archivo .onnx se comporta como un checkpoint y devuelve el mismo Results.

Python
from libreyolo import LibreYOLO model = LibreYOLO("weights/LibreTEEDt-edge.pt")model.export(format="onnx", imgsz=352)model.export(format="tensorrt", imgsz=352, half=True)
CLI
libreyolo export model=weights/LibreTEEDt-edge.pt format=onnx imgsz=352libreyolo export model=weights/LibreTEEDt-edge.pt format=tensorrt imgsz=352 half=True
Usar el archivo exportado
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("weights/LibreTEEDt-edge.onnx")result = model(SAMPLE_IMAGE) print(result.edges.array.shape)

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
TEED, Xavier Soria
Licencia del proyecto original
MIT
Fuente del proyecto original
github.com/xavysp/TEED
Código de LibreYOLO
MIT
Pesos
MIT, distribuidos por sus autores. LibreYOLO no los aloja ni los replica.
Interpretación
MIT is a permissive license, so the TEED architecture LibreYOLO ports can be used in commercial and closed-source products, with the license text and copyright notice kept alongside any copy you redistribute. LibreYOLO ships no checkpoint for this family: the officially released weights are trained on BIPED, whose published dataset terms restrict use to non-commercial purposes, and mirroring them would carry that restriction into a nominally MIT-licensed download. Convert a checkpoint you hold a license for with `weights/convert_teed_weights.py`; the MIT code license does not change the terms attached to whatever checkpoint you convert.

LibreYOLO no publica ningún checkpoint de TEED. No hay nada replicado bajo la organización LibreYOLO; convierte tú mismo un checkpoint del que tengas licencia con weights/convert_teed_weights.py.

Cita

@InProceedings{Soria_2023teed,
    author    = {Soria, Xavier and Li, Yachuan and Rouhani, Mohammad and Sappa, Angel D.},
    title     = {Tiny and Efficient Model for the Edge Detection Generalization},
    booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV) Workshops},
    month     = {October},
    year      = {2023},
    pages     = {1364-1373}
}

Copiado del bloque de cita de los autores en github.com/xavysp/TEED#citation.

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.