3.2.4 Rangkaian komunikasi data Serial USB to TTL
Kabel USB to TTL merupakan salah satu jenis kabel untuk menghubungkan mikrokontroler ke komputer. USB to TTL sebagai converter dalam komunikasi
data antara mikrokontoler dengan komputer. Berikut rangkaian sistematik pada USB to TTL.
Gambar 3.3 Rangkaian USB to TTL
3.2.5 Servo MG996R
Motor servo terhubung pada PortB.0 pada rangkaian mikrokontroler. Motor servo mempunyai tiga masukan yaitu input, Vcc dan Ground. Jika mikrokontroller di
berikan logika 1 high pada salah satu inputan motor servo maka motor servo tidak berkerja sedangkan jika mikrokontroler diberikan logika 0 low maka servo
berkerja sesuai fungsi yang dibutuhkan.
Gambar 3.4 kaki-kaki motor servo
Spesifikasi motor servo : • Dimensi: 40.7 x 19.7 x 42.9 mm approx.
• Kekeatan putaran: 9.4 kgf·cm 4.8 V , 11 kgf· cm 6 V • Kecepatan pengoperasian: 0.17 s60º 4.8 V, 0.14 s60º 6 V
• tegangan volt: 4.8 V a 7.2 V
Motor servo dikendalikan dengan memberikan sinyal modulasi lebar pulsa Pulse Wide Modulation PWM melalui kabel kontrol. Lebar pulsa sinyal kontrol yang
diberikan akan menentukan posisi sudut putaran dari poros motor servo. Sebagai contoh, lebar pulsa dengan waktu 1,5 ms mili detik akan memutar poros motor
servo ke posisi sudut 90 ⁰. Bila pulsa lebih pendek dari 1,5 ms maka akan berputar
ke arah posisi 0 ⁰ atau ke kiri berlawanan dengan arah jarum jam, sedangkan bila
pulsa yang diberikan lebih lama dari 1,5 ms maka poros motor servo akan berputar ke arah posisi 180
⁰ atau ke kanan searah jarum jam. Lebih jelasnya perhatikan gambar dibawah ini.
Gambar 3.5 Bentuk sinyal pulsa motor servo
3.3 Flowchart proses pelatihan
Start
Melakukan proses Perhitungan Eigenface Mengaktifkan webcam untuk menampilkan
gambar yang berada di depan webcam tersebut
Menampilkan citra wajah yang berhasil diambil dari webcam
Simpan citra wajah ?
END
YA TIDAK
Menyimpan citra wajah, nilai eigen dan Nama.
Gambar 3.6 Flowchart proses pelatihan
3.4 Flowchart proses pengenalan
Start
Mengaktifkan webcam untuk menampilkan gambar yang berada di depan webcam
tersebut
Menampilkan citra wajah yang berhasil diambil dari webcam
END
YA
Melakukan proses perhitungan Eigenface
Menghitung jarak Euclidean antara citra wajah tersebut dengan citra wajah yang terdapat di
dalam database
Jarak Euclidean terkecil ?
TIDAK
Data Cocok
Pintu di buka
Gambar 3.7 Flowchart proses pengenalan
3.5 Perancangan software 3.5.1 Komponen Sistem
Sistem pengenalan wajah ini terdiri dari beberapa komponen yang dapat digambarkan dalam suatu model seperti gambar berikut:
Image capturing
User interface
Sub system Pengenalan wajah
Database File wajah
Gambar 3.8 Hubungan antar subsistem Keterangan :
a. Komponen Image Capturing berfungsi untuk melakukan mekanisme
pengambilan citra wajah dengan media webcam, baik saat proses penyimpanan file citra wajah maupun saat proses pengenalan wajah.
b. Komponen Interface berfungsi untuk menghubungkan komunikasi antara
system dengan user, baik saat proses penyimpanan file citra wajah maupun saat proses pengenalan wajah.
c. Subsistem Pengenalan wajah merupakan pengenalan wajah dilakukan
dengan mencocokan citra wajah yang dicapture pada saat verifikasi
Database Citra wajah
Webcam Normalisasi
image Kalkulasi
Eigen
Proses Matching
Jarak eucladian
terkecil Kalkulasi eigen
vector Eigen
value Eigen
Vector
Gambar 3. 9 Langkah-langkah proses identifikasi wajah
Keterangan bagan : a.
Citra wajah di-capture menggunakan webcam. Hasil dari capturing ini hasil file gambar yang bertipe.jpg
b. Citra wajah ini kemudian dinormalisasi dengan beberapa tahap. Pertama,
citra diturunkan kualitas warnanya menjadi grayscale. Ukuran dari citra wajah juga diseragamkan, menjadi berukuran 80x80 pixel.
c. Setelah didapatkan citra wajah yang ternormalisasi hitung nilai eigen dari
citra wajah tersebut, misalnya dipeoleh nilai µ. d.
Dari koleksi citra wajah yang ada di database, masing-masing citra dikalkulasi nilai eigennya dan dikumpulkan dalam vector yang dinamakan
eigenvector. Misalkan kita mendapatkan nilai �
1
, �
2
, �
3
, … �
�
. e.
Proses matching dilakukan dengan mencocokaan nlai x dengan nilai-nilai pada eigenvector dan mencari nilai yang paling mendekati.
f. Jika nilai yang paling mendekati sudah ditemukan, cari data user yang
bersesuaian dengan nilai tadi.
Untuk proses perhitungan eigenface dari image pada langkah tiga, penjelasannya sebagai berikut:
1. Buat Himpunan image S dari total M training_image, dimana setiap image adalah p x q piksel.
Misal di dalam himpunan image terdapat tiga image ukuran 3 x 3 piksel maka:
Image 1 Image 2
Image 3
� 4
3 1
4 2
� � 2
2 1
3 2
4 � �
1 4
2 2
3 �
2. Cari nilai tengah atau mean Ψ
Ψ = 1
3 � Γ
�
= 1
3 ��
4 3
1 4
2 � + �
2 2
1 3
2 4
� + � 1
4 2
2 3
��
3 �=1
Ψ = 1
3 �
1 3
2 2
3 2
� 3. Cari selisih
Ф antara training image Γ
i
dengan nilai tengah Ψ, apabila
ditemukan nilai dibawah nol ganti nilainya dengan nol.
Φ
1
= Γ
1
− Ψ = � 4
3 1
4 2
� − � 1
3 2
2 3
2 � = �
1 1
1 �
Φ
2
= Γ
2
− Ψ = � 2
2 1
3 2
4 � − �
1 3
2 2
3 2
� = � 1
1 1
�
Φ
3
= Γ
3
− Ψ = � 1
4 2
2 3
� − � 1
3 2
2 3
2 � = �
1 �
4. Hitung nilai matriks kovarian C
� = 1
� � Φ
�
Φ
� �
� �=1
� = ��
�
� = [Φ
1
, Φ
2
, … , Φ
M
] � = ��
�
, dimana �
�,�
= Φ
�
Φ
� �
� =
⎝ ⎜
⎜ ⎜
⎜ ⎜
⎛ �
1 1
1 1
1 1
1 �
⎣ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎡ 1
1 1
1 1
1 1
1 0⎦
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎤
⎠ ⎟
⎟ ⎟
⎟ ⎟
⎞
� = � 4
2 1
2 3
1 1
1 1
� 5. Cari nilai eigenvalue
λ dan eigenvector v � � � = � � �
� � � = �� � �
� − �� = 0 ���� �� − � = 0
maka eigenvalue λ dapat dihitung,
det
�� − � = 0
= � �
1 1
1 � − �
4 2
1 2
3 1
1 1
1 � = �
� − 4 2
1 2
� − 3 1
1 1
� − 1 �
akan dihasilkan nilai � = 1, ��� � = 4
� = � �
1
�
2
�
3
�
eigenvector v dihasilkan dengan mensubtitusikan nilai eigenvalue λ kedalam
persamaan �� − �� = 0
untuk � = 4, maka �
4 − 2
2 1
2 4
− 3 1
1 1
4 − 1
� � �
1
�
2
�
3
� = � �
� 2
2 1
2 1
1 1
1 3
� � �
1
�
2
�
3
� = � 2
�
1
2 �
2
1 �
3
2 �
1
1 �
2
1 �
3
1 �
1
1 �
2
3 �
3
� = � �
dihasilkan eigenvector �
1 −1
� ��� � −3
1 �
untuk � = 1, maka �
1 − 2
2 1
2 1
− 3 1
1 1
1 − 1
� � �
1
�
2
�
3
� = � �
� −1
2 1
2 −2 1
1 1
� � �
1
�
2
�
3
� = � −�
1
2 �
2
�
3
2 �
1
−2�
2
�
3
�
1
�
2
� = � �
Dihasilkan eigenvector �
1 1
�
sehingga eigenvector yang dihasilkan dari matriks L adalah �
1 −3 1
−1 1
1 �
6. Cari nilai eigenface µ
�
�
= � �
��
Φ
� �
�=1
�
1
= �. Φ
1
= �
1 −3 1
−1 1
1 � �
1 1
1 � = �
−2 1
−1 −1 1
�
�
2
= �. Φ
2
= �
1 −3 1
−1 1
1 � �
1 1
1 � = �
−2 0 −3 −1 0
1 1
�
�
3
= �. Φ
3
= �
1 −3 1
−1 1
1 � �
1 � = �
1 −1 0
�
Untuk proses matching image pada langkah lima, penjelasannya sebagai berikut: 1.
Cari nilai eigenface image baru Γ
���
yang akan dikenali
a. Cari selisih Ф antara test face Γ
���
dengan nilai tengah Ψ, apabila
ditemukan nilai dibawah nol ganti nilainya dengan nol.
Misal test Γ
���
terdiri dari matriks 3x3 :
� 2
6 5
1 3
1 �
Φ
���
= �
2 6
5 1
3 1
� − � 1
3 2
2 3
2 � = �
1 3
3 1
1 �
b. Cari nilai eigenface dari test face Γ
���
�
���
= �. Φ
���
�
���
= �
1 −3 1
−1 1
1 � �
1 3
3 1
1 � = �
2 3
2 −3 −3
1 �
2. Gunakan Euclidean Distance untuk mencari selisih terkecil antara eigenface training image
Γ
�
dalam database dengan eigenface test face Γ
���
. �
�
= || Ω − Ω
���
||
�
1
= �|Ω
1
− Ω
���
| � = ��
−2 1
−1 −1 1
� − � 2
3 2
−3 −3 1
�� = 16
�
2
= �|Ω
2
− Ω
���
| � = ��
−2 0 −3 −1 0
1 1
� − � 2
3 2
−3 −3 1
�� = 20
�
3
= �|Ω
3
− Ω
���
| � = ��
1 −1 0
� − � 2
3 2
−3 −3 1
�� = 12 karena jarak distance eigenface image 3 dengan eigenface test face yang paling
kecil, maka hasil identifikasi menyimpulkan bahwa test face lebih mirip dengan image 3 daripada image 1 atau image 2.
3.6 Perancangan antar muka
Tujuan akhir dari perancangan sistem adalah pembuatan program yang dapat dijalankan dan sesuai dengan yang dibutuhkan oleh sistem. Dalam perancangan
program, perancangan antarmuka merupakan hal yang sangat penting agar memudahkan perancang menyelesaikan programnya.
3.6.1 Rancangan tampilan Log in
Dalam Sistem Pengenalan Wajah yang dirancang, sebelum user diarahkan ke form utama, terlebih dahulu sistem akan melakukan loading semua eigenface wajah
yang ada dalam database wajah, manfaat dari proses loading image wajah dari database adalah untuk mengurangi beban sistem saat proses matching image
berlangsung. Rancangan tampilan untuk form dimana sistem melakukan loading eigenface wajah dapat dilihat pada Gambar 3.10
Image User name
Password
OK Cancel
Welcome to Security Face Recognition
Gambar 3.10 Loading image
3.6.2 Rancangan Form Pelatihan citra wajah
Rancangan yang diperlihatkan selanjutnya adalah rancangan halaman untuk proses pelatihan citra wajah. Rancangan halaman proses pelatihan wajah
menampilkan objek yang ditangkap oleh webcam dan selanjutnya sistem akan mendeteksi dan mengambil bagian wajah dan selanjutnya mencari nilai-nilai yang
akan dibutuhkan dalam proses pengenalan. Setiap hasil pelatihan citra wajah tersebut akan disimpan ke dalam database beserta identitas diri dari citra wajah
yang bersangkutan. Rancangan halaman proses pelatihan wajah dapat dilihat pada Gambar 3.11.
Nama
Tambah Hapus
Nama
Save
Capture Kamera
Daftar Pengguna Data Pengguna
Foto Pengguna
Pengguna
Gambar 3.11 Pelatihan citra wajah
3.6.3 Rancangan tampilan proses pengenalan wajah
Rancangan halaman selanjutnya adalah rancangan halaman yang digunakan untuk proses pengenalan wajah. Rancangan halaman proses pengenalan wajah
menampilkan objek yang ditangkap oleh webcam dan kemudian sistem mengambil bagian wajah dari objek tersebut dan mencari nilai-nilai yang
diperlukan untuk mengenali wajah tersebut. Rancangan halaman proses pengenalan wajah dapat dilihat pada Gambar 3.12
Kamera Data Pegguna
Foto Pengguna
Capture Batal
Deteksi Wajah
X
Gambar 3.12 proses pengenalan wajah
3.7 Rangkaian lengkap
Motor servo MG966R
+5v
in
USB TTL
1
2
.3 .2
.1
USB
PC
Monitor
webcam Face
Recognizing
Gambar 3.13 Rangkaian lengkap
BAB 4 HASIL DAN PEMBAHASAN
4.1 Pengujian Alat
Rangkaian pengujian alat secara keseluruhan dimuat pada lampiran 3.
4.1.1 Pengujian mikrokontroler Pengujian pada rangkaian mikrokontroler bertujuan untuk memastikn
mikrokontroler berfungsi dengan baik. Pegujian dilakukan pada port PA0 ADC0 yang digunakan sebagai masukan tegangan dari rangkaian penguat sinyal, PD0
RXD dan PD1 TXD masing-masing sebagai jalur komunikasi data serial dengan PC melalui USB to TTL dengan percobaan menghidupkan LED pada port
yang digunakan . Pengujian dilakukan dengan menginput Listing program berikut ke mikrokontroler ATMega 8535.
include mega8535 h masukkan mikro ATMega yang digunakan includedelay h masukkan waktu tunda
Void main{void} {
PORTA-0x00; DDRA-0x00;
PORTD-0x00; DDRD-0x00;
While I {
PORTA-1x01; PORTD-0x03;
delay_ms500; delay 500msec }
}
4.1.2 Pengujian Motor servo