Gambar 4.6. Gambar Subrutin Proses Perhitungan Kotak Pendeteksi Dalam proses ini, search window ini digunakan untuk mendeteksi wajah ketika wajah telah
tampil di layar monitor pada saat program di jalankan. Search window ini akan bergerak mengikuti gerakan wajah. Diawali dengan mengambil nilai biner yang diperoleh dari hasil
substract antara grayscale dan hue, kemudian dilakukan pencarian luasan object dari nilai biner tersebut. Setelah mendapatkan luasan object, langkah selanjutnya yaitu mencari center
of mesh titik tengah pada proses ini dalam mencari titik tengah menggunakan persamaan 2.2. Ketika nilai tengah telah diperoleh maka langkah selanjutnya yaitu membuat kotak
pendeteksi search window dengan persamaan 2.3. Hasil dari proses ini dapat dilihat pada gambar 4.7.
Gambar 4.7. Hasil Akhir Subrutin Kotak Pendeteksi
4.2.6. Hasil dan Pembahasan Program Utama
Pada pengujian program utama, dipastikan terlebih dahulu bahwa kamera akan mengambil gambal dengan latar belakang hitam. Setelah semua media telah siap maka
langkah selanjutnya adalah mengeksekusi program utama. Di dalam program utama berisi pengaturan untuk menghubungkan matlab dengan webcam, pengaturan interval video dan
frame yang akan di ambil, dan gabungan dari subrutin yang telah dibuat. Hasil akhir dan program utama iniakan menampilkan kotak pendeteksi pada wajah, seperti yang terdapat
pada gambar 4.8.
imaqhwinfo [camera_name, camera_id, format] = getCameraInfoa
Menjalankan video dengan inputan camera yang digunakan video_input = videoinputwinvideo,1,YUY2_320x240;
vid = videoinputcamera_name, camera_id, format; Memasukan properti video yang dibutuhkan
setvideo_input, FramesPerTrigger, Inf; setvideo_input, ReturnedColorspace, rgb
video_input.FrameGrabInterval = 5; Mulai menjalankan video
startvideo_input Mengatur perulangan frame setelah mencapai 1000 frame
whilevideo_input.FramesAcquired=1000 Mengambil hasil gambar dari frame
data_hasil_capture = getsnapshotvideo_input; hue=rgbkehuedata_hasil_capture;
maxhue=maxmaxhue; hue=huemaxhue;
data2=rgbkegraydata_hasil_capture; data2=doubledata2255;
Mendeteksi wajah yang telah direkam oleh webcam diff_im = imkurangdata2,hue;
Menggunakan median filter untuk mengurangi noise difff_im = medfilt2diff_im, [3 3];
Mengkonveri gambar dari grayscale ke dalam bentuk biner diff_im = imkebwdiff_im,0.45;
Menghilangkan pixel yang kurang dari 300 diff_im = bwareaopendiff_im,300;
Menghubungkan hasil gambar yang telah di konversi. bw = bwlabeldiff_im, 8;
Mulai menganalisis gambar. [bb,bc]=hmomenbw;
Menampilkan gambar imshowdata_hasil_capture
hold on Proses memberikan kotak pendeteksi pada wajah yag telah terdeteksi
wwebcam. rectanglePosition,bb,EdgeColor,r,LineWidth,2;
plotbc1,bc2, -m+ a=textbc1+15,bc2, strcatX: , num2strroundbc1, Y:
, num2strroundbc2; seta, FontName, Arial, FontWeight, bold, FontSize, 12,
Color, yellow;
hold off end
Memberhentikan video yang telah diakusisi. stopvideo_input;
Gambar 4.8 Program Utama Proses Pendeteksian Wajah.