Controle em tempo real da fila de UAV com base na detecção de objetos YOLO

Neste artigo, estudamos o controle de pelotões de UAVs apenas com informações de câmeras. Para tanto, empregamos detecção de objetos em tempo real baseada no modelo de aprendizagem profunda YOLO. O detector de objetos YOLO estima continuamente a posição relativa dos drones à frente, através da qual cada drone é controlado por um controlador de feedback PD (derivado proporcional) para operação de pelotão. Nossos experimentos internos com três drones demonstram a eficácia do sistema.

Artigo original: Controle em tempo real da fila de UAV com base na detecção de objetos YOLO

01 Introdução

Platooning é um método de controle para condução cooperativa de múltiplos veículos [1], que é uma tecnologia básica em sistemas rodoviários automáticos [2]. Em particular, o pelotão de caminhões tem sido ativamente estudado há décadas [3]. Uma das vantagens de uma frota de caminhões é aumentar a capacidade de transporte por meio do acompanhamento sem motorista e, ao mesmo tempo, reduzir os custos de mão de obra. Em um pelotão de caminhões, cada caminhão seguinte precisa detectar a posição relativa e a velocidade do caminhão da frente usando sensores como lidar e câmeras para detectar outros caminhões (especialmente o da frente), bem como trocar comunicações entre os caminhões.

Os pelotões de drones são importantes para aplicações práticas, como monitoramento de incêndios florestais [4], busca em estradas [5] e transporte [6], embora estes pressuponham que o GPS esteja disponível. No entanto, filas internas onde o GPS não está disponível também são críticas para inspeções de túneis [7], inspeções de pontes [8] e armazenamento e entrega [9], entre outros. Inspirados nessas aplicações, consideramos um sistema de pelotão de drones internos que utiliza apenas imagens de câmeras, sem GPS, LIDAR ou sistemas de captura de movimento.

Alguns estudos teóricos sobre o controle de pelotões de UAV foram publicados [10-12], enquanto experimentos sobre o controle de pelotões de UAV em ambientes reais não foram relatados. Neste artigo, desenvolvemos um experimento de pelotão de drones usando pequenos drones da DJI Tello.

Para detecção de objetos em tempo real, empregamos um modelo de aprendizado profundo chamado YOLO [13]. De acordo com o resultado da detecção do objeto, é estimada a posição 3D relativa do UAV na frente, a partir da qual o UAV seguinte é controlado pelo controle de feedback PD (derivativo proporcional). Para o ajuste dos parâmetros PD, usamos a técnica de identificação do sistema baseada em função de transferência [14] para identificar a dinâmica da combinação do UAV e do detector de objetos YOLO e, em seguida, ajustar os parâmetros PD por meio de simulação computacional. Em seguida, conduzimos experimentos com drones em um ambiente interno. Usamos três drones; um é o drone líder e os outros são drones seguidores. Apresentamos resultados experimentais em ambiente interno para ilustrar a eficácia do sistema proposto.

02 Detecção de alvo em tempo real YOLO

Para detecção de objetos em tempo real usando uma câmera acoplada a um drone, empregamos o modelo de aprendizagem profunda YOLO [13]. Usando YOLO, podemos obter a previsão de uma classe de objetos e a caixa delimitadora da posição especificada do objeto em tempo real. Em particular, o YOLO retorna informações sobre o centro, largura e altura da caixa delimitadora, que podem ser usadas com eficácia para detectar a posição 3D do drone na frente. Existem várias versões do YOLO [15, 16], usamos YOLOv5s [16], que tem o menor tamanho de modelo, mas alcança detecção rápida, por isso é ideal para nossa aplicação em frota de drones.

Usamos o modelo YOLOv5s pré-treinado pela Ultralytics [17] e retreinamos o modelo usando 700 imagens de drone 320×320. Dividimos o conjunto de dados em 540 para treinamento e 160 para validação. Treinaremos (ou seja, aprenderemos os parâmetros da rede neural por meio de descida gradiente estocástica) para 500 iterações com um tamanho de lote mínimo de 128. A Figura 1 mostra os resultados de convergência das funções de perda, ou seja, perda de regressão de caixa, perda de classe e perda de objeto, bem como precisão, recall e precisão média. Observa-se a partir dessas figuras que a detecção precisa de objetos é alcançada em 500 iterações.

Plotagem 1 Por meio de iterações, os valores das funções de perda no conjunto de treinamento (train set) e conjunto de validação (val): perda de regressão de caixa (box_loss), perda de classe (cls_loss), perda de objeto (obj_losss), precisão (métrica /precisão), Recall (métrica/recall) e precisão média com limites de 0,5 (métrica/mAP_0,5) e [0,5,0,95] (métrica/mAP_0,5:0,95). pergunta

Além disso, a Figura 2 mostra alguns resultados da detecção de objetos pelo modelo YOLO treinado. Podemos observar que o modelo YOLO treinado detecta com sucesso o drone com caixas delimitadoras precisas.

Figura 2 Detecção de alvo por meio do modelo YOLO treinado

Percebemos que o tamanho do modelo YOLO treinado é de 13,6 MB, o que é muito pequeno e pode detectar alvos de drones com precisão e rapidez. Na verdade, o tempo para detecção de objetos é de cerca de 30 milissegundos, o que significa que podemos usar o tempo de amostragem Ts = 1/15≈66,7 milissegundos, através do qual podemos processar 15 quadros de imagem por segundo para controle.

03   Controle PD baseado no detector de alvo YOLO

Usamos o YOLO como sensor para a posição relativa do drone na frente. A Figura 3 (esquerda) mostra os resultados da detecção de objetos YOLO. O campo de visão (FOV) do drone é de 82,6 graus. Definimos a origem no canto superior esquerdo do quadro da imagem, e os eixos xey são mostrados na Figura 3. Sejam (x, y) e (rx, ry) o centro do drone na frente e no quadro, respectivamente, e A seja a área da caixa delimitadora estimada. Em nosso exemplo, fixamos rx=160 e ry=120. Use a região A da caixa delimitadora para estimar a distância até o drone na frente. Calibramos o sistema quando A = 1800 para que a distância seja de 60 cm.

Figura 3. Detecção de objetos e estimativa de posição para um UAV (esquerda) e dois UAVs (direita).

Quando há mais de dois drones na frente, vários drones podem ser detectados, conforme mostrado na Figura 3 (à direita). Neste caso, medimos o comprimento da caixa delimitadora, digamos L1 e L2, e se L1>L2, conforme mostrado na Figura 3, então selecionamos a caixa delimitadora de L1 como o drone. Determinamos então a dinâmica dos sistemas de entrada/saída do UAV, incluindo detectores de objetos YOLO e comunicações sem fio Wi-Fi (ver Figura 4).

Fig. 4 Diagrama de blocos do sistema de controle do UAV na direção x. A entrada r_x é a posição de referência, que é o centro do quadro da imagem, e a saída é a posição relativa do drone no quadro da imagem. A entrada para o sistema P_x é o comando de controle do controlador C_x.

Observamos que a latência da comunicação sem fio varia ao longo do tempo, o que pode levar a transições instáveis, conforme descrito na Seção 4. Para isso, pegamos funções de transferência de segunda ordem nas direções x, y e distância, e calculamos os coeficientes das funções de transferência usando os dados de entrada/saída usando a caixa de ferramentas de identificação do sistema do MATLAB. A função de transferência obtida (ver Figura 4) é a seguinte:

Esses sistemas incluem a dinâmica do detector YOLO e o atraso de tempo, que pode variar no tempo entre o drone e o computador que realiza a detecção YOLO e gera o sinal de controle, já que utilizamos Wi-Fi. Notamos também que cada função de transferência tem um pólo próximo de zero, pelo que podemos pensar nela como um sistema contendo um integrador. Usamos controle PD (derivada proporcional) sem I (integral). Detectamos erro de rastreamento no tempo t ≥ 0:

onde r_x =160,r_y =120,r_A =1800aplicamos o controle de feedback de forma que a soma e_x,e_yconvirja e_{dist}para zero.

Controlamos o sistema com tempo de amostragem T_s=1/15e discretizamos a função de transferência usando uma transformada invariante ao passo (também conhecida como discretização com preservação de ordem zero) [18]. O controle PD é então dado pela seguinte função de transferência em tempo discreto:

Entre eles eu=x,y,dist. Buscamos parâmetros por meio de simulações computacionais utilizando o modelo obtido em (1). A Tabela 1 apresenta os parâmetros obtidos. É fácil verificar que com esses controladores de feedback PD, o sistema dinâmico descrito em (1) é T_sassintoticamente estável sob amostrador ideal e retenção de ordem zero com tempo de amostragem = 1/15 seg. A Figura 5 mostra os resultados da simulação usando o controlador PD obtido. Podemos ver que para as direções xey, o tempo de resposta é de cerca de 2 segundos, mas para a direção da distância, o tempo é de cerca de 3 segundos.

Tabela 1 Parâmetros do controlador PD de tempo discreto: Ts=1/15 é o tempo de amostragem.

04  experimento

Nesta seção, apresentamos resultados experimentais em uma frota de drones usando detecção de objetos YOLO em ambiente interno. Utilizamos três drones DJI Tello, um dos quais é o drone líder e os outros são drones seguidores. O drone líder é controlado manualmente por uma pessoa com um smartphone, e os dois drones seguidores são controlados de forma independente por dois computadores PC1 e PC2 através de comunicação sem fio usando Wi-Fi, conforme mostrado na Figura 6. PC1 e PC2 realizam detecção de objetos via YOLO e geram sinais de controle via controlador PD, que são então enviados de forma independente para os drones seguintes.

Fig. 5 Resultados da simulação do controle PD: direção x (esquerda), direção y (meio) e direção de distância (direita)
Figura 6 Configuração experimental

Medimos a posição 3D global de cada drone usando outro modelo YOLO com imagens de vídeo gravadas de uma câmera fixada na sala. A Figura 7 mostra as posições dos três drones usados ​​para controlar as direções x e y. A Figura 8 também mostra a posição do drone utilizado para controlar a direção da distância. Os filmes para esses resultados podem ser encontrados na página indicada pela legenda da imagem.

Figura 7. Experimento de fila de drones: direções x (esquerda) e y (direita) do drone líder (linha sólida), o primeiro drone seguinte (linha tracejada) e o segundo inorgânico seguinte (linha tracejada-ponto).

A Tabela 2 mostra os erros absolutos médios nas direções x, y e alcance, E_{x,ij}e E_{y,ij }, entre os i-ésimo e j-ésimo UAVs, respectivamente E_{dist,ij}.

Tabela 2 Erro entre dois UAVs [m]
Figura 8. Experimento de fila de drones (direção da distância): drone líder (linha sólida), primeiro drone seguidor (linha tracejada) e segundo drone seguidor (linha tracejada - pontos).

Notamos que a lacuna entre os resultados simulados e experimentais deve ser atribuída a atrasos de comunicação que variam no tempo e a perturbações do vento. A partir desses resultados, podemos ver que os UAVs seguidores se movem em uníssono com os UAVs frontais e alcançam o enfileiramento do UAV, uma vez que os erros na Tabela 2 são todos limitados e não divergem. Observamos também que o segundo drone seguidor apresentou um erro maior que o primeiro drone seguidor. Este fenômeno pode ser explicado pela instabilidade das strings [19, 20], que leva a erros cada vez maiores quando controlamos filas mais longas. H_\inftyPara garantir a estabilidade das cordas para linhas mais longas, precisamos reduzir a norma (ou ganho) do sistema mostrado na Figura 4 (de r_xpara x). Ou seja, as seguintes desigualdades devem ser satisfeitas:

Para qualquer um eu \em 1,2,...,N, onde \soma _i(s)é eua função de transferência do sistema de entrada/saída do UAV seguidor, e N é o número de UAVs seguidores. Para isso, precisamos adotar H_\inftyo projeto de controle [21].

05 Conclusão

Neste artigo, demonstramos o projeto de pelotões de drones baseados na detecção de objetos de aprendizagem profunda em tempo real. O modelo YOLO é adequado para detecção em tempo real e os parâmetros de controle PD são ajustados por simulação. Resultados experimentais demonstram a eficácia do sistema proposto. H_\inftyTrabalhos futuros incluem o projeto de controle de múltiplas entradas em três dimensões, empregando controle linear quadrático (LQ), controle ideal ou controle preditivo de modelo.

1.  As 10 principais tendências de robôs que merecem atenção em 2023

2.  Posicionamento colaborativo distribuído de enxames de UAV

3.  O ambiente de simulação Turtlebot + ROS Stage realiza rastreamento de trajetória MPC

4.  PythonRobotics | Navegação autônoma de robô baseada em python

5.  Detecção visual de objetos 3D, desde geometria visual até detecção BEV

6.  Visão geral 4D | Percepção de fusão multissensor para direção autônoma

Acho que você gosta

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