Deep Learning for Visual SLAM in CVPR 2018 참가 후기

[Introduction]

안녕하세요!
컴퓨터 비전 및 패턴 인식 분야에서 Top-tier 컨퍼런스 중에 하나인 CVPR 2018이 6월 18일부터 미국 솔트레이크 시티에서 그 막을 올렸습니다. 인공지능에 대한 관심이 날로 높아짐에 따라 CVPR의 인기도 높아져서 올해는 총 979개의 논문이 발표될 예정이라고 합니다. 저는 CVPR의 다양한 워크샵 중 Deep Learning for Visual SLAM 워크샵에 참가하여 유익한 발표를 들었는데 그 내용에 대해 따끈따끈한 소식을 전해드리고자 합니다.

제가 참가 했던 워크샵은 Deep learning for Visual SLAM 입니다.
제목에서 보이는 Deep learning은 워낙 핫한 buzzword라서 많은 분들이 잘 아시리라 생각하지만 그 뒤로 따라 나오는 Visual SLAM이 무엇인지 생소한 분들이 많으실 것이라고 생각합니다. Visual SLAM은 Visual Simultaneous Localization And  apping의 줄임말로써 번역해보면 “시각정보를 이용한 동시적 위치 추정 및 지도 작성 기술” 이라고 할 수 있습니다. 쉽게 말해, 카메라를 이용하여 로봇의 3차원 공간상의 위치를 추정하고 동시에 주변의 맵을 가상공간에 만드는 것이라고 할수 있습니다. 이 기술은 자율 주행 차, 자율 주행 로봇, 자율 주행 드론, 증강 현실, 가상 현실 등 스마트 시티와 엔터테인먼트를 위해 필요한 다양한 응용에 사용할 수 있습니다. 더 자세히 알고 싶으신분들은 “What Is SLAM Technology?” 글을 참고 하셔도 좋을 것같습니다 :-). 또한 저희 SLAM Research KR 그룹에서 이와 같은 내용에 대해 재미난 이야기를 나누고 있으니 방문하셔서 유익한 정보를 얻어가셔도 좋을것 같습니다 ㅎ

다시 돌아와서 정리해보면, Deep learning for Visual SLAM 워크샵에서는 Visual SLAM 알고리즘의 성능을 향상시키기 위해 현재 급성장하고 있는 Deep learning 분야와 협력할수 있는 부분이 어떤 것이 있을까에 대한 논의를 진행했습니다. 이것에 대해 제가 보고, 듣고, 느낀 것을 정리해서 공유해 드리고자 합니다.


[Workshop review]

– Ronald Clark (Imperial College London) http://ronnieclark.co.uk/

먼저 ICL에서 오신 젊은 교수님이신 Ronald Clark 교수님이 워크샵에서 다룰 문제와 주제에 대해서 간략하게 정리해주셨습니다. MonoSLAM, PTAM, DTAM, KinectFusion, ORB SLAM, LSD SLAM등으로 이어지는 전통적인 SLAM 방법의 역사에 대해서 소개해주시고 이러한 전통적인 방법이 딥러닝과 어떻게 융합될수 있는지 다음과 같은 open questions를 던져 주셨습니다.

  • How can semantics be used to help scene reconstruction and robustness?
  • How far can deep learning push reconstruction accuracy?
  • Can deep learning make SLAM more efficient?
  • What new scene representation does deep learning enable?
  • How do we integrate geometrical knowledge in deep learning?

이러한 문제에 대해 다양한 연사분들이 생각하고 있는 주제를 소개하는 식으로 진행이 되었습니다.

– Simon Lucey (CMU) http://www.simonlucey.com/

Simon Lucey 교수님이 발표하시면서 흥미로웠던 점은 SLAM을 아기와 노인에 비유했던 것입니다. 전통적인 SLAM 방법을 아기가 방안을 이리저리 돌아다니면서 물체를 여러 각도에서 쳐다보면서 3차원 공간을 이해하는 것이라면 Deep SLAM 방법은 노인이 그냥 단순히 생각만으로도 방안(거실, 부엌, 욕실)이 어떻게 생겼겠구나, 물체가 어떻게 보이겠구나 하며 경험에 의해 인식하는 것이라고 소개했습니다. 하지만 발표 말미에는 middle-age SLAM이 필요하다면서 아기와 노인의 중간 지점인 방식의 SLAM 알고리즘이 필요하다고 이야기 했습니다.

– Matthias Niessner (TUM) http://www.niessnerlab.org/

제가 제일 관심있는 연사분들 중 하나인 TUM의 Matthias Niessner 교수님의 발표가 있었습니다. Matthias Niessner 교수님은 indoor환경 내에서의 RGB-D SLAM에 대해서 주로 연구하시는데 현재 state-of-the-art 방법중의 하나인 BundleFusion 알고리즘을 만드신 분입니다. BundleFusion은 키넥트와 같은 RGB-D 카메라를 이용해서 실내 공간에 대한 3차원 모델을 실시간으로 생성해내는데 고정된 크기의 3차원 볼륨으로 만드는 경우 발생하는 redundant한 3차원 복셀정보를 효율적으로 다루기 위해서 voxel hashing 기법을 활용하고 제한적인 갯수의 RGBD 프레임을 활용하는 chunk 기반으로 실시간으로 모델을 생성하고 보정합니다. 이 연구팀은 거기에서 더 나아가서 BundleFusion 알고리즘을 이용하여 ScanNet이라는 large-scale indoor 3차원 모델 데이터 셋을 만들고 세만틱 정보를 직접 레이블링하여 딥러닝과 SLAM 연구에 활용하도록 오픈소스로 제공했습니다. 그리고 가장 최근의 작업으로 ScanNet V2의 업데이트를 처음으로 공개했습니다. ScanNet V2에서는 100개의 새로운 indoor 스캔 모델이 추가되었고 기존 1513개의 스캔 모델이 semantically and geometrically 보정되었다고 합니다.

– Noah Snavely (Cornell / Google) http://www.cs.cornell.edu/~snavely/

Noah Snavely 교수님은 어떤 특정한 랜드마크를 다양한 시점에서 촬영한 large scale의 이미지 셋으로부터 해당 랜드마크를 3차원 복원하는 Photo Tourism 논문으로 유명하신 분이십니다. 발표에서는 Flickr와 같은 인터넷 사진 저장소에서 받은 13만개의 랜드마크 이미지로부터 single image depth prediction 딥러닝 모델 학습을 위한 MegaDepth 데이터 셋을 발표해주셨습니다. 이 MegaDepth 데이터 셋을 만들기 위해 해당 연구에서는 먼저 ColMap 이라는 3차원 복원 알고리즘 이용하여 랜드마크에 대한 3차원 모델을 만들고 각 색상 영상 시점에서의 뎁스 영상을 만들어냅니다. 하지만 1차적으로 생성된 뎁스 영상에는 많은 노이즈를 포함하고 있기 때문에 보정과정을 거치고 세만틱 정보를 이용해 뎁스 정보를 향상시킵니다.


워크샵에서는 초청된 연사분들의 발표 외에도 워크샵에 억셉된 논문의 발표도 포함되어 있었는데 흥미로운 부분이라서 함께 소개해 드리도록 하겠습니다. 그 전에 간단하게 SLAM 프레임워크에서 frontend와 backend에 대해서 설명이 필요할듯 합니다.

SLAM 프레임워크는 크게 frontend와 backend의 2가지 부분으로 구성이 됩니다. frontend에서는 시간적으로 인접한 영상 사이의 피쳐 추출, 피쳐 매칭, 카메라 변환 파라미터 계산이 이루어지고 backend에서는 시간적으로 인접하지 않은 영상 사이에서도 가능한 경우에 대해 카메라 변환 파라미터 계산을 수행하고 frontend와 backend에서 얻은 제약조건을 이용해 전체 카메라 궤적에 대해 그래프 최적화를 수행하여 좀 더 consistent한 맵과 카메라 궤적을 얻도록 하는데 목적이 있습니다.

먼저 SuperPoint: Self-Supervised Interest Point Detection and Description 논문은 SLAM Frontend 에서 deep learning의 접목을 주로 다루고 있습니다. 기존의 전통적인 피쳐 추출, 매칭 알고리즘들은 시점 변화, 조명 변화 등에 잘 작동하지 않는 결과를 보이는데 self-supervised 방법으로 학습된 제안하는 알고리즘이 그러한 성능면에서 능가한다고 소개했습니다.

다음으로 Global Pose Estimation with an Attention-based Recurrent Network 논문은 SLAM backend 에서의 deep learning의 접목을 주로 다루고 있습니다. 이 논문에서는 Neural graph optimizer를 제안했는데 이는 local pose estimation model, pose aggregation module, neural graph optimization의 3가지 부분으로 구성이됩니다. local pose estimation model에서는 인접한 프레임 간의 상대적인 포즈 변화를 학습하고 pose aggregation module에서는 앞에서 얻은 상대적인 포즈를 포즈 피쳐로 변환하도록 학습시킵니다. 마지막으로 neural graph optimization에서는 전체 포즈 궤적에대해 drift 에러를 줄이도록 하는 뉴럴넷을 attention based로 학습시킵니다.


[Overall Impression]

이상으로 진행되었던 Deep Learning for Visual SLAM 워크샵에 대한 정리를 마치도록 하겠습니다. 제가 느낀 점은 워크샵 제목 처럼 Visual SLAM을 위한 deep learning 알고리즘에 대해 소개하는 부분이 많았으나 동시에 deep learning을 위한 Visual SLAM에 대한 내용도 많이 들어있었던 것 같아 서로 상호보완적인 역할을 하고 있다는 생각이 들었습니다. 이러한 상보적인 기조가 계속 이어져서 deep learning과 SLAM 간에 연구적인 선순환이 이루어졌으면 하는 바램입니다 ㅎ

마지막으로 저희 SLAM Research KR 그룹에서 이와 같은 내용에 대해 질문도 하고 토의도 나누고 있으니 관심있으신 분들은 조인 해주시면 좋을 것 같습니다! ㅎㅎ

감사합니다!

Add comment

최근 댓글