리뷰에 앞서 정확히 이해하지 못한 부분들이 있어 부족한점이 많은 글이기에 잘못된 부분이 있다면 댓글로 알려주시면 감사하겠습니다.
[Depth Estimation]
Depth Estimation은 2D Image로 부터 3차원 정보를 얻어내는 방법으로 Monocular(단안)와 Stereo(쌍안)의 방법이 있습니다. 본 논문은 Stereo Image를 사용하는 방법으로 두개의 이미지 사이의 disparity를 구하는 방법을 설명합니다.
[Method]
HITNet은 크게 Feature Extraction, Initialization 그리고 Propagation 3가지 파트로 나뉩니다. 그리고 Tile hypothesis의 개념을 사용하여 High-resolution Image을 효율적으로 학습가능합니다.
Tile Hypothesis
구조를 설명하기에 앞서 Tile Hypothesis는 High-resolution을 작은 사이즈의 tile로 나누어 학습하는 것으로 다음과 같이 구성됩니다.
- \( d \) : disparity
- \( d_x, d_y \) : gradient of disparity in \( x \) and \( y \) direction
- \( p \) : tile feature descriptor (learnable)
Feature Extraction
본 논문에서 Feature Extraction은 작은 U-net의 구조를 사용합니다. 두개의 Image를 각각 Feature Extraction에 넣어 encoder부분에서 high-level feature를 얻어낸 후에 decoder부분에서의 featrue map (Left Image)\( \{ e_0^L, e_1^L, ..., e_4^L \} \) 와 (Right Image)\( \{ e_0^R, e_1^R, ..., e_4^R \} \)를 만들어 냅니다.
Initialization
Initialization 부분은 Tile hypothesis를 초기화하는 과정으로 초기 disparity와 descriptor를 설정하고 \( d_x \)와 \( d_y \)는 0으로 설정합니다.
먼저 Feature extraction에서 얻어진 Featrue map \( e \)에 4x4 convolution를 적용하는데 \( e^L \)에는 4x4 strides로 적용하고 \( e^R \)에는 4x1 strides로 적용합니다.
그 결과로 \( \tilde{\varepsilon} = \{ \tilde{e_0}, ...,\tilde{e_M} \} \)가 만들어지고 이 것을 이용해 matching cost를 계산합니다.
이때 \( l \)은 resolution이고 \( d \)는 disaprity를 의미합니다.
후에 계산한 matching cost를 이용해서 초기 disparity \( d_{l,x,y}^{init} = argmin_{d \in [0,D]} \varrho(l,x,y,d) \)를 계산합니다.
+추가 업로드 예정