Control en tiempo real de la cola de UAV basado en la detección de objetos YOLO

En este artículo, estudiamos el control de pelotón de vehículos aéreos no tripulados únicamente con información de la cámara. Para ello, empleamos detección de objetos en tiempo real basada en el modelo de aprendizaje profundo YOLO. El detector de objetos YOLO estima continuamente la posición relativa de los drones que se encuentran delante, a través de la cual cada drone es controlado por un controlador de retroalimentación PD (derivada proporcional) para la operación de pelotón. Nuestros experimentos en interiores con tres drones demuestran la eficacia del sistema.

Artículo original: Control en tiempo real de la cola de UAV basado en la detección de objetos YOLO

01 Introducción

Platooning es un método de control para la conducción cooperativa de múltiples vehículos [1], que es una tecnología básica en los sistemas automáticos de carreteras [2]. En particular, el pelotón de camiones se ha estudiado activamente durante décadas [3]. Una de las ventajas de una flota de camiones es aumentar la capacidad de transporte mediante un seguimiento sin conductor y, al mismo tiempo, reducir los costos laborales. En el pelotón de camiones, cada camión siguiente debe detectar la posición relativa y la velocidad del camión de delante mediante el uso de sensores como lidar y cámaras para detectar otros camiones (especialmente el camión de delante) e intercambiar comunicaciones entre camiones.

Los pelotones de drones son importantes para aplicaciones prácticas como el monitoreo de incendios forestales [4], la búsqueda de carreteras [5] y el transporte [6], aunque se supone que el GPS está disponible. Sin embargo, las colas en interiores donde no hay GPS disponible también son críticas para las inspecciones de túneles [7], inspecciones de puentes [8] y almacenamiento y entrega [9], entre otras. Inspirándonos en estas aplicaciones, consideramos un sistema de pelotón de drones en interiores que utiliza únicamente imágenes de cámaras, sin GPS, LIDAR o sistemas de captura de movimiento.

Se han publicado algunos estudios teóricos sobre el control de pelotones de UAV [10-12], mientras que no se han informado experimentos sobre el control de pelotones de UAV en entornos reales. En este artículo, desarrollamos un experimento de pelotón de drones utilizando pequeños drones de DJI Tello.

Para la detección de objetos en tiempo real, empleamos un modelo de aprendizaje profundo llamado YOLO [13]. Según el resultado de la detección de objetos, se estima la posición 3D relativa del UAV que está delante, a partir de la cual el UAV siguiente se controla mediante control de retroalimentación PD (derivada proporcional). Para el ajuste de los parámetros de PD, utilizamos la técnica de identificación del sistema basada en la función de transferencia [14] para identificar la dinámica de la combinación de UAV y detector de objetos YOLO, y luego ajustamos los parámetros de PD mediante simulación por computadora. Luego realizamos experimentos con drones en un ambiente interior. Usamos tres drones, uno es el drone líder y los otros son drones seguidores. Presentamos resultados experimentales en un ambiente interior para ilustrar la efectividad del sistema propuesto.

02 Detección de objetivos en tiempo real YOLO

Para la detección de objetos en tiempo real utilizando una cámara conectada a un dron, empleamos el modelo de aprendizaje profundo YOLO [13]. Al usar YOLO, podemos obtener la predicción de una clase de objetos y el cuadro delimitador de la posición del objeto especificado en tiempo real. En particular, YOLO devuelve información sobre el centro, ancho y alto del cuadro delimitador, que puede usarse de manera efectiva para detectar la posición 3D del dron al frente. Existen múltiples versiones de YOLO [15, 16], nosotros usamos YOLOv5s [16], que tiene el tamaño de modelo más pequeño pero logra una detección rápida, por lo que es ideal para nuestra aplicación de flota de drones.

Usamos el modelo YOLOv5s previamente entrenado por Ultralytics [17] y volvemos a entrenar el modelo usando 700 imágenes de drones de 320 × 320. Dividimos el conjunto de datos en 540 para entrenamiento y 160 para validación. Entrenaremos (es decir, aprenderemos parámetros de redes neuronales mediante un descenso de gradiente estocástico) durante 500 iteraciones con un tamaño de lote mínimo de 128. La Figura 1 muestra los resultados de convergencia de las funciones de pérdida, a saber, pérdida de regresión de caja, pérdida de clase y pérdida de objeto, así como la precisión, la recuperación y la precisión promedio. A partir de estas cifras se observa que la detección precisa de objetos se logra mediante 500 iteraciones.

Trazado 1 A través de iteraciones, los valores de las funciones de pérdida en el conjunto de entrenamiento (train set) y el conjunto de validación (val): pérdida de regresión de caja (box_loss), pérdida de clase (cls_loss), pérdida de objeto (obj_losss), precisión (métrica /accuracy), Recuperación (métrica/recuperación) y precisión promedio con umbrales de 0,5 (métrica/mAP_0.5) y [0.5,0.95] (métrica/mAP_0.5:0.95). pregunta

Además, la Figura 2 muestra algunos resultados de la detección de objetos mediante el modelo YOLO entrenado. Podemos observar que el modelo YOLO entrenado detecta con éxito el dron con cuadros delimitadores precisos.

Figura 2 Detección de objetivos a través del modelo YOLO entrenado

Notamos que el tamaño del modelo YOLO entrenado es de 13,6 MB, que es muy pequeño y puede detectar objetivos de drones con precisión y rapidez. De hecho, el tiempo de detección de objetos es de aproximadamente 30 milisegundos, lo que significa que podemos usar el tiempo de muestreo Ts = 1/15≈66,7 milisegundos, a través del cual podemos procesar 15 fotogramas de imagen por segundo para el control.

03   Control PD basado en el detector de objetivos YOLO

Usamos YOLO como sensor para la posición relativa del dron al frente. La Figura 3 (izquierda) muestra los resultados de la detección de objetos YOLO. El campo de visión (FOV) del dron es de 82,6 grados. Establecemos el origen en la esquina superior izquierda del marco de la imagen, y los ejes x e y se muestran en la Figura 3. Sean (x, y) y (rx, ry) el centro del dron delante y en el marco, respectivamente, y A sea el área del cuadro delimitador estimado. En nuestro ejemplo, fijamos rx=160 y ry=120. Utilice la región A del cuadro delimitador para estimar la distancia al dron que está delante. Calibramos el sistema cuando A = 1800 para que la distancia sea de 60 cm.

Figura 3. Detección de objetos y estimación de posición para un UAV (izquierda) y dos UAV (derecha).

Cuando hay más de dos drones al frente, se pueden detectar varios drones, como se muestra en la Figura 3 (derecha). En este caso, medimos la longitud del cuadro delimitador, digamos L1 y L2, y si L1>L2, como se muestra en la Figura 3, seleccionamos el cuadro delimitador de L1 como el dron. Luego determinamos la dinámica de los sistemas de entrada/salida del UAV, incluidos los detectores de objetos YOLO y las comunicaciones inalámbricas Wi-Fi (ver Figura 4).

Fig. 4 Diagrama de bloques del sistema de control del UAV en dirección x. La entrada r_x es la posición de referencia, que es el centro del marco de la imagen, y la salida es la posición relativa del dron en el marco de la imagen. La entrada al sistema P_x es el comando de control del controlador C_x.

Observamos que la latencia de la comunicación inalámbrica varía con el tiempo, lo que puede provocar transiciones inestables como se describe en la Sección 4. Para esto, tomamos funciones de transferencia de segundo orden en las direcciones x, y y distancia, y calculamos los coeficientes de las funciones de transferencia usando los datos de entrada/salida usando System Identification Toolbox de MATLAB. La función de transferencia obtenida (ver Figura 4) es la siguiente:

Estos sistemas incluyen la dinámica del detector YOLO y el retardo de tiempo, que puede ser variable en el tiempo entre el dron y el ordenador que realiza la detección YOLO y genera la señal de control, ya que utilizamos Wi-Fi. También observamos que cada función de transferencia tiene un polo cercano a cero, por lo que podemos considerarla como un sistema que contiene un integrador. Usamos control PD (derivada proporcional) sin I (integral). Detectamos un error de seguimiento en el momento t ≥ 0:

donde r_x =160,r_y =120,r_A =1800aplicamos control de retroalimentación de modo que la suma e_x, e_yconverja e_ {dist}a cero.

Controlamos el sistema con tiempo de muestreo T_s = 1/15y discretizamos la función de transferencia utilizando una transformada invariante en pasos (también conocida como discretización de preservación de orden cero) [18]. El control de PD viene dado entonces por la siguiente función de transferencia en tiempo discreto:

Entre ellos i=x,y,distante. Buscamos parámetros mediante simulaciones por computadora utilizando el modelo obtenido en (1). La Tabla 1 presenta los parámetros obtenidos. Es fácil comprobar que con estos controladores de retroalimentación PD, el sistema dinámico descrito en (1) es asintóticamente estable bajo un muestreador ideal y una T_sretención de orden cero con un tiempo de muestreo = 1/15 seg. La Fig. 5 muestra los resultados de la simulación utilizando el controlador PD obtenido. Podemos ver que para las direcciones xey, el tiempo de respuesta es de aproximadamente 2 segundos, pero para la dirección de distancia, el tiempo es de aproximadamente 3 segundos.

Tabla 1 Parámetros del controlador PD de tiempo discreto: Ts=1/15 es el tiempo de muestreo.

04  experimento

En esta sección, presentamos resultados experimentales en una flota de drones que utilizan la detección de objetos YOLO en un ambiente interior. Usamos tres drones DJI Tello, uno de los cuales es el drone líder y los demás son drones seguidores. El dron líder es controlado manualmente por una persona con un teléfono inteligente, y los dos drones seguidores son controlados de forma independiente por dos computadoras PC1 y PC2 a través de comunicación inalámbrica mediante Wi-Fi, como se muestra en la Figura 6. PC1 y PC2 realizan la detección de objetos a través de YOLO y generan señales de control a través del controlador PD, que luego se envían de forma independiente a los siguientes drones.

Fig. 5 Resultados de la simulación del control PD: dirección x (izquierda), dirección y (centro) y dirección de distancia (derecha)
Figura 6 Configuración experimental

Medimos la posición global 3D de cada dron utilizando otro modelo YOLO con imágenes de vídeo grabadas desde una cámara fijada en la habitación. La Figura 7 muestra las posiciones de los tres drones utilizados para controlar las direcciones xey. La Figura 8 también muestra la posición del dron utilizado para controlar la dirección de la distancia. Las películas para estos resultados se pueden encontrar en la página web indicada por el título de la imagen.

Figura 7. Experimento de cola de drones: direcciones x (izquierda) e y (derecha) del dron líder (línea continua), el primer dron siguiente (línea discontinua) y el segundo inorgánico siguiente (línea discontinua-punto).

La Tabla 2 muestra los errores absolutos medios en x, y y direcciones de alcance, E_ {x,ij}y E_ {y,ij}, entre los UAV i-ésimo y j-ésimo, respectivamente E_ {dist,ij}.

Tabla 2 Error entre dos UAV [m]
Figura 8. Experimento de cola de drones (dirección de distancia): dron líder (línea continua), primer dron seguidor (línea discontinua) y segundo dron seguidor (línea discontinua - puntos).

Observamos que la brecha entre los resultados simulados y experimentales debe atribuirse a retrasos en las comunicaciones que varían en el tiempo y a las perturbaciones del viento. A partir de estos resultados, podemos ver que los UAV seguidores se mueven al unísono con los UAV delanteros y logran la cola de UAV, ya que todos los errores en la Tabla 2 están acotados y no divergen. También observamos que el segundo dron seguidor mostró un error mayor que el primer dron seguidor. Este fenómeno puede explicarse por la inestabilidad de la cadena [19, 20], que conduce a errores cada vez mayores cuando controlamos colas más largas. H_\inftyPara garantizar la estabilidad de la cuerda en filas más largas, necesitamos reducir la norma (o ganancia) del sistema que se muestra en la Figura 4 (de r_xa X). Es decir, se deben satisfacer las siguientes desigualdades:

Para cualquiera yo \en 1,2,...,N, donde \sum _i(s)es ila función de transferencia del sistema de entrada/salida del ésimo UAV seguidor y N es el número de UAV seguidores. Para ello, necesitamos adoptar H_\inftyun diseño de control [21].

05 Conclusión

En este artículo, demostramos el diseño de pelotones de drones basados ​​en la detección de objetos con aprendizaje profundo en tiempo real. El modelo YOLO es adecuado para la detección en tiempo real y los parámetros de control de PD se ajustan mediante simulación. Los resultados experimentales demuestran la eficacia del sistema propuesto. H_\inftyEl trabajo futuro incluye el diseño de control de múltiples entradas en tres dimensiones mediante el empleo de control óptimo cuadrático lineal (LQ), control o control predictivo de modelo.

1.  Las 10 principales tendencias en robots a las que vale la pena prestar atención en 2023

2.  Posicionamiento colaborativo distribuido de enjambres de vehículos aéreos no tripulados

3.  El entorno de simulación Turtlebot+ROS Stage realiza el seguimiento de la trayectoria MPC

4.  PythonRobotics | Navegación autónoma robótica basada en python

5.  Detección visual de objetos en 3D, desde la geometría visual hasta la detección de BEV

6.  Descripción general 4D | Percepción de fusión multisensor para conducción autónoma

Supongo que te gusta

Origin blog.csdn.net/weixin_40359938/article/details/128501020
Recomendado
Clasificación