NASKAH PUBLIKASI
SISTEM PENGENALAN SUARA BERDASARKAN FORMANT SUARA MANUSIA DENGAN METODE AUTOCORELATION
Disusun sebagai salah satu syarat menyelesaikan Jenjang Strata I Jurusan Teknik Elektro Fakultas Teknik Universitas Muhammadiyah Surakarta
Diajukan Oleh: ARIS WIJAYA D 400 090 024
FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO UNIVERSITAS MUHAMMADIYAH SURAKARTA 2014
SISTEM PENGENALAN SUARA BERDASARKAN FORMANT SUARA MANUSIA DENGAN METODE AUTOCORELATION
ARIS WIJAYA FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO UNIVERSITAS MUHAMMADIYAH SURAKARTA E-mail :
[email protected]
ABSTRAKSI
Suara manusia merupakan media berkomunikasi yang efektif dan paling sering digunakan selain bahasa isyarat dan tulisan. Suara manusia pada dasarnya memiliki kekhasan sendiri, sehingga dapat dikatakan suara manusia satu dengan yang lain berbeda. Ada semacam karakteristik yang membentuk kekhasan suara manusia yaitu pitch, Formant dan fomant bandwith. Ada beberapa tahap yang dilakukan didalam penelitan pengenalan suara ini. Tahap pertama adalah perekaman suara yang akan dijadikan data training dan data uji. Tahap kedua hasil suara yang telah direkam kemudian diperbaiki kualitas suaranya dengan memotong bagian yang tidak diperlukan dari rekaman suara, seperti noise, dan durasi yang terlalu panjang. Tahap ketiga lebih kearah mendapatkan data vektor ciri suara yang akan dijadikan data uji dan data training. Tahap keempat Pengujian pengenalan suara manusia dengan menggunakan metode pencocokan autocorelation dan euclidean distance memiliki hasil yang tidak begitu jauh berbeda. Akan tetapi dalampenelitian ini metode autocorrelation menunjukkan hasil yang lebih baik dibandingkan menggunakan Euclidean Distance. Perbedaan ini hanya terpaut beberapa persen saja metode autocorrelation tingkat keakurasian mencapai diatas 35% dan metode euclidean distance diatas 30% Pengenalan suara secara realtimemenunjukkan hasil yang bagus. Tingkat keberhasilan pada rentang waktu pagi diatas 70%. Pengujian siang hari keberhasilan diatas 70%. Pada pengujian sore hari tingkat keberhasilan diatas 80% namun ada penurunan kualitas dari salah satu volunteer. Ketika diuji dengan masukan yang disengaja salah, masih menunjukkan hasil yang diharapkan.Dengan tingkat keberhasilan diatas 20%. Kata Kunci : Suara, Voice Recognition,Pengenalan suara, Matlab. I.
PENDAHULUAN
1.1. Latar Belakang Masalah Suara yang dikeluarkan manusia merupakan salah satu media yang utama untuk berkomunikasi
dengan sesama manusia selain media komunikasi yang lain seperti isyarat dan tulisan. Suara yang dihasilkan oleh setiap orang pada dasarnya adalah unik yaitu khas untuk setiap individu walaupun terkadang
seseorang dapat menirukan suara orang lain relatif mendekati sama walaupun tidak identik. Kekhasan suara orang di antaranya terletak pada keras atau lemahnya suara saat orang berbicara pada keadaan normal, cara pengucapan kata, intonasi, irama bicara, logat dll. Dengan keadaan ini suara dapat dijadikan pembeda yaitu apabila orang sudah pernah mengenal seseorang cukup lama dan hafal dengan suaranya maka walaupun matanya ditutup atau berkomunikasi dari jarak jauh maka seseorang tersebut akan bisa mengetahui dengan siapa dia berbicara. suara belum mendapatkan perhatian yang cukup signifikan untuk digunakan dalam keamanan atau identifikasi. Masih sangat jarang atau bahkan belum ada penggunaan sistem absensi berbasis suara. Dengan semakin berkembangnya teknologi, maka suara dapat pula digunakan menjadi salah satu alat untuk person indentification (identifikasi seseorang) karena suara manusia khas untuk tiaptiap orang. Sebagai alat identifikasi, ciri suara perindividu harus dikenali dengan baik. Pemanfaatan perangkat lunak untuk voice recognition (pengenalan suara) adalah suatu aplikasi yang dapat digunakan untuk mengenali ciri kekhasan suara manusia dan sebagai alat untuk berinteraksi dengan komputer tanpa harus melakukan proses sentuhan pada perangkat keras. Pemberian perintah dan komunikasi dengan komputer cukup dengan perintah wicara/suara. Penelitian sebelumya yang berhubungan dengan topic pembahasan dan dijadikan bahan untuk melakukan pengembangan penelitian ini adalah sebagai berikut: a) Jeri Riyanto (2011) mahasiswa UNIKOM Bandung. Yang melakukan penelitian yang berjudul
“Perangkat Lunak Pengenalan Suara (Voice Recognition) Untuk Absensi Karyawan Dengan Menggunakan Metode Dynamic Time Warping (DTW).” Pada penelitian ini penulis meneliti tentang proses dan langkah-langkah ekstraksi ciri suara. b) Pradifta J dan Anggy, mahasiswa Pasca sarjana Universitas Indonesia. Dengan penelitian “Pembuatan Program Simulasi Speech Recognition System ”. pada penelitian penulis lebih berfokus pada alur program yang digunakan untuk pengenalan. 1.2. Rumusan Masalah Masalah yang ingin penulis pecahkan pada tugas akhir ini adalah bagaimana merancang dan membuat sebuah system pengenalan suara yang mampu mengidentifikasi suara orang tertentu, serta membandingkan dua buah metode pengenalan antara Autocorrelation dan Euclidean distance manakah yang paling bak digunakan untuk proses pengenalan. 1.3. Batasan Masalah Batasan masalah pada penelitian ini adalah sebagai berikut : a) Perangkat Simulasi hanya akan mengenali sampel data suara yang sudah disimpan di folder penyimpanan sebelumnya. b) Sistem secara keseluruhan dibuat dalam bentuk prototype, data-data suara orang diambil dari volunteer (relawan) c) Pengambilan sampel dibatasi dengan usia dan jenis kelamin dan sampel suara diambil sebanyak 1 kali. d) Sampel suara yang direkam berupa nama, dengan durasi
sampai 1-33 detik, format rekaman suara disimpan pada format .wav. e) Pada saat pengambilan sampel suara, sampel suara harus dalam keadaan sehat dan tidak ada gangguan suara. f) Perangkat keras untuk pengambilan sampel berupa satu set komputer dan microphone g) Perancangan simulasi pengenalan suara menggunakan Matlab R2013A h) Pengujian secara offline bertujuan untuk mendapatkan vector ciri suara manusia i) Vektor ciri suara manusia digunakan sebagai data pengujian offline agar didapatkan hasil perbandingan menggunakan nakan dua buah metode yang paling relevan digunakan untuk pengenalan suara 1.4. Tujuan Penelitian Tujuan dari penelitian ini adalah untuk mencoba menggali potensi tentang alat identifikasi orang dengan konsep pengenalan suara. Secara spesifik tujuan penelitian adalah : a) Merancang dan mengimplementasikan konsep pengenalan suara ke dalam sebuah sistem pengenalan suara . b) Mengetahui tingkat akurasi pengenalan suara pada sistem simulasi pengenalan suara yang dibuat. 1.5. Manfaat Penelitian Manfaat yang diharapkan dari penelitian ini adalah: a) Mencoba menggali potensi suara manusia dalam bidang teknologi untuk mempermudah aktivitas manusia.
b) Sistem pengenalan suara ini mampu menjadi alternatif untuk penelitian selanjutnya. c) Setelah penelitian ini selesai diharapkan rapkan kedepannya akan ada mahasiswa yang mampu mengembangkan simulasi pengenalan suara ini m menjadi bentuk aplikasi yang nyata nyata. II.
Tinjauan Pustaka Menurut Fadlisyah, Bustami, dan M.Ikhwanus (2013) dalam buku Pengolahan Suara uara “suara yang keluar dari mulut manusia akan memuat berbagai informasi seperti identitas pengucap, jenis gender, dialek, ekspresi, dan lain lain-lain”. Suara manusia mempunyai karakteristik yang berbeda-beda. beda. Karakteristik suara manusia dipengaruhi oleh pitch, formant, dan formant bandwith bandwith. Pitch merupakan nada dasar suara manusia. Tinggi rendahnya pitch dipengaruhi oleh pita suara, usia dan jenis kelamin. Formant berpengaruh pada pembentukan suara vokal pada manusia. Formant bandwith berpengaruh untuk sebagai pembeda suara vokal manusia sa satu dengan yang lainnya apabila ada lebih dari satu orang yang berbicara. 2.1. Landasan Teori a) Pengenalan Suara Pengenalan suara adalah suatu proses untuk mengenali dan kemudian mengidentifikasi seseorang melalui suaranya, jadi dalam hal ini pengenalan suara mengidentifikasi siapa yang berbicara. b) Diagram blok Ektraksi ciri
Gambar 1. Diagram Blok Ekstraksi Ciri Suara
daerah frekuensi diatas 2000 Hz.
Proses perekaman dan sampling Proses perekaman adalah suatu proses mendapatkan file suara manusia yang kemudian dapat diputar dan disimpan kedalam tipe file berkestensi *.wav . Proses perekaman dapat dilakukan dengan cara perekaman suara manusia secara langsung dengan media Microphone pada PC dalam hal ini berhubungan dengan sound card. Suara yang dikeluarkan oleh manusia merupakan bentuk sinyak sinyal waktu kontinyu (sinyal analog) oleh karena itu harus dikonversi menjadi sinyal waktu diskrit (sinyal digital). Dikarenakan sinyal suara yang dikeluarkan oleh manusia merupakan sinyal waktu kontinyu maka agar bisa diproses secara komputasi maka sinyal waktu kontiyu harus dirubah kedalam bentuk sinyal diskrit dan dilanjutkan dengan proses digitalisasi(Proses Sampling). Jadi proses sampling adalah proses dimana mendapatkan bentuk sinyal waktu diskrit dengan menyampel sinyal waktu kontinyu. d) Pre-Emphasis Tujuan dari pemfilteran ini adalah untuk mendapatkan bentuk spectral frekuensi sinyal wicara yang lebih halus. Dimana bentuk spectral yang relatif bernilai tinggi untuk daerah rendah dan cenderung turun secara tajam untuk
c)
y(n) = x(n) – ax(n−1) dimana y(n) sinyal hasil pre-emphasis, x(n) sinyal sebelum pre-emphasis dan a merupakan konstanta filter pre-emhasis, biasanya bernilai 0.9 < a < 1.0. e) Frame Blocking Frame blocking merupakan pembagian sinyal suara menjadi beberapa frame dan satu frame terdiri dari beberapa sampel. Pengambilan sampel tersebut tergantung dari tiap detik suara akan disampel dan berapa besar frekuensi samplingnya. Proses frame blocking, yaitu melakukan blok terhadap sinyal-sinyal menjadi frameframe N sampel dengan frameframe berdekatan dengan spasi M (M < N). Berikut adalah representasi fungsi-frame dari Frame Blocking. x(N) = y(M+N) Dimana : x(N) = sinyal sesudah diframe blocking, y = sinyal pre-emphasis, M =Overlapping frame dan N = 1,2,3… f) Windowing Proses frame blocking dapat menyebabkan terjadinya kebocoran spectral(spectral leakage) atau aliasing. Efek ini dapat terjadi karena rendahnya jumlah sampling rate, ataupun karena proses frame blocking itu sendiri menyebabkan sinyal menjadi discontinue. Efek sinyal yang discontinue dapat
menyebabkan kesalahan data pada proses fourier transform.
Untuk mengurangi kebocoran spectral dan sinyal yang discontinue maka di perlukanlah proses windowing. Window yang dipakai adalah window Hamming g) Formant Menurut Fant (1960) formant didefinisikan sebagai daerah puncak-puncak dari spektrum daya suara. Secara fisis formant merupakan frekuensi-frekuensi resonansi dari filter, yaitu vocal tract (articulator) yang meneruskan dan memfilter bunyi keluaran (output) berupa kata-kata yang memiliki makna. Secara umum, frekuensi-frekuensi formant bersifat tidak terbatas namun, untuk mengidentifikasi seseorang paling tidak ada 3 (tiga) formant yang dianalisa yaitu, Formant 1 (F1), Formant 2 dan Formant 3 (F3). Formant 1 (F1) dan Formant 2 berkaitan dengan posisi lidah ketika berbicara. Perbedaan antara Formant 1 dengan Formant 2 adalah posisi lidah terhadap langitlangit rongga mulut, sedangkan Formant 2 posisi lidah berada didepan/dibelakang saat berbicara. Formant 3 (F3) berpengaruh pada warna (Timbre) suara yang dihasilkan.
Gambar 2. Formant dan Formant Bandwitdh
III.
Metode Penelitian Penelitian dan perancangan system dilakukan di rumah dan dilaboratorium kampus.
3.1. Peralatan Utama dan Pendukung a) Analisis Kebutuhan Software Perangkat keras yang digunakan untuk mebuat program ini yaitu berupa : Notebook Vaio Spesifikasinya sebagai berikut :
Prosesor Intel (R) Core(TM) i5-4200U @1.60GHz
Memory RAM 4 GB
Hard disk 320 GB
Microphone Philips Sedangkan perangkat lunak yang digunakan untuk membuat program ini yaitu:
MATLAB (R2013a)
8.10.604
Menggunakan sistem operasi Windows 8.1
Microsoft Office Word 2007
3.2. Perancangan Sistem Perancangan sistem secara umum dilakukan dengan maksud untuk memberikan gambaran kepada pengguna tentang sistem yang akan diusulkan, yaitu program pengenalan suara menggunakan formant manusia dengan pengujian secara
realtime dan offline. Algoritma dari program pengenalan suara ini adalah sebagai berikut :
Simulasi ini bertujuan untuk memberikan pembelajaran yang terjadi saat proses ektraksi ciri berlangsung.
Gambar 3 Algoritma pengenalan suara
a) Fase Training adalah fase perekaman suara sebagai data uji pada penelitian ini b) Uji Offline Dari uji offline ini desain visual system untuk uji tidak ada tampilan khusus karena berupa kode matlab. Untuk mengetahui tingkat kecocokan file uji dengan file data training, dan untuk menguji metode mana yang paling baik digunakan untuk proses pengenalan
Gambar 5 . Simulasi pengenalan suara Realtime Keterangan Gambar a)
b) c) d)
e)
c) Uji Realtime Uji realtime menggunakan desain GUI yang didesain atraktif dan mudah digunakan.
f) 3.3. Perancangan Tampilan Program Pengenalan Suara g)
h)
Gambar 4. Uji simulasi ekstraksi cirri
IV.
“A”Terdapat Static Text untuk memberikan informasi nama simulasi. “B”Komponen Push Button / tombol exit berfungsi Untuk “B”Tombol REC berfungsi untuk merekam sampel suara “B”Tombol Hear berfungsi untuk memutar kembali suara yang telah disimpan “B”Tombol Get Picture merupakan tombol untuk mengambil foto di dalam folder yang telah disediakan. “B”Tombol Masukkan Suara adalah tombol untuk pencocokan Suara “B”Tombol Reset adalah untuk mereset program Komponen Axis dengan tag axes . Untuk menampilkan gambar yang sudah diambil dari file computer. “D”Komponen Axis untuk menampilkan gambar logo Universitas Muhammadiyah Surakarta
HASIL DAN PEMBAHASAN
Terdapat dua pengujian sistem pengenalan suara pada penelitian ini, pengujian dilakukan secara offline dan online yang telah dirancang dan dibuat. Uji coba dilakukan untuk mengetahui apakah sistem pengenalan suara dapat berjalan sebagaimana mestinya dengan lingkungan uji coba yang telah ditentukan serta dilakukan sesuai dengan skenario uji coba. 4.1. Hasil Pengujian Offline
dengan baik. Berbeda dengan metode Euclidean distance yang gagal mengenali 1(satu) file suara AN dan NH dengan tingkat kecocokan 75% dan 30%. Persamaan nya dengan menggunakan dua metode keseluruhan file mampu dikenali dengan baik. File gagal dikenali bisa disebabkan oleh kualitas rekaman, kualitas file, maupun kualitas suara yang direkam. 4.2. Hasil Pengujian Realtime a) Pengujian sistem pengenalan suara waktu pagi hari jam 08.00 – 10.00
Gambar 6 grafik keberhasilan pengujian pengenalan suara dengan metode Corelation Gambar 8 Grafik Pengujian sistem pengenalan suara waktu pagi hari jam 08.00 – 10.00
Gambar 7 grafik keberhasilan pengujian pengenalan suara dengan metode Euclidean distance
Kesimpulan dari penggunaan dua buah metode tersebut, metode Autocorelation mampu mengenali hampir keseluruhan file suara
Pada pengujian pagi hari tingkat keberhasilan diatas 70%. Pengujian mampu berjalan dengan lancar. Perincian keberhasilan pengujian program untuk Aris Wijaya 90%, Aulia Annassai 90%, Rahajeng 100%, Qoid dan Rizky 80% serta Ridho 70%. b) Pengujian sistem pengenalan suara waktu pagi hari jam 12.00 – 14.00 kondisi peserta agak lelah dikarenakan pengujian
sebelumnya yang cukup memakan waktu. Hasil pengujian pada waktu siang hari tingkat keberhasilan pengenalan suara diatas 70% dengan perincian keberhasilan pengujian program untuk Aris Wijaya 85%, Aulia Annassai 100%, Rahajeng 80%, Qoid 70%, Rizky dan Ridho 90%.
Gambar 9 Grafik Pengujian sistem pengenalan suara waktu pagi hari jam 12.00 – 14.00
c) Pengujian sistem pengenalan suara waktu pagi hari jam 16.00 – 17.00 Pengujian pada waktu sore hari mengalami penurunan tingkat keberhasilan yaitu dengan minimal keberhasilan 50% terjadi pada saudara Ridho. Untuk yang lainnya tingkat keberhasilan diatas 80%. Dengan perincian sebagai berikut Aris Wijaya 85%, Aulia Annasai 90%, Rahajeng 85%, Qoid 80%, Rizky 95%, dan Ridho 50%.
Gambar 10 Grafik Pengujian sistem pengenalan suara waktu pagi hari jam 16.00 – 17.00
d) Pengujian sistem pengenalan suara waktu pagi hari jam 16.00 – 17.00 Uji coba pengenalan suara dicoba dengan mencoba masukan yang disengaja salah untuk mendapatkan data keakuratan program. Uji coba dimulai dengan mencoba memasukkan nama yang bukan miliknya sebanyak 20 kali. Hasil yang didapat walau mengucapkan yang bukan nama miliknya program tetap mengenali orang yang berbicara sesuai dengan nama aslinya. Misal salah satu volunter bernama Annas mencoba menginputkan dengan mencoba inputan dengan nama Aris, hasilnya program tetap mengenali Annas baik foto dan suaranya. Kecuali dalam kondisi tertentu beberapa kali program keluar ouput yang berbeda kadang foto yang keliru namun suara benar maupun sebaliknya. Pengujian dicoba pula dengan orang yang tidak direkam suaranya dan kemudian mencoba menginputkan namanya ataupun mencoba menginputkan nama orang yang berada di list rekaman program, hasilnya program mengenali suara dengan random. Dibawah ini merupakan grafik hasil pengujian dengan mencoba memasukkan data suara yang disengaja salah.
b) Untuk memperbaiki kualitas suara yang diperlukan untuk pengenalan suara maka perlu dihilangkan bagian yang menggangu, seperti suara pra rekaman, suara berisik setelah rekaman dengan cara memotong suara dan diambil yang diperlukan saja. c) Setiap file suara mempunyai nilai ciri yang berbeda-beda, nilai ciri tersebut dinamakan vector ciri. Vektor ciri suara manusia dapat diekstrak dari bentuk PSD gelombang suara. Gambar 11 Grafik Pengujian
sistem pengenalan suara dengan masukan yang disengaja salah Hasil pengujian ini menunjukkan bahwa ketika salah satu volunter mengucapkan nama volunter yang lain masih dikenali sebagai suaranya sendiri. Namun beberapa kali mengalami kesalahan dalam pengenalan namun prosentasi kesalahan tidak lebih dari 20%. Untuk volunter Qoid dan Ridho dalam uji coba ini program tetap mampu mengenali suara Qoid dan Ridho walau masukan disengaja salah. V.
KESIMPULAN DAN SARAN
5.1. Kesimpulan Setelah melakukan percobaan dan menganalisa dari bab sebelumnya, maka dapat disimpulkan antara lain : a) Merekam suara dengan microphone mempengaruhi tingkat pengenalan suara. Pada microphone portable suara yang direkam lebih halus disebabkan oleh noise yang sedikit. Memakai soundcard onboard laptop pun juga demikian suara jelas, keras namun noise sedikit lebih banyak.
d) Pada pengujian pengenalan suara secara offline menggunakan dua buah metode yang berbeda. Dengan membandingkan vector ciri data uji dengan vector ciri data training. Dengan kesimpulan metode autokorelasi menunjukkan hasil maximal dalam pengenalan suara. e) Pegujian pengenalan suara secara realtime diperlukan untuk menguji program pengenalan suara secara langsung. Berbeda dengan pengujian secara offline inputan suara masukan dilakukan secara spontan. Disinilah keakuratan program diuji. Hasil yang didapat program mampu mengenali suara inputan dengan baik. 5.2. Saran a) Pengembangan metode pengenalan suara lebih lanjut untuk sistem ini masih bisa dilakukan dengan menggunakan penambahan ekstraksi ciri lain selain menggunakan formant. b) Riset lebih lanjut tentang pengenalan suara berupa dasardasar pengolahan sinyal harus dipahami lebih dalam lagi, serta pemahaman – pemahaman dasar
yang mendukung tentang pengenalan suara dan pengolahan sinyal. c) Dilakukannya penelitian pengolahan suara dengan merekam suara yang khas dengan pengucapan yang lebih beragam dan bervariatif. d) Penggunaan data training dan data uji dengan kalimat yang didalamnya terdapat beragam bunyi dan aksen bicara yang beragam, terdapat dengungan pada kata yang digunakan untuk pengenalan.
DAFTAR PUSTAKA
Riyanto, Jeri. 2011. Perangkat Lunak Pengenalan Suara (Voice Recognition) Untuk Absensi Karyawan Dengan Menggunakan Metode Dynamic Time Warping (DTW). Fakultas Teknik dan Ilmu Komputer, UNIKOM Bandung. Gorasinatra, Edward. 2009. Perancangan Program Aplikasi Pengenalan Suara Pada Windows Menggunakan Fourier Method, Skripsi Program Ganda Teknik Informatika-Matematika, Binus University Pradifta J, Anggy. 2012. Pembuatan Program Simulasi Speech Recognition System, Laporan Tugas Mata Kuliah Digital Signal Processing, Program Pasca Sarjana Departemen Teknik Elektro Universitas Indonesia. Ellis, E.Darren.2001. Design of a Speaker Recognition Code Using MATLAB, Project Design of a Speaker Recognition Code Using MATLAB, Department of Computer and Electrical
Engineering Tennessee.
University
of