Implementasi Algoritma Least Mean Square Dengan Adaptive
Filter Untuk Proses Penghapusan Derau Sinyal Suara
KOMPETENSI KOMPUTASI
SKRIPSI
HALAMAN JUDUL
Anak Agung Rani Pradnyadari
NIM. 0908605019
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS UDAYANA
BUKIT JIMBARAN
2014
ii
KOMPETENSI
KOMPUTASI
Lembar Pengesahan
[SKRIPSI]
Sebagai syarat untuk memperoleh gelar Sarjana Komputer pada
Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Udayana
Tulisan ini merupakan hasil penelitian yang belum pernah dipublikasikan
Anak Agung Rani Pradnyadari
NIM. 0908605019
Pembimbing I Pembimbing II
I Made Widiartha, S.Si, M.Kom Ngurah Agus Sanjaya ER, S.Kom, M.Kom
NIP. 19850315 2010121 007 NIP. 197803212005011001
iv
Judul :Implementasi Algoritma Least Mean Square ( LMS ) Dengan Adaptive
Filter Untuk Proses Denoising Sinyal Suara Nama : Anak Agung Rani Pradnyadari
NIM : 0908605019
Pembimbing I :I Made Widiartha, S.Si., M.Kom.
Pembimbing II :Ngurah Agus Sanjaya ER, S.Kom, M.Kom
ABSTRAK
Seiring dengan berkembangnya teknologi, sudah banyak tercipta
aplikasi–aplikasi yang menggunakan data sinyal suara sebagai data
masukkannya.Seperti sistem keamanan rumah yang menggunakan suara
pemiliknya sebagai kata kunci, dan berbagai macam sistem pengenalan suara
yaitu pengenalan jenis kelamin, pengenalan suara, serta pengenalan pemilik
suara tersebut. Namun dalam penelitiannya masih terdapat kekurangan dimana
masih terdapat derau pada sinyal suara tersebut.Gangguan derau ini sangat
mengganggu dan dapat mempengaruhi nilai hasil keluaran dari sistem yang
dibuat.Gangguan ini dapat timbul dari suara bising lingkungan sekitar atau
suara – suara yang tidak diinginkan ada pada sinyal suara masukkan sistem
sehingga informasi yang diterima kurang jelas.Untuk mengatasi adanya derau
pada sinyal suara ini peneliti melakukan penelitian algoritma yang dapat
melakukan penekanan derau. Salah satu algoritma yang sering digunakan untuk
melalukan proses penekanan derau ini adalah algoritma Least Mean Square.
Algoritma ini merupakan algoritma yang paling sederhana dan paling sering
digunakan untuk proses penekanan derau. Namun dalam penelitian kali ini akan
ditambahkan fungsi Adaptive filter untuk meningkatkan kualitas dari hasil suara
yang dikeluarkan oleh sistem. Dari penelitian yang dilakukan dengan
mengkobinasikan beberapa nilai variable ordo filter dan langkah didapatkan
hasil nilai MSE dan SNR yang digunakan untuk mengetahui kombinasi mana
yang akan digunakan sistem untuk mendapatkan hasil yang diinginkan.Dari hasil
uji terhadap sistem diperoleh nilai MSE yang terbesar adalah 0,00472 dan nilai
MSE yang terendah adalah 0,00437.Kombinasi nilai yang menghasilkan nilai
MSE terndah adalah ordo filter = 10 dan langkah = 0.1 dimana nilai MSE yang
dihasilkan adalah 0.00437 dan nilai SNR adalah 15.9297dB dengan nilai SNR
awal adalah 16,3665dB.
Kata Kunci: LMS, FIR, Noise, Speech Signal, Adaptive filter, Denoising.
v
Title : Implementation of Least Mean Square (LMS) Algorithm with
adaptive Filter for Noise Signal and Its Denoising Process
Name : Anak Agung Rani Pradnyadari
Student Number : 0908605019
Main Supervisor : I Made Widiartha, S.Si., M.Kom.
Co-Supervisor : Ngurah Sanjaya ER Agus, S. Kom, M. Kom
ABSTRACT
As the technology advances, many applications that use voice signal data
as the input data have been created such as a home security system that uses the
owner’s voice as a keyword, and a wide variety of noise recognition systems,
namely the recognition of gender, voice recognition, and the recognition of the
voice of the owner. But in the researches there are still shortcomings where there
is noise on the sound signal. Noise interference is very annoying and can affect
the value of the output of the system made. These interferences can arise from the
surrounding noises or unwanted noises that exist in the input voice signals of the
system so that the information received is less clear. To overcome the noise on the
sound signal, the researcher made an algorithm study that could perform noise
suppression. One of the algorithms often used to perform a noise suppression
process is the Least Mean Square algorithm. This algorithm is an algorithm that is
the simplest and most commonly used for noise suppression. However, the
present study would add Adaptive filter function to improve the sound quality of
the results issued by the system. This study was conducted by combining a
number of variable values of order filters and steps which obtained the results of
MSE and SNR values used to determine which combinations to use in the system
to get the desired results. The test results of the system obtained the largest MSE
value which was 0.00472 and the lowest MSE value was 0.00437. The value
combination that produced the lowest MSE value was an order filter = 10 and step
= 0.1 wherein the resulting MSE value was 0.00437 and the value of SNR was
15.9297 dB and initial SNR value was 16.3665 dB.
Keywords: LMS, FIR, Noise, Speech Signal, Adaptive filter, Denoising
vi
KATA PENGANTAR
Proposal penelitian dengan Implementasi Algoritma Least Mean Square (
LMS ) Dengan Adaptive Filter Untuk Proses Denoising Sinyal Suara ini disusun
dalam rangkaian kegiatan pelaksanaan Tugas Akhir di Jurusan Ilmu Komputer
FMIPA UNUD. Proposal ini disusun dengan harapan dapat menjadi pedoman
dalam melaksanakan penelitian di atas
Sehubungan dengan telah terselesaikannya proposal ini, maka diucapkan
terimakasih dan penghargaan kepada berbagai pihak yang telah membantu
pengusul, antara lain
1. Bapak Agus I Made Widiartha, S.Si, M.Kom sebagai pembimbing I yang
telah membantu dalam penyelesaian proposal ini;
2. Bapak Ngurah Agus Sanjaya ER, S.Kom, M.Kom sebagai pembimbing II
yang telah bersedia meluangkan waktunya dalam penyelesaian proposal
ini;
3. Bapak Drs. I Wayan Santiyasa selaku Ketua Jurusan Ilmu Komputer
Universitas Udayana yang telah banyak memberikan masukan dan
motivasi sehingga memperlancar dalam proses pembuatan proposal ini;
4. Bapak-bapak dan ibu-ibu dosen di Jurusan Ilmu Komputer yang bersedia
meluangkan waktunya untuk memberikan masukan dalam penyempurnaan
proposal ini;
5. Kawan-kawan di Jurusan Ilmu Komputer – khususnya teman-teman
angkatan 2009 yang telah memberikan dukungan moral dalam
penyelesaian proposal ini;
6. Keluarga, Ajik, Ibu, dan adik perempuan tercinta saya yang tidak pernah
berhenti memberikan dukungan disaat saya mulai kehilangan semangat,
dan memberikan semangat baru demi tercapainya semua yang penulis
inginkan;
7. Anak Agung Alit Semara Putra dan Anak Agung Diandra Pradnya Putri
(Alm), suami dan putri yang sangat penulis sayangi dan kasihi sebagai
vii
penyemangat hati penulis yang memberikan semangat lebih untuk penulis
saat penyusunan proposal tugas akhir ini disusun.
Disadari pula bahwa sudah tentu proposal ini masih mengandung
kelemahan dan kekurangan. Memperhatikan hal ini, maka masukan dan saran-
saran penyempurnaan sangat diharapkan.
Denpasar, 20 November 2014
Penulis
viii
DAFTAR ISI
HALAMAN JUDUL .............................................................................................. i
Lembar Pengesahan ................................................................................................ ii
LEMBAR PENGESAHAN TUGAS AKHIR ....................................................... iii
ABSTRAK ............................................................. Error! Bookmark not defined.
ABSTRACT ........................................................... Error! Bookmark not defined.
KATA PENGANTAR ........................................................................................... vi
DAFTAR ISI ........................................................................................................ viii
DAFTAR GAMBAR ............................................................................................. xi
DAFTAR TABEL ................................................................................................. xii
DAFTAR LAMPIRAN ........................................................................................ xiii
BAB I PENDAHULUAN .................................................................................... 14
1.1 Latar Belakang ....................................................................................... 14
1.2 Rumusan Masalah .................................................................................. 15
1.3 Tujuan ..................................................................................................... 16
1.4 Batasan Masalah ..................................................................................... 16
1.5 Manfaat ................................................................................................... 16
BAB II TINJAUAN PUSTAKA ......................................................................... 17
2.1 Pengenalan Pola Suara ........................................................................... 17
2.2 Signal ...................................................................................................... 18
2.2.1 Sinyal Percakapan ............................................................................... 19
2.2.2 Noise ................................................................................................ 20
2.2.3 Konversi Sinyal Analog Menjadi Sinyal Digital ............................ 22
2.3 Reduksi Noise ........................................................................................ 22
ix
2.3.1 Algoritma LMS ............................................................................... 23
2.3.2 Adaptive Filter ................................................................................ 25
BAB III METODOLOGI PENELITIAN ......................................................... 28
3.1 Variabel Penelitian ................................................................................. 28
3.2 Metode Pengumpulan Data .................................................................... 28
3.3 Data Penelitian ....................................................................................... 28
3.4 Perancangan Sistem ................................................................................ 29
3.4.1 Gambaran Umum Sistem ................................................................ 29
3.4.2 Preprocessing .................................................................................. 29
3.5 Proses Denoising Sinyal Suara ............................................................... 30
3.6 Evaluasi .................................................................................................. 32
3.7 Implementasi dan Dokumentasi System ................................................ 33
BAB IV HASIL DAN PEMBAHASAN ............................................................ 34
4.1 Lingkungan Perancangan Sistem ........................................................... 34
4.2 Pengembangan Sistem ............................................................................ 34
4.2.1 Tampilan User Interface .................................................................. 34
4.2.2 Tampilan User Interface Saat Menampilkan Hasil Denoising ....... 35
4.3 Tahap Pengumpulan Dataset .................................................................. 36
4.4 Tahap Denoising ..................................................................................... 36
4.4.1 Parameter Algoritma ............................................................................. 36
4.4.2 Implementasi Algoritma Least Mean Square Adaptive Filter .............. 36
4.5 Tahap Pengujian Segmentasi .................................................................. 41
4.5.1. Hasil Pengujian Algoritma Least Mean Square ................................ 41
4.5.2 Hasil Pengujian Perbandingan Algoritma.......................................... 41
x
BAB V SIMPULAN DAN SARAN .................................................................... 49
5.1 Simpulan ................................................................................................. 49
5.2 Saran ....................................................................................................... 49
DAFTAR PUSTAKA .......................................................................................... 50
xi
DAFTAR GAMBAR
Gambar 2. 1 Signal ................................................................................................ 19
Gambar 2. 2 Sinyal Percakapan Dengan Nilai SNR Mendekati 30dB ................. 20
Gambar 2. 3 Sinyal Suara Yang Telah Terganggu Oleh Derau ............................ 21
Gambar 3. 1 Gambaran Umum Sistem ................................................................. 29
Gambar 3. 2 Alur Data Proses Penghapusan Derau .............................................. 31
Gambar 4. 1 Interface Sistem Denoising .............................................................. 35
Gambar 4. 2 Interface Sistem Setalah Proses Denoising ...................................... 35
Gambar 4. 3 Grafik Nilai MSE .............................. Error! Bookmark not defined.
Gambar 4. 4 Grafik Nilai SNR ............................... Error! Bookmark not defined.
xii
DAFTAR TABEL
Tabel 4. 1 Kode Program Buka Berkas ................................................................. 37
Tabel 4. 2 Kode Program Proses input variabel .................................................... 38
Tabel 4. 3 Kode Program Perhitungan Algoritma ................................................ 39
Tabel 4. 4 Kode Program Perhitungan Nilai MSE dan SNR ............................... 41
Tabel 4. 5 Hasil Pengujian Algoritma ................................................................... 42
14
BAB I
PENDAHULUAN
BAB I PENDAH
1.1 Latar Belakang
Dewasa ini penelitian pengenalan pola suara sudah banyak dilakukan.
Seperti pengenalan suku kata dari ucapan, identifikasi suara, dan juga terdapat
penelitian tentang sekuritas menggunakan kata kunci suara. Penelitian tentang
topik ini pun telah banyak dilakukan, namun masih terdapat kekurangan dimana
tingkat akurasinya masih kecil. Seperti penelitian pola sinyal suara yang dilakukan
oleh Susetyo Bagas Bhaskoro dan rekannya Altedzar Riedho W.D tentang aplikasi
pengenalan gender menggunakan suara yang masih memiliki kelamahan yaitu
dimana nilai akurasi dari sistem yang dibuat masih kecil. Salah satu kelemahan
yang terdapat dalam sistem tersebut adalah masih timbulnya gangguan yang
dapat mengganggu informasi dari sumber ke tujuan. Gangguan yang timbul
dapat berasal dari peralatan yang digunakan maupun dari lingkungan sekitar.
Seperti halnya pada saat melakukan komunikasi telepon, gangguan kadang
timbul dari luar yaitu suara bising kendaraan atau suara orang-orang yang
berada di sekitar, sehingga informasi yang diterima kurang jelas.
Sinyal adalah bagian penting dari sistem telekomunikasi, seperti pada
sistem teknik pengolahan sinyal. Dalam tahun-tahun terakhir ini, banyak perhatian
diberikan kepada teknik pengolahan sinyal digital dalam sistem telekomunikasi.
Banyak aplikasi informasi yang kini dapat dengan mudah direkam, ditransmisi
dan yang disimpan format digital. Hasilnya, pengolahan sinyal digital menjadi
suatu alat modern yang penting. Pengolahan sinyal digital antara lain : perkiraan
parameter karakteristik sinyal, penghapusan atau pengurangan noise
yang tidak diinginkan dan transformasi sinyal ke dalam beberapa bentuk yang
lebih informatif.
Untuk mengatasi kecilnya nilai akurasi yang didapat dalam penelitian –
penelitian sebelumnya maka penulis mengambil topik tentang penekanan derau
15
atau penghilang Noise pada sinyal suara guna meningkatkan kualitas inputan
suara kedalam sistem pengenalan pola suara. Pada pengenalan suara, diperlukan
kondisi lingkungan sekitar yang bersih dan bebas dari segala macam sinyal
pengganggu yang tidak diinginkan seperti derau. Untuk itu diperlukan suatu
perangkat atau alat tambahan yang dinamakan Filter. Salah satu Filter yang
dapat digunakan untuk menekan derau dari sinyal suara adalah Filter adaptif.
Filter adaptif merupakan Filter digital yang menggunakan umpan balik
untuk menentukan nilai dari koefisien Filter terbaik yang dipakai untuk
memperoleh sinyal yang diinginkan. Filter adaptif dapat ditambahkan pada
sistem pengenalan suara untuk menekan derau yang menyertai suara masukan
yang akan dikenali. Algoritma LMS merupakan algoritma yang sangat populer
dan sangat sederhana serta dapat digunakan untuk beberapa aplikasi
pemrosesan sinyal, antara lain masalah penghapusan derau, gema, dan
interferensi.
1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah dipaparkan diatas maka dapat
dirumuskan masalah yang akan diteliti yaitu :
1. Berapakah nilai Learning Rate dan panjang filter yang akan digunakan
oleh algoritma Least mean Square dalam mencapai akurasi yang optimal
dalam menghilangkan derau pada sinyal suara ?
2. Bagaimana mengukur perubahan suara sebelum dan setelah melalu proses
penghapusan derau?
16
1.3 Tujuan
Adapun tujuan penelitian yang hendak dicapai dalam penulisan ilmiah ini
adalah :
1. Untuk membangun sistem pengenalan pola melalui sinyal suara dengan
penerapan algoritma Least Mean Square dengan Adaptive Filter pada
proses denoising.
2. Untuk mengetahui perubahan sinyal suara sebelum dan setelah melalui
proses denoising
1.4 Batasan Masalah
Adapun batasan masalah dalam penelitian ini adalah sebagai berikut :
1. Data yang digunakan dalam penelitian ini adalah file suara berformat
(.wav)
2. Sampel suara yang digunakan adalah suara orang yang melafalkan kata
acak secara selama kurang lebih 10 detik.
3. Data suara diperoleh dari manusia dengan rentang usia antara 18 sampai
40 tahun, mengingat perubahan organ penghasil suara yang terjadi saat
beranjak dewasa dan menjelang lanjut usia.
1.5 Manfaat
Manfaat yang dapat diambil dari penelitian ini adalah sebagai berikut :
1. Diharapkan setelah melalui proses reduksi Noise, performa dari sistem
akan meningkat dalam melakukan pengolahan sinyal suara dan
mendapatkan nilai akurasi yang lebih baik.
2. Menghasilkan aplikasi yang dapat digunakan untuk menghilangkan derau
pada sinyal suara serta menambah kualitas sinyal suara tersebut.
17
BAB II
LANDASAN TEORI
BAB II TINA
2.1 Pengenalan Pola Suara
Pengenalan pola dapat diartikan sebagai proses klasifikasi dari objek atau
pola menjadi beberapa kategori ataukelas. Dan bertujuan untuk pengambilan
keputusan (K. Koutroumbas, and S. Theodoridis , 2006).
Voice/Speech recognition atau biasa kita kenal dengan pengenalan pola
suara adalah suatu pengembangan teknik dan sistem yang memungkinkan
komputer untuk menerima masukan berupa kata atau yang diucapkan. Teknologi
ini memungkinkan suatu perangkat untuk mengenali dan memahami kata-kata
yang diucapkan dengan cara digitalisasi kata dan mencocokkan sinyal digital
tersebut dengan suatu pola tertentu yang tersimpan dalam suatu perangkat
(Nelson Morgan, Herve Bourland, and Hynek Hermansky, 2004). Kata-kata yang
diucapkan diubah bentuknya menjadi sinyal digital dengan cara mengubah
gelombang suara menjadi sekumpulan angka yang kemudian disesuaikan dengan
kode-kode tertentu untuk mengidentifikasikan kata-kata tersebut.
Hasil dari identifikasi kata yang diucapkan dapat ditampilkan dalam
bentuk tulisan atau dapat dibaca oleh perangkat teknologi sebagai sebuah
komando untuk melakukan suatu pekerjaan, misalnya penekanan tombol pada
telepon genggam yang dilakukan secara otomatis dengan komando suara. Alat
pengenal ucapan, yang sering disebut dengan speech recognizer, membutuhkan
sampel kata sebenarnya yang diucapkan dari pengguna. Sampel kata akan
didigitalisasi, disimpan dalam komputer, dan kemudian digunakan sebagai basis
data dalam mencocokkan kata yang diucapkan selanjutnya.
Sebagian besar alat pengenal ucapan sifatnya masih tergantung kepada
pengeras suara. Alat ini hanya dapat mengenal kata yang diucapkan dari satu atau
dua orang saja dan hanya bisa mengenal kata-kata terpisah, yaitu kata-kata yang
dalam penyampaiannya terdapat jeda antar kata. Hanya sebagian kecil dari
18
peralatan yang menggunakan teknologi ini yang sifatnya tidak tergantung pada
pengeras suara. Alat ini sudah dapat mengenal kata yang diucapkan oleh banyak
orang dan juga dapat mengenal kata-kata kontinu, atau kata-kata yang dalam
penyampaiannya tidak terdapat jeda antar kata.
Pengenalan ucapan dalam perkembangan teknologinya merupakan bagian
dari pengenalan suara (proses identifikasi seseorang berdasarkan suaranya).
Pengenalan suara sendiri terbagi menjadi dua, yaitu pengenalan pengguna
(identifikasi suara berdasarkan orang yang berbicara) dan pengenalan ucapan
(identifikasi suara berdasarkan kata yang diucapkan).
Metode klasifikasi yang digunakan pada sistem pengenalan pola memiliki
dua jenis pendekatan. Pendekatan statistik dan pendekatan struktural atau sintatik.
Pengenalan pola statistik berdasarkan pada karakteristik statistikal dari pola-pola
yang ada dengan asumsi bahwa pola-pola tersebut dihasilkan oleh sebuah sistem
probabilistik. Pengenalan pola struktural berdasarkan pada hubungan struktural
dari fitur setiap pola. Sebuah sistem pengenalan pola terdiri dari sensor yang
mengumpulkan pola yang akan diproses dan mengukur variabel dari setiap pola,
pre-processing yang menghilangkan Noise dalam data, mekanisme ekstraksi fitur
untuk mendapatkan informasi numeric atau simbolik dari pola-pola tersebut,
model pembelajaran yang mempelajari pemetaan antara fitur dan kelompok pola,
metode klasifikasi yang memisah – misahkan pola-pola tersebut ke dalam kategori
berdasarkan fitur dan model pembelajaran, dan post-processing yang
mengevaluasi benar atau tidaknya hasil yang didapat. Pengenalan pola merupakan
bidang dalam pembelajaran mesin dan dapat diartikan sebagai tindakan
mengambil data mentah dan bertindak berdasarkan klasifikasi data. Dengan
demikian, hal tersebut merupakan himpunan kaidah bagi pembelajaran yang
diawasi ( supervised learning ).
2.2 Sinyal
Sebuah sinyal adalah variasi dari variable seperti gelombang tekanan udara
dari suara, warna dari gambar, kedalaman sebuah permukaan, temperature dari
tubuh, tegangan atau arus dari konduktor atau sitem biologis, cahaya, sinyal
19
elektromagnetik radio, atau volume dan berat dari suatu objek. Sebuah sinyal
membawa informasi mengenai satu atau lebih atribut mengenai status, komposisi,
arah pergerakan, dan tujuan dari sumber (Priemer, 1991). Dapat dikatakan,
sebuah sinyal adalah sebuah media untuk membawa informasi mengenai keadaan
masa lalu, masa sekarang, dan masa yang akan dating dari suatu variable
Gambar 2. 1 Signal
Pada umunya variabel independen untuk sinyal satu dimensi adalah waktu.
Jika variable independennya kontinu, maka sinyal tersebutdisebut sebagai sinyal
waktu kontinu ( continuous-time signal ). Jika variable independennya diskrit,
maka sinyal tersebut disebut sebagai sinyal waktu diskrit ( discrete-time signal ).
Sinyal waktu kontinu didefinisikan setiap suatu waktu ( t ) dalam sebuah interval
yang biasanya tidak terbatas, sedangakan sinyal waktu diskrit dedifinisikan pada
waktu diskrit, dan biasanya berupa urutan angka. Sinyal waktu kontinu dengan
amplitude kontinu biasanya disebut sebagai sinyal analog seperti sinnnyal suara
sebagai contohnya. Sinyal waktu diskrit dengan amplitude bernilai diskrit yang
direpresentasikan oleh digit angka yang terbebas (finite) biasanya disebut sebagai
sinyal digital
2.2.1 Sinyal Percakapan
Sinyal percakapan adalah sinyal yang dihasilkan dari suara manusia
sewaktu melakukan percakapan. Sinyal percakapan merupakan kombinasi
kompleksdari variasi tekanan udara yang melewati pita suara dan vocal tract,
yaitu mulut, lidah, gigi, bibir, dan langit-langit mulut. Speech (wicara) dihasilkan
dari sebuah kerjasama antara paru-paru, glottis, dan articulation tract (mulut dan
rongga hidung). Sinyal suara terdiri dari serangkaian suara yang masing-masing
menyimmpan sepotong informasi. Berdasarkan cara menghasilkannya, suara
20
dapat dibedakan menjadi dua jenis yaitu voiced dan unvoiced. Voiced sounds atau
suara ucapan berasal dari getaran pita suara, sedangkan unvoiced sounds
dihasilkan dari gesekan antara udara dengan voice tract.
Gambar 2. 2 Sinyal Percakapan Dengan Nilai SNR Mendekati 30dB
Sinyal percakapan memiliki beberapa karakteristik, seperti Pitch dan
intensitas suara yang berguna dalam melakukan analisis sinyal suara. Pitch adalah
frekuensi dari sinyal atau yang sering disebut intonasi. Intensitas suara adalah
tingkat kekuatan suara. Impuls tekanan pada umumnya disebut sebagai Pitch
impulse dan frekuensi sinyal tekanan adalah Pitch frequency atau fundamental
frequency. Sederet impuls dihasilkan oleh pita suara untuk sebuah suara. Hal ini
merupakan bagian dari sinyal suara yang mendefinisikan speech melody atau
melodi wicara. Ketika berbicara dengan Pitch yang stabil, suara sinyal suara
monotonous tetapi dalam kasus normal sebuah perubahan permanen pada
frekuensi terjadi. Impuls Pitch memang merangsang udara dalam mulut dan untuk
suara tertentu juga merangsang rongga hidung. Ketika rongga beresonansi, timbul
radiasi sebuah gelombang suara yang merupakan sinyal percakapan. Kedua
rongga beraksi sebagai resonators dengan karakteristik frekuensi resonansi
masing-masing yang disebut dengan Formant frequencies, sehingga Formant
merupakan variasi resonansi yang dihasilkan oleh vocal tract. Pada saat rongga
mulut mengalami perubahan besar, dihasilkan beragam pola ucapan suara
berbeda. Di dalam kasus unvoiced sounds, keluaran pada vocal tract lebih
menyerupai Noise atau derau.
2.2.2 Noise
Noise (kebisingan), dalam pengertian umum, adalah suatu gangguan yang
"didengar" orang, tetapi dalam telekomunikasi kata Noise juga dipakai sebagai
21
suatu istilah untuk gangguan listrik yang menimbulkan kebisingan yang dapat
didengar dalam suatu sistem (Kosko, 2006). Noise dapat timbul dengan berbagai
cara. Satu contoh jelas adalah waktu adanya sambungan yang salah dalam suatu
alat yang jika itu adalah pesawat penerima radio, menghasilkan tipe kebisingan
yang terputus-putus atau trackling (gemercak) pada keluarannya. Noise juga
terjadi apabila hubungan listrik yang pembawa arus dibuat nyala mati, misalnya
pada brusher tipe motor tertentu. Sumber kebisingan semacam itu pada pokoknya
dapat dihilangkan.
Gejala alam yang menimbulkan kebisingan itu termasuk badai listrik,
kobaran matahari (solar flares), dan sabuk radiasi tertentu yang ada di ruang
angkasa. Kebisingan yang timbul dari sumber tersebut mungkin lebih sulit
dilemahkan, dan seringkali yang merupakan satu-satunya solusi ialah merubah
posisi antena penerimanya untuk memperkecil kebisingan yang diterima, sambil
menjamin bahwa penerimaan sinyal yang diinginkan itu tidak rusak berat.
Gambar 2. 3 Sinyal Suara Yang Telah Terganggu Oleh Derau
Kebisingan itu, yang terutama dimasalahkan didalam sistem penerimaan,
dimana menurunkan batas guna ukuran sinyal yang dapat diterima. Walaupun
kehati-hatian dilakukan untuk menghilangkan kebisingan dari sambungan yang
buruk atau yang timbul dari sumber luar, terbukti bahwa sumber kebisingan
fundamental tertentu hadir didalam perlengkapan elektronik yang membatasi
kepekaan penerima. Penambahan amplifier pada sistem penerima juga menambah
kebisingan dan rasio sinyal terhadap kebisingan (signal-to-Noise ratio), yang
22
merupakan kuantitas penting, bisa mengalami penurunan dengan penambahan
amplifier. Jadi, studi sumber kebisingan fundamental dalam peralatan penting jika
kita ingin memperkecil efek kebisingan itu.
2.2.3 Konversi Sinyal Analog Menjadi Sinyal Digital
Sinyal – sinyal yang natural pada umumnya seperti sinyal suara
merupakan sinyal continue dimana memiliki nilai yang tidak terbatas. Sedangkan
pada computer, semua sinyal yang dapat diproses oleh computer hanyalah sinyal
discrete atau sering dikenal sebagai istilah sinyal digital. Agal sinyal natural dapat
diproses oleh computer, maka harus dirubah dahulu dari data sinyal continue
menjadi sinyal discrete. Hal itu dapat dilakukan melalui 3 proses, diantaranya
adalah proses sampling data, proses kuantisasi, dan proses pengkodean.
Proses sampling adalah suatu proses untuk mengambil data signal
continue untuk setiap periode tertentu. Dalam melakukan proses sampling data
berlaku aturan nyquist, yaitu bahwa frekuensi sampling minimal harus 2 kali lebih
tinggi dari frekuensi maksimum yang akan disampling. Jika signal sampling
kurang dari 2 kali frekuensi maksimum signal yang akan disampling, maka akan
timbul efek aliasing. Aliasing adalah suatu efek dimana sinyal yang dihasilkan
memiliki frekuensi yang berbeda dengan sinyal aslinya.
Proses kuantisasi adalah proses untuk membulatkan nilai data kedalam
bilangan-bilangan tertentu yang telah ditentukan terlebih dahulu. Semakin banyak
level yang dipakai maka semakin akurat pula data sinyal yang disimpan, tetapi
akan menghasilkan ukuran data besar dan proses yang lama. Proses pengkodean
adalah proses pemberian kode untuk tiap-tiap data sinyal yang telah terkuantisasi
berdasarkan level yang ditempati
2.3 Reduksi Noise
Pada pengenalan suara, diperlukan kondisi lingkungan sekitar yang bersih
dan bebas dari segalamacam sinyal pengganggu yang tidak diinginkan
sepertiderau. Untuk itu diperlukan suatu perangkat atau alat tambahan yang
dinamakan Filter. Salah satu Filter yangdapat digunakan untuk menekan derau
23
dari sinyal suara adalah Filter adaptif. Filter adaptif merupakan Filter digital yang
menggunakan umpan balik untukmenentukan nilai dari koefisien Filter terbaik
yangdipakai untuk memperoleh sinyal yang diinginkan. Filter adaptif dapat
ditambahkan pada system pengenalan suara untuk menekan derau yang menyertai
suara masukan yang akan dikenali.
Kebisingan merupakan salah satu bentuk derau yang sering mengganggu
proses komunikasi, sehingga harus ditekan. Pada proses pengolahan suara,
lingkungan sekitar yang benar-benar bersih (clean) dan bebas dari segala bentuk
derau adalah salah satu yang sangat dibutuhkan untuk memperoleh sinyal yang
benar-benar sesuai dengan sinyal aslinya. Salah satu bentuk dari pengolahan
sinyal suara yang sangat rentan dengan derau adalah pengenalan ucapan (speech
recognition) karena derau dapat mempengaruhi keakuratan dalam proses
pengenalannya. Pada proses pengenalan ucapan, Filter adaptif merupakan salah
satu metode yang dapat digunakan untuk menekan derau yang berasal dari
lingkungan sekitar.
2.3.1 Algoritma LMS
Algoritma LMS merupakan algoritma yang sangat populer dan sangat
sederhana serta dapat digunakan untuk beberapa aplikasi pemrosesan sinyal,
antara lain masalah penghapusan derau, gema, dan interferensi. Penelitian ini
menggunakan metode algoritma LMS (Least Mean Square) untuk Filter Finite
Impulse Response (FIR). Algoritma LMS seringkali digunakan untuk beberapa
aplikasi yang berbeda pada pemrosesan sinyal adaptif. Ada beberapa alasan yang
mendasari hal tersebut, antara lain: komputasi yang mudah dan sederhana, tidak
ada pengulangan data, dan tanpa peramalan gradien.
Algoritma Least Mean Square (LMS) ini termasuk algoritma yang
menggunakan operator gradien ∆ dalam proses adaptasinya. Proses adaptasi dari
tap-weight (bobot koefisien filter) ini berlangsung secara rekursif, dimulai dengan
suatu nilai awal ( initial value ). Oleh karena itu hasil yang diperoleh akan
semakin baik bila jumlah iterasinya semakin besar. Hasil akhir yang diharapkan
dari proses iterasi ini ialah suatu nilai yang konvergen terhadap solusi dari metode
24
filter Wiener. Proses rekursi yang biasa digunakan ialah steepest descent yang
bentuknya adalah :
w(n+1) = w(n) + ½ m[-∆(J(n))]
Untuk dapat mengembangkan perkiraan vector gradien ∆ (J(n)), strategi yang
paling tepat ialah dengan mensubstitusikan mastriks korelasi R dan vektor
korelasi silang pada persamaan :
∆ ( J(n)) = -2 p+ 2 Rw(n)
Pilihan estimator yang paling sederhana untuk R dan padalah dengan
menggunakan perkiraan, berdasarkan pada besaran sampel vektor tap input
{ u(n)} dan respon yang diinginkan {d(n)}, seperti yang ditentukan oleh :
R(n) = d(n)x(n) ; p(n) = x(n)xT(n)w(n)
Parameter H tersebut menyatakan nilai matriks Hermitian (kompleks – conjugate).
Untuk nilai vektor gradien, diperoleh dengan mensubstitusikan persamaan diatas:
∆(J(n)) = -2 (x(n)xT(n)w(n)) + 2 (d(n)x(n))w(n)
Setelah memperoleh nilai dari masing-masing parameter, maka dapat ditentukan
suatu nilai update dari tap-weight (bobot dari koefisien filter) dengan
menggunakan persamaan sebagai berikut :
w(n+1) = w(n) + µ (p(n) – R(n)w(n))
Dari keseluruhan rumus yang diturunkan, maka untuk algoritma LMS dapat
disimpulkan sebagai berikut :
a. Output filter : y(n) = w(n) x(n)
b. Error estimasi: e(n) = d(n) – y(n)
c. Adaptasi tap - weight : w(n+1) = w(n) + µ d(n)e(n)
25
Algoritma LMS ini tidak memerlukan proses perhitungan yang rumit
karena tidak membutuhkan perhitungan fungsi korelasi maupun perhitungan
invers matriks. Sifat-sifat perhitungan yang sederhana ini akan dapat dengan
mudah diterapkan dalam bentuk program komputer. Karena kemudahannya inilah
algoritma sering digunakan dalam perhitungan filter adaptif.
2.3.2 Adaptive Filter
Semua Filter Adaptive memakai Filter Wiener sebagai realisasi Filter
optimum yaitu dengan kriteria mean square error minimum. Semua
Algoritma dengan sejalannya waktu berusaha untuk konvergen mendekati
kondisi ini. Seperti pada prediksi liniear, Filter adaptive juga didasari oleh
Filter Wiener. Semua kaidah dan sifat-sifat yang berlaku pada Filter Wiener
tetap berlaku untuk aplikasi adaptive ini
Orde Filter dibatasi oleh mean square error yang diinginkan, dan
kecepatan processing yang harus dicapai. Dengan makin besarnya orde Filter
tentu mean square error semakin kecil tetapi kecepatan processing makin
lambat. Jadi trade-off harus dilakukan dalam penentuan orde Filter ini. Filter
adaptif merupakan Filter digital yang bekerja dalam pemrosesan sinyal
digital yang dapat menyesuaikan kinerjanya berdasarkan sinyal masukannya.
Filter adaptif mempunyai pengatur koefisien yang dapat beradaptasi dengan
keadaan lingkungan sekitar maupun perubahan sistem.
Gambar 6. 1 Diagram Adaptive Filter
Sinyal masukan x(n) adalah penjumlahan dari sinyal suara s(n)
dengan derau yang menyertai sinyal suara tersebut d(n).
𝑥(𝑛) = 𝑠(𝑛) + 𝑑(𝑛)
Sinyal masukan pada Filter adaptif d’(n) adalah sinyal derau yang dicuplik
dari sumber derau yang menginterferensi sinyal suara. Pada Filter adaptif
26
digunakan umpan balik untuk menentukan nilai koefisien Filter setiap
ordenya. Filter mempunyai struktur FIR dengan tanggapan impuls sama
dengan koefisien Filternya. Koefisien pada Filter adaptif untuk orde-p
didefinisikan sebagai berikut :
wn = [wn(0), wn(1), ..., wn(p)]T
Pada variabel Filter selalu dilakukan up-date untuk koefisien Filternya
sebagai berikut :
wn+1 = wn + ∆wn
𝑤𝑛+1 = 𝑤𝑛 + 2𝜇 𝜖𝑘𝑥𝑘
dengan ∆wn merupakan faktor koreksi dari koefisien Filter dan 𝜖 merupakan
nilai mean square error.
𝜖𝑘 = 𝐸{|𝑒(𝑛)|2
}
Filter adaptif menampilkan faktor koreksi berdasarkan sinyal masukan
dan kesalahan sinyal. Kesalahan sinyal (signal error) pada Filter dapat
dihitung dengan menggunakan persamaan sebagai berikut :
e(n) = x(n) – y(n)
dengan :
y(n) = x(n) . w(n)
𝑦(𝑛) = ∑ 𝑥(𝑛). 𝑤(𝑛)
𝐿
𝑖=0
Filter adaptif biasanya menggunakan algoritma LMS (Least Mean
Square) untuk mencari nilai MSE (Mean Square Error) pada sistem yang
kemudian digunakan untuk menentukan koefisien Filter. Penghitungan
koefisien Filter pada Filter adaptif dengan menggunakan nilai MSE adalah
sebagai berikut :
w(n+1) = w(n) + µe(n)d(n)
2.3.3 Signal to Noise Ratio dan Mean Square Error
Signal to Noise ratio (SNR) adalah suatu ukuran untuk menentukan
kualitas dari sebuah sinyal yang terganggu oleh derau. Penelitian ini, estimasi
27
SNR dilakukan dengan menggunakan metode korelasi. Sinyal masukan (sinyal
uji) dimodelkan dengan sinyal sinusoidal. Sinyal derau dimodelkan sebagai sinyal
random dengan distribusi normal (Gaussian). Perancangan simulasi ini dilakukan
dengan menggunakan Simulink Matlab. Hasil pengujian telah diperoleh bahwa
variasi frekuensi sinyal masukan menghasilkan nilai estimasi SNR yang
bervariasi. Nilai SNR suatu jalur dapat dikatakan pada umumnya tetap, berapapun
kecepatan data yang melalui jalur tersebut. Satuan ukuran SNR adalah decibel
(dB) .
Mean Squared Error (MSE) adalah metode lain untuk mengevaluasi
metode peramalan. Masing-masing kesalahan atau sisa dikuadratkan. Kemudian
dijumlahkan dan ditambahkan dengan jumlah observasi. Pendekatan ini mengatur
kesalahan peramalan yang besar karena kesalahan-kesalahan itu dikuadratkan.
Metode itu menghasilkan kesalahan-kesalahan sedang yang kemungkinan lebih
baik untuk kesalahan kecil, tetapi kadang menghasilkan perbedaan yang besar.
28
BAB III
METODOLOGI PENELITIAN
BAB III METODOLOGI PENELITIAN
3.1 Variabel Penelitian
Variabel-variabel yang digunakan dalam penelitian ini adalah :
1. Nilai ordo atau panjang tapi (filter) dalam adaptive filter.
2. Nilai learning rate pada proses penghapusan derau.
3.2 Metode Pengumpulan Data
Pengumpulan data penelitian ini dilakukan dengan metode-metode sebagai
berikut :
1. Studi Kepustakaan, yaitu mengumpulkan data dari buku, jurnal, atau hasil
penelitian lainnya yang berhubungan dengan tugas akhir.
2. Observasi, yaitu mempelajari aplikasi sejenis yang terdapat pada sistem
pengenalan suara lainnya seperti sistem pengenalan lagu yang terdapat
dalam android, maupun sistem pengenalan suara sederhana yang terdapat
pada ponsel pintar
3. Penulis mengumpulkan sendiri data suara menggunakan smartphone.
Kemudian responden diminta untuk merekam suara sepanjang 10 detik
dalam keadaan lingkungan saat perekaman diambil terdapat suara derau
atau suara yang tidak diinginkan. Selain data suara, penulis juga
mengumpulkan contoh data suara derau sepanjang 10 detik yang nantinya
akan digunakan sebagai input referensi pada sistem.
3.3 Data Penelitian
Data-data yang digunakan dalam penelitian ini berupa data suara manusia
yang mengucapkan kata acak selama 10 detik yang direkam dengan ekstensi
WAVE (.wav). perekaman suara dengan ekstensi WAVE ini merupakan rekaman
data suara yang tidak mengalami proses kompresi apapun sehingga memudahkan
sistem untuk mengolah data suara tersebut. Perekaman dilakukan oleh orang
29
dengan rentang usia 18 – 50 tahun dikarenakan perubahan organ penghasil suara
yang bisa berubah saat manusia mengalami proses pendewasaan serta penurunan
organ penghasil suara saat manusia lanjut usia.
3.4 Perancangan Sistem
Sistem yang dibangun dalam penelitian kali ini adalah sebuah sistem yang
dapat membaca sinyal suara. Dalam sistem ini user akan mengambil data suara
yang telah terdapat didalam berkas database dan sistem akan mengeluarkan
output berupa data suara yang telah mengalami proses penghilangan atau
penekanan derau. Berikutnya akan dipaparkan tentang gambaran umum system
dan flow chart dari setiap proses dari sistem penghapusan derau ini.
3.4.1 Gambaran Umum Sistem
Struktur dari sistem adalah sebagai beriukut :
Gambar 3. 1 Gambaran Umum Sistem
Proses penghilangan derau pada sinyal suara adalah merupakan tahap awal
dari proses pengolahan sinyal suara. proses ini sangat penting mengingat noise
atau derau dapat mengganggu sistem dalam melakukan proses pengolahan karena
sifat daripada noise yang mengganggu. Didalam penghilangan derau ini, sinyal
suara pada database akan disaring atau difilter agar mendapatkan sinyal suara
yang lebih jernih. Dan dalam tahap denoising ini akan disimulasikan bagaimana
sistem dapat menghilangkan derau pada sinyal suara yang kita miliki.
3.4.2 Preprocessing
Tahap pengambilan input merupakan tahapan awal dari keseluruhan
proses pengenalan suara. Tahap ini dilakukan untuk melakukan pengekstraksian
sinyal suara. Suara yang dimasukkan akan diolah dan diekstrak informasinya ke
dalam sistem sebagai sinyal inputan. Masukkan ini diinput dengan menggunakan
alat seperti mikrofon atau alat perekam suara. Tahap ini bertujuan untuk mengolah
30
sinyal inputan agar dapat diproses pada tahap selanjutnya dengan baik.
Preprocessing adalah proses dimana sinyal analog akan dirubah menjadi sinyal
digital atau dapat disebut dengan original signal. Sinyal analog yang direkam akan
langsung diproses menjadi sinyal digital demi mendapatkan sinyal asli yang akan
diproses pada tahap selanjutnya.
3.5 Proses Denoising Sinyal Suara
Tahap ini merupakan tahap yang berfungsi untuk mengurangi derau atau
Noise yang terdapat dalam sinyal suara dengan harapan dapat meningkatkan
akurasi dari proses pengenalan suara berikutnya. Proses ini sangatlah penting
untuk dilakukan demi mendapat hasil yang lebih baik atau yang diinginkan.
Adapun tahap-tahap pada proses ini dapat diuraikan sebagai berikut:
1. Pembacaan berkas suara yang telah disimpan dalam format WAV. Pada
tahap ini dilakukan pemilihan sinyal asli dan derau sesuai dengan data yang
tersedia.
2. Penggabungan antara berkas suara tak berderau dengan derau yang telah
dipilih sehingga diperoleh isyarat berderau yang merupakan masukan dari
sistem.
3. Penentuan metode yang ingin digunakan, algoritma Least Mean Square
Adaptive Filter.
4. Penentuan nilai panjang tapis (L) dan konstanta ukuran langkah adaptasi
(mu).
5. Perhitungan keluaran tapis :
y(n) = w(n) x(n)
𝑦(𝑛) = ∑ 𝑥(𝑛). 𝑤(𝑛)
𝐿
𝑖=0
6. Perhitungan estimasi galat :
)y(nd(n)e(n)
7. Perbaikan bobot Filter berikutnya :
w(n+1) = w(n) + µ d(n)e(n)
31
Flowchart Sistem
Penerapannya dalam flowchart adalah sebagai berikut :
Gambar 3. 2 Alur Data Proses Penghapusan Derau
Mulai
Input sinyal suara ( d ), sinyal derau ( x ), L
(orde filter), μ
(step size), dan bobot (w0)
n = 0
Inisialisasi vector bobot adaptive
Wk+1 = Wk + 2 µe k Xk
Hitung keluaran filter adaptive
1L
0l
l l) x(n* (n)wy(n)
Hitung nilai galat
)y(nd(n)e(n)
e (n) < 0.001 Tidak
Yes
Selesai
Output Sinyal Suara
32
3.6 Evaluasi
Setelah melalui proses penghilangan derau, didapat sinyal suara dengan
jumlah derau yang telah tereduksi. Langkah selanjutnya adalah menghitung hasil
kinerja lagoritma berupa akurasi dari sinyal yang telah melalui peroses
penghapusan derau. Keberhasilan suatu proses penghapusan interferensi suara
dapat ditentukan berdasarkan kualitas suara yang dihasilkan, SNR (Signal to
Noise Ratio), MSE (Mean Square Error). Signal to Noise Ratio (SNR)
merupakan perbandingan antara daya sinyal asli (Px) dengan daya derau (Pe).
Secara matematis dapat dinyatakan sebagai berikut :
Dengan
Dan
Maka persamaan tersebut dapat disederhanakan seperti berikut :
Hasil dari fungsi diatas sangat dipengaruhi oleh nilai parameter yang akan
dimasukkan. Karena bila parameter yang diinputkan berbeda maka besarnya nilai
SNR dan MSE pun akan berbeda. Parameter yang akan ditentukan adalah jumlah
ordo filter dengan nilai 1-20. Nilai learning rate (langkah) dengan nilai 0.1, 0.01,
dan 0.05
33
3.7 Implementasi dan Dokumentasi System
Tahap implementasi hasil dari perancangan sistem ke source code
pemrograman agar dapat dijalankan dalam sistem. Dalam tahap ini, komponen
yang digunakan adalah :
1. Bahasa pemrograman untuk sistem segmentasi yang dikembangkan
menggunakan bahasa pemrograman MATLAB & Simuling (R2012a).
2. Basisdata untuk data input dari sistem adalah berupa rekaman suara
manusia dengan ekstensi .wav dan samplingrate 22KHz / 22000Hz Mono
16bit.
Dalam tahap dokumentasi dibuat segala keterangan mengenai rancang
bangun sampai manual sistem. Adanya dokumentasi diharapkan dapat
mempermudah dalam penggunaan dan pengembangan sistem apabila ditemukan
masalah dalam pengoperasian.
34
BAB IV
HASIL DAN PEMBAHASAN
BAB IV HASIL DAN PEMBAHASAN
4.1 Lingkungan Perancangan Sistem
Pengimplementasian sistem penghapusan derau ini mencakup perangkat
keras dan perangkat lunak. Sistem diimplementasikan pada pemrograman desktop
yaitu Matlab & Simulink (R2012a). Pada lingkup perangkat keras, spesifikasi
yang digunakan adalah sebagai berikut :
1. Processor Intel Core i3 3217UB
2. Ram 4 GB
3. Hardisk 500GB
Sedangkan spesifikasi yang diperlukan pada lingkup perangkat lunak adalah:
1. Matlab & Simulink (R2012a)
2. Perekam suara Audacity (desktop), PCM Recorder (smartphone)
3. Pemotongan sinyal suara dengan frekuensi tertentu menggunakan Adobe
Audition CS5.5
4. Sistem Operasi Windows 7
4.2 Pengembangan Sistem
Pada tahap pengembangan sistem penekanan derau terdapat dua tahapan
pengembangan sistem, yaitu penyimpanan database sistem dan tampilan user
antarmuka (interface).
4.2.1 Tampilan User Interface
Untuk membangun sistem diperlukan desain tampilan user interface yang
dirancang dengan desain yang minimalis dan user friendly sehingga diharapkan
dapat dengan mudah dimengerti oleh pengguna.
35
Gambar 4. 1 Interface Sistem Denoising
4.2.2 Tampilan User Interface Saat Menampilkan Hasil Denoising
Tampilan user interface program pada saat menampilkan hasil dataset citra
yang diinput oleh user dapat dilihat pada Gambar 4.2.
Gambar 4. 2 Interface Sistem Setalah Proses Denoising
36
4.3 Tahap Pengumpulan Dataset
Metode pengumpulan data dilakukan dengan merekam sampel suara dari
beberapa orang dengan rentang umur 18 – 50 th. Sampel suara yang diambil
berupan pengucapan kata secara acak selama kurang lebih 10 detik dengan
ekstensi wave (.wav) dan samplingrate 22KHz / 22000Hz Mono 16bit PCM.
4.4 Tahap Denoising
Proses denoising bertujuan untuk menghapus derau yang terdapat dalam
sinyal suara dan meningkatkan kualitas dari sinyal suara tersebut. Data input
berupa data suara yang ingin dihapus deraunya dan data output berupa data suara
yang telah terhapus deraunya dan mengalami peningkatan kualitas
4.4.1 Parameter Algoritma
Parameter yang digunakan dalam algoritma Least Mean Square Adaptive
Filter seperti ordo (jumlah tapis/filter), langkah (learning rate), batas error, dan
batas iterasi harus ditentukan terlebih dahulu. Parameter ini akan menjadi variable
masukkan pada sistem untuk memulai proses penghapusan derau. Dalam
penelitian ini batas error yang digunakan adalah 0.00001 dan batas iterasi yang
dilakukan sistem adalah sebanyak 1000 iterasi. Nilai – nilai terbaik untuk
parameter lainnya dalam sistem ini adalah ordo = 10, langkah = 0.1 yang
menghasilkan nilai Mean Square Error dan Signal to Noise Ratio yang minimal.
4.4.2 Implementasi Algoritma Least Mean Square Adaptive Filter
Proses penghapusan derau menggunakan algoritma LMS Adaptive Filter
pada dataset sinyal suara merupakan proses penekanan derau pada dataset sinyal
suara dengan dataset derau yang terdapat didalam database. Berikut merupakan
langkah-langkah proses penghapusan derau dan penjelasan source code Algoritma
LMS Adaptive Filter.
37
1. Pembacaan berkas data suara oleh sistem
Proses penghapusan derau dimulai dari pembacaan berkas data sinyal suara
oleh sistem. Kode program kordinat acak awal dapat dilihat pada Tabel 4.1.
Tabel 4. 1 Kode Program Buka Berkas
Baris Kode Program
36
function buttonOpen_Callback(hObject, eventdata,
handles) global FileName; global FilePath; handle = guidata(gcbo);
disp('Membuka berkas.'); axes(handle.axesSource); [FileName, FilePath] = uigetfile ({'*.wav' },
'Memuat berkas suara',''); obj = findobj('tag', 'editFilename'); set(obj,'String',strcat(FilePath,FileName)); disp(strcat('Nama Berkas :
',32,strcat(FilePath,FileName))); disp(' ');
2. Penentuan Variabel-Variabel yang akan digunakan dalam Algoritma Least
Mean Square.
Pada proses ini, user memasukkan variable-variabel seperti ordo filter,
learning rate (langkah), batas error dana batas iterasi yang akan dilakukan oleh
sistem.setelah itu user akan menekan tombol proses dimana sistem akan langsung
mnghitung algoritma sesuai dengan variable yang telah dimasukkan oleh user.
Kode program pemasukkan variabel dapat dilihat pada Tabel 4.2.
38
Tabel 4. 2 Kode Program Proses input variabel
Baris Kode Program
1
function buttonProcess_Callback(hObject, eventdata,
handles) global FileName; global FilePath; global InputSignal; global InputFrequency; global ReferenceSignal; global ReferenceFrequency; global NoiseSignal; global NoiseFrequency; global NoisedSignal; global NoisedFrequency; global OutputSignal; handle = guidata(gcbo);
disp('Menentukan nilai awal.'); obj = findobj('tag', 'editOrdo'); MyOrdo=str2num(get(obj,'String')); obj = findobj('tag', 'editStep'); MyStep=str2num(get(obj,'String')); obj = findobj('tag', 'editWeight'); MyWeight=str2num(get(obj,'String')); obj = findobj('tag', 'editError'); MyError=str2num(get(obj,'String')); obj = findobj('tag', 'editIteration'); MyIteration=str2num(get(obj,'String'));
% Tampilkan ordo, langkah dan bobot awal disp(strcat('Ordo : ',32,num2str(MyOrdo))); disp(strcat('Langkah : ',32,num2str(MyStep))); disp(strcat('Bobot Awal :
',32,num2str(MyWeight))); disp(strcat('Batas Galat :
',32,num2str(MyError))); disp(strcat('Batas Iterasi :
',32,num2str(MyIteration))); disp(' ');
3. Perhitungan Algoritma Least Mean Square
Pada proses ini dilakukan perhitungan Adaptive Filter yang digunakan untuk
menghapuskan derau pada sinyal suara. Kode program perhitungan Adaptive
Filter dapat dilihat pada Tabel 4.3.
39
Tabel 4. 3 Kode Program Perhitungan Algoritma
Baris Kode Program
1
% Inisisasi adaptive filter lms % hlms = dsp.LMSFilter(MyOrdo+1, 'StepSize', Step); hlms = dsp.LMSFilter('Length', MyOrdo+1, ... 'Method', 'LMS',... 'AdaptInputPort', true, ... 'StepSizeSource', 'Input port', ... 'WeightsOutputPort', true, ... 'WeightsResetInputPort', true ... );
% Inisisasi digital filter hfilt = dsp.DigitalFilter; hfilt.TransferFunction = 'FIR (all zeros)'; hfilt.Numerator = fir1(MyOrdo, .25);
% Atur bobot awal (w0) MyWeights=ones(MyOrdo+1,1)*MyWeight; A=1; R=false;
% Buat perulangan sampai e < MyError, maksimal
perulangan sebanyak MyIteration LoopCounter=1; MaxLoop=MyIteration; StopFlag=false; TotalTime=0; LastError=0; while StopFlag==false disp('-----------------------------------------
----------------------------------'); disp(strcat('Iterasi ke-
',num2str(LoopCounter)));
% Masukkan bobot filter ke properti filter hlms.InitialConditions=MyWeights;
% ERRORbefore=OutputError; % Lakukan adative filter dengan metode LMS tic; [OutputSignal,OutputError,OutputCoeff] =
step(hlms, ReferenceSignal, NoisedSignal, MyStep, A,
R); ElapsedTime=toc*1000; TotalTime=TotalTime+ElapsedTime; % Menghasilkan % OutputSignal : hasil filter % OutputError : kesalahan hasil filter % OutputCoeff : koefisien bobot filter disp(strcat('Waktu yang diperlukan pada iterasi
ini (ms) : ',32,sprintf('%f',ElapsedTime))); disp(strcat('Waktu yang diperlukan sampai
40
iterasi ini (ms) : ',32,sprintf('%f',TotalTime)));
MyWeights=OutputCoeff + (2*LastError*MyStep) ;
% Perbaharui bobot filter disp('Bobot hasil filter : '); disp(MyWeights);
EstimatedError=round(abs(mean(OutputError))*10000000000
000000)/10000000000000000; fprintf('Galat : %.16f',EstimatedError) disp(' '); disp(' ');
StopReason=''; if (LoopCounter>MaxLoop ||
EstimatedError<=MyError || EstimatedError==LastError) StopFlag=true; if LoopCounter>MaxLoop StopReason='Mencapai batas perulangan'; end if EstimatedError<=MyError StopReason='Mencapai batas galat'; end if EstimatedError==LastError StopReason='Tidak mengalami perubahan
galat'; end end
LastError=EstimatedError; LoopCounter=LoopCounter+1; hlms.release(); end
4. Perhitungan Nilai SNR dan MSE
Perhitungan nilai Signal to Noise Ratio dan Nilai Mean Square error ini
digunakan untuk melihat perkembangan dan hasil dari keluaran sistem. Nilai
SNR dari sinyal suara output sistem akan dibandingkan dengan nila SNR
sinyal suara awal. Kode Program Perhitungan SNR dan MSE dapat dilihat
pada Tabel 4.4.
41
Tabel 4. 4 Kode Program Perhitungan Nilai MSE dan SNR
Baris Kode Program
1
% Hitung SNR awal % snr = px/pe % snrdb = 10 log 10 (px / pe)
SNRbefore=mean(InputSignal.^2)/mean(NoiseSignal.^2); SNRbeforeDB=10*log10(SNRbefore); disp(strcat('SNR Awal (db) :
',32,num2str(SNRbeforeDB)));
% Hitung SNR akhir % snr = px/pe % snrdb = 10 log 10 (px / pe)
SNRafter=mean(OutputSignal.^2)/mean(NoiseSignal.^2); SNRafterDB=10*log10(SNRafter); disp(strcat('SNR Akhir (db) :
',32,num2str(SNRafterDB)));
% Hitung MSE SNR % mse = E [S ((x1(m1) - x2(2))^2) ] myMSE=mse(NoisedSignal,OutputSignal); disp(strcat('MSE : ',32,num2str(myMSE))); disp(' ');
4.5 Tahap Pengujian Segmentasi
4.5.1. Hasil Pengujian Algoritma Least Mean Square
Hasil pengujian MSE dan SNR, besarnya ordo (panjang tapis/filter) dan
nilai langkah (learning rate) dari algoritma Least Mean Square denagn Adaptive
Filter dari kombinasi rentang nilai ordo 2 - 60 dan nilai langkah 0.1, 0..01, 0.05 .
Hasil pengujian dapat dilihat pada lampiran.
Dari lampiran dapat dilihat bahwa dari rentang nilai ordo 2 – 60 dan nilai
langkah 0.1, 0.01, 0.05 didapat hasil kombinasi optimal yang didapat untuk
menghasilkan nilai MSE dan SNR minimal didapat dari kombinasi nilai ordo 10
dan langkah 0.1.
4.5.2 Hasil Pengujian Perbandingan Algoritma
Hasil pengujian Algoritma Least Mean Square dengan Adaptive Filter
dapat dilihat pada Tabel.
42
1. Penghilangan derau dengan referensi derau berulang
Tabel 4. 5 Hasil Pengujian Algoritma Referensi Derau Berulang
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.1
2 0.00472 16.2658
4 0.00451 16.0625
6 0.00443 15.9858
8 0.00439 15.9441
10 0.00437 15.9269
12 0.00438 15.9297
14 0.00439 15.9463
16 0.00441 15.9674
18 0.00443 15.9847
20 0.00444 15.9945
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.01
2 0.00462 16.1713
4 0.00457 16.123
6 0.00447 16.0177
8 0.00441 15.9605
10 0.00438 15.9314
12 0.00437 15.9245
14 0.00438 15.9348
16 0.0044 15.9546
18 0.00442 15.9744
20 0.00444 15.9877
43
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.05
2 0.00462 16.1714
4 0.00472 16.2656
6 0.00457 16.1233
8 0.00451 16.0622
10 0.00447 16.018
12 0.00443 15.9853
14 0.00441 15.9609
16 0.00439 15.9434
18 0.00438 15.932
20 0.00437 15.9261
Tabel 4. 6 Hasil Pengujian Algoritma Referensi Derau Jalan Raya
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.1
2 0.00792 11.6489
4 0.007752 11.5479
6 0.0076003 11.4585
8 0.0074904 11.3931
10 0.0074437 11.3662
12 0.00746 11.3785
14 0.007521 11.4183
16 0.007599 11.468
18 0.0076686 11.5121
20 0.007183 11.528
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.01
2 0.007883 11.6192
4 0.0078331 11.5901
6 0.0076731 11.4946
8 0.0075383 11.4125
10 0.0074587 11.3635
12 0.0074447 11.3553
14 0.0074865 11.3818
44
16 0.0075597 11.4274
18 0.007636 11.4745
20 0.007696 11.5112
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.05
2 0.007883 11.6204
4 0.0079268 11.6469
6 0.0078331 11.5925
8 0.007752 11.5449
10 0.0076731 11.4981
12 0.0076003 11.4546
14 0.0075383 11.4172
16 0.0074904 11.3883
18 0.0074587 11.3692
20 0.0074437 11.3690
Tabel 4. 7 Hasil Pengujian Algoritma Referensi Derau Pantai
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.1
2 0.0026829 4.2878
4 0.0026334 4.1797
6 0.0025881 4.078
8 0.0025545 4.0018
10 0.002542 3.9747
12 0.0025526 4.0024
14 0.0025801 4.0694
16 0.0026126 4.1473
18 0.0026392 4.2105
20 0.0026554 4.2495
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
45
0.01
2 0.0026706 4.2563
4 0.0026568 4.2256
6 0.0026101 4.1195
8 0.0025691 4.0241
10 0.0025453 3.968
12 0.0025447 3.9668
14 0.0025649 4.0153
16 0.0025965 4.0896
18 0.0026271 4.1607
20 0.0026485 4.2098
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.05
2 0.0026706 4.2575
4 0.0026829 4.2856
6 0.0026568 4.2281
8 0.0026334 4.176
10 0.0026101 4.1232
12 0.0025881 4.073
14 0.0025691 4.0293
16 0.0025545 3.9955
18 0.0025453 3.9744
20 0.002542 3.9673
Tabel 4. 8 Hasil Pengujian Algoritma Referensi Derau Televisi
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.1
2 0.00011649 5.9965
4 0.00011474 5.9149
6 0.0001132 5.8414
8 0.0001121 5.7879
10 0.00011174 5.7701
12 0.00011216 5.791
14 0.00011316 5.8396
16 0.00011434 5.8963
18 0.00011533 5.9431
46
20 0.00011595 5.9726
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.01
2 0.00011594 5.9716
4 0.00011555 5.9494
6 0.00011394 5.8765
8 0.00011257 5.8107
10 0.00011182 5.7736
12 0.00011186 5.7757
14 0.00011261 5.8128
16 0.00011376 5.868
18 0.00011488 5.9214
20 0.00011568 5.9596
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.05
2 0.00011594 5.9716
4 0.00011649 5.9939
6 0.00011555 5.9494
8 0.00011474 5.9126
10 0.00011394 5.8765
12 0.0001132 5.8412
14 0.00011257 5.8107
16 0.0001121 5.7876
18 0.00011182 5.7736
20 0.00011186 5.7757
Tabel 4. 9 Hasil Pengujian Algoritma Referensi Derau Kipas Angin
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
47
0.1
2 0.0024689 3.4446
4 0.0024647 3.3477
6 0.0024608 3.3147
8 0.0024579 3.3009
10 0.0024571 3.2891
12 0.0024588 3.2701
14 0.0024623 3.2415
16 0.0024662 3.2073
18 0.0024693 3.175
20 0.002471 3.1496
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.01
2 0.0024677 7.6443
4 0.0024667 5.3922
6 0.0024627 4.6636
8 0.0024592 4.3358
10 0.0024572 4.1568
12 0.0024577 4.0441
14 0.0024604 3.9666
16 0.0024643 3.9132
18 0.002468 3.8807
20 0.0024704 3.8663
LANGKAH ORDO
FILTER
KONDISI
MSE SNR
0.05
2 0.0024677 4.0097
4 0.0024689 3.7291
6 0.0024667 3.6047
8 0.0024647 3.5332
10 0.0024627 3.4893
12 0.0024608 3.4611
14 0.0024592 3.4423
16 0.0024579 3.4291
18 0.0024572 3.419
20 0.0024577 3.4023
48
Perbandingan nilai ordo dan langkah pada Algoritma Least Mean Square
dengan Adaptive Filter yang dimuat dalam tabel – tabel diatas menunjukan bahwa
nilai MSE dan SNR yang paling kecil ditunjukan oleh kombinasi nilai ordo adalah
10 dan nilai langkah adalah 0.1. Semakin kecil besar nilai ordo pada adaptive
filter maka hasil dari MSE dan SNR akan semakin kecil namun seiring dengan
pertambahan nilai tersebut dalam suatu waktu nilai MSE dan SNR akan kembali
naik. Maka dari itu diperlukan kombinasi tepat agar mendapat nilai yang optimal.
49
BAB V
SIMPULAN DAN SARAN
BAB V SIMPULAN DAN SARAN
5.1 Simpulan
Proses penghapusan derau pada sinyal suara dapat dilakukan dengan
menggunakan algoritma Least Mean Square. Dan dengan ditambahkannya
adaptive filter akan membuat kualitas dari sinyal data suara masukkan akan
meningkat dan memiliki nilai SNR yang lebih kecil dari nilai SNR awal.
Selanjutnya pada penelitian ini menggunakan kombinasi nilai ordo dan langkah
yang diuji cobakan sehingga mendapatkan kombinasi yang tepat untuk mendapat
nilai Mean Square Error dan nilai Signal to Noise Ratio yang minimal. Dari
penelitian ini diketahui kombinasi nilai ordo dan langkah terbaik yang dapat
digunakan untuk mendapat nilai MSE dan SNR yang minimal adalah ordo = 10
dan langkah = 0.1 yang menghasilkan nilai MSE = 0.00437 dan SNR = 15.9269.
5.2 Saran
Saran-saran yang dapat digunakan untuk pengembangan sistem lebih
lanjut adalah sebagai berikut:
1. Menambah variasi noise yang akan menjadi referensi bagi sistem untuk
pengahapusan derau. Penambahan jenis noise akan membuat sistem lebih
baik saat melakukan proses penghapusan derau.
2. Algoritma Least Mean Square merupakan algoritma yang sederhana sehingga
memungkinkan untuk nilai yang didapat belumlah optimal. Perkembangan
dari algoritma ini sangat disarankan untuk mendapatkan nilai yang lebih
optimal sesuai dengan keinginana peneliti.
50
DAFTAR PUSTAKA
Abushariah, a a M., Gunawan, T. S., Khalifa, O. O., & Abushariah, M. a M.
(2010). English digits speech recognition system based on Hidden Markov
Models. Computer and Communication Engineering ICCCE 2010
International Conference on, (May), 1–5.
Gyanendra Singh, Kiran Savita, Shivkumar Yadav. (May 2013). Design of
Adaptive Noise Canceller using LMS Algorithm. International Journal of
Advanced Technology & Engineer Research (IJATER), 85-89.
Hartmann, W. M. (1997). Signal, Sound, and Sensation. Springer.
Ittichaichareon, C., Suksri, S., & Yingthawornsuk, T. (2012). Speech Recognition
using MFCC, 135–138.
K. Koutroumbas, and S. Theodoridis . (2006). Pattern Recognition (Third
Edition). Academic Press.
Kosko, B. (2006). Noise. Viking Press.
Lestariningati, S. I. (n.d.). Simulasi Algoritma Filter Adaptif Pada Pengolahan
Sinyal Digital. Majalah Ilmiah UNIKOM, 59-67.
Md Sahidullah and Goutam Saba. (May 2012). Design Analysis and Experimantal
Evaluation of Block Based Transformation in MFCC Computation for
Speech Recognition.
Muda, L., Begam, M., & Elamvazuthi, I. (2010). Voice Recognition Algorithms
using Mel Frequency Cepstral Coefficient ( MFCC ) and Dynamic Time
Warping ( DTW ) Techniques. Journal of Computing, 2(3), 138–143.
Nelson Morgan, Herve Bourland, and Hynek Hermansky. (2004). Automatic
Speech Recognition. Springer.
Priemer, R. (1991). Introductory Signal Processing. World Scientific.
51
Rabiner, L. I., Levinson, S. E., Rosenberg, A. E., & Wilpon, J. A. Y. G. (1979).
Speaker-Independent Recognition of Isolated Words Using Clustering
Techniques. IEEE Trans. Acoustics, Speech, Signal Proc, ASSP-27(4), 336–
349.
Susetyo Bagas Bhaskoro, Altedzar Riedho W.D. (2012). Aplikasi Pengenalan
Gender Menggunakan Suara. SNATI 2012, H-16 - H-23.
Yultrisna. (Oktober 2008). Aplikasi Algoritma LMS (Least Mean Square) untuk
Penghapusan Interferensii Suara. Poli Rekayasa, 77-84.
53
LANGKAH ORDO
FILTER
KONDISI
MSE GALAT SNR
0.1
2 0.00472 5.91E-05 16.2658
4 0.00451 5.61E-05 16.0625
6 0.00443 5.33E-05 15.9858
8 0.00439 5.33E-05 15.9441
10 0.00437 5.04E-05 15.9269
12 0.00438 5.03E-05 15.9297
14 0.00439 5.05E-05 15.9463
16 0.00441 5.06E-05 15.9674
18 0.00443 5.12E-05 15.9847
20 0.00444 5.16E-05 15.9945
22 0.00444 5.14E-05 15.992
24 0.00445 5.12E-05 16.0042
26 0.00446 5.11E-05 16.0129
28 0.00447 5.06E-05 16.0243
30 0.00448 5.03E-05 16.0336
32 0.00448 5.05E-05 16.0362
34 0.00447 5.1E-05 16.0313
36 0.00447 5.13E-05 16.0231
38 0.00446 5.18E-05 16.0186
40 0.00447 5.19E-05 16.0231
42 0.00448 5.16E-05 16.0368
44 0.0045 5.13E-05 16.0543
46 0.00451 5.07E-05 16.0676
48 0.00451 5.05E-05 16.0707
50 0.0045 5.13E-05 16.064
52 0.00449 5.24E-05 16.0538
54 0.00449 5.33E-05 16.0483
56 0.00449 5.4E-05 16.0531
58 0.00451 5.44E-05 16.0674
60 0.00452 5.44E-05 16.0848
LANGKAH ORDO
FILTER KONDISI
54
MSE GALAT SNR
0.01
2 0.00462 5.81E-05 16.1713
4 0.00457 5.91E-05 16.123
6 0.00447 5.96E-05 16.0177
8 0.00441 5.98E-05 15.9605
10 0.00438 5.96E-05 15.9314
12 0.00437 5.94E-05 15.9245
14 0.00438 5.93E-05 15.9348
16 0.0044 5.88E-05 15.9546
18 0.00442 5.83E-05 15.9744
20 0.00444 5.8E-05 15.9877
22 0.00444 5.75E-05 15.9941
24 0.00445 5.7E-05 15.998
26 0.00445 5.64E-05 16.0044
28 0.00446 5.58E-05 16.0146
30 0.00447 5.52E-05 16.0254
32 0.00448 5.47E-05 16.0314
34 0.00448 5.46E-05 16.0298
36 0.00447 5.47E-05 16.0222
38 0.00446 5.48E-05 16.0147
40 0.00446 5.48E-05 16.014
42 0.00447 5.51E-05 16.0233
44 0.00449 5.55E-05 16.0396
46 0.0045 5.59E-05 16.0557
48 0.00451 5.63E-05 16.064
50 0.00451 5.63E-05 16.0616
52 0.0045 5.62E-05 16.0518
54 0.00449 5.63E-05 16.0428
56 0.00449 5.63E-05 16.0418
58 0.0045 5.57E-05 16.0516
60 0.00452 5.49E-05 16.0683
55
LANGKAH ORDO
FILTER
KONDISI
MSE GALAT SNR
0.05
2 0.00462 5.95E-05 16.1714
4 0.00472 5.99E-05 16.2656
6 0.00457 5.98E-05 16.1233
8 0.00451 5.95E-05 16.0622
10 0.00447 5.91E-05 16.018
12 0.00443 5.87E-05 15.9853
14 0.00441 5.82E-05 15.9609
16 0.00439 5.77E-05 15.9434
18 0.00438 5.72E-05 15.932
20 0.00437 5.68E-05 15.9261
22 0.00437 5.65E-05 15.9252
24 0.00438 5.64E-05 15.9287
26 0.00438 5.63E-05 15.9357
28 0.00439 5.61E-05 15.9451
30 0.0044 5.6E-05 15.9556
32 0.00441 5.59E-05 15.9661
34 0.00442 5.58E-05 15.9755
36 0.00443 5.59E-05 15.9832
38 0.00444 5.59E-05 15.989
40 0.00444 5.58E-05 15.9929
42 0.00444 5.57E-05 15.9955
44 0.00444 5.55E-05 15.9974
46 0.00445 5.52E-05 15.9995
48 0.00445 5.5E-05 16.0022
50 0.00445 5.47E-05 16.006
52 0.00446 5.45E-05 16.0108
54 0.00446 5.42E-05 16.0164
56 0.00447 5.38E-05 16.0221
58 0.00447 5.35E-05 16.0273
60 0.00448 5.32E-05 16.0313