일반 소개
조이젠은 오디오 기반 표정 생성 문제를 해결하는 데 중점을 둔 혁신적인 2단계 말하는 얼굴 비디오 생성 프레임워크입니다. 징동 테크놀로지 팀이 개발한 이 프로젝트는 고급 3D 재구성 기술과 오디오 특징 추출 방법을 사용하여 고품질 입술 동기화 및 시각 합성을 위해 화자의 신원 특징과 표현 계수를 정확하게 캡처하며, 조이젠 프레임워크는 첫째, 오디오 기반 입술 동작 생성, 둘째, 시각적 외모 합성이라는 두 가지 주요 단계로 구성됩니다. 오디오 기능과 얼굴 깊이 맵을 통합하여 정확한 입술 동기화를 위한 포괄적인 감독을 제공합니다. 이 프로젝트는 중국어와 영어 오디오 드라이버를 지원할 뿐만 아니라 완벽한 훈련 및 추론 파이프라인을 제공하여 강력한 오픈 소스 툴입니다.

기능 목록
- 오디오 기반 3D 표정 생성 및 편집
- 정밀한 립싱크 오디오 기술
- 중국어 및 영어 오디오 입력 지원
- 3D 깊이 인식을 위한 시각적 합성
- 얼굴 신원 유지 기능
- 고품질 동영상 생성 및 편집 기능
- 완벽한 교육 및 추론 프레임워크 지원
- 사전 학습된 모델로 신속한 배포 지원
- 맞춤형 데이터 세트 교육 지원
- 상세한 데이터 전처리 도구 제공
도움말 사용
1. 환경 설정
1.1 인프라 요구 사항
- 지원 GPU: V100, A800
- Python 버전: 3.8.19
- 시스템 종속성: ffmpeg
1.2 설치 단계
- 콘다 환경을 만들고 활성화합니다:
conda create -n joygen python=3.8.19 ffmpeg
conda activate joygen
pip install -r requirements.txt
- Nvdiffrast 라이브러리를 설치합니다:
git clone https://github.com/NVlabs/nvdiffrast
cd nvdiffrast
pip install .
- 사전 학습된 모델 다운로드
제공된 정보에서다운로드 링크사전 학습된 모델을 가져와서 지정된 디렉터리 구조에 따라./pretrained_models/
카탈로그.
2. 사용 흐름
2.1 추론 프로세스
전체 추론 파이프라인을 실행합니다:
bash scripts/inference_pipeline.sh 音频文件 视频文件 结果目录
추론 프로세스를 단계별로 실행합니다:
- 오디오에서 표정 계수 추출하기:
python inference_audio2motion.py --a2m_ckpt ./pretrained_models/audio2motion/240210_real3dportrait_orig/audio2secc_vae --hubert_path ./pretrained_models/audio2motion/hubert --drv_aud ./demo/xinwen_5s.mp3 --seed 0 --result_dir ./results/a2m --exp_file xinwen_5s.npy
- 새로운 표현 계수를 사용하여 뎁스 맵을 프레임 단위로 렌더링합니다:
python -u inference_edit_expression.py --name face_recon_feat0.2_augment --epoch=20 --use_opengl False --checkpoints_dir ./pretrained_models --bfm_folder ./pretrained_models/BFM --infer_video_path ./demo/example_5s.mp4 --infer_exp_coeff_path ./results/a2m/xinwen_5s.npy --infer_result_dir ./results/edit_expression
- 오디오 특징과 얼굴 깊이 맵을 기반으로 얼굴 애니메이션을 생성합니다:
CUDA_VISIBLE_DEIVCES=0 python -u inference_joygen.py --unet_model_path pretrained_models/joygen --vae_model_path pretrained_models/sd-vae-ft-mse --intermediate_dir ./results/edit_expression --audio_path demo/xinwen_5s.mp3 --video_path demo/example_5s.mp4 --enable_pose_driven --result_dir results/talk --img_size 256 --gpu_id 0
2.2 교육 과정
- 데이터 전처리:
python -u preprocess_dataset.py --checkpoints_dir ./pretrained_models --name face_recon_feat0.2_augment --epoch=20 --use_opengl False --bfm_folder ./pretrained_models/BFM --video_dir ./demo --result_dir ./results/preprocessed_dataset
- 사전 처리된 데이터를 검토하고 교육 목록을 생성합니다:
python -u preprocess_dataset_extra.py data_dir
- 교육을 시작하세요:
config.yaml 파일을 수정하고 실행합니다:
accelerate launch --main_process_port 29501 --config_file config/accelerate_config.yaml train_joygen.py
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...