Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh đại dịch COVID-19 diễn biến phức tạp và kéo dài, ngành giáo dục đã trải qua giai đoạn chuyển đổi mạnh mẽ từ hình thức giảng dạy truyền thống sang đào tạo trực tuyến (E-learning). Mặc dù các nền tảng lớp học ảo và phần mềm trực tuyến giúp duy trì tiến độ học tập mà không yêu cầu người học phải có mặt trực tiếp tại giảng đường, hình thức này bộc lộ nhiều hạn chế về mặt quản lý và duy trì ý thức học tập của người học. Sinh viên thường thiếu tính tự giác, có xu hướng làm việc riêng, sử dụng điện thoại di động, ngủ gật hoặc đăng nhập vào lớp học rồi rời khỏi màn hình mà giảng viên không thể kiểm soát toàn diện. Thực trạng này dẫn đến nguy cơ 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.

Nhằm giải quyết những bất cập trên, đồ án tốt nghiệp "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) đã được nhóm sinh viên ngành Công nghệ Kỹ thuật Điện tử - Truyền thông thực hiện. Đề tài tập trung vào việc ứng dụng thị giác máy tính và trí tuệ nhân tạo để xây dựng giải pháp hỗ trợ giảng viên quản lý lớp học trực tuyến.

Mục tiêu nghiên cứu cụ thể của đề tài bao gồm:

  1. Thiết kế giao diện đồ họa người dùng (GUI) mô phỏng một nền tảng lớp học trực tuyến tích hợp các công cụ quản lý lớp học.
  2. Xây dựng chức năng điểm danh tự động bằng công nghệ nhận diện khuôn mặt (face recognition), đối soát khuôn mặt thời gian thực với dữ liệu sinh viên đã đăng ký trước khi cấp quyền tham gia lớp học.
  3. Phát triển thuật toán giám sát và đánh giá mức độ tập trung (concentration level) của sinh viên trong suốt buổi học thông qua kỹ thuật theo dõi con ngươi mắt (pupil tracking) và phát hiện các hành vi nhìn lệch khỏi màn hình.

Đối tượng nghiên cứu của đồ án là hình ảnh khuôn mặt và đặc trưng chuyển động mắt của người học trong môi trường lớp học trực tuyến. Phạm vi nghiên cứu tập trung vào việc khai thác các mô hình thị giác máy tính mã nguồn mở có sẵn, tối ưu hóa xử lý thời gian thực trên môi trường máy tính thông thường, với các điều kiện giới hạn về khoảng cách tương tác (không quá 1 mét) và điều kiện ánh sáng phòng học. Đồ án được triển khai thực hiện trong thời gian 15 tuần và hoàn thành vào tháng 8 năm 2022 tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.


Cơ sở lý thuyết và phương pháp

Khung lý thuyết và các nghiên cứu liên quan

Đồ án tổng quan các công trình nghiên cứu và kỹ thuật thị giác máy tính ứng dụng trong hệ thống điểm danh và giám sát học tập:

Phương pháp / Thuật toán Đặc trưng kỹ thuật và kết quả ghi nhận Hạn chế ghi nhận trong tài liệu
Adaboost & Face-contour (2013) Tạo ảnh xám, lọc kết nối loại bỏ nền/nhiễu, ước lượng tỉ lệ mắt/mũi/miệng; độ chính xác đạt 92%. Phụ thuộc vào chất lượng phân bố ánh sáng; xử lý phức tạp khi thay đổi góc nghiêng.
Trích xuất đặc trưng hình học Euclidean (2015) Quy trình 12 bước; phân tách vùng mắt, mũi, miệng; tính khoảng cách Euclidean so với codebook. Yêu cầu lưu trữ nhiều ma trận phương sai; tốc độ phụ thuộc kích thước tập ảnh mẫu.
LBP (Local Binary Pattern) So sánh cường độ sáng của điểm ảnh trung tâm với láng giềng theo bán kính $R$ và số điểm $P$. Độ chính xác nhận diện thời gian thực trong E-learning chỉ đạt khoảng 70%.
Haar Cascade Sử dụng các bộ lọc đặc trưng dạng khối đen trắng; tốc độ phát hiện đối tượng rất nhanh. Độ chính xác giảm xuống 68% trong điều kiện ánh sáng không đều; thời gian xử lý có thể kéo dài tới 4 giây.
DeepID / Deep CNN Sử dụng mạng nơ-ron tích chập sâu để trích xuất vector đặc trưng khuôn mặt; độ chính xác đạt 95%. Độ phức tạp tính toán cao, đòi hỏi tài nguyên phần cứng lớn khi triển khai đa luồng.
Eigenfaces Sử dụng biến đổi vector riêng (eigenvectors) và ma trận hiệp phương sai của không gian ảnh. Yêu cầu ảnh đầu vào phải đồng nhất về độ phân giải và ánh sáng; phải huấn luyện lại toàn bộ khi cập nhật người dùng.
Support Vector Machine (SVM, 2021) Phân loại vector nhúng khuôn mặt bằng siêu phẳng tối ưu (hyperplane) và hàm mất mát hinge loss; độ chính xác 61% trên 50 ảnh thực tế. Tỉ lệ khớp phụ thuộc tuyến tính vào kích thước tập dữ liệu huấn luyện.
Các mô hình theo dõi con ngươi (PCT, NLB/SAB, LVCF, DeepVOG, DeepEye, ResNet-50) Phân tích CDF, hồi quy viền tròng đen; mô hình LVCF kết hợp mạng nơ-ron tích chập với LSTM; kiến trúc ResNet-50 trên tập PUPPIES (1.791 ảnh) đạt độ chính xác 96%. Các mô hình mạng sâu phức tạp gặp khó khăn về độ trễ thời gian thực hoặc bị ảnh hưởng khi người học đeo kính gọng dày.

Công nghệ nền tảng lựa chọn

Sau khi phân tích các giải pháp hiện hành, nhóm tác giả lựa chọn nền tảng MediaPipe do Google phát triển. MediaPipe cung cấp giải pháp luồng xử lý suy luận (pipeline) dạng đồ thị trực tiếp (directed graph), cho phép thực thi đa nền tảng với hiệu năng tối ưu trên CPU/GPU thông thường. Các module thành phần được ứng dụng gồm:

  • BlazeFace (Face Detection): Bộ phát hiện khuôn mặt gọn nhẹ, xác định vị trí khuôn mặt và trích xuất 6 điểm mốc cơ bản (mắt phải, mắt trái, đầu mũi, trung tâm cánh mũi, tai phải, tai trái).
  • Face Mesh: Ước lượng 468 điểm mốc không gian 3 chiều (3D landmarks) trên toàn bộ bề mặt khuôn mặt trong thời gian thực mà không cần cảm biến chiều sâu chuyên dụng, sử dụng phân tích Procrustes để chuẩn hóa hình học.
  • Iris Detection: Mở rộng từ Face Mesh bằng cách trích xuất vùng mắt kích thước $64 \times 64$ pixel đưa vào mạng hồi quy nhỏ (kiến trúc Bazarevsky). Module này xác định 5 điểm mốc 2D tại mỗi bên mắt (1 điểm tâm con ngươi và 4 điểm viền tròng đen) cùng 16 điểm mốc viền mắt. Khi kết hợp với Face Mesh, tổng số điểm mốc khuôn mặt được mở rộng lên 478 điểm mốc (468 điểm bề mặt + 10 điểm tròng đen hai mắt).
MediaPipe Pipeline:
[Khung hình Video RGB] 
                                                    [Mô hình 478 điểm mốc không gian]

Phương pháp nghiên cứu và nguồn dữ liệu

Phương pháp nghiên cứu được triển khai theo quy trình thực nghiệm kỹ thuật phần mềm:

  • Thu thập dữ liệu hình ảnh trực tiếp từ webcam người dùng qua giao diện ứng dụng.
  • Xử lý tiền kỳ: chuẩn hóa kích thước khung hình, chuyển đổi không gian màu sang định dạng RGB.
  • Áp dụng các thuật toán trích xuất điểm mốc của MediaPipe để tính toán tọa độ tâm con ngươi so với trục đối xứng khuôn mặt nhằm xác định hướng nhìn (nhìn thẳng, nhìn sang trái, nhìn sang phải hoặc cúi xuống).
  • Lưu trữ thông tin định danh và tài khoản dưới dạng cấu trúc tệp JSON; kết xuất kết quả đánh giá, thời gian điểm danh và thời lượng mất tập trung ra định dạng bảng tính Excel.

Thiết kế và triển khai hệ thống

Hệ thống được lập trình bằng ngôn ngữ Python, xây dựng thành một phần mềm hoàn chỉnh với 5 phân hệ giao diện đồ họa chính:

Chi tiết các phân hệ giao diện

  1. Giao diện Đăng nhập (Login Page): Tiếp nhận tên người dùng và mật khẩu từ sinh viên hoặc giảng viên. Hệ thống thực hiện đối chiếu thông tin đầu vào với cơ sở dữ liệu lưu trong tệp JSON để xác thực quyền truy cập trước khi chuyển tiếp sang màn hình làm việc chính.
  2. Giao diện Chính (Main Page): Bố cục gồm 3 khu vực chức năng: menu điều hướng (phía trên bên trái) liên kết đến trang thông tin cá nhân và trang thu thập dữ liệu; nút đăng xuất (phía trên bên phải); khu vực trung tâm hiển thị danh sách các lớp học cùng siêu dữ liệu (metadata) của từng môn học.
  3. Giao diện Thu thập Dữ liệu (Get Data Page): Phân hệ dành cho sinh viên đăng ký dữ liệu khuôn mặt lần đầu. Màn hình hiển thị khung hình camera trực tiếp bên cạnh khung xem lại ảnh vừa chụp. Người dùng nhấn nút "Get Data" để chụp ảnh; nếu ảnh đạt chuẩn, người dùng nhấn "Confirm" để lưu vào cơ sở dữ liệu làm mẫu đối soát sinh trắc học.
  4. Giao diện Thông tin Cá nhân (Personal Information Page): Hiển thị chi tiết hồ sơ sinh viên bao gồm: họ và tên, mã số sinh viên (MSSV), mã lớp học và ảnh chân dung đại diện được đồng bộ từ trang thu thập dữ liệu.
  5. Giao diện Lớp học (Classroom Page): Tích hợp hai chức năng cốt lõi của đồ án:
    • Quy trình Điểm danh (Check-in): Khi sinh viên nhấn "Check In", hệ thống chụp một khung hình tức thời và thực hiện đối soát khuôn mặt với ảnh mẫu đã đăng ký. Nếu trùng khớp, bảng thông tin cá nhân (họ tên, MSSV, ngày giờ tham gia) xuất hiện kèm nút xác nhận nhập lớp, đồng thời ghi nhận mốc thời gian vào tệp Excel. Nếu không trùng khớp, hệ thống hiển thị cảnh báo từ chối điểm danh.
    • Quy trình Giám sát Tập trung (Concentration Tracking): Khi đã vào lớp, hệ thống liên tục tính toán tọa độ con ngươi từ luồng video thời gian thực. Khi phát hiện sinh viên liếc mắt sang trái, sang phải hoặc nhìn ra khỏi vùng màn hình, một bộ đếm thời gian được kích hoạt. Nếu thời gian nhìn lệch vượt qua ngưỡng cho phép, màn hình sẽ hiển thị bảng thông báo "You are not focused". Để tắt bảng cảnh báo, sinh viên bắt buộc phải điều chỉnh lại tư thế ngồi thẳng và hướng mắt nhìn trực diện vào màn hình.

Nội dung chính theo từng chương

Chương 1: Overview (Tổng quan)

Chương 1 trình bày tổng quan bối cảnh nghiên cứu, tính cấp thiết của việc số hóa giáo dục trong và sau đại dịch COVID-19, lý do lựa chọn đề tài, mục tiêu chế tạo hệ thống GUI mô phỏng lớp học trực tuyến, các giới hạn vận hành (ánh sáng, khoảng cách dưới 1 mét) và cấu trúc bố cục của toàn bộ khóa luận.

Chương 2: Literature Review (Tổng quan tài liệu và cơ sở lý thuyết)

Chương 2 phân tích chuyên sâu về kiến trúc nền tảng MediaPipe của Google, bao gồm cơ chế luồng dữ liệu đồ thị (GraphConfig protocol buffer), các nút xử lý (calculators) và luồng gói tin thời gian (data stream). Tác giả làm rõ các bài toán thị giác máy tính tích hợp sẵn: BlazeFace, Face Mesh (468 điểm mốc), Hands Detection (21 điểm mốc khớp tay 3D), Human Pose Estimation và Iris Detection (trích xuất 5 điểm tròng mắt và 16 điểm viền mắt qua khung chứa $64 \times 64$ pixel).

Chương 3: A System of Student Attendance and Concentration Tracking Design (Thiết kế hệ thống điểm danh và giám sát tập trung)

Chương 3 mô tả sơ đồ khối toàn hệ thống và lưu đồ thuật toán chi tiết cho từng phân hệ: lưu đồ xác thực đăng nhập qua file JSON, lưu đồ thu thập và tiền xử lý ảnh khuôn mặt (đổi kích thước, chuẩn hóa RGB), lưu đồ kiểm tra điểm danh khuôn mặt và lưu đồ theo dõi con ngươi phát hiện mất tập trung trong suốt buổi học.

Chương 4: Result and Discussion (Kết quả và thảo luận)

Chương 4 công bố kết quả triển khai giao diện phần mềm Python sau 15 tuần nghiên cứu, hiển thị chi tiết hình ảnh thực tế của 5 trang giao diện, cơ chế kích hoạt thông báo mất tập trung, cấu trúc tệp Excel tổng hợp dữ liệu học tập và thảo luận về hiệu năng thực thi của các thuật toán nhận diện.

Chương 5: Conclusion and Further Work (Kết luận và hướng phát triển)

Chương 5 đúc kết các nhiệm vụ đã hoàn thành theo đề cương, đánh giá mức độ đáp ứng mục tiêu đồ án và đề xuất các định hướng nâng cấp hệ thống phục vụ nhu cầu thực tiễn của công tác quản lý giáo dục hiện đại.


Kết quả và đóng góp

Kết quả định lượng và hiệu năng hệ thống

Quá trình kiểm thử thực nghiệm ghi nhận các kết quả kỹ thuật cụ thể:

  • Độ chính xác nhận diện khuôn mặt: Mô hình thực hiện nhận diện nhanh và đạt độ chính xác trên 90%.
  • Độ chính xác theo dõi con ngươi: Hệ thống phát hiện và theo dõi chuyển động con ngươi trong thời gian thực đạt độ chính xác trên 90%.
  • Hệ thống kết xuất và đánh giá dữ liệu: Toàn bộ dữ liệu phiên học được tự động ghi nhận vào tệp bảng tính Excel bao gồm: Họ tên sinh viên, Mã số sinh viên, Lớp học, Thời gian Check-in, Thời gian Check-out, Tổng thời gian tham gia lớp học, Tổng thời lượng không tập trung (nhìn ra ngoài màn hình).

Tỷ lệ mất tập trung được tính toán tự động theo công thức: $$\text{Tỷ lệ mất tập trung (%)} = \left( \frac{\text{Thời lượng không nhìn vào màn hình}}{\text{Tổng thời gian tham gia buổi học}} \right) \times 100%$$

Dựa trên tỷ lệ này, hệ thống xếp loại mức độ chuyên cần và tập trung của từng sinh viên theo thang tiêu chí:

Thang đánh giá Tỷ lệ thời gian mất tập trung Ý nghĩa đánh giá kết quả học tập
Xuất sắc (Excellent) 0% – 20% Sinh viên duy trì sự tập trung cao độ vào bài giảng trong suốt buổi học.
Tốt (Good) 21% – 50% Sinh viên có sự chú ý tốt, thời lượng xao nhãng ở mức thấp.
Chưa tốt (Not Good) 51% – 80% Sinh viên thường xuyên quay mặt hoặc nhìn ra khỏi màn hình lớp học.
Kém (Bad) > 80% Sinh viên hầu như không theo dõi nội dung giảng dạy trực tuyến.

Đóng góp thực tiễn của đồ án

  • Khắc phục điểm yếu của các hệ thống điểm danh truyền thống (vốn chỉ xác thực tại thời điểm đăng nhập ban đầu) bằng cách kết hợp cơ chế giám sát hành vi liên tục trong suốt toàn bộ tiến trình lớp học.
  • Đưa ra giải pháp tự động hóa khâu thống kê dữ liệu học tập, giúp giảng viên nắm bắt định lượng mức độ tập trung của từng sinh viên mà không cần quan sát thủ công từng camera trên màn hình lớp học ảo.
  • Chứng minh tính khả thi của việc ứng dụng các mô hình thị giác máy tính mã nguồn mở (MediaPipe) vào bài toán quản lý lớp học với yêu cầu tính toán thời gian thực trên các thiết bị máy tính thông thường.

Hạn chế và điều kiện vận hành

Tài liệu khóa luận chỉ rõ một số ràng buộc và hạn chế kỹ thuật trong quá trình triển khai:

  • Điều kiện ánh sáng: Hệ thống yêu cầu người học ngồi ở khu vực đủ sáng, không ngồi ở vị trí ngược sáng hoặc đối diện trực tiếp với ánh nắng mặt trời. Khi bị ngược sáng, khuôn mặt bị tối khiến thuật toán không thể trích xuất chính xác các điểm mốc sinh trắc học.
  • Khoảng cách tương tác: Khoảng cách giữa khuôn mặt sinh viên và camera thiết bị thu nhận không được vượt quá 1 mét nhằm đảm bảo độ phân giải vùng mắt đủ lớn cho thuật toán Iris Detection.
  • Tư thế ngồi: Người học cần giữ tư thế ngồi thẳng lưng đối diện với máy tính, hạn chế nghiêng ngả hoặc tì đè quá mức; tư thế này vừa đảm bảo góc quan sát tối ưu cho camera vừa hỗ trợ giảm thiểu nguy cơ thoái hóa cột sống cho sinh viên khi học trực tuyến lâu dài.
  • Phụ kiện khuôn mặt: Khi chụp ảnh mẫu ban đầu tại trang thu thập dữ liệu, sinh viên cần mang đầy đủ các phụ kiện thường dùng (ví dụ: kính cận) để làm cơ sở đối soát chính xác cho các phiên học tiếp theo.

Giá trị tham khảo

Đồ án là tài liệu tham khảo chuyên ngành hữu ích cho các nhóm đối tượng:

  • Sinh viên ngành Kỹ thuật Điện tử - Viễn thông, Công nghệ Thông tin, Khoa học Máy tính: Tham khảo phương pháp tích hợp thư viện MediaPipe (Face Mesh, Iris Detection, BlazeFace) vào ứng dụng giao diện Python GUI để giải quyết bài toán xử lý video thời gian thực.
  • Người nghiên cứu các hệ thống giám sát hành vi (Behavior Monitoring / Gaze Tracking): Tham khảo kiến trúc luồng dữ liệu, cách tính toán tọa độ điểm mốc con ngươi mắt và thuật toán kích hoạt cảnh báo dựa trên ngưỡng thời gian.
  • Cán bộ quản lý giáo dục và nhà phát triển phần mềm E-learning: Tham khảo mô hình quy trình điểm danh kết hợp đánh giá mức độ tập trung tự động và cơ chế trích xuất báo cáo học tập định lượng ra Excel.

Câu hỏi thường gặp

1. Hệ thống sử dụng công nghệ nào để thực hiện đồng thời hai tác vụ điểm danh và theo dõi ánh mắt?
Hệ thống sử dụng ngôn ngữ lập trình Python kết hợp với thư viện thị giác máy tính mã nguồn mở MediaPipe của Google, cụ thể là module BlazeFace để phát hiện khuôn mặt, Face Mesh để trích xuất 468 điểm mốc không gian 3D và Iris Detection để xác định 10 điểm mốc tròng mắt/con ngươi (mở rộng toàn bộ thành 478 điểm mốc sinh trắc học).

2. Quy trình điểm danh sinh viên khi vào lớp học diễn ra như thế nào?
Khi sinh viên nhấn nút "Check In" trên giao diện lớp học, hệ thống lập tức chụp một khung hình thực tế từ webcam và so sánh với ảnh mẫu đã chụp và lưu trước đó tại trang thu thập dữ liệu. Nếu khuôn mặt trùng khớp, hệ thống hiển thị bảng thông tin sinh viên kèm thời gian vào lớp và ghi dữ liệu vào tệp Excel; nếu không khớp, hệ thống từ chối cho phép tham gia lớp học.

3. Cơ chế phát hiện và cảnh báo sinh viên mất tập trung hoạt động ra sao?
Trong suốt buổi học, hệ thống liên tục tính toán vị trí tâm con ngươi. Khi phát hiện sinh viên liếc sang trái, sang phải hoặc nhìn ra ngoài màn hình, bộ đếm thời gian bắt đầu đếm. Khi thời gian nhìn lệch đạt ngưỡng định trước, một bảng thông báo "You are not focused" sẽ hiển thị trên màn hình. Sinh viên phải ngồi thẳng và nhìn trực diện vào màn hình để tắt bảng cảnh báo này.

4. Dữ liệu đánh giá học tập được lưu trữ và phân loại theo những mức nào?
Dữ liệu được lưu trữ tự động trong tệp Excel với các trường thông tin: Họ tên, MSSV, Lớp, Giờ Check-in, Giờ Check-out, Tổng thời gian học và Tổng thời gian mất tập trung. Hệ thống phân loại chất lượng buổi học thành 4 mức dựa trên tỷ lệ thời gian không nhìn vào màn hình: Xuất sắc (0% - 20%), Tốt (21% - 50%), Chưa tốt (51% - 80%) và Kém (> 80%).

5. Người dùng cần tuân thủ những yêu cầu kỹ thuật nào về môi trường học tập khi sử dụng hệ thống?
Sinh viên cần ngồi ở nơi có ánh sáng tốt và không bị ngược sáng (tránh ngồi đối diện cửa sổ/mặt trời), duy trì khoảng cách với camera không quá 1 mét, ngồi thẳng lưng hướng về máy tính và giữ trạng thái đeo kính/phụ kiện tương đồng với ảnh đã đăng ký ban đầu.


Kết luận

Đồ án tốt nghiệp của sinh viên Lê Xuân Tuấn Đạt và Trương Khắc Huy (Trường Đại học Sư phạm Kỹ thuật TP.HCM) đã thiết kế và hiện thực hóa thành công mô hình lớp học trực tuyến tích hợp tính năng điểm danh tự động bằng nhận diện khuôn mặt và giám sát mức độ tập trung của sinh viên thông qua công nghệ theo dõi con ngươi thời gian thực. Bằng việc ứng dụng nền tảng MediaPipe trên giao diện Python, hệ thống đạt độ chính xác nhận diện trên 90%, đồng thời tự động hóa hoàn toàn khâu xuất báo cáo và phân loại chất lượng học tập ra tệp Excel. Kết quả nghiên cứu đáp ứng đúng các mục tiêu đề ra và mở ra hướng ứng dụng thiết thực nhằm nâng cao chất lượng quản lý đào tạo trực tuyến.