AI-modeller och plattformar

BrushNet: Bildinpainting med dubbelgrensdiffusion

mm
Lägg till Unite.AI bland dina föredragna källor på Google

Bildinpainting är ett klassiskt problem inom datorteknik och syftar till att återställa maskerade områden i en bild med trovärdigt och naturligt innehåll. Existerande arbete som använder traditionella bildinpainting-tekniker som Generativa Adversarial Networks eller GANS och Variational Auto-Encoders eller VAEs kräver ofta auxiliära handkonstruerade funktioner, men levererar inte tillfredsställande resultat. Under de senaste åren har diffusionsbaserade metoder blivit populära inom datortekniksamhället på grund av deras remarkabla förmåga att generera högkvalitativa bilder, utmatningsdiversitet och finjusterad kontroll. De första försöken att använda diffusionsmodeller för textstyrd bildinpainting modifierade den standardiserade avbulleringsstrategin genom att sampla de maskerade områdena från en förtränad diffusionsmodell och de omaskerade områdena från den givna bilden. Även om dessa metoder resulterade i tillfredsställande prestanda över enkla bildinpainting-uppgifter, hade de svårt med komplexa maskformer, textprompt och bildinnehåll som resulterade i en övergripande brist på sammanhang. Bristen på sammanhang som observerades i dessa metoder kan huvudsakligen tillskrivas deras begränsade perceptuella kunskap om maskgränser och omaskerade bildområden.

Trots framstegen, forskningen och utvecklingen av dessa modeller under de senaste åren är bildinpainting fortfarande ett stort hinder för datorteknikutvecklare. Nuvarande anpassningar av diffusionsmodeller för bildinpainting-uppgifter innefattar modifiering av sampelstrategin eller utveckling av bildinpainting-specifika diffusionsmodeller, som ofta lider av minskad bildkvalitet och inkonsekventa semantik. För att tackla dessa utmaningar och bana väg för bildinpainting-modeller, kommer vi i denna artikel att prata om BrushNet, en nytt och innovativt ramverk som införlivar pixelnivåmaskerade bildfunktioner i valfri förtränad diffusionsmodell, vilket garanterar sammanhang och förbättrad prestanda på bildinpainting-uppgifter. BrushNet-ramverket introducerar en ny paradigm under vilken ramverket delar upp bildfunktionerna och bullriga latenta i separata grenar. Uppdelningen av bildfunktioner och bullriga latenta minskar lärandebördan för modellen avsevärt och möjliggör en nyanserad inkorporering av väsentlig maskerad bildinformation på ett hierarkiskt sätt. Utöver BrushNet-ramverket kommer vi också att prata om BrushBench och BrushData som möjliggör segmentbaserad prestandautvärdering och bildinpainting-träning respectively.

Denna artikel syftar till att täcka BrushNet-ramverket i detalj, och vi utforskar mekanismen, metodiken, arkitekturen i ramverket samt dess jämförelse med state-of-the-art-ramverk. Så låt oss komma igång.

BrushNet: Bildinpainting med dubbelgrensdiffusion

Bildinpainting, en metod som försöker återställa de saknade områdena i en bild medan den upprätthåller den övergripande sammanhanget, har varit ett långvarigt problem inom datorteknikområdet och har besvärat utvecklare och forskare under flera år. Bildinpainting har tillämpningar inom en mängd olika datorteknikuppgifter, inklusive bildredigering och virtuell prova-på. Nyligen har diffusionsmodeller som Stable Diffusion och Stable Diffusion 1.5 visat en remarkabel förmåga att generera högkvalitativa bilder och ger användarna flexibiliteten att kontrollera semantiska och strukturkontroller. Den remarkabla potentialen hos diffusionsmodeller är det som har fått forskare att vända sig till diffusionsmodeller för högkvalitativa bildinpainting-uppgifter som stämmer överens med inmatningstextprompt.

Metoderna som används av traditionella diffusionsbaserade textstyrda inpainting-ramverk kan delas in i två kategorier, sampelstrategimodifiering och dedikerade inpainting-modeller. Sampelstrategimodifieringsmetoden modifierar den standardiserade avbulleringsprocessen genom att sampla de maskerade områdena från en förtränad diffusionsmodell och kopiera de omaskerade områdena från den givna bilden i varje avbulleringssteg. Även om sampelstrategimodifieringsmetoder kan implementeras i godtyckliga diffusionsmodeller, resulterar de ofta i inkonsekventa inpainting-resultat eftersom de har begränsad perceptuell kunskap om maskgränser och omaskerade bildområden. Å andra sidan, dedikerade inpainting-modeller finjusterar en bildinpainting-modell som är specifikt utformad genom att expandera dimensionerna av indatakanalen i den grundläggande diffusionsmodellen för att införliva korrupt bild och mask. Även om dedikerade inpainting-modeller möjliggör att diffusionsmodellen genererar mer tillfredsställande resultat med specialiserade form- och innehållsmedvetna modeller, kan det eller inte vara den bästa arkitektoniska designen för bildinpainting-modeller.

Som visas i följande bild, dedikerade inpainting-modeller smälter samman maskerad bildlatent, bullrig latent, text och mask i ett tidigt skede. Den arkitektoniska designen av sådana dedikerade inpainting-modeller påverkar lätt maskerad bildfunktioner och förhindrar att efterföljande lager i UNet-arkitekturen får ren maskerad bildfunktioner på grund av textpåverkan. Dessutom lägger hanteringen av generering och villkor i en enda gren ytterligare bördor på UNet-arkitekturen, och eftersom dessa metoder också kräver finjustering i olika variationer av diffusionsryggraden, är dessa metoder ofta tidskrävande med begränsad överförbarhet.

Det kan tyckas som att lägga till en ytterligare gren för att extrahera maskerad bildfunktioner kan vara en tillräcklig lösning på problemen ovan, men existerande ramverk resulterar ofta i att extrahera och infoga otillräcklig information när de tillämpas direkt på inpainting. Som ett resultat, existerande ramverk som ControlNet ger otillfredsställande resultat när de jämförs med dedikerade inpainting-modeller. För att tackla detta problem på det mest effektiva sättet möjligt, introducerar BrushNet-ramverket en ytterligare gren till den ursprungliga diffusionsnätverket och skapar därmed en mer lämplig arkitektur för bildinpainting-uppgifter. Designen och arkitekturen av BrushNet-ramverket kan sammanfattas i tre punkter.

  1. I stället för att initiera konvolutionslager slumpmässigt, implementerar BrushNet-ramverket en VAE-encoder för att bearbeta den maskerade bilden. Som ett resultat kan BrushNet-ramverket extrahera bildfunktioner för anpassning till UNet-fördelningen mer effektivt.
  2. BrushNet-ramverket införlivar gradvis den fullständiga UNet-funktionsskiktet lager för lager i den förtränade UNet-arkitekturen, en hierarkisk approach som möjliggör tät per-pixel-kontroll.
  3. BrushNet-ramverket tar bort text-kors-attention från UNet-komponenten för att säkerställa att ren bildinformation beaktas i den ytterligare grenen. Dessutom föreslår BrushNet-modellen att implementera en suddig blandningsstrategi för att uppnå bättre sammanhang tillsammans med en högre grad av kontroll i omaskerade områden av bilden.

BrushNet: Metod och Arkitektur

Följande figur ger oss en kort översikt av BrushNet-ramverket.

Som det kan observeras, använder ramverket en dubbelgrensstrategi för maskerad bildvägledning och använder blandningsoperationer med en suddig mask för att säkerställa bättre bevarande av omaskerade områden. Det är värt att notera att BrushNet-ramverket kan justera den tillagda skalan för att uppnå flexibel kontroll. För en given maskerad bildinmatning och mask, genererar BrushNet-modellen en inmålad bild. Modellen nedsamplear först masken för att anpassa sig till latents storlek och den maskerade bilden matas in som indata till VAE-encodern för att anpassa sig till latents fördelning. Modellen konkatenerar sedan den maskerade bildlatenten, den bullriga latenten och den nedsampleade masken och använder den som indata. Funktionerna som modellen extraherar läggs sedan till i den förtränade UNet-lagret efter en nollkonvolutionsblock. Efter avbullering, blandar modellen den maskerade bilden och den genererade bilden med en suddig mask.

Maskerad Bildvägledning

BrushNet-ramverket införlivar den maskerade bildfunktionen i den förtränade diffusionsnätverket med hjälp av en ytterligare gren, som separerar funktionsextraheringen av maskerade bilder från processen för bildgenerering explicit. Indatan formas genom att konkatenera den maskerade bildlatenten, den bullriga latenten och den nedsampleade masken. För att vara mer specifik, tillhandahåller den bullriga latenten information för bildgenerering under den aktuella genereringsprocessen och hjälper ramverket att förbättra den semantiska sammanhanget av den maskerade bildfunktionen. BrushNet-ramverket extraherar sedan den maskerade bildlatenten från den maskerade bilden med hjälp av en Variational AutoEncoder. Dessutom använder ramverket kubisk interpolation för att nedsample masken i ett försök att säkerställa att maskstorleken överensstämmer med den maskerade bildlatenten och den bullriga latenten. För att bearbeta den maskerade bildfunktionen, implementerar BrushNet-ramverket en kopia av den förtränade diffusionsmodellen och exkluderar kors-attentionslagren i diffusionsmodellen. Anledningen är att de förtränade vikterna i diffusionsmodellen fungerar som en stark prior för att extrahera funktionerna av den maskerade bilden och exklusive kors-attentionslagren säkerställer att modellen endast beaktar ren bildinformation inom den ytterligare grenen. BrushNet-ramverket införlivar funktionerna i den frysta diffusionsmodellen lager för lager, vilket möjliggör hierarkisk tät per-pixel-kontroll och använder också nollkonvolutionslager för att etablera en anslutning mellan den tränbara BrushNet-modellen och den låsta modellen, vilket säkerställer att skadlig brus inte har någon påverkan på de dolda tillstånden i den tränbara kopian under de första träningsstadierna.

Blandningsoperation

Som nämnts tidigare, genomförande av blandningsoperationen i latentsrummet återstorlekar maskerna, vilket ofta resulterar i flera fel, och BrushNet-ramverket möter ett liknande problem när det återstorlekar masken för att matcha latents storlek. Dessutom är det värt att notera att kodnings- och avkodningsoperationer i Variational AutoEncoders har begränsade operationer och kan inte säkerställa fullständig bildrekonstruktion. För att säkerställa att ramverket rekonstruerar en fullständigt sammanhängande bild av det omaskerade området, har existerande arbeten implementerat olika tekniker som att kopiera de omaskerade områdena från den ursprungliga bilden. Även om tillvägagångssättet fungerar, resulterar det ofta i en brist på semantisk sammanhang i genereringen av de slutliga resultaten. Å andra sidan, andra metoder som att anta latentsblandningsoperationer möter svårigheter i att bevara den önskade informationen i de omaskerade områdena.

Flexibel Kontroll

Den arkitektoniska designen av BrushNet-ramverket gör det till ett lämpligt val för plug-and-play-integrationer inneboende till olika förtränade diffusionsmodeller och möjliggör flexibelt bevarande av skala. Eftersom BrushNet-ramverket inte ändrar vikterna i den förtränade diffusionsmodellen, har utvecklare flexibiliteten att integrera det som en plug-and-play-komponent med en finjusterad diffusionsmodell, vilket möjliggör enkel antagande och experiment med förtränade modeller. Dessutom har utvecklare också möjligheten att kontrollera bevarandeskalan av de omaskerade områdena genom att införliva funktionerna av BrushNet-modellen i den frysta diffusionsmodellen med den givna vikten w som bestämmer inflytandet av BrushNet-ramverket på bevarandeskalan, vilket ger utvecklare möjligheten att justera de önskade nivåerna av bevarande. Slutligen, möjliggör BrushNet-ramverket för användare att justera suddigskalan och bestämma om de vill implementera suddigoperations eller inte, vilket möjliggör enkel anpassning och finjusterad kontroll över bildinpainting-processen.

BrushNet: Implementering och Resultat

För att analysera dess resultat, föreslår BrushNet-ramverket BrushBench, en segmentbaserad bildinpainting-databas med över 600 bilder, var och en åtföljd av en manuellt annoterad mask och bildtext. Bilderna i benchmark-databasen är fördelade jämnt mellan naturliga och artificiella bilder och säkerställer också en jämn fördelning mellan olika kategorier, vilket möjliggör en rättvis utvärdering över olika kategorier. För att ytterligare förbättra analysen av inpainting-uppgifterna, kategoriserar BrushNet-ramverket databasen i två distinkta delar baserat på metoderna som används: segmentbaserad och borstmask.

Kvantitativ Jämförelse

Följande tabell jämför BrushNet-ramverket med existerande diffusionsbaserade bildinpainting-modeller på BrushBench-databasen med Stable Diffusion som basmodell.

Som det kan observeras, demonstrerar BrushNet-ramverket remarkabel effektivitet över maskerat områdesbevarande, textjustering och bildkvalitet. Dessutom visar modeller som Stable Diffusion Inpainting, HD-Painter, PowerPaint och andra en stark prestanda på bildinpainting-uppgifter inuti, men misslyckas med att replikera sin prestanda på utsidan-paint-uppgifter, särskilt i termer av textjustering och bildkvalitet. Sammantaget, levererar BrushNet-ramverket de starkaste resultaten.

Dessutom jämför följande tabell BrushNet-ramverket med existerande diffusionsbaserade bildinpainting-modeller på EditBench-databasen, och prestandan är jämförbar med den som observerades på BrushBench-databasen. Resultaten indikerar att BrushNet-ramverket levererar stark prestanda över en mängd olika bildinpainting-uppgifter med olika masktyper.

Kvalitativ Jämförelse

Följande figur jämför kvalitativt BrushNet-ramverket med existerande bildinpainting-metoder, med resultat som täcker artificiell intelligens och naturliga bilder över olika inpainting-uppgifter, inklusive slumpmässig maskinpainting, segmentmask inuti inpainting och segmentmask utanför-inpainting.

Som det kan observeras, levererar BrushNet-ramverket remarkabla resultat i sammanhanget av det omaskerade området och de sammanhängande områdena, och lyckas med att förverkliga medvetandet om bakgrundsinformationen tack vare implementeringen av den dubbelgrensdecouplingsmetoden. Dessutom ger den outouched grenen av den förtränade diffusionsmodellen också fördelen av att täcka olika dataområden som anime och målning bättre, vilket resulterar i bättre prestanda över olika scenarier.

Slutliga Tankar

I denna artikel har vi talat om BrushNet, ett nytt och innovativt ramverk som införlivar pixelnivåmaskerade bildfunktioner i valfri förtränad diffusionsmodell, vilket garanterar sammanhang och förbättrad prestanda på bildinpainting-uppgifter. BrushNet-ramverket introducerar en ny paradigm under vilken ramverket delar upp bildfunktionerna och bullriga latenta i separata grenar. Uppdelningen av bildfunktioner och bullriga latenta minskar lärandebördan för modellen avsevärt och möjliggör en nyanserad inkorporering av väsentlig maskerad bildinformation på ett hierarkiskt sätt. Utöver BrushNet-ramverket kommer vi också att prata om BrushBench och BrushData som möjliggör segmentbaserad prestandautvärdering och bildinpainting-träning respectively.

En ingenjör till yrket, en författare av hjärtat. Kunal är en teknisk skribent med ett djupt kärlek och förståelse för AI och ML, dedikerad till att förenkla komplexa begrepp inom dessa områden genom sin engagerande och informativa dokumentation.