[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for All-Day Vision

[그림 1]Depth 추정 시 열화상 영상의 필요성

Introduction

Single-Depth estimation은 자율주행에서 필수요소로 사용된다. 따라서 Deep Neural Network(DNN)을 사용한 다양한 방법론들이 제시되고 좋은 성능 또한 내고 있다. 하지만 RGB 카메라의 고질적인 문제인 낮과 밤의 성능 차이로인해 그림 1에서 볼 수 있듯이 밤에서 Depth Estimation 의 성능이 더욱 떨어지는 것을 볼 수 있다. 이러한 문제를 바로 잡기 위해서 열화상 영상을 활용해 Depth Estimation을 하는 것이 이 논문이 제안하는 핵심이다. 열화상 영상을 이용해 Single-Depth Estimation을 하기 위해서 Network와 Loss function을 제안하며 , 열화상 영상을 보정하기 위한 여러 전처리를 제안한다.

이 논문에서 제안하는 핵심들은 다음과 같다.

  • RGB 와 Depth 두개를 예측하는 Multi task model 에 맞는 효율적인 학습 방식 제안
  • Interleaver라는 Multi task용 Network tower를 제안
  • Thermal의 낮과 밤에 따른 평균치 차이를 보정하는 전처리 방식 제안
  • Depth의 스케일을 Adaptive하게 측정하기 위한 adaptive scaled sigmoid 방식 제안

Method

[그림 2] MTN의 학습 방식

기존 RGB 기반의 Single-Depth Estimation은 그림 2의 위 두개와 같다. 좌상단은 RGB를 Network의 입력으로 하고 출력으로 Depth를 Predict 해서 GT Depth 와 비교하여 Loss를 계산한다. 하지만 실제 Depth GT는 구하기 어려우므로 이러한 방식은 데이터셋을 모으는 것에 제한이 생기는 문제가 발생한다. 이 문제를 해결하기 위한 방식이 우상단과 같다. 네트워크의 입력은 동일하게 RGB 영상이고 출력은 Depth 가 아닌 Disparity 가 된다. 생성한 Disparity 와 입력 왼쪽 영상을 계산하여 오른쪽영상을 Predict한후 GT 오른쪽 영상과 비교하여 Loss를 계산한다(Self-Supervised). 이렇게 할 경우 실제 GT 로 Depth 가 아닌 오른쪽 영상을 사용하게 돼서 조금 더 데이터셋을 모으기 쉬워진다.

열화상영상 역시 Depth를 추출하기 어려워 Self-Supervised 방식으로 해야하며, 열화상영상간의 Disparity 계산 역시 어려워 RGB 의 사용이 불가피하다. 따라서 그림 2 의 하단과 같이 Network의 출력으로 나온 Thermal Disparity를 RGB 왼쪽 영상과 비교하여 오른쪽 RGB 영상을 생성하여 Loss를 계산한다.

  1. Network

1.1 InterLeaver && Network

[그림 3] Multitask learning을 위한 다양한 방식

생성되는 Disparity 가 RGB 의 Disparity 가 되기 때문에 Network가 RGB 정보를 더욱 학습할 수 있도록 Multitask 로 모델을 설계되었다. Multitask 에는 다양한 방식이 제안 되어 왔다. 그림 3 c 의 LsMTN , DsMTN 와 같이 하나의 네트워크 타워를 분리하거나 Share하는 방식이 된다. 하지만 이러한 방식의 경우 분리하는 시점을 정하는 것이 매우 실험적인 방식이 되고 둘 중 하나에 Random 하게 성능을 몰아줄 수 있게 되는 단점이 생긴다.

하지만 이 논문의 목적은 Disparity 생성이기 때문에 그림 3 a 와 같은 방식을 사용했다. 설명하자면 Diparity Decoder 에 입력이 되는 Encoder 에 RGB 의 정보를 학습 시킬 수 있도록 하는 그림 3 b와 같은 InterLeaver 모듈이 설계 되었다.

1.2 Adaptive scale sigmoid

[식 1] Adaptive scale sigmoid

단순히 Sigmoid로 Disparity를 Predict 할 경우 Disparity 스케일이 고정되어 큰 스케일의 Disparity는 학습하지 못하는 문제가 발생된다. 따라서 큰 Scale의 disparity 또한 학습하도록 학습하면서 식1의 Beta를 키워카면서 생성할 수 있는 Disparity 의 Scale를 키워나간다.

2. Loss

학습을 위한 전체 Loss 방식은 식 2 와 같다.

[식 2 ] 전체 Loss 식

2.1 Disparity loss

[식 3] Disparity loss

Thermal 로 부터 Predict 된 Disparity 와 Image R을 계산해 Fake Left RGB 를 만들어서 GT Left RGB 와 L2Distance 를 계산 하는 Loss 이다 . 이 Loss를 통해서 Disparity를 학습 한다.

2.2 Smooth disparity loss

[식 4] Smooth disparity loss

이 식은 Disparity의 끊긴부분을 없애주는 loss이다 . 보다 Disparity를 Smooth 하게 만들어 Disaprity 의 성능을 높혀준다.

2.3 chromacity loss

[식 5] chromacity loss

Interleaver의 출력인 CbCr 칼라 정보와 실제 RGB 영상의 CbCr정보를 L2 distance로 비교하여 Network 가 칼라 정보 또한 학습할 수 있도록 해준다.

3. Photometric Correction

[그림 4] 열화상 영상의 문제점

열화상 영상이 낮과 밤에 강인하긴 하지만 , 결국 열화상 영상 또한 열을 감지하는 것이다 보니 낮과 밤의 온도차이로 인한 영상의 정보차이가 발생한다. 그림 4 a를 보면 시간이 지날수록 전체적인 값의 차이를 확인할 수 있다. 이것은 밤이 될수록 온도가 낮아지기 때문에 열화상 영상으로 측정되는 값의 평균이 달라지는 것이다. 이러한 문제를 바로잡기 위해서 Photometric Correction 이라는 방법을 도입했다. 이는 시간대별 대비 영상으로 부터 파라미터를 측정하여 그 파라미터로 그림 4 b 와같이 영상을 변한 한 후 실제 영상과 비교를 통해 옳은 파라미터를 얻는 방식이다. 이를 통해서 모든 열화상 영상을 동일한 Scale에 두고 학습할 수 있게 된다.

4. Result

Kaist 데이터셋으로 MTN을 성능 평가한 것이다. 각 Multitask 방법론 보다 성능이 높은 것을 볼 수 있으며 다른 기존 방법론들과 비교했을때도 성능이 높은 것을 확인할 수 있다.

Author: 한 대찬

3 thoughts on “[AAAI2018] Multispectral Transfer Network: Unsupervised Depth Estimation for All-Day Vision

  1. 결국 Lidar를 사용하지 않고 depth를 estimation 해보겠다 라는 주제 같은데 Lidar의 수명 때문에 그런 것 인가요? 혹은 물속에서 작동을 안하는 Lidar를 대체하기 위함인가요? 저번에 세미나때 들었던거 같은데 헷갈려서 질문합니다.

    아 그리고 구글에 검색해서 다운받으려니
    http://multispectral.kaist.ac.kr/AAAI2018/Paper/AAAI2018_MTN.pdf 링크가 나오는데 서버오류가 뜨면서 다운로드가 잘 되지않네요… 저희 연구실 논문이라 한번 읽어보고 싶은데 원문 보내주실 수 있나요?

    1. Lidar 는 엑티브 방식이다 보니 결국 전파가 사람에 영향을 받을 수 도 있고 사용자의 위치가 들어나는 등의 문제가 발생하기도 하고, 일단 단가 자체가 비싸기 때문에 영상기반의 Depth estimation을 합니다

  2. 글을 읽다 궁금한 점이 생겨 질문 남깁니다.

    글 초반부에 GT Depth는 구하기 어려워서 Disparity map을 예측한 후 left image를 warping하여 GT right image와 비교한다고 하셨는데, 어처피 좌우 영상이 존재하면 이 두영상으로 GT Disparity map을 만든 후 곧바로 predict disparity와 비교하면 안되나요??

    안된다면 그 이유는 무엇인가요?데이터 셋을 제공하는 곳에서 카메라 파라미터를 제공하지 않기 때문일까요?

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다