BAB 3 PERANCANGAN PROGRAM APLIKASI
3.1
Rancangan Aplikasi Program aplikasi motion detection yang akan dirancang memiliki struktur hirarki
di mana terdapat 3 sub menu dari menu utamanya yaitu sub menu file, sub menu tracking, sub menu about. Pada menu file akan terdiri dari 4 sub menu yaitu sub menu load object, sub menu save object, sub menu close, sub menu exit. Bentuk struktur menu program aplikasi motion detection yang dirancang dapat digambarkan sebagai berikut :
Gambar 3.1 Rancangan Struktur Menu Utama
23
3.2
State Transition Diagram (STD) Perpindahan state setelah dilakukan sebuah event atau action pada rancangan
program aplikasi motion detection ini dapat dijelaskan lebih lanjut menggunakan State Transition Diagram (STD). Di bawah ini adalah STD rancangan dari setiap modul yang terdapat dalam program aplikasi motion detection yang dibuat :
Gambar 3.2 STD Menu Utama
24
Gambar 3.3 STD Menu File 3.3
Rancangan Layar Rancangan layar yang terdapat pada program aplikasi motion detection ini terdiri
dari 3 bagian besar sebagai berikut : •
Layar menu utama
•
Layar menu Tracking
•
Layar About
25 Main File
Tracking
About
Gambar 3.4 Rancangan layar menu utama Ketika program aplikasi ini dijalankan maka tampilan pertama yang akan muncul adalah layar menu utama dengan tampilan kosong (seperti pada Gambar 3.4). Pada layar menu utama ini terdapat menu-menu utama yang terletak di bagian atas window seperti menu file, menu tracking dan menu about. Pada menu file terdapat sub-sub menu didalamnya seperti sub menu load object, sub menu save object, sub menu close dan sub menu exit. Ketika sub menu load object dipilih user akan diminta untuk memasukkan gambar object yang akan di deteksi gerakannya, untuk memasukkan input gambar object yang telah dipilih dengan memilih sub menu save object, sub menu close berfungsi untuk menutup window tracking yang sedang aktif dan kembali ke layar menu utama, sub menu exit berfungsi untuk keluar dari aplikasi. Pada menu tracking akan menampilkan layar tracking yang berfungsi untuk membandingkan lokasi posisi objek dengan titik pusat gambar yang ditangkap. Untuk menu about akan menampilkan layar about yang berguna untuk memberikan informasi mengenai segala sesuatu yang berkaitan dengan aplikasi.
26 Main File
Tracking
About
Object yang dipilih Gambar object
Gambar 3.5 Rancangan layar load dan save object Ketika user memilih sub menu load object user akan diminta untuk memasukkan gambar objek yang akan ditracking nantinya, dan bila user sudah yakin akan pilihannya user dapat memilih sub menu save object untuk menginput data objek yang dipilihnya. Main File
Tracking
About
Tampilan yang dicapture
Result
Gambar pada frame ke … Pan
Tilt
Back
Browse
Next
Show Record
Gambar 3.6 Rancangan layar menu tracking
27 Pada menu tracking (seperti yang tampak pada Gambar 3.6) berfungsi untuk membandingkan posisi objek yang ditampilkan dengan titik pusat gambar tersebut dan hasilnya akan ditampilkan pada kolom result, untuk Pan dan Tilt adalah nilai untuk perputaran sudut kamera terhadap titik pusat kamera kontrol dimana pan merupakan pergerakan kamera terhadap sumbu x sedangkan tilt merupakan pergerakan kamera terhadap sumbu y. Dilayer tersebut terdapat beberapa button seperti button browse yang berfungsi untuk mencari file gambar yang akan dijadikan input untuk dibandingkan posisi objeknya, button back dan next yang berfungsi untuk melihat kembali gambar yang diinput sebelumnya dah result yang telah dihasilkan dari gambar tersebut, button show record yang berfungsi untuk melihat seluruh hasil yang telah diproses (ditampilkan dalam bentuk tabel).
Frame ke
Objek
Perputaran sudut terhadap sumbu x
Perputaran sudut terhadap sumbu y
Pan
Tilt
Gambar 3.7 Rancangan layar untuk tampilan show record Menu about akan menampilkan layar about yang berguna untuk memberikan informasi mengenai segala sesuatu yang berkaitan dengan aplikasi.
28 About
Keterangan
Close
Gambar 3.8 Rancangan layar about Layar About ini dapat diakses melalui menu about, di dalam keterangan akan berisi informasi yang berkaitan dengan aplikasi. Komponen lainnya dalam layar ini adalah tombol Close yang berfungsi untuk menutup layar about dan kembali ke layar menu utama. 3.4
Spesifikasi Modul Untuk memperjelas proses-proses yang terjadi pada setiap modul terdapat dalam
program aplikasi motion detection ini akan diperinci dengan gambar flow chart dan spesifikasi modul di bawah ini :
29
Gambar 3.9 Flow Chart Metode Foward Backward
Propagation
Gambar 3.10 Flow Chart untuk pencarian Pan dan Tilt
30 Modul Inisialisasi Fungsi : mengatur ke nilai awal untuk semua variabel dan komponen. BEGIN Set nilai dari objek untuk recognize END
Modul load object Fungsi : membuka browse file untuk memilih objek yang akan diamati. BEGIN Membuka browse file untuk memilih input objek If pilih tombol “open” pada dialog box then modul save dapat diakses If pilih tombol “cancel” pada dialog box then kembali ke menu utama tanpa mengubah apapun END
Modul save object Fungsi : menjadikan objek yang dipilih sebagai input pada modul tracking. BEGIN If sub menu “Save object” dipilih then sub menu tracking dapat diakses If sub menu “Save object” dipilih then data objek yang dipilih disimpan (objek yang dipilih dihitung jumlah warna hitamnya untuk proses pengenalan nantinya) If sub menu “Save object” dipilih then keluar layar informasi END
31 Modul tracking Fungsi : memasukkan gambar untuk dibandingkan posisi objek dengan titik pusatnya. BEGIN If tombol “Browse” dipilih then tampilkan dialog box untuk browse file If tombol “Open” pada dialog box dipilih then jalankan modul processing If tombol “Open” pada dialog box dipilih then jalankan modul feedfoward Menghitung perputaran sudut untuk sumbu x dan y pada kamera If tombol “Show record” dipilih then panggil modul show record. END
Modul processing Fungsi : menghitung jumlah warna hitam pada objek yang ada pada gambar. BEGIN Mencek pixel objek pada gambar { If pixel pada canvas := black then counter := counter + 1 } END
Modul feedfoward Fungsi : mengecek objek yang ditampilkan apakah sama dengan yang disave. BEGIN for i:= 0 to 24 do
32 Acc := 0 For j := 0 to 24 do acc := acc + layerHidden.w[i][j] * layerInput.outp[j] End for layerHidden.outp[i] := 1/(1+exp(-acc)) End for for i := 0 to 7 do acc := 0 for j := 0 to 24 do acc := acc + layerTarget.w[i][j] * layerHidden.outp[j] End for layerTarget.outp[i] := 1/(1+exp(-acc)) End for END
Modul Browse Fungsi : menginput gambar objek dan menampilkan result. BEGIN If gambar objek yang ditampilkan <> gambar objek yang disave then result := ‘Objek tidak terdeteksi’ If gambar objek yang ditampilkan = gambar objek yang disave then result := ‘(gambar objek yang disave beserta dengan perubahan sudut pada kamera)’ END
33 Modul show record Fungsi : menampilkan semua hasil compare. BEGIN Panggil pop-up window dari layar show record. END
Modul about Fungsi : menampilkan informasi mengenai aplikasi. BEGIN Panggil pop-up window dari layar about. If pilih tombol “Close” then tutup pop-up window dan kembali ke menu utama. END