수중 로봇을 이용한 구조물 검사에서의 상호 정합도를 고려한 영상 모자이킹
CopyrightⓒKROS
Abstract
Image mosaicking is a common and useful technique to visualize a global map by stitching a large number of local images obtained from visual surveys in underwater environments. In particular, visual inspection of underwater structures using underwater robots can be a potential application for image mosaicking. Feature-based pairwise image registration is a commonly employed process in most image mosaicking algorithms to estimate visual odometry information between compared images. However, visual features are not always uniformly distributed on the surface of underwater structures, and thus the performance of image registration can vary significantly, which results in unnecessary computations in image matching for poor-conditioned image pairs. This study proposes a pairwise registrability measure to select informative image pairs and to improve the overall computational efficiency of underwater image mosaicking algorithms. The validity and effectiveness of the image mosaicking algorithm considering the pairwise registrability are demonstrated using an experimental dataset obtained with a full-scale ship in a real sea environment.
Keywords:
Image Mosaicking, Pairwise Registrability, Underwater Robots, Structure Inspection1. 서 론
해양 로봇공학 분야와 센싱 기술의 지속적인 발전으로 최근 다양한 분야에서 수중 로봇의 활용이 본격화되고 있다. 수중 로봇의 활용도를 극대화하기 위한 많은 요소 기술 중 하나로서 영상 모자이킹(image mosaicking)은 대상 영역이 근사적으로 평면이라는 가정하에 제한된 시야각을 가지는 여러 장의 영상으로부터 하나의 조합된 영상은 만드는 기법이다[1]. 시계(visibility)의 제약이 큰 수중 환경에서 광학 영상을 사용할 때에는 기본적으로 근접 촬영에 의존해야 하므로, 수중 구조물 표면 검사 임무와 같이 수많은 국소 영상들을 기반으로 넓은 영역에 대한 전역 지도를 자동으로 생성하는 과정이 필수적인 수중 로봇 활용 분야에서 모자이킹 기법의 활용 가치는 매우 높다고 할 수 있다[2].
수중 영상 모자이킹을 수행하기 위해 일반적으로 도입되는 특징점 기반 정합(feature-based registration) 과정에서는 쌍으로 주어지는 영상 간의 특징 대응점들을 기반으로 영상(또는 카메라) 간의 상대적인 운동 정보가 포함된 호모그래피(homography) 모델을 추정한다. 그러나 수중 구조물 표면에는 보통 특징점들이 희박하거나 매우 불규칙적으로 분포된 경우가 많으므로, 모자이킹 알고리즘에서 구조물 표면 영상들의 실제적 유용성은 각 영상이 얻어지는 영역에 따라 상이할 수 있다. 그러므로 비교되는 각 영상 쌍 간에 내포된 정보량을 분석하고 상호 정합도를 예측하여 정량화하는 과정이 포함된다면, 잠재적으로 유효할 것으로 판단되는 영상 쌍들만을 선택 적용함으로써 결과적으로 모자이킹 알고리즘의 연산 효율성을 향상시킬 수 있을 것이다.
수중 환경에서 수행되는 영상기반 지도작성(mapping) 또는 영상기반 SLAM(Simultaneous Localization And Mapping) 문제에서 영상 쌍 간의 상호 정합도를 평가하고자 한 연구가 일부 수행된 바 있다. 수중 영상 모자이킹 시나리오에서 수행된 관련 연구[3]에서는 주어진 데이터셋(dataset)에 대해 개략적으로 일괄 처리(batch processing)된 초기 결과가 주어져 있을 때, 결과의 정확도를 유지하며 영상 정합 횟수를 줄이기 위한 상호 정합도 예측 지표로서 비교 영상 간의 중첩 영역 넓이(즉, 영상 간 거리)를 사용하였다. 수중 선체검사를 위한 영상기반 SLAM 알고리즘을 다룬 관련 연구[4]에서는 각 영상 프레임(frame)별로 포함된 정보를 정량화한 뒤, 이를 SLAM에서 지속적으로 평가되는 불확실성(uncertainty)을 기반으로 한 정보 이득(information gain)[5] 지표에 가중치로 적용함으로써 루프-폐쇄(loop-closure)를 위한 상호 영상 정합도를 평가하였다. 저자의 관련 선행 연구[6]에서는 수중 구조물 검사를 위한 영상기반 SLAM 알고리즘의 연산 효율성 향상을 위해, 영상 프레임별 특징점을 추출하기 전에 정보량을 평가하는 과정과 영상 간 정합을 시도하기 전에 상호 정보량을 평가하는 과정을 독립적인 절차로 적용하였다. 본 연구에서는 영상 간 정합을 시도하기 전에 상호 정합도 평가를 통해 유용한 영상 쌍들을 선택 적용하는 과정을 [Fig. 1]의 흐름 선도와 같이 일괄 처리 방식의 수중 영상 모자이킹 알고리즘에 도입하고자 한다. 제안된 방법이 모자이킹 정확도의 큰 저하 없이 연산 효율성을 대폭 향상시킬 수 있음을 실해역 환경에서 얻어진 수중 선체검사 실험 데이터셋을 활용하여 검증한다.
2. 특징점 기반 영상 모자이킹
본 장에서는 수중 구조물 표면에서 얻어진 국소 영상들을 전역 기준 좌표계에서 정렬하기 위한 특징점 기반 모자이킹 알고리즘을 설명한다. 먼저, 수중 영상에서 주로 발생하는 저대비, 비균일 조명 효과를 보상하는 전처리 알고리즘으로서 CLAHE(Contrast-Limited Adaptive Histogram Equalization)[7]을 적용한다. CLAHE를 이용한 대비 향상 후 영상 내 특징점을 검출하고 각각에 대한 기술자 벡터(descriptor vector)를 계산하기 위해 SIFT(Scale Invariant Feature Transform)[8] 알고리즘을 적용한다. 기술자 벡터를 이용한 특징점 초기 매칭(matching) 결과에서 포함될 수 있는 이상점(outlier)을 제거하기 위해 RANSAC(RANdom SAmple Consensus)[9] 알고리즘을 사용한다. 본 연구에서 초점을 두고 있는 특징점의 수가 적고 위치 분포가 고르지 않은 수중 구조물 표면 영상에 대해 일정 수준 이상의 영상 정합 정확도가 보장된다면, 보다 효율적인 특징 추출 및 이상점 제거 알고리즘의 적용도 가능할 것이다.
수중 탐사나 수중 검사 임무를 수행하는 대부분의 수중 로봇들은 자세가 기본적으로 안정되거나 일정하게 제어되므로, 비교되는 영상 간에 나타나는 상대적인 운동은 병진(translation) 운동이 지배적이다. 원칙적으로는 호모그래피 행렬 내 가용한 모든 원소를 매개변수로 두는(가장 자유도가 높은) projective 모델도 병진 운동 위주의 영상 정합이 가능하지만, 수중 영상 간의 특징 대응점 수가 부족하거나 위치 분포가 고르지 않을 경우 과추정(overestimation)으로 인해 잘못된 정합 결과를 초래할 수 있다. 이러한 실제적인 이유로, 본 연구에서는 영상 취득을 위해 사용되는 수중 로봇의 자세가 안정적으로 유지된다는 전제하에 4개의 매개변수를 가지는 similarity 호모그래피 모델을 사용한다.
국소 영상들이 조합된 단일 모자이크 영상을 만들기 위한 정렬 방법은 크게 국소 정렬(local alignment)과 전역 정렬(global alignment)로 분류할 수 있다. 국소 정렬 방법은 각 영상들을 전역 기준 좌표계에 투영하기 위한 절대 호모그래피(absolute homography)를 차례로 얻어진 영상 간의 상대 호모그래피(relative homography)를 연속적으로 곱함으로써 계산한다. 그러나 국소 정렬 방법은 잡음에 의한 특징점들의 위치 오차와 더불어 호모그래피 모델을 구성하는 매개변수 추정 오차들이 포함된 상태로 누적 곱 연산이 행해지기 때문에 결과적으로 최종 모자이크 영상에 큰 표류 오차를 발생시킨다. 반면, 전역 정렬의 목적은 누적 오차를 최소화하여 더욱 정확한 단일 모자이크 영상을 얻는 것이다. 이를 위해 전역 정렬 방법은 순차적 영상들 간의 정합 결과와 카메라의 폐루프 궤적으로 발생하는 비순차적 영상들 간의 정합 결과를 동시에 고려한다. 고려 가능한 모든 정합 쌍에서 발생하는 대응점들의 측위 오차 합을 비용함수(cost function)로 정의하고 이를 최소화하는 절대 호모그래피가 전역 정렬의 결과가 된다. 본 연구에서는 아래 식 (1)과 같이 표현되는 대칭전이오차(symmetric transfer error)[9] 기반의 전역 정렬 비용함수를 사용한다.
(1) |
여기서 는 j번째 영상 좌표계를 i번째 영상 좌표계로 투영하기 위한 호모그래피 행렬을 나타내며, m는 전역 기준 좌표계를 의미한다. Nc는 비용함수에 사용되는 전체 대응점의 수를, , 는 각각 i번째 영상과 j번째 영상에 존재하는 특징 대응점의 위치 벡터를 나타낸다(즉, ).
3. 상호 영상 정합도 지표
본 연구에서 제안하는 상호 영상 정합도 지표는 비교되는 한 쌍의 영상에서 추정될 호모그래피 모델의 불확실성(uncertainty) 예측치를 기반으로 한다. 호모그래피 모델의 불확실성을 정식화하기 위해 호모그래피를 구성하는 매개변수를 식 (2)와 같이 가우시안 랜덤 벡터(Gaussian random vector)로 간주한다.
(2) |
여기서 평균 벡터(mean vector) h는 similarity 호모그래피 모델을 구성하는 4개의 매개변수로 구성되며, Σh는 이에 대응되는 공분산 행렬(covariance matrix)를 나타낸다.
본 연구에서 제안되는 지표를 기준으로 상호 정합도를 평가하는 과정은 특징점 매칭 수행 여부를 결정하는 단계에서 적용되므로, 비교되는 영상 쌍 간의 실제 특징 대응점 정보가 주어지지 않은 상황에서 호모그래피의 불확실성이 평가되어야 한다. 불확실성의 정량화 과정을 체계적인 절차로 수행하기 위해, 먼저 카메라(또는 수중 로봇)의 지배적인 운동 특성이 대상 면과 일정한 거리를 유지하며 병진 운동 위주로 이루어져 있음을 가정하고 비교되는 영상 쌍 간의 중첩 영역을 직사각형으로 정의한다. [Fig. 2]에서 i번째 영상 좌표계와 j번째 영상 좌표계 간에 발생한 직사각형의 중첩 영역 예시를 보인다. 여기서 j번째 영상 좌표계의 모서리 점 좌표를 i번째 영상 좌표계로 변환하는 연산은 카메라가 장착된 수중 로봇의 항법 정보를 이용하여 수행되며, 결과적으로 i번째 영상 좌표계에서 표현된 중첩 직사각형의 모서리 점 좌표는 식 (3a)-(3d)를 통해 얻어진다.
(3a) |
(3b) |
(3c) |
(3d) |
상기 과정으로 계산된 중첩 영역 정보를 이용하여, 얻을 수 있는 잠재적 대응점의 최대 수 N을 식 (4)로 정의한다.
(4) |
여기서 와 는 각각 영상 좌표계 i와 j에서의 중첩 영역에 속하는 특징점들의 수를 의미한다. 와 중 하나는 N보다 큰 수가 될 수 있는데, 이 경우에는 각 특징점의 위치 좌표에 대한 공분산을 비교하여 정밀하게 추출된 특징점들의 순서대로 N개를 선택한다. 이때 특징점의 위치 공분산 Σpl은 관련 선행연구 사례들[10,11]을 참고하여 식 (5)와 같이 정의한다.
(5) |
여기서 σpl는 l번째 특징점에 할당된 대한 크기(scale) 값을 의미하고, I2는 2×2 단위행렬(identity matrix)를 나타낸다. 상기 규칙을 적용하면 가능한 최대 수의 잠재적 대응점이 불확실성이 낮은 순서대로 선택되므로, 이로부터 하한에 해당하는 호모그래피 불확실성 예측치가 계산될 수 있다.
호모그래피 모델의 매개변수와 그에 대한 불확실성을 추정하는 과정은 일반적으로 일괄 처리를 통해 계산된다[9]. 본 연구에서 호모그래피 불확실성을 정량화하는 방법은 재귀 추정(recursive estimation)에 의한 결과 사후 확률분포(posterior probability distribution)가 일괄 처리에 의한 결과와 같다는 사실[12]을 기반으로 하여 베이지안(Bayesian) 재귀 추정 방법을 사용한다. 상기 과정을 통해 얻어진 잠재적 대응점 정보를 이용하여 호모그래피 불확실성을 정량화하기 위한 n번째 반복에서의 계측 방정식은 식 (6)과 같다.
(6) |
대상으로 하는 similarity 호모그래피 모델의 매개변수 개수를 고려하여 이고, 와 는 비교되는 영상 각각에서의 잠재적 대응점 정보를 포함하여 식 (7a), (7b)와 같이 표현된다.
(7a) |
(7b) |
Cn과 ζn은 식 (8a), (8b)와 같이 표현되는 평균과 공분산을 가진다.
(8a) |
(8b) |
여기서 랜덤 행렬 Cn의 (i,j)번째 원소를 cij로 나타내며, 이 랜덤 행렬은 식 (9)와 같이 표현된다.
(9) |
그러므로, 식 (6)을 아래와 같이 다시 쓸 수 있다.
(10a) |
(10b) |
전체 관측 잡음을 의미하는 는 hn에 독립적이지 않으므로, 이에 대한 영향이 반영된 재귀 추정 알고리즘[13,14]을 적용하면 전체 관측 잡음 공분산은 다음과 같이 표현된다.
(11) |
식 (11)에서 두 번째 항에 대한 해석적 표현은 다음과 같다.
(12a) |
(12b) |
제안된 방법에서는 hn의 기댓값이 명시적으로 주어지지 않기 때문에, 대체안으로서 수중 로봇의 항법 정보로부터 유도된 값을 사용한다.
상기 과정으로 계산되는 전체 관측 공분산을 이용하여, 호모그래피 불확실성 예측치는 식 (13)을 통해 재귀적으로 정량화된다.
(13) |
여기서 I4는 4×4 단위행렬을 나타낸다. 최종적으로 본 연구에서 제안하는 상호 정합도 지표를 식 (14)로 정의한다.
(14) |
여기서, 는 식 (13)의 n번 반복 수행 후에 수렴된 호모그래피 공분산을, 는 호모그래피 공분산의 초기 추정치를 나타내며, 초기 공분산의 대각 원소는 잠재적 대응점에 의한 불확실성 감소 효과를 명확하게 반영하기 위해 충분히 큰 값으로 설정된다. [Fig. 3]에서 수중 구조물에서 얻어진 몇 장의 영상 쌍들을 이용하여 제안된 지표의 기초 시험을 수행한 결과를 보인다. 각 경우에서 영상 쌍에 내포된 정보와 계산된 상호 정합도 수치를 고려했을 때, 중첩 영역 내부에 주어지는 정보량이 많아질수록 호모그래피 불확실성 예측치는 크게 감소하여 상호 정합도 수치가 증가하는 양상을 확인할 수 있다. [Fig. 1]에서 표현된 바와 같이 본 상호 정합도 지표는 모자이킹을 위해 비교되는 영상 간 특징점 매칭을 수행하기 전에 미리 계산되고, 이 중 사전 정의된 임계치를 초과하는 경우들에 대해서만 전역 정렬 최적화를 위한 향후 연산 절차가 수행된다.
4. 실험 결과
제안된 상호 영상 정합도 지표를 기준으로 한 영상 쌍 선택 과정을 특징점 기반 모자이킹 알고리즘에 적용하고 이로 인한 연산 효율 향상성을 검증하기 위해, 실해역 환경에서 얻어진 수중 선체검사 실험 데이터셋이 사용되었다. 실해역 실험에 사용된 수중 로봇 시스템을 [Fig. 4(a)]에 보인다. 본 시스템의 상단에는 조명 시스템, 음향 거리계가 포함된 광학 카메라 모듈이 장착되고, 실시간 항법 및 제어를 위해 DVL(Doppler Velocity Log)과 IMU(Inertial Measurement Unit) 계측치를 이용한 확장칼만필터(extended Kalman filter) 기반의 항법 알고리즘이 구현 및 적용되었다[2]. [Fig. 4(b)]에서 실해역 실험 대상 선박인 시추선 West Draco를 보인다. 대상 선박의 중앙 평면부에 대해 일정한 거리와 자세가 유지되도록 제어하고, 잔디 깎기 패턴 경로를 완전 자율로 추종하며 약 2,200장의 수중 선체면 영상과 이에 대응되는 항법 데이터를 취득하였다.
[Fig. 5]에서 영상 모자이킹을 통해 재복원 된 카메라의 궤적 추정 결과들을 보인다. 가능한 모든 수의 영상들을 비교하는 AGA(All-aGainst-All) 정합 방법이 적용된 모자이킹 결과는 성능 비교를 위한 기준 데이터로 간주한다. 수중 로봇의 항법 정보를 이용하여 거리상 가까이 위치한 영상들만을 비교하는 거리기반(distance-based) 정합 방법이 적용된 모자이킹 결 과는 제안된 방법의 유용성을 보이기 위한 비교군으로서 설정한다. 이때, 거리기반 정합의 임계치는 항법 및 제어를 위해 설정된 선체의 길이 방향 경유점 간 유클리드 거리(Euclidean distance)를 참고하여 0.65 (m)로 설정하였다. 거리기반 정합 방법과는 달리 제안된 방법의 경우, 중첩 영역 내 특징 정보를 통합하여 정합도를 평가하기 때문에 비교되는 영상 간의 근접도와 영상에 포함된 특징 정보가 동시에 고려될 수 있다. 거의 유사한 세 종류의 궤적 추정 결과로부터 제안된 지표 기반의 평가 과정을 통해 정합 시도에서 제외된 영상 쌍은 대부분 궤적 추정 정확도 향상에 기여하지 못하였음을 확인할 수 있다.
제안된 방법의 효과를 명확히 확인하기 위해, [Fig. 6]에서는 모자이킹 결과를 도출하는 추론 구조 측면에서 거리기반 정합 방법과의 정성적인 비교를 제시한다. 거리기반 정합 방법의 경우, 영상 내 정보량에 의한 정합도의 고려 없이 공간상에서 인접한 모든 영상 쌍들에 대해 정합을 시도하기 때문에 실제로 정합에 실패하는 경우들이 많이 나타난다. 반면, 제안된 방법은 다수의 불필요한 정합 시도들을 자동으로 배제할 수 있으므로 상대적으로 희박한(sparse) 추론 구조를 만들게 되고 이는 결과적으로 모자이킹 알고리즘의 연산 효율성 향상으로 이어지게 된다.
[Table 1]은 비교 대상인 세 가지 정합 방법이 적용된 모자이킹 결과 간의 정량적인 성능 비교를 제시한다. 거리기반 정합 방법의 경우, AGA 정합 방법 대비 영상 정합 성공률을 크게 증가시킬 수 있으나 여전히 절대적인 수치로는 36.5% 정도에 머무른다. 반면, 제안된 방법의 경우 영상 정합 성공률을 58.3%까지 개선시킬 수 있다. 오차 지표의 경우 전역 정렬 알고리즘에 의해 최적화된 절대 호모그래피를 반영한 대칭전이오차로 정의되었으며, 연산 시간 수치는 Intel Core i7-6560 프로세서가 장착된 PC에서 구동되는 MATLAB 환경에서 측정되었다. 비록 제안된 방법은 기존 방법에 상호 정합도 평가 과정이 추가되는 형태이지만, 추가되는 연산 시간은 잠재적으로 불필요한 정합 시도로 소모되는 시간 대비 매우 작은 수치로 볼 수 있다. 그러므로, 제안된 방법이 적용된 모자이킹 결과에서 오차는 거의 무의미한 수준으로 증가하는 반면 영상정합에 소모되는 전체 시간은 크게 감소함을 확인할 수 있다. [Fig. 7]에서는 수중 선체검사 임무의 최종 결과물로서 원시 영상(raw image)에 대해 제안된 정합 방법을 적용한 모자이킹 결과와 향상된 가시화를 위해 영상 블렌딩(blending) 기법[2]을 적용한 결과를 보인다.
5. 결 론
본 연구에서는 특징점 기반의 수중 영상 모자이킹 알고리즘을 수중 구조물 검사 분야에 적용함에 있어 잠재적으로 불필요한 연산을 초래하는 영상 쌍들을 자동으로 제거하기 위한 상호 영상 정합도 지표를 제안하였다. 실해역 환경에서 실선에 대해 취득된 수중 선체검사 실험 데이터셋을 이용하여 제안된 정합도 지표 기반의 영상 쌍 선택 과정을 적용한 모자이킹 결과가 정확도 성능을 거의 감소시키지 않으면서 연산 속도를 크게 향상시킬 수 있음을 검증하였다.
Acknowledgments
This research was supported by the Bisa Research Grant of Keimyung University in 2020. The author is grateful to Prof. Jinwhan Kim at KAIST for sharing the field experiment dataset
References
- A. Elibol, H. Shim, S. Hong, J. Kim, N. Gracias, and R. Garcia, “Online underwater optical mapping for trajectories with gaps,” Intelligent Service Robotics, vol. 9, pp. 217-229, 2017.
- S. Hong, D. Chung, J. Kim, Y. Kim, A. Kim, and H. K. Yoon, “In-water visual ship hull inspection using a hover-capable underwater vehicle with stereo vision,” Journal of Field Robotics, vol. 36, no. 3, 2019.
- A. Elibol, N. Gracias, and R. Garcia, “Fast topology estimation for image mosaicing using adaptive information thresholding,” Robotics and Autonomous Systems, vol. 61, no. 2, pp. 125-136, Feb., 2013.
- A. Kim and R. M. Eustice, “Real-Time Visual SLAM for Autonomous Underwater Hull Inspection Using Visual Saliency,” IEEE Transactions on Robotics, vol. 29, no. 3, pp. 719-733, Jun., 2013.
- V. Ila, J. M. Porta, and J. Andrade-Cetto, “Information-based compact pose SLAM,” IEEE Transactions on Robotics, vol. 26, no. 1, pp. 78-93, Feb., 2010.
- S. Hong and J. Kim, “Selective image registration for efficient visual SLAM on planar surface structures in underwater environment,” Autonomous Robots, vol. 43, pp. 1665-1679, 2019.
- K. Zuiderveld, “VIII.5. - Contrast Limited Adaptive Histogram Equalization,” Graphics Gems, Academic Press, 1994, pp. 474-485.
- D. G. Lowe, “Distinctive image features from scale-invariant keypoints,” International Journal of Computer Vision, vol. 60, pp. 91-110, 2004.
- R. Hartley and A. Zisserman, Multiple View Geometry in Computer Vision, Cambridge University Press, 2003.
- P. Ozog and R. M. Eustice, “On the importance of modeling camera calibration uncertainty in visual SLAM,” 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, pp. 3762-3769, 2013.
- W. Förstner and B. P. Wrobel, Photogrammetric Computer Vision, Springer, 2016.
- S. Särkkä, Bayesian Filtering and Smoothing, Cambridge University Press, 2013.
- W. L. De Koning, “Optimal estimation of linear discrete-time systems with stochastic parameters,” Automatica, vol. 20, no. 1, pp. 113-115, Jan., 1984.
- Y. Luo, Y. Zhu, X. Shen, and E. Song, “Novel data association algorithm based on integrated random coefficient matrices Kalman filtering,” IEEE Transactions on Aerospace and Electronic Systems, vol. 48, no. 1, pp. 144-158, Jan., 2012.
2012 금오공과대학교 전자공학(학사)
2014 KAIST 로봇공학(석사)
2019 KAIST 로봇공학(박사)
2019~2020 한국전자통신연구원(ETRI) 연구원
2020~현재 계명대학교 로봇공학전공 조교수
관심분야: 이동로봇공학, SLAM, 컴퓨터비전