Aprendizagem pessoal com IA
e orientação prática

JoyGen: Ferramenta de edição de vídeo de retratos falados em 3D com reconhecimento de profundidade e orientada por áudio

Introdução geral

O JoyGen é uma estrutura inovadora de geração de vídeos de rostos falantes em dois estágios que se concentra em resolver o problema da geração de expressões faciais orientadas por áudio. Desenvolvido por uma equipe da Jingdong Technology, o projeto emprega técnicas avançadas de reconstrução 3D e métodos de extração de recursos de áudio para capturar com precisão os recursos de identidade e os coeficientes de expressão do locutor para sincronização labial e síntese visual de alta qualidade. Ao integrar recursos de áudio e mapas de profundidade facial, ele oferece supervisão abrangente para uma sincronização labial precisa. O projeto não só é compatível com drivers de áudio em chinês e inglês, mas também oferece um pipeline completo de treinamento e inferência, o que o torna uma poderosa ferramenta de código aberto.

JoyGen: Ferramenta de edição de vídeo falado em retratos 3D com reconhecimento de profundidade e orientada por áudio-1


 

Lista de funções

  • Geração e edição de expressões faciais em 3D orientadas por áudio
  • Tecnologia de áudio com sincronização labial precisa
  • Suporta entrada de áudio em chinês e inglês
  • Síntese visual para percepção de profundidade em 3D
  • Função de retenção da identidade facial
  • Recursos de geração e edição de vídeo de alta qualidade
  • Treinamento completo e suporte à estrutura de raciocínio
  • Modelos pré-treinados permitem uma rápida implementação
  • Suporte para treinamento de conjuntos de dados personalizados
  • Fornecer ferramentas detalhadas de pré-processamento de dados

 

Usando a Ajuda

1. configuração ambiental

1.1 Requisitos de infraestrutura

  • GPUs compatíveis: V100, A800
  • Versão do Python: 3.8.19
  • Dependências do sistema: ffmpeg

1.2 Etapas de instalação

  1. Crie e ative o ambiente conda:
conda create -n joygen python=3.8.19 ffmpeg
conda activate joygen
pip install -r requirements.txt
  1. Instale a biblioteca Nvdiffrast:
git clone https://github.com/NVlabs/nvdiffrast
cd nvdiffrast
pip install .
  1. Download do modelo pré-treinado
    A partir dos dados fornecidoslink para downloadObtenha o modelo pré-treinado e coloque-o de acordo com a estrutura de diretório especificada no. /pretrained_models/Catálogo.

2. fluxo de uso

2.1 Processo de raciocínio

Executar o pipeline de inferência completo:

bash scripts/inference_pipeline.sh arquivos de áudio arquivos de vídeo diretório de resultados

Executar o processo de raciocínio em etapas:

  1. Extração de coeficientes de expressão facial do áudio:
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
  1. Renderiza mapas de profundidade quadro a quadro usando novos coeficientes de expressão:
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
  1. Geração de animações faciais com base em recursos de áudio e mapas de profundidade facial:
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 Processo de treinamento

  1. Pré-processamento de dados:
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
  1. Examinar dados pré-processados e gerar listas de treinamento:
python -u preprocess_dataset_extra.py data_dir
  1. Iniciar o treinamento:
    Modifique o arquivo config.yaml e execute-o:
accelerate launch --main_process_port 29501 --config_file config/accelerate_config.yaml train_joygen.py
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " JoyGen: Ferramenta de edição de vídeo de retratos falados em 3D com reconhecimento de profundidade e orientada por áudio

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil