DeepVO
Wang 2017 · 논문
한 줄 요약 — DeepVO(ICRA 2017)는 선구적인 종단간 학습 기반 visual odometry였다: 원시 단안 비디오로부터 6-DoF 카메라 포즈를 직접 회귀하는 순환 컨볼루션 네트워크(RCNN)로, 고전적인 VO 파이프라인 전체를 대체했다.
문제
고전적인 단안 VO는 표준 파이프라인으로 구성된다 — 카메라 캘리브레이션, 특징 검출, 특징 매칭/추적, 이상치 제거(RANSAC), 모션 추정, 스케일 추정, 지역 최적화(BA) — 이 각각의 구성 요소는 “서로 다른 환경에서 잘 동작하도록 신중하게 설계되고 특별히 미세 조정되어야 하며”, 절대 스케일을 복원하기 위해 사전 지식(예: 카메라 높이)을 필요로 한다. DeepVO는 당시로서는 급진적인 질문을 던진다: 딥 네트워크가 “전통적인 VO 파이프라인의 어떤 모듈도 채택하지 않고서(카메라 캘리브레이션조차)” 원시 이미지 시퀀스에서 카메라 포즈로의 전체 매핑을 종단간으로 학습할 수 있는가?
방법 및 아키텍처
- 입력 텐서. 연속된 RGB 프레임 각각의 쌍(평균 제거, 64의 배수로 리사이즈됨 — 예: KITTI에서 1280×384)은 하나의 텐서로 쌓인다. 이를 통해 네트워크는 단일 이미지의 외형이 아니라 프레임 간 모션 특징을 학습한다.
- CNN 특징 추출기. 9개의 컨볼루션 레이어가 있으며 Conv6를 제외하고 각각 ReLU가 뒤따른다(총 17개 레이어). receptive field는 7×7 → 5×5 → 3×3으로 줄어들고 채널은 64 → 1024로 늘어난다. 구조는 (사전 학습된) FlowNet에서 영감을 받았으며 이를 초기화에 사용한다 — 즉 optical flow 스타일의 기하학적 표현으로, 특징 추출 + 매칭에 대응하는 학습된 대응물이다.
- Deep RNN. 각각 1000개의 hidden state를 갖는 두 개의 stacked LSTM 레이어가 Conv6 특징을 입력받는다. 단순 RNN이라면 다음과 같이 갱신할 것이다:
하지만 (메모리 셀 를 가진 입력·출력·forget 게이트를 갖는) LSTM이 장기 의존성을 포착하기 위해 사용된다 — 프레임 쌍만 보는 방법들이 무시하는 모션 동역학과 프레임 간 관계를 암묵적으로 모델링한다. 매 시점마다 포즈 추정치가 출력된다.
- 확률적 관점과 손실. 시스템은 를 모델링하며, 위치 와 오일러 각 방향 의 MSE를 최소화하여 최적 파라미터를 찾는다:
여기서 스케일 인자 은 방향과 위치의 균형을 맞춘다. 단위 제약이 최적화를 방해하는 쿼터니언보다 오일러 각이 선호된다.
- 학습. Theano, Adagrad(학습률 0.001)로 Tesla K40에서 최대 200 epoch, dropout과 조기 종료 사용; 논문은 과적합이 학습 데이터셋에서는 훌륭한 궤적을 만들지만 테스트 VO를 심하게 저하시킴을 보여준다.
실험 결과
- KITTI(ground truth 사용). 시퀀스 00, 02, 08, 09에서 학습(7410개의 부분 시퀀스 샘플로 분할), 03, 04, 05, 06, 07, 10에서 KITTI 지표(100–800 m 길이에 대한 평균 RMSE 드리프트)로 테스트. 테스트 시퀀스 평균: DeepVO 5.96% / 6.12°/100m( / ) 대 단안 VISO2-M 17.48% / 16.52, 스테레오 VISO2-S 1.89% / 1.96. 최고 시퀀스: 05(2.62 / 3.61)와 07(3.91 / 4.60).
- 고속 구간에서의 이동 오차를 제외하면 단안 VISO2보다 일관되게 우수하다 — 학습 데이터가 거의 전부 시속 60 km 이하였다; 궤적 길이가 늘어날수록 오차는 스테레오 VISO2에 가까워진다.
- KITTI 시퀀스 11–21(ground truth 없음). 00–10 전체로 학습, 그 궤적은 VISO2-M보다 훨씬 우수하고 스테레오 VISO2-S와 대략 비슷하다 — 시퀀스 12(시속 50–90 km로 고속 학습 데이터가 적음)는 예외다.
- 스케일. 절대 스케일은 “네트워크 자체에 의해 완전히 유지되며 종단간 학습 동안 암묵적으로 학습된다” — 스케일 추정이나 ground truth에 대한 후처리 정렬은 수행되지 않는다.
- 결론은 학습 기반 VO를 기하학적 방법의 대체물이 아니라 “실행 가능한 보완물”로 명시적으로 위치시킨다 — 이 프레이밍은 이후로도 유효했다.
SLAM에서의 의미
DeepVO는 대부분의 커리큘럼에서 “학습된 SLAM”이 시작되는 지점이다: 이는 종단간 포즈 회귀의 가능성(수작업 엔지니어링 없음, 암묵적 스케일, RNN을 통한 시간적 사전 정보)과 핵심적인 한계(학습 도메인에 대한 암기 — 논문 자신의 고속 실패 사례) 둘 다를 보여주었다. DeepVO가 왜 일반화에 어려움을 겪는지 이해하는 것 — 네트워크 어디에도 명시적인 기하학이 없다는 것 — 은 자기지도 계열(SfM-Learner, UnDeepVO)과 그 뒤를 잇는 기하학-하이브리드 시스템들에 대한 가장 좋은 동기가 된다.