Txt2img (Stable Diffusion)

Da Wiki AI.
Versione del 14 mar 2024 alle 08:53 di Lucia Terenzi (discussione | contributi) (Creata pagina con "Txt2img è un tool di Stable Diffusion che, come intuibile, genera un'immagine .png basata su un prompt testuale. Il suo ultimo aggiornamento risale al 28 Ottobre 2022. I parametri di Txt2img non verranno descritti con massimo dettaglio dal momento che la finalità di questa Wiki entry è di fornire delle linee guida comprovate da sperimentazione diretta. * Il primo obiettivo è ricondurre con praticità il livello di performance riscontrato nel modello alle relati...")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Txt2img è un tool di Stable Diffusion che, come intuibile, genera un'immagine .png basata su un prompt testuale. Il suo ultimo aggiornamento risale al 28 Ottobre 2022.

I parametri di Txt2img non verranno descritti con massimo dettaglio dal momento che la finalità di questa Wiki entry è di fornire delle linee guida comprovate da sperimentazione diretta.

  • Il primo obiettivo è ricondurre con praticità il livello di performance riscontrato nel modello alle relative combinazioni di parametri.
  • Il secondo obiettivo è creare collegamenti tra ciascun parametro e la corrispondente sezione dell'architettura.

Link di approfondimento

Nel caso si voglia approfondire i setting si può visitare il github relativo alla UI: [1]

Nel caso si voglia approfondire l'architettura generale si può visitare il repository: [2]

Overview dell'interfaccia

  • Sampling method:
  • Sampling steps:

-Tra l'1 e i 15 step: l'immagine è relativamente sfocata.

-Tra i 15 e i 25 step: L'immagine è abbastanza chiara e di buona qualità.

-Tra i 25 e i 45: La qualità dell'immagine è molto alta e comprende la texture.

-Dai 45 in poi: La loss function si stabilizza e si osserva una variazione minima nella risoluzione.

  • Upscaler:

L'upscaling è il processo di aumentare la risoluzione di un'immagine, cioè di ingrandirla, mantenendo al contempo la qualità visiva il più alta possibile. Questo può essere ottenuto mediante algoritmi di interpolazione e tecniche avanzate di elaborazione delle immagini, che aggiungono dettagli artificiali per migliorare l'aspetto dell'immagine.

  • Hires Steps:
  • Denoising strenght
  • Upscale by
  • Width/Height: Dimensioni
  • Batch count
  • Batch size
  • CFG Scale (Classifier Free Guidance Scale)
  • Seed

Sperimentazioni

Per effettuare un'analisi bilanciata utilizzeremo gli stessi due metri di giudizio per valutare gli output:

  • Inception Score
  • Visual Inspection by GPT4

Sperimentazione: Denoising Strength

  • Parametri Statici:
    • Prompt = "A man cooking a steak, he is in the kitchen, the stoves are on"
    • Sampling Method: DPM++2M SDE SGMUniform
    • Sampling Steps: 30
    • Upscaler : Latent (nearest-exact)
    • Hires Step: 0
    • Batch count : 1
    • Batch size: 1
    • CFG : 15
    • Denoising Strength = 0,1 (le sperimentazioni iniziano dopo il valore 0, poiché non si sta fornendo al modello l'opportunità di "pulire" o trasformare il rumore in un'immagine coerente basata sul prompt fornito)
Denoising Strength = 0,1
Denoising Strength = 0,3
Denoising Strength = 0,7

Sperimentazione: CFG Scale

  • Parametri Statici:
    • Prompt = "A man cooking a steak, he is in the kitchen, the stoves are on"
    • Sampling Method: DPM++2M SDE SGMUniform
    • Sampling Steps: 30
    • Upscaler : Latent (nearest-exact)
    • Hires Step: 0
    • Batch count : 1
    • Batch size: 1
    • CFG : 1
    • Denoising Strength = 0,7
CFG = 1
CFG = 3
CFG = 15

Sperimentazione: Share Attention in Batch

Il parametro "Share attention in batch" è una funzionalità dove l'attenzione del modello, ovvero la parte che il modello "considera" più importante durante la generazione dell'immagine, viene condivisa o sincronizzata tra le immagini in un batch. Quando si generano più immagini contemporaneamente (un batch), questo parametro fa in modo che tutte le immagini nel batch diano priorità a parti simili dell'input, o che le caratteristiche stilistiche siano coerenti tra di loro. Per esempio, se si stanno generando immagini di volti e si vuole che l'attenzione sia focalizzata sugli occhi per tutti i volti nel batch, attivare questa opzione potrebbe aiutare a garantire che tutti i volti generati abbiano occhi ben definiti e uno stile simile. Questo può essere particolarmente utile quando l'obiettivo è creare una serie di immagini che devono essere visivamente coerenti l'una con l'altra.

  • Parametri Statici:
    • Prompt = "A man cooking a steak, he is in the kitchen, the stoves are on"
    • Sampling Method: DPM++2M SDE SGMUniform
    • Sampling Steps: 30
    • Upscaler : Latent (nearest-exact)
    • Hires Step: 0
    • Batch count : 1
    • Batch size: 1
    • CFG : 15
    • Denoising Strength = 0,7
SAIB = off
SAIB = on

Sperimentazione: Hire steps

  • Parametri Statici:
    • Prompt = "A man cooking a steak, he is in the kitchen, the stoves are on, the steak is being cooked on a pan"
    • Sampling Method: DPM++2M SDE SGMUniform
    • Sampling Steps: 30
    • Upscaler : Latent (nearest-exact)
    • Hires Step: 0
    • Batch count : 1
    • Batch size: 1
    • CFG : 15
    • Denoising Strength = 0,7
Hire steps = 0
Hire steps = 100