대전 RCV에서 저번이어 두번쨰 thermal Depth Estimation 논문을 내놓았습니다. 이전 논문은 RAL에 투고했던것 같은데, 이 논문은 현재 arxiv에 있으며 이것또한 아마 RAL에 내시지 않았을까 조심스럽게 추측해봅니다.
이 논문은 Thermal 영상만을 이용해서 Self-supervised Learning of Depth and Ego-motion 을 하는 논문으로 기존에 김남일 연구원님의 MTN이나 제가 하고 있는 방식이랑은 아래 그림과 같이 다릅니다.
기존 방식의 경우 RGB left와 right 그리고 Thermal right 가 있다는 가정하에 그림과 같이했지만 이 논문에서는 열화상 영상 seqeunce 만을 가지고 깊이를 추정합니다.
이렇게 깊이를 추정할떄 기존 방식과 달리 열화상 카메라 만으로 깊이를 추정하니 문제가 발생하며, 그 문제는 열화상 영상끼리 photometric loss를 계산하기 때문에 발생합니다.
이 논문에서는 열화상 영상만을 가지고 photometric loss를 계산하는게 왜 문제인지 분석하고 그걸 해결하기 위한 방법론이 주를 이룹니다.
이 논문에서는 열화상 영상만을 사용해 self-supervised depth estimation을 진행할때 생기는 문제점을 분석하고 그것을 해결하기 위한 방법론을 제시합니다. 이 논문에서 분석한 문제점은 다음과 같습니다.
- Raw thermal image is suitable for temporal consistency
- Sparsely distributed thermal radiation values dominate image reconstruction loss
- High and low temperature objects degenerate selfsupervision from thermal image
- Raw thermal image is suitable for temporal consistency
열화상 영상은 카메라에서 촬영되면 14bit로 정보가 들어옵니다. 하지만 14bit는 사람이 판단할 수 없으며 너무 큰 공간에 정보가 있는 것이라 그대로 사용하는 것은 문제가 있습니다. 이건 태평양 안에 돗단배가 떠있는데 돗단배를 사용하기 위해 태평양 전체를 사용하는 것과 유사한 일 입니다. (쓸모 없는 정보 공간이 매우 많다.) 그렇기 때문에 14bit의 영상을 8bit로 변환해야하며 이때 일반적으로는 값이 있는 최솟값과 최댓값을 이용해서 8bit로 줄이는 방식을 사용합니다.
그 thermal normalize 방식은 매우 당연하게 사용되지만 이러한 방식은 depth estimation에 악영향을 끼칩니다.
위 그림과 같이 thermal normalize는 매 프레임 별로 distribution이 달라지는 지며, 이렇게 영상이 달라지게 되면 t-N frame을 t로 warping 했을때 애초에 다른 pixel 값을 갖고 있기 때문에 학습이 안되는 문제가 발생합니다. 따라서 normalize 해서 영상을 사용할 경우 문제가 생기니 raw image (14bit)를 그대로 사용해서 문제를 해결하는 방식이 있습니다.
2. Sparsely distributed thermal radiation values dominate image reconstruction loss
하지만, 1번의 문제 때문에 단순히 14bit영상을 단순히 사용하는 것은 image recontruction loss 때문에 사용할 수 없습니다.
그리고 태양과 얼음 전기장치 와 같은 일부 개체를 제외하고는 전부 실내 혹은 주변과 유사한 온도를 띕니다. 따라서 측정된 온도는 그림 2-d 와 같이 (1)유효 영역이 매우 좁게 예측되며 태양과 차량과 같은 물체와 운도 histogram 이 (2)확 차이 납니다. (1) 번과 같은 문제는 열화상 영상의 contrast를 약하게 만들며 (2) 문제는 object의 디테일을 없애는 문제를 야기합니다. (1) 문제를 해결하기 위해서는 좁은 histogram 분포를 늘리므로써 해결해야합니다.
3. High and low temperature objects degenerate selfsupervision from thermal image
2번 문제는 모든 histogram 분포를 linear하게 연결되도록 만들어야 해결되며 이걸 해결하지 못하면 recontruction loss가 제대로 동작하지 않게 됩니다.
4. 해결
위에서 분석한 열화상 영상의 문제를 해결하기 위해서 이 논문에서는 TEMPORAL CONSISTENT AND INFORMATION MAXIMIZED IMAGE MAPPING 방법을 제안합니다.
이 방법론은 그림 3 과같이 histogram을 변화시키는 방법론인데요. 주요 특징은 다음과 같습니다.ㅣ
- 각 서브 히스토그램의 관측 횟수에 따라 열복사 값을 재정렬합니다.
- 단일 이미지 단위가 아닌 손실 계산에 사용할 이미지 그룹 단위로 재배열 처리를 수행하여 시간적 일관성을 유지합니다.
- 더 나은 자체 감독 신호를 위해 로컬 이미지 세부 정보 향상.
이 열화상 영상 enhancement는 그림 4와 같이 target 영상과 source 영상에 대해서 histogram을 구한 후 처리 됩니다. depth estimation 과 pose net의 입력은 raw image가 들어가며(여기서 raw image가 어떻게 만들어졌는지는 의문임, 전체를 평균 때렸나…? ) 두 영상에 대해 enhancement 처리된 영상을 이용해 warping 하고 recontruction loss를 계산하게 됩니다.
이 enhacement 의 과정은 그림 3-(b)와 같습니다. .
(1) 두 영상의 histogram을 구함, (2) histogram 영역을 hyperparameter인 b 갯수 만큼 나눕니다.
그 후 모든 서프 히스토그램속 값들은 아래와 같은 식으로 재정렬됩니다.
모든 정렬은 각 서브 히스토그램 속 pixel 값이 얼마나 있느냐에 따라서 재정렬되며 위 식속 알파와 b’ 은 아래와 같습니다.
histogram 정렬을 완료한 후 Contrast Limited Adaptive Histogram Equalization(CLAHE) 을 사용해서 영상의 디테일을 더욱 살렸다고 합니다.
5. result
ViVid dataset에서 성능평가한 결과 입니다. 열호상 영상만은 사용한 방법론 중에서는 SOTA이며 기존에는 Thermal 만 이용한 연구가 적었기 때문에 혁신적이라고 볼 수 있습니다.
posenet 성능 또한 기존 방법론 대비 좋은 것을 볼 수 있습니다.
열화상 카메라만을 사용하니 밤 상황에서도 강인한 깊이 추정결과를 확인 할 수 있습니다.
ablation study 와 hyperparmeter에 따른 성능 평가 결과입니다. (a)를 보면 histogram 재 정렬의 효과와 영상 enhacement를 통한 성능 향상을 확인 할 수 있습니다. (b)를 통해서 bin 갯수 에따른 성능 을 ㄷ볼 수 있는데 많다고 좋은 것도 아니고 적다고 좋은 것도 아닌 수가 나와서 젤 좋은 파라미터를 찾기 어려울 것같습니다.
마지막으로 열화상 영상에 noise 가 있을 경우 위와 같이 histogram 재정렬과 enhancement로를 해결되지 않으며 , 이문제를 다음 연구에서 다루겠다고 합니다.