Rabu, 25 November 2015

SS.X. Middleware

Middleware
Middleware adalah perangkat lunak komputer yang menyediakan layanan untuk aplikasi perangkat lunak yang tersedia dari sistem operasi. Middleware memudahkan pengembang perangkat lunak untuk melakukan komunikasi pada input / output , sehingga mereka dapat fokus pada tujuan tertentu dari aplikasi mereka. Middleware adalah perangkat lunak yang menghubungkan komponen perangkat lunak atau aplikasi perusahaan. Middleware adalah lapisan perangkat lunak yang terletak di antara sistem operasi dan aplikasi pada setiap sisi dari sebuah jaringan komputer terdistribusi. Biasanya, mendukung kompleks, aplikasi bisnis perangkat lunak yang didistribusikan.


Middleware adalah infrastruktur yang memudahkan pembuatan aplikasi bisnis, dan menyediakan layanan inti seperti concurrency, transaksi, threading, messaging, dan kerangka SCA untuk arsitektur berorientasi layanan (SOA) aplikasi. Hal ini juga memberikan keamanan dan memungkinkan fungsionalitas ketersediaan tinggi untuk perusahaan.

Sumber:

SS.IX. Speech Synthesis

Speech Synthesis
Speech synthesis adalah sebuah kemampuan bicara manusia yang dibuat oleh manusia (artificial). Sebuah sistem komputer digunakan untuk tujuan ini yang disebut sebagai speech synthesizer, dan dapat diimplementasikan ke dalam software atau hardware. Sebagai contoh sebuah sistem text-to-speech (TTS) yang dapat mengkonversikan teks dengan bahasa biasa menjadi suara.
Synthesized speech dapat diciptakan dengan menggabungkan beberapa potongan-potongan dari pembicaraan/pidato yang sudah direkam dalam sebuah basis data. Kualitas dari sebuah speech synthesizer dilihat dari kemiripannya dengan suara manusia dan kemampuannya untuk bisa dipahami. Program TTS yang jelas dapat membantu orang dengan gangguan visual atau ketidakmampuan membaca, untuk mendengarkan pada pekerjaan yang tertulis dalam komputer. Banyak Sistem Operasi komputer yang telah dimasukkan speech synthesizer sejak tahun 1980-an.

Sumber:



SS.VIII. Speech Recognition

Speech Recognition
Speech Recognition adalah proses identifikasi suara berdasarkan kata yang diucapkan dengan melakukan konversi sebuah sinyal akustik, yang ditangkap oleh audio device (perangkat input suara).
Speech Recognition juga merupakan sistem yang digunakan untuk mengenali perintah kata dari suara manusia dan kemudian diterjemahkan menjadi suatu data yang dimengerti oleh komputer. Pada saat ini, sistem ini digunakan untuk menggantikan peranan input dari keyboard dan mouse.


Keuntungan dari sistem ini adalah pada kecepatan dan kemudahan dalam penggunaannya. Kata – kata yang ditangkap dan dikenali bisa jadi sebagai hasil akhir, untuk sebuah aplikasi seperti command & control, penginputan data, dan persiapan dokumen. Parameter yang dibandingkan ialah tingkat penekanan suara yang kemudian akan dicocokkan dengan template database yang tersedia. Sedangkan sistem pengenalan suara berdasarkan orang yang berbicara dinamakan speaker recognition. Pada makalah ini hanya akan dibahas mengenai speech recognition karena kompleksitas algoritma yang diimplementasikan lebih sederhana daripada speaker recognition. Algoritma yang akan diimplementasikan pada bahasan mengenai proses speech recognition ini adalah algoritma FFT (Fast Fourier Transform), yaitu algoritma yang cukup efisien dalam pemrosesan sinyal digital (dalam hal ini suara) dalam bentuk diskrit. Algoritma ini mengimplementasikan algoritma Divide and Conquer untuk pemrosesannya. Konsep utama algoritma ini adalah mengubah sinyal suara yang berbasis waktu menjadi berbasis frekuensi dengan membagi masalah menjadi beberapa upa masalah yang lebih kecil. Kemudian, setiap upa masalah diselesaikan dengan cara melakukan pencocokan pola digital suara.

Sumber:


SS.VII. Computer Vision

Computer Vision
Computer Vision (komputer visi) adalah ilmu pengetahuan dan teknologi dari mesin yang melihat. Komputer visi berhubungan dengan teori yang digunakan untuk membangun sistem kecerdasan buatan yang membutuhkan informasi dari citra (gambar). Data citranya dapat dalam berbagai bentuk, misalnya urutan video, pandangan deri beberapa kamera, data multi dimensi yang di dapat dari hasil pemindaian medis. Sebagai disiplin teknologi, Computer vision berusaha untuk menerapkan teori dan model untuk pembangunan sistem visi komputer. Contoh aplikasi dari visi komputer mencakup sistem untuk:
  • Pengendalian proses (misalnya, sebuah robot industri atau kendaraan otomatis).
  • Mendeteksi peristiwa (misalnya, untuk pengawasan visual atau menghitung orang).
  • Mengorganisir informasi (misalnya, untuk pengindeksan database foto dan gambar urutan).
  • Modeling benda atau lingkungan (misalnya, inspeksi industri, analisis citra medis atau model  topografi).
  • Interaksi (misalnya, sebagai input ke perangkat untuk interaksi manusia komputer).

Senin, 23 November 2015

((Tugas)) SS.III. PERANCANGAN APLIKASI SPEECH TO TEXT BAHASA INGGRIS KE BAHASA BALI MENGGUNAKAN POCKETSPHINX BERBASIS ANDROID

Speech Recognition Untuk Perancangan Aplikasi Speech To Text Bahasa Inggris Ke Bahasa Bali Menggunakan Pocketsphinx

Speech recognition atau pengenalan ucapan merupakan teknologi yang mampu mengenali pembicaraan atau perkataan tanpa memperdulikan siapa pembicaranya. Masukan berupa suara mampu diubah menjadi text yang mampu dibaca. Speech recognition banyak di implementasikan dengan perangkat pintar, mobil, television, ruangan dan masih banyak yang lainnya. Dengan menggunakan teknologi seperti ini memudahkan kita untuk melakukan perintah menggunakan suara semisal pada mobile application.
Saat ini perkembangan smart phone sudah sangat maju. Penerapan speech recognition pada aplikasi android terus dilakukan, speech to text salah satunya. Untuk itu dibuat sebuah aplikasi android speech to text dari bahasa inggris ke bahasa bali menggunakan pocketsphinx. Aplikasi ini tidak memerlukan akses internet sehingga dapat digunakan di mana saja bagi para wisatawan yang berminat mengetahui sedikit kata-kata dalam bahasa bali. Tidak hanya itu, aplikasi ini juga ditujukan bagi pengguna android yang ingin menambah perbendaharaan kata dalam bahasa bali.
Aplikasi ini mampu memberikan akurasi diatas 80% dari hasil analisis parameter-parameter yang digunakan. Dari hasil pengujian dengan MOS didapat nilai di atas 4. Dengan kata lain aplikasi dapat diterima user dan dinilai baik oleh pengguna.

I. Pendahuluan
Telepon genggam atau telepon selular (ponsel) merupakan perangkat telekomunikasi yang mempunyai kemampuan dasar sama dengan telepon konvensional yang sering kita kenal telepon rumah namu telepon selular mampu dibawa kemana-mana dan tetap dapat berkomunikasi tanpa harus terhubung dengan jaringan telepon kabel. Perkembangan telepon seluar atau handphone saat ini semakin maju. Mulai dari super handphone dengan spesifikasi processor dan pengolahan gambar yang canggih, teknologi kamera ponsel yang menyamai kamera profesional, hingga ponsel yang bisa digunakan sebagai televisi. Karena itulah telepon selular saat ini lebih dikenal dengan sebutan smartphone.
Banyak pengembang smartphone di dunia dengan berbagai macam sistem operasi diantaranya ialah windows phone, iOS, BlackBerry dan Android. Belakangan ini Android menjadi Operating System (OS) terlaris tidak hanya di Indonesia tapi diseluruh dunia. Saat ini smart phone berbasis Android khususnya sudah menjadi kebutuhan masyarakat karena menjanjikan banyak kemudahan sehari-hari salah satunya ialah speech recognition yang dikembangkan oleh perusahaan Google. Dengan fiture seperti ini, pengguna dapat dimudahkan mencari lokasi, artikel dan apapun yang kita butuhkan saat kita sibuk dalam berkendara dengan hanya menggunakan suara kita saja.
Saat bepergian keluar kota pun kita sangat memerlukan sebuah smart phone yang mampu mendampingi kita dalam perjalanan semisal untuk melakukan komunikasi dengan bahasa daerah yang kita kunjungi. Melihat dari perkembangan ini, maka diperlukan sebuah aplikasi pintar berbasis android dengan memanfaatkan speech recognition. Oleh karena itu penulis akan membuat Aplikasi Speech to Text Bahasa Inggris ke Bahasa Bali Berbasis Android Menggunakan Pocketsphinx. Aplikasi ini nantinya akan dapat menjadi panduan bagi parawisatawan asing atau lokal yang berkunjung ke Bali untuk dapat mengetahui sedikit tentang kata-kata dalam bahasa Bali. Aplikasi ini nantinya menggunakan speech recognition offline sehingga kita tidak perlu menggunakan akses internet.

II. Perancangan Sistem
Pada tugas ini dirancang suatu aplikasi yang mampu mengenali sebuah kata berbahasa inggris yang
diucapkan dan menterjemahkannya ke dalam kata berbahasa bali dalam format text pada platform android. Dengan menggunakan pocketsphinx sebagai library, aplikasi ini dapat digunakan dalam platform android tanpa harus menggunakan akses internet.

Gambaran Umum Sistem
Secara umum, gambaran sistem pada tugas akhir ini dapat dilihat pada gambar di bawah ini :
Pada gambar diatas user akan mengucapkan sebuah kata yang kemudian diteruskan ke smartphone android. Aplikasi ini akan memproses suara yang masuk untuk dapat dikenali dan diterjemahkan kedalam text. Hasil akhirnya berupa text hasil terjemahan kata yang diucapkan.

Feature Computation
Bagian feature computation merupakan masukan dari decoder itu sendiri. Bagian ini sendiri merupakan bagian yang berperan dalam merubahan atau tranformasi bentuk gelombang suara menjadi ciri-ciri yang unik dimana nantinya akan digunakan dalam proses pengenalan ucapan. Pocketsphinx sendiri menggunakan melfrequency cepstral coefficient (MFCC).

Decoder
Decoder merupakan bagian inti dari pengenal suara. Decoder sendiri terbagi menjadi tiga modul utama yakni acoustic modeling, forward search, and graph search.
Gambar di atas merupakan keseluruhan proses decoding. Secara sederhana proses tersebut dapat dilihat pada gambar berikut ini :

III. Pengujian Dan Analisis
Pengujian Word Error Rate (WER)
Pengujian ini dilakukan dengan cara merubah nilai parameter nfft, nfil, lower frekuensi dan upper frekuensi agar mendapatkan hasil akurasi terbaik. Dengan kata lain word error rate (WER) yang dihasilkan aplikasi akan sekecil mungkin.

Parameter NFFT dan NFIL
Dengan merubah nilai parameter NFFT dan NFIL ini, akurasi yang dihasilkan dapat berbeda-beda. Untuk hasil pengujian lengkap dapat dilihat pada grafik di bawah ini :
Dari hasil pengujian yang didapat, nilai terbaik untuk parameter NFFT dan NFIL yakni NFFT = 512 dan NFIL= 20. Akurasi yang dihasilkan untuk setiap database yang digunakan oleh nilai parameter ini merupakan akurasi tertinggi. Sehingga dapat disimpulkan merupakan nilai parameter terbaik untuk aplikasi speech to text menggunakan Pocketsphinx.

Parameter Lower Frekuensi dan Upper Frekuensi
Akurasi yang dihasilkan juga dipengaruhi dengan merubah nilai parameter lowerf dan upperf ini,. Untuk hasil pengujian lengkap dapat dilihat pada grafik di bawah ini :
Dari hasil pengujian yang didapat, nilai terbaik untuk parameter lower frekuensi dan upper frekuensi yakni Lowerf = 1Hz dan Upperf= 4000Hz. Akurasi yang dihasilkan untuk setiap database yang digunakan oleh nilai parameter ini merupakan akurasi tertinggi. Sehingga word error rate untuk sistem dapat ditekan sekecil mungkin agar pencarian kata menggunakan ucapan dapat lebih baik.
Kombinasi dari nilai NFFT, NFIL, Lowerf dan Upperf tertentu menghasilkan word error rate yang berbeda-beda. Dapat disimpulkan bahwa nilai parameter dengan NFFT=512, NFIL=20, Lowerf=1Hz dan Upperf=4000Hz merupakan nilai terbaik untuk mengimplementasikan speech to text menggunakan Pocketsphinx.

Pengujian Mean Opinian Score (MOS)
Pengujian secara subjektif ini menggunakan MOS (Mean Opinian Score). MOS didapat dengan cara mengajukan kuisioner kepada 30 responden dengan 5 buah pertanyaan seputar aplikasi speech to text ini. Masing-masing jawaban memiliki bobot nilai dari 1-5. Untuk menghitung MOS dapat digunakan persamaan seperti dibawah ini :
Berikut adalah analisis dari hasil pengujian yang dilakukan dengan cara mengajukan pertanyaan ke 30 responden dimana responden mencoba aplikasi ini :
Terlihat pada grafik di atas bahwa nilai rata-rata opini 30 responden diantara 4 hingga 5. Ini menunjukkan hasil yang baik. Hasil yang baik menandakan bahwa pengguna atau user menilai aplikasi ini baik.
Dapat diambil kesimpulan bahwa aplikasi ini memiliki tampilan yang sangat baik dan user friendly. Dari sisi fungsionalitas, masing-masing menu pada aplikasi ini sudah berjalan sesuai dengan kegunaannya. Hasil terjemahan sudah cukup baik. Aplikasi ini juga dinilai membantu pengguna dalam menambah perbendaharaan kata bahasa bali.

IV. Kesimpulan Dan Saran
Kesimpulan
Dari hasil pengujian dan analisis yang telah dilakukan pada sistem speech to text bahasa inggris ke bahasa bali menggunakan pocketsphinx ini, dapat diambil kesimpulan sebagai berikut :
  1. Implementasi dari pocketsphinx ke dalam aplikasi speech to text dapat direalisasikan dengan hasil pengenalan yang baik. Ini terlihat dari tingkat akurasi yang dihasilkan di atas 80%.
  2. Parameter terbaik yang mampu menekan word error rate (WER) sekecil mungkin yakni sebagai berikut : NFFT = 512, NFIL = 20, Lowerf = 1Hz, Upperf = 4000Hz. Penggabungan parameter menjadikan aplikasi speech to text ini dapat mengenali kata dengan baik.
  3. Jumlah kata pada database dapat mempengaruhi akurasi dari sistem. Jumlah kata dalam database dengan akurasi berbanding terbalik. Semakin banyak jumlah kata yang terdapat pada database, semakin kecil akurasi yang dihasilkan dan sebaliknya.
  4. Dalam sistem pengenalan suara, banyak faktor yang mempengaruhi akurasi. Faktor-faktor yang mempengaruhi nilai akurasi diantaranya yaitu aksen saat mengucapkan sebuah kata, dialek tiap orang berbeda, cara pengucapan bisa pelan ataupun kasar, dan banyaknya kata yang pengucapannya mirip.
  5. Dari hasil pengujian berdasarkan survei terhadapat 30 responden, aplikasi speech to text ini mendapat nilai MOS diatas 4 dari batas maksimal 5. Ini berarti aplikasi dinilai baik oleh user.
Saran
Berdasarkan hasil penelitian yang telah dilakukan pada tugas akhir ini, masih banyak kekurangan yang terdapat pada sistem. Beberapa saran yang dapat dikembangkan pada penelitian selanjutnya, diantaranya adalah:
  1. Metode yang digunakan untuk aplikasi speech to text dapat diganti dengan metode lain yang lebih baik lagi dalam mengenali suatu kata.
  2. Kedepannya pada sistem ini bukan hanya dapat merubah suatu speech ke text dan menterjemahkannya kedalam text, namun hasil terjemahan dapat kita dengar tidak hanya sebatas text yang terlihat.
  3. Kedepannya pada sistem ini dapat diimplementasikan pada bidang lain misalnya perintah suara untuk menjalankan aplikasi pada smartphone, perintah suara untuk melakukan kontrol rumah atau mobil melalui smartphone android.
  4. Kedepannya sistem ini dapat dikembangkan ke platform handphone lain seperti Blackberry, Iphone dan Windows Phone.



Selasa, 17 November 2015

SS.XI. Lingkungan Komputasi

Lingkungan komputasi

Lingkungan komputasi adalah suatu lingkungan dimana sistem komputer digunakan. Lingkungan komputasi dapat dikelompokkan menjadi empat jenis : komputasi tradisional, komputasi berbasis jaringan, komputasi embedded, dan komputasi gri.

Lingkungan komputasi diklasifikasikan atas empat kategori berikut ini:
  • Pertama

Single instruction stream-single data stream (SISD), terdapat satu prosesor dan biasa juga disebut komputer sekuensial, contohnya komputer model van Neumann.

  • Kedua
Single instruction stream-multiple data stream (SIMD), terdapat sejumlah prosesor dan aliran data, tetapi hanya memiliki satu instruksi/program. Setiap prosesor memiliki memori lokal dan duplikasi program yang sama sehingga masing-masing prosesor akan mengeksekusi instruksi / program yang sama, tetapi pada data yang berbeda dan prosesor bekerja secara sinkron sehingga mendukung paralelisasi pada proses komputasi data.

  • Ketiga

Multiple instruction stream - single data stream (MISD), terdapat sejumlah prosesor, kontrol unit dan aliran instruksi tetapi hanya memiliki satu aliran data. Data yang ada di common memory akan dimanipulasi secara bersamaan oleh semua prosesor, akibatnya akan terjadi kendala jika sejumlah prosesor melakukan update data sedangkan data yang lama masih dibutuhkan oleh sejumlah prosesor lainnya. Sampai saat ini belum ada implementasi mesin komputer yang memenuhi kategori ini.

  • Keempat
Multiple instruction stream-multiple data stream (MIMD), terdapat sejumlah prosesor, aliran instruksi dan aliran data. Setiap prosesor memiliki kontrol unit, memori lokal serta memori bersama (shared memory) yang mendukung proses paralelisasi dari sisi data dan instruksi. Prosesor dapat bekerja sesuai dengan instruksi program yang berbeda dan pada data yang berbeda. Prosesor juga dapat bekerja secara asinkron.



Sumber:

SS.VI. Head Up Display (HUD) System

Head Up Display (HUD) System
Sebuah head-up display systems, atau disingkat HUD, adalah suatu tampilan transparan yang menyajikan data tanpa mengharuskan pengguna untuk melihat dari sudut pandang biasa mereka. Asal usul nama ini berasal dari pilot yang dapat melihat informasi dengan kepala “dinaikkan” dan melihat ke depan, bukan memandang sudut bawah untuk melihat ke instrumen yang lebih rendah. Meskipun HUD pada awalnya dikembangkan untuk penerbangan militer, HUD sekarang telah digunakan dalam pesawat komersial, mobil, dan aplikasi lainnya.

Generasi HUD terbagi menjadi empat generasi, yaitu :
Generasi pertama (CRT)
CRT (Cathode Ray Tube) menampilkan image di layar fosfor, namun teknologi ini tak bertahan lama karena layar fosfor akan menurun kualitasnya dari waktu ke waktu karena mayoritas user sekarang menggunakan monitor mereka setiap waktu (non stop).
Generasi kedua (LCD)
Liquid Crystal Display (Tampilan kristal cair) juga dikenal sebagai LCD adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai penampil utama. Pada LCD berwarna semacam monitor terdapat banyak sekali titik cahaya (piksel) yang terdiri dari satu buah kristal cair sebagai sebuah titik cahaya namun kristal cair ini tidak memancarkan cahaya sendiri. Sumber cahaya di dalam sebuah perangkat LCD adalah lampu neon berwarna putih di bagian belakang susunan kristal cair tadi. Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang membentuk tampilan citra. 
Generasi ketiga
Menggunakan sistem gelombang optic untuk memproduksi image secara langsung di dalam kombinator dan sistem ini lebih baik daripada sistem proyeksi.
Generasi keempat
Teknologi yang lebih baru yaitu micro-display imaging. Teknologi ini sedang dikembangkan, yaitu teknologi dengan tampilan hablur cair yang ramah lingkungan dan hemat energy seperti OLED (organik light-emitting diode).

Sumber:


SS.V. Interfacing (Pengantarmukaan)

Interfacing (antarmuka)
Adalah bagian dari disiplin ilmu komputer yang mempelajari teknik - teknik menghubungkan komputer dengan peralatan elektronika lainnya. Interfacing bukanlah disiplin ilmu yang berdiri sendiri tetapi berkaitan erat dengan disiplin ilmu komputer lainnya. Disiplin ilmu yang berkaitan dengan Interfacing Elektronika Analog dan Digital, Mikroprosesor, Organisasi dan Arsitektur Komputer, Komunikasi Data serta pendukung Bahasa Pemrograman, baik berbasis Teks seperti Bahasa Rakitan/Assembly, C, Basic, Pascal maupun berbasis Grafis seperti Visual Basic,Visual C, Delphi bahkan berbasis Web seperti Java.

Pengantarmukaan peripheral komputer merupakan suatu istilah secara harfiah, berarti penghubung antar komputer baik dengan komputer atau dengan perangkat lain. Selanjutnya istilah pengantarmukaan peripheral komputer lebih kita kenal dengan istilah interface  komputer atau lebih di kenal dengan interfacing. Interfacing tidak lain adalah perangkat yang diimplementasikan dari rangkaian elektronika. Oleh karena itu, interfacing melibatkan banyak teknologi yang diliputi oleh disiplin teknik elektrik dan komputer. Karena teknologi ini pada umumnya dipisahkan ke dalam subdisciplines dengan area penekanan mereka sendiri, pengintegrasian ke dalam suatu yang ringkas dan perawatan yang dipersatukan diinginkan.

Istilah secara ringkas: Interfacing atau interface komputer Berarti penghubung komputer, baik dengan komputer lain atau dengan perangkat lainnya.

Sumber:
http://tugasuas-interfacing.blogspot.co.id/