8
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).
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.
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.
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.
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.
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.
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.
Gambar 2.4 Use case diagram hubungan uses atau includes 4. Depends on
Sebuah use case membutuhkan use case lainnya untuk mencapai tujuannya.
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.
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
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.
Gambar 2.8 Contoh Class Diagram Jenis hubungan pada class diagram:
1. Asosiasi
Gambar 2.9 Jenis hubungan asosiasi 2. Agregasi
Sebuah objek adalah bagian dari objek lainnya.
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.
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>>.
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).
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.
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.
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
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.
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
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.
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
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.
(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,
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
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
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
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
referensi yang cocok, bentuk 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
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.
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
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.
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
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
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,
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
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
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.
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 bs dan bg. Untuk menghilangkan hubungan antara bentuk dan tekstur parameter model third PCA ditampilkan oleh data berikut
Dimana Ws, 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, bs dan bg 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
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, bs, mempunyai satuan jarak, sedangkan parameter tekstur, bg, mempunyai intensitas satuan pixel, sehingga mereka tidak dapat dibandingkan secara langsung. Untuk mengatasi masalah ini bobot matriks, Ws, yang mengukur perbedaan satuan ini dimasukkan.
Estimasi tunggal pada Ws adalah untuk menimbang secara seragam dengan perbandingan, r, dari total variansi pada tekstur dan bentuk (Stegmann, 2000). Ws adalah matriks diagonal
Persamaan 38 Dengan bobot perbandingan diberikan
Persamaan 39
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,
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,
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.
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
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
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, ,
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
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.
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 α 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
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
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
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.
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
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.
Gambar 2.30 Contoh penyesuaian model yang gagal
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
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.
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
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.
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
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
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
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.
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.
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,
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.