Bahri Batuhan Bilecen, Ahmet Berke Gokmen, Furkan Guzelant e Aysegul Dundar
A estilização 3D da cabeça transforma características faciais realistas em representações artísticas, melhorando o envolvimento do usuário em jogos e aplicativos de realidade virtual. Embora os geradores com reconhecimento de 3D tenham feito avanços significativos, muitos métodos de estilização 3D fornecem principalmente visualizações quase frontais e lutam para preservar as identidades únicas dos assuntos originais, muitas vezes resultando em resultados que carecem de diversidade e individualidade. Este artigo aborda esses desafios aproveitando o modelo PanoHead, sintetizando imagens a partir de uma perspectiva abrangente de 360 graus. Propomos uma nova estrutura que emprega destilação de log-verossimilhança negativa (LD) para melhorar a preservação da identidade e melhorar a qualidade da estilização. Ao integrar pontuação de grade multivisualização e gradientes de espelho na arquitetura 3D GAN e introduzir uma técnica de pesagem de classificação de pontuação, nossa abordagem alcança melhorias qualitativas e quantitativas substanciais. Nossas descobertas não apenas avançam no estado da estilização da cabeça 3D, mas também fornecem informações valiosas sobre processos eficazes de destilação entre modelos de difusão e GANs, com foco na questão crítica da preservação da identidade.
git clone --recursive https://github.com/three-bee/3d_head_stylization.git
cd ./3d_head_stylization && pip install -r requirements.txt
Seguimos a abordagem do PanoHead para extração de pose e alinhamento facial. Para isso, você precisa seguir o procedimento de configuração do PanoHead e garantir que não pule a configuração do 3DDFA_V2. Em seguida, execute PanoHead/projector.py
e omita o estágio project_pti
para executar apenas a codificação W+.
Para sua comodidade, disponibilizamos latentes W+ de diversas identidades da vida real em uma pasta example
.
Baixe todas as redes para os locais desejados. Também fornecemos pontos de verificação estilizados do gerador para vários prompts neste link.
Rede | Nome do arquivo | Localização |
---|---|---|
PanoHead | easy-khair-180-gpc0.8-trans10-025000.pkl | ${G_ckpt_path} |
Visão realista v5.1 | Realistic_Vision_V5.1_noVAE/ | ${diff_ckpt_path} |
Borda ControlNet | sd-controlnet-canny/ | ${controlnet_edge_path} |
Profundidade ControlNet | sd-controlnet-depth/ | ${controlnet_depth_path} |
ProfundidadeQualquer coisaV2 | depth_anything_v2_vitb.pth | ${depth_path} |
Altere ${stylized_G_ckpt_path}
com os caminhos dos pontos de verificação fornecidos neste link. A pasta example
fornece vários cabeçotes codificados em W+ da vida real. Fornecer um caminho inválido para latent_list_path
estilizará synth_sample_num
de amostras sintéticas.
python infer_LD.py
--save_path "work_dirs/demo"
--G_ckpt_path ${G_ckpt_path}
--stylized_G_ckpt_path ${stylized_G_ckpt_path}
--latent_list_path "example"
--synth_sample_num 10
Altere prompt
e save_path
. Você pode brincar com outros hiperparâmetros no arquivo de treinamento.
python train_LD.py
--prompt "Portrait of a werewolf"
--save_path "work_dirs/demo"
--diff_ckpt_path ${diff_ckpt_path}
--depth_path ${depth_path}
--G_ckpt_path ${G_ckpt_path}
--controlnet_edge_path ${controlnet_edge_path}
--controlnet_depth_path ${controlnet_depth_path}
@misc{bilecen2024identitypreserving3dhead,
title={Identity Preserving 3D Head Stylization with Multiview Score Distillation},
author={Bahri Batuhan Bilecen and Ahmet Berke Gokmen and Furkan Guzelant and Aysegul Dundar},
year={2024},
url={https://arxiv.org/abs/2411.13536},
}
Direitos autorais 2024 Bilkent DLR. Licenciado sob a Licença Apache, Versão 2.0 (a "Licença").