Konvolusi pada Domain Frekuensi dengan Menggunakan Matlab


Konvolusi pada domain waktu sama dengan perkalian pada domain frekuensi yang kemudian dilakukan inverse transformasi Fourier.

z(t) = x(t) * y(t)  <=> Z(w) = X(w) Y(w)

Dalam operasi matlab untuk konvolusi menggunakan command conv

z=conv(x,y);

jika dilakukan pada domain frekuensi maka tentukan dulu panjang hasil konvolusi, misalkan d. Maka perlu memakai operasi fft(X,N) yaitu FFT pada sejumlah titik N, jika vektor X kurang dari sejumlah N titik maka akan ditambah zero, dan jika melebihi N, maka akan dipotong.

X = fft(x,d);

Y = fft(y,d);

Z=X.*Y;

z = ifft(Z);

Contoh:

>>x=[1 2 3]
x =
1 2 3

>>y=[4 5 6]
y =
4 5 6

>>z=conv(x,y)
z =
4 13 28 27 18

>>d=length(z)
d =
5

>>X=fft(x,5)
X =
Columns 1 through 3
6.0000 -0.8090 – 3.6655i 0.3090 + 1.6776i
Columns 4 through 5
0.3090 – 1.6776i -0.8090 + 3.6655i

>>Y=fft(y,5)
Y =
Columns 1 through 3
15.0000 0.6910 – 8.2820i 1.8090 + 2.7674i
Columns 4 through 5
1.8090 – 2.7674i 0.6910 + 8.2820i

>>Z=X.*Y
Z =
Columns 1 through 3
90.0000 -30.9164 + 4.1675i -4.0836 + 3.8900i
Columns 4 through 5
-4.0836 – 3.8900i -30.9164 – 4.1675i

>>zi=ifft(Z)
zi =
4.0000 13.0000 28.0000 27.0000 18.0000

Dapat ide dari
http://www.mathworks.com/matlabcentral/newsreader/view_thread/72
430

Pos ini dipublikasikan di Tidak terkategori. Tandai permalink.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s