1. Motivation
Self-supervised learning(SSL) 기반으로 지도 학습의 성능에 더 가까이 다가가기 위한 방법을 탐구한다. 추가적인 외부 비용 없이도 SSL 기반 monocular depth estimation이 잠재적인 가능성을 가지고 있음을 보인다.
2. Related Work
지도 학습 성능을 따라잡기 위해, segmentation, optical flow, depth normal 등 다양한 보조 정보를 활용하는 연구들이 있었다. 그러나 이러한 접근법은 명백히 SSL의 개념과 상반된다. pseudo label을 사용하거나 추가적인 플러그인 네트워크가 필요하기 때문이다.
이 논문은 이러한 외부 의존 없이 기존 SSL 프레임워크 내에서의 잠재 능력을 극대화하는 데 집중한다.
3. Proposed Method
세 가지 핵심 기법을 제안한다.
Data Grafting
이미지 투영에서 depth 정보는 이미지 하단부에 가까울수록 깊이가 얕다. 뉴럴 네트워크가 이러한 수직적 위치 단서(vertical cue)에 의존하는 것은 잘 알려진 현상이다. 결과적으로 상단부의 depth 추정 정확도가 상대적으로 낮아지는 문제가 있다.
Data Grafting은 배치 데이터 안에서 각 이미지의 상단부와 하단부를 random ratio로 잘라 서로 교차 이어붙이는 방법이다. 이를 통해 네트워크가 수직적 위치 편향에 덜 의존하도록 유도한다.
Self-Distillation Loss
Multi-scale disparity 중 가장 큰 disparity 맵이 반드시 최적의 pixel-level 신호를 제공하지는 않는다. D = [d0, d1, d2, d3]을 정의하고, 각 스케일 레벨의 disparity 맵으로 warping을 수행하여 매번 더 작은 error(더 높은 정확도)를 보이는 픽셀을 selective하게 탐색한다.
최종 disparity는 d0~d3 중 각 픽셀별로 가장 최적의 값으로 구성되며, 이를 supervision으로 활용하여 self-distillation을 수행한다.
Encoder-level Disparity Prediction
기존 방법은 인코더가 추상적인 prior를 학습하고, 디코더가 구체적인 depth를 추정하는 구조다. 이 논문은 인코더도 직접 depth 맵을 예측하도록 강제함으로써, 뎁스 추정에 더 강력한 constraints를 부여한다. 이는 디코더의 출력 가능한 솔루션 공간을 더 명확하게 좁혀주는 효과가 있다.
4. Experiments
- 수직 레벨에서 상단부의 depth가 불명확한 것을 경험적으로 보였다.
- Data Grafting 적용 시 성능 향상을 확인하였다.
- d0의 disparity가 항상 최적이 아님을 실험으로 보였다.
- 세 가지 기법 각각의 ablation을 통해 개별 기여도를 검증하였다.
5. Conclusion & Limitation
추가적인 네트워크나 외부 GT 없이, 기존에 갖고 있는 정보로 더 좋은 supervision을 재구성하는 효율성이 돋보인다. 특히 multi-level disparity의 각 픽셀별 최적값으로 supervision을 구성하는 self-distillation 전략과, 인코더도 직접 disparity를 추정하게 하여 디코더 성능을 부스팅하는 전략이 핵심 기여다.
Data Grafting의 vertical cue 제거 효과에 대한 이론적 분석이 다소 부족한 점은 한계로 볼 수 있다.