Để giải quyết vấn đề trên tôi xin đề xuất ra phương pháp phát hiện khuônmặt sử dụng phương pháp Viola jone face detection, trích chọn đặc trưng sửdụng phương pháp Weber local Descri
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THỊ THUỶ
PHƯƠNG PHÁP NHẬN DẠNG KHUÔN MẶT NGƯỜI
VÀ ỨNG DỤNG TRONG QUẢN LÝ NHÂN SỰ
Ngành: Khoa học máy tính Chuyên Ngành: Khoa học máy tính
Mã Số: 8480101.01
LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
Ts Nguyễn Văn Vinh
HÀ NỘI-NĂM 2018
Trang 2LỜI CAM ĐOAN
Luận văn thạc sĩ đề tài “Nhận dạng khuôn mặt người và ứng dụng trong quản lý nhân sự” là công trình cá nhân tôi Các nội dung nghiên cứu và kết quả trình bày trong luân văn này là trung thực và rõ ràng Các tài liệu tham khảo được trích dẫn đầy đủ và ghi rõ nguồn gốc.
Tác giả luận văn ký và ghi rõ
họ tên
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
MỤC LỤC ii
DANH MỤC HÌNH VẼ, ĐỒ THỊ iv
DANH MỤC CÁC TỪ VIẾT TẮT vi
PHẦN MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục đích nghiên cứu của luận văn, đối tượng, phạm vi nghiên cứu Mục đích của luận văn: 1
3 Nội dung luân văn 2
CHƯƠNG 1: BÀI TOÁN NHẬN ĐỐI TƯỢNG NHẬN DẠNG KHUÔN MẶT 3
1.1 Tổng quan và các khái niệm liên quan đến nhận dạng khuôn mặt 3
1.1.1 Hệ thống sinh trắc học 3
1.1.2 Hệ thống nhận dạng khuôn mặt 3
1.1.3 Hệ thống xác minh hay xác thực khuôn mặt là gì 3
1.1.4 Những thách thức trong bài toán nhận dạng khuôn mặt 4
1.2 Tổng quan về các ứng dụng tương tác người máy liên quan tới khuôn mặt 4 1.3 Hướng tiếp cận chính trong lĩnh vực nhận dạng khuôn mặt 4
1.3.1 Các công trình nghiên cứu về Phương pháp nhận dạng và kiểm chứng chất lượng cho một hệ thống nhận dạng khuôn mặt 4
1.3.2 Hướng tiếp cận của luận văn 7
CHƯƠNG 2: CÁC KỸ THUẬT CHO NHẬN DẠNG KHUÔN MẶT 8
I Học máy 8
1.1 Phương pháp Deep Learning (CNN) 8
Trang 41.2 Phương pháp truyền thống 9
II Các kỹ thuật sử dụng trong nhận dạng khuôn mặt 10
2.1 Phát hiện khuôn mặt (Viola Jone Face detection) 10
2.2 Trích chọn đặc trưng Weber local Descripor- WLD 13
2.3 Giới thiệu phương pháp phân tích thành phần chính PCA 16
2.3.1 Giới thiệu phương pháp PCA 16
2.3.2 Đặc trưng PCA 20
2.3.3 Phương pháp phân tích thành phần chính(PCA) 20
2.3.4 Các bước thực hiện trích chọn đặc trưng PCA 22
2.4 Học máy hộ trợ vestor SVM 24
2.4.1 Cơ sở lý thuyết 24
2.4.2 SVM tuyến tính 24
2.4.3 SVM Phi Tuyến tính 26
CHƯƠNG 3: ỨNG DỤNG CÁC KỸ THUẬT TRONG NHẬN DẠNG KHUÔN MẶT 31
3.1 Phát hiện khuôn mặt (Viola Jone Face Detection) 31
3.2 Trích chọn đặc trưng (WLD) 31
3.3 Phân tích thành phần chính PCA và nhận dạng/phân lớp SVM 32
3.4 Mô tả dữ liệu 33
3.4.1 Thu nhập dữ liệu 33
3.4.2 Biểu diễn dữ liệu khuôn mặt trong máy tính 35
3.4.3 Dữ liệu huấn luyện 36
3.5 Kết quả thực nghiệm 36
3.6 Ứng dụng trong quản lý nhân sự 38
3.6.1 Mô hình nhận dạng trong quản lý nhân sự 38
3.6.2 Giao diện màn hình chức năng nhận dạng 39
3.6.3 Giao diện màn hình chức năng quản lý bộ phận 40
3.6.4 Giao diện màn hình chức năng quản lý phòng ban 41
Trang 5KẾT LUẬN 43
DANH MỤC TÀI LIỆU THAM KHẢO……….43
DANH MỤC HÌNH VẼ, ĐỒ THỊ Hình 0.1 So sách tác vụ nhận dạng khuôn mặt và xác minh khuôn mặt 3
Hình 0.2 Mô phỏng nhận dạng khuôn mặt 7
Hình 0.3 Haar Features sử dụng trong Violo Jones 10
Hình 0.4 Applying on a give image 10
Hình 0.5 Ví dụ về Haar features 11
Hình 0.6 Ví dụ ảnh Integral 11
Hình 0.7 Ảnh ví dụ tính Ô pixcel 12
Hình 0.8 Các bước loại khuôn mặt hay không 13
Hình 0.9 Kết quả phát hiện khuôn mặt 13
Hình 0.10 Tính kích thích sai khác 15
Hình 0.11 Ảnh trên là ảnh gốc, ảnh thứ 2 là ảnh trích chọn đặc trưng 15
Hình 0.12 Minh họa về tính toán của WLD 16
Hình 0.13 Lụa chọn các trục toạ độ mới để biểu diễn dữ liệu [11] 18
Hình 0.14 Siêu măt phân cách tuyến tính cho trường hợp phân cách được và ký Hiệu các support vestor chính là các diểm được bao bằng viền tròn 22
Hình 0.15 ảnh, trong H, với hình vuông [1,-1] €R2 dưới ánh xạ ϴ 26
Hình 0.16 cây nhị phân: Cấu trúc cây nhị phân với số lớp bằng số mũ của 2 Phải: số mũ không bằng số mũ của 2 28
Hình 0.17 Mô hình quá trình tạo các đặc trưng mặt 31
Hình 0.18 Mô hình sử dụng trong nhận dạng khuôn mặt 31
Hình 0.19 Mô hình quá trình tạo các đặc trưng mặt 32
Hình 0.20 ảnh ban đầu được biểu diễn theo các trọng số wj và eigenface 33
Hình 0.21 Ví dụ về ảnh của một người trong Yale face Database 34
Trang 6Hình 0.22 Ảnh 12 khuôn mặt người được đánh thứ tự từ 1 đến 12 34
Hình 0.23 Kích thước chuẩn hóa của một mẫu khuôn mặt trong học tập 35
Hình 0.24 Một phần của tập ảnh luyện 36
Hình 0.25 Một phần của tập ảnh thử nghiệm 36
Hình 0.26 Bảng 1.1 Bảng Thực nghiệm nhận dạng số lượng ảnh 37
Hình 0.27 kết quả thực nghiệm so với chỉ sử dụng PCA 37
Hình 0.28 Mô hình nhận dạng ở cửa ra vào tại cơ quan 38
Trang 7DANH MỤC CÁC TỪ VIẾT TẮT
Trang 8PHẦN MỞ ĐẦU
1 Lý do chọn đề tài
Nhận dạng khuôn mặt là một trong những lĩnh vực mới của xử lý ảnh Vàngày nay nhận dạng được sử dụng rộng rãi trong nhiều lĩnh vực của đời sốngnhư nhận dạng trong lĩnh vực thương mại, hay phát hiện trong lĩnh vực an ninh,hay trong xử lý video, hình ảnh Một trong những ứng dụng tiểu biểu nhận dạngđang sử dụng phổ biến hiện này trong nhận dạng khuôn mặt người là ứng dụngtrong điện thoại di động cụ thể như IphoneX và Sangsung đang sử dụng
Hiện nay có rất nhiều các Phương pháp nhận dạng khác nhau được xâydựng để nhận dạng một người cụ thể trong thế giới thực ta có thể nói tới một sốphương pháp như: học máy và học sâu.Tuy nhiên hai phương pháp này lại cónhược điểm lớn là phải xây dựng một tập cơ sở dữ liệu lớn và đồng thời việc xửlý dữ liệu lớn đòi hỏi phải nhanh và chính xác Vậy nên hai phương pháp trên sẽmất thời gian để nhận dạng nhiệm vụ đặt ra là nghiên cứu và xây dựng mộtchương trình sử dụng Phương pháp nhận dạng có độ chính xác cao mà khốilượng và thời gian tính toán lại ít
Để giải quyết vấn đề trên tôi xin đề xuất ra phương pháp phát hiện khuônmặt sử dụng phương pháp Viola jone face detection, trích chọn đặc trưng sửdụng phương pháp Weber local Descriptor và kết hợp phân tích thành phầnchính sử dụng phương pháp PCA và học máy vestor (SVM) để nhận dạngkhuôn mặt
2 Mục đích nghiên cứu của luận văn, đối tượng, phạm vi nghiên cứu Mục đích của luận văn:
Trang 9Nghiên cứu đề tài này nhằm mục đích tìm hiểu bài toán nhận dạng khuônmặt, từ đó xây dựng các hệ thống ứng dụng trong thực tiễn như: điểm danh,giám sát người ra vào, an ninh trong sân bay
Đối tượng và phạm vi áp dụng:
Đề tài tập trung tìm hiểu một số phương pháp nhận dạng khuôn mặt ngườiphổ biến hiện nay và đưa ra phương án nhận dạng cho bài toán nhận dạng khuônmặt người
Để đặt được mục tiêu trên đề tài tập trung tìm hiểu các nội dung sau:
- Tìm hiểu phương pháp phát hiện khuôn mặt sử dụng phương pháp ViolaJones Face Detection
- Trích chọn đặc trưng sử dụng phương pháp Weber Local Description
- Phương pháp phân tích thành phần chính
- Phương pháp học máy vestor (SVM)
3 Nội dung luân văn
Luận văn này gồm 3 chương, cụ thể như sau:
Chương 1: BÀI TOÁN NHẬN ĐỐI TƯỢNG NHẬN DẠNG KHUÔN MẶT
Giới thiệu các cách thức nhận dạng khuôn mặt người, vì sao nên nhậndạng người bằng khuôn mặt, tầm quan trọng của bài toán trong thực tiễn, một sốứng dụng thực tiễn của bài toán nhận dạng khuôn mặt
Chương 2: CÁC KỸ THUẬT CHO NHẬN DẠNG KHUÔN MẶT
Giới thiệu về 4 phương pháp sử dụng nhận dạng khuôn mặt được sử dụngtrong luận văn là phương pháp phát hiện khuôn mặt( Viola Jone FaceDetection), phương pháp trích chọn đặc trưng (WLD), phân tích thành phần
Trang 10Chương 3: ỨNG DỤNG CÁC KỸ THUẬT TRONG NHẬN DẠNG KHUÔN MẶT
Đưa ra mô hình xây dựng bài toán nhận dạng khuôn mặt người, các bướcthực hiện và đánh giá thử nghiệm
CHƯƠNG 1: BÀI TOÁN NHẬN ĐỐI TƯỢNG NHẬN DẠNG
1.1.3 Hệ thống xác minh hay xác thực khuôn mặt là gì
Trang 11Hệ thống xác minh/xác thực khuôn mặt là một hệ thống được thiết kế đểxác minh thông tin của một người Kĩ thuật xác minh là kiểm tra sự phù hợp trênphép so sánh một-một cụ thể là đối chiếu thông tin mới nhận về một người vớithông tin đã lưu trữ về người này có khớp hay không dựa trên thông tin khuônmặt.
Hình 0.1 So sách tác vụ nhận dạng khuôn mặt và xác minh khuôn mặt
1.1.4 Những thách thức trong bài toán nhận dạng khuôn mặt
Những biến đổi quá lớn giữa các ảnh khuôn mặt khác nhau từ một ngườicần nhận dạng gồm trạng thái cảm xúc trên khuôn mặt, ánh sáng, và các thay đổi
vị trí của khuôn Giới hạn về số ảnh cần thiết cho việc nhận dạng, tập học khôngthể bao quát được tất cả các biến đổi có thể có trên khuôn mặt của một ngườicần nhận dạng trong thế giới thực
1.2 Tổng quan về các ứng dụng tương tác người máy liên quan tới khuôn mặt
Từ những năm 1990 trở lại đây, chúng ta đã chứng kiến sự phát triển như
Trang 12tử.Tuy nhiên hiện nay các thiết bị điện tử cao cấp như máy ảnh số, camera kĩthuậtsố,vànhiều sản phẩm khác dường như chỉ phù hợp cho các phòng thínghiệm, các công ty sản xuất kinh doanh, thương mại, tài chính, ngân hàng, Trong thời gian không xa từ 3 đến 10 năm nữa, chi phí cho các thiết bị này sẽgiảm đáng kể Khi đó sẽ mở ra nhiều hướng nghiên cứu về thị giác máy tính,đồng thời sẽ có nhiều ứng dụng trong giao tiếp giữa người với máy tính màtrong đó hệ thống nhận dạng mặt người đóng một vai trò không nhỏ Dưới đâychúng tôi liệt kê một số ứng dụng.
Các ứng dụng chuyên biệt trong ngành hàng không
Ứng dụng sử dụng trong nhà thông minh,…
1.3 Hướng tiếp cận chính trong lĩnh vực nhận dạng khuôn mặt
1.3.1 Các công trình nghiên cứu về Phương pháp nhận dạng và kiểm chứng chất lượng cho một hệ thống nhận dạng khuôn mặt
Bài toán nhận dạng khuôn mặt cần xác định hai vấn đề chính: dùng thôngtin nào để nhận dạng: chân mày, cặp mắt, mũi, môi, tai, hay kết hợp các thôngtin trên.Và dùng phương pháp nào để huấn luyện cho máy nhận dạng dùngnguồn thông tin đó Nhận dạng khuôn mặt trên máy tính đã trãi qua nhiều bướcthăng trầm với các kết quả như sau:
Wenyi Zhao, Arvindh Krishnaswamy, Rama Chellappa, Danie L.Swets,ohn Weng (1998)[1] sử dụng phương pháp PCA (phân tích thành phầnchính) kết hợp LDA (phân tích độc lập tuyến tính) Bước 1, chiếu ảnhkhuôn mặt từ không gian ảnh thô sang không gian các không gian khuônmặt (Mỗi lớp khuôn mặt được nhận dạng sẽ được mô hình hóa bằng mộtkhông gian khuôn mặt) dùng PCA Bước 2, sử dụng phương pháp LDA
để tạo bộ phân loại tuyến tính có khả năng phân lớp các lớp khuôn mặt
Trang 13 Emmanuel Viennet và Francoise Fogelman Soulie (1998),[3] sử dụngphương pháp mạng neural nhân tạo để xử lý và nhận dạng khuôn mặt
Antonio J.Colmenarez và Thomas S.Huang (1998),[4] sử dụng kỹ thuậthọc thị giác và phù hợp mẫu 2-D Ông quan niệm bài toán dò tìm khuônmặt là thao tác phân loại khuôn mặt trong đó khuôn mặt thuộc về mộtlớp và các đối tượng khác thuộc về lớp còn lại bằng cách ước lượng môhình xác suất cho mỗi lớp, và việc dò tìm sử dụng luật quyết địnhMaximum-likelihood
Kazunori Okada, Johannes Steffens, Thomas Maurer, Hai Hong, EgorElagin, Hartmut Neven, and Christoph (1998),[5] nhận dạng khuôn mặtdựa vào sóng Gabor và phương pháp phù hợp đồ thị bó Với ý tưởngdùng đồ thị để biểu diễn khuôn mặt, ảnh khuôn mặt được đánh dấu tạicác vị trí đã được xác định trước trên khuôn mặt, gọi các vị trí này chính
là các vị trí chuẩn Khi thực hiện thao tác so khớp đồ thị với một ảnh,các điểm chuẩn (Jets) sẽ trích ra từ ảnh và so sánh các điểm chuẩn nàyvới tất cả các điểm chuẩn tương ứng trong các đồ thị khác nhau, và đồthị nào phù hợp nhất với ảnh sẽ được chọn
Baback Moghaddam và Alex Pentland (1998) [6], đưa ra phương phápphù hợp thị giác trực tiếp từ các ảnh cần sử dụng cho mục đích nhậndạng khuôn mặt và dùng độ đo xác suất để tính độ tương tự
Massimo Tistaelli và Enrico Grosso (1998) [7], đưa ra kỹ thuật thị giácđộng Vì khả năng quan sát các chuyển động của khuôn mặt và xử lý cáctính huống theo dự định là thông tin rất quan trọng, từ đó nhận được môtả đầy đủ hơn về khuôn mặt cho m1ục đích thu thập mẫu và nhận dạng
Jeffrey Huang, Chengjun Liu, và Harry Wechsler (1998)[8], đề xuấtthuật toán căn cứ trên tính tiến hóa (Evolutionary computation) và ditruyền (Genetic) cho các tác vụ nhận dạng khuôn mặt Đối với cách tiếpcận này, hai mắt sẽ được dò tìm trước tiên và thông tin này được xem là
Trang 14một thuật toán lai để kết hợp thao tác học và tiến hóa trong quá trìnhhọc
Daniel Bgraham và Nigel M Allinson (1998)[9], sử dụng phương phápđược gọi là tạo bản sao không gian đặc trưng để biểu diễn và nhận dạnghướng di chuyển của khuôn mặt
Oi Bin Sun, Chian Prong Lam và Jian Kang Wu (1998)[10], sử dụngphương pháp tìm vùng hai chân mày, hai mắt, mũi, miệng và cằm Ảnhkhuôn mặt thẳng ban đầu được chiếu theo chiều ngang để tìm các giá trịđiểm ảnh thỏa ngưỡng cho trước, đồ thị biểu diễn theo trục ngang sẽđịnh vị vị trí biên trên và biên dưới của hình chữ nhật bao các đặc trưngcục bộ khuôn mặt Tương tự với chiều đứng để tìm ra đường biên bêntrái và phải cho các vùng đặc trưng
Ara V.Nefian và Monson H.Hayes III (1998)[12] trình bày hướng tiếpcận theo mô hình mô hình Markov ẩn (HMM) trong đó ảnh mẫu khuônmặt được lượng hóa thành chuỗi quan sát trên khuôn mặt theo quanniệm dựa trên thứ tự xuất hiện các đặc trưng khuôn mặt {hai chân mày,hai lông mi, mũi, miệng, cằm} Trong chuỗi quan sát đó, mỗi quan sátlại là một vector nhiều chiều và mỗi vector quan sát này được sử dụng
để đặc trưng cho mỗi trạng thái trong chuỗi trạng trạng thái của HMM.Mỗi người được ước lượng bằng một mô hình của HMM
Guodong Guo, stan Z.LI, Kap luk chan(17 january 2001), dùng phươngpháp SVM để nhận dạng khuôn mặt Sử dụng chiến lược kết hợp nhiều
bộ phận loại nhị phân để xây dựng bộ phân loại SVM đa lớp
1.3.2 Hướng tiếp cận của luận văn
Trong đề tài này chúng tôi sử dụng phương pháp Phát hiện khuôn mặt sửdụng phương pháp Viola Jone Face Detection, Trích chọn đặc trưng sử dụngphương pháp Weber Local Descripor, phân tích thành phần chính và phương
Trang 15Sơ đồ hệ thống nhận dạng khuôn mặt được minh họa trong hình sau:
Hình 0.2 Mô hình nhận dạng khuôn mặt người
Trang 16CHƯƠNG 2: CÁC KỸ THUẬT CHO NHẬN DẠNG KHUÔN MẶT
I Học máy
1.1 Phương pháp Deep Learning (CNN)
CNN là một trong những mô hình deep learning tiên tiến giúp xây dựng
hệ thống thông minh với độ chính xác cao trong xử lý ảnh CNN được sử dụngnhiều trong các bài toán nhận dạng object trong ảnh Tuy nhiên phương phápnày lại có nhược điểm lớn là phải xây dựng một tập cơ sở dữ liệu lớn (mỗi tập
dữ liệu huấn luyện phải sử dụng ít nhất 1000 nhãn mới mang lại hiệu quả cao)
và đồng thời việc xử lý dữ liệu lớn đòi hỏi phải nhanh và chính xác
Mạng CNN là là một tập hợp các lớp Convolution chồng lên nhau và sửdụng các hàm nonlinear activation như ReLU và tanh để kích hoạt các trọng sốtrong các node Mỗi một lớp sau khi thông qua các hàm kích hoạt sẽ tạo ra cácthông tin trừu tượng hơn cho các lớp tiếp theo Mỗi một lớp sau khi thông quacác hàm kích hoạt sẽ tạo ra các thông tin trừu tượng hơn cho các lớp tiếp theo.Trong mô hình mạng truyền ngược (feedforward neural network) thì mỗi neuralđầu vào (input node) cho mỗi neural đầu ra trong các lớp tiếp theo Mô hình nàygọi là mạng kết nối đầy đủ (fully connected layer) hay mạng toàn vẹn (affinelayer) Còn trong mô hình CNNs thì ngược lại Các layer liên kết được với nhauthông qua cơ chế convolution Layer tiếp theo là kết quả convolution từ layertrước đó, nhờ vậy mà ta có được các kết nối cục bộ Như vậy mỗi neuron ở lớp
kế tiếp sinh ra từ kết quả của filter áp đặt lên một vùng ảnh cục bộ của neurontrước đó
1.2 Phương pháp truyền thống
PCA và SVM: Phương pháp PCA giảm bớt số thành phần không cần
thiết tạo ra hiệu quả tính toán nhanh mà vẫn đảm bảo được độ chính xác Sau
Trang 17khi PCA đưa ra được các đặc trưng tốt sẽ dùng SVM để phân lớp và nhận khuônmặt
II Các kỹ thuật sử dụng trong nhận dạng khuôn mặt
2.1.Phát hiện khuôn mặt (Viola Jone Face detection)
- Haar features: ý tưởng : độ sáng tối của các vùng trên gương mặt là khácnhau Ví dụ: vùng mắt tối hơn vùng má, vùng mũi sáng hơn vùng hai bên
- Kết quả của mỗi đặc trưng được tính bằng hiệu của tổng các pixel trongmiền ô trắng trừ đi tổng các pixel trong miền ô đen
Hình 0.3 Haar Features sử dụng trong Viola Jones (Nguồn: bài báo Viola Jone face detection)
Hình 0.4 Applying on a give image (Nguồn: bài báo Viola Jone face detection)
Thuật toán viola jones sử dụng cửa sổ 24x24 để đánh giá các đặc trưngcủa ảnh Nếu xem xét tất cả các tham số của các đặc trưng, ta tính được khoảng160.000+ đặc trưng cho mỗi cửa sổ
Trang 18Hình 0.5 Ví dụng về các haar features (Nguồn: Bài báo Viola Jone face detection)
- Integral Image: giá trị ở pixel (x, y) là tổng của các pixel ở trên và bêntrái (x,y) Cho phép tính tổng của các pixel trong bất kì hình chữ nhật chỉ với 4giá trị ở 4 góc
Trang 19Hình 0.6 Ví dụ ảnh Integral
Hình 0.7 Ảnh Ví dụ tính 1 ô pixcel
Trong các pixels: D=1 + 4 – (2+3) = A + (A + B +C + D)- (A+C + B) = D
- Có rất nhiều đặc trưng được lấy ra từ 1 cửa sổ nhưng chỉ có 1 số ít là hữudụng trong việc nhận diện khuôn mặt
Trang 20- Sử dụng thuật toán adaboost để tìm những đặc trưng tốt nhất Sau đó cácđặc trưng này được gán cho các trọng số để tạo nên hàm đánh giá quyết địnhxem một cửa sổ có là khuôn mặt hay không Mỗi đặc trưng chọn nếu chúng ítnhất thể hiện tốt hơn đoán ngẫu nhiên (phát hiện nhiều hơn một nửa)
- Các đặc trưng được gọi là các bộ phân lớp yếu Chúng được tổ hợp tuyếntính để tạo ra một bộ phân lớp mạnh
F(x) = ∝1f1(x) +∝2f2(x) +∝3f3(x) ∆ ∆
Strong clasifier Weak classifier
- Mặc dù một ảnh có thể chứa một hoặc nhiều khuôn mặt nhưng số lượng
vật không phải khuôn mặt vẫn lớn hơn rất nhiều => thuật toán nên tập trung vàoviệc bỏ những vật không phải khuôn mặt một cách nhanh chóng
- Một bộ phân lớp cascade (cascade classifier) được sử dụng tất cả các đặctrưng được nhóm vào vài stage Mỗi stage gồm một số các đặc trưng
- Mỗi stage được sử dụng để xác định một cửa số có phải là khuôn mặthay không
Trang 21Hình 0.8 các bước loại khuôn mặt hay không
Hình 0.9 Kết quả Phát hiện khuôn mặt (Nguồn: bài báo Viola Jone Face Detection)
Weber local Description (WLD): việc nhận thức của con người về một vậtmẫu không chỉ phụ thuộc vào sự thay đổi của một kích thích (âm thanh, ánhsáng…) mà còn phụ thuộc vào cường độ gốc của kích thích WLD gồm 2 thành
Trang 22phần chính: differential excitation và gradient orientation của ảnh và xây dựnghistogram dựa trên thành phần đó.
- Different excitations
Sử dụng sự khác nhau về cường độ giữa pixel hiện tại và các hàngxóm để miêu tả sự thay đổi của pixel hiện tại => mô phỏng quátrình nhận dạng mẫucủa con người
Ic: cường độ của pixel hiện tại
Ii: cường độ của pixel lân cận I = (0,1,…p-1) p: số pixel lân cận
Sự khác nhau giữa thành phần tử tâm và lân cận
Trang 23Hình 0.10 Tính kích thích sai khác (Nguồn WLD, tác giả Jie Chen, Member, IEEE, Shiguang Shan, Member, IEEE, Chu He, Guoying Zhao, Matti Pietikäinen, Senior Member, IEEE, Xilin Chen, Senior Member, IEEE, Wen Gao, Fellow, IEEE)
Hình 0.11 ảnh trên là ảnh gốc ảnh thứ 2 là gốc trích chọn đặc trưng (Nguồn WLD, tác giả Jie Chen, Member, IEEE, Shiguang Shan, Member, IEEE, Chu He, Guoying Zhao, Matti Pietikäinen, Senior Member, IEEE, Xilin Chen, Senior Member, IEEE, Wen Gao,
Fellow, IEEE)
- WLD histogram
Phần 0, 5: biến đổi của tần số cao
Phần 1, 4: biến đổi của tần số trung bình
Phần 2, 3: biến đổi của tần số thấp
Trang 24 Mỗi phần có những vài trò khác nhau trong từng nhiệm vụ phânlớp cần đánh giá trọng số cho từng phần.
Một cách phổ biến là tính tỉ lệ nhận dạng cho từng phần R={r m}
w m = r m/∑ i r i
Hình 0.12 Minh họa về tính toán của WLD ( Nguồn WLD, tác giả Jie Chen, Member, IEEE, Shiguang Shan, Member, IEEE, Chu He, Guoying Zhao, Matti Pietikäinen, Senior Member,
IEEE, Xilin Chen, Senior Member, IEEE, Wen Gao, Fellow, IEEE)
2.3 Giới thiệu phương pháp phân tích thành phần chính PCA
2.3.1 Giới thiệu phương pháp PCA
Phương pháp trích chọn đặc trưng được phát minh năm 1901 bởi KarlPearson,và được phát triển một cách độc lập bởi Hotelling (1933) Hiện nay nóđược sử dụng như một công cụ để phân tích dữ liệu nghiên cứu và thực hiện các
mô hình dự đoán PCA còn bao gồm cả việc tính toán phân tích các giá trị đặc
Trang 25trận dữ liệu thường sau khi tính trung bình dữ liệu của mỗi thuộc tính [11],[15].PCA là phương pháp đơn giản nhất phân tích đa biến dựa trên các vector đặctrưng Thông thường hoạt động của nó có thể được hiểu nhằm khám phá ra cấutrúc bên trong của dữ liệu Nếu một tập dữ liệu đa biến được xem xét như tậpcác tọa độ trong một không gian dữ liệu nhiều chiều (mỗi trục biểu diễn mộtbiến) thì phương pháp PCA cung cấp cho chúng ta một bức ảnh ít chiều, một cáibóng của vật thể khi quan sát từ chính những đặc trưng cơ bản nhất của vật thể
đó
Mục tiêu của phương pháp PCA là thực hiện giảm số chiều nhưng vẫnđảm bảo tối đa sự phân tán dữ liệu Có thể nói phương pháp trích chọn đặc trongtìm cách giữ lại những thành phần thống kê quan trọng nhất của tập dữ liệu banđầu
Giả sử ta cần giảm số chiều của dữ liệu từ N chiều xuống còn K (K<N)chiều nghĩa là ta cần tìm một ánh xạ từ không gian N chiều sang không gian Kchiều
Trong vấn đề đang xét của luận văn này, PCA là một thuật toán được sửdụng để tạo ra một ảnh mới từ ảnh ban đầu Ảnh mới này có kích thước nhỏ hơnrất nhiều so với ảnh đầu vào và vẫn mang những đặc trưng cơ bản nhất của ảnhcần nhận dạng Phương pháp PCA không cần quan tâm đến việc tìm ra các đặcđiểm cụ thể của thực thể cần nhận dạng và mối quan hệ giữa các đặc điểm đó.Tất cả các chi tiết của thực thể đều được thể hiện ở ảnh mới được tạo ra từ PCA
Bản chất của PCA là tìm ra một không gian mới theo hướng biến thiênmạnh nhất của một tập hợp các vector trong không gian cho trước Ở không gianmới, ta hi vọng rằng việc phân loại sẽ cho ta bộ dữ liệu tốt hơn so với bộ dữ liệutrong không gian ban đầu
Ví dụ: giả sử tập dữ liệu ban đầu được quan sát trong không gian ba chiềunhư hình bên trái Rõ ràng ba trục này (các trục có tên Databases, Data minning,Language trong hình 3) không biểu diễn được tốt nhất mức độ biến thiên của dữ
Trang 26hình bên trái) để biểu diễn tốt nhất mức độ biến thiên của dữ liệu Sau khi tìmđược không gian mới, dữ liệu sẽ được chuyển sang không gian này để được biểudiễn như trong hình bên phải Rõ ràng hình bên phải chỉ cần hai trục tọa độnhưng biểu diễn tốt hơn độ biến thiên của dữ liệu so với hệ trục toạ độ chiều banđầu.
Một ưu điểm của PCA là các trục toạ độ mới trong không gian luôn đảmbảo trực giao từng đôi một mặc dù trong không gian ban đầu các trục có thểkhông trục giao với nhau
Hình 0.13 Lụa chọn các trục toạ độ mới để biểu diễn dữ liệu
Xem tập mẫu gồm K vestors trong không gian M chiều [5], [17]:O= {f1 , f2,…f k,…f k} (2.1)
Giả sử cơ sở của không gian tập mẫu là:
B M = {ψ1 ,ψ2, ….ψ M } (2.2)
Ta có:
Trang 27Trong thực tế chúng ta không thể đưa tất cả các cơ sở M-chiều do nhiều lý
do khác nhau như M quá lớn hay có chứa một số thông tin không quan trọng Vìvậy chúng ta chuyển sang không gian có số chiều nhỏ hơn là N chiều Khi đótập mẫu là:
O = {f1, f2, …,f k,…f k} (2.5)
ở đây chúng ta quan tâm đến việc tìm một cơ sở trực giao ON) B M
(OrthNormal-B N= {ψ1,ψ2,…ψ N} với {ψ1,ψ2}=б ij (2.8)
Trang 29Do S là đối xứng nửa xác định riêng nên những vector riêng là trực giaođiều này đảm bảo cơ sở tối ưu là trực giao
Như vậy cơ sở mới được xây dựng từ cơ sở quan sát ban đầu theo phươngtrình:
(~O) T = O T B N (2.15)
Như ta biết phép biến đổi trực giao không làm thay đổi Trace-Vết của matrận mà phép biến đổi cơ sở này giữ lại K-vectors riêng ứng với K-trị riêng lớnnhất Nghĩa là sự phân bố các mẫu trong tập dữ liệu mới thu được luôn là lớnnhất
Theo các kết quả nghiên cứu thông thường ta chọn K sao cho
Với λ ilà các trị riêng của ma trận hiệp phương sai và λ1≥ λ2≥… ≥ λ N
Tóm lại, phương pháp PCA ánh xạ một vector từ không gian M chiềuxuống không gian N chiều sẽ đi tìm các giá trị riêng và vector riêng của ma trậnhiệp phương sai C của tập mẫu và giữ lại N vector riêng tương ứng với N giá trịriêng lớn nhất làm cơ sở cho không gian N chiều này
Trang 302.3.2 Đặc trưng PCA
Mục tiêu của phương pháp PCA là “giảm số chiều” của 1 tập vector saocho vẫn đảm bảo được “tối đa thông tin quan trọng nhất” phương pháp PCA sẽgiữ lại K thuộc tính “mới” từ M các thuộc tính ban đầu (K<M)
2.3.3 Phương pháp phân tích thành phần chính(PCA)
2.3.3.1 Vector riêng
Xét một toán tử tuyến tính f trong không gian Rn với các vector cơ sở :
Ei=[0…1…0]T ( với giá trị 1 nằm tại vị trí thứ i)Toán tử tuyến tính này sẽ được
biểu diễn bởi một ma trận vuông T kích thước nxn Một đại lượng vô hướng λ
được gọi là trị riêng của toán tử f, hay ma trận T, nếu tìm được một vector x,x≠0, sao cho
F(x)=λ(x) Hay T*x=λx
Vector x khi đó được gọi là vector riêng của f, hay T, ứng với trị riêng λ
Ma trận Tvới kích thước nxn trên đây sẽ có tối đa n trị riêng và n vector riêngtương ứng Một ma trận T khả nghịch đảo sẽ có đủ n trị riêng (kể cả trị riêngbội) và n vector riêng tương ứng
2.3.3.1 Kì vọng và ma trận hiệp phương sai.
Ma trận T (biểu diễn trong không gian Rn với các vector cơ sở ei nêu
trên) được gọi là chéo hóa được nếu tồn tại một cơ sở trong không gian Rn saocho ma trận T biểu diễn trong cơ sở đó có dạng chéo (các phần tử ngoài đườngchéo bằng 0).Ví dụ: Khảo sát trên không gian R5 với ma trận chéo 5×5
Giả sử C là ma trận các vector cơ sở mới được biểu diễn trong cơ sở {ei}
Ở đây, ma trận T được chuyển từ cơ sở {ei} sang cơ sở mới nên ma trận chuyển
2.3.3.2
Trang 31khả nghịch (tức là C tạo được một cơ sở trong Rn) sao cho :Tc=CaTCNếu ta có C là một ma trận có các cột là các vestor cơ sở đã được chuẩn hóa củakhông gian Rn thì CT=C-1, khi đó ta có thể viết: Tc = CT TC.
- Phương sai: là trung bình cộng của bình phương khoảng cách từ mỗi điểmtới kỳ vọng Phương sai càng nhỏ thì các điểm dữ liệu
- Càng gần với kỳ vọng, tức các điểm dữ liệu càng giống nhau Phương saicàng lớn thì ta nói dữ liệu càng có tính phân tán
Ví dụ kì vọng và phương sai:
Hình 0.14 Ví dụ về kỳ vọng và phương sai a) Trong không gian 1 chiều b) Không gian 2 chiều
mà hai chiều không tương quan Trong trường hợp này, ma trận
hiệp phương sai là ma trận đường chéo với hai phần tử trên đường chéo
Trang 32phương sai của mỗi chiều dữ liệu c) Dữ liệu trong không gian hai chiều cótương quan Theo mỗi chiều, ta có thể tính được kỳ vọng và phương sai Phươngsai càng lớn thì dữ liệu trong chiều đó càng phân tán Trong ví dụ này, dữ liệutheo chiều thứ hai phân tán nhiều hơn so so với chiều thứ nhất
2.3.4 Các bước thực hiện trích chọn đặc trưng PCA
Giả sử ta có N ảnh khuôn mặt, là tập ảnh huấn luyện X1,X2, X N Biểu diễnmỗi ảnh thành ma trận Mx1 có dạng: