BAB III PERANCANGAN
3.5. Perancangan Alur Program
Gambar 3.5. Diagram alir sistem pengenalan nada belira
Pada sistem pengenalan nada belira ini terdapat proses-proses yang harus dilakukan. Berawal dari perekaman hingga hasil akhir yang akan ditampilkan dalam bentuk teks nada yang berhasil dikenali. Gambar 3.5. merupakan diagram alir sistem pengenalan nada belira.
3.5.1. Rekam
Semua sampel nada yang diambil dalam proses perekaman harus melalui proses sampling terlebih dahulu sebelum masuk ke tahap selanjutnya. Proses sampling bertujuan untuk merekam nada belira dengan nilai frekuensi sampling yang telah ditentukan yaitu 10000 Hz. Keluaran untuk proses perekaman dibuat dalam format wav. Gambar 3.6. merupakan diagram alir perekaman nada belira. Cara sampling nada adalah sebagai berikut:
1. Menentukan durasi perekaman yaitu 1,5 detik [3]. Durasi perekaman ditentukan berdasarkan lamanya bunyi suatu nada yang dipukul.
Rekam Normalisasi 1 Frame blocking Pemotongan sinyal Normalisasi 2 Keluaran: Teks Fungsi jarak Euclidean Masukan: Suara belira Mulai Ekstraksi ciri row mean DST Selesai Penentuan nada
2. Menentukan frekuensi sampling yaitu 10000 Hz [3]. Frekuensi tertinggi nada belira yang digunakan adalah 2119 Hz untuk nada do tinggi (1>) sehingga memenuhi persamaan (2.1) untuk penggunaan frekuensi sampling sebesar 10000 Hz.
3. Menentukan jumlah sampel dengan mengalikan durasi perekaman dengan frekuensi sampling.
4. Merekam suara masukan dengan perintah wavrecord. 5. Menyimpan hasil rekaman dengan perintah wavwrite. 6. Menampilkan sinyal hasil rekaman dengan perintah plot.
Gambar 3.6. Diagram alir rekam
3.5.2. Normalisasi 1
Tujuan dari proses normalisasi 1 adalah untuk menyetarakan amplitudo dari data sinyal terekam sehingga dapat terbentuk pada skala yang sama agar kuat atau lemahnya suara nada yang dimainkan tidak terlalu berpengaruh terhadap proses pengenalan. Dalam proses normalisasi, nilai-nilai data masukan nada terekam dibagi dengan nilai absolut maksimal dari data itu sendiri sehingga didapatkan sinyal yang ternormalisasi untuk nada terekam. Diagram alir normalisasi 1 ditunjukkan oleh Gambar 3.7.
Sampling Mulai Selesai Keluaran: Plot nada terekam di GUI Masukan: Tekan tombol “Mulai” di GUI
Gambar 3.7. Diagram alir normalisasi 1
3.5.3. Pemotongan Sinyal
Gambar 3.8. Diagram alir pemotongan sinyal
Proses pemotongan sinyal adalah pemotongan sinyal yang tidak digunakan yang terdapat disisi kiri atau bagian awal sinyal (bagian silence dan bagian transisi). Pada pemotongan bagian silence, sinyal suara terekam yang bukan sinyal suara nada belira akan
Pemotongan bagian silence Pemotongan bagian transisi Mulai Keluaran: Hasil pemotongan sinyal Masukan: Hasil normalisasi 1 Selesai Masukan: Nada terekam Keluaran: Hasil normalisasi 1
Data nada terekam dibagi dengan nilai absolut maksimal data
nada terekam Mulai
dipotong atau dihilangkan. Pada pemotongan bagian transisi, sinyal yang terdapat dibagian awal (bagian transisi) setelah pemotongan bagian silence, akan dipotong atau dihilangkan ¼ bagiannya dengan tujuan untuk mendapatkan sinyal yang benar-benar suara nada belira. Setelah melalui dua kali pemotongan sinyal, maka didapatkan keluaran untuk hasil pemotongan sinyal. Diagram alir pemotongan sinyal ditunjukkan oleh Gambar 3.8. Cara pemotongan sinyal bagian silence dan bagian transisi adalah sebagai berikut:
1. Menentukan nilai yang digunakan sebagai batas potong yaitu 0,3 [3]. 2. Mencari bagian sinyal yang > 0,3 dan < (-0,3) (sinyal yang dicari tersebut
diinisialisasi sebagai b1). Sinyal yang tidak termasuk b1 adalah sinyal silence sehingga sinyal tersebut dihilangkan.
3. Pemotongan sinyal transisi dengan mengalikan jumlah data sinyal dengan 0,25 [3]. Hasil perkalian tersebut diinisialisasi sebagai bts.
4. Menghilangkan data sinyal mulai dari indeks 1 sampai dengan indeks bts.
3.5.4. Frame Blocking
Gambar 3.9. Diagram alir frame blocking
Setelah proses pemotongan sinyal, proses selanjutnya adalah frame blocking. Pada proses ini, nilai frame akan dipilih atau ditentukan oleh user. Pilihan nilai frame yang
Mulai Masukan:
Hasil pemotongan
Mengambil data sepanjang nilai frame
Selesai Keluaran: Hasil frame blocking Masukan: Pilih nilai
diberikan yaitu 4096, 1024, 256, 64, dan 16. Pemilihan nilai frame blocking dijadikan untuk menentukan panjang DST yang digunakan. Dalam proses ini, data diambil mulai dari sinyal yang paling kiri dan akan diambil sepanjang nilai frame yang telah dipilih oleh user sehingga dapat memudahkan dalam perhitungan dan analisa sinyal. Data yang diambil dapat mewakili nada terekam. Data yang diambil tersebut merupakan keluaran untuk proses frame blocking. Gambar 3.9. merupakan diagram alir frameblocking.
3.5.5. Normalisasi 2
Gambar 3.10. Diagram alir normalisasi 2
Masukan untuk normalisasi 2 adalah sinyal hasil frame blocking. Pada proses frame blocking, sinyal yang dihasilkan tidak maksimal sehingga dibutuhkan normalisasi untuk menyetarakan amplitudo agar menjadi maksimal. Pada proses normalisasi 2, data masukan hasil frame blocking dibagi dengan nilai absolut maksimal dari data hasil frame blocking tersebut. Hasil pembagiannya merupakan keluaran untuk proses normalisasi 2. Gambar 3.10. merupakan diagram alir normalisasi 2.
3.5.6. Row Mean DST(Discrete Sine Transform)
Masukan untuk row mean DST adalah hasil normalisasi 2. Proses row mean DST meliputi beberapa proses yaitu proses pembentukan matriks yang kemudian matriks tersebut akan diubah menjadi matriks kotak (reshape), dan proses transformasi matriks reshape ke dalam matriks reshape DST 2D dimana pada proses DST 2D ini setiap
Masukan: Hasil frame blocking
Data hasil frame blocking dibagi dengan nilai absolut maksimal
data hasil frame blocking
Mulai
Selesai Keluaran: Hasil normalisasi 2
kolomnya akan dirata-ratakan sehingga hasilnya merupakan keluaran untuk proses row mean DST. Gambar 3.11. merupakan diagram alir rowmean DST.
Gambar 3.11. Diagram alir row mean DST
3.5.7. Fungsi Jarak Euclidean
Gambar 3.12. Diagram alir fungsi jarak Euclidean
Setelah melalui proses row mean DST, proses selanjutnya adalah perhitungan fungsi jarak. Fungsi jarak yang digunakan pada penelitian ini adalah fungsi jarak Euclidean.
Keluaran: Hasil fungsi jarak Euclidean
Perhitungan fungsi
jarak Euclidean Data base
Selesai Masukan:
Hasil
row mean DST Mulai
Pengurutan hasil perhitungan jarak dari terkecil ke terbesar
Selesai Masukan: Hasil normalisasi 2 Kolom matriks Rerata baris Hitung nilai absolut DST 2D Mulai Keluaran: Hasil rowmean DST
Gambar 3.12. merupakan diagram alir fungsi jarak Euclidean. Masukan untuk perhitungan fungsi jarak Euclidean adalah hasil row mean DST. Jarak Euclidean adalah jarak antara dua titik yaitu dari satu titik ke titik yang lain dalam satu ruang. Secara umum, yang dimaksud antara dua titik adalah garis terpendek diantara semua garis yang menghubungkan kedua titik tersebut. Dalam proses ini, fungsi jarak Euclidean berfungsi untuk membandingkan data suara yang baru dengan data suara yang telah direkam atau database. Setelah melalui proses perhitungan fungsi jarak Euclidean, data diurutkan dari yang paling kecil ke paling besar (sort ascending). Hasil pengurutan merupakan keluaran untuk proses fungsi jarak Euclidean.
3.5.8. Penentuan Nada
Proses penentuan nada adalah proses terakhir dari seluruh rangkaian proses pengenalan nada belira. Masukan untuk proses penentuan nada berasal dari hasil fungsi jarak Euclidean yaitu data yang telah diurutkan dari yang paling kecil ke paling besar. Setelah data diurutkan, penentuan nada dilakukan dengan memilih kelas yang memiliki nilai jarak paling kecil. Setelah mengetahui kelas yang memiliki nilai jarak paling kecil, maka hasil tersebut menjadi keluaran untuk proses penentuan nada yang berhasil dikenali. Hasil penentuan nada akan ditampilkan dalam bentuk teks. Gambar 3.13. merupakan diagram alir penentuan nada.
Gambar 3.13. Diagram alir penentuan nada
Penentuan nada dengan memilih kelas yang memiliki nilai jarak paling
kecil Selesai Masukan: Hasil fungsi jarak Euclidean Mulai Keluaran: Nilai jarak terkecil dan
teks hasil pengenalan nada di GUI