Aprendizagem pessoal com IA
e orientação prática

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

Casos semelhantes: https://cloud.tencent.com/developer/article/2365063

 

um exemplo real

 

Uma bela mulher usando um vestido de noiva branco adornado com renda, caminhando pela praia ao pôr do sol. Seu cabelo é suavemente levantado pela brisa, e ela está segurando um buquê de rosas brancas. Seu cabelo é suavemente levantado pela brisa, e ela está segurando um buquê de rosas brancas. pose dinâmica, fotografia, obra-prima, melhor qualidade, 8K, HDR, alta resolução, absurdres: 1.2, Kodak portra 400, grão de filme, fundo desfocado, bokeh: 1.2, grão de filme. fundo desfocado, bokeh: 1.2, lens flare


 

Invertido: nsfw, ugly, paintings, sketches, (worst quality:2), (low quality:2), (normal quality:2), lowres

 

 

Por exemplo, você tem fotos como esta de um manequim vestido, que foi tirada em nosso próprio showroom.

SD Model Dress Up: Inpaint Anything-1

plano de cobertura

 

Se você puder usar a difusão estável, não levará mais de 10 minutos para tirar a primeira foto.

SD Model Dress Up: Inpaint Anything-1

 

 

 

Mesmo que seja necessário fazer ajustes, uma hora é suficiente. Por exemplo:

SD Model Dress Up: Inpaint Anything-3

Geração de manequins Modelo vivo 1

 

SD Model Dress Up: Inpaint Anything-4

Geração de manequins Modelo vivo 2

 

SD Model Dress Up: Inpaint Anything-5

Geração de manequins Modelo vivo 2

 

 

 

I. Ideias para a geração de diagramas de plataforma humana na vida real

 

O que é necessário para transformar uma mesa de manequim em uma pessoa real e ainda manter as roupas?

Nesse ponto, os amigos familiarizados com a difusão estável dirão: Eu sei, é preciso usar a função Inpaint no Tuchengtu e, em seguida, criar uma máscara fora das roupas, para que a difusão estável seja repintada.

Como você faz essa máscara? Se você tiver que fazer o mascaramento com uma pincelada à mão, isso é muito lento; se for esse o caso, não preciso sair com esse em particular.

Mais uma vez, alguém dirá, eu sei, primeiro crie a máscara no Photoshop e depois use a função de redesenho de máscara.

Essa é uma maneira de fazer isso, mas poderia ser mais inteligente agora.

Hoje, vamos usar um plugin inpainting anything, para dar uma foto, que pega a foto e a separa com blocos de cores para coisas diferentes. No final do dia, só precisamos escolher quais blocos de cores queremos transformar em máscaras e, dessa forma, as máscaras são criadas.

O recurso de repintura é usado para aumentar o tamanho real do manequim, mantendo as roupas.

 

SD Model Dress Up: Inpaint Anything-6

 

 

Embora a ideia básica seja essa, se você já tiver feito isso sozinho, saberá que ainda há muitos buracos no caminho.

Portanto, neste artigo, não apenas mostrarei como transformar um boneco em uma pessoa real, mas o mais importante é que também mostrarei como preencho essas lacunas.

Vou explicar todas elas para você agora.

 

 

II. ferramentas de preparação para a realização do modelo de tabela fictícia

 

Esta demonstração está usando a WebUI do Automatic 1111 com o modelo SD 1.5, portanto, vamos nos preparar!

 

Preparação 1: pintar qualquer coisa

 

 

Em primeiro lugar, você precisará do plug-in Inpaint Anything. Verifique a WebUI do Automatic 1111 para ver se há o plug-in Inpaint Anything; caso contrário, instale-o.

SD Model Dress Up: Inpaint Anything-7

 

 

Instalar qualquer tipo de pintura

Vá para Install from URL, digite

https://github.com/Uminosachi/sd-webui-inpaint-anything.git

 

Pronto para instalar

SD Model Dress Up: Inpaint Anything-8

 

Depois de instalado, volte para a guia de instalação, pressione Apply e saia.

SD Model Dress Up: Inpaint Anything-9

 

 

Preparação 2: Modelos para pintura

 

Desta vez, usarei o epiCPhotoGasm para demonstrar que a qualidade do modelo é como se tivesse sido tirada por um fotógrafo mestre, o que o torna especialmente adequado para uso em locais que exigem imagens realistas.

 

Em vez de seu modelo principal, usaremos seu modelo Inpaint hoje.

SD Model Dress Up: Inpaint Anything-10

 

Acesse o link abaixo para fazer o download do modelo Inpaint e instalá-lo para uso posterior.

https://civitai.com/models/132632?modelVersionId=201346

 

Preparação 3: Foto fictícia

 

 

Usaremos nosso exemplo deste aqui

SD Model Dress Up: Inpaint Anything-1

 

Esta foto foi tirada em seu próprio showroom. Esteja avisado de que ele é um manequim preto, o que causará alguns problemas mais tarde. Primeiro, veja o teaser aqui.

Quando esses três itens estiverem prontos, poderemos começar.

 

 

III Demonstrações operacionais

 

Este ensino está usando o modelo SD 1.5 para demonstrar todo o processo.

 

Etapa 1: Selecione o modelo SAM e faça o download do modelo

 

Pressione a guia Inpaint Anything e você verá uma tela como esta

SD Model Dress Up: Inpaint Anything-11

 

Selecione o Segment Model ID do modelo de segmentação semântica a ser usado. Aqui, escolhemos o modelo sam_vit_l_0b3195.pth. Se você acabou de instalá-lo, esses modelos ainda não foram baixados; será necessário pressionar o botão Download model para que o download seja feito.
Carga.

SD Model Dress Up: Inpaint Anything-12

 

 

Etapa 2: Obter um exemplo de diagrama de segmentação

 

 

Carregue a imagem para pintar qualquer coisa e pressione Run Segment Anything.

SD Model Dress Up: Inpaint Anything-13

 

Você verá o diagrama de divisão de exemplo à direita

SD Model Dress Up: Inpaint Anything-14

 

Etapa 3: Faça uma máscara preliminar.

 

Se quisermos usar a função de redesenho posteriormente, precisaremos criar uma máscara da área que queremos redesenhar. Agora que temos blocos de cores separados semanticamente, como podemos criar uma máscara rapidamente?

 

É fácil, basta pegar o mouse e tocar no bloco de cor que deseja transformar em uma máscara. Não é necessário pintar o bloco inteiro, basta tocar no bloco e esperar um pouco para que ele se torne uma máscara.

 

Como queremos que os planos de fundo, bonecos etc. sejam repintados, esses lugares precisam ser escolhidos, mas os planos de fundo são um pouco complicados de fazer
Isso é muito incômodo, portanto, podemos clicar no bloco de cores do vestido e marcar Invert Mask (Inverter máscara).

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

 

 

Depois de selecionar todos eles, pressione Create Mask (Criar máscara) e você verá os resultados da máscara.

SD Model Dress Up: Inpaint Anything-16

 

 

Etapa 4: Visualizar os resultados da máscara

 

Verifique os resultados da máscara para ver se há alguma perdida; na verdade, a tela é mais complexa, por isso é difícil ver claramente; aqui está um truque: a lateral da guia Mask Only para abrir.

SD Model Dress Up: Inpaint Anything-17

 

 

 

Há dois botões nele:

Obter máscara como alfa da imagem

Obter máscara

 

Quando esses dois botões forem pressionados, você poderá ver se a máscara está pronta.

SD Model Dress Up: Inpaint Anything-18

 

Observe que o branco, aqui, é a máscara, a área a ser preenchida com IA no futuro, e o preto é a parte a ser mantida, portanto, não se engane.

 

Etapa 5: Faça o ajuste fino da máscara

 

Como você pode ver nessa imagem mascarada, há outros lugares além das roupas que ainda não foram mascarados (ou seja, há coisas que não deveriam estar lá)
(linhas pretas).

SD Model Dress Up: Inpaint Anything-19

 

É nesse momento que é feito o ajuste fino à mão.

 

Volte ao diagrama que gerou a máscara e pinte as áreas em que deseja adicionar a máscara. Se houver áreas a serem adicionadas em preto, mova-as manualmente e pressione o botão Trim mask by skatch e, inversamente, para adicionar branco, mova-as manualmente e pressione o botão Add mask by skatch.

 

Se achar que o diagrama está muito pequeno para pintar, você pode ampliá-lo pressionando S e, em seguida, pressionar S novamente para restaurá-lo.

SD Model Dress Up: Inpaint Anything-20

 

Plus Black: Máscara de acabamento com botão skatch
Adicionar branco: Adicionar máscara pelo botão skatch

SD Model Dress Up: Inpaint Anything-21

 

Após a aplicação, pressione o botão Adicionar máscara por esboço.

 

Em seguida, vá para a guia Mask Only (Somente máscara) e pressione o botão Obter máscara até Obter máscara como alfa da imagem É isso que queremos?
A Máscara.

SD Model Dress Up: Inpaint Anything-22

 

Se houver outros pontos perdidos, apare-os da mesma forma; se estiver tudo bem, passaremos para a próxima etapa.

 

Etapa 6: Comece a repintar em inpaint anything

 

Quando as máscaras estiverem prontas, podemos começar a solicitar a difusão estável para nos ajudar a preencher o plano de fundo.

 

Vá para a guia inpaint e preencha a menção e a menção inversa. Porque a imagem que quero gerar é: uma linda mulher usando um vestido de noiva e segurando uma rosa branca. Portanto, digite o seguinte teleprompter:

Uma linda mulher usando um vestido de noiva branco enquanto segura um buquê de rosas brancas.
Pose dinâmica, fotografia, obra-prima, melhor qualidade, 8K, HDR, alta resolução, absurdres: 1.2, Kodak portra 400, grão de filme, fundo desfocado, bokeh: 1.2, reflexo de lente.
Kodak portra 400, grão de filme, fundo desfocado, bokeh: 1.2, reflexo de lente

 

O teleprompter reverso é o seguinte:

Nsfw, feio, pinturas, esboços, (pior qualidade:2), (baixa qualidade:2), (qualidade normal:2), lowres

 

SD Model Dress Up: Inpaint Anything-23

 

Selecione um dos modelos de pintura, que são predefinições de pintura de qualquer coisa.

SD Model Dress Up: Inpaint Anything-24

 

 

Como queremos fazer fotos reais, usamos o Uminosachi/realisticVisionV51_v51VAE-inpainting este
Modelos.

 

Pressione Run Inpainting (Executar pintura) e você verá uma imagem do modelo vivo.

SD Model Dress Up: Inpaint Anything-1

 

 

Parece bom, vamos ver mais alguns.

SD Model Dress Up: Inpaint Anything-1

 

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

 

 

 

Depois de receber o gráfico, você acha que esse ensino acabou?

 

Ainda não! Porque ainda há algumas dúvidas se realmente queremos usá-lo

  • Não há como escolher muitas fotos de uma só vez.
  • Não há como usar o modelo que desejamos

 

Então, o que fazer? Então, precisamos do próximo passo.

 

Etapa 7: Use o recurso de redesenho do Tupelo

 

 

Volte para a guia Mask Only e pressione "Send to img 2 img inpaint".

SD Model Dress Up: Inpaint Anything-28

 

 

Ao enviar a máscara, você acessará a guia Inpaint Upload no Tupelo. Você verá que sua imagem e máscara foram enviadas!

SD Model Dress Up: Inpaint Anything-29

 

 

É nesse momento que as pessoas que estão familiarizadas com o SD ficarão felizes por voltarem a um lugar conhecido e finalmente poderem escolher seu modelo favorito.

Então, vamos escolher um modelo! Aqui eu escolho o chilloutmix.

 

Em seguida, ajuste o tamanho da foto, depois de pressionar o quadro triangular, o sistema ajusta automaticamente a largura e a altura para o mesmo tamanho da foto, sem que tenhamos que digitar novamente.

SD Model Dress Up: Inpaint Anything-30

 

Agora, para preencher o teleprompter, queremos alterá-lo para que a bela mulher esteja na praia com seu vestido de noiva, seu cabelo esteja soprando suavemente na brisa e ela esteja segurando um buquê de rosas brancas. Portanto, vamos alterar o teleprompter da seguinte forma:

Uma bela mulher usando um vestido de noiva branco adornado com renda, caminhando pela praia ao pôr do sol.
Seu cabelo é suavemente levantado pela brisa, e ela está segurando um buquê de rosas brancas. pose dinâmica, fotografia, obra-prima, melhor qualidade 8K, HDR, highres, absurdres: 1.2,
Kodak portra 400, grão de filme, fundo desfocado, bokeh: 1.2, reflexo de lente

 

O teleprompter reverso permanece inalterado:

Nsfw, feio, pinturas, esboços, (pior qualidade:2), (baixa qualidade:2), (qualidade normal:2), lowres

 

O amostrador é o DPM++ 2 M Karras com a etapa de amostragem definida como 40.

 

Todos os outros parâmetros são usados como predefinições, conforme mostrado abaixo:

SD Model Dress Up: Inpaint Anything-31

 

Tudo deve estar pronto para ser gerado agora!

Apareceram coisas estranhas!

SD Model Dress Up: Inpaint Anything-32

 

 

 

Por que a modelo gerada por IA não troca de roupa? As roupas parecem estar flutuando no ar.

É o conteúdo Masked que precisa ser ajustado? A predefinição atual é a original.

SD Model Dress Up: Inpaint Anything-33

 

Vamos mudar para outra coisa, começando com o preenchimento.

SD Model Dress Up: Inpaint Anything-34

 

 

Ele ainda não está se vestindo bem. Em seguida, passe-o para ruído latente e veja.

SD Model Dress Up: Inpaint Anything-35

 

A imagem é ainda mais estranha. Então, será que não vai ser nada latente?

SD Model Dress Up: Inpaint Anything-36

 

 

Ou seja, não está vestido! O que está acontecendo aqui? Por que as roupas sempre ficam vestidas?

Então, aqui chegamos à conclusão... está quebrado ....

Não tire conclusões precipitadas ainda, isso se deve ao fato de termos escolhido o modelo errado.

 

Etapa 8: Selecione epiCPhotoGasm Inpainting Model Repainting

 

 

O motivo pelo qual as roupas nem sempre se encaixam é simples: o que estamos fazendo é repintar, não apenas gerar, portanto, usaremos um modelo projetado especificamente para repintar.

 

O ChilloutMix não é o modelo a ser usado para repintura, portanto, usaremos o epiCPhotoGasm_zinpainting baixado anteriormente.
Modelos.

SD Model Dress Up: Inpaint Anything-37

 

Com o modelo alterado, vamos começar a gerá-lo. Agora deve estar tudo certo!

 

Vamos dar uma olhada nos resultados:

SD Model Dress Up: Inpaint Anything-38

 

Temos um manequim bem vestido e bonito.

 

O que está acontecendo aqui? Agora mesmo as roupas não foram vestidas, e agora a pessoa se foi, onde está a beleza prometida? Pode ser azar, gere-o novamente e veja.

SD Model Dress Up: Inpaint Anything-39

 

Como resultado, a beleza está lá, mas o que há com o pano preto em seu peito? Nós não pedimos esse tecido!

 

O motivo disso é que o parâmetro de conteúdo da máscara atual é original, que se referirá à estrutura e à cor da imagem original quando ela for redesenhada, e é por isso que há plataformas e panos pretos, pois eles estão presentes na imagem original. Então, como resolvemos esse problema?

 

Simples, basta alterar o parâmetro para outra coisa, por exemplo, vamos alterar para preenchimento Você obterá um diagrama como o abaixo.

SD Model Dress Up: Inpaint Anything-40

 

SD Model Dress Up: Inpaint Anything-41

 

SD Model Dress Up: Inpaint Anything-42

 

SD Model Dress Up: Inpaint Anything-43

 

Se for usado ruído latente, o resultado será semelhante ao seguinte

SD Model Dress Up: Inpaint Anything-44

 

SD Model Dress Up: Inpaint Anything-45

 

SD Model Dress Up: Inpaint Anything-46

 

 

Se nada latente for usado, então o

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

 

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

 

 

SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

 

Não é uma ótima imagem? Ela ainda não foi ajustada para ter esse tipo de qualidade. Será melhor se for otimizada novamente, então qual é a próxima etapa para otimizá-la?

 

 

IV Perguntas frequentes

 

 

Depois de operar dessa forma, você poderá ter algumas perguntas, uma a uma, para explicar.

 

 

Pergunta 1: O que é particionamento de instância?

 

A segmentação de instâncias refere-se ao processo de diferenciação entre coisas em uma imagem, rotulando coisas diferentes com cores diferentes, sendo que cada cor representa uma coisa.

 

Desta vez, o assunto é a divisão com exemplos para acelerar o tempo que levamos para criar uma máscara.

 

 

Pergunta 2: O Inpaint Anything tem modelos diferentes do Segment Anything, qual é a diferença?

 

 

O modelo Segment Anything, também conhecido como SAM, oferece 9 tipos de modelos Segment Anything no Inpaint Anything.

SD Model Dress Up: Inpaint Anything-50

 

Ele pode ser dividido em 4 categorias, que explicaremos uma a uma.

 

Classe 1: início do sam_vit - modelo SAM fornecido pelo Meta

 

O início do sam_vit é o modelo fornecido pelo Meta. Como a Meta batizou seu modelo de segmentação semântica de Segment Anything Model, é a partir daí que o SAM de que estamos falando atualmente começa e deve ser considerado o criador dessa onda de modelos SAM.

 

Essa é uma série de modelos anunciados pela Meta em abril de 2023, e outros modelos SAM serão comparados a essa série. Há 3 modelos, em termos de tamanho, h (enorme), l (grande), b (base), enorme > grande > base, e a precisão é teoricamente proporcional ao tamanho, e a velocidade de computação também é proporcional ao tamanho.

 

Em termos de efeito, há pouca diferença entre enorme e grande, mas há uma diferença significativa entre básico e enorme.

SD Model Dress Up: Inpaint Anything-51

 

Referência Meta SAM:

https://segment-anything.com/

https://github.com/facebookresearch/segment-anything

https://huggingface.co/facebook/sam-vit-base/tree/main

https://huggingface.co/facebook/sam-vit-large

https://huggingface.co/facebook/sam-vit-huge

 

 

Aula 2: início da série sam_hq_vit - Segment Anything in High Quality

 

O modelo que começa com sam_hq_vit é um modelo de segmentação semântica de alta qualidade fornecido pelo Visual Intelligence and Systems Group da ETH Zürich e, de acordo com os dados fornecidos em seu artigo, sua precisão de corte é melhor do que a do Meta, por isso é chamado de alta qualidade. De acordo com os dados fornecidos em seu artigo, a precisão de sua segmentação é melhor do que a do Meta, por isso é chamada de alta qualidade, embora a região segmentada seja mais fina do que a do Meta, mas a diferença não é significativa em nosso caso.

SD Model Dress Up: Inpaint Anything-52

 

Referência SAM HQ:

https://github.com/SysCV/sam-hq

https://huggingface.co/lkeab/hq-sam/tree/main

 

Aula 3: Início do FastSAM - Série FastSAM

 

 

Para obter bons resultados e economizar memória, você pode usar a série FastSAM, oferecida pelo CASIA-IVA-Lab (CASIA-IVA-Lab). Eu mesmo uso esse modelo em máquinas com VRAM pequena.

 

Ele está disponível em dois modelos, X e S.

O modelo X funcionou bem em nosso exemplo de vestido de noiva, mas o S não teria sido adequado para o nosso exemplo.

SD Model Dress Up: Inpaint Anything-53

 

As informações sobre o FastSAM são fornecidas abaixo:

https://github.com/CASIA-IVA-Lab/FastSAM

https://huggingface.co/An-619/FastSAM

 

 

 

Categoria 4: SAM móvel

 

SAM pequeno e rápido, um SAM que pode ser executado rapidamente mesmo com uma CPU. Porém, o efeito também é um dos piores, adequado apenas para distinguir grandes blocos de material.

SD Model Dress Up: Inpaint Anything-54

 

Referência SAM móvel:

https://github.com/ChaoningZhang/MobileSAM

https://huggingface.co/dhkim2810/MobileSAM/tree/main

 

 

 

Pergunta 3: O que o parâmetro de conteúdo Masked do Inpaint controla?

 

SD Model Dress Up: Inpaint Anything-1

 

Há quatro opções para o conteúdo Masked (mascarado), descritas abaixo:

 

Opção 1: Preencher

 

A opção de preenchimento borra a imagem da área redesenhada o máximo possível, mantendo apenas a estrutura geral e as cores. Portanto, ela é usada quando é necessário repintar em grande escala.

 

Em nosso paradigma, a posição do nível do mar, o curso da dificuldade da areia são todos iguais, até mesmo a cor do pôr do sol é semelhante.

SD Model Dress Up: Inpaint Anything-56

 

 

 

Opção 2: Original

 

Original se refere à imagem original, e a imagem gerada será muito semelhante à imagem original em termos de blocos, cores e assim por diante.

 

Em nosso exemplo, essa opção deixaria a parte preta do manequim e a direção da praia permaneceria.

SD Model Dress Up: Inpaint Anything-57 (Pinte qualquer coisa)

 

Opção 3: ruído latente

 

O ruído latente gera ruído na parte a ser redesenhada, o que tende a produzir conteúdo irrelevante, e é usado quando a criatividade é necessária.

 

Como você verá em nossa demonstração, a imagem gerada com ruído latente repetirá a pequena coisa mencionada no prompt (por exemplo, rosas brancas em nosso caso).

SD Model Dress Up: Inpaint Anything-58

 

 

 

Opção 4: Nada latente

 

O Latent Nothing se refere às cores próximas à área a ser redesenhada, encontra a média das cores próximas e preenche a área redesenhada. Isso é ótimo para remover objetos indesejados.

 

Mas no nosso exemplo desta vez, não parece que há remoção de coisas porque estamos redesenhando em grande escala. Mas quando você observar os diagramas gerados com o nada latente, verá que seus esquemas de cores e composições serão muito semelhantes, por exemplo, as cores da areia também são muito semelhantes.

SD Model Dress Up: Inpaint Anything-1

 

 

V. Análise da questão da extensão

 

 

Vamos revisar o que acabamos de fazer.

 

Em resumo, há duas etapas principais:

  • Mascaramento com o recurso de segmentação semântica do Inpaint Anything.
  • Em seguida, ele é transferido para o upload de tinta para a Tupelo e para a tinta para a repintura de modelos especializados.

 

Só isso já o teria tornado tão produtivo quanto é hoje.

SD Model Dress Up: Inpaint Anything-60 (pintar qualquer coisa)

 

SD Model Dress Up: Inpaint Anything-40

 

SD Model Dress Up: Inpaint Anything-61

 

SD Model Dress Up: Inpaint Anything-44

 

 

Tudo poderia ser melhor, e ainda haveria vários problemas com a abordagem atual:

  1. E se o modelo que eu quiser não tiver um modelo inpaint? Posso usar um modelo genérico?
  2. O que você precisa fazer para mudar a luz e a sombra de suas roupas?
  3. Às vezes, pode parecer uma foto photoshopada. O que preciso fazer para torná-la mais natural?
  4. Como gerar imagens mais ricas que não são aquelas feitas para se parecerem com estas agora.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " SD Model Dress Up: Inpaint Anything (Pinte qualquer coisa)

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