Hỏi & Đáp cùng Nguyễn Hòa Hợp: Giải mã dự án Điểm danh bằng AI và GPS
Mở đầu:Trong bối cảnh chuyển đổi số giáo dục, việc điểm danh thủ công đang dần trở nên lạc hậu. Nguyễn Hòa Hợp, sinh viên năm 4 ngành Công nghệ thông tin tại Trường Đại học Kỹ thuật - Công nghệ Cần Thơ, đã nghiên cứu và phát triển một hệ thống điểm danh thông minh, kết hợp nhiều công nghệ tiên tiến. Hãy cùng trò chuyện với Hợp để hiểu sâu hơn về quá trình cậu kiến tạo nên giải pháp ấn tượng này.
Hỏi: Chào Hợp, ý tưởng cho một hệ thống điểm danh công nghệ cao như vậy đến từ đâu?
Đáp: Chào bạn. Ý tưởng này xuất phát từ một thực tế rất quen thuộc trên giảng đường. Ở trường mình, một lớp lý thuyết có thể lên đến 80 sinh viên. Mỗi lần giảng viên điểm danh bằng cách gọi tên hoặc chuyền tay danh sách mất từ 5-10 phút. Khoảng thời gian này không chỉ làm gián đoạn bài giảng mà còn khó đảm bảo tính chính xác, dễ xảy ra tình trạng điểm danh hộ. Là một sinh viên IT, mình đã trăn trở về việc làm sao để tối ưu hóa quy trình này, trả lại thời gian quý báu cho cả thầy và trò. Đó là lúc mình nghĩ đến việc ứng dụng công nghệ.
Hỏi: Vậy giải pháp của bạn giải quyết vấn đề đó cụ thể như thế nào?
Đáp: Hệ thống của mình tạo ra một quy trình "3 lớp" xác thực để đảm bảo tính chính xác và chống gian lận tuyệt đối. Khi điểm danh, sinh viên cần đáp ứng đủ 3 điều kiện cùng lúc:
Đúng người: Sử dụng camera trên điện thoại để nhận diện khuôn mặt bằng mô hình AI, so sánh với dữ liệu đã đăng ký.
Đúng chỗ: Quét một mã QR duy nhất do giảng viên tạo ra cho buổi học đó.
Đúng vị trí: Hệ thống sẽ tự động kiểm tra định vị GPS của điện thoại để chắc chắn rằng sinh viên đang có mặt bên trong phạm vi lớp học.
Chỉ khi cả ba yếu tố này được xác thực, sinh viên mới được ghi nhận là có mặt. Toàn bộ quá trình chỉ mất vài giây cho mỗi người.
Hỏi: Nghe có vẻ phức tạp, đặc biệt là phần nhận diện khuôn mặt. Bạn có thể chia sẻ sâu hơn về công nghệ đằng sau nó không?
Đáp: Chắc chắn rồi. "Trái tim" của tính năng này là mô hình FaceNet, một mạng nơ-ron tích chập sâu (Deep CNN). Thay vì chỉ so sánh hình ảnh, FaceNet làm một việc thông minh hơn: nó "học" cách chuyển đổi mỗi khuôn mặt thành một vector đặc trưng có 512 chiều trong không gian Euclid.
Nói một cách dễ hiểu, những khuôn mặt càng giống nhau thì các vector đại diện của chúng sẽ càng gần nhau trong không gian này.
Khi sinh viên điểm danh, ứng dụng sẽ:
Dùng Google ML Kit để phát hiện và cắt khuôn mặt từ camera.
Tiền xử lý ảnh (chuẩn hóa kích thước 160x160, cân bằng sáng...).
Đưa ảnh vào mô hình FaceNet đã được tối ưu hóa để trích xuất ra vector đặc trưng 512 chiều.
Tính khoảng cách Euclid giữa vector này với các vector đã lưu trong cơ sở dữ liệu của sinh viên đó. Nếu khoảng cách nhỏ hơn một ngưỡng nhất định (qua thực nghiệm mình chọn là 0,65), việc xác thực danh tính thành công.
Hỏi: Hệ thống đã được thử nghiệm thực tế chưa và kết quả ra sao?
Đáp: Rồi bạn. Đây là phần mình tâm đắc nhất. Mình đã tiến hành hơn 500 lượt thử nghiệm trên tập dữ liệu thu thập (gồm hơn 840 ảnh của 280 người) và 500 lượt thử nghiệm trong môi trường lớp học thực tế.
Kết quả rất khả quan:
Mô hình FaceNet đạt độ chính xác lên đến 94,63% trong phòng lab và 93,2% trong điều kiện thực tế (ánh sáng phức tạp, khoảng cách khác nhau).
Thời gian để định danh một khuôn mặt chỉ mất khoảng 0.55 giây.
Mình cũng đã thử nghiệm với mô hình MobileFaceNets (một phiên bản nhẹ hơn). Dù độ chính xác thấp hơn một chút (khoảng 90,8%), tốc độ của nó lại cực nhanh, chỉ 0.05 giây để định danh. Việc có cả hai mô hình này cho phép hệ thống có thể linh hoạt tùy chỉnh giữa tốc độ và độ chính xác tùy theo yêu cầu.
Hỏi: Trong quá trình phát triển, đâu là thách thức lớn nhất bạn đã gặp phải?
Đáp: Thách thức lớn nhất không nằm ở việc xây dựng mô hình, mà là ở khâu tối ưu hóa (optimization). Làm thế nào để một mô hình AI phức tạp như FaceNet có thể chạy mượt mà trên nhiều dòng điện thoại Android khác nhau, kể cả những máy có cấu hình không cao?
Mình đã phải dành rất nhiều thời gian để nghiên cứu và chuyển đổi mô hình. Cụ thể là chuyển từ định dạng TensorFlow gốc sang Keras (.h5), sau đó tiếp tục chuyển sang TensorFlow Lite (.tflite). Đây là định dạng được "may đo" cho các thiết bị di động, nó giúp giảm đáng kể kích thước của mô hình và tăng tốc độ xử lý mà vẫn giữ được độ chính xác ở mức chấp nhận được. Quá trình này đòi hỏi sự kiên nhẫn và tỉ mỉ trong từng bước.
Hỏi: Vậy hướng phát triển tiếp theo của dự án này là gì?
Đáp: Hệ thống hiện tại đã giải quyết tốt bài toán điểm danh. Tuy nhiên, trong tương lai, mình muốn nó thông minh hơn nữa. Hướng đi tiếp theo là sẽ tích hợp Google Maps Distance Matrix API. Tính năng này sẽ cho phép hệ thống tính toán được khoảng cách thực tế từ vị trí của sinh viên đến lớp học, thay vì chỉ kiểm tra xem họ có ở trong một bán kính GPS nhất định hay không. Điều này sẽ giúp ngăn chặn các hình thức gian lận tinh vi hơn và tăng cường độ an toàn cho hệ thống.
Cảm ơn Hợp về những chia sẻ rất chi tiết và thú vị. Chúc dự án của bạn sẽ sớm được triển khai rộng rãi và thành công!

Hòa lòng - Hợp sức
làm nên điều lớn lao từ những ước mơ tuổi trẻ