Cilj ove vježbe je da se upoznate sa dvodimenzionalnom Furijeovom transformacijom i dvodimenzionalnom konvolucijom kao osnovnim alatima u analizi linearnih sistema korišćenjem Matlab funkcija za njihovo izračunavanje.
Sliku možemo posmatrati kao funkciju od dvije promjenljive a(x,y) gdje je a amplituda (svjetlina) slike u tački sa koordinatama (x,y). Prema tome, i dvodimenzionalna Furijeova transformacija ove funkcije je takođe (kompleksna) funkcija od dvije promjenljive A(u,v).
Uopšte, funkciju od dvije promjenljive možemo vizualizovati na dva načina: kao površ u trodimenzionalnom prostoru i kao sliku. Štaviše, pošto je Furijeova transformacija kompleksna funkcija, nju je moguće posmatrati kao dvije realne funkcije, jednu koja predstavlja magnitudu i drugu koja predstavlja fazu Furijeove transformacije.
Konvolucija predstavlja osnovnu operaciju za određivanje odziva linearnih sistema invarijantnih na translaciju (LSI). Osnovna ideja je da se prozor konačnih dimenzija i poznatog oblika pomjera preko slike. Vrijednost izlaznog piksela jednaka je težinskoj sumi ulaznih piksela, pri čemu su težine definisane za pojedinačne piksele prozora. Prozor sa pridruženim težinama naziva se konvolucioni kernel. Konvolucija je lokalna operacija. Kao i kod jednodimenzionalnih signala konvoluciju dva signala moguće je izračunati korišćenjem Furijeove transformacije.
x = zeros(256);
x(125:132, 125:132) = 1;
Proučiti funkciju mesh
za prikazivanje površi u trodimenzionalnom prostoru. Prikazati pravougaoni kernel pomoću funkcije mesh
. Na novoj slici prikazati isti taj kernel kao sliku, pomoću funkcije imshow
.fft2
. Da biste pomjerili ishodište Furijeovog domena u središte grafika iskoristite funkciju fftshift
. Nacrtati magnitude elemenata dobijene matrice u trodimenzionalnom prostoru korišćenjem funkcije mesh
. Postoji li sličnost između spektra dvodimenzionalnog i jednodimenziomalnog pravougaonog signala? Na osnovu dobijenog amplitudskog spektra zaključite šta će se desiti ukoliko se ovaj konvolucioni kernel iskoristi za filtriranje? Na novoj slici prikazati iste magnitude pomoću funkcije imshow
. Obratite pažnju na problem koji se javlja zbog toga što vrijednosti magnituda u opštem slučaju ne moraju biti u opsegu u kojem Matlab očekuje da budu vrijednosti svjetlina pojedinih piksela. Da bi se vrijednosti magnitude svele na opseg [0,1] koji predstavlja prihvatljive intenzitete za piksele slike možete iskoristiti funkciju imagesc
koja skalira vrijednosti elemenata matrice i prikazuje rezultat kao sliku. Da biste vidjeli vrijednosti koje odgovaraju različitim intenzitetima piksela iskoristite funkciju colorbar
.conv2
izračunava konvoluciju dva dvodimenzionalna signala. Proučite sintaksu funkcije conv2
. Kolike su dimenzije rezultujuće matrice i od čega zavise? Obrazložiti odgovor! Formirati novi signal koji predstavlja konvoluciju dva pravougaona konvoluciona kernela iz prethodne tačke. Rezultujuća matrica treba da bude veličine 256x256. Nacrtajte dobijeni signal u trodimenzionalnom prostoru i kao sliku. Obratite pažnju na vrijednosti elemenata. Koji signal je u pitanju?fspecial
pomoću koje se mogu generisati različiti dvodimenzionalni filtri. Pomoću ove funkcije generišite Gausov konvolucioni kernel. Amplitudsku karakteristiku dvodimenzionalnog filtra moguće je direktno dobiti korišćenjem funkcije freqz2
. Nacrtajte amplitudsku karakteristiku Gausovog filtra. Kakav je filtar u pitanju?lena.bmp
u Matlab radni prostor i prikažite sliku. Odredite Furijeovu transformaciju ove slike. Na jednoj slici prikažite logaritam magnitude, a na drugoj fazu dobijene Furijeove transformacije.exp(j*angle(f))
, gdje je f
polazna Furijeova transformacija, a j
imaginarna jedinica). Matrice dobijene inverznom Furijeovom transformacijom prikažite pomoću imagesc
. Za obje slike iskoristite truesize
da biste podesili njihove dimenzije.fspecial
iz Image Processing Toolboxa. Prema tome, za restauraciju ove slike nije moguće koristiti konvolucioni kernel dobijen pomoću fspecial
.Napomena: U izvještaj uključite svoja zapažanja ostvarena tokom ove vježbe. Nemojte uključivati slike ili grafike ukoliko se to eksplicitno od vas ne zahtijeva. Obavezno odgovorite na sva postavljena pitanja.