SIMPULAN DAN SARAN
DAFTAR PUSTAKA
Buono A, Ridha A, Bastian H. 2010. Sistem Pengenalan Wajah Real-time Dalam Ruang Eigen Dengan Segmentasi Berdasarkan Warna Kulit. Jurnal Ilmiah Ilmu Komputer. Vol 15 No. 2
Camargo A., Smith JS. 2009. Image Pattern Classification For the Identification of Desease Causing Agent in Plants. Computers and Electrinics
inAgriculture 66. pp : 121-125
Chen Z, Pears NE, Freeman M, Austin J. 2009 Road Vehicle Classification using Support Vector Machines. Proc. of IEEE Int. Conf. on Intelligent
Computing and Intelligent Systems, Shanghai, China. pp. 214-218.
Duda RO, Hart PE, Stork DG. 2000 , “Pattern Classification”, 2nd edition. New York: John Wiley & Sons
Davies E.R. 1990. Machine Vision: Theory, Algorithms, Practicalities. London : Academic Press.
Fung Y, Lee H, and Ercan MF. 2006. Image Processing Application in Toll Collection. IAENG International Journal of Computer Science .
Frenze J.F. 2002. A Video-based Method for the Detection of Truck Axles. NIATT Report Number N02-05.
Gonzalez RC, Woods RE, and Eddins SL. 2004. Digital Image Processing Using MatLab. New Jersey: Prentice-Hall.
Jolliffe IT. 2002. Principal Component Analysis. New York: Springer-Verlag.
Kecman V. 2001. Learning and Soft Computing. London : MIT Press.
Khelil M, Boudraa M, Kechida A, and Drai R. 2005. Classification of Defects by the SVM Method and the Principal Component Analysis (PCA). World Academy of Science, Engineering and Technology.
Kirby M. and Sirovich L. 1990. Aplication of the Karhunen-Loeve Procedure for the Characterization of Human Faces. IEEE Transactions On Pattern Analysis and Machine Intelligence. Vol. 12. No. 1
Le TH., Bui L. 2011. Face Recognition Based on SVM and 2DPCA.
International Journal of Signal Processing, Image Processing and Pattern Recognition. Vol. 4 : No. 3.
Lu H, Zheng H, Hu Y, Lou H, Kong X. 2011. Bruise Detection on Red Bayberry (Myrica rubra Sieb. & Zucc.) Using Fractal Analysis and Support Vector Machine. Journal of Food Engineering 104. pp : 149-153.
Narayanan U. 2009. Vision Based Vehicle Counting and Classification System [project report]. Kerala : Indian Institute of Information Technology and Management-Kerala.
Peijin Ji, Lianwen Jin, Xutao Li. 2007. Vision-based Vehicle Type Classification Using Partial Gabor Filter Bank. Proceedings of the IEEE International Conference on Automation and Logistics, China : Jinan. pp.18 – 21.
Rashad A. , Hamdy A., Saleh MA. Eladawy M. 2009. 3D Face Recognition Using 2DPCA. IJCSNS International Jaournal of Computer Science and Network Security. Vol:9. No. 12.
Smith BT. 2004. Lagrange Multipliers Tutorial in the Context of Support Vector Machines. St. John's Canada : Faculty of Engineering and Applied Science Memorial University of Newfoundland.
Sabri M and Fieguth P. 2004. A New Gabor Filter Based Kernel for Texture Classification with SVM. ICIAR, LNCS 3212, pp. 314–322, 2004. Springer-Verlag Berlin Heidelberg
Shin W, Song D, and Lee C. 2006. Vehicle Classification by Road Lane Detection and Model Fitting Using a Surveillance Camera. International Journal of Information Processing Systems. Vol.2 : No.1
Sirovich L., Kirby M. 1986. Low-dimensional Procedure For Characterization of Human Face. Jurnal of the Optical Society of America A. Vol.4 : 519
Yang Jian, et al. 2004. Two-dimensional PCA: a new approach to appearance-based face representation and recognition. Pattern Analysis and Machine Intelligence, IEEE Transactions on. Vol. 26 : pp. 131-137.
Turk M. and Pentland A. 1991. Eigenfaces for Recognition. J. Cognitive Neuroscience. Vol. 3 : no. 1, pp. 71-86.
Wang L. 2005. Support Vector Machines:Theory and Applications. New York : Springer Berlin Heidelberg.
Lampiran 1.
Hasil Percobaan Terhadap 81 Model Pendeteksi Ban Ganda
Training Testing Jumlah
Positif 368 184 552
Negatif 856 428 1284
Jumlah 1224 612
No Kernel SVM PCA 2D tahap 1 PCA 2D tahp 2 Jml. Terdedeksi
Akurasi Tahap 1 Jml. PC Tahap 2 Jml. PC Positif Negatif
1
Lampiran 1 (Lanjutan)
Lampiran 2.
Script matlab dari fungsi-fungsi yang digunakan dalam penelitian
function [PA,e_use,PC] = pca2d(X,arg1)
% penggunaan :
% PA = Projection Axis
% e_use = Nilai eigen yang dipakai
% PC = Pricipal Components
% centering data (dibuat zero mean) mean_X = mean(X,3);
% hitung covariance (berdasar jurnalnya Yang) Gt = zeros(N,N);
for j=1:num_data
Gt = Gt + (X(:, :, j)-mean_X)'*(X(:, :, j)-mean_X);
endGt=Gt/num_data;
e_pcnt=arg1;
% Hitung eigenvector dan eigenvalue menggunakan fungsi EIG [V,D]=eig(Gt);
e=diag(D);
% Urutkan eigenvalue dari besar ke kecil [e_sorted,idx]=sort(e,'descend');
V_sorted=V(:,idx);
% Hitung jumlah nilai eigen yang digunakan e_sum=sum(e_sorted);
% Tentukan vektor Projection Axis yang dipakai e_sorted=e_sorted';
e_use=e_sorted(:,1:ac);
PA=V_sorted(:,1:ac);
% Transformasi data asli ke ruang baru menggunakan vektor
% Projection Axis untuk memperoleh principal components PC =zeros(M,ac,num_data);
for j=1:num_data
PC(:,:,j)=X(:,:,j)*PA;
end return;
Lampiran 2. (Lanjutan)
function [PA1,PA2,data_svm] = pca2d_dua_tahap(X,pcnt1,pcnt2)
% INPUT :
% X = matriks data tiga dimensi
% pcnt1 = persentase nilai eigen terbesar yang dipakai untuk tahap satu
% pcnt2 = persentase nilai eigen terbesar yang dipakai untuk tahap dua
%
% OUTPUT :
% PA1 = Principal Axis yang digunakan (vektor eigen yang besesuaian
% dengan nilai eigen terbesar yang digunakan)
% e1 = nilai eigen yang digunakan
% PC1 = Principal Components dari tahap 1
% data_svm= PC2 yang telah divektorkan untuk masuk ke classifier
% Bagian untuk ekstrksi ciri menggunakan 2D-PCA dua tahap
% ekstrasi tahap pertama [PA1,~,PC1]=pca2d(X,pcnt1);
% transpose Principal Components dari tahap pertama
% untuk masuk ke tahap kedua [baris,kolom,jm_data]=size(PC1);
% Mempersiapkan data untuk training svm
% tidak perlu ditranspose hasilnya karena akan digunakan
% fungsi reshape
data_svm(i,:)=reshape(x,1,dim_vek);
end return;
---function
[struktur,akurasineg,kelas_neg_test,akurasipos,kelas_pos_test]=svm_train_test(train_data,train_kelas,test_neg,test_pos)
% Training SVM menggunakan fungsi svmtrain
% struktur=svmtrain(train_data,train_kelas,'Method','SMO');
% Testing menggunakan svmclassify
kelas_pos_test=svmclassify(struktur,test_pos);
% akurasipos=(sum(kelas_pos_test)/numel(kelas_pos_test));
akurasipos=sum(kelas_pos_test);
% Testing menggunakan svmclassify
kelas_neg_test=svmclassify(struktur,test_neg);
% akurasineg=1-(sum(kelas_neg_test)/numel(kelas_neg_test));
akurasineg=428-(sum(kelas_neg_test));
return;
Lampiran 2. (Lanjutan)
function [X]=baca_data() img=zeros(150,150,1224);
% Bagian untuk baca data training positif sebanyak 368 citra
files=dir('/media/50GB/Riset/DualTireDetection/Training_Positif/*.JPG');
np =numel(files);
for i=1:np
str = strcat('/media/50GB/Riset/DualTireDetection/Training_Positif/', files(i).name);
img(:,:,i)=imread(str);
end;
% Bagian untuk baca data training negatif sebanyak 856 citra
files2=dir('/media/50GB/Riset/DualTireDetection/Training_Negatif/*.JPG');
nn =numel(files2);
for j=1:nn
str = strcat('/media/50GB/Riset/DualTireDetection/Training_Negatif/', files2(j).name);
str = strcat('/media/50GB/Riset/DualTireDetection/Negatif_Testing/', files(i).name);
str = strcat('/media/50GB/Riset/DualTireDetection/Positif_Testing/', files(i).name);
X=baca_data; % baca data training [~,~,jm_data]=size(X);
[PA1,PA2,data_training_svm] = pca2d_dua_tahap(X,0.85,0.95);
kelas_vek=ones(1,jm_data);
kelas_vek(1,369:jm_data)=0;
kelas_vek=kelas_vek';
Lampiran 2. (Lanjutan)
% Siapkan data testing negatif Test_Neg=Baca_Data_Testing_Negatif;
% Transformasi data asli ke ruang baru menggunakan vektor Projection Axis 1
% untuk memperoleh principal components 1 [row,~,num_data]=size(Test_Neg);
[~,kolom]=size(PA1);
PC_N_1 =zeros(row,kolom,num_data);
for j=1:num_data
PC_N_1(:,:,j)=Test_Neg(:,:,j)*PA1;
end
% transpose Principal Components dari tahap pertama untuk masuk ke tahap kedua [baris,kolom,jm_data]=size(PC_N_1);
PC_N_2(:,:,j)=data2(:,:,j)*PA2;
end
% Mempersiapkan data untuk testing svm (negatif)
% tidak perlu ditranspose hasilnya karena akan digunakan fungsi reshape dim_vek=row*kolom;
data_svm=zeros(num_data,dim_vek);
for i=1:num_data x=PC_N_2(:,:,i);
data_svm(i,:)=reshape(x,1,dim_vek);
end
test_neg=data_svm;
% Siapkan data testing positif Test_Pos=Baca_Data_Testing_Positif;
% Transformasi data asli ke ruang baru menggunakan vektor Projection Axis 1
% untuk memperoleh principal components 1 [row,~,num_data]=size(Test_Pos);
[~,kolom]=size(PA1);
PC_P_1 =zeros(row,kolom,num_data);
for j=1:num_data
PC_P_1(:,:,j)=Test_Pos(:,:,j)*PA1;
end
% transpose Principal Components dari tahap pertama untuk masuk ke tahap kedua [baris,kolom,jm_data]=size(PC_P_1);
PC_P_2(:,:,j)=data2(:,:,j)*PA2;
end
% Mempersiapkan data untuk testing svm (positif)
% tidak perlu ditranspose hasilnya karena akan digunakan fungsi reshape dim_vek=row*kolom;
data_svm=zeros(num_data,dim_vek);
for i=1:num_data x=PC_P_2(:,:,i);
data_svm(i,:)=reshape(x,1,dim_vek);
end
Lampiran 2. (Lanjutan)
% Ambil parameter-parameter untuk 2D-PCA load PA1; load PA2;
%load PA1_rbf_5; load PA2_rbf_5;
% Ambil parameter-parameter untuk 2D-PCA load struktur; for y=y_awal:10:y_akhir tic;
% Transformasi data asli ke ruang baru menggunakan vektor Projection Axis 1 % untuk memperoleh principal components 1
data_svm=reshape(PC_P_2,1,dim_vek);
% kelaskan menggunakan trained svm kelas=svmclassify(struktur,data_svm);
t=toc+t;
Lampiran 3.
Citra yang digunakan dalam pengujian tahap kedua
Lampiran 3. (Lanjutan)
Lampiran 4.
Grafik Nilai Fungsi Minimum Dari Masing-masing Citra Uji Tahap Dua
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-14 -12 -10 -8 -6 -4 -2 0 2
Model 1
(Kudratik 90/90)
Ban Ganda Non Ban Ganda
Nomor Citra Uji Nilai Fungsi Pengklasifikasi
1 -1 -3 -5 -7 -9 -11 -13
0 2 4 6 8 10 12 14
Non Ban Ganda Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-5 -4 -3 -2 -1 0 1
Model 2
(Kuadratik 85/95)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai Fungsi pengklasifikasi
0.5 -0.5 -1.5 -2.5 -3.5 -4.5
0 2 4 6 8 10 12 14
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-50 -40 -30 -20 -10 0 10
Model 3
(Kubik 90/85)
Ban Ganda Non Ban Ganda
Nomor Citra Uji Nilai fungsi pengklasifikasi
2.5 -2.5 -7.5 -12.5 -17.5 -22.5 -27.5
0 2 4 6 8 10 12
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-5 -4 -3 -2 -1 0 1
Model 4
(Kuadratik 85/95)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai Fungsi Pengklasifikasi
0.5 -0.5 -1.5 -2.5 -3.5 -4.5
0 2 4 6 8 10 12 14
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-7 -6 -5 -4 -3 -2 -1 0 1
Model 5
(Kuadratik 85/85)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai Fungsi Pengklasifikasi
0.5 -0.5 -1.5 -2.5 -3.5 -4.5 -5.5 -6.5
0 1 2 3 4 5 6 7
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5
Model 6
(RBF-8 90/90)
Ban Ganda Non Ban Ganda
Nomor Citra Uji Nilai fungsi pengklasifikasi
0.25 -0.25 -0.75 -1.25 -1.75 -2.25 -2.75 0
1 2 3 4 5 6 7 8 9
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1
Model 7
(RBF-8 85/95)
Ban Ganda Non Ban Ganda
Nomor Citra Uji Nilai Fungsi Pengklasifikasi
0.75 0.25 -0.25 -0.75 -1.25 -1.75 -2.25 -2.75 0
1 2 3 4 5 6 7 8 9 10
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-2.5 -2 -1.5 -1 -0.5 0 0.5 1
Model 8
(RBF-5 90/85)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai Fungsi Pengklasifikasi
0.25 -0.25 -0.75 -1.25 -1.75 -2.25
0 2 4 6 8 10 12 14
Ban Ganda Non Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5
Model 9
(RBF-5 85/90)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai Fungsi Pengklasifikasi
0.25 -0.25 -0.75 -1.25 -1.75 -2.25 -2.75 -3.25 0
1 2 3 4 5 6 7 8
Non Ban Ganda Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 4. (Lanjutan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1
Model 10
(RBF-5 85/85)
Ban Ganda Non Ban Ganda
Nomor Citra Uji
Nilai fungsi pengklasifikasi
0.25 -0.25 -0.75 -1.25 -1.75 -2.25 -2.75 -3.25 0
1 2 3 4 5 6 7 8 9 10
Non Ban Ganda Ban Ganda
Nilai fungsi pengklasifikasi
Frekwensi
Lampiran 5.
Screen-shot Perangkat Lunak Pendeteksi Ban Ganda