Deep Learning para direção autônoma: um avanço na navegação urbana


“Veículo autônomo” é uma palavra da moda que tem circulado nas últimas décadas. No entanto, o desenvolvimento de tal veículo representou um desafio significativo para os fabricantes automotivos. Este artigo descreve como o aprendizado profundo da direção e navegação autônoma podem ajudar a transformar o conceito em uma realidade tão esperada.

A economia de baixo toque em um mundo pós-pandemia está impulsionando a introdução de tecnologias autônomas que podem satisfazer nossa necessidade de interações sem contato. Quer sejam veículos autônomos entregando mantimentos ou medicamentos ou táxis robóticos nos levando aos destinos desejados, nunca houve uma demanda maior por autonomia.

Os veículos autônomos têm seis níveis diferentes de autonomia, desde motoristas com controle total até automação total. De acordo com o Statista, o mercado de veículos autônomos nos níveis 4 e 5 chegará a US $ 60 bilhões até 2030. A mesma pesquisa indica que 73% do número total de carros em nossas estradas terá pelo menos algum nível de autonomia antes que os veículos totalmente autônomos sejam introduzido.

Países e empresas automotivas em todo o mundo estão trabalhando para levar um nível mais alto de direção não tripulada a um público mais amplo. A Coreia do Sul anunciou recentemente que vai investir cerca de US $ 1 bilhão em tecnologias de veículos autônomos e lançar um carro de nível 4 até 2027.

O aprendizado de máquina e o aprendizado profundo estão entre outras tecnologias que permitem veículos autônomos mais sofisticados. As aplicações de técnicas de aprendizagem profunda em carros autônomos incluem:

– Classificação de cena;

– Planejamento de caminho;

– Compreensão da cena;

– Reconhecimento de faixa e sinal de trânsito;

– Detecção de obstáculo e pedestre;

– Controle de movimento.

Aprendizagem profunda para navegação autônoma

Métodos de aprendizagem profunda podem ajudar a enfrentar os desafios de percepção e navegação na fabricação de veículos autônomos. Quando um motorista navega entre dois locais, ele dirige usando seu conhecimento da estrada, a aparência das ruas e os semáforos, etc. É uma tarefa simples para um motorista humano, mas um grande desafio para um veículo autônomo.

Aqui na ELEKS, criamos um modelo de demonstração que pode ajudar os veículos a navegar no ambiente como os humanos já fazem – usando a visão e o conhecimento prévio. Criamos uma solução que oferece navegação autônoma sem GPS e telemetria veicular, utilizando métodos modernos de aprendizado profundo e outras possibilidades de ciência de dados.

Usamos apenas uma câmera no painel e conjunto de dados do Street View da cidade de Lviv, Ucrânia; não usamos GPS ou sensores. Abaixo está uma visão geral das técnicas aplicadas e nossas principais descobertas.

1. Tarefa de segmentação de imagem

Usamos um conjunto de dados Cityscapes com 19 classes, que se concentra em edifícios, estradas, sinais, etc., e um modelo já treinado do DeepLab. O modelo que usamos é baseado na inferência Xception. Outros modelos com mapas / IoUs diferentes também estão disponíveis.

As camadas finais eram as probabilidades semânticas – principalmente dim ~ classes * output_image_dims (sem canais), para que pudessem ser filtradas e se tornar a inferência para o modelo de similaridade. Recomenda-se transformá-los na camada de incorporação ou encontrar uma camada mais adequada antes das saídas. No entanto, mesmo após a transformação da posição dos objetos (mais alto ou mais baixo) no quadro e a distância até ele, pode ter influenciado a robustez do embedding.



2. Coleta de dados adicionais e rotulagem

Em seguida, baixamos fotos brutas da web das ruas, nomes de estradas e locais (coordenadas, etc.) e também obtivemos a chave da API do Street View para download. Adicionamos rótulos de maneiras semiautomáticas com base nos nomes e locais e os verificamos manualmente. Criamos pares de imagens para o treinamento do modelo de similaridade.


Finalmente, usamos o aumento de imagem (também adicionando fotos de diferentes horários do dia e estações) e rotulagem de imagem usando o modelo (por exemplo, amostras negativas adicionais, que o modelo reconhece como semelhantes, mas não estão localizadas em uma rua (GPS , nomes de ruas, etc.)). Como resultado, criamos um conjunto de dados contendo aproximadamente 8 a 12 mil imagens aumentadas.


3. Ideação e validação de modelos de similaridade

Testamos algumas abordagens de comparação de street view do descritor clássico e correspondência de modelo a algoritmos SOTA DL modernos como QATM. O mais preciso foi o modelo de inferência com representação para cada imagem segmentada em um par, como VGG, ResNet oufficientNet e classificador binário (xgb ou rf). A precisão validada é igual a aproximadamente 82,5% (se a rua certa foi encontrada ou não), levando em consideração as ruas mais conhecidas de Lviv entre 2011 e 2019 e com aumento (mudando formas de imagem, raios, etc.).




4. Resultado e recursos de desempenho

Segmentamos a cada décimo quadro, o que foi útil para cálculos quase em tempo real e porque não haveria grandes mudanças no ambiente no espaço de 10 quadros (1/3 s). Em seguida, os modelos DeepLab mostraram> 70 mIoU (Cityscapes, terceiro tapete semântico – edifícios), tempo para previsão – CPU 15s-mais de 10m com base em Xception, GPU ~ <1s.

A previsão de similaridade foi igual a 1min por 100 pares (inferência em GPU (4Gb VRAM) + classificador em 6 núcleos de CPU). Pode ser otimizado, após as primeiras posições estimadas, limitando a pesquisa apenas a vistas mais próximas da rua, pois o veículo não pode aparecer mais de 1 km em 10-50 frames.

Nem todas as ruas da cidade foram cobertas, então encontramos vídeos com um percurso pelo centro da cidade. Para o posicionamento do mapa, usamos mapas wiki; no entanto, outros mapas podem ser usados, se necessário. Conseguimos as coordenadas do veículo a partir de metadados de imagem de rua (latitude / longitude, nome da rua).

Alguns segmentos de ruas estão disponíveis em algumas versões diferentes – o mesmo local em 2011, 2015 ou 2019 e fotos de diferentes fontes, etc., para que o classificador possa encontrar qualquer um deles. Usamos principalmente transformações afins fracas para o aumento da rua sem inversão ou mudanças fortes de cor e forma.

Algumas das estimativas podem ser imprecisas pelos seguintes motivos:

Estimativa de ruas e estradas – a área do objeto estático é baixa, o ruído da rua é bastante alto (veículos, pedestres) ou mudanças sazonais (árvores, neve, chuva, etc.)

Erros de posição e velocidade do veículo – a mesma posição da rua e diferentes degraus da rua ou distância euclidiana para ruas curvas podem ser visualizados com um foco diferente (distância até um objeto), etc.

Você pode conferir uma amostra de vídeo de navegação pré-gravada com pós-processamento aqui.

Resumindo

Os veículos autônomos ainda estão em fase de testes. No entanto, o rápido desenvolvimento de tecnologias poderá em breve facilitar sua presença nas ruas. Embora ainda existam muitos desafios para a autonomia total que precisam ser resolvidos – incluindo problemas em tempo real e problemas de confiabilidade – os algoritmos de aprendizado profundo provavelmente melhorarão ainda mais a inteligência e a navegação autônoma de carros autônomos.


Publicado em 20/06/2021 12h40

Artigo original:

Estudo original: