Stable Diffusion navodila za začetnike in napredne uporabnike
Umetna inteligenca (AI) spreminja svet, kot ga poznamo, in eno izmed najbolj fascinantnih področij je generiranje slik. Stable Diffusion je odprtokodni model, ki je demokratiziral ustvarjanje osupljivih vizualnih vsebin. Ne glede na to, ali ste popoln začetnik, ki želi ustvariti svojo prvo AI sliko, ali izkušen uporabnik, ki išče napredne tehnike, ta vodnik vam bo pomagal obvladati Stable Diffusion.
V tem obsežnem članku bomo raziskali vse, od osnovnih konceptov do kompleksnih tehnik, ki vam bodo omogočile, da ustvarite točno takšne slike, kot si jih zamislite.
Kaj je Stable Diffusion in zakaj je pomemben?
Stable Diffusion je generativni difuzijski model, ki je bil razvit s strani podjetja Stability AI in raziskovalcev. Njegova glavna funkcija je pretvarjanje besedilnih opisov (tako imenovanih “pozivov” ali “prompts”) v slike. Za razliko od nekaterih drugih AI generatorjev slik je Stable Diffusion odprtokoden in ga je mogoče poganjati tudi na relativno skromni strojni opremi (npr. grafičnih karticah z 8 GB VRAM-a).
Njegov pomen leži v:
- Dostopnosti: Omogoča širokemu krogu uporabnikov ustvarjanje visokokakovostnih slik brez dragih naročnin.
- Prilagodljivosti: Uporabniki lahko trenirajo lastne modele (LoRA-e, DreamBooth) za specifične stile, predmete ali ljudi.
- Odprtokodnosti: Spodbuja inovacije in razvoj s strani skupnosti.
- Raznolikosti uporabe: Od umetnosti in oblikovanja do izobraževanja in oglaševanja.
Začetni koraki: Namestitev in prvi pozivi
Čeprav obstajajo spletne različice Stable Diffusion, se večina naprednih uporabnikov odloči za lokalno namestitev. Najbolj priljubljena in priporočena uporabniška vmesnika sta Automatic1111 (Stable Diffusion WebUI) in ComfyUI.
Namestitev Automatic1111 WebUI
Automatic1111 je izjemno priljubljen zaradi svoje bogate funkcionalnosti in uporabniku prijaznega vmesnika. Namestitev običajno vključuje naslednje korake:
- Namestite Python: Priporočena je različica 3.10.x.
- Namestite Git: Za kloniranje repozitorija.
- Klonirajte repozitorij Automatic1111:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git - Prenesite modele: Prvi model, ki ga boste potrebovali, je osnovni Stable Diffusion model (npr. SD 1.5 ali SDXL Base). Shranite ga v mapo
stable-diffusion-webui/models/Stable-diffusion. - Zaženite
webui-user.bat(Windows) aliwebui.sh(Linux/macOS): Skripta bo namestila vse potrebne odvisnosti in zagnala vmesnik v vašem brskalniku.
Nasvet za začetnike: Če se vam zdi namestitev prezahtevna, poskusite z spletnimi platformami, kot so DreamStudio (uradna Stability AI platforma), Leonardo.ai ali Mage.space. Te platforme so odlične za hitro in enostavno ustvarjanje slik, čeprav morda nimajo vseh naprednih funkcij lokalne namestitve.
Vaš prvi poziv (Prompt)
Ko imate Stable Diffusion nameščen in zagnan, je čas za vaš prvi poziv. Poziv je ključ do ustvarjanja želenih slik. Je opis, ki ga AI uporabi za generiranje vizualne vsebine.
Primer preprostega poziva:
A cat sitting on a bookshelf, realistic, detailed, soft lighting
Struktura dobrega poziva:
- Glavni predmet/tema: Kaj želite, da je na sliki (npr.
cat,landscape,spaceship). - Opisne lastnosti: Barva, oblika, velikost, material (npr.
fluffy,majestic,futuristic). - Dejanja/Situacija: Kaj subjekt počne ali kje se nahaja (npr.
sitting on a bookshelf,flying through space). - Stil: Umetniški stil, ki ga želite posnemati (npr.
realistic,watercolor,cyberpunk,photorealistic,oil painting). - Osvetlitev/Kompozicija: (npr.
soft lighting,cinematic lighting,wide shot,close-up). - Kvaliteta: Ključne besede za izboljšanje kvalitete (npr.
detailed,high resolution,8k,masterpiece,best quality).
Negativni pozivi (Negative Prompts)
Negativni pozivi so prav tako pomembni kot pozitivni. Povedo AI-ju, česa NE želite na sliki. To je izjemno koristno za odpravljanje pogostih napak ali neželenih elementov.
Pogosti negativni pozivi:
ugly, deformed, disfigured, poor anatomy, bad hands, extra limbs, missing limbs, blurry, low resolution, jpeg artifacts, watermark, text, signature, cartoon, anime, 3d render, illustration, painting, sketch
Z redno uporabo negativnih pozivov boste drastično izboljšali kakovost svojih generiranih slik.
Razumevanje parametrov v Stable Diffusion
Poleg pozivov imajo ključno vlogo pri generiranju slik tudi različni parametri. Spoznajmo najpomembnejše, ki jih boste našli v vmesnikih, kot je Automatic1111.
Sampler (Algoritem vzorčenja)
Določa, kako se bo slika generirala skozi difuzijski proces. Različni samplerji imajo različne lastnosti in lahko vplivajo na hitrost in kakovost. Nekateri priljubljeni so:
- DPM++ 2M Karras: Pogosto priporočen za visoko kakovost.
- Euler a: Hiter, a lahko ustvari bolj “umetniški” videz.
- DDIM: Stabilen, a počasnejši.
- LMS Karras: Dober kompromis med hitrostjo in kakovostjo.
Nasvet: Za začetek poskusite z DPM++ 2M Karras. Eksperimentirajte z različnimi samplerji, da vidite, kateri vam najbolj ustreza za določen stil.
Sampling Steps (Koraki vzorčenja)
Število korakov, ki jih AI vzame za generiranje slike. Več korakov običajno pomeni bolj podrobno in kakovostno sliko, vendar tudi daljši čas generiranja. Običajno je 20-30 korakov dovolj za dobre rezultate, nad 40-50 pa so izboljšave že minimalne.
CFG Scale (Classifier Free Guidance Scale)
Določa, kako strogo AI upošteva vaš poziv. Višje vrednosti (npr. 7-12) pomenijo, da bo AI poskušal biti bolj zvest pozivu, kar lahko privede do bolj živahnih in podrobnih slik, a tudi do manj kreativnosti in morebitnih artefaktov. Nižje vrednosti (npr. 3-6) puščajo AI-ju več svobode, kar lahko rezultira v bolj kreativnih, a morda manj “točnih” slikah.
Seed (Seme)
Številka, ki inicializira naključni proces generiranja slike. Če uporabite enak seed in enake parametre, boste vedno dobili enako sliko. To je uporabno za ponovno ustvarjanje določene slike ali za iterativno spreminjanje obstoječe. Vrednost -1 pomeni naključen seed.
Resolution (Ločljivost)
Širina in višina generirane slike. Večja ločljivost zahteva več VRAM-a in daljši čas generiranja. Za modele SD 1.5 je priporočena začetna ločljivost 512×512 ali 768×768. Za SDXL modele je to 1024×1024. Generiranje v bistveno višji ločljivosti neposredno lahko povzroči artefakte ali “podvojene” subjekte. Za visoke ločljivosti se običajno uporablja upscaling.
Batch Count & Batch Size
- Batch Count: Kolikokrat naj se proces generiranja ponovi.
- Batch Size: Koliko slik naj se generira naenkrat.
Večja Batch Size lahko pospeši proces, če imate dovolj VRAM-a, saj AI generira več slik vzporedno.
Napredne tehnike za vrhunske rezultate
Ko obvladate osnove, se lahko poglobite v napredne tehnike, ki bodo vaše generirane slike dvignile na povsem novo raven.
Uporaba finetuned modelov (Checkpointi)
Poleg osnovnih Stable Diffusion modelov (SD 1.5, SDXL) obstaja na tisoče “finetuned” modelov (checkpointov), ki so bili trenirani na specifičnih naborih podatkov, da ustvarijo določen stil (npr. anime, fotorealizem, specifičen umetniški stil) ali vsebino. Najdete jih na platformah, kot je Civitai.
Kako jih uporabiti: Prenesite .ckpt ali .safetensors datoteko in jo shranite v mapo stable-diffusion-webui/models/Stable-diffusion. Nato jo izberite v padajočem meniju v vmesniku Automatic1111.
LoRA (Low-Rank Adaptation)
LoRA-e so majhne datoteke (običajno nekaj deset do nekaj sto MB), ki se uporabljajo v kombinaciji z osnovnim modelom za dodajanje specifičnih stilov, likov, predmetov ali poz. So izjemno učinkovite, saj ne zahtevajo ponovnega treniranja celotnega modela.
Kako jih uporabiti: Prenesite LoRA datoteko (.safetensors) in jo shranite v mapo stable-diffusion-webui/models/Lora. V Automatic1111 kliknite na gumb “Show/hide extra networks” (ikona karte), izberite LoRA in kliknite nanjo. V poziv se bo dodala koda, kot je <lora:my_lora_name:1>. Številka na koncu določa težo (moč) LoRA-e (običajno med 0.5 in 1.0).
Embeddingi (Textual Inversion)
Podobno kot LoRA-e, embeddingi (imenovani tudi Textual Inversion) omogočajo vpeljavo novih konceptov v model s pomočjo majhnih datotek. Uporabni so za specifične stile ali subjekte.
Kako jih uporabiti: Shranite datoteko .pt ali .safetensors v mapo stable-diffusion-webui/embeddings. Nato preprosto vključite ime embeddinga v svoj poziv (npr. my_embedding_style).
ControlNet
ControlNet je revolucionarna tehnika, ki omogoča izjemno natančen nadzor nad kompozicijo in postavitvijo generirane slike. Omogoča, da Stable Diffusion upošteva vnosne slike (npr. skice, obrisi, globinske mape, pozami človeških figur) kot vodilo.
Najpogostejši ControlNet moduli:
- Canny: Uporabi obrise (edge detection) vnosne slike. Odlično za prenos kompozicije.
- OpenPose: Pretvori pozo človeške figure v schemo in omogoča generiranje likov v točno določeni pozi.
- Depth: Uporabi globinsko mapo vnosne slike za prenos 3D strukture.
- Normal: Uporabi normalno mapo za prenos površinskih podrobnosti.
- Scribble/Sketch: Iz vaših skic generira realistične slike.
- Tile: Odlično za upscaling in dodajanje podrobnosti brez spreminjanja kompozicije.
- IP-Adapter: Omogoča prenos stila ali referenčne slike.
Kako uporabiti ControlNet v Automatic1111:
- Namestite razširitev ControlNet (če je še nimate).
- V Automatic1111 se bo pojavila razdelek ControlNet.
- Naložite vnosno sliko.
- Izberite “Enable” in “Pixel Perfect” (običajno).
- Izberite “Preprocessor” (npr.
canny,openpose_full) in “Model” (ustrezen ControlNet model, ki ga morate prenesti posebej, npr.control_v11p_sd15_canny). - Prilagodite “Control Weight” za določanje vpliva ControlNeta.
Inpainting in Outpainting
- Inpainting: Omogoča spreminjanje ali dodajanje elementov v določen del že obstoječe slike. Na primer, lahko spremenite barvo oblačil, dodate predmete ali popravite napake.
- Outpainting: Razširi sliko preko njenih prvotnih meja. AI bo inteligentno dopolnil manjkajoče dele slike, ob upoštevanju obstoječega konteksta.
Obe funkciji sta dostopni v Automatic1111 pod zavihkom “img2img”.
Upscaling (Povečanje ločljivosti)
Kot smo že omenili, generiranje slik neposredno v zelo visoki ločljivosti ni vedno idealno. Boljša strategija je generiranje slike v manjši ločljivosti (npr. 512×512 ali 1024×1024) in nato uporaba upscalerjev za povečanje ločljivosti in dodajanje podrobnosti.
V Automatic1111 imate več možnosti za upscaling:
- Hires. fix: V zavihku “txt2img”. Generira sliko v manjši ločljivosti in jo nato upscale-a z izboljšanjem podrobnosti.
- Img2img z upscalerjem: Naložite sliko v zavihek “img2img”, izberite upscaler (npr.
ESRGAN_4x,Latent (nearest),R-ESRGAN 4x+ Anime6B) in povečajte dimenzije. - Upscaling z razširitvami: Obstajajo tudi namensko razširitve za upscaling, kot je MultiDiffusion ali Tiled Diffusion/VAE, ki omogočajo generiranje ogromnih slik.
Pozivna in negativna teža (Prompt Weighting)
Z oklepaji lahko določite težo posameznim besedam ali frazam v pozivu:
(word:1.2): Poveča težo besede “word” za 20%.(word:0.8): Zmanjša težo besede “word” za 20%.[word]: Skrajšana oblika(word:0.9).((word)): Skrajšana oblika(word:1.1).
To je uporabno, ko želite poudariti določen element ali zmanjšati vpliv drugega.
Iterativno izboljšanje
Umetnost generiranja slik z AI je iterativen proces. Redko boste dobili popolno sliko v prvem poskusu. Ključ je v eksperimentiranju:
- Spreminjajte pozive: Dodajajte ali odstranjujte besede, spreminjajte vrstni red.
- Prilagajajte parametre: CFG Scale, Sampling Steps, Sampler.
- Uporabite Img2img: Naložite že generirano sliko in jo z novimi pozivi in parametri preoblikujte.
- Variacije: Uporabite funkcijo “Variations” v Automatic1111 za generiranje podobnih slik iz obstoječe.
Stable Diffusion XL (SDXL)
Stable Diffusion XL (SDXL) predstavlja pomemben napredek v primerjavi s prejšnjimi različicami, kot je SD 1.5. Glavne izboljšave vključujejo:
- Višja kakovost slike: SDXL generira bolj fotorealistične in estetsko prijetne slike že z osnovnimi pozivi.
- Boljše razumevanje pozivov: Bolje razume kompleksne in daljše pozive, vključno z več koncepti in kompozicijami.
- Izboljšana anatomija: Pogosto generira boljše roke in obraze, ki so bili šibka točka prejšnjih modelov.
- Nativna visoka ločljivost: Optimalna ločljivost za SDXL je 1024×1024, kar omogoča bolj podrobne slike že v prvem koraku.
- Modularna arhitektura: SDXL običajno uporablja dva modela (bazni in refiner), ki skupaj izboljšata kakovost.
Čeprav SDXL zahteva nekoliko več VRAM-a, so rezultati vredni truda. Priporočamo, da za nove projekte pričnete raziskovati SDXL.
ComfyUI: Grafični vmesnik za napredne uporabnike
Medtem ko je Automatic1111 odličen za večino uporabnikov, ComfyUI ponuja bolj vizualen in modularni pristop k generiranju slik. Deluje na principu “node-based” vmesnika, kjer vsak korak v procesu generiranja predstavlja “node” (vozlišče), ki ga povežete z drugimi.
Prednosti ComfyUI:
- Popoln nadzor: Omogoča izjemno natančno prilagoditev vsakega koraka.
- Transparentnost: Jasno vidite, kako poteka proces generiranja.
- Učinkovitost: Pogosto je bolj optimiziran za VRAM in hitrost, še posebej pri kompleksnih potekih.
- Zmogljive avtomatizacije: Enostavno ustvarite kompleksne poteke za serijsko obdelavo ali specifične naloge.
ComfyUI je strmejša učna krivulja, vendar je za resnično napredne uporabnike in raziskovalce neprecenljiv.
Etični in varnostni vidiki
Pri uporabi Stable Diffusion je pomembno upoštevati tudi etične in varnostne vidike:
- Avtorske pravice: Bodite pozorni na avtorske pravice slik, ki jih uporabljate kot referenco, in na avtorske pravice generiranih slik, še posebej če jih nameravate komercialno uporabiti. Zakonodaja se na tem področju še razvija.
- Zloraba: Ne uporabljajte Stable Diffusion za ustvarjanje škodljive, nezakonite, diskriminatorne ali neetične vsebine (npr. deepfakes brez soglasja, generiranje sovražnega govora).
- Preglednost: Priznajte, da so vaše slike ustvarjene z AI, še posebej v kontekstih, kjer je to pomembno (npr. novice, dokumentarni filmi).
Zaključek
Stable Diffusion je močno orodje, ki omogoča vsakomur, da postane digitalni umetnik. Od osnovnih pozivov do kompleksnih tehnik, kot so ControlNet, LoRA-e in SDXL, je na voljo neomejeno število možnosti za ustvarjanje. Ključ do obvladovanja Stable Diffusion je v eksperimentiranju, vztrajnosti in učenju iz skupnosti.
Upamo, da vam je ta obsežen vodnik pomagal razumeti Stable Diffusion in vas opremil z znanjem, da začnete ustvarjati svoje osupljive AI umetnine. Srečno generiranje!