윤제로의 제로베이스

Mip-NeRF: Multiscale Representation for Anti-Aliasing Neural Radiance Fields 본문

Self Paper-Seminar/NeRF

Mip-NeRF: Multiscale Representation for Anti-Aliasing Neural Radiance Fields

윤_제로 2023. 6. 21. 17:02

https://arxiv.org/abs/2103.13415

 

Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields

The rendering procedure used by neural radiance fields (NeRF) samples a scene with a single ray per pixel and may therefore produce renderings that are excessively blurred or aliased when training or testing images observe scene content at different resolu

arxiv.org

https://github.com/google/mipnerf

 

GitHub - google/mipnerf

Contribute to google/mipnerf development by creating an account on GitHub.

github.com

기존의 NeRF의 경우에는 ray를 통해 pixel을 rendering을 하였다. 하지만 이렇게 할 경우 하나의 픽셀을 위해 수백번 MLP 연산을 해야하므로 실용적인 편은 아니었다. 

 

mip-NeRF는 ray 대신에 anti-aliased conical frustums를 사용한다. 이를 통해 효율적으로 렌더링 하고 속도를 줄였으며 성능도 높였다.

Method

NeRF는 픽셀당 single ray를 계산하기 때문에 각 ray에서 바라보는 거리는 무시할 수 밖에 없다. 이로 인해서 같은 거리에서 찍은 dataset으로 구성된 경우에는 novel view synthsis가 잘 이루어지지만, Multiscale로 거리가 달라지게 되면 제대로된 성능이 나오지 못하게 되고 alias가 발생하게 된다.

 

이 문제를 mip-NeRF는 각 픽셀에서 원뿔 모양으로 만들어 alias 문제를 해결하였다.

mip-NeRF는 각 ray에서 sampling하는 것이 아닌 conical frustums, 원뿔 분할을 한다. 그리고 각 conical frustum에 대해 Multivariate Gaussian을 적용하고 IPE 방식으로 encoding한다. 이 방식을 사용하면 MLP에서는 각 conical frustum을 추론할 수 있게 되고, 이 덕분에 각각의 부피를 모델링하여 각각의 Multiscale을 학습할 수 있게 되는 것이다. 더불어 corse와 fine을 1개의 MLP로 줄일 수 있게 된다.

 

1) Cone Tracing and Positional Encoding

Cone Tracing의 경우에서는, 가장 먼저 cone을 casting한다. 카메라 중심에서 픽셀의 방향으로 캐스팅을 한다. 카메라 중심이 o일 때 o+d에서의 반지름을 r이라 한다. conical frustum 에서의 x의 집합이 위와 같은 식으로 표현이 된다.

그리고 이 각각의 x에 대해 expected positional encoding을 계산한다.

IPE(Integrated Positional Encoding)의 경우 Gaussian Regions를 사용하여 지역을 network에 input으로 넣어줄 수 있게 된다.

위의 그림처럼 만약 넓은 면적을 encoding한다면 higher frequency가 자동으로 0으로 줄어들게 되어 lower frequency를 제공하게 된다. 반대로 좁은 면적으로 encoding한다면 higher frequency를 주게 된다.

2) Architecture

NeRF와 작동하는 것은 cone casting과 단일 MLP인 것 외에는 비슷하게 작동한다.

위의 식에서 coarse와 fine이 보이지만 결국엔 같은 weight을 공유하기 때문에 하나의 network으로 보면 된다.

Results