올해 CVPR에서 단연 화제가 되었던 것은 2020 ECCV 이래로 큰 반향을 불러일으킨 NeRF의 다양한 활용이었습니다. NeRF[1]는 객체를 다방면에서 찍은 이미지들을 이용하여, 이전에 보지 못하던 시점에서 물체를 바라봤을 때의 모습을 생성해내는 View Synthesis라는 테스크를 새롭게 풀어낸 방식입니다. CVPR 2022에서 발표된 논문 중, 50편 이상의 논문이 NeRF를 기반으로 한 방법론을 제시했습니다. 또한, 총 29편의 논문 제목에 NeRF가 포함되어 있었으며, 그중 8편은 출품작 가운데 상위 4%에 해당되어 구두로 발표되는 oral presentation에 선정되었습니다. 이번 블로그에서는 NeRF란 정확히 어떤 방법론이며, 이번 CVPR 2022에서 NeRF는 주로 어떻게 활용되었는지를 자세히 살펴보겠습니다.
NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
컴퓨터 비전에서 View Synthesis는 상당한 난제 중 하나입니다. 2D image만으로는 3D 정보를 정확히 알기 어려워 View synthesis를 smooth하게 렌더링하는 것은 상당히 까다로운 과정이기 때문입니다. 기본적으로 NeRF는 관찰자가 보고 있는 시점에서 volume과 color를 얻고, 이를 조합하여 색을 표현할 수 있다고 가정합니다. 모든 색 값을 voxel과 같은 3D shape에 저장하는 경우, 렌더링 퀄리티가 현저하게 떨어지고 메모리 용량이 많이 필요한데, NeRF는 이런 문제를 효율적으로 해결할 수 있는 획기적인 모델입니다.
우리는 어떤 특정 지점을 보는 ‘시점’을 5D 표현식 (x,y,z,θ,)으로 표현할 수 있습니다. 여기서 x,y,z는 공간 위에서 한 점의 3차원 좌표가 되고, θ, 는 광원의 방향이 됩니다.
(Figure 1) NeRF의 개념도[1]
(Figure 2) NeRF의 학습 도식도[1]
NeRF는 위와 같이 다양한 시점에서 촬영한 물체의 단면 이미지들, 정확히는 위의 시점에 대한 5D 표현식 (x,y,z,θ,)을 입력 받아, 해당 view에서 위치의 RGB 값과 volume density σ를 생성하는 단순한 MLP 구조입니다. 여기서 volume density란, 간단하게 밀도/불투명도 정도로 해석됩니다. 이 같이 NeRF의 간단한 구조를 통해, 이전의 state-of-the-art view synthesis 방법론보다 뛰어난 성능을 거두었으며, 촬영된 이미지와 촬영 당시 카메라의 정보만을(카메라 포즈와 같은 extrinsic parameter와 intrinsic parameter를 모두 포함) 가지고도 View synthesis를 수행할 수 있게 되었습니다.
NeRF in CVPR 2022
이번 CVPR에서의 발표된 다양한 주제의 NeRF 방법론들을 크게 4가지 카테고리로 엮어보았습니다. 각각 NeRF가 어떻게 활용되고 있는지 소개해 드리겠습니다.
1. NeRF from single images
이전의 NeRF는 굉장히 많은 view들의 이미지와 camera pose를 이용하여 새로운 view를 synthesize 했습니다. 이번 CVPR에서는 하나의 객체당 ‘단 하나’의 view만 가지고 새로운 view들을 synthesize 할 수 있는 방법이 발표되었습니다. 동일 물체에 대한 multi-view data를 얻어내기가 굉장히 까다로움에도 뛰어난 성능을 냈다는 점에서 큰 화제가 되었습니다. LoLNeRF[2]나 Pix2NeRF[3]등에서도 소개된 이 방식은, 공통적인 pose로 view를 고정시켜 놓은 채 NeRF를 학습시킨 뒤, 단일 이미지만으로도 자유로운 각도의 view를 표현할 수 있도록 설계되었습니다. 따라서 다양한 class의 object들에 대한 단 하나의 view만 있더라도 shared generative model과 approximate camera pose만으로 NeRF를 학습할 수 있다는 놀라운 성과를 거두었습니다. 또한, NeRF의 놀라운 발전을 통해 single natural images로부터 depth를 generation하여 물체에 대한 defocusing까지 수행할 수 있게 되었습니다[4].
(Figure 3) AR-NeRF의 depth estimation과 defocusing 기능[4]
2. Beyond the Limits of NeRF
두 번째로, 단순 MLP 구조로 이루어져 있어 scene 단위로 이루어지는 매우 느린 optimization time과 noise 등 NeRF의 한계를 극복하기 위해, 기존 NeRF와 다양한 방법들을 결합한 연구들이 CVPR 2022 oral presentation의 영광을 안았습니다. Point Cloud를 결합하여 NeRF의 high-quality를 유지하면서도, scene 단위의 느린 렌더링 속도를 극복하거나[5], 카메라 포즈로부터 이미 알고 있는 depth supervision을 이용하거나[6], TSDF 기반 고전적인 3D reconstruction 방법론을 결합하는 등[7] 다양한 방법들이 발표되었습니다.
Regularization을 이용하여 NeRF의 한계를 극복한 방법들도 돋보였습니다. 기존의 NeRF는 물체를 정확하게 렌더링하는 반면, 경계가 명확하지 않은 배경에 대해선 blurry한 결과물을 내고, 많은 양의 multi-view 이미지와 카메라 포즈에 대한 training 없이는 아티팩트가 매우 심각하다는 단점을 가지고 있습니다. Mip-NeRF 360[8]이나 RegNeRF[9]와 같은 방법론들은 regularization term을 통해 이런 현상을 해결하였고, GeoNeRF[10]같은 경우 consistent geometry를 이용해 이를 해결함으로써 더 효율적인 NeRF 학습이 가능하도록 하였습니다. Human pose 등에서도 이전의 IBRNet[11]과 같이, Pixel-alignment feature와 pose embedded non-rigid deformation을 이용하여 sparse multi-view input만으로도 높은 퀄리티의 human pose view synthesis를 수행할 수 있는 방법이 제안되었습니다[12].
Scalability 측면에서의 확장도 인상적이었습니다. Block-NeRF[13]와 같은 경우, 데모 영상이 이목을 끌었습니다[14]. Block-NeRF에서는 NeRF를 이용하여 도시 단위의 scene을 reconstruction 할 때, 전체 scene을 block(구) 단위로 decompose하여 각각 개별적으로 학습된 NeRF를 적용하는 것이 매우 뛰어난 효과를 거둔다는 것을 보여주었습니다.
(Figure 4) Block-NeRF의 결과 데모 영상[14]중 발췌. 도시의 뷰를 다방면에서, ‘낮’이나 ‘밤’ 등 촬영 시간까지 조절하여 생성할 수 있다.
또한 NeRFReN[15]과 같은 연구에서는, 기존의 NeRF에서 올바른 방식으로 렌더링하지 못하는 유리나 거울에서의 complex reflection을 다루기 위한 방법들도 제안되었습니다.
(Figure 5) NeRFReN는 거울에 반사되는 사물 등 매우 표현이 난해한 렌더링을 수행할 수 있다. [15]
3. Editing with NeRF
최근 Generative model에서 latent representation을 통해 우리가 통제할 수 있는 manipulation을 하는 방법들이 많은 각광을 받았습니다. 세 번째 NeRF 주제는 바로 이런 manipulation과 NeRF를 결합한 논문들입니다. CLIP과 multimodal text-and-image를 이용한 NeRF의 manipulation을 다룬 CLIP-NeRF[16]부터 scene에서 사용자가 원하는 deformation을 수행할 수 있는 방법론들을 제시한 NeRF-Editing[17], 눈을 감거나 입을 여는 등의 특정한 attribute, 트랜스포머 인형이 변신을 하거나, 메트로놈의 싱크까지 조절할 수 있는 놀라운 결과를 보여주는 CoNeRF[18]도 등장하였습니다.
(Figure 6) CoNeRF로 눈이나 입을 감거나 뜨게 할 수도 있고, 변신하는 장난감의 변신 과정까지 생성해낼 수 있다.[18]
이에 더해, 새로운 style로 새로운 view point를 생성하는 방법(Stylized-NeRF)[19]도 등장하였습니다.
(Figure 7) Stylized-NeRF로 새로운 view를 원하는 style로 생성해낼 수 있다.[19]
사진에서 빼놓을 수 없는 하나의 중요한 요소가 바로 ‘대비’인데요. NeRF를 이용하여 ‘고대비(High Dynamic Range)'와 ‘저대비(Low Dynamic Range)’ 등 다양한 노출도 아래에서의 scene을 생성해내는 HDR-NeRF[20]나 NeRF in the Dark[21]와 같은 이색적인 연구도 만나볼 수 있었습니다.
(Figure 8) HDR-NeRF를 통해 생성한 다양한 대비의 사진들.[20]
(Figure 9) NeRF in the Dark[21]를 통해 생성한 캄캄한 방 내부의, 서로 다른 물체에 초점을 맞춘 사진.
4. Human with NeRF
이러한 editability의 정수를 활용한 것이 human에 NeRF를 적용하는 것입니다. 가장 기본적으로 facial expression에 대한 controllability부터 그동안 다양한 방식으로 시도되어 왔던 사람의 다양한 attribute들(머리 색, 치간, 주름 등)과 head의 pose까지 자유롭게 조절할 수 있게끔 NeRF를 활용한 방법론들(FENeRF[22], RigNeRF[23])이 인상적이었습니다. 기존의 3D textured mesh 대신 NeRF를 활용하여 사람 머리의 attribute들을 controllable하게 해주는 HeadNeRF[24] 등이나 단일 viewpoint의 YouTube video로부터 full viewpoint의 human body motion 비디오를 렌더링해주는 HumanNeRF[25] 또한 매우 인상적인 연구였습니다(이는 앞서 설명한 sparse input의 HumanNeRF와 이름만 같을 뿐 완전히 다른 방법론입니다.). HumanNeRF는 단순히 pose에 대한 viewpoint 뿐만 아니라, 옷의 접힘이나 facial appearance등의 세부적인 디테일까지 모두 정교하게 재현하도록 구현되었습니다.
(Figure 10) FENeRF를 통해 다양한 view의, 다양한 aspect를 조절한 얼굴을 생성할 수 있다. [22]
(Figure 11) RigNeRF[23] 로 자유로운 표정 및 각도의 얼굴을 생성할 수 있다.
(Figure 12) HumanNeRF를 통해 monocular YouTube비디오로부터 모든 뷰에서의 사람을 생성해낼 수 있다. [25]
이로써 CVPR 2022에 등장했던 다양한 NeRF를 이용한 방법론들을 알아보았습니다. 작년 NeRF 연구의 메인 키워드는 ‘시도’였던 것 같습니다. ‘scene’ 단위의 모델이 아닌, 단일 모델을 이용하여 효율적으로 NeRF를 모델링하는 방법을 연구하는 것을 넘어 NeRF의 다양한 한계점들을 극복하는 시도가 이어져 흥미로운 연구를 많이 만나볼 수 있었습니다. 작년에 이어 올해는 또 어떤 방향으로 NeRF 연구가 진행될지 큰 기대가 됩니다.
[인용] NeRF at CVPR 2022 (Link)
▶[CVPR 2022] LG AI연구원, 비전 연구의 메카 CVPR 2022에 가다! (Link)
▶[CVPR 2022] Research trend of continual learning (Link)