Introdução geral
O TANGO (Co-Speech Gesture Video Reenactment with Hierarchical Audio-Motion Embedding and Diffusion Interpolation) é uma estrutura de código aberto desenvolvida em conjunto pela Universidade de Tóquio e pelo CyberAgent AI Labs para a geração colaborativa de vídeos com gestos de fala. O projeto usa o espaço hierárquico de incorporação de áudio e movimento e a interpolação por difusão para gerar automaticamente vídeos de gestos de personagens naturais, suaves e sincronizados com base na fala de entrada. O TANGO consegue gerar gestos e ações de alta qualidade por meio de um método inovador de recuperação de gráficos de ações, que primeiro recupera o videoclipe de referência que mais se aproxima da fala alvo em um espaço de incorporação de áudio e movimento implicitamente hierárquico e, em seguida, usa um modelo de difusão para interpolação de ações. geração de ações. Esse projeto não apenas avança a pesquisa sobre a interação homem-computador orientada por IA, mas também fornece suporte técnico importante para aplicativos como âncoras virtuais e humanos digitais.
O TANGO de código aberto atual só suporta áudio de até 8s. Antes de usar, você precisa segmentar o arquivo de áudio!
Trabalhe com a ferramenta Voice Lip Sync para obter um projeto completo de pessoa digital: Sync ,Wav2Lip Ultralight Digital Human. O fluxo de trabalho completo é: Ultralight Digital Human para fazer o contraponto, TANGO para gerar movimentos corporais, FaceFusion para mudar os rostos, perfeito!
Lista de funções
- Sincronização de gestos altamente precisa: sincronize com precisão qualquer áudio com os gestos no vídeo.
- Suporte a vários idiomas: funciona com uma variedade de idiomas e sons, incluindo faces CGI e sons sintetizados.
- Código aberto e gratuito: o código é totalmente público, e os usuários podem usá-lo e modificá-lo livremente.
- Demonstração interativa: fornece uma demonstração on-line em que os usuários podem carregar arquivos de vídeo e áudio para experimentar.
- Modelos de pré-treinamento: forneça uma variedade de modelos de pré-treinamento, para que os usuários possam usar diretamente ou no treinamento secundário.
- Código de treinamento completo: inclui o código de treinamento para o discriminador de sincronização de gestos e o modelo TANGO.
Usando a Ajuda
1. configuração ambiental
1.1 Requisitos básicos:
- Versão do Python: 3.9.20
- Versão CUDA: 11.8
- Espaço em disco: pelo menos 35 GB (para armazenar modelos e diagramas pré-calculados)
1.2 Etapas de instalação:
Armazém do projeto de clonagem #
git clone https://github.com/CyberAgentAILab/TANGO.git
cd TANGO
git clone https://github.com/justinjohn0306/Wav2Lip.git
git clone https://github.com/dajes/frame-interpolation-pytorch.git
# Criar ambiente virtual (opcional)
conda create -n tango python==3.9.20
conda activate tango
Dependências de instalação do #
pip install -r . /pre-requirements.txt
pip install -r . /requirements.txt
2. fluxo de uso
2.1 Início rápido:
- Execute o script de raciocínio:
python app.py
Na primeira execução, o sistema baixa automaticamente os arquivos de ponto de verificação necessários e os diagramas pré-calculados. A geração de aproximadamente 8 segundos de vídeo leva cerca de 3 minutos de tempo de processamento.
2.2 Criação de função personalizada:
- Se você precisar criar uma figura de ação para um novo personagem:
python create_graph.py
Entre outras coisas, o projeto gera vídeos com marcas d'água TANGO por padrão, semelhantes à imagem abaixo:
Essencialmente, é uma chamada para um ffmpeg local que compõe o vídeo original e a imagem com marca d'água em um novo vídeo.
Se não quiser uma marca d'água, você pode alterarapp.py
Médio:
gr.Video(value=". /datasets/cached_audio/demo1.mp4", label="Demo 0", , watermark=". /datasets/watermark.png") # Modificado para gr.Video(value=". /datasets/cached_audio/demo1.mp4", label="Demo 0")
Acesso não local, modificações necessárias:
demo.launch(server_name="0.0.0.0", server_port=7860)
Abra-o novamente para ver que não há marca d'água no vídeo carregado.
O vídeo resultante não tem áudio, portanto, você precisa sintetizar manualmente o áudio nele.
/usr/bin/ffmpeg -i outputs/gradio/test_0/xxx.mp4 -i gen_audio.wav -c:v libx264 -c:a aac result_wav.mp4
Isso pode ser notado: não há nada de errado com os movimentos do corpo, mas o formato da boca está completamente errado.
Isso não é verdade. Ultralight Digital Human E isso foi útil?
Processo de uso
- Acesso ao servidor local: abrir no navegador
http://localhost:3000
. - Upload Video and Audio : Carregue os arquivos de áudio e vídeo que deseja sincronizar na caixa de entrada.
- Executar a sincronização de gestos: Toque no botão "Sync" e o sistema executará automaticamente o processo de sincronização de gestos.
- Visualização e download de resultados: Após a conclusão da sincronização, você pode visualizar os resultados e fazer o download dos arquivos de vídeo sincronizados.
- Use a demonstração interativa: Carregue arquivos de vídeo e áudio na página de demonstração para experimentar o efeito de sincronização de gestos em tempo real.
- Gerenciar projetos: Visualize e gerencie todos os projetos carregados na página My Projects, com suporte para controle de versão e colaboração.
Recursos avançados
- Sincronização inteligente de gestos: aprimore a apresentação de seu conteúdo de vídeo com a sincronização inteligente de gestos fornecida pela IA.
- Suporte a vários idiomas: selecione diferentes idiomas e vozes de acordo com as necessidades de seu projeto.
- Desenvolvimento personalizado: como o TANGO é de código aberto, os usuários podem desenvolvê-lo de acordo com suas necessidades.