Esercitazioni di elaborazione delle immagini AA 07-08

n.ConsegnaDescrizione
1 17/3/2008 Scrivere un programma che prenda un in input una immagine a colori e scriva in output 16 immagini in scala di grigio che contengano i canali degli spazi RGB, CYMK, HSV, HSL e YCbCr.
27/4/2008 Scrivere un programma che prenda in input una immagine in scala di grigio a 8 bit ed un vettore di 256 valori in floating point compresi tra 0.0 ed 1.0, ed offra due modalità di funzionamento: nella prima il vettore viene interpretato come una funzione di trasformazione dai 256 valori di grigio rappresentabili in 8 bit ad un valore nell'intervallo reale [0;1] e il programma dovra scrivere in output l'immagine che si ottiene applicando quella trasformazione. Nella seconda modalità di funzionamento il vettore dovrà essere interpreteto come una istribuzione di colore e il programma dovrà applicare una trasformazione di color matching che porti la distribuzione di colori dell'immagine ad essere il più vicino possibile alla distribuzione obiettivo.
314/4/2008 Scrivere un programma che prenda in input una immagine ed un valore di curvatura k, e scriva in output l'immagine dopo aver applicato la trasformazione di correzione delle deformazioni ottiche con curvatura k. Questa trasformazione prende in input il vettore p di distanza di un punto dal centro, e lo sposta in posizione p'=p/(1-k||p||), dove ||x|| è la norma Euclidea di x. Per la trasformazione si usi l'interpolazione bilineare.
45/5/2008 Scrivere un programma che prenda in input una immagine, ne calcoli la trasformata di Fourier e scriva in output una immagine I'(x+w/2,y+w/2)=log(|F(I)(x,y)|+1), dove I è l'immagine iniziale di larghezza w e altezza h, |a+ib|=sqrt(a2+b2) è il modulo di un numero complesso e la traslazione della immagine serve per centrare la frequenza (0,0) nel pixel centrale (w/2,h/2). Scalare il range dei colori in modo che sia compreso tra 0 e 255. Applicare inoltre ad I un filtro passa basso ideale di raggio r (parametro dato in input).
Nota: la maggior parte delle librerie per la FFT richiedono che le dimensioni della immagine siano potenze di 2. dato I estendete ogni dimensione fino alla più piccola potenza di 2 superiore copiando il valore dei pixel più vicini.
519/5/2008 Scrivere un programma che prenda in input una immagine (in scala di grigi)g ed un filtro h (espresso come immagine in scala di grigi). Si assuma g=f*h+n per una qualche immagine f da stimare e del rumore additivo n e si inverta il filtro fornendo in output una stima f* della immagine f. Si usi l'approccio a inversione limitata, per cui la trasformate di Fourier delle immagine stimata vale F*(u,v)=G(u,v)/H(u,v) se H(u,v)>T (dove T è un valore dato in input), F*(u,v)=0 altrimenti.
6esame Scrivere un programma che prenda in input una immagine (in scala di grigi), ne calcoli il modulo del gradiente usando un filtro "derivata della Gaussiana", e determini le k (parametro) linee più supportate usando la trasformate di Hough. Durante il calcolo della trasformata di Hough, ogni punto dovrà votare per le rrette che passano per il punto con un peso proporzionale alla risposta del filtro di edge detection (il modulo del gradiente). Il programma dovrà quindi dare in output l'immagine in input con le k linee sovraimposte.

Risultati Esercitazione 2

Bozzato5/5 +
Brusaferro5/5
Mastromatteo4.5/5
Pellegrini3/5
Vianello5/5

Risultati Esercitazione 3

Bozzato4.5/5
Brusaferro4.5/5
Mastromatteo5/5
Vianello4.5/5

Risultati Esercitazione 4

Bozzato5/5
Brusaferro5/5
Mastromatteo5/5
Vianello5/5

Risultati Esercitazione 5

Bozzato5/5
Brusaferro5/5
Mastromatteo4.5/5
Vianello5/5