• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN SISTEM

3.1. Arsitektur Umum

Pada desain ini ditunjukkan bagaimana setiap proses berlangsung dan membentuk sebuah aplikasi yang terbentuk dengan sistematis. Rancangan arsitektur dapat dilihat pada Gambar 3.1

Gambar 3.1. Arsitektur Umum Deteksi Wajah dan Menghitung Manusia

Input File Citra Resize Citra

Grayscale Fitur Haar Citra Integral Cascade of Classifier Wajah manusia/Bukan

Hitung Jumlah Wajah Manusia

Pra-process

Viola-Jones

3.1.1. Resize Citra

Resize adalah proses mengubah dimensi citra digital sehingga semua citra digital yang memiliki dimensi >= 1200x800 akan di ubah menjadi citra digital yang berdimensi 1200x800. Tujuan Resize ini adalah untuk menambah akurasi mendeteksi manusia.

3.1.2. Membaca Nilai Piksel Citra

Pada citra input pada umumnya adalah citra warna 24-bit (true color) nilai pikselnya terdiri dari 3 byte yaitu nilai Red Green dan Blue (RGB) terdapat dalam data bitmap

berbentuk biner. Untuk membaca nilai RGB-nya, dilakukan dengan membaca data

bitmap yang panjangnya 3 byte, masing-masing byte menyatakan komponen R, G, dan

B. Setiap byte data merepresentasikan 8 bit jadi pada citra warna ada 3 byte x 8 bit = 24 bit kandungan warna. Citra warna 24 bit dapat dilihat seperti pada Gambar 3.2.

Gambar 3.2. Citra Wajah Manusia

Pada citra wajah manusia Gambar 3.2 di atas, tiap pikselnya mengandung 24- bit kandungan warna atau 8-bit untuk masing-masing warna dasar (R, G, dan B), dengan selang nilai warna antara 0 (00000000) sampai 255 (11111111) untuk tiap warna. Sebagai contoh data bitmap citra warna di atas adalah seperti pada Gambar 3.3.

Gambar 3.3. Contoh Nilai Piksel Citra Warna

Pada contoh citra Gambar 3.3 di atas, data pertama adalah header yang berisi informasi nama file, jenis format dan dimensi citra. Nilai piksel (0,0) adalah 111100001011010011110111. Nilai RGB dihitung sebagai berikut:

Nilai R = 111100001011010011110111 mod 100000000 = 11110111 = 247 Nilai G = (111100001011010011110111 and 1111111100000000)/100000000 = 1011 0100= 180 (desimal) Nilai B= (111100001011010011110111 and 111111110000000000000000) / 10000000000000000 = 1111 0000 = 240 (desimal)

Sehingga diperoleh nilai piksel (0,0) 11110000 11110000 11111111: R = 11110111 = 247 (desimal)

G = 10110100 = 180 (desimal) B = 10010000 = 240 (desimal)

Dalam analisa ini jumlah piksel yang dihitung sebanyak 25 piksel saja dan untuk mendapatkan nilai RGB piksel selanjutnya dilakukan sama seperti cara di atas dan selanjutnya nilai RGB semua nilai piksel pada citra dimasukkan ke dalam matriks seperti pada Tabel 3.1.

<Header> <data bitmap> 1111000010110100111101111100001101011010010011011011 01101011010011110001100100001011111011111000 100101001111011111110001 1001000010010100100000011111000010110110111100011100 01001000010010110001 Piksel 1 Piksel 2 Piksel n

Tabel 3.1. Matriks Nilai RGB Citra Warna R G B R G B R G B R G B R G B 247,180,240 230,185,245 252,170,233 241,180,228 240,180,220 240,170,220 232,180,240 248,165,225 240,180,230 238,185,200 200,180,200 220,180,200 202,150,200 240,200,200 200,190,200 240,190,200 210,180,200 200,100,200 200,170,200 200,150,200 200,140,200 200,170,245 192,100,200 200,200,200 210,120,120

3.1.3. Menghitung Nilai Grayscale Citra

Matriks citra warna pada Tabel 3.1 di atas ditransformasikan menjadi citra grayscale

dengan menghitung rata-rata warna Red, Green dan Blue menggunakan persamaan 2.11. Sebagai contoh menghitung nilai grayscale piksel (0,0) dengan nilai komponen RGB (241,180,144) adalah: f(0,0) = + + = 667/3 = 222 f(0,1) = + + = 660/3 = 220 f(0,2) = + + = 655/3 = 218 f(0,3) = + + = 649/3 = 216 f(0,4) = + + = 640/3 = 213

Untuk menghitung nilai grayscale piksel selanjutnya dilakukan sama seperti cara di atas. Setelah semua nilai grayscale dihitung dan dimasukkan ke dalam matriks nilai grayscale seperti pada Gambar 3.4.

222 220 218 216 213 200 214 202 212 189 200 120 201 200 210 209 180 202 189 180 200 189 185 188 185

3.1.4. Fitur Haar

Dalam metode viola-jones, pendeteksian objek dilakukan berdasarkan pada nilai fitur. Penggunan fitur dilakukan karena pemrosesan fitur berlangsung lebih cepat dibandingkan pemrosesan citra per piksel. Pencarian objek wajah manusia dilakukan dengan mencari fitur-fitur yang memiliki tingkat pembeda yang tinggi. Hal ini dilakukan dengan mengevaluasi setiap fitur terhadap data latih dengan menggunakan nilai dari fitur tersebut. Pada penelitian ini penulis menggunakan parameter

FaceHaarCascade.xml yang dikhususkan untuk pelacakan bagian wajah manusia dengan posisi kemiringan 00 – 150 dari objek yang ingin dideteksi. Fitur yang memiliki batas terbesar antara manusia dan bukan manusia dianggap sebagai fitur terbaik. Sebagai contoh, misalnya kita melakukan pencarian wajah manusia dalam citra. Salah satu daerah wajah manusia adalah daerah mata dan pipi. Pada umumnya daerah mata akan berwarna lebih gelap sedangkan daerah pipi akan berwarna lebih terang seperti pada Gambar 3.5.

Gambar 3.5. Pencarian Fitur Haar

Perhitungan nilai haar mengikuti aturan sebagai berikut :

�����=Σ� � −Σ��ℎ��� (3.1)

Perhitungan nilai dari fitur dilakukan dengan mengurangkan nilai piksel pada area hitam dengan piksel pada area putih. Jika nilai perbedaannya itu di atas nilai ambang (threshold), maka dapat dikatakan bahwa fitur itu ada. Untuk menentukan ada atau tidaknya ratusan fitur haar pada sebuah citra digunakan sebuah teknik yang disebut dengan citra integral (integral image).

3.1.5. Citra Integral

Citra integral adalah representasi tengah untuk citra dan terdiri dari jumlah nilai keabu-abuan dari citra N dengan tinggi y dan lebar x dimana nilai tiap pikselnya merupakan akumulatif dari nilai piksel atas dan kirinya. Salah satu contoh seperti Gambar 3.6.

Gambar 3.6. Contoh Perhitungan Citra Integral

Misalkan nilai abu-abu dalam kotak haar tersebut seperti Tabel 3.2.

Tabel 3.2. Nilai Grayscale Citra Masukkan

222 220 218

200 214 202

200 120 201

Perhitungan citra integral dari nilai abu-abu dalam Tabel 3.2 dapat dilihat pada Tabel 3.3.

Tabel 3.3. Perhitungan Citra Integral

222 222+220 222+220+218

222+200 222+220+200+214 222+220+218+200+214+202

222+200+200 222+220+200+214+200+120 222+220+218+200+214+202+200+120+201

Maka diperoleh hasil perhitungan citra integralnya seperti pada tabel 3.4.

Tabel 3.4. Hasil Citra Integral

222 442 660

422 856 1276

Nilai fitur = |(total piksel hitam) – (total piksel putih)| = |{[(222+442+660+622+1176+1797) – (422+856+1276)] = | 4919 – 2554|

= 2365

Nilai fitur yang diperoleh merupakan nilai perbedaan antara kotak putih dan hitam yang biasa disebut dengan threshold. Nilai threshold ini digunakan sebagai parameter klasifikasi objek yang terdeteksi sebagai manusia (wajah) atau bukan.

3.1.6. Cascade of Classifier

Cascade of Classifier merupakan suatu metode pengklasifikasian bertingkat dimana masukan dari setiap tingkatan merupakan keluaran dari tingkat sebelumnya seperti tampak pada Gambar 2.5. Cascade of classifier dirancang sedemikian rupa untuk meningkatkan tingkat pendeteksian dan mengurangi jumlah positif yang palsu. Setiap tingkatan classifier merupakan representasi hasil dari algoritma boosting dimana setiap tingkat classifier memiliki sejumlah classifier yang lemah. Setiap classifier

yang lemah memberikan aturan pasti mengenai haar like feature yang digunakan yakni jenis, ukuran, lokasi, nilai ambang (treshold) yang terbaik untuk setiap fitur, serta nilai batasan setiap fitur tersebut.

Pada klasifikasi fitur (tingkat) pertama, tiap subcitra akan diklasifikasikan menggunakan satu fitur. Jika hasil nilai fitur dari filter tidak memenuhi kriteria yang diinginkan maka hasil ditolak. Pada klasifikasi ini akan disisakan kira-kira 50% subcitra untuk diklasifikasi di tahap kedua. Subcitra yang lolos dari tingkat pertama akan diklasifikasikan lagi pada tahap kedua dimana pada tahap kedua jumlah fitur yang digunakan lebih banyak. Semakin bertambah tingkat klasifikasi maka fitur yang digunakan semakin banyak. Jumlah subcitra yang lolos dari klasifikasi pun akan berkurang hingga mencapai 2%. Subcitra yang berhasil melewati semua tingkat klasifikasi akan dinyatakan sebagai manusia (objek yang dideteksi). Salah satu contoh dari hasil filer pada proses cascade of classifier dapat dilihat pada Gambar 3.7.

Gambar 3.7. Hasil Deteksi Wajah

3.2. Data

Data yang digunakan dalam penelitian ini adalah file citra digital. Faktor-faktor teknis pada data berupa file citra yang akan diolah adalah sebagai berikut:

a. Pencahayaan

b. Jarak pengambilan gambar c. Kualitas gambar

d. Dimensi file

Dalam penelitian ini, penulis menggunakan file citra dengan faktor yang bervariasi guna mendapatkan file citra yang paling optimal bagi algoritma Viola-Jones.

Dokumen terkait