Transformasi Fourier Penerapan Perintah Suara Berbahasa Indonesia untuk Mengoperasikan Perintah Dasar di Windows

pengenalan pembicaraan, aplikasi akan menerima event pada saat suara yang diterima telah dikenali oleh engine. Arsitektur SAPI sendiri dapat kita lihat pada blog diagram seperti yang terlihat pada gambar 2.1 Supriyono, B., 2004. Gambar 2.1 Blok Diagram Arsitektur SAPI Dalam API terdapat fungsi-fungsi perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya Sianturi, A.H., 2014. b. Device Driver Interface DDI DDI menyediakan fungsi untuk menerima data suara dari SAPI dan mengembalikan pengenalan frasa pada level SAPI paling dasar. Terdapat dua antar muka yang digunakan oleh DDI yaitu ISpSREngine, yang diimplementasikan oleh engine dan ISpSREngineSite yang diimplementasikan oleh SAPI Nurcahyono, D., Kristalina, P. Huda, M., 2011.

2.5 Transformasi Fourier

Transformasi Fourier merupakan suatu persamaan integral untuk menghitung frekuensi, amplitudo dan fase dari suatu gelombang sinyal Stefanus, Hamz, M. Universitas Sumatera Utara Angzas, Y., 2005. Sementara untuk menghitung spektrum frekuensi sinyal pada komputer digital, kita membutuhkan algoritma Discrete Fourier Transform DFT. 2.5.1 Discrete Fourier Transform DFT DFT adalah suatu persamaan integral alat yang digunakan untuk menganalisa suatu frekuensi diskrit Stefanus, Hamz, M. Angzas, Y., 2005. DFT mengubah sinyal domain waktu, menjadi sinyal domain frekuensi. DFT dapat diterjemahkan dalam rumus : Fk∆f ≡ ∑ for k = 0, 1, 2, ….., N – 1 1 N = jumlah sampel yang diambil T = total waktu sampling ∆t = pertambahan waktu antar sampel = frekuensi sampel = 2.5.2 Fast Fourier Transform FFT Fast Fourier Transform merupakan DFT dengan algoritma yang lebih optimal, sehingga menghasilkan perhitungan yang lebih cepat. Dengan DFT, memerlukan waktu On2 untuk mengolah sampel data sebanyak n buah. Hal ini tentunya akan memakan waktu lama bila sampel data makin banyak Stefanus, Hamz, M. Angzas, Y., 2005. Metode FFT dapat dilakukan dalam domain waktu dan frekuensi, yang disebut sebagai desimasi – dalam – waktu decimation-in-time dan desimasi-dalam-frekuensi decimation-in-frequency Gunawan, D., Juwono, F.H., 2012. Pada prinsipnya algoritma ini adalah memecah N-titik menjadi dua N2 – titik, kemudian memecah tiap N2 – titik menjadi dua N4 – titik, begitu seterusnya sampai hanya terdapat 1 titik. Prinsip tersebut dapat kita lihat lebih jelas pada gambar 2.2 berikut Gunawan, D., Juwono, F.H., 2012. Universitas Sumatera Utara Gambar 2.2 Desimasi untuk 16 titik Sedangkan untuk konsep FFT sendiri secara keseluruhan dapat kita lihat pada gambar 2.3 berikut Gunawan, D., Juwono, F.H., 2012. Gambar 2.3 Konsep FFT Dikarenakan FFT masih bagian dari perhitungan DFT, maka akan lebih baik menghitung FFT dengan mempertimbangkan nilai N DFT terlebih dahulu Yang, T., 2012. Universitas Sumatera Utara Xk = ∑ k = 0, 1, 2…N-1 2 Pisahkan xn menjadi dua bagian : xganjil dan x genap = x2m, dimana m=0, 1,2,…,N2-1. Lalu nilai N DFT juga dibagi dua bagian untuk tiap nilai N2 : Xk = ∑ = ∑ + ∑ = ∑ + ∑ 3 Dimana m = 0, 1, 2,…., N2-1 Karena : = cos + j sin 4 = cos[ ] + j. sin[ = -cos – j.sin = -[cos + j.sin ] = - 5 Maka : = - 6 Jadi ketika faktor diubah dengan setengah periode, nilai dari faktor tersebut tidak akan berubah, tetapi tanda nilai faktor tersebut akan menjadi sebaliknya. Hal ini merupakan sifat simetri dari faktor. Karena factor bisa juga ditulis sebagai = , maka : = - 7 Dan 2 = - = 8 Maka nilai N DFT akhirnya menjadi : Universitas Sumatera Utara Xk = ∑ ∑ 9 k = 0,1….N2 Xk + N2 = - 10 k = 0, 1, 2…..N2 Jadi nilai N DFT dipisah menjadi dua nilai N2 DFT. Dari persamaan 9, k memiliki N2 N2 = N2 2 . memiliki N2 + N2 2 . Maka jumlah total dari perhitungan untuk Xk adalah 2N2 2 + N2=N 2 2+N2. Untuk nilai awal N DFT, dimulai dari N 2 . Maka pada langkah pertama, pisahkan xn menjadi dua bagian yang membuat perhitungan dari N 2 menjadi N 2 2+N2. Jumlah angka perkalian dikurangi setengah secara berkala. Berikut adalah proses pengurangan perkalian dari nilai N menjadi N2. Lanjutkan pemisahan m dan m menjadi bagian ganjil dan genap dengan cara yang sama, perhitungan untuk N2 akan dikurangi menjadi N4. Kemudian perhitungan DFT akan berkurang secara terus – menerus. Jadi jika sinyal untuk nilai N DFT terpisah terus – menerus sampai sinyal akhir menjadi satu titik. Misalkan ada N=2 v DFT yang perlu dihitung. Maka jumlah pemisahan yang dapat dilakukan adalah v = N. maka jumlah total perkalian akan dikurangi hingga N2 N. untuk tambahan perhitungan, angka yang akan dikurangi mencapai N N. Karena perkalian dan penambahan dikurangi, maka kecepatan perhitungan komputasi DFT dapat ditingkatkan. Tujuan utama untuk Radix -2 FFT adalah memisahkan deretan data menjadi ganjil dan genap secara terus – menerus sampai mendekati setengah perhitungan.

2.6 Penelitian Terdahulu