Ver como Markdown

Faster R-CNN

Faster R-CNN detecta objetos con una red de propuestas de regiones que alimenta a un clasificador de dos etapas, la arquitectura que convirtió las propuestas de regiones en parte de la misma red entrenada en lugar de un paso aparte. LibreYOLO incluye un port de la implementación de torchvision para detección.

Tareas
detection
Tamaños
n, s, m, l at 320 to 800 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
Faster R-CNN de PyTorch, BSD-3-Clause. Artículo, fuente
Licencias
Código BSD-3-Clause, pesos BSD-3-Clause. Uso comercial

Instalación

Faster R-CNN no necesita ningún extra opcional. Todo lo que importa está en la instalación base.

bash
pip install libreyolo

Predicción

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("LibreFasterRCNNl.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes:    print(box.cls, box.conf, box.xyxy)
CLI
libreyolo predict model=LibreFasterRCNNl.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

El objeto Results devuelto es el mismo que devuelven todas las familias, así que cambiar a otro detector es un cambio de una línea. conf e iou fijan los umbrales de confianza y de NMS; Faster R-CNN mantiene su paso de NMS upstream, a diferencia de un detector basado en queries. Consulta predicción para fuentes, streaming y manejo de resultados.

Variantes

Cuatro tamaños, cada uno una configuración distinta de torchvision en lugar de una versión escalada de la misma: n es MobileNetV3-Large con una entrada de 320 px, s es el mismo backbone a 800 px, m es ResNet-50 con una pirámide de características, y l es la revisión v2, con una cabeza de propuestas de regiones más profunda y una cabeza de cajas de cuatro convoluciones en lugar de la de m. n y s sacrifican precisión a cambio de un backbone más ligero.

Validación

val() devuelve un diccionario de claves metrics/ que cubren precisión, recall, mAP 50 y mAP 50-95, medidas contra cualquier dataset en el formato con el que entrenaste.

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

Exportación

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

Faster R-CNN solo exporta a ONNX, con tamaño de batch 1. El grafo exportado mantiene dentro el paso de redimensionado upstream, así que LibreYOLO fuerza dynamic=True independientemente de lo que se le pase, para que el grafo siga siendo válido con fuentes que no sean cuadradas. Un archivo .onnx exportado se vuelve a cargar con LibreYOLO() según la extensión de su archivo y devuelve el mismo Results.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreFasterRCNNl.pt")model.export(format="onnx", imgsz=800)
CLI
libreyolo export model=LibreFasterRCNNl.pt format=onnx imgsz=800
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("LibreFasterRCNNl.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
LibreFasterRCNNn.pt320bsd-3-clause
LibreFasterRCNNs.pt800bsd-3-clause
LibreFasterRCNNm.pt800bsd-3-clause
LibreFasterRCNNl.pt800bsd-3-clause

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
Faster R-CNN, PyTorch
Licencia del proyecto original
BSD-3-Clause
Fuente del proyecto original
github.com/pytorch/vision
Código de LibreYOLO
MIT
Pesos
BSD-3-Clause, republicados en huggingface.co/LibreYOLO
Interpretación
BSD-3-Clause is a permissive license, so this code can be used in commercial and closed-source products with no obligation on your own application code. It asks only that you keep the copyright notice and disclaimer with any copy you redistribute, and it carries no patent grant. The four published checkpoints used for parity testing are not distributed in the LibreYOLO source tree: torchvision's own documentation notes that a pretrained model's terms may depend on its training data, so each Hugging Face mirror ships the BSD text on that implied basis and repeats the caveat rather than issuing an explicit checkpoint-specific grant.

Cita

@inproceedings{renNIPS15fasterrcnn,
    Author = {Shaoqing Ren and Kaiming He and Ross Girshick and Jian Sun},
    Title = {Faster {R-CNN}: Towards Real-Time Object Detection
             with Region Proposal Networks},
    Booktitle = {Advances in Neural Information Processing Systems ({NIPS})},
    Year = {2015}
}

Copiado del bloque de cita de los autores en github.com/rbgirshick/py-faster-rcnn#citing-faster-r-cnn.

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.