step 2-2) color는 외적한 값들을 concat한 뒤 function B와 function S에 통과시켜 얻음
function B : 1개의 FC-layer appearance commonalities를 추상화는 Global Apperance Dictionary 역할
function S : MLP 또는 SH(Spherical Harmonics) 함수
Loss
sparse input images일 경우 적게 관측된 view에서는 outlier 혹은 noise가 발생할 수 있어 overfitting 혹은 local minima 문제 발생 \(\rightarrow\) regularization term 추가한 loss 사용 e.g. TV(total variation) loss : pixel 값 간의 급격한 변화 (noise or outlier)를 억제하기 위해 \(I_{i+1, j} - I_{i, j}\) 항과 \(I_{i, j+1} - I_{i, j}\) 항을 loss에 추가
Coarse-to-Fine
NeRF의 coarse-to-fine 기법 : \(w_i = T_i \alpha_{i}\) 의 PDF 분포에 따라 일부 구간을 더 많이 sampling
Mip-NeRF 360의 coarse-to-fine 기법 :
small coarse proposal-MLP는 many samples로 여러 번 evaluate하여 weight \(\hat w\) 를 구하고 large fine NeRF-MLP는 less samples로 딱 한 번 evaluate하여 weight \(w\) 와 color \(c\) 를 구함
proposal loss를 이용하여 NeRF-MLP의 지식을 proposal-MLP가 따라잡도록 함
TensoRF의 coarse-to-fine 기법 : 단순히 grid 크기를 upsampling Grid size(resolution)이 커질수록 선 또는 면이 더 촘촘해져서 3D scene의 high-freq. feature를 더 잘 잡아낼 수 있음
Implementation
Decomposition Rank : 총 48개
RGB : 16, 4, 4
volume density : 16, 4, 4
Grid size : coarse-to-fine \(128^3\) 에서 \(300^3\) 으로 점점 증가시키면서 학습 (2000, 3000, 4000, 5500, 7000 step에서 점차 증가시킴)
Batch size : 4096 pixels
Adam optimizer, V100 GPU(16GB)
Evaluation
기존 Grid-based 연구들과 training speed는 유사하지만 PSNR이 높고 모델 사이즈 및 GPU memory 사용량이 적음
Ours-VM-192 : 4DGS, VM Decomposition, 192개의 rank
speed, PSNR : Ours-VM-192를 15000 iter.만큼만 진행했을 때 8분만에 기존 연구들보다 PSNR 높음
memory : 기존 연구들보다 확연히 memory size 적음
Param. 실험 :
Grid size가 증가할수록 성능 좋아지지만 speed 느려지고 model size 커짐
CP Decomposition보다 VM Decomposition이 성능 더 좋음
rank 개수가 증가할수록 성능 좋아짐
iter. :
iter.이 증가할수록 PSNR이 증가 5k iter.만 해도 PSNR이 30에 가까워지고, 점점 변동폭이 작아짐
Limitation
scene을 bounded cubic 안에 제한해야 projection을 통해 VM Decomposition이 가능하므로 unbounded scene은 다루지 못함