Lepton® 3.1R 및 Lepton UW에 디워핑을 적용하는 방법

Lepton 3.1R Dewarping Article Header.jpg

1 소개

적외선(IR) Lepton 3.1RLepton UW는 각각 95° 광시야(WFOV) 및 160° WFOV 렌즈를 사용합니다. 배럴 왜곡은 WFOV 렌즈에 의해 생성되어 이미지의 중심이 가장자리보다 약간 더 확대되게 만듭니다. 그로 인해 직선들이 이미지 가장자리 주변으로 휘어지는 것처럼 보입니다. 배럴 왜곡은 많은 이미징 응용 분야에서 바람직하지 않습니다. 이 애플리케이션 노트에서는 OpenCV 내장 기능을 사용하여 Lepton 3.1RLepton UW 출력에 왜곡 보정(디워핑)을 적용하는 방법에 대해 설명합니다.

PDF 버전 다운로드


2 이미지 왜곡

2.1 개요

WFOV 렌즈는 이미저가 장면에서 더 많은 것을 포착할 수 있도록 하지만, 왜곡을 일으켜 물체가 변형되어 보이게 합니다. 일반적으로 카메라에는 방사형 왜곡과 접선형 왜곡의 두 가지 왜곡이 존재할 수 있습니다. 방사형 왜곡은 직선이 중심을 향해 안쪽으로 또는 바깥쪽으로 휘는 현상이며, 접선형 왜곡은 렌즈가 이미지 평면과 기울어져 있어 이미지가 비뚤어져 보이는 현상입니다. 렌즈 왜곡을 수정하려면 카메라를 교정해서 변환 행렬을 계산하여 카메라가 이미지 평면으로 매핑하는 것을 수정합니다.

그림 1. RADIAL DISTORTION (LEFT).png 그림 1. TANGENTIAL DISTORTION (RIGHT).png

그림 1. 방사형 왜곡 (왼쪽) 및 접선형 왜곡 (오른쪽)

교정 절차는 Lepton 3.1RLepton UW 간에 수학적으로 약간 다릅니다. 이 둘은 서로 다른 렌즈를 사용하기 때문에 동일한 유형의 기하학적 왜곡을 촬영하지 않습니다. 둘 다 방사형 왜곡이 있는 것으로 보이지만, Lepton 3.1R 이미지는 선형 경계로 구성되는 반면, Lepton UW는 일반적으로 어안 효과로 알려진 원형 경계를 갖습니다. Lepton UW의 직선에 장면 내용을 매핑하는 것은 매우 휘어진 경계로 인해 더 복잡합니다. 렌즈 유형에 해당하는 다양한 왜곡 모델이 교정을 위해 통합되어 이러한 차이를 보완합니다. 즉, Lepton 3.1R의 경우 광각, 직선형 왜곡 모델, Lepton UW의 경우 어안 왜곡 모델이 사용됩니다.

2.2 디워프 변환 적용

OpenCV 방법으로 렌즈 왜곡을 보정하려면, 왜곡을 모델링하기 위해 테스트 패턴을 캡처하여 카메라를 교정합니다. IR 카메라를 사용하여 교정 패턴을 캡처하는 것은 어렵기 때문에 아래의 카메라 왜곡을 특성화하는 기본 매트릭스를 사용하는 것이 좋습니다. 교정 패턴의 캡처 방법에 대한 간략한 가이드가 섹션 2.3에 설명되어 있습니다.

그림 2. CAMERA MATRICES.jpg

그림 2. 카메라 매트릭스

이 매트릭스들은 입력 이미지와 함께 다음 OpenCV 내장 함수에 인수 이미지로 전달되어 카메라-이미지 평면 매핑을 보정합니다. Python을 사용한 데모용 샘플 코드가 2.4절에 제공되어 있습니다.

Lepton 3.1R:undistorted img code.png

Lepton UW:

그림 2. CAMERA MATRICES - Lepton UW.jpg

카메라 매트릭스와 새로운 카메라 매트릭스가 있음을 주의해 주세요. 두 가지 모두 카메라의 내재적 파라미터를 나타냅니다. 유일한 차이점은 카메라 매트릭스가 원래의 내재적 카메라 파라미터를 정의하는 반면, 새로운 카메라 매트릭스는 원래의 카메라 매트릭스를 확대/축소하고 이동시킨다는 점입니다. undistort 함수에서 새로운 카메라 매트릭스를 명시적으로 지정하지 않으면, 기본적으로 카메라 매트릭스를 사용하며, 이는 입력과 동일한 IFOV를 가진 직선 투영 이미지를 출력합니다. 직선화를 얻는 대가로 입력 이미지 모서리의 일부 픽셀이 손실됩니다. 위에서 보여진 새로운 전체 픽셀 버전 카메라 매트릭스를 적용하면 입력 신호의 모든 픽셀을 유지할 수 있지만, 경계 주변에 검은 픽셀이 생성됩니다. 그림 3과 4는 샘플 입력 및 가능한 출력을 보여줍니다.

그림 2. ORIGINAL (LEFT).png 그림 2. RECTILINEAR OUTPUT (CENTER).png 그림 2. ALL PIXELS VERSION OUTPUT (RIGHT).png

그림 3. LEPTON 3.1R - 원본(왼쪽), 직선 출력(중앙) 및 모든 픽셀 버전 출력(오른쪽)

Fig 4 Lepton UW Original (Left).png Fig 4 Lepton UW Rectilinear Output(Center).png Fig 4 Lepton UW All Pixels Output(Right).png

그림 4. LEPTON UW - 원본(왼쪽), 직선 출력(중앙) 및 모든 픽셀 버전 출력(오른쪽)

2.3 카메라 교정

OpenCV 웹사이트에서 교정 과정에 대한 자세한 설명과 샘플 응용 코드를 제공하므로, 이 애플리케이션 노트에서는 자세한 내용은 다루지 않습니다. 문서는 https://docs.opencv.org/3.4/d4/d94/tutorial_camera_calibration.html에서 확인할 수 있습니다.

2.2 절에서 소개한 바와 같이, IR에서 교정 패턴을 캡처하는 것은 간단하지 않습니다. IR 카메라 교정을 위한 효과적인 캡처를 위해 아래 가이드를 따르세요.

1. 설정
  • 열 체커보드를 표시하는 것은 이상적이지 않으므로 원형 그리드 교정 패턴을 사용하세요. 비대칭 또는 대칭 원형 그리드가 작동합니다.
  • 8x8 원형 그리드가 권장됩니다.
  • 카드보드에 접착되고 고에너지 출력 조명으로 잠깐 조명되는 교정 패턴의 용지 인쇄물 또는 태양은 열 대비를 생성할 수 있습니다.

2. 캡처하기
  • 캡처에 Lepton 3.1R의 경우 최소 6x6 원형 그리드, Lepton UW의 경우 4x4 원형 그리드가 표시됩니다.
  • 일부 원은 WFOV로 인해 영상 경계 근처에서 흐려질 수 있습니다.
  • 원형 그리드의 각 캡처는 FOV의 일부만 차지해야 합니다.
  • 캡처 모음은 FOV의 대부분의 영역, 즉 중심 근처의 원형 그리드의 1개 또는 2개의 캡처와 FOV의 경계 주위의 8개 내지 10개의 캡처에 걸쳐 있어야 합니다.
  • 총 10~12회의 캡처로 최적의 교정이 가능하며, 추가 캡처는 유익하지 않습니다.

그림 3. CENTER (LEFT).png 그림 3. BOTTOM RIGHT (CENTER).png 그림 3. BOTTOM CENTER (RIGHT).png

그림 5. 중앙(왼쪽), 하단 오른쪽(중앙) 및 하단 중앙(오른쪽) 예제 LEPTON 3.1R 교정 패턴 캡처

Fig 6 Lepton UW - Center (Left) .png Fig 6 Lepton UW - Bottom Right (Center).png Fig 6 Lepton UW - Bottom Center(Right).png

그림 6. 중앙(왼쪽), 하단 오른쪽(중앙) 및 하단 중앙(오른쪽) 예시 LEPTON UW 교정 패턴 캡처

2.4 지원

Lepton_Dewarp_example.py1 샘플 스크립트는 여기에서 다운로드할 수 있습니다.

기술 지원을 받으려면 http://support.flir.com에서 FLIR 지원 센터를 방문하세요.