PROTOTIPE PENGENALAN SUARA SEBAGAI PENGGERAK DINAMO STARTER PADA MOBIL
Rezza Aditya/20405609 Fakultas Teknologi Industri, Jurusan Teknik Mesin Universitas Gunadarma Jl. Margonda Raya No.100, Depok 16424 E-mail :
[email protected] ABSTRAK Pengolahan sinyal digital telah banyak digunakan dalam berbagai aplikasi, salah satunya adalah teknik pengenalan suara. Penulisan ini bertujuan untuk membuat prototipe sistem yang memanfaatkan teknologi pengenalan suara (speaker recognition) sebagai penggerak dinamo starter pada mobil. Speaker recognition dibagi menjadi 2 bagian, yaitu speaker verification dan speaker identification. Teknologi ini juga menggunakan dua metode, yaitu MFCC (Mel Frequency Cepstrum Coefficients) untuk proses ekstraksi ciri dari sinyal suara dan kedua metode DTW (Dynamic Time Warping) untuk proses pencocokan. Perancangan prototipe pengenalan suara menggunakan modul Parallax Say It, modul mikrokontroller AVR ATMega16, modul LCD 16x2, modul motor driver, Motor dc, baterai 12V. Proses pengolahan sinyal suara dilakukan pada software Matlab untuk mengetahui cara kerja metode MFCC dan DTW. Hasil pengujian memperlihatkan tingkat akurasi paling rendah adalah 80 % dengan nilai threshold 3,5118, sedangkan tingkat akurasi tertinggi yaitu 85 % dengan nilai threshold 5,3.
Kata Kunci
: Pengenalan Suara, MFCC, DTW, Mikrokontroler, Matlab.
1
(http://donupermana.wordpress.com/maka
1. PENDAHULUAN
lah/sistem-biometrik-absensi). Dengan
adanya
Pada tugas akhir ini dibuat sebuah
kemajuan
teknologi dalam bidang pengolahan sinyal
prototipe
sistem
digital (Digital Signal Processing) telah
teknologi
pengenalan
membawa
Recognition) yang menggunakan modul
dampak
positif
dalam
suara
digital telah banyak digunakan dalam
pengolahan sinyal suara yang diteruskan
berbagai
contoh,
ke Mikrokontroler ATMega16. Sistem ini
aplikasi-aplikasi tersebut meliputi teknik
diharapkan akan mengenali suara dari
pengenalan suara, kompresi sinyal (data,
pengguna kemudian hasil dari pengenalan
gambar), dan juga televisi dan telepon
suara tersebut digunakan sebagai kata
digital (Dadang Gunawan dan Filbert
sandi dan perintah untuk menjalankan
Hilman Juwono, 2012).
dinamo starter/motor dc yang kemudian
Teknologi
pengenalan
salah
satu
teknologi
yang
tidak
biometrika
pemroses
akan menghidupkan mobil.
suara (speaker
recognition) merupakan
sebagai
(Speaker
Parallax
Sebagai
It
memanfaatkan
kehidupan manusia. Pengolahan sinyal
aplikasi.
Say
yang
2. LANDASAN TEORI
memerlukan biaya besar serta peralatan
2.1
khusus. Pada dasarnya setiap manusia
Dalam kehidupan sehari-hari, manusia
memiliki sesuatu yang unik/khas yang
melakukan berbagai jenis komunikasi
hanya dimiliki oleh dirinya sendiri. Suara
dengan sesama manusia, misalnya: body
merupakan salah satu dari bagian tubuh
language, berbicara (speech) dan lain-lain.
manusia yang unik dan dapat dibedakan
Diantara
banyak
dengan mudah. Disamping itu, sistem
dilakukan
oleh
biometrika suara memiliki karakteristik
(speech)
seperti, tidak dapat lupa, tidak mudah
informasi penting dan paling efektif dalam
hilang dan tidak mudah untuk dipalsukan
berkomunikasi.
karena keberadaannya melekat pada diri
tersebut
manusia
kesehatan,
sehingga
keunikannya
lebih
Konsep Dasar Pengenalan Suara
pembicara.
terjamin.
2
komunikasi manusia,
memberikan
antara emosi,
paling
yang
berbicara banyak
Informasi-informasi lain: gender, keadaan serta
identitas
Pengenalan suara dapat dikategorikan
Speaker
menjadi
verifikasi seorang pembicara, yang mana
3
bagian,
recognition,
yaitu
speaker
speech
recognition
verification adalah
sebelumnya
telah
proses
diketahui
identitas
dan language recognition. Dalam tugas
pembicara tersebut berdasarkan data yang
akhir ini membahas mengenai pengolahan
telah
sinyal
lebih
verification melakukan perbandingan one
membahas
to one (1:1). Dalam arti bahwa fitur-fitur
speaker
spesifiknya
recognition lagi
diinputkan. Speaker
tentang speaker verification/dependent.
suara
Speaker recognition adalah suatu proses
dibandingkan secara langsung dengan
yang bertujuan mengenali siapa yang
fitur-fitur seorang pembicara tertentu yang
sedang berbicara berdasarkan informasi
ada dalam sistem. Bila hasil perbandingan
yang terkandung dalam gelombang suara
(skor) tersebut lebih kecil atau sama
yang
di-input-kan. Speaker
dengan batasan tertentu (treshold), maka
recognition dibagi menjadi 2 bagian, yaitu
pembicara tersebut diterima, bila tidak
speaker
maka
identification.
verification dan speaker Taxonomy
pemrosesan
dari
akan
seorang
ditolak
pembicara
(dengan
asumsi
semakin kecil skor berarti kedua sampel
suara dapat dilihat pada Gambar 2.1.
semakin mirip). Gambar dibawah adalah blok diagram dari speaker verification. Feature Input speech
Feature extraction (MFCC)
Match Pattern matching (DTW)
Vector
Speaker ID
enrollment
Decision Scores
Speaker model
Accept
Reject
Gambar 2.2 Blok Diagram Speaker Verification Speaker
identification adalah
mendapatkan Gambar 2.1 Taxonomi Pemrosesan Suara
identitas
dari
proses seorang
pembicara dengan membandingkan fiturfitur suara yang diinputkan dengan semua fitur-fitur dari setiap pembicara yang ada
3
dalam
database. Berbeda
dengan
pada speaker
verification, proses
ini
melakukan
perbandingan one
to
many (1:N).
2.2
MFCC (Mel Frequency Cepstrum Coefficients)
MFCC
(Mel
Coefficients)
Frequency merupakan
Gambar 2.3 Contoh Sinyal Suara
Cepstrum salah
satu
metode yang banyak digunakan dalam
Contoh dari sinyal suara dapat dilihat pada
bidang speech
gambar di atas. Pengujian yang dilakukan
technology, baik speaker
recognition maupun speech
untuk periode waktu yang cukup pendek
recognition. Metode ini digunakan untuk
(sekitar 10 sampai 30 milidetik) akan
melakukan feature
menunjukkan
extraction, sebuah
karakteristik sinyal suara
proses yang mengkonversikan sinyal suara
yang stationary.Tetapi
menjadi beberapa parameter. Beberapa
dalam periode waktu yang lebih panjang
keunggulan dari metode ini adalah sebagai
karakteristik signal suara
berikut:
berubah
a.
Mampu
untuk
sesuai
bila
dilakukan
akan
dengan
kata
terus yang
diucapkan.
menangkap
karakteristik suara yang sangat penting
MFCC feature
bagi pengenalan suara, atau dengan kata
merupakan
lain dapat menangkap informasi-informasi
pendengaran
penting
signal suara akan di-filter secara linear
yang
terkandung
extraction sebenarnya adaptasi
dari
manusia,
sistem dimana
untuk frekuensi rendah (dibawah 1000
dalam sinyal suara. seminimal
Hz) dan secara logaritmik untuk frekuensi
mungkin, tanpa menghilangkan informasi-
tinggi (diatas 1000 Hz). Gambar dibawah
informasi penting yang dikandungnya.
ini merupakan block diagram untuk
c.
MFCC.
b.
Menghasilkan
data
Mereplikasi organ pendengaran
manusia
dalam
melakukan
persepsi
terhadap sinyal suara.
4
minimal harus 2 kali lebih tinggi dari Continuous speech
Pre-emphasis
Remove DC
Decision
frekuensi Frame
Mel spectrums Discrete cosine trnsform
maksimum
yang akan
sampling. Jika signal
di-
sampling kurang
Spectrums
Mel frequency warping
dari
Fast fourier transform
2
kali
frekuensi
Windowing
maksimum sinyal yang
akan
di-
Mel cepstrums
sampling, maka akan timbul efek aliasing. Cepstral liftering
Aliasing adalah Feature extraction
suatu
efek
dimana
sinyal yang dihasilkan memiliki frekuensi
Gambar 2.4 Blok Diagram untuk MFCC
yang berbeda dengan sinyal aslinya. Proses kuantisasi adalah proses untuk
2.2.1 Konversi Analog menjadi Digital
membulatkan
Sinyal–sinyal yang natural pada umumnya
bilangan-bilangan tertentu
seperti sinyal suara
ditentukan
merupakan signal
nilai
terlebih
data
ke
dalam
yang telah
dahulu.
Semakin
continue dimana memiliki nilai yang tidak
banyak level yang dipakai maka semakin
terbatas.
akurat pula data sinyal yang disimpan
Sedangkan
semua sinyal yang
pada komputer, dapat
oleh komputer
diproses
tetapi akan menghasilkan ukuran data
hanyalah signal dikenal
besar dan proses yang lama.
discrete atau
sering
sebagai
istilah digital
signal. Agar sinyal natural
pemberian kode untuk tiap-tiap data sinyal
dapat diproses oleh komputer, maka harus
yang telah terkuantisasi berdasarkan level
diubah terlebih dahulu dari data signal
yang ditempati.
Proses
pengkodean
adalah
continue menjadi 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,
Gambar 2.5 Proses
berlaku
aturan Nyquist,
yaitu
frekuensi sampling
(sampling
Pembentukan Sinyal Digital
bahwa
2.2.2
rate)
5
Remove DC
proses
Remove DC bertujuan untuk menghitung
menghasilkan sekitar -12 dB octave slope.
rata-rata dari data sampel suara, dan
Namun ketika energi akustik tersebut
mengurangkan nilai setiap sampel suara
dikeluarkan
dengan nilai rata-rata tersebut. Tujuannya
peningkatan sebesar +6 dB. Sehingga
adalah mendapat normalisasi dari data
sinyal yang terekam oleh microphone
suara input.
adalah sekitar -6dB octave slope. Dampak
melalui
bibir,
terjadi
dari ini dilihat pada gambar di bawah ini. .......................(2.1) dimana: y[n]
= sampel sinyal hasil proses
remove DC. x[n]
= sampel sinyal asli. = nilai rata-rata sampel sinyal asli.
N
= panjang sinyal.
2.2.3 Pre-Emphasis Filter
Gambar 2.6 Contoh dari Pre-
Pre-emphasis filter merupakan salah satu
Emphasis pada Sebuah Frame
jenis filter yang sering digunakan sebelum sebuah sinyal diproses lebih lanjut. Filter
Pada
ini mempertahankan frekuensi-frekuensi
distribusi energi
tingi
terlihat
pada
sebuah
spectrum,
yang
gambar
lebih
diatas
terlihat
bahwa
pada setiap frekuensi seimbang
setelah
umumnya tereliminasi pada saat proses
diimplementasikan pre-emphasis filter.
produksi suara.
Bentuk yang paling umum digunakan
Tujuan dari Pre-emphasis filter ini adalah
dalam pre- emphasis filter adalah sebagai
sebagai berikut:
berikut:
a. sinyal,
Mengurangi sehingga
pada
H(z) = 1-αz 1........................................(2.2)
meningkatkan
Dimana 0.9 ≤ α ≤ 1.0, dan α € R. Formula
noise dapat
ratio
kualitas sinyal.
diatas dapat dijadikan sebagian first order
b.
differentiator, sebagai berikut:
Menyeimbangkan spektrum dari
voice sound. Pada saat memproduksi
y[n] = s[n]–αs[n-1]......................... (2.3)
voiced
dimana:
sound,
glottis
manusia
6
y[n]
= sinyal hasil pre-emphasis filter.
Proses frame ini dilakukan terus sampai
s[n]
= sinyal sebelum pre-emphasis
seluruh sinyal dapat diproses. Selain itu,
filter.
proses ini umumnya dilakukan secara overlapping untuk setiap frame- nya.
2.2.4 Frame Blocking
Panjang daerah overlap yang umum
Karena sinyal suara terus mengalami
digunakan adalah kurang lebih 30%
perubahan
sampai
akibat
adanya
pergeseran
50%
dari
panjang
frame.
artikulasi dari organ produksi vokal ,
Overlapping dilakukan untuk menghindari
sinyal
hilangnya ciri atau karakteristik
harus
diproses
secara
short
segments (short frame). Panjang frame
suara
pada perbatasan perpotongan setiap frame.
yang biasa digunakan untuk pemrosesan sinyal adalah antara 10-30 milidetik.
2.2.5
Panjang frame yang digunakan sangat
Proses
mempengaruhi keberhasilan dalam analisa
terjadinya kebocoran spektral (spectral
spektral. Di satu sisi, ukuran dari frame
leakage) atau aliasing. Aliasing adalah
harus sepanjang mungkin untuk dapat
sinyal baru dimana memiliki frekuensi
menunjukkan frekuensi yang baik. Tetapi
yang berbeda dengan sinyal aslinya. Efek
di lain sisi, ukuran frame
juga harus
ini dapat terjadi karena rendahnya jumlah
cukup pendek untuk dapat menunjukkan
sampling rate, ataupun karena proses
resolusi waktu yang baik.
frame blocking dimana menyebabkan
Windowing
sinyal
framing
menjadi
mengurangi
dapat
menyebabkan
discontinue.
kemungkinan
Utuk
terjadinya
kebocoran spektral, maka hasil dari proses framing harus melewati proses window. Sebuah fungsi window yang baik harus menyempit pada bagian main lobe dan melebar pada bagian side lobe-nya. Berikut adalah representasi dari fungsi
Gambar 2.7 Bentuk Sinyal yang di
window
Frame Blocking
terhadap
diinputkan.
7
sinyal
suara
yang
spectral properties sering disebut sebagai spectrogram.
.................(2.4)
Dalam spectrogram terdapat hubungan
dimana: =
nilai
sampel
sinyal
yang sangat erat antara waktu dan
hasil
frekuensi. Hubungan antara frekuensi dan
windowing
waktu
= nilai sampel dari frame sinyal ke
terbalik.
i
= frame
Bila
hubungan resolusi
berbanding waktu
yang
digunakan tinggi, maka resolusi frekuensi
= fungsi window N
adalah
size,
yang dihasilkan akan semakin rendah.
merupakan
kelipatan 2 2.2.6.1 Discrete
Fourier
Transform
Ada banyak fungsi window, namun yang
(DFT)
paling sering digunakan dalam aplikasi
DFT
speaker
hamming
transformasi fourier yang berlaku untuk
window. Fungsi window ini menghasilkan
sinyal-sinyal diskrit dengan panjang yang
sidelobe level yang tidak terlalu tinggi
terhingga.
(kurang lebih -43 dB), selain itu noise
terbentuk dari gabungan sinyal-sinyal
yang dihasilkan pun tidak terlalu besar .
sinusoidal yang menjadi satu yang dapat
Fungsi Hamming window adalah sebagai
dirumuskan sebagai berikut:
recognition
adalah
merupakan
perluasan
Semua
sinyal
dari
periodik
berikut: ................(2.6) .............................(2.5)
dimana:
dimana:
N
n
= 0,1,...,M-1
diproses
M
= panjang frame
=
jumlah
sampel
yang
akan
= nilai sampel sinyal k
2.2.6 Analisis Fourier
dimana
Analisis fourier adalah sebuah metode
=
variabel akan
frekuensi
bernilai .
yang memungkinkan untuk melakukan analisa terhadap spectral properties dari sinyal yang diinputkan. Representasi dari
8
(
diskrit,
Dengan rumus diatas, suatu sinyal suara
tersebut dimasukkan dalam fungsi DFT
dalam domain waktu dapat kita cari
maka akan menghasilkan N buah data.
frekuensi pembentuknya. Hal inilah tujuan
Namun karena hasil dari DFT adalah
penggunaan analisa fourier pada data
simetris, maka hanya N/2 data yang
suara, yaitu untuk merubah data dari
diambil sebagai spektrum.
domain waktu menjadi data spektrum di domain frekuensi. Untuk pemrosesan
2.2.6.2 Fast Fourier Transform (FFT)
sinyal
sangat
Perhitungan DFT secara langsung dalam
menguntungkan karena data pada domain
komputerisasi dapat menyebabkan proses
frekuensi dapat diproses dengan lebih
perhitungan yang sangat lama. Hal itu
mudah dibandingkan data pada domain
disebabkan
waktu, karena pada domain frekuensi,
dibutuhkan
keras lemahnya suara tidak seberapa
kompleks. Hal itu dapat dilakukan dengan
berpengaruh.
algoritma fast fourier transform (FFT)
suara,
hal
inilah
dimana
karena
dengan
perkalian
FFT
DFT, bilangan
menghilangkan
proses
perhitungan yang kembar dalam DFT.
2.2.7 Mel
Mel Frequency Wrapping Freqency Wrapping umumnya
dilakukan
dengan
menggunakan
Filterbank. Filterbank adalah salah satu dari bentuk filter yang dilakukan dengan tujuan untuk mengetahui ukuran energi dari frequency band tertentu dalam sinyal
Gambar 2.8 Domain Waktu Menjadi
suara. Filterbank dapat diterapkan baik
Domain Frekuensi
dalam
domain
waktu
maupun
pada
domain frekuensi, tetapi untuk keperluan
Untuk mendapatkan spektrum dari sebuah
MFCC, filterbank harus diterapkan dalam
sinyal dengan DFT diperlukan N buah
domain frekuensi.
sampel data berurutan pada domain waktu, yaitu x[m] sampai x[m+N-1]. Data
9
Presepsi manusia terhadap frekuensi dari sinyal suara tidak mengikuti linier scale. Frekuensi yang sebenarnya (dalam Hz) dalam sebuah sinyal akan diukur manusia secara subyektif dengan menggunakan mel scale. Mel frequency scale adalah linier frekuensi scale pada frekuensi dibawah
1000
Hz
dan
merupakan
logarithmic scale pada frekuensi diatas 1000 Hz. Gambar 2.9 2.2.8
Magnitude dari Rectangular dan Triangul
menggunakan
konvolusi
dalam
terhadap
sinyal.
Cosine
Transform
(DCT)
ar Filterbank Filterbank
Discrete
DCT merupakan langkah terakhir dari
representasi
melakukan
filter
proses utama MFCC feature extraction.
Konvolusi
dapat
Konsep
dasar
dari
DCT
adalah
dilakukan dengan melakukan multiplikasi
mendekorelasikan mel spectrum sehingga
antara spektrum sinyal dengan koefisien
menghasilkan representasi yang baik dari
filterbank. Berikut ini adalah rumus yang
properti spektral lokal. Pada dasarnya
digunakan dalam filterbanks.
konsep DCT sama dengan inverse fourier transform.
.........................(2.7)
Namun
hasil
dari
DCT
mendekati PCA (principle component analysis). PCA adalah metode statik
dimana: N
klasik yang digunakan secara luas dalam
= jumlah magnitude spectrum
analisa data dan kompresi. Hal inilah yang S[j]
=
magnitude
spectrum
menyebabkan
pada
koefisien
filterbank
dalam proses MFCC feature extraction.
pada
Berikut adalah formula yang digunakan
frekuensi j (1 ≤ i ≤ M). M
DCT
menggantikan inverse fourier transform
frekuensi j. =
seringkali
untuk menghitung DCT.
= jumlah channel dalam filterbank.
10
Cepstral liftering dapat dilakukan dengan mengimplementasikan
fungsi
window
terhadap cepstral features. .............(2.8)
dimana: ..........................(2.9)
= keluar dari proses filterbank pada dimana:
index k. =
jumlah
koefisien
L = jumlah cepstral coefficients.
yang
N= index dari cepstral coefficients.
diharapkan.
Cepstral liftering menghaluskan spektrum
Koefisien ke nol dari DCT pada umumnya
hasil dari main processor sehingga dapat
akan dihilangkan, walaupun sebenarnya
digunakan
mengindikasikan energi dari frame sinyal tersebut.
Hal
berdasarkan
dilakukan
baik
untuk
pattern
matching.
karena,
penelitian-penelitian
lebih
yang
pernah dilakukan, koefisien ke nol ini tidak
reliable
terhadap
2.3
speaker
Pencocokan
dengan
Metode
DTW (Dynamic Time Warping)
recognition.
Satu masalah yang cukup rumit dalam pengenalan wicara adalah poses
2.2.9 Cepstral Liftering
perekaman yang terjadi seringkali berbeda
Hasil dari proses utama MFCC feature
durasinya, biarpun kata atau kalimat yang
extraction memiliki beberapa kelemahan.
diucapkan sama. Bahkan untuk satu suku
Low order dari cepstral coefficients sangat sensitif
terhadap
spectral
kata yang sama atau vokal yang sama
slope,
seringkali proses perekaman terjadi dalam
sedangkan bagian high order-nya sangat
durasi yang berbeda. Sebagai akibatnya
sensitif terhadap noise. Oleh karena itu,
proses matching antara sinyal uji dengan
cepstral liftering menjadi salah satu
sinyal referensi (template) seringkali tidak
standar teknik yang diterapkan untuk
menghasilkan nilai yang optimal.
meminimalisasi sensitifitas tersebut.
11
Sebuah
teknik
yang
cukup
Jarak DTW diantara dua vektor
populer di awal perkembangan teknologi
dihitung
pengolahan sinyal wicara adalah dengan
optimal (optimal warping path) dari dua
memanfaatkan sebuah teknik dynamic-
vektor
programming yang juga lebih dikenal
dengan metode DTW ditunjukkan pada
sebagai Dynamic Time Warping (DTW).
gambar dibawah ini.
Teknik
ini
ditujukan
dari
tersebut.
jalur
pembengkokkan
Ilustrasi
pencocokan
untuk
mengakomodasi perbedaan waktu antara proses perekaman saat pengujian dengan yang
tersedia
pada
template
sinyal
Gambar 2.10 Pencocokan Sequence (a)
referensi. Prinsip dasarnya adalah dengan
Alignment Asli dari 2 Sequence (b)
memberikan sebuah rentang „steps‟ dalam
Alignment dengan DTW
ruang (dalam hal ini sebuah frame-frame waktu dalam sample, frame-frame waktu
Dari beberapa teknik yang digunakan
dalam template) dan digunakan untuk
untuk menghitung DTW, salah satu yang
mempertemukan menunjukkan
local
lintasan
yang
paling handal adalah dengan metode
match
terbesar
pemrograman dinamis. Jarak DTW dapat
(kemiripan) antara time frame yang lurus.
dihitung dengan rumus:
Total similarity cost yang diperoleh dengan algorithm ini merupakan sebuah indikasi seberapa bagus sample dan template
ini memiliki kesamaan, yang
selanjutnya akan dipilih best-matching ...............(2.10)
template.
Kolom dengan nilai dinamakan matriks
DTW (Dynamic Time Warping)
jarak terjumlahkan. Berikut ini adalah
adalah metode untuk menghitung jarak
contoh matriks jarak terjumlahkan.
antara dua data time series. Keunggulan DTW dari metode jarak yang lainnya adalah mampu menghitung jarak dari dua vektor data dengan panjang berbeda.
12
AVR ATmega16 3 LCD 16x2
1
4 Motor driver
1
5 Motor dc
1
6 Baterai 12 V
1
Gambar 2.11 Ilustrasi Matriks Jarak
Semua komponen dipasang sesuai dengan
Terjumlahkan (Cumulative Distance
rangkaian yang digunakan. Kemudian
Matrix) antara 2 Vektor
rangkaian tersebut diuji coba dengan menggunakan
multimeter,
untuk
mengetahui apakah rangkaian tersebut
3. PERANCANGAN
sudah terhubung dengan benar. Diagram 3.1
blok dari prototipe alat pengenalan suara
Perancangan Alat
ini adalah sebagai berikut:
Perancangan suatu alat yang
Motor Driver
akan dibuat merupakan suatu tahapan yang sangat penting dalam membuat
P2(Output1)
L298 VDC GND
Dinamo Starter
PA5
DB5 DB6 DB7 VDD VSS
Regulator
(+)
(+)+12V
(-)
Baterai 12V
Gambar 3.1 Blok diagram sistem pengenalan beberapa
Dan untuk konsep desain seperti gambar dibawah ini:
Tabel 3.1 Daftar alat/modul Alat/modul
DB4
Saklar
modul yang dilampirkan pada tabel 3.1
No.
7805 (-)
(+)
menghidupkan mobil. membutuhkan
E
PA4
+5V (+)
suatu alat pengenalan suara untuk
ini
PA2
PA7 PB0(RX) PB1(TX) P10(VCC) P11(GND) PB2
RX TX Led
(-)
yang penulis buat adalah pengendalian
suara
R/W
diharapkan
maksimal, dalam perancangan sistem
alat
RS
PA1
ATmega16
mendapatkan hasil yang baik dan
Pembuatan
LCD 16x2 PA0
PA6
Parallax Say It
langkah selanjutnya, karena dengan tersebut
PC5 PC4
P3(Output2)
suatu program ataupun melanjutkan ke perencanaan
Mikrokontroler P5(Input1) P7(Input2)
P9(Vss) P4(Vs) P8(GND)
Jumlah
1 Parallax say it
1
2 Mikrokontroller
1
13
Suara Manusia
Modul Parallax Say It
Baterai 12V
ATmega16
Modul LCD 2x16 Karakter
Gambar 3.3 Pin-pin ATMega16 kemasan
Motor Driver
40 pin
Pada mikrontroler AVR ATMega16, pin Dinamo Starter
PD0
Gambar 3.2 Konsep desain
Dalam Gambar 3.3 adalah berisi prinsip
dan
PD1
digunakan
komunikasi
serial
antarmuka
UART
untuk
menggunakan (Universal
Asynchronous Receiver/Transmitter) yang
kerja secara keseluruhan dari rangkaian
berfungsi untuk melakukan pertukaran
yang dibuat. Sehingga keseluruhan blok
data
dari alat dapat membentuk suatu sistem
atau
Konfigurasi
yang dapat bekerja atau difungsikan
komunikasi komunikasi
dua
arah.
serial
kedua
modul adalah 9600 baud, 8 bit data, No
sesuai dengan perancangan.
parity, 1 bit stop. PD0 (RXD) berfungsi untuk menerima data dari modul Parallax
3.1.1 Rangkaian Modul
Say It, dan PD1 (TXD) berfungsi untuk
Mikrokontroler Rangkaian
mikrokontroler
mengirim data ke modul Parallax Say It.
merupakan
Berikut adalah diagram blok koneksi
blok kendali dari alat, karena seluruh
modul
proses input dan output-nya dilakukan
parallax
say
mikrokontroler ATMega16:
pada blok rangkaian ini. Pada penelitian ini digunakan mikrokontroler berbasis AVR 8-bit ATMega16 dengan kemasan 40 pin DIP (Dual Inline Package) seperti yang ditunjukkan pada Gambar 3.4.
14
it
dengan
ATmega16
Parallax Say It
ERX ETX
3.3V – 5V GND TX(PIND.1) RX(PIND.0)
LED
PIND.2
VCC GND
mikrokontroler
yang
dipakai
apakah
lambat atau cepat.
Gambar 3.4 Koneksi modul Parallax Say It dengan modul ATMega16
Protokol komunikasi hanya menggunakan karakter ASCII (American Standard Code for Information Interchange) yang dibagi dalam dua kelompok utama:
Perintah
dan
status
Gambar 3.5 Skematik Modul
karakter,
Mikrokontroler
masing-masing di jalur TX dan RX, dipilih diantara huruf kecil.
3.1.2
Perintah argumen atau rincian
DC
status, pada jalur TX dan RX, yang
Sebuah rangkaian driver motor dc terdiri
mencakup berbagai huruf kapital.
atas
Setiap perintah yang dikirim pada jalur
sebagai r-sense, delapan buah dioda
RX dalam bentuk byte status yang diikuti
1N4002, dan dua buah kapasitor 100 nF.
oleh nol atau argumen lebih.
Semua
Ada penundaan minimum sebelum setiap
pada
sebuah
rangkaian
Gerak motor dc akan ditentukan dari input yang diberikan pada L298.Terdapat enam
10-90 ms, 100 ms-1 s. Pengaturan pada
kemudian
pergerakan motor dc pada mobil.
dan dapat dirubah dalam rentang 0-9 ms,
tergantung
menjadi
tersebut
driver motor yang akan mengendalikan
jalur
RX(PIND.0), pengaturan awalnya 20 ms
penundaan
komponen
dirangkai
byte yang dikirim dari modul parallax say mikrokontroler
sebagai
driver L298, dua buah resistor 10 ohm
tambahan, menerima jawaban pada jalur
ke
komponen-komponen
berikut, yaitu sebuah ic h-bridge motor
TX, dengan nol atau lebih byte argumen
it
Rangkaian Modul Driver Motor
jalur input pada L298 yang terdiri atas
jenis
input data arah pergerakan motor dan
15
input
untuk
PWM
(Pulse
Width
dilihat dengan jelas. Dibawah ini adalah
Modulation). Kecepatan motor akan diatur
gambar rangkaian modul LCD.
melalui variasi lebar pulsa yang diberikan oleh mikrokontroler sebagai input PWM. Dibawah ini adalah gambar rangkaian modul driver motor dc.
Gambar 3.7 Skematik modul LCD
3.1.4
Rangkaian Modul Pengenalan
Suara Parallax Say It merupakan modul voice
Gambar 3.6 Skematik Modul Motor
recognition
Driver
multi-fungsi.
Modul
ini
mendukung hingga 32 custom Speaker 3.1.3 Rangkaian Modul LCD
Dependet (SD) trigger atau perintah,
Untuk penampil perintah suara, maka
bahkan dapat digunakan pada bahasa
digunakan LCD 16x2 sebagai penampil
apapun. Komunikasi dengan perangkat
karakter angka dan huruf. Pemrograman
lain menggunakan komunikasi serial antar
pada LCD ini menggunakan mode 4-bit.
muka UART (Universal Asynchronous
Jadi bentuk pengukuran yang dilakukan
Receiver/Transmitter). Modul ini juga
dapat ditampilkan dengan LCD 16x2 ini
dapat
dan memerlukan program khusus pada IC
melalui USB menggunakan software GUI
Mikrokontroler untuk dapat memerintah
(Graphical User Interface) yang mudah
LCD 16x2 menampilkan karakter-karakter
digunakan.
tersebut. Jenis LCD yang perancang
menggunakan karakter ASCII. Dibawah
gunakan adalah modul LCD dot matrik
ini adalah gambar skema rangkaian modul
dengan konsumsi daya yang rendah,
Parallax Say It.
namun mempunyai tampilan yang lebar dengan kontras yang tinggi sehingga dapat
16
dihubungkan
dengan
Protokol
komputer
komunikasi
parameter
dari
sinyal
suara.
Proses
pengolahan sinyal suara dilakukan pada software Matlab. Pada penelitian ini, proses MFCC diimplementasikan dengan menggunakan toolbox yang telah tersedia, yaitu speech and audio processing toolbox yang dikembangkan oleh Roger Jang pada tahun 1996. Adapun tahapan-tahapan proses MFCC yang dilakukan adalah: voice recording, remove silent, remove dc, pre-emphasis, frame blocking, windowing, fast fourier transform, filterbank, discrete
Gambar 3.8 Skematik modul Parallax
consine transform dan cepstral liftering.
Say It
3.3
Hasil Perancangan 4.1.1
Voice Recording
Pengambilan data suara dilakukan dengan perekaman suara pada frekuensi sampel (Fs) 16 KHz selama dua detik. Gambar 4.1 merupakan sinyal suara kata “jitu‟.
Gambar 3.9 Hasil perancangan prototipe pengenalan suara sebagai penggerak dinamo starter pada mobil Gambar 4.1 Sinyal Suara Asli Kata “Jitu”
4. PEMBAHASAN 4.1
Pengolahan Sinyal Suara Tujuan dari proses pengolahan
Tempat yang digunakan untuk proses
suara adalah untuk mendapatkan ciri atau
pengambilan suara dilakukan pada kondisi
17
ruangan dengan tingkat kebisingan yang rendah, karena bila noise yang terdapat pada
ruangan
terlalu
besar
dapat
menyulitkan saat proses pembersihan data suara.
4.1.2 Remove Silent Langkah ini tidak termasuk dalam proses utama
MFCC.
Namun
Gambar 4.3 Data Suara setelah Proses
berdasarkan
Remove Silent
penelitian yang telah dilakukan, silent yang terdapat dalam data suara sangat
Apabila noise yang terdapat pada suara
mempengaruhi
keberhasilan
terlalu besar, maka proses pembersihan
sistem dalam melakukan pengenalan.
data ini tidak dapat berjalan dengan
Maka dari itu proses remove silent
optimal seperti yang terlihat pada Gambar
diperlukan untuk menghilangkan frame-
4.4. Hal ini disebabkan sistem tidak
frame yang mengandung silent seperti
mampu
pada Gambar 4.2. Proses yang dilakukan
gelombang suara
adalah mendeteksi mulai sinyal suara awal
lingkungan. Noise juga dapat disebabkan
dan
tidak
dari gangguan distorsi pada gelombang
diucapkan. Hasil data suara dari proses
sinyal listrik AC (Alternate Current) yang
remove silent dapat dlihat pada Gambar
masuk melalui power battery atau device
4.3.
lain.
berakhir
tingkat
ketika
sudah
membedakan dengan
lagi noise
antara dari
Gambar 4.2 Proses Remove Silent Gambar 4.4 Data Suara dengan Remove Silent yang Tidak Optimal
18
4.1.3 Remove DC Proses
remove
melakukan
4.1.5
DC
bertujuan
normalisasi
terhadap
Frame Blocking
untuk
Pada penelitian ini sinyal suara dipotong
data
sepanjang 256 Hz pada setiap pergeseran
sampel suara yang dimasukkan. Hasil data
128
Hz
dengan
frekuensi
sampling
suara dari proses remove DC dapat dlihat
sebesar 8737 Hz. Setiap potongan tersebut
pada Gambar 4.5.
dinamakan frame. Jadi setiap satu frame terdapat 256 sampel dari 8737 sampel yang ada. Berikut adalah hasil dari proses frame blocking untuk kata “jitu”.
Gambar 4.5 Data Suara setelah Proses Remove DC Gambar 4.7 Data Suara setelah Proses
4.1.4 Pre-Emphasis Filtering
Frame Blocking
Setelah melewati proses remove dc, selanjutnya
data
sampel
suara
akan
memasuki proses utama MFCC yaitu preemphasis
filtering.
Gambar
dibawah
merupakan hasil dari proses pre-emphasis filtering untuk kata “jitu”.
Gambar 4.8 Data Suara setelah Proses Frame Blocking (Frame Pertama)
4.1.6 Proses
Gambar 4.6 Data Suara setelah Proses
Windowing windowing
mengurangi
Pre-Emphasis Filtering
efek
dilakukan diskontinuitas
untuk dari
proses frame blocking terutama pada
19
ujung-ujung frame. Gambar dibawah ini
skala linear pada frekuensi kurang dari 1
adalah hasil dari proses windowing untuk
KHz dan logaritmik diatas frekuensi 1
kata “jitu”.
KHz. Skala frekuensi filterbank adalah sama
dengan
konsep
pendengaran
manusia sehingga skala frekuensi sering dijadikan
parameter
ekstraksi
dalam
pengolahan sinyal suara. Dalam penelitian ini panjang dari filterbank adalah 20 setiap frame. Gambar dibawah ini adalah hasil dari proses filterbank untuk kata “jitu”.
Gambar 4.9 Data Suara setelah Proses Windowing (Frame Pertama)
4.1.7 FFT (Fast Fourier Transform) Dalam penilitian ini proses FFT akan mengubah sinyal suara ke dalam domain frekuensi dengan 256 titik. Gambar
Gambar 4.11 Data Suara setelah Proses
dibawah merupakan hasil dari proses FFT
Filterbank (Frame Pertama)
untuk kata “jitu”. 4.1.9
DCT
(Discrete
Cosine
Transform) Proses DCT merupakan langkah terakhir dari proses utama MFCC. Hasil dari proses ini adalah mel frekuensi cepstrum koefisien yang merupakan hasil dari Gambar 4.10 Data Suara setelah Proses
proses MFCC. Panjang berikut adalah
FFT (frame pertama)
data koefisien MFCC untuk kata “jitu” dengan jumlah koefisien MFCC sebanyak
4.1.8 Filterbank
13 koefisien untuk masing-masing frame.
Konsep pendengaran telinga manusia
Gambar dibawah ini adalah hasil dari
terhadap suara atau bunyi adalah dalam
proses DCT untuk kata “jitu”.
20
Gambar 4.12 Data Suara setelah Proses DCT (Frame Pertama) Gambar 4.14 Hasil Ekstrasi Ciri Ucapan “Jitu” Metode MFCC
4.1.10 Cepstral Liftering Cepstral
liftering
berfungsi
untuk
menghaluskan spektrum hasil dari proses
4.2
MFCC
DTW (Dynamic Time Warping)
sehingga
diharapkan
dapat
Pengenalan Sinyal Suara dengan
meningkatkan akurasi program dalam
Pengujian terhadap sistem verifikasi suara
melakukan pengenalan. Gambar dibawah
yang dibuat dalam penelitian ini dilakukan
ini adalah hasil dari proses cepstral
menggunakan
liftering untuk kata “jitu”.
melakukan
metode
proses
DTW
perhitungan
dengan jarak
dengan membandingkan dua buah sampel yang diperoleh dari proses ekstraksi ciri. Jarak yang dihitung adalah jarak antara nilai koefisien cepstral MFCC yang ada di template referensi dan menghitung jarak template referensi dengan nilai koefisien Gambar 4.13 Data suara setelah proses
cepstral MFCC dari suara uji yang masuk.
cepstral liftering (frame pertama)
Dari proses DTW ini akan diperoleh suatu
Gambar
dibawah
ini
adalah
hasil
nilai atau skor hasil perbandingan antara
keseluruhan ekstraksi ciri pada 67 frame
dua buah sampel.
ucapan kata “jitu”. 4.3
Pengujian
Pengujian
ini
dilakukan
dengan
menggunakan data sampel dari 5 orang. Dengan komposisi 1 orang laki-laki
21
sebagai pengguna, 3 orang laki-laki dan 1 orang perempuan. Masing-masing orang mengucapkan satu buah kata “jitu”. Pengguna diambil data sebanyak 12 data sampel dengan 2 data sampel sebagai template referensi dan 10 data sampel Gambar 4.15 Grafik Hasil Skor
sebagai data uji. Untuk bukan pengguna
Pengguna Asli dan Palsu
setiap orang diambil data sebanyak 10 data sampel sebagai data uji, sehingga 4.3.1
jumlah sampel yang ada 2+10+(4x10) =
Hasil Pengujian
Setiap hasil pengujian akan ditampilkan
52 data sampel. Dibawah ini adalah tabel
grafik unjuk kerja sistem (FRR dan FAR)
skor hasil pencocokan data uji dengan
atau disebut juga grafik ROC. Hasil
template referensi menggunakan metode
pengujian akan disajikan dalam bentuk
DTW.
tabel ataupun grafik untuk mempermudah
Tabel 4.1 Skor Pencocokan Data Uji
analisa.
dengan Template Referensi
Ada dua pengujian ucapan kata “jitu” yang dilakukan dalam penelitian ini, diantaranya adalah:
Menentukan
nilai
threshold
menggunakan grafik unjuk kerja sistem (FRR dan FAR).
Menentukan
nilai
threshold
menggunakan persamaan 2.13. Dibawah ini adalah grafik distribusi
4.3.1.1 Menentukan
probabilitas skor pengguna (pengguna sah
Nilai
Threshold
Menggunakan Grafik Unjuk Kerja
dan pengguna tidak sah).
Sistem (FRR dan FAR) Pengujian ini bertujuan untuk mengetahui nilai threshold yang akan digunakan untuk sistem dalam melakukan verifikasi. Hasil
22
pengujian dengan melihat titik pertemuan
Untuk menentukan nilai threshold skor
antara FRR dan FAR. Dibawah ini adalah
hasil pencocokan template referensi di
hasil grafik unjuk kerja sistem (FRR dan
kali 1.5. Jadi nilai threshold-nya adalah
FAR).
3.5118. Ini berarti bahwa jika skor data uji ≤ 3.5118 maka pengguna dinyatakan sah, bila tidak, maka pengguna dinyatakan tidak sah.
4.4
Analisa Hasil
Dari hasil penelitian dengan menentukan nilai threshold pencocokan, maka akan Gambar 4.16 Kurva Karakterisitik
didapatkan False Aceptance Rate (FAR)
Kinerja Sistem (FRR dan FAR)
dan False Reject Rate (FRR). Nilai FAR akan naik apabila threshold dinaikkan,
Dalam pengujian ini nilai threshold yang
sedangkan nilai FRR akan turun. Dibawah
didapat
adalah tabel nilai FRR, FAR, GAR dan
adalah
5.3
dengan
tingkat
kesalahan 7%.
akurasi sistem dari hasil threshold yang digunakan pada penelitian ini.
4.3.1.2 Menentukan
Nilai
Threshold
Tabel 4.2 Nilai FRR, FAR, GAR dan
Menggunakan Persamaan 2.13
Akurasi Sistem
Dalam penilitian ini menemukan bahwa hasil terbaik untuk menentukan
Threshold
nilai threshold menggunakan persamaan 3,5118 5,3
2.13, diperoleh ketika dua ucapan yang
FRR FAR GAR (%) (%) (%) 20 10
0 5
85 100
Akurasi Sistem (%) 80 85
sama (“jitu”) digunakan untuk template referensi
sistem
untuk
setiap
5. PENUTUP
pengguna. Dari dua ucapan yang sama
5.1
tersebut dilakukan proses pencocokan
Kesimpulan
Berdasarkan hasil penelitian, dapat ditarik
menggunakan metode DTW. Skor hasil
beberapa kesimpulan:
pencocokan adalah 2.3412.
1.
Hasil
pengenalan
23
pengujian suara
sebagai
prototipe penggerak
dinamo starter pada mobil menunjukkan
1.
bahwa alat telah bekerja dengan baik dan
dapat
bergerak sesuai dengan perintah yang
menggunakan
diharapkan.
diperoleh sistem pengendalian yang lebih
2.
efisien.
Metode Mel Frequency Ceptrums
Pengiriman data ke mikrokontroler dikembangkan wireless,
dengan sehingga
Coefficients adalah metode yang baik
2.
Penambahan perintah pengenalan
untuk ekstraksi fitur dalam pengenalan
suara untuk mengontrol perangkat lain
suara karena mampu untuk menangkap
pada mobil seperti lampu, wiper, dan
karakteristik suara yang sangat penting
sebagainya.
bagi pengenalan suara, menghasilkan data seminimal mungkin dan mereplikasi organ
DAFTAR PUSTAKA
pendengaran manusia dalam melakukan persepsi terhadap sinyal suara
1.
3.
Filbert Hilman, Pengolahan Sinyal Digital
Proses pengenalan suara sensitif
terhadap
kebisingan
mempengaruhi
karena
proses
ekstraksi
dapat
Dadang Gunawan dan Juwono,
Dengan Pemrograman Matlab, Graha
fitur
Ilmu, Yogyakarta, 2012.
sinyal suara.
2.
4.
Andi, Yogyakarta, 2009.
Metode Dynamic Time Warping
Putra, Darma, Sistem Biometrika,
dapat digunakan untuk membandingkan
3.
dua buah fitur suara hasil dari proses
Mikrokontroller Atmel AVR: Simulasi dan
MFCC.
Praktek Menggunakan ISIS Proteus dan
5.
Tingkat
keberhasilan
sistem
Rangkuti,
CodeVisionAVR, Informatika, Bandung,
verifikasi tergantung nilai threshold yang
2011.
digunakan.
4.
Willa, Lukas, Teknnik Digital
Mikroprosesor 5.2
Syahban,
Saran
dan
Mikrokomputer,
Informatika, Bandung, 2010.
Dari penelitian ini ada beberapa saran yang
5.
dapat
g_2834.html. Diakses tanggal: 3 April
digunakan
untuk
penelitian
selanjutnya, antara lain adalah sebagai
2012.
berikut :
6.
http://dewey.petra.ac.id/jiunkpe_d
http://www4.gu.edu.au:8080/adt-
root/uploads/approved/adt-
24
QGU20040831.115646/public/02Whole.p df. Diakses tanggal: 3 April 2012. 7.
ftp://ftp.cs.uef.fi/pub/PhLic/2004_
PhLic_Kinnunen_Tomi.pdf.
Diakses
tanggal: 3 April 2012. 8.
http://icwww.epfl.ch/~hunkeler/ds
p/minipro2.pdf. Diakses tanggal: 4 April 2012. 9.
http://neural.cs.nthu.edu.tw/jang/b
ooks/audioSignalProcessing/.
Diakses
tanggal: 4 April 2012. 10.
http://repo.eepis-its.edu/1445/1/[E-
D303-3]_pp.241248_Pengkodean_Warna_Iris_Mata.pdf. Diakses tanggal: 5 April 2012. 11.
http://www.sensoryinc.com/suppor
t/docs/80-0206-W.pdf. Diakses tanggal: 12.
http://www.atmel.com/Images/doc
2466.pdf. Diakses tanggal: 5 April 2012. 13.
http://www.parallax.com/Portals/0/
Downloads/docs/prod/comm/30080SayItModule-v1.1.pdf. Diakses tanggal: 5 April 2012. 14.
http://plaza.ufl.edu/daisyfan/.
Diakses tanggal: 8 April 2012. 15.
http://hme.ee.itb.ac.id/elektron/?p=
32. Diakses tanggal: 9 April 2012.
25