Intro
Da qualche tempo è possibile usare schemi JSON per definire in maniera puntuale lo stile con cui si desidera che ChatGPT4o crei una determinata immagine. Ad esempio, prompt simili a questo:
Genera l’immagine di un orso che gioca a dadi con un gufo, applicando lo stile definito nel seguente schema JSON:
{
"style": "Ukiyo-e Japanese woodblock",
"material": "feathered down",
"surface_texture": "mirrored facets like a disco ball",
"lighting_type": "snowy environment blue tint lig",
"color_scheme": {
"primary": "runic ink black",
"secondary": "runic ink black",
"highlights": "nebula mist edge",
"rim_light": "cracked light aura"
},
"background": "animated rune circle etching",
"post_processing": "cinematic_letterbox"
}
producono immagini simili a quella che apre il post, il che è molto utile per la creazione di schemi personali, attraverso i quali, variando il contenuto di pochi campi, si possono ricavare variazioni numerosissime.
L'idea di partenza
Qualche giorno fa, Visual Reorientation Illusions (VRIs)1 ha diffuso via X un’immagine che contiene 400 diversi valori di stile che possono essere tra loro combinati per generare schemi simili al precedente.
In un altro dialogo su X, ha scritto:
Another trick is to include the photo of the chart with your prompt, choose your style, and ask ChatGPT4o to add in 3 random features from the rest of the columns on the chart! Easy and fun! You never know what you’ll get!
Io l'ho preso in parola e ho provato a creare un tool che faccia esattamente questo, con ogni valore possibile e sia indipendente nel suo funzionamento, da ChatGPT stesso. Il tool gira su Google Fogli e per provarlo vi basteranno un clic sul link qui sotto e un po’ d’accortezza.
APRI IL CHATGPT4o JSON STYLES RANDOMATOR
Creazione, istruzioni e raccomandazioni
Per creare il “macinapixel” ho trasformato l'immagine di Visual Reorientation Illusions (VRIs) in un foglio elettronico. Sul suo primo foglio del nuovo file ci sono tutti i valori dell'immagine. Il secondo foglio genera invece lo schema JSON semplificato, popolando tutti i campi necessari con valori casuali. Ogni volta che il file viene ricaricato, si genera un nuovo schema, totalmente casuale.
Copiando il valore della cella A21 del secondo foglio, si ottiene un testo unico simile a questo che può essere impiegato in qualsiasi prompt vogliate. In particolare, in questo caso, imporrebbe a ChatGPT l’applicazione degli stili ad una immagine fornita dall’utente, ma la prima riga è facilmente modificabile.
"Retexture the image attached based on the JSON aesthetic below
{
""style"": ""retrofuturistic sci-fi"",
""material"": ""candy-like translucent sugar"",
""surface_texture"": ""plastic-like with light scratches"",
""lighting_type"": ""lantern-style warm lighting"",
""color_scheme"": {
""primary"": ""obsidian blue fade"",
""secondary"": ""oxidized copper green"",
""highlights"": ""synthwave glint"",
""rim_light"": ""laser pink halo""
},
""background"": ""matte gradient"",
""post_processing"": ""bloom""
}"
Attenzione: l’output finale ha bisogno di alcune correzioni a mano.
I valori dei vari campi potrebbero non essere corretti, specie per mancanza di finali (ad esempio, invece di green, da qualche parte potrebbe essere scritto gree). Questo è dovuto al sistema OCR con cui ho trasformato l'immagine originale in tabella che non era dei migliori.
Se anche i campi non avessero refusi, otterrete comunque un output con troppe virgolette. Copiate e incollate il contenuto della cella A21 in un editor come SublimeText2, e trasformate ogni doppia occorrenza della virgolette in singola (trova = "" + sostituisci = ") e tutto dovrebbe essere a posto.
Lo metterò a posto in qualche versione futura. O magari anche no…