Ultralytics YOLO27:
Integraciones

Implementa modelos YOLO de Ultralytics utilizando la integración de ExecuTorch

Descubre cómo exportar modelos YOLO de Ultralytics, como Ultralytics YOLO11, al formato ExecuTorch para realizar implementaciones eficientes y nativas de PyTorch en dispositivos edge y móviles.

ABAbirami Vina5 min read
Implementación de modelos YOLO de Ultralytics con la integración de ExecuTorch

Ciertas aplicaciones de visión artificial, como la inspección de calidad automatizada, los drones autónomos o los sistemas de seguridad inteligentes, ofrecen mejores resultados cuando los modelos YOLO de Ultralytics, como Ultralytics YOLO11, se ejecutan cerca del sensor que captura las imágenes. En otras palabras, estos modelos deben procesar los datos directamente donde se generan, en cámaras, drones o sistemas integrados, en lugar de enviarlos a la nube.

Este enfoque, conocido como IA en el perímetro, permite que los modelos realicen inferencias directamente en el dispositivo donde se capturan los datos. Al procesar la información localmente en lugar de depender de servidores remotos, los sistemas pueden lograr una latencia menor, una mayor privacidad de los datos y más fiabilidad, incluso en entornos con una conectividad a internet limitada o inexistente.

Por ejemplo, una cámara industrial que inspecciona miles de productos por minuto o un dron que navega por entornos complejos no puede permitirse los retrasos del procesamiento en la nube. Ejecutar Ultralytics YOLO11 directamente en el dispositivo permite realizar inferencias instantáneas en el propio dispositivo.

Para facilitar y hacer más eficiente la ejecución de modelos YOLO de Ultralytics en el perímetro, la nueva integración con ExecuTorch compatible con Ultralytics ofrece una forma optimizada de exportar e implementar modelos directamente en dispositivos móviles e integrados. ExecuTorch forma parte del ecosistema PyTorch Edge y proporciona una solución integral para ejecutar modelos de IA directamente en hardware móvil y perimetral, incluidos teléfonos, dispositivos ponibles, placas integradas y microcontroladores.

Esta integración facilita llevar un modelo YOLO de Ultralytics, como YOLO11, desde el entrenamiento hasta la implementación en dispositivos perimetrales. Al combinar las capacidades de visión de YOLO11 con el entorno de ejecución ligero de ExecuTorch y la canalización de exportación de PyTorch, los usuarios pueden implementar modelos que se ejecutan eficientemente en hardware perimetral, conservando la precisión y el rendimiento de la inferencia basada en PyTorch.

En este artículo veremos más de cerca cómo funciona la integración con ExecuTorch, por qué encaja tan bien en las aplicaciones de IA en el perímetro y cómo puedes empezar a implementar modelos YOLO de Ultralytics con ExecuTorch. ¡Empecemos!

¿Qué es ExecuTorch?#

Normalmente, cuando entrenas un modelo en PyTorch, se ejecuta en servidores potentes o en Unidades de procesamiento gráfico (GPUs) en la nube. Sin embargo, implementar ese mismo modelo en un dispositivo móvil o integrado, como un smartphone, un dron o un microcontrolador, requiere una solución especializada capaz de gestionar una potencia de cálculo, memoria y conectividad limitadas.

Eso es exactamente lo que aporta ExecuTorch. ExecuTorch es una solución integral desarrollada como parte del ecosistema PyTorch Edge que permite realizar inferencias eficientes en el propio dispositivo en plataformas móviles, integradas y perimetrales. Amplía las capacidades de PyTorch más allá de la nube y permite que los modelos de IA se ejecuten directamente en dispositivos locales.

Llevar la inferencia de PyTorch al perímetro#

En esencia, ExecuTorch proporciona un entorno de ejecución ligero en C++ que permite ejecutar modelos de PyTorch directamente en el dispositivo. ExecuTorch utiliza el formato de modelo PyTorch ExecuTorch (.pte), una exportación optimizada diseñada para acelerar la carga, reducir el uso de memoria y mejorar la portabilidad.

Admite XNNPACK como backend predeterminado para realizar inferencias eficientes en la Unidad central de procesamiento (CPU) y amplía la compatibilidad a una amplia variedad de backends de hardware, incluidos CoreML, Metal, Vulkan, Qualcomm, MediaTek, Arm EthosU, OpenVINO y otros.

Estos backends permiten una aceleración optimizada en dispositivos móviles, integrados y perimetrales especializados. ExecuTorch también se integra con la canalización de exportación de PyTorch y ofrece compatibilidad con funciones avanzadas, como la cuantización y la gestión de formas dinámicas, para mejorar el rendimiento y la adaptabilidad en distintos entornos de implementación.

La cuantización reduce el tamaño del modelo y acelera la inferencia al convertir valores de alta precisión, como los floats de 32 bits, en valores de menor precisión, mientras que la gestión de formas dinámicas permite que los modelos procesen eficazmente tamaños de entrada variables. Ambas funciones son fundamentales para ejecutar modelos de IA en dispositivos perimetrales con recursos limitados.

Una vista del funcionamiento de ExecuTorch

Fig. 1. Una vista del funcionamiento de ExecuTorch (Fuente)

Una capa unificada para hardware perimetral#

Además de su entorno de ejecución, ExecuTorch también actúa como una capa de abstracción unificada para múltiples backends de hardware. En pocas palabras, abstrae los detalles específicos del hardware y gestiona cómo interactúan los modelos con distintas unidades de procesamiento, incluidas las CPUs, GPUs y Unidades de procesamiento neuronal (NPUs).

Una vez exportado un modelo, ExecuTorch puede configurarse para utilizar el backend más adecuado para un dispositivo determinado. Los desarrolladores pueden implementar modelos eficientemente en hardware diverso sin escribir código personalizado específico para cada dispositivo ni mantener flujos de conversión independientes.

Gracias a su diseño modular y portátil, así como a su integración fluida con PyTorch, ExecuTorch es una excelente opción para implementar modelos de visión artificial como Ultralytics YOLO11 en sistemas móviles e integrados. Tiende un puente entre el entrenamiento de modelos y la implementación en el mundo real, haciendo que la IA en el perímetro sea más rápida, eficiente y fácil de implementar.

Funciones principales de ExecuTorch#

Antes de ver cómo exportar modelos YOLO de Ultralytics al formato ExecuTorch, exploremos qué convierte a ExecuTorch en una opción fiable para implementar IA en el perímetro.

Estas son algunas de sus funciones principales:

  • Compatibilidad con la cuantización: ExecuTorch admite la cuantización de modelos, una técnica que convierte valores de alta precisión en valores de menor precisión para reducir el tamaño del modelo y acelerar la inferencia. Esto ayuda a que los modelos se ejecuten más rápido y utilicen menos memoria en dispositivos perimetrales, manteniendo prácticamente el mismo nivel de precisión.
  • Uso eficiente de la memoria: Una de las mayores ventajas de ExecuTorch es la forma en que gestiona la memoria. En lugar de depender de la asignación dinámica de memoria, que puede introducir latencia y sobrecarga energética, ExecuTorch utiliza la planificación de memoria anticipada (AOT). Durante la exportación, analiza el grafo del modelo y calcula de antemano cuánta memoria necesita cada operación. Esto permite al entorno de ejecución ejecutar los modelos mediante un plan de memoria estático, garantizando un rendimiento predecible y evitando ralentizaciones o bloqueos en dispositivos con RAM o capacidad de procesamiento limitadas.
  • Metadatos de modelo integrados: Al exportar mediante la integración compatible con Ultralytics, cada modelo incluye un archivo YAML que contiene metadatos importantes, como el tamaño de la imagen de entrada, los nombres de las clases y los parámetros de configuración. Este archivo adicional simplifica la integración del modelo en diversas aplicaciones y garantiza un comportamiento coherente en distintas plataformas perimetrales.

Cómo exportar modelos YOLO de Ultralytics al formato ExecuTorch#

Ahora que entendemos mejor qué ofrece ExecuTorch, veamos paso a paso cómo exportar modelos YOLO de Ultralytics al formato ExecuTorch.

Paso 1: instala el paquete Ultralytics para Python#

Para empezar, tendrás que instalar el paquete de Python de Ultralytics mediante pip, que es un instalador de paquetes. Puedes hacerlo ejecutando “pip install ultralytics” en el terminal o en el símbolo del sistema.

Si trabajas en un entorno de Jupyter Notebook o Google Colab, solo tienes que añadir un signo de exclamación delante del comando, como "!pip install ultralytics". Una vez instalado, el paquete de Ultralytics proporciona todas las herramientas necesarias para entrenar, probar y exportar modelos de visión artificial, incluido Ultralytics YOLO11.

Si tienes algún problema durante la instalación o al exportar el modelo, la documentación oficial de Ultralytics y la guía de problemas habituales contienen pasos detallados para solucionar problemas y buenas prácticas que te ayudarán a empezar sin complicaciones.

Paso 2: exporta Ultralytics YOLO11#

Después de instalar el paquete de Ultralytics, puedes cargar una variante del modelo YOLO11 y exportarlo al formato ExecuTorch. Por ejemplo, puedes utilizar un modelo preentrenado como “yolo11n.pt” y exportarlo llamando a la función de exportación con el formato establecido en “executorch”.

Esto crea un directorio llamado “yolo11n_executorch_model”, que incluye el archivo de modelo optimizado (.pte) y un archivo YAML de metadatos independiente con información importante, como el tamaño de la imagen y los nombres de las clases.

Este es el código para exportar el modelo:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="executorch")

Paso 3: Ejecutar inferencias después de exportar el modelo#

Una vez exportado, el modelo está listo para implementarse en dispositivos perimetrales y móviles mediante el entorno de ejecución de ExecuTorch. El archivo de modelo .pte exportado se puede cargar en la aplicación para realizar inferencias en tiempo real en el propio dispositivo, sin necesidad de conexión a la nube.

Por ejemplo, el fragmento de código siguiente muestra cómo cargar el modelo exportado y ejecutar una inferencia. Inferencia significa simplemente utilizar un modelo entrenado para realizar predicciones sobre datos nuevos. En este caso, el modelo se prueba con una imagen de un autobús obtenida de una URL pública.

executorch_model = YOLO("yolo11n_executorch_model")
results = executorch_model.predict("https://ultralytics.com/images/bus.jpg", save=True)

Después de ejecutar el código, encontrarás la imagen de salida con los objetos detectados guardada en la carpeta “runs/detect/predict”.

Detección de objetos mediante un modelo Ultralytics YOLO11 exportado en formato ExecuTorch

Fig. 2. Detección de objetos mediante un modelo Ultralytics YOLO11 exportado en formato ExecuTorch.

Ventajas de utilizar la integración con ExecuTorch#

Al explorar las distintas opciones de exportación compatibles con Ultralytics, quizá te preguntes qué hace única a la integración con ExecuTorch. La diferencia principal es lo bien que combina rendimiento, sencillez y flexibilidad, facilitando la implementación directa de modelos de IA potentes en dispositivos móviles y perimetrales.

Estas son algunas de las principales ventajas de utilizar la integración con ExecuTorch:

  • Opciones de implementación flexibles: Los modelos de ExecuTorch se pueden implementar en aplicaciones móviles, sistemas integrados, dispositivos IoT (internet de las cosas) y hardware especializado para IA en el perímetro. Esta flexibilidad permite a los desarrolladores crear soluciones de IA escalables que ofrecen un rendimiento uniforme en plataformas y entornos diversos.
  • Rendimiento demostrado mediante benchmarks: Las pruebas realizadas en dispositivos como Raspberry Pi 5 muestran que los modelos Ultralytics YOLO11 exportados al formato ExecuTorch se ejecutan aproximadamente 2 veces más rápido que sus equivalentes de PyTorch, con una precisión prácticamente idéntica.
  • APIs de integración flexibles: ExecuTorch proporciona APIs de C++, Kotlin y Objective-C para iOS, Android y Linux integrado, lo que permite a los desarrolladores integrar modelos YOLO directamente en aplicaciones nativas.
  • Compatibilidad con la aceleración de hardware: ExecuTorch admite múltiples backends de aceleración de hardware, incluidos Vulkan y Metal para GPUs móviles, con integración opcional para OpenCL y otras APIs específicas de cada proveedor. También puede aprovechar aceleradores especializados, como las NPUs y los DSPs, para lograr mejoras considerables de velocidad frente a las inferencias que utilizan únicamente la CPU.

Aplicaciones reales de Ultralytics YOLO11 y la exportación a ExecuTorch#

Recientemente, Ultralytics fue reconocida como caso de éxito de PyTorch ExecuTorch, lo que pone de relieve nuestra compatibilidad inicial con la inferencia en el propio dispositivo y nuestras contribuciones continuas al ecosistema PyTorch. Este reconocimiento refleja el objetivo común de hacer que la IA de alto rendimiento sea más accesible en plataformas móviles y perimetrales.

De la nube al perímetro: cómo ExecuTorch y Ultralytics YOLO11 hacen realidad la IA de visión#

En la práctica, esto se traduce en soluciones de IA de visión del mundo real que se ejecutan eficientemente desde smartphones hasta sistemas integrados. Por ejemplo, en la fabricación, los dispositivos perimetrales desempeñan un papel fundamental en la supervisión de las líneas de producción y la detección de defectos en tiempo real.

Uso de Ultralytics YOLO11 para analizar una línea de montaje industrial

Fig. 3. Ejemplo del uso de Ultralytics YOLO11 para analizar una línea de montaje industrial. (Fuente)

En lugar de enviar imágenes o datos de sensores a la nube para procesarlos, lo que puede introducir retrasos y depender de la conectividad a internet, la integración con ExecuTorch permite que los modelos Ultralytics YOLO11 se ejecuten directamente en el hardware local. Esto significa que las fábricas pueden detectar problemas de calidad al instante, reducir el tiempo de inactividad y mantener la privacidad de los datos, todo ello con recursos informáticos limitados.

Estos son algunos ejemplos más de cómo se pueden aplicar la integración con ExecuTorch y los modelos YOLO de Ultralytics:

  • Ciudades inteligentes: Al ejecutar localmente modelos Ultralytics YOLO11 con ExecuTorch, las ciudades pueden tomar decisiones más rápidas basadas en datos, desde detectar atascos hasta identificar peligros, mejorando la movilidad y la seguridad generales.
  • Comercio minorista y almacenamiento: Con la inferencia en el propio dispositivo, los comercios pueden automatizar la supervisión de estanterías, controlar el inventario e inspeccionar paquetes de forma rápida y segura sin depender de conexiones a la nube.
  • Robótica y drones: Los modelos Ultralytics YOLO11 optimizados para el perímetro permiten a robots y drones reconocer objetos, navegar por entornos y tomar decisiones en tiempo real incluso sin acceso a internet.

Detección y recuento de coches en el tráfico mediante Ultralytics YOLO11

Fig. 4. Detección y recuento de coches en el tráfico mediante YOLO11 (Fuente)

Conclusiones clave#

Exportar modelos YOLO de Ultralytics al formato ExecuTorch facilita la implementación de modelos de visión artificial en muchos dispositivos, incluidos smartphones, tabletas y sistemas integrados como Raspberry Pi. Esto permite ejecutar inferencias optimizadas en el propio dispositivo sin depender de la conectividad a la nube, mejorando la velocidad, la privacidad y la fiabilidad.

Además de ExecuTorch, Ultralytics admite una amplia variedad de integraciones, como TensorRT, OpenVINO, CoreML y otras, lo que ofrece a los desarrolladores la flexibilidad necesaria para ejecutar sus modelos en distintas plataformas. A medida que crece la adopción de la IA de visión, estas integraciones simplifican la implementación de sistemas inteligentes diseñados para funcionar eficientemente en condiciones reales.

¿Te interesa la IA? Echa un vistazo a nuestro repositorio de GitHub, únete a nuestra comunidad y explora nuestras opciones de licencia para poner en marcha tu proyecto de IA de visión. Descubre más sobre innovaciones como la IA en el comercio minorista y la visión artificial en logística visitando nuestras páginas de soluciones.

Explore solutions

Visión por computadora para imágenes aéreas

Visión por computadora para imágenes aéreas

Transforma imágenes de drones y aéreas en información en tiempo real para agricultura, acuicultura, supervisión ambiental, conservación y análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en la industria aeroespacial

Visión artificial en la industria aeroespacial

Lleva la IA de visión al monitoreo aéreo con los modelos Ultralytics YOLO. Potencia drones, flujos de trabajo aeroespaciales, conservación ambiental e industrias geoespaciales con soluciones de visión artificial.
Más información

Protege cada sitio con los modelos Ultralytics YOLO. La IA de visión potencia el monitoreo perimetral, la detección de amenazas, el reconocimiento de matrículas y la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Impulsa máquinas más inteligentes con los modelos de Ultralytics YOLO. La IA de visión en robótica permite la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La IA de visión permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad de los almacenes en tiempo real.
Más información
Visión artificial en comercio minorista

Visión artificial en comercio minorista

Reinventa el comercio minorista con los modelos de Ultralytics YOLO. La IA de visión impulsa el seguimiento del inventario, la supervisión de estanterías, la gestión de colas y un conocimiento más inteligente de los clientes.
Más información
Visión por computador en el sector sanitario

Visión por computador en el sector sanitario

Crea soluciones sanitarias con modelos de Ultralytics YOLO. La IA de visión en el sector sanitario permite obtener imágenes médicas más rápidamente, diagnósticos más inteligentes y supervisar a los pacientes.
Más información
Visión por computador en la fabricación

Visión por computador en la fabricación

Optimiza la fabricación con modelos de Ultralytics YOLO. La IA de visión impulsa el control de calidad, la detección de defectos, el cumplimiento del PPE y la automatización de las líneas de montaje.
Más información
Visión artificial en el sector automovilístico

Visión artificial en el sector automovilístico

Aplica visión artificial en el sector automovilístico con modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para conseguir carreteras más inteligentes.
Más información
Visión artificial en agricultura

Visión artificial en agricultura

Lleva la IA de visión a la agricultura inteligente con modelos de Ultralytics YOLO. Impulsa la supervisión de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas mayores e inteligentes.
Más información
Visión por computadora para imágenes aéreas

Visión por computadora para imágenes aéreas

Transforma imágenes de drones y aéreas en información en tiempo real para agricultura, acuicultura, supervisión ambiental, conservación y análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en la industria aeroespacial

Visión artificial en la industria aeroespacial

Lleva la IA de visión al monitoreo aéreo con los modelos Ultralytics YOLO. Potencia drones, flujos de trabajo aeroespaciales, conservación ambiental e industrias geoespaciales con soluciones de visión artificial.
Más información

Protege cada sitio con los modelos Ultralytics YOLO. La IA de visión potencia el monitoreo perimetral, la detección de amenazas, el reconocimiento de matrículas y la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Impulsa máquinas más inteligentes con los modelos de Ultralytics YOLO. La IA de visión en robótica permite la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La IA de visión permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad de los almacenes en tiempo real.
Más información
Visión artificial en comercio minorista

Visión artificial en comercio minorista

Reinventa el comercio minorista con los modelos de Ultralytics YOLO. La IA de visión impulsa el seguimiento del inventario, la supervisión de estanterías, la gestión de colas y un conocimiento más inteligente de los clientes.
Más información
Visión por computador en el sector sanitario

Visión por computador en el sector sanitario

Crea soluciones sanitarias con modelos de Ultralytics YOLO. La IA de visión en el sector sanitario permite obtener imágenes médicas más rápidamente, diagnósticos más inteligentes y supervisar a los pacientes.
Más información
Visión por computador en la fabricación

Visión por computador en la fabricación

Optimiza la fabricación con modelos de Ultralytics YOLO. La IA de visión impulsa el control de calidad, la detección de defectos, el cumplimiento del PPE y la automatización de las líneas de montaje.
Más información
Visión artificial en el sector automovilístico

Visión artificial en el sector automovilístico

Aplica visión artificial en el sector automovilístico con modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para conseguir carreteras más inteligentes.
Más información
Visión artificial en agricultura

Visión artificial en agricultura

Lleva la IA de visión a la agricultura inteligente con modelos de Ultralytics YOLO. Impulsa la supervisión de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas mayores e inteligentes.
Más información
Visión por computadora para imágenes aéreas

Visión por computadora para imágenes aéreas

Transforma imágenes de drones y aéreas en información en tiempo real para agricultura, acuicultura, supervisión ambiental, conservación y análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en la industria aeroespacial

Visión artificial en la industria aeroespacial

Lleva la IA de visión al monitoreo aéreo con los modelos Ultralytics YOLO. Potencia drones, flujos de trabajo aeroespaciales, conservación ambiental e industrias geoespaciales con soluciones de visión artificial.
Más información

Protege cada sitio con los modelos Ultralytics YOLO. La IA de visión potencia el monitoreo perimetral, la detección de amenazas, el reconocimiento de matrículas y la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Impulsa máquinas más inteligentes con los modelos de Ultralytics YOLO. La IA de visión en robótica permite la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Optimiza la logística con los modelos de Ultralytics YOLO. La IA de visión permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad de los almacenes en tiempo real.
Más información
Visión artificial en comercio minorista

Visión artificial en comercio minorista

Reinventa el comercio minorista con los modelos de Ultralytics YOLO. La IA de visión impulsa el seguimiento del inventario, la supervisión de estanterías, la gestión de colas y un conocimiento más inteligente de los clientes.
Más información
Visión por computador en el sector sanitario

Visión por computador en el sector sanitario

Crea soluciones sanitarias con modelos de Ultralytics YOLO. La IA de visión en el sector sanitario permite obtener imágenes médicas más rápidamente, diagnósticos más inteligentes y supervisar a los pacientes.
Más información
Visión por computador en la fabricación

Visión por computador en la fabricación

Optimiza la fabricación con modelos de Ultralytics YOLO. La IA de visión impulsa el control de calidad, la detección de defectos, el cumplimiento del PPE y la automatización de las líneas de montaje.
Más información
Visión artificial en el sector automovilístico

Visión artificial en el sector automovilístico

Aplica visión artificial en el sector automovilístico con modelos de Ultralytics YOLO. La IA de visión mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para conseguir carreteras más inteligentes.
Más información
Visión artificial en agricultura

Visión artificial en agricultura

Lleva la IA de visión a la agricultura inteligente con modelos de Ultralytics YOLO. Impulsa la supervisión de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas mayores e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Comienza tu recorrido hacia el futuro del aprendizaje automático