Nghiên cứu công nghệ DeepFace trong nhận dạng khuôn mặt và ứng dụng vào điểm danh các lớp sinh viên khoa CNTT
Vấn đề giám sát an ninh trong khuôn viên các trường ĐH và kiểm soát việc tham dự lớp học của sinh viên tại giảng đường ĐH là việc làm cần thiết để đảm bảo an toàn cho môi trường học tập và nâng cao chất lượng học tập, đào tạo của sinh viên. Hiện nay giảng viên có thể tiến hành điểm danh sinh viên bằng nhiều hình thức khác nhau như: trực tiếp gọi tên, điểm danh thông qua bài kiểm tra,…
Trong khuôn khổ đề tài cấp học viện năm 2023 “Nghiên cứu công nghệ DeepFace trong nhận dạng khuôn mặt và ứng dụng vào điểm danh các lớp sinh viên khoa CNTT” do ThS. Lương Minh Quân làm chủ nhiệm, nhóm tác giả đề xuất việc sử dụng công nghệ nhận dạng khuôn mặt được phát triển bởi deepface để phát hiện các đặc trưng đơn nhất của mỗi khuôn mặt người, từ đó xây dựng hệ thống nhận dạng tự động thông qua camera giám sát tại giảng đường hoặc ảnh chụp lớp học để phát hiện sự có mặt của sinh viên một cách tự động. Việc này sẽ làm giảm áp lực công việc cho giảng viên giảng dạy trên lớp, đồng thời sẽ tạo ra cảm hứng cho sinh viên đam mê nghiên cứu khoa học, nâng cao chất lượng đào tạo đặc biệt với sinh viên Khoa CNTT.
- Cơ sở lý thuyết
1.1 Mạng học sâu đa nhiệm (MTCNN)
MTCNN là một mạng nơ-ron có thể thực hiện nhận diện khuôn mặt và căn chỉnh khuôn mặt trên hình ảnh. Zhang Z. & cs (2016) đã giới thiệu mạng nơ-ron này bao gồm 3 mạng riêng biệt: mạng nơ – ron đề xuất P; mạng nơ-ron tinh chỉnh R và mạng đầu ra O.
1.2 Mạng học sâu FaceNet
Trong mạng CNN với hàm Loss truyền thống, ở đó ta chỉ so sánh giá trị đầu ra của mạng với giá trị thực (ground truth) của dữ liệu. Schroff. F & cs đã đưa ra hàm mất mát 3 điểm (triplet loss) bao gồm 3 giá trị đầu vào: mỏ neo (anchor) – là ảnh khuôn mặt đầu ra của mạng; (positive) – là ảnh khuôn mặt của cùng một người giống với anchor; (negative) – là ảnh khuôn mặt của một người khác với anchor. Yêu cầu của thuật toán Triplet Loss là cực tiểu hóa khoảng cách euclid (Euclidean distance) giữa và (anchor– positive) tương ứng với ảnh khuôn mặt của cùng một nhân dạng và cực đại hóa khoảng cách giữa và (anchor – negative) tương ứng với ảnh khuôn mặt của các nhân dạng khác nhau (hình 5).
1.3. Kết hợp mạng MTCNN và FaceNet
Trong nghiên cứu này, nhóm nghiên cứu sử dụng mạng học sâu đa nhiệm MTCNN để phát hiện khuôn mặt người trong bức ảnh cần phân tích. Mỗi hình ảnh khuôn mặt phát hiện được từ mạng này sẽ được cắt và thay đổi kích thước thành kích thước chuẩn 160×160 pixels và được truyền qua mạng FaceNet để số hóa thành véc tơ 128 chiều. Véc tơ số hóa này được lưu lại thành bộ cơ sở dữ liệu cơ bản và được sử dụng để so sánh mức độ tương tự nhau giữa các khuôn mặt bằng cách tích khoảng cách giữa các véc tơ với nhau thông qua thuật toán phân lớp SVM.
- Một số kết quả nghiên cứu chính
2.1. Phân tích số liệu số hóa khuôn mặt
2.1.1. Phương pháp phân tích thành phần chính (PCA)
Phương pháp phân tích thành phần chính (PCA) được sử dụng để phân tích sự phân bố trong không gian 3 chiều cấu trúc dữ liệu của véc tơ nhúng 128-D cho 200 sinh viên.
2.1.2. Phương pháp phân tích dựa trên các thuật toán máy học
Để đánh giá bộ dữ liệu kiểm tra của 200 (mẫu), mỗi mẫu có 30 ảnh, mỗi ảnh được mã hóa thành véc tơ 128 – D, theo tỉ lệ 80, 20 dữ liệu cho tập đào kiểm thử. Nhóm nghiên cứu sử dụng các mô hình học máy từ thư viện sklearn để đánh giá độ chính xác của các thuật toán. Kết quả được mô tả trong bảng 2. Từ kết quả trên cho thấy, các mô hình học máy KNN và SVM cho kết quả có độ chính xác tới trên 99% với bộ dữ liệu được số hóa bởi mạng MTCNN – FaceNet
2.1.3. Phần mềm nhận diện khuôn mặt
Phần mềm nhận diện khuôn mặt được phát triển bởi nhóm nghiên cứu dựa trên 3 công nghệ lõi: Mạng học sâu đa nhiệm MTCNN; Mạng số hóa hình ảnh khuôn mặt bởi FaceNet; Giải thuật phân lớp SVM
- Kết luận
Nhóm nghiên cứu đã phát triển thành công phần mềm nhận dạng khuôn mặt người dựa trên mạng học sâu đa nhiệm MTCNN, số hóa bởi công nghệ FaceNet và nhận diện khuôn mặt bằng thuật toán phân lớp SVM dựa trên khoảng cách giữa các véc tơ số hóa trong không gian 128 chiều. Nhóm đã áp dụng phần mềm trên các nhóm sinh viên khoa CNTT tham gia thực tập Vật lý tại phòng thí nghiệm với các hình thức điểm danh khác nhau: điểm danh qua ảnh chụp; điểm danh có kiểm soát của giáo viên và điểm danh tự động. Số liệu điểm danh theo từng buổi được lưu trữ trong cơ sở dữ liệu giúp giáo viên dễ dàng thống kê thông tin tham dự lớp học của từng sinh viên.
Công nghệ điểm danh qua nhận dạng khuôn mặt đã hỗ trợ giáo viên trong việc quản lý sinh viên một cách hiệu quả, qua đó kịp thời ngăn chặn được các hình thức gian lận trong học tập như: sinh viên bỏ học và thuê người khác đi học, điểm danh; thuê người đi thi; …
ThS. Lương Minh Quân – Khoa Công nghệ thông tin