R ANCANG B ANGUN M ODUL P ENGENALAN S UARA
M ENGGUNAKAN T EKNOLOGI K INECT
Ratri Cahyarini NRP 5109100165 Dosen Pembimbing
Umi Laili Yuhana, S.Kom., M.Sc.
Abdul Munif, S.Kom., M.Sc.
L ATAR B ELAKANG
Teknologi pengenalan suara telah banyak berkembang
Kinect mampu mengenali beberapa bahasa,
tetapi tidak dengan bahasa Indonesia
R UMUSAN M ASALAH
Bagaimana menerjemahkan suara yang diucapkan pengguna menjadi kata?
Bagaimana memeriksa ketepatan suara yang
diucapkan pengguna dengan suara yang ada
pada basis data?
S OLUSI
Perangcangan Modul Pengenalan Suara
Menggunakan Teknologi Kinect
D ESKRIPSI APLIKASI
Sebuah modul pengenalan suara berbahasa Indonesia yang
dikembangan menggunakan Teknologi Kinect.
Modul ini akan mengali suara dari kata yang diucapkan pengguna
dan menampilkan hasil terjemahannya.
Modul ini juga dapat melatih
fonem dan kata baru yang ingin
dikenali.
K EBUTUHAN FUNGSIONAL
System
Pengguna
menambah data pelatihan fonem
menambah data pelatihan kata
melakukan pengenalan suara
P ROSES D ETEKSI SUARA MASUK
Pengecekan suara dilakukan setiap 20 sinyal
Jika ke-20 sinyal berada dibawah nilai batas rendah suara, maka sinyal disebut silent dan tidak disimpan.
Sebaliknya, jika sinyal berada diatas batas suara maka sinyal akan disimpan.
Sinyal suara yang disimpan
L INEAR P REDICTIVE C ODING (LPC)
Proses LPC ini digunakan untuk mencari ciri khusus dari sinyal suara yang masuk.
Ciri khusus tersebut berupa fitur vektor 24
dimensi
P ROSES KLASIFIKASI VEKTOR FITUR
Proses membaca data latih
Proses membaca data uji
Proses klasifikasi
P ROSES MEMBACA DATA LATIH
Pada proses ini, sistem akan membaca data latih vektor fitur dari file teks.
Data latih terdiri dari:
Label kelas vektor fitur
Ke-24 parameter hasil proses LPC
Format file teks:
Setiap parameter dan label kelas dipisahkan oleh karakter “\t”
Setiap data vektor fitur ditulikan tiap baris.
P ROSES MEMBACA DATA UJI
Sistem menyimpan data sinyal suara
memanfaatkan proses deteksi suara yang masuk.
Data sinyal suara diproses LPC untuk mendapatkan vektor fitur.
Data vektor fitur disimpan dalam file temporer
P ROSES KLASIFIKASI
Proses klasifikasi dilakukan dengan bantuan kakas bantu SVM
Data latih yang telah dibaca dilatih untuk
membentuk beberapa kelas dengan menentukan garis pemisah antar kelas (hyperplane)
Data uji diperiksa menjadi anggota kelas yang
mana.
P ROSES M ENAMBAHKAN DATA PELATIHAN FONEM
Sistem mendeteksi dan menyimpan data suara yang diucapkan pengguna
Menjalankan proses LPC untuk mendapatkan vektor fitur
Lalu, pengguna harus memberi label kelas pada setiap vektor fitur
Data vektor fitur beserta label kelas disimpan
dalam file teks.
P ROSES M ENAMBAHKAN DATA PELATIHAN KATA
Sistem mendeteksi dan menyimpan data suara yang diucapkan pengguna
Menjalankan proses LPC untuk mendapatkan vektor fitur
Mencari label kelas setiap vektor fitur dengan menjalankan proses klasifikasi vektor fitur
Memasukkan data label kelas hasil klasifikasi ke
dalam file xml dengan format tertentu.
P ROSES PENGENALAN SUARA
Terlebih dahulu dilakukan pelatihan data latih kata menggunakan kakas bantu HMM.
Lalu, sistem menyimpan data sinyal suara
memanfaatkan proses deteksi suara yang masuk.
Data sinyal suara diproses LPC untuk mendapatkan vektor fitur.
Setiap vektor fitur diklasifikasi untuk mendapatkan label kelas fonem.
Urutan label kelas tersebut kemudian dicari
probabilitas pembentuk kata yang paling
maksimal.
D EMO APLIKASI
S KENARIO P ENGUJIAN
Pengujian merekam suara tanpa mengisi nama kata/fonem
Pengujian berhenti merekam suara dan
melakukan proses deteksi tanpa ada suara yang masuk
Pengujian merubah label kelas vektor fitur
Pengujian menyimpan data latih kata/fonem
Pengujian pengenalan suara
P ENGUJIAN MEMERIKSA KOLOM MASUKAN NAMA FONEM
Nomor SUC-D01
Nama Memeriksa kolom masukan nama fonem
Tujuan Memeriksa apakah fungsi pengecekan kolom masukan nama fonem telah berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan fonem
Skenario 1. Pengguna tidak memasukkan nama fonem pada kolom masukan nama fonem.
2. Pengguna memilih menu rekam.
Masukan Nama fonem berupa karakter kosong Keluaran yang
diharapkan
Sistem menampilkan peringatan untuk mengisi kolom masukan nama fonem terlebih dahulu.
Hasil Pengujian Berhasil
P ENGUJIAN M ENYIMPAN DATA PELATIHAN FONEM SEBELUM MEMASUKKAN SUARA .
Nomor SUC-D02
Nama Menyimpan data pelatihan fonem sebelum
memasukkan suara.
Tujuan Memeriksa apakah fungsi pengecekan untuk memasukkan data pelatihan fonem setelah memasukkan suara telah berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan fonem
Skenario 1. Pengguna telah memasukkan nama fonem pada kolom masukan nama kata.
2. Pengguna memilih menu rekam.
3. Pengguna memilih menu stop.
4. Pengguna telah mengisi label kelas setiap frame.
5. Pengguna memilih menu labeli frame.
6. Pengguna memilih menu simpan data latih.
Masukan Nama fonem dan label kelas frame.
Keluaran yang diharapkan
Sistem menampilkan peringatan agar pengguna mengucapkan fonem terlebih dahulu.
Hasil Pengujian Berhasil
P ENGUJIAN M ENYIMPAN DATA PELATIHAN FONEM .
Nomor SUC-D03
Nama Menyimpan data pelatihan fonem.
Tujuan Memeriksa apakah proses menyiman data latih suara telah berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan fonem.
Skenario 1. Pengguna telah memasukkan nama fonem pada kolom masukan nama fonem.
2. Pengguna memilih menu rekam.
3. Pengguna mengucapkan fonem.
4. Pengguna memilih menu stop.
5. Pengguna telah mengisi label kelas setiap frame.
6. Pengguna memilih menu labeli frame.
7. Pengguna memilih menu simpan data latih.
Masukan Nama fonem dan label kelas frame.
Keluaran yang diharapkan
Sistem menampilkan pesan bahwa data berhasil dimasukkan.
Hasil Pengujian Berhasil
P ENGUJIAN M ENAMPILKAN DAFTAR FRAME
Nomor SUC-D04
Nama Menampilkan daftar frame
Tujuan Memeriksa apakah proses menampilkan daftar frame dapat berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan fonem
Skenario 1. Pengguna telah memasukkan nama fonem pada kolom masukan nama fonem.
2. Pengguna memilih menu rekam.
3. Pengguna mengucapkan fonem.
4. Pengguna memilih menu stop.
Masukan Nama fonem dan suara Keluaran yang
diharapkan
Sistem menampilkan daftar frame pada ComboBox.
Hasil Pengujian Berhasil
P ENGUJIAN M EMBERI LABEL KELAS PADA FRAME
Nomor SUC-D05
Nama Memberi label kelas pada frame
Tujuan Memeriksa apakah proses memberi label kelas frame dapat berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan fonem.
Skenario 1. Pengguna telah memasukkan nama fonem pada kolom masukan nama fonem.
2. Pengguna memilih menu rekam.
3. Pengguna mengucapkan fonem.
4. Pengguna memilih menu stop.
5. Pengguna telah mengisi label kelas sebuah frame.
6. Pengguna memilih menu labeli frame.
Masukan Nama fonem dan suara Keluaran yang
diharapkan
Sistem dapat mengganti label kelas frame.
Hasil Pengujian Berhasil
P ENGUJIAN M ENYIMPAN DATA PELATIHAN KATA .
Nomor SUC-D08
Nama Menyimpan data pelatihan kata.
Tujuan Memeriksa apakah proses menyiman data latih suara telah berjalan dengan benar.
Kondisi awal Pengguna memilih menu menambah data pelatihan kata.
Skenario 1. Pengguna telah memasukkan nama kata pada kolom masukan nama kata.
2. Pengguna memilih menu rekam.
3. Pengguna mengucapkan kata.
4. Pengguna memilih menu stop.
Masukan Nama kata dan suara Keluaran yang
diharapkan
Sistem menampilkan pesan bahwa data berhasil dimasukkan.
Hasil Pengujian Berhasil
P ENGUJIAN M ELAKUKAN PENGENALAN SUARA .
Nomor SUC-D09
Nama Melakukan pengenalan suara.
Tujuan Memeriksa apakah proses pengenalan suara dapat berjalan dengan benar.
Kondisi awal Pengguna memilih menu pengenalan suara
Skenario 1. Pengguna memilih menu pembentukan HMM.
2. Pengguna memilih menu rekam 3. Pengguna mengucapkan kata.
4. Pengguna memilih menu stop.
Masukan Suara
Keluaran yang diharapkan
Sistem menampilkan hasil terjemahan kata yang diucapkan pengguna dan presentase ketepatannya.
Hasil Pengujian Berhasil
H ASIL P ENGUJIAN P ENGENALAN S UARA
Kata Percobaan Berhasil Presentase (%)
Vas 16 80
Rok 4 20
Bis 5 25
Tas 9 45
Truk 14 75
Mie 8 40
Skor 12 60
Sapi 10 50
Juli 10 50
Satu 6 30
Tiga 13 65
Tujuh 5 25
Membawa 8 40
Selasa 143 65
Delapan 15 75
Januari 14 75
Rata-rata 51,25