Acesso no exterior: www.kdjingpai.com
Ctrl + D Marcar este site como favorito

O Index-AniSora é um modelo de geração de vídeo de anime desenvolvido e de código aberto pela Bilibili e hospedado no GitHub. Ele usa o CogVideoX-5B e o Wan2.1-14B como modelo de base e oferece suporte à geração de diversos vídeos de estilo anime, incluindo episódios de anime, animação original doméstica, adaptações de mangá, conteúdo VTuber, PVs de anime e vídeos de estilo spoof. O projeto combina os resultados dos artigos aceitos no IJCAI'25, fornece treinamento completo e código de inferência e oferece suporte ao hardware Rise 910B NPU da Huawei. O Index-AniSora implementa a geração de imagem para vídeo, a interpolação de quadros e a animação guiada localmente com dezenas de milhões de conjuntos de dados de alta qualidade e um módulo de máscara espaço-temporal. Seu conjunto de dados de avaliação contém 948 clipes de vídeo animados, combinados com dicas de texto geradas pelo Qwen-VL2 para garantir o alinhamento preciso do texto ao conteúdo do vídeo. O projeto é totalmente de código aberto, licenciado pelo Apache 2.0, e a participação da comunidade no desenvolvimento é incentivada.

Index-AniSora:Bilibili开源的动漫视频生成工具-1

 

Lista de funções

  • Suporte à geração de diversos vídeos no estilo anime, abrangendo episódios de anime, adaptações de mangá, conteúdo VTuber e muito mais.
  • Oferece a função de geração de imagem para vídeo para gerar vídeo dinâmico com base em uma única imagem.
  • Suporte à interpolação de quadros para gerar quadros-chave, quadros intermediários e quadros finais para otimizar a suavidade da animação.
  • Oferece funcionalidade de animação guiada por imagem localizada, permitindo que áreas especificadas pelo usuário sejam animadas.
  • Um conjunto de dados de avaliação contendo 948 videoclipes animados emparelhados com prompts de texto corrigidos manualmente.
  • Suporta a NPU Rise 910B da Huawei para otimizar o desempenho do treinamento e da inferência.
  • Fornecer a estrutura de otimização de aprendizado por reforço (RLHF) para melhorar a qualidade da saída do estilo anime.
  • Publique o código completo de treinamento e inferência no caminhoanisoraV1_train_npuresponder cantandoanisoraV2_npu.
  • Fornece técnicas de inferência aceleradas por destilação para reduzir o custo computacional e manter a qualidade da geração.

 

Usando a Ajuda

Processo de instalação

O Index-AniSora é um projeto de código aberto hospedado no GitHub e os usuários precisam clonar o repositório e configurar o ambiente para usar seus recursos. Abaixo estão as etapas detalhadas de instalação e uso:

  1. armazém de clones
    Execute o seguinte comando em um terminal para clonar o repositório Index-AniSora:

    git clone https://github.com/bilibili/Index-anisora.git
    cd Index-anisora
    

  1. Configuração do ambiente
    O projeto depende do ambiente Python e de uma estrutura específica de aprendizagem profunda. Recomenda-se o Python 3.8 ou superior. Instale as dependências:

    pip install -r requirements.txt
    

    Certifique-se de que as dependências do PyTorch (compatível com NPUs ou GPUs do Rise), do CogVideoX e do Wan2.1 estejam instaladas. Se estiver usando o Rise 910B NPU da Huawei, será necessário instalar o kit de desenvolvimento do Rise (como o CANN). Consulte a documentação oficial ou a comunidade do Huawei Rise para obter instruções específicas de instalação.

  2. Download dos pesos do modelo
    Os usuários precisam solicitar os pesos dos modelos AniSoraV1 ou AniSoraV2. Preencha o formulário de solicitação fornecido oficialmente (formato PDF) e envie-o para o endereço de e-mail yangsiqian@bilibili.com talvez xubaohan@bilibili.com. Após a revisão, obtenha o link de download do weights. Após o download, coloque o arquivo de pesos no diretório especificado do repositório (por exemplo anisoraV2_npu).
  3. Executar o código de inferência
    O projeto fornece o código de inferência completo, localizado anisoraV1_train_npu talvez anisoraV2_npu Diretório. Execute o comando de inferência de amostra:

    python inference.py --model_path anisoraV2_npu --prompt "一个穿和服的少女在樱花树下跳舞" --output output_video.mp4
    

    Descrição do parâmetro:

    • --model_pathEspecifica o caminho do peso do modelo.
    • --promptDigite um prompt de texto que descreva a cena de animação desejada.
    • --outputCaminho do arquivo de vídeo de saída: Especifica o caminho do arquivo de vídeo de saída.
  4. Modelos de treinamento
    Se for necessário um treinamento personalizado, o projeto fornecerá o código de treinamento (anisoraV1_train_npu). Depois de preparar o conjunto de dados, execute o script de treinamento:

    python train.py --data_path your_dataset --output_dir trained_model
    

    O conjunto de dados precisa atender aos requisitos do projeto, e é recomendável usar clipes de vídeo animados semelhantes ao conjunto de dados de avaliação com instruções de texto. O treinamento é compatível com a NPU e a GPU do Huawei Rise.

Funções principais

  • Geração de imagem para vídeo
    O usuário carrega uma imagem estática (por exemplo, o desenho de um personagem de anime) e é solicitado por texto a gerar um vídeo animado. Por exemplo, insira a imagem como "personagem ninja" e a solicitação como "ninja lutando na floresta" e o modelo gerará a animação correspondente. Etapas:

    1. Prepare o arquivo de imagem (por exemplo, formato PNG/JPG).
    2. Escreva prompts de texto detalhados descrevendo a ação, a cena e o estilo.
    3. Executa um script de inferência que especifica o caminho da imagem e os prompts:
      python inference.py --image_path input_image.png --prompt "忍者在森林中战斗" --output ninja_video.mp4
      
    4. Verifique os arquivos de vídeo gerados e ajuste as dicas para otimizar os resultados.
  • interpolação de quadros
    A função de interpolação de quadros é usada para gerar quadros intermediários da animação para melhorar a suavidade do vídeo. Os usuários podem fornecer quadros-chave (por exemplo, quadro inicial e quadro final) e o modelo gera automaticamente quadros de transição intermediários. Etapas da operação:

    1. Prepare a imagem do quadro-chave e coloque-a no diretório especificado.
    2. Execute o script de interpolação de quadros:
      python frame_interpolation.py --keyframe_dir keyframes --output interpolated_video.mp4
      
    3. Verifique o vídeo de saída para garantir transições naturais entre os quadros.
  • Animação guiada por imagem local
    O usuário pode especificar áreas específicas da imagem para gerar animação. Por exemplo, fixar o plano de fundo e permitir que apenas o personagem se mova. Etapas da ação:

    1. Fornece arquivos de imagem e máscara (a máscara especifica a área de animação).
    2. Execute o script de inicialização local:
      python local_guided_animation.py --image_path scene.png --mask_path mask.png --prompt "角色在背景前挥手" --output guided_video.mp4
      
    3. Verifique a saída para ter certeza de que a área animada está conforme o esperado.
  • Avaliar o uso de conjuntos de dados
    O projeto fornece um conjunto de dados de avaliação de 948 videoclipes animados para testar o desempenho do modelo. Os usuários precisam solicitar o acesso ao conjunto de dados (da mesma forma que o processo de solicitação de peso do modelo). Depois de obtê-lo, o script de avaliação pode ser executado:

    python evaluate.py --dataset_path anisora_benchmark --model_path anisoraV2_npu
    

    Os resultados da avaliação incluem métricas como consistência de ação e consistência de estilo, que são aplicáveis à otimização de modelos.

Operação da função em destaque

  • Aprendizado por reforço para otimização (RLHF)
    O AniSoraV1.0 apresenta a primeira estrutura de RLHF para geração de vídeos de anime para melhorar a qualidade da geração. Os usuários podem ajustar o modelo com os scripts de otimização de RL fornecidos:

    python rlhf_optimize.py --model_path anisoraV1_npu --data_path rlhf_data --output optimized_model
    

    Os dados do RLHF devem ser preparados por você e é recomendável incluir vídeos e classificações de anime de alta qualidade.

  • Suporte à NPU do Huawei Rise
    O projeto foi otimizado para a NPU Rise 910B da Huawei para usuários domésticos. Certifique-se de especificar o dispositivo NPU ao executar a inferência ou o treinamento depois de instalar o Rise Development Kit:

    python inference.py --device npu --model_path anisoraV2_npu
    

 

cenário do aplicativo

  1. Produção de curtas-metragens de animação
    Os criadores podem usar o Index-AniSora para gerar clipes de animação de alta qualidade. Por exemplo, insira um design de personagem e a descrição "Personagem correndo em uma cidade futurista" para gerar um curta-metragem de animação adequado para a produção de animação independente.
  2. Criação de conteúdo VTuber
    Os âncoras da VTuber podem usar o modelo para gerar vídeos animados de seus avatares, como um "ídolo virtual se apresentando no palco", para criar rapidamente conteúdo de vídeo ao vivo ou curto.
  3. Prévia da adaptação de quadrinhos
    Os cartunistas podem converter quadros estáticos de quadrinhos em vídeo em movimento, visualizar os efeitos da animação adaptada e verificar a suavidade do storyboard.
  4. Educação e pesquisa
    Os pesquisadores podem usar conjuntos de dados de avaliação e códigos de treinamento para explorar técnicas de geração de vídeo de anime, otimizar modelos ou desenvolver novos algoritmos.

 

QA

  1. Como faço para obter pesos de modelos e conjuntos de dados?
    Preencha o formulário de inscrição (formato PDF) e envie-o para yangsiqian@bilibili.com talvez xubaohan@bilibili.com. Obtenha o link para download após a revisão.
  2. Ele é compatível com hardware que não seja da Singularity?
    Sim, o projeto é compatível com ambientes de GPU, mas o desempenho do Rise NPU é melhor. Certifique-se de instalar uma versão compatível do PyTorch.
  3. Qual é a qualidade do vídeo gerado?
    O modelo é treinado com base no CogVideoX e no Wan2.1 e, combinado com a otimização RLHF, o vídeo gerado atinge um nível avançado em termos de movimento e consistência estilística, o que é adequado para uma grande variedade de cenas de anime.
  4. É necessário ter experiência em programação?
    É necessário ter conhecimentos básicos de Python para executar o script. Os não desenvolvedores podem consultar a documentação para gerar vídeos usando modelos pré-treinados.
0Marcado
0Recomendado

Recomendado

Não consegue encontrar ferramentas de IA? Tente aqui!

Basta digitar a palavra-chave Acessibilidade Bing SearchA seção Ferramentas de IA deste site é uma maneira rápida e fácil de encontrar todas as ferramentas de IA deste site.

caixa de entrada

Entre em contato conosco

voltar ao topo

pt_BRPortuguês do Brasil