Suivez nous sur

BrushNet : Inpainting d'images Plug and Play avec diffusion Ă  double branche

Intelligence Artificielle

BrushNet : Inpainting d'images Plug and Play avec diffusion Ă  double branche

mm
BrushNet : Inpainting d'images Plug and Play avec diffusion Ă  double branche

L'inpainting d'images est l'un des problèmes classiques de la vision par ordinateur, et il vise Ă  restaurer des rĂ©gions masquĂ©es dans une image avec un contenu plausible et naturel. Les travaux existants utilisant des techniques traditionnelles d'inpainting d'images telles que les rĂ©seaux contradictoires gĂ©nĂ©ratifs ou GANS, et les encodeurs automatiques variationnels ou VAE nĂ©cessitent souvent des fonctionnalitĂ©s auxiliaires conçues Ă  la main, mais en mĂŞme temps, ne fournissent pas de rĂ©sultats satisfaisants. Au cours des dernières annĂ©es, les mĂ©thodes basĂ©es sur la diffusion ont gagnĂ© en popularitĂ© au sein de la communautĂ© de la vision par ordinateur en raison de leurs remarquables capacitĂ©s de gĂ©nĂ©ration d'images de haute qualitĂ©, de leur diversitĂ© de sortie et de leur contrĂ´le fin. Les premières tentatives d'utilisation de modèles de diffusion pour l'inpainting d'images guidĂ©es par texte ont modifiĂ© la stratĂ©gie de dĂ©bruitage standard en Ă©chantillonnant les rĂ©gions masquĂ©es Ă  partir d'un modèle de diffusion prĂ©-entraĂ®nĂ© et les zones non masquĂ©es de l'image donnĂ©e. Bien que ces mĂ©thodes aient abouti Ă  des performances satisfaisantes dans des tâches simples d’inpainting d’images, elles ont rencontrĂ© des difficultĂ©s avec les formes de masques complexes, les invites de texte et le contenu des images, ce qui a entraĂ®nĂ© un manque gĂ©nĂ©ral de cohĂ©rence. Le manque de cohĂ©rence observĂ© dans ces mĂ©thodes peut ĂŞtre dĂ» principalement Ă  leur connaissance perceptuelle limitĂ©e des limites du masque et du contexte de la rĂ©gion d'image non masquĂ©e. 

MalgrĂ© les progrès, la recherche et le dĂ©veloppement de ces modèles au cours des dernières annĂ©es, l’inpainting d’images reste un obstacle majeur pour les dĂ©veloppeurs de vision par ordinateur. Les adaptations actuelles des modèles de diffusion pour les tâches d'inpainting d'images impliquent de modifier la stratĂ©gie d'Ă©chantillonnage, ou le dĂ©veloppement de modèles de diffusion spĂ©cifiques Ă  l'inpainting souffrent souvent d'une qualitĂ© d'image rĂ©duite et d'une sĂ©mantique incohĂ©rente. Pour relever ces dĂ©fis et ouvrir la voie aux modèles d'image inpainting, dans cet article, nous parlerons de BrushNet, un nouveau framework plug and play Ă  double branche qui intègre des fonctionnalitĂ©s d'image masquĂ©e au niveau des pixels dans toute diffusion prĂ©-entraĂ®nĂ©e. modèle, garantissant ainsi la cohĂ©rence et de meilleurs rĂ©sultats sur les tâches d'inpainting d'images. Le framework BrushNet introduit un nouveau paradigme dans lequel le framework divise les caractĂ©ristiques de l'image et le bruit latent en branches distinctes. La division des caractĂ©ristiques de l'image et des latents bruyantes diminue considĂ©rablement la charge d'apprentissage du modèle et facilite une incorporation nuancĂ©e des informations essentielles de l'image masquĂ©e de manière hiĂ©rarchique. En plus du framework BrushNet, nous parlerons Ă©galement de BrushBench et BrushData qui facilitent respectivement l'Ă©valuation des performances basĂ©e sur la segmentation et la formation Ă  l'inpainting d'images. 

Cet article vise Ă  couvrir le framework BrushNet en profondeur et nous explorons le mĂ©canisme, la mĂ©thodologie, l'architecture du framework ainsi que sa comparaison avec les frameworks de pointe. Alors, commençons. 

BrushNet : Inpainting d'images avec diffusion Ă  double branche

L'inpainting d'images, une mĂ©thode qui tente de restaurer les rĂ©gions de mission d'une image tout en conservant la cohĂ©rence globale, est un problème de longue date dans le domaine de la vision par ordinateur et trouble les dĂ©veloppeurs et les chercheurs depuis quelques annĂ©es maintenant. L'inpainting d'images trouve ses applications dans une grande variĂ©tĂ© de tâches de vision par ordinateur, notamment l'Ă©dition d'images et les essais virtuels. RĂ©cemment, des modèles de diffusion comme Diffusion stable, et Stable Diffusion 1.5 ont dĂ©montrĂ© une capacitĂ© remarquable Ă  gĂ©nĂ©rer des images de haute qualitĂ© et offrent aux utilisateurs la flexibilitĂ© nĂ©cessaire pour contrĂ´ler les contrĂ´les sĂ©mantiques et structurels. Le potentiel remarquable des modèles de diffusion est ce qui a incitĂ© les chercheurs Ă  recourir Ă  des modèles de diffusion pour des tâches d’inpainting d’images de haute qualitĂ© qui s’alignent sur les invites de saisie du texte. 

Les mĂ©thodes employĂ©es par les cadres d'inpainting guidĂ©s par texte traditionnels basĂ©s sur la diffusion peuvent ĂŞtre divisĂ©es en deux catĂ©gories, Modification de la stratĂ©gie d'Ă©chantillonnage ou Modèles d'inpainting dĂ©diĂ©s. La mĂ©thode de modification de la stratĂ©gie d'Ă©chantillonnage modifie le processus de dĂ©bruitage standard en Ă©chantillonnant les rĂ©gions masquĂ©es Ă  partir d'un modèle de diffusion prĂ©-entraĂ®nĂ© et en copiant-collant les rĂ©gions non masquĂ©es de l'image donnĂ©e Ă  chaque Ă©tape de dĂ©bruitage. Bien que des approches de modification de la stratĂ©gie d'Ă©chantillonnage puissent ĂŞtre mises en Ĺ“uvre dans des modèles de diffusion arbitraires, elles aboutissent souvent Ă  des rĂ©sultats d'inpainting incohĂ©rents car elles ont une connaissance perceptuelle limitĂ©e des limites du masque et du contexte de la rĂ©gion d'image non masquĂ©e. D'autre part, les modèles d'inpainting dĂ©diĂ©s affinent un modèle d'inpainting d'image conçu spĂ©cifiquement en Ă©largissant les dimensions du canal d'entrĂ©e du modèle de diffusion de base pour incorporer une image et des masques corrompus. Bien que les modèles d'inpainting dĂ©diĂ©s permettent au modèle de diffusion de gĂ©nĂ©rer des rĂ©sultats plus satisfaisants avec des modèles spĂ©cialisĂ©s sensibles Ă  la forme et au contenu, il peut s'agir ou non de la meilleure conception architecturale pour les modèles d'inpainting d'images. 

Comme le montre l’image suivante, les modèles d’inpainting dĂ©diĂ©s fusionnent très tĂ´t l’image masquĂ©e latente, la latente bruyante, le texte et le masque. La conception architecturale de ces modèles d'inpainting dĂ©diĂ©s influence facilement les caractĂ©ristiques de l'image masquĂ©e et empĂŞche les couches suivantes de l'architecture UNet d'obtenir des caractĂ©ristiques d'image masquĂ©es pures en raison de l'influence du texte. De plus, gĂ©rer la gĂ©nĂ©ration et la condition dans une seule branche impose une charge supplĂ©mentaire Ă  l'architecture UNet, et comme ces approches nĂ©cessitent Ă©galement un rĂ©glage fin de diffĂ©rentes variantes du squelette de diffusion, ces approches sont souvent exhaustives dans le temps et avec une transfĂ©rabilitĂ© limitĂ©e. 

Il peut sembler que l'ajout d'une branche supplĂ©mentaire dĂ©diĂ©e Ă  l'extraction des caractĂ©ristiques des images masquĂ©es pourrait ĂŞtre une solution adĂ©quate aux problèmes mentionnĂ©s ci-dessus. Cependant, les frameworks existants aboutissent souvent Ă  l'extraction et Ă  l'insertion d'informations inadĂ©quates lorsqu'ils sont appliquĂ©s directement Ă  l'inpainting. En consĂ©quence, les frameworks existants comme ControlNet donnent des rĂ©sultats insatisfaisants par rapport aux modèles d'inpainting dĂ©diĂ©s. Pour rĂ©soudre ce problème de la manière la plus efficace possible, le framework BrushNet introduit une branche supplĂ©mentaire au rĂ©seau de diffusion d'origine et crĂ©e ainsi une architecture plus adaptĂ©e aux tâches d'inpainting d'images. La conception et l'architecture du framework BrushNet peuvent ĂŞtre rĂ©sumĂ©es en trois points. 

  1. Au lieu d'initialiser les couches de convolution de manière alĂ©atoire, le framework BrushNet implĂ©mente un encodeur VAE pour traiter l'image masquĂ©e. En consĂ©quence, le framework BrushNet est capable d'extraire plus efficacement les fonctionnalitĂ©s de l'image pour les adapter Ă  la distribution UNet. 
  2. Le framework BrishNet intègre progressivement l'intĂ©gralitĂ© des fonctionnalitĂ©s UNet couche par couche dans l'architecture UNet prĂ©-entraĂ®nĂ©e, une approche hiĂ©rarchique qui permet un contrĂ´le dense par pixel. 
  3. Le framework BrushNet supprime l'attention croisĂ©e du texte du composant UNet pour garantir que les informations pures sur l'image sont prises en compte dans la branche supplĂ©mentaire. De plus, le modèle BrushNet propose Ă©galement de mettre en Ĺ“uvre une stratĂ©gie de fusion floue pour obtenir une meilleure cohĂ©rence ainsi qu'une plus grande plage de contrĂ´labilitĂ© dans les rĂ©gions non masquĂ©es de l'image. 

BrushNet : Méthode et Architecture

La figure suivante nous donne un bref aperçu du framework BrushNet. 

Comme on peut le constater, le cadre utilise une stratĂ©gie Ă  double branche pour l'insertion de guidage d'image masquĂ©e et utilise des opĂ©rations de fusion avec un masque flou pour assurer une meilleure prĂ©servation des rĂ©gions non masquĂ©es. Il convient de noter que le framework BrushNet est capable d'ajuster l'Ă©chelle ajoutĂ©e pour obtenir un contrĂ´le flexible. Pour une entrĂ©e d'image masquĂ©e donnĂ©e et le masque, le modèle BrushNet gĂ©nère une image peinte. Le modèle sous-Ă©chantillonne d'abord le masque pour s'adapter Ă  la taille de l'espace latent, et l'image masquĂ©e est transmise en entrĂ©e Ă  l'encodeur VAE pour aligner la distribution de l'espace latent. Le modèle concatène ensuite l'image masquĂ©e latente, l'image latente bruyante et le masque sous-Ă©chantillonnĂ©, et l'utilise comme entrĂ©e. Les fonctionnalitĂ©s extraites du modèle sont ensuite ajoutĂ©es Ă  la couche UNet prĂ©-entraĂ®nĂ©e après un bloc de convolution zĂ©ro. Après dĂ©bruitage, le modèle mĂ©lange l'image masquĂ©e et l'image gĂ©nĂ©rĂ©e avec un masque flou. 

Guide d’image masquée

Le framework BrushNet insère la fonctionnalitĂ© d'image masquĂ©e dans le rĂ©seau de diffusion prĂ©-entraĂ®nĂ© Ă  l'aide d'une branche supplĂ©mentaire, qui sĂ©pare explicitement l'extraction de fonctionnalitĂ©s d'images masquĂ©es du processus de gĂ©nĂ©ration d'images. L'entrĂ©e est formĂ©e en concatĂ©nant l'image masquĂ©e latente, la latente bruyante et le masque sous-Ă©chantillonnĂ©. Pour ĂŞtre plus spĂ©cifique, la latente bruyante fournit des informations pour la gĂ©nĂ©ration d'images au cours du processus de gĂ©nĂ©ration actuel et aide le cadre Ă  amĂ©liorer la cohĂ©rence sĂ©mantique de la fonctionnalitĂ© d'image masquĂ©e. Le framework BrushNet extrait ensuite l'image masquĂ©e latente de l'image masquĂ©e Ă  l'aide d'un AutoEncoder variationnel. De plus, le cadre utilise une interpolation cubique pour sous-Ă©chantillonner le masque afin de garantir que la taille du masque s'aligne sur l'image masquĂ©e latente et sur la latente bruyante. Pour traiter les caractĂ©ristiques de l'image masquĂ©e, le framework BrushNet implĂ©mente un clone du modèle de diffusion prĂ©-entraĂ®nĂ© et exclut les couches d'attention croisĂ©e du modèle de diffusion. La raison en est que les poids prĂ©-entraĂ®nĂ©s du modèle de diffusion servent d'a priori puissant pour extraire les caractĂ©ristiques de l'image masquĂ©e, et l'exclusion des couches d'attention croisĂ©e garantit que le modèle ne prend en compte que les informations d'image pures dans la branche supplĂ©mentaire. Le framework BrushNet insère les fonctionnalitĂ©s dans le modèle de diffusion gelĂ© couche par couche, permettant ainsi un contrĂ´le hiĂ©rarchique dense par pixel, et utilise Ă©galement des couches Ă  convolution nulle pour Ă©tablir une connexion entre le modèle BrushNet entraĂ®nable et le modèle verrouillĂ©, garantissant que le bruit nocif a Ă©tĂ© supprimĂ©. aucune influence sur les Ă©tats cachĂ©s dans la copie entraĂ®nable pendant les Ă©tapes de formation initiales. 

Opération de mélange

Comme mentionnĂ© prĂ©cĂ©demment, effectuer l'opĂ©ration de fusion dans l'espace latent redimensionne les masques, ce qui entraĂ®ne souvent plusieurs inexactitudes, et le framework BrushNet rencontre un problème similaire lorsqu'il redimensionne le masque pour qu'il corresponde Ă  la taille de l'espace latent. En outre, il convient de noter que les opĂ©rations de codage et de dĂ©codage dans les autoencodeurs variationnels ont des opĂ©rations limitĂ©es en soi et peuvent ne pas garantir une reconstruction complète de l'image. Pour garantir que le cadre reconstruit une image totalement cohĂ©rente de la rĂ©gion non masquĂ©e, les travaux existants ont mis en Ĺ“uvre diffĂ©rentes techniques, telles que la copie des rĂ©gions non masquĂ©es Ă  partir de l'image originale. Bien que cette approche fonctionne, elle entraĂ®ne souvent un manque de cohĂ©rence sĂ©mantique dans la gĂ©nĂ©ration des rĂ©sultats finaux. D’un autre cĂ´tĂ©, d’autres mĂ©thodes, comme l’adoption d’opĂ©rations de mĂ©lange latent, rencontrent des difficultĂ©s pour prĂ©server les informations souhaitĂ©es dans les rĂ©gions non masquĂ©es. 

ContrĂ´le flexible

La conception architecturale du framework BrushNet en fait un choix appropriĂ© pour les intĂ©grations plug and play inhĂ©rentes Ă  divers modèles de diffusion prĂ©-entraĂ®nĂ©s, et permet une Ă©chelle de prĂ©servation flexible. Étant donnĂ© que le framework BrishNet ne modifie pas les poids du modèle de diffusion prĂ©-entraĂ®nĂ©, les dĂ©veloppeurs ont la possibilitĂ© de l'intĂ©grer en tant que composant plug and play avec un modèle de diffusion affinĂ©, permettant une adoption et une expĂ©rimentation faciles avec des modèles prĂ©-entraĂ®nĂ©s. De plus, les dĂ©veloppeurs ont Ă©galement la possibilitĂ© de contrĂ´ler l'Ă©chelle de prĂ©servation des rĂ©gions non masquĂ©es en incorporant les fonctionnalitĂ©s du modèle BrushNet dans le modèle de diffusion figĂ© avec le poids w donnĂ© qui dĂ©termine l'influence du framework BrushNet sur l'Ă©chelle de prĂ©servation, offrant aux dĂ©veloppeurs la possibilitĂ© d'ajuster les niveaux de conservation souhaitĂ©s. Enfin, le framework BrushNet permet aux utilisateurs d'ajuster l'Ă©chelle de flou et de dĂ©cider d'implĂ©menter ou non l'opĂ©ration de flou, personnalisant ainsi facilement l'Ă©chelle de prĂ©servation des rĂ©gions non masquĂ©es, laissant place Ă  des ajustements flexibles et Ă  un contrĂ´le prĂ©cis du processus d'inpainting de l'image. . 

BrushNet : Mise en œuvre et résultats

Pour analyser ses rĂ©sultats, le framework BrushNet propose BrushBench, un basĂ© sur la segmentation Ensemble de donnĂ©es d'inpainting d'images avec plus de 600 images, chaque image Ă©tant accompagnĂ©e d'un masque annotĂ© par l'homme et d'une annotation de lĂ©gende. Les images de l'ensemble de donnĂ©es de rĂ©fĂ©rence sont rĂ©parties uniformĂ©ment entre les images naturelles et artificielles, et garantissent Ă©galement une rĂ©partition uniforme entre les diffĂ©rentes catĂ©gories, permettant une Ă©valuation Ă©quitable entre les diffĂ©rentes catĂ©gories. Pour amĂ©liorer encore plus l'analyse des tâches d'inpainting, le framework BrushNet catĂ©gorise l'ensemble de donnĂ©es en deux parties distinctes sur la base des mĂ©thodes utilisĂ©es : basĂ©e sur la segmentation et les masques de pinceau. 

Comparaison quantitative

Le tableau suivant compare le framework BrushNet aux modèles d'inpainting d'images basĂ©s sur la diffusion existants sur l'ensemble de donnĂ©es BrushBench avec la diffusion stable comme modèle de base. 

Comme on peut l'observer, le framework BrushNet dĂ©montre une efficacitĂ© remarquable en termes de prĂ©servation des rĂ©gions masquĂ©es, d'alignement du texte et de qualitĂ© d'image. De plus, des modèles comme Stable Diffusion Inpainting, Peintre HD, PowerPaint et d'autres dĂ©montrent de solides performances sur les tâches d'inpainting d'images Ă  l'intĂ©rieur, bien qu'ils ne parviennent pas Ă  reproduire leurs performances sur les tâches d'inpainting Ă  l'extĂ©rieur, notamment en termes d'alignement du texte et de qualitĂ© d'image. Dans l’ensemble, le framework BrushNet fournit les meilleurs rĂ©sultats. 

De plus, le tableau suivant compare le framework BrushNet aux modèles d'inpainting d'images basĂ©s sur la diffusion existants sur l'ensemble de donnĂ©es EditBench, et les performances sont comparables Ă  celles observĂ©es sur l'ensemble de donnĂ©es BrushBench. Les rĂ©sultats indiquent que le framework BrushNet offre de solides performances sur un large Ă©ventail de tâches d'inpainting d'images avec diffĂ©rents types de masques. 

Comparaison qualitative

La figure suivante compare qualitativement le cadre BrushNet aux mĂ©thodes d'inpainting d'images existantes, avec des rĂ©sultats couvrant l'intelligence artificielle et les images naturelles dans diffĂ©rentes tâches d'inpainting, notamment l'inpainting de masque alĂ©atoire, le masque de segmentation Ă  l'intĂ©rieur de l'inpainting et le masque de segmentation Ă  l'extĂ©rieur de l'inpainting. 

Comme on peut l'observer, le cadre BrushNet donne des rĂ©sultats remarquables dans la cohĂ©rence de la rĂ©gion non masquĂ©e et des rĂ©gions cohĂ©rentes, et rĂ©alise avec succès la prise de conscience des informations de fond grâce Ă  la mise en Ĺ“uvre de l'approche de dĂ©couplage Ă  double branche. De plus, la branche intacte du modèle de diffusion prĂ©-entraĂ®nĂ© offre Ă©galement l'avantage de mieux couvrir diffĂ©rents domaines de donnĂ©es comme l'anime et la peinture, ce qui entraĂ®ne de meilleures performances dans diffĂ©rents scĂ©narios. 

Réflexions finales

Dans cet article, nous avons parlĂ© de BrushNet, un nouveau cadre d'ingĂ©nierie plug and play Ă  double branche qui intègre des fonctionnalitĂ©s d'image masquĂ©e au niveau des pixels dans n'importe quel modèle de diffusion prĂ©-entraĂ®nĂ©, garantissant ainsi la cohĂ©rence et de meilleurs rĂ©sultats sur les tâches d'inpainting d'image. Le framework BrushNet introduit un nouveau paradigme dans lequel le framework divise les caractĂ©ristiques de l'image et le bruit latent en branches distinctes. La division des caractĂ©ristiques de l'image et des latents bruyantes diminue considĂ©rablement la charge d'apprentissage du modèle et facilite une incorporation nuancĂ©e des informations essentielles de l'image masquĂ©e de manière hiĂ©rarchique. En plus du framework BrushNet, nous parlerons Ă©galement de BrushBench et BrushData qui facilitent respectivement l'Ă©valuation des performances basĂ©e sur la segmentation et la formation Ă  l'inpainting d'images. 

« IngĂ©nieur de profession, Ă©crivain de cĹ“ur Â». Kunal est un rĂ©dacteur technique avec un amour et une comprĂ©hension profonds de l'IA et du ML, dĂ©diĂ© Ă  la simplification de concepts complexes dans ces domaines grâce Ă  sa documentation engageante et informative.