TUGAS AKHIR PENGENALAN NADA GAMELAN REONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK MINKOWSKI

Gratis

0
0
87
7 months ago
Preview
Full text
(1)PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI TUGAS AKHIR PENGENALAN NADA GAMELAN REONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK MINKOWSKI Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Oleh : I MADE BAGUS WIJAYA KUSUMA NIM : 095114019 PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2014 i

(2) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI FINAL PROJECT REAL TIME TONE RECOGNITION OF GAMELAN REONG USING DCT FEATURE EXTRACTION AND MINKOWSKI DISTANCE FUNCTION Presented as Partial Fullfillment of The Requirements To Obtain Sarjana Teknik Degree In Electrical Engineering Study Program By: I MADE BAGUS WIJAYA KUSUMA NIM : 095114019 ELECTRICAL ENGINEERING STUDY PROGRAM FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2014 ii

(3) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI HALAMAN PERSETUJUAN TUGAS AKHIR PENGENALAN NADA GAMELAN REONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK MINKOWSKI (REAL REAL TIME TONE RECOGNITION OF GAMELAN REONG USING DCT FEATURE EXTRACTION AND MINKOWSKI DISTANCE FUNCTION) Oleh: I MADE BAGUS WIJAYA KUSUMA NIM : 095114019 Telah disetujui oleh : Pembimbing Dr. Linggo Sumarno Tanggal : ________________ iii

(4) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI HALAMAN PENGESAHAN TUGAS AKHIR PENGENALAN NADA GAMELAN REONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK MINKOWSKI (REAL TIME TONE RECOGNITION OF GAMELAN REONG USING DCT FEATURE EXTRACTION AND MINKOWSKI DISTANCE FUNCTION) Oleh: I MADE BAGUS WIJAYA KUSUMA NIM : 095114019 Telah dipertahankan di depan panitia penguji pada tanggal : dan dinyatakan memenuhi syarat Susunan panitia penguji: Nama Lengkap Tanda Tangan Ketua : B.Wuri Harini, S.T.,M.T Sekertaris : Dr. Linggo Sumarno Anggota : Pius Yozy Merucahyo,S.T.,M.T Yogyakarta, Fakultas Sains dan Teknologi Universitas Sanata Dharma Dekan, Paulina Heruningsih Prima Rosa, M.Sc iv

(5) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI PERNYATAAN KEASLIAN KARYA Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini tidak memuat karya ataupun bagian dari karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah. Yogyakarta, 20 Juni 2014 Penulis I Made Bagus Wijaya Kusuma v

(6) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI HALAMAN PERSEMBAHAN DAN MOTTO HIDUP MOTTO : Tak ada kata terlambat untuk menjadi pribadi sukses dan kaya raya Persembahan Karya ini kupersembahkan kepada .... Sang Hyang Widhi yang selalu memberikan cahaya batin Para Leluhur yang selalu memberikan doa restu dan keberuntungan Bapak Wayan Senen, Mama Lutfi, Adik Ditha dan Kakak Arya yang selalu mendukungku dalam segala hal. Teman-teman geng sambat di dunia dan di surga yang selalu menemani Dan semua orang yang membaca karya tulis ini vi

(7) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LEMBAR PERNYATAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS Yang bertandatangan di bawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : I Made Bagus Wijaya Kusuma Nomor Mahasiswa : 095114019 Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul: PENGENALAN NADA GAMELAN REONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK MINKOWSKI beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan mempublikasikannya pada media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama masih mencatumkan nama saya sebagai penulis. Demikian pernyataan ini saya buat dengan sebenarnya. Yogyakarta, PadaTanggal: 20 Juni 2014 I Made Bagus Wijaya Kusuma vii

(8) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI INTISARI Seiring berkembangnya jaman modern, banyak masyarakat lokal dan mancanegara yang menyukai dan tertarik pada seni gamelan tradisional Bali. Salah satu assamble gamelan Bali yang terkenal adalah gamelan Gong Kebyar. Gamelan tersebut terbagi menjadi dua kelompok, yaitu gamelan mudah ditabuh dan sukar ditabuh. Reong termasuk sukar ditabuh bagi pemula atau seseorang yang belajar gamelan, sehingga media yang efektif sangat dibutuhkan. Peneliti ingin membuat suatu sistem yang dapat mengenali nada alat musik tradisional Bali, khususnya reong. Sistem ini membantu pemula maupun seseorang yang akan belajar mengenal nada gamelan reong. Sistem pengenalan nada gamelan reong real time secara otomatis system akan membandingkan nada acuan (database) dengan nada gamelan yang sedang dimainkan, sehingga akan menimbulkan jarak terkecil. Pengambilan nada acuan deng, deung, dung, dang, daeng, ding, dan dong menggunakan metode ekstraksi ciri Discrite Cosine Transform (DCT). Nada yang dimainkan dibandingkan dengan ketujuh nada acuan menggunakan metode Minkowski. Hasil dari perbandingan jarak terkecil merupakan nada yang sedang dimainkan. Kombinasi parameter pengenalan dengan panjang DCT 256 , alpha 0 dan orde fungsi jarak 1, 2, 3 menghasilkan tingkat pengenalan maksimal (100%). Pemrograman sistem ini menggunakansoftware Matlab dan program interface user menggunakan GUI Matlab. Kata kunci: DCT (Discrete Cosine Transform), real time,orde fungsi jarak, pengenalan nada gamelan reong. viii

(9) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI ABSTRACT Along with the expansion of the modern era, many local people and foreign tourists who love and are interested in the art of traditional Balinese gamelan.One of the famous Balinese gamelan assamble is gamelan Gong Kebyar. Gamelan was divided into two groups, namely gamelan easily ditabuh and hard ditabuh. Reong including hard to beat for a beginner or someone who studied the gamelan, an effective media so desperately needed. Researchers want to create a system that can recognize the tone of traditional Balinese instruments, in particular the reong. These systems help beginners as well as someone who will learn to know the tone gamelan reong. Gamelan reong recognition systems real time system will automatically compare the reference tone (database) and gamelan that is being played, so that would cause the smallest distance. Taking the reference tone deung, deng, dung, dang, daeng, ding, dong, and using methods to extract the characteristics of Cosine Transform Discrite (DCT).The tone being played compared to seven tones of reference method using Minkowski. Results from these comparisons distance smallest is a tone that is being played. The combination of parameters with a long introduction of DCT 256, alpha 0 and a distance function 1, 2, 3 generating maximum recognition rate (100%). This system programming using Matlab software and user interface programs use the Matlab GUI. Key words: DCT (Discrete Cosine Transform), real time, minkowski function, recognition, gamelan reong. ix tone

(10) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI KATA PENGANTAR Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala berkat dan kasih-Nya, sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik. Penulis menyadari bahwa banyak pihak yang telah memberikan doa, dukungan, perhatian serta bantuan kepada penulis sehingga dapat menyelesaikan tugas akhir ini. Oleh karena itu, penulis mengucapkan terimakasih yang sebesar-besarnya kepada: 1. Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta. 2. Rm. Wiryono Priyotamtama SJ, Rektor Universitas Sanata Dharma. 3. Petrus Setyo Prabowo, S.T.,M.T., Ketua Program Studi Teknik Elektro Universitas Sanata Dharma Yogyakarta. 4. Petrus Setyo Prabowo, S.T.,M.T., selaku dosen pembimbing akademik yang telah mendamping dan membimbing penulis selama perkuliahan. 5. Dr. Linggo Sumarno, dosen pembimbing yang selalu sabar membimbing dan mendukung, serta memotivasi penulis dalam menyelesaikan tugas akhir ini. 6. IbuWuri S.T.,M.T. dan Pak Pyus Yosi S.T.,M.T. selaku dosen penguji yang telah bersedia memberikan masukan, bimbingan, dan saran dalam memperbaiki tugas akhir ini. 7. Bapak/Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma. 8. Bapak, Mama, dan kakak atas kasih sayang, dukungan dan doa yang diberikan. 9. Pradipta Melanie Rubiyo atas ketulusannya dalam memberikan dukungan semangat, doa dan cinta. 10. Staff sekertariat Teknik Elektro yang telah membantu dalam hal administrasi. 11. Staff dan petugas laboratorium Teknik Elektro yang telah membantu banyak hal untuk kelancaran tugas-tugas perkuliahan. 12. Teman-teman seperjuangan angkatan 2009 Teknik Elektro di surga maupun di dunia yang selalu mendukung dan menyemangati saya dalam menyelesaikan tugas akhir ini. 13. Semua pihak yang tidak dapat disebutkan satu per satu atas semua dukungan yang telah diberikan dalam penyelesaian tugas akhir ini. x

(11) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak kekurangan, kelemahan dan jauh dari sempurna. Oleh sebab itu, dengan segala kerendahan hati, penulis mengharapkan kritik dan saran yang membangun untuk penyempurnaan tugas akhir ini. Dan semoga tugas akhir ini dapat bermanfaat sebagaimana mestinya. Yogyakarta, 20 Juni 2014 Penulis xi

(12) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI DAFTAR ISI HALAMAN JUDUL ................................................................................. i HALAMAN PERSETUJUAN.................................................................. iii HALAMAN PENGESAHAN .................................................................. iv PERNYATAAN KEASLIAN KARYA ................................................... v HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ....................... iv LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIK ............................... vi INTISARI ................................................................................................... vii ABSTRACT ............................................................................................... viii KATA PENGANTAR ............................................................................... ix DAFTAR ISI ............................................................................................. xi DAFTAR GAMBAR ................................................................................. xiii DAFTAR TABEL ..................................................................................... xv BAB I PENDAHULUAN 1.1 Latar Belakang ...................................................................................................... 1 1.2 Tujuan dan Manfaat .............................................................................................. 2 1.3 Batasan Masalah.................................................................................................... 2 1.4 Metodologi Penelitian ........................................................................................... 2 BAB II DASAR TEORI 2.1 Gamelan ................................................................................................................ 4 2.2 Sampling................................................................................................................ 4 2.3 Frame Blocking ..................................................................................................... 5 2.4 Windowing ............................................................................................................ 5 2.4.1 Kaiser Window .......................................................................................... 6 2.5 Discrete Cosine Transform (DCT) ....................................................................... 7 2.6 Minkowski ............................................................................................................ 7 2.7 Mikrofon ............................................................................................................... 8 xii

(13) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2.8 Soundcard ............................................................................................................. 8 2.9 Matlab ................................................................................................................... 9 BAB III PERANCANGAN PENELITIAN 3.1 Sistem Pengenalan Nada Gamelan Reong ........................................................... 11 3.2 Perancangan Nada Referensi................................................................................. 14 3.3 Nada Uji ................................................................................................................ 15 3.4 Perancangan Tampilan Program GUI Matlab ....................................................... 15 3.5 Perancangan Subsistem Program .......................................................................... 17 3.6 3.5.1 Subsistem Sampling .................................................................................. 17 3.5.2 Subsistem Pengenalan Nada..................................................................... 17 Perancangan Diagram Blok Program .................................................................... 18 BAB IV HASIL DAN PEMBAHASAN 4.1 Pengujian Program Pengenalan Nada Gamelan Reong Menggunakan Fungsi Jarak Minkowski ....................................................................................... 23 4.2 4.1.1 Tombol Rekam .......................................................................................... 25 4.1.2 Tombol Reset ............................................................................................ 32 4.1.3 Tombol Selesai .......................................................................................... 32 Hasil Pengujian Program Pengenalan Nada Terhadap Tingkat Pengenalan Nada Gamelan Reong ........................................................................................... 33 4.2.1 Pengujian Parameter Pengaturan Pengenalan Nada Gamelan Reong ......................................................................................................... 33 4.2.2 Pengujian dengan Tiga Variasi Volume Suara ......................................... 42 4.2.3 Pengujian dengan Gamelan Lain............................................................... 43 BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan ........................................................................................................... 47 5.2 Saran ..................................................................................................................... 47 DAFTAR PUSTAKA ............................................................................................. 48 LAMPIRAN .............................................................................................................. 49 xiii

(14) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI DAFTAR GAMBAR Gambar 1.1.Blok Model Perancangan............................................................................ 3 Gambar 2.1.Gamelan Reong........................................................................................... 4 Gambar 2.2.Tabuh Reong ............................................................................................... 4 Gambar 2.2.Frame Blocking .......................................................................................... 5 Gambar 2.3.Kaiser window dengan nilai πα atau β yang berbeda ................................. 6 Gambar 2.5.Contoh kartu suara ..................................................................................... 9 Gambar 2.6.Tampilan awal Matlab ................................................................................ 10 Gambar 3.1.Blok Diagram Keseluruhan Sistem ............................................................ 11 Gambar 3.2.Dekstop Microphone INTOPIC JAZZ-012. ............................................... 12 Gambar 3.3.Blok Diagram Proses Pengenalan Nada . ................................................... 13 Gambar 3.4.Blok Diagram Proses Pengambilan Nada Referensi .................................. 15 Gambar 3.5.Tampilan Progam Utama ............................................................................ 16 Gambar 3.6.Diagram Blok Keseluruhan ........................................................................ 18 Gambar 3.7.Diagram Blok Proses Rekam ...................................................................... 19 Gambar 3.8.Diagram Blok Frame Blocking ................................................................... 19 Gambar 3.9.Diagram Blok Normalisasi ......................................................................... 20 Gambar 3.10.Diagram Blok Windowing ........................................................................ 20 Gambar 3.11.Diagram Blok DCT................................................................................... 21 Gambar 3.12. Diagram Blok Fungsi Jarak ..................................................................... 21 Gambar 3.13. Diagram Blok penentuan Nada Hasil Pengenalan ................................... 22 Gambar 4.1.Icon Program Pengenalan ........................................................................... 23 Gambar 4.2.Tampilan awal Matlab ................................................................................ 24 Gambar 4.3.Tampilan awal sistem pengenalan nada gamelan reong............................. 24 Gambar 4.4.Tampilan Setelah Penekanan Tombol REKAM ......................................... 32 Gambar 4.5.Grafik Pengaruh Panjang DCT Pada Tingkat Pengenalan ......................... 36 Gambar 4.6.Grafik jarak antara nada dang dan daeng dengan Nilai orde jarak 0, alpha 0 dan panjang DCT (a) 16, (b) 32, (c) 64, (d) 128, dan (e) 256 ........ 37 Gambar 4.7.Grafik Pengaruh Nilai Alpha Pada Tingkat Pengenalan.............................39 Gambar 4.8.Grafik jarak antara nada dang dan daeng dengan orde 2, panjang DCT 256 dan nilai alpha (a) 0, (b) 50, (c) 100, (d) 1000. ..........................40 xiv

(15) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Gambar 4.9.Sound Level Meter .......................................................................................43 Gambar 4.10.Gamelan Jublag ........................................................................................46 xv

(16) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI DAFTAR TABEL Tabel 3.1.Spesifikasi Desktop Microphone INTOPIC JAZZ-012 ................................. 12 Tabel 3.2 Keterangan Tampilan Utama Program. .......................................................... 16 Tabel 4.1.Tampilan Hasil Pengenalan Nada Yang Dikenali .......................................... 31 Tabel 4.2.Jarak antara nada dang dan daeng dengan nilai alpha 0 dan fungsi Jarak orde 2..................................................................................................... 37 Tabel 4.3.Perhitungan Jarak Secara Manual .................................................................. 38 Tabel 4.4.Jarak nada dang dan daeng dengan nilai DCT 256 dan fungsi jarak orde 2 .............................................................................................................. 40 Tabel 4.5.Jarak antara nada dang dan daeng dengan nilai DCT 256 dan alpha sebesar 0 dan nilai orde jarak yang bervariasi ................................................ 41 Tabel 4.6.Hasil Pengujian Real time .............................................................................. 41 Tabel 4.7.Pengujian jarak Mikrofon dan Volume Suara................................................. 42 Tabel 4.8.Hasil Nilai Maksimum dari Sepuluh Jarak Minimum Setiap Nada ............... 43 Tabel 4.9.Hasil Pengujian Dengan Gamelan Reong....................................................... 45 Tabel 4.10.Hasil Pengujian dengan Gamelan Jublag ..................................................... 45 xvi

(17) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB I PENDAHULUAN 1.1. Latar Belakang Seiring berkembangnya jaman modern, banyak masyarakat lokal dan mancanegara yang menyukai dan tertarik pada seni gamelan tradisional Bali. Salah satu assamble gamelan Bali yang terkenal adalah gamelan Gong Kebyar. Gamelan tersebut terbagi menjadi dua kelompok, yaitu gamelan mudah ditabuh dan sukar ditabuh. Kendang, reong, dan ugal merupakan alat musik yang tergolong sukar ditabuh. Banyak penikmat gamelan yang ingin belajar memainkan seni musik tradisional tersebut. Reong merupakan alat yang paling sukar ditabuh bagi pemula atau seseorang yang belajar gamelan, sehingga media yang efektif sangat dibutuhkan. Pengenalan nada suatu bunyi merupakan hal yang paling mendasar dalam pembelajaran gamelan. Berdasarkan hal di atas, peneliti ingin membuat suatu sistem yang dapat mengenali nada alat musik tradisional Bali, khususnya Reong. Sistem ini membantu pemula maupun seseorang yang akan belajar mengenal nada gamelan Reong. Dalam bidang kesenian, sistem pengenalan nada gamelan Reong juga dapat membantu seorang pelaras gamelan dalam melaras gamelan. Selain itu sistem dapat diterapkan guna menunjang mata kuliah organologi dan titilaras jurusan etnomusikologi ISI Yogyakarta. Penulis menemukan penelitian-penelitian serupa mengenai pengenalan nada “Pengenalan Nada Saron Pelog Menggunakan Fungsi Jarak Minkowski”[1], namun untuk gamelan Bali khususnya Reong belum pernah ada. Perbedaan yang cukup signifikan dari penelitian sebelumnya yaitu sistem ini dapat mengenali suatu nada gamelan yang ditabuh secara real time. Secara otomatis sistem akan membandingkan nada acuan (data base) dengan nada gamelan yang sedang dimainkan, sehingga akan menimbulkan jarak terkecil. Pengambilan nada acuan deng, deung, dung, dang, daeng, ding, dan dong menggunakan metode ekstrak ciri Discrite Cosine Transform (DCT). Nada yang dimainkan dibandingkan dengan ketujuh nada acuan menggunakan metode Minkowski. Hasil dari perbandingan jarak terkecil merupakan nada yang sedang dimainkan. Pemrograman sistem ini menggunakan software Matlab dan program interface user menggunakan GUI Matlab. 1

(18) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 1.2. 2 Tujuan dan Manfaat Penelitian Tujuan dari penulisan tugas akhir ini adalah menghasilkan sistem pengenalan nada suara pada gamelan Reong. Manfaat dari penelitian ini adalah : a. Sebagai software untuk mengenali nada suara deng, deung, dung, dang, daeng, ding, dong pada gamelan Reong. b. Sebagai alat bantu berupa sebuah software bagi seorang pelaras dalam melaras gamelan. c. Sebagai pendukung pembelajaran mata kuliah organologi dan titilaras jurusan Etnomusikologi ISI Yogyakarta. 1.3. Batasan Masalah Sistem pengenalan nada suara pada gamelan Reong terdiri dari hardware dan software (komputer). Hardware berfungsi untuk memasukkan nada suara yang dimainkan pada gamelan Reong, sedangkan software pada komputer berfungsi untuk mengatur semua proses pengenalan nada suara yang dimainkan pada gamelan Reong. Pada perancangan sistem ini, penulis fokus pada pembuatan software komputer untuk memproses pengenalan nada suara, sedangkan untuk hardware berupa microphone yang sudah tersedia di pasaran. Penulis menetapkan beberapa batasan masalah yang dianggap perlu pada perancangan ini, yaitu sebagai berikut: a. Menggunakan gamelan Bali jenis Reong. b. Nada gamelan yang dikenali deng, deung, dung, dang, daeng, ding, dong. c. Hasil pengenalan nada secara real time. d. Menggunakan perangkat lunak komputasi (Matlab) dalam pembuatan program. e. Menggunakan fungsi jarak Minkowski orde 1,2 dan 3. f. Menggunakan Windowing Kaiser. g. Frame blocking sama dengan nilai DCT. 1.4. Metodologi Penelitian Penulisan skripsi ini menggunakan metode : a. Pengumpulan bahan–bahan referensi berupa buku–buku dan jurnal–jurnal.

(19) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI b. 3 Perancangan subsistem software. Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan dari berbagai faktor–faktor permasalahan dan kebutuhan yang telah ditentukan. Gambar 1.1 memperlihatkan blok model yang akan dirancang. Gambar 1.1. Blok Model Perancangan c. Pembuatan subsistem software. Berdasarkan Gambar 1.1, sistem akan bekerja apabila user memberikan interupsi melalui PC dengan media push button yang sudah disediakan dalam software. Sistem akan mengolah interupsi yang diterima dan memulai proses recording sampai user memberikan interupsi kembali untuk menghentikan proses recording. Setelah itu, user memberikan interupsi untuk memulai proses pengenalan nada. Komputer akan mengolah nada dan menyajikannya sebagai sebuah informasi. d. Analisa dan penyimpulan hasil percobaan. Analisa data dilakukan dengan meneliti pengaruh variasi DCT, variasi window Kaiser, dan variasi orde Minkowski sebanyak 336 percobaan (48 variasi x 7 nada). Penyimpulan hasil percobaan dilakukan dengan mencari panjang DCT, nilai alpha Kaiser dan nilai Minkowski yang menghasilkan tingkat pengenalan nada tertinggi. Sebagai indikator keberhasilan sistem pemrosesan suara dilihat dari tingkat pengenalan program dalam mengenali nada suara gamelan Reong dan pengujian pendeteksian nada gamelan lain.

(20) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB II DASAR TEORI 2.1 Gamelan Gamelan dalam bahasa halusnya disebut gangsa adalah perangkat fisik ansambel musik yang ricikannya didominasi oleh ricikan bersumber bunyi dengan bahan logam (perunggu) yang dilaras di dalam 2 (dua) sistem pelarasan yaitu laras slendro dan laras pelog[3]. Ada 4 bentuk sumber bunyi logam di dalam gamelan, yaitu berbentuk bilah, pencon, piringan, dan gulungan[4]. Reong adalah salah satu tungguhan garap yang menggunakan pencon yang dibuat dari perunggu yang diletakkan pada pelawah. Bentuknya memanjang dibuat dari kayu. Salah satu susunan atau urutan nada tungguhan Reong yang digunakan pada perangkat gamelan adalah deng, deung, dung, dang, daeng, ding, dong. Tungguhan Reong dipukul pada bagian moncongnya. Pencon ditabuh menggunakan dua panggul yang panjangnya sekitar 30cm dan dari bagian tengah sampai ujung dibungkus dengan benang sentul agar dapat menimbulkan suara yang empuk[4]. Gambar 2.1. Gamelan Reong 2.2 Gambar 2.2. Tabuh Reong Sampling Sampling merupakan proses pencuplikan gelombang suara yang akan menghasilkan gelombang diskret [2]. Dalam proses sampling, ada yang disebut dengan laju pencuplikan 4

(21) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 5 (sampling rate). Sampling rate menandakan berapa banyak pencuplikan gelombang analog dalam satu detik. Satuan dari sampling rate ialah Hertz (Hz). Kriteria Nyquist perlu diperhatikan dalam melakukan sampling. Kriteria Nyquist menyatakan bahwa sebuah sinyal harus memiliki sampling rate yang lebih besar dari 2 dengan adalah frekuensi paling tinggi yang muncul di sebuah sinyal. 2.3 Frame Blocking Frame blocking merupakan pembagian sinyal suara menjadi beberapa frame dan satu frame terdiri dari beberapa data sampel. Dalam proses frame blocking sinyal suara yang masuk akan diblok menjadi frame-frame dengan jumlah N sampel[5]. Pengambilan sampel tersebut tergantung dari tiap detik suara akan disampel dan berapa besar frekuensi samplingnya. 2N data Gambar 2.3. Frame Blocking Gambar 2.3 menjelaskan contoh dari frame blocking dimana keseluruhan dibagi menjadi 5 M (frame). Setiap M tersebut memiliki jumlah data yang sama yaitu 2N data pada Gambar 2.3. Pada implementasinya jumlah frame blocking tidak ada ketentuannya, tergantung dari kebutuhan suatu sistem. Frame blocking berfungsi untuk memilih data yang akan diproses dalam sistem pengenalan. 2.4 Windowing Sinyal suara yang dipotong-potong menjadi beberapa frame akan dapat menyebabkan kesalahan data pada proses Fourier transform[6]. Windowing diperlukan

(22) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 6 untuk mengurangi efek diskontinuitas dari potongan-potongan sinyal dengan cara melewatkan sinyal yang mempunyai frekuensi sembarang dikonvolusikan dengan fungsi window tertentu sehingga dapat mereduksi sinyal-sinyal yang tergolong rusak sebelum dilakukan proses transformasi. Ada beberapa fungsi windows yang telah ada diantaranya kaiser, hamming, triangular, rectangular, dan lain-lain. Kaiser Window 2.4.1 Kaiser window adalah salah satu jenis window. Dalam Kaiser window, parameter β menentukan ketinggian dari sidelobe seperti yang terlihat pada Gambar 2.4. Untuk pemberian nilai β, ketinggian sidelobe tergantung dengan panjang window[7]. Gambar 2.4. Kaiser window dengan nilai atau β yang berbeda-beda Kaiser window dirumuskan dengan[6]: [ ]≜ Dimana ( )≜ ⎧ ⎪ ⎨ ⎪ ⎩0, 1− , /2 ≤ (2.1) adalah orde 0 dari fungsi Bessel: ! Biasanya Kaiser window diparameterkan dengan: = 0≤ (2.2) (2.3)

(23) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI = 2.5 0.1102 ( − 8.7), 0.5842 ( − 21) . + 0.07886 ( − 21), 0.0, 21 ≤ > 50 ≤ 50 < 21 7 (2.7) Discrite Cosine Transform (DCT) Discrete Cosine Transform adalah teknik untuk mengubah sinyal ke dalam komponen frekuensi dasar. Discrete Cosine Transform proses ekstraksi ciri suatu data suara maupun gambar. Setelah mengekstraksi ciri, setiap koefisien transform dapat dikodekan secara independen tanpa kehilangan efisiensi kompresi[13]. Definisi DCT yang paling umum panjang N adalah: ( )= untuk sebagai: ( ) (2 + 1) 2 (2.8) = 0, 1, 2….., N-1. Dengan cara yang sama, transformasi inverse didefinisikan ( )= untuk ( ) ( ) ( ) (2 + 1) 2 (2.9) = 0, 1, 2,….., N-1. Pada persamaan (2.1) dan (2.2) ( ) didefinisikan sebagai ( )= ⎧ 1 ⎪ ⎨ 2 ⎪ ⎩ Hal ini jelas dari (2.1) bahwa untuk =0 (2.10) ≠ 0. = 0, ( = 0) = ∑ ( ). Koefisien transformasi pertama adalah nilai rata-rata urutan sampel. Nilai ini disebut DC koefisien. Semua koefisien transformasi lainnya disebut koefisien AC. 2.6 Minkowski Rumus fungsi jarak yang digunakan ditunjukkan pada persamaan (2.13).

(24) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI = Dengan variabel 2.7 ∑ dan (2.13) − adalah jarak antara Minkowski data 8 dan , k indeks dari variabel, n jumlah , dan λ urutan dari matrik Minkowski. Mikrofon Mikrofon digunakan pada beberapa alat seperti telepon, alat perekam, alat bantu dengar, pengudaraan radio, televisi, dan sebagainya[8]. Pada dasarnya mikrofon berguna untuk merubah suara menjadi getaran listrik sinyal analog untuk selanjutnya diperkuat dan diolah sesuai dengan kebutuhan. Pengolahan berikutnya adalah menggunakan power amplifier dari suara yang berintensitas rendah menjadi lebih keras terakhir diumpan ke speaker. Pemilihan mikrofon harus dilakukan dengan lebih hati-hati. Hal ini dilakukan untuk mencegah berkurangnya kemampuan mikrofon dari performa yang optimal. Karakteristik mikrofon yang harus diperhatikan ketika akan memilih sebuah mikrofon adalah: 1. Prinsip cara kerja mikrofon dari jenis mikrofon itu sendiri. 2. Daerah respon frekuensi suara yang mampu dicuplik oleh mikrofon. 3. Sudut atau arah pencuplikan mikrofon. 4. Output sinyal listrik yang dihasilkan mikrofon. 5. Bentuk fisik mikrofon. Agar lebih efektif, mikrofon yang digunakan haruslah sesuai kebutuhan dan seimbang antara sumber suara yang ingin dicuplik, misalnya suara manusia, alat musik, suara kendaraan, atau yang lainnya dengan sistem tata suara yang digunakan seperti sound sistem untuk live music, alat perekaman, dan sebagainya. 2.8 Sound Card Sound card merupakan sebuah periperal pada komputer sebagai I/O suara yang menyediakan komputer kemampuan untuk menghasilkan suara yang dapat didengar oleh pengguna baik melalui speaker atau headphone[9]. Pada dasarnya setiap sound card memiliki: 1. Digital Signal Processor (DSP) yang akan menangani semua jenis komputasi. 2. Digital to Analog Converter (DAC) sebagai keluaran suara ke speaker.

(25) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 9 3. Analog to Digital Converter (ADC) sebagai masukan suara. 4. Read Only Memory (ROM) atau Flash sebagai penyimpanan data. 5. Musical Instrument Digital Interface (MIDI) untuk menyambungkan beberapa peralatan musik eksternal. 6. Jack untuk menyambungkan kartu suara dengan speaker pada jalur line out atau mikrofon pada jalur line in. Beberapa sound card sudah terpasang secara pabrikan (on board) pada motherboard komputer, tetapi bisa juga ditambahkan untuk keperluan yang lebih lanjut pada slot PCI motherboard. Gambar 2.5. Contoh Kartu Suara Ada beberapa pengaturan awal dalam proses perekaman suara dengan menggunakan sound card, yaitu: 1. Sampling Rate, telah dijelaskan pada poin 2.2 2. Channel yang digunakan, yaitu mono atau stereo. Satu channel menandakan mode mono, 2 Channel menandakan mode stereo. 2.9 Matlab Matlab merupakan bahasa pemrograman yang hadir dengan fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih dahulu seperti Delphi, Basic maupun C++. Matlab merupakan bahasa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visualisasi dan pemrograman seperti komputasi matematik, analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan. Matlab hadir dengan membawa warna yang berbeda. Hal ini karena Matlab membawa keistimewaan dalam fungsi-fungsi matematika, fisika, statistik, dan visualisasi. Matlab dikembangkan oleh MathWorks, yang pada awalnya dibuat untuk memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK.

(26) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 10 Saat ini Matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem solver mulai dari simple sampai masalah-masalah yang kompleks dari berbagai disiplin ilmu[7]. Gambar 2.6. Tampilan awal Matlab

(27) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB III PERANCANGAN 3.1 Sistem Pengenalan Nada Gamelan Reong Blok sistem pengenalan nada gamelan Reong secara keseluruhan diperlihatkan pada Gambar 3.1. Gambar 3.1. Blok diagram keseluruhan sistem Sistem pengenalan nada gamelan reong berbentuk software pada laptop. Perangkat lunak ini berfungsi sebagai user interface dalam proses pengenalan. Software laptop yang dibuat dalam bentuk user interface berperan sebagai pusat pengaturan semua proses pengenalan nada gamelan Reong, seperti merekam suara nada gamelan Reong dan mengenali suara nada yang terekam. Perekaman suara dilakukan oleh laptop melalui mikrofon (microphone) dan jalur line in pada kartu suara (Sound Card). 1. Gamelan Reong Reong adalah salah satu tungguhan garap yang menggunakan pencon yang dibuat dari perunggu yang diletakkan pada pelawah. Bentuknya memanjang dibuat dari kayu. Salah satu susunan atau urutan nada tungguhan Reong yang digunakan pada perangkat gamelan adalah deng, deung, dung, dang, daeng, ding, dong. Tungguhan Reong dipukul 11

(28) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 12 pada bagian moncongnya. Pencon ditabuh menggunakan dua panggul yang panjangnya sekitar 30cm dan dari bagian tengah sampai ujung dibungkus dengan benang sentul agar dapat menimbulkan suara yang empuk[4]. 2. Mikrofon Mikrofon yang digunakan adalah mini multimedia microphone dapat dilihat pada gambar 3.2. Mini mikrofon sangat mudah digunakan dan dibawa karena bentuknya yang sangat ringan. Mini mikrofon hanya dapat mendengar suara dari jarak dekat ±10 cm dari sumber suara. Jarak yang diperoleh sebesar ±10 cm berasal dari pengujian perekaman dari berbagai jarak. Gambar 3.2. Dekstop Microphone INTOPIC JAZZ-012 Mikrofon berfungsi untuk menangkap sinyal analog dan kemudian menyalurkannya ke sound card pada laptop melewati line in yang ada pada sound card. Tabel 3.1. Spesifikasi Desktop Microphone INTOPIC JAZZ 012 Frequency Response 100 Hz - 16 KHz Sensitivity -58 dB ± 3 dB Output Impedance 2.2 KΩ Cable Length 2.5 m Audio Output Connector 3.5 mm Stereo Dimension 250(H)×75(W)×80(D) mm Weight 220 gram

(29) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 3. 13 Sound card Sound card berfungsi mengubah sinyal analog dari mikrofon menjadi sinyal digital. Sound card yang digunakan adalah sound card yang sudah terpasang pada motherboard. Proses konversi sinyal analog menjadi sinyal digital hingga kemudian disimpan, diperlukan pengaturan yang meliputi pengaturan sampling rate (frekuensi sampling) dan channel. Pengaturan tersebut dilakukan pada proses perekaman oleh program yang akan dibuat. 4. Proses perekaman Proses perekaman adalah proses masuknya data nada terekam berupa sinyal digital. Saat proses perekaman berlangsung sinyal analog dikonversi menjadi sinyal digital dengan frekuensi sampling dan tipe data berupa channel yang sudah ditentukan. Sinyal digital kemudian disimpan dan digambarkan dalam sebuah plot. Data nada yang telah disimpan disebut nada terekam dan kemudian dapat diproses untuk dikenali lewat proses pengenalan nada. 5. Proses pengenalan nada Proses pengenalan nada adalah proses dimana nada terekam dikenali nadanya. Proses ini terdiri dari subproses frame blocking, normalisasi, windowing, DCT, fungsi jarak, dan hasil pengenalan dapat dilihat pada Gambar 3.3. Gambar 3.3. Blok Diagram Proses Pengenalan Nada a. Frame blocking Proses ini memilih data dari data nada terekam, sehingga data yang dipilih dapat mewakili semua data pada nada terekam. Panjang frame blocking yang digunakan bervariasi yaitu 16, 32, 64, dan 128, yang disesuaikan dengan panjang DCT.

(30) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI b. 14 Normalisasi Proses ini bertujuan untuk menyetarakan amplitudo maksimum baik nada terekam dengan nada referensi, sehingga efek dari kuat lemahnya suara yang dikeluarkan gamelan Reong tidak terlalu mempengaruhi proses pengenalan. c. Windowing Windowing merupakan perkalian antar elemen yang berfungsi untuk mengurangi efek diskontinuitas dari sinyal digital hasil rekaman. Dalam perancangan ini penulis menggunakan window Kaiser dari jenis-jenis windowing yang ada. Window Kaiser di sini memiliki nilai variasi alpha sebesar 0, 50, 100, dan 1000. d. Ekstrasi Ciri DCT Proses Discrete Cosine Transform merupakan proses ekstraksi ciri suatu data suara maupun gambar. Evaluasi DCT yang digunakan berdasarkan frame blocking yang digunakan. Setelah menentukan besarnya frame blocking, kemudian frame blocking tersebut dievaluasi basis data koefisiennya. e. Perhitungan Fungsi Jarak Proses ini membandingkan nada terekam dengan 7 nada referensi. Hasil dari perbandingan adalah jarak yang kemudian akan digunakan dalam proses selanjutnya. Dalam proses ini penulis menggunakan fungsi jarak Minkowski, yang dievaluasi pada orde 1,2, dan 3. f. Penentuan Keluaran Hasil pengenalan adalah subproses terakhir dari proses pengenalan nada. Pada proses ini hasil pengenalan nada ditentukan berdasarkan jarak minimum yang diperoleh setelah proses fungsi jarak. 3.2 Perancangan Nada Referensi Hasil pengenalan diketahui melalui jarak minimum yang diperoleh. Jarak yang dibandingkan di sini adalah perbandingan antara hasil rekaman secara real time dengan nada referensi. Nada referensi pada suatu sistem memerlukan suatu ketelitian yang tepat agar menghasilkan suatu perbandingan yang akurat. Penulis mengambil 10 sample dari tiap nada-nada yang akan dikenali (deng, deung, dung, dang, daeng, ding, dong). Proses pengambilan dapat dilihat pada Gambar 3.4. Pengambilan nada yang akan dijadikan nada referensi harus melalui proses sampling, frame blocking, normalisasi, windowing, dan DCT. Pengambilan dilakukan dengan menggunakan program Matlab yang akan dibuat.

(31) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 15 Gambar 3.4. Blok Diagram Proses Pengambilan Nada Referensi Proses pengambilan nada disesuaikan dengan variabel bebas pada pembuatan sistem pengenalan nada gamelan Reong, tetapi dengan durasi dan frekuensi sampling yang sudah ditetapkan. Setelah 10 nada sampel pada setiap nada diperoleh ekstraksi cirinya, maka dilakukan perhitungan (3.1) untuk mendapatkan nada referensi. = ⋯ (3.1) Nada referensi yang didapat kemudian disimpan dalam fungsi header yang ada, sehingga sewaktu-waktu nada referensi dapat dipanggil dalam proses fungsi jarak yang ada dalam sistem pengenalan gamelan Reong. 3.3 NadaUji Nada uji merupakan nada terekam selain nada referensi. Nada uji berfungsi untuk mencari nilai alpha pada windowing, panjang DCT dan orde jarak Mikowski yang menghasilkan tingkat pengenalan nada tertinggi. Pengambilan nada uji sama halnya dengan pengambilan nada referensi (Gambar 3.6). 3.4 Perancangan Tampilan Program GUI Matlab Perencanaan pembuatan software untuk pengenalan nada ini menggunakan pemrograman Matlab. Gambar 3.5 adalah GUI yang dirancang sebagai tampilan progam utama

(32) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 16 Gambar 3.5. Tampilan Progam Utama Tampilan utama program dibuat agar user dapat dengan mudah mengoperasikan program ini serta mengetahui hasil dari pengenalan nada gamelan pada Reong. Beberapa keterangan dari tampilan utama program dijelaskan pada Tabel 3.2. Tabel 3.2. Keterangan Tampilan Utama Program NO. NAMA BAGIAN KETERANGAN 1. Untuk memilih nilai alpha yang akan digunakan pada NILAI ALPHA proses pengenalan nada, pilihan nilai alpha pada windowing seperti 1000, 100, 50, dan 0. 2. PERHITUNGAN Untuk menampilkan jarak yang didapat JARAK 3. PANJANGDCT Untuk memilih titik DCT yang digunakan pada proses pengenalan nada, pilihan berupa 16, 32, 64, dan 128 titik.

(33) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 17 Tabel 3.2. (Lanjutan) Keterangan Tampilan Utama Program NO. 4 NAMA BAGIAN ORDE FUNGSI JARAK KETERANGAN Untuk memilih nilai orde jarak Minkowski, pilihan nilai orde berupa 1, 2 dan 3 5. PLOT PEREKAMAN Tampilan grafik suara hasil rekaman 6. PLOT DCT Tampilan data berupa grafik data hasil DCT baik dari rekaman maupun dari 14 nada referensi 7. REKAM Untuk memulai proses pengenalan nada 8. MULAI Digunakan bila ingin memulai proses pengenalan nada yang baru 9. EXIT Digunakan untuk mengakhiri aplikasi 10. NADA YANG DIKENALI Menunjukkan hasil nada yang akan dikenali 3.5 Perancangan Subsistem Program Terdapat dua subsistem penting dalam sistem pengenalan nada gamelan Reong, 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.5.1 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 2200Hz. (lihat lampiran1). b. Durasi perekaman yang digunakan adalah 2 detik. (lihat lampiran2). 3.5.2 Subsistem Pengenalan Nada Subsistem ini terdiri dari tiga proses menggunakan variabel terikat yaitu proses frame blocking, windowing dan DCT. Pengujian berikutnya adalah mencari nilai-nilai yang optimal untuk proses pengenalan nada khususnya dalam subsistem pengenalan nada ini,

(34) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 18 karena subsistem ini adalah inti dari sistem pengenalan gamelan Reong. Pencarian nilainilai yang optimal berpengaruh pada unjuk kerja dalam subsistem ini. a. Windowing yang digunakan adalah Kaiser window. Variasi alpha yang digunakan adalah 0, 50, 100, dan 1000. b. Variasi panjang DCT yang digunakan untuk mengkonversi data hasil windowing adalah 16, 32, 64, 128. Dalam subsistem pengenalan nada, data hasil DCT yang digunakan adalah data riil atau amplitudonya. c. 3.6 Variasi fungsi jarak Minkowski yang digunakan yaitu orde 1, orde 2, dan orde 3. Perancangan Diagram Blok Program User saat memulai program pengenalan nada gamelan Reong dihadapkan dengan tampilan yang sederhana dari Matlab. Penentuan parameter dapat terlihat dari combo box Matlab. Setelah user selesai mengatur nilai parameter, maka akan dilanjutkan dengan proses penekanan tombol rekam dan secara otomatis akan terlihat hasil pengenalan nada yang dikenali. Saat user menekan tombol “rekam”, sistem akan mengambil suara nada gamelan Reong yang dimainkan secara real time. Setelah suara nada telah terekam, selanjutnya progam akan melakukan proses untuk mengenali nada tersebut. Proses pengenalan akan berhenti ketika nilai jarak antara nada terekam dengan nada referensi telah didapat dan nada terekam dapat dikenali . Gambar 3.6 memperlihatkan alur proses program utama. Gambar 3.6. Diagram Blok Keseluruhan

(35) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 19 Gambar 3.7. Diagram Blok Proses Rekam Gambar 3.7 memperlihatkan proses perekaman. Proses rekam terdiri dari proses delay dan proses sampling suara. Proses delay adalah proses dimana sistem memberi waktu kepada user untuk bersiap-siap sebelum melakukan rekaman. Proses sampling adalah proses pengambilan suara nada gamelan Reong dengan parameter frekuensi sampling yang sudah ditentukan dalam sistem. Setelah nada selesai direkam, maka sistem akan menampilkan hasil rekaman atau sampling dalam bentuk grafik atau plot. Selanjutnya sistem akan memilih data yang akan diproses selanjutnya melalui proses frame blocking. Alur proses frame blocking ditampilkan pada Gambar 3.8. Gambar 3.8. Diagram Blok Frame Blocking Alur program frame blocking berupa proses pencarian titik tengah dari suatu data yang terekam. Setelah ditemukan titik tengah kemudian dilanjutkan dengan menentukan sejumlah data yang akan diambil dari titik tengah data yang sudah ditemukan tadi. Sejumlah data yang telah ditentukan tadi disimpan.

(36) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 20 Gambar 3.9. Diagram Blok Normalisasi Gambar 3.9 memperlihatkan proses normalisasi. Proses normalisasi bertujuan untuk menguatkan sinyal data. Pertama–tama mencari nilai maksimum dari data, kemudian data tersebut dinormalisasikan agar menghasilkan amplitudo yang lebih besar. Output yang sudah dinormalisasikan disimpan. Alur program berikutnya adalah proses windowing terlihat pada gambar 3.10. Proses windowing menggunakan Kaiser window, proses ini menggunakan parameter alpha untuk komputasinya. Parameter alpha didapat dari pilihan user pada combobox. Gambar 3.10. Diagram Blok Windowing Data hasil keluaran yang telah dinormalisasikan kemudian dikalikan dengan jendela Kaiser yang sudah ditentukan. Hasil perkalian elemen tersebut menghasilkan sebuah sinyal data windowing berbentuk seperti gelombang AM. Output windowing disimpan menjadi sebuah data yang nantinya di gunakan untuk masukan proses DCT.

(37) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 21 Gambar 3.11. Diagram Blok DCT Gambar 3.11 memperlihatkan alur diagram proses DCT. Proses pertama alur program DCT adalah menghitung nilai transformasi DCT kemudian dilanjutkan dengan mencari nilai absolutnya. Proses selanjutnya adalah program fungsi jarak. Fungsi jarak yang digunakan adalah Minkowski. Perhitungan jarak digunakan untuk menghitung jarak antara hasil ekstraksi ciri data masukan dengan karakter hasil ekstraksi ciri pada database. Proses ini menggunakan parameter n untuk komputasinya. Nilai n ditentukan secara variasi pada program. Diagram alur perhitungan jarak ditunjukkan pada gambar 3.12. Gambar 3.12. Diagram Blok Fungsi Jarak Proses terakhir dari alur keseluruhan program adalah penentuan nada hasil pengenalan. Diagram alur ini merupakan proses penentuan hasil pengenalan data hasil rekam dengan database. Hasil pengenalan suatu karakter yang mempunyai jarak minimum ditentukan sebagai hasil keluaran. Kemudian output yang berupa jarak minimum tersebut akan ditampilkan dalam bentuk teks pada tampilan GUI. Diagram alur penentuan nada hasil pengenalan ditunjukkan pada gambar 3.13.

(38) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Gambar 3.13. Diagram Blok Penentuan Nada Hasil Pengenalan 22

(39) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB IV HASIL DAN PEMBAHASAN Pengujian program perlu dilakukan untuk mengetahui suatu program sudah berjalan dengan baik dan sudah sesuai dengan perancangan. Hasil pengujian berupa datadata yang dapat memperlihatkan bahwa program yang telah dirancang dapat berjalan dengan baik. Analisa terhadap proses kerja dapat digunakan untuk menarik kesimpulan dari apa yang disajikan dalam tugas akhir ini. 4.1 Pengujian Program Pengenalan Nada Gamelan Reong Menggunakan Fungsi Jarak Minkowski. Pengujian program dijalankan untuk memastikan apakah program yang dibuat sudah sesuai dengan perancangan dan berjalan dengan baik. Pengujian program dilakukan dengan spesifikasi komputer sebagai berikut : Processor : Intel(R) Core(TM) i5-2450M CPU @2.50GHz RAM : 4.00 GB Program pengenalan dapat dijalankan dengan langkah-langkah berikut : 1. Click dua kali icon matlab dengan gambar icon seperti Gambar 4.1. Gambar 4.1. Icon Program Pengenalan 2. Tampilan awal yang terlihat pada Gambar 4.1. akan muncul sebelum masuk ke tampilan utama program. 3. Kemudian ketik laste dalam command window dan pada layar akan muncul seperti Gambar 4.2. 23

(40) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 24 Gambar 4.2. Tampilan awal Matlab 4. User dapat menjalan program pengenalan dengan mengisi pengaturan pengenalan nada yaitu nilai alpha, panjang DCT dan orde fungsi jarak yang akan digunakan dalam proses pengenalan nada. Apabila user tidak melakukan pengaturan pengenalan nada, maka program tidak dapat melakukan pengenalan dengan benar. Gambar 4.3. Tampilan awal sistem pengenalan nada gamelan Reong 5. Jika nilai alpha, DCT dan orde fungsi jarak telah dipilih, program pengenalan dapat dijalankan dengan menekan tombol “REKAM”. 6. Selanjutnya hasil pengenalan nada akan muncul dalam kotak “Nada Yang Dikenali”. Hasil perhitungan jarak dari tiap nada dapat dilihat pada kolom “Perhitungan Jarak”. User dapat melihat spektrum hasil rekaman nada dan grafik hasil proses DCT pada kotak “Plot Perekaman” dan “Plot Hasil DCT” 7. Tombol “RESET” digunakan apabila user ingin melakukan perekaman ulang.

(41) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 25 8. Tombol “SELESAI” digunakan apabila user ingin menyelesaikan program dan keluar dari tampilan utama program. 4.1.1. Tombol Rekam Tombol rekam hanya dapat bekerja dengan benar setelah user mengisi pengaturan pengenalan nada. Pengaturan tersebut meliputi pengaturan nilai DCT, nilai alpha, dan nilai orde fungsi jarak. Ketiga variasi pengaturan tersebut disajikan menggunakan tampilan pop up menu pada user interface matlab. Ketiga program pop up menu sebagai berikut : function popupmenu4_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu4,'Value'); switch indeks case 1 alphawin=0; case 2 alphawin=50; case 3 alphawin=100; case 4 alphawin=1000; end handles.alpha=alphawin; guidata(hObject,handles); Pada program di atas, nilai alpha diinisialisai menggunakan nama alphawin yang dibagi dalam 4 kondisi sesuai dengan banyaknya variasi. Inisialisasi alphawin tersebut diproses menggunakan perintah handles. Perintah ini digunakan nilai alpha yang telah diinisialisasi sebagai masukan ketika dilakukan callback. Variasi nilai alpha yang ditampilkan pada pop up menu yaitu 0, 50, 100, dan 1000. Pada pop up menu variasi DCT menjalankan program sebagai berikut: function popupmenu5_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu5,'Value'); switch indeks case 1 frame=16; case 2

(42) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 26 frame=32; case 3 frame=64; case 4 frame=128; case 5 frame=256; end handles.ndct=frame; guidata(hObject,handles); Proses yang dilalui oleh pop up menu pada variasi DCT sama dengan proses pada pop up menu variasi alpha. Nilai DCT diinisialisasikan dengan nama ndct. Variasi nilai DCT meliputi 16, 32, 64, 128, 256. Pop up menu yang ketiga adalah variasi nilai orde fungsi jarak yang memiliki variasi nilai 1, 2, dan 3. Sama halnya dengan proses pada kedua pop up menu sebelumnya, nilai fungsi orde jarak diinisialisasikan dengan nama pangkat. Program orde fungsi jarak dapat dilihat sebagai berikut : function popupmenu6_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu6,'Value'); switch indeks case 1 pangkat=1; case 2 pangkat=2; case 3 pangkat=3; end handles.n=pangkat; guidata(hObject,handles); Setelah user mengisi pengaturan tersebut, user dapat menekan tombol “Rekam” untuk memulai merekam nada gamelan Reong. Tombol “Rekam” memulai pengenalan nada dengan menjalankan beberapa subproses. Subproses yang dijalankan dimulai dari perekaman nada, preprocessing, ekstraksi ciri DCT, penghitungan jarak Minkowski, dan

(43) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 27 penentuan hasil pengenalan nada. Perintah yang digunakan untuk perekaman nada sebagai berikut: sample_len=2; sample_freq=2200; sample_time=(sample_len*sample_freq); x=wavrecord(sample_time, sample_freq); wavwrite(x, sample_freq, 's.wav'); Program perekaman menggunakan frekuensi sampling 2200 Hz dan durasi waktu yang digunakan adalah 2 detik (lampiran L1 dan lampiran L8). Perintah program pada Matlab yang digunakan adalah wavrecord untuk merekam dan wavwrite untuk menyimpan nada yang telah terekam. Nada yang telah terekam ditampilkan berupa gambar plot melalui kolom “Plot Perekaman” pada tampilan program utama. Program kolom “Plot Perekaman” adalah sebagai berikut : axes(handles.axes1) plot(x); “x” merupakan hasil nada yang telah terekam. Nada terekam diplot pada axes yang telah tersedia di dalam tampilan program utama. Sub proses selanjutnya adalah ekstraksi ciri DCT. Nada yang telah terekam dan tersimpan dipanggil kembali menggunakan perintah wavread. Nada terekam yang berupa sebuah data “s.wav” disimpan menjadi variabel x. Proses ekstraksi ciri memiliki 3 masukan yaitu varibalel x, alpha, dan ndct. Program ekstraksi ciri DCT dapat dilihat sebagai berikut : x=wavread('s.wav'); ndct=handles.ndct; alpha=handles.alpha; y=xciri(x,ndct,alpha); Terdapat tahap preprocessing data sebelum memasuki tahap subproses ekstraksi ciri DCT. Setelah proses perekaman, program akan memproses data hasil perekaman untuk pemilihan data tengah dari deretan data hasil perekaman. Selanjutnya data hasil frame blocking akan melalui proses windowing untuk menghilangkan noise suara yang ikut terekam dalam proses perekaman. Setelah proses frame blocking selesai dilakukan maka

(44) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 28 program akan menjalankan proses Kaiser window. Setelah proses windowing selesai dilakukan maka program akan menjalankan proses normalisasi. Program processing keseluruhan “xciri” dapat dilihat sebagai berikut. function y=xciri(x,frame,alpha) %proses frame blocking dimulai dari tengah keseluruhan data sample mulai=length(x)/2; xframe=zeros(frame,1); for i=1:frame end xframe(i)=x(i+mulai); %normalisasi xmax=max(abs(xframe)); xnorm=xframe/xmax; %kaizer window framewin=kaiserwin(frame,alpha); %windowing xwin=xnorm.*framewin; %DCT y=abs(dct(xwin)); %y=dct(xwin); y=y(:); Perintah untuk jendela Kaiser adalah sebagai berikut : function ka=kaiserwin (N,alpha) %beta=0.1102*(alpha-8.7); %ka =kaiser (N,beta); if alpha >50 beta =0.1102*(alpha-8.7); elseif alpha <21 beta=0.0; elseif 21<=alpha<=50 end beta=(0.5842*(alpha-21)^0.4)+0.07886*(alpha-21); ka=kaiser(N,beta);

(45) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 29 Hasil dari ekstrasi ciri ditampilkan pada kolom “Plot Hasil DCT”. Perintah program dilakukan seperti halnya program pada gambar plot hasil perekaman. axes(handles.axes2) plot(y) Setelah proses ekstraksi ciri, program selanjutnya adalah pemanggilan database sesuai dengan nilai variasi DCT dan alpha. if (ndct==16) &(alpha==0) load xd16a0; elseif (ndct==16) &(alpha==50) load xd16a50; elseif (ndct==16) &(alpha==100) load xd16a100; elseif (ndct==32) &(alpha==0) load xd32a0; elseif (ndct==32) &(alpha==50) load xd32a50; elseif (ndct==32) &(alpha==100) load xd32a100 elseif (ndct==32) &(alpha==1000) load xd32a1000 elseif (ndct==64) &(alpha==0) load xd64a0 elseif (ndct==64) &(alpha==50) load xd64a50 elseif (ndct==64) &(alpha==100) load xd64a100 elseif (ndct==64) &(alpha==1000) load xd64a1000 elseif (ndct==128) &(alpha==0) load xd128a0 elseif (ndct==128) &(alpha==50) load xd128a50 elseif (ndct==128) &(alpha==100) load xd128a100 elseif (ndct==128) &(alpha==1000) load xd128a1000 elseif (ndct==256) &(alpha==0)

(46) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 30 load xd256a0; elseif (ndct==256) &(alpha==50) load xd256a50; elseif (ndct==256) &(alpha==100) load xd256a100; elseif (ndct==256) &(alpha==1000) end load xd256a1000 Program di atas melaksanakan perintah pemanggilan database yang sudah tersimpan sesuai dengan kode nilai variasi DCT dan nilai alpha. Perintah yang digunakan adalah logika ifelse, sehingga program akan memanggil database sesuai dengan nilai variasi masukan DCT dan alpha dari user. Ketika database sudah terpanggil, maka tahap selanjutnya adalah membandingkan nada terekam hasil ekstaksi ciri DCT dengan nada database. Perbandingan nilai kedua nada bertujuan untuk mencari selisih nilai yang dihasilkan kedua nada tersebut. Metode yang digunakan untuk membandingkan nilai tersebut adalah metode fungsi jarak Minkowski. Program fungsi jarak dapat terlihat sebagai berikut : n= handles.n for m=1:7 jaraklist(m)=jarakm(y,z(:,m),n); end %cari nilai minimum jarakmin=find(min(jaraklist)==jaraklist) %deskripsi string nadalist={'DENG','DEUNG','DUNG','DANG','DAENG','DING','DONG'} %penentuan keluaran min nadaout=nadalist(jarakmin) set(handles.text1,'String',nadaout); Inisialisasi nilai n merupakan nilai orde dari fungsi jarak Minkowski, masukan nilai orde dipilih melalui pilihan pop up menu fungsi orde jarak yang sudah diterangkan di penjelasan sebelumnya. Proses pengenalan nada adalah proses pencarian hasil jarak terkecil dibandingkan dengan perolehan jarak dari masing-masing nada database. Jika

(47) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 31 jarak terkecil nilainya mendekati salah satu jarak pada nada database, maka nada yang dikenali adalah salah satu nada yang sesuai dengan nada database. Hasil jarak perbandingan tersebut ditampilkan pada jendela program utama. Program tampilan jarak dari ketujuh nada adalah sebagai berikut : %jaraklist set(handles.text18,'String',jaraklist(1)); set(handles.text21,'String',jaraklist(2)); set(handles.text20,'String',jaraklist(3)); set(handles.text19,'String',jaraklist(4)); set(handles.text23,'String',jaraklist(5)); set(handles.text22,'String',jaraklist(6)); set(handles.text24,'String',jaraklist(7)); Berdasarkan pengujian, tombol REKAM telah bekerja dengan baik. Saat tombol REKAM ditekan, program telah merekam, menampilkan grafik rekaman, menampilkan grafik hasil DCT, menampilkan hasil jarak masing-masing nada, dan mengenali nada dengan benar sesuai perancangan. Gambar 4.4 memperlihatkan contoh tampilan setelah tombol REKAM ditekan, dengan nada yang dimainkan adalah nada Deng, pengaturan berupa alpha pada windowing sebesar 0, dan DCT sebesar 256 point. Tabel 4.1. Tampilan Hasil Pengenalan Nada Yang Dikenali No. Nada masukan Nada Yang Dikenali 1 Deng Deng 2 Deung Deung 3 Dung Dung 4 Dang Dang 5 Daeng Daeng 6 Ding Ding 7 Dong Dong Tabel 4.1 memperlihatkan bahwa sistem dapat mengenali seluruh nada dengan benar sesuai dengan nada yang terekam secara real time.

(48) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 32 Gambar 4.4. Tampilan Setelah Penekanan Tombol REKAM 4.1.2. Tombol RESET Tombol RESET digunakan apabila user ingin melakukan proses pengujian kembali. Saat tombol RESET ditekan, semua nilai variabel dikembalikan sama seperti saat inisialisasi program. Jika tombol RESET ditekan, maka program akan menjalankan perintah berikut: axes(handles.axes1); plot(0); axes(handles.axes2); plot(0); set(handles.text1,'String',' '); Berdasarkan pengujian, tombol RESET berjalan dengan baik. Program dapat mengembalikan semua nilai variabel seperti saat inisialisasi program dan user melakukan pengujian kembali dengan menekan tombol RESET. 4.1.3. Tombol SELESAI Tombol “SELESAI” digunakan apabila user ingin mengakhiri program pengenalan nada. Perintah program tombol “SELESAI” sebagai berikut: delete(figure(laste));

(49) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 33 Berdasarkan pengujian, tombol SELESAI berjalan dengan baik. Program dapat berhenti dan keluar dari tampilan utama program GUI MATLAB saat tombol SELESAI ditekan. 4.2 Hasil Pengujian Program Pengenalan Nada Terhadap Tingkat Pengenalan Nada Gamelan Reong Pengujian program pengenalan nada gamelan Reong melalui dua tahapan. Pengujian yang pertama adalah pengujian parameter pengaturan pengenalan nada. Parameter pengaturan pengenalan nada yang dimaksud adalah panjang DCT, nilai alpha dari window Kaiser dan orde fungsi jarak Minkowski. Pengujian paramater tersebut bertujuan untuk mencari nilai dari panjang DCT, alpha dan orde fungsi jarak yang mempunyai tingkat pengenalan terbaik. Pengujian yang kedua adalah pengujian program menggunakan suara masukan dari gamelan lain. Gamelan yang digunakan adalah gamelan Jublag. Gamelan Jublag memiliki 7 bilah nada. Ketujuh nada tersebut akan diuji menggunakan program pengenalan nada Reong. 4.2.1 Pengujian Parameter Pengaturan Pengenalan Nada Gamelan Reong Pengujian bertujuan untuk mengetahui tingkat pengenalan terbaik yang dapat digunakan untuk mengenali setiap nada yang akan dikenali. Pengaturan program pengenalan nada Reong memiliki tiga parameter yang dapat diatur sesuai dengan variasi yang disediakan. Pada pengujian ini akan dilihat bagaimana pengaruh ketiga parameter. Parameter tersebut adalah nilai DCT, alpha dan orde fungsi jarak. Pengujian dilakukan dengan dua metode. Metode pertama adalah secara tidak real time. Metode yang kedua adalah pengujian secara real time. a) Secara tidak real time Proses pengujian secara tidak real time dilakukan menggunakan program perbandingan antara jarak nada referensi dengan nada uji. Nada referensi adalah nada terekam yang disimpan sebagai nada acuan pembanding. Sedangkan nada uji adalah nada terekam yang disimpan sebagai nada untuk menentukan nilai terbaik dari parameter DCT, alpha dan orde fungsi jarak. Proses perekaman nada uji sama halnya dengan proses perekaman nada referensi seperti yang sudah dijelaskan sebelumnya. Merekam sebanyak

(50) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 34 sepuluh kali setiap nada dari ketujuh nada. Untuk lebih jelasnya dapat dilihat pada program di bawah ini : function dbxxciri frame=512%panjang frame blocking alpha=0 z1=zciri('deng_',frame,alpha); z2=zciri('deung',frame,alpha); z3=zciri('dung_',frame,alpha); z4=zciri('dang_',frame,alpha); z5=zciri('daeng',frame,alpha); z6=zciri('ding_',frame,alpha); z7=zciri('dong_',frame,alpha); z=[z1 z2 z3 z4 z5 z6 z7] save xd512a0z %================================================== %INTERNAL FUNCTION %================================================== function z=zciri(nada,frame,alpha) x1=wavread([nada '1.wav']);y1=xciri(x1,frame,alpha); x2=wavread([nada '2.wav']);y2=xciri(x2,frame,alpha); x3=wavread([nada '3.wav']);y3=xciri(x3,frame,alpha); x4=wavread([nada '4.wav']);y4=xciri(x4,frame,alpha); x5=wavread([nada '5.wav']);y5=xciri(x5,frame,alpha); x6=wavread([nada '6.wav']);y6=xciri(x6,frame,alpha); x7=wavread([nada '7.wav']);y7=xciri(x7,frame,alpha); x8=wavread([nada '8.wav']);y8=xciri(x8,frame,alpha); x9=wavread([nada '9.wav']);y9=xciri(x9,frame,alpha); x10=wavread([nada '0.wav']);y10=xciri(x10,frame,alpha); z=(y1+y2+y3+y4+y5+y6+y7+y8+y9+y10)/10; Pada program database di atas, hal pertama yang dilakukan adalah menentukan nilai parameter frame dan alpha. Keseluruhan nada berjumlah 70, jumlah tersebut berasal dari perekaman 10 kali setiap nada untuk nada keseluruhan yang berjumlah 7. Setiap sepuluh nada yang bernada sama dicari nilai reratanya seperti terlihat pada persamaan 3.1 . Kemudian nada tersebut disimpan dengan kode yang sesuai nilai parameter frame dan

(51) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 35 alpha. Hasil variasi parameter yang sudah tersimpan dalam kode tersebut akan dipanggil kembali pada badan program nada uji. Program nada uji adalah sebagai berikut : function pctkenal load xd512a0 ndct=512 alpha=0 n=2 y1=kenal1('deng_',z,ndct,alpha,n); y2=kenal1('deung',z,ndct,alpha,n); y3=kenal1('dung_',z,ndct,alpha,n); y4=kenal1('dang_',z,ndct,alpha,n); y5=kenal1('daeng',z,ndct,alpha,n); y6=kenal1('ding_',z,ndct,alpha,n); y7=kenal1('dong_',z,ndct,alpha,n); ytot=y1+y2+y3+y4+y5+y6+y7; persentase_kenal=(ytot/70)*100 %====================================================== % INTERNAL FUNCTION %====================================================== function y1=kenal1(nada,z,ndct,alpha,n) y1=0; y2=kenal2(nada,[nada 'A.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'B.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'C.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'D.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'E.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'F.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'G.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'H.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'I.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'J.wav'],z,ndct,alpha,n);y1=y1+y2; %====================================================== Program di atas meliputi dua badan program. Program pertama adalah program nada uji, langkah awal adalah penentuan nilai parameter DCT, alpha dan orde n sesuai dengan variasi yang ditentukan. Sama halnya dengan badan program nada referensi jumlah keseluruhan nada adalah 70 yang diperoleh dari perekaman 10 kali nada dari keseluruhan

(52) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 36 tujuh nada. Nada uji disimpan dengan nama yang berbeda dengan nama penyimpanan nada referensi. Hal ini ditujukan agar program tidak mengalami error saat dijalankan pada directory matlab yang sama. Program kedua adalah pemanggilan fungsi yang diberi nama “pctkenal”. Persentase pengenalan diperoleh dari perbandingan jarak terkecil dari nada uji dan nada referensi. Hasil pengenalan berupa nilai persentase. Terlihat hasil pengujian dengan parameter DCT, alpha, dan orde fungsi jarak yang bervariasi (lampiran L21). Diperoleh pengenalan terbaik pada saat nilai alpha 0, panjang DCT 256 dengan nilai orde 1,2, dan 3. Terjadi perubahan secara minor dengan variasi parameter DCT yang diperoleh. Pada perancangan variasi yang digunakan paling besar adalah 128. Karena hingga 128 tidak ditemukan pengenalan terbaik, maka dilanjutkan hingga nilai DCT yang lebih besar. Pada saat nilai DCT sebesar 256 ditemukan pengenalan terbaik yaitu sebesar 100 persen. Dari hasil data di atas dapat ditampilkan sebuah tampilan analisa berupa gambar grafik. Tampilan grafik akan menampilkan gambaran kenaikan atau penurunan kinerja sistem yang diakibatkan pengaruh nilai DCT. Sehingga dapat disimpulkan pengaruh kinerja DCT terhadap sistem pengenalan nada gamelan Reong. Parameter orde yang digunakan adalah orde 2, karena pada orde tersebut menghasilkan pengenalan terbaik. Grafik pengaruh setiap parameter terhadap tingkat pengenalan adalah sebagai berikut : Gambar 4.5. Grafik Pengaruh Panjang DCT Pada Tingkat Pengenalan Gambar 4.5 menunjukkan pengaruh parameter DCT terhadap kinerja sistem. Tingkat pengenalan mencapai nilai 100 persen saat nilai DCT 256. Pengaruh nilai DCT dapat dilihat secara jelas dengan cara membandingkan jarak antara dua nada. Dua nada yang diamati adalah nada dang dan nada daeng. Kedua nada tersebut memiliki jarak frekuensi yang dekat sehingga pengaruh parameter dapat terlihat dengan detail melalui

(53) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 37 pengamatan jarak kedua nada tersebut. Tabel 4.2 memperlihatkan jarak antara nada dang dan daeng menggunakan nilai parameter DCT yang bervariasi. Parameter alpha dan orde fungsi jarak yang digunakan adalah alpha sebesar 0 dan nilai fungsi jarak orde 2 sesuai dengan nilai parameter yang menghasilkan persentase pengenalan terbaik. Tabel 4.2. Jarak antara nada dang dan daeng dengan nilai alpha 0 dan fungsi jarak orde 2 (a) (c) Nilai DCT Jarak 16 1.11 32 1.98 64 5.11 128 7.97 256 11.67 (b) (d) Gambar 4.6. Grafik jarak antara nada dang dan daeng dengan Nilai orde jarak 0, alpha 0 dan panjang DCT (a) 16, (b) 32, (c) 64, (d) 128, dan (e) 256

(54) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 38 (e) Gambar 4.6. (Lanjutan) Grafik jarak antara nada dang dan daeng dengan Nilai orde jarak 0, alpha 0 dan panjang DCT (a) 16, (b) 32, (c) 64, (d) 128, dan (e) 256 Nilai DCT mempengaruhi hasil perhitungan jarak dalam proses fungsi jarak. Semakin tinggi nilai DCT yang digunakan mengakibatkan spektrum frekuensi hasil DCT kedua nada tidak tumpang tindih. Proses tumpang tindih terlihat pada grafik a, b, c, dan d. Jarak antara nada semakin besar saat nilai DCT besar. Hal ini membuat tingkat pengenalan yang lebih baik (akurat). Tabel 4.2 merupakan hasil jarak yang diperoleh melalui perhitungan otomatis oleh program Matlab. Untuk mengetahui hasil jarak tersebut benar maka dilakukan perhitungan secara manual. Perhitungan membandingkan hasil perhitungan Matlab dengan perhitungan secara manual. Tabel 4.3 memperlihatkan hasil perhitungan secara manual dengan menggunakan parameter DCT 16 yang diperoleh dari masukan data gambar 4.6. adalah nada dang dan adalah nada daeng. Hasil perhitungan secara teori diperoleh hasil nilai DCT 16 yang sama besar dengan nilai DCT tabel 4.2. Dapat disimpulkan bahwa penggunaan program hitung jarak pada matlab sudah benar sesuai dengan perhitungan jarak secara manual. Tabel 4.3. Perhitungan Jarak Secara Manual | − | 0,0764 0,1171 0,003832 0,2645 0,1409 0,00461 0,1118 0,174 0,009178 0,2984 0,1593 0,006037

(55) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 39 Tabel 4.3. (Lanjutan) Perhitungan Jarak Secara Manual ∑| ∑| − − 0,1365 0,2042 0,013064 0,405 0,2173 0,012388 0,2158 0,2931 0,033599 0,8989 0,5004 0,130682 2 1,2251 0,233192 1 1,7725 0,454411 0,2078 0,54 0,071182 0,2575 0,1203 0,005655 0,1272 0,1331 6,72E-05 0,113 0,0568 0,001024 0,0345 0,1058 0,004886 0,0335 0,0542 0,000767 | =1,252751 | = 1,119264 Gambar 4.7. Grafik Pengaruh Nilai Alpha Pada Tingkat Pengenalan Melalui gambar 4.7 terlihat pengaruh nilai alpha yang cenderung menurun saat alpha 1000. Semakin kecil nilai alpha maka tingkat pengenalan yang didapat akan semakin baik. Dari hasil grafik terlihat bahwa tingkat pengenalan terbaik didapat pada saat

(56) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 40 orde 2 dengan panjang DCT 256 dan nilai alpha 0. Pengamatan dengan membanding dua nada juga dilakukan untuk melihat pengaruh alpha terhadap kinerja sistem. Tabel 4.4. Jarak nada dang dan daeng dengan nilai DCT 256 dan fungsi jarak orde 2 Alpha Jarak 0 11,12 50 8,43 100 6,78 1000 1,89 Berkebalikan dengan pengaruh nilai DCT, pada grafik pengaruh nilai alpha a,b,c,d dan e dapat dilihat nilai alpha mengakibatkan hasil frekeuensi kedua nada tumpang tindih ketika nilai alpha 50, 100 dan 1000. Jarak antara nada menjadi semakin dekat yang mengakibatkan tingkat pengenalan akan semakin buruk saat nilai alpha membesar. (a) (c) (b) (d) Gambar 4.8. Grafik jarak antara nada dang dan daeng dengan orde 2, panjang DCT 256 dan nilai alpha (a) 0, (b) 50, (c) 100, (d) 1000.

(57) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 41 Selanjutnya akan dilihat pengaruh orde jarak pada kinerja sistem. Melalui hasil grafik gambar 4.8 (a) akan dicari jarak antara kedua nada dang dan daeng menggunakan nilai fungsi jarak orde yang bervariasi. Tabel 4.5 memperlihatkan jarak yang diperoleh saat orde fungsi jarak bernilai 1, 2 dan 3. Parameter menggunakan nilai DCT sebesar 256 dan alpha 0. Tabel 4.5. Jarak antara nada dang dan daeng dengan nilai DCT 256 dan alpha sebesar 0 dan nilai orde jarak yang bervariasi Orde Fungsi Jarak Jarak 1 40,85 2 11,12 3 8,95 Dari hasil pengujian dapat disimpulkan bahwa tingkat pengenalan yang terbaik didapat dari kombinasi nilai alpha 0 dengan DCT sebesar 256 dan nilai orde fungsi jarak sebesar 0, 1, dan 2. Hal ini disebabkan jarak spektrum frekuensi antara nada satu dengan yang lain tidak berdekatan sehingga jarak yang didapat dari fungsi jarak Minkowski sesuai dengan yang diharapkan (akurat). b) Secara real time Pengujian dilakukan menggunakan program pengenalan gamelan Reong secara real time. Gamelan Reong digunakan sebagai input real time. Parameter yang digunakan adalah parameter pengenalan terbaik yaitu dengan orde fungsi jarak 2, nilai DCT 256, dan nilai alpha sebesar 0. Perekaman akan langsung diproses secara real time oleh sistem program pengenalan nada gamelan Reong. Pengujian yang dilakukan sebanyak 5 kali untuk setiap nada. Tabel 4.6. Hasil Pengujian Real time Nada Percobaan ke1 2 3 4 5 Deng V V V V V Deung V V V V V Dung V V V V V Dang V V V V V

(58) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 42 Tabel 4.6. (Lanjutan) Hasil Pengujian Real time Percobaan ke- Nada 1 2 3 4 5 Daeng V V V V V Ding V V V V V Dong V V V V V Ket : V = dikenali Tabel 4.6 menunjukkan data hasil proses pengujian secara real time. Terlihat nada dapat dikenali dengan baik untuk setiap nada yang akan dikenali. Tidak terdapat error ataupun kesalahan program saat proses pengujian. Ketujuh nada gamelan Reong sudah dapat dikenali dengan benar dalam pengujian tersebut. Kesimpulan yang didapat adalah sistem pengenalan nada gamelan Reong secara real time sudah berjalan dengan baik sesuai dengan percancangan. 4.2.2 Pengujian dengan Tiga Variasi Volume Suara Pada pengujian ini dengan berbagai variasi jarak mikrofon dengan gamelan yang diuji (kenong, bonang, gong) dan variasi keras suara dari pemukulan gamelan. Besarnya keras suara pemukulan gamelan diukur menggunakan sound level meter yang ditunjukkan pada Gambar 4.9. Tabel 4.7. Pengujian Jarak Mikrofon dan Volume Suara Jarak Mikrofon (cm) 5 10 15 Keras Suara (dB) Hasil 90 – 100 Dikenali 100 - 120 Dikenali 90 – 100 Dikenali 100 - 120 Dikenali 90 – 100 Tidak Dikenali 100 - 120 Tidak Dikenali Tabel 4.7 menunjukan hasil pengujian variasi jarak mikrofon dan keras suara gamelan. Variasi jarak mikrofon yang digunakan adalah 5 cm, 10 cm, dan 15 cm. Variasi

(59) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 43 keras suara pemukulan menggunakan rentang 90-100 dB dan 100-120 dB. Pada saat menggunakan jarak mikrofon 5 cm dan 10 cm dengan kedua variasi keras suara nada gamelan masih dapat dikenali. Pada jarak mikrofon 15 cm dengan kedua rentang keras suara nada gamelan tidak dapat dikenali. Gambar 4.9. Sound Level Meter 4.2.3 Pengujian dengan Gamelan Lain Pengujian menggunakan gamelan Jublag. Pengujian dilakukan secara real time melalui dua tahapan. Tahap pertama adalah mencari nilai maksimum dari setiap batas fungsi jarak pengenalan. Fungsi jarak yang digunakan adalah Minkowski yang mencari jarak minimum untuk mengenali nada. Pengujian menggunakan parameter orde fungsi jarak 2, alpha 0 dan nilai DCT 256. Langkah – langkah pengujian tahap pertama adalah sebagai berikut : 1. Merekam ketujuh nada gamelan Reong dan setiap nada direkam sebanyak sepuluh kali. Sehingga total keseluruhan perekaman adalah 70. 2. Mencatat jarak minimum yang didapat dari 70 nada. 3. Mencari nilai maksimum dari sepuluh jarak minimum setiap nada. Tabel 4.8. Hasil Nilai Maksimum dari Sepuluh Jarak Minimum Setiap Nada Nada Jarak Deng 7,80 Deung 5,86

(60) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 44 Tabel 4.8. (Lanjutan) Hasil Nilai Maksimum dari Sepuluh Jarak Minimum Setiap Nada Nada Jarak Dung 5,22 Dang 6,63 Daeng 5,51 Ding 5,32 Dong 6,55 Dari tabel di atas, diperoleh jarak maksimum dari sepuluh jarak minimum setiap nada sebesar 7,80. Jarak tersebut digunakan sebagai batas atas sistem pengenalan. Ketika dilakukan pengenalan nada yang mempunyai jarak minimal di atas 7,80 maka sistem pengenalan nada tersebut tidak akan mengenali nada. Program batasan pada GUI Matlab adalah sebagai berikut. jarakmin=find(min(jaraklist)==jaraklist) batasjarak=min(jaraklist); r=7.80; if batasjarak>r nadaout={'tidak dikenali'} set(handles.text1,'String',nadaout); else %deskripsi string nadalist={'DENG','DEUNG','DUNG','DANG','DAENG','DING','DONG'} %penentuan keluaran min nadaout=nadalist(jarakmin) set(handles.text1,'String',nadaout); end Tahapan kedua adalah perekaman secara real time dengan gamelan Jublag. Pengujian dilakukan dengan langkah – langkah sebagai berikut : 1. Mengatur parameter pengaturan pengenalan: a. Alpha pada windowing = 0 b. DCT = 256 c. Orde =2

(61) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 2. 45 Merekam nada yang dikeluarkan oleh gamelan Jublag dan Reong dengan menekan tombol “REKAM”. Jarak gamelan terhadap mikrofon 10cm pada saat perekaman. 3. Membandingkan hasil pengenalan output Jublag dengan Reong. Setelah melakukan percobaan terhadap sistem pengenalan gamelan Reong dengan data yang didapat dari gamelan Jublag maka didapatkan data sebagai berikut: Tabel 4.8. Hasil Pengujian Dengan Gamelan Reong Nada Hasil pengenalan Jarak Deng Deng 4,16 Deung Deung 5,36 Dung Dung 3,40 Dang Dang 5,27 Daeng Daeng 2,85 Ding Ding 4,65 Dong Dong 2,49 Nilai rerata 4,02 Tabel 4.9. Hasil Pengujian dengan Gamelan Jublag Nada Hasil pengenalan Jarak Deng Tidak dikenali 9,38 Deung Tidak dikenali 10,42 Dung Tidak dikenali 11,59 Dang Dang 5,80 Daeng Tidak dikenali 11,90 Ding Tidak dikenali 12,20 Dong Tidak dikenali 12,57 Nilai rerata 10,55

(62) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI 46 Tabel 4.10. Hasil Pengujian dengan Gamelan Kenong Nada Hasil pengenalan Jarak 1 Tidak dikenali 8,1 2 Tidak dikenali 7,9 3 Tidak dikenali 9,11 4 Dang 8,56 5 Tidak dikenali 7,98 6 Tidak dikenali 8,96 7 Tidak dikenali 10,54 Nilai rerata 8,73 Dari percobaan pengujian gamelan Jublag didapatkan nada yang dikenali yaitu nada dang. Hal ini disebabkan karena jarak minimum yang diperoleh memiliki nilai yang sama dengan nilai jarak nada dang pada gamelan Reong. Pada tabel 4.8 batas jarak telah ditentukan pada percobaan langkah pertama sebesar 7,80. Apabila nada dari suatu suara yang direkam memiliki jarak di atas batas tersebut, maka nada akan dikenali sebagai nada gamelan Reong. Keseluruhan pengenalan nada dari 7 nada menghasilkan nilai rerata yang jauh dari nilai rerata pengenalan pada gamelan Reong sebesar 10,55. Pada gamelan kenong seluruh nada tidak dikenali karena nilai jarak yang dihasilkan gamelan tersebut berada di atas batas jarak atas sebesar 7,80. Kesimpulan dari pengujian ini adalah sistem akan mengenali suatu nada gamelan yang memiliki nilai jarak yang mendekati nilai jarak gamelan Reong. Gambar 4.10. Gamelan Jublag

(63) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan Dari percobaan dan pengujian sistem pengenalan nada gamelan Reong disimpulkan sebagai berikut : 1. Implementasi dari sistem pengenalan nada gamelan Reong pada dasarnya dapat bekerja sesuai dengan perancangan. Program pengenalan nada gamelan Reong sudah mampu untuk mengenali nada-nada dasar dari gamelan Reong yaitu deng, deung, dung, dang, dan daeng. 2. Parameter pengenalan nada (panjang DCT dan nilai alpha) mempengaruhi tingkat pengenalan nada. Semakin besar nilai DCT maka tingkat pengenalan nada semakin baik. Semakin kecil nilai alpha maka tingkat pengenalan nada semakin baik. 3. Kombinasi parameter pengenalan dengan panjang DCT 256 titik, alpha 0 jendela kaiser dan fungsi jarak orde 2 menghasilkan tingkat pengenalan maksimal (100%). 5.2 Saran Saran untuk pengembangan sistem pengenalan nada gamelan Reong adalah sebagai berikut : 1. Pengembangan sistem dengan menambahkan fasilitas pemutaran nada yang telah direkam, sehingga user dapat mengetahui nada tersebut sudah terekam dengan baik. 2. Pengembangan penerapan sistem untuk menuliskan sebuah notasi lagu. 47

(64) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI DAFTAR PUSTAKA [1] Pamungkas, Joko, 2012, Pengenalan Nada Saron Pelog Menggunakan Fungsi Jarak Minkowski, Teknik Elektro Sanata Dharma, Yogyakarta. [2] Sklar, Bernard, 1988, Digital Communications Fundamental and Application, New Jersey, PTR Prentice Hall. [3] Hastanto, Sri, 2009, Konsep Pathet Dalam Karawitan Jawa, Program Pasca Sarjana, ISI Press Surakarta. [4] Pande, Made Sukerta, 2001, Jenis-Jenis Tungguhan Karawitan Bali, Direktorat Jendral Kebudayaan Departemen Pendidikan Nasional, Republik Indonesia. [5] Eka, Kartikasari,Yesika, 2006, Pembuatan Software Pembuka Program aplikasi Komputer Berbasis Pengenalan Sinyal Suara, PENS-ITS, Surabaya. [6] Nurlaily, 2009, Pencocokan Pola Suara dengan Algoritma FFT dan Dc. [7] Niamaulidia, 2009 Pembuatan Pengenalan Sinyal Wicara Menggunakan Matlab. [8] http://www.geniusnet.com/wSite/ct?xItem=16664&ctNode=145 diakses 20 April 2013. [9] http://www.realkarachi.com/downloads/books/how-stuff-works/how-sound-cardswork%28www.realkarachi.com%29.pdf diakses pada tanggal 25 April 2013. [10] http://code10.net/index.php?option=com_content&view=article&id=61:articlemink diakses pada tanggal 5 April 2013. [11] http://melodi.ee.washington.edu/courses/ee518/notes/lec17.pdf diakses pada tanggal 25 April 2013. [12] Riyanto, S., Purwanto, A., dan Supardi, 1999, algoritma fast fourier transform (fft) decimation in time (dit) dengan resolusi 1/10 hertz Laboratorium Riset. 48

(65) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI LAMPIRAN

(66) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L1 PERCOBAAN MENCARI SPEKTRUM FREKUENSI DARI NADA GAMELAN REONG DENGAN MATLAB V.7 Tujuan: 1. Mengetahui frekuensi maksimum pada nada gamelan Reong. 2. Mengetahui frekuensi sampling minimum yang dapat digunakan Variabel: 1. Frekuensi sampling yang digunakan 4400Hz, 2200Hz, 1100Hz 2. Durasi perekaman yang digunakan sebesar 2 detik Listing Program fs = 4400;%%fsampling 4400Hz %fs= 2200;%%fsampling 2200Hz %fs = 1100;%%fsampling 1100Hz y = wavrecord (2*fs,fs,'double');%% 2 detik wavwrite(y,fs,'sample2s4400HzDeng.wav'); [y,fs]=wavread('sample2s4400HzDeng.wav'); Y=fft(y,fs); Spek= Y.* conj(Y); f = fs*(0:(1/2*fs))/fs; plot(f,Spek(1:(1/2*fs+1)));grid;%output Hasil Ploting Fs = 4400Hz Nada Deng Nada Deung 16000 18000 14000 16000 12000 X: 396 Y: 1.696e+004 14000 10000 12000 8000 10000 8000 6000 6000 4000 2000 0 X: 331 Y: 3567 X: 1368 Y: 1306 4000 2000 0 400 600 800 1000 1200 1400 X: 1473 Y: 2638 X: 681 Y: 2074 200 400 600 800 1000 1200 1400 1600

(67) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Nada Dung Nada Dang X: 457 Y: 1.437e+004 15000 18000 L2 X: 413 Y: 1.86e+004 16000 14000 10000 12000 10000 8000 5000 6000 X: 1554 Y: 2585 4000 2000 0 500 1000 1500 2000 2500 0 0 500 Nada Daeng 1000 1500 2000 2500 1500 2000 2500 Nada Ding 4 9 x 10 8 16000 X: 502 Y: 8.084e+004 7 X: 565 Y: 1.595e+004 14000 12000 6 10000 5 8000 4 6000 3 4000 2 2000 1 0 0 500 1000 1500 2000 2500 1500 2000 2500 Nada Dong 18000 X: 596 Y: 1.712e+004 16000 14000 12000 10000 8000 6000 4000 2000 0 0 500 1000 0 0 500 1000

(68) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L3 Fs = 2200Hz Nada Deng Nada Deung 2500 8000 7000 X: 331 Y: 2193 2000 X: 396 Y: 7096 6000 5000 1500 4000 1000 3000 2000 500 1000 0 0 200 400 600 800 1000 1200 0 0 200 Nada Dung 400 600 800 1000 1200 800 1000 1200 Nada Dang 6000 X: 457 Y: 4203 4500 4000 5000 X: 413 Y: 5098 3500 4000 3000 2500 3000 2000 2000 1500 1000 1000 500 0 0 200 400 600 800 1000 1200 0 0 200 400 600

(69) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Nada Daeng L4 Nada Ding 4 2.5 x 10 12000 X: 502 Y: 2.02e+004 X: 565 Y: 1.058e+004 10000 2 8000 1.5 6000 1 4000 0.5 0 2000 0 0 200 400 600 800 1000 1200 Nada Dong 4 x 10 2.5 X: 596 Y: 1.966e+004 2 1.5 1 0.5 0 0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200

(70) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L5 Fs = 1100Hz Nada Deng Nada Deung 900 900 800 800 X: 331 Y: 828 700 700 600 600 500 500 400 400 300 300 200 200 100 100 0 X: 331 Y: 828 0 0 100 200 300 400 500 600 0 100 Nada Dung 200 300 400 500 600 Nada Dang 3500 X: 457 Y: 482.6 500 X: 413 Y: 3054 450 3000 400 2500 350 300 2000 250 1500 200 150 1000 100 500 50 0 0 100 200 300 400 500 600 0 0 100 200 300 400 500 600

(71) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Nada Daeng L6 Nada Ding 50 800 X: 502 Y: 788.2 700 X: 535 Y: 48.99 45 40 600 35 500 30 400 25 20 300 15 200 10 100 5 0 100 200 300 400 500 600 0 100 200 Nada Dong 1.4 1.2 X: 505 Y: 1.067 1 0.8 0.6 0.4 X: 50 Y: 0.1336 X: 16 Y: 0.2177 0.2 0 0 100 200 300 400 500 600 Tabel Data Percobaan Nada Deng Deung Dung Dang Daeng Ding Dong Ket: Frekuensi Sampling 4400Hz 2200Hz V X V X V X X X X X X X X X V= terdapat harmonisa X= tidak terdapat harmonisa 1100Hz X X X X X X V 300 400 500 600

(72) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L7 Kesimpulan 1. Frekuensi 2200 tidak terdapat harmonisa. 2. Frekuensi maksimum yang didapat sebesar 596 Hz untuk nada Dong. 3. Frekuensi sampling berguna untuk mencuplik data suara yang diinginkan dan memfilter data suara yang tidak diinginkan dalam hal ini harmonisa yang terjadi dan noise saat perekaman, sehingga frekuensi minimum yang tepat digunakan sebesar 2200 Hz.

(73) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI PERCOBAAN MENCARI DURASI PEREKAMAN UNTUK SISTEM PENGENALAN NADA GAMELAN REONG DENGAN MATLAB V.7 Tujuan: 1. Mendapatkan durasi perekaman yang tepat untuk perekaman. 2. Mengetahui pengaruh durasi perekaman pada data sinyal yang terekam. Variabel: 1. Frekuensi sampling yang digunakan 2200 Hz. 2. Durasi perekaman yang digunakan sebesar 1 detik, 2 detik, dan 3 detik. Listing Program clc fs =2200;%%fsampling2200Hz %y = wavrecord (fs,fs,'double');%% 1detik %wavwrite(y,fs,'sample3s2200HzDong.wav'); %[y,fs]=wavread('sample3s2200HzDong.wav'); %y = wavrecord (2*fs,fs,'double');%% 2 detik %wavwrite(y,fs,'sample2s2200HzDong.wav'); %[y,fs]=wavread('sample2s2200HzDong.wav'); y = wavrecord (3*fs,fs,'double');%% 3detik wavwrite(y,fs,'sample1s2200HzDong.wav'); [y,fs]=wavread('sample1s2200HzDong.wav'); plot(y);grid;%output HasilPloting Durasi Perekaman 1 detik 0.4 0.3 0.2 0.1 0 -0.1 -0.2 -0.3 -0.4 Durasi Perekaman 2 detik 0 500 1000 1500 2000 2500 L8

(74) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L9 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 0 500 1000 1500 2000 2500 3000 3500 4000 4500 Durasi Perekaman 3 detik 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1000 2000 3000 4000 5000 6000 7000 Kesimpulan 1 Sistem membutuhkan waktu untuk mendapatkan data sinyal rekaman. 2 Ketiga durasi di atas menghasilkan jumlah data yang berbeda. 3 Ketiga durasi dapat digunakan sebagai acuan durasi perekaman karena memiliki kecenderungan data turun yang sama. Sehingga secara subyektif penulis memilih durasi perekaman 2 detik.

(75) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L10 LISTING PROGRAM Pengenalan : laste.fig function varargout = laste(varargin) % LASTE M-file for laste.fig % LASTE, by itself, creates a new LASTE or raises the existing % singleton*. % % H = LASTE returns the handle to a new LASTE or the handle to % the existing singleton*. % % LASTE('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in LASTE.M with the given input arguments. % % LASTE('Property','Value',...) creates a new LASTE or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before laste_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to laste_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help laste % Last Modified by GUIDE v2.5 10-Mar-2014 12:30:12 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @laste_OpeningFcn, ... 'gui_OutputFcn', @laste_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before laste is made visible. function laste_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure

(76) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI % eventdata % handles % varargin L11 reserved - to be defined in a future version of MATLAB structure with handles and user data (see GUIDATA) command line arguments to laste (see VARARGIN) % Choose default command line output for laste handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes laste wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = laste_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1 % --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in popupmenu2. % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu2 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu2 % --- Executes during object creation, after setting all properties. function popupmenu2_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

(77) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) sample_len=2; sample_freq=2200; sample_time=(sample_len*sample_freq); x=wavrecord(sample_time, sample_freq); wavwrite(x, sample_freq, 's.wav'); axes(handles.axes1) plot(x); x=wavread('s.wav'); ndct=handles.ndct; alpha=handles.alpha; if (ndct==16) &(alpha==0) load xd16a0; elseif (ndct==16) &(alpha==50) load xd16a50; elseif (ndct==16) &(alpha==100) load xd16a100; elseif (ndct==32) &(alpha==0) load xd32a0; elseif (ndct==32) &(alpha==50) load xd32a50; elseif (ndct==32) &(alpha==100) load xd32a100 elseif (ndct==32) &(alpha==1000) load xd32a1000 elseif (ndct==64) &(alpha==0) load xd64a0 elseif (ndct==64) &(alpha==50) load xd64a50 elseif (ndct==64) &(alpha==100) load xd64a100 elseif (ndct==64) &(alpha==1000) load xd64a1000 elseif (ndct==128) &(alpha==0) load xd128a0 elseif (ndct==128) &(alpha==50) load xd128a50 elseif (ndct==128) &(alpha==100) load xd128a100 elseif (ndct==128) &(alpha==1000) load xd128a1000 elseif (ndct==256) &(alpha==0) load xd256a0; elseif (ndct==256) &(alpha==50) load xd256a50; elseif (ndct==256) &(alpha==100) load xd256a100; elseif (ndct==256) &(alpha==1000) load xd256a1000 y=xciri(x,ndct,alpha); %load xd256a0 axes(handles.axes2) plot(y) n= handles.n for m=1:7 jaraklist(m)=jarakm(y,z(:,m),n); end %jaraklist L12

(78) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L13 set(handles.text18,'String',jaraklist(1)); set(handles.text21,'String',jaraklist(2)); set(handles.text20,'String',jaraklist(3)); set(handles.text19,'String',jaraklist(4)); set(handles.text23,'String',jaraklist(5)); set(handles.text22,'String',jaraklist(6)); set(handles.text24,'String',jaraklist(7)); %handles.jarak1=jaraklist(1); %cari nilai minimum jarakmin=find(min(jaraklist)==jaraklist) batasjarak=min(jaraklist); r=7.80; if batasjarak>r nadaout={'tidak dikenali'} set(handles.text1,'String',nadaout); else %deskripsi string nadalist={'DENG','DEUNG','DUNG','DANG','DAENG','DING','DONG'} %penentuan keluaran min nadaout=nadalist(jarakmin) set(handles.text1,'String',nadaout); end % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) axes(handles.axes1); plot(0); axes(handles.axes2); plot(0); set(handles.text1,'String',' '); % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) delete(figure(laste)); % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -- Executes on selection change in popupmenu3. function popupmenu3_Callback(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu3 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu3 % --- Executes during object creation, after setting all properties. function popupmenu3_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

(79) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L14 set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in popupmenu4. function popupmenu4_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu4,'Value'); switch indeks case 1 alphawin=0; case 2 alphawin=50; case 3 alphawin=100; case 4 alphawin=1000; end handles.alpha=alphawin; guidata(hObject,handles); % hObject handle to popupmenu4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu4 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu4 % --- Executes during object creation, after setting all properties. function popupmenu4_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in popupmenu5. function popupmenu5_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu5,'Value'); switch indeks case 1 frame=16; case 2 frame=32; case 3 frame=64; case 4 frame=128; case 5 frame=256; end handles.ndct=frame; guidata(hObject,handles); % hObject handle to popupmenu5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu5 contents as cell array

(80) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L15 % contents{get(hObject,'Value')} returns selected item from popupmenu5 % --- Executes during object creation, after setting all properties. function popupmenu5_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in listbox1. function listbox1_Callback(hObject, eventdata, handles) % hObject handle to listbox1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns listbox1 contents as cell array % contents{get(hObject,'Value')} returns selected item from listbox1 % --- Executes during object creation, after setting all properties. function listbox1_CreateFcn(hObject, eventdata, handles) % hObject handle to listbox1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: listbox controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in popupmenu6. function popupmenu6_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu6,'Value'); switch indeks case 1 pangkat=1; case 2 pangkat=2; case 3 pangkat=3; end handles.n=pangkat; guidata(hObject,handles); % hObject handle to popupmenu6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu6 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu6 % --- Executes during object creation, after setting all properties. function popupmenu6_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

(81) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L16 % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit3_Callback(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double % --- Executes during object creation, after setting all properties. function edit3_CreateFcn(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit4_Callback(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit4 as text % str2double(get(hObject,'String')) returns contents of edit4 as a double % --- Executes during object creation, after setting all properties. function edit4_CreateFcn(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit5_Callback(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double % --- Executes during object creation, after setting all properties. function edit5_CreateFcn(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

(82) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L17 % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit6_Callback(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit6 as text % str2double(get(hObject,'String')) returns contents of edit6 as a double % --- Executes during object creation, after setting all properties. function edit6_CreateFcn(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit7_Callback(hObject, eventdata, handles) % hObject handle to edit7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit7 as text % str2double(get(hObject,'String')) returns contents of edit7 as a double % --- Executes during object creation, after setting all properties. function edit7_CreateFcn(hObject, eventdata, handles) % hObject handle to edit7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit8_Callback(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit8 as text % str2double(get(hObject,'String')) returns contents of edit8 as a double % --- Executes during object creation, after setting all properties. function edit8_CreateFcn(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

(83) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L18 % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit9_Callback(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit9 as text % str2double(get(hObject,'String')) returns contents of edit9 as a double % --- Executes during object creation, after setting all properties. function edit9_CreateFcn(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes during object creation, after setting all properties. function text18_CreateFcn(hObject, eventdata, handles) % hObject handle to text18 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % --- Executes during object creation, after setting all properties. function text1_CreateFcn(hObject, eventdata, handles) % hObject handle to text1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % --- Executes during object creation, after setting all properties. function text21_CreateFcn(hObject, eventdata, handles) % hObject handle to text21 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % --- Executes during object creation, after setting all properties. function axes2_CreateFcn(hObject, eventdata, handles) % hObject handle to axes2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: place code in OpeningFcn to populate axes2 % --- Executes during object creation, after setting all properties. function axes1_CreateFcn(hObject, eventdata, handles) % hObject handle to axes1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: place code in OpeningFcn to populate axes1

(84) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Program ekstraksi ciri : xciri.m function y=xciri(x,frame,alpha) %proses frame blocking dimulai dari tengah keseluruhan data sample mulai=length(x)/2; xframe=zeros(frame,1); for i=1:frame xframe(i)=x(i+mulai); end %normalisasi xmax=max(abs(xframe)); xnorm=xframe/xmax; %kaizer window framewin=kaiserwin(frame,alpha); %windowing xwin=xnorm.*framewin; %DCT y=abs(dct(xwin)); %y=dct(xwin); y=y(:); Windowing : kaiserwin.m function ka=kaiserwin (N,alpha) %N=frame; beta=0.1102*(alpha-8.7); ka =kaiser (N,beta); Fungsi Jarak : jarakm.m function r=jarakm(p,q,n) %fungsi jarak Minkowski r1=( abs(p-q)).^n; r= (sum(r1)).^(1/n); Database : dbxxciri.m function dbxxciri frame=16%panjang frame blocking alpha=1000 z1=zciri('deng_',frame,alpha); z2=zciri('deung',frame,alpha); z3=zciri('dung_',frame,alpha); z4=zciri('dang_',frame,alpha); L19

(85) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI z5=zciri('daeng',frame,alpha); z6=zciri('ding_',frame,alpha); z7=zciri('dong_',frame,alpha); z=[z1 z2 z3 z4 z5 z6 z7] save xd16a1000z %================================================== %INTERNAL FUNCTION %================================================== function z=zciri(nada,frame,alpha) x1=wavread([nada '1.wav']);y1=xciri(x1,frame,alpha); x2=wavread([nada '2.wav']);y2=xciri(x2,frame,alpha); x3=wavread([nada '3.wav']);y3=xciri(x3,frame,alpha); x4=wavread([nada '4.wav']);y4=xciri(x4,frame,alpha); x5=wavread([nada '5.wav']);y5=xciri(x5,frame,alpha); x6=wavread([nada '6.wav']);y6=xciri(x6,frame,alpha); x7=wavread([nada '7.wav']);y7=xciri(x7,frame,alpha); x8=wavread([nada '8.wav']);y8=xciri(x8,frame,alpha); x9=wavread([nada '9.wav']);y9=xciri(x9,frame,alpha); x10=wavread([nada '0.wav']);y10=xciri(x10,frame,alpha); z=(y1+y2+y3+y4+y5+y6+y7+y8+y9+y10)/10; %=================================================== Persentase pengenalan : pctkenal.m function pctkenal load xd16a1000 ndct=256 alpha=0 n=3 y1=kenal1('deng_',z,ndct,alpha,n); y2=kenal1('deung',z,ndct,alpha,n); y3=kenal1('dung_',z,ndct,alpha,n); y4=kenal1('dang_',z,ndct,alpha,n); y5=kenal1('daeng',z,ndct,alpha,n); y6=kenal1('ding_',z,ndct,alpha,n); y7=kenal1('dong_',z,ndct,alpha,n); ytot=y1+y2+y3+y4+y5+y6+y7; persentase_kenal=(ytot/70)*100 %====================================================== % INTERNAL FUNCTION %====================================================== function y1=kenal1(nada,z,ndct,alpha,n) y1=0; y2=kenal2(nada,[nada 'A.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'B.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'C.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'D.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'E.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'F.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'G.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'H.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'I.wav'],z,ndct,alpha,n);y1=y1+y2; y2=kenal2(nada,[nada 'J.wav'],z,ndct,alpha,n);y1=y1+y2; %====================================================== L20

(86) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI function k=kenal2(nada,nadawav,z,ndct,alpha,n) x=wavread(nadawav); y=xciri(x,ndct,alpha); for m=1:7 jaraklist(m)=jarakm(y,z(:,m),n); end %cari nilai minimum jarakmin=find(min(jaraklist)==jaraklist); %deskripsi string nadalist={'deng_','deung','dung_','dang_','daeng','ding_','dong_'}; %penentuan keluaran nilai min nadaout=nadalist(jarakmin); nada1=nadaout{1}; c=strcmp(nada1,nada); if c==1 k=1; else k=0; end %====================================================== L21

(87) PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI L22 TABEL TINGKAT PENGENALAN Tabel di bawah adalah table tingkat pengenalan nada. Tabel tersebut diperoleh dengan menjalankan program pctkenal. Orde 1 2 3 Alpha DCT 16 32 64 128 256 0 14,28 12,85 18,57 24,28 22,85 50 17,14 21,85 22,42 25,71 21,42 100 21,42 12,85 20 25,71 21,42 1000 18,57 17,14 17,14 17,14 28,57 0 71,42 85,71 88,57 97,14 100 50 61,42 80 87,14 95,71 97,14 100 57,14 74,28 85,71 92,85 95,71 1000 20 41,42 55,71 77,14 82,85 0 57,14 72,85 80 81,42 75,71 50 52,85 61,42 75,71 80 70 100 44,28 55,71 77,14 82,85 72,85 1000 22,85 31,42 44,28 60 70

(88)

Dokumen baru

Tags

Dokumen yang terkait

MONITORING DATA KECEPATAN DAN ARAH ANGIN SECARA REAL TIME MELALUI WEB
3
16
72
ANALISIS PENENTUAN NADA DASAR GAMELAN MENGGUNAKAN METODE KLASTERING FUZZY C-MEANS.
1
5
8
PROGRAM SEDERHANA SISTEM PENGENALAN WAJAH MENGGUNAKAN FUNGSI JARAK
0
7
6
PENGENALAN WAJAH SECARA REAL TIME DENGAN SMARTPHONE ANDROID.
0
3
15
PENGENALAN NOTASI BALOK MENGGUNAKAN PENGENALAN NOTASI BALOK MENGGUNAKAN SEGMENTASI DAN JARINGAN SYARAF TIRUAN UNTUK MENGHASILKAN NADA BERIRAMA BERBASIS IOS.
0
3
11
PENGENALAN REAL TIME ABJAD BAHASA ISYARAT INDONESIA MENGGUNAKAN SEGMENTASI YCBCR
0
0
5
PENGENALAN CIRI GARIS TELAPAK TANGAN MENGGUNAKAN EKSTRAKSI FITUR (GLCM) DAN METODE K-NN
0
0
10
View of MODIFIKASI METODE CAMSHIFT UNTUK PENGENALAN CITRA WAJAH SECARA REAL TIME BERDASARKAN WARNA KULIT WAJAH
0
0
7
PEMODELAN DAN PREDIKSI DAYA OUPUT PHOTOVOLTAIC SECARA REAL TIME BERBASIS MIKROKONTROLER
0
0
10
EKSTRAKSI CIRI DAN PENGENALAN TUTUR VOKAL BAHASA INDONESIA MENGGUNAKAN METODE DISCRETE WAVELET TRANSFORM (DWT) DAN DYNAMIC TIME WARPING (DTW) SECARA REALTIME
0
0
6
PERANCANGAN APLIKASI SISTEM PENGENALAN IRIS MATA MENGGUNAKAN METODE GABOR WAVELET PADA EKSTRAKSI CIRI SKRIPSI PRISILIA LUKAS 081401039
0
0
13
PENGENALAN NADA ALAT MUSIK PIANIKA MENGGUNAKAN METODE KORELASI TUGAS AKHIR - Pengenalan nada alat musik pianika menggunakan metode korelasi - USD Repository
0
1
96
TUGAS AKHIR PENGENALAN HURUF PLAT NOMOR KENDARAAN BERMOTOR RODA DUA SECARA REAL TIME MENGGUNAKAN METODE EKSTRASI CIRI PENGABURAN DAN PERATAAN BLOK
0
0
82
TUGAS AKHIR PENGENALAN NADA GAMELAN KENONG SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK CHEBYSHEV
0
2
81
TUGAS AKHIR PENGENALAN NADA GAMELAN SLENTHEM SECARA REAL TIME MENGGUNAKAN EKSTRAKSI CIRI DCT DAN FUNGSI JARAK EUCLEDIAN
0
1
80
Show more