NeRF 논문을 읽고, 매주 새로운 논문을 공부했지만 블로그에 정리할 시간은 나질 않았다.
지금도 마찬가지이나 로컬 PC의 GPU와 연구실 서버가 열심히 일하고 있는 중이다.
그렇다고 퇴근해버리기에는 다음 실험까지 돌리고 가고 싶어서 시간이 살짝 떴다.
https://hae-koos.tistory.com/97
오늘 정리할 논문은 D-NeRF. NeRF가 Static Scene을 다뤘다면 Dynamic Scene을 다룬
논문이다. 즉, 시간 축의 정보까지 Neural Representation으로 녹여내겠다는 것이다.
하나의 멈춰있는 객체를 멀티뷰로 찍어서 학습시키고, 학습된 뷰 포인트가 아닌 다른
뷰 포인트에서도 렌더링이 가능했던 NeRF를 넘어 보다 일반적인 상황인 움직이는
물체를 타겟으로 삼았다.
핵심 아이디어는 시간 축을 따라 기준이 되는 Canonical Scene을 정의하는 것에 있다.
그 후에 다른 시간의 장면들은 Canonical Scene으로부터의 변화량으로 정의하는 것이다.
사실 움직이는 물체를 여러 카메라로 특정 시점에 찍는다면 한 시점에 다양한 이미지를
얻을 수 있으니 비교적 쉬운 문제가 되겠으나 Single Monocular RGB 카메라만을 사용했다.
기존 NeRF에 시간만 추가해서 마찬가지로 Color & Density 뽑고, Volume Rendering 해서
Loss 먹이면 되겠네 생각할 수 있지만 움직이는 물체는 프레임마다 연관성이 존재한다.
모든 시간에 대해 정보를 공유할 수 있는 구조가 되어야 모델링이 효율적일 것이다.
Canonical Scene을 정의하자. Canonical Scene을 하나의 MLP를 통해 나타내고,
다른 Timestep Scenes은 Canonical Scene을 활용해서 나타내자는 아이디어다.
이를 논문에서는 The core idea is to decompose learning into two modules. 라 말한다.
앞서 말했듯, 우리는 Canonical Scene만 Rendering 할 수 있는 상황이다.
Canonical Scene이 아닌 Scene을 생각해보자. 마찬가지로 Ray를 쏠 것이다.
하지만 그 위의 점들을 그대로 입력으로 받아 Color & Density를 뽑아줄 네트워크가 없다.
따라서 그 공간좌표와 시간을 입력으로 받는 네트워크인 Deformation Network를 활용한다.
Deformation Network는 입력받은 점이 Canonical Scene에서 존재할 그 점 사이에 델타를
출력하며, 이를 더해줌으로써 Canonical Scene 위에 있을 점의 공간좌표를 알 수 있다.
우리가 Deformed Scene에서 궁금했던 점의 컬러와 덴시티를 Canonical Scene으로 옮기고,
Canonical Scene Representation이 잘 담긴 Canonical Network로 렌더링 정보를 얻는다.
Task 자체가 마냥 쉽진 않지만 Canonical Scene 개념을 활용하겠다는 것만 이해하면
뒷 내용이 이해하기 어렵거나 하진 않는다. 다만 NeRF에 대한 이해는 선행되어야 한다.
그래야 아래 식들이 쉽게 이해될 것이기 때문이다.
Implementation Details와 Results는 다음과 같다.
위에 적어둔 한계점들이 있다고는 하나 ArXiv 기준으로는 NeRF가 2020년 3월에 나와서
ECCV 2020에 Accept 되었는데 D-NeRF가 ArXiv에는 2020년 11월에, CVPR 2021에
소개되었다는 것을 보고 놀랐었다. 정말 빠르구나 싶었다.
교수님과 NeRF 관련하여 여러 연구 방향성에 대해 디스커션을 나누다 7월 초가
되어서야 방향성이, 8월 중순이 지나서야 Method가 어느정도 구체화되었다.
새로운 아이디어인만큼 뺏기지.. 않게.. 빠르게 실험을 해나가야지 다시금 생각한다.
'AI > Novel View Synthesis' 카테고리의 다른 글
NeRF 논문 리뷰 및 설명 (0) | 2023.06.16 |
---|