Anda di halaman 1dari 5

DSP Mini-Project : An Automatic Speaker Recognition System

Speaker Recognition atau pengenalan pembicara adalah proses pengenalan


suara secara otomatis dari seseorang melalui informasi yang terdapat dalam
gelombang suara. Pada prinsipnya proses pengenalan suara dikategorikan menjadi
dua, yaitu tahap identifikasi dan verifikasi. Pada tahap identifikasi, suara dari
seseorang akan didaftarkan sedangkan pada tahap verifikasi ini terdapat proses
diterima atau tidaknya rekaman tersebut berdasrkan kecocokannya.
A. Feature Extraction
Pada tingkatan yang lebih tinggi, semua sistem pengenalan suara memiliki dua
modul utama yaitu feature extraction yaitu proses yang mengekstraksi sejumlah kecil
data dari sinyal suara yang kemudia dapat merepresentasikan masing-masing
pembicara dan feature matching yaitu megidentifikasi seorang pembicara dengan
membandingkan extracted feature dari suaranya. Terdapat juga dua tahapan dalam
sistem pengenalan suara yaitu training phase seorang pembicara menyediakan sampel
suaranya yang digunakan untuk melakukan pelatihan kepada sistem bertujuan
memodelkan suaranya. Kemudian testing phase inpun siara dicocokan dengan model
yang sudah disimpan sebelumnya.






Gambar 1 Speaker identification




Gambar 2 Speaker verification
Input
speech
Feature
extraction
Reference
model
(Speaker #1)
Similarity
Reference
model
(Speaker #N)
Similarity
Maximum
selection
Identification
result
(Speaker ID)
Reference
model
(Speaker #M)
Similarity
Input
speech
Feature
extraction
Verification
result
(Accept/Reject)
Decision
Threshold
Speaker ID
(#M)
Pada speech feature extraction memiliki tujuan yaitu melakukan konversi
speech waveform menggunakan digital signal processing (DSP) tools untuk kemudia
di analisis. Untuk mengubah sinyal waveform menjadi vektor ciri mengunakan Mel-
Frequency Cepstrum Coeficient (MFCC).





Gambar 3 Tahap MFCC processor
Tahapan frame blocking adalah proses melakukan blok pada pada sinyal suara
menjadi banyak frame dengan N sampel yang saling overlapping. Proses ini
berlangsung kontinu hingga seluruh suara atau ucapan dihitung sebagai satu atau
lebih frame. Nilai untuk N dan M yang umum adalah N=256 (yang ekuivalen dengan
30 msec windowing dan memfasilitasi radix-2 FFT) dan M=100.
Pada tahapan windowing masing-masing frame di bingkai (frame) terpisah
untuk meminimalkan sinyal yang diskontinu pada awal dan akhir setiap frame.
Didefinisikan frame sebagai 1 0 ), ( s s N n n w , dimana N adalah jumlah smapel di
setiap frmae, maka hasil prsoes windowing adalah :
1 0 ), ( ) ( ) ( s s = N n n w n x n y
l l

Teknik windowing yang sering digunakan yaitu window Hamming :
1 0 ,
1
2
cos 46 . 0 54 . 0 ) ( s s |
.
|

\
|

= N n
N
n
n w
t

Tahap selanjutnya dalah Fast Fourier Tranform (FFT) adalah tahap yang
megkonversi tiap frame N sample dari domain waktu menjadi domain frekuensi. FFT
merupakan algoritma cepat untuk mengimplemntasikan Discrete Fourier Transform
(DFT) yang didefinisikan dalam suatu set N sampel {X
n
} dimana X
n
merupakan
bilangan kompleks. Tahap ini menghasilkan spektrum atau periodogram.

= =
1
0
/ 2
1 ,..., 2 , 1 , 0 ,
N
n
N kn j
n k
N k e x X
t

mel
cepstrum
mel
spectrum
frame continuous
speech
Frame
Blocking
Windowing FFT spectrum
Mel-frequency
Wrapping
Cepstrum
Kemudian pada tahap Mel-Frequency Wrapping, yaitu menghitung spectrum
mel yang dihasilkan tahap FFT menggunakan beberapa filter yang disesuaikan.
Persepsi sistem pendengaran manusia terhadap frekuensi sinyal suara berbeda. Suatu
pendekatan untuk mensimulasikan spectrum adalah dengan menggunakan filter bank
satu filter untuk setiap mel-frequency komponen.





Gambar 4 Contoh mel-spaced filterbank
Dalam tahap akhir, dilakukan konversi log mel-spectrum menjadi domain
waktu kembali menggunakan fungsi Discrete Cosine Transform (DCT) . Hasil dari
proses ini disebut Mel-frequency Ceptrum Coeficient (MFCC).

Dengan menerapkan proesedur tersebut, setuap speech frame dengan 30 msec
overlap, kumpulan mel-frequency coefficient dihitung yang merupakan hasil dari
tranformasi logaritma dari short-term power spectrum yang di perlihatkan pada skala
mel-frequency. Koefisien ini disebut acoustic vector. sehingga setiap ucapan masukan
harus diubah menjadi urutan vektor akustik.

B. Feature Matching

Pattern recognition bertujuan untuk mengklasifikasi objek menarik dalam
beberapa categori kelas. Kelas yang dimaksud adalah seseorang yang berbicara.
Karena prosedur klasifikasi dalam kasus ini di aplikasikan pada feature yang sudah di
ektraksi maka disebut feature matching.
Feature matching adalah proses mengidentifikasi suara dengan cara
membandingkan setiap ciri yang telah diekstraksi dari suara denganciri suara yang
sudah diketahui dan disimpan. Beberapa tekniknya yaitu Dynamic Time Warping
(DTW), Hidden Markov Model (HMM), dan Vector Quatization (VQ). Vector
Quatization mudah untuk dipalikasikan dan memiliki akurasi yang tinggi. VQ adalah
prsoes mapping vector dari vector berukuran besar menajdi beberapa bagian yang
K-1 n
K
k n S c
K
k
k n
,..., 1 , 0 ,
2
1
cos )
~
(log
~
1
=
(

(



|
.
|

\
|
=
=
t

0 1000 2000 3000 4000 5000 6000 7000
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Mel-spaced filterbank
Frequency (Hz)
disebut cluster dan dirpresentasikan dengan centroidnya yang disebut codeword,
kumpulan dari semua codeword disebut codebook.







Gambar 4 Ilustrasi VQ
Setelah proses enrolment, vector akustik yang telah di ekstrak dari input suara
menjadi set traiing vector untuk pembicara tersebut. Kemudian tahap penting
selanjutnya adalah membuat speaker-specific VQ codebook untuk masing-masing
pembicara menggunakan vector training. Untuk clusteringnya menggunakan
algoritma LBG untuk melakukan clustering dar set L training vector kedalam set M
codebook vector.
Find
centroid
Split each
centroid
Cluster
vectors
Find
centroids
Compute D
(distortion)
c <

D
D ' D
Stop
D = D
m = 2*m
No
Yes
Yes
No
m < M

Gambar 5 Flow chart algoritma LGB


Speaker 1
Speaker 1
centroid
sample
Speaker 2
centroid
sample
Speaker 2
VQ distortion
Anonim, DSP Mini-Project: An Automatic Speaker Recognition System,
http://www.ifp.uiuc.edu/~minhdo/teaching/speaker_recognition