• Tidak ada hasil yang ditemukan

TTS Engine

BAB 3 METODOLOGI

4.2 Pengenalan Obyek

33

IU/iD **A T» A

PEMBUATAN DAN IMPLEMENTASI

Pada bagian ini akan dibahas mengenai pembuatan neranekatj- - ^ -- binak-- -- vanej-- ^melimiti linaknnean^ inemhanpiitian** " ^ anlikasi*£ ^"

pengenalan obyek, aplikasi pengenalan suara dan implementasi permainan.

luenggenggoui. Gambar neneenalan obvek.

*t.11 dibawah ini mempakan flowchat

Start

GetImage I

*

1

RGBToGray

Get Region No Image

Objek in Region(.xml)?

Yes Multi Rectangle

End

Gambar 4.1FlowchatPengenalan Obyek.

35

Dciigaii lueugguiiakan fungsi

-

fungsi dan opcucv yang mampu mengenali obyek tangan mengenggam berdasarkan data dari genggam.xml. Berikut ini merupakan pseudocode untuk pengenalan obyek.

inisialisasi cascade = "genggam.xml"; get image();

-

>mendapatkan gambar

gray = cvCreatelmage();

-

>membuat suatu gambar gray get vektor

_

region();

-

>menaapatkan sebuah region

if( cascade )

- ^

membandingkan dengan nilai cascade {

CvSeq* hand = cvHaarDetectObjects;

center.x = cvRound((r

-

>x + r->width*0.5)*scale);

center.y = cvRound((r

-

>y + r

-

>height*0.5)*scale); cvRectangle();

system::Drawing::point<x,y);

-

>menggambar area yg

dikenali }

Untuk memperoleh data genggam.xml dilakukan proses haartrainingyangakan dijelaskan pada sub bab 4.2.1. Berikut ini merupakan gambar obyektanganmengenggam dapat dikenali.

Gambar4.2 tiasil Pengenalan Obyek Tangan Menggenggam.

4.2.1 Haar Training

Untuk memperoleh data .xml yang dibutuhkan maka perlu dilakukan proseshaar trainingyang dapat dipresentasikan padagambarblokdiagram haartrainingsebagaiberikut:

O* r-4

wiaii

Mengambil 1800 gambar positif yang mempunyai objek tangan

menggenggam

Mengambil 2000 gambar negatif yang tidak terdapat objektangan

menggenggam

Menyeleksi objek tangan pada gambar positif

Mendapatkannilai trakedimage

MendapatkannilaiCascade

Menkonversinilaicascade ke dalamnilaiformat xml

End

Gambar4.3 Blok DiagramHaarTraining.

37

A t -i i k Mmcu

^

iapnau2

i uitut uamuiti rusiui

:x!f

Data gambar positifadalah sekumpulan data gambar yang didalamnya terdapat obyek yang akan dikenali. Dalam training data dibntnbkan 1800 filegambar: Reriknt ini menipakan contoh gambarpositif yangdibutuhkan. Seperti terlihat pada gambar 4.4, 4.5, 4.6 dan 4.7dibawah ini.

Gambar4.4 Contoh Gambar Positif Posisi Tangan di Kiri Bawah.

Gambar4.5Contoh Gambar PosisiTangan di KananBawah.

r

f

Gambar 4.6Contoh Gambar PositifPosisi Tangan diKananAtas.

Gambar 4.7Contoh Gambar PositifPosisiTangandiKiri Atas.

Tipegambaryang dibutuhkan yaitudenganformat.bmp.

Pengambilan gambar positif dilakukan menggunakan webcam dan disimpan dalamsatufolder yang sama.

39

X AT . 5 1 TX

4

-

-» 1 TM

ivicii

^

iapiuiii uaia vimuuai ncgaui A"S t

f

.

X

.

l

.

X

Data gambar negatifadalah sekumpulan datagambar yang didalamnya tidak mengandung obyekyangakandikenali

.

Dalam training data inidibntnhkan 2000 filegambar negatif Rerikiitini merupakan contoh gambar negatif yang dibutuhkan. Seperti terlihat pada gambar 4.8, 4.9,4.10,dan 4.11 dibawah ini.

Gambar4.8 Contoh GambarNegatifRumah.

Gambar4.9Contoh GambarNegatifPintuRumah.

Gambar 4.10 ContohGambarNegatif Nuansa Kamar.

mSk 1

Gambar4.11ContohGambarNegatifPekaranganRumah. Tipegambaryang dibutuhkan yaitudengan format.bmp.

Pengambilan gambar negatif kali ini dengan mengunduh dari internet dandisimpan dalam satufolder yang sama.

41 Mcuyeleksi taiigaii pauagauibarpOsiuf

J 1 1

.i.I.J

Dalam proses menyeleksi tangan dimaksudkan untuk mengambil data nilai koordinat/posisi obyek yang dikenali dan nilai likiiran obyek nada gambar positif Seperri terlihat nada gambar4.12dibawah ini.

Gambar4.12ProsesSeleksiTangan PadaGambar Positif. Adapun format penulisan file

-

nya adalah sebagai berikut : [nama file] [posisi x kiri atasbounding rectangle] [posisi y kiri atas bounding rectangle] [nilai panjang bounding rectangle ][nilai lebar bounding rectangle]. Seperti terlihat pada gambar 4.13 dibawah ini.

-

n*

D:\lools\temp\positivelobjectmarker.exe P i c t u r e 0 4 5.h n p

1.r e e l x r-4S6 P i c t u r e 0 4 6.b n p I. r e c t x=3 0?

P i c t u r e0 4 7.h r i p

1. r e c t x- 4 1 9 P i c t u r e 0 4 8.b n p 1. r e e l x 4 3 2 P i c t u r e 0 4 9.b n p 1. r e c t x 4 2 4 P i c t u r e 0 5 0.b n p

1. r e c t x=b b y=3l5 P i c t u r e 0 5 1.b n p

1. r e c t x 9 7 y 1 1 2

y=59 u i d t h -1 2 5 be ight 102 3

y=2 0 y 2b V 1SB y 2 5 4

w i d t b 1 2 8 h ei g h t 9 7 w i d t h 1 3 2 h e i g h t

-

9 5

u i d t b1 4 0 l i ei g h t 1 1 2 h e i g h t. 1 2 5 w i d t h1 5 1

w i d t h 1 2 7 h e i g h t 9 0 h e i g h t 1 2 1 w i d t h 1 4 5

id Gambar4.13NilaiSeleksiObyek.

4.2

.

1.4 Mengkonversinilaicascade ke dalamformat

.

xml Proseskonversi nilai ini dijalankan dengan perintah haartraining.exe

-

data data/cascade

-

vecdata/vector.vec

-

bg

negative/infofile.txt

-

npns 1800

-

nneg2000

-

mtages20

-

mem

1000

-

mode ALL

-

w 30

-

h 30-nonsym.

Prosesmenkonversi nilai cascade gambar ke dalam nilai

.xml membutuhkan variablesebagai berikut :

Npos

=

Jumlahgambarpositif

Nneg

=

Jumlah gambarnegatif

Nstages

=

Jumlahnode

Mem

=

memoriyang disiapkan untuk proses

W

=

ukuran lebar

H

=

ukurantinggi

Dan berikut ini merupakan contoh hasil data .xml yang telah diproses. Sepcrii terlihat pada gaiubar 4.14 dibawahmi

r~fi genp

.

am.xm! WordPad

Me Edt Mew fttmt Fermat Qeo 0 &B H : fe %

<next>-l</next></ > A

<>

<<!trees

stage> 2

>

< >

<!

tree0

>

< >

<!<testuxe>

——

rootnode

>

<ceczM>

<>

11 5 9 6!-.</>

<

_

>

11 12 3 6 3.C/J></recto?

<1111ed>1</11ited></1eature>

<threshold>0.0339135192331652</threshold

<leIt_val>-0.601056575T751165</le£t_val>

<rlght val>0.5952491760253906</right val></></ >

<>

<>

tree1

>

< >

<<feature1

root>node

>

<E*CtS>

< >

1518 10!

-

.</

_

>

<>

15 6 85 2.</

_

></rect»>

<cilt«d>0</tilt«Cxy'f*«cute>

<tbresbold>-6.3976310193538666«-003</threshold

<lett

_

yal>0.2902083992958069</lett

_

val>

<rlght

_

val>-0.90Q87229G1344299</rlght

_

val></

_

></

_

>

<

_

>

<!

tree2 v

Gambar4.14Genggam.xml.

43

4 1 PengenalanSuara

Dalam proses pengenalan suara dalam proyek akhir ini akan memanfaatkan library SpeechAPI(SAPI) SDK 5.1 yang meneiihahC/ suara meniadiJ teks: Proses neneenalanA C/ suara danatX

ditunjukkanpada gambar 4.15 di bawahini.

s

Start

)

l

Voice Recognition

^

I

ConvertSpeech toTeks

GetData Teks

End

Gambar4.15 AlgoritmaPengenalan Suara.

Defmisi Speech API adalah suatu library computervision yangdibuat olehparadeveloper Windows.SpeechSDK5.1dapat

gratis

http://www.microsoft.com/speech/developers.aspx. Suara yang diucapkanakan ditangkap olehmikropondan akandiprosesuntuk mencari mana kata yang paling sesuai diantara kumpulan kata. Berikut ini merupakan pseudocode fungsipengenalan suara.

di unduh secara di

get voice write( )

if voice = ngobrol.txt Then voice = Textl.text else voice = " "

if Textl.Text = "playgame" Then Sound.Play = "playgame.wav"

if Textl.Text = "fire" Then Sound.Play = "fire.wav"

if Textl.Text = "dorr" Then Sound.Play = "gun.wav"

if Textl.Text = "kapeka" Then Sound.Play = "kapeka.wav"

if Textl.Text = "reload" Then Sound.Play = "reload.wav"

Format suara yang dikenali akan diproses untuk diubah menjadi format teks

.

Kemudian format teks tersebut dicocokkan dengan datayang ada dikumpulan teksyang ada. Apabilasesuai maka akan ditampilkan di tampilan speech seperti gambar 4.16 aibawahini.

>

Gambar4.16 Pengenalan Suara Dikenali.

Apabila tidak sesuai maka akan diinisialisasi dengan

” artinya suara yang dikenali tidak cocok dengan database yang ada. Seperti terlihat pada gambar 4.17 dibawah ini.

format teks”

45

*

Gambar4.17 Suara Tidak Dikenali.

ImplementasiSistemPermainan 4.4

Pada permainan menembak ini terdapat beberapa halaman yangberbeda untuk menampilkanpermainan.

4.4.1 ImplementasiHalaman Intro

Halaman intro merupakan awal pembuka pada permainan ini. Fungsi utama dari halaman adalah untukmenampilkanjudul permainan,nama mahasiswa dan pembimbing. Didalamtampilan intro ini hanyaakan aiiakukan proses menampilkan gambar dan

Qfthnahhnttnnuntuk mprininkphalamanmpnn

Dokumen terkait