YOLOv1

YOLOv1 es el detector original de 2016 que dio nombre a la familia YOLO: una sola red convolucional con una cabeza totalmente conectada predice todos los bounding boxes y puntuaciones de clase en una única pasada, sin anchor boxes. LibreYOLO lo incluye como una pieza de museo congelada y solo de inferencia.

Tareas
detection
Tamaños
t, b at 448 px
Instalación
pip install libreyolo
Nivel de compatibilidad
Museo, desde v. Pieza de exposición congelada. Solo se corrigen errores.
Proyecto original
YOLOv1 de Joseph Redmon, Public domain (Darknet "YOLO LICENSE"). Artículo, fuente
Licencias
Código MIT, pesos Public domain (Darknet "YOLO LICENSE"). Uso comercial

Instalación

YOLOv1 no necesita ningún extra más allá del paquete base.

bash
pip install libreyolo

Predicción

Esta familia es solo de inferencia: train() lanza NotImplementedError, así que esta página no tiene sección de entrenamiento. La predicción, la validación y la exportación sí están soportadas. Los pesos se descargan de Hugging Face en el primer uso y se guardan en la caché local.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreYOLO1b.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes:    print(box.cls, box.conf, box.xyxy)
CLI
libreyolo predict model=LibreYOLO1b.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

El objeto Results que se devuelve es el mismo que devuelve cualquier familia, así que cambiar a otro detector es un cambio de una línea. Dos cosas son específicas de esta familia. El checkpoint publicado está entrenado con Pascal VOC (2007+2012), no con COCO, así que box.cls indexa las 20 categorías de VOC (aeroplane, bicycle, bird, boat, bottle, bus, car, cat, chair, cow, diningtable, dog, horse, motorbike, person, pottedplant, sheep, sofa, train, tvmonitor) en lugar de las 80 de COCO. Y la cabeza de detección totalmente conectada acepta una imagen cada vez, así que una lista de fuentes se recorre en bucle en vez de ejecutarse como un batch real. Consulta predicción para fuentes, streaming y manejo de resultados.

Validación

val() devuelve un diccionario de claves metrics/ que cubren la precisión, el recall, el mAP 50 y el mAP 50-95, medidos sobre un dataset en el mismo espacio de etiquetas estilo VOC con el que se entrenó el checkpoint.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO1b.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mAP50-95"])print(metrics["metrics/mAP50"])
CLI
libreyolo val model=LibreYOLO1b.pt data=my-dataset.yaml

Exportación

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

Un artefacto exportado se vuelve a cargar con LibreYOLO() según su extensión de archivo, así que un archivo .onnx o .engine se comporta como un checkpoint y devuelve el mismo Results. Ejecutar el grafo en un runtime pelado, sin LibreYOLO instalado, también está soportado, pero entonces el preprocesado y el postprocesado corren de tu cuenta.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO1b.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)
CLI
libreyolo export model=LibreYOLO1b.pt format=onnxlibreyolo export model=LibreYOLO1b.pt format=tensorrt half=True
Usar el archivo exportado
from libreyolo import LibreYOLO, SAMPLE_IMAGE # La factoría enruta según la extensión del archivo, así que un artefacto# exportado se carga como cualquier checkpoint y devuelve el mismo objeto# Results.model = LibreYOLO("LibreYOLO1b.onnx")result = model(SAMPLE_IMAGE) print(result.boxes.xyxy)

Checkpoints

Todos los archivos de pesos publicados de esta familia.

ArchivoEntrada (px)Licencia de los pesos
Detection
LibreYOLO1b.pt448other

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
YOLOv1, Joseph Redmon
Licencia del proyecto original
Public domain (Darknet "YOLO LICENSE")
Fuente del proyecto original
github.com/pjreddie/darknet
Código de LibreYOLO
MIT
Pesos
Public domain (Darknet "YOLO LICENSE"), republicados en huggingface.co/LibreYOLO
Interpretación
Darknet's bundled NOTICE quotes its own license in full: "Darknet is public domain. Do whatever you want with it." That covers both the architecture and the pretrained weights LibreYOLO converts from it, with no attribution requirement and no restriction on commercial use. LibreYOLO's own code around this architecture is MIT. One thing to know before deploying this checkpoint: it is trained on Pascal VOC 2007+2012, not COCO, so it detects and names the 20 VOC categories rather than the 80 COCO ones.

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.