Modelos e plataformas de IA
MagicDance: Geração de Vídeo de Dança Humana Realista
A visão computacional é um dos campos mais discutidos na indústria de IA, graças às suas aplicações potenciais em uma ampla gama de tarefas em tempo real. Nos últimos anos, os frameworks de visão computacional avançaram rapidamente, com modelos modernos agora capazes de analisar recursos faciais, objetos e muito mais em cenários em tempo real. Apesar dessas capacidades, a transferência de movimento humano continua sendo um desafio formidável para os modelos de visão computacional. Essa tarefa envolve retargeting de movimentos faciais e corporais de uma imagem ou vídeo de origem para uma imagem ou vídeo de destino. A transferência de movimento humano é amplamente utilizada em modelos de visão computacional para estilizar imagens ou vídeos, editar conteúdo multimídia, síntese de humanos digitais e até mesmo gerar dados para frameworks baseados em percepção.
Neste artigo, nos concentramos no MagicDance, um modelo baseado em difusão projetado para revolucionar a transferência de movimento humano. O framework MagicDance tem como objetivo específico transferir expressões faciais e movimentos humanos 2D para vídeos de dança humanos desafiadores. Seu objetivo é gerar sequências de dança de vídeo novas e impulsionadas por pose para identidades de destino específicas, mantendo a identidade original. O framework MagicDance emprega uma estratégia de treinamento em duas etapas, focando na desentanglement de movimento humano e fatores de aparência, como tom de pele, expressões faciais e roupas. Vamos mergulhar no framework MagicDance, explorando sua arquitetura, funcionalidade e desempenho em comparação com outros frameworks de transferência de movimento humano de ponta.
MagicDance: Transferência de Movimento Humano Realista
Como mencionado anteriormente, a transferência de movimento humano é uma das tarefas de visão computacional mais complexas devido à complexidade envolvida na transferência de movimentos e expressões humanas da imagem ou vídeo de origem para a imagem ou vídeo de destino. Tradicionalmente, os frameworks de visão computacional alcançaram a transferência de movimento humano treinando um modelo gerativo específico da tarefa, incluindo GAN ou Redes Adversárias Gerativas, em conjuntos de dados de destino para expressões faciais e poses corporais. Embora o treinamento e o uso de modelos gerativos forneçam resultados satisfatórios em alguns casos, eles geralmente sofrem de duas limitações principais.
- Eles dependem fortemente de um componente de deformação de imagem como resultado do qual eles frequentemente lutam para interpolar partes do corpo invisíveis na imagem de origem, seja devido a uma mudança de perspectiva ou auto-ocultação.
- Eles não podem generalizar para outras imagens originadas externamente, o que limita suas aplicações, especialmente em cenários em tempo real no mundo.

Os modelos de difusão modernos demonstraram capacidades de geração de imagem excepcionais em diferentes condições, e os modelos de difusão agora são capazes de apresentar visuais poderosos em uma variedade de tarefas downstream, como geração de vídeo e preenchimento de imagem, aprendendo com conjuntos de dados de imagem em escala web. Devido às suas capacidades, os modelos de difusão podem ser uma escolha ideal para tarefas de transferência de movimento humano. Embora os modelos de difusão possam ser implementados para transferência de movimento humano, eles têm algumas limitações, seja em termos da qualidade do conteúdo gerado, ou em termos de preservação de identidade ou sofrimento de inconsistências temporais como resultado de limitações de design e estratégia de treinamento do modelo. Além disso, os modelos baseados em difusão demonstram nenhuma vantagem significativa sobre os frameworks GAN em termos de generalização.
Para superar os obstáculos enfrentados pelos frameworks baseados em difusão e GAN em tarefas de transferência de movimento humano, os desenvolvedores introduziram o MagicDance, um framework novo que visa explorar o potencial dos frameworks de difusão para transferência de movimento humano, demonstrando um nível sem precedentes de preservação de identidade, qualidade visual superior e generalização de domínio. Em seu núcleo, o conceito fundamental do framework MagicDance é dividir o problema em duas etapas: controle de aparência e controle de movimento, duas capacidades necessárias pelos frameworks de difusão de imagem para fornecer saídas de transferência de movimento precisas.

A figura acima fornece uma visão geral do framework MagicDance, e como pode ser visto, o framework emprega o modelo de difusão estável, e também implanta dois componentes adicionais: Modelo de Controle de Aparência e Pose ControlNet, onde o primeiro fornece orientação de aparência ao modelo SD a partir de uma imagem de referência por meio de atenção, enquanto o segundo fornece orientação de expressão/pose ao modelo de difusão a partir de uma imagem ou vídeo condicionado. O framework também emprega uma estratégia de treinamento em múltiplas etapas para aprender esses sub-módulos efetivamente para desentrelaçar controle de pose e aparência.
Em resumo, o framework MagicDance é um
- Framework novo e eficaz que consiste em controle de pose desentrelaçado de aparência e pré-treinamento de controle de aparência.
- O framework MagicDance é capaz de gerar expressões faciais e movimentos humanos realistas sob o controle de entradas de pose e imagens ou vídeos de referência.
- O framework MagicDance visa gerar conteúdo humano consistente com a aparência, introduzindo um Módulo de Atenção de Múltiplas Fontes que oferece orientação precisa para o framework de difusão estável UNet.
- O framework MagicDance também pode ser utilizado como uma extensão conveniente ou plug-in para o framework de difusão estável, e também garante compatibilidade com pesos de modelo existentes, pois não requer ajuste fino adicional dos parâmetros.
Além disso, o framework MagicDance demonstra capacidades de generalização excepcionais para generalização de aparência e movimento.
- Generalização de Aparência: O framework MagicDance demonstra capacidades superiores quando se trata de gerar aparências diversas.
- Generalização de Movimento: O framework MagicDance também tem a capacidade de gerar uma ampla gama de movimentos.
MagicDance: Objetivos e Arquitetura
Para uma imagem de referência dada, seja de um humano real ou uma imagem estilizada, o objetivo principal do framework MagicDance é gerar uma imagem de saída ou um vídeo de saída condicionado na entrada e nas entradas de pose {P, F}, onde P representa o esqueleto da pose humana e F representa as marcas faciais. A imagem de saída ou vídeo gerado deve ser capaz de preservar a aparência e identidade dos humanos envolvidos, juntamente com o conteúdo de fundo presente na imagem de referência, enquanto retém a pose e expressões definidas pelas entradas de pose.
Arquitetura
Durante o treinamento, o framework MagicDance é treinado como uma tarefa de reconstrução de frame para reconstruir a verdadeira com a imagem de referência e a entrada de pose originada do mesmo vídeo de referência. Durante o teste, para alcançar a transferência de movimento, a entrada de pose e a imagem de referência são originadas de fontes diferentes.
A arquitetura geral do framework MagicDance pode ser dividida em quatro categorias: Etapa Preliminar, Pré-treinamento de Controle de Aparência, Controle de Pose Desentrelaçado de Aparência e Módulo de Movimento.
Etapas Preliminares
Os modelos de difusão latente ou LDM representam modelos de difusão projetados para operar dentro do espaço latente facilitado pelo uso de um autoencoder, e o framework de difusão estável é um exemplo notável de LDMs que emprega um Autoencoder Quantizado-Variacional e arquitetura U-Net temporal. O modelo de difusão estável emprega um transformador baseado em CLIP como codificador de texto para processar entradas textuais, convertendo textos em embeddings. A fase de treinamento do framework de difusão estável expõe o modelo a uma condição de texto e uma imagem de entrada, com o processo envolvendo a codificação da imagem em uma representação latente, e submetendo-a a uma sequência pré-definida de etapas de difusão dirigidas por um método gaussiano. A sequência resultante produz uma representação latente ruidosa que fornece uma distribuição normal padrão, com o objetivo principal de aprendizado do framework de difusão estável sendo denoising as representações latentes ruidosas iterativamente em representações latentes.
Pré-treinamento de Controle de Aparência
Um problema significativo com o framework ControlNet original é sua incapacidade de controlar a aparência entre movimentos espacialmente variados de forma consistente, embora ele tenda a gerar imagens com poses que se assemelham às da imagem de entrada, com a aparência geral sendo influenciada predominantemente por entradas textuais. Embora esse método funcione, ele não é adequado para tarefas de transferência de movimento que envolvem a imagem de referência como a principal fonte de informações de aparência.
O módulo de pré-treinamento de controle de aparência no framework MagicDance é projetado como um ramo auxiliar para fornecer orientação para o controle de aparência em uma abordagem camada a camada. Em vez de confiar em entradas textuais, o módulo geral se concentra em aproveitar os atributos de aparência da imagem de referência, com o objetivo de melhorar a capacidade do framework de gerar características de aparência com precisão, particularmente em cenários que envolvem dinâmica de movimento complexa. Além disso, é apenas o Modelo de Controle de Aparência que é treinável durante o pré-treinamento de controle de aparência.
Controle de Pose Desentrelaçado de Aparência
Uma solução ingênua para controlar a pose na imagem de saída é integrar o modelo ControlNet pré-treinado com o Modelo de Controle de Aparência pré-treinado diretamente, sem ajuste fino. No entanto, a integração pode resultar no framework lutando com o controle de pose independente de aparência, o que pode levar a uma discrepância entre as poses de entrada e as poses geradas. Para lidar com essa discrepância, o framework MagicDance ajusta finamente o modelo Pose ControlNet conjuntamente com o Modelo de Controle de Aparência pré-treinado.
Módulo de Movimento
Quando trabalham juntos, o Controle de Pose Desentrelaçado de Aparência e o Modelo de Controle de Aparência podem alcançar a transferência de imagem para movimento precisa e eficaz, embora possa resultar em inconsistência temporal. Para garantir a consistência temporal, o framework integra um módulo de movimento adicional na arquitetura principal do modelo de difusão estável UNet.
MagicDance: Pré-treinamento e Conjuntos de Dados
Para o pré-treinamento, o framework MagicDance utiliza um conjunto de dados do TikTok que consiste em mais de 350 vídeos de dança de comprimentos variados entre 10 a 15 segundos, capturando uma pessoa dançando, com a maioria desses vídeos contendo o rosto e o corpo superior do humano. O framework MagicDance extrai cada vídeo individual a 30 FPS e executa OpenPose em cada frame individualmente para inferir o esqueleto da pose, poses das mãos e marcas faciais.
Para o pré-treinamento, o modelo de controle de aparência é pré-treinado com um tamanho de lote de 64 em 8 GPUs NVIDIA A100 por 10 mil etapas com um tamanho de imagem de 512 x 512, seguido de ajuste fino conjunto do modelo de controle de pose e do modelo de controle de aparência com um tamanho de lote de 16 por 20 mil etapas. Durante o treinamento, o framework MagicDance amostra aleatoriamente dois frames como o alvo e a referência, respectivamente, com as imagens sendo recortadas na mesma posição ao longo da mesma altura. Durante a avaliação, o modelo recorta a imagem centralmente em vez de recortá-las aleatoriamente.
MagicDance: Resultados
Os resultados experimentais realizados no framework MagicDance são demonstrados na imagem a seguir, e como pode ser visto, o framework MagicDance supera os frameworks existentes, como Disco e DreamPose, para transferência de movimento humano em todas as métricas. Os frameworks que consistem em um “*” antes do nome usam a imagem de destino diretamente como a entrada e incluem mais informações em comparação com os outros frameworks.

É interessante notar que o framework MagicDance atinge uma pontuação Face-Cos de 0,426, uma melhoria de 156,62% sobre o framework Disco, e um aumento de quase 400% em comparação com o framework DreamPose. Os resultados indicam a capacidade robusta do framework MagicDance de preservar informações de identidade e o aumento visível no desempenho indica a superioridade do framework MagicDance sobre os métodos existentes de ponta.
As figuras a seguir comparam a qualidade da geração de vídeo humano entre os frameworks MagicDance, Disco e TPS. Como pode ser observado, os resultados gerados pelos frameworks GT, Disco e TPS sofrem de identidade de pose humana e expressões faciais inconsistentes.

Além disso, a imagem a seguir demonstra a visualização da transferência de expressão facial e pose humana no conjunto de dados do TikTok com o framework MagicDance sendo capaz de gerar expressões e movimentos realistas e vívidos sob diferentes marcas faciais e entradas de esqueleto de pose, preservando com precisão as informações de identidade da imagem de entrada de referência.

Vale notar que o framework MagicDance possui capacidades de generalização excepcionais para imagens de referência fora do domínio de pose e estilos não vistos, com controle de aparência impressionante, mesmo sem ajuste fino adicional no domínio de destino, com os resultados sendo demonstrados na imagem a seguir.

As imagens a seguir demonstram as capacidades de visualização do framework MagicDance em termos de transferência de expressão facial e movimento humano zero-shot. Como pode ser visto, o framework MagicDance se generaliza para movimentos humanos no mundo real perfeitamente.

MagicDance: Limitações
OpenPose é um componente essencial do framework MagicDance, pois desempenha um papel crucial para o controle de pose, afetando significativamente a qualidade e a consistência temporal das imagens geradas. No entanto, o framework MagicDance ainda encontra dificuldades para detectar marcas faciais e esqueletos de pose com precisão, especialmente quando os objetos nas imagens estão parcialmente visíveis ou mostram movimento rápido. Esses problemas podem resultar em artefatos na imagem gerada.
Conclusão
Neste artigo, discutimos o MagicDance, um modelo baseado em difusão que visa revolucionar a transferência de movimento humano. O framework MagicDance tenta transferir expressões faciais e movimentos humanos 2D para vídeos de dança humanos desafiadores, com o objetivo específico de gerar sequências de dança de vídeo novas e impulsionadas por pose para identidades de destino específicas, mantendo a identidade constante. O framework MagicDance é uma estratégia de treinamento em duas etapas para desentanglement de movimento humano e aparência, como tom de pele, expressões faciais e roupas.
MagicDance é uma abordagem nova para facilitar a geração de vídeo humano realista, incorporando transferência de expressão facial e movimento, e permitindo geração de animação consistente no mundo real sem necessidade de ajuste fino adicional, demonstrando um avanço significativo sobre os métodos existentes. Além disso, o framework MagicDance demonstra capacidades de generalização excepcionais sobre sequências de movimento complexas e identidades humanas diversas, estabelecendo o framework MagicDance como o líder no campo de transferência de movimento humano assistida por IA e geração de vídeo.












