Extensão gratuita para Chrome — recortes no dispositivo

O que um modelo de recorte no dispositivo «vê»

Um modelo de recorte no dispositivo não «vê» uma pessoa, sapato, animal ou cadeira no sentido humano. Recebe uma representação numérica da imagem e estima, píxel a píxel, que zonas provavelmente pertencem ao sujeito principal. A saída útil é uma máscara: um mapa em tons de cinza que pode tornar-se o canal de transparência do resultado.

Essa distinção explica a velocidade dos recortes automáticos e os seus limites. O modelo usa padrões visuais aprendidos no treino, mas não conhece a sua intenção. Um objecto nítido perto do centro pode parecer importante; um rebordo de vidro ténue ou um fio de cabelo solto pode parecer fundo.

Do arquivo de imagem à entrada do modelo

O arquivo que você escolher primeiro deve ser decodificado. Uma foto compactada não é passada diretamente para o modelo como um bloco de bytes de arquivo. O navegador o transforma em pixels com valores de largura, altura e cor.

O pipeline de inferência prepara então uma entrada do tamanho do modelo. Dependendo do modelo e do tempo de execução, a preparação pode incluir:

As dimensões exatas e regras de normalização pertencem à implementação do modelo. O ponto prático importante é que a inferência geralmente funciona a partir de uma representação preparada, e não de cada pixel fonte em seu tamanho original.

Easy Background Remover executa esta etapa de inferência no navegador com um modelo de segmentação no dispositivo. O arquivo do modelo pode precisar ser baixado antes do primeiro recorte, mas o caminho de processamento de imagem foi projetado para permanecer local quando o modelo estiver pronto. O download do modelo é uma solicitação de ativo; não é a mesma coisa que enviar a foto selecionada para processamento remoto.

A saída é uma máscara de confiança

Para cada local em sua saída, o modelo produz um valor que pode ser interpretado como mais parecido com o assunto ou mais parecido com o fundo. É útil imaginar isso como uma imagem em tons de cinza:

O navegador converte essa saída na máscara alfa funcional. Os pixels coloridos originais podem então ser compostos em um tabuleiro de xadrez, um preenchimento sólido, um gradiente ou outra imagem. Uma exportação transparente armazena a máscara como alfa em vez de pintar o tabuleiro de xadrez no arquivo.

Os valores suaves são importantes. Se cada valor de máscara fosse forçado imediatamente para preto ou branco puro, cabelos, pelos, fibras de tecido, desfoque de movimento e bordas desfocadas se tornariam anormalmente duros. Alfa parcial pode preservar uma transição mais suave. Também pode expor franjas coloridas do fundo antigo, por isso o resultado ainda merece uma verificação visual.

Quais evidências visuais ajudam o modelo

Um modelo de segmentação pode recorrer a mais de uma pista ao mesmo tempo. Pistas fortes geralmente incluem:

Nenhuma dessas pistas é uma garantia. Uma jaqueta escura contra uma parede escura oferece um contraste fraco nos limites. Uma cadeira com espaços estreitos pode conter regiões de fundo que se assemelham ao objeto. Um cenário padronizado pode competir com o assunto real pela atenção.

O modelo está fazendo a melhor estimativa a partir dos pixels disponíveis. Não é possível recuperar detalhes que a imagem nunca capturou.

O que o modelo não sabe

O modelo não sabe automaticamente qual objeto você pretende manter quando vários assuntos estão presentes. Não sabe que um copo transparente é comercialmente importante, que uma sombra deve permanecer para o realismo, ou que uma pequena alça pertence a uma bolsa.

Ele também não recebe uma versão oculta de alta resolução de uma fonte desfocada. Blocos de compressão, realces cortados, desfoque de movimento e detalhes muito pequenos limitam a evidência disponível. Aumentar o zoom de visualização aumenta os pixels na tela; não cria informações ausentes.

É por isso que “a IA detectou” e “a borda está pronta para publicar” são afirmações diferentes. A detecção inicia a edição. A revisão termina.

Por que detalhes finos e transparentes são difíceis

Objetos finos ocupam poucos pixels. Quando uma imagem é redimensionada para inferência, um fio ou fio de cabelo de um pixel pode ser calculado em média com o fundo ao seu redor. Objetos transparentes são difíceis por outro motivo: sua cor visível é parcialmente o fundo antigo. O limite pode ser claro para uma pessoa que entende o objeto, enquanto o padrão de pixels permanece ambíguo.

Sombras suaves criam uma ambiguidade intencional. Sua borda externa desaparece gradualmente e não há um único corte objetivamente correto. Manter a sombra completa pode parecer natural em um fundo semelhante, mas sujo em um novo preenchimento brilhante. Removê-lo pode fazer com que o objeto pareça flutuar.

Estes são problemas de julgamento tanto quanto problemas de modelo.

Máscara de modelo, máscara de trabalho e máscara de exportação

Ajuda separar três etapas:

  1. Máscara de modelo: a estimativa automática retornada por inferência.
  2. Máscara de trabalho: a máscara mostrada no editor após qualquer refinamento Adicionar ou Apagar.
  3. Máscara de exportação: a máscara de trabalho aplicada quando o resultado atual é baixado ou copiado.

Em Easy Background Remover, o refinamento do pincel edita a máscara de trabalho. A exportação usa o resultado editado atual em vez de retornar silenciosamente à máscara automática intocada. Isso permite que o modelo lide com a separação ampla enquanto você corrige detalhes que dependem da intenção.

A visualização exibida pode ser dimensionada para caber no editor. O tamanho da tela não é uma medida confiável dos detalhes internos da máscara. Leia Resolução da máscara versus tamanho da visualização para saber a distinção.

A inferência local ainda tem uma etapa de configuração

A execução de um modelo no dispositivo requer os pesos do modelo e um tempo de execução de navegador compatível. Os pesos são muito maiores do que o código de interface comum, portanto, carregar tudo em cada inicialização do editor seria um desperdício. Uma primeira sessão pode baixar e armazenar em cache o modelo; sessões normais posteriores geralmente podem reutilizá-lo.

Por que a primeira execução faz o download de um modelo explica esse limite sem confundir o download de um ativo de modelo com o upload de uma foto. A inferência pesada também foge do thread da interface principal; consulte Noções básicas de processamento de imagem do Web Worker.

Uma maneira prática de julgar o resultado

Não inspecione apenas o centro do assunto. Verifique a máscara onde as evidências são mais fracas:

Veja o resultado sobre um fundo claro e escuro se o destino final for desconhecido. Um halo pálido pode desaparecer no branco e tornar-se evidente no preto. Em seguida, refine apenas as áreas que afetam o uso pretendido.

A segmentação automática é mais útil quando tratada como uma primeira passagem forte, e não como uma declaração de entendimento perfeito. Para experimentar o corte local completo e o fluxo de refinamento, consulte Introdução.

Continue a explorar

Conteúdos interessantes