Uso de la integración de ONNX para exportar modelos de Ultralytics YOLO
Aprende a exportar modelos de Ultralytics YOLO, como Ultralytics YOLO11, usando la integración de ONNX para el despliegue multiplataforma en varios tipos de hardware.

Cuando las soluciones de IA empezaron a llamar la atención, la mayoría de los modelos se desplegaban en servidores potentes dentro de entornos controlados. Sin embargo, a medida que la tecnología ha avanzado, el despliegue se ha expandido mucho más allá del centro de datos.
Hoy en día, los modelos de IA se ejecutan en todo tipo de dispositivos, desde servidores en la nube y ordenadores de sobremesa hasta smartphones y dispositivos edge. Este cambio permite un procesamiento más rápido, funcionalidad offline y sistemas más inteligentes que operan más cerca de donde se generan los datos.
Un área donde esto es especialmente evidente es la visión artificial, una rama de la IA que permite a las máquinas interpretar datos visuales. Se utiliza para impulsar aplicaciones como el reconocimiento facial, la conducción autónoma y el análisis de vídeo en tiempo real. A medida que estos casos de uso crecen, también lo hace la necesidad de modelos que puedan ejecutarse sin problemas en diversos tipos de hardware y plataformas.
Pero desplegar modelos de visión artificial en diversos objetivos de despliegue no siempre es sencillo. Los dispositivos difieren en cuanto a hardware, sistemas operativos y frameworks compatibles, lo que hace que la flexibilidad y la compatibilidad sean esenciales.
Es por eso que tener la opción de exportar modelos de visión artificial como Ultralytics YOLO11 a diferentes formatos es clave. Por ejemplo, la integración ONNX (Open Neural Network Exchange) que admite Ultralytics proporciona una forma práctica de cerrar la brecha entre el entrenamiento y el despliegue. ONNX es un formato abierto que hace que los modelos sean agnósticos respecto al framework y estén listos para el despliegue en múltiples plataformas.

Fig 1. ONNX te ayuda a tomar un modelo entrenado en un framework y ejecutarlo en otro fácilmente.
En este artículo, echaremos un vistazo más de cerca a la integración ONNX que admite Ultralytics y exploraremos cómo puedes exportar tu modelo YOLO11 para un despliegue flexible multiplataforma.
Link to this section¿Qué es ONNX y ONNX Runtime?#
Open Neural Network Exchange es un proyecto de código abierto que define un formato estándar para modelos de aprendizaje automático. Desarrollado originalmente por Microsoft y Facebook, permite a los desarrolladores entrenar un modelo en un framework, como PyTorch, y ejecutarlo en otro, como TensorFlow. Esto hace que el desarrollo de IA sea más flexible, colaborativo y accesible, especialmente en campos como la visión artificial.
ONNX proporciona un conjunto común de operadores y un formato de archivo unificado, lo que facilita mover modelos entre diferentes herramientas, frameworks, runtimes y compiladores. Normalmente, un modelo entrenado en un framework no es fácilmente compatible con otro; pero con ONNX, puedes exportar tu modelo una vez y desplegarlo en casi cualquier lugar: en CPUs (Central Processing Units), GPUs (Graphics Processing Units), dispositivos móviles o hardware edge.
Además, ONNX Runtime es un motor de inferencia de alto rendimiento desarrollado específicamente para ejecutar modelos en formato ONNX. Está diseñado para hacer que los modelos ONNX se ejecuten de manera más rápida y eficiente en una amplia gama de plataformas, incluyendo servidores, dispositivos móviles y hardware edge. ONNX Runtime es compatible con frameworks populares como PyTorch, TensorFlow, TensorFlow Lite y scikit-learn, lo que facilita su integración en diferentes flujos de trabajo y el despliegue de modelos donde se necesiten.

Fig 2. ONNX y ONNX Runtime permiten un despliegue de modelos flexible y multiplataforma.
Link to this sectionCaracterísticas clave de ONNX#
Antes de comentar cómo exportar YOLO11 al formato ONNX, echemos un vistazo a algunas características clave del formato de modelo ONNX.
Tanto si cambias de herramienta como si despliegas en diferentes dispositivos o actualizas sistemas, ONNX ayuda a que todo funcione sin problemas. Esto es lo que hace único al formato de modelo ONNX:
-
Un formato estándar: ONNX utiliza una forma común de describir cómo se construyen los modelos, como capas y operaciones (piensa en ellos como bloques de construcción). Cuando un modelo se convierte a ONNX, sigue este estándar para que cualquier sistema que admita ONNX pueda entenderlo y ejecutarlo.
-
Compatibilidad con versiones anteriores: Incluso a medida que ONNX sigue mejorando, asegura que los modelos antiguos sigan funcionando con versiones más recientes. Esto significa que no tienes que volver a entrenar o reconstruir tus modelos cada vez que ONNX recibe una actualización.
-
Diseño de modelo basado en grafos: Los modelos ONNX están estructurados como grafos de computación, donde cada nodo representa una operación (como una capa o una función matemática) y las aristas indican el flujo de datos. Este diseño basado en grafos facilita la integración con varios sistemas que utilizan estructuras de grafos de computación similares.
-
Herramientas orientadas al desarrollador: Viene con una amplia gama de herramientas que te ayudan a convertir, validar y optimizar tus modelos. Estas herramientas simplifican el proceso de mover modelos entre diferentes frameworks y pueden acelerar el despliegue, especialmente para aplicaciones de visión artificial.
Link to this sectionUna visión general de la integración ONNX#
Exportar modelos Ultralytics YOLO, como Ultralytics YOLO11, en formato ONNX es sencillo y se puede hacer en unos pocos pasos.
Para empezar, instala el paquete de Python de Ultralytics utilizando un gestor de paquetes como 'pip'. Puedes hacerlo ejecutando el comando “pip install ultralytics” en tu símbolo del sistema o terminal para empezar.
Con el paquete Ultralytics, puedes entrenar, probar, ajustar, exportar y desplegar modelos fácilmente para varias tareas de visión artificial, haciendo que todo el proceso sea más rápido y eficiente. Si durante la instalación encuentras alguna dificultad, puedes consultar la guía de problemas comunes para obtener soluciones y consejos.
Una vez instalado el paquete Ultralytics, puedes cargar y exportar el modelo YOLO11 al formato ONNX usando el código de abajo. Este ejemplo carga un modelo YOLO11 preentrenado (yolo11n.pt) y lo exporta como un archivo ONNX (yolo11n.onnx), dejándolo listo para su despliegue en diferentes plataformas y dispositivos.
Después de convertir tu modelo al formato ONNX, puedes desplegarlo en una variedad de plataformas.
El ejemplo de abajo muestra cómo cargar el modelo YOLO11 exportado (yolo11n.onnx) y ejecutar una inferencia con él. Realizar una inferencia significa simplemente usar el modelo entrenado para hacer predicciones sobre nuevos datos. En este caso, usaremos la URL de una imagen de un autobús para probar el modelo.
Cuando ejecutas este código, la siguiente imagen de salida se guardará en la carpeta runs/detect/predict.

Fig 3. Ejecutando una inferencia usando el modelo YOLO11 exportado en una imagen.
Link to this section¿Cuándo deberías elegir la integración ONNX?#
El paquete de Python de Ultralytics admite la exportación de modelos a varios formatos, incluidos TorchScript, CoreML, TensorRT y ONNX. Entonces, ¿por qué elegir ONNX?
Lo que hace que ONNX destaque es que es un formato agnóstico respecto al framework. Aunque muchos otros formatos de exportación están vinculados a herramientas o entornos específicos, ONNX utiliza un formato estandarizado y un conjunto compartido de operadores. Esto lo hace altamente portátil, compatible con el hardware e ideal para el despliegue multiplataforma, ya sea que trabajes con servidores en la nube, aplicaciones móviles o dispositivos edge.
Aquí tienes algunas razones por las que la integración ONNX podría ser la opción ideal para tus proyectos YOLO11:
-
Despliegue portátil: Una vez exportado a ONNX, tu modelo YOLO11 puede desplegarse en varias plataformas sin necesidad de cambios en el código o reentrenamiento.
-
Soporte a nivel industrial: ONNX cuenta con el respaldo de las principales empresas y frameworks de IA, lo que lo convierte en un formato fiable y ampliamente aceptado. Garantiza compatibilidad a largo plazo, de forma muy parecida a como funcionan los archivos PDF en diferentes dispositivos.
-
Desarrollo preparado para el futuro: Usar ONNX ayuda a proteger tus inversiones en modelos. A medida que las herramientas evolucionan, ONNX mantiene tus modelos relevantes y utilizables, incluso en entornos nuevos o diferentes.
-
Sin dependencia de proveedores: Algunas herramientas te obligan a usar únicamente su sistema, lo que puede limitar lo que tu modelo puede hacer. ONNX evita esto al permitirte elegir la plataforma que mejor se adapte a tus necesidades, sin quedarte atascado con una única configuración.
Link to this sectionAplicaciones de YOLO11 y el formato de modelo ONNX#
A continuación, exploremos algunas aplicaciones del mundo real donde YOLO11 se puede desplegar con la ayuda de la integración ONNX.
Link to this sectionSeguimiento de inventario en almacenes usando YOLO11#
En los almacenes ajetreados, es difícil vigilar cada producto y paquete en todo momento. Los sistemas de visión artificial pueden ayudar a los trabajadores a encontrar productos en los estantes y obtener información como el número de productos, el tipo, etc. Estos sistemas pueden ayudar a las empresas a gestionar automáticamente su vasto inventario y ahorrar mucho tiempo a los trabajadores del almacén.
Específicamente, en almacenes inteligentes, los modelos YOLO11 exportados a ONNX pueden usarse para identificar y contar artículos en tiempo real usando cámaras y dispositivos edge. El modelo exportado puede ayudar a escanear estantes o palés para detectar niveles de stock, artículos faltantes o espacios vacíos. Dado que exportar a ONNX hace que el modelo sea ligero y eficiente, puede ejecutarse directamente en pequeños dispositivos edge, como cámaras inteligentes, eliminando la necesidad de servidores costosos o acceso constante a la nube.

Fig 4. Un ejemplo de uso de YOLO11 para detectar y contar paquetes.
Link to this sectionGestión de residuos hospitalarios con YOLO11#
Los hospitales de todo el mundo generan grandes cantidades de residuos cada día, desde guantes y jeringuillas usados hasta equipos utilizados durante la cirugía (como herramientas quirúrgicas de un solo uso o contaminadas, como tijeras y bisturíes). De hecho, las investigaciones muestran que los hospitales producen alrededor de 5 millones de toneladas de residuos cada año, lo que supone 29 libras de residuos por cama al día.
Clasificar estos residuos correctamente es esencial para la higiene, la seguridad y el cumplimiento de las normativas. Con los modelos YOLO11 exportados en formato ONNX, los hospitales pueden automatizar y monitorizar la eliminación de residuos en tiempo real.
Por ejemplo, las cámaras colocadas cerca de los contenedores de basura en áreas como quirófanos o pasillos pueden supervisar los artículos a medida que se desechan. Un modelo YOLO11 personalizado, entrenado para reconocer diferentes tipos de residuos médicos, puede analizar las imágenes e identificar qué se está tirando. Si un artículo termina en el contenedor equivocado, como una jeringuilla usada en la basura normal, el sistema puede configurarse para alertar inmediatamente al personal con una luz o sonido, ayudando a prevenir la contaminación y garantizar el cumplimiento.

Fig 5. Uso de YOLO11 para detectar instrumentos médicos.
Link to this sectionMonitorización de cultivos habilitada por YOLO11#
Saber el momento adecuado para cosechar los cultivos puede tener un gran impacto tanto en la calidad del producto como en la productividad general de una granja. Tradicionalmente, los agricultores confían en la experiencia y las inspecciones manuales, pero con los avances recientes en tecnología, eso está empezando a cambiar.
Ahora, con innovaciones de visión artificial como YOLO11, exportado en formato ONNX, los agricultores pueden aportar automatización y precisión al campo. Usando drones o cámaras montadas en tractores o postes, los agricultores pueden capturar imágenes de sus cultivos (como tomates, manzanas o trigo). YOLO11 puede utilizarse entonces para detectar indicadores clave como el color, el tamaño y la distribución de los cultivos. Basándose en esta información, los agricultores pueden determinar si los cultivos están listos para la cosecha, todavía madurando o si ya han pasado su mejor momento.

Fig 6. YOLO11 se puede utilizar para detectar cultivos en imágenes de drones aéreos.
Link to this sectionLimitaciones de ONNX a considerar#
Aunque ONNX ofrece numerosos beneficios, como la portabilidad, la compatibilidad multiplataforma y la interoperabilidad entre frameworks, hay algunas limitaciones a tener en cuenta:
-
Tamaño del modelo: Convertir modelos al formato ONNX a veces puede resultar en tamaños de archivo más grandes en comparación con sus formatos originales. Técnicas como la cuantización y la poda pueden ayudar a mitigar este problema reduciendo el tamaño del modelo sin afectar significativamente al rendimiento.
-
Compatibilidad del runtime: Aunque ONNX Runtime está diseñado para la compatibilidad multiplataforma, el rendimiento y el soporte pueden variar según los diferentes hardware y sistemas operativos.
-
Desafíos de depuración: Depurar modelos ONNX puede ser más complejo que en frameworks nativos como PyTorch o TensorFlow. Los mensajes de error pueden ser menos descriptivos, lo que dificulta la detección de problemas. Sin embargo, herramientas como Netron para la visualización de modelos y las capacidades de registro de ONNX Runtime pueden ayudar en la resolución de problemas.
Link to this sectionConclusiones clave#
Exportar Ultralytics YOLO11 a ONNX hace que sea fácil tomar un modelo de visión artificial entrenado y desplegarlo en casi cualquier lugar, ya sea en un portátil, un dispositivo móvil o incluso una cámara inteligente compacta. Con la integración ONNX, no estás atado a un solo framework o plataforma, lo que te da la flexibilidad de ejecutar tu modelo en el entorno que mejor se adapte a tu aplicación.
Esto hace que la transición del entrenamiento al despliegue en el mundo real sea más rápida y eficiente. Tanto si estás rastreando inventario en un almacén como asegurando que los residuos hospitalarios se eliminen correctamente, esta configuración ayuda a que los sistemas funcionen con mayor fluidez, reduce errores y ahorra un tiempo valioso.
¿Quieres aprender más sobre visión artificial e IA? Explora nuestro repositorio de GitHub, conecta con nuestra comunidad, y echa un vistazo a nuestras opciones de licencia para poner en marcha tu proyecto de visión artificial. Si estás explorando innovaciones como la IA en la fabricación y la visión artificial en la industria automotriz, visita nuestras páginas de soluciones para descubrir más.






