DBoW2

안내글

본 포스트에서는 DBoW2 라이브러리에 대한 사용을 위한 논문인 “Bags of Binary Words for Fast Place Recognition in Image Sequences”의 논문을 리뷰합니다.

DBoW2란?

: 우선 DBoW는 이미지 기반의 장소인식을 위해서 장소 이미지를 Bag of word vector의 형태로 변화시키는 라이브러리입니다. 이렇게 생성된 Bag of word vector는 장소 이미지 사이에 유사성을 비교하기 위해서, 각 이미지의 vector사이에 거리(유사도)를 비교합니다. DBoW2는 이 DBow는 개선된 버전의 라이브러리입니다. 다음의 링크에서 DBow2라이브러리를 우분투환경에서 사용해볼 수 있습니다.

DBoW2 github link

논문리뷰

서론

: 배경적인 이론을 자세히 설명하기위해서, 설명을 길게 작성하겠습니다.

long-term1 visual SLAM(simultaneous localization and mapping)에서 중요한 요소 중 하나는 강인한 장소인식입니다. Visual SLAM에서 이전에 관측된 장소를 다시 인식할 경우에, loop closing은 일관성있는 지도를 생성하기위하여 보정역할을 하는 장소간 데이터 연관성을 제공합니다. 이러한 loop detection은 loop closing뿐만 아니라 로봇이 tracking lost2가 발생하였을 때, 다시 지도상에서 현재위치를 추정하기(relocalization)위해서 사용됩니다. 규모가 작은 환경에서 SLAM을 할 때는 고려할 맵 포인트(map point)등의 수가 적기 때문에, 지도와 현재 장소의 이미지를 비교해도 되지만(map to image), 규모가 큰 환경에서는 지도내에 맵포인트보다는 기존의 장소이미지들과 현재 장소의 이미지를 비교하는 것(image to image)이 좀더 효율적입니다. 후자의 알고리즘 예시에는 FAB-MAP(fast apperance-based mapping)이 있습니다. 이 알고리즘은 로봇이 이동하며 촬영한 장소 이미지를 데이터베이스 안에 저장해두고, 새로운 이미지가 들어왔을 때 데이터베이스의 이미지와 비교하는 방식으로 구성되어있습니다. 만약에 데이터베이스안에 이미지가 새로운 이미지와 비슷하면 장소를 인식하게 됩니다.



이 논문에서는 단일카메라로 실시간으로 loop detection과 이미지들 사이의 특징점을 비교하기 위한 알고리즘을 제안합니다. 제안 방법은 bag of words 표현과 perceptual aliasing3 문제를 해결하고, 실시간성을 가진 기하학적 검증(geometry check) 방법을 가집니다. 이 실시간성은 ORB 키포인트를 사용하여 해결합니다. ORB 키포인트는 planar camera motion에서 키포인트 간에 좋은 구분 능력과 빠른 계산 시간사이에 좋은 절충안으로써 사용되었습니다.


이 논문에서는 처음으로 이진화된 형태의 bag of words (e.g. word의 벡터 : 0101010..)를 사용하였습니다. 또한, 제안방법은 새롭게 제안된 direct index와 기존의 inverse index를 사용하였습니다. inverse index의 역할만 짧게 설명하자면, 주어진 이미지와 비슷한 이미지 후보들을 빠르게 찾기위해서 사용됩니다. direct index의 경우에는 효율적으로 대응된 이미지 사이에 특징점들의 대응관계를 빠르게 찾기위해서 사용됩니다. 여기서 대응관계를 빠르게 찾는 것은 기하학적 검증의 속도를 올리기 위해서 중요합니다.


완전한 loop detection 알고리즘은 논문의 section 5에 나와있습니다. 이 논문의 이전 논문과 비슷하게, 하나의 루프가 닫혔는지(loop closure가 발생했는지)를 결정하기 위해서, 대응된 이미지들의 temporal consistency를 확인하는 것입니다. 이 논문의 중요한 기법은 데이터 베이스의 장소 이미지와 유사한 이미지를 찾을 때,같은 장소에서 수집된 이미지들 사이에서 경쟁하는 것을 막는 것입니다. 이 기법은 그러한 같은 장소의 이미지들을 하나의 장소로 군집화 함으로써 해결합니다.


제안 방법은 각종 파라미터를 바꿔가며 실험하였고, BREIF 와 SURF를 비교하였습니다. 또한 실험에서 loop detection간에 시간적 기하학적 일관성 테스트의 성능을 분석하였습니다. 데이터셋은 0.7~4km사이의 긴 경로를 가진 5개의 데이터셋을 사용하였습니다. 이것은 이전 기법들의 성능을 뛰어넘었습니다.


논문리뷰의 나머지부분은 DBow2 논문 리뷰 및 기반의 위치 인식 프로그램 제작(2)에서 계속됩니다.


[1]long-term : loop closing이 일어날 만큼 큰 환경을 나타낸다.

[2]tracking-lost : 빠른 이동이나 심각한 차폐(occlusion), 잔상(motion blur)등으로 인하여 이전 이미지로부터 현재 이미지의 카메라 포즈를 추정하기 어려워진 상황

[3]perceptual aliasing : 다른장소이지만 같은 장소처럼 보이는 현상.