AniGS
Abstract Generating animatable human avatars from a single image is essential for various digital human modeling applications. Existing 3D reconstruction methods often struggle to capture fine details in animatable models, while generative approaches for c
lingtengqiu.github.io
Abstract
하나의 이미지로 부터 움직이는 아바타를 생성하는 것은 다양한 디지털 휴먼 모델링 어플리케이션에서 필수적인 과정이다. 하지만 기존의 3D reconstruction 방식들은 움직일 수 있는 모델들에서 세밀한 디테일을 파악하는데 어려움을 겪는다. 그로 인해 극한의 포즈에서는 viewpoint inconsistency와 연산의 비효율성이 발생한다.
그래서 본 논문에서는 이러한 문제점을 생성 모델을 사용해서 디테일한 multi-view canonical pose image를 생성하여 ambiguity를 해결하고자 하였다. 그 뒤 본 논문의 연구원들은 inconsistent image의 3D reconstruction을 하기 위한 robust method를 제안하여 realtime으로 inference 동안 렌더링이 가능하게 하였다. 구체적으로 transformer-based video generation model을 사용해서 multiview canonical pose image와 normal map들을 생성하여 일반화 성능을 높였다.
View inconsistency를 다루기 위해 reconstruction problem을 4D task로 캐스팅한 다음에 4D Gaussian Splatting을 사용해서 효과적인 3D modeling 접근 방식을 제안할 수 있었다고 한다.
Introduction
움직이는 human avatar를 생성하는 것은 다양한 application 분야에서 중요성이 증가하고 있다. 하지만, 움직이는 human avatar를 다양한 형태, 외형, 의상을 갖고 있는 하나의 image로 생성하는 것은 여전히 어려운 task라고 한다.
Single image로 human reconstruction을 하는 분야는 상당한 발전을 이뤄왔지만, 이를 움직이게 하는 것은 아직 많이 발전하지 못했다고 한다. 그 이유는 복원된 사람의 포즈가 input pose와 align 되어 있기 때문에 canonical 하지 않고 animation을 위해 복잡한 rigging 과정이 필요하다. Animatable avatar reconstruction을 위해 geometry offset refinement로 SMPL 같은 parametric human model들을 예측하는것에 기반하고 있는 방식들은 implicit surface reconstruction에 의존하기 때문에 일반화에 어려움을 겪는다. 그 이유는 large-scale, rigged 3D dataset이 부족하기 때문이라고 한다.
최근 들어 controllable human image animation은 diffusion model과 함께 상당한 발전을 이뤄 이제는 직접적으로 animated image를 생성할 수 있는 경지까지 왔다. 이러한 방식들은 realistic한 결과물을 달성하였고 input control pose로 쉽게 움직이게 할 수 있지만 global representation의 부족으로 인해 view inconsistency 문제를 겪는다. 게다가 이러한 방식들은 animation frame 당 연산량도 상당히 많기 때문에 효율성도 낮다고 한다.
Diffusion model이 multi-view image를 생성하는데 좋은 성능을 보여왔기 때문에 여러 논문들은 diffusion을 fine-tuning 해서 하나의 input으로 multi-view image를 생성해서 3D reconstruction을 해왔다. 구체적으로 CharacterGen이라는 논문에서는 multi-view canonical pose image를 생성해서 single image로 부터 cartoon-style avatar를 생성하는 능력을 보여줬다.
잠재적으로 inconsistent한 multiview image로 부터 3D model을 생성하기 위해 transformer-based 3D reconstruction model이 학습되기도 했다. 하지만, multi-view diffusion model과 reconstruction model을 동시에 학습시키는 것은 multiview cannonical image들을 렌더링 하기 위한 synthetic 3D rigged dataset을 필요로 해서 일반화 성능이 제한적이였다.
이러한 문제점을 해결하기 위해 transformer-based video generation model을 사용해서 reference image와 human pose로 부터 얻은 guidance들을 결합함으로써 multi-view image와 normal map을 예측하였다.
이를 통해 본 논문의 모델은 large-scale, in-the-wild video data에도 학습이 될 수 있어서 일반화 성능을 향상시킬 수 있었다고 한다.
Contribution
- We introduce a method for multi-view canonical pose image generation using a video generation model, trained on unconstrained human pose video data, without the need for synthetic 3D rigged human datasets
- We introduce a new perspective to the problem of 3D animatable avatar reconstruction from inconsistent images, formulating it as a 4D reconstruction task and introducing an efficient 4D Gaussian Splatting model.
- Experiments demonstrates that our method generates high-fidelity animatable avatars from a single image, enabling photorealistic and real-time animation during inference.
Preliminary
Human Parametric Model
SMPL과 SMPL-X가 가장 대표적인 human parametric model이다. 이러한 모델들은 skinning 기법과 blend shape를 활용한다. 특히 SMPL-X는 shape parameter beta와 pose parameter theta를 사용해서 mesh deformation을 표현하고자 하였다.
Diffusion Transformer Model for Video Generation
Diffusion Probabilistic Model은 forward Markov chain을 사용해서 점진적으로 data distribution p[x]에서 얻은 sample x_0를 noise q[x]로 변형한다.
대표적으로 CogVideo model이 있다. 이 모델의 경우 open-source Text-to-Video [T2V] diffusion model로 Transformer 구조를 사용하여 reverse diffusion process를 모델링 한 모델이다. Transformer 모델은 현재의 noisy sample x_t를 처리해서 time step t와 optimal conditioning input c를 이용해서 noise epsilon을 추정한다.
3D Gaussian Splatting
3D Gaussian Splatting은 3D data를 3D Gaussian의 collection으로 표현한다. 각각의 gaussian은 center x, scaling factor s, rotation quarternion q로 표현된다. 또한 gaussian parameter에는 opacity alpha와 color c가 rendering을 위해 추가로 적용되고 view dependent effect를 위해 spherical harmonics를 적용하기 위해 사용된다.
이 Gaussian들을 렌더링하는 과정은 이 gaussian들을 2D Gaussian으로 만들기 위해 image plane에 project시켜서 각각의 pixel마다 alpha compositing을 적용하게 된다.
최근의 방식들은 3D Gaussian Splatting을 dynamic 4D scene을 포착하기 위해 temporal embedding 까지 결합해서 진행한다고 한다.
Method
Overview
주어진 input human image I에 대해 우리의 목표는 3DGS model로 표현한 animatable 3D avatar를 생성하는 것이다. 이 avatar는 inference 동안 새로운 human pose condition을 적용함으로써 움직일 수 있게 된다.
Animation을 촉진하기 위해서 3D avatar를 canonical pose로 복원하는 것이 rigging process를 줄여주기 때문에 매우 중요한 과정이라고 한다. Canonical pose 형태의 3D avatar는 align된 SMPL-X나 다른 off-the-shelf rigging method를 사용해서 rigging할 수 있다.
본 논문의 process는 위의 그림과 같이 2가지 단계로 나눌 수 있다고 한다.
첫 번째 단계에서 reference image-guided video generation model을 사용해서 고퀄리티의 multi-view canonical human image들을 생성하고 이것들의 normal을 input image에서 먼저 뽑아낸다. 그 다음 단계에서 이 생성된 이미지들을 이용해서 3D model을 복원하는 과정으로 진행이 된다.
하지만 생성된 이미지가 고퀄리티라고 할지라고 multi-view inconsistency는 diffusion-based video generation model의 특성상 발생할 가능성이 여전히 존재한다고 한다. 결과적으로 기존의 multi-view reconstruction 기법을 생성한 이미지들에 직접적으로 적용하는 것은 detail을 잃어버리고 artifact가 생길 가능성이 존재하게 된다.
Multi-view Canonical Image Generation
무작위 포즈를 취하고 있는 reference human image가 주어질 때, 첫 번째 단계에서의 목표는 같은 피사체에 대한 multi-view RGB image를 canonical pose로 생성하는 것이다.
이를 위해 본 논문에서는 diffusion transformer-based video generation model을 적용해서 사람을 canonical pose로 재위치시키고 multi-view image를 생성한다. 구체적으로, video generation model이 reference image와 SMPL-X pose condition을 input으로 받아서 multi-view image를 생성하게 된다.
Reference-guided Canonical Video Generation
본 논문의 경우 CogVideo 모델을 확장해서 reference image-guided & SMPL-X pose-guided video generation을 하고자 하였다고 한다. 이 모델은 transformer-based denoiser와 VAE를 포함하고 있고 이것들이 input video나 image들을 고차원의 latent space로 매핑시켜준다.
생성된 multi-view image들이 reference image의 identity를 갖고 있도록 보장하기 위해 reference image의 feature와 latent feature들을 denoising process 동안 섞었다고 한다. 이 경우 reference image feature와 latent feature들을 frame channel을 따라 concatenate 시켜 각각의 DiT block 마다 F_C를 뽑아내게 해서 self-attention을 통한 feature interaction을 가능하게 하였다.
Input human pose와 함께 video generation을 guide 하기 위해 CHAMP에 영향을 받은 lightweight pose guidance network를 결합하였다. 이 network는 canonical SMPL-X normal로 부터 guidance feature를 뽑아내는데 이 feature가 대응하는 noisy latent에 추가되서 denoising process를 이끌게 된다.
Champ에 대한 설명은 아래에 첨부한 posting을 참고하길 바란다.
Champ: Controllable and Consistent Human Image Animation with 3D Parametric Guidance [ECCV 2024]
Champ fudan-generative-vision.github.io이 논문의 경우 엄밀히 따지면 Human Image Animation으로 분류되는 논문이다. Reference Image가 주어지게 되면 YouTube, TikTok 등 다양한 비디오 매체에서 가져온 motion들을 학습
phj6724.tistory.com
Joint Multi-view RGB and Normal Generation
Normal supervision과 함께 multi-view reconstruction을 향상시키기 위해 video generation framework를 확장해서 동시에 reference image와 이에 대응하는 normal map에 conditining된 multi-view RGB image와 normal map을 생성할 수 있도록 했다고 한다.
본 논문에서는 30개의 DiT block으로 구성되어 있는 CogVideo-2B architecture를 base model로 사용했다고 한다. 여기서는 처음 3개의 DiT block을 2개의 branch로 수정해서 하나는 RGB, 다른 하나는 normal map을 동시에 생성할 수 있도록 했다고 한다. 효과적으로 image와 normal feature들을 결합하기 위해 먼저 가운데 24개의 DiT block들의 weight를 공유하고, 모든 공유하고 있는 3개의 DiT block과 가운데 있는 DiT block들의 head에 multi-modal attention module을 삽입했다고 한다. Multi-modal attention module을 삽입하기 위해 token level로 RGB와 normal feature들을 결합해서 F_m를 생성했다고 한다.
Training Strategy
Model의 일반화 성능을 향상시키기 위해 제한적인 large-scale synthetic dataset의 돌파구를 찾아야만 했고, 본 논문에서는 먼저 video generation model을 large-scale in-the-wild video 10만개 [single human]로 학습을 시켰다고 한다. GT normal map을 in-the-wild video에서는 불가능하기 때문에 Sapiens와 Multi-HMR을 사용해서 normal map과 SMPL-X human pose를 위한 pseudo label을 생성했다고 한다.
Training 동안에는 무작위로 이 video에서 frame들을 sampling 해서 short video segment를 예측하는 과정에 활용했다고 한다.
Pre-training에 이어 synthetic 3D data asset을 만들어서 GT normal map을 따라 self-rotate하는 RGB image를 얻었다고 한다. 모델의 일반화능력을 유지하기 위해 본 논문에서는 10%는 in-the-wild data로, 나머지 90%는 synthetic data로 구성했다고 한다.
3D Reconstruction from Inconsistent Images
일단 multi-view image들이 diffusion model에 의해 생성되면, canonical space에서 3D Gaussian human model을 복원할 수 있다. 하지만, 생성된 image의 view에 걸쳐 애매한 appearance variation들 때문에 직접적으로 3DGS optimization을 적용하는 것은 복원된 avatar의 퀄리티를 떨어뜨릴 수도 있다.
Problem Formulation
Inconsistent view로 부터 3D reconstruction을 할 때의 어려움을 해결하기 위해서는 각각의 view에서의 appearance variation을 다룰 수 있어야 한다. 이러한 inconsistency를 바라보는 것은 temporal sequence 안에서의 dynamic variation과 유사하기 때문에 이러한 3D reconstruction 문제를 4D reconstruction task로 재구성할 수 있다.
최근의 4DGS의 성공에 영감을 받아서 효과적인 최적화와 렌더링을 목표로 하였다고 한다.
4DGS framework는 canonical space와 per-frame deformation module로 구성되어 있다. Canonical space는 첫 번째 frame에서 정의된 static 3D model을 나타내고, per-frame deformation module은 각각의 3D Gaussian의 shape/color variation을 추정해서 video sequence에 fitting시킨다.
본 논문의 목표는 inconsistent image에서 canonical space와 deformation module을 최적화하는 것으로 바뀌게 된다. 일단 최적화가 되면 이 과정은 canonical space에서의 shape를 포현하는 multi-view consistent Gaussian avatar model을 생성하게 된다.
4D Gaussian Splatting Model
기존의 dynamic Gaussian splatting method들을 뒤따라서 3D Gaussian의 deformation은 deformation field network에 의해 modeling 된다. 본 연구원들은 multi-resolution HexPlane과 compact MLP로 구성되어 있는 효율적인 spatial-temporal encoder를 사용했다고 한다.
이 구조는 temporal & spatial feature들 모두를 6개의 2D voxel plance에 걸쳐 encoding하여 temporal effect를 결합한다고 한다.
Shape Regularization
Multi-view generation에서 RGB image와 normap map들이 생성되고, surface normal regularization을 이용해서 4DGS optimization process를 정규화 할 수 있도록 해준다. 구체적으로 L_1 loss를 렌더링한 normal에 적용을 해서 최적화를 guide 한다.
과도하게 크거나 긴 3D Gaussian ellipsoid들 때문에 avatar animation에서 발생할 수 있는 artifact들을 줄이기 위해 anisotropy regularizer를 결합해서 3D Gaussian의 형태를 제어하고자 했다고 한다.
4DGS Optimization
기존의 reconstruction method들과 함께 본 논문에서는 L1 loss를 color와 mask supervision에 사용하였고, grid-based total variation loss도 추가했다고 한다.
Human mask label에 대해 SAM2를 활용해서 pseudo GT mask를 얻었고, 최종 reconstruction loss는 다음과 같다고 한다.
Point Cloud Initialization of 4DGS
Point cloud에 대한 초기화는 3DGS optimization에 있어서는 매우 중요한 작업이다. 본 논문에서는 coarse mesh를 multi-view image에서 생성하는 것에서 시작해서 3DGS point들을 초기화 하기위해 surface에서의 point들을 sampling 했다.
구체적으로 예측한 SMPL-X mesh를 생성한 multi-view RGB mask와 normal map에 fitting 시키기 위해 이 mesh를 변형시키고, Nvidiffrast rasterizer를 사용해서 변형한 mesh의 foreground와 normal map을 렌더링했다고 한다.
Multi-view image들에서 inconsistency에 의해 생기는 artifact들을 줄이기 위해 Laplacian loss와 edge loss를 적용해서 mesh deformation을 정규화 하였다고 한다.
Animation
복원된 avatar는 canonical space에서 SMPL-X와 공간적으로 align된 상태로 표현이 된다. 이 alignment는 SMPL-X driving parameter들을 사용해서 복원한 아바타를 움직이게 하고 3D 에서 완전히 animatable 하게 만들어 준다.
더 큰 변형이 있을 때 옷 같은 것들을 더 잘 다루게 하기 위해 SMPL-X skinning weight들을 전체 human canonical space에 걸쳐 transfer 하는 diffusion-based skinning method를 적용하였다고 한다.
Animation 동안에는 skinning weight들이 bilinear interpolation을 통해 space에서 weight들을 querying 함으로써 얻어진다.
Experiment
Training Dataset
- 200,000 dynamic human videos from various online sources
- Fine-tuning phase : Leverage a combination of public synthetic 3D datasets to render multi-view images
- 2K2K
- THuman2.0, THuman2.1
- CustomHumans
- TWindom
- RenderPeople
Inference
RTX-3090 1개로 canonical space의 animatable 3D avatar를 몇분만에 생성했다고 한다. 구체적으로 말하면, multi-view RGB, normal image들 30 frame 정도를 생성하는데 5분정도 걸렸다고 한다.
4DGS optimization도 5분 정도 걸렸고, 일단 multi-view reconstruction이 끝난다면 time parameter $t$를 0으로 설정해서 최종 Gaussian point cloud를 얻는다고 한다.
최적화가 끝난다면 avatar는 real time으로 rendering, animating이 가능해진다고 한다.
Comparison with Existing Methods
Evaluation Dataset
Human4DiT에서 50개의 rigged human avatar들을 선택해서 multi-view canonical-pose image generation과 3D reconstruction metric의 성능을 평가했다.
Animation metric에 대해서는 Blender를 사용해서 GT video sequence들을 얻고 생성된 human model들을 drive 하기 위해 motion sequence를 뽑아냈다고 한다.
그 뒤 photometric metric을 foreground 영역에서 계산해서 animation에 대한 성능을 평가했다고 한다.
Baselines
본 논문의 pipeline은 canonical multi-view generation, multi-view reconstruction, human animation 단계를 포괄한다.
Multi-view generation task에서는 SOTA model인 MagicMan과 CHAMP를 baseline으로 사용했다고 한다. 주목할 점은 CHAMP가 self-rotated synthetic human dataset에 대해서는 학습을 하지 않았기 때문에 본 논문에서는 이를 fine-tuning 해서 비교를 했다고 한다.
Multi-view canonical human reconstruction task에 대해서는 animatable human generation method, CharacterGen과 비교를 했다고 한다. 또한 static clothed human reconstruction method인 SiTH, MagicMan, LGM을 생성한 canonical pose image input을 사용해서 비교를 했다고 한다.
Evaluation on Multi-view Canonical Generation
Evaluation on Canonical Shape Reconstruction
Evaluation on Human Animation
Evaluation on canonical shape reconstruction
Ablation Study
Conclusion
In this work, we present a robust approach to generate animatable human avatars from a single image. We introduce a reference image-guided video generation model to produce high-quality multi-view canonical human images and their corresponding normal maps. To handl view inconsistencies, we propose a 4D Gaussian Splatting-based method for reconstructing high-fidelity 3D avatars. Comprehensive evaluation demonstrates that our method enables photorealistic, real-time animation of 3D human avatars from in-the-wild images.
'Paper Review > 3D Gaussian Splatting' 카테고리의 다른 글
3D Gaussian Splatting for Real-Time Radiance Field Rendering [SIGGRAPH 2023] (2) | 2024.12.12 |
---|