Edição precisa de retratos com controle de expressão de grão fino do PixelSmile
Este fluxo de trabalho ComfyUI oferece controle de expressão de grão fino do PixelSmile sobre o Qwen Image Edit. Ele permite que você ajuste um rosto de neutro para emoções específicas e misture entre elas enquanto mantém a identidade e a composição intactas. Casos de uso típicos incluem retoques sutis para fotos de perfil, exploração de variações emocionais de um personagem e criação de misturas de expressões controladas em uma única tela.
Nos bastidores, o gráfico codifica prompts neutros e alvo com o codificador de edição do Qwen, calcula deltas do PixelSmile para isolar a mudança de expressão, mistura múltiplos alvos e então amostra com um Lightning LoRA leve para resultados rápidos e consistentes. Você obtém controle previsível sobre expressões de felicidade, surpresa, neutras ou qualquer outra expressão que possa ser sugerida sem reestruturar a cena.
Modelos-chave no fluxo de trabalho de controle de expressão de grão fino do ComfyUI PixelSmile
- Qwen-Image-Edit-2511. A base de edição de imagem baseada em difusão que preserva o layout e a identidade durante as edições. Ela estende o Qwen-Image para modificações localizadas e cientes da estrutura, além de mudanças condicionadas por texto estáveis. Model card
- Qwen2.5-VL-7B-Instruct. O modelo de texto-visão usado aqui como codificador de prompts para produzir condicionamentos de edição robustos a partir de frases curtas e naturais. Model card
- PixelSmile LoRA. LoRA focada em expressão que fornece mudanças faciais controladas por intensidade, alinhadas com a semântica do prompt. Veja os pesos de código aberto e recursos do projeto. Hugging Face Paper
- Qwen-Image-Edit-2511-Lightning LoRA. Um LoRA otimizado para velocidade que permite edições de alta qualidade em poucos passos, ideal para exploração interativa de expressões. Model card
Como usar o fluxo de trabalho de controle de expressão de grão fino do ComfyUI PixelSmile
O fluxo leva um retrato de origem, constrói condicionamentos de expressão neutra e alvo, calcula deltas do PixelSmile, mistura múltiplos alvos e então amostra e decodifica o resultado. Edite os prompts nos nós do codificador, ajuste a intensidade do PixelSmile e a mistura, e visualize o resultado.
Carregar o retrato de origem e definir o tamanho de trabalho
- Use
LoadImage(#129) para trazer seu retrato. A imagem alimenta ambos os codificadores e uma sonda de tamanho para que o gráfico possa renderizar na resolução original. GetImageSize+(#257) lê a largura e a altura, eEmptySD3LatentImage(#119) aloca um latente do mesmo tamanho. Isso mantém o enquadramento e a composição estáveis ao longo da amostragem.
Descrever expressões neutras e alvo
TextEncodeQwenImageEditPlus(#248) codifica uma descrição neutra (por exemplo, "expressão neutra") emparelhada com a imagem de origem. Isso se torna seu estado de referência.- Crie uma ou mais descrições de alvo em
TextEncodeQwenImageEditPlus(#113, #260), como "expressão de felicidade" ou "expressão de surpresa". Cada alvo usa a mesma imagem de origem, que ancora a identidade e a pose. - Os prompts podem ser curtos e naturais. O codificador usa Qwen2.5-VL-7B-Instruct para derivar condicionamentos de edição adaptados ao Qwen-Image-Edit-2511.
Calcular deltas do PixelSmile para controle preciso
- Para cada alvo,
PixelSmileConditioning(#249, #259) toma o condicionamento de alvo e o condicionamento neutro, e depois calcula um delta que isola apenas a mudança de expressão facial. - O nó expõe um controle de força que escala linearmente a intensidade da expressão. Ele também suporta um método de escopo de token que limita a interpolação à palavra de expressão, o que ajuda a evitar mudanças indesejadas fora da região do rosto.
Misturar múltiplas expressões
ConditioningAverage(#261) mistura duas saídas do PixelSmile em um único condicionamento positivo. Use-o para misturar, por exemplo, 40% de surpresa com 60% de felicidade para emoções compostas.ConditioningZeroOut(#231) fornece um negativo limpo zerando a orientação residual. Isso mantém o foco da edição e reduz a deriva.
Amostrar com Qwen Image Edit e Lightning
- A pilha de modelos carrega o Qwen-Image-Edit-2511 UNet, aplica o PixelSmile LoRA, depois camada o Lightning LoRA para passos rápidos e consistentes (
UNETLoader(#244) →LoraLoaderModelOnly(#250, #251) →ModelSamplingAuraFlow(#118)). KSampler(#133) executa a remoção de ruído usando os condicionamentos positivos misturados e negativos zerados. O Lightning LoRA permite pré-visualizações responsivas com poucos passos, o que é ideal ao iterar sobre a força e mistura do PixelSmile.
Decodificar e visualizar
VAEDecode(#120) converte o latente final de volta em uma imagem, ePreviewImage(#134) exibe o resultado. Como o tamanho do latente corresponde ao da fonte, a saída mantém a composição e a proporção.
Nós-chave no fluxo de trabalho de controle de expressão de grão fino do ComfyUI PixelSmile
PixelSmileConditioning (#249)
Calcula o delta de expressão entre um prompt de alvo e a base neutra, depois o escala para controlar a intensidade. Ajuste score para aumentar ou suavizar a mudança de expressão. A alternância method permite interpolar por todos os tokens para mudanças estilísticas mais amplas ou limitar a interpolação ao token de expressão para controle facial mais preciso, o que frequentemente preserva mais fielmente o cabelo e o fundo. Veja a implementação do nó para detalhes. GitHub
PixelSmileConditioning (#259)
Uma segunda instância que permite um alvo paralelo (por exemplo, "surpresa") contra a mesma base neutra. Use isso para configurar trilhas de expressão A/B que você pode misturar. Mantenha ambos os valores de score do PixelSmile moderados se você planeja misturá-los, pois configurações extremas em ambas as trilhas podem cancelar ou sobrecarregar o resultado.
ConditioningAverage (#261)
Mistura dois condicionamentos do PixelSmile em um condicionamento positivo. Aumente o peso em direção à expressão que você deseja que domine, ou defina totalmente para um lado para uma execução de expressão única pura. Ao construir emoções nuançadas, comece perto de uma divisão uniforme, depois incline por pequenos incrementos até que micro-características como sobrancelhas e cantos da boca pareçam naturais.
TextEncodeQwenImageEditPlus (#113)
Produz condicionamentos de edição a partir de prompts curtos e da imagem de entrada, aproveitando o Qwen2.5-VL-7B-Instruct como codificador para o Qwen-Image-Edit-2511. Mantenha a formulação concisa e específica para a emoção. Emparelhar a mesma imagem de origem nos codificadores neutro e alvo é fundamental para preservar a identidade.
KSampler (#133)
Executa a remoção de ruído com a base Qwen-Image-Edit empilhada e o Lightning LoRA. Use-o principalmente para controlar a contagem geral de iterações e variabilidade enquanto você ajusta a intensidade do PixelSmile e a mistura. Se aparecerem artefatos, reduza o score do PixelSmile primeiro antes de aumentar os passos.
Extras opcionais
- Mantenha as palavras de expressão explícitas, por exemplo, "expressão de felicidade sutil" ou "leve surpresa", para inclinar os deltas do PixelSmile em direção a micro-expressões.
- Se as mudanças faciais se misturarem ao cabelo ou ao fundo, altere o
methoddo PixelSmile para interpolação limitada por token e reduzascoreligeiramente. - Corte de forma solta ao redor do rosto antes de editar se as expressões parecerem fracas, depois reaplique à imagem completa uma vez que você encontrar uma configuração de que goste.
- Para velocidade de pré-visualização, itere com o Lightning LoRA e poucos passos, depois aumente os passos apenas para a exportação final, se necessário.
Links para modelos de referência e recursos do projeto:
- Projeto e pesos do PixelSmile: Hugging Face e artigo PixelSmile: Toward Fine-Grained Facial Expression Editing
- Nó ComfyUI PixelSmile: GitHub
- Qwen-Image-Edit-2511: Hugging Face
- Qwen2.5-VL-7B-Instruct: Hugging Face
- Qwen-Image-Edit-2511-Lightning: Hugging Face
Agradecimentos
Este fluxo de trabalho implementa e se baseia nos seguintes trabalhos e recursos. Agradecemos com gratidão à comunidade r/StableDiffusion pelo post de origem, ao PixelSmile pelo modelo PixelSmile, e a judian17 pelo nó de Interpolação de Condicionamento ComfyUI PixelSmile por suas contribuições e manutenção. Para detalhes autoritativos, consulte a documentação e repositórios originais vinculados abaixo.
Recursos
- r/StableDiffusion/Source post
- Docs / Release Notes: Reddit post
- PixelSmile/PixelSmile
- Hugging Face: PixelSmile/PixelSmile
- judian17/ComfyUI-PixelSmile-Conditioning-Interpolation
Nota: O uso dos modelos, conjuntos de dados e códigos referenciados está sujeito às respectivas licenças e termos fornecidos por seus autores e mantenedores.
