GEOINTELIGÊNCIA, SENSORIAMENTO REMOTO

Geração de dados sintéticos para sensoriamento remoto

A muito percebi que não a caminho de volta para um emprego cada vez mais massivo da classificação automática de alvos, no futuro da Inteligência de Imagens e suas aplicações. Tal situação passa obrigatoriamente pela criação de uma biblioteca espectral de alvos, ampla e eficiente, para que possa ter sua utilidade posta em prática de forma mais plena.

A publicação a seguir, apesar de, em alguns momentos, se ater a quesitos bastantes técnicos da computação e das redes neurais, consegue abordar vários pontos desse desafio e suas possíveis soluções, no que tange ao Estado da Arte sensoriamento remoto e a IMINT.

Aproveitando todo o potencial das redes neurais profundas para interpretação e análise de imagens 

A maior parte da interpretação e análise de imagens modernas depende de redes neurais profundas (DNNs) devido à sua precisão incomparável, grande capacidade de diferenciar várias classes de objetos distintos, generalização e relativa simplicidade para desenvolver e aplicar novas ferramentas, quando comparados aos métodos tradicionais de visão por computador. 

Nos últimos anos, a pesquisa de DNN resultou em uma classificação de prateleira, com a detecção e algoritmos de segmentação semântica que, quando devidamente treinados, aproximam-se do nível humano ou até o superam no desempenho em muitos domínios de imagens. No entanto, são necessárias grandes quantidades de dados de treinamento rotulados para tarefas específicas de maneira a obter esses benefícios. 

Esses dados devem exibir a extensão e a variabilidade do domínio de destino. Como outros modelos estatísticos, DNNs não extrapolam bem em ambientes fora do seu domínio, sem cuidados especiais. Por exemplo, treinar um modelo para segmentar estradas usando imagens de cidades norte-americanas e, em seguida, implantar esses modelos em imagens de cidades europeias produzirá um resultado aquém do ideal. Um obstáculo básico à generalização para DNNs é que as variações que parecem obviamente irrelevantes para os humanos (por exemplo, marcações de pista diferentes ou práticas agrícolas) são percebidas como sendo completamente estranhas a um DNN, levando a resultados imprevisíveis. 

O aumento de dados durante o treinamento (por exemplo, espelhamento aleatório, rotação, alterações de contraste e brilho, equilíbrio de cores, escala, etc.) pode aliviar parcialmente esses problemas; no entanto, métodos mais avançados são necessários para que os DNNs possam generalizar bem novos ambientes. Um obstáculo básico à generalização para DNNs é que as variações que parecem obviamente irrelevantes para os humanos (por exemplo, marcações de pista diferentes ou práticas agrícolas) são percebidas como completamente estranhas a um DNN, levando a resultados imprevisíveis. 

Para combater a generalização deficiente, vários métodos criam conjuntos de dados rotulados para fins de treinamento, mas fazer isso de forma eficiente, em escala e com extensibilidade em mente requer uma reflexão cuidadosa. O desenvolvimento de um sistema usando metodologias ativas de aprendizagem implantadas em ambientes colaborativos pode ajudar os anotadores a rotular dados rapidamente e criar uma capacidade operacional, começando com apenas uma pequena quantidade de dados rotulados. [1] Muitos desses insights foram feitos em outros campos, particularmente com direção autônoma e cuidados de saúde, que requerem fatores extras, como segurança e interoperabilidade. [2,3]

Além de rotulagem robusta, treinamento e um ambiente de validação e implantação, técnicas mais avançadas podem maximizar a precisão do modelo em escalas de tempo curtas e com dados de treinamento limitados. Por exemplo, a modelagem semi-supervisionada e não supervisionada pode ajudar nas tarefas de rotulagem, enquanto os ambientes simulados podem substituir ou complementar os conjuntos de dados de treinamento e validação. Este artigo se concentra na última abordagem: criar fluxos de trabalho de dados sintéticos para aumentar a precisão do modelo quando os dados rotulados são escassos.

Métodos de Simulação

O artigo de Geoffrey Hinton de 2007 “Para reconhecer formas, primeiro aprenda a gerar imagens,” [4]  teve um grande impacto no assunto rede neural e na comunidade de pesquisa estatística. O artigo apresenta as etapas para desenvolver uma rede neural de várias camadas, métodos para definir funções de perda e o cálculo para atualizar os parâmetros do modelo para maximizar a precisão do modelo (conhecido como retropropagação). Além dessa receita de treinamento de modelo altamente popular, o trabalho de Hinton discute a geração de imagens de modelagem para aumentar ainda mais a precisão da detecção ou classificação. Em essência, entender como criar imagens beneficia muito a interpretação e análise de imagens (e vice-versa).

Existem duas abordagens principais para simular dados, cada uma com vantagens e desvantagens: gráficos de computador tradicionais e modelos generativos baseados em dados. Gráficos de computador usam traçado de raio e rasterização para renderizar cenas simuladas. Isso funciona particularmente bem em casos de uso de sensoriamento remoto e veículos autônomos, onde os primitivos básicos (edifícios, estradas, veículos) e as condições espectrais (geometrias de visualização, ângulos de iluminação, conteúdo espectral, atenuação atmosférica) são relativamente simples e fáceis de modelar. 

Por exemplo, a ferramenta de modelagem Digital Imaging and Remote Sensing Image Generation (DIRSIG), desenvolvida no Rochester Institute of Technology, fornece métodos para criar imagens sintéticas baseadas na física para desenvolvimento de sensores e para auxiliar no treinamento de modelos DNN. [5,6]Métodos semelhantes foram estudados para renderizar embarcações marítimas, colocando-as em imagens reais para melhorar amplamente as métricas de detecção de objetos. [7] 

Veículos autônomos e indústrias de saúde usam métodos de renderização para gerar conjuntos de dados simulados para melhorar a precisão do modelo, especialmente quando conjuntos de dados rotulados são escassos. [8,9] No entanto, a composição das cenas a serem renderizadas pode levar tempo, principalmente se o domínio de destino for diverso. Em comparação com a abordagem ingênua de reunir e rotular dados adicionais, esta abordagem troca o trabalho do anotador humano pelo trabalho do ilustrador. Em alguns casos, pode não ser possível realizar este exercício sem um investimento significativo.

Alternativamente, a abordagem generativa para dados sintéticos vê um conjunto existente de dados reais como uma coleção de amostras da distribuição real de dados reais e tenta construir um modelo que extrai amostras adicionais dessa distribuição. As amostras (ou imagens) geradas lembram o conjunto de dados e, se o modelo for treinado corretamente, podem ter níveis muito altos de fidelidade visual. Isso reduz a necessidade de usar a abordagem de computação gráfica para construir e renderizar objetos de interesse em cenas com condições espectrais realistas. 

No entanto, se esses parâmetros forem conhecidos e estiverem disponíveis no momento do treinamento, eles também podem ser usados ​​para condicionar o modelo a controlar a saída gerada. Os principais exemplos de modelagem generativa, especificamente usando redes adversárias generativas (GANs), incluem os trabalhos de Karras et al.[10] e Wang et al. para condicionar a saída GAN no nível do pixel usando rótulos semânticos. [11]

Ilustração da estrutura GAN: D (Discriminador) é apresentado alternadamente com imagens de G (Gerador) e do conjunto de dados. D é solicitado a distinguir entre as duas fontes. O problema é formulado como um jogo minimax: D está tentando minimizar o número de erros que comete. G está tentando maximizar o número de erros que D comete nas amostras geradas. As setas curvas representam a retropropagação de gradientes no conjunto de parâmetros de destino.

Modelagem Generativa vis GANs

Um GAN consiste em um par de redes que, como o nome sugere, competem entre si durante a fase de treinamento. A rede de geradores G toma como entrada um vetor aleatório denominado vetor latente. Se outros metadados estiverem disponíveis (ângulo de iluminação, etc.), esses valores podem ser concatenados com o vetor latente para condicionar a saída. Ao gerar novos dados, a rede pode ser controlada por meio dos metadados para criar imagens com parâmetros específicos. Este vetor latente é alimentado em uma série de camadas de remodelagem e deconvoluição para reconstruir e transformar o vetor em uma imagem gerada. 

A segunda rede, o discriminador D, obtém imagens do conjunto de dados real (os dados que estamos tentando modelar) e do conjunto de dados gerado e os passa por uma série de camadas convolucionais e de remodelagem em uma imagem quase espelhada da rede do gerador. Ele tenta prever corretamente quais imagens foram geradas por G e quais são reais. Estas redes competir em um jogo minimax de dois jogadores: onde D tem por objetivo adivinhar corretamente o que foi gerado, contra imagens reais, enquanto G tem por objetivo enganar D. No resultado ideal, G gera imagens sintéticas convincentes e D não pode determinar se as imagens de G são reais ou não. Durante a implantação, G recebe vetores latentes aleatórios com metadados de condicionamento (se disponíveis) para criar novas imagens plausíveis. O discriminador normalmente é descartado. [12]

Os GANs têm sido usados ​​com sucesso no setor de saúde, que apresenta um grande desequilíbrio entre imagens médicas saudáveis ​​e aquelas que contêm tecidos ou tumores prejudiciais. Os GANs podem ajudar a reduzir esse desequilíbrio por meio da modelagem e criação de dados adicionais. [13] Além disso, quando as preocupações com a privacidade são um problema, os GANs têm sido usados ​​para aplicar o anonimato, criando dados sintéticos que carecem de informações pessoais e ainda exibem os detalhes do exame dos pacientes. [14]

Usando GANs para aplicações de sensoriamento remoto

Para treinar DNNs de sensoriamento remoto usando modelos generativos para aumento de dados, deve-se modelar as imagens e os rótulos associados com um alto grau de precisão e fidelidade. Os pesquisadores fizeram progressos nessa direção transferindo estatísticas de imagem de um domínio, onde há uma abundância de dados, para o domínio de destino que é semelhante em aparência e conteúdo, mas com muito menos exemplos.

Por exemplo, Yun et al. use redes adversárias geradoras de ciclo consistente para converter dados de banda visível em dados infravermelhos. [15] Da mesma forma, Benjdira et al. usou a saída de CycleGANs entre a banda visível e os dados infravermelhos para aumentar significativamente a precisão da segmentação de conjuntos de dados de sensoriamento remoto. [16] Seo et al. transferiu estatísticas de imagens de imagens reais em imagens renderizadas sinteticamente contendo veículos militares para aumentar a fidelidade geral da imagem. [17] Em cada um desses trabalhos, dados reais são usados ​​para aumentar os dados sintéticos para a detecção de objetos ou treinamento do modelo de segmentação.

Em nosso trabalho recente (Howe et al.), as imagens e os rótulos são modelados juntos para criar imagens rotuladas completamente novas, que foram usadas para treinar um detector de objetos. [18] Para nosso conhecimento, esta é a primeira vez que tal modelagem foi tentada usando métodos GAN para qualquer área de aplicação. Aqui, usamos o Concurso de Rotulagem Semântica 2D da Sociedade Internacional de Fotogrametria e Sensoriamento Remoto (ISPRS) – conjunto de dados de Potsdam. 

Este conjunto de dados consiste em 24 segmentação rotulada de imagens de 6.000 × 6.000 pixels coletadas a uma distância de amostra do solo de 5 cm com seis categorias de tipos de uso da terra: superfícies impermeáveis ​​(branco), edifícios (azul), vegetação rasteira (ciano), árvores (verde) , veículos (amarelo) e desordem (vermelho). Usamos os métodos de Karras et al. (ProgressiveGAN) e Wang et al. (Pix2PixHD) para modelar os espaços de máscaras de segmentação e imagens condicionadas a tais máscaras, respectivamente. [19,20] A Figura 1 apresenta exemplos de imagem real e sintética e pares de rótulos.

Figura 1. Imagem real ISPRS Potsdam e pares de rótulos (à esquerda) e pares de rótulos de imagens gerados sinteticamente (à direita). As máscaras de segmentação sintética foram geradas via ProgressiveGAN, e as imagens sintéticas foram geradas via Pix2PixHD condicionadas na máscara gerada.

De uma perspectiva qualitativa, é difícil diferenciar conjuntos de dados reais de sintéticos. A métrica Fréchet Inception Distance (FID) é comumente usada para medir quantitativamente o quão bem os dados gerados correspondem à distribuição dos dados reais. Informalmente, o FID tenta medir como as imagens são diferentes das imagens reais quando processadas por meio de um DNN específico treinado no conjunto de dados ImageNet. Observamos que aumentar a quantidade de dados de treinamento para os GANs resultou em um aumento na pontuação do FID, o que significa que as imagens geradas se tornaram menos semelhantes às imagens reais quando a quantidade de dados de treinamento foi aumentada. Isso faz sentido à medida que os GANs aprendem a interpolar entre as imagens de treinamento, o que se torna mais difícil à medida que o número e a diversidade das imagens de treinamento aumentam.

Ao usar dados gerados por GAN para aumentar conjuntos de dados de treinamento reais, uma tendência semelhante é encontrada. Se apenas uma pequena quantidade de dados estiver disponível para treinar os GANs e um detector de objetos, neste caso, RetinaNet, [21]o aumento relativo na precisão média média (mAP) pode aumentar em mais de 10 por cento, em comparação com o treinamento com dados reais sozinhos usando metodologias de aumento de dados padrão. Para uma comparação prática, essa melhoria é cerca de 40 por cento do benefício obtido ao rotular exaustivamente uma imagem adicional de 6.000 × 6.000 pixels. 

À medida que o número de imagens de treinamento aumenta, a melhoria relativa no mAP diminui; até que eventualmente este método de aumento GAN se torne prejudicial. Este pipeline é eficaz, mas apenas quando muito poucos dados rotulados estão disponíveis. Se os dados rotulados forem abundantes, podem não oferecer um benefício e possivelmente prejudicar o desempenho. No entanto, para pequenas quantidades de dados de treinamento, esses métodos podem fornecer um impulso adicional no desempenho além das técnicas tradicionais de aumento.

Resumo e trabalho futuro

Em alguns domínios de imagens, as tarefas de visão computacional de classificação, detecção e segmentação podem ser vistas como problemas resolvidos no sentido de que, com dados abundantes, diversos e bem rotulados, as técnicas de prateleira agora podem se aproximar ou mesmo exceder desempenho de nível humano. Infelizmente, na prática, esses requisitos de dados geralmente excedem em muito o volume, a diversidade e a fidelidade da maioria dos conjuntos de dados rotulados. Além disso, essas técnicas de prateleira normalmente não se aplicam bem aos conjuntos de dados altamente desequilibrados que costumam ser a norma em muitas aplicações. Esses problemas são agravados pelo fato de que as técnicas de transferência de informações de dados rotulados em um domínio para outro (geralmente chamadas de adaptação de domínio) não abordam remotamente o desempenho de nível humano, mas são uma área ativa de pesquisa.

Além de rotular mais dados, o que pode ser caro ou mesmo impossível em alguns cenários, as duas principais abordagens para aumentar os dados escassos são a síntese de dados por gráficos de computador e modelos generativos. Ambas as técnicas se mostraram promissoras em imagens de sensoriamento remoto, mas têm uma deficiência comum: elas otimizam para fotorrealismo em vez de otimizar a sua utilidade como dados de treinamento. Além de hiperparâmetros de mudança de feedback humano, nenhuma das abordagens tenta usar a precisão da previsão como um sinal de treinamento para melhorar a simulação. 

A situação é semelhante à de alunos se preparando para um exame, mas o professor ignora completamente o desempenho no exame para trabalhar o desenvolvimento do currículo posterior. Na instrução adequada, o currículo é ajustado dinamicamente com base no desempenho do aluno. No aprendizado de máquina (ML), esse ciclo de feedback, conectado por meio de gradiente descendente, é referido como meta-aprendizagem. Antecipamos que os avanços futuros na síntese de dados para ML virão da unificação de gráficos e abordagens geradoras em uma construção de meta-aprendizado para otimizar diretamente para a tarefa de visão computacional desejada, em vez de fotorrealismo.


Este artigo foi aprovado para divulgação pública pela National Geospatial-Intelligence Agency # 20-084.

  1. Ksenia Konyushkova, Raphael Sznitman e Pascal Fua. “Aprendendo Aprendizado Ativo com Dados.” Em Advances in Neural Information Processing Systems, pp. 4225-4235. 2017.
  2. https://blogs.nvidia.com/blog/2018/09/13/how-maglev-speeds-autonomous-vehicles-to-superhuman-levels-of-safety/
  3. https://developer.nvidia.com/clara
  4. Geoffrey Hinton. “Para reconhecer formas, primeiro aprenda a gerar imagens.” Progress in Brain Research. 2007. não. 165: 535-547. https://doi.org/10.1016/S0079-6123(06)65034-6
  5. http://www.dirsig.org
  6. Sanghui Han ,, Alex Fafard, John Kerekes, Michael Gartley, Emmett Ientilucci, Andreas Savakis, Charles Law et al. “Efficient Generation of Image Chips for Training Deep Learning Algorithms.” Em reconhecimento automático de alvo XXVII. 2017. vol. 10202, pág. 1020203. Sociedade Internacional de Óptica e Fotônica.
  7. Yiming Yan, Zhichao Tan e Nan Su. “A Data Augmentation Strategy Based on Simulated Samples for Ship Detection in RGB Remote Sensing Images.” ISPRS International Journal of Geo-Information 2019: 8 (6): 276.
  8. Josh Tobin, Rachel Fong, Alex Ray, Jonas Schneider, Wojciech Zaremba e Pieter Abbeel. “Domain Randomization for Transferring Deep Neural Networks from Simulation to the Real World.” Em 2017 IEEE / RSJ International Conference on Intelligent Robots and Systems (IROS). pp. 23-30. IEEE. 2017.
  9. AF Frangi, SA Tsaftaris e JL Prince. “Simulation and Synthesis in Medical Imaging.” IEEE Transactions on Medical Imaging. 2018: 37 (3): 673-679. doi: 10.1109 / TMI.2018.2800298.
  10. Tero Karras, Timo Aila, Samuli Laine e Jaakko Lehtinen. “Progressive Growing of GANs for Improved Quality, Stability, and Variation.” 2017. pré-impressão de arXiv arXiv: 1710.10196.
  11. Ting-Chun Wang, Ming-Yu Liu, Jun-Yan Zhu, Andrew Tao, Jan Kautz e Bryan Catanzaro. “High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs.” Em Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018. pp. 8798-8807.
  12. Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville e Yoshua Bengio. “Generative Adversarial Nets.” In Advances in Neural Information Processing Systems. 2014. pp. 2672-2680.
  13. Felix Lau, Tom Hendriks, Jesse Lieman-Sifry, Sean Sall e Dan Golden. “Scargan: Chained Generative Adversarial Networks to Simulate Pathological Tissue on Cardiovascular MR Scans.” Em Deep Learning em Medical Image Analysis e Multimodal Learning for Clinical Decision Support. 2018. Springer, Cham. pp. 343-350.
  14. Edward Choi, Siddharth Biswal, Bradley Malin, Jon Duke e Walter F. Stewart, Jimeng Sun. “Generating Multi-label Discrete Patient Records Using Generative Adversarial Networks.” In Proceedings of the 2nd Machine Learning for Healthcare Conference.2017. PMLR 68: 286-305.
  15. Kyongsik Yun, Kevin Yu, Joseph Osborne, Sarah Eldin, Luan Nguyen, Alexander Huyen e Thomas Lu. “Melhor Visível para Transformação de Imagem IR Usando Aumento de Dados Sintéticos com Redes Adversariais Consistentes em Ciclo.” Em reconhecimento e rastreamento de padrões. 2019. XXX, vol. 10995. p. 1099502. International Society for Optics and Photonics.
  16. Bilel Benjdira, Yakoub Bazi, Anis Koubaa e Kais Ouni. “Adaptação de Domínio Não Supervisionado Usando Redes Adversariais Generativas para Segmentação Semântica de Imagens Aéreas.” Sensoriamento remoto. 2019: 11 (11): 1369.
  17. Junghoon Seo, Seunghyun Jeon e Taegyun Jeon. “Domain Adaptive Generation of Aircraft on Satellite Imagery via Simulated and Unsupervised Learning.” 2018. pré-impressão de arXiv arXiv: 1806.03002.
  18. Jonathan Howe, Kyle Pula e Aaron A. Reite. “Conditional Generative Adversarial Networks for Data Augmentation and Adaptation in Remotely Sensed Imagery.” 2019. arXiv preprint arXiv: 1908.03809.
  19. Tero Karras, Timo Aila, Samuli Laine e Jaakko Lehtinen. “Progressive Growing of GANs for Improved Quality, Stability, and Variation.” 2017. pré-impressão de arXiv arXiv: 1710.10196.
  20. Ting-Chun Wang, Ming-Yu Liu, Jun-Yan Zhu, Andrew Tao, Jan Kautz e Bryan Catanzaro. “High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs.” Em Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018. pp. 8798-8807.
  21. Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He e Piotr Dollár. “Perda Focal para Detecção de Objeto Denso.” Em Proceedings of the IEEE International Conference on Computer Vision. 2017. pp. 2980.2988.

USGIF em 28 de abril de 2020

Autores: Dr. Jonathan Howe, NVIDIA; Dr. Aaron Reite, NGA; Dr. Kyle Pula, CACI; e Dr. Jonathan Von Stroh, CACI

Tradução e comentários: Evenuel Viana Veloza

Padrão