ControlNet é uma arquitetura de rede neural que adiciona condicionamento espacial a modelos de texto para imagem pré-treinados, como os modelos de difusão Stable Diffusion. Introduzida em um artigo de fevereiro de 2023 por Lvmin Zhang, Anyi Rao e Maneesh Agrawala na Universidade de Stanford, ela permitiu que usuários controlassem a estrutura de uma imagem gerada, não apenas seu conteúdo, ao fornecer uma entrada auxiliar, como um esqueleto de pose humana, um mapa de bordas Canny, um mapa de profundidade ou um esboço aproximado, junto a um Prompt de texto. Antes do ControlNet, os modelos de difusão ofereciam apenas controle indireto sobre a composição por meio da formulação do prompt e da seleção da semente; o ControlNet tornou o controle estrutural direto e confiável.
Arquitetura
O ControlNet funciona clonando os pesos das camadas de codificação de um modelo de difusão pré-treinado em uma cópia treinável, mantendo os pesos do modelo original congelados. A cópia treinável recebe a imagem de condicionamento e é conectada de volta à rede congelada por meio de camadas de "convolução zero", camadas convolucionais inicializadas com pesos zero, de modo que, no início do treinamento, o ramo adicionado não tenha efeito sobre a saída do modelo base. O treinamento então ensina gradualmente a rede a respeitar o sinal de condicionamento sem esquecer catastroficamente o que o modelo base já aprendeu com seu conjunto de pré-treinamento muito maior. Como o modelo base permanece congelado, um único módulo ControlNet pode ser treinado em um conjunto de dados comparativamente pequeno e específico da tarefa, herdando toda a capacidade generativa do modelo de difusão subjacente. Múltiplos módulos ControlNet, cada um especializado em um tipo diferente de condicionamento, também podem ser combinados para controle estrutural composto.
Tipos de condicionamento
O ControlNet foi lançado com suporte a vários modos de condicionamento, cada um exigindo seu próprio módulo treinado: esqueletos OpenPose para controle de pose humana, detecção de bordas Canny para controle baseado em contornos, mapas de profundidade para controlar o layout espacial, detecção de linhas Hough para cenas arquitetônicas e de interiores, mapas de segmentação semântica, mapas normais e entradas de rabisco ou esboço para orientação composicional aproximada. Essa variedade tornou o ControlNet útil em diferentes fluxos de trabalho, desde posar personagens de forma consistente em uma série de ilustrações até converter um rabisco grosseiro em uma imagem finalizada, preservando o layout pretendido pelo artista.
Adoção e impacto
O ControlNet foi lançado como código de código aberto junto com pesos pré-treinados compatíveis com o Stable Diffusion 1.5, e foi rapidamente adotado pela comunidade de geração de imagens de código aberto associada ao Hugging Face, tornando-se um componente padrão de interfaces como o Stable Diffusion WebUI do Automatic1111 e o ComfyUI. Sua chegada é frequentemente citada como um ponto de virada para o uso prático e orientado à produção de modelos de difusão, pois abordou a reclamação central de que prompts de texto sozinhos davam a artistas e designers controle insuficiente sobre a composição. O condicionamento no estilo ControlNet foi posteriormente reimplementado e estendido para modelos base mais novos, incluindo o Stable Diffusion XL, e influenciou como sistemas comerciais posteriores, como Midjourney e FLUX, abordaram a orientação estrutural, mesmo onde esses sistemas usavam mecanismos subjacentes diferentes.
Recepção
O ControlNet foi amplamente considerado dentro da comunidade de pesquisa em visão computacional e IA generativa como um método significativo e de baixo custo para estender as capacidades de um modelo de fundação existente sem retreinamento completo, e sua técnica de convolução zero influenciou trabalhos posteriores sobre condicionamento eficiente e métodos de adaptadores de forma mais ampla. Ele tem sido extensivamente citado como ponto de referência em pesquisas subsequentes sobre geração controlável tanto para imagens quanto, mais tarde, para sistemas de texto para vídeo, que enfrentam uma necessidade análoga de controle estrutural e temporal além do que prompts de texto sozinhos podem especificar.