Kunstmatige intelligentie
EasyPhoto: Uw Persoonlijke AI-foto Generator

Stable Diffusion Web User Interface, of SD-WebUI, is een omvangrijk project voor Stable Diffusion-modellen dat de Gradio-bibliotheek gebruikt om een browserinterface te bieden. Vandaag gaan we het hebben over EasyPhoto, een innovatieve WebUI-plugin die eindgebruikers in staat stelt om AI-portretten en -afbeeldingen te genereren. De EasyPhoto WebUI-plugin genereert AI-portretten met behulp van willekeurige sjablonen, ondersteunt verschillende fotostijlen en meerdere modificaties. Bovendien kan EasyPhoto’s functionaliteit verder worden verbeterd door gebruikers om afbeeldingen te genereren met het SDXL-model voor meer bevredigende, nauwkeurige en gevarieerde resultaten. Laten we beginnen.
Een Inleiding tot EasyPhoto en Stable Diffusion
Het Stable Diffusion-kader is een populair en robuust generatiekader op basis van diffusie dat door ontwikkelaars wordt gebruikt om realistische afbeeldingen te genereren op basis van invoertekstbeschrijvingen. Dankzij zijn mogelijkheden, heeft het Stable Diffusion-kader een breed scala aan toepassingen, waaronder image outpainting, image inpainting en image-to-image-vertaling. De Stable Diffusion Web UI, of SD-WebUI, staat uit als een van de meest populaire en bekende toepassingen van dit kader. Het biedt een browserinterface gebouwd op de Gradio-bibliotheek, waardoor een interactieve en gebruikersvriendelijke interface voor Stable Diffusion-modellen wordt geboden. Om de controle en gebruikersvriendelijkheid van afbeeldingengeneratie verder te verbeteren, integreert SD-WebUI verschillende Stable Diffusion-toepassingen.
Door de gemakken die het SD-WebUI-kader biedt, besloten de ontwikkelaars van het EasyPhoto-kader om het te maken als een webplugin in plaats van een volwaardige toepassing. In tegenstelling tot bestaande methoden die vaak last hebben van identiteitsverlies of onrealistische kenmerken in afbeeldingen introduceren, maakt het EasyPhoto-kader gebruik van de image-to-image-mogelijkheden van de Stable Diffusion-modellen om nauwkeurige en realistische afbeeldingen te produceren. Gebruikers kunnen het EasyPhoto-kader eenvoudig installeren als een extensie binnen de WebUI, waardoor de gebruikersvriendelijkheid en toegankelijkheid voor een breder publiek worden verbeterd. Het EasyPhoto-kader stelt gebruikers in staat om identiteitsgeleide, hoge kwaliteit en realistische AI-portretten te genereren die sterk lijken op de invoeridentiteit.
Allereerst vraagt het EasyPhoto-kader de gebruikers om hun digitale dubbelganger te maken door een paar afbeeldingen te uploaden om een gezicht LoRA of Low-Rank Adaptation-model online te trainen. Het LoRA-kader fine-tuned de diffusiemodellen snel door gebruik te maken van low-rank adaptatietechnologie. Dit proces stelt het basismodel in staat om de ID-informatie van specifieke gebruikers te begrijpen. De getrainde modellen worden vervolgens samengevoegd en geïntegreerd in het baseline Stable Diffusion-model voor interferentie. Bovendien gebruikt het model tijdens het interferentieproces de stabiele diffusiemodellen om de gezichtsgebieden in het interferentiesjabloon opnieuw te schilderen, en worden de overeenkomsten tussen de invoer- en uitvoerafbeeldingen geverifieerd met behulp van de verschillende ControlNet-eenheden.
Het EasyPhoto-kader maakt ook gebruik van een tweestapsdiffusieproces om potentiële problemen zoals grensartefacten en identiteitsverlies aan te pakken, waardoor de gegenereerde afbeeldingen visuele inconsistenties minimaliseren en de identiteit van de gebruiker behouden. Bovendien is de interferentiepijplijn in het EasyPhoto-kader niet beperkt tot het genereren van portretten, maar kan deze ook worden gebruikt om alles te genereren dat verband houdt met de ID van de gebruiker. Dit impliceert dat zodra u het LoRA-model voor een bepaalde ID traint, u een breed scala aan AI-afbeeldingen kunt genereren, en het dus een brede toepassing kan hebben, inclusief virtuele pasjes.
Om samen te vatten, stelt het EasyPhoto-kader
- Een novatieve benadering voor om het LoRA-model te trainen door meerdere LoRA-modellen te combineren om de gezichtsgetrouwheid van de gegenereerde afbeeldingen te behouden.
- Gebruikt verschillende versterkingsleertechnieken om de LoRA-modellen te optimaliseren voor gezichtsidentiteitsbeloningen die de overeenkomst tussen de identiteiten van de trainingsafbeeldingen en de gegenereerde resultaten verder helpen verbeteren.
- Stelt een dubbele stap inpaint-gebaseerde diffusieproces voor dat erop gericht is om AI-foto’s met hoge esthetiek en gelijkenis te genereren.
EasyPhoto: Architectuur en Training
De volgende figuur toont het trainingsproces van het EasyPhoto AI-kader.

Zoals te zien is, vraagt het kader de gebruikers eerst om de trainingsafbeeldingen in te voeren en voert vervolgens gezichtsdetectie uit om de gezichtslocaties te detecteren. Zodra het kader het gezicht heeft gedetecteerd, knipt het de invoerafbeelding met een vooraf gedefinieerde specifieke verhouding die uitsluitend op het gezichtsgebied is gericht. Het kader gebruikt vervolgens een huidverbeterings- en een saliencydetectiemodel om een schone en duidelijke gezichtstraining afbeelding te verkrijgen. Deze twee modellen spelen een cruciale rol bij het verbeteren van de visuele kwaliteit van het gezicht en zorgen ervoor dat de achtergrondinformatie is verwijderd en de trainingsafbeelding voornamelijk het gezicht bevat. Ten slotte gebruikt het kader deze verwerkte afbeeldingen en invoerprompts om het LoRA-model te trainen en het dus uit te rusten met de mogelijkheid om gebruikersspecifieke gezichtskenmerken effectiever en nauwkeuriger te begrijpen.
Bovendien omvat het kader tijdens de trainingsfase een kritische validatiestap, waarin het kader de gezichts-ID-kloof tussen de gebruikerinvoer afbeelding en de verificatieafbeelding die is gegenereerd door het getrainde LoRA-model berekent. De validatiestap is een fundamenteel proces dat een sleutelrol speelt bij het bereiken van de fusie van de LoRA-modellen, waardoor het getrainde LoRA-kader uiteindelijk transformeert in een dubbelganger of een nauwkeurige digitale weergave van de gebruiker. Bovendien wordt de verificatieafbeelding met de optimale gezichts-ID-score geselecteerd als de gezichts-ID-afbeelding en wordt deze gezichts-ID-afbeelding vervolgens gebruikt om de identiteitsgelijkenis van de interferentiegeneratie te verbeteren.
Verder, op basis van het ensembleproces, traint het kader de LoRA-modellen met waarschijnlijkheidschatting als het primaire doel, terwijl het behoud van gezichtsidentiteitsgelijkenis het downstreamdoel is. Om dit probleem aan te pakken, maakt het EasyPhoto-kader gebruik van versterkingsleertechnieken om het downstreamdoel rechtstreeks te optimaliseren.Als resultaat vertonen de gezichtskenmerken die de LoRA-modellen leren verbetering die leidt tot een verbeterde gelijkenis tussen de gegenereerde resultaten en demonstreert het ook generalisatie over sjablonen.
Interferentieproces
De volgende figuur toont het interferentieproces voor een individuele gebruikers-ID in het EasyPhoto-kader en is onderverdeeld in drie delen
- Gezichtsvoorbewerking voor het verkrijgen van de ControlNet-referentie en de voorbewerkte invoerafbeelding.
- Eerste Diffusie die helpt bij het genereren van grove resultaten die op de gebruikersinvoer lijken.
- Tweede Diffusie die de grensartefacten corrigeert, waardoor de afbeeldingen nauwkeuriger en realistischer worden.

Voor de invoer, neemt het kader een gezichts-ID-afbeelding (gegenereerd tijdens de trainingsvalidatie met de optimale gezichts-ID-score) en een interferentiesjabloon. De uitvoer is een hooggedetailleerde, nauwkeurige en realistische portret van de gebruiker en lijkt sterk op de identiteit en unieke verschijning van de gebruiker op basis van het interferentiesjabloon. Laten we een gedetailleerde blik werpen op deze processen.
Gezichtsvoorbewerking
Een manier om een AI-portret te genereren op basis van een interferentiesjabloon zonder bewuste redenering is om het SD-model te gebruiken om het gezichtsgebied in het interferentiesjabloon in te schilderen. Bovendien voegt het toevoegen van het ControlNet-kader aan het proces niet alleen de behoud van gebruikersidentiteit, maar ook de gelijkenis tussen de gegenereerde afbeeldingen. Het gebruik van ControlNet rechtstreeks voor regionale inschildering kan echter potentiële problemen introduceren die onder meer kunnen omvatten
- Inconsistentie tussen de invoer en de gegenereerde afbeelding: Het is duidelijk dat de belangrijkste punten in de sjabloonafbeelding niet compatibel zijn met de belangrijkste punten in de gezichts-ID-afbeelding, waardoor het gebruik van ControlNet met de gezichts-ID-afbeelding als referentie kan leiden tot enkele inconsistenties in de uitvoer.
- Defecten in het inschilderingsgebied: Het maskeren van een gebied en vervolgens inschilderen met een nieuw gezicht kan leiden tot opvallende defecten, vooral langs de inschilderingsgrens, die niet alleen de authenticiteit van de gegenereerde afbeelding beïnvloeden, maar ook de realiteit van de afbeelding.
- Identiteitsverlies door Control Net: Aangezien het trainingsproces het ControlNet-kader niet gebruikt, kan het gebruik van ControlNet tijdens de interferentiefase de mogelijkheid van de getrainde LoRA-modellen beïnvloeden om de invoergebruikers-ID-identiteit te behouden.
Om de bovengenoemde problemen aan te pakken, stelt het EasyPhoto-kader drie procedures voor.
- Aligneren en plakken: Door het gebruik van een gezichtsplakalgoritme, stelt het EasyPhoto-kader een oplossing voor om het probleem van mismatch tussen gezichtskenmerken tussen de gezichts-ID en het sjabloon aan te pakken. Eerst berekent het model de gezichtskenmerken van de gezichts-ID en de sjabloonafbeelding, waarna het model de affiene transformatiematrix bepaalt die wordt gebruikt om de gezichtskenmerken van de sjabloonafbeelding uit te lijnen met de gezichts-ID-afbeelding. De resulterende afbeelding behoudt dezelfde kenmerken van de gezichts-ID-afbeelding en lijkt ook op het sjabloon.
- Gezichtsfusie: Gezichtsfusie is een novatieve benadering die wordt gebruikt om de grensartefacten te corrigeren die het resultaat zijn van maskerinpainting, en het omvat de rectificatie van artefacten met behulp van het ControlNet-kader. De methode stelt het EasyPhoto-kader in staat om de behoud van harmonieuze randen te waarborgen en zo uiteindelijk de beeldgeneratie te leiden. Het gezichtsfusiealgoritme voegt de roop (grondwaarheidsgebruikersafbeeldingen) afbeelding en het sjabloon samen, waardoor de resulterende gefuseerde afbeelding betere stabilisatie van de randgrenzen vertoont, wat uiteindelijk leidt tot een verbeterde uitvoer tijdens de eerste diffusiefase.
- ControlNet-geleide validatie: Aangezien de LoRA-modellen niet zijn getraind met het ControlNet-kader, kan het gebruik van ControlNet tijdens het inferentieproces de mogelijkheid van de LoRA-modellen beïnvloeden om de identiteiten te behouden. Om de generalisatiecapaciteiten van EasyPhoto te verbeteren, houdt het kader rekening met de invloed van het ControlNet-kader en integreert LoRA-modellen van verschillende stadia.
Eerste Diffusie
De eerste diffusiefase gebruikt het sjabloonafbeelding om een afbeelding te genereren met een unieke ID die lijkt op de invoergebruikers-ID. De invoerafbeelding is een fusie van de gebruikersinvoer afbeelding en het sjabloonafbeelding, terwijl de gekalibreerde gezichtsmasker de invoermasker is. Om de controle over afbeeldingengeneratie verder te vergroten, integreert het EasyPhoto-kader drie ControlNet-eenheden, waarvan de eerste ControlNet-eenheid zich richt op de controle van de gefuseerde afbeeldingen, de tweede ControlNet-eenheid de kleuren van de gefuseerde afbeelding controleert, en de laatste ControlNet-eenheid de openpose (realtime multi-persoon houdingscontrole) van de vervangen afbeelding is, die niet alleen de gezichtsstructuur van het sjabloonafbeelding bevat, maar ook de gezichtsidentiteit van de gebruiker.
Tweede Diffusie
In de tweede diffusiefase worden de artefacten in de buurt van de grens van het gezicht verfijnd en worden gebruikers de flexibiliteit geboden om een specifiek gebied in de afbeelding te maskeren in een poging om de effectiviteit van de generatie binnen dat toegewezen gebied te verbeteren. In deze fase combineert het kader de uitvoerafbeelding die is verkregen uit de eerste diffusiefase met de roop-afbeelding of het resultaat van de gebruikersafbeelding, waardoor de invoerafbeelding voor de tweede diffusiefase wordt gegenereerd. Algemeen speelt de tweede diffusiefase een cruciale rol bij het verbeteren van de algehele kwaliteit en de details van de gegenereerde afbeelding.
Meerdere Gebruikers-IDs
Een van de highlights van EasyPhoto is de ondersteuning voor het genereren van meerdere gebruikers-IDs, en de onderstaande figuur toont de pijplijn van het interferentieproces voor meerdere gebruikers-IDs in het EasyPhoto-kader.

Om ondersteuning te bieden voor meerdere gebruikers-ID-generatie, voert het EasyPhoto-kader eerst gezichtsdetectie uit op het interferentiesjabloon. Deze interferentiesjablonen worden vervolgens opgesplitst in meerdere maskers, waarbij elk masker slechts één gezicht bevat en de rest van de afbeelding wit is gemaskeerd, waardoor de meerdere gebruikers-ID-generatie wordt omgezet in een eenvoudige taak van het genereren van individuele gebruikers-IDs. Zodra het kader de gebruikers-ID-afbeeldingen heeft gegenereerd, worden deze afbeeldingen samengevoegd in het interferentiesjabloon, waardoor een naadloze integratie van de sjabloonafbeeldingen met de gegenereerde afbeeldingen wordt gefaciliteerd, wat uiteindelijk resulteert in een hoge kwaliteit afbeelding.
Experimenten en Resultaten
Nu we een begrip hebben van het EasyPhoto-kader, is het tijd om de prestaties van het EasyPhoto-kader te onderzoeken.

De bovenstaande afbeelding is gegenereerd door de EasyPhoto-plugin en gebruikt een Style-gebaseerd SD-model voor de afbeeldingengeneratie. Zoals te zien is, zien de gegenereerde afbeeldingen er realistisch uit en zijn ze vrij nauwkeurig.

De bovenstaande afbeelding is gegenereerd door het EasyPhoto-kader met behulp van een Comic Style-gebaseerd SD-model. Zoals te zien is, zien de strips en de realistische foto’s er vrij realistisch uit en lijken ze sterk op de invoerafbeelding op basis van de gebruikersprompts of -vereisten.
De onderstaande afbeelding is gegenereerd door het EasyPhoto-kader met behulp van een multi-persoon sjabloon. Zoals duidelijk te zien is, zijn de gegenereerde afbeeldingen duidelijk, nauwkeurig en lijken ze sterk op de oorspronkelijke afbeelding.

Met behulp van EasyPhoto kunnen gebruikers nu een breed scala aan AI-portretten genereren, meerdere gebruikers-IDs genereren met behulp van behouden sjablonen of het SD-model gebruiken om interferentiesjablonen te genereren. De bovenstaande afbeeldingen demonstreren de mogelijkheid van het EasyPhoto-kader om diverse en hoge kwaliteit AI-afbeeldingen te produceren.
Conclusie
In dit artikel hebben we het gehad over EasyPhoto, een novatieve WebUI-plugin die eindgebruikers in staat stelt om AI-portretten en -afbeeldingen te genereren. De EasyPhoto WebUI-plugin genereert AI-portretten met behulp van willekeurige sjablonen en de huidige implicaties van de EasyPhoto WebUI ondersteunen verschillende fotostijlen en meerdere modificaties. Bovendien kan EasyPhoto’s functionaliteit verder worden verbeterd door gebruikers om afbeeldingen te genereren met het SDXL-model om meer bevredigende, nauwkeurige en gevarieerde afbeeldingen te genereren. Het EasyPhoto-kader maakt gebruik van een stabiele diffusiebasismodel in combinatie met een vooraf getraind LoRA-model dat hoge kwaliteit afbeeldinguitvoer produceert.












