Paper/Human

Pixel Codec Avatars

침닦는수건 2024. 12. 3. 13:30
반응형

내 맘대로 Introduction

 

Telecommunication을 목표로 하는 메타 연구 중 하나. 사람 1명에 대한 realistic avatar를 만드는 것을 주목적으로 하되, 실제 위 예시처럼 telecommunication 상황에서 real time으로 사용 가능하도록 하는 것도 염두했다. 여러 사람이 있는 장면을 렌더링한다고 하면 실제 머리에 해당하는 pixel은 적은 영역이므로 적은 pixel만 실시간 렌더링해서 연산량을 줄일 수 있도록 NeRF 컨셉을 적용했다고 한다. 

 

핵심 아이디어는 latent to position map(xyz) + feature -> MLP 붙여서 neural rendering 이다. multiface dataset 세팅에서 취득한 초고품질 데이터로 학습을 시켜서 그런 점도 있겠지만 성능이 꽤나 좋아 보임.

 

메모


전체 구조는 conditional VAE이다. view direction이 일종의 condition이 되는 것이고 2D latent (code)로 부터 position map (xyz)와 local feature 를 생성하는 구조다. 

이후에 positionmap + local feature를 3D로 복원한 뒤에 neural rendering 컨셉으로 image/depth/normal로 렌더링한 뒤 GT와 비교하는 방식으로 학습했다. 

실시간 렌더링을 위해서 MLP는 4 layers만 사용해서 엄청 얇게 만들었고 SIREN 구조를 썼다고 한다. 


2D latent(code)를 만드는 것은 앞에 CNN이 붙어서 생성해줌 (같이 학습되는 부분)

한 사람 데이터에 대해 여러 frame을 다 평균낸 average texture map을 구하고 한 프레임에서 얻은 coarse mesh (template mesh)를 넣어준다. scan을 넣지 않는 이유는 실제 입력으로 high quality mesh를 넣을 수 있는 상황이 많지 않기 때문.

2D latent (code)는 각각 2개의 CNN decoder에 의해 미리 정의해둔 uv coordinate로 표현된 position map (xyz), local code map으로 변환된다.

positionmap + local code - >3D -> sampling -> neural rendering 

순서에서 마지막에 사용되는 MLP는 SIREN +4 겹

얇게 만든 이유는 neural rendering이 렌더링 시간이 오래 걸리기 때문에 이를 최소화 하기 위한 약간의 노력이라고 생각한다.
MLP를 얇게 쓰는 결정으로 인해 성능 하락 (smoothing된 결과)을 피할 순 없었다.

그래서 추가한게 local code map (nerf에서 geometric feature를 굳이 꺼내서 썼을 때 성능이 뛰는 것처럼 guidance feature를 더 쓰는 것)

+ uv 값을 MLP 입력으로 쓸 때 positional encoding을 한 번 더 해주는 식이다. 
uv, u, v, 총 3가지 경우로 나누어서 각각을 4, 2, 2로 encoding해준다.

이 때 sin,cos을 쓰면 frequency에 따라 너무 길어지므로 안썼다.



uv 용 1024x1024x4 learnable params

u 용 10000x1  learnable params

v 용 10000x1  learnable params

으로 미리 만들어둔 파라미터에서 interpolated sampling해서 쓰는 식.

얘네도 같이 학습된다. 이게 무슨 효과가 있을까 싶은데.



실험해보면 효과가 있다고 한다. (할말없음)





여긴 학습에 관한 내용인데, GT 퀄리티 엄청 좋다.

앞서 만든 encoder, learnable positional encoding, decoder, MLP를 다 통째로 한번에 학습시킨다. 

GT는 neural rendering으로 만들 수 있는 모든 것. 
position map GT도 있어서 encoder 출력에다 걸어주는 방식이 추가됐을 뿐.
굳.
반응형