Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo

Phát hiện giả mạo khuôn mặt là một bước quan trọng trong các hệ thống nhận

dạng khuôn mặt. Gần đây, sự phát triển của các mạng nơ-ron tích chập (Convolution

Neural Networks - CNNs) đang cho thấy kết quả vượt trội so với các phương pháp

truyền thống sử dụng các thuật toán xử lý ảnh khác. Bên cạnh đó, xu hướng di động

hóa đang đ i hỏi các phần mềm cần đáp ứng được khả năng thực thi trên các thiết bị

có năng lực hạn chế như điện thoại, thiết bị nhúng. Trong bài báo này, chúng tôi đề

xuất mạng nơ-ron tích chập hduNet được phát triển từ mạng MobilenetV2 của Google

để phát hiện giả mạo khuôn mặt nhằm hướng tới mục tiêu chạy trên các thiết bị phần

cứng yếu không sử dụng bộ xử lý đồ họa (GPU) mà vẫn đáp ứng độ chính xác. Ngoài

ra, chúng tôi cũng bổ sung thêm 5000 dữ liệu ảnh mang đặc trưng của người châu Á

để tăng cường hiệu quả và tránh việc mất cân bằng trong bộ dữ liệu chuẩn

LCC_FASD [1] vốn chỉ thiên về ảnh giả mạo với 16885 ảnh giả mạo và chỉ 1942 ảnh

thật. Cuối cùng, chúng tôi thực hiện đánh giá hiệu quả của mạng đề xuất trên tập dữ

liệu mới thu thập và ứng dụng kết quả trong một ứng dụng thực tiễn cụ thể.

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 1

Trang 1

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 2

Trang 2

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 3

Trang 3

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 4

Trang 4

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 5

Trang 5

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 6

Trang 6

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 7

Trang 7

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 8

Trang 8

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 9

Trang 9

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 12 trang duykhanh 3260
Bạn đang xem 10 trang mẫu của tài liệu "Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo", để 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: Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo

Phát hiện giả mạo khuôn mặt sử dụng công nghệ trí tuệ nhân tạo
 nhận thấy rằng. Cơ sở dữ 
liệu LCC_FASD tập trung phần lớn vào thu thập ảnh giả mạo với tỉ lệ ảnh thật/ảnh giả 
mạo chệnh lệch nhau rất lớn xấp xỉ 1/9 điều này có xu hƣớng dẫn đến kết quả quá 
trình huấn luyện mạng nơ-ron bị kém chính xác (underfitting). Trong khi đó, cơ sở dữ 
liệu NUAA với số lƣợng đối tƣợng không nhiều, chỉ 15 ngƣời khác nhau. Ngoài ra 
dạng tấn công của cơ sở dữ liệu NUAA chỉ là phƣơng pháp chụp ảnh và in lại trên 
giấy A4 (2D print-attack) mà không có đa dạng hóa hình thức tấn công bằng cách 
quay chụp lại khuôn mặt từ thiết bị số nhƣ điện thoại, máy tính bảng, (video replay 
attacks). Chính vì thế, với kỳ vọng có một mô hình mạng tốt, có tính tổng quát cao, 
phù hợp với đặc trƣng của ngƣời châu Á trong cả quá trình huấn luyện và quá trình 
kiểm thử thực tế. Chúng tôi xây dựng cơ sở dữ liệu mới, hduNet, tổng hợp dựa trên 2 
cơ sở dữ liệu trên và đóng góp thêm nhằm mục tiêu phù hợp với dữ liệu ngƣời châu 
Á, chi tiết đƣợc mô tả trong bảng 2. 
 Bảng 2. Thống kê số lƣợng ảnh trong tập dữ liệu hduDB 
 Phần Ảnh giả mạo Ảnh thật 
 Training 8000 4800 
 Valuation 2000 1200 
 Evaluation 4436 330 
 Tổng 14436 6330 
 4. THỰC NGHIỆM VÀ KẾT QUẢ 
 4.1. Môi trƣờng thực nghiệm 
 Thuật toán đƣợc cài đặt bằng ngôn ngữ Python trên thƣ viện hỗ trợ phát triển 
thuật toán học sâu Keras3. Ngoài ra quá trình huấn luyện thực hiện trên máy tính với 
hệ điều hành Ubuntu 18.4-LTS đƣợc trang bị Intel(R) Xeon(R) W-2133 CPU @ 
3.60GHz (16GB RAM), NVIDIA GeForce GTX GPU (11GB). 
 4.2. Tiền xử lý dữ liệu 
 Do sử dụng 3 nguồn dữ liệu khác nhau, để thực hiện huấn luyện mô hình mạng 
nơ-ron nhân chập chúng tôi cài đặt một số bƣớc tiền xử lý dữ liệu gồm: 
 Cơ sở dữ liệu LCC_FASD và NUAA: Thực hiện co, giãn ảnh về kích thƣớc 
chung là 128 x 128. Điều này đồng nghĩa với việc kích thƣớc ảnh đầu vào trong mạng 
hduNet là 128 x128, không phải là 224 x 224 của mạng MobileNetV2. Điều này, cũng 
giúp giảm đƣợc chi phí tính toán trong mạng nơ-ron. 
3 Thư viện lập trình mạng học sâu (deep learning): https://keras.io/ 
88 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
 Cơ sở dữ liệu hduNet: Vì dữ liệu do chúng tôi thực hiện đang ở mức thô gồm các 
video quay chụp từ camera an ninh, thiết bị di động, nên chúng tôi thực hiện quá trình 
xử lý theo các bƣớc nhƣ sau: Đầu tiên, video đầu vào đƣợc phân đoạn thành các khung 
hình tuần tự. Bƣớc tiếp theo, chúng tôi thực hiện thuật toán phát hiện khuôn mặt trong 
khung hình. Thứ ba, với những khung hình có chứa khuôn mặt chúng tôi xác định kích 
thƣớc của chúng và cắt vùng ảnh chứa khuôn mặt để lƣu trữ. Cuối cùng, với mỗi ảnh 
mới chỉ chứa khuôn mặt đƣợc điều chỉnh về kích thƣớc chuẩn 128 x 128. 
 4.3. Huấn luyện và đánh giá mô hình 
 Chúng tôi huấn luyện mạng hduNet với những tham số mạng gồm: learning rate 
là 0.0001, kích thƣớc batch size là 32, thuật toán tối ƣu Adam [19] và số lƣợng 
Epochs là 28. Hình 3 mô tả quá trình huấn luyện mạng hduNet. 
 Hình 3. Biểu đồ huấn luyện mạng hduNet với số lƣợng Epochs là 28 
 Qua hình 3 cho chúng ta thấy mô hình mạng nơ-ron hduNet học khá tốt, điều 
này đƣợc thể hiện qua 2 quá trình huấn luyện (training) và kiểm thử (validation). Biểu 
đồ hàm mục tiêu (loss) và độ chính xác (accuracy) của huấn luyện và kiểm thử đều 
bám sát nhau và đạt kết quả ấn tƣợng khi kết thúc huấn luyện với giá trị hàm mục tiêu 
giảm còn 0,02 và độ chính xác đạt 0.98 còn quá trình kiểm thử giá trị hàm mục tiêu và 
độ chính xác tƣơng ứng đạt 0,08 và 0,97. 
 Để đánh giá chất lƣợng mạng nơ-ron và độ tổng quát dữ liệu của mô hình 
hduNet chúng tôi thực hiện chạy mô hình mạng trên một tập dữ liệu đánh giá 
(evaluation data) gồm 4436 ảnh giả mạo và 330 ảnh thật, không nằm trong dữ liệu 
dùng huấn luyện và kiểm thử. Độ đo mà chúng tôi sử dụng là 3 độ đo phổ biến đƣợc 
sử dụng đánh giá các hệ thống sinh trắc học gồm: Độ chính xác (Accuracy) công 
thức (3), Tỉ lệ phân loại ảnh giả mạo nhầm thành ảnh thật (False Acceptance Rate - 
FAR) công thức (1), Tỉ lệ phân loại ảnh thật bị nhầm thành giả mạo (False Rejection 
Rate - FRR) công thức (2). Bảng 3 diễn giải cách tính FAR, FRR và Accuracy. 
 89 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
 Bảng 3. Ma trận nhầm lẫn (Confusion matrix) 
 Phân lớp bởi hệ thống 
 Lớp 
 Thật Giả mạo 
 Phân lớp đúng Thật TP FN 
 (nhãn) Giả mạo FP TN 
 Trong đó: 
 TP: Số lƣợng các mẫu thuộc lớp thật đƣợc phân loại đúng là ảnh thật. 
 FP: Số lƣợng các mẫu thuộc lớp giả mạo đƣợc phân loại nhầm thành ảnh thật. 
 FN: Số lƣợng các mẫu thuộc lớp thật đƣợc phân loại thành giả mạo. 
 TN: Số lƣợng các mẫu thuộc lớp giả mạo đƣợc phân loại đúng là giả mạo. 
 N: Tổng số lƣợng các mẫu đƣợc đánh giá (N = 4436 + 330 = 4766). 
 Kết quả tƣơng ứng chúng tôi thu đƣợc là FAR = 0.124, FRR =0.008 và 
Accuracy = 0.867. Kết quả của chúng tôi đƣợc đem so sánh với kết quả độ chính xác 
của nhóm tác giả [1] cùng sử dụng các mạng nơ-ron nhân chập CNNs khác. 
 Bảng 4 cho chúng ta thấy mặc dù kết quả độ chính xác của chúng tôi thấp hơn 
gần 10% so với kiến trúc mạng tốt nhất SeNet-154, nhƣng theo bảng 1 chúng tôi đã 
chỉ ra rằng mục tiêu của kiến trúc mạng này cần đạt đƣợc là kích thƣớc mạng cần đủ 
nhẹ với số lƣợng tham số ít. Chúng tôi đánh đổi một tỉ lệ để đạt đƣợc kiến trúc mạng 
nhẹ và độ chính xác vẫn ở mức cao là 86,7%. Ngoài ra, trong các kịch bản ứng dụng 
thực tế hệ thống nhận dạng khuôn mặt phải đối mặt với quá trình đối sánh và nhận 
dạng khuôn mặt, công đoạn này có thời gian tính toán tỉ lệ thuận với số lƣợng mẫu 
(ngƣời) trong cơ sở dữ liệu đối sánh. Hoặc là, trong các ứng dụng mà việc đọc dữ liệu 
từ luồng camera với tốc độ thông thƣờng 24 hình/giây, tốc độ xử lý của các ứng dụng 
là điều cần đƣợc ƣu tiên. Để đối phó với ràng buộc xử lý luồng video từ camera chúng 
tôi sẽ trình bày cụ thể trong phần tiếp theo. 
 Bảng 4. So sánh độ chính xác của hduNet và các CNNs 
 Mạng CNNs Độ chính xác (%) 
 Xception 95.9 
 ResNext-50 94.0 
 SeNet-154 96.2 
 hduNet 86.7 
90 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
 4.4. Ứng dụng thực tiễn 
 Trong các ứng dụng thực tiễn, việc phát hiện giả mạo khuôn mặt thƣờng đi kèm 
cùng nhiều thuật toán khác nhƣ phát hiện khuôn mặt, đánh dấu điểm đặc trƣng (mắt, 
mũi, miệng) trên khuôn mặt, trích chọn đặc trƣng (embedding features) và phân loại. 
Ngoài ra, dữ liệu đầu vào thƣờng sẽ là luồng video đƣợc đọc từ camera, webcam thay 
vì ảnh tĩnh nhƣ quá trình huấn luyện và kiểm thử. Chính vì thế, thuật toán trở nên thách 
thức hơn với việc xử lý luồng dữ liệu video (trung bình khoảng 24 khung hình/giây). 
Để giải quyết khó khăn này, chúng tôi cài đặt thêm một thuật toán hậu xử lý (post-
processing) đƣợc trình bày dƣới đây. 
 Thuật toán: phát hiện giả mạo khuôn mặt với dữ liệu video 
 Đầu vào: Ảnh thu nhận từ webcam, camera 
 01 : While True : 
 02 : Begin : 
 03 : count_real = 0 
 04 : Dò tìm và phát hiện khuôn mặt trong ảnh 
 05 : Cắt vùng khuôn mặt phát hiện 
 06 : Phát hiện khuôn mặt giả mạo 
 07 : count_real += 1 
 08 : If count_real > 5 : 
 09 : Begin : 
 10 : Hiển thị và vẽ hình bao quanh khuôn mặt với nhãn real 
 11 : count_real = 0 
 12 : End if : 
 13 : else 
 14 : Hiển thị và vẽ hình bao quanh khuôn mặt với nhãn fake 
 15 : End 
 (a) (b) (c) 
 Hình 4. Một số kết quả thực nghiệm phát hiện giả mạo khuôn mặt từ camera giám sát 
 (a) khuôn mặt thật trước camera, (b) khuôn mặt giả mạo được chụp bằng điện thoại, 
 (c) khuôn mặt giả mạo được in từ ảnh 
 91 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
 Để đánh giá về thời gian xử lý, chúng tôi thực nghiệm mô hình hduNet trên máy 
tính thông thƣờng đƣợc trang bị CPU Intel® Core™ i5-5300U, RAM 4GB. Qua bảng 
5 cho chúng ta thấy rằng, mặc dù hduNet có thời gian xử lý tối đa xấp xỉ đạt 15.4 FPS 
(Frames Per Second) nhƣng với việc kết hợp vào bộ dò tìm khuôn mặt và hậu xử lý thì 
về tổng thể thời gian xử lý vẫn cho kết quả gần thời gian thực (real-time) với trung 
bình 22.5 FPS. Nhƣ vậy, kết hợp mô hình hduNet và áp dụng thêm kĩ thuật hậu xử lý, 
thuật toán của chúng tôi trở nên bền vững và có tiềm năng ứng dụng trong các giải 
pháp thực tế hơn. Hình 4 mô tả một số kết quả thực nghiệm khi chạy mô hình trong 
điều kiện thực tế. 
 Bảng 5. Thời gian xử lý 
 Mô hình Max FPS 
 hduNet 15.4 
 Tích hợp hệ thống 22.5 
 5. KẾT LUẬN 
 Trong bài báo này, chúng tôi trình bày một hƣớng tiếp cận mới mà sử dụng 
phƣơng pháp học chuyển giao trong các mạng nơ-ron tích chập để giải quyết vấn đề 
phát hiện giả mạo khuôn mặt. Ngoài ra, chúng tôi cũng đóng góp thêm để xây dựng 
một cơ sở dữ liệu dành cho việc phát hiện giả mạo khuôn mặt với đặc trƣng khuôn 
mặt của ngƣời Châu Á. Cơ sở dữ liệu mới khắc phục đƣợc những hạn chế của 2 cơ sở 
dữ liệu LCC_ FASD và NUAA, trở thành một cơ sở dữ liệu mang tính đại diện tốt, 
mức độ tổng quát và đa dạng cao. Nhìn chung, giải pháp của chúng tôi đơn giản 
nhƣng hiệu quả và dễ sử dụng trong các tình huống ứng dụng thực tế. Trong tƣơng lai, 
chúng tôi hƣớng tới tích hợp mô hình phát hiện giả mạo khuôn mặt vào trong những 
ứng dụng nhƣ điểm danh, chấm công, khóa cửa nhận dạng khuôn mặt. 
 TÀI LIỆU THAM KHẢO 
[1] D. Timoshenko, K. Simonchik, V. Shutov, P. Zhelezneva and V. Grishkin (2019), 
 Large Crowdcollected Facial Anti-Spoofing Dataset, in Computer Science and 
 Information Technologies (CSIT), Yerevan, Armenia. 
[2] N. Evans (2019), Handbook of Biometric Anti-spoofing: Presentation Attack 
 Detection, Springer. 
[3] Y. Li, K. Xu, Q. Yan, Y. Li, and R. H. Deng (2014), Understanding osn-based 
 facial disclosure against face authentication systems, in Proceedings of the 9th 
 ACM symposium on Information, computer and communications security. ACM. 
[4] Tiago de Freitas Pereira, Andre Anjos, José Mario De Martino, and Sebastien 
 Marcel (2013), Can face anti-spoofing countermeasures work in a real world 
 scenario?, in International Conference on Biometrics (ICB). 
92 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
[5] Tiago de Freitas Pereira, Andre Anjos, José Mario De Martino, and Sebastien 
 Marcel (2012), Lbp- top based countermeasuré against face spoofing attacks, in 
 Asian Conference on Computer Vision. 
[6] Jukka Maatta, Abdenour Hadid, and Matti Pietikainen (2011), Face spoofing 
 detection from single images using micro-texture analysis, in International joint 
 conference on Biometrics (IJCB). 
[7] Keyurkumar Patel, Hu Han, and Anil K Jain (2016), Secure face unlock: Spoof 
 detection on smartphones, in IEEE Transactions on Information Forensics and 
 Security. 
[8] Z. Boulkenafet, J. Komulainen and A. Hadid (2017), Face Antispoofing Using 
 Speeded-Up Robust Features and Fisher Vector Encoding, IEEE Signal Processing 
 Letters, vol. 24, pp. 141-145,. 
[9] J. Komulainen, A. Hadid and M. Pietikäinen (2013), Context based face anti-
 spoofing, in IEEE Sixth International Conference on Biometrics: Theory, 
 Applications and Systems (BTAS), Arlington, VA. 
[10] J. Yang, Z. Lei, S. Liao and S. Z. Li (2013), Face liveness detection with 
 component dependent descriptor, in International Conference on Biometrics (ICB), 
 Madrid. 
[11] Zezheng Wang, Chenxu Zhao, Yunxiao Qin, Qiusheng Zhou, and Zhen Lei (2018), 
 Exploiting temporal and depth information for multi-frame face anti-spoofing, 
 CoRR, vol. abs/1811.05118. 
[12] Lei Li, Xiaoyi Feng, Zinelabidine Boulkenafet, Zhaoqiang Xia, Mingming Li, and 
 Abdenour Hadid (2016), An original face anti-spoofing approach using partial 
 convolutional neural network, in Sixth International Conference on Image 
 Processing Theory, Tools and Applications (IPTA). 
[13] Keyurkumar Patel, Hu Han, and Anil K Jain (2016), Cross-database face 
 antispoofing with robust feature representation, in Chinese Conference on 
 Biometric Recognition. 
[14] Javier Hernandez-Ortega, Julian Fierrez, Aythami Morales, and Pedro Tome (2018), 
 Time analysis of pulse-based face antispoofing in visible and nir, in Conference on 
 Computer Vision and Pattern Recognition Workshops. 
[15] Shifeng Zhang, Xiaobo Wang, Ajian Liu, Chenxu Zhao, Jun Wan, Sergio Escalera, 
 Hailin Shi, Zezheng Wang, and Stan Z Li (2018), Casia-surf: A dataset and benchmark 
 for large-scale multi-modal face anti-spoofing, CoRR, vol. abs/1812.00408. 
[16] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov and L. Chen (2018), 
 MobileNetV2: Inverted Residuals and Linear Bottlenecks, in Conference on 
 Computer Vision and Pattern Recognition, Salt Lake City, UT. 
 93 
 TẠP CHÍ KHOA HỌC TRƢỜNG ĐẠI HỌC HỒNG ĐỨC - SỐ 51.2020 
[17] J. Deng, W. Dong, R. Socher, L. Li, Kai Li and Li Fei-Fei (2009), ImageNet: A 
 large-scale hierarchical image database, in IEEE Conference on Computer Vision 
 and Pattern Recognition, Miami, FL. 
[18] Xiaoyang Tan, Yi Li, Jun Liu, and Lin Jiang (2010), Face liveness detection from a 
 single image with sparse low rank bilinear discriminative model, in the 11th 
 European conference on Computer vision, Berlin, Heidelberg. 
[19] Kingma Diederik P, Ba Jimmy (2015), Adam: A Method for Stochastic Optimization, 
 in the 3rd International Conference for Learning Representations, San Diego. 
[20] Howard AG, Zhu M, Chen B, Kalenichenko D, Wang W, Weyand T, Andreetto M, 
 Adam H (2017), MobileNets: Efficient Convolutional Neural Networks for Mobile 
 Vision Applications, in ArXiv. 
 A DEEP LEARNING TECHNIQUE FOR 
 FRAUD FACE DETECTION 
 Le Van Hao, Trinh Thi Anh Loan, Le Viet Nam, Nguyen Duc Toan 
 ABSTRACT 
 Fraud face detection is a crucial procedure for many face recognition systems. 
In recent years, state-of-the-art approaches based on convolution neural networks 
(CNNs) show impressive results compared to traditional methods using hand-crafted 
features. In addition, the increasing trend of embedding the computer vision systems 
on mobile devices requires that the designed algorithms are capable of dealing with 
the time-critical constraint. In this paper, we first propose a CNN model, namely 
hduNet, developed from Google’s MobilenetV2 that provides a flexible trade-off 
between latency and accuracy, to detect different face spoofing attacks. We then 
provide an addition dataset of roughly 5000 images capturing the characteristics of 
Vietnamse people. Combining with LCC_FASD [1] dataset (which is only 1942 real 
face images, while having 16855 fake face images), the proposed model is carefully 
fine-tuned to optimize the computational cost as well as the classification accuracy. 
To validate the model, different experiments have been conducted, demonstrating 
interesting performance in comparison with other methods. 
 Keywords: Face anti-spoofing, transfer learning, fine-tunning, convolution 
neural network. 
* Ngày nộp bài: 27/7/2020; Ngày gửi phản biện: 3/8/2020; Ngày duyệt đăng: 28/10/2020 
* Bài báo này là kết quả nghiên cứu từ đề tài cấp cơ sở mã số ĐT-2019-26 của 
Trường Đại học Hồng Đức. 
94 

File đính kèm:

  • pdfphat_hien_gia_mao_khuon_mat_su_dung_cong_nghe_tri_tue_nhan_t.pdf