Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

VideoGrain: prompts de texto para edição local de projeto de código aberto de vídeo

Introdução geral

O VideoGrain é um projeto de código-fonte aberto voltado para a edição de vídeo com vários grãos, desenvolvido pela equipe da xAI e hospedado no GitHub. Esse projeto foi criado a partir do artigo "VideoGrain: Modulating Space-Time Attention for Multi-Grained Video Editing", que foi selecionado para a conferência ICLR 2025. Ele realiza a edição refinada de conteúdo de vídeo nos níveis de categoria, instância e local, modulando o mecanismo de atenção espaço-temporal no modelo de difusão. Em comparação com os métodos tradicionais, o VideoGrain resolve o problema de alinhamento semântico do controle de texto e região e o problema de acoplamento de recursos, e pode concluir a edição de alta qualidade sem treinamento adicional. O projeto fornece código completo, guia de instalação e modelos pré-treinados para desenvolvedores, pesquisadores e entusiastas de edição de vídeo, e já atraiu a atenção das comunidades acadêmicas e de código aberto.

VideoGrain: prompts de texto para edição local de projeto de código aberto de vídeo-1


 

Lista de funções

  • Edição de vídeo com granularidade múltiplaSuporte para modificação precisa de categorias (por exemplo, substituição de "humano" por "robô"), instâncias (por exemplo, objetos específicos) e detalhes locais (por exemplo, movimentos das mãos) em um vídeo.
  • Sem capacidade de edição de amostrasNão há necessidade de treinar novamente para um vídeo específico, basta digitar os prompts de texto para concluir a edição.
  • modulação da atenção espaço-temporalMelhorar a precisão da edição e a qualidade do vídeo, aprimorando a atenção cruzada (texto para região) e a auto-atenção (separação de recursos dentro da região).
  • Código-fonte aberto e modelagemCódigo de implementação completo e modelos pré-treinados são fornecidos para facilitar a reprodução e a extensão pelos usuários.
  • modelo compatível com difusãoBaseado em estruturas como difusores e FateZero para facilitar a integração nos processos de geração de vídeo existentes.
  • Suporte a vários documentosVídeo: pode processar vídeos, imagens e outros conteúdos carregados pelos usuários e gerar os resultados do vídeo editado.

 

Usando a Ajuda

O VideoGrain requer algum conhecimento de programação e suporte de hardware, mas seus procedimentos de instalação e operação estão descritos em detalhes no repositório do GitHub. Abaixo está um guia detalhado de instalação e uso para ajudar os usuários a começar rapidamente.

Processo de instalação

  1. Criação de um ambiente Conda
    Crie um ambiente autônomo do Python 3.10 e ative-o digitando o seguinte comando no terminal:
conda create -n videograin python=3.10
conda activate videograin

Certifique-se de que o Conda esteja instalado; caso contrário, acesse o site do Anaconda para fazer o download.

  1. Instalação do PyTorch e das dependências relacionadas
    O VideoGrain depende do PyTorch e de seu suporte a CUDA; recomenda-se a aceleração da GPU. Execute o seguinte comando para instalá-lo:
conda install pytorch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 pytorch-cuda=12.1 -c pytorch -c nvidia
pip install --pre -U xformers==0.0.27

Os xformers podem ser otimizados em termos de memória e velocidade; se não forem necessários, ignore-os.

  1. Instalação de dependências adicionais
    Execute o seguinte comando na raiz do repositório para instalar todas as bibliotecas dependentes:
pip install -r requirements.txt

Certifique-se de que a Internet esteja aberta, pois o acesso científico à Internet pode ser necessário para fazer o download de alguns dos pacotes.

  1. Download do modelo pré-treinado
    O VideoGrain requer pesos de modelo, como o Stable Diffusion 1.5 e o ControlNet. Execute o script fornecido no repositório:
bash download_all.sh

Isso fará o download automático do modelo básico para o diretório especificado. Para downloads manuais, acesse os links do Hugging Face ou do Google Drive (consulte o README para obter detalhes).

  1. Preparar os pesos do pré-processador ControlNet
    Faça o download dos pesos do anotador (por exemplo, DW-Pose, depth_midas, etc.), com cerca de 4 GB. use o seguinte comando:
gdown https://drive.google.com/file/d/1dzdvLnXWeMFR3CE2Ew0Bs06vyFSvnGXA/view?usp=drive_link
tar -zxvf videograin_data.tar.gz

Descompacte os arquivos e coloque-os no diretório . /annotator/ckpts Catálogo.

Uso

Após a conclusão da instalação, os usuários podem executar o VideoGrain para edição de vídeo por meio da linha de comando. Veja a seguir o fluxo de operação das principais funções:

1. edição de vídeo com granularidade múltipla

  • Preparação do arquivo de entrada
    Coloque o arquivo de vídeo a ser editado no diretório do projeto (por exemplo . /input_video.mp4). Suporta formatos comuns, como MP4, AVI.
  • Preparação de alertas de texto
    Especifique instruções de edição no script, por exemplo:
prompt = "Substitua o carro do vídeo por um Porsche"

Suporta substituição de categoria (por exemplo, "Carro" para "Porsche"), modificação de instância (por exemplo, "Personagem específico" para "Homem de Ferro ") e ajustes locais (por exemplo, "movimento da mão" para "aceno de mão").

  • Execute o comando edit
    Digite-o no terminal:
python edit_video.py --input . /input_video.mp4 --prompt "Substitua o carro no vídeo por um Porsche" --output . /output_video.mp4

Após a edição, o resultado é salvo em . /output_video.mp4.

2. edição de amostra zero

  • Edição direta sem treinamento
    O ponto forte do VideoGrain é seu recurso de amostragem zero. Os usuários só precisam fornecer vídeos e dicas, sem necessidade de pré-treinamento. Exemplo:
python edit_video.py --input . /sample_video.mp4 --prompt "Substituir cachorro por gato" --output . /edited_video.mp4
  • Parâmetros de ajuste
    aceitável --Força O parâmetro controla a intensidade da edição (0,0-1,0, padrão 0,8) como:

python edit_video.py --input . /sample_video.mp4 --prompt "Substituir cachorro por gato" --strength 0.6

3. modulação da atenção temporal

  • Controle aprimorado de texto para área
    O VideoGrain otimiza automaticamente a atenção cruzada para garantir que os avisos afetem apenas a área de destino. Por exemplo, se a sugestão for "Change character's clothing to red" (Mude a roupa do personagem para vermelho), os fundos externos não serão afetados.
  • Separação elevada de recursos
    O mecanismo de autoatenção aumenta a consistência dos detalhes dentro das regiões e reduz a interferência entre as regiões. Os usuários não precisam fazer ajustes manuais; eles entram em vigor automaticamente no tempo de execução.

Precauções de manuseio

  • Requisitos de hardware
    Recomenda-se o uso de GPUs NVIDIA (por exemplo, A100 ou RTX 3090) com pelo menos 12 GB de memória de vídeo.
  • Sugestões de palavras-chave
    Os avisos precisam ser específicos e claros, por exemplo, "Substitua o personagem à esquerda por um robô" é melhor do que o vago "Edite o personagem".
  • Depuração e registro em log
    Se algo der errado, verifique o . /logs ou adicionando o arquivo de registro após o comando --verbose Exibir saída detalhada.

Funções em destaque

  • Edição de várias granularidades em ação
    Supondo que o usuário queira substituir "bicicleta" por "motocicleta" em um vídeo, basta inserir o caminho do vídeo e a palavra-chave, e o VideoGrain reconhecerá todas as bicicletas e as substituirá por motocicletas, mantendo a ação e o plano de fundo consistentes.
  • Extensões de código aberto
    Modificável pelo usuário edit_video.py parâmetros de modelo na estrutura de difusores ou para adicionar novos recursos com base na estrutura de difusores, como suporte para resoluções mais altas ou mais tipos de edição.
  • Suporte à comunidade
    Os repositórios do GitHub fornecem quadros de problemas nos quais os usuários podem enviar problemas ou ver o que os outros fizeram.

Com as etapas acima, os usuários podem começar a usar o VideoGrain rapidamente e concluir tarefas de edição de vídeo que variam de simples substituições a ajustes locais complexos.

CDN1
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " VideoGrain: prompts de texto para edição local de projeto de código aberto de vídeo

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