• Tidak ada hasil yang ditemukan

BAB IV ANALISIS DAN PEMBAHASAN

4.1. Pengujian Program Pengenalan Kepingan Huruf Plat Nomor Kendaraan Bermotor

4.1.1. Home

Gambar 4.1 Tampilan Home

Gambar 4.1 merupakan jendela yang muncul pertama kali saat user menjalankan program. Tampilan home terdiri dari 2 push button dan 4 menu editor. Tombol Mulai adalah untuk memulai program pengenalan huruf sedangkan tombol keluar adalah untuk mengakhiri program pengenalan huruf. Menu home adalah menu yang akan menampilkan tampilan home. Menu pengenalan adalah menu yang akan menampilkan program tampilan pengenalan. Menu bantuan adalah menu yang akan menampilkan langkah–langkah pengoperasian program. Menu tentang adalah menu yang menampilkan informasi tentang pembuat program.

a. Tombol Mulai

Tombol mulai adalah tombol untuk memulai program pengenalan huruf, apabila tombol tersebut ditekan maka akan muncul figure tampilan huruf. Jika tombol Mulai ditekan maka akan menjalankan perintah program berikut :

delete(figure(tampilan_awal)); figure(tampilan_huruf);

Berdasarkan hasil pengujian tombol mulai dapat berjalan dengan baik. Tombol dapat menghapus jendela home dan kemudian menampilkan jendela pengenalan.

b. Tombol Keluar

Tombol Keluar adalah tombol untuk mengakhiri program pengenalan huruf, apabila tombol tersebut ditekan maka akan keluar. Jika tombol keluar ditekan maka akan menjalankan perintah program berikut :

delete(figure(tampilan_awal));

Berdasarkan hasil pengujian tombol keluar dapat berjalan dengan baik. Tombol dapat mengeluarkan program dengan menghapus jendela home.

4.1.2. Pengenalan

Gambar 4.2 Tampilan Pengenalan

Gambar 4.2 menjelaskan tentang tampilan pengenalan dari program pengenalan huruf. Tampilan pengenalan jendela yang berisi tentang proses pengenalan huruf. Tampilan pengenalan ada sedikit perubahan minor dari perancangan awal, perubahannya adalah penambahan tombol reset. Di dalam jendela ini yang diproses dengan menggunakan perintah program adalah 4 push button, 2 pop–up menu, 3 axes dan 2 static text. Tombol video on berfungsi untuk menghidupkan kamera ke axes 1. Tombol capture berfungsi untuk mengambil citra kepingan plat yang akan diproses dan akan tertampil ke dalam axes 1 juga. Tombol pengenalan berfungsi untuk melakukan proses pengenalan, proses yang terjadi di dalam tombol pengenalan antara lain adalah preprocessing, ekstrasi ciri, fungsi

jarak dan penentuan hasil pengenalan. Pop–up menu yang pertama berisi tentang berbagai ukuran tapis Gaussian 2D yaitu 4×4, 8×8, 12×12 dan 16×16. Pop–up menu yang kedua berisi tentang berbagai ukuran standar deviasi tapis Gaussian 2D, yaitu 2, 6, 10 dan 14. Axes yang pertama memuat video dan cuplikan citra dari webcam. Axes yang kedua menampilkan hasil pengaburan citra kepingan plat dan axes yang ketiga menampilkan hasil perataan blok citra kepingan plat. Static text berfungsi untuk menampilkan output hasil pengenalan.

Cara mengoperasikan jendela pengenalan adalah terlebih dahulu user menekan tombol video on sehingga didalam axes 1 akan terlihat gambar video kepingan plat. Kemudian user menekan tombol capture untuk mengambil citra kepingan plat yang akan dikenali. Setelah itu user harus memilih ukuran tapis Gaussian 2D dan standar tapis Gaussian 2D. Apabila user tidak melakukan pemilihan tersebut maka program tidak dapat melakukan pengenalan. Setelah itu user menekan tombol pengenalan untuk mengetahui hasil pengenalan citra kepingan plat. Apabila tombol pengenalan ditekan maka pada axes 2 akan terdapat gambar pengaburan citra kepingan plat dan axes 3 akan tertampil gambar perataan blok citra kepingan plat. Kemudian hasil pengenalan akan muncul pada static text hasil pengenalan. Apabila user telah selesai melakukan pengenalan maka dapat ditekan tombol selesai untuk keluar dari program pengenalan.

a. Tombol Video on

Tombol video on berisi tentang program untuk menghubungkan antara webcam dengan Matlab dan kemudian ditampilkan ke dalam program pengenalan. Perintah program pada tombol video on sebagai berikut :

I=imaqhwinfo;

handles.vid=videoinput('winvideo');

vid=videoinput('winvideo',1 ,'RGB24_640x480');

vidRes = get(vid, 'VideoResolution');

imWidth = 640 ; imHeight = 480;

nBands = get(vid, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1);

Perintah program imaqhwinfo adalah perintah program untuk menampilkan informasi yang akan disampaikan oleh webcam dan kemudian informasi tersebut akan kita inisialisasi di dalam program agar antara webcam dengan software Matlab dapat

melakukan komunikasi. Informasi yang tertampil adalah adaptor camera, port webcam, jenis warna dan resolusi piksel.

preview(vid, hImage)

Perintah program preview adalah untuk menampilkan video pada saat kamera on dengan inisialisasi yang telah digunakan.

b. Tombol Capture

Tombol capture adalah tombol yang digunakan untuk mengambil citra kepingan plat yang akan dikenali dalam program pengenalan. Perintah program pada tombol capture adalah sebagai berikut :

imaqhwinfo;

info = imaqhwinfo('winvideo');

dev_info = imaqhwinfo('winvideo',1);

vid=videoinput('winvideo',1,'RGB24_640X480');

vid.FramesPerTrigger = 1 ;

vid.ReturnedColorspace = 'grayscale';

triggerconfig(vid, 'manual');

vidRes = get(vid, 'VideoResolution');

imWidth = 640; imHeight = 480;

nBands = get(vid, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1);

Perintah program di atas adalah sama dengan perintah program pada tombol video on tetapi ditambah perintah grayscale karena pada saat preprocessing citra input harus mengalami proses grayscale.

start(vid); pause(1); trigger(vid); stoppreview(vid); capt1=getdata(vid);

Perintah program getdata adalah untuk capturing citra yang diambil pada saat camera telah on.

handles.a=capt1;

guidata(hObject,handles) axes(handles.axes1); imshow(capt1)

Citra yang telah mengalami capturing maka akan diinisialisasi dengan menggunakan handles. Handles adalah sebuah inisialisasi yang digunakan agar dapat dipanggil dalam file figure maupun file .m .

c. Pop–up menu ukuran tapis Gaussian 2D

Pop–up menu ukuran tapis Gaussian 2D digunakan untuk memilih ukuran tapis mana yang dipakai untuk pengaburan citra kepingan plat yang akan dikenali. Perintah program yang digunakan adalah sebagai berikut :

indeks=get(handles.popupmenu1,'Value'); switch indeks case 1 ukuran=4; case 2 ukuran=8; case 3 ukuran=12; case 4 ukuran=16; end handles.ukuran=ukuran; guidata(hObject,handles)

d. Pop–up menu standar deviasi tapis Gaussian 2D

Pop–up menu standar deviasi tapis Gaussian 2D digunakan untuk memilih standar deviasi mana yang dipakai untuk pengaburan citra kepingan plat yang dikenali. Perintah programnya sebagai berikut :

indeks=get(handles.popupmenu2,'Value'); switch indeks case 1 std=2; case 2 std=6; case 3 std=10; case 4 std=14; end handles.std=std; guidata(hObject,handles);

e. Tombol Pengenalan

Tombol pengenalan adalah tombol yang berfungsi untuk melakukan pengenalan mulai dari preprocessing, ekstrasi ciri, jarak Euclidean dan hasil penentuan pengenalan. Perintah program yang digunakan adalah sebagai berikut :

a=handles.a;

b=imcrop(a,[222 141 115 143]); x=imresize(b,[64 64]);

Perintah program imcrop adalah untuk memotong gambar yang tidak dibutuhkan dalam proses ekstrasi ciri. Perintah program imresize adalah untuk membuat citra input agar berukuran piksel 64×64, hal ini dilakukan karena ekstrasi ciri pengaburan dan perataan blok hanya bisa dilakukan dengan citra yang mempunyai ukuran piksel 64×64. ukuran=handles.ukuran;

std=handles.std;

if (ukuran==4) &(std==2)

LPF=fspecial('gaussian',[4,4],2);

elseif (ukuran==4) &(std==6)

LPF=fspecial('gaussian',[4,4],6);

elseif (ukuran==4) &(std==10)

LPF=fspecial('gaussian',[4,4],10);

elseif (ukuran==4) &(std==14)

LPF=fspecial('gaussian',[4,4],14);

elseif (ukuran==8) &(std==2)

LPF=fspecial('gaussian',[8,8],2);

elseif (ukuran==8) &(std==6)

LPF=fspecial('gaussian',[8,8],6);

elseif (ukuran==8) &(std==10)

LPF=fspecial('gaussian',[8,8],10);

elseif (ukuran==8) &(std==14)

LPF=fspecial('gaussian',[8,8],14);

elseif (ukuran==12) &(std==2)

LPF=fspecial('gaussian',[12,12],2);

elseif (ukuran==12) &(std==6)

LPF=fspecial('gaussian',[12,12],6);

elseif (ukuran==12) &(std==10)

LPF=fspecial('gaussian',[12,12],10);

elseif (ukuran==12) &(std==14)

LPF=fspecial('gaussian',[12,12],14);

LPF=fspecial('gaussian',[16,16],2);

elseif (ukuran==16) &(std==6)

LPF=fspecial('gaussian',[16,16],6);

elseif (ukuran==16) &(std==10)

LPF=fspecial('gaussian',[16,16],10);

elseif (ukuran==16) &(std==14)

LPF=fspecial('gaussian',[16,16],14);

end

Perintah program diatas adalah untuk mengeksekusi pilihan yang telah dipilih user dalam pemilihan pop–up menu. Apabila user telah memilih 2 pop-up menu maka program akan menjalankan fungsi low pass filter atau pengaburan sesuai pilihan user.

[o,y]=gui_eciri(x,LPF); mo=max(o(:)); o=o/mo; my=max(y(:)); y=y/my; axes(handles.axes2) imshow(o); axes(handles.axes3) imshow(y); y=y(:);

Perintah program gui_eciri adalah untuk memanggil fungsi ektrasi ciri. Fungsi ekstrasi ciri mempunyai masukan x dan LPF. X adalah citra input dan LPF adalah hasil dari pilihan pop–up menu. Output dari fungsi gui_eciri adalah o dan y. O adalah hasil dari pengaburan dan y adalah hasil dari perataan blok. Hasil dari fungsi gui_eciri ditampilkan dalam imshow yang terlebih dahulu diinisialisasi melalui handles.axes .

if (ukuran==4) &(std==2)

load xciri0402;

elseif (ukuran==4) &(std==6)

load xciri0402;

elseif (ukuran==4) &(std==10)

load xciri0410;

elseif (ukuran==4) &(std==14)

load xciri0414;

elseif (ukuran==8) &(std==2)

load xciri0802;

elseif (ukuran==8) &(std==6)

elseif (ukuran==8) &(std==10)

load xciri0810

elseif (ukuran==8) &(std==14)

load xciri0814

elseif (ukuran==12) &(std==2)

load xciri1202

elseif (ukuran==12) &(std==6)

load xciri1206;

elseif (ukuran==12) &(std==10)

load xciri1210;

elseif (ukuran==12) &(std==14)

load xciri1214;

elseif (ukuran==16) &(std==2)

load xciri1602;

elseif (ukuran==16) &(std==6)

load xciri1606;

elseif (ukuran==16) &(std==10)

load xciri1610;

elseif (ukuran==16) &(std==14)

load xciri1614;

end

mz=max(z(:)); z=z/mz;

Perintah program diatas adalah untuk mengeluarkan database yang akan dibandingkan dalam perhitungan jarak. Pengeluaran database pembanding menyesuaikan pemilihan pop–up menu yang telah dipilih oleh user.

for n=1:26

r(n)=jarak(y,z(:,n));

end

Perintah program di atas adalah perintah untuk menghitung jarak antara citra input dengan citra database.

mm=min(r)

Perintah program di atas adalah untuk mencari nilai minimum dari perhitungan jarak Euclidean.

if (ukuran==4) &(std==2)

if (mm > 0.96)

y1=('TIDAK DIKENALI');

set(handles.text15,'string',y1);

b1=find(min(r)==r)

x2={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O',

'P','Q','R','S','T','U','V','W','X','Y','Z'}; y1=x2(b1);

set(handles.text14,'string',y1);

end

else

b1=find(min(r)==r);

x2={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P'

,'Q','R','S','T','U','V','W','X','Y','Z'}; y1=x2(b1);

set(handles.text14,'string',y1);

end

Perintah program di atas adalah untuk menentukan hasil pengenalan program. Hasil pengenalan program terdiri dari 2 macam yaitu “TIDAK DIKENALI” dan mencari nilai paling minimum dari 26 nilai yang telah diinisialisasi. Berdasarkan pengujian tombol, tombol pengenalan dapat berjalan dengan baik dan sesuai dengan perancangan.

f. Tombol selesai

Tombol selesai adalah tombol yang digunakan apabila user ingin keluar dari program pengenalan citra kepingan plat hruf. Perintah programnya adalah sebagai berikut :

delete(figure(tampilan_huruf));

Berdasarkan pengujian tombol, tombol pengenalan dapat berjalan dengan baik dan sesuai diagram blok pada saat perancangan.

g. Tombol Reset

Tombol reset adalah tombol yang digunakan apabila user ingin mengembalikan ke tampilan awal program pengenalan. Perintah programnya sebagai berikut :

delete(figure(tampilan_huruf)); figure(tampilan_huruf));

4.1.3. Bantuan

Gambar 4.3 Tampilan Bantuan

Pada Gambar 4.3 tampilan bantuan menjelaskan tentang langkah–langkah dalam mengoperasikan program agar user tidak kesulitan ketika menjalankan program pengenalan.

Berdasarkan pengujian, tombol pada tampilan bantuan dapat berjalan dengan baik dan sesuai perancangan.

4.1.4. Tentang

Pada Gambar 4.1 tampilan tentang menjelaskan tentang informasi pembuat program serta spesifikasi komputer yang dapat digunakan untuk menjalankan program pengenalan.

Berdasarkan pengujian, tombol pada tampilan tentang dapat berjalan dengan baik dan sesuai perancangan.

4.1.5. Menu Editor

Gambar 4.5 Tampilan menu editor

Pada Gambar 4.5 menu editor menunjukkan sebuah menu yang terdapat dalam setiap jendela yang ada di program pengenalan. Menu editor berfungsi untuk memudahkan user agar dapat melompat ke jendela yang lain.

Kesimpulan yang dapat diambil dari hasil pengujian adalah semua fasilitas tombol dan menu editor dalam program pengenalan dapat berjalan dengan baik dan alur program telah sesuai dengan perancangan.

4.2 Hasil Pengujian Program Pengenalan Terhadap Tingkat Pengenalan Citra

Dokumen terkait