43
BAB IV IMPLEMENTASI DAN EVALUASI
Setelah melalui proses perancangan, dilakukan pembuatan sistem. Tahap- tahap implementasi mencakup lingkungan implementasi dan program dalam
script matlab yang akan dijelaskan dalam sub bab berikut.
4.1 Lingkungan Implementasi
Spesifikasi perangkat keras dan perangkat lunak yang digunakan dalam deteksi obyek pejalan kaki menggunakan metode SVM dan PCA ini ditampilkan
pada tabel 4.1.
Tabel 5.1 Lingkungan Implementasi Sistem
Perangkat keras Prosesor : Intel
®
Core
TM
2 Duo Processor T6600 2.2 GHz Memori : 4 GB
Perangkat lunak Sistem Operasi : Microsoft Windows XP Professional SP3
Perangkat Pengembang : MATLAB 7.1
4.2 Implementasi pada Program Utama
Pada program utama ini terdiri dari beberapa proses yaitu mengubah citra masukan menjadi matriks, proses reduksi dimensi menggunakan PCA, training
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
dan testing dengan menggunakan SVM. Sehingga di dalam fungsi utama ini memanggil beberapa fungsi lain yaitu createdatabase, pca, svc dan
recognition. createdatabase Fungsi digunakan untuk mengubah citra masukan menjadi matriks. Input pada proses ini terdiri dari 3 jenis data yaitu citra
training pejalan kaki, citra training bukan pejalan kaki, dan citra testing. Data training pedestrian terletak pada folder pedestrian dan data training bukan
pedestrian terletak pada folder nonpedestrian. Listing kode program utama dapat dilihat pada Gambar 4.1 sampai 4.3.
1
mengubah citra training menjadi matriks dan menghitung matriks reduksi dimensi citra training
2
pedestrian = createdatabase pedestrian\
;
3
[mp,std_devp,Cp,eigenVectorp,eigenValuep,reduceSpacep] = pcapedestrian;
4
nonpedestrian = createdatabase nonpedestrian\
;
5
[mn,std_devn,Cn,eigenVectorn,eigenValuen,reduceSpacen] = pcanonpedestrian;
6
menggabungkan citra training pedestrian dengan citra nonpedestrian
7
datagab = [pedestrian nonpedestrian];
8
menggabungkan matriks reduksi dimensi pedestrian dengan nonpedestrian
9
reduceSpace = [reduceSpacep reduceSpacen];
10
for i = 1 : sizereduceSpace,2
11
temp = reduceSpacedatagab:,i;
12
ProjectedImages = [];
13
ProjectedImages = [ProjectedImages temp];
14
if i = sizeeigenVectorp,2
Y = [Y 1];
15
else
16
Y = [Y -1];
17
end
18
end
19
fprintf PCA Completed
;
Gambar 4.1 Kode Implementasi Program Utama.m bagian 1
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
20
[nsv, alpha, bias] = svcProjectedImages1:end,:,Y1,:,
poly ,Inf;
21
img = im2doubleimread ...\data_testing\pedestrian1.jpg
;
22
[hasilawal,I,imageAsal,predictedY] = recognitionimg,ProjectedImages,Y,alpha,bias,reduceSpace;
23
hasilmaping = [];
24
for i =1 : sizehasilawal,1
25
hasilmapping = [hasilmapping;hasilawali,1hasilawali,5,hasilawali,2ha
silawali,5,hasilawal1,3hasilawali,5,hasilawali,4has ilawal1,5,hasilawal1,5];
26
end
27
X1 = [floorhasilmapping:,1
28
floorhasilmapping:,2
29
floorhasilmapping:,3
30
floorhasilmapping:,4];
31
X1 = sortrows X1;
32
X2 = sortrows hasilmapping;
33
alld = [];
34
X = 0;
35
Y = 0;
36
tampung = [];
37
x = 1 + minpdist [X1:,1 X1:,2];
38
mengeliminasi deteksi yang salah dan menggabungkan deteksi
39
for i = 1:size X1,1
40
for j = i+1:size X1,1
41
d = sqrtpowerX1j,2-X1i,2,2+powerX1j,1- X1i,1,2;
42
alld = [alld d]
43
if d = x
44
tampung = [tampung;X1i,1 X1i,2 X2i,3 X2i,4];
45
tampung = [tampung;X1j,1 X1j,2 X2i,3 X3i,4];
46
end
47
end
48
end
49
tampung = sortrowstampung;
50
XX = 0;
Gambar 4.2 Kode Implementasi Program Utama.m bagian 2
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
51
YY = 0;
52
tampung2 = [];
53
tampung4 = [];
54
for i = 1 : sizetampung,1
55
if tampungi,1 == XX tampung i,2 == YY
tampungi,1 ~= 0 tampungi,2 ~=0
56
tampung2 = [tampung2;tampungi,1 tampungi,2 tampungi,3 tampungi,4];
57
i = i+1;
58
Else
59
XX = tampung i,1;
60
YY = tampung i,2;
61
tampung4 = [tampung4;tampungi,1 tampungi,2 tampungi,3 tampungi,4];
62
End
63
End
64
X = 0;
65
Y = 0;
66
tampung3 = [];
67
for i = 1 : sizetampung2,1
68
if tampung2i,1 == X
69
i = i+1;
70
Else
71
X = tampung2i,1;
72
[r,c,v] = findX == tampung2:,1;
73
n = numelfindX == tampung2:,1;
74
tampung3 = [tampung3;X sumtampung2r,2n sumtampung2r,3n sumtampung2r,4n];
75
End
76
End
77
for i = 1 : sizetampung3,1
78
c = [tampung3i,1,tampung3i,2,tampung3i,3,tampung3i,4];
79
retangle Potition
, c, EdgeColor
, [1,0,0], linewidth
,1;
80
End
Gambar 4.3 Kode Implementasi Program Utama.m bagian 3
Fungsi utama di atas memanggil beberapa fungsi lagi yang mempresentasikan langkah-langkah pada bab 2. Diantaranya adalah pada baris 3
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
dan 5 memanggil fungsi pca yang merupakan implementasi reduksi dimensi pada sub bab 3.3.1. Selanjutnya pada baris 20 memanggil fungsi SVC yang merupakan
implementasi training menggunakan SVM pada sub bab 3.3.2.1 dilanjutkan dengan baris 22 yaitu fungsi recognition yang merupakan implementasi dari
sub bab 3.3.3. Selain memanggil fungsi-fungsi yang lain, di dalam fungsi utama ini juga terdapat implementasi proses mengurangi kesalahan deteksi yang
merupakan implementasi dari sub bab 3.3.4. Implementasi proses mengurangi kesalahan deteksi terdapat pada baris 38
– 80. Penjelasan mengenai fungsi-fungsi yang dipanggil dalam fungsi utama diatas dapat dijelaskan melaui sub bab berikut.
4.3 Implementasi Pengubahan Citra ke Matriks