8
BAB 2
LANDASAN TEORI
2.1
Teori Umum
2.1.1
Citra
Berikut adalah beberapa definisi dari citra, antara lain:
Rupa,  gambar,  gambaran (Kamus Besar Bahasa Indonesia).
Fungsi dua dimensi, f(x, y), di mana x
dan y adalah koordinat-koordinat spasial
(bidang), dan amplitude dari
f
pada setiap pasang koordinat (x, y)
disebut
intensitas atau tingkat keabuan pada titik (Gonzalez & Woods, 2002, p. 1).
Citra adalah suatu representasi dari objek nyata ke dalam gambar digital yang dapat
dikenali oleh komputer. Citra tersebut dapat menjadi masukan atau input
ke dalam
komputer yang akan diproses menjadi keluaran atau output yang diinginkan.
2.1.2
Pengolahan Citra
Pengolahan citra (image processing) merupakan bidang yang berhubungan
dengan proses transformasi citra yang bertujuan untuk mendapatkan kualitas citra
yang lebih baik (Fairhurst, 1988, p. 5).
Pengolahan citra perlu dilakukan sebelum melakukan proses deteksi atau
pengenalan citra wajah dalam penelitian ini. Hal ini dimaksudkan untuk
mendapatkan kualitas citra yang lebih baik sehingga dapat mempermudah dan
meningkatkan keakuratan sistem dalam melakukan pendeteksian dan pengenalan.
2.1.3
Computer Vision
Computer vision
adalah ilmu yang bertujuan untuk mendiskripsikan dunia
dalam bentuk satu atau lebih citra dan melakukan rekonstruksi properti-properti yang
ada seperti bentuk, iluminasi, dan distribusi warna (Szeliski, 2011, p. 3).
  
9
Computer vision
merupakan hasil gabungan dari pengolahan citra dan
pengenalan pola. Pengenalan wajah merupakan bagian dari computer vision.
2.1.4
Rekayasa Perangkat Lunak
Perangkat Lunak merupakan program-program komputer dan dokumentasi
yang berkaitan. Produk perangkat lunak dibuat untuk pelanggan tertentu ataupun
untuk pasar umum terdiri dari: 
Generik – dibuat untuk dijual ke suatu kumpulan pengguna yang berbeda 
Bespoke
(custom) –
dibuat untuk suatu pengguna tunggal sesuai dengan
spesifikasinya. 
Rekayasa perangkat lunak berasal dari 2 kata yaitu Software (Perangkat
Lunak) dan Engineering (Rekayasa). 
Perangkat Lunak (Software) adalah source code
pada suatu program atau
sistem. Perangkat lunak tidak hanya dokumentasi terhadap source code
tapi juga
dokumentasi terhadap sesuatu yang dibutuhkan selama pengembangan, instalasi,
penggunaan dan pemeliharaan sebuah sistem. 
Engineering atau Rekayasa adalah aplikasi terhadap pendekatan
sistematis
yang berdasar atas ilmu pengetahuan dan matematis serta aplikasi tentang produksi
terhadap struktur,mesin, produk, proses atau sistem. 
Secara umum, rekayasa perangkat lunak mengadopsi pendekatan sistematik
dan terorganisir ke pekerjaan mereka,
karena ini adalah cara yang paling efektif
untuk menghasilkan perangkat lunak dengan kualitas tinggi. Namun, rekayasa adalah
semua tentang memilih metode yang paling sesuai untuk kumpulan keadaan
sehingga lebih kreatif, pendekatan kurang formal untuk pengembangan mungkin
efektif untuk beberapa keadaan.
  
10
2.1.4.1 Rapid Application Development
Gambar 2.1 Proses Rapid Application Development (RAD)
Rapid Aplication Development (RAD) adalah sebuah proses perkembangan
perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang
sangat pendek. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan
tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu
yang sangat pendek (kira-kira
60 sampai 90 hari). Karena dipakai terutama pada
aplikasi sistem konstruksi, pendekatan RAD melingkupi fase-fase
(Nugroho,
Ratnasari, Ramadhani, & Putro, 2009):
Bussiness modeling. Aliran informasi diantara fungsi-fungsi bisnis
dimodelkan dengan suatu cara untuk menjawab pertanyaan-pertanyaan berikut :
Informasi apa yang mengendalikan proses bisnis? Informasi apa yang
dimunculkan? Siapa yang memunculkannya? 
Ke mana informasi itu pergi? Siapa
yang memprosesnya?
Data modeling. Aliran informasi yang didefinisikan sebagai bagian dari fase
bussiness modeling disaring ke dalam serangkaian objek data yang dibutuhkan untuk
menopang bisnis tersebut. 
  
11
Proses modeling. Aliran informasi yang didefinisikan di dalam fase data
modeling ditransformasikan untuk mencapai aliran informasi yang perlu bagi
implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk
menambah, memodifikasi, menghapus atau mendapatkan kembali  objek data.
Aplication generation. RAD mengasumsikan pemakaian teknik generasi
keempat. Selain menciptakan perangkat lunak dengan menggunakan bahasa
pemrograman generasi ketiga yang konvensional, RAD telah banyak memproses
kerja untuk memakai lagi komponen program yang ada atau menciptakan komponen
yang bisa dipakai lagi. 
Testing and turnover. Karena proses RAD menekankan pada pemakaian
kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan
waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih
secara penuh.
Seperti semua proses model yang lain, pendekatan RAD memiliki kekurangan :
Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya
manusia yang memadai untuk menciptakan jumlah tim RAD yang baik
RAD menuntut pengembang dan pelanggan memiliki komitmen di dalam
aktivitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di
dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut
tidak ada dari tiap konstituen, proyek RAD akan gagal. 
2.1.5
Interaksi Manusia dan Komputer (IMK)
Untuk meningkatkan kegunaan pada sebuah aplikasi sangat penting untuk
mempunyai antarmuka yang dirancang dengan baik
(Shneiderman, 2010). Delapan
aturan emas Sheniderman adalah panduan untuk desain interaksi yang baik.
  
12
1.
Berusaha untuk konsisten
Konsisten pada urutan tindakan harus dibutuhkan untuk situasi yang mirip; istilah
yang identik harus digunakan dalam menu dan layar bantuan. 
2.
Memungkinkan penggunaan yang universal
Meningkatnya penggunaan, begitu juga dengan keinginan user untuk mengurangi
jumlah interaksi dan meningkatkan kecepatan interaksi. Diperlukan tombol fungsi,
perintah tersembunyi maupun fasilitas makro.
3.
Memberikan umpan balik yang informatif
Untuk setiap tindakan sebaiknya menyertakan suatu sistem umpan balik. Tindakan
yang tidak terlalu penting cukup diberikan dengan umpan balik yang sederhana.
Sebaliknya ketika tindakan merupakan hal yang penting maka umpan balik sangat
substansial.
4.
Merancang dialog untuk menghasilkan penutupan
Urutan tindakan harus diorganisir dalam urutan awal, tengah dan akhir. Hal ini akan
memberikan indikasi bahwa proses sudah benar dan tepat.
5.
Memberikan pencegahan terhadap kesalahan sederhana
Sedapat mungkin, perancangan sistem sehingga pengguna tidak menghasilkan
kesalahan yang fatal. Jika terjadi kesalahan, sistem harus dapat mendeteksi kesalahan
dan memberikan solusi yang sederhana.
6.
Memungkinkan pembalikan aksi yang mudah
Hal ini mengurangi kekuatiran pengguna untuk mengeksplorasi pilihan-pilihan lain
yang belum biasa digunakan.
7.
Mendukung pusat kendali internal
Operator yang sudah berpengalaman memiliki hasrat yang kuat bahwa mereka ingin
sistem merespon sesuai keinginan mereka.
  
13
8.
Mengurangi beban ingatan jangka pendek
Batas kemampuan mengolah informasi manusia pada jangka waktu pendek
membutuhkan tampilan yang sederhana.
2.1.6
Unified Modeling Language (UML)
UML adalah adalah sebuah kumpulan pada konvensi pemodelan yang
digunakan untuk menspesifikasi atau menggambarkan sebuah sistem perangkat lunak
dalam istilah pada objek (Whitten & Bentley, 2007).
 
Pemodelan sebuah sistem perangkat lunak menggunakan UML dibagi
menjadi 4 kelompok yaitu: use case diagram, activity diagram, class diagram
dan
sequence diagram.
2.1.6.1 Use Case Diagram
Use case
mendeskripsikan fungsi sistem dari perspektif pada pengguna
eksternal dengan cara dan istilah yang dia pahami
(Whitten & Bentley, 2007).
Sebuah use case
merepresentasikan sebuah tujuan tunggal pada sistem dan
menggambarkan sebuah urutan pada aktivitas dan interaksi pengguna untuk mencoba
menyelesaikan tujuannya.
Use case
diinisiasikan oleh pengguna eksternal yang disebut aktor. Seorang
aktor menginisialiasi aktivitas, sebuah use case, untuk tujuan menyelesaikan tugas
bisnis yang membuat sesuatu pada nilai yang terukur.
Sebuah hubungan digambarkan sebagai garis antara dua symbol pada use
case diagram. Berikut jenis hubungan pada use case diagram:
1.
Associations
Hubungan antara seorang aktor dan sebuah use case
ada kapanpun use case
menggambarkan sebuah interaksi diantara mereka.
  
14
Gambar 2.2 Use Case Diagram hubungan associations
2.
Extends
Hubungan antara perluasan use case dengan use case yang diperluas.
Gambar 2.3 Use Case Diagram hubungan extends
3.
Uses atau includes
Sebuah use case ada untuk digunakan oleh use case
lainnya yang membutuhkan
fungsinya.
  
15
Gambar 2.4 Use case diagram hubungan uses atau includes
4.
Depends on
Sebuah use case membutuhkan use case lainnya untuk mencapai tujuannya.
Gambar 2.5 Use case diagram hubungan depends on
  
16
5.
Inheritance
Hubungan yang terjadi ketika dua atau lebih aktor berbagi sebuah use case
yang
sama.
Gambar 2.6 Use case diagram hubungan inheritance
2.1.6.2 Activity Diagram
Activity diagram
adalah sebuah diagram yang dapat digunakan untuk
menggambarkan sebuah aliran pada proses bisnis secara grafik, langkah pada sebuah
use case, atau logika pada sebuah perilaku objek (metode)
(Whitten & Bentley,
2007). Activity diagram digunakan untuk memodelkan langkah proses atau aktivitas
dalam sistem.
  
17
Gambar 2.7 Contoh Activity Diagram
Berikut adalah notasi-notasi yang ada activity diagram:
1.
Initial node
Lingkaran padat yang merepresentasikan awal dari proses.
2.
Actions
Segiempat bulat yang merepresentasikan langkah individual. Urutan pada
langkah membuat total aktivitas ditunjukan oleh diagram.
3.
Flow
Panah pada diagram yang mengindikasikan deret melalui tindakan.
  
18
4.
Decision
Bentuk wajik dengan sebuah jalur datang dan dua atau lebih jalur keluar.
5.
Merge
Bentuk wajik dengan dua atau lebih jalur datang dan sebuah jalur keluar.
6.
Fork
Sebuah batang hitam dengan sebuah jalur datang dan dua atau lebih jalur keluar.
7.
Join
Sebuah batang hitam dengan dua atau lebih jalur datang dan sebuah jalur keluar.
8.
Activity final
Lingkaran padat di dalam lingkaran hampa yang merepresentasikan akhir dari
proses.
2.1.6.3 Class Diagram
Class diagram
adalah sebuah penggambaran grafikal pada sebuah sistem
berstruktur objek statis (Whitten & Bentley, 2007). Class diagram digunakan untuk
menggambarkan objek dan asosiasinya secara grafik.
  
19
Gambar 2.8 Contoh Class Diagram
Jenis hubungan pada class diagram:
1.
Asosiasi
Sebuah objek kelas menunjuk kelas lain dan dapat mengirimkan pesan.
  
20
Gambar 2.9 Jenis hubungan asosiasi
2.
Agregasi
Sebuah objek adalah bagian dari objek lainnya.
Gambar 2.10 Contoh hubungan agregasi
  
21
3.
Generalisasi
Sebuah hubungan yang memiliki kelas supertype
(parent) dan kelas subtype
(child).
Gambar 2.11 Contoh hubungan generalisasi
Atribut pada kelas dan metode diakses oleh kelas lain didefinisikan sebagai berikut:
1.
Public
Disimbolkan dengan (+), atribut dan metode dapat diakses oleh kelas lain.
2.
Protected
Disimbolkan dengan (#), atribut dan metode dapat digunakan oleh kelas lain
ketika atribut dan metode didefinisikan dalam subclass pada kelas tersebut.
3.
Private
Disimbolkan dengan (-), atribut dapat diakses dan metode dapat digunakan hanya
pada kelas dimana atribut atau metode tersebut didefinisikan.
  
22
2.1.6.4 Sequence Diagram
Sequence diagram
adalah sebuah diagram model UML yang memodelkan
logika pada sebuah use case
dengan menggambarkan interaksi pada pesan antara
objek dalam waktu yang berurutan (Whitten & Bentley, 2007).
Gambar 2.12 Contoh sequence diagram
Notasi-notasi pada sequence diagram:
1.
Aktor
Aktor berinteraksi dengan user interface
ditampilkan dengan symbol aktor use
case.
2.
Class interface
Sebuah kotak yang mengindikasikan user interface
kode kelas, dinotasikan
sebagai <<interface>>.
  
23
3.
Controller class
Setiap use case
akan memiliki satu atau lebih controller class, digambarkan
dengan notasi yang sama dengan interface class
dan dinotasikan sebagai
<<controller>>
4.
Entity classes
Menambahkan sebuah kotak untuk setiap
entity
yang dibutuhkan untuk
mengkolaborasikan dalam urutan langkah.
5.
Pesan
Panah horisontal padat mengindikasikan pesan input dikirimkan kepada kelas.
6.
Activation bars
Kotak yang diletakkan pada lifelines
mengindikasikan waktu ketika setiap objek
eksis.
7.
Pesan balik
Pesan balik yang mengindikasikan apakah sebuah proses berhasil.
8.
Pemanggilan diri
Objek memanggil metodenya sendiri.
9.
Frame
Mengindikasikan bahwa controller
diperlukan untuk pengulangan terhadap
seluruh benda.
2.1.7
C#
C# adalah bahasa pemprograman yang dikeluarkan Windows pada tahun
2000 dan dikembangkan untuk menjadi bahasa pemprograman yang sederhana,
modern, bertujuan untuk umum, dan berorientasi objek. C# mempunyai akar dari
bahasa pemprograman C, C++ dan Java, juga memiliki kesamaan kemampuan
dengan Java (Deitel & Deitel, 2012).
  
24
2.1.8
Kinect
Kinect adalah produk dari Microsoft untuk Xbox 360 yang menyediakan
kombinasi beberapa teknologi yang didasarkan pada penggunaan RGB camera,
depth-sensing, dan desain user interface
yang hati-hati. Kinect memiliki sensor
dengan kesamaan akurasi pada kamera dan tersedia dengan tarif yang lebih murah
(Warade, Aghav, Petitpierre, & Udayagiri, 2012). Identifikasi Kinect dilakukan
dengan 2 cara : Biomentric sign-in dan session tracking. Sensor Kinect menyediakan
real-time depth data
dalam mode isochronous. Hal itu untuk melacak gerakan
dengan benar, setiap depth stream harus diproses. Kinect dapat bekerja dalam cahaya
intensitas rendah dan tidak terpengaruh pada perubahan warna. Depth sensing dapat
dilakukan dengan time-of-flight laser sensing atau kombinasi pola cahaya terstruktur
dengan stereo sensing
(Caudell & Mizell, 1992). Sistem yang diusulkan
menggunakan teknik stereo sensing
yang disediakan oleh PrimeSense. Kinect depth
sensing
bekerja dalam real-time
dengan akurasi yang lebih hebat daripada depth
sensing camera yang ada saat ini. Kamera  depth sensing Kinect menggunakan sinar
laser untuk memprediksi jarak antara objek dan sensor.
Gambar 2.13 Microsoft Kinect untuk Xbox 360
  
25
2.2
Teori Khusus
2.2.1
Active Appearance Models (AAM)
Active Apperance Models
(AAM) adalah sebuah template
berbasis statistik
metode pencocokan, dimana variabilitas bentuk dan tekstur ditangkap dari sebuah
perwakilan training set. Principal Component Analysis
(PCA) dalam bentuk dan
tekstur data memungkinkan untuk membuat model parameterisasi wajah yang
menggambarkan penuh dengan kualitas foto sebenarnya wajah yang telah ditraining
seperti tidak terlihat.
Mencocokan model AAM ke wajah target adalah masalah optimasi nonlinear,
dimana perbedaan pada tekstur antara estimasi model sekarang dengan gambar target
dicakup oleh model yang diminimasikan. Mempelajari hubungan antara tekstur
peninggalan dan model parameter memungkinkan untuk membangun sebuah
algoritma Steepest Descent
(SD) yang cepat dan efisien berdasarkan pada matriks
Jacobian
tetap. Selama proses ini, model parameter dievaluasi berulang kali
sehingga dapat menggambarkan kesatuan target.
Active Apperance Model (AAM) adalah evolusi alami dari ASM. AAM
berbeda dari ASM dalam penggunaan tekstur model penuh yang mencakup target.
Sebuah model penuh pada bentuk dan tekstur digunakan untuk dicocokan ke gambar
baru. 
  
26
Gambar 2.14 Proses pembuatan face mask AAM
2.2.1.1 Model Bentuk
Sebuah bentuk harus digambarkan sebagai vektor pada koordinat dari deret
pada titik penanda. Bentuk ini harus diselaraskan ke sebuah kerangka umum, untuk
itu, pendekatan Generalized Procrustes Analysis
(GPA) digunakan. Dengan
memiliki keselarasan data dalam rata-rata umum, variasi bentuk kumpulan data dapat
dipelajari, menganalisa variansinya menggunakan Principal Component Analysis
(PCA). Bentuk akan dimodelkan dengan kumpulan kecil pada parameter.
Penunjuk
Bentuk digambarkan sebagai kumpulan pada titik penanda n didefiniskan
dalam
?
k
, biasanya dalam dua atau tiga dimensi. Bentuk didefinisikan sebagai
kualitas dalam pengaturan pada titik-titik yang tidak variant atas Euclidian Similarity
  
27
transformation. Titik-titik penanda ini dipilih untuk mencocokan batas, vertex, titik
profil, ujung atau fitur lainnya yang menggambarkan bentuk.
Secara matematika, sebuah bentuk didefiniskan sebagai n titik penanda dalam
ruang dimensi k digambarkan oleh vektor nk. Dalam gambar 2D
, penanda n
, mendefinisikan vektor 2n.
Persamaan 1
Perhatikan bahwa tidak ada tanda penghubung informasi diberikan.
Persamaan 1 menunjukan skema tanda penghubung digunakan dalam pekerjaan ini.
Ini adalah skema yang sama yang digunakan dalam menggunakan total dari 87
penanda
untuk menggambarkan bentuk dari wajah manusia.
Dalam bagian berikut digunakan gambar dari database
IMM yang telah
dianotasi.
Gambar 2.15 Skema hubungan penanda
  
28
Dengan bentuk vektor N3
, mengikuti bentuk analisis
statistik pada data ini. Untuk mendapatkan validitas statistik, sangat penting untuk
semua bentuk digambarkan dalam referensi yang sama. Efek lokasi, skala dan rotasi
dihilangkan, menyelaraskan semua bentuk dalam sebuah kerangka umum
menggunakan pendekatan menyelaraskan bentuk.
Bentuk Keselarasan
Keselarasan pada dua bentuk terdiri dalam menemukan kesamaan parameter
(skala, rotasi dan translasi) yang paling cocok satu bentuk ke yang lain dengan
meminimasikan metric
yang diberikan. Solusi klasik pada keselarasan dua bentuk
adalah metode Procrustes Analysis. Itu menyelaraskan bentuk dengan angka yang
sama pada penanda dengan korespondensi titik one-one, yang cukup untuk standar
formulasi AAM. Keselarasan pada banyak bentuk didasari pada menyelaraskan
pasangan bentuk dimana satu dari mereka adalah kerangka referensil.
Prosedur penyelasaran hanya menghilangkan informasi Euclidian Similarity
dari kumpulan data, semua deformasi disebabkan oleh variasi pose, identitas dan
expresi ditahan untuk analisa statistik selanjutnya.
Keselarasan dua bentuk – Procrustes Analysis
Menyelasarkan dua bentuk, x1
menjadi x2
, terdiri untuk menemukan
parameter pada transformasi T, adalah skala, s, rotasi, ? dan translasi,
yang,
ketika diterpakan pada x1 keselarasan terbaiknya dengan x2, meminimasikan metric
jarak Procrustes
  
29
Persamaan 2
dengan memperhatikan ke s, ? dan
.
Langkah pertama adalah menyelaraskan kedua bentuk centroid
dan
dengan menggeser bentuk ke asalnya
Persamaan 3
Perhatikan bahwa parameter
diberikan dengan
. Skala faktor
dinormalisasi dengan menerapkan transformasi Isomorphic
Persamaan 4
Menggambarkan bentuk yang diselaraskan w.r.t skala dan transformasi
sebagai vektor kolom
dan
dan memperkenalkan
matriks rotasi,
Persamaan 5
Perbedaan error, E, setelah rotasi pada
dapat ditulis sebagai
Persamaan 6
Perhatikan bahwa jejak pada
sama dengan jarak Procrustes
pada
persamaan 2.
  
30
Persamaan 7
Meniminasikan jarak Procrustes
adalah masalah yang sama daripada
meminimasi
dengan hubungan dengan rotasi. Matriks optimal rotasi yang
menyelaraskan
ke
, meminimasikan persamaan 7, diberikan dengan
menggunakan Singular Value Decomposition (SVD) pada matriks
, dimana
Persamaan 8
Bentuk lain penyelarasan dapat juga digunakan, sebagai contoh setelah
penyelasaran bentuk centroid, pencarian untuk meminimasi jumlah pada akar jarak
dalam kasus dua dimensi Euclidian
Persamaan 9
Dimana solusinya adalah:
Persamaan 10
Generalized Procrustes Analysis (GPA)
Generalized Procrustes Analysis
(GPA) terdiri
dari pasangan bentuk yang
selaras secara berurutan dengan Procrustes
menggunakan bentuk referensi (bentuk
  
31
rata-rata) dan menyelaraskan yang lain dengannya. Pada mulanya bentuk apapun
dapat dipilih untuk menjadi rata-rata awal. Setelah keselarasan estimasi
baru untuk
rata-rata dihitungkembali dan bentuk diselaraskan ke rata-ratanya ini lagi. Prosedur
ini ditampilkan berulang kali sampai bentuk rata-rata tidak berubah secara signifikan
tanpa iterasi. 
Biasanya proses ini bertemu dalam dua iterasi. Gambar 2.16
menunjukan
hasil dari prosedur keselarasan. Bagian kiri gambar menunjukan kumpulan data
training mentah dan bagian kanan data yang telah berkoresponden.
Secara fakultatif, untuk meningkatkan sifat kelinearan data, keselarasan
distribusi dapat menjadi proyek dalam ruang tangen tapi menghilangkan proyeksi ini.
(a)
data mentah
  
32
(b)
Keselarasan Procrustes
Gambar 2.16 Hasil Generalized Procrustes Analysis
Principal Component Analysis - PCA
Principal Component Analysis
(PCA) adalah teknik statistik yang
memperbolehkan pengurangan dimensi data. Prosedur ini mencari arah dalam data
yang mempunyai variansi terbesar dan setelah itu proyek data ke dalamnya. Secara
matematika didefinisikan sebagai transformasi linear ortogonal yang
memproyeksikan data ke dalam sistem koordinat baru didefinisikan oleh data sumbu
variansi. Pengurangan dimensi dilakukan dengan memegang data yang berkontribusi
lebih untuk variansi mengabaikan sisanya, karakteristik yang kurang penting.
Menimbang kumpulan data dengan vektor N:
, dimana setiap
adalah vektor dimensional n. Ini dibutuhkan ketika jumlah sampel lebih besar dari
jumlah dimensi (
).
PCA ditampilkan dengan:
Menghitung rata-rata vektor N,
  
33
Persamaan 11
Estimasi likelihood maksimal pada matriks konvergen diberikan dengan
Persamaan 12
Eigenvektor,
, dan nilai eigen yang terkait pada matriks kovariansi dihitung
dan diperintahkan sedemikan rupa
. Eigenvektor yang sesuai dengan nilai
eigen tertinggi, merupakan arah variasi terbesar. Nilai eigen kedua sesuai dengan
variasi tertinggi dalam arah ortogonal ke yang pertama. Eigenvektor berikut sesuai
ke arah ortogonal ke presenden penurunan penting dalam variasi data. Beberapa nilai
eigen sangat kecil, sehingga mereka tidak berkontribusi cukup ke total variansi dan
dapat diacuhkan. Data dapat didekati sebagai kombinasi linear pada beberapa
eigenvektor yang paling relevan yang dihasilkan dapat data kompresi.
Mengatur ? dengan memegang nilai eigen t yang paling penting (t adalah angka
pada mode variasi), beberapa contoh dalam kumpulan training
dapat menjadi lebih
dekat ke data aslinya sebagai
Persamaan 13
dimana
adalah matriks ortogonal dan b
adalah vektor
dimensional t yang dapat dikembalikan dengan
Persamaan 14
  
34
PCA juga dikenal sebagai Karhunen-Loeve transform
(KLT) atau
transformasi Hotelling.
Gambar 2.17 Komponen utama dari data 2D.
Gambar 6 menunjukan komponen utama,PC1 dan PC2, dari kumpulan pada
data 2D. Itu menunjukan bahwa bentuk komponen utama dari basis baru pada data
dan setiap titik asli
dapat dihitung sebagai jumlah pada rata-rata tambah kombinasi
linear pada PC1 dan PC2.
Persamaan 15
Jumlah mode variasi
Jumlah mode variasi untuk menahan, t, biasanya sedemikian
rupa sehingga
model tersebut mewakili pengguna didefinisikan varians dari total data. Setiap nilai
eigen,
, memberikan variansi data kearah koresponden eigenvektor,
, total
variansi data diberikan sebagai jumlah pada semua nilai eigen,
. Nilai
eigen t yang paling tinggi dipilih agar
  
35
Persamaan 16
Dimana p adalah bagian dari total variasi, misalnya 90% atau 95%.
Bentuk model statistik
Menerapakan PCA pada keselarasan data sebelumnya, variasi data statistik
dapat dimodelkan dengan
Persamaan 17
Dimana bentuk baru
, disintesis  dengan pembentukan ulang bentuk rata-
rata,
, menggunakan beban kombinasi linear pada eigenvektor pada matriks
kovarian,
.
adalah
parameter bentuk vektor yang menunjukan bobot.
memegang
eigenvektor paling penting pada parameter bentuk yang menjelaskan
pengguna mendefinisikan variansi. Ini dapat memulihkan parameter bentuk terkait
dengan setiap bentuk dengan
Persamaan 18
Vektor
mendefinisikan kumpulan dari parameter model yang dapat dibentukulang.
Mengubah element
menjadi bentuk yang dapat dibentukulang.
Variansi pada
parameter
pada kumpulan training
diberikan dengan
. Membatasi
antara
aman bahwa bentuk yang dihasilkan mirip dengan yang
ada di kumpulan training. Gambar 2.18
menunjukan lima parameter bentuk paling
pertama bervariasi antara
. Memegang 95% dari total variansi pada
  
36
bentuk data, model ini menunjukan total dari 19 variasi mode. Mode variasi pertama,
gambar 2.18, seperti yang diharapkan itu menunjukan informasi yang lebih sesuai,
menyebabkan pergerakan yang lebih besar antara posisi penunjuk. Pada gambar 2.18 
ditunjukan kerusakan pada total variansi sebagai fungsi pada eigenvektor yang
dipegang. Perhatikan bahwa hanya 30 dimensi yang ditunjukan pada kejelasan, total
yang ada pada
.
Gambar 2.18 Lima mode variasi bentuk yang pertama
2.2.1.2 Model Tekstur
Mirip dengan bentuk model, dimana semua bentuk sebelumnya diselaraskan
menjadi sebuah kerangka umum, tekstur model membutuhkan keselarasan dari
semua sampel tekstur untuk menjadi sebuah kerangka tekstur juga. Tekstur dipetakan
dengan cara titik kontrol dari setiap sampel mencocokan titik kontrol pada kerangka
  
37
referensi yang cocok, bentuk rata-rata. Delaunay triangulation digunakan dalam rata-
rata bentuk titik kontrol untuk membentuk segitiga yang akan digunakan untuk
intensitas map pixel
dengan barycentric coordinates
(Piece-wise Affine Warping).
Photometric normalization
digunakan pada pemetaan sampel tekstur dan bentuk
statistik model dibuat menggunakan Principal Component Analysis, menggambarkan
tekstur dalam model singkat.
Tekstur
Tekstur didefinisikan sebagai intensitas pixel
terhadap kesatuan yang
dimodelkan. Untuk m pixel sampel, tekstur ditunjukan dengan vektor
Persamaan 19
Untuk meningkatkan spesifikasi tekstur, informasi RGB color
digunakan,
mencontohkan setiap satu dari tiga color channel. Untuk gambar RGB color nilai m
sebenarnya menunjukan tiga kali jumlah dari pixel yang disampel.
Membuat model tekstur statistik, membutuhkan pelengkungan setiap training
image sehingga titik kontrol cocok bentuk rata-ratanya. Prosedur ini menghilangkan
perbedaan dalam tekstur karena perubahan bentuk, membentuk kerangka referensi
tekstur umum.
Pemetaan – Pelengkungan Tekstur
Dalam pemetaan tekstur, pengaturan spasial dari satu gambar diubah menjadi
gambar lain. Biasanya
, dimana
dalam kasus pada gambar
2D. AAM adalah metode berbasis penunjuk dimana kumpulan titik kontrol
dipetakan menjadi
. Setiap titik tunggal ditunjukan oleh
.
Fungsi pemetaan, f, dapat ditulis dengan
  
38
Persamaan 20
Dalam latihan, pemetaan terbalik digunakan, ini membuat
menjadi
memecahkan masalah ‘holes’.
Pemetaan tekstur ditampilkan, menggunakan piece-wise affine warp, yaitu
membagi kulit cembung pada bentuk rata-rata dengan kumpulan segitiga
menggunakan Delaunay triangulation. Setiap pixel
di dalam segitiga dipetakan
menjadi segitiga koresponden dalam bentuk rata-rata menggunakan barycentric
coordinate.
Gambar 2.19 Contoh pemetaan tekstur
Delaunay Triangulation
Kesegitigaan pada kumpulan titik, dalam
, adalah jaringan segitiga yang
vertex-nya adalah titik dan segitiga tidak mencegah sendiri.
Dalam Delaunay triangulation, setiap segitiga mengikuti sifat Delaunay,
yaitu setiap segitiga tidak mempunyai vertex
mereka didalam circumcircle-nya
(bulatan unik yang mempunyai semua tiga segitiga vertex). Delaunay triangulation
memaksimalkan sudut minimum setiap segitiga, mencoba membuat segitiga sama
sisi sebanyak mungkin.
  
39
Gambar 2.20 Contoh Delaunay Triangulation
Untuk kumpulan titik dengan sifat cekung, kesegitigaan ini membuat segitiga
di luar titik kontrol bentuk. Untuk kasus ini harus menggunakan pembatasan
Delaunay Triangulation atau Thin Plate Splines.
Gambar 2.21 menunjukan hasil Delaunay triangulation
pada kontrol bentuk
rata-rata. Titik kontrol ini akan menjadi titik referensi karena semua tekstur diproses
dalam kerangka referensi yang telah dinormalisasi.
Gambar 2.21 Bentuk rata-rata Delaunay triangulation.
Barycentric Coordinates
Dengan rata-rata bentuk Delaunay triangulation, terdapat pertanyaan:
bagaimana mengetahui jika sebuah titik dimiliki oleh sebuah segitiga? Untuk tujuan
  
40
tersebut, barycentric coordinates digunakan. Setiap titik,
, dalam segitiga
dapat didefinisikan sebagai fungsi pada vertex-nya dengan cara
Persamaan 21
Dimana
dan
adalah tiga vertex
pada segitiga,
dan
adalah
bilangan asli dimana
. Koefisien
dan
dinamakan barycentric
coordinates pada x dalam relasi
dan
Sistem pada tiga persamaan dengan tiga tidak diketahui, dapat ditulis sebagai
Persamaan 22
Dengan solusi,
Persamaan 23
Untuk menemukan jika titik x dimiliki pada segitiga dengan vertex
dan
,
barycentric coordinate-nya harus dalam jarak
.
Bilinear Interpolation
Untuk mencegah holes, pemetaan tekstur ditampilkan menggunakan
pemetaan terbalik dengan bilinear interpolation correction. Bilinear interpolation
terdiri dari dua interpolasi linear berturut-turut menggunakan empat pixel neighbors.
  
41
Nilai interpolasi,
, dalam
dalam fungsi pada neighbors-nya
dan diberikan dengan
Persamaan 24
Gambar 2.22 Interpolasi bilinear
Atau dalam bentuk matriks
Persamaan 25
Piecewise Affine Warp
Piecewise Affine Warp adalah prosedur
tekstur pemetaan dimana setiap pixel
dari gambar untuk sampel, dimiliki oleh segitiga tertentu, dipetakan ke segitiga
tujuan masing-masing dalam kerangka bentuk rata-rata menggunakan barycentric
coordinate dengan bilinear interpolation correction.
Gambar 2.23 menunjukan contoh pemetaan tekstur pada ekspresi individual
dan variasi pose. Karena sifat cembung pada bentuk wajah manusia, pemetaan
tekstur harus straightfull procedure, tapi terhadap beberapa variasi pose hasil
kesegitigaan menuju keluar wajah yang diharapkan. Masalah ini diilustrasikan pada
  
42
gambar 2.23. Sepertinya disebutkan sebelumnya, masalah ini dapat dilalui dengan
menggunakan restrict Delaunay triangulation atau Thin Plate Splines.
Gambar 2.23 Sampel pemetaan tekstur. Di atas, gambar asli, di bawah
lengkungan gambar
  
43
Gambar 2.24 Tekstur lengkungan gagal hasil dari variasi pose ekstrim.
Photometric Normalization
Dalam standar formulasi AAM pengaruh atas variasi pencahayaan global
dikurangi dengan menerapkan scaling,
, dan offset,
dalam sampel tekstur,
Persamaan 26
  
44
Dimana 1
adalah vektor padanya. Proses normalisasi mengubah sampel
bergantung pada
dan
.
Solusi lain yang mungkin dapat digunakan. Dalam (de & Zuo, 2004), gambar
yang disampel, I, dibagi dalam blok. Untuk pixel
pusat dari blok B, gangguan
pencahayaan dinormalisasikan berdasarkan pada rata-rata
dan variansi
.
Karena itu
Persamaan 27
Efek dari perbedaan pencahayaan dalam kerangka AAM saat ini dikurangi
oleh historgram equalization
secara bebas dalam setiap dari tiga color channel
(Finlayson, Hordley, & Tian, 2005) diterapkan hanya melalui wilayah wajah persegi
panjang. Gambar berikut menunjukan beberapa contoh wilayah normalisasi
mengganti pose wajah.
Gambar 2.25 Wilayah wajah histrogram equalization
Model Tekstur Statistik
Model tekstur dapat diperoleh dengan menerapkan PCA pada tekstur
normalisasi
  
45
Persamaan 28
Dimana g adalah tekstur yang telah disintesis,
adalah teksur rata-rata,
berisi tekstur kovarian tertinggi eigenvektor
dan
adalah vektor pada parameter
tekstur. Parameter tekstur untuk sampel yang diberikan dapat diperoleh dengan
Persamaan 29
Gambar 2.26
menunjukan perubahan pada lima parameter tekstur pertama
dalam interval
. Model tekstur ini menunjukan 63 variasi model
(
) memegang 95% dari total variasi pada kumpulan training. Karena jumlah
pada dimensi lebih besar daripada jumlah pada sampel, dapat dikatakan aman bahwa
ada lebih banyak pixel
daripada sampel training
gambar,
, low-memory
PCA digunakan.
Low-Memory PCA
Dalam PCA analysis, ketika jumlah dimensi lebih besar daripada jumlah
sampel, dibutuhkan perhitungan pada matriks konvergen pada ukuran besar (
)
yang akan menjadi peringkat kekurangan. Tetapi, mungkin untuk menampilkan
sebuah analisis eigen pada matriks kecil
, membutuhkan memory lebih sedikit
dan effort perhitungan, dan mendapatkan hasil konsisten secara statistik
(Cootes &
Taylor, 2004).
Pertama, data matriks dibangun dengan mengurangi rata-rata pada setiap
sampel, didapatkan
  
46
Persamaan 30
Dan matriks kovariansi dapat ditulis sebagai
Persamaan 31
Mengingat matriks
Persamaan 32
Jika
dan
adalah, masing-masing, eigenvektor dan nilaieigen pada C’
dengan
dan
, oleh teorama Eckart-Young, dapat dibuktikan
bahwa eigenvektor N pertama pada
adalah eigenvektor pada C
dengan
berhubungan nilaieigen
. Eigenvektor
yang tersisa pada C
mempunyai
eigenvektor kosong. Perhatikan bahwa
tidak harus kolom normalisasi.
  
47
Gambar 2.26 Variasi tekstur mode
2.2.1.3 Model Gabungan
Gabungan Model Bentuk dan Tekstur
Bentuk dan tekstur dari sampel training
apapun digambarkan dengan
parameter b
s
dan b
g
. Untuk menghilangkan hubungan antara bentuk dan tekstur
parameter model third PCA ditampilkan oleh data berikut
Persamaan 33
  
48
Dimana W
s
, adalah matriks diagonal pada bobot yang mengukur perbedaan
satuan antara parameter bentuk dan tekstur.
Sebagai hasilnya, menggunakan PCA
lagi untuk model variasi statistik,
memegang eigenvektor tertinggi
, dan penggabungan model diperoleh sebagai
Kedua parameter bentuk dan tekstur, b
s
dan b
g
masing-masing, mempunyai
rata-rata nol sebagai gabungan model juga memiliki rata-rata nol.
Karena sifat linear pada model, hal itu memungkinkan untuk
mengekspresikan bentuk, x, dan tekstur, g, menggunakan model gabungan dengan
Persamaan 34
Persamaan 35
Dimana
Persamaan 36
Dan c adalah vektor pada penampilan mengkontrol kedua bentuk dan tekstur.
Persamaan 37 memperbolehkan mendapatkan parameter tampilan, c, dari sampel
yang diberikan
Persamaan 37
Perhatikan bahwa, jumlah pada mode variasi gabungan lebih sedikit daripada
jumlah pada mode variasi bentuk dan tekstur.
, karena pengurangan
  
49
dimensi oleh third PCA. Juga, peringkat pada
tidak pernah melebihi jumlah dari
gambar training.
Dalam formulasi AAM asli (Cootes & Taylor, 2001), sebagian besar untuk
alasan sejarah, model gabungan diperoleh dengan menjalankan tiga PCA independen.
Menyatukan bentuk dan sampel tekstur, ditimbang dengan benar, dalam matriks
observasi yang unik adalah mungkin untuk membangun model gabungan melalui
PCA (Abboud & Davoine, 2004).
Memilih bobot
Parameter bentuk, b
s
, mempunyai satuan jarak, sedangkan parameter tekstur,
b
g
, mempunyai intensitas satuan pixel, sehingga mereka tidak
dapat dibandingkan
secara langsung. Untuk mengatasi masalah ini bobot matriks, W
s
, yang mengukur
perbedaan satuan ini dimasukkan.
Estimasi tunggal pada W
s
adalah untuk menimbang secara seragam dengan
perbandingan, r, dari total variansi pada tekstur dan bentuk (Stegmann, 2000). W
s
adalah matriks diagonal
Persamaan 38
Dengan bobot perbandingan diberikan
Persamaan 39
Dimana
dan
adalah masing-masing nilaieigen bentuk dan tekstur.
  
50
Membangun contoh AAM
Contoh AAM adalah sebuah gambar sintesis berdasarkan pada gabungan
model statistik dimana vektor tampilan, c, mengontrol kedua hasil bentuk dan
tekstur. Model wajah dengan kualitas foto asli dapat diperoleh.
Contoh AAM dibangun dengan menghasilkan tekstur dalam kerangka
normalisasi menggunakan persamaan 35 dan melengkungkannya ke titik kontrol
yang diberikan oleh persamaan 34.
Gambar 2.27 Membangun contoh AAM
2.2.1.4 Model Training
Proses penyesuaian AAM mencari untuk meminimasikan tekstur sisa.
Perbedaan tekstur ini akan membawa model pada parameter tambahan
mempebaharui skema untuk estimasi yang lebih baik contoh model baru sampai
konvergen.
Training
ini terdiri dalam mempelajari hubungan antara contoh model AAM
dan sisa tekstur. Dibutuhkan kumpulan pengalaman, menggangu kumpulan
parameter tampilan kebenaran, yang menggambarkan masing-masing contoh model,
dengan mengetahui jumlah dan rekaman perbedaan tekstur antara gambar sampling
dan model. Dari hasil proses ini dua matrices
besar, satu yang memegang model
pengganggu dan matriks lainnya yang memegang sisa tekstur. Dengan informasi ini,
  
51
dua pendekatan untuk mengestimasikan matriks perbaikan dapat diterapkan:
Multivariate Linear Regression
(MLR) dan dengan perbedaan, estimasi matriks
Jacobian.
Pencarian AAM mencari untuk meminimasikan perbedaan tekstur antara
contoh model dan bagian bawah target yang ditutupi. Ini dapat diperlakukan sebagai
masalah optimasi dimana
Persamaan 40
atau, lebih resmi,
Persamaan 41
Memperbaharui parameter tampilan c dan pose.
Masalah nonlinear ini dapat dipecahkan dengan mempelajari offline
bagaimana model berjalan karena perubahan parameter dan relasi koresponden
antara sisa tekstur (Cootes & Taylor, 2001).
Sebagai tambahan, dipertimbangkan
kemiripan parameter untuk menunjukan pose 2D. Untuk mempertahankan kelinearan
dan menjaga transformasi identitas pada nol. Agar parameter null tidak menunjukan
perubahan dalam pose, parameter tersebut didefinisi ulang menjadi
Persamaan 42
Dimana
,
menunjukan gabungan skala, s,
dan rotasi, ?, dan parameter sisanya t
x
dan t
y
adalah translasi seperti biasa. Kemiripan
  
52
transformasi matriks 2D, dalam koordinat homogeny, dengan ini didefiniskan ulang
pada parameternya menjadi
Persamaan 43
Parameter model lengkap termasuk pose diberikan dengan menyatukan
parameter tampilan dengan parameter pose
Persamaan 44
dimana p adalah
vektor dimensi.
Formulasi AAM awal menggunakan
pendekatan
Multivariate Linear
Regression
(MLR) mendekat terhadap kumpulan training
tekstur sisa,
, dan
koresponden model penggangu,
. Tujuannya adalah untuk mendapatkan matriks
prediksi optimal, dalam kurdrat terkecil, memenuhi relasi linear
Persamaan 45
Hal itu diasumsikan bahwa hubungan pada pembaharuan perbedaan tekstur
dan parameter model adalah linear secara lokal. Menjawab persamaan 45 melibatkan
penampilan kumpulan pengalaman s, membangun matrices
dan
sisa.
Persamaan 46
  
53
dimana
memegang, oleh kolom, parameter model pembatas
dan
memegang koresponden tekstur sisa. Menghitung sisa tekstur terdiri dari mengurangi
versi sampel pada gambar target dengan tekstur dari model,
.
Sampel gambar melibatkan kelengkungan tekstur yang berada di dalam posisi titik
kontrol saat ini dalam kerangka bentuk rata-rata referensi. Persamaan 45 dapat
dibesarkan menjadi
Persamaan 47
Persentase nilai dalam scale
dan translasi ditujukan dengan besarnya
perhatian pada referensi rata-rata bentuk.
Table 2.2.1: Skema pembatas
Parameter
Perturbation
Scale
90%, 100%
Multivariate Linear Regression
Formulasi AAM standar menggunakan Multivariate Linear Regression
(MLR) pada matrices
dan
sisa, untuk mengestimasikan, dalam langkah
sebelum perhitungan, matriks regresi yang sesuai R
yang memecahkan masalah
linear
.
  
54
Karena
, satu solusi yang mungkin dari persamaan 47 dapat
didapat dengan Principal Component Regression
(PCR), memproyeksikan matriks
besar
dalam subruang k-dimensi, dimana
, yang menangkap bagian
dominan pada variasi. Ini disimpan dengan menemukan eigenvektor,
, dan
nilaieigen,
, pada matriks
, mendapatkan hubungan
Persamaan 48
Karena ? ortonomal.
, persamaan 49 dapat ditulis sebagai
Persamaan 49
Menggunakan Principal Component Analysis, dapat ditunjukan bahwa
dilipatkan dengan matriks pada eigenvektor ? adalah matriks
yang kolomnya
adalah komponen utama pada
Persamaan 50
atau
Persamaan 51
Dalam persamaan 53,
memproyeksikan
ke dimensi ruang rendah. Sisi
kanan pada persamaan 48 diganti dengan
  
55
Persamaan 52
Dimana R’
menunjukan hubungan antara perbedaaan parameter,
, dan
perbedaan tekstur,
, setelah proyeksi
.
Mengenai sisi kanan pada persamaan 48, persamaan 54 dapat ditulis kembali
menjadi
Persamaan 53
Dengan menggabungkan persamaan 54 dan persamaan 50 menjadi
Persamaan 54
Menurut persamaan 53, R’ dapat diekpresikan sebagai
Persamaan 55
Akhirnya, menggabungkan persamaan 55 dan 56 matriks regresi dapat dihitung
dengan
Persamaan 56
Jacobian
Multivariate linear regression
nantinya akan digantikan dengan pendekatan
yang lebih sederhana (Cootes & Taylor, 2001), menghitung matriks gradien,
,
  
56
membutuhkan lebih sedikit memori dan usaha perhitungan. Ini adalah pendekatan
yang digunakan dalam pekerjaan saat ini.
Vektor tekstur sisa didefinisikan sebagai
Persamaan 57
dimana tujuannya adalah untuk menemukan perkembangan optimal pada
parameter model untuk meminimasi
Persamaan 58
Memperluas sisa tekstur, r(p), dalam deret Taylor sekitar p
dan memegang
isitlah urutan pertama, hasilnya
Persamaan 59
dimana
adalah matriks Jacobian
Persamaan 60
Dalam hal ini
Persamaan 61
Dengan membedakan w.r.t p memberikan
  
57
Persamaan 62
Menetapkan gradien ke 0, hasilnya
Persamaan 63
atau
Persamaan 64
Matriks regresi kemudian diberikan dengan
Persamaan 65
Singular Value Decomposition
(SVD) harus digunakan pada perhitungan
pada matriks Jacobian pseudo-inverse (jika
maka
), R,
meningkatkan stabilitas numerik.
Biasanya pendekatan Steepest Descent
(SD) memerlukan evaluasi Jacobian
untuk setiap iterasi. Karena kerangka AAM bekerja pada kerangka
referensi
normalisasi, matriks Jacobian dapat dipandang tetap terhadap kumpulan training dan
pseudo-inverse-nya, R, dapat diestimasikan sekali dalam tahap training.
2.2.1.5 Pencocokan Model
Pencocokan dalam model AAM ke gambar adalah masalah optimasi
nonlinear dimana tekstur sisa diminimasi dengan mengembangkan parameter model.
  
58
Beberapa metode pemecahan dapat digunakan, seperti Steepest Descent (SD)
(Newton, Gauss-Newton
(GN)
(Nordsom, Larsen, & Stegmann, 2004), Levenberg
Marquardt
(LM) (Sclaroff & Isidoro, 1998)), metode Powell, algortima Genetic,
Siimulated Annealing
(SA) (N., N., J.M., Fisker, & Schultz, 2003), simpleks. Akan
ditunjukan bahwa prosedur pencocokan model mengikuti pendekatan Steepest
Descent Gauss-Newton dengan matriks Jacobian tetap yang diestimasikan offline.
Prosedur metode pencocokan membutuhkan estimasi kasar dari lokasi pada
wajah. Metode AdaBoost
(Viola & Jones, 2001)
digunakan untuk memecahkan
masalah ini. Beberapa simulasi Monte Carlo
ditampilkan, mencoba kualitas dari
model pencocokan dengan gangguan lokasi awal, membandingkannya dengan
anotasi training kebenaran.
Iterative Model Refinement
Parameter model diperbaharui terhadap sisa tekstur dengan relasi linear
. Berdasarkan persamaan 66 model pembaharuan menjadi
Persamaan 66
Yang adalah modifikasi Gauss-Newton
teredam pada metode Steepest
Descent, dimana J
adalah matriks Jacobian
dan a adalah faktor teredam. Matriks
Jacobian
adalah tetap dan diestimasikan sekali pada proses training
AAM yang
membuat proses lebih cepat karena tidak perlu menghitung Jacobian
untuk setiap
iterasi. Untuk membantu dalam proses konvergensi faktor teredam juga dimasukkan.
Dimulai dengan estimasi yang diberikan untuk model,
, dan estimasi kasar
pada lokasi pada
wajah, model AAM dapat dicocokan dengan algoritma “Iterative
Model Refinement”. Jika tidak ada informasi, mulai
dengan nol, yang menunjukan
  
59
contoh rata-rata wajah AAM, dan pendeteksi wajah dapat digunakan untuk
menemukan wajah. Dalam pekerjaan ini metode AdaBoost
(Viola & Jones, 2001)
digunakan. Gambar pertama disampel terhadap lokasi pada titik kontrol awal [x, y]
dan contoh model AAM dibangun dengan estimasi parameter model saat ini,
.
Vektor tekstur sisa,
, dan error saat ini
dievaluasi. Parameter
model diperbaharui menggunakan persamaan 67 menggunakan pendekatan teredam.
Model dipandang cocok jika tidak ada perkembangan pada error atau nilai iterasi
maksimum tercapai.
Asumsikan bahwa parameter tampilan, c, adalah distribusi Gaussian
independen dengan rata-rata nol dengan variansi
yang sama nilaieigen
dari
model gabungan PCA(dalam jarak
dicakup 99.7% dari distribusi), model
ditetapkan gagal jika
Persamaan 67
Model pencocokan biasanya gagal pada gambar yang subjeknya
menampilkan pemindahan pose besar, dan model pencocokan AAM dibuktikan
untuk menjadi sangat tergantung pada estimasi awal.
Masalah estimasi awal
Karena AAM membutuhkan estimasi awal untuk ke lokasi pada wajah, lebih
baik adalah estimasi ini, mengecilkan resiko untuk menjadi perangkap pada local
minimum. Beberapa metode untuk menemukan wajah dalam gambar dapat
ditemukan (Yang & Kriegman, 2002). Metode umum untuk menemukan posisi
dalam wajah didasarkan pada segementasi warna. Distribusi warna kulit manusia
berada pada area kecil pada ruang warna kromatik dan dapat menjadi model dengan
  
60
single gaussian. Menerapkan penyaring pada gaussian
ini, pixel
yang mempunyai
warna yang mirip dapat disorot. Dengan menyesuaikan elips ke hasil ini perkiraan
yang baik pada wajah dapat ditemukan. Solusi yang lain untuk menglokasi wajah
adalah menggunakan model AAM sendiri. Gambar untuk dilihat didownsample dan
dibagi dalam subregion. Model penyesuaian AAM ditampilkan dalam setiap
subregion sampai wajah ditemukan.
Baru-baru ini, pendekatan robust apperance-based detection (Viola & Jones,
2001)
dikembangkan. Dalam makalah ini pendeteksian wajah didapatkan
menggunakan AdaBoost classifier yang mengawali prosedur penyesuaian AAM.
Apperance-Based Face Detection
Fitur Haar-Like
digunakan untuk mengesktrak informasi dalam gambar.
Deteksi pada objek ditampilkan menggunakan fitur ini sebagai input ke AdaBoost
classifier.
Fitur Haar-Like
Setiap fitur Haar-Like
ditunjukan dengan contoh, koordinatnya relatif untuk
mencari window origin
dan ukuran fitur. Nilai fitur Haar-Like
dihitung sebagai
jumlah bobot pada dua komponen: jumlah nilai pixel gray level
terhadap bujur
sangkar hitam dan jumlah terhadap seluruh fitur area. Ratusan fitur digunakan dalam
real and robust classifier. Untuk mengurangi perhitungan waktu digunakan
digunakan concept of Integral Image diperkenalkan (Viola & Jones, 2001).
AdaBoost Classifier
Tujuan utamanya adalah menemukan angka yang sangat kecil pada fitur ini
sehingga dapat digabungkan untuk membentuk penggolongan yang efektif. Untuk
mendukung tujuan ini, weak-learning algorithm didesain untuk memilih fitur tunggal
yang terbaik memisahkan contoh positif dan negatif. Untuk setiap fitur, weak learner
  
61
menentukan klasifikasi fungsi threshold
yang optimal, sehingga jumlah minimum
pada contoh dikelompokkan.
Weak classifier
terdiri dari fitur
, threshold
dan kesamaan
mengindikasikan arah pada tanda yang tidak sama.
Persamaan 68
Pada persamaan 69 nilai 1 menunjukan deteksi pada kelas objek dan 0
menunjukan non objek. Setiap dari penggolongan per si
tidak dapat mendeteksi
kategori objek. Sebaliknya, hal itu bereaksi pada beberapa fitur sederhana pada
gambar yang mungkin berhubungan dengan objek.
Pendekatan untuk mengurangi perhitungan waktu pada tugas pendeteksian
terdiri dari menggunakan cascade
of classifier. Dengan cascade
of classifier
memungkinkan untuk mendapatkan peningkatan performa deteksi, ketika
perhitungan waktu menurun secara radikal. Kunci objektifnya adalah membangun
yang lebih kecil, namun lebih efisien, mendorong penggolongan yang menolak
bermacam-macam negative sub-windows, ketika mendeteksi hampir semua contoh
positif. Penggolongan sederhana digunakan untuk menolak mayoritas pada sub-
windows sebelum penggolongan yang lebih kompleks dipanggil, untuk mendapatkan
rata-rata kesalahan positif yang rendah.
Pendeteksian Wajah
Deteksi dilakukan dengan menggeser jendela pencarian melalaui kerangka
gambar dan memeriksa apakah bagian gambar pada lokasi tertentu digolongan
sebagai wajah.
  
62
Estimasi awal AAM terdiri dari skala rata-rata bentuk disesuaikan dengan
AdaBoost detection.
Recovery from Lost Track
Dalam beberapa kejadian, terutama ketika pergerakan kepala cukup cepat,
algoritma penyesuaian, diterapkan sendiri, kehilangan jalur dan tidak dapat
dipulihkan. Untuk mengatasi masalah ini, setiap kali penyesuaian AAM gagal,
kondisi Persamaan 68 terpenuhi, appearance-based detection initialization process
dipanggil lagi.
Monte Carlo Simulation
Karena kualitas model penyesuaian AAM sangat tergantung pada lokasi
estimasi awal, beberapa simulasi Monte Carlo
ditampilkan, mengevaluasi fitting
robustness procedure, mengganggu lokasi permulaan.
Lokasi terganggu terhadap arah sumbu-x dan sumbu-y secara independen.
Dua acuan lokasi awal yang berbeda digunakan mulai dari [-50, 50] unit pixel. Satu
adalah lokasi yang diberikan oleh AdaBoost classifier, yang lainnya adalah
keselarasan bentuk dengan Center of Gravity (CoG) pada anotasi kebenaran. Setiap
pengalaman AAM search
mulai dengan rata-rata contoh model wajah.
,,
dan titik kontrol penyesuaian akhir dibandingkan dengan anotasi kebenaran.
Untuk membandingkan akurasi model penyesuaian beberapa metrics
digunakan. Dalam persamaan berikut,
menunjukan koordinat pada bentuk
penyesuaian yang konvergen dan
adalah anotasi kebenaran bentuk.
Error titik ke titik adalah rata-rata jarak Euclidian
dari bentuk
ke
dan didefinisikan sebagai
  
63
Persamaan 69
Titik ke batas error
didefinisikan sebagai rata-rata jarak dari bentuk akhir
ke
mengukur terhadap profil normal.
Persamaan 70
Jarak Procrustes, memberikan akar kuadrat pada jumlah pada perbedaan
kuadrat pada posisi penanda dalam dua bentuk. Ini digunakan rata-rata jarak
Procrustes, Persamaan 72, sebagai perbandingan metric
memberikan ide pada
tingkat deformasi antara dua bentuk. Bentuk penyesuaian akhir, (x, y), diselaraskan
dengan
menggunakan analisis Procrustes, menghasilkan
. Error
diukur menggunakan jarak Euclidian
antara bentuk
keselarasan dan bentuk kebenaran.
Persamaan 71
Tekstur juga dievaluasi, dan error
antara contoh model akhir dan gambar target
diukur menggunakan
Persamaan 72
Hal ini ditunjukan evolusi pada setiap evaluasi metric terhadap translasi pemindahan
menggunakan sebagai referensi permulaan CoG
  
64
Gambar 2.28 Contoh pada prosedur penyesuaian AAM
  
65
Gambar 2.29 Contoh lain pada prosedur penyesuaian AAM
  
66
Gambar 2.30 Contoh penyesuaian model yang gagal
Gambar 2.31 Penggunaan fitur Haar-like
  
67
Gambar 2.32 Contoh estimasi awal didapatkan dari AdaBoost
Gambar 2.33 Penanda error evaluation metrics
2.2.2
Monocular Head Pose Estimation
Berurusan dengan masalah tridimensional orientation and position of face
(6DOF) menggunakan soulsi non-intrusive
dari video kamera tunggal. Pendekatan
yang diusulkan didasari pada mempertimbangkan kepala manusia sebagai struktur
badan yang kaku. Statistical antropometric
3D model kaku digunakan dengan
  
68
algoritma Pose from Orthography and Scaling with ITeration
(POSIT) (DeMenthon
& Davis, 1995)
untuk head pose estimation. Karena POSIT mengestimasikan pose
dengan kumpulan titik model 3D dan gambar sesuai proyeksi 2D, dengan cara
mengekstrak karakteristik wajah dan menampilkan asosiasi dibutuhkan. Untuk tujuan
itu, pendekatan model-based untuk penafsiran pada gambar wajah, AAM (Cootes &
Taylor, 2001), digunakan. Prosedur penyesuaian AAM menyediakan cara efektif
untuk menemukan fitur wajah untuk gambar 2D (Ahlberg, 2002). Diberikan
perwakilan training set
yang cukup, AAM mempunyai kunci manfaat pada
menyesuaikan orang yang tidak terlihat, modelling non-rigid deformations
mendeskripsikan karakteristik wajah seluruhnya.
Monocular head pose estimation
didapatkan dengan menggabungkan
pelacakan pada fitur wajah dengan POSIT, antropometric head model of human head
digunakan untuk tujuan tersebut. Karena sifat AAM landmark-based, model 3D / 2D
berhubungan masalah pendaftaran dipecahkan dengan mudah.
2.2.2.1 Pose from Orthography and Scaling with ITerations
Pose from Orthography and Scaling with Iterations (POSIT) (DeMenthon &
Davis, 1995)
adalah algoritma yang sangat cepat dan iteratif juga
akurat untuk
menemukan pose 6DOF (orientasi dan translasi) pada model 3D atau tempat dengan
hal pada kamera yang diberikan kumpulan gambar 2D dan titik yang berhubungan
objek 3D.
  
69
Gambar 2.34 Proyeksi perspektif
untuk titik model
.
Gambar 2.34
menunjukan model lubang jarum kamera, dengan pusat
proyeksinya, O, dan gambar bidang pada panjang focal, f, (panjang focal dan pusat
gambar diasumsikan telah diketahui).
Model 3D dengan titik fitur
diposisikan pada kamera
frustumi. Kerangka koordinat model dipusatkan pada
. Titik
telah mengetahui
koordinat
dalam kerangka model dan koordinat yang tidak diketahui
dalam kerangka kamera. Proyeksi gambar pada
diketahui dan dinamakan
,
mempunyai koordinat gambar
.
Dalam model proyeksi perspektif titik 3D (X, Y , Z) diproyeksikan dalam
gambar bidang oleh
  
70
Persamaan 73
Dimana R adalah matriks rotasi menunjukan orientasi pada kerangka kamera
dengan hal ke kerangka dunia. T adalah vektor translasi dari pusat kamera O ke
mengekspresikan kerangka kamera. 0
adalah matriks nol dan K
adalah matriks
kamera dengan f  jarak focal dan
titik utama. K dianggap sudah diketahui.
Persamaan 74
Untuk menggunakan koordinat gambar yang dinormalisasi transformasi
berikut diterapkan
Persamaan 75
Persamaan 74 menjadi
Persamaan 76
Dan matriks proyeksi sekarang diberikan oleh
. Memecahkan
masalah pose terdiri dari menemukan matriks R dan T
yang digambarkan penuh 6
DOF.
  
71
Mendefiniskan
, sebagai
Persamaan 77
Persamaan 77 dapat ditulis sebagai
Persamaan 78
Atau, membagi semua elemen matriks proyeksi dengan
,
Persamaan 79
Dari ketiga persamaan pada sistem sebelumnya Persamaan 80, memberikan
Persamaan 80
Dan menerapkan transposnya dalam dua persamaan yang tersisa
Persamaan 81
Menggunakan titik n, Persamaan 82 diperluas menjadi
  
72
Persamaan 82
Dimana M
adalah matriks model yang mendefinisikan struktur pada model
3D digunakan dan
adalah koordinat titik gambar proyeksi pada
.
Menyelesaikan Persamaan 83 untuk parameter pose memberikan
Persamaan 83
Ini langsung
untuk mendapatkan
dan
. Karena baris matriks
rotasi adalah ortogonal
dan pose menjadi didefinisikan penuh.
Perhatikan, setidaknya ada 4 titik non coplanar berkoresponden dengan titik yang 
dibutuhkan, sebaliknya matriks M adalah singular. Pendekatan ini disebut Pose from
Orthography and Scaling (POS) (DeMenthon & Davis, 1995). Menemukan pose
untuk nilai tetap pada
.
Gambar perkspektif (
) pada titik dunia 3D dihubungkan ke gambar
dibuat dengan scaled orthographic camera berdasarkan
Persamaan 84
  
73
Isitlah dapat ditentukan hanya jika pose kamera sudah diketahui
menggunakan Persamaan 81. Algoritma POSIT (POS with ITerations) (DeMenthon
& Davis, 1995)
memulai dengan mengasumsikan bahwa titik gambar perspektif
mirip dengan scaled orthographic image points, sehingga
. Atas
asumsi ini, pose kamera dapat diketahui dengan memecahkan sistem linear pada
Persamaan 84. Solusi ini hanya kira-kira karena
adalah sebuah perkiraan
juga. Namun, diberikan estimasi pada pose objek yang lebih akurat, akurasi pada
istilah
dapat ditingkatkan dengan mengestimasiulang istilah ini menggunakan
Persamaan 81. Scaled orthographic perspective model
digunakan terus menerus
dalam proses perhitungan pose perspektif penuh. Proses ini terus menerus diulang
sampai pose konvergen. Langkah pada POSIT digambarkan dalam algoritma
“POSIT”. Metode ini tidak membutuhkan estimasi pose awal, ini sangat cepat (ini
konvergen sekitar 4 kali iterasi) dan ini kuat dengan hal pada pengukuran gambar
dan camera calibration errors.
Gambar dan titik model berhubungan, ketika menggunakan POSIT
menggabungkan dengan AAM adalah masalah mudah.
Scaled Orthographic Projection Model
Biarkan baris ke-i pada R
dinotasikan oleh
, dan menggunakan koordinat
gambar normalisasi, gambar perspektif pada titik 3D P pada kerangka dunia, (u, v),
adalah
Persamaan 85
Weak perspective (dikenal juga sebagai scaled orthographic) model proyeksi
(David, DeMenthon, & Samet., 2004), yang membuat asumsi bahwa kedalaman pada
  
74
objek adalah kecil dibandingkan dengan jarak pada objek dari kamera dan titik
tempat terlihat dekat pada sumbu optik, mempunyai anggapan bahwa
,
karena
adalah satuan vektor dalam kerangka koordinat dunia yang paralel dengan
sumbu optik kamera. The weak perspective image
pada titik 3D dalam kerangka
dunia adalah
dimana
Persamaan 86
2.2.2.2 Head Pose Estimation
Kerangka kerja otomatis penuh untuk head pose extraction
dibuat oleh dua
bagian sebelumnya digambarkan. Model penyesuaian AAM ditampilkan pada subjek
mempimpin ke lokasi penanda model bentuk melacak setiap waktu. Perhatikan
bahwa tidak ada penyaring sementara yang digunakan. Dalam beberapa kejadian
penyesuaian model, terutama ketika pergerakan pada kepala sangat cepat, dan
diasumsikan menjadi gagal jika ada parameter tampilan yang tidak mengikuti kondisi
Persamaan 68. Pemulihan dari pelacakan hilang dapat diatasi dengan
menginisialisasiulang apperance-based proses deteksi setiap kali model gagal.
  
75
Gambar 2.35 Anthropometric head digunakan sebagai model POSIT 3D.
Anthropometric 3D Model
The head pose estimation ditampilkan menggunakan POSIT. Sebagai model
3D, model kaku anthopometric 3D
pada kepala manusia yang digunakan, lihat
gambar 2.24, karena itu adalah model kaku yang paling cocok menggambarkan
permukaan wajah 3D pada beberapa individu. Ini didapatkan oleh frontal laser
3D
scan pada model fisik, memilih titik 3D yang equivalent pada prosedur anotasi AAM
menciptakan model 3D yang tipis.
  
76
Gambar 2.36 3D anthropometric model akuisisi. a) Model fisik digunakan. b)
Laser scan data didapatkan c) OpenGL membuat model menggunakan fitur
bentuk AAM.
Dengan melacak fitur dalam setiap kerangka video menggabungkan dengan
sifat landmark-based
pada AAM, gambar / masalah pendaftaran model 3D
dibutuhkan untuk penggunaan POSIT dipecahkan secara mudah (hubungan titik one-
to-one).
Orientasi pada pose yang diestimasi ditampilkan dengan sudut Roll, Pitch and
Yaw (RPY).
Persamaan 87
Memecahkan RPY inverse kinematics mendatangkan,
Persamaan 88
Dengan solusi,
  
77
Persamaan 89
Evaluasi pada akurasi pose estimation
ditampilkan membandingkan pose
yang diestimasi dengan estimasi lainnya dari planar checkerboard
(Nordsom,
Larsen, & Stegmann, 2004), digunakan sebagai nilai referensi kebenaran.