Ecco il secondo video sulla manipolazione immagini con Jython.
In questo video tratteremo il mirror Verticale, flip orizzontale, la sovrapposizione di immagini e altre tecniche minori.
Vediamo come fare manipolazione immagini costruendo alcune funzioni in Jython
- mirrorVertical() con questa funzione otteniamo il cosiddetto effetto a specchio, dichiariamo la metà orizzontale dell’immagine e la lunghezza intera. Poi tramite un ciclo for e la funzione range prendiamo tutti i pixel lungo tutta l’altezza dell’immagine nel ciclo esterno e tutti i pixel fino alla meta della larghezza dell’immagine. Dopo di che dividiamo l’immagine in sinistra e destra e copiamo il colore del pixel più a sinistra al posto di quello più a destra.
- flipHorizontal() questa funzione serve a capovolgere un immagine da destra verso sinistra per esempio o viceversa. L’effetto si ottiene scambiando letteralmente il primo pixel a sinistra con l’ultimo a destra per esempio, prelevando i colori da uno e settarli nell’altro, tutto sempre tramite il ciclo for e la funzione range().
- horizontalLine() in questo caso si vuole disegnare una linea nera alla metà in altezza di una immagine esistente. Dichiariamo un colore, un’immagine e la metà dell’immagine. Con il ciclo prendiamo tutti i pixel per l’intera lunghezza dell’immagine e settiamo il colore che abbiamo scelto per quei pixel selezionati.
- grid() visto che non ci è bastato fare solo una linea, proviamo a disegnare una griglia intera su di un’immagine. Per farlo ci serviremo di tre funzioni che lavoreranno insieme. Dichiariamo intanto un colore, uno spacing che ci servirà per avere gli intervalli tra le linee della griglia. Ora creiamo le prime due funzioni: horizontalLine() e verticalLine() che sono l’equivalente della funzione precedente. A questo punto possiamo definire la funzione grid utilizzando due cicli uno per l’asse y richiamando la funzione horizontal ed uno per l’asse x richiamando la funzione vertical.
- square() ora vogliamo disegnare una forma geometrica su una immagine esistente. Definiamo un colore, definiamo poi la funzione square. Con il ciclo for e la funzione range() decidiamo in due cicli dove apparirà la nostra forma tramite i parametri che la funzione range() ci permette di inserire. Prendiamo il colore di ogni pixel e impostiamolo con il colore definito inizialmente.
Se volete vedere il video precedente con altre funzioni jython per la manipolazione immagini cliccate qui.
Se ti è piaciuto questo articolo o ti è stato utile in qualche modo, lascia un commento, condividilo con i tuoi amici e seguimi sui social.