i
TUGAS AKHIR
PENGENALAN NADA BELIRA
MENGGUNAKAN ANALISIS AMPLITUDO PADA RANAH DISCRETE COSINE TRANSFORM
Diajukan untuk memenuhi salah satu syarat Memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Disusun oleh : ZEMMY SAPUTRA
NIM : 135114013
JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2017
ii
FINAL PROJECT
BELIRA TONE RECOGNITION USING AMPLITUDE ANALYSIS IN THE DISCRETE COSINE
TRANSFORM DOMAIN
In a partial fulfillment of the requirements for the degree of Sarjana Teknik
in Electrical Engineering
Created by:
ZEMMY SAPUTRA Student’s Number : 135114013
ELEKTRICAL ENGINEERING STUDY PROGRAM DEPARTEMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY
YOGYAKARTA
2017
iii
iv
v
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
Rencana Tuhan S’lalu Indah Pada Waktunya!
Skripsi ini kupersembahkan kepada....
Yesus kristus yang Menyertaiku slalu hingga Akhir,
Papa dan Mama tersayang,
Serta Keluarga dan sahabat-sahabat,
Teknik Elektro Universitas Sanata Dharma tercinta.
vii
viii
INTISARI
Alat musik adalah salah satu media untuk mengekspresikan diri. Alat musik memiliki berbagai suara atau nada yang berbeda. Namun indera pendengaran manusia tidak terlalu peka terhadap suara yang dihasilkan oleh alat musik, sehingga kebanyakan orang tidak bisa mengetahui nada yang dikeluarkan oleh alat musik. Penulis akan membuat sebuah sistem pengenalan nada alat musik, yaitu alat musik belira. Pada umunya semakin besar frekuensi dasar gelombang bunyi, semakin tinggi nada yang dihasilkan oleh sebuah alat musik belira.
Penulis menggunakan microphone dalam sistem pengenalan yang berfungsi untuk merekam nadanya dan komputer untuk pengolahannya. Sistem ini akan mencari nilai maksimum di urutan ke berapa pada DCT domain, kemudian penulis akan menganalisis nilai maksimum tersebut untuk mengetahui nada yang dimainkan. Nilai maksimum ini digunakan sebagai penentuan teks nadanya dengan hasil yang ditampilkan berupa plot hasil rekam, indeks nilai maksimum, dan teks nada yang dikenali.
Sistem pengenalan ini berjalan sesuai dengan perancangan, dan dapat menampilkan plot hasil rekam, indeks nilai maksimum dan teks hasil pengenalan nada. Dalam pengujian yang telah dilakukan, sistem dapat mengenali semua nada dengan benar saat frame blocking 128, 256, 512, dan 1024.
Kata kunci : Belira, DCT (Discrete Cosine Transform), Look Up Table, Pengenalan Nada
ix
ABSTRACT
Musical instruments are one of the media to express themselves. The instrument has different sounds or tones. The sense of human hearing is not very sensitive to the sound produced by musical instruments, so most people can not know the tone Produced by musical instruments. In this research will be made the recognition of the tone of a musical instrument, namely belira. In general, the greater the basic frequency of sound waves, the higher the tone generated by a belira musical instrument.
In this recognition system, use a microphone is used to record it’s tone and a computer is used for processing. This system a find the maximum index value in order to calculate on the DCT domain signal, then will be analyzed to be able to recognize the tone that is played. The value of this maximum is used to determine the text of the tone and the results is shown in the form of record plot, maximum index value and recognizable tone tone
This recognition system work according to the design, and can display the recording plot, maximum index value, and tone recognition text. In the tests that have been done, the system can recognize all the tones correctly when frame blocking 128, 256, 512, and 1024.
Keywords: Belira, DCT (Discrete Cosine Transform), Look Up Table, Tone Introduction
x
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yesus Kristus karena atas berkat dan pernyataan- Nya penulis dapat menyelesaikan laporan tugas akhir ini dengan baik.
Penelitian yang berupa tugas akhir ini merupakan salah satu syarat bagi mahasiswa Jurusan Teknik Elektro untuk memperoleh gelar Sarjana Teknik di Universitas Sanata Dharma Yogyakarta. Penelitian ini dapat diselesaikan dengan baik atas bantuan, gagasan dan dukungan dari berbagai pihak. Oleh karena itu, penulus ingin mengucapkan terimakasih kepada :
1. Tuhan Yesus Kristus atas berkat pernyataan-Nya sehingga tugas akhir ini selesai dengan baik.
2. Drs. Johannes Eka Priyatma, M.Sc., Ph.D. selaku Rektor Universitas Sanata Dharma yang telah memberikan kesempatan penulis untuk menimba ilmu dan berkembang.
3. Sudi Mungkasi, S.si, M.Math.Sc., Ph.D., selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.
4. Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma.
5. Dr. Linggo Sumarno, M.T., selaku dosen pembimbing laporan Tugas Akhir yang telah memberikan saran, waktu, dan masukan dalam proses pembuatan laporan Tugas Akhir ini dengan penuh pengertian dan kesabaran.
6. Dr. Ir. Iswanjono, M.T., selaku dosen pembimbing akademik yang telah memberikan semangat, saran, dan doa bagi kelancaran semua proses pengerjaan laporan Tugas Akhir Mahasiswa Teknik Elektro 2013.
7. Wiwien Widyastuti M.T. dan Dr. Damar Widjaja, S.T., M.T., selaku dosen penguji yang telah memberikan masukan, bimbingan, saran untuk merivisi laporan Tugas Akhir ini.
8. Segenap dosen Fakultas Sains dan Teknologi yang telah membagikan ilmu selama penulis menempuh Pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.
xi
xii
DAFTAR ISI
Halaman
Halaman Sampul (Bahasa Indonesia) ... i
Halaman Sampul (Bahasa Inggris) ... ii
Halaman Persetujuan ... iii
Halaman Pengesahan ... iv
Pernyataan Keaslian Karya ... v
Halaman Persembahan dan Motto Hidup ... vi
Lembar Pernyataan Persetujuan Publikasi ... vii
Intisari ... viii
Abstract ... ix
Kata Pengantar ... x
Daftar Isi ... xii
Daftar Gambar ... xv
Daftar Tabel ... xviii
BAB I PENDAHULUAN 1.1. Latar Belakarng ... 1
1.2. Tujuan dan Manfaat ... 2
1.3. Batasan Masalah ... 2
1.4. Metodologi Penelitian ... 3
BAB II DASAR TEORI 2.1. Belira ... 4
2.2. Microphone ... 5
2.3. Pengenalan Pola ... 5
a. Pengenalan Pola Secara Statistik ... 6
b. Pengenalan Pola Secara Sintatik ... 6
c. Template Matching ... 7
d. Neural Network ... 7
2.4. Sampling ... 7
2.5. Preprocessing ... 8
2.6. Normalisasi ... 8
2.7. Pemotongan Sinyal ... 10
xiii
2.8. Frame Blocking ... 11
2.9. Hamming Window ... 12
2.10. Discrete Cosine Transform (DCT) ... 14
BAB III PERANCANGAN 3.1. Sistem Pengenalan Nada Ala Musik Belira ... 17
a. Belira ... 17
b. Microphone ... 18
c. Proses Perekaman ... 18
d. Proses Pengenalan Nada ... 18
3.2. Look Up Table ... 19
3.3. Nada Uji ... 19
3.4. Perancangan Tampilan Program GUI Matlab ... 20
3.5. Perancangan Sistem Software ... 21
3.5.1. Rekam ... 22
3.5.2. Normalisasi ... 23
3.5.3. Pemotongan Sinyal ... 24
3.5.4. Frame Blocking ... 25
3.5.5. Hamming Window ... 26
3.5.6. Discrete Cosine Transform (DCT) ... 27
3.5.7. Pencarian Nilai Indeks Maksimum ... 28
3.5.8. Penentuan Teks Nada ... 29
3.5.9. Keluaran (Teks) ... 33
3.6. Analisa Perfoma ... 34
BAB IV PEMBAHASAN 4.1. Langkah-langkah untuk Menjalankan Program Pengenalan Nada... 35
4.2. Penjelasan Sintaks Program Pengenalan Nada ... 37
a. Popupmenu ... 37
b. Pushbutton,Axes, dan Static Text ... 38
4.3. Nilai Maksimum ... 47
4.4. Analisa Perfoma ... 51
xiv BAB V PENUTUP
5.1. Kesimpulan ... 56 5.2. Saran ... 56 DAFTAR PUSTAKA ... 57
LAMPIRAN
Lampiran 1 Percobaan Untuk Menentukan Range Indeks Pada Look Up Table Masing- Masing Nada Belira ... L-1 Lampiran 2 Listing Program Pengambilan Nada Uji ... L-24 Lampiran 3 Proses Menyeluruh Pengenalan Nada Alat Musik Belira Dalam Bentuk Flowchart ... L-25 Lampiran 4 Listing Program Pengenalan Nada Belira ... L-28
xv
DAFTAR GAMBAR
Halaman
Gambar 2.1.Belira... 4
Gambar 2.2. Microphone ... 5
Gambar 2.3. Contoh Sinyal Suara Belira melalui Proses Sampling ... 8
Gambar 2.4. Contoh Sinyal Suara Belira melalui Proses Nomalisasi ... 9
Gambar 2.5. Contoh Sinyal Suara Belira melalui Proses Pemotongan Silence ... 10
Gambar 2.6. Contoh Sinyal suara Belira melalui Proses Pemotongan Transisi ... 11
Gambar 2.7. Contoh Frame Blocking ... 11
Gambar 2.8. Contoh Pengambilan Sinyal untuk Frame Blocking ... 12
Gambar 2.9. Contoh Hasil Frame Blocking ... 12
Gambar 2.10. Contoh Sinyal Suara Belira melalui Proses Hamming window ... 14
Gambar 2.11. Contoh Sinyal Nada Pada DCT Domain ... 16
Gambar 3.1. Diagram Blok Sistem Pengenalan Nada ... 17
Gambar 3.2. Diagram Alur Proses Pengenalan Nada ... 18
Gambar 3.3. Diagram Blok Pencarian Nilai Indeks Maksimum ... 19
Gambar 3.4. Diagram Blok Proses Pengambilan Nada Uji ... 19
Gambar 3.5. Tampilan Utama Program Pengenalan Nada ... 20
Gambar 3.6. Diagram Alur Program Pengenalan Nada Belira... 21
Gambar 3.7. Diagram Alur Proses Perekaman ... 22
Gambar 3.8. Diagram Alur Proses Normalisasi ... 23
Gambar 3.9. Diagram Alur Proses Pemotongan sinyal ... 24
Gambar 3.10. Diagram Alur Proses Frame Blocking ... 25
Gambar 3.11. Diagram Alur Proses Hamming Window ... 26
Gambar 3.12. Diagram Alur Proses DCT... 27
Gambar 3.13. Diagram Alur Pencarian Nilai Indeks Maksimum ... 28
Gambar 3.14. Diagram Alur Penentuan Teks Nada ... 29
Gambar 3.15. Diagram Alur Proses Menampilkan Teks Keluaran ... 33
Gambar 4.1. Tampilan Utama Program Pengenalan Nada ... 36
Gambar 4.2. Tampilan Hasil Pengenalan Nada Belira ... 36
Gambar 4.3. Sintaks Program Memilih Frame Blocking ... 37
xvi
Gambar 4.4. Sintaks Program Proses Perekaman ... 38
Gambar 4.5. Sintaks Program Menampilkan Plot Sinyal DCT ... 39
Gambar 4.6. Sintaks Program Menampilkan Teks Nada ... 40
Gambar 4.7. Sintaks Program Pussbutton Clear ... 46
Gambar 4.8. Sintaks Program Pussbutton Selesai ... 47
Gambar 4.9. Grafik Pengaruh Perubahan Nilai Frame Blocking ... 52
Gambar 4.10. Contoh Sinyal Nada E terbaca nada E pada DCT Domain Frame Blocking 16 ... 53
Gambar 4.11. Contoh Sinyal Nada F Terbaca Nada E pada DCT Domain Frame Blocking 16 ... 53
Gambar 4.12. Contoh Sinyal Nada E Terbaca Nada E pada DCT Domain Frame Blocking 32 ... 53
Gambar 4.13. Contoh Sinyal Nada F Terbaca Nada E pada DCT Domain Frame Blocking 32 ... 53
Gambar 4.14. Contoh Sinyal Nada E Terbaca Nada E pada DCT Domain Frame Blocking 64 ... 54
Gambar 4.15. Contoh Sinyal Nada F Terbaca Nada E pada DCT Domain Frame Blocking 64 ... 54
Gambar 4.16. Contoh Sinyal Nada E Terbaca Nada E pada DCT Domain Frame Blocking 128 ... 55
Gambar 4.17. Contoh Sinyal Nada F Terbaca Nada F pada DCT Domain Frame Blocking 128 ... 55
Lampiran
Halaman Gambar L1.1. Sintak Program Mencari Nilai Range Untuk Setiap Look Up Table ... L-1 Gambar L1.2. Sinyal Nada C1 Pada DCT Domain Frame Blocking 16 ... L-2 Gambar L1.3. Sinyal Nada C2 Pada DCT Domain Frame Blocking 16 ... L-3 Gambar L1.4. Sinyal Nada C3 Pada DCT Domain Frame Blocking 16 ... L-3 Gambar L1.5. Sinyal Nada C1 Pada DCT Domain Frame Blocking 32 ... L-5 Gambar L1.6. Sinyal Nada C2 Pada DCT Domain Frame Blocking 32 ... L-6 Gambar L1.7. Sinyal Nada C3 Pada DCT Domain Frame Blocking 32 ... L-6 Gambar L1.8. Sinyal Nada C1 Pada DCT Domain Frame Blocking 64 ... L-8
xvii
Gambar L1.9. Sinyal Nada C2 Pada DCT Domain Frame Blocking 64 ... L-9 Gambar L1.10. Sinyal Nada C3 Pada DCT Domain Frame Blocking 64 ... L-9 Gambar L1.11. Sinyal Nada C1 Pada DCT Domain Frame Blocking 128 ... L-11 Gambar L1.12. Sinyal Nada C2 Pada DCT Domain Frame Blocking 128 ... L-12 Gambar L1.13. Sinyal Nada C3 Pada DCT Domain Frame Blocking 128 ... L-12 Gambar L1.14. Sinyal Nada C1 Pada DCT Domain Frame Blocking 256 ... L-14 Gambar L1.15. Sinyal Nada C2 Pada DCT Domain Frame Blocking 256 ... L-15 Gambar L1.16. Sinyal Nada C3 Pada DCT Domain Frame Blocking 256 ... L-15 Gambar L1.17. Sinyal Nada C1 Pada DCT Domain Frame Blocking 512 ... L-17 Gambar L1.18. Sinyal Nada C2 Pada DCT Domain Frame Blocking 512 ... L-18 Gambar L1.19. Sinyal Nada C3 Pada DCT Domain Frame Blocking 512 ... L-18 Gambar L1.20. Sinyal Nada C1 Pada DCT Domain Frame Blocking 1024 ... L-20 Gambar L1.21. Sinyal Nada C2 Pada DCT Domain Frame Blocking 1024 ... L-21 Gambar L1.22. Sinyal Nada C3 Pada DCT Domain Frame Blocking 1024 ... L-21 Gambar L2.1. Sintaks Program Pengambilan Nada Uji ... L-24 Gambar L3.1. Flowcart Pengenalan Nada ... L-25 Gambar L3.2. Contoh Sinyal Nada C Belira ... L-25 Gambar L3.3. Contoh Sinyal Normalisasi Nada C Belira ... L-25 Gambar L3.4. Contoh Pemotongan Sinyal Bagian Silence Nada C Belira ... L-26 Gambar L3.5. Contoh Pemotongan Sinyal Bagian Transisi Nada C Belira ... L-26 Gambar L3.6. Contoh Sinyal Nada C Belira saat Proses Frame Blocking ... L-26 Gambar L3.7. Contoh Hasil Sinyal Nada C Belira Setelah Proses Hamming Window ... L-27 Gambar L3.8. Contoh Sinyal Nada C Belira Pada DCT Domain ... L-27 Gambar L4.1. Sintaks Program Pengenalan Nada Pada GUI Matlab ... L-28
xviii
DAFTAR TABEL
Halaman
Tabel 2.1. Contoh Pengenalan Pola ... 6
Tabel 3.1. Keterangan Tampilan Utama GUI Matlab ... 20
Tabel 3.2. Look Up Table untuk Frame Blocking 16 ... 30
Tabel 3.3. Look Up Table untuk Frame Blocking 32 ... 31
Tabel 3.4. Look Up Table untuk Frame Blocking 64 ... 31
Tabel 3.5. Look Up Table untuk Frame Blocking 128 ... 31
Tabel 3.6. Look Up Table untuk Frame Blocking 256 ... 32
Tabel 3.7. Look Up Table untuk Frame Blocking 512 ... 32
Tabel 3.8. Look Up Table untuk Frame Blocking 16 ... 32
Tabel 4.1. Look Up Table untuk Frame Blocking 16 ... 47
Tabel 4.2. Look Up tabele untuk Frame Blocking 32 ... 48
Tabel 4.3. Look Up Table untuk Frame Blocking 64 ... 48
Tabel 4.4. Look Up Table untuk Frame Blocking 128... 49
Tabel 4.5. Look Up Table untuk Frame Blocking 256 ... 49
Tabel 4.6. Look Up Table untuk Frame Blocking 512 ... 50
Tabel 4.7. Look Up TableFrame Blocking 1024 ... 50
Tabel 4.8. Persentase Hasil Pengujian setiap Frame Blocking... 51
Tabel 4.9. Pengaruh Perubahan Nilai Frame Blocking ... 52
Lampiran
Halaman Tabel L1.1. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 16 ... L-4 Tabel L1.2. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 16 ... L-4 Tabel L1.3. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 32 ... L-7 Tabel L1.4. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 32 ... L-7
xix
Tabel L1.5. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 64 ... L-10 Tabel L1.6. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 64 ... L-10 Tabel L1.7. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 128 ... L-13 Tabel L1.8. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 128 ... L-13 Tabel L1.9. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 256 ... L-16 Tabel L1.10. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 256 ... L-16 Tabel L1.11. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 512 ... L-19 Tabel L1.12. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 512 ... L-19 Tabel L1.13. Proses Pengambilan Nilai Indeks Maksimum untuk Look Up Table dengan Frame Blocking 1024 ... L-22 Tabel L1.14. Proses Penentuan Range untuk Look Up Table dengan Frame Blocking 1024 ... L-22
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Musik merupakan adalah ungkapan untuk mengekspresikan diri atau kreatifitas menggunakan sebuah alat musik yang menghasilkan bunyi ataupun suara. Drum Band merupakan salah satu jenis musik dengan gabungan beberapa jenis alat musik. Alat musik yang dimainkan dalam drum band salah satunya adalah belira. Belira merupakan jenis alat musik yang dimainkan dengan cara dipukul dan terdiri dari potongan – potongan besi dengan ukuran yang berbeda [1]. Tinggi rendahnya nada belira ditentukan oleh frekuensi dasar gelombang bunyi. Semakin besar frekuensi dasar gelombang bunyi, maka semakin tinggi nada yang dihasilkan.
Telinga merupakan indera manusia yang berfungsi untuk menangkap dan mendengarkan bunyi atau suara yang ada disekitar termasuk suara musik. Dalam kehidupan nyata indera pendengaran manusia tidak terlalu peka terhadap bunyi atau suara, termasuk suara yang dihasilkan oleh alat musik dan tidak mengetahui pasti nada apa yang dimainkan ,terkecuali pemusik profesional.
Sebelumnya sudah ada penelitian yang telah dilakukan untuk pengenalan nada alat musik belira, yang pertama adalah pengenalan nada belira menggunakan “Analisis Amplitudo Pada Ranah Frekuensi” [2] dan yang kedua adalah pengenalan nada belira menggunakan “Ekstraksi Ciri DCT (Discrete Cosine Transform) dan Similaritas Kosinus”
[3]. Penelitian yang telah dilakukan sebelumnya sudah dapat mengenali nada belira dengan baik, namun masih ada kekurangan untuk proses pengenalannya. Penelitian pertama memiliki proses yang cukup lama untuk sistem pengenalan nadanya karena diperlukan pencarian nilai frekuensi (hertz) ke berapa dari sinyal suara untuk menentukan keluaran dari alat musik belira. Selanjutnya untuk penelitian yang kedua sistem pengenalan nadanya baru bisa mengenali nada belira pada koefisien 64 ,128, dan 256. Penelitian ini menggunakan koefisien 16, 32, 64, 128, dan 256.
Berdasarkan penelitian yang telah dilakukan sebelumnya, penulis ingin membuat sistem pengenalan nada dengan metode yang berbeda yaitu menggunakan metode analisis amplitudo pada ranah DCT (Discrete Cosine Transform). Penelitian ini menggunakan DCT untuk mengubah sinyal menjadi frekuensi dasarnya yang kemudian akan di analisis dengan mencari nilai-nilai maksimumnya. Penulis menggunakan lebih dari satu look up table untuk penentuan keluarannya, sehingga diharapkan sistem pengenalan dapat mengenali secara akurat nada dasar dari belira C, D , E , F , G , A , B , C> . Nada – nada yang dimainkan akan dibandingkan dengan nada-nada yang telah diambil sebelumnya untuk database dan tersimpan pada sistem tesebut. Pemrograman sistem ini menggunakan software Matlab dan GUI Matlab sebagai interface user.
1.2. Tujuan Dan Manfaat
Tujuan dari penulisan tugas akhir ini adalah menghasilkan sistem pengenalan nada alat musik belira menggunakan analisis amplitudo pada ranah DCT secara real time.
Manfaat dari penelitian ini adalah sebagai aplikasi atau alat bantu sehingga memudahkan untuk masyarakat yang baru belajar tentang alat musik terutama belira, dengan mengetahui nada dasar, yaitu : C, D , E , F , G , A , B , C> .
1.3. Batasan Masalah
Pada perancangan sistem pengenalan nada alat musik belira ini terdiri dari software dan hardware. Hardware berfungsi untuk nada masukan yang dimainkan pada alat musik belira, sedangkan software berfungsi untuk proses pengolahan data nada dari belira.
Penulis menetapkan beberapa batasan masalah dalam proses penulisan penelitian ini, yaitu:
a. Alat musik belira.
b. Nada Belira yang digunakan adalah C, D , E , F , G , A , B , C> . c. Cara memukul sama seperti memainkan alat musik belira.
d. Jarak Microphone 15 cm dari alat musik belira [2],[3].
e. Hasil pengenalan secara real time.
f. Menggunakan MATLAB untuk pembuatan program pengenalan nada.
g. Menggunakan metode DCT .
h. Menggunakan hamming window dalam proses windowing i. Menggunakan Look up Table untuk penentuan keluarannya.
1.4. Metodologi Penelitian
Sistem pengenalan alat musik belira ini menggunakan hardware dan software.
Metode yang digunakan dalam penulisan ini adalah :
a. Pengumpulan bahan – bahan referensi yang berupa buku – buku, jurnal, dan artikel.
b. Proses pengambilan nada uji alat musik belira yang digunakan sebagai look up table.
c. Pembuatan sistem.
i. Membuat rancangan program utama sistem pengenalan nada.
ii. Membuat look up table sebagai penentuan keluaran dari sistem pengenalan nada belira.
iii. Membuat rancangan tampilan utama pengenalan alat musik belira menggunakan GUI Matlab.
iv. Program di uji secara real time dan tidak real time menggunakan alat musik belira supaya dapat diketahui apakah program telah berjalan dengan baik atau tidak menggunakan look up table dan data uji.
d. Analisa dan penyimpulan hasil percobaan
Analisa data dilakukan dengan melihat perubahan panjang frame blocking 16, 32, 64, 128, 256, 512, dan 1024 untuk nada belira C, D , E , F , G , A , B , C>.
Penyimpulan hasil percobaan dilakukan dengan melihat hasil tingkat pengenalan dan data uji.
4
BAB II
DASAR TEORI
2.1. Belira
Belira adalah alat musik yang dimainkan dengan cara dipukul dan merupakan salah satu alat musik melodi yang digunakan dalam Drum Band [4]. Belira mempunyai 16 buah bilah papan yang terbuat dari logam. Setiap bilah mempunyai ukuran panjang yang berbeda, semakin pendek ukuran logam maka nada yang dihasilkan akan semakin tinggi, oleh karena itu logam dengan ukuran yang paling panjang akan menghasilkan nada paling rendah. Nada pada alat musik belira ada 16 nada, yaitu : G< , A< , B< , C, D , E , F , G , A , B , C> , D> , E> , F> , G> , A>. Cara memainkan belira menggunakan sebuah pemukul berukuran 30 cm dengan ujung pemukul terpasang sebuah karet atau plastik. Gambar 2.1 merupakan bentuk dari alat musik belira.
Gambar 2.1 Belira 49cm
19,5cm 9cm
2.2. Microphone
Microphone adalah suatu komponen elektronika yang bisa mengubah serta mengkonversi sebuah gelombang suara ke dalam bentuk sinyal. Fungsi Microphone adalah sebagai penangkap sinyal analog yang dihasilkan oleh alat musik belira untuk direkam, terhubung dengan line in yang ada pada soundcard dan terletak pada komputer.
Microphone pada perancangan ini digunakan sebagai alat bantu proses perekam suara untuk didapatkan nada belira. Kemudian diproses dalam komputer dengan sebuah program dan akan ditampilkan keluaran berupa teks, sesuai dengan nada yang dimainkan oleh user. Gambar 2.2 menunjukkan bentuk dari microphone yang digunakan dalam penelitian.
Gambar 2.2 Microphone
2.3. Pengenalan Pola
Pengenalan pola (pattern recognition) sesungguhnya telah lama ada dan telah mengalami perkembangan terus menerus dimulai dari pengenalan pola yang bersifat tradisonal kemudian menjadi pengenalan pola yang bersifat modern. Pada mulanya pengenalan pola berbasis pada kemampuan indera manusia, yang mampu mengingat suatu informasi pola secara menyeluruh hanya berdasarkan setengah atau sebagian informasi pola yang tersimpan di dalam ingatannya. Misalnya sebuah nada pendek yang dibunyikan dapat membuat manusia bisa mengingat sebuah lagu yang dimainkan secara keseluruhan.
Pola adalah entesitas yang terdifinisi dan dapat diidentifikasi melalui ciri –cirinya (features) [5]. Ciri-ciri tersebut digunakan untuk membedakan suatu pola dengan pola lainnya. Ciri yang bagus adalah ciri yang memiliki daya pembeda yang tinggi, sehingga pengelompokan pola berdasarkan ciri yang dimiliki dapat dilakukan dengan keakuratan yang tinggi.
Tabel 2.1 Contoh Pengenalan Pola [6].
Approach Representation Recognition
Function Typical Criterion Template Matching Sample, Pixels,
Curves
Correlation,
Distance measure Classification Error
Statistical Features Discriminant
Function Classification Error Stactic or
Structural Primiteves Rules, Grammar Acceptance Error Neural Network Sample, Pixels,
Features Network Function Mean Square Error
Pengenalan pola bertujuan menentukan kelompok atau kategori pola beradasarkan ciri-ciri yang dimiliki oleh pola tersebut. Dengan kata lain, pengenalan pola membedakan suatu objek dengan objek lainnya. Berikut adalah beberapa pengertian pengenalan pola : a. Pengenalan Pola secara Statistik
Pendekatan ini menggunkan teori-teori ilmu peluang dan statistik. Ciri-ciri yang dimiliki oleh suatu pola ditentukan distribusi statistiknya. Pola yang berbeda memilki distribusi yang berbeda pula. Dengan menggunakan teori keputusan di dalam statistik, kita menggunakan distribusi ciri untuk mengklasifikasi pola.
b. Pengenalan Pola secara Sintatik
Pendekatan ini menggunakan teori bahasa formal. Ciri-ciri yang terdapat pada suatu pola ditentukan primitif dan hubungan struktural antara primitif kemudian menyusun kata bahasanya. Dari aturan produksi pada tata bahasa tersebut kita dapat menentukan kelompok pola. Pengenalan pola secara sintatik lebih dekat ke strategi
pengenalan pola yang dilakukan manusia, namun secara pratek penerapannya relatif sulit dibandingkan pengenlan pola secara statistik.
c. Template Matching
Salah satu pendekatan yang paling sederhana dan paling awal untuk pengenalan pola adalah template matching atau pencocokan. template matching adalah operasi generik di pengenalan pola yang digunakan untuk menentukan kesamaan antara dua entitas (sample, curve, atau pixels) dari jenis yang sama. Pada template matching pola yang akan diakui dicocokkan dan disimpan sementara yang kemudian memperhitungkan semua cirinya dan perubahan skala [6].
d. Neural Network
Neural Network merupakan kategori ilmu soft computing dan mengadopsi dari kemampuan otak manusia yang mampu memberikan stimulasi atau rangsangan, melakukan proses, dan memberikan output. Output diperoleh dari variasi stimulasi dan proses yang terjadi di dalam otak manusia. Kemampuan manusia dalam memproses informasi merupakan hasil kompleksitas proses di dalam otak. Misalnya, yang terjadi pada anak-anak, mereka mampu belajar untuk melakukan pengenalan meskipun mereka tidak mengetahui algoritma apa yang digunakan [6].
2.4. Sampling
Sampling adalah proses pencuplikan gelombang suara yang akan menghasilkan gelombang diskret. Dalam proses Sampling ada yang disebut dengan laju pencuplikan (sampling rate). Sampling rate menandakan berapa banyak pencuplikan gelombang analog dalam selang waktu 1 detik. Sampling rate dinyatakan dalam satuan Hertz (Hz). Pada proses sampling, sebaiknya sampling rate memenuhi kriteria Nyquist. Kriteria Nyquist menyatakan bahwa sampling rate harus lebih besar dari dua kali frekuensi tertinggi sinyal analog [7]. Secara matematis dapat dituliskan :
fs ≥ 2fm (2.1)
dengan adalah frekuensi sampling dan adalah frekuensi tertinggi sinyal suara analog.
Yang dimana dapat dilihat bahwa frekuensi sampling harus lebih besar dua kali dari frekuensi tertinggi sinyal analog tersebut.
Contoh penentuan nilai frekuensi sampling :
Misalnya frekuensi tertinggi dari sinyal suara analog adalah 100 Hz, maka frekuensi sampling haruslah dua kalinya dari sinyal suara, yaitu 200 Hz. Apabila frekuensi sampling 200 Hz maka sinyal suara harus mempunyai frekuensi maksimum adalah 100 Hz.
Gambar 2.3 Contoh Sinyal Suara Belira yang Melalui Proses Sampling
Gambar 2.3 menunjukkan contoh sinyal suara dari nada belira yang dihasilkan dari proses perekaman yang nantinya akan ditampilkan pada tampilan GUI Matlab untuk mengetahui perbedaan sinyal suara dari setiap nada belira.
2.5. Preprocessing
Preprocessing adalah proses-proses awal yang dilakukan sebelum proses penentuan keluaran. Proses preprocessing memiliki beberapa tahapan yang harus dilewati, yaitu normalisasi, Pemotongan Sinyal, Frame Blocking, Windowing, DCT, Pencarian Nilai Maksimum, dan Penentuan Teks Nada.
2.6. Normalisasi
Normalisasi merupakan suatu cara untuk mengatasi jarak antara sumber suara dengan microphone. Pada proses perekaman atau pengambilan data suara diperlukan
0 5000 10000 15000
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Amplitudo
Data Tercuplik
sebuah normalisasi supaya amplitudo nada saat dimainkan dapat menjadi maksimal. Proses normalisasi awal ini dilakukan dengan cara membagi tiap nilai data masukan atau nada terekam dengan nilai absolute maksimal dari data masukan tersebut. Perhitungan nilai normalisasi dirumuskan dengan persamaan sebagai berikut :
Xnorm =
(2.2) dengan Xnorm adalah hasil data sinyal normalisasi, Xin adalah data masukan dari sampling Contoh perhitungan normalisasi sebagai berikut :
Misalnya Xin memiliki nilai sebanyak [0 0.6 0.7 0.8] dengan nilai maksimumnya adalah 0,8, maka cara untuk menghitungnya sebagai berikut:
1. Xnorm = 2. Xnorm = 3. Xnorm = 4. Xnorm =
Maka setelah nilai Xin [0 0.6 0.7 0.8] mengalami proses normalisasi menjadi Xnorm [0 0,75 0, 875 1].
Gambar 2.4 Contoh Sinyal Suara Belira dari Gambar 2.3 yang Melalui Proses Normalisasi
0 5000 10000 15000
-1 -0.5 0 0.5 1
Data Tercuplik
Amplitudo
2.7. Pemotongan Sinyal
Proses ini memiliki tujuan untuk memotong beberapa bagian sinyal suara. Proses pemotongan ini dilakukan setelah proses normalisasi. Dalam proses pemotongan, bagian yang dipotong adalah bagial awal dari sinyal. Tujuan pemotongan sinyal nada adalah untuk menghilangkan bagian yang tidak termasuk bagian dari sinyal dan mengurangi cacat sinyal akibat derau ruangan yang ikut terekam. Pada proses pemotongan sinyal ini melewati 2 (dua) kali tahap pemotongan sinyal. Tahap pemotongan sinyal yang pertama yaitu memotong pada bagian silence atau bagian awal sinyal yang tidak termasuk sinyal suara dari belira yang ikut terekam dengan tujuan untuk memperoleh sinyal suara yang sebenarnya. Tahap pemotongan sinyal yang kedua yaitu adalah memotong pada bagian transisi sinyal suara dengan menghilangkan ⁄ [2], [3] bagian dari sinyal. Gambar 2.6 dan Gambar 2.7 Memprlihatkan gambar sinyal setalah melalui proses pemotongan bagian Silence dan transisi.
Gambar 2.5 Contoh Sinyal Suara dari Gambar 2.4 Setelah Proses Pemotongan Silence
0 5000 10000 15000
-1 -0.5 0 0.5 1
Data Tercuplik
Amplitudo
Gambar 2.6 Contoh Sinyal Suara dari Gambar 2.5 Setelah Proses Pemotongan Transisi
2.8. Frame Blocking
Frame blocking adalah merupakan pembagian sinyal suara menjadi beberapa frame dan satu frame terdiri dari beberapa data sample. Dalam proses pengambilan sample tersebut bergantung dengan waktu tiap detik suara akan di sample dan berapa besar frekuensi sampling [8]. Fungsi frame blocking yaitu untuk memilih data yang akan diproses dalam sistem pengenalan sehingga dapat mempercepat proses perhitungan pada Fast Fourier Transform. Jumlah data pada setiap frame memiliki 2N data sampel.
Gambar. 2.7 Contoh Frame Blocking [8]
Gambar 2.7 merupakan contoh dari potong-potongan frame dengan M adalah panjang setiap frame dan N adalah overlapping setiap frame.
0 2000 4000 6000 8000 10000 12000
-0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4
Data Tercuplik
Amplitudo
Gambar. 2.8 Contoh Pengambilan sinyal dari Gambar 2.7 Untuk Frame Blocking Pada Gambar 2.8 menggunakan panjang frame blocking 512 yang digunakan sebagai contoh pemilihan data. Gambar 2.9 memperlihatkan hasil setelah pemilihan data untuk frame blocking.
Gambar 2.9 Contoh Hasil Frame Blocking dari Gambar 2.8
2.9. Hamming Window
Pengenalan nada pada alat musik belira ini menggunakan Hamming Window.
Windowing berfungsi untuk menghilangkan diskontinuitas. Dimana terjadinya sebuah diskontinuitas ini diakibatkan oleh proses frame blocking atau Framing [8]. Hamming Window mempunyai side lobe yang paling kecil dan main lobe yang paling besar, sehingga
0 100 200 300 400 500 600
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2
Data Tercuplik
Amplitudo
hasil dari pada windowing akan menjadi lebih halus dalam menghilangkan efek dari diskontinuitas. Persamaan Hamming Window adalah :
0≤n≤N-1 (2.3) Dengan N adalah Jumlah data dari sinyal dan n adalah waktu diskrit ke- [0, 1, 2, …,N-1]
Contoh perhitungan Hamming Window:
π = 3,14, n = 0,1, 2,…,N-1 dan N = 500.
a. w(n) = 0,54 – 0,46 cos (2πn/(N-1))
w(1) = 0,54 – 0,46 cos (2 x 3,14 x 0/(500-1)) w(1) = 0,54 – 0,46 cos 0
w(1) = 0,54 – 0,46 x 1 w(1) = 0,08002
b. w(n) = 0,54 – 0,46 cos (2πn/(N-1))
w(2) = 0,54 – 0,46 cos (2 x 3,14 x 1/(500-1)) w(2) = 0,54 – 0,46 cos 0,012
w(2) = 0,54 – 0,46 x 0,999 w(2) = 0,080146
c. w(n) = 0,54 – 0,46 cos (2πn/(N-1))
w(3) = 0,54 – 0,46 cos (2 x 3,14 x 2/(500-1)) w(3) = 0,54 – 0,46 cos 0,025
w(3) = 0,54 – 0,46 x 0,999 w(3) = 0,081
Gambar 2.10 Contoh Sinyal Suara dari Gambar 2.9 Setelah Proses Hamming Windowing
2.10. Discrete Cosine Transform (DCT)
Discrete Cosine Transform (DCT) digunakan untuk mengubah sebuah sinyal menjadi komponen frekuensi dasarnya. DCT untuk suatu runtun u(n) yang panjangnya N titik dirumuskan sebagai berikut [9] :
v(k) = α(k)∑ 0≤n≤N-1 (2.4) Dengan
√ , √
Untuk 1≤k≤N-1
Dengan N adalah Panjang diskret.
Contoh perhitungan DCT sebagai berikut :
Misalkan u(n) = [3 4 4 5]; n = 0,1, 2, 3,....N-1 v(0) =√ ∑
=
√ (u(0)) + (u(1)) + (u(2)) + (u(3))= √ (3 + 4 + 4 + 5)
(2.5)
0 100 200 300 400 500 600
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1
Data Tercuplik
Amplitudo
= 8
v(1) =√ ∑
= √ (3(0,92)) + (4(0,38)) + (4(-0,38)) + (5(-0,92))
= √ (-1,84)
= -1,301
v(2) =√ ∑
= √ (3(0,71))+ (4(-0,71)) + (4(-0,71)) + (5(0,71))
= √ (0)
= 0
v(3) =√ ∑
= √ (3(0,38)) + (4(-0,92)) + (4(0,92)) + (5(-0,38))
= √ (-,076)
= -0,537
Jadi hasil dari
u(n) = [ 3 4 4 5] setelah mengalami transformasi kosinus menjadi v(k) = [8 -1,301 0 -0,537] Bilangan yang dihasilkan melalui transformasi DCT tidak mengandung unsur imajiner. Hasil dari proses DCT ini akan dicari nilai indeks maksimumnya, untuk menentukan sinyal nada dari alat musik belira terdapat pada indeks maksimum ke berapa pada DCT domain.Gambar 2.11 memperlihatkan sinyal nada pada DCT domain dengan frame blocking 512 untuk nada C.0 100 200 300 400 500 600 0
0.5 1 1.5 2 2.5
X = 109 Y = 2.44
Indeks DCT
Amplitudo
Gambar 2.11 Contoh Sinyal Nada Pada C DCT Domain dari Gambar 2.10
17
BAB III
PERANCANGAN
3.1 Sitem Pengenalan Nada Alat Musik Belira
Blok sistem pengenalan nada alat musik Belira ditunjukan pada Gambar 3.1
Gambar 3.1 Diagram Blok Sistem Pengenalan Nada
Dalam sistem pengenalan nada alat musik belira ini terdiri dari software pada komputer yang berguna sebagai user interface dalam proses pengenalan. Matlab merupakan pusat dari pengaturan dalam proses pengenalan dan memiiliki beberapa proses yang dilakukan, yaitu proses perekaman nada dari alat musik belira secara real time dan mengenali nada dari alat musik belira yang telah direkam.
a. Belira
Belira merupakan alat musik yang digunakan dalam penelitian sistem pengenalan nada oleh penulis, dengan nada yang digunakan dalam penelitian ini adalah C , D , E , F , G , A , B , C> yang berupa wav.
Proses Perekaman
Proses Pengenalan
Nada
Belira Mikrofon
Notebook
b. Microphone
Mikrofon yang digunakan oleh penulis dalam penelitian ini adalah Genius MIC- 01A, karena memiliki bentuk yang fleksibel dan ringan untuk dibawa kemana-mana dengan harga yang terjangkau. Jarak yang digunakan antara alat musik belira dengan microphone adalah ±15 cm.
c. Proses Perekaman
Proses perekaman adalah proses masuknya data nada yang terekam berupa sinyal digital. Saat proses perekaman berlangsung sinyal analog dikonversi menjadi sinyal digital dengan frekuensi sampling. Sinyal digital kemudian disimpan dan digambarkan dalam plot. Data suara yang telah terekam kemudian dapat diproses untuk dikenali dengan proses pengenalan disebut nada terekam dan kemudian dapat diproses untuk dikenali lewat proses pengenalan[10].
d. Proses Pengenalan nada
Proses pengenalan nada ini berfungsi untuk melakukan pengenalan nada terhadap nada alat musik yang dimainkan dan telah terekam kemudian mendeteksi nada alat musik apa yang direkam. Pada proses pengenalan nada ini terdapat beberapa subproses yaitu Normalisasi, Pemotongan Sinyal, Frame Blocking, Hamming Window, DCT, Penentuan Nilai Maksimum. Diagram alur dapat dilihat seperti pada Gambar 3.2
.
Gambar 3.2. Diagram Alur Proses Pengenalan Alat musik Belira Masukan
nada
(Belira).wav
Normalisasi Pemotongan
Sinyal
Frame Blocking Hamming
window DCT
Penentuan Nilai Maksimum
Look Up Table
Hasil Keluaran Penentuan Alat musik
3.2. Look Up Table
Dalam proses perancangan sistem pengenalan alat musik belira ini digunakan sebuah Look Up Table sebagai penentuan keluaran dalam proses pengenalan nada dari alat musik belira dengan mencari indeks nilai maksimum pada DCT domain. Penulis menggunakan 10 sample per nada dengan nada yang dikenali, yaitu C, D, E , F, G, A, B, dan C>. Kemudian menentukan nilai rata-ratanya. Nilai rata-rata tersebut yang digunakan sebagai nilai tengah atau penentu range pada look up table. Proses pengambilan nada dilakukan melalui tahap perekaman. Setelah proses perekaman maka akan melalui preprocessing yang terdiri dari proses normalisasi, pemotongan sinyal, frame blocking,dan Hamming windowing. Setelah itu, akan melalui proses DCT dan pencarian nilai indeks maksimum pada DCT domain. Prosesnya ditunjukkan pada Gambar 3.3.
Gambar 3.3 Diargram Blok Pencarian Nilai Maksimum untuk Look Up Table
3.3. Nada Uji
Dalam nada uji ini penulis mengambil 10 nada sample untuk setiap nada yang akan digunakan untuk pengujian sistem. Setiap sample nada yang diambil dalam proses perekaman, akan melalui proses sampling terlebih dahulu sebelum masuk ke tahap berikutnya. Gambar 3.4 merupakan proses pengambilan sample nada yang di lakukan dengan proses sampling.
Gambar 3.4 Diargram Blok Proses Pengambilan Nada Uji Sampling
Masukan Suara
belira Keluaran (wav)
(wav)(wav)
Perekaman Preprocessing
Pencarian Nilai DCT Maksimum Masukan
(suara Belira)
Keluaran : Nilai Maksimum
3.4. Perancangan Tampilan Program GUI Matlab
Gambar 3.5 Tampilan Utama Program Pengenalan Nada
Tampilan program ini dibuat supaya user dapat dengan mudah menjalankan program yang dibuat dan memehami hasil dari pengenalan alat musik belira. Berikut adalah keterangan tampilan utama program pada Tabel 3.1.
Tabel 3.1. Keterangan Tampilan Utama Program GUI Matlab
Nama Bagian Keterangan
Tombol Rekam Digunakan untuk menjalankan aplikasi.
Tombol Selesai Digunakan untuk mengakhiri aplikasi.
Tombol Reset Digunakan untuk mengubah sistem kedalam kondisi awal Nilai Frame Untuk memilih nilai frame blocking dan DCT yang digunakan
pada proses pengenalan nada,yaitu 16, 32, 64, 128, 256, 512, dan 1024 titik.
Nilai Frame
Hasil Tampilan Nada
Rekam Selesai
Indeks DCT Maksimum Ke-
Plot Spektrum Rekam
Reset
PENGENALAN NADA BELIRA DENGAN ANALISIS
AMPLITUDO PADA RANAH DCT
Tabel 3.1. (lanjutan) Keterangan Tampilan Utama Program GUI Matlab
Nama Bagian Keterangan
Plot Spektrum Rekam Tampilan grafik suara hasil rekam Indeks DCT Maksimum
Ke-
Indeks nilai maksimum pada DCT Domain.
Pengenalan Nada Untuk menampilkan nada yang didapat setelah proses pengenalan
3.5. Perancangan Sistem Software
Pada Pengenalan nada alat musik belira ini memiliki beberapa proses yang harus dilakukan. Dimulai dari proses perekaman hingga hasil akhir yang menghasilkan tampilan nada yang diharapkan. Gambar 3.6 menunjukkan diagram alur dari ke seluruhan sistem pengenalan nada alat musik belira.
Masukan Suara Belira
END START
Rekam
Normalisasi
Pemotongan Sinyal
Frame Blocking
Hamming Window
DCT
Pencarian Nilai Maksimum
Penentuan Teks Nada
Keluaran : Teks Nada
Gambar 3.6 Diagram Alur Program Pengenalan Nada Belira
3.5.1. Rekam
Pada proses perekaman ini akan melalui proses pertama yaitu sampling yang bertujuan untuk merekam nada belira dengan frekuensi sampling yang telah ditentukan yaitu 10000 Hz (persamaan 2.1). Semua sample nada yang diambil akan melalui proses sampling lebih dahulu sebelum masuk ke tahap selanjutnya. Proses perekaman ini memiliki panjang durasi selama 1,5 detik [2],[3]. Hasil keluaran dari proses perekaman ini adalah dalam format wav.
Berikut ini merupakan cara untuk sampling nada :
1. Menentukan panjang durasi perekaman yaitu 1,5 detik [2], [3].
2. Menentukan frekuensi sampling yaitu 10000 Hz (persamaan 2.1).
3. Menentukan jumlah sample.
4. Merekam suara masukan dengan perintah waverecord.
5. Menyimpan hasil rekaman dengan perintah wavwrite.
6. Menampilkan sinyal hasil rekaman dengan perintah plot.
Gambar 3.7 Diagram Alur Proses Perekaman Sampling
END START
Mulai?
A
A
YA
Tidak Masukan : “Pilih
Nilai Frame Blocking
Tekan Tombol
“MULAI” di GUI
Keluaran : “Hasil Rekam pada
GUI”
3.5.2. Normalisasi
Proses normalisasi ini dilakukan setelah keluaran proses rekam berupa wav. Pada proses normalisasi, sinyal suara atau sinyal nada harus mempunyai nilai maksimum.
Setelah pencarian nilai maksimum maka tahap selanjutnya adalah membagi data dengan nilai absolut maksimal nada yang terekam (persamaan 2.2). Tujuan adanya normalisasi ini adalah untuk menyetarakan amplitudo suara yang terekam menjadi maksimum, agar efek kuat atau lemahnya suara yang terekam tidak mempengaruhi proses pengenalan suara.
Gambar 3.8 menunjukkan proses dari normalisasi .
Gambar 3.8 Diagram Alur Normalisasi Masukan : Nada Terekam
Membagi Data dengan Nilai Absolut Maksimal
Nada Terekam
Keluaran : Hasil Normalisasi
START
END
Mencari Nilai Maksimal Dari Data Nada
Terekam
3.5.3. Pemotongan Sinyal
Proses pemotongan sinyal adalah proses pemotongan sinyal awal yang tidak digunakan yang terletak pada sisi kiri atau bagian awal dari sinyal, yaitu daerah bagian silence dan daerah bagian transisi. Tujuan dari pemotongan daerah bagian silence adalah untuk menghilangkan bagian yang tidak termasuk dari bagian sinyal nada, dan tujuan pemotongan pada daerah bagian transisi adalah untuk mendapatkan sinyal yang merupakan sinyal suara dari alat musik belira. Proses pemotongan bagian transisi ini dilakukan dengan menghilangkan ⁄ [2], [3] bagian dari sinyal yang terdapat di bagian awasl (bagian transisi) setelah pemotongan bagian silence. Berikut ini merupakan cara pemotongan sinyal bagian silence dan pemotongan bagian transisi :
1. Menentukan nilai yang digunakan sebagai batas potong yaitu 0,3 [2], [3].
2. Mencari bagian sinyal yang > 0,3 dan < (-0,3). Sinyal yang dicari tersebut di inisialisasi sebagai b0
3. Sinyal yang tidak termasuk b0 akan dihilangkan dan sinyal tersbut adalah sinyal silence.
4. Pemotongan sinyal transisi dengan mengalikan jumlah data sinyal dengan 0,25 . 5. Menghilangkan data sinyal mula dari indeks 1 sampai dengan indek bts.
Gambar 3.9 Diagram Alur Pemotongan Sinyal Pemotongan Bagian Silence
Mencari sinyal >0,3 dan < (-0,3) Masukan : Hasil Normalisasi
Pemotongan Bagian Transisi Mengalikan Jumlah Data
Dengan 0,25
Keluaran : Hasil Pemotongan
END START
A
A
3.5.4. Frame Blocking
Frame Blocking adalah proses selanjutnya setelah melalui proses dari pemotongan sinyal dimana dalam proses frame blocking ini nilai dari frame dipilih oleh user. Nilai dari frame blocking yang digunakan adalah 16, 32, 64, 128, 256, 512 dan 1024. Nilai – nilai tersebut ditentukan sendiri secara objektif dan merupakan nilai yang digunakan oleh penelitian - penelitian sebelumnya [2], [3]. Dalam proses ini, data yang diambil mulai dari sinyal yang paling kiri dan akan diambil sepanjang nilai dari frame yang telah dipilih sehingga memudahkan dalam proses perhitungan dan analisa sinyal. Data yang diambil tersebut adalah keluaran dari proses frame blocking.Gambar 3.10 memperlihatkan proses dari frame blocking.
Gambar 3.10 Diagram Alur Frame Blocking fMengambil Data dari
Nilai Frame
Keluaran : Hasil Frame Blocking
END START
Masukan : “Pilih Nilai Frame Blocking pada GUI”
3.5.5. Hamming Window
Proses selanjutnya setelah proses dari frame blocking adalah windowing.
Windowing ini memiliki fungsi untuk menghilangkan efek diskontinuitas yang diakibat oleh proses sebelumnya, yaitu Frame Blocking ketika sinyal ditransformasikan ke domain DCT. Dalam penelitian ini menggunakan hamming window dimana penggunaan windowing ini membuat hasil akan lebih halus dalam menghilangan efek dari diskontinuitas. Dalam proses hasil dari frame blocking akan dikalikan dengan hamming Window sehingga akan didapatkan hasil untuk proses windowing dari persamaan (2.3) dan menggunakan hamming window yang ada di matlab. Berikut adalah diagram dari proses hamming window yang ditunjukkan pada Gambar 3.9.
Gambar 3.11 Diagram Alur Hamming Window Masukan :
Hasil Frame Blocking
hPerkalian elemen antara masukan data dengan Hamming Window
Keluaran : Hasil Hamming
Window
END START
3.5.6. Descrete Cosine Transform (DCT)
Proses selanjutnya adalah Descrete Cosine Transform (DCT) dimana proses dari DCT ini bertujuan untuk mengubah sebuah sinyal menjadi komponen frekuensi dasarnya.
Dalam proses ini DCT akan menyusun sinyal ke frekuensi special yang disebut dengan koefisien DCT, selanjutnya akan di amati untuk panjang DCT terhadap sinyal suara yang hasil dari proses ini nantinya akan dicari nilai indeks maksimum pada DCT domain. Proses dari DCT ini dapat dilihat dalam diagram DCT yang ditunjukkan oleh Gambar 3.10. Proses ini menggunakan proses DCT yang ada di matlab dan persamaan (2.4).
Gambar 3.12 Diagram Alur Proses DCT dMasukan : Hasil
Hamming Window
jMenghitung Nilai Absolut DCT
Keluaran : Sinyal DCT
Domain
Penentuan DCT Domain
END START
“Hasil DCT pada GUI”
3.5.7. Pencarian Nilai Maksimum
Proses pencarian nilai maksimum bertujuan untuk mencari nilai-nilai maksimum setelah mendapatkan sinyal DCT domain. Proses ini bertujuan untuk menganalisis dari hasil proses DCT sebelumnya. Nilai-nilai dari maksimum tersebut yang akan dijadikan sebagai penentuan keluaran dari sistem pengenalan dengan menggunakan look up table.
Selanjutnya akan diperoleh nada yang dimainkan termasuk nada belira atau bukan.
Berikut ini merupakan cara untuk mencari nilai-nilai maksimum pada DCT domain : 1. Mencari panjang data sinyal.
2. Mencari nilai-nilai absolute DCT
3. Mencari nilai-nilai tertinggi pada DCT domain sebagai indeks nilai maksimumnya.
4. Kemudian ditampilkan dengan perintah bar.
Gambar 3.13 Diagram Alur Pencarian Nilai Maksimum Masukan :
Hasil DCT
Keluaran : Nilai Maksimum
END START
Mencari Nilai Tertinggi Pada DCT Domain
3.5.8. Penentuan Teks Nada
Gambar 3.14 Diagram alur Penentuan Teks Nada
Masukan: Nilai Maksimum CL≤i≤CH CDEF BGA
DL≤i≤DHEL≤i≤EHFL≤i≤FH GL≤i≤GHAL≤i≤AHBL≤i≤BH
START
A
B
YaYa YaYa
Ya Ya
YA
Tidak Tidak
Tidak Tidak
Tidak Tidak
Tidak
Gambar 3.14 (lanjutan) Diagram Alur Penentuan Teks Nada
Setelah mengetahui nilai maksimumnya, maka hasil keluaran pengenalan berupa teks dari nada belira yang dimainkan. Penentuan keluaran menggunakan look up table.
Gambar 3.3 memperlihatkan proses perancangan pencarian nilai maksimum pada DCT domain. Tabel berikut memperlihatkan proses perancangan penentuan range nilai maksimum setiap frame blocking :
Tabel 3.2 Look Up Table untuk Penentuan Nada Frame 16
No Nada Nilai Maksimum
1 C CL16≤nilaimaks≤CH16
2 D DL16≤nilaimaks≤DH16
3 E EL16≤nilaimaks≤EH16
4 F FL16≤nilaimaks≤FH16
5 G GL16≤nilaimaks≤GH16
6 A AL16≤nilaimaks≤AH16
7 B BL16≤nilaimaks≤BH16
8 C C’L16≤nilaimaks≤C’H16
END
C’L≤i≤C’H
C>
A B
Ya
Tidak “ERROR”
Keluaran : “Teks Nada pada GUI”
Tabel 3.3 Look Up Table untuk Penentuan Nada Frame 32
No Nada Nilai Maksimum
1 C CL32≤nilaimaks≤CH32
2 D DL32≤nilaimaks≤DH32
3 E EL32≤nilaimaks≤EH32
4 F FL32≤nilaimaks≤FH32
5 G GL32≤nilaimaks≤GH32
6 A AL32≤nilaimaks≤AH32
7 B BL32≤nilaimaks≤BH32
8 C C’L32≤nilaimaks≤C’H32
Tabel 3.4 Look Up Table untuk Penentuan Nada Frame 64
No Nada Nilai Maksimum
1 C CL64≤nilaimaks≤CH64
2 D DL64≤nilaimaks≤DH64
3 E EL64≤nilaimaks≤EH64
4 F FL64≤nilaimaks≤FH64
5 G GL64≤nilaimaks≤GH64
6 A AL64≤nilaimaks≤AH64
7 B BL64≤nilaimaks≤BH64
8 C C’L64≤nilaimaks≤C’H64
Tabel 3.5 Look Up Table untuk Penentuan Nada Frame 128
No Nada Nilai Maksimum
1 C CL128≤nilaimaks≤CH128
2 D DL128≤nilaimaks≤DH128
3 E EL128≤nilaimaks≤EH128
4 F FL128≤nilaimaks≤FH128
5 G GL128≤nilaimaks≤GH128
6 A AL128≤nilaimaks≤AH128
7 B BL128≤nilaimaks≤BH128
8 C> C’L128≤nilaimaks≤C’H128
Tabel 3.6 Look Up Table untuk Penentuan Nada Frame 256
No Nada Nilai Maksimum
1 C CL256≤nilaimaks≤CH256
2 D DL256≤nilaimaks≤DH256
3 E EL256≤nilaimaks≤EH256
4 F FL256≤nilaimaks≤FH256
5 G GL256≤nilaimaks≤GH256
6 A AL256≤nilaimaks≤AH256
7 B BL256≤nilaimaks≤BH256
8 C> C’L256≤nilaimaks≤C’H256
Tabel 3.7 Look Up Table untuk Penentuan Nada Frame 512
No Nada Nilai Maksimum
1 C CL51≤nilaimaks≤CH512
2 D DL512≤nilaimaks≤DH512
3 E EL512≤nilaimaks≤EH512
4 F FL512≤nilaimaks≤FH512
5 G GL512≤nilaimaks≤GH512
6 A AL512≤nilaimaks≤AH512
7 B BL512≤nilaimaks≤BH512
8 C> C’L512≤nilaimaks≤C’H512
Tabel 3.8 Look Up Table untuk Penentuan Nada Frame 1024
No Nada Nilai Maksimum
1 C CL1024≤nilaimaks≤CH1024
2 D DL1024≤nilaimaks≤DH1024
3 E EL1024≤nilaimaks≤EH1024
4 F FL1024≤nilaimaks≤FH1024
5 G GL1024≤nilaimaks≤GH1024
6 A AL1024≤nilaimaks≤AH1024
7 B BL1024≤nilaimaks≤BH1024
8 C> C’L1024≤nilaimaks≤C’H1024
Untuk menentukan nilai maksimun dari look up table maka harus menentukan nilai range dari setiap nada. Misalkan dilakukan percobaan untuk nada C dengan 3 kali percobaan pada frame 512, percobaan pertama memperoleh nilai maksimum 109 pada DCT domain, selanjutnya percobaan kedua memperoleh nilai maksimum 108 pada DCT domain, dan percobaan yang ketiga memperoleh nilai maksimum 110 pada DCT domain.
Maka, range nilai maksimum untuk nada C pada frame 512 adalah108 sebagai CL dan nilai maksimum 110 sebagai CH.. Apabila nilai yang dihasilkan tidak berada pada range tersebut , maka keluaran pada GUI berupa “ERROR“ yang akan ditampilkan dalam bentuk teks.
Proses penentuan range nila maksmumi look up table dapat dilihat pada (Lampiran 1).
3.5.9. Keluaran (Teks)
Proses selanjutnya adalah menampilkan keluaran dari proses pengenalan nada belira dalam bentuk teks nada belira sesuai dengan nada yang dimainkan. Menampilkan teks keluaran nada belira ini menggunakan perintah callback yang terdapat pada GUI Matlab, dengan inisialisasi nadaout untuk hasil dari pengenalan nada belira C, D , E , F , G , A , B , C>. Proses penentuan keluarannya menggunakan look up table. Setelah hasil yang diperoleh ternyata adalah bukan nada belira maka keluarannya berupa“ ERROR”.
Kemudian jika hasil yang diperoleh merupakan nada belira maka akan ditampilkan dalam bentuk teks pada GUI Matlab.
START
Masukan : Nilai Maksimum
Hasilout = nadaout
Tidak
Ya
Hasilout=Error
A
B
Gambar 3.15 Diagram Alur Proses Menampilkan Teks Keluaran
3.6. Analisa Perfoma
Analisa perfoma bertujuan untuk mengetahui sistem yang telah dirancang bekerja secara baik atau tidak akibat dari pengubahan panjang DCT dan nilai frame blocking.
Perancangan analisa perfoma ini menggunakan 10 kali percobaan untuk setiap nada C, D , E , F , G , A , B , C> dalam pengujian sistem pengenalan. Kemudian untuk mengetahui tingkat pengenalan dari sistem menggunakan rumus seperti berikut [2], [3] :
Tingkat pengenalan = ∑ (3.1)
dengan ∑ adalah jumlah nada belira yang dikenali dan benar.
Nadaout = C, D, E, F, G, A, B, dan C’
END
Gambar 3.15 (lanjutan) Diagram Alur Proses Menampilkan Teks Keluaran A
B
Keluaran :
“Teks “
35
BAB IV PEMBAHASAN
Pada bab ini, program pengenalan nada yang telah dibuat akan diuji terlebih dahulu untuk mengetahui cara kerjanya apakah sudah sesuai dengan perancangan. Data yang diperoleh dari pengujian ini akan memperlihatkan cara kerja dari program yang telah dibuat oleh penulis, kemudian akan dianalisis cara kerjanya dari data yang telah diperoleh . Kemudian hasil dari analisis tersebut dapat ditarik kesimpulan untuk sistem pengenalan nada.
4.1. Pengujian Program Pengenalan Nada Alat Musik Belira
Program yang telah dibuat, akan diuji terlebih dahulu untuk mengetahui cara kerja dari sistem pengenalan nada apakah sudah sesuai dengan perancangan. Data yang diperoleh dari pengujian ini akan memperlihatkan cara kerja dari program yang telah dibuat oleh penulis, kemudian akan dianalisis cara kerjanya dari data tersebut. Proses pembuatan program menggunakan software MATLAB 7.10.0.499 (R2010a). Pengujian program ini menggunakan komputer denga spesifikasi sebagai berikut :
CPU : Intel®Core(TM) i3-2348M (2,30Ghz).
RAM : 2,00 GB.
Berikut ini langkah-langka untuk menjalankan program pengenalan nada belira :
1. Buka software Matlab, kemudian sesuaikan Current Directory ke folder tempat penyimpanan program pengenalan nada yang telah dibuat.
2. Ketik perintah “PRO” pada command window lalu tekan Enter. Gambar 4.1 memperlihatkan tampilan utama dari GUI pengenalan nada alat musik.
Gambar 4.1 Tampilan Utama Program Pengenalan Nada.
3. User memilih nilai frame blocking yang akan digunakan dalam proses pengenalan nada. Setelah memilih nilai frame blocking, Tekan tombol “MULAI” untuk memulai program pengenalan dan diikuti dengan memainkan salah satu nada dari alat musik berlira. Gambar 4.2 memperlihatkan hasil pengenalan nada.
Gambar 4.2 Tampilan Hasil Pengenalan Nada Alat Musik Belira