• Tidak ada hasil yang ditemukan

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 ANALISIS DAN PERANCANGAN PROGRAM"

Copied!
17
0
0

Teks penuh

(1)

BAB 3

ANALISIS DAN PERANCANGAN PROGRAM

3.1 Perancangan Program Aplikasi

3.1.1 Analisis dan Gambaran Umum Program Aplikasi

Nama program yang hendak di kembangkan adalah Pendeteksian Bagian Tubuh M anusia. Berdasarkan pencarian berita yang penulis lakukan melalui media internet ternyata dampak dari pornografi dapat memberikan efek yang tidak baik untuk psikologis seseorang. Oleh sebab itu penulis bertujuan melakukan perancangan program ini untuk melakukan simulasi proses pembelajaran dan pendeteksian bagian-bagian tubuh manusia dari sembarang image digital, sebagai simulasi dari program filter pornografi.

Secara umum, aplikasi terdiri dari pendeteksian dari file gambar yang tidak bergerak. Format yang didukung oleh program ini untuk file gambar tidak bergerak antara lain: bitmap (bmp), jpeg, dan jpg

3.1.2 Software Design

Program yang dikembangkan memiliki satu form utama. di mana didalam form utama tersebut terdapat suatu combo box yang didalamnya berisikan pilihan bagian tubuh manusia yang ingin dideteksi. Proses deteksi menggunakan cascade classifier, yang akan dijalankan pada image digital yang telah dipilih kemudian bagian-bagian tubuh yang terdeteksi akan ditandai dan disensor dengan kotak berwarna abu-abu.

(2)

3.1.3 S pesifikasi Algoritma

Dalam program ini terdapat beberapa algoritma yang diterapkan yaitu algoritma

gentle adaboost dan algoritma training cascade of classifier. Berikut algoritma Gentle AdaBoost :

• Diberikan contoh gambar , … … , di mana , 1,1 untuk masing contoh negatif dan positif.

• inisialisasi bobot 1⁄ , 1, … , • Ulangi For 1, … ,

1. Isi regresi fungsi dengan bobot kuadrat terkecil dari sampai dengan bobot

2. Set . exp . , 1, … , . dan menormalisasi kembali berat, sehingga ∑ 1

• Output dari Classifier

Dan berikut algoritma training cascade of classifier :

• Pengguna memilih nilai untuk , nilai maksimum yang dapat diterima per tahap, dan , sebagai nilai minim yang dapat diterima untuk deteksi per tahap.

• Pengguna memilih target keseluruhan dari tingkat kesalahan positif, • sebagai contoh positif

• sebagai contoh negative

tingkat positif awal yang salah dari cascade classifier tingkat deteksi awal dari cascade classifier

(3)

• 1,0; 1,0 • 0 • while o 1 o 0; o while 9 1

9 Gunakan dan untuk melatih sebuah classifier dengan features menggunakan AdaBoost

9 Kurangi threshold untuk classifier ke sampai cascaded classifier yang sedang berjalan memili tingkat deteksi minimal

o

o jika maka evaluasi cascaded yang sedang berjalan saat ini pada set gambar non-wajah, dan menempatkan setiap deteksi kesalahan kedalam

(4)

3.1.4 Use-Case Diagram

Program ini memiliki sebuah form utama di mana di dalamnya terdapat

combo-box yang berisikan bagian-bagian tubuh manusia yang ingin dideteksi.

Gambar 3.1 Use-Case Diagram Program Pendeteksian Tubuh M anusia

                   

(5)

3.1.5 Flowchart Diagram

Flowchart diagram berikut ini akan menjelaskan alur pada program ini

Gambar 3.2 Flowchart Diagram Program Aplikasi Pendeteksian Tubuh M anusia          

(6)

3.2 Perancangan Modul 3.2.1 Perancangan Menu

Program terdiri dari satu form utama. Form ini terdiri 1 buah tombol browse yang berfungsi untuk memilih image yang akan dideteksi, 1 buah label yang akan menampilkan nama file atau alamat image, 1 buah combo box yang berisikan jenis-jenis deteksi yang dinginkan, dan 1 buah tombol detect untuk memanggil fungsi deteksi.

Gambar 3.3 Rancangan Program 3.3 Haar Training

Dalam proses pembuatan program aplikasi pendeteksian tubuh manusia ini, penulis melakukan proses haar training dengan menggunakan sejumlah data training yang digunakan untuk membuat haarcascade tangan. Hal ini dikarenakan haarcascade untuk bagian tubuh tersebut belum tersedia di EmguCV.

(7)

a. Persiapan DataSet

Dataset terdiri dari 2 buah sample. Sample positif adalah gambar yang mengandung objek yang akan dideteksi. Dalam hal ini tangan. Sample negatif adalah gambar yang tidak mengandung objek yang akan dideteksi. Seperti gambar pegunungan, mobil, dan sebagainya. M asukkan sample positif pada satu direktori, misalnya Desktop/positiveSample/rawdata. Sedangkan sample negatif, dimasukkan pada Desktop/negativeSample. Sample paling minimal sepuluh buah untuk satu objek dalam berbagai pose. Catatan: file gambar untuk sample positif harus file bmp.

b. M embuat infofile.txt untuk Sample Negative

Infofile.txt berisi daftar nama dari gambar gambar yan terdapat dalam folder negativeSample, hal in bisa di tulis secara manual dengan menggunakan notepad atau dapat dilakukan dengan menggunakan create_list.bat yang bisa di download melalui media internet. Letakkan infofile.txt didalam folder negativeSample

c. M embuat info.txt untuk Sample Positive

Tahap selanjutnya yaitu membuat info.txt untuk sample positive. Hal ini dilakukan dengan menggunakan program objectmarker.exe (program dapat didownload melalui internet), di mana ketika program dijalankan, maka akan muncul gambar satu persatu dari folder positiveSample, kemudian tandai objek yang ingin dideteksi dari gambar tersebut dengan menggerakkan kursor mouse membentuk sebuah box persegi panjang, seperti gambar 3.4

(8)

Gambar 3.4 Pembuatan info.txt dengan objectmarker

Kemudian tekan spasi untuk menambahkan objek tersbut, dan tekan enter untuk melanjutkan ke gambar berikutnya. Jika berhasil maka didalam folder positiveSample akan diperoleh info.txt yang berisikan data gambar. Dalam satu gambar bisa dibuat duat atau lebih persegi, apabila dalam gambar tersebut tedapat objek yang ingin dideteksi lebih dari satu objek

(9)

d. M embuat file vector.vec dari Sample Positive

Selanjutnya untuk mengubah objek gambar ke file .vec digunakan tool opencv_createsamples.exe, tools ini terdapat didalam direktori bin pada openCV. Tool ini harus dijalankan melalui perintah dos seperti gambar berikut

Gambar 3.5 M enjalankan opencv_createsamples.exe dari dos command Keterangan parameter tersebut dapat dilihat pada tabel 3.1

Tabel 3.1 Keterangan Parameter dari Createsamples.exe

Parameter Explanation info <collection of filename> Lokasi tempat image berada

num <number of samples> Jumlah positive image yang di training

w <sample_width> Panjang dari image

h <sample_height> Lebar dari image

vec <vec_file_name> Binary file yang menampung hasil olahan data positive image

(10)

M aka bila hal ini telah berhasil dijalankan maka akan muncul pada folder data, file yang bernama vector.vec

e. M emulai HaarTraining

Tahap selanjutnya yang merupakan tahap terakhir, setelah memiliki vector.vec sekarang kita akan memulai haartraining dengan menggunakan tools opencv_haartraining.exe. Sama halnya dengan opencv_createsamples.exe, tools ini juga terdapat pada direktori bin opencv, dan tools ini juga harus dijlankan melalui dos command seperti gambar berikut:

(11)

Keterangan parameter tersebut dapat dilihat pada tabel 3.2

Tabel 3.2 Keterangan parameter

Parameter Explanation data <dir_name> Tempat folder cascade of classifier

akan disimpan voo <voo_filename> Infomasi nama image

bg <background_filename> M engandung informasi negative image nneg <number_negative_samples> M enunjukkan banyaknya jumlah

negative image

npos<number_positive_samples> M enunjukkan banyaknya jumlah

positive image

men <memory_in_M B> Banyaknya memori yang dipakai

selama proses pembuatan cascade of

classifier

Nonsym Untuk memastikan datanya bukan

simterik

mode ALL Untuk memastikan parameter yang

tidak ditulis dalam kondisi default w <sample_width>

h <sample_height>

(12)

Selama proses pembuatan berlangsung maka akan muncul pada dos command seperti gambar berikut

Gambar 3.1 Pembuatan haarcascade

lalu pada folder Desktop/data/cascade maka akan muncul folder mulai dari 0 sampai N. dan pada folder Desktop/data terdapat file cascade.xml, di mana file tersebut merupakan haarcascade hasil dari haartraining yang di lakukan.

3.4 Data Training

Data training dalam program aplikasi ini dibutuhkan untuk melakukan haar training guna membuat haarcascade untuk tangan. Data training yang berupa image ini dibagi menjadi dua yaitu:

1. Sample image positif. 2. Sample image negatif

(13)

Untuk data training sample image positif penulis mengumpulkannya secara manual dengan memfoto objek menggunakan kamera handphone blackberry 9760 5 mega pixel, dengan jarak 20-30 cm, dan cahaya 250 lux . Sample image positif yang penulis

kumpulkan sebanyak 100 sample. Sedangkan untuk sample image negatif diambil melalui google.com sebanyak 200 sample.

3.5 S pesifikasi Program

Berikut ini akan dijelaskan cara kerja program menggunakan pseudocode. Penjelasan akan dibagi berdasarkan jenis deteksi yang dipilih.

3.5.1 Perancangan S pesifikasi Proses Upper Body Detection Berikut ini merupakan pseudocode untuk Upper Body Detection:

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO UPPER_BODY_DETECTION ON input_image FOR EACH result

READ upper_body_position IN result

DRAW RECTANGLE ON canvas AT upper_body_position END FOR

3.5.2 Perancangan S pesifikasi Proses Face Detection Berikut ini merupakan pseudocode untuk Face Detection:

(14)

Show ERROR_M ESSAGE ELSE

SHOW input_image ON canvas END IF

DO FACE_DETECTION ON input_image FOR EACH result

READ face_position IN result

DRAW RECTANGLE ON canvas AT face_position END FOR

3.5.3 Perancangan S pesifikasi Proses Eye Detection Berikut ini merupakan pseudocode untuk Eye Detection:

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO EYE_DETECTION ON input_image FOR EACH result

READ eye_position IN result

DRAW RECTANGLE ON canvas AT eye_position END FOR

3.5.4 Perancangan S pesifikasi Proses Nose Detection Berikut ini merupakan pseudocode untuk Nose Detection:

(15)

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO NOSE_DETECTION ON input_image FOR EACH result

READ nose_position IN result

DRAW RECTANGLE ON canvas AT nose_position END FOR

3.5.5 Perancangan S pesifikasi Proses Right Ear Detection Berikut ini merupakan pseudocode untuk Right Ear Detection:

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO RIGHT_EAR_DETECTION ON input_image FOR EACH result

READ rigt_ear_position IN result

DRAW RECTANGLE ON canvas AT right_ear_position END FOR

3.5.6 Perancangan S pesifikasi Proses Left Ear Detection Berikut ini merupakan pseudocode untuk Left Ear Detection:

(16)

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO LEFT_EAR_DETECTION ON input_image FOR EACH result

READ left_ear_position IN result

DRAW RECTANGLE ON canvas AT left_ear_position END FOR

3.5.7 Perancangan S pesifikasi Proses Hand Detection Berikut ini merupakan pseudocode untuk Upper Body Detection:

IF input_image NOT Chosen Then

Show ERROR_M ESSAGE

ELSE

SHOW input_image ON canvas END IF

DO HAND_DETECTION ON input_image FOR EACH result

READ hand_position IN result

DRAW RECTANGLE ON canvas AT hand_position END FOR

(17)

3.6 Data Testing

Dalam pengambilan data testing untuk program aplikasi ini perlu di perhatikan beberapa hal meliputi:

• Pencahayaan

• Jarak Pengambilan gambar • Kualitas kamera

Penulis menggunakan sepuluh orang yang di foto menggunakan kamera handphone blackberry bold 9760 dengan kualitas 5mega pixel, dalam ruangan dengan cahaya yang terangnya 250 lux, jarak 10-30 cm untuk wajah, mata, hidung, telinga kiri&kanan, tangan dan jarak 100 cm untuk tubuh bagian atas. Hal ini dilakukan agar dapat menangkap objek yang akan dideteksi dengan cukup jelas.

Gambar

Gambar 3.1 Use-Case Diagram Program Pendeteksian Tubuh M anusia                     
Gambar 3.2 Flowchart Diagram Program Aplikasi Pendeteksian Tubuh   M anusia           
Gambar 3.3 Rancangan Program  3.3  Haar Training
Gambar 3.4 Pembuatan info.txt dengan objectmarker
+4

Referensi

Dokumen terkait

Tindak lanjut dari kegiatan ini adalah: (I) Pemutakhiran data Indonesia dalam Laporan Regional ASEAN untuk HIV dan AIDS yang akan diluncurkan pada KTT ASEAN ke 19

webinar kesehatan ini akan diadakan pada Rabu, 5 }lei 2021 pukul 09,30-11.30 WI8 dengan peserta Oranq Tua/Wali Murid, Gurtr SD, dan Guru SMP di Kota Surakarta,

Dengan memasukkan waktu untuk lampu ON dan waktu untuk lampu OFF pada halaman penjadwalan maka secara otomatis sistem akan bekerja sesuai dengan jadwal yang

Penguna T-shirt di Indonesia sangatlah banyak karena T-shirt masuk kedalam kebutuhan pokok sehari-hari. Candy-Candy sangat memperhatikan kualitas produknya agar para

1) Pengaruh Penerapan metode ta’zir memberikan pengaruh dalam mendisiplinkan santri putra dapat dilihat dari kemampuan mengelola waktu yang efektif yang meliputi

Pengetahuan mengenai ikan hiasan, keperluan dalam memelihara ikan hiasan seperti akuarium, peralatan, makanan, ubat-ubatan dan penyakit adalah perlu kepada pengusaha

Tidak boleh melakukan tindakan yang menyangkut risiko pribadi atau tanpa pelatihan yang sesuai.. Evakuasi

Capaian pembelajaran PJJ pada program studi atau mata kuliah sama dengan standar capaian pembelajaran program studi atau mata kuliah yang dijalankan dengan sistem tatap