stub Hvordan stabil diffusion kunne udvikle sig som et almindeligt forbrugerprodukt - Unite.AI
Følg os

Kunstig intelligens

Hvordan stabil diffusion kunne udvikle sig som et almindeligt forbrugerprodukt

mm
Opdateret on

Ironisk nok, Stabil diffusionn, den nye AI-billedsynteseramme, der har taget verden med storm, er hverken stabil eller egentlig så 'diffuseret' – i hvert fald ikke endnu.

Hele rækken af ​​systemets muligheder er spredt over et varieret smørebord af konstant muterende tilbud fra en håndfuld udviklere, der febrilsk udveksler de seneste oplysninger og teorier i forskellige kollokvier om Discord – og langt størstedelen af ​​installationsprocedurerne for de pakker, de laver eller modifikation er meget langt fra 'plug and play'.

Snarere har de en tendens til at kræve kommandolinje eller BAT-drevet installation via GIT, Conda, Python, Miniconda og andre avancerede udviklingsrammer – softwarepakker, der er så sjældne blandt de almindelige forbrugere, at deres installation er ofte markeret af antivirus- og anti-malware-leverandører som bevis på et kompromitteret værtssystem.

Kun et lille udvalg af trin i kappen, som standard stabil diffusionsinstallation kræver i øjeblikket. Mange af distributionerne kræver også specifikke versioner af Python, som kan kollidere med eksisterende versioner installeret på brugerens maskine - selvom dette kan undgås med Docker-baserede installationer og til en vis grad gennem brug af Conda-miljøer.

Kun et lille udvalg af trin i kappen, som standard stabil diffusionsinstallation kræver i øjeblikket. Mange af distributionerne kræver også specifikke versioner af Python, som kan kollidere med eksisterende versioner installeret på brugerens maskine – selvom dette kan undgås med Docker-baserede installationer og til en vis grad gennem brug af Conda-miljøer.

Meddelelsestråde i både SFW- og NSFW Stable Diffusion-fællesskaberne er oversvømmet med tips og tricks relateret til hacking af Python-scripts og standardinstallationer for at muliggøre forbedret funktionalitet eller for at løse hyppige afhængighedsfejl og en række andre problemer.

Dette efterlader den gennemsnitlige forbruger interesseret i skabe fantastiske billeder fra tekstprompter, stort set prisgivet det voksende antal monetiserede API-webgrænseflader, hvoraf de fleste tilbyder et minimalt antal gratis billedgenerationer, før de kræver køb af tokens.

Derudover nægter næsten alle disse webbaserede tilbud at udsende NSFW-indholdet (hvoraf meget kan relatere til ikke-porno-emner af almen interesse, såsom 'krig'), hvilket adskiller Stable Diffusion fra de bowdleriserede tjenester i OpenAI's DALL-E 2.

'Photoshop for stabil diffusion'

Forvirret af de fabelagtige, rasende eller andre verdensbilleder, der dagligt befolker Twitters #stablediffusion hashtag, er hvad den bredere verden uden tvivl venter på er 'Photoshop for stabil diffusion' – en applikation, der kan installeres på tværs af platforme, der sammenfolder den bedste og mest kraftfulde funktionalitet af Stability.ai's arkitektur, såvel som de forskellige geniale innovationer fra det nye SD-udviklingsfællesskab uden flydende CLI-vinduer, obskure og konstant skiftende installation og opdatering rutiner eller manglende funktioner.

Det, vi i øjeblikket har, i de fleste af de mere egnede installationer, er en forskelligt elegant webside, der er skrævet af et uindbygget kommandolinjevindue, og hvis URL er en localhost-port:

I lighed med CLI-drevne syntese-apps såsom FaceSwap og det BAT-centrerede DeepFaceLab viser 'prepack'-installationen af ​​Stable Diffusion sine kommandolinjerødder, med grænsefladen tilgået via en localhost-port (se toppen af ​​billedet ovenfor), som kommunikerer med den CLI-baserede stabile diffusionsfunktionalitet.

I lighed med CLI-drevne syntese-apps såsom FaceSwap og det BAT-centrerede DeepFaceLab viser 'prepack'-installationen af ​​Stable Diffusion sine kommandolinjerødder, med grænsefladen tilgået via en localhost-port (se toppen af ​​billedet ovenfor), som kommunikerer med den CLI-baserede stabile diffusionsfunktionalitet.

Der kommer uden tvivl en mere strømlinet ansøgning. Allerede nu er der flere Patreon-baserede integrerede applikationer, der kan downloades, som f.eks GRisk og NMKD (se billedet nedenfor) – men ingen, der endnu integrerer hele rækken af ​​funktioner, som nogle af de mere avancerede og mindre tilgængelige implementeringer af Stable Diffusion kan tilbyde.

Tidlige, Patreon-baserede pakker med stabil diffusion, let 'app-designede'. NMKD'er er de første til at integrere CLI-output direkte i GUI'en.

Tidlige, Patreon-baserede pakker med stabil diffusion, let 'app-designede'. NMKD'er er de første til at integrere CLI-output direkte i GUI'en.

Lad os tage et kig på, hvordan en mere poleret og integreret implementering af dette forbløffende open source vidunder i sidste ende kan se ud – og hvilke udfordringer det kan stå over for.

Juridiske overvejelser for en fuldt finansieret kommerciel stabil diffusionsansøgning

NSFW-faktoren

Den stabile diffusionskildekode er blevet frigivet under en yderst eftergivende licens som ikke forbyder kommercielle re-implementeringer og afledte værker, der bygger i vid udstrækning fra kildekoden.

Udover det førnævnte og voksende antal af Patreon-baserede stabile diffusions-builds, såvel som det omfattende antal applikations-plugins, der udvikles til figma, Krita, Photoshop, GIMPog Blender (bl.a.) er der ingen praktisk grunden til, at et velfinansieret softwareudviklingshus ikke kunne udvikle en langt mere sofistikeret og kapabel Stable Diffusion-applikation. Set fra et markedsperspektiv er der al mulig grund til at tro, at flere sådanne initiativer allerede er godt i gang.

Her står sådanne bestræbelser straks over for dilemmaet med hensyn til, om applikationen, ligesom størstedelen af ​​web-API'er til Stable Diffusion, vil tillade Stable Diffusions native NSFW-filter (et fragment af kode), skal slås fra.

'Begraver' NSFW-switchen

Selvom Stability.ai's open source-licens til Stable Diffusion inkluderer en bredt fortolkelig liste over applikationer, som den evt. ikke bruges (velsagtens inklusive pornografisk indhold og deepfakes), den eneste måde en leverandør effektivt kunne forbyde sådan brug på ville være at kompilere NSFW-filteret til en uigennemsigtig eksekverbar i stedet for en parameter i en Python-fil, eller på anden måde gennemtvinge en kontrolsum-sammenligning på Python-filen eller DLL-filen, der indeholder NSFW-direktivet, så gengivelser ikke kan forekomme, hvis brugere ændrer denne indstilling.

Dette ville efterlade den formodede ansøgning "kastreret" på nogenlunde samme måde som DALL-E 2 er i øjeblikket, hvilket mindsker dens kommercielle appel. Også uundgåeligt vil dekompilerede 'doktorerede' versioner af disse komponenter (enten originale Python runtime-elementer eller kompilerede DLL-filer, som nu bruges i Topaz-linjen af ​​AI-billedforbedringsværktøjer) sandsynligvis dukke op i torrent-/hacking-fællesskabet for at låse op for sådanne begrænsninger , simpelthen ved at udskifte de blokerende elementer og negere eventuelle krav til kontrolsum.

I sidste ende kan leverandøren vælge blot at gentage Stability.ai's advarsel mod misbrug, der karakteriserer den første kørsel af mange nuværende stabile diffusionsdistributioner.

De små open source-udviklere, der i øjeblikket bruger tilfældige ansvarsfraskrivelser på denne måde, har ikke meget at tabe i forhold til et softwarefirma, der har investeret betydelige mængder af tid og penge i at gøre Stable Diffusion fuldt udstyret og tilgængeligt – hvilket inviterer til dybere overvejelser.

Deepfake ansvar

Som vi har for nylig noteretLAION-æstetikdatabasen, en del af de 4.2 milliarder billeder, som Stable Diffusions igangværende modeller blev trænet på, indeholder et stort antal berømthedsbilleder, som gør det muligt for brugere effektivt at skabe deepfakes, herunder deepfake berømthedsporno.

Fra vores seneste artikel, fire stadier af Jennifer Connelly over fire årtier af hendes karriere, udledt af stabil diffusion.

Fra vores seneste artikel, fire stadier af Jennifer Connelly over fire årtier af hendes karriere, udledt af stabil diffusion.

Dette er et separat og mere omstridt spørgsmål end genereringen af ​​(normalt) lovlig 'abstrakt' porno, som ikke afbilder 'rigtige' mennesker (selvom sådanne billeder er udledt af flere rigtige fotos i træningsmaterialet).

Da et stigende antal amerikanske stater og lande udvikler eller har indført love mod deepfake pornografi, kan Stable Diffusions evne til at skabe berømthedsporno betyde, at en kommerciel applikation, der ikke er helt censureret (dvs. som kan skabe pornografisk materiale), muligvis stadig har brug for nogle evne til at filtrere kendte ansigter.

En metode ville være at tilvejebringe en indbygget 'sortliste' over termer, der ikke vil blive accepteret i en brugerprompt, relateret til berømtheders navne og til fiktive karakterer, som de kan være forbundet med. Formodentlig vil sådanne indstillinger skulle indføres på flere sprog end blot engelsk, da de oprindelige data indeholder andre sprog. En anden tilgang kunne være at inkorporere berømthedsgenkendelsessystemer som dem, der er udviklet af Clarifai.

Det kan være nødvendigt for softwareproducenter at inkorporere sådanne metoder, måske i starten slukket, hvilket kan hjælpe med at forhindre en fuldgyldig selvstændig stabil diffusionsapplikation i at generere berømthedsansigter i afventning af ny lovgivning, der kan gøre en sådan funktionalitet ulovlig.

Endnu en gang kunne en sådan funktionalitet imidlertid uundgåeligt dekompileres og vendes af interesserede parter; softwareproducenten kunne dog i så fald hævde, at der er tale om reelt usanktioneret hærværk – så længe denne form for reverse engineering ikke gøres alt for let.

Funktioner, der kunne inkluderes

Kernefunktionaliteten i enhver distribution af Stable Diffusion ville forventes af enhver velfinansieret kommerciel applikation. Disse omfatter muligheden for at bruge tekstprompter til at generere passende billeder (tekst-til-billede); evnen til at bruge skitser eller andre billeder som retningslinjer for nye genererede billeder (billede-til-billede); midlerne til at justere, hvor 'fantasifuldt' systemet er instrueret til at være; en måde at afveje gengivelsestid mod kvalitet; og andre 'grundlæggende', såsom valgfri automatisk billed-/promptarkivering og rutinemæssig valgfri opskalering via RealESRGAN, og i det mindste grundlæggende 'ansigtsfiksering' med GFPGAN or CodeFormer.

Det er en smuk 'vaniljeinstallation'. Lad os tage et kig på nogle af de mere avancerede funktioner, der i øjeblikket udvikles eller udvides, som kunne inkorporeres i en fuldgyldig 'traditionel' stabil diffusionsapplikation.

Stokastisk frysning

Selv hvis du genbruge et frø fra en tidligere vellykket gengivelse er det frygtelig svært at få stabil diffusion til nøjagtigt at gentage en transformation, hvis enhver del af prompten eller kildebilledet (eller begge dele) ændres til en efterfølgende gengivelse.

Dette er et problem, hvis du vil bruge EbSynth at påtvinge Stable Diffusions transformationer til ægte video på en tidsmæssigt sammenhængende måde – selvom teknikken kan være meget effektiv til simple hoved-og-skulder-billeder:

Begrænset bevægelse kan gøre EbSynth til et effektivt medie til at omdanne stabile diffusionstransformationer til realistisk video. Kilde: https://streamable.com/u0pgzd

Begrænset bevægelse kan gøre EbSynth til et effektivt medie til at omdanne stabile diffusionstransformationer til realistisk video. Kilde: https://streamable.com/u0pgzd

EbSynth fungerer ved at ekstrapolere et lille udvalg af 'ændrede' keyframes til en video, der er blevet gengivet til en række billedfiler (og som senere kan samles tilbage til en video).

I dette eksempel fra EbSynth-siden er en lille håndfuld frames fra en video blevet malet på en kunstnerisk måde. EbSynth bruger disse rammer som stilguider til på samme måde at ændre hele videoen, så den matcher den malede stil. Kilde: https://www.youtube.com/embed/eghGQtQhY38

I dette eksempel fra EbSynth-siden er en lille håndfuld frames fra en video blevet malet på en kunstnerisk måde. EbSynth bruger disse rammer som stilguider til på samme måde at ændre hele videoen, så den matcher den malede stil. Kilde: https://www.youtube.com/embed/eghGQtQhY38

I eksemplet nedenfor, som næsten ikke viser nogen bevægelse overhovedet fra den (rigtige) blonde yogainstruktør til venstre, har Stable Diffusion stadig svært ved at bevare et konsistent ansigt, fordi de tre billeder, der transformeres som 'nøglebilleder', ikke er helt identiske, selvom de alle deler det samme numeriske frø.

Her, selv med den samme prompt og frø på tværs af alle tre transformationer, og meget få ændringer mellem kilderammerne, varierer kropsmusklerne i størrelse og form, men endnu vigtigere er ansigtet inkonsekvent, hvilket hindrer tidsmæssig konsistens i en potentiel EbSynth-gengivelse.

Her, selv med den samme prompt og frø på tværs af alle tre transformationer, og meget få ændringer mellem kilderammerne, varierer kropsmusklerne i størrelse og form, men endnu vigtigere er ansigtet inkonsekvent, hvilket hindrer tidsmæssig konsistens i en potentiel EbSynth-gengivelse.

Selvom SD/EbSynth-videoen nedenfor er meget opfindsom, hvor brugerens fingre er blevet forvandlet til (henholdsvis) et par gående bukseben og en and, kendetegner inkonsistensen af ​​bukserne det problem, som Stable Diffusion har med at opretholde konsistens på tværs af forskellige keyframes , selv når kilderammerne ligner hinanden, og frøet er konsistent.

En mands fingre bliver til en gående mand og en and, via Stalddiffusion og EbSynth. Kilde: https://old.reddit.com/r/StableDiffusion/comments/x92itm/proof_of_concept_using_img2img_ebsynth_to_animate/

En mands fingre bliver til en gående mand og en and, via Stalddiffusion og EbSynth. Kilde: https://old.reddit.com/r/StableDiffusion/comments/x92itm/proof_of_concept_using_img2img_ebsynth_to_animate/

Brugeren, der har oprettet denne video kommenteret at andetransformationen, nok den mest effektive af de to, hvis mindre slående og original, kun krævede en enkelt transformeret key-frame, hvorimod det var nødvendigt at gengive 50 stabile diffusionsbilleder for at skabe gåbukserne, som udviser mere tidsmæssige inkonsistens. Brugeren bemærkede også, at det tog fem forsøg at opnå konsistens for hver af de 50 keyframes.

Derfor ville det være en stor fordel for en virkelig omfattende Stable Diffusion-applikation at levere funktionalitet, der bevarer egenskaberne maksimalt på tværs af keyframes.

En mulighed er, at applikationen giver brugeren mulighed for at 'fryse' den stokastiske encode til transformationen på hver frame, hvilket i øjeblikket kun kan opnås ved at ændre kildekoden manuelt. Som eksemplet nedenfor viser, hjælper dette tidsmæssig konsistens, selvom det bestemt ikke løser det:

En Reddit-bruger forvandlede webcam-optagelser af sig selv til forskellige kendte personer ved ikke bare at vedholde frøet (hvilket enhver implementering af Stable Diffusion kan gøre), men ved at sikre, at stochastic_encode()-parameteren var identisk i hver transformation. Dette blev opnået ved at ændre koden, men kunne nemt blive en brugertilgængelig switch. Det er dog klart, at det ikke løser alle de tidsmæssige problemer. Kilde: https://old.reddit.com/r/StableDiffusion/comments/wyeoqq/turning_img2img_into_vid2vid/

En Reddit-bruger forvandlede webcam-optagelser af sig selv til forskellige kendte personer ved ikke bare at vedholde frøet (hvilket enhver implementering af Stable Diffusion kan gøre), men ved at sikre, at stochastic_encode()-parameteren var identisk i hver transformation. Dette blev opnået ved at ændre koden, men kunne nemt blive en brugertilgængelig switch. Det er dog klart, at det ikke løser alle de tidsmæssige problemer. Kilde: https://old.reddit.com/r/StableDiffusion/comments/wyeoqq/turning_img2img_into_vid2vid/

Cloud-baseret tekstinversion

En bedre løsning til at fremkalde tidsmæssigt konsistente karakterer og objekter er at 'bage' dem til en Tekstinversion – en 5KB fil, der kan trænes på få timer baseret på kun fem kommenterede billeder, som derefter kan fremkaldes af en speciel '*' prompt, hvilket f.eks. muliggør en vedvarende optræden af ​​nye karakterer til inklusion i en fortælling.

Billeder, der er forbundet med passende tags, kan konverteres til diskrete enheder via tekstinversion og fremkaldes uden tvetydighed, og i den korrekte kontekst og stil, ved hjælp af specielle token-ord. Kilde: https://huggingface.co/docs/diffusers/training/text_inversion

Billeder, der er forbundet med passende tags, kan konverteres til diskrete enheder via tekstinversion og fremkaldes uden tvetydighed, og i den korrekte kontekst og stil, ved hjælp af specielle token-ord. Kilde: https://huggingface.co/docs/diffusers/training/text_inversion

Tekstinversioner er supplerende filer til den meget store og fuldt trænede model, som Stable Diffusion bruger, og 'slipstreames' effektivt ind i fremkaldelse/prompting-processen, så de kan deltage i modelafledte scener, og drage fordel af modellens enorme database med viden om objekter, stilarter, miljøer og interaktioner.

Men selvom en tekstinversion ikke tager lang tid at træne, kræver den en høj mængde VRAM; ifølge forskellige aktuelle gennemgange, et sted mellem 12, 20 og endda 40 GB.

Da de fleste afslappede brugere næppe vil have den slags GPU-kraft til deres rådighed, dukker der allerede skytjenester op, der vil håndtere operationen, inklusive en Hugging Face-version. Selvom der er Google Colab implementeringer der kan skabe tekstinversioner til stabil diffusion, kan de nødvendige VRAM- og tidskrav gøre disse udfordrende for gratis-lags Colab-brugere.

For en potentiel fuldt udbygget og velinvesteret Stable Diffusion (installeret) applikation synes det at videregive denne tunge opgave til virksomhedens cloud-servere være en indlysende strategi for indtægtsgenerering (forudsat at en stabil Diffusion-applikation til lave eller ingen omkostninger er gennemsyret af sådanne ikke- gratis funktionalitet, hvilket forekommer sandsynligt i mange mulige applikationer, der vil komme ud af denne teknologi i løbet af de næste 6-9 måneder).

Derudover kan den ret komplicerede proces med at kommentere og formatere de indsendte billeder og tekst drage fordel af automatisering i et integreret miljø. Den potentielle 'vanedannende faktor' ved at skabe unikke elementer, der kan udforske og interagere med de store verdener af stabil diffusion, virker potentielt tvangsmæssig, både for generelle entusiaster og yngre brugere.

Alsidig promptvægtning

Der er mange aktuelle implementeringer, der giver brugeren mulighed for at lægge større vægt på et afsnit af en lang tekstprompt, men instrumentaliteten varierer ret meget mellem disse og er ofte klodset eller uintuitiv.

Den meget populære stabile diffusionsgaffel af AUTOMATIC1111kan f.eks. sænke eller hæve værdien af ​​et promptord ved at omslutte det i enkelte eller flere parenteser (for at fjerne fremhævelse) eller firkantede parenteser for ekstra fremhævelse.

Firkantede parenteser og/eller parenteser kan forvandle din morgenmad i denne version af Stabil Diffusion promptvægte, men det er et kolesterolmareridt på begge måder.

Firkantede parenteser og/eller parenteser kan forvandle din morgenmad i denne version af Stabil Diffusion promptvægte, men det er et kolesterolmareridt på begge måder.

Andre iterationer af Stable Diffusion bruger udråbstegn for at understrege, mens de mest alsidige giver brugerne mulighed for at tildele vægte til hvert ord i prompten gennem GUI.

Systemet bør også give mulighed for negative promptvægte – ikke kun for rædsel fans, men fordi der kan være mindre alarmerende og mere opbyggelige mysterier i Stable Diffusions latente rum, end vores begrænsede sprogbrug kan fremmane.

Udmaling

Kort efter den sensationelle open-sourcing af Stable Diffusion forsøgte OpenAI – stort set forgæves – at genvinde noget af dets DALL-E 2-torden ved at annoncere 'outpainting', som giver en bruger mulighed for at udvide et billede ud over dets grænser med semantisk logik og visuel sammenhæng.

Det har det naturligvis siden været implementeret i forskellige former for Stabil Diffusion, samt i Krita, og bør bestemt inkluderes i en omfattende Photoshop-stil version af Stable Diffusion.

Flisebaseret forstærkning kan udvide en standard 512x512 gengivelse næsten uendeligt, så længe prompterne, eksisterende billede og semantisk logik tillader det. Kilde: https://github.com/lkwq007/stablediffusion-infinity

Flisebaseret forstørrelse kan udvide en standard 512×512-gengivelse næsten uendeligt, så længe prompterne, eksisterende billede og semantisk logik tillader det. Kilde: https://github.com/lkwq007/stablediffusion-infinity

Fordi stabil diffusion trænes på 512x512px billeder (og af en række andre årsager), skærer den ofte hovederne (eller andre væsentlige kropsdele) af mennesker, selv hvor prompten tydeligt indikerede 'hovedbetoning' osv.

Typiske eksempler på "halshugning" af stabil diffusion; men udmaling kunne sætte George tilbage i billedet.

Typiske eksempler på "halshugning" af stabil diffusion; men udmaling kunne sætte George tilbage i billedet.

Enhver udmalingsimplementering af den type, der er illustreret i det animerede billede ovenfor (som udelukkende er baseret på Unix-biblioteker, men bør kunne replikeres på Windows) bør også bruges som et enkelt-klik/prompt-middel til dette.

I øjeblikket udvider en række brugere lærredet af 'halshuggede' afbildninger opad, fylder hovedområdet groft ud og bruger img2img til at fuldføre den fejlagtige gengivelse.

Effektiv maskering, der forstår konteksten

Masking kan være en frygtelig hit-and-miss affære i Stable Diffusion, afhængigt af den pågældende gaffel eller version. Ofte, hvor det overhovedet er muligt at tegne en sammenhængende maske, ender det angivne område med at blive indmalet med indhold, der ikke tager højde for hele billedets kontekst.

Ved en lejlighed maskerede jeg hornhinderne på et ansigtsbillede og gav prompten 'blå øjne' som en maske i maling - kun for at opdage, at jeg så ud til at se gennem to udskårne menneskeøjne på et fjernt billede af en ujordisk udseende ulv. Jeg er vist heldig, at det ikke var Frank Sinatra.

Semantisk redigering er også mulig ved identificere støjen som konstruerede billedet i første omgang, hvilket giver brugeren mulighed for at adressere specifikke strukturelle elementer i en gengivelse uden at forstyrre resten af ​​billedet:

Ændring af et element i et billede uden traditionel maskering og uden at ændre tilstødende indhold ved at identificere den støj, der først stammede fra billedet, og adressere de dele af det, der bidrog til målområdet. Kilde: https://old.reddit.com/r/StableDiffusion/comments/xboy90/a_better_way_of_doing_img2img_by_finding_the/

Ændring af et element i et billede uden traditionel maskering og uden at ændre tilstødende indhold ved at identificere den støj, der først stammede fra billedet, og adressere de dele af det, der bidrog til målområdet. Kilde: https://old.reddit.com/r/StableDiffusion/comments/xboy90/a_better_way_of_doing_img2img_by_finding_the/

Denne metode er baseret på K-diffusionsprøvetager.

Semantiske filtre til fysiologiske fjoller

Som vi har nævnt før, kan Stable Diffusion ofte tilføje eller trække lemmer fra, hovedsageligt på grund af dataproblemer og mangler i annoteringerne, der ledsager billederne, der trænede den.

Ligesom den vildfarne knægt, der stak tungen ud på skolegruppebilledet, er Stable Diffusions biologiske grusomheder ikke altid umiddelbart indlysende, og du har måske Instagrammed dit seneste AI-mesterværk, før du bemærker de ekstra hænder eller smeltede lemmer.

Ligesom den vildfarne knægt, der stak tungen ud på skolegruppebilledet, er Stable Diffusions biologiske grusomheder ikke altid umiddelbart indlysende, og du har måske Instagrammed dit seneste AI-mesterværk, før du bemærker de ekstra hænder eller smeltede lemmer.

Det er så vanskeligt at rette den slags fejl, at det ville være nyttigt, hvis en stabil diffusionsapplikation i fuld størrelse indeholdt en form for anatomisk genkendelsessystem, der brugte semantisk segmentering til at beregne, om det indkommende billede har alvorlige anatomiske mangler (som på billedet ovenfor) ), og kasserer den til fordel for en ny gengivelse, før den præsenteres for brugeren.

Selvfølgelig vil du måske gengive gudinden Kali eller Doctor Octopus, eller endda redde en upåvirket del af et lem-ramt billede, så denne funktion bør være en valgfri skifte.

Hvis brugere kunne tolerere telemetri-aspektet, kunne sådanne fejltændinger endda overføres anonymt i en kollektiv indsats for føderativ læring, der kan hjælpe fremtidige modeller med at forbedre deres forståelse af anatomisk logik.

LAION-baseret automatisk ansigtsforbedring

Som jeg bemærkede i min tidligere udseende ved tre ting, som Stable Diffusion kunne tage fat på i fremtiden, bør det ikke overlades udelukkende til nogen version af GFPGAN at forsøge at 'forbedre' gengivede ansigter i første instans-gengivelser.

GFPGANs 'forbedringer' er frygtelig generiske, underminerer ofte identiteten af ​​det afbildede individ og opererer udelukkende på et ansigt, der normalt er blevet gengivet dårligt, da det ikke har fået mere behandlingstid eller opmærksomhed end nogen anden del af billedet.

Derfor bør et professionelt standardprogram til stabil diffusion være i stand til at genkende et ansigt (med et standard og relativt let bibliotek som YOLO), anvende den fulde vægt af tilgængelig GPU-kraft til at gengive det og enten blande det forbedrede ansigt ind i den originale gengivelse i fuld kontekst, eller også gem den separat til manuel re-komposition. I øjeblikket er dette en ret "hands on" operation.

I tilfælde, hvor stabil diffusion er blevet trænet på et passende antal billeder af en berømthed, er det muligt at fokusere hele GPU-kapaciteten på en efterfølgende gengivelse udelukkende af forsiden af ​​det gengivede billede, hvilket normalt er en bemærkelsesværdig forbedring – og i modsætning til GFPGAN , trækker på information fra LAION-trænede data i stedet for blot at justere de gengivede pixels.

I tilfælde, hvor stabil diffusion er blevet trænet på et passende antal billeder af en berømthed, er det muligt at fokusere hele GPU-kapaciteten på en efterfølgende gengivelse udelukkende af forsiden af ​​det gengivede billede, hvilket normalt er en bemærkelsesværdig forbedring – og i modsætning til GFPGAN , trækker på information fra LAION-trænede data i stedet for blot at justere de gengivede pixels.

LAION-søgninger i appen

Siden brugerne begyndte at indse, at søgning i LAIONs database efter koncepter, personer og temaer kunne vise sig at være en hjælp til bedre brug af Stable Diffusion, er der blevet oprettet flere online LAION-opdagere, herunder haveibeentrained.com.

Søgefunktionen på haveibeentrained.com lader brugere udforske de billeder, der driver Stable Diffusion, og opdage, om objekter, personer eller ideer, som de kunne tænke sig at fremkalde fra systemet, sandsynligvis er blevet trænet i det. Sådanne systemer er også nyttige til at opdage tilstødende enheder, såsom måden berømtheder er grupperet på, eller den 'næste idé', der leder videre fra den nuværende. Kilde: https://haveibeentrained.com/?search_text=bowl%20of%20fruit

Søgefunktionen på haveibeentrained.com lader brugere udforske de billeder, der driver Stable Diffusion, og opdage, om objekter, personer eller ideer, som de kunne tænke sig at fremkalde fra systemet, sandsynligvis er blevet trænet i det. Sådanne systemer er også nyttige til at opdage tilstødende enheder, såsom måden berømtheder er grupperet på, eller den 'næste idé', der leder videre fra den nuværende. Kilde: https://haveibeentrained.com/?search_text=bowl%20of%20fruit

Selvom sådanne webbaserede databaser ofte afslører nogle af de tags, der ledsager billederne, er processen med generalisering der finder sted under modeltræning betyder, at det er usandsynligt, at et bestemt billede kan fremkaldes ved at bruge dets tag som en prompt.

Derudover fjernelse af 'stop ord' og praksis med stemming og lemmatisering i Natural Language Processing betyder, at mange af de udstillede sætninger blev opdelt eller udeladt, før de blev trænet i Stabil Diffusion.

Ikke desto mindre kan den måde, som æstetiske grupperinger binder sig sammen på i disse grænseflader, lære slutbrugeren meget om logikken (eller velsagtens 'personligheden') i Stable Diffusion og vise sig at være en hjælp til bedre billedproduktion.

Konklusion

Der er mange andre funktioner, som jeg gerne vil se i en fuld native desktop-implementering af Stable Diffusion, såsom native CLIP-baseret billedanalyse, som vender standarden Stable Diffusion-processen og giver brugeren mulighed for at fremkalde sætninger og ord, som systemet vil naturligt associere med kildebilledet eller gengivelsen.

Derudover ville ægte flisebaseret skalering være en velkommen tilføjelse, da ESRGAN er næsten lige så stumpt et instrument som GFPGAN. Heldigvis planlægger at integrere txt2imghd implementering af GOBIG gør dette hurtigt til en realitet på tværs af distributionerne, og det virker som et oplagt valg til en desktop-iteration.

Nogle andre populære anmodninger fra Discord-samfundene interesserer mig mindre, såsom integrerede promptordbøger og relevante lister over kunstnere og stilarter, selvom en notesbog i appen eller tilpasseligt leksikon med sætninger ville virke som en logisk tilføjelse.

Ligeledes forbliver de nuværende begrænsninger af menneskecentreret animation i Stable Diffusion, selvom de er kickstartet af CogVideo og forskellige andre projekter, utrolig begyndende og prisgivet opstrømsforskning i tidsmæssige forudsætninger relateret til autentisk menneskelig bevægelse.

For nu er stabil diffusionsvideo strengt taget psykedeliske, selvom det kan have en meget lysere nær fremtid inden for deepfake dukketeater, via EbSynth og andre relativt begyndende tekst-til-video-initiativer (og det er værd at bemærke manglen på syntetiserede eller 'ændrede' mennesker i Runway's seneste salgsfremmende video).

En anden værdifuld funktionalitet ville være gennemsigtig Photoshop-pass-through, for længst etableret i Cinema4Ds tekstureditor, blandt andre lignende implementeringer. Med dette kan man nemt shunte billeder mellem applikationer og bruge hver applikation til at udføre de transformationer, den udmærker sig ved.

Endelig, og måske vigtigst af alt, bør et komplet stationært stabilt diffusionsprogram ikke kun være i stand til nemt at skifte mellem kontrolpunkter (dvs. versioner af den underliggende model, der driver systemet), men bør også være i stand til at opdatere skræddersyede tekstinversioner, der fungerede med tidligere officielle modeludgivelser, men kan ellers blive ødelagt af senere versioner af modellen (som udviklere hos den officielle Discord har indikeret kunne være tilfældet).

Ironisk nok har den organisation, der er i den allerbedste position til at skabe en så kraftfuld og integreret matrix af værktøjer til Stable Diffusion, Adobe, allieret sig så stærkt med Initiativ til indholdsgodkendelse at det kunne virke som et tilbagestående PR-fejltrin for virksomheden – medmindre det var at hoble Stable Diffusions generative kræfter lige så grundigt, som OpenAI har gjort med DALL-E 2, og i stedet placere det som en naturlig udvikling af dets betydelige beholdninger inden for stockfotografering.

 

Først offentliggjort 15. september 2022.