Đánh giá hiệu năng của phương pháp phân tích thành phần chính PCA trong nhận dạng khuôn mặt có biến đổi về sắc thái

Tóm tắt – Các phương pháp nhận dạng mặt

người dựa trên vẻ ngoài thường gặp các khó khăn

khi khuôn mặt được nhận dạng có sự thay đổi

về sắc thái như khóc, cười, há miệng,. . . Trong

trường hợp này, các phương pháp nhận dạng

toàn phần có hiệu năng tốt hơn. Bài báo này

trình bày một số đánh giá dựa trên phương pháp

nhận dạng toàn phần trên mặt người có biến đổi

về sắc thái, sử dụng phương pháp rút gọn số

chiều PCA và các thuật toán phân lớp. Kết quả

thực nghiệm cho thấy độ chính xác phân lớp tốt

nhất khi sử dụng rất ít eigenvectors và thuật toán

KNN (khi k=1) cho kết quả tốt hơn SVM

pdf 6 trang yennguyen 3600
Bạn đang xem tài liệu "Đánh giá hiệu năng của phương pháp phân tích thành phần chính PCA trong nhận dạng khuôn mặt có biến đổi về sắc thái", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Đánh giá hiệu năng của phương pháp phân tích thành phần chính PCA trong nhận dạng khuôn mặt có biến đổi về sắc thái

Đánh giá hiệu năng của phương pháp phân tích thành phần chính PCA trong nhận dạng khuôn mặt có biến đổi về sắc thái
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018
61
ĐÁNH GIÁ HIỆU NĂNG CỦA PHƯƠNG PHÁP PHÂN TÍCH
THÀNH PHẦN CHÍNH PCA TRONG
NHẬN DẠNG KHUÔNMẶT CÓ BIẾN ĐỔI VỀ SẮC THÁI
Dương Ngọc Vân Khanh1, Nguyễn Bảo Ân2
AN EVALUATION ON PERFORMANCE OF PCA IN FACE RECOGNITION
WITH EXPRESSION VARIATIONS
Duong Ngoc Van Khanh1, Nguyen Bao An2
Tóm tắt – Các phương pháp nhận dạng mặt
người dựa trên vẻ ngoài thường gặp các khó khăn
khi khuôn mặt được nhận dạng có sự thay đổi
về sắc thái như khóc, cười, há miệng,. . . Trong
trường hợp này, các phương pháp nhận dạng
toàn phần có hiệu năng tốt hơn. Bài báo này
trình bày một số đánh giá dựa trên phương pháp
nhận dạng toàn phần trên mặt người có biến đổi
về sắc thái, sử dụng phương pháp rút gọn số
chiều PCA và các thuật toán phân lớp. Kết quả
thực nghiệm cho thấy độ chính xác phân lớp tốt
nhất khi sử dụng rất ít eigenvectors và thuật toán
KNN (khi k=1) cho kết quả tốt hơn SVM.
Từ khóa: nhận dạng khuôn mặt có biến đổi
sắc thái, phân tích thành phần chính, thuật
toán KNN
Abstract – Appearance-based recognition
methods often encounter difficulties when the
input images contain facial expression variations
such as laughing, crying or wide mouth open-
ing. In these cases, holistic methods give bet-
ter performance than appearance-based methods.
This paper presents some evaluation on face
recognition under variation of facial expression
1,2Bộ môn Công nghệ Thông tin, Khoa Kĩ thuật và Công
nghệ, Trường Đại học Trà Vinh
Ngày nhận bài: 21/12/2017; Ngày nhận kết quả bình
duyệt: 22/02/2018; Ngày chấp nhận đăng: 30/7/2018
Email: vankhanh@tvu.edu.vn
1,2School of Information Technology, School of Engineer-
ing and Technology, Tra Vinh University
Received date: 21st December 2017; Revised date:
22nd February 2018; Accepted date: 30th July 2018
using the combination of PCA and classification
algorithms. The experimental results showed that
the best accuracy can be obtained with very
few eigenvectors and KNN algorithm (with k=1)
performs better than SVM in most test cases.
Keywords: face recognition under expression
variations, principle component analysis, KNN
algorithm
I. GIỚI THIỆU
Nhận dạng khuôn mặt (facial recognition) là
một bài toán tiêu biểu của học máy (machine
learning) và nhận dạng mẫu (pattern recognition).
Thao tác nhận dạng thường được cài đặt bằng
một thuật toán phân lớp (classification) dưới mô
hình học có giám sát (supervised learning). Một
cách tổng quát, ảnh đầu vào luôn chịu ảnh hưởng
bởi một hoặc nhiều sự biến đổi so với ảnh được
lưu trong cơ sở dữ liệu. Một số biến đổi có
thể kể đến là điều kiện ánh sáng (illumination
variation – trong đó bao gồm hướng và cường
độ của nguồn sáng), góc chụp (pose variation),
trang điểm (make-up), tuổi tác (aging), biểu cảm
của khuôn mặt (facial expression),... Các nghiên
cứu nhận dạng mặt người đều cố gắng thích nghi
với nhiều sự biến đổi nhất có thể. Bài báo này
trình bày kết quả việc ứng dụng phương pháp
phân tích thành phần chính Principal Component
Analysis (PCA) trong rút gọn số chiều dữ liệu để
nhận dạng khuôn mặt người có biến đổi về sắc
thái với nhiều thuật toán phân lớp khác nhau. Kết
quả cho thấy khi xử lí rút gọn số chiều bằng PCA,
thuật toán phân lớp K-nearest neighbors (KNN)
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018 KHOA HỌC CÔNG NGHỆ - MÔI TRƯỜNG
(với k=1) cho kết quả trong tập dữ liệu kiểm thử
tốt hơn so với thuật toán Support Vector Machine
(SVM) trong hầu hết thí nghiệm.
II. TỔNG QUAN NGHIÊN CỨU
A. Các kĩ thuật nhận dạng khuôn mặt
Các kĩ thuật nhận dạng khuôn mặt có thể chia
thành ba nhóm chính: nhận dạng từ ảnh tĩnh,
nhận dạng từ chuỗi ảnh động (video) và nhận
dạng theo mô hình ba chiều (với ảnh của đối
tượng được ghi nhận bởi một camera hồng ngoại
3D). Phạm vi bài báo này chỉ trình bày chi tiết
phương pháp nhận dạng ảnh tĩnh. Các kĩ thuật
nhận dạng khuôn mặt từ ảnh tĩnh có thể chia ra
hai nhóm: nhận dạng dựa vào đặc trưng (từng
phần – feature based recognition) và nhận dạng
toàn phần (holistic).
1) Các kĩ thuật nhận dạng dựa vào đặc trưng
(feature based): Trong các kĩ thuật này, người
ta thường cố gắng trích ra những đặc trưng trên
khuôn mặt như mũi, mắt, miệng, chân mày và
tính mối liên hệ về hình học giữa các điểm này,
sau đó rút gọn ảnh đầu vào bằng một vector biểu
thị đặc trưng hình học của khuôn mặt. Tiếp theo,
chúng ta sử dụng các vector này để so khớp trong
bộ nhận dạng. Cách rút trích đặc trưng khuôn
mặt sử dụng trong nhiều phương pháp khác nhau
được biểu diễn trong các Hình 1 và 2. Năm 1993,
Brunelli và Poggio [1] xây dựng một mô hình
nhận dạng gồm 35 đặc trưng hình học của khuôn
mặt từ một cơ sở dữ liệu khuôn mặt của 47 người.
Mô hình này cho tần số nhận dạng khoảng 90%.
Năm 1996, Cox và cộng sự [4] xây dựng một mô
hình phức tạp hơn là sử dụng một vector 30 chiều
trích xuất từ mô hình 35 đặc trưng và cho tần số
nhận dạng đến 95%. Một cách tiếp cận khác là
sử dụng đồ thị co giãn (elastic bunch graph) để
biểu thị đặc trưng của khuôn mặt [2], một số điểm
chuẩn trên khuôn mặt được chọn, các cạnh nối
các điểm chuẩn này sẽ tạo thành một đồ thị dạng
lưới bao trùm hết khuôn mặt, khi có một khuôn
mặt mới cần nhận dạng, đồ thị cho khuôn mặt
mới sẽ được hình thành bằng thuật toán Elastic
Bunch Graph Matching. Phương pháp này cho độ
chính xác lên đến 98%. Nhưng cách tiếp cận dễ
hơn đã được đề xuất bởi Liposcak và Loncaric
[3] với vector 21 đặc trưng sử dụng phương pháp
Hình 1: a) Các đặc trưng hình học - (Nguồn:
Theo R. Brunelli và T. Poggio [1])
b) Mô hình 35 đặc trưng - (Nguồn: Theo I. J.
Cox và cộng sự [4])
c) Lưới các đặc trưng - (Nguồn: Theo L. Wiskott
[2])
d) Mô hình 12 điểm đặc trưng - (Nguồn: Theo
Z. Liposcak [3])
e) Mô hình 21 vector đặc trưng – (Nguồn: Theo
Z. Liposcak [3])
lọc subspace filtering và cho độ chính xác khoảng
90%.
Các phương pháp nhận dạng dựa trên đặc
trưng, do chỉ trích xuất các đặc trưng từng phần
của khuôn mặt, có ưu điểm là mạnh mẽ với sự
thay đổi của vị trí khuôn mặt trong ảnh, kích
thước của ảnh cũng như hướng và điều kiện ánh
sáng và tốc độ so khớp khi nhận dạng nhanh. Tuy
nhiên, khó khăn của các phương pháp này là sự
phức tạp trong các thao tác xử lí ảnh để trích xuất
các đặc trưng và xác định mức độ quan trọng của
từng đặc trưng.
2) Các kĩ thuật nhận dạng toàn phần (holistic):
Kĩ thuật nhận dạng toàn phần dùng toàn bộ khuôn
mặt để làm dữ liệu đầu vào. Để nhận dạng,
người ta thường dùng các thuật toán máy học
như SVM (Support Vector Machine) [5], mạng
Neuron, KNN (K nearest neighbors – K láng
giềng gần nhất). . . Thông thường, chúng ta phải
dùng một hàm đo độ tương tự giữa hai đối tượng
dữ liệu, phổ biến nhất là khoảng cách Euclidean
(Euclidean distance). Tuy nhiên, do ảnh có số
62
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018 KHOA HỌC CÔNG NGHỆ - MÔI TRƯỜNG
chiều lớn (trên dưới 100x100) nên cần có một
phương pháp rút gọn số chiều để đưa dữ liệu
về một không gian có số chiều nhỏ hơn so với
không gian gốc và tiến hành các thao tác nhận
dạng trên dữ liệu mới này mà không ảnh hưởng
đến kết quả phân lớp (thậm chí mang lại hiệu
quả cao hơn khi tiến hành trên không gian gốc).
Hai phương pháp rút gọn số chiều thường được
sử dụng là PCA (Principle Component Analysis)
[6], [7] và LDA (Linear Discriminant Analysis)
[8].
Ưu điểm của phương pháp nhận dạng toàn
phần là lấy toàn bộ dữ liệu của khuôn mặt làm
dữ liệu nhận dạng, tránh mất mát thông tin. Tuy
nhiên, điều này cũng hạn chế khi một số phương
pháp xem rằng tất cả pixel trong ảnh đều có độ
quan trọng như nhau. Hơn nữa, độ phức tạp tính
toán khi tính độ tương quan giữa toàn bộ các ảnh
cũng rất cao cũng như hiệu năng của nhận dạng
khi điều kiện ánh sáng, góc chụp thay đổi cũng
không tốt.
Với dữ liệu mặt người có sự biến đổi về sắc
thái, chúng tôi cho rằng sự sai biệt giữa phần của
khuôn mặt tạo nên các sắc thái khác nhau, ví dụ
như miệng và mắt của một người khi cười sẽ rất
khác biệt so với khi khóc. Do đó, chúng ta sẽ rất
khó tìm được sự tương quan khi sử dụng phương
pháp nhận dạng dựa trên đặc trưng. Ngược lại,
khi sử dụng phương pháp nhận dạng toàn phần,
các biến đổi về sắc thái này được kì vọng không
ảnh hưởng nghiêm trọng đến độ đo sự tương tự
giữa các ảnh. Nếu chiếu lên không gian tọa độ,
ta kì vọng rằng các ảnh của cùng một người với
biến đổi sắc thái khác nhau vẫn nằm gần nhau.
Đó là lí do chúng tôi chọn PCA để xử lí trường
hợp ảnh khuôn mặt có biến đổi sắc thái, vì PCA
là phương pháp rút gọn số chiều nhưng vẫn duy
trì sự phân bố của dữ liệu rất tốt. Bài báo này
nhằm đánh giá hiệu năng của phương pháp PCA
và so sánh giữa thuật toán KNN và SVM trong
phân lớp dữ liệu mặt người có biến đổi sắc thái
trong một số kịch bản khác nhau.
B. Phương pháp PCA (Principle Component
Analysis)
Phân tích thành phần chính (Priciple Compo-
nent Analysis – PCA) được đề xuất lần đầu tiên
bởi Karl Pearson vào năm 1901 [8] và được ứng
dụng trong các lĩnh vực khác nhau dưới nhiều
tên gọi khác nhau. Trong phân tích dữ liệu, PCA
được sử dụng rộng rãi để khám phá dữ liệu (data
exploring), rút gọn dữ liệu (data reduction), nén
dữ liệu (data compression) đối với dữ liệu có số
chiều lớn, khó trực quan hóa và tính toán.
Mục đích chính của PCA là giảm số chiều dữ
liệu với các mục tiêu: i) tìm một không gian mới
với số chiều ít hơn so với không gian gốc nhưng
vẫn giữ được khả năng biểu diễn phân bố của dữ
liệu tương đương hoặc tốt hơn trong không gian
cũ, tức là đảm bảo độ biến thiên (variability) của
dữ liệu trên số chiều mới; ii) các trục tọa độ trong
không gian mới phải trực giao với nhau và được
tính toán dựa vào dữ liệu quan sát được ở không
gian cũ; iii) kì vọng đặt ra với không gian mới
là tính tương quan của dữ liệu được thể hiện tốt
hơn trong không gian gốc. Như vậy, ta phải tìm
các vector trực giao ω sao cho khi ta chiếu dữ
liệu lên các vector này thì phương sai của dữ liệu
được tối đa hóa.
Với X là ma trận dữ liệu gốc ta muốn tối đa
hóa Var(ωT X), với ràng buộc ||ω||=1, bài toán
tối đa hóa trên có hàm mục tiêu J(ω)=Var(ωT X)
(1)
Theo công thức của phương sai, ta có thể thế
vào (1), với µ là trung bình của X
J(ω) = E(ωTX − ωTµ)2 = E(ωTX −
ωTµ)(XTω−µTω) = ωTE(X−µ)(X−µ)Tω =
ωTΣ
với Σ= E(X-µ) (X-µ)T là ma trận hiệp phương
sai.
Với mục tiêu là cực đại hóa J(ω) theo biến ω,
với ω được chuẩn hóa sao cho thỏa ràng buộc
||ω||=1, điều này có thể được giải quyết bởi thao
tác tối ưu hóa Lagrangian với các ràng buộc đã
nêu: L(ω,λ)= ωT σω-λ(ωT ω-1).
Tạo phương trình L′ (ω,λ)=0 với L′ (ω,λ) là
đạo hàm của L(ω,λ) theo biến ω, ta có:
∂L(ω, λ)
∂Lω
= 2Σω − 2λω = 0↔ Σω = λω
Lúc này, mục tiêu của bài toán trở về tìm biến
ω thỏa mãn Σω = λω. Dựa vào định nghĩa của
eigenvector và eigenvalue, ta thấy, mục tiêu là tìm
các eigenvector ω và eigenvalue của ma trận hiệp
phương sai Σ. Với dữ liệu có n chiều, ta có thể tìm
được n eigenvector và n eigenvalue. Tuy nhiên,
63
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018 KHOA HỌC CÔNG NGHỆ - MÔI TRƯỜNG
ta không cần sử dụng hết tất cả các eigenvector
mà chỉ cần chọn một số eigenvector sao cho tại
đó eigenvalue đạt một giá trị tương đối cao. Điều
này có thể thực hiện bằng cách sắp xếp lại các
eigenvector theo thứ tự giảm dần của eigenvalue
tương ứng, sau đó chọn ra n eigenvectors để đại
diện cho không gian mới, với n rất nhỏ so số
chiều của không gian gốc. Ta gọi các eigenvector
được chọn là FeatureVector, vậy:
FeatureV ector = (eig1, eig2eig3. . . eign)
C. Thủ thuật Gram Matrix
Giả sử ta có bộ dữ liệu ảnh với kích thước
200×200 (40.000 chiều), vậy kích thước của ma
trận hiệp phương sai Σ = E(X − µ)(X − µ)T
là 400002. Trong thực tế, ta không thể khởi tạo
một ma trận có số chiều cực lớn như vậy khi lập
trình. Hơn nữa, với tập dữ liệu có N mẫu (N rất
nhỏ so với số chiều của dữ liệu), chúng ta chỉ
cần tối đa N-1 eigenvectors. Để giải quyết vấn
đề này, ta sử dụng thủ thuật Gram Matrix.
Ta biết Σ = E(X − µ)(X − µ)T . Ta phải giải
bài toán tìm v và λ sao cho: Σ v= λ v ↔ XXT
v=λ v.
Nhân cả hai vế cho XT ta có: XT XXT v=λ
XT v.
Đặt v′ = XT v, ta được: XTXv′ = λv′. Vậy,
bài toán được đưa về tìm eigenvector v’. Ma trận
XT X được gọi là ma trận Gram. Kích thước
của nó không phụ thuộc vào số chiều của dữ liệu
nhưng phụ thuộc vào số mẫu dữ liệu trong bộ dữ
liệu đào tạo. Số chiều của nó bằng N×N, với N
là số đối tượng dữ liệu trong tập dữ liệu.
Vậy, thay vì tìm các eigenvectors v cho một
ma trận hiệp phương sai khổng lồ, ta chỉ cần
tìm các eigenvector v’ cho ma trận Gram có số
chiều NxN. Như vậy, ta chỉ cần tìm tối đa N-1
eigenvector để biểu diễn không gian mới. Vấn đề
còn lại là làm sao phục hồi lại được v từ v’
Ta có:
XXT v = λv (1)
v′ = XT v (2)
Thế (2) vào (1) ta được Xv′=′ v, vậy v=Xv′ (ta
không quan tâm đến hằng số λ vốn kéo dài v ra
λ lần, vì ||v||=1)
III. CÀI ĐẶT THỰC NGHIỆM
Thử nghiệm được cài đặt bằng Matlab. Dữ
liệu thử nghiệm được lấy từ bộ dữ liệu Face
Expression Database (CMU AMP Lab) [9] bao
gồm ảnh gương mặt của 13 người khác nhau với
nhiều nét biểu cảm khác nhau, mỗi người có 74
ảnh với kích thước 64×64 pixels (Hình 2). Thí
nghiệm được tiến hành như sau:
Bước 1: Chọn 5 ảnh đầu tiên của mỗi người
làm dữ liệu đào tạo, vậy tập dữ liệu Dtraining có
13×5 = 65 ảnh.
Bước 2: Thực hiện PCA trên tập Dtraining để
tìm các eigenvector và eigenvalue, ta có tất cả 65-
1= 64 eigenvectors và eigenvalues, ảnh của các
eigenvector đầu tiên thể hiện trong Hình 3.
Hình 2: Một số ảnh trong bộ dữ liệu thử nghiệm
(Nguồn: Electrical & Computer engineering [9])
Bước 3: Lấy 3 eigenvector quan trọng nhất (có
eigenvalue lớn nhất) biểu diễn không gian mới.
Vậy, dữ liệu được rút gọn từ 64x64=4096 chiều
xuống còn 3 chiều.
Bước 4: Chiếu tập dữ liệu đào tạo lên không
gian ba chiều vừa hình thành, ta được 65 mẫu
dữ liệu ba chiều. Hình 4 thể hiện phân bố của
các mẫu dữ liệu đào tạo ba lớp 1, 2, và 3 trong
không gian ba chiều. Dễ thấy, trong không gian
đã rút gọn, phân bố của các đối tượng tương đối
tách biệt giữa các lớp.
Bước 5: Dùng tập 13×69 ảnh còn làm tập dữ
liệu kiểm thử, ta cũng rút gọn bộ dữ liệu này bằng
cách chiếu lên không gian ba chiều đã chọn. Phân
bố của toàn bộ 3×75 ảnh của ba lớp đầu tiên khi
chiếu lên không gian ba chiều được biểu diễn ở
Hình 4. Ta có thể thấy ảnh của ba lớp phân bố
ở ba cụm phân biệt rất rõ ràng. Điều này chứng
tỏ không gian mới, dù chỉ ba chiều, thể hiện sự
biến thiên của dữ liệu rất tốt và có thể làm tăng
hiệu quả phân lớp.
64
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018 KHOA HỌC CÔNG NGHỆ - MÔI TRƯỜNG
Hình 3: Ảnh trung bình và ảnh của các
eigenvector.
(Nguồn: Kết quả thí nghiệm)
Hình 4: a) Hình chiếu trong không gian ba chiều
của dữ liệu đào tạo ba lớp 1, 2 và 3
b) Phân bố của tất cả các ảnh thuộc ba lớp 1, 2
và 3
(Nguồn: Kết quả thí nghiệm)
Bước cuối cùng là sử dụng thuật toán KNN để
phân lớp: dựa vào khoảng cách Euclidean trong
không gian ba chiều, ta có thể gán nhãn cho một
ảnh đang xét dựa vào nhãn chiếm đa số trong k
láng giềng gần nhất của nó. Do số lớp tương đối
lớn, khi sử dụng k>1 sẽ gây tình trạng cạnh tranh
giữa các nhãn dữ liệu được gán, do đó chúng tôi
chọn k=1 trong tất cả thí nghiệm.
IV. KẾT QUẢ THỰC NGHIỆM VÀ
THẢO LUẬN
A. Lựa chọn số eigen vector tối ưu cho PCA
Để chọn số eigen vector tối ưu cho PCA, chúng
tôi thử nghiệm thay đổi số eigen vectors từ 2 đến
30 và sử dụng hai thuật toán KNN và SVM để
phân lớp và được kết quả như trong Hình 5. Thực
nghiệm cho thấy PCA không cần quá nhiều eigen
vectors để tái tạo dữ liệu nhưng vẫn đảm bảo
tính chính xác của phép phân lớp. Trong tất cả
64 eigenvector có được từ bộ dữ liệu đào tạo, với
thuật toán KNN, ta chỉ cần sử dụng 4 vectors để
có được kết quả tốt nhất, tuy nhiên với thuật toán
SVM khi tăng số eigenvector lên trên 10 vectors,
hiệu năng phân lớp sẽ giảm dần.
Hình 5: Độ chính xác phân lớp khi sử dụng số
eigenvector khác nhau.
(Nguồn: Kết quả thí nghiệm)
B. Các đánh giá hiệu năng trên tập dữ liệu
không đầy đủ
Để đánh giá hiệu năng của PCA trên các bộ
dữ liệu khuôn mặt không hoàn chỉnh và với các
thuật toán phân lớp khác nhau, chúng tôi tạo
các bộ dữ liệu khuôn mặt mới dựa vào tập dữ
liệu AMP. Trong đó, tất cả các ảnh sẽ được che
một phần bằng màu đen hoặc thêm nhiễu ngẫu
nhiên theo cả hai hướng đứng và ngang, tên và
ví dụ các bộ dữ liệu được thể hiện trong Hình 6a
(con số trong tên bộ dữ liệu thể hiện số cột/dòng
bị che).
Sau khi tạo bộ dữ liệu không hoàn chỉnh,
chúng tôi thực hiện theo quy trình đã mô tả ở
trên và phân lớp theo bằng cả hai thuật toán
KNN (k=1) và SVM. Độ chính xác của các thao
tác thể hiện ở Hình 6. Đối với ảnh bị che theo
chiều ngang, trong cả hai trường hợp khi bị che
khoảng 30% phía trên, cả hai thuật toán đều cho
kết quả trên 90%. Khi tăng phần khuôn mặt bị
che lên đến 50%, độ chính xác của bộ ảnh bị che
bằng nhiễu ngẫu nhiên giảm đi đáng kể, đặc biệt
65
TẠP CHÍ KHOA HỌC TRƯỜNG ĐẠI HỌC TRÀ VINH, SỐ 30, THÁNG 6 NĂM 2018 KHOA HỌC CÔNG NGHỆ - MÔI TRƯỜNG
Hình 6: a) Ảnh khuôn mặt che bằng nhiều ngẫu
nhiên; so sánh độ chính xác phân lớp với dữ liệu
khuôn mặt bị che ngang bằng màu đen (a), che
ngang bằng nhiễu ngẫu nhiên (b) và che bên trái
bằng nhiễu ngẫu nhiên (c)
(Nguồn: Kết quả thí nghiệm)
là với thuật toán SVM. Còn đối với bộ ảnh bị
che theo chiều dọc bên trái, khi phần bị che lên
đến 25%, thuật toán KNN vẫn cho độ chính xác
trên 90%, trong khi SVM chỉ cho độ chính xác
khoảng 80%.
Nhìn chung, kết quả thực nghiệm cho thấy
thuật toán KNN cho hiệu năng phân lớp khuôn
mặt tốt nhất khi k=1 và trong phần lớn trường
hợp KNN đều cho kết quả tốt hơn SVM. Đối với
các bộ dữ liệu khuôn mặt không hoàn chỉnh, dễ
thấy trường hợp khuôn mặt bị che theo chiều dọc
ảnh hưởng lớn đến khả năng phân lớp hơn trường
hợp vùng khuôn mặt bị che theo chiều ngang và
vùng bị che bằng nhiễu ngẫu nhiên sẽ ảnh hưởng
lên hiệu năng phân lớp lớn hơn so với bị che
bằng màu đen.
V. KẾT LUẬN
Bài báo này trình bày một phương pháp hữu
hiệu để nhận dạng khuôn mặt có độ chính xác
đáng kể khi thực thi trên bộ dữ liệu khuôn mặt
có biến đổi về sắc thái. Thực nghiệm chứng tỏ
khi sử dụng PCA để rút gọn số chiều và đưa dữ
liệu gốc về một không gian ít chiều hơn, phân bố
của dữ liệu vẫn đảm bảo tính biến thiên như kì
vọng. Đặc biệt với bộ dữ liệu ảnh có biến đổi về
sắc thái khuôn mặt, dữ liệu được rút gọn thuộc
các lớp khác nhau phân bố ở các cụm rất rõ ràng
và tách biệt trong không gian mới, điều này giúp
tăng hiệu quả phân lớp so với trong không gian
gốc. Khi tiến hành phân lớp với hai thuật toán
KNN và SVM, thuật toán KNN với k =1 cho kết
quả tốt trong hầu hết trường hợp. Sau khi thực
hiện PCA, độ phức tạp tính toán giảm đi đáng
kể (với bộ dữ liêu thử nghiệm, có thể giảm từ
4096 chiều về ba chiều), nhờ đó có thể dễ dàng
cài đặt ở các thiết bị có hiệu năng tính toán thấp
và cần thời gian đáp ứng nhanh. Tuy hiệu năng
phân lớp ở các trường hợp dữ liệu không hoàn
chỉnh vẫn chưa cao nhưng sự kết hợp giữa PCA
và KNN vẫn là một cách tiếp cận rất đáng quan
tâm nghiên cứu như một mô hình tham chiếu
trong các nghiên cứu nhận dạng mặt người.
TÀI LIỆU THAM KHẢO
[1] Brunelli R, Poggio T. Face recognition: features versus
templates. IEEE Transactions on Pattern Analysis and
Machine Intelligence. 1993;15:1042–1052.
[2] Wiskott L, Fellous J M, Kru¨ger N, von der Malsburg C.
Face Recognition by Elastic Bunch Graph Matching.
In: L C Jain, U Halici, I Hayashi, S B Lee, , Jae-Ho,
editors. Intelligent Biometric Techniques in Fingerprint
and Face Recognition. CRC Press; 1999. p. 355–396.
[3] Liposcak Z, Loncaric S. A scale-space approach to
face recognition from profiles. In: Proceedings of the
8th International Conference on Computer Analysis of
Images and Patterns. London, UK: Springer- Verlag;
1999. p. 243–250.
[4] Cox I J Ghosn J, Yianilos P N. Feature- based face
recognition using mixture-distance. In: Proceedings
of IEEE Conference on Computer Vision and Pattern
Recognition; 1996. p. 209–216.
[5] Cortes C, Vapnik V. Support-vector networks. Machine
Learning. 1995;20(3):273–297.
[6] Jain A K, Dubes R C. Algorithms for Clustering Data.
vol. 152. New Jersey: Prentice-Hall; 1988.
[7] Fukunaga K. Introduction to Statistical Pattern Recog-
nition. 2nd ed. MA: Academic Press; 1990.
[8] Pearson K. On Lines and Planes of Closest Fit to
Systems of Points in Space. Philosophical Magazine.
1901;p. 1042–1052.
[9] Electrical & Computer Engineering. Face Au-
thentication Project ; 2018. Truy cập từ:
/FaceAuthentication/download.html [Ngày truy cập:
14/11/2017].
66

File đính kèm:

  • pdfdanh_gia_hieu_nang_cua_phuong_phap_phan_tich_thanh_phan_chin.pdf