Zadaci iz multimedija Vježba 2
Zadaci iz multimedija Vježba 2
Zadaci iz multimedija Vježba 2
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Zadaci</strong> <strong>iz</strong> <strong>multimedija</strong><br />
Vježba 2<br />
1. Skicirati Fourier-ovu transformaciju i vremensko-frekvencijsku<br />
reprezentaciju za signal:<br />
1 2<br />
a) y e<br />
j ω t j ω<br />
= + e<br />
t ; t∈<br />
(0,2 )<br />
y = y + y ,<br />
b)<br />
1 2<br />
jω1t<br />
y1 = e ; t∈(0,1)<br />
jω2t<br />
y2 = e ; t∈(1,2)<br />
a) frek<br />
w 2<br />
w 1<br />
w 1 w 2 frek 0 2 time<br />
b)<br />
frek<br />
w 1<br />
w 2<br />
w 1 w 2 frek 0 1 2 time<br />
2. Pokazati kako promjena širine prozora utiče na rezoluciju kod spektograma.<br />
>> T=0.25;<br />
w=32; f=1024;<br />
for n=0:256<br />
if n
end<br />
end<br />
[s,F,T]=specgram(y,w,f,w,w-1); % w je širina prozora!!!<br />
figure,imagesc(T,F,20*log10(abs(s)))<br />
0<br />
0<br />
0<br />
1<br />
1<br />
1<br />
2<br />
2<br />
2<br />
3<br />
3<br />
3<br />
4<br />
4<br />
4<br />
5<br />
5<br />
5<br />
6<br />
6<br />
6<br />
7<br />
7<br />
7<br />
0 5 10 15 20 25<br />
0 5 10 15 20<br />
0 2 4 6 8 10 12 14 16<br />
w=32 w=64 w=128<br />
3. Napisati skup naredbi za dobijanje spektograma nekog govornog signala u<br />
Matlabu.<br />
>> [y,x]=wavread(’speech_dft.wav’);<br />
>> y=y(10000:30000);<br />
>> spec=specgram(y,1024,x,1024,1000);<br />
>> [m,n]=s<strong>iz</strong>e(spec);<br />
>> spec=spec(m:-1:1,:);<br />
>> imagesc(20*log10(abs(spec)))<br />
4. Učitati u Matlab-u signal speech_dft.wav. Odrediti broj odbiraka učitanog<br />
signala, frekvenciju odairanja i maksimalnu frekvenciju signala.<br />
Rješenje:<br />
>> [y,x]=wavread(' speech_dft.wav'); naredba za učitavanje govornog signala<br />
>> length(y) određivanje dužine signala<br />
ans =<br />
110033<br />
>> x frekvencija odabiranja<br />
x =<br />
22050<br />
Maksimalna frekvencija:<br />
f max =f od /2=x/2=22050Hz/2=11025Hz
5. Učitati u Matlab-u signal speech_dft.wav. Odrediti koliko sekundi traje<br />
učitani signal i nakon toga formirati novi signal trajanja 2s.<br />
Rješenje:<br />
>> [y,x]=wavread(' speech_dft.wav'); naredba za učitavanje govornog signala<br />
>> length(y) određivanje dužine signala<br />
ans =<br />
110033<br />
>> x frekvencija odabiranja<br />
x =<br />
22050<br />
Frekvencija odabiranja učitanog signala je 22050Hz, odnosno 1s signala sadrži 22050<br />
odbiraka. Dužina učitanog signala je 115589 odbiraka, pa se trajanje signala određuje<br />
kao:<br />
duzina signala 110033odbiraka<br />
= = 5s<br />
broj odbiraka u jednoj sekundi 22050 odbiraka / s<br />
U jednoj sekundi signala ima 22050 odbiraka. Dakle, da bi kreirali signal koji traje 2s<br />
potrebno je uzeti<br />
2 s * 22050 odbiraka / s = 44100odbiraka<br />
>> y1=y(1:44100);<br />
>> soundsc(y1,x)<br />
6. Real<strong>iz</strong>ovati u Matlab-u pojačavanje i smalnjivanje tona govornog signala.<br />
Rješenje:<br />
>> [y,x]=wavread(' speech_dft.wav');<br />
>> x frekvencija odabiranja<br />
x =<br />
22050<br />
>>slim=[min(y)*k max(y)*k]; za k>1 smanjuje se ton signala, dok se za k>soundsc(y,x,slim)
7. Reailozovai u Matlab-u efekat usporavanja i ubrzavanja govornog signala.<br />
Rješenje:<br />
>> [y,x]=wavread(' speech_dft.wav');<br />
>> x frekvencija odabiranja<br />
x =<br />
22050<br />
Da bi se signal ubrazao 2 puta potrebno je <strong>iz</strong>vršiti odabiranje sa dva puta većom<br />
frekvencijom odabiranja<br />
>>soundsc(y,2*22050)<br />
Da bi se signal usporio 2 puta potrebno je <strong>iz</strong>vršiti odabiranje sa dva puta manjom<br />
frekvencijom odabiranja<br />
>>soundsc(y,22050/2)<br />
8. Real<strong>iz</strong>ovati u matlabu efekat eha govornog signala.<br />
Rješenje:<br />
>> [y,x]=wavread(speech_dft.wav');<br />
>> x frekvencija odabiranja<br />
x =<br />
22050<br />
>>> y1=[zeros(1,2205) y'];<br />
>> y2=[y' zeros(1,2205)];<br />
>> eho=y1+y2;<br />
>> soundsc(eho,x)<br />
9. Za signal dužine 40000 odbiraka frekvencija odabiranja je 10kHz. Koliko će<br />
odbiraka imati signal nakon filtriranja sa niskopropusnim filtrrom granične<br />
frekvencije f c = 1kHz.
Rješenje<br />
fod<br />
= 10kHz ⇒<br />
fod<br />
fmax<br />
= = 5kHz<br />
2<br />
f max : 20000 = f c : x =><br />
20000* fc<br />
20000*1kHz<br />
x = 4000<br />
f<br />
= 5kHz<br />
=<br />
max<br />
S obzirom da filtar propusta u opsegu od - f c do + f c ukupan broj odbiraka koje će imati<br />
signal na <strong>iz</strong>lazu <strong>iz</strong> filtra je 8000 odbiraka.<br />
20000 odb 20000 odb<br />
-fmax<br />
-fc1<br />
fc1<br />
fmax