Sobre el proyecto
YoloDotNet es una biblioteca modular de visión artificial para .NET 8 que ejecuta modelos YOLO exportados a ONNX. Está implementada en C# y utiliza ONNX Runtime y SkiaSharp, sin necesidad de un entorno de ejecución de Python ni OpenCV. La biblioteca está dirigida a aplicaciones de escritorio, servicios backend y canalizaciones de visión en tiempo real en Windows, Linux y macOS.
Las tareas de inferencia compatibles incluyen clasificación de imágenes, detección estándar de objetos, detección de cuadros delimitadores orientados, segmentación y estimación de pose. La documentación enumera compatibilidad con las familias de modelos YOLOv5u hasta YOLOv26, YOLO-World, YOLO-E y RT-DETR, con una tabla de modelos verificados que cubre variantes específicas de clasificación, detección, segmentación, pose y OBB. El uso de imágenes y transmisiones de video se demuestra en los proyectos de demostración del repositorio.
El paquete principal YoloDotNet es independiente del proveedor, y los usuarios instalan exactamente un paquete de proveedor de ejecución. Los proveedores disponibles son CPU, CUDA con soporte opcional para TensorRT, OpenVINO, CoreML y DirectML. La disponibilidad de plataforma varía: CPU funciona en Windows, Linux y macOS; CUDA y OpenVINO son compatibles con Windows y Linux; CoreML es compatible con macOS; y DirectML es compatible con Windows. El README señala que mezclar proveedores puede causar conflictos en el entorno de ejecución nativo.
La API está diseñada para un control explícito sobre la carga del modelo, el preprocesamiento, los umbrales, la memoria y el comportamiento de ejecución. Un flujo típico de detección de objetos crea una instancia de Yolo con YoloOptions y un proveedor de ejecución, decodifica una imagen con SkiaSharp, llama a RunObjectDetection con configuraciones de confianza e IoU, dibuja los resultados y guarda la salida. El parámetro IoU se aplica a modelos basados en NMS y se ignora para modelos como YOLOv10 y YOLOv26 que manejan el posprocesamiento relevante internamente.
La versión 4.2 agrega inferencia de región de interés para áreas seleccionadas de imagen o video, dibujo opcional de bordes en objetos segmentados, extracción ordenada de puntos de contorno, asistentes ToJson y SaveJson para resultados, y asistentes ToYoloFormat y SaveYoloFormat para producir anotaciones de estilo YOLO. Otras características documentadas incluyen almacenamiento en caché del motor y configuraciones ajustables de redimensionamiento y muestreo.
Los usuarios proporcionan sus propios modelos ONNX; el proyecto no descarga, incluye ni agrupa pesos preentrenados. El README recomienda Ultralytics export opset 17 para YOLOv5u hasta YOLOv12 y opset 18 para YOLOv26. YoloDotNet en sí tiene licencia MIT, mientras que los modelos producidos con herramientas Ultralytics pueden tener licencia AGPL-3.0 o requerir una licencia comercial, por lo que los usuarios son responsables de confirmar el cumplimiento de la licencia del modelo.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.