• Tidak ada hasil yang ditemukan

BAB 3 PERANCANGAN SISTEM. yang akan menjalankan perintah-perintah yang dikenali. Sistem ini dibuat untuk

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB 3 PERANCANGAN SISTEM. yang akan menjalankan perintah-perintah yang dikenali. Sistem ini dibuat untuk"

Copied!
21
0
0

Teks penuh

(1)

35 BAB 3

PERANCANGAN SISTEM

3.1 Gambaran Umum Sistem

Voice Command pada demonstrasinya merupakan aplikasi pengenalan suara yang akan menjalankan perintah-perintah yang dikenali. Sistem ini dibuat untuk menampung perintah suara dan mengenali suara untuk menjalankan aplikasi atau perintah yang dipanggil. Dengan antarmuka ini, semisal pengguna memberikan input berupa perintah suara melalui mikrofon seperti “Shutdown”, maka komputer pun akan mengakhiri sesi sistem operasinya.

Voice Command mengikuti aplikasi Windows pada umumnya, menyediakan perintah yang pengguna dapat katakan. Dasarnya, untuk menggunakan perintah suara, seorang pengguna membentuk suatu pola perintah suara yang berhubungan dengan perintah-perintah yang dapat dijalankan dengan menggunakan keyboard atau alat input lainnya. Ketika pengguna mengatakan suatu perintah ke alat input suara seperti mikrofon, maka inference machine, yang merupakan jaringan Hidden Markov Model, akan mengolah input suara ke bentuk teks. Jika inference machine berhasil mengenalinya, maka akan dibandingkan dengan perintah teks dan menjalankan perintah.

▸ Baca selengkapnya: perintah g01 adalah perintah yang berarti

(2)

Inisialisasi Sistem (Load Database)

Konverter A/D (Sound Card)

Update Database

Unit Matching System

Lexical Decoding

Syntactic Analysis Kontrol Aplikasi

Windows Tambah, hapus,

ubah perintah Restart aplikasi

Input suara (analog)

Input suara (digital) Filtrasi Suara (FFT dan LPC) Input suara

(digital)

Input matriks suku kata

Output teks perintah suku kata

Output teks perintah kata

Input matriks kata

Output teks perintah frase

3.1.1 State Transition Diagram

Adapun Diagram Transisi dari sistem secara keseluruhan adalah sebagai berikut:

Gambar 3.1 Diagram Transisi Sistem

(3)

3.1.2 Flowchart Diagram

Sistem secara keseluruhan memiliki diagram alir sebagai berikut:

Input Suara

A/D Konverter

Ekstraksi Fitur

Sistem Inferensi HMM

Output Teks Ada Tidak

Ya

Kontrol Aplikasi Windows

End Start

Inisialisasi Sistem (Load Database)

Input Perintah

Tambah / Hapus Perintah

Masukkan Perintah Lain

Tidak Ya

Gambar 3.2 Diagram Alir Sistem

(4)

3.2 Proses Akusisi Data

Langkah awal dari pengembangan pengenalan suara adalah proses akusisi data.

Data suara dibutuhkan baik untuk pelatihan maupun untuk pengujian. Pada sistem yang dibuat, suara yang direkam untuk pelatihan merupakan tiap-tiap suku kata yang memiliki kemungkinan untuk dipanggil oleh pengguna. Untuk merekam data suara tersebut diperlukan suatu modul program yang akan mengaturnya. Pada saat pengujian data, modul lainnya seperti modul antarmuka akan diperlukan untuk mengukur banyaknya perintah yang berhasil dikenali.

3.2.1 Pengambilan Suara

Pada proses pengambilan suara, suara yang diambil merupakan suara dalam bentuk suku kata, dimana durasi pengambilan suara pun tidak terlalu lama, yaitu hanya sekitar 0.3 milidetik. Suara diambil dengan merekam suara input pada kondisi suara normal (tidak dalam keadaan sakit) dan dengan kecepatan standar (satu suku kata berdurasi 0.3 milidetik).

Gambar 3.1 merupakan grafik pengambilan suara kata “explorer” dengan frekuensi sampling 11025 Hz, dan waktu pengambilan 1 detik.

(5)

3.2.2 Pengaplikasian Linear Predictive Coding dan Fast Fourier Transform 3.2.2.1 Linear Predictive Coding (LPC)

Linear Predictive Coding (LPC) merupakan teknik analisis suara yang mempunyai kinerja cukup baik. Menyediakan keakuratan terhadap perkiraan parameter-parameter suara, dan relatif efisien untuk perhitungan kuantitatif10).

LPC dimulai dengan asumsi sinyal suara dihasilkan oleh dengungan tabung. Celah suara (jeda diantara vocal cord) menghasilkan dengungan, yang dikarakteristikkan dengan intensitas (kekerasan) dan frekuensi (puncak). Saluran suara (tenggorokan dan mulut) membentuk tabung, yang dikarakteristikkan dengan resonansi, yang disebut formants.

Gambar 3.3 Kata “explorer” pada sampling frekuensi 11025Hz Dan waktu 1 detik

(6)

LPC menganalisis sinyal suara dengan memperkirakan formants, menghapus efeknya dari sinyal suara, dan memperkirakan intensitas dan frekuensi dengungan yang tersisa. Proses penghapusan formants disebut inverse filtering, dan disinyal yang tersisa disebut residue.

Formants dan Residue dapat disimpan atau ditranmisi ke tempat yang lain. LPC menghasilkan sinyal suara dengan membalikkan proses, menggunakan residue untuk membuat sumber sinyal, menggunakan formants untuk membuat filter (mewakili tabung), dan menjalankan sumbernya melalui filter, menghasilkan suara.

Karena sinyal suara beragam tiap waktu, proses ini dilakukan pada jarak yang pendek dari sinyal suara, yang disebut frames.

Biasanya 30 sampai 50 frames per detik memberikan suara yang bagus.

3.2.2.2 Fast Fourier Transform (FFT)

Discrete Fourier Transform (DFT), biasanya juga disebut sebagai finite Fourier Transform, merupakan transformasi Fourier yang banyak digunakan dalam pemrosesan sinyal dan bidang-bidang terkait seperti menganalisa frekuensi pada sinyal yang sudah disampling, menyelesaikan persamaan diferensial parsial, dan melakukan operasi konvolusi13). Sedangkan Fast Fourier Transform (FFT) merupakan suatu algoritma DFT yang dapat mengurangi sejumlah perhitungan yang diperlukan untuk N nilai, dari 2N2 menjadi 2N log N, dimana log merupakan logaritma berbasis-214). Jika fungsi yang

(7)

ditransformasikan tidak berhubungan dengan frekuensi sampling, tanggapan FFT berbentuk seperti fungsi sinus.

Jika kita memiliki sebuah sinyal x(t) = A sin(wt) dengan -~ < t <

+~ seperti ditunjukkan pada gambar dibawah ini,

Selanjutnya dari continuous Fourier Transform akan digunakan untuk menemukan frekuensi batas yang dikehendaki. Dalam domain frekuensi ini diperoleh dua pulsa sieperti disajikan pada gambar dibawah ini.

Gambar 3.4 Bentuk Gelombang Sinusoidal

Gambar 3.5 Pulsa dalam domain frekuensi

(8)

Kondisi ini benar hanya jika terdapat sinyal yang tanpa batas, tetapi tidak pernah dijumpai gelombang sinyal sinus yang tanpa batas.

Kenyataan yang ada adalah sinyal akan ada untuk waktu T tertentu.

Oleh karena itu dapat diperoleh dengan mengalikan sinyal tanpa batas dengan fungsi window w(t) sehingga yang ada hanya pada waktu T, seperti disajikan pada gambar dibawah ini.

Hasil perkalian x(t) dengan w(t) disajikan pada gambar dibawah ini.

Gambar 3.6 Kondisi sinyal untuk waktu T tertentu

-T/2 T/2

Gambar 3.7 Fungsi sinyal x(t)w(t)

(9)

Perkalian x(t) dan w(t) sebagai sinyal waktu akan menghasilkan frekuensi baru yang merupakan gulungan frekuensi x(t) dan w(t).

Hasil frekuensi dari fungsi window seperti disajikan pada gambar dibawah ini:

Jika dilakukan konvolusi terhadap sinyal X(w), dihasilkan sinyal berbentuk berikut:

Uraian diatas adalah perkiraan dari frekuensi yang ideal, sementara kondisi demikian jarang dijumpai. Cara untuk memperbaiki resolusi yaitu dengan menaikkan panjang data dan panjang fungsi window. Sejauh ini hanya berhubungan dengan waktu yang kontinyu, untuk mengetahui apa yang terjadi dengan sinyal diskrit diperlukan langkah-langkah sebagai berikut:

- Pertama, Sampling atau pencuplikan data; hal ini dilakukan dengan cara mengalikan sinyal dalam domain waktu x(t)

Gambar 3.8 Frekuensi fungsi window

Gambar 3.9 Frekuensi dari gelombang sinyal yang terbatas

(10)

dengan rangkaian pulsa c(t). Fungsi pulsa c(t) disajikan pada gambar di bawah ini:

Frekuensi tanggapan (frekuensi respon) dari pulsa c(t) disajikan pada gambar dibawah ini:

Sampling sinyal sinus terbatas memberikan sinyal x(t)*w(t)*c(t) yang memberikan frekuensi tanggapan X(w)*W(w)*C(w), seperti disajikan pada gambar berikut ini:

Gambar 3.10 Fungsi Pulsa c(t)

Gambar 3.11 Respon sinyal pulsa dalam domain frekuensi

(11)

- Kedua, mengalikan dengan rangkaian pulsa. Jika dilihat frekuensi tanggapan dari sinyal sampel, frekuensi sampling sudah periodik. Namun masih ada masalah, yaitu frekuensi tanggapan masih kontinyu walaupun sinyal waktu asli diskrit. Oleh karena itu diperlukan frekuensi tanggapan untuk penggunaan komputer. Hal ini diperoleh dengan cara mengalikan frekuensi domain dengan rangkaian pulsa, seperti disajikan pada Gambar 3.9.

- Ketiga, mengalikan dengan frekuensi domain, dimana diperlukan konvolusi rangkaian waktu diskrit dengan rangkaian pulsa pada domain waktu. Apa yang terjadi, rangkaian sampel menjadi periodik panjang dari rangkaian input. Jika input sinyal berupa input seperti Gambar 3.12, maka rangkaian sampel diskrit untuk DFT disajikan pada Gambar 3.13

Gambar 3.12 Sinyal tersampling x(t)w(t)c(t)

(12)

Pada Discrete Fourier Transform terlihat sangat kompleks dan sangat sulit untuk dilakukan karena meliputi banyak penjumlahan dan perkalian. Sebagai contoh untuk sinyal tersampling yang sederhana, akan diperlukan 49 perkalian kompleks dan 56 penjumlahan. Dengan DFT. Jika memiliki 1024 sample, maka diperlukan kompleksitas penjumlahan dan perkalian yang sangat tinggi, sehingga jumlah perhitungan memerlukan peningkatan yang tidak tekendali lagi.

Gambar 3.13 Rangkaian sinyal DFT

Gambar 3.14 Perbandingan jumlah sampling dengan kompleksitas perhitungan

(13)

Untuk mengurangi kesulitan tersebut, digunakan Fast Fourier Transform yang merupakan metode sederhana pada perhitungan, sehingga bisa lebih cepat untuk nilai besar N, dengan N adalah jumlah sample.

Ide dasar dari FFT adalah menggunkan metode divide and conquer, yakni dengan cara memecahkan N nilai sampel menjadi dua (N/2) rangkaian. Hal ini membuat rangkaian permasalahan lebih sederhana dan lebih mudah dicari solusinya dibandingkan dengan satu permasalahan yang besar. DFT memerlukan (N-1)2 kompleksitas perkalian dan N(N-1) kompleksitas penjumlahan. Dengan metode FFT suatu permasalahan dipecah menjadi dua kelompok nilai sampel yang hanya memerlukan satu perkalian dan dua pertambahan serta kombinasi ulang yang nilainya minimal.

(14)

3.3 Proses Pengujian

Dalam sistem yang dibuat, proses pengujian menggunakan matriks data dari suku-suku kata yang terdapat di database sebelumnya. Setiap matriks suku kata yang ada diberi label sesuai dengan suku katanya. Setiap input perintah yang diucapkan oleh pengguna kemudian dipisahkan berdasarkan waktu yang telah ditentukan.

Pemisahan perintah menjadi suku kata-suku kata didasarkan pada waktu rata-rata pengguna untuk mengucapkan satu suku kata (kurang lebih 0.3 detik per suku kata).

Setiap suku kata terpisah dari input tersebut menjadi input matriks dalam HMM.

HMM bekerja dengan cara mencari probabilitas tertinggi dari tiap-tiap grammar (kumpulan perintah yang telah disimpan sebelumnya) dengan kumpulan matriks input dari pengguna. Probabilitas tertinggi dari grammar yang ditemukan merupakan hasil kata yang telah dikenali oleh sistem.

Setiap input suara masuk kedalam sistem, dilakukan filtrasi suara dengan menggunakan LPC dan FFT. Setelah mendapatkan spektral suara yang sudah difilter, spektral suara tersebut kemudian dipecah menjadi matriks-matriks suku kata berdasarkan waktu. Semisal terdapat lima grammar, yaitu ‘explorer’, ‘powerpoint’,

‘access’, ‘word’, dan ‘excel’. Saat pengguna memasukkan perintah berupa

‘explorer’, maka kata input tersebut akan dipecah menjadi 3 suku kata berdasarkan waktu untuk kemudian dijadikan input oleh HMM. Setiap grammar yang ada kemudian dicari probabilitas tertinggi dengan input kata ‘explorer’ tersebut, sehingga ditemukan probabilitas tertinggi, yang pada hal ini merupakan grammar

‘explorer’.

(15)

3.4 Rancangan Layar

3.4.1 Rancangan Layar Menu Utama

Rancangan layar menu utama memiliki elemen-elemen sebagai berikut:

- Toolbar navigasi untuk akses ke file, edit dan help.

- List Box nama perintah yang berisi perintah-perintah yang telah ada dalam database.

- Textfield hypothesis yang berisi pengenalan parsial atas input perintah dari pengguna.

- Textfield recognition yang berisi pengenalan atas grammar yang ada dimana merupakan salah satu dari perintah-perintah pada List Box kalimat-kalimat perintah yang dapat dipanggil.

Navigasi ( File, Edit, Help)

Kalimat-kalimat perintah yang dapat dipanggil 1. Word

2. Excel 3. Powerpoint 4. Access 5. dll

Hypothesis:

Recognition:

Status bar

Gambar 3.15 Rancangan Layar Menu Utama

(16)

3.4.2 Rancangan Layar Menu Add Command (Tambah Perintah)

Rancangan layar menu tambah perintah memiliki elemen-elemen sebagai berikut:

- Textfield Nama perintah yang berisi perintah baru yang akan ditambahkan.

- Textfield path ke program yang berisi alamat absolut program yang akan dijalankan bila nama perintah diatas disebut oleh pengguna.

- Button browse yang jika diklik akan membuka dialog buka file (open file dialogue), untuk menunjuk file yang akan dipanggil.

- Button add untuk menyimpan nama perintah beserta alamat absolutnya ke database.

- Button cancel untuk menggagalkan penambahan perintah dan kembali ke menu awal.

Absolute Path ke program Nama perintah

Cancel Add

Browse…

Gambar 3.16 Rancangan Layar Menu Tambah Perintah

(17)

3.4.3 Rancangan Layar Menu Delete Command (Hapus Perintah)

Rancangan layar hapus perintah memiliki elemen-elemen sebagai berikut:

- List Box berisi perintah-perintah yang telah tersedia di database.

- Button delete yang berfungsi untuk menghapus perintah yang dipilih dari database grammar.

- Button cancel yang berfungsi untuk menggagalkan operasi hapus perintah dan kembali ke layar utama.

Gambar 3.17 Rancangan Layar Menu Hapus Perintah Nama perintah yang

tersedia (contoh) 1. Borgchat 2. My Document 3. Power dvd 4. Paint 5.

Cancel Delete

(18)

3.4.4 Rancangan Layar Menu Update Command (Ubah Perintah)

Rancangan layar menu ubah perintah memiliki elemen-elemen sebagai berikut:

- Table dengan dua kolom yang berisi nama perintah dan alamat absolutnya dalam komputer pengguna.

- Button update yang berfungsi mengubah tiap-tiap sel dalam tabel perintah.

- Button cancel yang berfungsi menggagalkan operasi ubah perintah dan kembali ke layar utama.

Nama Perintah Absolut Path

6. Borgchat C:\Program Files\Borgchat\Borgchat.exe 7. My Document C:\My Document\

8. Power dvd C:\Program Files\Cyberlink PowerDVD\...

9. Paint C:\Windows\System32\Paint

10. …… ………

Cancel Update

Gambar 3.18 Rancangan Layar Menu Ubah Perintah

(19)

3.5 Spesifikasi Modul

3.5.1 Spesifikasi Modul Inisialisasi Mulai

Buka koneksi ke database Ulangi hingga akhir record

Ambil data name dan path

Masukkan ke grammar

Tutup koneksi ke database Selesai

3.5.2 Spesifikasi Modul Menu Utama Mulai

Masukkan perintah suara

Pengenalan suara dengan engine speechlib Hasil pada hypothesis

Jika dikenali dengan grammar yang ada maka Hasil pada recognition

Jika tidak

Recognition kosong

Jika hypothesis sama dengan recognition maka

Ubah label info dengan path program yang hendak dijalankan Jalankan program yang bersangkutan

(20)

Jika tidak

Label info tidak berubah

Program tidak dijalankan Selesai

3.5.3 Spesifikasi Modul Menu Tambah Perintah Mulai

Masukkan nama perintah Masukkan path program Buka koneksi ke database Tambahkan data (nama, path) Tutup koneksi ke database Selesai

3.5.4 Spesifikasi Modul Menu Hapus Perintah Mulai

Memilih data yang hendak dihapus Buka koneksi database

Delete data yang dipilih dari database Tutup koneksi database

Selesai

(21)

3.5.5 Spesifikasi Modul Menu Ubah Perintah Mulai

Memilih perintah dan atau path yang akan diupdate Ganti nama atau pathnya

Buka koneksi database

Update database dengan data yang baru Tutup koneksi database

Selesai

Gambar

Gambar 3.1 Diagram Transisi Sistem
Gambar 3.2 Diagram Alir Sistem
Gambar 3.3   Kata “explorer” pada sampling   frekuensi 11025Hz Dan waktu 1 detik
Gambar 3.4   Bentuk Gelombang Sinusoidal
+7

Referensi

Dokumen terkait

Dari hasil penelitian yang telah dilakukan didapatkan bahwa pada orang perokok berat tidak semuanya mengalami tekanan darah yang tinggi dan kadar posfolifid

Pembelajaran terpadu adalah suatu model dalam proses berlajar &lt;• mengajar yang melibatkan beberapa mata pelajaran untuk memberikan pengalaman yang bermakna kepada anak.(

Seminar Nasional Lahan Basah 2016 ini merupakan wadah temu ilmiah yang diadakan oleh Lembaga Penelitian dan Pengabdian Kepada Masyarat (LPPM) Universitas Lambung

A harus berada dalam satu tim dengan D, B tidak boleh setim dengan G atau C, C tidak boleh dipisahkan dengan I, E dan H harus berada dalam tim yang sama dengan B, sedangkan F

Tujuan Penelitian ini adalah Untuk mengetahui bagaimana Pelaksanaan Perjanjian Kerja secara Lisan antara pemain dengan Pihak pengurus Apakah sudah sesuai dengan

(1) Melaksanakan kegiatan dana bantuan Penyelenggaraan PAUD Inklusi dan Taman Kanak-Kanak Luar Biasa sesuai dengan proposal yang disetujui Direktorat Pembinaan

Telah melaksanakan program Inklusi atau TK-LB minimal 1 (satu) tahun. Mengajukan proposal Bantuan Penyelenggaraan PAUD Inklusi atau Taman Kanak-Kanak Luar Biasa dilengkapi

Indeks korelasi yang didapat antara pCO2 dengan parameter oseanografi dan karbon laut relatif tinggi dan signifikan pada bulan Maret, sedangkan pada bulan Juli