Gambar 3.8. Alur program normalisasi 1 Proses normalisasi pada nilai nilai amplitude dibentuk dengan rumus berikut:
3.3
dengan keterangan sebagai berikut :
X_norm = hasil dat a sinyal normalisasi 1,2,3,…,N
X_in = data input 1,2,3,…,N
N = merupakan banyaknya data sinyal.
3.4.3 Pemotongan Sinyal
Alur program pemotongan sinyal dapat dilihat pada gambar 3.9, pemotongan sinyal adalah proses pemotongan sinyal awal yang tidak digunakan, yang terdapat di sisi kiri atau
bagian awal sebelum sinyal nada pianika. Tujuan dari proses pemotongan ini adalah untuk menghilangkan sinyal efek noise atau suara lain yang ikut terekam pada saat proses perekaman
agar didapatkan sinyal yang benar-benar suara nada alat musik pianika.
Gambar 3.9 Diagram Alir Pemotongan Sinyal.
3.4.4 Frame Blocking
Alur program frame blocking dapat dilihat pada gambar 3.10. Setelah proses pemotongan sinyal sisi kiri, maka proses selanjutnya yaitu frame blocking. Nilai frame telah ditentukan dalam
program yaitu sebesar 512, nilai ini didapatkan berdasarkan penelitian-penelitian sebelumnya yang telah dilakukan. Proses ini akan mengambil data sepanjang nilai frame yang telah
ditentukan. Data yang telah diambil dapat mewakili data terekam, tujuannya agar dapat
memudahkan dalam perhitungan dan analisa sinyal. Data yang diambil tersebut merupakan keluaran untuk proses frame blocking.
Gambar 3.10. Alur program Frame blocking.
3.4.5 Normalisasi akhir 2
Data masukan yang telah melalui proses sebelumnya dibagi dengan nilai maksimal dari frame blocking,
sehingga didapatkan keluaran untuk proses normalisasi. Data dari 12 nada
referensi dan data dari nada terekam digambarkan dalam bentuk sinyal. Hasil konversi ternormalisasi kemudian dibandingkan dengan 12 nada referensi dengan menggunakan fungsi
korelasi.
Gambar 3.11. Diagram Alir Normalisasi Akhir.
Proses ini digunakan agar besarnya nilai amplitude dari data sinyal nada yang sudah di Frame blocking
terbentuk pada skala yang sama. Tujuannya agar pengaruh dari kuat atau lemahnya suara nada dapat diminimalkan. Hasil dari normalisasi dirancang agar batasan nilai
amplitude puncak dari data nada tersebut bernilai 1 atau -1 dan nilai amplitude yang lainnya menyesuaikan dengan skala tersebut. Proses normalisasi pada nilai-nilai amplitude menggunakan
persamaan 3.3.
3.4.6 Windowing Hamming
Pada proses ini masukan hasil dari normalisasi dikalikan dengan windowing hamming sehingga didapatkan hasil dari proses windowing. Fungsi dari proses windowing ini untuk
mengurangi efek diskontinuitas saat sinyal ditransformasikan ke domain DFT.
Gambar 3.12. Diagram Blok Windowing hamming
Tahap setelah normalisasi yaitu tahap Windowing. Untuk pengelanan nada saksofon alto ini menggunakan Windowing Hamming sebagai proses selanjutnya. Fungsi dari pada proses
windowing ini untuk mengurangi efek diskontinuitas saat sinyal ditransformasikan ke domain
frekuensi. Untuk mendapatkan hasil yang maksimal pada proses DFT, maka sample suara yang
telah dibagi menjadi beberapa frame perlu di jadikan suara continue dengan cara mengkalikan tiap frame Windowing tertentu.. Berikut ini merupakan persamaan dari Windowing Hamming :
3.4
Dimana : wn = windowing N = jumlah data dari sinyal
n = waktu diskrit ke-
Sinyal hasil windowing didapat dari perkalian elemen dari data windowing Hamming dan data sinyal hasil normalisasi.
Mulai Masukan hasil normalisasi
Perkalian elemen Keluaran hasil windowing
Selesai
3.4.7 DFT
Nilai dari DFT yang diperoleh kemudian dicari nilai absolutnya. Pada proses ini diperoleh keluaran hasil ekstraksi ciri berupa matriks . Diagram alir dari proses DFT diperlihatkan pada
gambar 3.13. Hasil dari proses ini kemudian ditampilkan dalam bentuk grafik .
3.4.8 Segment averaging
Segment Averaging merupakan metode untuk mengurangi jumlah data sinyal dengan data
masukan disegmentasi dengan lebar segment,yang kemudiandicari rata-ratanya pada tiap segment.Keluaran dari proses segment averaging adalah rata-rata dari setiap segment. Diagram
alir Segment Averaging dapat dilihat pada gambar 3.15.
Gambar 3.13. Diagram Alir DFT dan Segment Averaging
3.4.9 Korelasi
Pada proses ini korelasi berfungsi untuk mengetahui besarnya perubahan antara dua variable. Fungsi ini membagi dua variable yang satu dengan lainnya saling berhubungan. Dalam hal ini
menjadi variable yang akan dibandingkan adalah data referensi atau data terekam.
Gambar 3.14 Diagram alir proses korelasi
Gambar 3.15 Diagram blok Penentuan Nada Hasil Pengenalan.
3.5. Perancangan Subsistem Program
Terdapat dua subsistem penting dalam sistem pengenalan nada pianika, yaitu subsistem sampling
dan subsistem pengenalan nada. Perancangan subsistem tersebut memerlukan variabel terikat, sehingga pengenalan dapat berhasil dan dengan waktu proses yang optimal. Pengujian
awal untuk mencari variabel tersebut sangat diperlukan karena dalam program tersebut memiliki fungsi
–fungsi menunjang subsistem dari sistem program pengenalan nada.
3.6. Subsistem Sampling
Dalam subsistem ini terdapat dua variabel terikat berupa frekuensi sampling dan durasi perekaman. Setelah melakukan pengujian awal, dapat disimpulkan:
a. Frekuensi sampling yang digunakan adalah 4800 Hz. lihat lampiran b. Durasi perekaman yang digunakan adalah 2 detik. lihat lampiran
3.7. Subsistem Pengenalan Nada
Subsistem ini terdiri dari tiga proses menggunakan variabel terikat yaitu proses frame blocking, windowing
dan DFT. Pengujian berikutnya adalah mencari nilai-nilai yang optimal untuk proses pengenalan nada khususnya dalam subsistem pengenalan nada ini, karena subsistem
ini adalah inti dari sistem pengenalan pianika. Pencarian nilai-nilai yang optimal berpengaruh pada unjuk kerja dalam subsistem ini.
a. Variasi DFT yang digunakan untuk mengkonversi data hasil windowing adalah 16, 32,
64, 128. Dalam subsistem pengenalan nada, data hasil DFT yang digunakan adalah data riil atau amplitudonya.
b. Frame blocking
mengambil sampel data dari data suara terekam data yang diperoleh dalam proses sampling. Nilai variasi frame blocking sama dengan nilai variasi dari DFT.
c. Variasi Segment averaging digunakan untuk mengkonversi data hasil DFT.
28
BAB IV HASIL DAN PEMBAHASAN
Program yang telah dibuat perlu dilakukan sebuah pengujian. Pengujian berguna untuk mengetahui kinerja program tersebut dalam melakukan pengenalan nada. Pada pengujian akan
diperoleh hasil pengujian berupa data-data. Data-data hasil pengujian menunjukan program yang telah dirancang dapat berjalan dengan baik atau tidak. Pada bab ini akan dilakukan analisa dan
pembahasan pada data hasil pengujian yang telah diperoleh.
4.1.
Program Pengujian pengenalan Nada Pianika
Perancangan program menggunakan software Matlab 7.6.0 R2008a. Pada pengujian program menggunakan laptop dengan spesifikasi:
Prosesor : Intel®Core™ i3 CPU 2.53 GHz
RAM : 4 GB
Tipe sistem : Sistem operasi 32 bit
Dalam perancangan ini, dibuat GUI agar user dengan lebih mudah menggunakan aplikasi dalam penelitian ini. Proses pengenalan suara pianika dapat dilakukan dengan menjalankan
perintah-perintah yang terdapat dalam GUI, seperti berikut : 1. Sebelum membuka tampilan program, perlu memastikan terlebih dahulu pada Current
Directory sudah sesuai dengan tempat penyimpanan program yang telah dirancang.
2. Mengetikan perintah gui pada Command window untuk memunculkan tampilan program pengenalan suara instrument musik. Setelah itu akan muncul tampilan program
pengenalan suara instrument musik seperti pada Gambar 4.1.
Gambar 4.1 Tampilan Program Pengenalan nada pianika
3. User memilih nilai variasi frame blocking, Segment averaging dan data base yang akan
digunakan terlebih dahulu sebelum melakukan pengenalan nada. Nilai variasi frame blocking
yang disediakan adalah 16, 32, 64 dan 128. Nilai variasi Segment averaging yang disediakan adalah 2, 4, 8, 16, 32 dan 64 .
4. Apabila langkah 3 sudah dilakukan, user dapat memulai pengenalan nada dengan
menekan tombol “REKAM”. Hasil pengenalan nada pianika terlihat seperti pada gambar 4.4.
Gambar 4.2 Tampilan Hasil Pengenalan 5.
User dapat mengulang kembali pengenalan nada dengan menekan tombol “RESET” dan mengulang kembali langkah 3 dan 4.
4.1.1 Pengenalan Nada
Untuk memulai pengenalan nada, Pengaturan yang perlu dilakukan adalah dengan memilih nilai nilai variasi frame blocking, Segment averaging dan nilai Data base yang terdapat
pada pop up menu. Setelah menentukan nilai variasi yang akan digunakan, user dapat memulai pengenalan nada dengan menekan tombol tekan ”REKAM”. Hasil pengenalan yang ditampilkan
adalah plot perekaman, plot DFT, dan nada yang berhasil dikenali. User dapat mengulang pengenalan nada dengan menekan tombol “RESET”.
a. PopUp Menu 1
Pada program ini, pop up menu digunakan untuk variasi nilai frame blocking yaitu 16, 32. 64 dan 128. Listing program untuk variasi nilai frame blocking adalah sebagai berikut :
Pada program di atas, Frame blocking diinisialisasi menggunakan nama framebl yang dibagi dalam 4 kondisi sesuai dengan banyaknya variasi. Inisialisasi Frame tersebut diproses
menggunakan perintah handles. Perintah ini digunakan untuk data atau nilai frame blocking yang telah diinisialisasi sebagai masukan apabila dilakukan callback. Pada pop up menu variasi
jumlah sampel per kelas listing program sebagai berikut:
indeks=gethandles.popupmenu1,Value ;
switch indeks case 1
framebl=16; case 2
framebl=32; case 3
framebl=64; case 4
framebl=128; end
handles.frame=framebl; guidatahObject,handles;