返回排行榜

yerfor/GeneFacePlusPlus

Python

GeneFace++: Generalized and Stable Real-Time 3D Talking Face Generation; Official Code

nerftalking-face-generation
Star 增长趋势
Star
1.8k
Forks
254
周增长
Issues
131
5001k1.5k
2024年2月2024年11月2025年9月2026年7月
制品库PyPIpip install genefaceplusplus
README

GeneFace++: Generalized and Stable Real-Time 3D Talking Face Generation

arXiv| GitHub Stars | 中文文档

This is the official implementation of GeneFace++ Paper with Pytorch, which enables high lip-sync, high video-reality and high system-efficiency 3D talking face generation. You can visit our Demo Page to watch demo videos and learn more details.



🔥MimicTalk Released

We have released the code of MimicTalk (https://github.com/yerfor/MimicTalk/), which is a SOTA NeRF-based person-specific talking face method and achieves better visual quality and enables talking style control.

You may also interested in

Quick Start!

We provide a guide for a quick start in GeneFace++.

  • Step 1: Follow the steps in docs/prepare_env/install_guide.md, create a new python environment named geneface, and download 3DMM files into deep_3drecib/BFM.

  • Step 2: Download pre-processed dataset of May(Google Drive or BaiduYun Disk with password 98n4), and place it here data/binary/videos/May/trainval_dataset.npy

  • Step 3: Download pre-trained audio-to-motino model audio2motion_vae.zip (Google Drive or BaiduYun Disk with password 9cqp) and motion-to-video checkpoint motion2video_nerf.zip, which is specific to May (in this Google Drive or in thisBaiduYun Disk with password 98n4), and unzip them to ./checkpoints/

After these steps,your directories checkpoints and data should be like this:

> checkpoints
    > audio2motion_vae
    > motion2video_nerf
        > may_head
        > may_torso
> data
    > binary
        > videos
            > May
                trainval_dataset.npy
  • Step 4: activate geneface Python environment, and execute:
export PYTHONPATH=./
python inference/genefacepp_infer.py --a2m_ckpt=checkpoints/audio2motion_vae --head_ckpt= --torso_ckpt=checkpoints/motion2video_nerf/may_torso --drv_aud=data/raw/val_wavs/MacronSpeech.wav --out_name=may_demo.mp4

Or you can play with our Gradio WebUI:

export PYTHONPATH=./
python inference/app_genefacepp.py --a2m_ckpt=checkpoints/audio2motion_vae --head_ckpt= --torso_ckpt=checkpoints/motion2video_nerf/may_torso

Or use our provided Google Colab and run all cells in it.

Train GeneFace++ with your own videos

Please refer to details in docs/process_data and docs/train_and_infer.

Below are answers to frequently asked questions when training GeneFace++ on custom videos:

  • Please make sure that the head segment occupies a relatively large region in the video (e.g., similar to the provided May.mp4). Or you need to hand-crop your training video. issue
  • Make sure that the talking person appears in every frame of the video, otherwise the data preprocessing pipeline may be failed.
  • We only tested our code on Liunx (Ubuntu/CentOS). It is welcome that someone who are willing to share their installation guide on Windows/MacOS.

ToDo

  • Release Inference Code of Audio2Motion and Motion2Video.
  • Release Pre-trained weights of Audio2Motion and Motion2Video.
  • Release Training Code of Motino2Video Renderer.
  • Release Gradio Demo.
  • Release Google Colab.
  • **Release Training Code of Audio2Motion and Post-Net. (Maybe 2024.06.01) **

Citation

If you found this repo helpful to your work, please consider cite us:

@article{ye2023geneface,
  title={GeneFace: Generalized and High-Fidelity Audio-Driven 3D Talking Face Synthesis},
  author={Ye, Zhenhui and Jiang, Ziyue and Ren, Yi and Liu, Jinglin and He, Jinzheng and Zhao, Zhou},
  journal={arXiv preprint arXiv:2301.13430},
  year={2023}
}
@article{ye2023geneface++,
  title={GeneFace++: Generalized and Stable Real-Time Audio-Driven 3D Talking Face Generation},
  author={Ye, Zhenhui and He, Jinzheng and Jiang, Ziyue and Huang, Rongjie and Huang, Jiawei and Liu, Jinglin and Ren, Yi and Yin, Xiang and Ma, Zejun and Zhao, Zhou},
  journal={arXiv preprint arXiv:2305.00787},
  year={2023}
}
相关仓库
NVlabs/instant-ngp

Instant neural graphics primitives: lightning fast NeRF and more

CudaOtherneural-networkmachine-learning
nvlabs.github.io/instant-ngp
17.5k2.1k
nerfstudio-project/nerfstudio

A collaboration friendly studio for NeRFs

PythonPyPIApache License 2.0nerfpytorch
docs.nerf.studio
11.8k1.7k
bmild/nerf

Code release for NeRF (Neural Radiance Fields)

Jupyter NotebookMIT Licensenerfneural-radiance-fields
tancik.com/nerf
10.9k1.4k
ashawkey/stable-dreamfusion

Text-to-3D & Image-to-3D & Mesh Exportation with NeRF + Diffusion.

PythonPyPIApache License 2.0text-to-3dgui
8.9k767
MrNeRF/awesome-3D-gaussian-splatting

Curated list of papers and resources focused on 3D Gaussian Splatting, intended to keep pace with the anticipated surge of research in the coming months.

HTMLMIT Licensegaussian-splattingnerf
8.8k536
lipku/LiveTalking

Real time interactive streaming digital human

PythonPyPIApache License 2.0digital-humannerf
livetalking.ai
8.5k1.4k
awesome-NeRF/awesome-NeRF

A curated list of awesome neural radiance fields papers

TeXMIT Licensenerf
6.8k599
NVlabs/tiny-cuda-nn

Lightning fast C++/CUDA neural network framework

C++Otherneural-networkdeep-learning
4.5k572
hku-mars/FAST-LIVO2

FAST-LIVO2: Fast, Direct LiDAR-Inertial-Visual Odometry

C++GNU General Public License v2.03d-reconstructioncolored-point-cloud
4.4k807
google-research/multinerf

A Code Release for Mip-NeRF 360, Ref-NeRF, and RawNeRF

PythonPyPIApache License 2.0nerfneural-radiance-fields
3.8k354
Anttwo/SuGaR

[CVPR 2024] Official PyTorch implementation of SuGaR: Surface-Aligned Gaussian Splatting for Efficient 3D Mesh Reconstruction and High-Quality Mesh Rendering

C++Other3d-gaussian-splatting3dgs
anttwo.github.io/sugar/
3.5k307
MaximeVandegar/Papers-in-100-Lines-of-Code

Implementation of papers in 100 lines of code.

PythonPyPIMIT Licensepythonresearch
2.8k255