Introdução geral
O LiteAvatar é uma ferramenta de código aberto desenvolvida pela equipe HumanAIGC (parte da Ali) que se concentra na geração de animações faciais a partir de avatares 2D acionados por áudio em tempo real. Ele é executado a 30 quadros por segundo (fps) somente com a CPU, o que o torna particularmente adequado para cenários de baixo consumo de energia, como bate-papos com vídeo 2D em tempo real ou aplicativos de avatar em dispositivos móveis. O LiteAvatar combina reconhecimento de fala (ASR) e previsão de boca para gerar expressões faciais sincronizadas e movimentos de boca com base nos recursos de áudio recebidos, com efeitos de animação suaves e naturais. O projeto está hospedado no GitHub, com código completo e documentação disponíveis para os desenvolvedores acessarem gratuitamente e desenvolverem conforme necessário. Seja para entretenimento, educação ou hospedagem virtual, essa ferramenta demonstra a combinação perfeita de leveza e alto desempenho.
Implementação da versão interativa em tempo real do LiteAvatar: https://github.com/HumanAIGC-Engineering/OpenAvatarChat
Lista de funções
- Geração de animação orientada por áudioGeração de expressões faciais e animações de boca de avatares em tempo real com a entrada de áudio.
- Operação leveAnimações suaves a 30 fps podem ser obtidas com o uso exclusivo da CPU, sem necessidade de suporte da GPU.
- Previsão de sincronização da bocaO modelo ASR é usado para extrair recursos de áudio e gerar movimentos da boca que correspondam ao conteúdo da fala.
- Suporte para dispositivos móveisO modelo otimizado é adaptado a dispositivos de baixo consumo de energia e é adequado para telefones celulares ou tablets.
- Suporte a código abertoCódigo-fonte: O código-fonte completo é fornecido, permitindo que os usuários personalizem a funcionalidade ou a integrem a outros projetos.
- Capacidade de processamento em tempo realProcessamento de baixa latência de entradas de áudio: o processamento de baixa latência de entradas de áudio garante que a animação seja altamente sincronizada com o som.
Usando a Ajuda
O LiteAvatar é um projeto de código aberto baseado no GitHub que exige que os usuários tenham uma certa base técnica para instalar e usar. A seguir, apresentamos um guia detalhado de instalação e uso para ajudá-lo a começar a usar rapidamente essa ferramenta de avatar 2D acionada por áudio.
Processo de instalação
- Preparação ambiental
- Certifique-se de ter o Python 3.8 ou superior instalado em seu computador. Isso pode ser feito com o comando
python --versão
Verifique a versão. - Instale o Git, que é usado para fazer download do código do GitHub; os usuários do Windows podem fazer download do Git no site oficial, e os usuários do Linux ou do macOS podem instalá-lo por meio de um gerenciador de pacotes (por exemplo
sudo apt install git
). - Prepare um terminal que ofereça suporte à linha de comando (por exemplo, CMD, PowerShell para Windows ou Terminal para Linux/macOS).
- Certifique-se de ter o Python 3.8 ou superior instalado em seu computador. Isso pode ser feito com o comando
- Baixar o projeto LiteAvatar
- Abra um terminal e digite o seguinte comando para clonar o repositório de código:
git clone https://github.com/HumanAIGC/lite-avatar.git
- Quando a clonagem estiver concluída, vá para o diretório do projeto:
cd lite-avatar
- Abra um terminal e digite o seguinte comando para clonar o repositório de código:
- Instalação de dependências
- O projeto requer algum suporte à biblioteca Python. Execute o seguinte comando para instalar as dependências:
pip install -r requirements.txt
- no caso de
requisitos.txt
Não há dependências específicas listadas na documentação, mas você pode consultar a documentação do projeto; as dependências comuns podem incluirnumérico
etocha
(versão CPU),escopo do modelo
etc. Exemplo de instalação manual:pip install numpy torch modelscope
- O projeto requer algum suporte à biblioteca Python. Execute o seguinte comando para instalar as dependências:
- Verificar a instalação
- Após a conclusão da instalação, execute um comando de teste simples (o comando exato é baseado no LEIAME do projeto, por exemplo:
python demo.py
- Se nenhum erro for relatado, o ambiente foi configurado com êxito.
- Após a conclusão da instalação, execute um comando de teste simples (o comando exato é baseado no LEIAME do projeto, por exemplo:
Uso
A função principal do LiteAvatar é gerar animações a partir de avatares acionados por áudio. Aqui estão as etapas detalhadas:
Preparação de arquivos de áudio
- formato de áudioSuporte a formatos comuns, como
.wav
talvez.mp3
. Recomenda-se usar áudio mono nítido com uma taxa de amostragem de cerca de 16 kHz para obter melhores resultados. - Fonte de áudioÁudio: Pode ser sua voz gravada ou áudio extraído de um vídeo. Ferramenta recomendada: Audacity (software gratuito de edição de áudio).
Execução de animações em tempo real
- procedimento de acionamento
- No diretório do projeto, execute o script principal (supondo que o script
main.py
(O nome do arquivo específico é baseado no LEIAME):python main.py --audio_path seu_arquivo_de_audio.wav
- Descrição do parâmetro:
--caminho_de_áudio
Especifica o caminho do arquivo de áudio.--output
Vídeo animado: parâmetro opcional para especificar o caminho para salvar o vídeo animado gerado; o padrão pode ser exibido diretamente.
- No diretório do projeto, execute o script principal (supondo que o script
- Teste de entrada em tempo real
- Se a entrada de microfone for suportada, tente o modo em tempo real (é necessário verificar se o README fornece esse recurso). Exemplo de comando:
python main.py --live
- O programa escuta a entrada do microfone e gera animações em tempo real.
- Se a entrada de microfone for suportada, tente o modo em tempo real (é necessário verificar se o README fornece esse recurso). Exemplo de comando:
Exibir resultados
- Saída de animaçãoDepois de executado, o programa exibe uma animação do avatar na tela ou gera um arquivo de vídeo (como um
output.mp4
). - Parâmetros de ajusteSe a animação não for satisfatória, você poderá consultar a documentação para ajustar os parâmetros do modelo, como a taxa de quadros ou a sensibilidade da boca (dependendo da implementação do código).
Operação da função em destaque
Geração de animação orientada por áudio
- mover::
- Prepare o arquivo de áudio, por exemplo.
teste.wav
. - Executar comando:
python main.py --audio_path test.wav --output result.mp4
- O programa chama o modelo ASR do ModelScope para extrair recursos de áudio e, em seguida, gera a animação por meio do modelo de previsão de boca.
- Prepare o arquivo de áudio, por exemplo.
- efeitoO formato da boca e a expressão do avatar mudam de acordo com o áudio, por exemplo, a boca se abre ao dizer "olá" e o ritmo é mais forte ao cantar.
Implementação de dispositivos móveis
- pré-requisitosModelos: os modelos precisam ser exportados para um formato leve (por exemplo, ONNX) e integrados ao celular.
- equipamento::
- Converta o modelo localmente (scripts específicos a serem adicionados à documentação do projeto, o exemplo pressupõe que o
export.py
):python export.py --model lite_avatar_model.pth --output lite_avatar.onnx
- comandante-em-chefe (militar)
.onnx
Os arquivos são implantados em dispositivos móveis e executados usando estruturas habilitadas para ONNX, como o NCNN.
- Converta o modelo localmente (scripts específicos a serem adicionados à documentação do projeto, o exemplo pressupõe que o
- no finalAnimação em tempo real de baixo consumo de energia em telefones celulares, adequada para aplicativos de bate-papo por vídeo.
advertência
- otimização do desempenhoSe a execução estiver atrasada, você poderá reduzir a taxa de quadros (por exemplo, de 30 fps para 15 fps) modificando o arquivo de configuração ou os parâmetros da linha de comando.
- ajustar os componentes durante o testeSe você receber um erro, verifique se as versões das dependências coincidem ou consulte a página de problemas do GitHub para obter ajuda da comunidade.
- escalabilidadeSe quiser adicionar novos recursos (por exemplo, controle de emojis), você pode bifurcar o projeto e modificar o código. A equipe do HumanAIGC dá as boas-vindas aos colaboradores para que enviem Pull Requests.
Com essas etapas, você pode instalar e usar facilmente o LiteAvatar para experimentar o processo de geração de animação de avatar orientado por áudio. Essa ferramenta oferece uma solução eficiente e conveniente tanto para testes de desenvolvimento quanto para aplicativos do mundo real.