Bối cảnh và vấn đề nghiên cứu
Trong lĩnh vực sinh trắc học và nhận dạng khuôn mẫu, khuôn mặt người là nguồn dữ liệu quan trọng chứa đựng nhiều thông tin định danh như danh tính, giới tính, biểu cảm và độ tuổi. Việc tự động ước tính độ tuổi từ hình ảnh khuôn mặt đóng vai trò thiết yếu trong nhiều ứng dụng thực tiễn, bao gồm tương tác giữa người và máy (HCI), kiểm soát an ninh, quản lý quyền truy cập nội dung số và điều tiết thời gian sử dụng thiết bị công nghệ cho các nhóm đối tượng đặc thù như trẻ em và người cao tuổi.
Tuy nhiên, bài toán ước tính độ tuổi tự động đối mặt với nhiều rào cản kỹ thuật. Quá trình lão hóa sinh học của con người diễn ra không đồng nhất giữa các cá nhân và có sự khác biệt rõ rệt giữa các chủng tộc trên thế giới. Phần lớn các công trình nghiên cứu và cơ sở dữ liệu nhận dạng độ tuổi trước đây (chẳng hạn như MORPH hoặc FG-NET) chủ yếu tập trung vào người dân phương Tây hoặc người gốc Âu. Trong khi đó, các nghiên cứu và tập dữ liệu dành riêng cho người châu Á còn rất hạn chế, dù nhóm dân cư này chiếm tỷ trọng lớn trong dân số toàn cầu. Sự chênh lệch về đặc điểm nhân trắc học này làm giảm sút đáng kể độ chính xác của các mô hình hiện hành khi áp dụng cho người châu Á, bao gồm người Việt Nam.
Trước thực tiễn đó, khóa luận tốt nghiệp kỹ sư ngành Kỹ thuật Máy tính của tác giả Nguyễn Vũ Bằng tập trung giải quyết bài toán phân loại nhóm tuổi dựa trên khuôn mặt người châu Á và xây dựng một phần mềm quản lý thời gian sử dụng máy tính cá nhân dựa trên độ tuổi nhận diện được.
Các mục tiêu và nhiệm vụ nghiên cứu cụ thể được xác định trong văn bản bao gồm:
- Nghiên cứu phương pháp xử lý ảnh số và trích xuất đặc trưng khuôn mặt thông qua thư viện OpenCV và các kỹ thuật máy học, mạng thần kinh sâu.
- Áp dụng kỹ thuật Haar Cascade để nhận diện và định vị vùng khuôn mặt người trong luồng hình ảnh.
- Huấn luyện mô hình mạng nơ-ron tích chập EfficientNet-B3 trên bộ dữ liệu MegaAge-Asian nhằm phân loại đối tượng thành 7 nhóm tuổi với độ chính xác mục tiêu trên 70%.
- Thiết kế và hiện thực ứng dụng có giao diện người dùng trên máy tính cá nhân để tự động cài đặt thời gian sử dụng thiết bị tương ứng với từng nhóm tuổi và tự động khóa màn hình khi hết giờ.
- Thử nghiệm, đánh giá hiệu năng mô hình trên tập dữ liệu kiểm thử và kiểm tra hoạt động của ứng dụng trong các điều kiện thực tế.
Đối tượng nghiên cứu của đề tài gồm phương pháp nhận dạng khuôn mặt, mô hình phân loại nhóm tuổi dựa trên đặc điểm hình ảnh khuôn mặt và mô hình ứng dụng điều tiết thời gian sử dụng thiết bị theo độ tuổi. Phạm vi nghiên cứu giới hạn ở việc xử lý dữ liệu khuôn mặt 2D từ camera máy tính, huấn luyện mô hình phân loại cho người châu Á dựa trên tập dữ liệu MegaAge-Asian và triển khai ứng dụng phần mềm cục bộ trên hệ điều hành máy tính cá nhân.
Cơ sở lý thuyết và phương pháp
Khóa luận được xây dựng dựa trên nền tảng lý thuyết của thị giác máy tính và học sâu (Deep Learning), kết hợp phương pháp nghiên cứu thực nghiệm xây dựng hệ thống phần mềm.
Về mặt lý thuyết, tác giả hệ thống hóa các khái niệm nền tảng:
- Thư viện OpenCV (Open Computer Vision): Được khởi tạo năm 1999 bởi Gary Bradski tại Intel, phát hành theo giấy phép mã nguồn mở BSD. Thư viện có cấu trúc đa tầng bao gồm lớp giao tiếp phần cứng (OpenCV HAL), các module xử lý lõi (Core, Imgproc, Objdetect), module đóng góp từ cộng đồng (opencv_contrib) và các liên kết ngôn ngữ (Python, C++, Java).
- Các hướng tiếp cận phát hiện khuôn mặt: Tác giả phân loại thành bốn nhóm phương pháp chính: tiếp cận dựa trên kiến thức (knowledge-based), tiếp cận dựa trên đặc trưng không đổi (feature-invariant), tiếp cận dựa trên so khớp mẫu (template matching) và tiếp cận dựa trên diện mạo (appearance-based).
- Thuật toán Haar Cascade: Phương pháp do Paul Viola và Michael Jones đề xuất năm 2001, kết hợp các đặc trưng dạng Haar, khái niệm ảnh tích phân (integral image) để tăng tốc tính toán và thuật toán AdaBoost nhằm lựa chọn các đặc trưng phân loại quan trọng, vận hành thông qua cơ chế cửa sổ trượt (sliding window).
- Mạng nơ-ron tích chập (CNN - Convolutional Neural Network): Cấu trúc chuẩn xử lý ảnh gồm các lớp tích chập (Convolutional layer với các tham số stride, padding, kernel) nhằm trích xuất đặc trưng; lớp kích hoạt phi tuyến ReLU ($f(x) = \max(0, x)$); lớp lấy mẫu giảm chiều (Pooling layer như Max pooling, Average pooling); và các lớp kết nối đầy đủ (Fully Connected layer) kết hợp hàm Softmax ở đầu ra để phân loại xác suất.
- Kiến trúc mạng EfficientNet: Mô hình học sâu do Mingxing Tan và Quoc V. Le phát triển, giải quyết vấn đề mở rộng mạng CNN một cách tối ưu. Khác với các phương pháp truyền thống chỉ mở rộng đơn lẻ theo chiều sâu (depth), chiều rộng (width) hoặc độ phân giải ảnh (resolution), EfficientNet sử dụng phương pháp chia tỷ lệ kết hợp (compound scaling) theo công thức toán học:
$$\text{depth: } d = \alpha^\phi, \quad \text{width: } w = \beta^\phi, \quad \text{resolution: } r = \gamma^\phi$$
với ràng buộc $\alpha \cdot \beta^2 \cdot \gamma^2 \approx 2$ và $\alpha \ge 1, \beta \ge 1, \gamma \ge 1$. Trong khóa luận, tác giả lựa chọn mô hình EfficientNet-B3 với mức tiêu thụ tài nguyên FLOPS tương đương ResNet-50 nhưng mang lại độ chính xác cao hơn.
Về phương pháp nghiên cứu thực nghiệm và dữ liệu:
- Nguồn dữ liệu MegaAge-Asian: Bộ dữ liệu gồm 43.945 ảnh khuôn mặt được gán nhãn độ tuổi từ 0 đến 69 tuổi, trong đó có 40.000 ảnh người châu Á. Tác giả tiến hành nhóm các độ tuổi thành 7 khoảng giá trị đại diện cho các nhóm đối tượng xã hội: 0-5 tuổi, 6-10 tuổi, 11-17 tuổi, 18-35 tuổi, 36-50 tuổi, 51-59 tuổi và 60-69 tuổi.
- Phương pháp thẩm định (Validation): Sử dụng kỹ thuật phân chia tập dữ liệu Holdout ngẫu nhiên không giao nhau. Tập dữ liệu tổng thể $D$ được tách thành tập huấn luyện $D_{\text{train}}$ chiếm 90% (40.000 ảnh) và tập kiểm tra $D_{\text{test}}$ chiếm 10% (3.945 ảnh).
Thiết kế và triển khai
Hệ thống được thiết kế dưới dạng một ứng dụng desktop hoàn chỉnh chạy trên máy tính cá nhân, tích hợp mô hình AI để tự động hóa quy trình quản lý thời gian làm việc trước màn hình.
Luồng xử lý dữ liệu của phần mềm bao gồm 4 giai đoạn tuần tự:
- Thu nhận dữ liệu hình ảnh: Ứng dụng kết nối trực tiếp với camera tích hợp hoặc camera gắn ngoài của thiết bị khi người dùng thao tác bấm nút khởi động trên giao diện.
- Phát hiện và định vị khuôn mặt: Sử dụng bộ phân loại Haar Cascade tiền huấn luyện của OpenCV để quét qua từng khung hình, trích xuất tọa độ vùng khuôn mặt (bounding box).
- Ước tính độ tuổi: Trích xuất vùng ảnh khuôn mặt chuẩn hóa và đưa qua mạng EfficientNet-B3. Nhằm hạn chế sai số ngẫu nhiên giữa các khung hình đơn lẻ, ứng dụng thực hiện ghi nhận luồng video liên tục trong thời gian 2 giây, chọn lọc 10 khung hình phát hiện được khuôn mặt rõ ràng và tính toán trung bình cộng xác suất đầu ra để đưa ra kết luận nhóm tuổi cuối cùng.
- Thiết lập định mức thời gian và điều khiển hệ thống: Căn cứ vào nhóm tuổi được xác định, ứng dụng tự động cấu hình bộ đếm ngược thời gian sử dụng màn hình.
Chính sách giới hạn thời gian sử dụng màn hình được cài đặt trong ứng dụng theo từng nhóm tuổi như sau:
| Nhóm tuổi |
Phân loại đối tượng |
Thời gian sử dụng liên tục cho phép |
| 0 - 5 tuổi |
Trẻ em |
15 phút |
| 6 - 10 tuổi |
Trẻ em (Tiểu học) |
15 phút |
| 11 - 17 tuổi |
Trẻ em (Trung học, vị thành niên) |
30 phút |
| 18 - 35 tuổi |
Người lớn (Thanh niên, trưởng thành) |
60 phút |
| 36 - 50 tuổi |
Người lớn (Trung niên) |
60 phút |
| 51 - 59 tuổi |
Người cao tuổi |
30 phút |
| 60 - 69 tuổi |
Người cao tuổi |
30 phút |
Về mặt công nghệ và triển khai phần mềm:
- Xây dựng giao diện đồ họa (GUI): Tác giả sử dụng thư viện Tkinter trên nền Python 3 (thư viện giao tiếp với bộ công cụ Tk GUI thông qua trình thông dịch Tcl). Giao diện ban đầu hiển thị khung hướng dẫn định vị khuôn mặt cùng nút bấm "Bật camera". Giao diện chính hiển thị trực tiếp luồng video với ô vuông màu xanh đánh dấu khuôn mặt, ô chữ màu vàng hiển thị nhãn nhóm tuổi dự đoán, đồng hồ đếm ngược và các nút chức năng "Tạm dừng" / "Tiếp tục".
- Cơ chế khóa hệ thống: Khi đồng hồ đếm ngược chạm mốc 0, phần mềm kích hoạt lệnh gọi cấp hệ điều hành để chuyển máy tính về trạng thái khóa màn hình ("lock screen").
- Đóng gói phần mềm: Sử dụng công cụ PyInstaller để phân tích cây phụ thuộc, thu thập mã nguồn Python, thư viện OpenCV, trọng số mô hình và môi trường thực thi để xuất thành gói ứng dụng chạy độc lập trên hệ điều hành mà không yêu cầu máy tính đích phải cài đặt sẵn môi trường Python.
Nội dung chính theo từng chương
Chương 1. Tổng quan đề tài
Chương mở đầu phân tích bối cảnh phát triển của các công nghệ nhận dạng sinh trắc học và chỉ ra tầm quan trọng của việc ước tính độ tuổi trong các hệ thống tương tác người - máy hiện đại. Tác giả nêu rõ hạn chế của các giải pháp hiện tại khi thiếu vắng tập dữ liệu đặc thù cho người châu Á, đồng thời xác lập mô hình tổng quát gồm ba khối chức năng: nhận dạng khuôn mặt, dự đoán độ tuổi và cơ chế quản lý thời gian sử dụng thiết bị. Chương 1 cũng xác định đối tượng, phạm vi nghiên cứu, đặt ra chỉ tiêu độ chính xác mô hình đạt trên 70% và vạch ra phương pháp nghiên cứu kết hợp giữa lý thuyết và thực nghiệm phần mềm trên ngôn ngữ Python.
Chương 2. Nghiên cứu lý thuyết
Chương 2 trình bày có hệ thống các cơ sở lý thuyết nền tảng. Tác giả mở đầu bằng việc định nghĩa lĩnh vực thị giác máy tính, cấu trúc phân tầng của thư viện OpenCV và phân tích đặc điểm bộ dữ liệu MegaAge-Asian với 43.945 ảnh được chia thành 7 nhóm tuổi. Tiếp đó, tác giả đi sâu vào bài toán phát hiện khuôn mặt: trình bày 4 hướng tiếp cận phổ biến, các thách thức thực tế (thay đổi góc nhìn, tỷ lệ, biểu cảm, phụ kiện che khuất, điều kiện chiếu sáng) và cơ chế tính toán của thuật toán Haar Cascade thông qua hình ảnh tích phân và cửa sổ trượt. Ở nội dung phân loại độ tuổi, chương này trình bày nguyên lý bài toán phân lớp có giám sát, cấu trúc chi tiết của mạng CNN (các tầng Convolution, hàm kích hoạt ReLU, các dạng Pooling, tầng Fully Connected) và đi sâu phân tích kiến trúc EfficientNet với công thức chia tỷ lệ hợp chất (compound scaling). Tác giả so sánh các biến thể từ EfficientNet-B0 đến B7 và chứng minh tính hợp lý của việc lựa chọn EfficientNet-B3. Cuối chương, các khó khăn nội tại của bài toán ước lượng tuổi được làm rõ: sự chênh lệch ngoại hình không đáng kể giữa các độ tuổi liền kề, tốc độ lão hóa phi đồng nhất, tác động của lối sống - sức khỏe và sự hạn chế của các bộ dữ liệu công khai cũ như MORPH hay FG-NET.
Chương 3. Xây dựng ứng dụng quản lý thời gian dựa vào nhóm tuổi
Chương 3 tập trung vào thiết kế kỹ thuật và hiện thực hóa phần mềm quản lý thời gian. Tác giả giới thiệu thư viện Tkinter cùng các công cụ GUI thay thế trong Python, đồng thời mô tả chi tiết luồng xử lý 4 bước của ứng dụng. Chương này đặc tả cấu hình định mức thời gian sử dụng cho từng nhóm đối tượng (15 phút cho trẻ em 0-10 tuổi; 30 phút cho thiếu niên 11-17 tuổi và người cao tuổi từ 51-69 tuổi; 60 phút cho người trưởng thành 18-50 tuổi). Các tương tác trên giao diện người dùng được phân tích chi tiết, từ màn hình khởi động đến màn hình làm việc chính có gắn nhãn nhận diện, cơ chế lấy mẫu 10 khung hình trong 2 giây để khử nhiễu dự đoán, và tính năng tạm dừng/tiếp tục đếm ngược. Cuối chương, tác giả trình bày quy trình đóng gói phần mềm bằng PyInstaller, phân tích cơ chế thu thập mô-đun và tính chất phụ thuộc nền tảng của công cụ đóng gói này.
Chương 4. Kết quả thực nghiệm và hướng phát triển
Chương 4 công bố toàn bộ dữ liệu thực nghiệm và đánh giá chất lượng hệ thống. Nội dung thực nghiệm chia làm hai phần: kiểm tra mô hình trên tập dữ liệu chuẩn MegaAge-Asian và kiểm tra ứng dụng trong điều kiện vận hành thực tế. Tác giả phân tích chi tiết kết quả phân loại trên 3.945 ảnh kiểm thử, đối chiếu độ chính xác giữa 7 nhóm tuổi và biểu diễn đồ thị mất mát (loss) cùng độ chính xác (accuracy) qua các epoch huấn luyện. Đối với thực nghiệm thực tế, tác giả ghi nhận kết quả chạy ứng dụng trên các mẫu ảnh hiển thị qua màn hình điện thoại dưới các điều kiện chiếu sáng (đủ sáng, thiếu sáng), góc nghiêng (0°, 45°, 90°), khoảng cách và tình trạng che khuất, tập trung kiểm tra ở các vùng tuổi biên (17 tuổi, 59 tuổi). Chương này khép lại bằng việc nhìn nhận các hạn chế kỹ thuật và đề xuất hướng phát triển tiếp theo cho hệ thống.
Kết quả và đóng góp
Khóa luận đã hoàn thành việc huấn luyện mô hình phân loại độ tuổi EfficientNet-B3 trên bộ dữ liệu MegaAge-Asian và tích hợp thành công vào phần mềm quản lý thời gian.
Hiệu năng của mô hình phân loại nhóm tuổi trên tập dữ liệu kiểm tra độc lập (3.945 ảnh) được ghi nhận chi tiết trong bảng số liệu sau:
| Nhóm tuổi |
Số lượng ảnh tập huấn luyện |
Số lượng ảnh tập kiểm tra |
Độ chính xác đạt được (%) |
| 0 - 5 |
3.572 |
916 |
90% |
| 6 - 10 |
1.516 |
297 |
76% |
| 11 - 17 |
3.190 |
504 |
84% |
| 18 - 35 |
15.550 |
1.698 |
79% |
| 36 - 50 |
9.956 |
361 |
73% |
| 51 - 59 |
4.401 |
87 |
59% |
| 60 - 69 |
1.815 |
82 |
52% |
| Toàn bộ tập kiểm tra |
40.000 |
3.945 |
77% |
Kết quả thực nghiệm cho thấy độ chính xác trung bình toàn hệ thống đạt 77%, vượt mức chỉ tiêu 70% đề ra ban đầu. Mô hình nhận diện chính xác nhất ở nhóm trẻ em 0-5 tuổi (90%) và nhóm thanh thiếu niên 11-17 tuổi (84%). Ngược lại, độ chính xác có xu hướng suy giảm rõ rệt ở các nhóm lớn tuổi, chỉ đạt 59% ở nhóm 51-59 tuổi và 52% ở nhóm 60-69 tuổi.
Các đóng góp chính được tác giả tự xác định bao gồm:
- Ứng dụng thành công kiến trúc mạng nơ-ron học sâu hiện đại EfficientNet-B3 kết hợp với tập dữ liệu đặc thù MegaAge-Asian, giúp cải thiện độ chính xác phân loại nhóm tuổi cho người châu Á so với các nghiên cứu trước đây vốn phụ thuộc vào dữ liệu người phương Tây.
- Xây dựng một luồng xử lý hoàn chỉnh từ khâu thu nhận hình ảnh thời gian thực, phát hiện khuôn mặt bằng Haar Cascade, dự đoán độ tuổi lấy trung bình 10 khung hình trong 2 giây đến việc tự động điều khiển thời gian khóa màn hình máy tính.
- Hiện thực hóa một phần mềm máy tính có giao diện trực quan bằng Tkinter và đóng gói thành công bằng PyInstaller, chứng minh tính khả thi của việc ứng dụng AI vào bài toán hỗ trợ quản lý sức khỏe và an toàn thiết bị cho từng nhóm đối tượng người dùng.
Hạn chế và hướng nghiên cứu tiếp
Khóa luận thẳng thắn chỉ ra các giới hạn kỹ thuật và điều kiện thực nghiệm trong văn bản:
- Độ chính xác chưa đồng đều: Mô hình có tỷ lệ dự đoán sai còn cao ở hai nhóm tuổi lớn (51-59 tuổi đạt 59% và 60-69 tuổi chỉ đạt 52%). Sự khác biệt nhân trắc học giữa các nhóm tuổi liền kề ở độ tuổi trưởng thành là rất nhỏ, dẫn đến hiện tượng nhầm lẫn tại các vùng tuổi biên (ví dụ đối tượng 17 tuổi giáp ranh nhóm 18-35 tuổi hoặc đối tượng 59 tuổi giáp ranh nhóm 60-69 tuổi).
- Hạn chế của bộ tách khuôn mặt Haar Cascade: Thuật toán phát hiện khuôn mặt hoạt động kém hiệu quả hoặc thất bại hoàn toàn khi khuôn mặt quay nghiêng góc lớn (góc 90°), bị che khuất một phần (khẩu trang, phụ kiện) hoặc trong điều kiện khoảng cách quá xa và ánh sáng yếu.
- Rào cản thực nghiệm do dịch bệnh: Do ảnh hưởng của dịch bệnh Covid-19 và hạn chế về mặt thời gian, tác giả không thể tiến hành thử nghiệm ứng dụng trực tiếp trên một tập mẫu người thật đa dạng trong cộng đồng. Việc kiểm thử thực tế buộc phải thực hiện gián tiếp thông qua các ảnh chụp sẵn hiển thị trên màn hình điện thoại trước camera.
- Tính tự động hóa: Khởi đầu ứng dụng vẫn yêu cầu người dùng phải tự bật phần mềm và nhấn nút kích hoạt camera thủ công, chưa hoạt động hoàn toàn ở chế độ dịch vụ ngầm (background service).
Các hướng mở rộng được tác giả đề xuất:
- Cải thiện độ chính xác và độ mượt mà của mô hình dự đoán tuổi bằng cách mở rộng quy mô dữ liệu huấn luyện và tối ưu thuật toán.
- Nâng cấp mô đun phát hiện khuôn mặt để tăng cường khả năng nhận diện khi người dùng quay nghiêng góc lớn hoặc bị che khuất một phần.
- Hoàn thiện tính năng tự động hóa của ứng dụng nhằm giảm thiểu thao tác thủ công từ phía người dùng.
Giá trị tham khảo
Báo cáo khóa luận là tài liệu tham khảo hữu ích cho sinh viên và kỹ sư thuộc các ngành Kỹ thuật Máy tính, Công nghệ Thông tin, Khoa học Dữ liệu và Trí tuệ Nhân tạo đang làm việc với các bài toán thị giác máy tính ứng dụng.
Những nội dung có giá trị tham khảo chuyên môn cao bao gồm:
- Phương pháp luận chọn lọc và chia tỷ lệ mạng CNN: Tài liệu cung cấp phân tích chi tiết về cơ chế compound scaling của họ mô hình EfficientNet, hỗ trợ người đọc hiểu rõ nguyên lý cân bằng giữa độ sâu, độ rộng và độ phân giải hình ảnh để áp dụng cho các tác vụ phân loại ảnh giới hạn tài nguyên tính toán.
- Kỹ thuật xử lý dữ liệu khuôn mặt người châu Á: Cách thức phân chia 7 nhóm tuổi trên tập dữ liệu MegaAge-Asian và phương pháp đánh giá Holdout là cơ sở thực tế cho các đề tài nghiên cứu tiếp theo về sinh trắc học khuôn mặt người Á Đông.
- Quy trình xây dựng ứng dụng AI hoàn chỉnh trên Desktop: Tài liệu mô tả tường minh cách tích hợp luồng xử lý OpenCV với giao diện đồ họa Tkinter trong Python, kỹ thuật lấy mẫu trung bình nhiều khung hình (10 khung hình/2 giây) để ổn định kết quả dự đoán thời gian thực, và kinh nghiệm đóng gói phần mềm bằng PyInstaller.
Câu hỏi thường gặp
1. Khóa luận sử dụng tập dữ liệu nào để huấn luyện mô hình dự đoán độ tuổi và tỷ lệ phân chia ra sao?
Tác giả sử dụng bộ dữ liệu MegaAge-Asian bao gồm 43.945 ảnh khuôn mặt (tập trung 40.000 ảnh người châu Á) có độ tuổi từ 0 đến 69. Dữ liệu được phân chia theo phương pháp Holdout với tỷ lệ 90% cho tập huấn luyện (40.000 ảnh) và 10% cho tập kiểm tra (3.945 ảnh).
2. Độ tuổi của người dùng được phân loại thành bao nhiêu nhóm và định mức thời gian sử dụng máy tính tương ứng là bao nhiêu?
Độ tuổi được chia thành 7 nhóm với các mức thời gian sử dụng liên tục quy định như sau:
- Nhóm 0 - 5 tuổi và 6 - 10 tuổi (Trẻ em): 15 phút.
- Nhóm 11 - 17 tuổi (Vị thành niên): 30 phút.
- Nhóm 18 - 35 tuổi và 36 - 50 tuổi (Người lớn): 60 phút.
- Nhóm 51 - 59 tuổi và 60 - 69 tuổi (Người cao tuổi): 30 phút.
3. Để dự đoán độ tuổi của một đối tượng trước camera, ứng dụng thực hiện lấy mẫu như thế nào?
Khi người dùng bấm nút "Bật camera", ứng dụng sẽ quay video liên tục trong 2 giây. Trong khoảng thời gian này, hệ thống trích xuất 10 khung hình đã phát hiện được khuôn mặt và tính trung bình cộng kết quả dự đoán của 10 khung hình đó để đưa ra nhóm tuổi cuối cùng, giúp hạn chế sai lệch đột biến giữa các khung hình riêng lẻ.
4. Kết quả phân loại nhóm tuổi nào đạt độ chính xác cao nhất và nhóm nào thấp nhất trên tập dữ liệu kiểm tra?
Trên tập kiểm tra gồm 3.945 ảnh, nhóm tuổi 0-5 tuổi đạt độ chính xác cao nhất với 90% (trên 916 ảnh kiểm tra). Nhóm tuổi đạt độ chính xác thấp nhất là 60-69 tuổi với 52% (trên 82 ảnh kiểm tra), theo sát là nhóm 51-59 tuổi đạt 59% (trên 87 ảnh kiểm tra).
5. Tại sao tác giả phải kiểm tra hoạt động của ứng dụng thực tế thông qua ảnh chụp hiển thị trên điện thoại?
Theo trình bày của tác giả ở Chương 4, do điều kiện hạn chế về mặt thời gian và bối cảnh dịch bệnh Covid-19 diễn biến phức tạp tại thời điểm thực hiện khóa luận (năm 2021), nhóm nghiên cứu không thể tiếp cận trực tiếp nhiều đối tượng thực tế nên phải tiến hành thử nghiệm bằng cách đưa hình ảnh chụp sẵn của người tham gia hiển thị qua màn hình điện thoại trước webcam máy tính.
Kết luận
Khóa luận tốt nghiệp của tác giả Nguyễn Vũ Bằng đã nghiên cứu và triển khai thành công mô hình học sâu EfficientNet-B3 trên bộ dữ liệu MegaAge-Asian để giải quyết bài toán ước tính độ tuổi đặc thù cho người châu Á, đạt độ chính xác trung bình 77% trên tập kiểm thử độc lập. Hệ thống được tích hợp hoàn chỉnh vào một ứng dụng desktop viết bằng Python (OpenCV, Tkinter), cho phép tự động phân nhóm người dùng qua camera và thiết lập thời gian sử dụng thiết bị tương ứng nhằm bảo vệ an toàn cho trẻ em và người cao tuổi. Mặc dù còn một số hạn chế về độ chính xác ở nhóm người lớn tuổi và điều kiện thử nghiệm thực tế do ảnh hưởng của dịch bệnh Covid-19, công trình đã thể hiện rõ quy trình kỹ thuật chuẩn xác, cung cấp tài liệu tham khảo có giá trị ứng dụng cao cho lĩnh vực thị giác máy tính và phát triển phần mềm thông minh.