L'attività Generatore di immagini MediaPipe consente di generare immagini in base a un prompt di testo. Questo utilizza un modello da testo a immagine per generare immagini utilizzando tecniche di diffusione.
L'attività accetta un prompt di testo come input, insieme a un'immagine della condizione facoltativa che il modello può aumentare e utilizzare come riferimento per la generazione. Per ulteriori informazioni su la generazione condizionata da testo a immagine, consulta Plug-in di diffusione sul dispositivo per da testo a immagine condizionato di classificazione.
Generatore di immagini possono anche generare immagini in base a concetti specifici forniti al modello durante o riaddestramento. Per ulteriori informazioni, consulta la sezione Personalizzare con LoRA.
Inizia
Inizia a utilizzare questa attività seguendo una di queste guide all'implementazione per il tuo piattaforma di destinazione. Queste guide specifiche per piattaforma ti illustreranno una procedura di base di questa attività, con esempi di codice che usano un modello predefinito opzioni di configurazione consigliate:
- Android - Esempio di codice - Guida
- Personalizza con LoRA - Codice esempio - Colab
Dettagli attività
Questa sezione descrive le funzionalità, gli input, gli output e la configurazione opzioni di questa attività.
Funzionalità
Puoi utilizzare il generatore di immagini per implementare quanto segue:
- Generazione da testo a immagine: genera immagini con un prompt di testo.
- Generazione di immagini con immagini delle condizioni: genera immagini con un testo un prompt e un'immagine di riferimento. Generatore di immagini utilizza le immagini delle condizioni in modi in modo simile a ControlNet.
- Generazione di immagini con le ponderazioni LoRA: genera immagini di persone specifiche, oggetti e stili con un prompt di testo utilizzando pesi del modello personalizzati.
Input per le attività | Output delle attività |
---|---|
Il generatore di immagini accetta i seguenti input:
|
Il generatore di immagini restituisce i seguenti risultati:
|
Opzioni di configurazione
Questa attività include le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori |
---|---|---|
imageGeneratorModelDirectory |
La directory del modello del generatore di immagini in cui sono archiviati i pesi del modello. | PATH |
loraWeightsFilePath |
Imposta il percorso del file dei pesi LoRA. Facoltativo e applicabile solo se il modello è stato personalizzato con LoRA. | PATH |
errorListener |
Imposta un listener di errori facoltativo. | N/A |
L'attività supporta anche modelli di plug-in, che consentono agli utenti di includere immagini delle condizioni nell'input dell'attività, che il modello di base può aumentare e utilizzare come riferimento per la generazione. Queste immagini possono essere punti di riferimento di volti, contorni dei bordi e stime di profondità, che il modello utilizza come contesto aggiuntivo e generare immagini.
Quando aggiungi un modello plug-in al modello di base, configura anche il plug-in
le opzioni di CPU e memoria disponibili. Il plug-in dei punti di riferimento Face utilizza faceConditionOptions
, il bordo di Canny
Il plug-in utilizza edgeConditionOptions
, mentre il plug-in Depth usa
depthConditionOptions
.
Opzioni per i bordi Canny
Configura le seguenti opzioni in edgeConditionOptions
.
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
threshold1 |
Prima soglia per la procedura di isteresi. | Float |
100 |
threshold2 |
Seconda soglia per la procedura di isteresi. | Float |
200 |
apertureSize |
Dimensioni dell'apertura per l'operatore Sobel. L'intervallo tipico è compreso tra 3 e 7. | Integer |
3 |
l2Gradient |
Sia che venga utilizzata la norma L2 per calcolare la grandezza del gradiente dell'immagine, anziché la norma L1 predefinita. | BOOLEAN |
False |
EdgePluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Per ulteriori informazioni su come funzionano queste opzioni di configurazione, consulta Rilevatore di bordi Canny.
Opzioni punto di riferimento volto
Configura le seguenti opzioni in faceConditionOptions
.
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
minFaceDetectionConfidence |
Il punteggio di confidenza minimo per il rilevamento dei volti viene considerata riuscita. | Float [0.0,1.0] |
0.5 |
minFacePresenceConfidence |
Il punteggio di confidenza minimo della presenza di volti di riconoscimento facciale nel rilevamento dei punti di riferimento. | Float [0.0,1.0] |
0.5 |
faceModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello che crea l'immagine della condizione. |
BaseOptions oggetto |
N/A |
FacePluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Per ulteriori informazioni su come funzionano queste opzioni di configurazione, consulta Attività Punti di riferimento volti.
Opzioni di profondità
Configura le seguenti opzioni in depthConditionOptions
.
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
depthModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello che crea l'immagine della condizione. |
BaseOptions oggetto |
N/A |
depthPluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Modelli
Il generatore di immagini richiede un modello di base, ovvero un modello di IA da testo a immagine che utilizza le tecniche di diffusione per generare nuove immagini. I modelli di base elencati in questa sezione sono modelli leggeri ottimizzati per essere eseguiti smartphone.
I modelli di plug-in sono facoltativi e integrano i modelli di base, consentendo agli utenti di fornire un'immagine condizione aggiuntiva insieme a un prompt di testo, una generazione di immagini più specifica. Personalizzazione dei modelli di base mediante LoRA ponderazioni è un'opzione che insegna al modello di base su un concetto specifico, come un oggetto, una persona o uno stile e inserirli nelle immagini generate.
Modelli di base
I modelli di base sono modelli di diffusione latente da testo a immagine che generano
immagini da un prompt di testo. Il generatore di immagini richiede che il modello di base
corrispondono al formato del modello runwayml/stable-diffusion-v1-5 EMA-only
, in base al
modello:
I seguenti modelli di base sono compatibili anche con il generatore di immagini:
Dopo aver scaricato un modello di base, utilizza image_generator_converter per convertire il modello nel formato on-device appropriato per Generatore di immagini.
Installa le dipendenze necessarie:
$ pip install torch typing_extensions numpy Pillow requests pytorch_lightning absl-py
Esegui l'
convert.py
script:
$ python3 convert.py --ckpt_path <ckpt_path> --output_path <output_path>
Modelli di plug-in
I modelli di plug-in in questa sezione sono sviluppati da Google e devono essere utilizzati in combinazione con un modello di base. I modelli di plug-in abilitano il generatore di immagini accettare un'immagine condizione insieme a un prompt di testo come input, che ti consente per controllare la struttura delle immagini generate. I modelli di plug-in offrono simili a ControlNet, con un un'architettura inedita, appositamente per di diffusione sul dispositivo.
I modelli di plug-in devono essere specificati nelle opzioni di base e potrebbero richiedere di scaricare file di modello aggiuntivi. Ogni plug-in ha requisiti unici per che può essere generata dal generatore di immagini.
Plug-in Canny Edge
Il plug-in Canny Edge accetta un'immagine condizione che delinea i bordi previsti dell'immagine generata. Il modello di base utilizza i bordi impliciti dell'immagine della condizione e genera una nuova immagine basata sul prompt di testo. La Image Builder offre funzionalità integrate per creare immagini condizione e richiede solo il download del modello plug-in.
Scarica il plug-in Canny Edge .
Il plug-in Canny Edge contiene le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
threshold1 |
Prima soglia per la procedura di isteresi. | Float |
100 |
threshold2 |
Seconda soglia per la procedura di isteresi. | Float |
200 |
apertureSize |
Dimensioni dell'apertura per l'operatore Sobel. L'intervallo tipico è compreso tra 3 e 7. | Integer |
3 |
l2Gradient |
Sia che venga utilizzata la norma L2 per calcolare la grandezza del gradiente dell'immagine, anziché la norma L1 predefinita. | BOOLEAN |
False |
EdgePluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Per ulteriori informazioni su come funzionano queste opzioni di configurazione, consulta Rilevatore di bordi Canny.
Plug-in Face Punto
Il plug-in Face Memorystore accetta l'output dal file Face di MediaPipe Punto di riferimento come immagine della condizione. Il viso Punto di riferimento fornisce una rete dettagliata di un singolo volto, che mappa la la presenza e la posizione dei tratti facciali. Il modello di base utilizza il modello mappatura implicita implicita nell'immagine della condizione e genera un nuovo volto sulla mesh.
Scarica il plug-in dei punti di riferimento dei volti .
Il plug-in dei punti di riferimento Volti richiede anche il modello Face Taper bundle per creare l'immagine della condizione. Questo il bundle di modelli è lo stesso utilizzato Attività Face Taper.
Scarica il bundle dei modelli dei punti di riferimento dei volti .
Il plug-in Punti di riferimento sui volti contiene le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
minFaceDetectionConfidence |
Il punteggio di confidenza minimo per il rilevamento dei volti viene considerata riuscita. | Float [0.0,1.0] |
0.5 |
minFacePresenceConfidence |
Il punteggio di confidenza minimo della presenza di volti di riconoscimento facciale nel rilevamento dei punti di riferimento. | Float [0.0,1.0] |
0.5 |
faceModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello che crea l'immagine della condizione. |
BaseOptions oggetto |
N/A |
FacePluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Per ulteriori informazioni su come funzionano queste opzioni di configurazione, consulta Attività Punti di riferimento volti.
Plug-in di profondità
Il plug-in Depth accetta un'immagine condizione che specifica la profondità monoculare di un oggetto. Il modello di base utilizza l'immagine della condizione per dedurre le dimensioni profondità dell'oggetto da generare e genera una nuova immagine basata sul testo richiesta.
Plug-in Profondità di download .
Il plug-in Profondità richiede anche un modello di stima della profondità per creare la condizione dell'immagine.
Modello di stima della profondità di download .
Il plug-in Depth contiene le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
depthModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello che crea l'immagine della condizione. |
BaseOptions oggetto |
N/A |
depthPluginModelBaseOptions |
L'oggetto BaseOptions che imposta il percorso
per il modello di plug-in. |
BaseOptions oggetto |
N/A |
Personalizzazione con LoRA
Personalizzare un modello con LoRA consente di attivare Generatore di immagini per generare immagini in base a concetti specifici, identificati da token univoci durante l'addestramento. Con i nuovi pesi LoRA dopo durante l'addestramento, il modello è in grado di generare immagini del nuovo concetto specificato nel prompt di testo.
La creazione di pesi LoRA richiede l'addestramento di un modello di base sulle immagini di un oggetto, persona o stile specifico, che consente al modello di riconoscere il nuovo concetto e applicarlo durante la generazione delle immagini. Se stai creando pesi LoRa per generare immagini di persone e volti specifici, utilizza questa soluzione solo volti o volti di persone che ti hanno concesso l'autorizzazione.
Di seguito è riportato l'output di un modello personalizzato addestrato sulle immagini di teiere di il set di dati DreamBooth, utilizzando il token "monadikos teapot":
Prompt: una tè monadikos accanto a uno specchio
Il modello personalizzato ha ricevuto il token nel prompt e ha inserito una teapot. ha imparato a rappresentare dai pesi LoRA e posiziona l'immagine accanto a un come richiesto nel prompt.
Per ulteriori informazioni, consulta la personalizzazione , che utilizza Model Garden su Vertex AI per personalizzare un modello applicando pesi LoRA a un modello di base.