Cree aplicaciones para drones basadas en IA con Ultralytics YOLO11

Abirami Vina

4 min leer

18 de abril de 2025

Aprenda a crear aplicaciones para drones basadas en IA con Ultralytics YOLO11, que permite la detección de objetos en tiempo real y tareas de visión por ordenador basadas en drones.

Las compras en tienda y las compras en línea pueden parecer iguales, pero dependen de una logística diferente. Las tiendas necesitan reponer existencias, mientras que los pedidos en línea dependen de las entregas a domicilio. Gracias a los avances tecnológicos, ambas experiencias de compra se están reconfigurando en paralelo.

Por ejemplo, se está produciendo un cambio importante en las entregas. Los drones dotados de inteligencia artificial están cambiando la forma en que los productos llegan a nuestros hogares. Se espera que estos drones inteligentes realicen unos 808 millones de entregas en la próxima década, convirtiendo los cielos en la nueva ruta de entrega para el comercio diario.

Los drones de reparto utilizan la inteligencia artificial (IA) y la visión por ordenador, un subcampo de la IA que se emplea para analizar datos visuales, para navegar y maniobrar sorteando obstáculos. Los modelos de visión por ordenador como Ultralytics YOLO11 pueden ayudar a los drones a detectar y seguir objetos en tiempo real, lo que les permite comprender mejor su entorno e interactuar con él.

Fig. 1. Un dron de reparto lleva un paquete a su destino.

Empresas como Meituan y DJI ya están integrando la visión por ordenador en sus drones. De hecho, la rápida adopción de drones en diversas industrias ha hecho que el mercado de drones con IA se dispare hasta los 206.900 millones de dólares en 2031. 

En este artículo, analizaremos cómo pueden utilizarse modelos de visión por ordenador como Ultralytics YOLO11 en aplicaciones basadas en drones, como los drones de reparto. Recorreremos un ejemplo que mostrará cómo se pueden desarrollar y probar estas tecnologías antes de utilizarlas en escenarios reales.

Utilización de Ultralytics YOLO11 en drones para detectar viviendas

Un elemento clave de los drones de reparto es su capacidad para detectar casas mientras navegan. Para recrear esta capacidad y entender cómo funciona, entrenaremos un modelo de visión por ordenador que pueda identificar casas en las imágenes captadas por un dron aéreo. Para ello, entrenaremos YOLO11 de forma personalizada, lo que implica ajustar un modelo YOLO11 preentrenado para que reconozca y detecte casas utilizando ejemplos etiquetados.

Para ello, necesitaremos datos de vídeo de alta calidad procedentes de un dron. Curiosamente, incluso sin tener acceso a un dron real, podemos generar imágenes aéreas realistas. Veamos cómo.

Creación de una toma artificial de un dron con Google Earth Studio

Google Earth Studio es una herramienta de animación basada en web que los usuarios pueden utilizar para crear contenidos fijos y animados utilizando las imágenes por satélite y en 3D de Google Earth. Podemos utilizarla para crear imágenes aéreas realistas.

El primer paso es abrir Google Earth Studio y crear un proyecto, como se muestra a continuación. 

Necesitarás una cuenta de Google para acceder.

Fig. 2. Creación de un proyecto en Google Earth Studio.

Una vez que te hayas registrado, puedes elegir una ubicación para tu vídeo artificial con dron. Utilizando la barra de búsqueda de la esquina superior izquierda de la página, puedes buscar ubicaciones. Para este tutorial, elegiremos Canadá. Además, como vamos a entrenar un modelo para detectar casas, nuestro vídeo de dron debería tener una vista aérea de casas.

Fig. 3. Selección de una ubicación con Google Earth Studio.

A continuación, podemos establecer el primer y el último fotograma para capturar el movimiento de la toma artificial del dron. Una vez que hayas elegido la ubicación inicial para la toma del dron, establece el primer fotograma utilizando los diamantes azules, como se muestra a continuación. 

Fig. 4. Ajuste del primer fotograma utilizando los diamantes azules.

A continuación, podemos elegir el último fotograma para determinar el destino del dron. Esto nos ayudará a crear un efecto de movimiento para la toma del dron. Para ello, desliza la barra (resaltada más abajo) hacia la derecha hasta un momento específico con el fin de crear el efecto de movimiento para la toma del dron. Una vez más, utiliza los diamantes azules para fijar el último punto.

Fig 5. Ajuste del último fotograma moviendo la barra.

Por último, puedes guardar este proyecto y renderizarlo haciendo clic en el botón rojo "Renderizar" en la esquina superior derecha de la página. Esto te dará la salida de vídeo final de la toma del dron, creando con éxito secuencias de vídeo de drones artificiales.

Fig. 6. Renderización del vídeo de salida final.

¿Cómo etiquetar los datos de los drones?

Ahora que ya hemos creado una secuencia de vídeo artificial con dron, el siguiente paso es etiquetar o anotar las casas que aparecen en ella. También tendremos que separar los distintos fotogramas del vídeo. 

Para empezar, instalaremos LabelImg. LabelImg es una herramienta de etiquetado de imágenes de código abierto. Puede instalarla directamente desde el terminal utilizando el instalador de paquetes pip ejecutando el siguiente comando: "pip install labelImg".

Tras la instalación, puede ejecutar la herramienta utilizando el comando 'labelImg' en su terminal o símbolo del sistema. Esto le llevará a la página que se muestra a continuación.

Fig 7. Interfaz de la herramienta LabelImg.

Mientras tanto, podemos utilizar un conversor de vídeo a imagen en línea o una herramienta llamada FFmpeg para dividir el vídeo en fotogramas. FFmpeg es una colección de bibliotecas y herramientas para procesar contenidos multimedia como audio, vídeo, subtítulos y metadatos relacionados. 

Puede utilizar el siguiente comando de terminal para separar cada fotograma del vídeo de grabación del dron:

Una vez que hemos separado los fotogramas de la grabación del dron, podemos empezar a etiquetar los objetos (casas) que aparecen en ellos. Navegando hasta la carpeta de imágenes a través de la herramienta LabelImg, podemos etiquetar los objetos de cada imagen. Asegúrate de guardar y verificar cada imagen etiquetada. Una vez anotadas las imágenes, podemos pasar a entrenar YOLO11 con estos datos.

Fig. 8. Ejemplo de almacenamiento de imágenes anotadas.

Flujo de trabajo de entrenamiento del modelo YOLO11

Antes de empezar a entrenar a YOLO11, organizaremos nuestras imágenes y etiquetas. Empieza creando dos carpetas: una llamada "train" y la otra "valid". Divide tus imágenes entre estas carpetas. Dentro de cada una, crea subcarpetas separadas para las imágenes y sus correspondientes archivos de etiquetas (formato de texto), como se muestra a continuación.

Fig 9. Ejemplo de creación de carpetas de imágenes y etiquetas.

A continuación, podemos empezar a entrenar el modelo YOLO11 del siguiente modo:

  • Paso 1: Instale el paquete Ultralytics Python. Puede hacerlo ejecutando el comando "pip install ultralytics" en su terminal. Si se encuentra con algún problema de instalación, consulte nuestra guía de solución de problemas para obtener consejos y trucos que le ayudarán a resolverlos.
  • Paso 2: Tras instalar correctamente el paquete, cree un archivo con el nombre 'data.yaml'. Se trata de un archivo de configuración crucial para el entrenamiento del modelo. En el archivo data.yaml, incluya la siguiente información: la ruta al conjunto de datos de entrenamiento, la ruta al conjunto de datos de validación, el número de clases (nc) y una lista de nombres de clases (names), como se muestra a continuación.
Fig 10. Ejemplo de archivo data.yaml.

  • Paso 3: Una vez configurado el archivo 'data.yaml', puedes empezar a entrenar tu modelo usando el siguiente código Python. Este código carga el modelo YOLO11 preentrenado y lo entrena según tus configuraciones.
from ultralytics import YOLO

# Load a YOLO11 model
model = YOLO("yolo11n.pt")  # choose your model, e.g., YOLO11 nano

# Train the model with your data and settings
model.train(data="data.yaml", epochs=100, imgsz=640)
  • Paso 4: Una vez completado el entrenamiento, deberías ver un resultado similar al que se muestra a continuación. Esto significa que has entrenado con éxito tu modelo YOLO11 para aplicaciones basadas en drones.
Fig. 11. Salida mostrada tras el entrenamiento del modelo.

Ejecución de predicciones con Ultralytics YOLO11 en drones

El modelo YOLO11 entrenado puede utilizarse ahora para hacer predicciones mediante un proceso denominado inferencia. La inferencia consiste en utilizar un modelo para analizar datos nuevos y desconocidos basándose en lo que ha aprendido durante el entrenamiento. En este caso, el modelo puede utilizarse para encontrar y etiquetar objetos específicos, como casas, en imágenes o vídeos dibujando recuadros alrededor de ellos.

Para ejecutar una predicción, puede utilizar el modelo YOLO11 entrenado en un vídeo de entrada utilizando el siguiente código Python. En este ejemplo, utilizaremos el mismo vídeo de dron artificial que se utilizó para el entrenamiento, pero puedes utilizar cualquier otro archivo de vídeo si lo prefieres.

# Import library
from ultralytics import YOLO

# Load the YOLO model
model = YOLO("best.pt")  # Choose your custom-trained model

# Predict the results from the model
results = model.predict(source="path/to/original/video.mp4", show=True, save=True)

Tras ejecutar este código, se guardará el archivo de vídeo de salida con las predicciones y los cuadros delimitadores.

Fig. 12. Un fotograma del archivo de vídeo de salida. 

Integración de Ultralytics YOLO11 en drones para diversas aplicaciones

La detección de casas para la entrega de paquetes con drones es sólo un ejemplo de cómo pueden aplicarse la visión por ordenador y YOLO11. Aquí tienes otros usos reales de la visión por ordenador, YOLO11 y los drones aéreos:

  • Vigilancia y seguridad: Los drones con IA pueden utilizarse para vigilar grandes áreas en tiempo real. Pueden detectar intrusiones, rastrear actividades sospechosas y mejorar la seguridad en las fronteras nacionales, así como en grandes eventos públicos. 
  • Respuesta ante catástrofes y búsqueda y rescate: Equipados con cámaras térmicas y detección de objetos, los drones pueden ayudar a localizar supervivientes en zonas catastróficas. También pueden evaluar los daños y entregar suministros de emergencia.
  • Agricultura y agricultura de precisión: Los drones integrados con visión por ordenador pueden utilizarse para analizar la salud de los cultivos y detectar enfermedades, ayudando a los agricultores a aumentar el rendimiento y reducir los costes. 
  • Cartografía y análisis geoespacial: Al recopilar mapas 3D de alta resolución, los drones con IA pueden ayudar en la planificación urbana y los estudios del terreno. Proporcionan evaluaciones del terreno más rápidas y precisas que los métodos tradicionales. 

Principales conclusiones

Los drones con IA y visión artificial están cambiando muchos sectores, desde la entrega de paquetes a la ayuda en emergencias y la agricultura. En esta guía explicamos cómo crear un vídeo artificial con un dron, etiquetar objetos en él, entrenar a YOLO11 y utilizarlo para detectar casas.

Aplicar la detección de objetos a las grabaciones de los drones los hace más inteligentes, ya que les permite reconocer y rastrear objetos automáticamente en tiempo real. A medida que mejore la tecnología, es probable que los drones basados en IA desempeñen un papel aún más importante en la agilización de las entregas, la mejora de la seguridad y la respuesta ante catástrofes.

Únase a nuestra comunidad y explore nuestro repositorio de GitHub para obtener más información sobre Vision AI, y consulte nuestras opciones de licencia para poner en marcha sus proyectos de visión por ordenador. ¿Le interesan innovaciones como la IA en la fabricación o la visión por ordenador en el sector de la automoción? Visite nuestras páginas de soluciones para obtener más información. 

¡Construyamos juntos el futuro
de la IA!

Comience su viaje con el futuro del aprendizaje automático

Empezar gratis
Enlace copiado en el portapapeles