U vraagt, wij geven antwoord!

Apps & Gidsen

Stable Diffusion: Herhaalbare gezichten genereren

Herhaalbaarheid is het belangrijkste aspect bij het maken van grafische inhoud met generatieve neurale netwerken. Dit geldt ongeacht het type content dat je maakt, of het nu een film- of gamekarakter, landschap of scèneomgeving is. Het belangrijkste probleem kan worden geformuleerd als: "Hoe kan ik mijn resultaat herhalen?". Telkens als je beelden begint te genereren met dezelfde positieve en negatieve aanwijzingen, krijg je verschillende resultaten. Soms zijn de verschillen klein en acceptabel, maar in de meeste gevallen kunnen ze een probleem vormen.

Stable Diffusion is geleerd op een grote dataset uit de echte wereld, wat verklaart waarom herhaalbaarheid geen sterk punt is van dit neurale netwerkmodel. Deze regel geldt echter niet voor foto's van beroemdheden. Deze foto's komen veel vaker voor in de echte wereld en dus ook in de dataset waarop Stable Diffusion is getraind. Je kunt deze foto's gebruiken als een "constante" of een "startpunt" in het generatieproces.

Methode 1. "Geschud, niet geroerd

Je hoeft natuurlijk niet alleen afbeeldingen van beroemdheden te maken, maar je kunt meerdere relevante aanwijzingen gebruiken om min of meer consistente resultaten te krijgen. We kunnen bijvoorbeeld twee beroemde Griekse zangeressen nemen: Elena Paparizou en Marina Satti, en herhaalbare resultaten krijgen:

Model: Realistische visie v6.0 beta 1

Positive prompts:

Elena Paparizou, Marina Satti, fashion portrait, alone, solo, greek woman in beautiful clothes, natural skin, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek singer generated

Het werkt met alle beroemdheden, omdat Stable Diffusion probeerde de meest prominente gelaatstrekken te reproduceren. Hier gebruiken we hetzelfde model en "schudden" we twee Hollywoodsterren (Dwayne Johnson en Danny Trejo) tot één nieuw synthetisch personage.

Positive prompts:

Dwayne Johnson, Danny Trejo, fashion portrait, alone, solo, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Hollywood stars generated

Elke keer dat je dezelfde beroemdheden mengt, krijg je soortgelijke resultaten. Laten we eens kijken naar een andere methode om herhaalbare karakters te genereren.

Methode 2. Naam anker

Beroemdheden zijn een goed begin, maar laten we eens kijken naar andere methoden om herhaalbare resultaten te krijgen. Het antwoord is heel eenvoudig: we kunnen meerdere menselijke namen gebruiken. Elk land heeft unieke namen, gerelateerd aan taalkundige kenmerken. De Griekse naam Kostas kan bijvoorbeeld vertaald worden naar "arbeid" of "inspanning", terwijl Nikos "Overwinning van het volk" betekent. Deze twee namen creëren een uniek beeld van een gegenereerd persoon, wat neurale netwerkmodellen helpt bij het begrijpen van onze creatiedoelen.

Positive prompts:

Portrait of [Kostas | Nikos] on a white background, greek man, short haircut, beard

Negative prompts:

woman, bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek person generated

Laten we een groot aantal afbeeldingen (80-100) genereren om verdere datasets te maken. De belangrijkste prompt werd gekozen om handige afbeeldingen te leveren die gemakkelijk van de achtergrond kunnen worden verwijderd. Negatieve prompts beschermen ons tegen het opnemen van willekeurige afbeeldingen met vervormingen in de dataset, evenals afbeeldingen van vrouwen.

Tip: als je erg verschillende afbeeldingen ontvangt, probeer dan de parameter CFG Scale te veranderen van 7,5 naar 15. Dit dwingt het neurale netwerk om de afbeeldingen te vergelijken. Dit zal het neurale netwerk dwingen om de aanwijzingen formeler te volgen.

Greek person dataset

Je kunt je eigen unieke namen kiezen met een eenvoudige naamgenerator, zoals Behind the Name. Je kunt ook de ControlNet functie gebruiken om meer controle te krijgen.

Methode 3. Uiterlijk aanleren

We kunnen het eindresultaat niet direct beïnvloeden, maar we zien dat sommige tokens (zoals tokens met afbeeldingen van beroemdheden) zwaarder wegen dan andere. Dit betekent dat we ons voorwaardelijke "beroemdheid" token kunnen creëren door er een passende prompt voor te maken en het model hierop verder te trainen. Dit is hoe LoRA (Low-Rank Adaptation of Large Language Models) werkt. Je kunt onze stapsgewijze handleiding gebruiken om je eigen LoRA-model te trainen op basis van een zelfgemaakte dataset.

Nadat we de achtergrond hebben verwijderd, verkrijgen we duidelijke portretten en gebruiken die om een specifiek LoRA-model te maken. Dit model helpt om een gezicht na te bootsen met een paar kleine veranderingen:

Dataset without background

Nu kunnen we dit personage op verschillende locaties genereren, verhalen creëren en hem in verschillende rollen plaatsen: van tuinman tot zakenman. Zijn gezicht zal consistent herkenbaar en herhaalbaar zijn:

Greek person with various backgrounds

Deze methode is niet ideaal, maar werkt perfect in verschillende situaties. Je hoeft geen dataset van een echt persoon voor te bereiden en het kan op afstand worden gegenereerd:

Greek person generated result

Je kunt proberen om zelf zo'n virtueel personage te maken, zonder de hulp van een professionele ontwerper of 3D-modelleringsspecialist. Alles wat u nodig hebt zijn snelle GPU's, die u kunt vinden in dedicated servers van LeaderGPU.

Zie ook:



Bijgewerkt: 26.03.2025

Gepubliceerd: 21.01.2025