BAB III ANALISA DAN PERANCANGAN...

21
21 BAB III ANALISA DAN PERANCANGAN SISTEM 3.1 Analisis Analisis dilakukan untuk mengurai secara mendalam terhadap perancangan yang akan dilakukan. Pada perancangan klasifikasi kendaraan menggunakan haar cascade classifier. 3.1.1 Analisa Masalah Pemanfaatan video lalu lintas sebagai input untuk menghitung kendaraan secara otomatis yang diharapkan membantu peneliti untuk melakukan perhitungan yang sebelumnya dilakukan secara manual dengan melihat dan mengamati secara langsung di jalan. 3.1.2 Algoritma Pada proses pendeteksian objek dengan menggunakan metode haar cascade classifier yang diusulkan oleh Viola-Jones, ada beberapa proses yang dilakukan sebelum akhirnya akan menghasilkan sebuah output objek yang terdeteksi pada sebuah citra. Dalam deteksi objek dengan metode ini, proses- proses tersebut yaitu Haar-Like Feature, Integral image, Adaboost ( Adaptive Boosting), dan Cascade Classifier. Skema proses dari tiap-tiap tahap yang dilalui oleh sebuah citra untuk memperoleh hasil pendeteksian objek kendaraan dapat dilihat pada Gambar 3.1. Gambar 3. 1 Skema Deteksi Metode Haar Cascade Classifier

Transcript of BAB III ANALISA DAN PERANCANGAN...

Page 1: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

21

BAB III

ANALISA DAN PERANCANGAN SISTEM

3.1 Analisis

Analisis dilakukan untuk mengurai secara mendalam terhadap

perancangan yang akan dilakukan. Pada perancangan klasifikasi kendaraan

menggunakan haar cascade classifier.

3.1.1 Analisa Masalah

Pemanfaatan video lalu lintas sebagai input untuk menghitung

kendaraan secara otomatis yang diharapkan membantu peneliti untuk melakukan

perhitungan yang sebelumnya dilakukan secara manual dengan melihat dan

mengamati secara langsung di jalan.

3.1.2 Algoritma

Pada proses pendeteksian objek dengan menggunakan metode haar

cascade classifier yang diusulkan oleh Viola-Jones, ada beberapa proses yang

dilakukan sebelum akhirnya akan menghasilkan sebuah output objek yang

terdeteksi pada sebuah citra. Dalam deteksi objek dengan metode ini, proses-

proses tersebut yaitu Haar-Like Feature, Integral image, Adaboost (Adaptive

Boosting), dan Cascade Classifier. Skema proses dari tiap-tiap tahap yang dilalui

oleh sebuah citra untuk memperoleh hasil pendeteksian objek kendaraan dapat

dilihat pada Gambar 3.1.

Gambar 3. 1 Skema Deteksi Metode Haar Cascade Classifier

Page 2: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

22

Untuk detail dari tiap tahap yang dilalui oleh sebuah image pada saat

proses pendeteksian objek kendaraan seperti pada Gambar 3.1 diatas adalah

sebagai berikut:

3.2 Pemilihan Fitur

3.2.1 Haar-like feature

Untuk mendeteksi adanya fitur mobil pada sebuah citra, proses

pertama yang dilakukan dalam metode haar cascade classifier adalah dengan

merubah citra tersebut menjadi citra grayscale.

Gambar 3. 2 Skema Deteksi Metode Haar cascade classifier

Setelah citra warna diubah menjadi citra grayscale, proses selanjutnya

yaitu mendapatkan nilai fitur dengan cara melakukan pemindaian pada citra

grayscale tersebut dengan menggunakan detector yang dalam algoritma Viola-

Jones disebut dengan Haar-Like feature. Teknik yang dilakukan yaitu memindai

bagian citra dengan Haar-Like feature setiap daerah pada image dari mulai ujung

kiri atas sampai kanan bawah. Proses ini dilakukan untuk mencari nilai fitur yang

menyatakan objek kendaraan.

Page 3: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

23

Gambar 3. 3 Skema Deteksi Metode Haar cascade classifier

3.2.2 Integral Image

Integral image digunakan pada algoritma untuk pendeteksian objek

dimana proses perhitungan dengan menggunakan integral image memerlukan waktu

yang cepat dan hasil yang akurat. Integral image digunakan untuk menghitung hasil

nilai pada daerah yang dideteksi oleh detector Haar-like feature.

Nilai-nilai piksel yang akan dihitung merupakan nilai-nilai piksel dari

sebuah citra masukan yang dilalui oleh fitur haar pada saat pemindaian yang

bertujuan untuk mendapatkan nilai fitur yang menerangkan objek mobil. Pada setiap

jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari beberapa piksel.

Gambar 3. 4 Nilai Piksel Pada Sebuah Fitur

Dari nilai-nilai piksel yang didapatkan pada fitur tersebut, maka akan

dihitung nilai integral image pada fitur tersebut dengan rumus berikut:

. . . .(1)

Page 4: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

24

1 2 3 4

1 3 7 7 3

2 1 3 3 1

3 5 9 9 5

4 3 6 6 3

1 2 3 4

1 (x+1,y+1) (x,y+1) (x-1,y+1) (x-2,y+1)

2 (x+1,y) (x,y) (x-1,y) (x-2,y)

3 (x+1,y-1) (x,y-1) (x-1,y-1) (x-2,y-1)

4 (x+1,y-2) (x,y-2) (x-1,y-2) (x-2,y-2)

(a)

(b)

Gambar 3. 5 (a) Arah Perhitungan Integral Image (b) Nilai Posisi dalam Arah

Perhitungan Integral Image

Sebagai contoh untuk melakukan perhitungan integral image digunakan

citra masukan 2 x 2 pada Gambar 3.5(a) pada indeks (1,1) ,(1,2),(2,1), dan (2,2)

akan dijelaskan pada Tabel 3.1.

(y)

(x)

(x)

(y)

Page 5: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

25

Tabel 3. 1 Perhitungan Integral Image

Nilai Piksel Keterangan

i(x,y)

=3 0

0 0

Nilai intensitas piksel (1,1) adalah 3 atau i(x,y) =3

i(x,y) =3

s(x+1,y) = 0 (di luar batas matrik)

s(x,y+1) = 0 (di luar batas matrik)

s(x+1,y+1) = 0 (di luar batas matrik)

s(x,y) = i(x,y) + s(x,y+1) + s(x+1,y) - s(x+1,y+1),

maka diapatkan nilai untuk piksel (1,1) adalah :

s(x,y) = 3 + 0 + 0 – 0 = 3

s(x+1,y)

=3

i(x,y)

=7

0 0

Nilai intensitas piksel (2,1) adalah 7 atau i(x,y) =7

i(x,y) =7

s(x+1,y) = 3

s(x,y+1) = 0 (di luar batas matrik)

s(x+1,y+1) = 0 (di luar batas matrik)

s(x,y) = i(x,y) + s(x,y+1) + s(x+1,y) - s(x+1,y+1),

maka diapatkan nilai untuk piksel (1,2) adalah :

s(x,y) = 7 + 3 + 0 – 0 = 10

Page 6: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

26

s(x,y+1)

=3

s(x-1,y)

=10

i(x,y)

=1 0

Nilai intensitas piksel (1,2) adalah 1 atau i(x,y) =1

i(x,y) =1

s(x+1,y) = 0 (di luar batas matrik)

s(x,y+1) = 3

s(x+1,y+1) = 0 (di luar batas matrik)

s(x,y) = i(x,y) + s(x,y+1) + s(x+1,y) - s(x+1,y+1),

maka diapatkan nilai untuk piksel (2,1) adalah :

s(x,y) = 1 + 0 + 3 – 0 = 4

s(x+1,y+1

)=3

s(x,y+1)=

10

s(x+1,y)

=4

i(x,y)

=3

Nilai intensitas piksel (2,2) adalah 3 atau i(x,y) =3

i(x,y) =3

s(x+1,y) = 4

s(x,y+1) = 10

s(x+1,y+1) = 3

s(x,y) = i(x,y) + s(x,y+1) + s(x+1,y) - s(x+1,y+1),

maka diapatkan nilai untuk piksel (2,2) adalah :

s(x,y) = 3 + 10 + 4 – 3 = 14

3 10

4 14

Hasil citra integral yang terbetuk.

Setelah dilakukan perhitungan semua piksel yang terdapat dalam kotak

fitur pada Gambar 3.5 maka akan didapatkan hasil perhitungan dari integral image

pada Gambar 3.6.

Page 7: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

27

1 2 3 4

1 3 10 17 20

2 4 14 24 28

3 9 28 47 56

4 12 37 62 74

Integral Image

Gambar 3. 6 Hasil Perhitungan Integral Image

Setelah didapatkan hasil dari perhitungan integral image, selanjutnya akan

dilakukan perhitungan untuk wilayah tertentu.

Gambar 3. 7 Pembagian Integral Image pada menjadi beberapa wilayah

Gambar 3. 8 Wilayah “F” pada Integral image dari Gambar 3.7

1 2 3 4

1 3 10 17 20

2 4 14 24 28

3 9 28 47 55

4 12 37 62 74

1 2 3 4

1 A B C D

2 E F G H

3 H J K L

4 M N O P

1 2 3 4

1 A B C D

2 E F G H

3 I J K L

4 M N O P

W3

W1 W2

W4

1 2 3 4

1 3 10 17 20

2 4 14 24 28

3 9 28 47 55

4 12 37 62 74

W3

W1 W2

W4

Page 8: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

28

1 2 3 4

1 3 10 17 20

2 4 14 24 28

3 9 28 47 55

4 12 37 62 74

Untuk menghitung jumlah piksel pada wilayah “F” seperti pada Gambar

3.8, akan dijelaskan pada Tabel 3.2 dengan menggunakan persamaan sebagai

berikut:

Tabel 3. 2 Perhitungan Nilai Piksel pada suatu wilayah dalam Integral Image

Diketahui :

W1=3, W2=10

W3=4 W4=14

maka nilai piksel pada daerah F adalah :

F = W1 + W4 – (W2+W3)

F = 3 + 14 – ( 10 + 4)

F = 3

maka didapatkan total nilai piksel pada citra inputan pada wilayah “F” sebesar 3

Setelah didapatkan hasil nilai integral image pada wilayah tertentu, untuk

mempercepat komputasi, integral image juga dapat digunakan menghitung nilai

piksel pada beberapa wilayah tertentu.

Gambar 3. 9 Wilayah “K L O P” pada Integral image dari Gambar 3.7

. . . .(2)

1 2 3 4

1 A B C D

2 E F G H

3 I J K L

4 M N O P

W2 W1

W3 W4

W2 W1

W3 W4

Page 9: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

29

Untuk menghitung jumlah piksel pada wilayah “K L O P” seperti pada Gambar

3.9, akan dijelaskan pada Tabel 3.3 dengan menggunakan persamaan sebagai

berikut:

Tabel 3. 3 Perhitungan Nilai Piksel pada beberapa wilayah dalam Integral

Image

Diketahui :

W1=14, W2=28, W3=37,W4=74

maka nilai piksel pada daerah “K L O P” adalah :

KLOP = W1 + W4 – (W2+W3)

KLOP = 14 + 74 – ( 28 + 37)

KLOP = 23

maka didapatkan total nilai piksel pada citra inputan pada wilayah “K L O P”

sebesar 23

Apabila sudah didapatkan nilai integral image dari sebuah citra masukan

dan nilai jumlah piksel pada daerah tertentu, maka hasil tersebut akan

dibandingkan antara nilai piksel pada daerah terang dan daerah gelap. Jika selisih

nilai piksel pada daerah terang dengan nilai piksel pada derah gelap di atas nilai

ambang (threshold) maka daerah tersebut dinyatakan memiliki fitur.

3.3 Klasifikasi Bertingkat

3.3.1 Algoritma Boosting

Metode haar cascade classifier menggunakan algoritma boosting

untuk membentuk classifier kuat dengan menentukan beberapa fitur dari banyak

fitur, adapun fitur yang ditentukan disebut dengan weak classifier yang akan

diberikan penambahan bobot dan gabungkan dengan weak classifier lainnya

untuk membentuk strong classifier yang akan memberikan prediksi pendeteksian

. . . .(3)

Page 10: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

30

yang lebih baik, Adaboost membangun strong classifier dengan tahapan sebagai

berikut:

Diberikan citra ( , ),…,( , ) dimana =0,1 untuk data negatif dan

positif secara berturut turut.

Untuk setiap citra training, diberi koordinat (x,y) dengan y = 0 untuk

citra yang tidak mengandung objek mobil (citra negatif), dan y = 1 untuk citra

berisi mobil (citra positif).

Inisialissasikan bobot = untuk =0,1 berturut-turur, dimana m dan l

adalah jumlah negative dan positif berturut-turut.

Setiap citra diberi bobot awal yang sama, untuk citra negatif, dan

untuk citra positif. Dimana adalah jumlah total citra negatif, dan adalah

jumlah total citra positif yang digunakan dalam proses training.

Untuk t =1, …,T:

1. Normalisasikan bobot,

sehingga adalah distribusi probabilitas.

2. Untuk setiap fitur, , latih sebuah classifier yang dibatasi agar

menggunakan sebuah fitur tunggal, dan kesalahan dievaluasi dengan

3. Pilih classifier, , dengan kesalahan terendah

4. Perbaharui bobot:

Page 11: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

31

Dimana =0 jika data diklasifikasi dengan benar, = 1 jika

sebaliknya, dan

Untuk setiap tahapan t:

1. Normalisasikan bobot untuk mendapatkan distribusi probabilitas atau

kandidat classifier lemah.

2. Evaluasi setiap kandidat classifier lemah tersebut.

3. Pilih kandidat classifier lemah dengan kesalahan yang paling sedikit,

tetapkan sebagai classifier lemah.

4. Klasifikasi semua data training menggunakan classifier lemah yang

telah didapatkan, dan lakukan pemberian bobot ulang terhadap data-

data tersebut. Perbesar bobot semua data yang mengalami kesalahan

klasifikasi, dan kurangi bobot (kembalikan ke bobot awal) semua data

yang telah diklasifikasi dengan benar. Hal ini ditujukan agar setiap

kesalahan klasifikasi yang terjadi dapat terlihat dan diatasi oleh weak

classifier yang terpilih pada tahapan selanjutnya.

Ulangi algoritma di atas, hingga data-data dapat diklasifikasi dengan benar.

Classifier kuat yang terbentuk adalah:

dimana

Classifier akhir yang didapatkan merupakan gabungan dari semua

classifier lemah yang didapatkan dari setiap tahapan boosting.

Page 12: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

32

3.3.2 Cascade Classifier

Cascade classifier melakukan proses penyaringan subcitra dengan

membentuk tingkatan penyaringan berdasarkan banyak fitur yang ditentukan oleh

adaboost. Terdapat beberapa tingakatan klasifikasi untuk menentukan apakah

benar atau tidak ada fitur objek kendaraan pada fitur yang sudah dipilih. Pada saat

klasifikasi bagian subcitra akan melalui beberapa tahapan penyaringan dimana

pada tahap awal subcitra yang tidak menggandung objek kendaraan akan ditolak

dan sedangkan untuk subcitra yang menggandung objek positif akan dijadikan

inputan pada tahapan penyaringan berikutnya hingga didapatkan sub-citra yang

diyakini sebagai objek mobil.

Gambar 3. 10 Cascade Classifier

Setelah dilakukan serangkain proses seperti pemilihan fitur dan

klasifikasi bertingkat maka akan didapatkan sebuah hasil pendeteksian. Hasil

pendeteksian bisa berupa objek mobil atau bukan objek mobil. Pada saat proses

klasifikasi bertingkat dilakukan maka, pada bagian subcitra tersebut akan ditandai

dengan sebuah detector yang ditentukan pada daerah subwindow objek mobil

yang terdeteksi dan apabila tidak ada objek kendaraan tedeteksi maka, image

tersebut tidak akan ditandai oleh sebuah detector.

Page 13: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

33

3.4 Perancangan Classifier

3.4.1 Data Train

Dalam membuat data train memerlukan dua jenis gambar citra positif

dan negatif. Pada sistem yang akan dibuat menggunakan 1000 citra berupa

gambar yang memuat objek mobil (gambar positif) dan 200 citra berupa gambar

yang tidak memuat objek mobil (gambar negatif). Tools yang digunakan untuk

membuat data train diantara objectmarker.exe createsamples.exe, haartraining.exe

dan haarconv.exe yang akan dijelaskan proses pembuatan data train sebagai

berikut:

Gambar 3. 11 Alur Pembangunan Classifier

Page 14: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

34

3.4.2 Citra Negatif

Pada tahap awal dikumpulkan 200 gambar negatif dengan format .jpg

kedalam satu direktori “negative” dan kemudian dibuat file .txt yang memuat

daftar nama semua file gambar negative tersebut. Berikut langkah-langkahnya:

a. Buka Command Prompt

b. Arahkan ke direktori tempat gambar negative di simpan

c. Masukan perintah [dir /b> bg.txt]

3.4.3 Citra Positif

Pada tahap awal dikumpulkan 1000 gambar positif dengan format

.bmp yang didapatkan dengan melakukan tangkapan layar pada video kondisi lalu

lintas dan disimpan kedalam satu direktori “rawdata”. Kemudian untuk menandai

objek pada bagian gambar tertentu digunakan objectmarker.exe (tools untuk

melakukan marking terhadap gambar objek yang dikehendaki). Berikut langkah-

langkahnya:

a. Masukan gambar positif ke direktori rawdata

b. Jalankan objectmarker.exe dan tandai objek yang dikehendaki yang

akan digunakan sebagai data positif.

Tools tersebut akan menyimpan informasi objek yang dikehendaki

dalam info.txt yang meliputi nama file, jumlah objek yang ditandai, koordinat

objek yang dihendaki.

c. Merubah info.txt menjadi file vector dengan ektensi .vec yang

bertujuan untuk mengubah ukuran gambar positif dengan cara

melakukan resize agar semua ukuran gambar menjadi sama.

Mengubah file info menjadi file vector .vec digunakan

opencv_createsamples.exe dengan menjalankan perintah .bat file

dengan sintaks sebagai berikut :

d. createsamples.exe -info positive/info.txt -vec vector/vectormobil.vec -

num 513 -w 24 –h 24

Page 15: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

35

e. Setelah perintah tersebut dijalankan makan akan menghasilkan output

file vectormobil.vec

3.4.4 Haar Training

Untuk membangun haar classifier maka perlu dilakukan tahapan haar

training dengan mengujikan gambar positif terhadap gambar negatif yang akan

dilakukan oleh tools HaarTraining.exe

Gambar 3. 12 Alur pengolahan haar training

Berikut tahap pembuatan cascade classifier .xml:

a. Menjalankan haartraining.exe untuk membuat cascade classifier

menggunakan file .bat [haartraining.exe -data cascades -vec

vector/vectormobil.vec -bg negative/bg.txt -npos 513 -nneg 200 -

nstages 15 -mem 1024 -mode ALL -w 24 -h 24].

-data : Lokasi penyimpanan output haartrainning.exe

Page 16: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

36

-vec : Data citra positif

-bg : Data citra negative

-npos : Jumlah citra positif

-nneg : Jumlah citra negative

-nstages : Jumlah tahap cascade

-mem : Alokasi memori untuk menjalankan haartraining.exe

-w : Ukuran lebar

-h : Ukuran tinggi

b. Setelah menjalankan haartraining.exe mendapatkan output berupas

fitur haar like berupa AdaBoostCARTHaarClassifier.txt 0-n (n

=number of stages)

c. Konversi stages dari beberapa file AdaBoostCARTHaarClassifier.txt

menjadi file tunggal dengan format .xml menggunakan tool

Haarconv.exe

3.5 Perancangan Aplikasi

Dalam melakukan implementasi dari classifier yang akan dibuat

diujikan kedalam sebuah aplikasi dimana dalam aplikasi ditambahkan beberapa

fitur yang meliputi object detection, object tracking, dan object counting.

Gambar 3. 13 Alur Aplikasi

Page 17: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

37

3.5.1 Input

Pada tahapan ini diperlukan untuk melakukan input data untuk

diproses yang berupa video kondisi lalu lintas dengan posisi pengambilan video

menghadap 30o derajat sampai 50o derajat kebawah dan menghadap bagian depan

mobil.

(a)

(b)

Gambar 3. 14 (a) Posisi pengambilan video (b) Contoh pengambilan video

3.5.2 Preprocessing

Pada tahapan ini video yang dimasukan akan dikonversi dari warna

asal RGB menjadi Grayscale menggunakan fungsi cv2.cvtcolor yang disediakan

oleh pustaka OpenCV dan kemudian dilakukan proses untuk mengambil bagian

dari video grayscale sebagai Region Of Interest (ROI), pada proses preprocessing

menghasilkan output yang berupa Region of Interest subcitra grayscale.

Page 18: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

38

Gambar 3. 15 Flowchart Preprocessing

3.5.3 Processing

Pada tahapan ini fungsi deteksi akan melakukan pemindaian terhadap

bagian citra untuk mencari fitur haar pada objek kendaraan dan hitung

menggunakan integral image dan dinyatakan objek kendaraan atau bukan objek

kendaraan berdasarkan cascade classifier yang diurutkan tingkat penyaringannya

menggunakan metode Adaboost, dalam tahapan ini digunakan fungsi

cv2.detectMultiScale yang disediakan oleh pustaka OpenCV.

Page 19: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

39

Gambar 3. 16 Flowchart Processing

Mulanya seluruh bagian subcitra ROI (Region of Interest) dilakukan

proses pemindaian fitur haar yang telah ditentukan, dan nilainya dihitung

menggunakan integral image, dan apabila memenuhi nilai threshold maka

dinyatakan subcitra tersebut memiliki objek yang di deteksi, dan apabila dibawah

nilai threshold maka subcitra tersebut dinyatakan tidak memiliki fitur dan subcitra

ini akan ditolak, berbeda dengan subcitra yang tidak mengandung objek untuk

subcitra yang memiliki objek deteksi yang mana dalam kasus ini adalah objek

mobil maka subcitra ini akan diproses secara bertingkat hingga dipisahkan seluruh

subcitra selain subcitra objek mobil yang menyisahkan subcitra yang diyakini

sebagai objek mobil yang dikehendaki.

3.5.4 Tracking

Pada tahapan ini pada bagian gambar yang diketahui sebagai objek

akan diambil nilai posisinya (x,y) untuk dibandingkan kedalam list yang berisi

daftar posisi terakhir dari objek tracking yang telah dideteksi, jika nilai posisi

tersebut tidak termasuk di dalam list maka posisi tersebut di identifikasi sebagai

Page 20: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

40

objek baru dan nilai posisinya akan dimasukan kedalam list sebagai objek baru.

Jika posisi objek termasuk dalam posisi terakhir dari objek tracking dalam list,

maka nilai posisi terakhir yang berada dalam list tersebut akan diperbarui dengan

nilai posisi terbaru dari objek tersebut.

Gambar 3. 17 Flowchart Tracking

3.5.5 Counting

Pada tahapan ini kendaraan yang melintas kedalam area hitung ROI

(Region Of Interest) akan diambil nilai posisinya (x,y) kemudian nilai posisi ini

akan dibandingkan terhadap nilai posisi objek dalam list objek tracking, jika

termasuk dalam nilai posisi dalam list tracking menandakan bahwa posisi tersebut

adalah objek yang telah di hitung, dan apabila nilai dari posisi tidak termasuk

jangkauan nilai posisi objek tracking maka nilai posisi tersebut menandakan objek

kendaraan baru dan akan dilakukan operasi hitung dengan menambahkan nilai

jumlah mobil yang telah terhitung sebelumnya.

Page 21: BAB III ANALISA DAN PERANCANGAN SISTEMeprints.umm.ac.id/36142/4/jiptummpp-gdl-mochilhamr-50393-4-babiii.pdf · jenis fitur yang digunakan, pada setiap kotak-kotaknya terdiri dari

41

Gambar 3. 18 Flowchart Counting