논문

하루에도 수만개의 글자를 읽고 있습니다. 하루에도 수백장의 종이를 들춰 읽습니다.
이것은 그 읽기에 대한 일기입니다.

Monocular vision for Mobile Robot Localization and Autonomous Navigation

[cite]10.1007/s11263-006-0023-y[/cite]

1. Introduction

2. Map Building

2.1 Overview

실험에는 화각이 135도와 60도인 카메라를 모두 사용하였으나, 60도보다는 135도짜리 카메라가 물체가 사라지지 않고 오래 남아있음으로 135도짜리를 사용하엿습니다. 캘리브레이션에서는 평면 패턴을 사용하였고, 원형 왜곡(radial distortion)을 모델링하기 우해서 5차 다항식을 사용하였습니다.

앞을 보고 있는 카메라의 경우, triangulation을 위한 점들이 각도가 매우 작아서 계산이 어려울 수 있으나, 차량과 같은 경우 진행방향을 보지 않으면 그 움직임이 매우 빨라지므로 블러링과 같은 현상 때문에 매칭이 어려워지므로 어려운 환경이더라도 정명 이미지를 선택하였습니다.

재구성(reconstruction)을 위해서 이미지 시퀀스 중에서 키 프레임 셋을 추출하고 키프레임들간의 관심 점(interest point)의 매칭을 통해서 카메라 자체를 계산하였습니다.

2.2 Image Matching

관심점은 해리스 코너(Harris corner) 검출기를 이용하였습니다. 매칭을 위해서는 이미지 영역을 64개의 버킷으로 나누고, 각 버킷마다 코너 반응도에 대해서 20개의 지역 최고점을 찾은 다음, 전체 이미지에서의 500개의 최고점을 찾아 둘을 합한 1780개의 점들을 사용하였습니다. 이미지 1에서의 점 위치를 기준으로 이미지 2에서의 사각형 영역을 선택한 후, 그 내부에 있는 관심점들로 매칭 탐색을 하였습니다. 매칭 기준으로는 11 * 11 크기에서 Zero Normalized Cross Correlation을 계산하였습니다. 모든 매칭 후보들 중 correlation 점수가 0.8 이상인 것만 골라냈습니다.

2.3 Key Frame Selection

카메라 움직임을 계산하려면 키 프레임 사이에 충분한 이동이 있어야 합니다. 그렇지 않으면 epipolar geometry가 ill conditioned problem이 되어버립니다. 이를 확인하기 위한 방법이 여러가지가 있지만, 여기에서는 좀더 간단한 방법을 사용하였습니다.

첫번째 이미지는 항상 첫번째 키프레임 $I$로 선택됩니다. 첫번째 키 프레임과 두번째 키 프레임 사이에는 최소한 $M$개의 동일한 관심점이 존재하는 프레임을 $I_2$로 선택합니다. 다음 규칙을 만족하는 프레임들을 이어서 계속 키 프레임으로 선택합니다.

  • $I_n$과 $I_{n+1}$ 사이에 많은 프레임들이 존재합니다.
  • $I_n$과 $I_{n+1}$ 사이에최소한 M개의 공통 관심점이 존재합니다.
  • $I_{n-1}$과 $I_{n+1}$ 사이에는 최소한 N개의 공통 관심점이 존재합니다.

여기서는 M=400, N=300을 사용하였습니다.

2.4 Initial Camera Motion Computation

최초 카메라 자세를 계산하고 이를 정교화 하기 위해서 계층적인 Bundle adjustment를 계산합니다.

최소의 이미지 triplet을 계산하기 위해서 3개의 뷰에 대한 Nister의 방법을 사용합니다. 이 방법은 5개의 대응점들을 샘플링하여 최대 40개의 카메라 움직임에 대한 해를 찾아줍니다. 여기에 RANSAC을 이용하여 점들의 reporjection error를 기준으로 inlier의 수가 많은 것을 해로 선택하게 됩니다. 카메라가 이미 캘리브레이션 되어있으므로 3개의 점만 있으면 두번째 카메라의 자세를 계산할 수 있습니다. 여기서는 Grunert의 방법을 사용하였습니다.

다음 이미지 triplet에서는 앞에서와는 다른 방법을 사용하였습니다. 이미 이전에 계산된 카메라 자세 $C_{n-1}, C_n$을 이용하여 새로운 카메라 $C_{n+1}$의 자세만 계산하면 됩니다.

2.5 Hierachical Bundle Adjustment

$C_n$의 카메라는 이전 계산 결과에 영향을 받으므로 그 에러 또한 계속 누적됩니다. 이를 해결하기 위해서 bundle adjustment를 사용합니다.

3. Real Time Localization

4. Computing the Localization Uncertainty

5. Experimental Vehicle and Control Law

6. Experimental Results

7. Conclusion


Add a Comment Trackback