Friday, October 14, 2016

Digital Signal Recognition with Fast Forier Transform - FFT

Sebelum memasuki pengolahan sinyal tingkat lanjut, ada baiknya anda mengerti kegunaan FFT.
Ketika 2 buahnya sinyal dengan frekuensi yang berbeda yaitu 3 dan 5 yang mempunyai time periode yang sama digabung menjadi satu

Visualisasi Sinyal Sederhana

 Menjadi berikut
 

Ubah domain Waktu ke Frekuensi 

Akan menjadi cukup sulit untuk mengetahui bahwa gelombang diatas terdiri dari 2 frekuensi yang berbeda, untuk itu kita harus mengubah domain waktu ke domain frekuensi. Seperti contoh berikut

 

Cari Peak nya

Terlihat bahwa terdapat 2 peak dengan nilai 3 dan 5. Akan tetapi dalam dunia nyata, tidak sebersih plot sinyal diatas, dikarenakan adanya noise, dalam hal ini, kita akan menggunakan Additve White Gaussian Noise. Seperti sinyal berikut

Noise sendiri merupakan hal yang umum terjadi ketika kita bekerja menggunakan peralatan elektronika http://www.softscients.web.id/2016/07/apa-itu-additve-white-gaussian-noise_4.html
Kita akan coba plot kan lagi menggunakan FFT untuk mengetahui sebuah sinyal diatas.

Dalam domain frekuensi akan menjadi sangat jelas mendapatkan profile sebuah sinyal!
(anda bisa membaca peak detection in plot di keyword google)

Implementasi

Penulis menggunakan FFT untuk mengurai sebuah data rekaman dari piano, Sinyal berikut merupakan data rekaman WAV format untuk nada D,E,G,D,E,G


Ketika pianis memencet tuts untuk chord diatas, kemudian direkam dalam bentuk WAV Format.
SEPARASI SINYAL
Anda bisa melihat pada plot diatas terdiri dari 6 sinyal yang berurutan, yang masing-masing chord terdiri dari 3 nada, (1 chord terdiri dari 3 nada), yang artinya bahwa tiap chord terdiri dari 3 sinyal yang berbeda. Dalam teknik seperasi sinyal diatas, penulis menggunakan teknik sebagai berikut
1.    Blocking dengan ukuran M = 1000 dan N = 500
2.    Window Hamming
3.    Powering, dan
4.    Threholding
(ada baiknya anda membaca pengolahan sinyal di www.softscients.web.id)

 Setelah didapatkan powering, maka kita akan melakukan croping tiap block.

Penulis menggunakn mark merah sebagai penanda awal sinyal dan hijau sebagai akhir sebuah sinyal.


Penulis sengaja coloring untuk memperjelas antara sinyal dan garis biru merupakan noise (atau kondisi dimana tuts piano tidak ditekan - idle).

Digital Signal Recognition with Fast Forier Transform

Berikut hasil penerapan FFT pada sinyal ke satu

 Dan selanjutnya




 Ini membuktikan bahwa FFT sangat berguna untuk mengurai sebuah sinyal.

Catatan:
  1. Penulis menggunakan banyak sekali library untuk kegiatan riset diatas yaitu Python, numpy, wavio, matplotlib, pyside
  2. Informasi lebih lanjut ke www.softscients.web.id
  3. IDE – Integrated Develop Environment yang penulis sarankan yaitu Spyder

No comments:

Post a Comment