[Paper Review] NoPe-NeRF: Optimising Neural Radiance Field with No Pose Prior

E0u0n·2023년 10월 16일
0

NeRF

목록 보기
6/12
post-thumbnail

Paper : NoPe-NeRF: Optimising Neural Radiance Field with No Pose Prior

Abstract

배경

  • 사전 계산된 camera pose 없이 Neural Radiance Field를 훈련하는 것은 어려움
  • 관련된 최근 연구는 forward-facing 장면에서 NeRF와 camera pose를 공동으로 최적화할 수 있는 가능성을 보여주지만 복잡하게 움직이는 카메라에는 여전히 어려움에 직면

제안

  • Udistorted monocular depth prior를 통합하여 문제 해결
  • 이러한 prior는 훈련 중에 scale 및 shift parameter를 수정하여 생성되며, 이를 통해 연속 프레임 간의 relative pose constrain 가능

결과

  • 까다로운 카메라 궤적을 처리할 수 있으며 새로운 뷰 렌더링 품질 및 pose 추정 정확도 측면에서 기존 방법을 능가

2. Related Work

NeRF With Pose Optimisation

카메라 매개 변수 전처리를 제거하는 것은 최근 활발한 연구이다. 본 논문에서는 이러한 유형의 방법을 unposed-NeRF라고 부른다.

  • 최근 연구는 RGB-D 입력을 필요로 하거나 SLAM 추적 시스템에서 생성된 정확한 카메라 포즈에 의존하는 SLAM 스타일의 파이프라인을 사용한다.
  • 또는 NeRF 모델로 직접 카메라 포즈를 최적화한다.

카메라 매개변수를 추정하는 여러 논문

  • iNeRF : 재구성된 NeRF 모델을 사용하여 새로운 뷰 이미지에 대한 포즈를 추정
  • GNeRF : 카메라 포즈를 추정하기 위해 생성 적대적 네트워크와 NeRF를 결합하지만 포즈에 대해 알려진 샘플링 분포가 필요
  • NeRFMM : NeRF 훈련과 함께 카메라 고유 특성과 외부 특성을 공동으로 최적화(본 논문과 관련)
  • BARF : 카메라 포즈와 NeRF 공동 최적화를 위한 coarse-to-fine positional encoding 전략을 제안
  • SCNeRF : 카메라 왜곡을 추가로 매개 변수화하고 광선을 규칙화하기 위해 기하학적 손실을 채용
  • GARF : Gaussian-MLP를 사용하면 공동 포즈와 장면 최적화가 더 쉽고 정확하다는 것을 보임
  • SiNeRF : SIREN layer와 새로운 샘플링 전략을 사용하여 NeRFmm에서 공동 최적화의 하위 최적화를 완화, LLFF와 같은 정방향 데이터 세트에서 유망한 결과를 보여주지만, 이러한 접근 방식은 큰 카메라 움직임으로 도전적인 카메라 궤적을 처리할 때 어려움에 직면

본 논문은 mono-depth map을 카메라 매개 변수 및 NeRF의 공동 최적화와 통합하여 이 문제를 해결한다.

3. Method

Unposed-NeRF 훈련에서 큰 카메라 모션을 처리하는 문제를 해결한다. 일련의 이미지, camera intrinsic 및 단일 깊이 추정을 통해 camera pose를 복구하고 NeRF를 동시에 최적화한다.
본 연구는 image meta block에서 camera intrinsic을 사용할 수 있다고 가정하고, 단일 깊이 추정치를 얻기 위해 mono-depth network DPT를 사용한다.

DPT(CVPR 2021)
Monocular depth estimation network

훈련은 각 단일 깊이 맵의 NeRF, camera pose 및 distortion parameter를 공동으로 최적화하는 것이다. Distortion parameter는 단일 깊이 맵과 NeRF에서 렌더링된 depth map(multiview consistent) 간의 불일치를 최소화하여 감독된다. 이를 통해 undistorted depth map은 shape-radiance ambiguity(모호성)을 효과적으로 중재하여 NeRF 및 camera pose의 훈련을 용이하게 한다.

특히, undistorted depth map은 두 가지 제약 조건을 가능하게 한다.

  • 인접한 이미지 사이에 상대 포즈를 제공함으로써 global pose 추정을 제한한다. 이것은 undistorted depth map에서 역투영된 두 point cloud 사이의 Chamfer-Distance-based correspondence을 통해 달성된다.
  • Undistorted depth를 표면으로 다루는 surface-based photometric consistency을 통해 relative pose 추정을 정규화한다.

업로드중..

3.1. NeRF

3.2. Joint Optimisation of Poses and NeRF

이전 연구는 식(2)의 동일한 볼륨 렌더링 프로세스에서 photometric error Lrgb\mathcal L_{rgb}를 최소화함으로써 camera parameter와 NeRF를 동시에 추정하는 것이 가능하다는 것을 보여준다.

카메라 광선 r\mathbf r이 camera pose의 함수이기 때문에 관건은 variable camera parameter ΠΠ에 대한 카메라 ray casting을 조정하는 데 있다.

Θ,Π=argminΘ,ΠLrgb(I^,Π^I)(3)\Theta^{*}, \Pi^{*}=\arg \min _{\Theta, \Pi} \mathcal{L}_{r g b}(\hat{\mathcal{I}}, \hat{\Pi} \mid \mathcal{I}) \tag 3
  • Π^\hat\Pi : 최적화 중에 업데이트되는 camera parameter
  • Lrgb=iNIiI^i22\mathcal{L}_{r g b}=\sum^N_i\|I_i-\hat I_i\|^2_2 : photometric error

일반적으로 camera parameter ΠΠ에는 camera intrinsics, poses, lens distortion이 포함된다. 본 연구에서는 camera pose 추정만 고려한다.

  • 예를 들어 프레임 IiI_i의 camera pose : transformation Ti=[Riti]Ti = [\mathbf R_i | \mathbf t_i ], rotation RiSO(3)Ri ∈ SO(3) 및 rotation tiR3\mathbf t_i ∈ \mathbb R^3

3.3. Undistortion of Monocular Depth

기존 monocular depth network(DPT)를 사용하여 입력 이미지에서 단일 깊이 시퀀스 D={Dii=0...N1}\mathcal D = \{\mathcal D_i | i = 0 . . . N − 1\}를 생성한다. Mono-depth map은 multi-view consistent가 없으므로 relative pose loss term에서 추가로 활용되는 multi-view consistent depth map을 복구하는 것을 목표로 한다.

각 mono-depth map에 대해 두 개의 선형 변환 매개변수를 고려하여 모든 프레임에 대해 일련의 transformation parameter Ψ={(αi,βi)i=0...N1}Ψ = \{(α_i , β_i) | i = 0 . . . N − 1\}를 생성한다. (αiα_iβiβ_i는 scale과 shift factor)

NeRF의 multi-view consistent constraint를 사용하여
DiD_i에 대한 multi-view consistent depth map DiD^*_i를 복구한다.

Di=αiDi+βi,(4)D_{i}^{*}=\alpha_{i} D_{i}+\beta_{i}, \tag 4
  • NeRF와 함께 αiα_iβiβ_i 공동 최적화

공동 최적화는 대부분 undistorted depth map DiD^*_i와 NeRF rendered depth map D^i\hat D_i 사이의 일관성을 depth loss를 통해 강화함으로써 달성된다.

Ldepth =iNDiD^i,(5)\mathcal{L}_{\text {depth }}=\sum_{i}^{N}\left\|D_{i}^{*}-\hat{D}_{i}\right\|, \tag 5
D^i(r)=hnhfT(h)σ(r(h))dh(6)\hat{D}_{i}(\mathbf{r})=\int_{h_{n}}^{h_{f}} T(h) \sigma(\mathbf{r}(h)) d h \tag 6

NeRF와 단일 심도 모두 식(5)의 이점을 얻는다는 점에 유의하는 것이 중요하다.

  • 단일 깊이는 NeRF 훈련에 앞서 강력한 기하학을 제공하여 shape-radiance의 ambiguity(모호성)를 줄인다.
  • 반면에 NeRF는 multi-view consistency을 제공하므로 relative pose 추정을 위한 multi-view consistent depth map 세트를 복구할 수 있다.

3.4. Relative Pose Constraint

Unposed-NeRF 방법은 각 camera pose를 독립적으로 최적화하여 잘못된 pose가 있는 대상 이미지에 과적합을 초래한다. 프레임 간의 잘못된 relative pose에 페널티를 적용하면 복잡한 카메라 궤적에서 최적화하는 데 도움이 될 수 있다. 따라서 relative pose를 제한하는 두 가지 loss를 제안한다.

Point Cloud Loss

Known camera intrinsic을 사용하여 undistorted depth map DD^*를 point cloud P={Pii=0...N1}\mathcal P^* = \{\mathcal P^*_i | i = 0 . . . N − 1\}로 back-projection시키고, point cloud loss Lpc\mathcal L_{pc}를 최소화하여 연속 point cloud 사이의 relative pose를 최적화한다:

Lpc=(i,j)lcd(Pj,TjiPi)(7)\mathcal{L}_{p c}=\sum_{(i, j)} l_{c d}\left(P_{j}^{*}, \mathbf{T}_{j i} P_{i}^{*}\right) \tag 7
  • Tji=TjTi1\mathbf{T}_{j i} = \mathbf T_j\mathbf T^{−1}_i : point cloud PiP^*_iPjP^*_j로 변환하는 related pose
  • tuple (i,j)(i, j) : 인스턴스의 연속 쌍의 인덱스
  • lcdl_{c d} : Chamfer Distance
    lcd(Pi,Pj)=piPiminpjPjpipj2+pjPjminpiPipipj2.(8)l_{c d}\left(P_{i}, P_{j}\right)=\sum_{p_{i} \in P_{i}} \min _{p_{j} \in P_{j}}\left\|p_{i}-p_{j}\right\|_{2}+\sum_{p_{j} \in P_{j}} \min _{p_{i} \in P_{i}}\left\|p_{i}-p_{j}\right\|_{2} . \tag 8

Surface-based Photometric Loss

Point cloud loss Lpc\mathcal L_{pc}는 3D-3D 매칭 측면에서 감독을 제공하지만 surface-based photometric error가 잘못된 매칭을 완화할 수 있음을 관찰한다. Photometric consistency 가정에 따라 이 photometric error는 연관된 픽셀 간의 모양 차이에 불이익을 준다. 연관성은 point cloud PiP^*_i를 이미지 IiI_iIjI_j에 투영하여 설정된다.
Surface-based photometric loss:

Lrgbs=(i,j)IiKiPiIjKjTjTi1Pi(9)\mathcal{L}_{r g b-s}=\sum_{(i, j)}\left\|I_{i}\left\langle\mathbf{K}_{i} P_{i}^{*}\right\rangle-I_{j}\left\langle\mathbf{K}_{j} \mathbf{T}_{j} \mathbf{T}_{i}^{-1} P_{i}^{*}\right\rangle\right\| \tag 9
  • ⟨·⟩ : 이미지의 샘플링 작업
  • Ki\mathbf K_i : ithi_{th}번째 카메라의 projection matrix

3.5. Overall Training Pipeline

전체 loss:

L=Lrgb+λ1Ldepth +λ2Lpc+λ3Lrgbs,(10)\mathcal{L}=\mathcal{L}_{r g b}+\lambda_{1} \mathcal{L}_{\text {depth }}+\lambda_{2} \mathcal{L}_{p c}+\lambda_{3} \mathcal{L}_{r g b-s},\tag {10}
  • λ1,λ2,λ3λ_1, λ_2, λ_3 : 각 loss term에 대한 가중치 인자

Loss L\mathcal L 결합의 최소화:

Θ,Π,Ψ=argminΘ,Π,ΨL(I^,D^,Π^,Ψ^I,D),(11)\Theta^{*}, \Pi^{*}, \Psi^{*}=\arg \min _{\Theta, \Pi, \Psi} \mathcal{L}(\hat{\mathcal{I}}, \hat{\mathcal{D}}, \hat{\Pi}, \hat{\Psi} \mid \mathcal{I}, \mathcal{D}), \tag {11}

최적화된 NeRF 파라미터 Θ\Theta, camera pose Π\Pi, distortion parameter Ψ\Psi를 반환한다.

4. Experiments

4.5. Limitations

모델의 최적화가 고려하지 않은 non-linear distortion과 단일 깊이 추정의 정확성에 의해 영향을 받는다.

profile
이세계 개발자입니다.

0개의 댓글