• Tidak ada hasil yang ditemukan

Implementasi speech recognition menggunakan sapi 5 dan visual basic 6.0 pada pembuatan aplikasi kalkulator audio visual

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi speech recognition menggunakan sapi 5 dan visual basic 6.0 pada pembuatan aplikasi kalkulator audio visual"

Copied!
126
0
0

Teks penuh

(1)

IMPLEMENTASI SPEECH RECOGNITION

MENGGUNAKAN SAPI 5 DAN VISUAL BASIC 6.0

PADA PEMBUATAN APLIKASI KALKULATOR

AUDIO VISUAL

JUNAEDIH

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI

SYARIF HIDAYATULLAH

(2)

IMPLEMENTASI SPEECH RECOGNITION

MENGGUNAKAN SAPI 5 DAN VISUAL BASIC 6.0

PADA PEMBUATAN APLIKASI KALKULATOR

AUDIO VISUAL

Skripsi

Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer

Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh: JUNAEDIH 101091123324

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI

SYARIF HIDAYATULLAH

(3)

IMPLEMENTASI SPEECH RECOGNITION

MENGGUNAKAN SAPI 5 DAN VISUAL BASIC 6.0

PADA PEMBUATAN APLIKASI KALKULATOR

AUDIO VISUAL

Skripsi

Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Teknik Informatika

Pada Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh: Junaedih 101091123324

Menyetujui

Pembimbing I Pembimbing II

Ir. Bakri La Katjong, MT, M.Kom Victor Amrizal, M.Kom

Mengetahui

Ketua Program Studi Teknik Informatika

(4)

LEMBAR PENGESAHAN UJIAN

Skripsi ini berjudul “IMPLEMENTASI SPEECH RECOGNITION MENGGUNAKAN SAPI 5.0 DAN VISUAL BASIC 6.0 PADA PEMBUATAN APLIKASI KALKULATOR AUDIO VISUAL”. Telah diuji dan dinyatakan lulus dalam Sidang Munaqosyah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari jum’at, 9 Maret 2007. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Strata 1 (S1) pada Jurusan Teknik Informatika.

Jakarta, Maret 2007

Tim Penguji,

Penguji I Penguji II

Nasrul Hakiem, MT Khodijah Hulliyah, M.Kom

Mengetahui,

Dekan

Kaprodi Teknik Informatika
(5)

PENGESAHAN UJIAN

Skripsi yang berjudul “ Implementasi Speech Recognition Menggunakan SAPI 5 dan Visual Basic 6.0 Pada Pembuatan Aplikasi Kalkulator Audio Visual” telah di uji dan dinyatakan lulus dalam sidang Munaqosyah Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif Hidayatullah Jakarta pada hari Hari, Tgl November 2006.

Jakarta, Januari 2007 Tim Penguji

Penguji I

Ir. Bakri La Katjong, MT, M.Kom NIP: 470 035 764

Penguji II Penguji III

Ir. Bakri La Katjong, MT, M.Kom Victor Amrizal, M.Kom

Dekan Fakultas Sains dan Teknologi Ketua Program Studi Teknik Informatika

(6)

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA

SKRIPSI INI BENAR-BENAR HASIL KARYA

SENDIRI YANG BELUM PERNAH DIAJUKAN

SEBAGAI SKRIPSI ATAU KARYA ILMIYAH PADA

PERGURUAN TINGGI ATAU LEMBAGA MANAPUN

Jakarta, Maret 2007

(7)

ABSTRAK

JUNAEDIH (1010191123319), Implementasi Speech Recognition Menggunakan SAPI 5.1 dan Visual Basic 6.0 Pada Pembuatan Kalkulator Audio Visual (Di bawah bimbingan Victor Amrizal, M.Kom dan Ir. Bakrie La katjong, M.T M.Kom).

Produk-produk teknologi pada dasarnya dibuat dan dikembangkan sebagai alat untuk membantu manusia dalam kehidupan agar lebih mudah, praktis dan efisien, namun tidak semua orang dapat merasakan atau menggunakannya. Ada beberapa faktor yang menyebabkan manusia tidak bisa menggunakan atau merasakan teknologi yang ada saat ini, seperti: faktor ekonomi, faktor pendidikan, faktor budaya, dan faktor cacat indera.

Sebagai manusia yang memiliki panca indera yang utuh dan sempurna mungkin tidak ada masalah dalam menggunakan produk-produk teknologi, selama orang tersebut mampu dan mau mempelajari cara menggunakannya. Lalu bagaimana dengan mereka yang tidak memiliki panca indera yang utuh, seperti cacat pendengaran, cacat penglihatan? Tentu akan sangat sulit bagi mereka menggunakan produk teknologi tersebut, karena secara umum dalam perkembangannya teknologi hanya diperuntukan bagi mereka yang normal saja.

Dengan memanfaatkan teknologi pengenalan ucapan/sura (speech to text) dan TTS (text to speech), kita dapat membuat aplikasi kalkulator yang dapat digunakan oleh mereka yang tuna netra. Aplikasi Kalkulator Audio Visual dapat dibuat dengan menggunakan tools IndoTTS, Speech to Text, Text to Speech, serta Aplikasi Pemrograman Visual Basic 6.0.

Kata kunci: Speech Recognitin, Speech to Text, Text to Speech, IndoTTS.

(8)

KATA PENGANTAR

Assalamu’alaikum wa rahmatullahi wa barakatuh.

Dengan menyebut nama Allah Yang Maha Pemurah serta Maha Penyayang. Segala puji bagi Allah SWT yang telah melimpahkan hidayah, rahmah dan maghfirah-Nya sehingga penulis dapat menyelesaikan pembuatan skripsi ini. Selanjutnya shalawat serta salam penulis haturkan kepada Rasulullah SAW, yang telah membawa amanah Islam dan membawa umatnya ke jalan cahaya hidayah Allah SWT.

Penulis mengucapkan terima kasih kepada pihak-pihak yang memberikan bimbingan, bantuan, dan dukungan selama penyusunan dan pembuatan skripsi ini berlangsung. Secara khusus saya ucapkan terima kasih kepada:

1. Bapak Victor Amrizal, M.Kom dan Bapak Bakri La Katjong MT, M.Kom selaku pembimbing skripsi yang secara kooperatif, penuh kesabaran dan keramahan, memberi nasihat dan saran-saran berharga yang secara bijak membantu dan membimbing penulis dalam penyelesaian skripsi ini.

2. Bapak DR. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan Teknologi.

(9)

4. Eskawati Musyarofah Bunyamin (bunga kemuliaan), terima kasih atas segala kebaikan, kesabaran, ketulusan, dan pengorbanan yang tidak mungkin dapat penulis sebutkan satu persatu dalam tulisan ini karena keterbatasan tempat. 5. Teman-teman Teknik Informatika UIN Jakarta Angkatan 2001 kelas B dan A

yang tak bisa penulis sebutkan satu persatu yang telah penulis anggap sebagai Keluarga besar kedua bagi penulis. Terima kasih atas bantuan, dukungan moril, nasihat, curhat, kejahilan, serta menemani dan menyemangati penulis dalam menjalani masa-masa kuliah di UIN Jakarta ini. Semuanya sangat berkesan dan insya Allah tak terlupakan sampai akhir nanti. Amien.

(10)

DAFTAR ISI

Halaman

Halaman Judul ... i

Halaman Persetujuan Pembimbing ... ii

Halaman Pengesahan ... iii

Halaman Pernyataan ... iv

Abstraksi ... v

Kata Pengantar ... vi

Daftar Isi ... xiii

Daftar Tabel ... ix

Daftar Gambar ... x

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Identifikasi Masalah ... 2

1.3 Perumusan Masalah ... 2

1.4 Batasan Masalah ... 3

1.5 Tujuan Penulisan ... 3

1.6 Manfaat Penulisan ... 3

1.7 Metode Penelitian ... 5

(11)

BAB II LANDASAN TEORI ... 8

2.1 Speech Recognition... 8

2.2 SAPI (Speech Aplication Programming Interface) ... 13

2.2.1 Sistem Pengenalan Pembicaraan ... 13

2.2.2 Arsitektur Speech Aplication Programming Interface (SAPI) ... 14

2.3 Algoritma Program ... 23

2.3.1 Pseudocode ... 23

2.3.2 Diagram Alur (Flow Chart) ... 24

2.3.3 STD (State Transition Diagram) ... 26

2.4 Model-model Proses Perangkat Lunak ... 28

2.4.1 Model Sekuensial Linear ... 28

2.4.2 Model Prototipe ... 29

2.4.3 Model RAD ... 30

2.5 Visual Basic 6.0 ... 33

2.5 IndoTTS ... 37

BAB III METODOLOGI PENELITIAN ... 40

3.1 Pengumpulan Data ... 40

a. Studi Pustaka ... 40

b. Diskusi ... 40

(12)

a. Analisa Kebutuhan ... 40

b. Identifikasi Sistem ... 41

3.2 Tahapan Pengembangan Sistem ... 41

a. Perancanagan Syarat-syarat ... 43

b. Workshop Design ... 43

c. Pelaksanaan ... 43

BAB IV ANALISA, RANCANGAN, PELAKSANAAN DAN PENGUJIAN PROGRAM ... 44

4.1 Fase Menentukan Tujuan dan Syarat-syarat Informasi... 44

4.1.1 Analisa Kebutuhan Masalah ... 44

4.2 Fase Perancangan ... 45

4.2.1 Perancangan Algoritma Program Aplikasi ... 45

4.2.2 Speech To Text ... 47

4.2.2.1 Representasi Sinyal Ucapan ... 52

4.2.2.2 Karakteristik Sinyal Ucapan ... 57

4.2.3 TTS (Text To Speech) ... 63

4.2.4 Flowchart Algoritma Program ... 70

4.2.5 Perancangan Antarmuka ... 74

4.3 Fase Pelaksanaan ... 86

(13)

4.3.2 Instalasi Program ... 87

4.3.2 Tampilan Antarmuka Program ... 90

4.4 Pengujian Program Kalkulator Audio Visual ... 101

BAB V PENUTUP 5.1 Kesimpulan ... 108

5.2 Saran-saran ... 108

DAFTAR PUSTAKA ... 109

(14)

DAFTAR TABEL

Halaman TABEL 2.1: Simbol-simbol Flowchart ... 27 TABEL 4.1: Fonem-fonem Bahasa Inggris-Amerika dalam standar

(15)

DAFTAR LAMPIRAN

Halaman

A. Kamus Data ... 110

B. Surat Keterangan Penelitian dari MAN 4 Model Jakarta... 113

C. Source Code ... 114

(16)

DAFTAR LAMPIRAN

Halaman

A. Kamus Data ... 110

B. Surat Keterangan Penelitian dari MAN 4 Model Jakarta... 113

C. Source Code ... 114

(17)

DAFTAR GAMBAR

Halaman

GAMBAR 2.3: Blok Diagram Arsitektur SAPI ... 16

GAMBAR 2.11: Contoh perubahan state ... 28

GAMBAR 2.12: Notasi Modul ... 29

GAMBAR 2.13: Notasi Tampilan ... 29

GAMBAR 2.14: Notasi Tindakan ... 30

GAMBAR 2.16: Model Sekuensial Linear... 31

GAMBAR 2.17: Prototipe paradigma... 32

GAMBAR 2.18: Model RAD ... 34

GAMBAR 2.19: Tampilan aplikasi Micosoft Visual Basic 6.0... 36

GAMBAR 3.1: Siklus Pengembangan Sistem Model RAD ... 41

GAMBAR 4.1: Alur Proses inpu/output Dalam Aplikasi Kalkulator Audio Visxual ... 45

GAMBAR 4.2: Urutan proses dari suara ke text. ... 47

GAMBAR 4.3: Foto sinar X penampang alat-alat ucap manusia... 49

GAMBAR 4.4: Model Sistem Produksi Ucapan Manusia ... 50

GAMBAR 4.5: Contoh Sinyal Ucapan “It’s Time” ... 52

GAMBAR 4.6: Spektogram Pita Lebar, Spektogram

Pita Sempit,

dan Amplitudo dari Ucapan “Every Salt

Breeze

Comes From Sea”. ... 54
(18)

GAMBAR 4.8: Bentuk Sinyal Ucapan Vokal Bahasa Inggris ... 58

GAMBAR 4.9: Spektogram Sinyal Ucapan Vokal Bahasa Inggris ... 58

GAMBAR 4.10: Contoh Sinyal dan Spektogram Diftong Bahasa Inggris ... 59

GAMBAR 4.11: Contoh Sinyal dan Spektogram Konsonan Nasal Bahasa Inggris ... 59

GAMBAR 4.12: Contoh Sinyal dan Spektogram

Konsonan Frikatif

Bahasa Inggris ... 61

GAMBAR 4.13: Contoh Sinyal dan Spektogram

Konsonan Stop

Bahasa Inggris ... 62

GAMBAR 4.14: Alur Proses Teks majadi Ucapan ... 62

GAMBAR 4.15: Urutan Proses Konversi dari Teks ke Ucapan... 66

GAMBAR 4.16: Flowchart Program Kalkulator. ... 70

GAMBAR 4.17: Flowchart Program Kalkulator (Lanjutan 1) ... 71

GAMBAR 4.18: Flowchart Program Kalkulator (Lanjutan 2) ... 72

GAMBAR 4.19: Rancangan Form intro ... 73

GAMBAR 4.20: Rancangan STD Form Intro ... 73

GAMBAR 4.21: Rancangan Form Menu Utama ... 75

GAMBAR 4.22: Rancangan STD Form Menu Utama ... 76

GAMBAR 4.23: Rancangan Form Kalkulator berbahasa Inggris ... 79

GAMBAR 4.24: Rancangan STD Form Kalkulator berbahasa Inggris... 79

(19)

GAMBAR 4.26: Rancangan STD Form Kalkulator berbahasa Indonesia ... 82

GAMBAR 4.27: Rancangan Form Info ... 83

GAMBAR 4.28: Rancangan STD Form Info ... 84

GAMBAR 4.29: Rancangan Form Bantuam ... 84

GAMBAR 4.30: Rancangan STD Form Bantuan ... 85

GAMBAR 4.31: Tampilan Program Kalkuator Audio Visual Setup ... 86

GAMBAR 4.32: Tampilan Proses Instalasi Program ... 87

GAMBAR 4.33: Tampilan Akhir Proses Instalasi Program... 88

GAMBAR 4.34: Form Intro... 89

GAMBAR 4.35: Form menu Utama... 90

GAMBAR 4.36: Form Kalkulator Berbahasa Indonesia ... 91

GAMBAR 4.37: Form Kalkulator Berbahasa Inggris ... 95

GAMBAR 4.38: Form Informasi... 99

(20)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Hadirnya teknologi informasi berdampak pada perubahan dan menjadikan mudahnya melakukan pekerjaan-pekerjaan manusia dalam berbagai bidang, seperti: sektor bisnis, sektor sosial, sektor pemerintahan, sektor militer, sektor pendidikan, sektor rumah tangga, dan hampir disetiap sendi-sendi kehidupan manusia modern.

Teknologi pada dasarnya dibuat dan dikembangkan sebagai alat untuk membantu manusia, tetapi apakah semua manusia dapat merasakan atau dapat mengunakan produk-produk teknologi yang selama ini dikembangkan. Ada beberapa faktor yang menyebabkan manusia tidak bisa menggunakan atau merasakan teknologi yang ada saat ini, seperti: faktor ekonomi, faktor pendidikan, faktor budaya, dan faktor cacat indera.

Sebagai manusia yang memiliki panca indera yang utuh dan sempurna mungkin tidak ada masalah dalam menggunakan produk-produk teknologi, selama orang tersebut mau mempelajari cara menggunakannya. Lalu

(21)

Dengan memanfaatkan teknologi informasi yang ada pada saat ini, diharapkan dapat menyelesaikan permasalahan diatas dengan efektif dan efisien. Oleh sebab itu pada penelitian ini penulis mengambil judul

Implementasi Speech Recognition menggunakan SAPI (Spech Aplication Progaramming Interface) dan Visual Basic 6.0 Pada Pembuatan Aplikasi Kalkulator Audio Visual”, diharapkan aplikasi ini dapat bermanfaat untuk mereka yang menyandang cacat tuna netra maupun mereka yang normal.

1.2 Identifikasi Masalah

Permasalahan yang ada pada saat ini adalah kesulitan orang yang cacat indera penglihatan (tuna netra) dalam menggunakan kalkulator, karena kalkulator yang ada saat ini hanya dapat digunakan dengan indera penglihatan tanpa ada input dan output dengan suara.

1.3 Perumusan Masalah

Sesuai dengan inti dari penulisan skripsi, maka permasalahan yang ada dapat penulis simpulkan yaitu:

a. Bagaimana merancang program untuk software kalkulator audio visual

yang dapat membantu para penyandang cacat tuna netra dalam melakukan perhitungan-perhitungan.

b. Bagaimana system tool dan teknik yang bisa dipakai untuk merancang

software tersebut.

(22)

Dalam penyusunan skripsi ini, penulis membatasi pembahasannya hanya pada:

a. Perancangan aplikasi kalkulator audio visual dengan menggunakan SAPI 5.0 dan Visual Basic 6.0.

b. Membangun system user dapat bertanya pada komputer terhadap persoalan perhitungan penjumlahan, pengurangan, perkalian, dan pembagian pada bilangan bulat dalam bahasa inggris dan bahasa indonesia.

c. Pada pilihan layanan bahasa Indonesia, tidak ada system pengenalan suara (Speech To Text)

1.5 Tujuan Penulisan

Tujuan penulisan yang penulis lakukan adalah:

a. Menganalisa dan merancang system aplikasi kalkulator audio visual. b. Tersedianya system (perangkat lunak) sebagai fasilitas yang

memberikan alternatif solusi bagi para tuna netra sehingga membantu dalam melakukan perhitungan-perhitungan.

1.6 Manfaat Penulisan

Sesuai dengan permasalahan dan tujuan penelitian yang sudah disebutkan, maka manfaat penelitian dapat dirumuskan sebagai berikut:

(23)

1. Untuk memenuhi salah satu syarat dalam menempuh gelar S1 (Strata 1) pada Fakultas Sains dan Teknologi Jurusan Teknik Informatika Universitas Islam Negeri Syarif Hidayatullah Jakarta.

2. Menambah wawasan penulis tentang system pengenalan suara, teknologi informasi, khususnya dalam membangun sebuah software.

b. Bagi Universitas

1. Mengetahui kemampuan mahasiswa dalam menguasai materi teori yang telah diperoleh masa kuliah.

2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi.

c. Bagi Masyarakat

Memudahkan dalam menggunakan aplikasi kalkulator khususnya bagi para penyandang cacat tuna netra yang mempunyai keterbatasan. Sehingga di dalam kehidupanya sehari-hari menjadi lebih baik.

d. Bagi Pemerintah

Tersedianya produk teknologi yang dapat dimanfaatkan di lingkungan pendidikan Sekolah Luar Biasa (SLB) Tuna Netra.

(24)

Untuk memperoleh data dan informasi yang diperlukan, ada beberapa metode yang penulis gunakan :

A. Metode Pengumpulan Data 1. Studi Pustaka

Yaitu pengumpulan data dan informasi dengan cara membaca buku-buku referensi, mencari artikel, jurnal, dan e-book di Internet yang dapat dijadikan acuan pembahasan yang berhubungan dengan judul skripsi ini. 2. Diskusi

Melakukan diskusi dengan dosen pembimbing dan teman-teman di kampus.

B. Metode Pengembangan System

Pengembangan system dalam penelitian ini penulis lakukan menggunakan tahapan siklus pengembangan RAD, Kendal & Kendal (1998,2000), yaitu:

1. Fase Perencanaan Syarat-syarat, yaitu menentukan tujuan informasi.

2. Fase Perancangan

Yaitu perancangan proses-proses yang akan terjadi didalam system, perancangan basis data yaitu perancangan table-tabel yang akan digunakan dan perancangan antar muka keluaran.

(25)

Pada tahap ini dilakukan pengkodean terhadap rancangan-rancangan yang telah didefinisikan.

4. Fase Pelaksanaan

Pada tahap ini dilakukan pengujian terhadap system dan melakukan pengenalan terhadap system.

1.8 Sistematika Penulisan

Dalam skripsi ini, penulis membagi laporan menjadi beberapa bab yang secara singkat dapat dijelaskan sebagai berikut:

BAB I

PENDAHULUAN

Dalam bab ini berisi uraian tentang latar belakang masalah, identifikasi masalah, perumusan masalah, batasan masalah, tujuan penulisan, manfaat penulisan metode penelitian dan systematika penulisan.

BAB II

LANDASAN TEORI

Dalam bab ini berisi uraian tentang landasan teori yang berhubungan dengan materi yang penulis buat. Teori-teori tersebut antara lain adalah system pengenalan suara (Speech

Recognition), SAPI (Speech Aplication Programming

Interface), InoTTS, Algoritma Program, Model-model

Proses Perangkat Lunak, dan didukung komponen

(26)

BAB III METODOLOGI

Bab ini membahas tentang metodelogi yang digunakan penulis dalam perancangan system ini.

BAB IV ANALISA, PERANCANGAN,

PELAKSANAAN DAN PENGUJIAN

PROGRAM

Dalam bab ini, penulis menjelaskan analisis kebutuhan

system, konsep metode Speech Aplication Programming

Interface, Recognizer Speech (Speech to Text), Text to Speech, perancangan antarmuka serta spesifikasi system

yang di terapkan. Juga diuraikan tentang implementasi atau cara pemakaian serta pengujian program yang penulis buat.

BAB V

PENUTUP

Bab ini merupakan bab terakhir dari seluruh rangkaian bab yang ada di skripsi ini, dalam bab ini berisi uraian tentang kesimpulan-kesimpulan yang didapat penulis serta mengemukakan saran yang dianggap perlu.

(27)

BAB II

LANDASAN TEORI

2.1 Speech Recognition (Sytem Pengenalan Pembicaraan)

Terdapat dua macam mode pada sistem pengenalan pembicaraan yaitu:

a. Mode Diktasi

Pada mode ini pengguna komputer dapat mengucapkan kata/ kalimat yang selanjutnya akan dikenali oleh komputer dan diubah menjadi data teks. Kemungkinan jumlah kata yang dapat dikenali dibatasi oleh jumlah kata yang telah terdapat pada database. Pengenalan mode diktasi merupakan

speaker dependent. Keakuratan pengenalan mode ini

bergantung pada pola suara dan aksen pembicara serta pelatihan yang telah dilakukan.

b. Mode Command and Control

Pada mode ini pengguna komputer mengucapkan kata/kalimat yang sudah terdefinisi terlebih dahulu pada database dan selanjutnya akan digunakan untuk menjalankan perintah tertentu pada aplikasi komputer. Jumlah perintah yang dapat dikenali tergantung dari aplikasi yang telah mendefinisikan terlebih dahulu pada database jenis-jenis perintah yang dapat dieksekusikan. Mode ini merupakan

(28)

terbatas sekali dan ada kemungkinan pembicara tidak perlu melakukan pelatihan pada system sebelumnya.

Terdapat empat proses utama pada system pengenalan pembicaraan, baik pada mode diktasi ataupun command and control

yaitu :

1. Pemisahan Kata

Pemisahan kata adalah proses untuk memisahkan suara yang di

ucapkan oleh pengguna menjadi beberapa bagian. Masing-masing bagian bisa berupa kalimat ataupun hanya sebuah kata. Terdapat tiga metode yang dapat digunakan pada proses pemisahan kata ini yaitu :

a. Discrete Speech

Pada discrete speech, pengguna diharuskan mengucapkan kalimat secara terpenggal dengan adanya jeda sejenak diantara kata. Jeda tersebut digunakan oleh sistem untuk mendeteksi awal dan akhir sebuah kata.

Discrete speech ini mempunyai kelebihan yaitu sedikit resource (memori komputer, waktu proses) yang digunakan oleh system untuk mendeteksi suara, tetapi mempunyai kelemahan yaitu ketidaknyamanan pengguna dalam mengucapkan sebuah kalimat.

b. Word Spotting

Pada word spotting, dalam sebuah kalimat yang diucapkan pengguna, system hanya mendeteksi kata yang terdapat di dalam perbendaharaan yang

(29)

c. Continuous Speech

Pada metode continuous speech, system akan mengenali dan memproses setiap kata yang diucapkan. Metode ini akan menghasilkan keakuratan dalam mengenali ucapan pengguna. Tetapi di samping itu metode ini memerlukan resource yang besar dalam prosesnya. Pada metode ini, system harus dapat mendeteksi awal dan akhir setiap kata dalam kalimat tanpa adanya jeda diantara kata-kata tersebut, dan setelah berhasil memisahkan kata, langkah selanjutnya adalah mencocokkan dengan perbendaharaan kata yang dipunyainya.

2. Ketergantungan Terhadap Pengguna

System pengenalan pembicaraan mempunyai beberapa

sifat dilihat dari ketergantungan terhadap pengguna yaitu:

a. Speaker Dependent

Pada speaker dependent system

membutuhkan pelatihan untuk setiap pengguna yang akan menggunakan system tersebut. System tidak akan bisa mengenali pengguna yang belum pernah melakukan pelatihan.

(30)

Pada speaker independent pengguna tidak perlu melakukan pelatihan sebelum dapat menggunakan system, karena system mampu mengenali suara semua pengguna tidak tergantung warna suara dan dialek yang digunakan.

c. Speaker Adaptive

Speaker adaptive merupakan perpaduan dari

speaker dependent dan speaker independent,

dimana pengguna tidak perlu melakukan pelatihan dan keakuratan pengenalan system akan makin meningkat jika pengguna yang sama bekerja terus menerus selama beberapa waktu tertentu.

3. Pencocokan Kata

Pencocokan kata adalah proses untuk mencocokkan kata ucapan yang berhasil di-identifikasi dengan basis data yang dipunyai oleh system. Terdapat dua metode yang dapat dipakai pada proses pencocokan kata ini, yaitu : whole-word matching dan phoneme matching.

(31)

mempunyai kamus fonem. Fonem ialah bagian terkecil dan unik dari suara yang membentuk sebuah kata.

4. Pembendaharaan Kata

Perbendaharaan kata ialah bagian terakhir dalam sebuah sistem pengenalan pembicaraan. Terdapat dua hal yang perlu diperhatikan pada perbendaharaan kata, yaitu ukuran dan keakuratan. Jika perbendaharaan kata berjumlah banyak maka sebuah sistem akan mudah dalam melakukan pencocokan kata, tetapi dengan makin meningkatnya jumlah perbendaharaan kata, maka jumlah kata yang mempunyai ucapan hampir sama juga meningkat, dimana hal ini menurunkan keakuratan pengenalan.

Dan sebaliknya, jika sebuah sistem mempunyai

perbendaharaan kata sedikit, maka keakuratan pengenalan akan tinggi karena sedikitnya kata yang hampir sama, tetapi akan semakin banyak kata yang tidak terkenali. Untuk system

pengenalan pembicaraan dengan mode command and control, akan lebih baik jika menggunakan jumlah perbendaharaan kata sedikit (kurang dari 100 kata), tetapi untuk mode diktasi akan membutuhkan jumlah perbendaharaan kata yang banyak.

(32)

2.2.1 Sistem Pengenalan Pembicaraan

Sistem pengenalan pembicaraan pada aplikasi komputer sekarang sudah bukan merupakan hal yang baru. Banyak penelitian yang dilakukan untuk terus meningkatkan kemampuan pengenalan pembicaraan. Diantaranya yang cukup terkenal adalah penelitian yang dilakukan oleh Microsoft Corporation. Microsoft telah mengembangkan system pengenalan pembicaraan yang diimplementasikan pada sistem operasi Windows. Pada system ini juga dikembangkan standard interface SAPI (Speech Application Programming Interface) yang saat ini telah mencapai versi 5.1. Dengan adanya SAPI memungkinkan pembuat aplikasi untuk mengimplementasikan system pengenalan pembicaraan dengan menggunakan engine yang berbeda tanpa merubah aplikasi yang telah dibuat.

2.2.2 Arsitektur Speech Aplication Programming Interface (SAPI 5.0)

SAPI 5.0 terdiri dari dua antar muka yaitu application programming interface (API) dan device driver interface (DDI). (lihat Gambar 2.3)

(33)

Pada system pengenalan pembicaraan, aplikasi akan menerima even pada saat suara yang diterima telah dikenali oleh engine.

Gambar 2.3 Blok Diagram Arsitektur SAPI

Komponen SAPI yang akan menghasilkan even ini diimplementasikan oleh antar muka ISpNotifySource. Lebih spesifik, SAPI menggunakan SetNotifySink, yaitu aplikasi akan meneruskan pointer IspNotify- Sink ke

ISpNotifySource:: SetNotifySink. ISpNotifySource::SetNotifySink ini akan menerima pemanggilan melalui IspNotify- Sink:: Notify ketika terdapat satu atau lebih even yang menyatakan bahwa aplikasi dapat mengambil data. Biasanya aplikasi tidak mengimplementasikan ISpNotifySink secara langsung tetapi menggunakan CoCreate Instance untuk membuat obyek IspNotify Sink, yang diimplementasikan oleh komponen CLSID_SpNotify. Obyek ini menyediakan antar muka ISpNotifyControl.

(34)

yang berulang sehingga harus dimasukkan ke daftar antrian. Even diidentifikasi dengan menggunakan

tanda SPEVENTENUM.

Ketika aplikasi menerima notifikasi, ada kemungkinan terdapat informasi yang sama pada beberapa even. Dengan memanggil ISpEventSource::GetInfo, maka variable anggota ulCount akan mengembalikan nilai yang berupa struktur SPEVENT SOURCEINFO yang didalamnya terdapat jumlah even yang mempunyai informasi yang sama. Dengan menggunakan IspEvent Source::GetEvents, aplikasi akan mengeluarkan sejumlah struktur SPEVENT, di mana masing-masing mempunyai informasi tentang even tertentu.

(35)

(ISpRecognizer). Pilihan pertama ialah menggunakan

shared recognizer yang memungkinkan untuk berbagi

resource dengan aplikasi pengenalan pembicaraan yang lain. Untuk membuat IspRecoContext untuk shared

ISpRecognizer, aplikasi hanya memerlukan pemanggilan terhadap CoCreateInstance (COM) pada komponen CLSID_SpSharedRecoContext. Pada kasus ini, SAPI akan mengatur audio input stream sesuai dengan pengaturan standard SAPI. Shared

ISpRecognizer ini paling banyak digunakan pada aplikasi pengenalan pembicaraan secara umum. Sedangkan untuk server aplikasi pengenalan pembicaraan yang besar dan berjalan sendiri pada sebuah sistem serta membutuhkan kemampuan kerja yang tinggi, maka lebih baik menggunakan InProc

engine. Untuk membuat ISpRecoContext pada InProc

(36)

Langkah berikut pembuatan system pengenalan pembicaraan adalah pengaturan notifikasi untuk even yang dibutuhkan oleh aplikasi. Karena ISpRecognizer adalah ISpEventSource yang juga merupakan

ISpNotifySource, maka aplikasi dapat memanggil salah satu metode IspNotify Source dari ISpRecoContext untuk memberitahukan dimana terdapat sebuah even dari ISpRecoContext.. Kemudian aplikasi juga harus memanggil ISpEventSource:: SetInterest untuk menyatakan even mana yang perlu untuk

dinotifikasikan. Even yang paling penting adalah SPEI_RECOGNITION, yang berfungsi untuk menyatakan bahwa ISpRecognizer telah mengenali suara tertentu dari ISpRecoContext.

Langkah terakhir pembuatan system pengenalan pembicaraan ini, aplikasi harus membuat, meletakkan di memori (load) dan mengaktifkan ISpRecoGrammar, sesuai dengan mode pengenalan pembicaraan, misal : diktasi atau command and control. Pertama kali, aplikasi harus membuat ISpRecoGrammar menggunakan IspReco Context::CreateGrammar. Kemudian aplikasi harus meletakkan grammar yang telah dibuat tersebut pada memori (load) yaitu dengan memanggil ISpRecoGrammar::Load Dictation untuk mode diktasi atau Isp RecoGrammar::LoadCmdxxx untuk mode command and control. Untuk mengaktifkan

grammar sehingga sistem pengenalan pembicaraan

dapat bekerja, aplikasi harus memanggil ISpRecoGrammar::Set Dictation State untuk mode

(37)

Grammar::SetRuleState/ISpRecoGrammar:: SetRuleIdState untuk mode command and control.

Ketika terjadi notifikasi pada saat pengenalan pembicaraan bekerja, maka lParam yang merupakan variabel anggota dari struktur SPEVENT akan menjadi ISpRecoResult yang kemudian digunakan oleh aplikasi untuk dapat menentukan apa yang telah terkenali dan sekaligus menentukan ISpRecoGrammar mana yang harus digunakan.

ISpRecognizer, baik shared ataupun InProc, dapat mempunyai IspRecoContext lebih dari satu dan masing-masing ISpRecoContext dapat menerima notifikasi sesuai dengan even yang telah didefinisikan. Sebuah ISpRecoContext dapat mempunyai lebih dari satu ISpRecoGrammars di mana masing-masing ISpRecoGrammar tersebut digunakan untuk mengenali tipe grammar yang berbeda.

b. Device Driver Interface (DDI)

(38)

diimplementasikan oleh engine dan ISpSREngineSite yang diimplementasikan oleh SAPI. Antar muka SAPI yaitu ISpSREngineSite juga menyediakan metode untuk memberikan informasi lebih detail mengenai apa yang dikenali oleh engine. Grammars dan speakers

menyediakan informasi ke engine yang dapat membantu engine untuk melakukan pengenalan pembicaraan lebih baik, disamping juga merupakan bagian penting komunikasi yang menghubungkan SAPI dan speech engine. Terdapat 2 aspek terakhir yang berhubungan dengan komunikasi antara engine dan SAPI yaitu urutan pemanggilan yang terjadi serta masalah threading. Salah satu keuntungan

menggunakan SAPI 5.1 ini adalah penyederhanaan masalah threading.

Engine menyediakan layanan ke SAPI melalui antar muka ISpSREngine. Semua fungsi pengenalan terjadi melalui Isp SREngine::RecognizeStream. Ketika SAPI memanggil ISpSREngine::SetSite, maka SAPI memberikan pointer ke antar muka ISpSREngineSite dimana kemudian engine dapat berkomunikasi dengan SAPI selama ISpSREngine::RecognizeStream

(39)

ISpSREngine dan engine tidak boleh meninggalkan ISpSREngine::Recognize Stream sampai terjadi kesalahan atau SAPI sudah terindikasi dengan menggunakan ISpSREngineSite::Read, dimana tidak ada lagi data yang dapat diproses dan engine telah selesai melakukan tugasnya.

SAPI memisahkan pembuat engine dari kerumitan untuk mengatur peralatan suara secara detail. SAPI menjaga logical stream dari raw audio data

dengan membuat indeks posisi stream. Dengan menggunakan indeks posisi stream, engine dapat melakukan pemanggilan terhadap ISpSREngineSite:: Read untuk menerima buffer dari raw audio data

selama ISpSREngine::Recognize Stream dieksekusi. Pemanggilan ini akan terjadi sampai semua data yang dibutuhkan tersedia. Jika ISpSREngineSite::Read menghasilkan data yang lebih sedikit dari yang dibutuhkan, yang berarti tidak ada data lagi, maka

engine akan menghentikan eksekusi

ISpSREngine::RecognizeStream.

(40)

mengijinkan Isp SREngine untuk masuk dan keluar secara cepat ialah ISpSREngine::Recognize Stream.

Engine akan selalu tereksekusi dan terpisah di dalam ::RecognizeStream sampai terjadi kegagalan atau tidak ada lagi data yang diterima dari ISpSREngine::Read. Ketika engine mempunyai kesempatan untuk memberikan SAPI giliran melakukan pemanggilan kembali ke ISpSREngine, maka engine harus memanggil Isp SREngine::Synchronize dan memberikan indeks posisi stream dimana engine telah selesai melakukan pengenalan data. Dari manapun Synchronize dipanggil, SAPI dapat melakukan pemanggilan kembali ke metode ISpSREngine yang lain kecuali Recognize. Sebagai contoh, speaker dapat berubah, grammars dapat di-unload, diaktifkan ataupun dinon-aktifkan secara dinamis. Pada bagian manapun, Isp SREngine akan dipanggil hanya pada thread semula yang membuat ISpSREngine atau thread dimana engine

memanggil IspSREngineSite::Synchronize. Jika engine

hanya memanggil ISpSREngineSite::Synchronize pada

thread yang sama dengan

(41)

SAPI hanya memanggil satu thread yang merupakan turunan dari ISpSREngine.

2.3 Algoritma Program

Algoritma program terdiri dari dua macam, yaitu pseudocode dan

flow chart (diagram alur).

2.3.1 Pseudoceode

Pseudo berarti imitasi atau mirip atau menyerupai dan code menunjukkan dari program , berarti pseudocode adalah kode yang mirip dengan instruksi kode program yang sebenarnya.

Pseudocode berbasis pada bahasa pemrograman yang

sesungguhnya seperti COBOL, FORTAN atau PASCAL, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada programmer.

Pseudocode akan memudahkan programmer untuk

memahami dan menggunakannya, karena mirip dengan kode-kode program sebenarnya. Pseudocode menjelaskan juga tentang pemberian nilai awal dari suatu variabel, membuka dan menutup

file, subscript atau tipe-tipe data yang digunakan (misalnya real, integer, boolean).

2.3.2 Diagram Alur (Flow Chart)

(42)

memberikan gambaran dua dimensi berupa simbol-simbol grafis. Masing-masing simbol telah ditetapkan terlebih dahulu fungsi dan artinya. Simbol-simbol tersebut dipakai untuk menunjukkan berbagai kegiatan operasi dan jalur pengendalian.

Diantara simbol-simbol yang akan dipergunakan sebagai berikut:

SIMBOL KEGUNAAN Simbol yang menunjukkan pengolahan

yang dilakukan oleh komputer

Simbol yang menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya.

Simbol untuk kondisi yang akan menghasilkan beberapa kemungkinan jawaban/aksi.

Simbol untuk permulaan atau akhir dari suatu program.

Simbol untuk keluar atau masuk prosedur atau proses dalam lembar yang sama.

Menunjukkan bagan instruksi selanjutnya

Simbol untuk menyatakan input berasal Simbol proses

Simbol input-output

Simbol decision

Simbol terminal

(43)

dari dokumen dalam bentuk kertas atau output dicetak di kertas.

Berisi catatan supaya mudah dimengerti isi/tujuan algoritma atau uraian data yang akan diproses.

[image:43.595.112.511.109.537.2]

Tanda hubung antara symbol flowchart yang berbeda halaman.

Tabel 2.1 Simbol-simbol Flowchart

2.3.3 STD (State Transition Diagram)

State Transition Diagram (Gambar 2.11) merupakan suatu diagram yang menggambarkan bagaimana state yang lain pada satu waktu. State Transition Diagram menggambarkan suatu state yang mempunyai kondisi dimana dapat menyebabkan perubahan satu

state ke state yang lain (Hoffer, George, dan Valacich, 1996, hal. 364).

State Transition Diagram pada dasarnya merupakan sebuah diagram yang terdiri dari state dan transisi atau perpindahan state. Transisi atau perpindahan state. Transisi atau perpindahan state

terdiri dari kondisi dan aksi. Transisi di antara kedua keadaan pada umumnya disebabkan oleh suatu kondisi. Kondisi adalah suatu kejadian yang dapat diketahui oleh sistem. Sedangkan aksi adalah tindakan yang dilakukan oleh sistem apabila terjadi perubahan

state atau merupakan reaksi dari sistem. Simbol catatan/keterangan

(44)

Adapun perubahan atau simbol yang digunakan dalam diagram ini adalah:

a. Modul

Menggunakan simbol lingkaran kecil (Gambar 2.12) yang mewakili modul yang dipanggil apabila terjadi tindakan.

b. Tampilan Kondisi

Gambar 2.12. Notasi Modul State 1

State 2

[image:44.595.116.510.157.554.2]

Aksi

(45)

Merupakan layer yang ditampilkan menurut keadaan atau atribut, untuk memenuhi suatu tindakan pada waktu tertentu yang mewakili suatu bentuk keberadaan atau kondisi tertentu, disimbolkan dengan gambar kotak (Gambar 2.13).

c. Tindakan (state transition)

Menggunakan simbol anak panah (Gambar 2.14) disertai keterangan tindakan yang dilakukan.

2.4 Model-model Proses Perangkat Lunak

[image:45.595.112.508.192.553.2]

Untuk menyelesaikan masalah yang ada dalam sebuah perancangan perangkat lunak diperlukan model-model proses atau paradigma rekayasa perangkat lunak berdasarkan sifat aplikasi dan proyeknya, metode dan alat bantu yang dipakai, dan kontrol serta penyampaian yang dibutuhkan. Roger S. Pressman [Pressman, 1992] menyebutkan ada beberapa model dari proses perangkat lunak, di antaranya:

Gambar 2.13. Notasi Tampilan

(46)

2.4.1 Model Sekuensial Linear

[image:46.595.107.511.191.550.2]

Model sekuensial linear mengusulkan sebuah pendekatan kepada perkembangan perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan kemajan sistem pada seluruh analisis, desain, kode pengujian, dan pemeliharaan. Gambar 2.15 dan Gambar 2.16 menunjukkan sekuensial linear

untuk rekayasa perangkat lunak, yang sering disebut juga denga “siklus kehidupan klasik” atau “model air terjun”.

2.4.2 Model Prototipe

Prototyping paradigma (Gambar 2.17) dimulai dengan

pengumpulan kebutuhan. Pengembang dan pelanggan bertemu dan mendefinisikan obyektif keseluruhan dari perangkat lunak, mendefinisikan segala kebutuhan yang diketahui, dan area garis besar di mana definisi lebih jauh merupakan keharusan kemudian analisis desain kode tes

Pemodelan sistem informasi

(47)

dilakukan “perancangan kilat”. Perancanga kilat berfokus pada penyajian dari aspek-aspek perangkat lunak tersebut yang akan nampak bagi pelanggan/pemakai (contohnya pendekatan input dan format output). Prototipe tersebut dievaluasi oleh pelanggan/pemakai dan dipakai untuk menyaring kebutuhan pengembangan perangkat lunak.

2.4.3 Model RAD (Rapid Application Development)

Rapid Application Development (RAD) adalah sebuah

model proses perkembangan perangkat lunak sekuensial linear yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari

Membangun Memperbaiki

Market

Uji pelanggan Mengendalikan

Market Mendengarkan

[image:47.595.110.508.197.561.2]

pelanggan

(48)

model sekuensial linear di mana perkembangan cepat dicapai dengan menggunakan model pendekatan konstruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam waktu periode yang sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD meliputi fase-fase: 1. Fase Perencanaan Syarat. Dalam fase ini, pengguna dan

penganalisis bertemu untuk mengidentifikasi tujuan-tujuan aplikasi atau sistem serta untuk mengidentifikasi syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut 2. Workshop Desain RAD. Fase ini adalah fase untuk

merancang dan memperbaiki yang bisa digambarkan sebagai workshop. Terdiri dari fase perancangan dan fase konstruksi. 3. Fase implementasi. Dalam Gambar 2.18 ditunjukkan bahwa

(49)
[image:49.595.111.535.172.651.2]

Gambar 2.18 Model RAD

Fase Perencanaan Syarat-syarat

Menentukan Tujuan dan Syarat-syarat Informasi

Umpan Balik Pengguna

Fase Konstruksi

Membangun Sistem

Menggunakan masukan dari Pengguna Bekerja dengan

Pengguna untuk Sistem Perancangan

Memperkenalkan Sistem

(50)

2.5 Visual Basic 6.0

Microsoft Visual Basic merupakan sebuah program yang sangat

populer di dunia pemrograman. Visual Basic adalah sebuah bahasa pemrograman yang digunakan untuk membuat program aplikasi berbasis orientasi objek atau object orientedprogram (OOP). Dengan Visual Basic, perancangan sebuah program akan lebih mudah dan menyenangkan karena didukung oleh komponen-komponen pelengkap yang memiliki standar

Windows.

Visual Basic merupakan pengembangan dari bahasa BASIC

(Beginner's All Symbolic Instruction Code). BASIC adalah sebuah bahasa pemrograman "kuno" yang merupakan awal dari bahasa-bahasa pemrograman tingkat tinggi lainnya. BASIC dirancang tahun 1950-an dan ditujukan untuk dapat digunakan oleh para programmer pemula. Visual

Basic mulai dikembangkan sejak tahun 1980-an dan kini telah mencapai

versi yang ke-6. Tampilan Visual Basic dan bagian-bagianya dapat dilihat pada Gambar 2.19.

(51)

1. Standard Edition/Learning Edition : versi standar yang sudah mencakup berbagai sarana dasar dari Visual Basic 6.

2. Professional Edition : memberikan berbagai sarana ekstra yang dibutuhkan oleh para programmer professional.

3. Enterprise Edition : dikhususkan untuk para programmer yang ingin mengembangkan aplikasi remote computing atau

[image:51.595.114.555.187.624.2]

client/server.

Gambar 2.19 Tampilan aplikasi Micosoft Visual Basic 6.0

Menurut Adi Kurniadi (2000:10), komponen-komponen yang ada pada lingkungan Visual Basic adalah :

Title Bar

Menu Bar

Tool Bar

Tool Box

Project

Form

(52)

Control Menu

Control menu adalah menu yang digunakan terutama untuk memanipulasi jendela Visual Basic. Dari menu ini Anda bisa mengubah ukuran, memindahkan, atau menutup jendela Visual Basic atau jendela

Windows lainnya. Control menu tersebut adalah menu Restore, Move, Size, Minimize, Maximize dan Close.

Menu

Menu Visual Basic berisi semua perintah Visual Basic yang dapat anda pilih untuk melakukan tugas tertentu. Isi dari menu ini sebagian hampir sama dengan program-program Windows pada umumnya.

Toolbar

Toolbar adalah tombol-tombol yang mewakili suatu perintah

tertentu dari Visual Basic. Biasanya tombol-tombol ini merupakan perintah-perintah yang sering digunakan dan terdapat pula pada menu

Visual Basic.

Form Window

Form window atau jendela form adalah daerah kerja utama, di

mana Anda akan membuat program-program aplikasi Visual Basic. Pada form ini, Anda akan meletakkan berbagai macam objek interaktif seperti teks, gambar, tombol-tombol perintah, scroolbar, dan sebagainya.

Toolbox

(53)

(penghubung) antara program aplikasi dan usernya, dan kesemuanya harus di letakkan di dalam jendela form.

Project Explorer

Jendela project explorer adalah jendela yang mengandung semua file di dalam aplikasi Visual Basic Anda. Setiap aplikasi dalam Visual Basic disebut dengan istilah project (proyek), dan setiap proyek bisa mengandung lebih dari satu file. Pada project explorer ditampilkan semua file yang terdapat pada aplikasi (proyek) Anda, misalnya form, modul class dan sebagainya.

Jendela Properties

Jendela properties adalah jendela yang mengandung semua informasi mengenai objek yang terdapat pada aplikasi Visual Basic Anda. Properti adalah sifat dari sebuah objek, misalnya seperti namanya, warna, ukuran, posisi dan sebagainya.

Form Layout Window

Form Layout Window adalah jendela yang menggambarkan posisi

dari form yang ditampilkan pada layar monitor. Posisi form pada Form

Layout Window inilah yang merupakan petunjuk di mana aplikasi Anda

akan ditampilkan pada layar monitor saat dijalankan nanti.

Jendela Code

Jendela code adalah salah satu jendela yang penting di dalam

Visual Basic. Jendela ini berisi kode-kode program yang merupakan

(54)

2.6 IndoTTS

Teknologi pengenalan suara oleh mesin sudah biasa digunakan, salah satunya menjadi aplikasi voice dialing di telefon selular. Proses perubahan ucapan menjadi perintah-perintah yang dimengerti oleh mesin dilakukan melalui teknologi natural language processing (NLP). Kemampuan mesin mengeluarkan ucapan manusia terbantu oleh teknologi

text to speech (TTS).

Arry Akhmad Arman meluncurkan program IndoTTS, sebuah program text to speech yang menghasilkan pengucapan dalam bahasa Indonesia. Program ini dapat menjadi modal agar semua sistem yang masih angan-angan, nantinya tidak hanya bisa berbicara bahasa Inggris atau Jepang, tetapi juga berbahasa Indonesia.

Dengan bantuan IndoTTS, dapat memasukkan teks bahasa Indonesia apapun dan tinggal memencet satu tombol untuk memerintahkan program ini membacakan teks tersebut.

(55)

khusus kecuali saat merekam diphone database di Belgia pada tahun 2000 lalu. Arry memaparkan, unit terkecil bentuk tulisan adalah huruf, sedangkan unit terkecil bentuk lisan adalah fonem. Fonem tidak identik dengan huruf karena gabungan huruf "n" dan "g", misalnya, menjadi fonem "ng". Mengingat hasil akhir TTS adalah ucapan maka fokus tertuju pada fonem yang dalam bahasa Indonesia berjumlah 35.

Arry membangun IndoTTS dengan teknologi diphone

concatenation, suatu teknik membangkitkan ucapan dengan cara

menyambung-nyambung diphone yang direkam dari ucapan manusia.

Diphone adalah dua fonem berurutan, dari 35 fonem akan tercipta 1.296

diphone termasuk diphone "silence" untuk awal dan akhir kata.

Penentuan fonem saja belum cukup karena untuk keperluan perekaman masih dibutuhkan informasi tentang durasi sebuah fonem yang pada umumnya diucapkan. Jika dipukul rata, diperkirakan butuh waktu 70

milisecond untuk mengucapkan satu fonem. Selesai? Belum, agar ucapan

yang dihasilkan tidak kaku dan datar seperti robot, perlu diketahui frekuensi suara untuk intonasi.

(56)

Setelah semua tersedia, IndoTTS siap bekerja. Rangkaian huruf yang dimasukkan akan diubah menjadi rangkaian fonem lengkap dengan durasi dan frekuensinya. Data itu akan diumpankan ke modul Mbrola, metode speech synthesizer (penyusunan ucapan) dengan menggunakan metode diphone buatan Belgia, yang kemudian akan menyambung

(57)

BAB III

METODOLOGI PENELITIAN

Seperti yang telah dibahas pada bab satu didalam

pengembangan sistem aplikasi kalkulator audio visual,

ada beberapa tahapan yang harus dilakukan diantaranya

:

3.1 Pengumpulan Data a. Studi Pustaka

Yaitu pengumpulan data dan informasi dengan cara membaca buku-buku referensi, mencari artikel, jurnal, dan e-book di Internet yang dapat dijadikan acuan pembahasan yang berhubungan dengan judul skripsi ini.

b. Diskusi

Melakukan diskusi dengan dosen pembimbing dan teman-teman di kampus.

3.2 Tahapan Pendekatan Sistem

Tahapan ini dilakukan sebelum tahapan pengembangan system. Pada tahapan ini di lakukan analisis kebutuhan dan identifikasi system.

a. Analisa Kebutuhan.

(58)

b. Identifikasi System.

Aplikasi kalkulator audio visual yang dibuat dengan memanfaatkan teknologi pengenalan suara (speech recognition), SAPI (Speech Aplikation Programming Interface) 5.0, Visual Basic 6.0 merupaka aplikasi yang dapat membantu para penyandang cacat indera penglihatan (tuna netra) dalam melakukan perhitungan-perhitungan. Aplikasi ini hanya dapat digunakan pada proses perhitungan penjumlahan, pengurangan, perkalian, dan pembagian yang melibatkan bilangan-bilangan bulat saja. Pembuatan aplikasi ini diperlukan sebagai

alternative bagi para penyandang cacat tuna netra yang tidak dapat menggunakan kalkulator biasa karena keterbatasanya.

3.3 Tahapan Pengembangan Sistem

Pengembangan sistem yang penulis lakukan menggunakan tiga tahap siklus pengembangan model RAD (Rapid Application

Development), yaitu fase perencanaan syarat, fase workshop desain

(59)

perangkat lunak telah mengetahui dengan jelas kebutuhan user (pengguna) dengan tepat, mengetahui proses-proses apa saja yang ada dalam perangkat lunak yang dibuat, dan input-output yang dihasilkan.

[image:59.595.110.556.164.619.2]

Kendall & Kendall (2003: 327), mengilustrasikan model RAD seperti pada (Gambar 3.1 )

Gambar 3.1 Model RAD

a. Perancangan Syarat-syarat

Fase perencanaan

Menentukan Tujuan dan syarat-syarat

Informasi

Umpan Balik

Bekerja dengan Penguna

Untuk Sistem Perancangan Membangun sistem

Mengunakan kk d i

Memperkenalkan Sistem

(60)

Dalam fase ini, pengguna dan penganalisa bertemu untuk mengidentifikasi tujuan-tujuan aplikasi serta untuk mengidentifikasikan syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut. Hal ini penulis uraikan sebagai analisa terhadap sistem yang akan diterapkan.

b. Workshop Design

Pada tahapan ini dilakukan perancangan proses yaitu perancangan proses-proses yang akan terjadi di dalam aplikasi, perancangan antarmuka yaitu perancangan antarmuka program, serta dilakukan pengkodean terhadap rancangan-rancangan yang telah didefinisikan.

c. Pelaksanaan

(61)

BAB IV

ANALISA, RANCANGAN, PELAKSANAAN

DAN PENGUJIAN PROGRAM

Dalam perancangan dan pengembangan aplikasi kalkulator audio visual ini penulis menggunakan metode RAD, Kendal & Kendal (1998,2000), yang terdiri: Fase Menentukan Tujuan dan Syarat-syarat Informasi, Fase Perancangan, Fase Kontruksi, serta Fase Pelaksanaan.

4.1

Fase Menentukan Tujuan dan Syarat-syarat Informasi

4.1.1

Analisa Kebutuhan Masalah

Sering kali, untuk dapat melakukan kegiatan kehidupannya sehari-hari secara mandiri, orang tunanetra harus menggunakan teknik alternatif, yaitu teknik yang memanfaatkan indera-indera lain untuk menggantikan fungsi indera penglihatan dalam kegiatan kehidupannya sehari-hari sehingga pola kehidupan kesehariannya pun sangat berubah dan dalam banyak hal menjadi berbeda dari orang pada umumnya.

Teknik alternatif adalah cara khusus (baik dengan ataupun tanpa alat bantu khusus) yang memanfaatkan indera-indera nonvisual atau sisa indera penglihatan untuk melakukan suatu kegiatan yang normalnya dilakukan dengan indera penglihatan. Teknik-teknik alternatif itu diperlukannya dalam berbagai bidang kegiatan seperti dalam membaca dan menulis, bepergian, menggunakan komputer, menata rumah, menata diri, dll. Kadang-kadang teknologi diperlukan untuk membantu menciptakan teknik-teknik alternatif tersebut.

Indera pendengaran dan perabaan merupakan saluran penerima informasi yang paling efisien sesudah indera penglihatan. Oleh karena itu, teknik alternative itu pada umumnya memanfaatkan indera pendengaran dan/atau perabaan. Sejalan dengan hal ini, untuk memungkinkan orang tunanetra menggunakan kalkulator, teknik alternative yang dikembangkan adalah dengan memanfaatkan speech recognition untuk membuat aplikasi kalkulator audio visual. Dengan adanya aplikasi ini, seorang tunanetra dapat merasakan manfaat kalkulator seperti orang pada umumnya menggunakan kalkulator.

4.2 Fase Perancangan ( Workshop Design)

4.2.1 Perancangan Algoritma Program Aplikasi (Gambar 4.1)

(62)

saat si user memasukan suaranya yang kemudian dirubah menjadi bentuk teks lalu disimpan didalam registry computer. Sedangkan text to speech

digunakan untuk merubah teks angka hasil perhitungan menjadi speech/ suara.

Suara/ Speech Mouse Keyboard

Speech Recognition

Command Button

Text

SYSTEM KALKULATOR

Text

KeyPrees

Text to Speech

Suara/ Speech

OUTPUT INPUT

(63)
[image:63.595.114.512.195.542.2]

Gambar 4.1 Alur Proses inpu/output Dalam Aplikasi Kalkulator Audio Visxual

4.2.2

Speech to Text

(Pengenalan Suara

)

Speech Recognition pada dasarnya berfungsi sebagai saluran yang mengkonversi PCM (Pulse Code Modulation) audio digital dari sebuah sound card ke dalam recognized speech (pengenalan ucapan). Elemen dari saluran tersebut adalah:

1. Mengubah bentuk PCM audio digital ke dalam suatu penyajian yang lebih baik.

2. Menerapkan sebuah “grammar” sehingga speech recognizer

mengenali fonem apa yang dimaksud dari sebuah ucapan. 3. Merepresentasikan fonem yang diucapan.

4. Mengkonversi fonem ke dalam kata-kata.

Unsur Pertama dari saluran mengkonversi audio digital

(64)
[image:64.595.90.546.166.809.2]

pola apa yang sebenarnya dikatakan. Pada Gambar 4.2 menjelaskan bagaimana tahapan-tahapan dari suara yang di input menjadi teks didalam sistem komputer.

Gambar 4.2 Urutan proses dari suara ke text.

Speech/ Ucapan Microphone

SoundCard

Digital Audio Arus Amplitudo

windowed fast-Fourier

Merepresentasikan Fonem

Text Grammar

Frequenscy Domain

Pencocokan dengan codebook Database Grafik

amplitudo komponen frekwensi

feature number

(65)

Untuk membuat pola pengenalan lebih mudah, PCM audio digital diubah ke dalam "frequency domain." Perubahan dilakukan dengan menggunakan suatu windowed fast-Fourier. Hasilnya mirip seperti yang dihasilkan spektrograf. Di "frequency domain", dapat diidentifikasi komponen frekwensi dari suatu bunyi. Dari komponen frekwensi inilah, dimungkinkan untuk memperkirakan bagaimana telinga manusia mendengar suara.

Transformasi Fourier dengan cepat menganalisa setiap

1/100 detik dan mengkonversi data audio ke dalam daerah frekwensi. Setiap 1/100 detik menghasilkan suatu grafik amplitudo komponen frekwensi, yang menggambarkan suara yang terdengar setiap 1/100 detik tersebut. Pengenal suara mempunyai suatu

database beberapa ribu grafik seperti itu ( yang disebut suatu

codebook) yang mengidentifikasi jenis suara manusia yang

berbeda. Bunyi yang diidentifikasi melalui pencocokan data di

codebook, menghasilkan angka yang menggambarkan suara.

Angka ini disebut ” feature number” (sebenarnya ada beberapa ” feature number” untuk setiap 1/100 detik tetapi proses yang lebih mudah untuk dijelaskan hanya satu).

(66)

Ucapan manusia dihasilkan oleh suatu sistem produksi ucapan yang dibentuk oleh alat alat ucap manusia. Proses tersebut dimulai dengan formulasi pesan dalam otak pembicara. Pesan tersebut akan diubah menjadi perintah-perintah yang diberikan kepada alat-alat ucap manusia, sehingga akhirnya dihasilkan ucapan yang sesuai dengan pesan yang ingin diucapkan.

Gambar 4.3 Foto sinar X penampang alat-alat ucap manusia[Rab 93]

Gambar 4.3. memperlihatkan foto sinar X

penampang alat-alat ucap manusia. Vocal tract

pada gambar tersebut ditandai oleh garis

putus-putus, dimulai dari vocal cords atau glottis, dan

berakhir pada mulut. Vocal tract terdiri dari

pharynx (koneksi antara esophagus dengan

mulut) dan mulut. Panjang vocal tract pria pada

umumnya sekitar 17 cm. Daerah pertemuan

vocal tract ditentukan oleh lidah, bibir, rahang,

(67)

belakang langit-langit dan berakhir pada

nostrils. Pada keadaan tertentu, suara nasal

akan dikeluarkan melalui rongga ini.

Gambar 4.4 memperlihatkan model sistem

produksi ucapan manusia yang disederhanakan.

Pembentukan ucapan dimulai dengan adanya

hembusan udara yang dihasilkan oleh

paru-paru. Cara kerjanya mirip seperti piston atau

pompa yang ditekan untuk menghasilkan

tekanan udara. Pada saat vocal cord berada

dalam keadaan tegang, aliran udara akan

menyebabkan terjadinya vibrasi pada vocal cord

dan menghasilkan bunyi ucapan yang disebut

voiced speech sound. Pada saat vocal cord berada

dalam keadaan lemas, aliran udara akan melalui

daerah yang sempit pada vocal tract dan

menyebabkan terjadinya turbulensi, sehingga

menghasilkan suara yang dikenal sebagai

unvoiced sound.

Gambar 4.4 Model Sistem Produksi Ucapan

Manusia

(68)

pembentuknya. Setiap komponen bunyi yang

berbeda dibentuk oleh perbedaan posisi, bentuk,

serta ukuran dari alat-alat ucap manusia yang

berubah-ubah selamat terjadinya proses

produksi ucapan.

4.2.2.1

Representasi Sinyal Ucapan.

Sinyal ucapan merupakan sinyal yang

berubah terhadap waktu dengan kecepatan

perubahan yang relatif lambat. Jika

diamati pada selang waktu yang pendek

(antara 5 sampai dengan 100 mili detik),

karakteristiknya praktis bersifat tetap;

tetapi jika diamati pada selang waktu yang

lebih panjang karakteristiknya terlihat

berubah-ubah sesuai dengan kalimat yang

sedang diucapkan. Gambar 4.5

memperlihatkan contoh sinyal ucapan dari

suatu kalimat bahasa Inggris “It’s time”

yang diucapkan oleh seorang pria. Setiap

baris pada gambar tersebut

memperlihatkan potongan sinyal selama

100 mili detik, sehingga seluruh gambar

tersebut memperlihatkan sinyal ucapan

(69)

Gambar 4.5 Contoh Sinyal Ucapan “It’s

Time” [Rab 93]

Ada berbagai cara untuk

mengklasifikasikan bagian-bagian atau

komponen sinyal ucapan. Salah satu cara

yang sederhana adalah dengan cara

mengklasifikasikannya menjadi tiga

keadaan yang berbeda, yaitu (1)

silence

(S),

keadaan pada saat tidak ada ucapan yang

diucapkan; (2)

unvoiced

(U), keadaan pada

saat vocal cord tidak melakukan vibrasi,

sehingga suara yang dihasilkan bersifat

tidak periodic atau bersifat random; (3)

voiced

(V), keadaan pada saat terjadinya

vibrasi pada vocal cord, sehingga

menghasilkan suara yang bersifat kuasi

periodik.

Pada gambar 4.5 di atas sudah

tercantum label-label S, U dan V yang

dapat mempermudah untuk mengamati

perbedaan keadaan-keadaan tersebut. Baris

(70)

merepresentasikan keadaan diam dimana

pembicara belum mengucapkan apapun.

Amplituda kecil yang tampak pada perioda

tersebut merupakan noise latar belakang

yang ikut terekam.

Suatu perioda singkat unvoiced (U)

tampak mendahului vocal pertama dalam

kata “It”. Selanjutnya diikuti oleh daerah

voiced (V) yang cukup panjang,

merepresentasikan vocal “i”. Berikutnya

diikuti oleh daerah unvoiced (U) yang

merepresentasikan daerah pelemahan

pengucapan “i”. Setelah itu diikuti oleh

silence (S) yang merupakan bagian dari

fonem “t”, dan seterusnya.

Dari contoh tersebut jelas bahwa

segmentasi ucapan menjadi S, U dan V

tidak bersifat eksak, artinya ada

daerah-daerah yang tidak dapat dikategorikan

dengan tegas ke dalam salah satu dari tiga

kategori tersebut. Salah satu penyebabnya

adalah perubahan dari keadaan-keadaan

alat ucap manusia yang tidak bersifat

diskrit dari satu keadaan ke keadaan

lainnya, sehingga bunyi transisi dari satu

segmen ke segmen lainnya menghasilkan

bentuk yang tidak mudah ditentukan.

Selain itu, ada segmen-segmen ucapan yang

mirip atau bahkan mengandung silence

didalamnya.

Representasi sinyal dalam diagram

waktu terhadap amplituda seperti gambar

(71)

yang efektif untuk melakukan analisis dari

suatu ucapan. Untuk melakukan analisis

sinyal ucapan, lebih sering digunakan

representasi spektral menggunakan

spektogram seperti terlihat pada Gambar

4.6. Dengan menggunakan spektogram,

dapat diidentifikasikan

komponenkomponen frekuensi dari suatu

segmen ucapan. Segmen ucapan yang

bentuknya mirip pada domain waktu lebih

mudah dibedakan pada spektogram dengan

cara melihat perbedaan komponen

frekuensinya.

Gambar 4.6. Spektogram Pita Lebar, Spektogram Pita

Sempit, dan Amplitudo

(72)

Spektogram dibedakan menjadi

spektogram pita lebar (wideband

spectogram) dan spektogram pita sempit

(narrowband spectogram). Spektogram pita

lebar adalah analisis spectral pada suatu

interval sepanjang 15 mili detik

menggunakan filter dengan lebar pita 125

Hz serta analisis detail yang dilakukan

setiap 1 mili detik. Spektogram pita sempit

adalah analisis spectral pada suatu interval

sepanjang 50 mili detik menggunakan filter

dengan lebar pita 40 Hz serta analisis detail

yang dilakukan setiap 1 mili detik.

Spektogram pita lebar dapat digunakan

untuk melihat komponen-komponen

frekuensi utama dari suatu ucapan dengan

jelas, seperti terlihat pada gambar paling

atas dari gambar 4.6 tersebut. Sebagian

komponen frekuensi yang tidak dominan

menjadi tidak terlihat pada spektogram

pita lebar. Untuk melihat

komponen-komponen frekuensi yang lebih rinci

dilakukan menggunakan spektogram pita

sempit, seperti yang terlihat pada gambar

kedua dari atas pada Gambar 4.6.

Dalam kegiatan penelitian dan

pengembangan sistem TTS, analisis

spektral diantaranya digunakan untuk

melakukan segmentasi

komponen-komponen sinyal ucapan, indetifikasi

komponen frekuensi segmen ucapan, serta

(73)

4.2.2.2

Karakteristik Sinyal Ucapan

Unit bunyi terkecil yang dapat

dibedakan oleh manusia disebut fonem.

Suatu ucapan kata atau kalimat pada

prinsipnya dapat dilihat sebagai urutan

fonem. Himpunan fonem yang ada dalam

suatu bahasa berbeda-beda. Setiap fonem

disimbolkan dengan suatu symbol yang

unik.

Saat ini ada beberapa standar cara penamaan fonem yang berlaku [Rab93], diantaranya adalah standar (1) IPA (International Phonetic Alphabet)1, (2) ARPABET, serta (3)

SAMPA. Tabel 4.1 memperlihatkan daftar fonem bahasa Inggris-Amerika serta representasinya dalam simbol-simbol IPA serta ARPABET.

(74)

Gambar 4.7 Daftar dan Klsifikasi Fonem Bahasa

Inggris-Amerika.

a.

Vokal

Sinyal ucapan vokal memiliki bentuk

kuasi periodik seperti terlihat pada

Gambar 4.8. Setiap vokal mempunyai

komponen frekuensi tertentu yang

membedakan karakter satu fonem vokal

dengan fonem vokal lainnya, seperti terlihat

pada spektogram Gambar 4.9. Fonem vokal

Bahasa Inggris mencakup fonem-fonem

/IY/, /IH/, /EH/, /AE/, /AA/, /ER/, /AH/,

/AX/, /AO/, /UW/, /UH/, dan /OW/.

Penelitian untuk mengidentifikasikan

karakteristik fonem-fonem vokal Bahasa

Indonesia pernah dilakukan dan

dipublikasikan oleh Arry Akhmad Arman

(75)

Gambar 4.8. Bentuk Sinyal Ucapan Vokal Bahasa Inggris

[Rab 93]

Gambar 4.9. Spektogram Sinyal Ucapan Vokal Bahasa Inggris [Rab93]

b. Diftong

Diftong pada prinsipnya adalah dua

fonem vokal yang berurutan dan diucapkan

tanpa jeda. Fonem diftong Bahasa Inggris

mencakup /AY/, /OY/, /AW/, dan /EY/.

(76)

karakteristik fonem-fonem vokal

pembentuknya disertasi bentuk transisinya.

Gambar 4.10. Contoh Sinyal dan Spektogram Diftong Bahasa Inggris [Rab93]

Gambar4.11. Contoh Sinyal dan Spektogram Konsonan Nasal Bahasa Inggris [Rab93]

(77)

Konsonan nasal dibangkitkan dengan

eksitasi glotal dan vocal tract mengerut

total pada beberapa titik tertentu sepanjang

lintasan pengucapan. Bagian belakang

langit-langit merendah, sehingga udara

mengalir melalui nasal tract dengan suara

yang dipancarkan melalui lubang hidung.

Konsonan nasal Bahasa Inggris adalah /M/,

/N/, dan /NX/. Contoh bentuk sinyal ucapan

serta spektogramnya dapat dilihat pada

Gambar 4.11.

d. Konsonan Frikatif

Konsonen frikatif pada prinsipnya

dapat dibedakan menjadi frikatif unvoiced

serta voiced. Fonem Bahasa Inggris yang

termasuk frikatif unvoiced adalah /F/, /TH/,

/S/, dan /SH/, sedangkan yang termasuk

frikatif voiced adalah /V/, /Z/, dan /ZH/.

Frikatif unvoiced dibentuk dengan suatu

eksitasi terhadap vocal tract dengan suatu

aliran udara yang tetap, sehingga

menyebabkan turbulensi di daerah yang

mengkerut dalam vocal tract. Frikatif voiced

agak berbeda dengan frikatif unvoiced. Pada

frikatif voiced, suara dihasilkan oleh dua

sumber eksitasi. Sumber eksitasi lainnya

(78)
[image:78.595.110.505.107.766.2]

Gambar 4.12. Contoh Sinyal dan Spektogram Konsonan

Frikatif

Bahasa Inggris [Rab 93]

e.

Konsonan Stop

Seperti konsonan frikatif, konsonen stop

dapat dibedakan menjadi konsonan stop

unvoiced serta voiced. Konsonan stop

memiliki bentuk yang berbeda dengan

konsonankonsonan lainnya. Konsonan ini

memperlihatkan pola transient dan tidak

kontinyu. Konsonan ini dibentuk dengan

cara memberikan tekanan pada kondisi

pengerutan total di bagian rongga mulut

tertentu, dan segera diikuti dengan

pelemasan. Untuk fonem /B/ pengerutan

terjadi di bibir, untuk fonem /D/

pengerutan terjadi di belakang gigi depan,

sedangkan untuk fonem /G/ pengerutan

terjadi di sekitar bagian belakang

langit-langit. Selama perioda total pengerutan

terjadi, tidak ada suara yang dikeluarkan

(79)

mengandung bagian yang menyerupai

silence. Fonem Bahasa Inggris yang

termasuk konsonan stop unvoiced adalah

/P/, /T/, dan /K/, sedangkan yang termasuk

konsonan stop voiced adalah /B/, /D/, dan

/G/.

Gambar 4.13. Contoh Sinyal dan Spektogram Konsonan

Stop

Bahasa Inggris [Rab 93]

4.2.3

TTS (

Text to Speech

)

Sistem Text to Speech pada prinsipnya terdiri dari dua sub

system (Gambar 4.14), yaitu :

[image:79.595.110.503.108.527.2]

1) Bagian Konverter Teks ke Fonem (Text to Phoneme), serta 2) Bagian Konverter Fonem ke Ucapan (Phoneme to Speech).

Gambar 4.14.Alur Proses Teks majadi Ucapan

Konventer Teks ke Fonem

Konventer Fonem ke

Ucapan

Teks Ucapan

(80)

Gambar

Tabel 2.1  Simbol-simbol Flowchart
Gambar 2.11 Contoh perubahan state
Gambar 2.13. Notasi Tampilan
Gambar 2.15 dan Gambar 2.16 menunjukkan sekuensial linear
+7

Referensi

Dokumen terkait