Al hacer clic en "Aceptar todas las cookies", usted acepta el almacenamiento de cookies en su dispositivo para mejorar la navegación por el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información en
Configuración de cookies
Al hacer clic en "Aceptar todas las cookies", usted acepta el almacenamiento de cookies en su dispositivo para mejorar la navegación por el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información en
Vea lo fácil que es llevar Ultralytics YOLO11 a los dispositivos Apple con CoreML y permitir tareas rápidas de visión por ordenador sin conexión para aplicaciones iOS en tiempo real.
Con la introducción por parte de Apple de funciones como Apple Intelligence, está claro que la IA en los dispositivos se está convirtiendo en una parte fundamental de la forma en que usamos nuestros teléfonos. Para los desarrolladores, este cambio significa que los usuarios están adoptando aplicaciones iOS que utilizan capacidades como la visión por ordenador para ofrecer experiencias más inteligentes y con mayor capacidad de respuesta.
La visión por ordenador es un tipo de inteligencia artificial (IA) que permite a los ordenadores comprender y analizar información visual, como imágenes o vídeos. En los dispositivos móviles, puede utilizarse en tiempo real para detectar, clasificar e interactuar con objetos a través de la cámara del teléfono. Los modelos de IA de visión como Ultralytics YOLO11 pueden entrenarse a medida para reconocer objetos específicos, en función de las necesidades de su aplicación.
Sin embargo, YOLO11 no está preparado para funcionar en iOS nada más sacarlo de la caja. Para desplegar YOLO11 en iPhones u otros dispositivos Apple, sobre todo para su uso sin conexión, es necesario convertirlo a un formato optimizado para el ecosistema de Apple.
Este es exactamente el tipo de problema para el que se creó CoreML. CoreML es el marco de aprendizaje automático de Apple, creado para ejecutar modelos localmente e integrarse sin problemas en aplicaciones iOS y macOS. La integración CoreML, soportada por Ultralytics, facilita la exportación de su modelo para el despliegue local en iPhones.
En este artículo, veremos más de cerca cómo exportar tu modelo YOLO11 al formato CoreML. También exploraremos casos de uso en tiempo real que muestran las ventajas de ejecutar modelos de visión por ordenador directamente en dispositivos iOS. ¡Vamos a empezar!
¿Qué es CoreML?
CoreML es un marco de aprendizaje automático desarrollado por Apple que permite a los desarrolladores integrar modelos de aprendizaje automático entrenados directamente en aplicaciones de todo el ecosistema de Apple, incluidos iOS (iPhone y iPad), macOS (Mac), watchOS (Apple Watch) y tvOS (Apple TV). Está diseñado para hacer que el aprendizaje automático sea accesible y eficiente en los dispositivos Apple al permitir que los modelos se ejecuten directamente en el dispositivo, sin necesidad de conexión a Internet.
El núcleo de CoreML es un formato de modelo unificado que admite una amplia gama de tareas de IA, como la clasificación de imágenes, la detección de objetos, el reconocimiento del habla y el procesamiento del lenguaje natural. El framework está optimizado para aprovechar al máximo el hardware de Apple, utilizando la CPU (unidad central de procesamiento), la GPU (unidad de procesamiento gráfico) y el ANE (Apple Neural Engine) para ejecutar modelos de forma rápida y eficiente.
CoreML admite diversos tipos de modelos y es compatible con las bibliotecas de aprendizaje automático más populares, como TensorFlow, PyTorch, scikit-learn, XGBoost y LibSVM. Esto facilita a los desarrolladores la incorporación de funciones avanzadas de ML a las aplicaciones cotidianas, garantizando al mismo tiempo que funcionen sin problemas en los dispositivos Apple.
Fig. 1. CoreML admite modelos de otros marcos de IA populares(Fuente).
Principales características de CoreML
Estas son algunas de las características clave que hacen de CoreML una herramienta fiable para integrar la IA en las aplicaciones de Apple:
Optimización del modelo: CoreML admite técnicas de compresión como la cuantificación y la poda para reducir el tamaño del modelo y mejorar la eficiencia en tiempo de ejecución.
Personalización en el dispositivo: El marco de ML de Apple admite la personalización en el dispositivo, lo que permite entrenar y actualizar localmente los modelos en función de las interacciones del usuario.
Predicciones asíncronas: Este framework permite a tu app ejecutar predicciones en segundo plano, manteniendo la interfaz de usuario fluida y con capacidad de respuesta mientras gestiona tareas de IA.
Aprendizaje multitarea: CoreML admite modelos que pueden realizar varias tareas a la vez, como detectar objetos y reconocer texto en la misma imagen.
Cómo exportar YOLO11 al formato CoreML
Ahora que conocemos mejor el marco CoreML, vamos a ver cómo utilizar la integración CoreML soportada por Ultralytics para exportar un modelo YOLO11 al formato CoreML.
Paso 1: Configuración del entorno
Para acceder a las funciones de integración proporcionadas por Ultralytics, comience por instalar el paquete Python de Ultralytics. Se trata de una biblioteca ligera y fácil de usar que simplifica tareas como la formación, la evaluación, la predicción y la exportación de modelos YOLO de Ultralytics.
Puede instalar el paquete Ultralytics Python ejecutando "pip install ultralytics" en su terminal de comandos. Si utiliza un entorno como Jupyter Notebook o Google Colab, incluya un signo de exclamación (!) antes del comando: "pip install ultralytics".
Si se encuentra con algún problema durante la instalación o la exportación a CoreML, consulte la documentación oficial de Ultralytics o la guía de problemas comunes para obtener ayuda.
Paso 2: Exportación de YOLO11 a CoreML
Una vez que el paquete se haya instalado correctamente, estará listo para cargar un modelo YOLO11 y convertirlo al formato CoreML.
Si no está seguro de qué modelo YOLO11 preentrenado utilizar, puede explorar la gama de modelos compatibles con Ultralytics. Cada uno de ellos ofrece un equilibrio diferente entre velocidad, tamaño y precisión, y usted puede elegir el que mejor se adapte a su proyecto. También puede utilizar un modelo YOLO11 entrenado a medida si ha entrenado uno en su propio conjunto de datos.
En el siguiente fragmento de código, se utiliza un archivo de modelo YOLO11 preentrenado llamado "yolo11n.pt". Durante el proceso de exportación, se convierte en un paquete CoreML llamado "yolo11n.mlpackage".
El modelo "yolo11n" es la versión nano, optimizada para la velocidad y el bajo consumo de recursos. En función de las necesidades de su proyecto, también puede elegir otros tamaños de modelo, como "s" para pequeño, "m" para mediano, "l" para grande o "x" para extragrande. Cada versión ofrece un equilibrio diferente entre rendimiento y precisión.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="coreml")
Paso 3: Ejecutar la inferencia utilizando el modelo CoreML exportado
Una vez exportado al formato CoreML, YOLO11 puede integrarse fácilmente en aplicaciones iOS, lo que permite realizar tareas de visión por ordenador en tiempo real, como la detección de objetos, en dispositivos como iPhones, iPads y Macs.
Por ejemplo, el siguiente fragmento de código muestra cómo cargar el modelo CoreML exportado y realizar la inferencia. La inferencia es el proceso de utilizar un modelo entrenado para hacer predicciones sobre nuevos datos. En este caso, el modelo analiza una imagen de una familia jugando con una pelota.
Tras ejecutar el código, la imagen de salida se guardará en la carpeta "runs/detect/predict".
Fig. 2. Uso de un modelo YOLO11 exportado en formato CoreML para detectar objetos. Imagen del autor.
¿Dónde pueden utilizarse los modelos CoreML exportados?
La exportación de YOLO11 a CoreML aporta la flexibilidad necesaria para crear diversas aplicaciones de visión por ordenador que pueden ejecutarse eficazmente en iPhones, iPads y Macs. A continuación, vamos a ver algunos escenarios del mundo real en los que esta integración puede ser especialmente útil.
Aplicaciones de realidad aumentada y juegos basadas en modelos CoreML
La realidad aumentada (RA) mezcla contenidos digitales con el mundo real superponiendo elementos virtuales a vistas de cámaras en directo. Se está convirtiendo en un elemento clave de los juegos para móviles, creando experiencias más interactivas y envolventes.
Con YOLO11 exportado al formato CoreML, los desarrolladores de iOS pueden crear juegos de realidad aumentada que reconozcan objetos del mundo real como bancos, árboles o señales utilizando la cámara del teléfono. A continuación, el juego puede superponer elementos virtuales, como monedas, pistas o criaturas, sobre estos objetos para mejorar el entorno del jugador.
Entre bastidores, esto funciona mediante la detección y el seguimiento de objetos. YOLO11 detecta e identifica los objetos en tiempo real, mientras que el seguimiento mantiene esos objetos a la vista a medida que la cámara se mueve, asegurándose de que los elementos virtuales permanecen alineados con el mundo real.
Los jugadores pueden apuntar sus teléfonos, explorar su entorno e interactuar con lo que ven para recoger objetos o completar desafíos rápidos. Todo esto puede ejecutarse directamente en el dispositivo sin necesidad de conexión a Internet, lo que hace que la experiencia sea fluida y atractiva.
Aplicaciones iOS integradas con modelos CoreML para ANPR en tiempo real
El reconocimiento automático de matrículas (ANPR) es una aplicación de visión por ordenador que se utiliza para detectar y leer las matrículas de los vehículos. Se utiliza habitualmente en sistemas de seguridad, vigilancia del tráfico y control de accesos. Gracias a CoreML y a modelos como YOLO11, el ANPR puede ejecutarse ahora de forma eficiente en dispositivos iOS.
Tener una aplicación ANPR en su iPhone puede ser especialmente útil en entornos centrados en la seguridad. Por ejemplo, puede ayudar a los equipos a determinar rápidamente si un vehículo que entra en una zona restringida está autorizado o no.
Una aplicación de este tipo puede utilizar un modelo Vision AI como YOLO11, integrado a través de CoreML, para detectar vehículos y localizar sus matrículas en tiempo real utilizando la cámara del dispositivo. Una vez detectada la matrícula, la tecnología de reconocimiento óptico de caracteres (OCR) puede leer el número de matrícula. A continuación, la aplicación puede comparar este número con una base de datos local o en la nube para verificar el acceso o señalar los vehículos no autorizados.
Fig. 3. Vision AI puede utilizarse para detectar y leer matrículas.(Fuente).
Las aplicaciones centradas en la accesibilidad pueden aprovechar los modelos CoreML
La IA ha tenido un enorme impacto en la accesibilidad, ayudando a derribar barreras para las personas con discapacidad visual. Con herramientas como CoreML y modelos de visión por ordenador como YOLO11, los desarrolladores pueden crear aplicaciones para iOS que describen el mundo que rodea a los usuarios en tiempo real, facilitando las tareas cotidianas y aumentando la independencia.
Por ejemplo, una persona con discapacidad visual puede apuntar con la cámara de su iPhone a su entorno. La aplicación utiliza la detección de objetos para reconocer elementos clave, como vehículos, personas o señales de tráfico, y narra lo que ve. Esto puede utilizarse en situaciones como circular por una calle con mucho tráfico o entender una emergencia.
Fig. 4. Ejemplo de uso de YOLO11 para detectar personas
Principales conclusiones
La exportación de YOLO11 al formato CoreML crea nuevas oportunidades para las aplicaciones en tiempo real, incluida la detección de objetos sin conexión en dispositivos iOS. Desde la agricultura y la seguridad hasta la accesibilidad, esta combinación permite a los desarrolladores crear apps inteligentes, eficientes y centradas en la privacidad que se ejecutan íntegramente en el dispositivo.
Con unos sencillos pasos, puedes convertir tu modelo YOLO11 y añadir funciones fiables de visión por ordenador a los iPhones. Lo mejor de todo es que funciona sin necesidad de conexión a Internet. En general, la integración de CoreML aporta la potencia de la IA avanzada a las aplicaciones móviles cotidianas, haciéndolas más rápidas, con mayor capacidad de respuesta y listas para ejecutarse en cualquier lugar.