-
Una palette di colori da un’immagine
Nelle ultime settimane mi è capitato di fare diversi lavori di grafica – che non è propriamente il campo in cui sono più ferrato – e mi sono sempre trovato in crisi nella scelta della palette di colori più adatta a quello che stavo facendo. Mentre ero alla ricerca della giusta combinazioni di colori su […]
-
Modificare la dimensione della finestra in base all’immagine caricata
Negli esempi che abbiamo visto fino ad ora relativi all’uso delle immagini all’interno di Processing abbiamo sempre impostato a priori la grandezza della finestra del nostro sketch in base alla dimensione dell’immagine caricata. È un metodo molto semplice ma decisamente scomodo se dobbiamo utilizzare tante immagini diverse oppure se vogliamo rendere il nostro programma universale. Nella […]
-
Coding Rescue #1 – Invertire sotto-sopra una porzione di un’immagine
Inauguro oggi con questo post una rubrica chiamata Coding Rescue ovvero: come risolvere problemi di programmazione che mi vengono posti dai lettori del blog. Ogni tanto capita che qualcuno mi scriva privatamente perché è rimasto bloccato con un esercizio in Processing che non riesce a risolvere e mi viene chiesto di dare una mano a trovare […]
-
Quick, Draw! + Processing: lavorare con il dataset di Google con più di 50 milioni di disegni
A fine 2016 Google ha messo on-line Quick, Draw! uno dei suoi esperimenti di intelligenza artificiale e machine learning. Il sito chiede alle persone di disegnare delle forme: un maiale, un tubo per annaffiare il prato, una padella, ecc… e in meno di 20 secondi, attraverso una rete neurale, il computer prova a indovinare cosa è stato disegnato. Più di […]
-
Processare le immagini in Processing
In questo post vedremo come unire le nozioni che abbiamo appreso relativamente al caricamento e all’ utilizzo delle immagini in Processing e alle possibilità creative che abbiamo a disposizione lavorando sui singoli pixel per imparare a processore le immagini a nostro piacimento. Riprendiamo l’immagine del gatto che abbiamo già usato in precedenza e carichiamola all’interno di un nuovo […]
-
Array di pixel: loadPixels() e updatePixels()
Avevo parlato di pixel in uno dei primissimi post su Processing in questo blog. Grazie alle competenze che abbiamo acquisito nelle ultime settimane, possiamo fare un ulteriore passo in avanti. Le funzioni che abbiamo usato fino a oggi ci hanno permesso di disegnare linee e forme sullo schermo o, come visto di recente, di mostrare un’immagine. Queste funzioni […]
-
Modificare le immagini: tint(), filter()
Proseguiamo l’approfondimento su Processing e immagini. Nell’era di Instagram siamo abituati a cambiare l’aspetto delle nostre foto prima di condividerle con gli altri. Le funzioni tint() e filter() – già incluse all’interno del linguaggio – ci consentono di alterare le immagini a nostro piacimento. La funzione tint() Questa funzione consente di alterare il colore generale delle foto. L’effetto non è permanente tanto […]
-
Utilizzare immagini in Processing: PImage, loadimage() e image()
In tutti gli sketch che abbiamo creato fino a oggi abbiamo sempre utilizzato Processing per generare forme sullo schermo. Con questo post, invece, cominceremo ad ampliare i nostri orizzonti e inizieremo a utilizzare nei nostri programmi immagini esterne. A differenza dei programmi di editing più comuni – penso per esempio a Photoshop o Pixelmator – con Processing […]
-
Processing e Ableton: sincronizzare musica e visual via MIDI
Oggi sfrutteremo Processing per creare dei semplici visual sincronizzati con la musica attraverso il protocollo MIDI. Il software musicale che userò per fare gli esempi è Ableton Live 9 ma è possibile usare qualsiasi Digital Audio Workstation in grado di inviare messaggi MIDI. Lo schema delle connessioni, dunque, sarà: Ableton Live gestirà la musica e invierà, […]
-
Array bidimensionali: esercizio alta difficoltà (soluzione)
Ecco la soluzione all’esercizio di difficoltà media proposto nell’articolo Array bidimensionali. Esercizio Partendo dalla soluzione all’esercizio di difficoltà media, sareste in grado di modificarlo ulteriormente per fare in modo che la griglia non sia necessariamente 8×8?