Sistema de Visão para Aterragem Automática de UAVs (Abordagem baseada num sistema localizado em terra) Nuno Pessanha Santos
[email protected] [email protected]
21 de Janeiro de 2015
AGENDA 1. Introdução (Motivação e Objetivos) 2. Descrição Geral do Sistema 3. Estimação de Pose e Tracking 4. Resultados Experimentais 5. Conclusões e Trabalho Futuro 6. Participações Relevantes
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
2 2
1. INTRODUÇÃO MOTIVAÇÃO E OBJETIVOS 1. Desenvolver um sistema de aterragem automática (AUTOmatic LANDing) para pequenos UAVs de asa fixa a bordo de navios (capacidade de aterrar em pequenas áreas);
2. Aumentar a capacidade operacional e facilidade de operação em condições adversas de mar; 3. Validação operacional do conceito.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
3 3
1. INTRODUÇÃO MOTIVAÇÃO E OBJETIVOS
N.R.P. Cassiopeia Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
4 4
2. DESCRIÇÃO GERAL DO SISTEMA CÂMARA RGB
FRAME - Ft
DETEÇÃO DA AERONAVE
ESTIMAÇÃO DA POSE
ALGORITMO DE TRACKING
SEM DETEÇÃO - OBJETO CAPTURAR FRAME
CORRIGIR DISTORÇÃO RADIAL E TANGENCIAL
DETEÇÃO DETETAR (CLASSIFICADOR) REGIÃO DE INTERESSE (LOCALIZAÇÃO UAV)
FILTRAGEM DA MELHOR PARTÍCULA (UKF)
MELHORES POSSIBILIDADES BASE DE DADOS
CÁLCULO DA LIKELIHOOD E PROCESSAMENTO
ESTIMATIVA POSE
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
5 5
3. SISTEMA DE ESTIMAÇÃO ESTIMAÇÃO DE POSE O método proposto é dividido em quatro (4) fases: PROJEÇÃO ROTATION & TRANSLATION
• Deteção da Aeronave; • Inicialização das partículas; • Avaliação das Partículas;
N HIPÓTESES (PARTÍCULAS)
Modelo 3D T
Z AVALIAR A LIKELIHOOD CADA POSSIBILIDADE
X Y
• Otimização de pose. 6
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
6
•
3. SISTEMA DE ESTIMAÇÃO DETEÇÃO DA AERONAVE A deteção inicial da região de interesse (ROI) é muito importante – pontos fundamentais do objeto;
•
Ambiente exterior (invariância a alterações de luminosidade e
taxa de deteção do objeto elevada); •
A deteção inicial é feita utilizando um classificador em cascata utilizando a característica LBP (Local binary pattern) prétreinado.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
7
77
3. SISTEMA DE ESTIMAÇÃO INICIALIZAÇÃO DAS PARTÍCULAS •
A inicialização é feita ao comparar as características das bounding boxes detetadas com as geradas de forma sintética para o UAV em múltiplas poses;
Alfa Beta Gama Ângulo Altura Largura Aspect Ratio BB Centro BB Centro
𝛼
𝛽
𝛾
BB Θ
𝑑 𝜃, 𝐴𝑅 =
•
BB
BB
BB
𝐶𝑥
𝐶𝑦
𝜃𝑜𝑏𝑠 − 𝜃𝑑𝑎𝑑𝑜𝑠 )2 + (𝐴𝑅𝑜𝑏𝑠 − 𝐴𝑅𝑑𝑎𝑑𝑜𝑠 )2
A base de dados é criada offline e indexada de maneira eficiente para acesso rápido.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
8
3. SISTEMA DE ESTIMAÇÃO AVALIAÇÃO DAS PARTÍCULAS Foram usadas duas funções distintas de likelihood: •
Diferença entre o histograma interior (objeto) e o histograma exterior limitado por uma bounding box (Acima de 25 metros);
•
Abordagem híbrida combinando a função de likelihood descrita no ponto anterior com um método baseado em contornos
(Abaixo de 25 metros).
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
9 9
3. SISTEMA DE ESTIMAÇÃO AVALIAÇÃO DAS PARTÍCULAS 1. Likelihood textura: 𝐿𝑡𝑒𝑥𝑡𝑢𝑟𝑎 = 1 −
Γ 𝑏=1
2. Likelihood contornos: 𝐿𝑐𝑜𝑛𝑡𝑜𝑟𝑛𝑜𝑠 = 𝑒𝑥𝑝
ℎ𝑖𝑛𝑡𝑒𝑟𝑖𝑜𝑟 (𝑏). ℎ𝑒𝑥𝑡𝑒𝑟𝑖𝑜𝑟 (𝑏) 𝑝 −𝑝 −𝜆𝑣 𝑣𝑝 𝑚 𝑣
× 𝑒𝑥𝑝
−𝜆𝑒 𝑒
3. Likelihood híbrida: 𝐿𝑡𝑜𝑡𝑎𝑙 = 𝐿𝑐𝑜𝑛𝑡𝑜𝑟𝑛𝑜 + 𝐴 × 𝐿𝑡𝑒𝑥𝑡𝑢𝑟𝑎 LER O MODELO CAD (OFFLINE)
CALCULAR MAGNITUDE E ÂNGULO (FRAME OBSERVADA)
PROJETAR MODELO (RENDERING)
OBTER O CONTORNO EXTERIOR
CALCULAR A LIKELIHOOD HÍBRIDA
CALCULAR O HISTOGRAMA INTERIOR E EXTERIOR
CALCULAR O ERRO MÉDIO
1D PESQUISA PERPENDICULAR (CORRESPONDER PONTOS)
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
10 10
3. SISTEMA DE ESTIMAÇÃO OTIMIZAÇÃO DE POSE
O processo de otimização funciona em três (3) fases:
• Inicialização;
LIMIAR MÍNIMO
• Otimização grosseira; • Otimização fina. INICIALIZAÇÃO PARTÍCULAS
INICIALIZAÇÃO
OTIMIZAÇÃO GROSSEIRA
OTIMIZAÇÃO FINA
LIMIAR
CÁLCULO LIKELIHOOD
ATUALIZAR O VETOR DAS MELHORES PARTÍCULAS
GERAR NOVAS PARTÍCULAS
ANÁLISE DA FASE DE OTIMIZAÇÃO
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
11 11
1. Inicialização:
3. SISTEMA DE ESTIMAÇÃO OTIMIZAÇÃO DE POSE
•
100 melhores possibilidades base de dados;
•
Partículas de likelihood próxima de 0 substituídas (Top M - ruído);
•
10 iterações para melhoria de resultado.
2. Otimização grosseira: •
As partículas do Top M são combinadas por cruzamento;
•
Metade das partículas geradas são afetadas de ruído gaussiano – mutação;
3. Otimização fina. •
Semelhante à fase anterior mas com uma variância no ruído
inferior.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
12 12
3. SISTEMA DE ESTIMAÇÃO ALGORITMO DE TRACKING SEM DETEÇÃO - OBJETO CAPTURAR FRAME
CORRIGIR DISTORÇÃO RADIAL E TANGENCIAL
FILTRAGEM DA MELHOR PARTÍCULA (UKF)
CLASSIFICADOR DETEÇÃO (LBP)
ANÁLISE DA FASE DE OTIMIZAÇÃO
EXTRAIR ROI
FAST & BB -> ROI BASE DE DADOS (DISTÂNCIA EUCLIDEANA)
ATUALIZAR VETOR DAS MELHORES PARTÍCULAS
P MELHORES POSSIBILIDADES BASE DE DADOS (INICIALIZAÇÃO)
CALCULAR LIKELIHOOD PARA CADA POSSIBILIDADE
ESTIMATIVA POSE
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
13 13
4. RESULTADOS EXPERIMENTAIS DETEÇÃO DO OBJETO - UAV • O tempo de processamento médio do classificador utilizado para uma frame são 59 ms (1280x720); • O algoritmo FAST demora em média menos de 1 ms (1280x720).
NOTA: Implementação em C++ num processador de 2,40GHz intel i7 CPU usando uma NVIDIA GeForce GT 750M. Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
14 14
4. RESULTADOS EXPERIMENTAIS INICIALIZAÇÃO DAS PARTÍCULAS
• As melhores possibilidades são usadas para inicializar a optimização de pose; • Existem algumas possibilidades com a mesma relação de BB e ângulo que não correspondem à pose real, mas estas possibilidades são filtradas na primeira iteração. Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
15 15
4. RESULTADOS EXPERIMENTAIS OTIMIZAÇÃO DAS PARTÍCULAS
Quatro (4) Iterações com 100 partículas são suficientes para uma boa estimativa na deteção de pose. Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
16 16
4. RESULTADOS EXPERIMENTAIS AVALIAÇÃO DO DESEMPENHO QUANTITATIVO • Foi criado um conjunto de teste para várias distâncias de UAV: 5,10,15,20,25,30,35,40,45 e 50 usando 850 frames sintéticas para cada distância; • A área de aterragem é irregular e tem cerca de 5x6 metros, precisamos assim de garantir um erro mínimo de translação de 1 metro para garantir uma aterragem fiável.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
17 17
4. RESULTADOS EXPERIMENTAIS AVALIAÇÃO DO DESEMPENHO QUANTITATIVO • •
O erro de translação diminui com a proximidade obtendo um valor médio de 0,27 metros a uma distância de 5 metros; O erro de rotação aos 5 metros também decresce com a proximidade (de forma menos acentuada do que com a translação), obtendo um valor mediano de 9,4 graus (função de likelihood híbrida). ERRO DE TRANSLAÇÃO
ERRO DE ROTAÇÃO
Distância Valor médio Mediana Distância Valor médio Mediana (metros) (metros) (metros) (metros) (metros) (metros) 5 0,27 0,19 5 37,2 9,4 10 0,54 0,40 10 52,3 14,6 15 0,92 0,70 15 60,5 22,1 20 1,32 0,92 20 62,5 23,3 25 1,68 1,28 25 63,3 27,0 30 2,1 1,45 30 75,4 52,2 35 2,4 1,66 35 75,1 46,6 40 2,9 1,99 40 77,2 56,5 45 3,5 2,43 45 74,9 41,8 50 3,8 2,61 50 79,3 61,7 Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
18 18
4. RESULTADOS EXPERIMENTAIS ALGORITMO DE TRACKING • Vetor de estado Inicial: Vetor de Estado:
Valor:
X
0m
Y
0m
Z
25 m
Alfa
0 graus
Beta
0 graus
Gama
190 graus
Variação: • X e Y - 𝒩 0, 0,25 • 𝛼, 𝛽 e 𝛾 - 𝒩 0, 5 • Aproximação 9,45 m/s
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
19
3. EXPERIMENTAL & SIMULAÇÃO ALGORITMO DE TRACKING
Jornadas do Mar 2014 – “Mar: Uma onde de progresso” 11 – 14 Novembro 2014, Escola Naval
13 20
4. RESULTADOS EXPERIMENTAIS ALGORITMO DE TRACKING
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
21 21
5. CONCLUSÕES •
Câmara a utilizar pode ser RGB (bom contraste entre o fundo e UAV);
•
Condições adversas de operação IP67;
•
Baixo poder de processamento UAV, melhor localização do sistema – terra;
•
Câmara não deverá ter uma resolução muito elevada (poder de processamento);
•
Deteção eficaz a 50 metros é 1 Megapixels;
•
Cálculo da likelihood deverá ser inteiramente feito na GPU;
•
Correção da distorção radial e tangencial efetuada totalmente na GPU obtendo menor tempo de processamento face à CPU.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
22 10
5. CONCLUSÕES •
O algoritmo apresentado tem as seguintes características: •
Deteção de UAV baseado num classificador em cascata;
•
Uma nova metodologia para inicialização das partículas baseada num base de dados indexada por propriedades da bounding box;
•
Otimização das partículas inspirada nos métodos de evolução que
demonstrou propriedades de convergência interessantes. •
A arquitetura de deteção de pose permite uma estimativa de posição precisa (cerca de 4 % de erro médio aos 5 metros) e uma estimativa de atitude razoável (cerca de 10 % de erro médio aos 5 metros);
•
Filtragem temporal permite obter melhores resultados de estimativa entre frames, diminuindo o erro obtido;
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
23
5. TRABALHO FUTURO •
Otimização dos parâmetros (fatores de peso) das funções de likelihood desenvolvidas;
•
Otimização dos valores de limiar da arquitetura de deteção de pose e
tracking baseada em três fases de optimização; •
Efetuar o cálculo da likelihood inteiramente feito na GPU (falta apenas o cálculo do histograma exterior);
•
Implementar um UKF individual para as melhores partículas encontradas, procurando através de uma estrutura em árvore garantir a filtragem temporal de múltiplas partículas;
•
Teste da arquitetura com imagens reais;
•
Desenvolver plataforma Pan-Tilt (Plataforma móvel / sujeita a ondulação).
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
24
6. PARTICIPAÇÕES RELEVANTES 1.
Santos, N. P., F. Melício, V. Lobo and A. Bernardino (2014). A Ground-Based Vision System for UAV Autonomous Landing. Poster presented at the 3rd Workshop on European Unmanned Maritime Systems. Porto, Portugal.
2.
Santos, N. P., F. Melício, V. Lobo and A. Bernardino (2014). A Ground-Based Vision System for UAV Pose Estimation. The 10th International Conference on Intelligent
Unmanned Systems. Montreal, Quebec, Canada. 3.
Santos, N. P. (2014). Sistema de Visão para Aterragem Automática de UAV. Jornadas do Mar 2014 - "Mar: Uma onda de progresso". Escola Naval, Alfeite, Almada.
4.
Santos, N. P., F. Melício, V. Lobo and A. Bernardino (2014). "A Ground-Based Vision System for UAV Pose Estimation." International Journal of Mechatronics and Robotics (IJMR) - UNSYSdigital International Journals 2.
5.
Santos, N. P., F. Melício, V. Lobo and A. Bernardino (2015). A Ground-Based Vision
System for UAV Tracking (Extended Abstract). OCEANS’15 MTS/IEEE GENOVA. Genova, Italy. (Resposta a 23 Janeiro – 2015) Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
25
OBRIGADO PELA ATENÇÃO E PELA VOSSA PRESENÇA.
Instituto Superior de Engenharia de Lisboa – Sistema de Visão para Aterragem Automática de UAVs
26 10