Sabato, 24 Febbraio 2024 16:17

Come generare immagini da testo gratuitamente (alternativa a Midjourney)

Scritto da
Vota questo articolo
(2 Voti)

Fooocus è un software per la generazione di immagini text to image (da testo ad immagine) ispirato ai progetti Midjourney e Stable Diffusion.

Il software funziona anche offline, è open source e gratuito.

Si trova su GitHub, una piattaforma di sviluppo software fondata nel 2008 che offre agli sviluppatori uno spazio dove poter ospitare i propri progetti, collaborare con altri utenti, controllare le versioni del codice, gestire problemi e richieste e molto altro ancora.

Per la generazione di immagini in locale è necessario un computer abbastanza potente, e i tempi potrebbero non essere rapidi. Per un Sistema Windows/Linux è richiesta una GPU Nvidia RTX 4XXX da 4GB e 8GB di RAM.

Per fortuna esiste una procedura alternativa che consente l'utilizzo di risorse online per la generazione delle immagini. Vi spiego come fare nell'articolo di oggi.



Per prima cosa collegatevi alla pagina del progetto su GitHub con Google Chrome (ho effettuato il test anche con Firefox ma su Chrome sembra funzionare meglio):
https://github.com/lllyasviel/Fooocus



Scorrete verso il basso finchè non visualizzate la sezione Colab.
Colab, abbreviazione di Google Colaboratory, è una piattaforma di Google che offre un ambiente di sviluppo basato sul cloud per la scrittura e l'esecuzione di codice Python. È particolarmente popolare tra gli sviluppatori e i ricercatori nel campo dell'apprendimento automatico, poiché fornisce accesso gratuito a risorse di calcolo potenti, come GPU e TPU, senza la necessità di configurare un ambiente di sviluppo locale.

La versione gratuita di Colab potrebbe dare qualche problema di affinamento per impostazione predefinita perché le risorse sono relativamente limitate (alcune funzionalità potrebbero causare la disconnessione o generare errore).

La conversione da testo a immagine di base funziona regolarmente. Nei vari test ho riscontrato alcuni errori, ma sono riuscito ad ottenere diversi risultati senza problemi come documentato di seguito.

Per eseguire il software basta cliccare sul pulsante Open in Colab:






Si aprirà la seguente interfaccia; per proseguire è necessario accedere con un account di Google. Basta cliccare sul pulsante Accedi in alto a destra inserendo poi le proprie credenziali:







Una volta loggati cliccate sull'icona del Play a sinistra del codice per eseguirlo; comparirà un alert: Avviso: questo blocco note non è stato scritto da Google. Cliccate su Esegui comunque per proseguire:





Attendete qualche minuto:





Verrà generato un URL pubblico temporaneo con dominio gradio.live; cliccateci su. Si aprirà in una nuova finestra:





Questa è l'interfaccia principale del software. Nel campo disponibile potete inserire il prompt per generare la vostra immagine. E' possibile scrivere anche in Italiano, anche se ho notato che scrivendo in Inglese i risultati sono più accurati. Dopo aver inserito il vostro testo cliccate sul pultante Generate:



Verranno generate 2 immagini come risultato dello stesso prompt (il parametro si può modificare). Selezionate quella che più vi piace e scaricatela. Nel primo test ho semplicemente scritto forest elf girl:



L'immagine generata è molto realistica:



Di default l'immagine avrà una dimensione di 1152x896 pixels e sarà in formato png (tra poco vi spiego come modificare la dimensione).


Ecco un altro test per la generazione di un personaggio famoso da zero.

ariana grande riding an elephant in the forest with typical thai clothes (Ariana Grande che cavalca un elefante nella foresta con abbigliamento Thailandese tipico)



I risultati potrebbero essere non molto precisi e alcune parti del corpo come mani o piedi nudi potrebbero essere un pò artefatte. Ma considerando che questa foto non esiste ed è stata generata in circa 30 secondi è comunque notevole e abbastanza realistica!



FUNZIONI AVANZATE

Se mettete una spunta su Advanced si aprirà una sezione a destra da cui potete impostare le proporzioni (Aspect Ratios) che volete tra quelle disponibili ma anche la velocità (Speed) e la qualità (Quality) di generazione:



Nella parte inferiore potete scegliere il numero di immagini generate (Image Number) e il Negative Prompt (qui potete scrivere cosa volete venga ignorato nella fase di generazione):



Funzione Inpaint

Una funzionalità interessante consente di aggiungere oggetti non presenti nell'immagine di partenza. Per prima cosa ho generato l'immagine di un elfo:



Mettete una spunta su Input Image e cliccate sulla scheda Inpaint or Outpaint. Importate o trascinate direttamente l'immagine creata in precedenza. Dalla tendina Method selezionate l'opzione Modify Content (add objects, change background, etc.)

Con il pennello disegnate la porzione di immagine in cui volete aggiungere un oggetto. Nel campo del prompt scrivete cosa volete aggiungere (nell'esempio un diadema di cristallo: crystal tiara) e cliccate su Generate:



La generazione dell'immagine sarà un pò più lunga di prima:



Ho fatto un test anche importando la foto esistente di un personaggio famoso (Angelina Jolie). Dalla foto di partenza ho fatto aggiungere gli occhiali da sole. Questo è il risultato finale (notate la trasparenza, i riflessi e le ombre):



Con la stessa funzionalità potete anche sostituire un oggetto con un altro. In questa foto ho sostituito una barca (ombre e ormeggi inclusi) con un gabbiano:



In questo caso ho utilizzato il metodo predefinito Inpaint or Outpaint (default):





Le opzioni disponibili per il metodo Inpaint sono le seguenti:



La prima è quella predefinita (Inpaint or Outpaint (default).

La seconda è relativa al miglioramento dei dettagli: viso, mani, occhi, ecc...

La terza è relativa alla modifica del contenuto: aggiunta di oggetti, modifica dello sfondo ecc...


Funzione outpaint

Questa funzione consente di "disegnare" parti di una foto o di un'immagine per "estenderne" e ricostruire il contenuto. Questa è la foto di esempio di partenza:




Cliccate su Input Image, caricate la foto e mettete una spunta associata alla "direzione" che volete ricostruire (Left, Right, Top, Bottom)

In questo caso ho selezionato tutte le direzioni, lasciato l'impostazione di default relativa al metodo utilizzato e cliccato sul pulsante Generate (senza scrivere un prompt):




Questi sono i risultati:





Generazione immagine da campione (FACESWAP: cambiare faccia)

Mettete una spunta su Input Image e cliccate sulla scheda Image Prompt,


Mettete una spunta su Advanced in basso, impostare il valore Stop at a "0.9" (testate varie combinazioni per un risultato più accurato) e cliccate su Faceswap:



Importate l'immagine. Potete caricare una foto da prendere come riferimento per la generazione o trascinare direttamente l'immagine creata in precedenza nel campo Drop Image Here - or - Click to Upload. Ho utilizzato la foto dell'elfo generato in precedenza come "base".



Scrivete il prompt. In questo caso ho scritto:
a girl singing (una ragazza che canta)

Cliccare sul pulsante Generate:



Dopo vari test ho selezionato questa immagine (il microfono non è molto realistico ma la ragazza decisamente sì, e soprattutto attinente al modello di partenza):



Anche in questo caso ho testato la funzione Face Swap importando una foto esistente di Angelina Jolie:



Nel test ho semplicemente cambiato l'espressione della foto di partenza scrivendo (laughing: ridendo) (fate vari test con i valori Stop at e Weight. In questo caso li ho impostati a 0.97 e 0.9):



COMBINARE 2 IMMAGINI PER CAMBIARE LA POSA DI UN SOGGETTO

L'opzione PyraCanny consente di utilizzare una seconda immagine come riferimento per impostare una posa (mantenendo il volto della prima foto con la funzione FaceSwap):



Il risultato è discreto per quanto riguarda la posa (ma c'è ancora da lavorare sulle mani):



LA FUNZIONE UPSCALE

Se avete un'immagine con scarsa risoluzione, potete modificarla molto semplicemente:

Ho effettuato il test su questa foto sgranata con dimensione 320x241:



Cliccate su Input Image, sulla prima scheda Upscale or Variation e come metodo ho utilizzato Upscale (2x). Poi è bastato cliccare sul pulsante Generate senza scrivere nessun prompt:



Il risultato è questo (ho dovuto ridimensionare la foto che aveva una dimensione di 1152x8232 perchè troppo grande per l'articolo!):



Attenti a non esagerare con le immagini generate; superato un certo limite si esauriranno le unità di calcolo gratuite mensili di Colab e potrebbe comparire il seguente messaggio di errore:



In questo caso potrebbe essere necessario acquistare uno dei seguenti pacchetti:



Resta il fatto che loggandosi con un altro account su Collab si può continuare a sperimentare!

Se l'articolo vi è piaciuto condividetelo con i vostri amici! Alla prossima!

Seguimi sui social per non perdere i prossimi aggiornamenti:





Sostieni il mio sito con una donazione libera su Paypal cliccando sul seguente pulsante:
 
 


 




Hai una richiesta per un tutorial?
Scrivimi in privato e l'idea più originale verrà pubblicata sul sito!

Letto 873 volte Ultima modifica il Mercoledì, 24 Aprile 2024 15:48

Sostieni il sito

Computermania.org è un sito amatoriale creato da un appassionato di informatica che ha dedicato centinaia di ore di lavoro (soprattutto notturne!), per offrire a tutti articoli e trucchi di qualità e per risolvere i problemi tecnologici quotidiani. Puoi dimostrare il tuo apprezzamento per il lavoro fatto effettuando una piccola donazione su PayPal cliccando sul seguente pulstante GRAZIE! Roberto