Como aplicar dewarping no Lepton® 3.1R e Lepton UW

Cabeçalho do artigo sobre deformação Lepton 3.1R.jpg

1 Introdução

As lentes infravermelhas (IV) Lepton 3.1R e Lepton UW utilizam um campo de visão (WFOV) de 95° de largura e uma lente WFOV de 160°, respectivamente. A distorção do cilindro é criada pela lente WFOV, fazendo com que o centro da imagem seja ligeiramente ampliado mais do que as bordas. Isso faz com que as linhas retas pareçam se curvar em torno da borda da imagem. A distorção de barril é indesejável para muitas aplicações de imagem. Esta nota de aplicação descreve a aplicação de correção de distorção (dewarping) nas saídas Lepton 3.1R e Lepton UW usando funções integradas OpenCV.

BAIXAR VERSÃO DO PDF


2 Distorção de Imagem

2.1 Visão geral

Uma lente WFOV permite que o gerador de imagens capture mais em uma cena, mas causará distorção, fazendo com que os objetos pareçam deformados. Geralmente, dois tipos de distorção podem existir em uma câmera: radial e tangencial. Distorção radial é quando linhas retas se curvam para dentro ou para fora do centro, enquanto distorção tangencial é quando a lente é inclinada em relação ao plano da imagem e a imagem parece distorcida. Para corrigir a distorção da lente, calibre a câmera para calcular as matrizes de transformação, que corrigem o mapeamento da câmera no plano da imagem.

FIGURA 1. DISTORÇÃO RADIAL (ESQUERDA).png FIGURA 1. DISTORÇÃO TANGENCIAL (DIREITA).png

FIGURA 1. DISTORÇÃO RADIAL (ESQUERDA) E DISTORÇÃO TANGENCIAL (DIREITA)

O procedimento de calibração varia ligeiramente matematicamente entre Lepton 3.1R e Lepton UW. Elas têm lentes diferentes, então não geram imagens do mesmo tipo de distorção geométrica. Embora ambas pareçam ter distorção radial, as imagens Lepton 3.1R consistem em bordas lineares, enquanto Lepton UW tem bordas circulares, comumente conhecidas como efeito olho de peixe. O mapeamento do conteúdo da cena em linhas retas para o Lepton UW é mais complexo devido às fronteiras extremamente deformadas. Diferentes modelos de distorção correspondentes ao tipo de lente são incorporados para calibração para compensar essa distinção: um modelo de distorção retilínea grande angular para Lepton 3.1R e um modelo de distorção olho de peixe para Lepton UW.

2.2 Aplicação da transformação Dewarp

Para corrigir qualquer distorção de lente com o método OpenCV, as câmeras são calibradas capturando padrões de teste para modelar a distorção. A captura de padrões de calibração usando uma câmera de IV é desafiadora, portanto, recomenda-se usar as matrizes padrão que caracterizam a distorção da câmera abaixo. Um breve guia sobre como fazer capturas do padrão de calibração é descrito na Seção 2.3.

FIGURA 2. MÁTRICAS DA CÂMERA.jpg

FIGURA 2. MÁTRICAS DA CÂMERA

Essas matrizes, juntamente com a imagem de entrada, são passadas como imagem de argumentos para a seguinte função integrada OpenCV para corrigir o mapeamento de plano de câmera para imagem. Um código de exemplo em Python para demonstração é fornecido na Seção 2.4.

Lepton 3.1R:código img.png não distorcido

Lepton UW:

FIGURA 2. MÁTRICAS DA CÂMERA - Lepton UW.jpg

Observe que há uma matriz de câmera e uma nova matriz de câmera. Ambos representam parâmetros intrínsecos da câmera; a única diferença é que a matriz da câmera define os parâmetros intrínsecos originais da câmera, enquanto a nova matriz da câmera escala e muda a matriz da câmera original. Sem especificar a nova matriz de câmera na função de desistoto, ela usa a matriz de câmera por padrão, que produz uma imagem retilínea com o mesmo IFOV que sua entrada. A compensação para obter linhas retas é que alguns pixels nos cantos da imagem de entrada são perdidos. A aplicação da nova matriz de câmera de versão totalmente em pixels mostrada acima oferece a opção de reter todos os pixels da entrada, mas introduz pixels pretos ao redor das bordas. As Figuras 3 e 4 mostram a entrada da amostra e as possíveis saídas.

FIGURA 2. ORIGINAL (ESQUERDA).png FIGURA 2.  SAÍDA RETILINEAR (CENTRAL).png FIGURA 2. TODOS OS PIXELS SAÍDA DA VERSÃO (DIREITA).png

FIGURA 3. LEPTON 3.1R - ORIGINAL (ESQUERDA), SAÍDA RETILÍNEA (CENTRO) E TODAS AS SAÍDAS DE VERSÃO DE PIXELS (DIREITA)

Fig 4 Lepton UW Original (Esquerda).png Fig 4 Lepton UW Saída Retilínea (Centro).png Fig 4 Lepton UW Saída de Todos os Pixels (Direita).png

FIGURA 4. LEPTON UW - ORIGINAL (ESQUERDA), SAÍDA RETILÍNEA (CENTRO) E TODAS AS SAÍDAS DE VERSÃO DE PIXELS (DIREITA)

2.3 Calibração da câmera

Como o site da OpenCV fornece uma explicação completa e um exemplo do código de aplicação do processo de calibração, esta nota de aplicação não cobre os detalhes. A documentação pode ser encontrada em https://docs.opencv.org/3.4/d4/d94/tutorial_camera_calibration.html.

Conforme apresentado na seção 2.2, capturar padrões de calibração em IV não é simples. Siga o guia abaixo para fazer capturas eficazes para calibração da câmera de IV.

1. Configuração
  • Use um padrão de calibração de grade circular, pois não é ideal exibir um tabuleiro de verificação térmica. As grades circulares assimétricas ou simétricas funcionam.
  • Uma grade circular de 8x8 é recomendada.
  • Uma impressão em papel do padrão de calibração colado em papelão e brevemente iluminado com luzes de saída de alta energia, ou o sol pode criar contraste térmico.

2. Capturando as Capturas
  • Tenha uma grade de círculos de pelo menos 6x6 para Lepton 3.1R e uma grade de círculos de 4x4 para Lepton UW visível na captura.
  • Alguns círculos podem ficar borrados perto das bordas da imagem devido ao WFOV.
  • Cada captura da grade circular deve ocupar apenas partes do campo de visão.
  • A coleta de capturas deve abranger a maioria das áreas do FOV, ou seja, uma ou duas capturas da grade circular perto do centro e oito a dez capturas ao redor da borda do FOV.
  • De dez a doze capturas no total fornecerão calibração otimizada, e capturas adicionais não são vantajosas.

FIGURA 3.  CENTRO (ESQUERDO).png FIGURA 3. INFERIOR DIREITO (CENTRAL).png FIGURA 3.   CENTRO INFERIOR (DIREITO).png

FIGURA 5. CENTRAL (ESQUERDA), INFERIOR DIREITO (CENTRAL) E INFERIOR CENTRAL (DIREITA) EXEMPLO CAPTURAS DE PADRÃO DE CALIBRAÇÃO LEPTON 3.1R

Fig 6 Lepton UW - Centro (esquerda) .png Fig 6 Lepton UW - Parte inferior direita (centro).png Fig 6 Lepton UW - Centro Inferior (Direita).png

FIGURA 6. CENTRO (ESQUERDA), INFERIOR DIREITO (CENTRO) E INFERIOR CENTRAL (DIREITA) EXEMPLO DE CAPTURAS DE PADRÃO DE CALIBRAÇÃO LEPTON UW

2.4 Suporte

O exemplo de script Lepton_Dewarp_example.py1 pode ser baixado aqui.

Para obter suporte técnico, visite o Centro de Suporte da FLIR em http://support.flir.com.