AI-modeller og plattformer

Høypresisjon semantisk bildebearbeiding med EditGAN

mm
Legg til Unite.AI blant dine foretrukne kilder på Google

Generative Adversarial Networks eller GANer har hatt nye anvendelser i bildebehandlingsindustrien. De siste månedene har EditGAN blitt populært i AI/ML-industrien fordi det er en ny metode for høypresisjon og høykvalitets semantisk bildebehandling.

Vi skal diskutere EditGAN-modellen i detalj og fortelle deg hvorfor den kan bli en milepæl i semantisk bildebehandling.

Så la oss starte. Men før vi lærer hva EditGAN er, er det viktig for oss å forstå hva som er viktig med EditGAN og hvorfor det er et viktig skritt fremover.

Hvorfor EditGAN?

Selv om tradisjonelle GAN-arkitekturer har hjulpet AI-basert bildebehandling å fremme betydelig, er det noen store utfordringer med å bygge en GAN-arkitektur fra scratch.

  1. Under treningfasen, krever en GAN-arkitektur en stor mengde merket data med semantisk segmenteringsannoteringer.
  2. De kan bare gi høytnivåkontroll.
  3. Og ofte, de interpolerer bare frem og tilbake mellom bilder.

Det kan observeres at selv om tradisjonelle GAN-arkitekturer får jobben gjort, er de ikke effektive for bredt utbredt distribusjon. Tradisjonell GAN-arkitekturs lav effektivitet er grunnen til at EditGAN ble introdusert av NVIDIA (NVDA ) i 2022.

EditGAN er foreslått som en effektiv metode for høypresisjon og høykvalitets semantisk bildebehandling med mulighet til å tillate brukerne å redigere bilder ved å endre deres høyt detaljerte segmenteringsmasker av et bilde. En av grunnene til at EditGAN er en skalerbar metode for bildebehandlingsoppgaver er på grunn av dens arkitektur.

EditGAN-modellen er bygget på en GAN-ramme som modellerer bilder og deres semantiske segmenteringer sammen, og krever bare en håndfull merket eller annotert treningdata. Utviklerne av EditGAN har forsøkt å innlemme et bilde i GANs latente rom for å effektivt modifisere bildet ved å utføre betinget latent kodeoptimering i henhold til segmentredigeringen. Videre, for å amortisere optimering, forsøker modellen å finne “redigeringsvektorer” i latente rom som realiserer redigeringene.

Arkitekturen til EditGAN-rammen tillater modellen å lære en vilkårlig mengde redigeringsvektorer som kan implementeres eller brukes direkte på andre bilder med høy hastighet og effektivitet. Videre, eksperimentelle resultater indikerer at EditGAN kan redigere bilder med en aldri sett før nivå av detalj mens den bevare bildkvaliteten maksimalt.

For å summerer hvorfor vi trenger EditGAN, er det den første GAN-baserte bildebehandlingsrammen som tilbyr

  1. Svært høypresisjon redigering.
  2. Kan fungere med en håndfull merket data.
  3. Kan distribueres effektivt i sanntidsscenarier.
  4. Tillater komposisjonalitet for flere redigeringer samtidig.
  5. Fungerer på GAN-genererte, virkelige innlemmede og selv utenfor domenebilder.

Høypresisjon semantisk bildebehandling med EditGAN

StyleGAN2, en state-of-the-art GAN-ramme for bilde syntese, er den primære bildegenereringskomponenten til EditGAN. StyleGAN2-rammen kartlegger latente koder som er trukket fra en mengde multivariat normalfordeling, og kartlegger det til realistiske bilder.

StyleGAN2 er en dyp generativ modell som er trent til å syntetisere bilder av høyeste kvalitet mulig sammen med å tilegne seg en semantisk forståelse av bildene modellert.

Segmenterings trening og inferens

EditGAN-modellen innlemmer et bilde i GANs latente rom ved å bruke optimering og en encoder til å utføre segmentering på et nytt bilde og trene segmenteringsgrenen. EditGAN-rammen fortsetter å bygge på tidligere arbeider og trener en encoder til å innlemme bildene i latente rommet. Det primære målet her er å trene encoderen bestående av standard pikselvis L2 og LPIPS konstruksjons tap ved å bruke eksempler fra GAN og virkelige treningdata. Videre, modellen regulariserer også encoderen eksplisitt ved å bruke latente koder når den arbeider med GAN-eksemplene.

Resultatet er at modellen innlemmer de annoterte bildene fra datamengden merket med semantisk segmentering i latente rommet og bruker kryssentropitap til å trene segmenteringsgrenen til generatoren.

Bruke segmentredigering til å finne semantikk i latente rom

Det primære formålet med EditGAN er å utnytte den felles distribusjonen av semantiske segmenteringer og bilder for høypresisjon bildebehandling. La oss si vi har et bilde x som må redigeres, så modellen innlemmer bildet i EditGANs latente rom eller bruker eksemplene fra modellen selv. Segmenteringsgrenen genererer y eller den tilhørende segmenteringen hovedsakelig fordi både RGB-bilder og segmenteringer deler de samme latente kodene w. Utviklere kan deretter bruke enhver merking eller digital maleverktøy til å modifisere segmenteringen og redigere den manuelt etter behov.

Forskjellige måter å redigere under inferens

De latente romsredigeringsvektorene som er oppnådd ved å bruke optimering, kan beskrives som semantisk meningsfulle og er ofte disentangled med forskjellige attributter. Derfor, for å redigere et nytt bilde, kan modellen direkte innlemme bildet i latente rommet og utføre de samme redigeringsoperasjonene som modellen lærte tidligere, uten å utføre optimeringen på nytt fra scratch. Det ville være trygt å si at redigeringsvektorene modellen lærer amortiserer optimeringen som var essensiell for å redigere bildet opprinnelig.

Det er verdt å merke seg at utviklerne ennå ikke har perfeksjonert disentanglement, og redigeringsvektorene fungerer ofte ikke best når de brukes til andre bilder. Imidlertid kan problemet overvinnes ved å fjerne redigeringsartefakter fra andre deler av bildet ved å utføre noen ekstra optimeringssteg under testtiden.

Basert på våre nåværende læring, kan EditGAN-rammen brukes til å redigere bilder på tre forskjellige måter.

  • Sanntidsredigering med redigeringsvektorer

For bilder som er lokaliserbare og disentangled, redigerer modellen bildene ved å bruke redigeringsvektorene som er lært tidligere med forskjellige skalaer og manipulerer bildene på interaktive hastigheter.

  • Bruke selvovervåket forfining for vektorbasert redigering

For å redigere lokaliserbare bilder som ikke er disentangled perfekt med andre deler av bildet, initialiserer modellen redigeringen av bildet ved å bruke redigeringsvektorene som er lært tidligere og fjerner redigeringsartefakter ved å utføre noen ekstra optimeringssteg under testtiden.

  • Optimeringsbasert redigering

For å utføre store og bildespesifikke redigeringer, utfører modellen optimeringen fra starten fordi redigeringsvektorene ikke kan brukes til å utføre disse typene overføringer til andre bilder.

Implementering

EditGAN-rammen er evaluert på bilder spredt over fire forskjellige kategorier: Biler, Fugler, Katter og Ansikter. Segmenteringsgrenen til modellen er trent ved å bruke bilde-masker-par på 16, 30, 30, 16 som merket treningdata for Biler, Fugler, Katter og Ansikter henholdsvis. Når bildet skal redigeres rent ved å bruke optimering eller når modellen forsøker å lære redigeringsvektorene, utfører modellen 100 optimeringssteg ved å bruke Adam-optimatoren.

For Katt-, Bil- og Ansiktsdatasettene, bruker modellen virkelige bilder fra DatasetGANs testsett som ikke ble brukt til å trene GAN-rammen for å utføre redigeringsfunksjonalitet. Disse bildene innlemmes direkte i EditGANs latente rom ved å bruke optimering og innkoding. For Fugl-kategorien, vises redigeringen på GAN-genererte bilder.

Resultater

Kvalitative resultater

Innenfor domeneresultater

Bildet over demonstrerer EditGAN-rammens ytelse når den anvender de tidligere lært redigeringsvektorene på nye bilder og forfiner bildene ved å bruke 30 optimeringssteg. Disse redigeringsoperasjonene som utføres av EditGAN-rammen er disentangled for alle klasser og bevare bildkvaliteten. Ved å sammenligne resultater fra EditGAN og andre rammer, kan det observeres at EditGAN-rammen overgår andre metoder i å utføre høypresisjon og komplekse redigeringer samtidig som den bevare subjektidentiteten og bildkvaliteten.

Hva som er forbausende er at EditGAN-rammen kan utføre ekstremt høypresisjon redigeringer som å utvide pupillene eller redigere hjulsporene i bilens dekk. Videre kan EditGAN også brukes til å redigere semantiske deler av objekter som bare har noen få piksler eller kan brukes til å utføre store modifikasjoner av et bilde. Det er verdt å merke seg at flere redigeringsoperasjoner av EditGAN-rammen kan generere manipulerte bilder som ikke ligner bildene i GAN-treningdata.

Utenfor domeneresultater

For å evaluere EditGANs ytelse utenfor domenet, har rammen blitt testet på MetFaces-datasettet. EditGAN-modellen bruker innenfor domene virkelige ansikter til å lage redigeringsvektorer. Modellen innlemmer deretter MetFaces-portretter som er utenfor domenet ved å bruke en 100-stegs optimeringsprosess og anvender redigeringsvektorene via en 30-stegs selvovervåket forfiningsprosess. Resultatene kan sees i bildet under.

Kvantitative resultater

For å måle EditGANs bildebehandlingskapasiteter kvantitativt, bruker modellen en smile-redigeringsbenchmark som ble introdusert av MaskGAN. Ansikter med nøytral uttrykk erstattes med smilende ansikter og ytelsen måles over tre parametre.

  • Semantisk korrekthet

Modellen bruker en forhånds-trent smile-attributtklassifikator til å måle om ansiktene i bildene viser smilende uttrykk etter redigering.

  • Distribusjonsnivå bildkvalitet

Kernel Inception Distance eller KID og Frechet Inception Distance eller FID beregnes mellom CelebA-testdatasettet og 400 redigerte testbilder.

  • Identitetsbevarelse

Modellens evne til å bevare subjektidentiteten når bildet redigeres, måles ved å bruke en forhånds-trent ArcFace-egenskapsutvinningnettverk.

Bildet over sammenligner EditGAN-rammens ytelse med andre baseline-modeller på smile-redigeringsbenchmarket. Metoden som EditGAN-rammen følger for å levere slike høye resultater, sammenlignes over tre forskjellige baseline-modeller:

  • MaskGAN

MaskGAN tar ikke-smilende bilder sammen med deres segmenteringsmasker og en mål-smilende segmenteringsmaske som inndata. Det er verdt å merke seg at når sammenlignet med EditGAN, krever MaskGAN-rammen en stor mengde annotert data.

  • Lokal redigering

EditGAN sammenligner også sin ytelse med lokal redigering, en metode som brukes til å klustre GAN-egenskaper for å implementere lokal redigering og er avhengig av referansebilder.

  • InterFaceGAN

Liksom EditGAN, forsøker InterFaceGAN også å finne redigeringsvektorer i latente rommet til modellen. Imidlertid, i motsetning til EditGAN, bruker InterFaceGAN-modellen en stor mengde annotert data, hjelpeattributtklassifikatorer og har ikke den fine redigeringspresisjonen.

  • StyleGAN2Destillasjon

Denne metoden skaper en alternativ tilnærming som ikke nødvendigvis krever virkelige bildeinnlemminger, men i stedet bruker en redigeringsvektormodell til å lage en treningdataset.

Begrensninger

Fordi EditGAN er basert på GAN-rammen, har den samme begrensning som enhver annen GAN-modell: den kan bare fungere med bilder som kan modelleres av GAN. EditGANs begrensning til å fungere med GAN-modellerte bilder er den største grunnen til at det er vanskelig å implementere EditGAN over forskjellige scenarioer. Imidlertid er det verdt å merke seg at EditGANs høypresisjonsredigeringer kan overføres lett til andre forskjellige bilder ved å bruke redigeringsvektorer.

Konklusjon

En av de største grunnene til at GAN ikke er en industristandard i bildebehandlingsfeltet er på grunn av dens begrensede praktisitet. GAN-rammer krever vanligvis en stor mengde annotert treningdata og de returnerer ofte ikke høy effektivitet og nøyaktighet.

EditGAN forsøker å løse problemene som presenteres av konvensjonelle GAN-rammer, og det forsøker å komme frem som en effektiv metode for høykvalitets og høypresisjon semantisk bildebehandling. Resultatene så langt har indikert at EditGAN faktisk tilbyr hva det hevder, og det fungerer allerede bedre enn noen av de nåværende industristandardpraksisene og modellene.

En ingeniør av yrke, en forfatter av hjerte. Kunal er en teknisk forfatter med en dyp kjærlighet og forståelse av AI og ML, dedikert til å forenkle komplekse konsepter i disse feltene gjennom sin engasjerende og informerende dokumentasjon.