Bối cảnh và vấn đề nghiên cứu
Trước sự bùng phát và diễn biến phức tạp của đại dịch COVID-19, ngành giáo dục đã trải qua giai đoạn chuyển đổi bắt buộc từ mô hình lớp học truyền thống sang hình thức đào tạo trực tuyến (E-learning, đào tạo từ xa, lớp học ảo). Mặc dù phương thức này giải quyết được vấn đề gián đoạn học tập do dịch bệnh, việc triển khai thực tế bộc lộ nhiều hạn chế về tính tự giác của người học. Học sinh, sinh viên thường có xu hướng thụ động, dễ bị xao nhãng bởi các hoạt động cá nhân như sử dụng điện thoại di động, làm việc riêng, ngủ gật, hoặc đăng nhập vào lớp học rồi rời đi mà giảng viên không thể kiểm soát trực tiếp. Vấn đề này nếu kéo dài sẽ gây suy giảm chất lượng tiếp thu kiến thức và ảnh hưởng tiêu cực đến hiệu quả đào tạo chung.
Trước thực trạng đó, nhóm tác giả thuộc Khoa Đào tạo Chất lượng cao, Trường Đại học Sư phạm Kỹ thuật TP.HCM đã thực hiện đồ án tốt nghiệp với đề tài "Design of automatic attendance register and student concentration level monitoring system" (Thiết kế hệ thống điểm danh tự động và giám sát mức độ tập trung của sinh viên).
Mục tiêu và nhiệm vụ nghiên cứu của đồ án bao gồm:
- Nghiên cứu tổng quan các tài liệu khoa học, thuật toán nhận diện khuôn mặt và các kỹ thuật theo dõi chuyển động mắt, đồng tử nhằm lựa chọn mô hình tối ưu.
- Thiết kế sơ đồ khối, lưu đồ thuật toán và xây dựng giao diện đồ họa người dùng (GUI) mô phỏng hệ thống lớp học trực tuyến tích hợp chức năng điểm danh tự động thông qua nhận diện khuôn mặt.
- Tích hợp thuật toán định vị và theo dõi đồng tử (pupil tracking) theo thời gian thực nhằm đo lường thời gian sinh viên nhìn lệch khỏi màn hình, từ đó đánh giá mức độ tập trung trong suốt buổi học.
- Vận hành, thử nghiệm hệ thống, thu thập dữ liệu nhật ký học tập xuất ra file Excel và hoàn thiện báo cáo đồ án.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Các thuật toán xử lý ảnh, thị giác máy tính và thư viện MediaPipe ứng dụng trong nhận diện khuôn mặt, định vị các điểm mốc sinh trắc học và theo dõi đồng tử của người học.
- Phạm vi và điều kiện thực nghiệm: Đề tài giới hạn trong việc ứng dụng các mô hình sẵn có kết hợp xây dựng giao diện ứng dụng bằng ngôn ngữ Python. Quá trình hoạt động của hệ thống yêu cầu môi trường có điều kiện ánh sáng tốt, không bị ngược sáng từ ánh nắng mặt trời, và khoảng cách giữa người học với thiết bị thu nhận hình ảnh (camera) không vượt quá 1 mét.
Cơ sở lý thuyết và phương pháp
Đồ án tiến hành khảo cứu có hệ thống các công trình nghiên cứu tiền đề về nhận diện khuôn mặt và định vị mắt trong môi trường học tập trực tuyến, bao gồm:
- Thuật toán Adaboost và Face-contour (Wang & Peng, 2013): Sử dụng lọc kết nối loại bỏ vùng nhiễu, phân tích đường viền khuôn mặt kết hợp Adaboost, đạt độ chính xác 92% trong điều kiện ánh sáng yếu và hỗ trợ người đeo kính.
- Phương pháp trích xuất đặc trưng hình học (2015): Tính toán vị trí mắt trái, mắt phải, mũi, miệng dựa trên khoảng cách Euclidean qua 12 bước xử lý đối sánh với cơ sở dữ liệu codebook.
- Các kỹ thuật LBP, Haar Cascade và Deep Learning (2018): Đánh giá cấu trúc nhị phân cục bộ (LBP) đạt độ chính xác khoảng 70% ở thời gian thực; Haar Cascade (Viola & Jones, 2001) đạt độ chính xác 94% nhưng nhạy cảm với ánh sáng không đều (hoặc đạt 68% với độ trễ 4 giây trong một số thử nghiệm); Deep Learning (DeepID / Deep CNN) đạt độ chính xác nhận diện 95% với thời gian xử lý khoảng 1 giây.
- Thuật toán Eigenfaces (Turk & Pentland): Phân loại khuôn mặt dựa trên ma trận hiệp phương sai và vector riêng (eigenvector), đòi hỏi điều kiện ánh sáng và góc chụp đồng nhất.
- Mô hình Support Vector Machine - SVM (2021): Sử dụng hàm Hinge Loss phân loại vector đặc trưng khuôn mặt (face embeddings) trong không gian nhiều chiều, đạt độ chính xác khớp khoảng 61% trên bộ dữ liệu 50 ảnh thời gian thực.
- Các kỹ thuật định vị tâm đồng tử (Pupil Center Tracking - PCT): Phân tích hàm phân phối tích lũy (CDF) và phép co hình thái học (morphological erosion) trên bộ dữ liệu BioID (đạt độ chính xác 90% cho mắt trái và 94% cho mắt phải trong sai số 5 pixel); ứng dụng khối Non-Local Blocks (NLB) và Self-Attention Blocks (SAB) đạt tốc độ 52 FPS và độ chính xác 96,38%; thuật toán CycleGAN xóa kính mắt; mạng nơ-ron LVCF kết hợp mạng tích chập VCF với mô hình dự đoán chuyển động LSTM trên 3 bộ dữ liệu (>10.000 ảnh và 75 video); thuật toán DeepVOG và DeepEye; kiến trúc DeepLabCut ResNet-50 trên bộ dữ liệu Pupil-PIE (1.791 ảnh) giúp giảm thời gian tính toán 3 đến 8 lần với độ chính xác 96%.
Dựa trên việc so sánh hiệu năng, tác giả lựa chọn nền tảng MediaPipe do Google phát triển làm giải pháp cốt lõi. MediaPipe cung cấp kiến trúc đường ống xử lý luồng dữ liệu (pipeline) dạng đồ thị định hướng (GraphConfig protocol buffer bao gồm các calculator và data stream), hỗ trợ xử lý đa nền tảng và tối ưu hóa tài nguyên phần cứng. Các module chính được khai thác gồm:
- MediaPipe Face Detection (BlazeFace): Định vị nhanh khuôn mặt với 6 điểm mốc chính (mắt phải, mắt trái, chóp mũi, trung tâm miệng, tai phải, tai trái).
- MediaPipe Face Mesh: Dự đoán 468 điểm mốc 3D trên bề mặt khuôn mặt theo thời gian thực từ đầu vào camera đơn lẻ (không cần cảm biến độ sâu), kết hợp phương pháp thống kê Procrustes Analysis.
- MediaPipe Iris Detection: Trích xuất vùng chứa mắt kích thước 64x64 pixel đưa vào mạng hồi quy nơ-ron nhỏ (kiến trúc Bazarevsky) để xác định 5 điểm mốc 2D cho mống mắt/đồng tử (1 điểm tâm đồng tử, 4 điểm viền ngoài mống mắt) và 16 điểm viền mắt. Khi kết hợp với Face Mesh, tổng số điểm mốc được mở rộng lên 478 điểm (468 điểm khuôn mặt + 10 điểm cho hai đồng tử mắt).
Phương pháp nghiên cứu thực nghiệm bao gồm: thu nhận hình ảnh thời gian thực qua webcam, tiền xử lý ảnh (chuyển đổi sang hệ màu RGB và chuẩn hóa kích thước), trích xuất tọa độ điểm mốc sinh trắc học, tính toán góc nhìn/hướng nhìn đồng tử, đối soát thông tin tài khoản qua định dạng tệp tin JSON và xuất nhật ký dữ liệu giám sát ra tệp bảng tính Excel.
Thiết kế và triển khai
Hệ thống được thiết kế dưới dạng ứng dụng giao diện đồ họa người dùng (GUI) hoàn chỉnh trên nền tảng ngôn ngữ lập trình Python, bao gồm 5 trang chức năng chính:
- Trang Đăng nhập (Login Page): Tiếp nhận thông tin định danh người dùng gồm tên đăng nhập và mật khẩu. Hệ thống tiến hành truy vấn, đối chiếu với cơ sở dữ liệu lưu trữ cấu trúc JSON chứa mã số sinh viên (ID) và họ tên. Khi xác thực thành công, hệ thống chuyển sang giao diện chính.
- Trang Giao diện chính (Main Page): Bố cục giao diện chia làm 3 khu vực: thanh điều hướng menu góc trên bên trái (dẫn đến trang dữ liệu khuôn mặt và thông tin cá nhân), khu vực đăng xuất ở góc trên bên phải, và phần thân giao diện hiển thị danh sách các lớp học cùng siêu dữ liệu lớp học để truy cập vào từng phiên học cụ thể.
- Trang Thu thập dữ liệu (Data Collection Page): Sử dụng cho sinh viên đăng ký dữ liệu khuôn mặt trong lần đầu sử dụng. Giao diện hiển thị khung camera trực tiếp và khung hình ảnh vừa chụp. Sau khi nhấn nút "Get Data", hình ảnh chụp được sẽ hiển thị để người dùng kiểm tra; người dùng nhấn "Confirm" để xác nhận lưu ảnh mẫu vào cơ sở dữ liệu phục vụ đối sánh nhận diện.
- Trang Thông tin cá nhân (Personal Information Page): Hiển thị chi tiết hồ sơ sinh viên gồm họ và tên, mã số sinh viên, mã lớp học và ảnh đại diện. Nếu sinh viên chưa có ảnh trên hệ thống, giao diện cung cấp nút "Capture" để chuyển hướng nhanh đến trang thu thập dữ liệu.
- Trang Lớp học (Classroom Page): Tích hợp hai tiến trình xử lý cốt lõi:
- Phân hệ Điểm danh (Check-in section): Sinh viên nhấn nút "Check In", camera ghi nhận hình ảnh thực tế và so sánh với ảnh mẫu đã đăng ký. Nếu trùng khớp, hệ thống mở bảng thông báo xác nhận kèm họ tên, mã sinh viên, ngày giờ điểm danh, đồng thời ghi dữ liệu vào tệp Excel. Nếu khuôn mặt không trùng khớp, hệ thống hiển thị thông báo lỗi và từ chối ghi nhận điểm danh.
- Phân hệ Giám sát mức độ tập trung (Concentration monitoring section): Thu nhận luồng video liên tục để theo dõi tọa độ đồng tử. Khi phát hiện sinh viên quay đầu hoặc liếc mắt sang trái/phải lệch khỏi màn hình, một bộ đếm thời gian (timer) sẽ kích hoạt. Nếu thời gian nhìn ra ngoài vượt ngưỡng quy định, bảng cảnh báo "You are not focused" sẽ hiển thị trực tiếp trên màn hình. Để tắt cảnh báo, sinh viên phải điều chỉnh tư thế ngồi thẳng và hướng mắt nhìn trực diện vào màn hình.
Dữ liệu học tập của sinh viên được tự động ghi nhận và phân tích trong tệp bảng tính Excel theo các trường thông tin: Mã số sinh viên, Họ tên, Lớp học, Thời gian vào lớp (Check-in), Thời gian kết thúc (Check-out), Tổng thời gian tham gia lớp học, và Tổng thời gian nhìn lệch khỏi màn hình.
| Mức độ tập trung |
Tỷ lệ thời gian không nhìn vào màn hình (%) |
Ý nghĩa đánh giá |
| Excellent (Xuất sắc) |
0% - 20% |
Sinh viên duy trì mức độ tập trung cao trong suốt buổi học |
| Good (Tốt) |
21% - 50% |
Sinh viên duy trì sự tập trung ở mức khá, ít xao nhãng |
| Not Good (Chưa tốt) |
51% - 80% |
Sinh viên xao nhãng nhiều, thời gian mất tập trung chiếm phần lớn |
| Bad (Kém) |
> 80% |
Sinh viên hầu như không tập trung vào bài giảng |
Nội dung chính theo từng chương
Báo cáo đồ án tốt nghiệp có cấu trúc gồm 5 chương, độ dài 54 trang với nội dung chi tiết như sau:
Chapter 1: Overview (Tổng quan)
Chương này trình bày bối cảnh thực tiễn của giáo dục trực tuyến trong thời kỳ dịch bệnh, nêu rõ các khó khăn trong việc quản lý ý thức tự giác của người học khi học từ xa. Tác giả xác định lý do chọn đề tài, mục tiêu thiết kế mô hình hệ thống tích hợp điểm danh và giám sát mức độ tập trung, phạm vi giới hạn kỹ thuật (khoảng cách dưới 1 mét, yêu cầu chiếu sáng) và cấu trúc bố cục tổng thể của báo cáo tốt nghiệp.
Chapter 2: Theoretical Foundations / Literature Review (Cơ sở lý thuyết)
Chương 2 tổng thuật các công trình nghiên cứu liên quan đến thị giác máy tính và nhận diện khuôn mặt trong E-learning (Adaboost, LBP, Haar Cascade, DeepID, Eigenfaces, SVM, các phương pháp trích xuất đồng tử CDF, NLB/SAB, LVCF, DeepVOG, DeepEye, ResNet-50). Tiếp theo, chương đi sâu phân tích kiến trúc nền tảng MediaPipe của Google (GraphConfig, Calculator, Data Stream) cùng các giải pháp chuyên biệt: BlazeFace (6 điểm mốc), Face Mesh (468 điểm mốc 3D), Hands Detection (21 điểm mốc khớp tay), Human Pose Estimation và Iris Detection (mô hình mạng nơ-ron Bazarevsky trích xuất 5 điểm mống mắt, mở rộng toàn bộ lưới mặt lên 478 điểm mốc sinh trắc học).
Chapter 3: Design System (Thiết kế hệ thống)
Chương 3 mô tả kiến trúc tổng thể của hệ thống điểm danh và theo dõi độ tập trung. Tác giả trình bày sơ đồ khối vận hành (Block diagram), các lưu đồ thuật toán chi tiết (Flowcharts) cho từng phân hệ xử lý: quy trình xác thực đăng nhập qua file JSON, quy trình chụp và chuẩn hóa dữ liệu ảnh đầu vào tại trang Data Collection, và quy trình xử lý đa luồng tại trang Classroom (kết hợp điểm danh khuôn mặt và giám sát góc nhìn đồng tử).
Chapter 4: Result and Discussion (Kết quả và bàn luận)
Chương 4 công bố các kết quả thực nghiệm đạt được sau 15 tuần nghiên cứu và phát triển phần mềm bằng Python. Tác giả trình bày chi tiết hình ảnh giao diện thực tế của 5 trang ứng dụng (Login, Main Page, Get Data, Personal Info, Classroom Page), minh họa hoạt động của cơ chế cảnh báo "You are not focused", phân tích cấu trúc bảng dữ liệu nhật ký học tập xuất ra file Excel và thảo luận về độ chính xác vận hành của hệ thống trong thực tế.
Chapter 5: Conclusion and Further Work (Kết luận và hướng phát triển)
Chương 5 tóm tắt các nhiệm vụ kỹ thuật đã hoàn thành so với mục tiêu đề ra ban đầu, khẳng định tính khả thi của hệ thống trong việc ứng dụng vào các lớp học trực tuyến, đồng thời chỉ ra các hạn chế kỹ thuật còn tồn đọng và đề xuất các định hướng nghiên cứu nhằm nâng cấp hệ thống trong tương lai.
Kết quả và đóng góp
Sau quá trình 15 tuần triển khai nghiên cứu và thực nghiệm, đề tài đã đạt được các kết quả cụ thể:
- Xây dựng thành công phần mềm giao diện đồ họa người dùng (GUI) hoàn chỉnh trên nền tảng Python, bao gồm 5 trang chức năng đáp ứng đầy đủ quy trình quản lý lớp học trực tuyến từ đăng nhập, lấy dữ liệu khuôn mặt, xem hồ sơ cá nhân đến điểm danh và giám sát lớp học.
- Tích hợp thành công mô hình MediaPipe Iris và Face Mesh với 478 điểm mốc sinh trắc học, cho phép phát hiện khuôn mặt và theo dõi hướng nhìn đồng tử trong thời gian thực.
- Theo số liệu công bố trong văn bản, tính năng nhận diện khuôn mặt điểm danh đạt tốc độ xử lý nhanh với độ chính xác đạt trên 90%. Đồng thời, tính năng phát hiện và theo dõi đồng tử theo thời gian thực cũng ghi nhận độ chính xác trên 90%.
- Thiết lập cơ chế cảnh báo trực quan thời gian thực ("You are not focused") khi phát hiện người học mất tập trung và tự động xuất báo cáo đánh giá mức độ chuyên cần theo 4 thang bậc (Excellent, Good, Not Good, Bad) sang tệp Excel giúp giảng viên dễ dàng quản lý.
Đóng góp của đề tài thể hiện ở việc giải quyết bài toán giám sát liên tục trong E-learning. Thay vì chỉ xác thực danh tính một lần tại thời điểm đăng nhập ban đầu như phần lớn các hệ thống trước đây, mô hình đề xuất đã kết hợp được cả khâu xác thực danh tính lẫn việc theo dõi mức độ chú ý của sinh viên trong toàn bộ thời gian diễn ra buổi học.
Hạn chế và hướng nghiên cứu tiếp
Văn bản đồ án chỉ ra một số hạn chế và định hướng phát triển:
- Hạn chế:
- Hệ thống nhạy cảm với điều kiện môi trường ánh sáng; việc nhận diện khuôn mặt và phát hiện đồng tử không thể thực hiện chính xác nếu người học ngồi ngược hướng ánh sáng mặt trời hoặc trong môi trường thiếu sáng.
- Phạm vi hoạt động bị giới hạn về khoảng cách vật lý giữa người học và camera thu hình (không vượt quá 1 mét).
- Đề tài tập trung vào việc tích hợp và ứng dụng các mô hình thị giác máy tính sẵn có, chưa mở rộng đánh giá sâu trên nhiều môi trường phần cứng nhúng khác nhau.
- Hướng nghiên cứu tiếp: Tiếp tục nghiên cứu, tối ưu hóa các thuật toán xử lý để nâng cao độ bền vững của mô hình trước sự thay đổi phức tạp của ánh sáng và góc chụp, hoàn thiện các tính năng để đáp ứng tốt hơn yêu cầu thực tiễn của cuộc sống hiện đại.
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích cho sinh viên và học viên thuộc các chuyên ngành Công nghệ Kỹ thuật Điện tử - Truyền thông, Công nghệ Thông tin, Kỹ thuật Máy tính và Khoa học Dữ liệu khi nghiên cứu về các bài toán:
- Ứng dụng thư viện MediaPipe trong việc nhận diện khuôn mặt và trích xuất điểm mốc 3D (Face Mesh, Iris Detection).
- Kỹ thuật theo dõi đồng tử mắt (pupil tracking) và xác định hướng nhìn (gaze estimation) theo thời gian thực.
- Thiết kế ứng dụng giao diện người dùng (GUI) bằng Python tích hợp xử lý ảnh và trích xuất dữ liệu báo cáo tự động sang Excel.
- Tổng hợp tài liệu tham khảo về các thuật toán thị giác máy tính cổ điển và học sâu (Adaboost, Haar Cascade, LBP, SVM, LSTM, DeepVOG, DeepLabCut).
Câu hỏi thường gặp
1. Hệ thống sử dụng bao nhiêu điểm mốc (landmarks) trên khuôn mặt để phục vụ việc theo dõi và nhận diện?
Hệ thống sử dụng tổng cộng 478 điểm mốc sinh trắc học dựa trên nền tảng MediaPipe, bao gồm 468 điểm mốc 3D từ mô hình Face Mesh để tái tạo hình học bề mặt khuôn mặt và 10 điểm mốc từ mô hình Iris Detection (5 điểm cho mỗi bên mắt gồm tâm đồng tử và viền mống mắt).
2. Tiêu chí phân loại mức độ tập trung của sinh viên trong file Excel được tính toán như thế nào?
Hệ thống dựa trên tỷ lệ phần trăm giữa thời gian sinh viên nhìn lệch khỏi màn hình và tổng thời gian tham gia lớp học để xếp loại theo 4 mức: Xuất sắc / Excellent (0% - 20%), Tốt / Good (21% - 50%), Chưa tốt / Not Good (51% - 80%), và Kém / Bad (> 80%).
3. Những điều kiện và giới hạn vật lý nào được yêu cầu đối với người học khi sử dụng hệ thống?
Người học cần ngồi học ở nơi có đủ ánh sáng, tránh ngồi ngược hướng ánh sáng mặt trời, duy trì tư thế ngồi thẳng lưng và giữ khoảng cách giữa khuôn mặt với thiết bị camera không vượt quá 1 mét.
4. Giao diện phần mềm được xây dựng bằng ngôn ngữ nào và gồm những phân hệ nào?
Phần mềm được lập trình bằng ngôn ngữ Python với giao diện GUI gồm 5 trang: Trang Đăng nhập (Login), Trang Giao diện chính (Main), Trang Thu thập dữ liệu (Get Data), Trang Thông tin cá nhân (Personal Information) và Trang Lớp học (Classroom).
5. Cơ chế cảnh báo khi sinh viên mất tập trung trong giờ học hoạt động ra sao?
Khi thuật toán phát hiện đồng tử mắt của sinh viên liếc sang trái hoặc phải lệch khỏi màn hình máy tính, bộ đếm thời gian sẽ bắt đầu đếm. Nếu thời gian nhìn ra ngoài chạm ngưỡng định trước, màn hình sẽ hiển thị thông báo "You are not focused"; sinh viên phải ngồi thẳng và nhìn trực diện vào màn hình để tắt thông báo này.
Kết luận
Đồ án tốt nghiệp của nhóm tác giả Lê Xuân Tuấn Đạt và Trương Khắc Huy (ngành Công nghệ Kỹ thuật Điện tử - Truyền thông, Trường Đại học Sư phạm Kỹ thuật TP.HCM) đã nghiên cứu và ứng dụng thành công thư viện MediaPipe để xây dựng hệ thống điểm danh tự động kết hợp giám sát mức độ tập trung của sinh viên qua giao diện Python. Hệ thống đạt độ chính xác trên 90% cho cả tác vụ nhận diện khuôn mặt và theo dõi đồng tử mắt ở điều kiện tiêu chuẩn, đồng thời tự động thống kê nhật ký và phân loại mức độ tập trung xuất ra file Excel. Đây là tài liệu tham khảo có giá trị thực tiễn trong lĩnh vực xử lý ảnh và ứng dụng thị giác máy tính hỗ trợ quản lý giáo dục trực tuyến.