11.01.2013 Views

1. uvod u digitalnu sliku - Laboratorija za digitalnu obradu signala

1. uvod u digitalnu sliku - Laboratorija za digitalnu obradu signala

1. uvod u digitalnu sliku - Laboratorija za digitalnu obradu signala

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

praktični dio<br />

� decimate<br />

Snižava frekvenciju odmjeravanja ulaznog ni<strong>za</strong> pri čemu je originalna frekvencija<br />

odmjeravanja predstavlja cjelobrojan umnožak nove frekvencije odmjeravanja.<br />

Sintaksa<br />

y = decimate(x,r)<br />

y = decimate(x,r,n)<br />

y = decimate(x,r,'fir')<br />

y = decimate(x,r,n,'fir')<br />

Opis funkcije<br />

Snižava frekvenciju odmjeravanja ulaznog ni<strong>za</strong> podataka i obavlja operaciju suprotnu<br />

interpolaciji. Proces počinje filtriranjem ulaznih podataka NF filtrom a <strong>za</strong>tim snižavanjem<br />

frekvencije odmjeravanja. Rezultat je signal sa manjim brojem odmjeraka.<br />

y = decimate(x,r) snižava frekvenciju odmjeravanja faktorom r. Izlazni niz y je r puta<br />

kraći od ulaznog ni<strong>za</strong> x. Početna postavka koristi Čebiševljev filtar prvog tipa i osmog reda,<br />

koji filtrira ulazni niz unaprijed i una<strong>za</strong>d da bi se uklonilo izobličenje faze što kao rezultat ima<br />

kao da smo koristili filtar dvostruko većeg reda.<br />

y = decimate(x,r,n) koristi Čebiševljev filtar n-tog reda. Ipak ne preporučuje se<br />

korištenje filtara sa redom višim od trinaest zbog nestabilnosti pri povećanom broju operacija<br />

pri računanju. U ovom slučaju će Matlab ispisati upozorenje.<br />

y = decimate(x,r,'fir') koristi FIR filtar sa 30 koeficijenata umjesto Čebiševljevog IIR<br />

filtra, i pri tome se filtriranje vrši samo u jednom pravcu. Ovakva tehnika omogućava uštedu<br />

memorije i praktična je pri radu sa dužim nizovima.<br />

y = decimate(x,r,n,'fir') koristi FIR filtar dužine n.<br />

� interp<br />

Povećava vrijednost frekvencije odmjeravanja (interpolira signal) tako da je nova<br />

frekvencija odmjeravanja umnožak cijelog broja i originalne frekvencije odmjeravanja.<br />

Sintaksa<br />

y = interp(x,r)<br />

y = interp(x,r,l,alpha)<br />

[y,b] = interp(x,r,l,alpha)<br />

Opis funkcije<br />

Interpolacija povećava originalnu frekvenciju odmjeravanja. Ova funkcija vrši<br />

ubacivanje nultih odmjeraka a <strong>za</strong>tim primjenjuje specijalan NF filtar.<br />

y = interp(x,r) povećava frekvenciju tako da je nova frekvencija odmjeravanja veća od<br />

originalne r puta, pri čemu je r cijeli broj. Interpolirani niz y je r puta duži od ulaznog ni<strong>za</strong> x.<br />

y = interp(x,r,l,alpha) specificira l (dužina filtra) i alpha (frekvencija odsijecanja<br />

filtra). Početna vrijednost <strong>za</strong> l je 4 a <strong>za</strong> alpha je 0.5.<br />

[y,b] = interp(x,r,l,alpha) u ovakvom slučaju kao rezultat dobijamo i vektor b koji<br />

predstavlja koeficijente filtra koji se koristi pri interpolaciji.<br />

� resample<br />

Vrši funkciju promjene frekvencije odmjeravanja naviše ili naniže, pri čemu je nova<br />

frekvencija umnožak nekog racionalnog faktora i originalne frekvencije.<br />

Sintaksa<br />

y = resample(x,p,q)<br />

y = resample(x,p,q,n)<br />

y = resample(x,p,q,n,beta)<br />

y = resample(x,p,q,b)<br />

[y,b] = resample(x,p,q)<br />

55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!