Bối cảnh và vấn đề nghiên cứu
Khóa luận tốt nghiệp ngành Công nghệ Kỹ thuật Máy tính của tác giả Dương Hoàng Gia (Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, năm 2024) tập trung giải quyết bài toán giao tiếp giữa người khiếm thính và cộng đồng xung quanh. Theo thống kê của Tổ chức Y tế Thế giới (WHO) được trích dẫn trong văn bản, hiện có khoảng 430 triệu người trên toàn cầu bị suy giảm thính lực, trong đó có hơn 34 triệu trẻ em. Dự báo số lượng này sẽ tiếp tục gia tăng do các yếu tố như già hóa dân số và ô nhiễm tiếng ồn. Rào cản lớn nhất đối với người khiếm thính là việc đa số người bình thường trong xã hội không hiểu ngôn ngữ ký hiệu, dẫn tới nhiều khó khăn trong giáo dục, việc làm và đời sống thường nhật.
Xuất phát từ thực tiễn trên, tác giả xác định mục tiêu tổng quát là thiết kế và xây dựng một ứng dụng web hỗ trợ giao tiếp ngôn ngữ ký hiệu thời gian thực thông qua sự kết hợp giữa Thị giác máy tính (Computer Vision) và Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP). Mục tiêu cụ thể của nghiên cứu được triển khai qua ba giai đoạn chính:
- Ứng dụng thị giác máy tính và học sâu để nhận diện cử chỉ bàn tay từ hình ảnh thu qua máy thu hình (webcam) và chuyển đổi thành ký tự chữ cái tương ứng.
- Ứng dụng các mô hình xử lý ngôn ngữ tự nhiên để phân tích ngữ cảnh, gợi ý từ ngữ và hỗ trợ hình thành câu hoàn chỉnh từ chuỗi ký tự nhận diện được.
- Tối ưu hóa toàn bộ hệ thống để vận hành theo thời gian thực với độ trễ thấp, tích hợp công nghệ chuyển đổi văn bản thành giọng nói (Text-to-Speech) nhằm tạo cầu nối tương tác hai chiều thuận tiện.
Nhiệm vụ nghiên cứu được phân định thành các nội dung:
- Khảo sát đặc điểm các tín hiệu ngôn ngữ ký hiệu trong môi trường thực tế và tham khảo ý kiến chuyên gia về xử lý ngôn ngữ tự nhiên, thị giác máy tính.
- Thu thập bộ dữ liệu cử chỉ ký hiệu chữ cái từ webcam với các góc nhìn và điều kiện ánh sáng khác nhau.
- Xây dựng mô hình mạng nơ-ron tích chập 2 chiều (2D-CNN) tùy biến để trích xuất đặc trưng không gian của bàn tay và phân loại ký tự.
- Thiết kế giao diện người dùng và hạ tầng máy chủ ứng dụng web hoàn chỉnh, kết nối cơ sở dữ liệu và các giao diện lập trình ứng dụng (API).
- Đánh giá hiệu năng của mô hình và hệ thống thông qua các chỉ số đo lường học máy và thử nghiệm trong môi trường thực tế.
Đối tượng nghiên cứu của đề tài là các cử chỉ bàn tay đại diện cho bảng chữ cái Ngôn ngữ Ký hiệu Mỹ (American Sign Language - ASL). Phạm vi nghiên cứu giới hạn ở nhận dạng cử chỉ tĩnh bằng một tay (Single Hand) gồm 26 chữ cái (từ A đến Z) và 1 ký hiệu điều khiển "Next" (tổng cộng 27 lớp cử chỉ). Không gian thực nghiệm hệ thống dựa trên môi trường web thông qua luồng video từ webcam máy tính thông thường, triển khai thử nghiệm trên nền tảng Kaggle GPU và máy chủ cục bộ.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết của khóa luận dựa trên hai trụ cột công nghệ chính: Học sâu trong thị giác máy tính và Xử lý ngôn ngữ tự nhiên.
Về thị giác máy tính, tác giả sử dụng mô hình Mạng nơ-ron tích chập (Convolutional Neural Network - CNN), cụ thể là kiến trúc mạng nơ-ron tích chập hai chiều (2D-CNN). Mạng CNN cho phép trích xuất tự động các đặc trưng không gian phân tầng của hình ảnh (hình dạng bàn tay, vị trí các ngón tay, mối quan hệ hình học giữa các khớp) mà không cần tính toán thủ công. Cấu trúc toán học của các tầng trong mô hình bao gồm:
- Phép tích chập (Convolutional layer): Trích xuất bản đồ đặc trưng (feature map) thông qua việc nhân ma trận giữa bộ lọc (filter kernel) kích thước nhỏ với vùng điểm ảnh tương ứng trên ảnh đầu vào, cộng thêm giá trị độ lệch (bias) và kích hoạt qua hàm tuyến tính chỉnh lưu (ReLU - Rectified Linear Unit).
- Chuẩn hóa theo lô (Batch Normalization): Điều chỉnh kỳ vọng và phương sai của các lô dữ liệu nhằm ổn định và tăng tốc quá trình hội tụ của mạng, đồng thời giảm thiểu hiện tượng quá khớp (overfitting).
- Tầng gom cụm cực đại (MaxPooling layer): Giảm chiều dữ liệu không gian của bản đồ đặc trưng bằng cách trích xuất giá trị lớn nhất trong từng cửa sổ trượt, bảo toàn các đặc trưng nổi bật và tiết kiệm chi phí tính toán.
- Tầng kết nối đầy đủ (Fully Connected / Dense layer) và hàm kích hoạt Softmax: Chuyển đổi các đặc trưng dạng vector một chiều sau khi làm phẳng (Flatten) để tính toán phân phối xác suất phân loại cho 27 lớp đầu ra.
Về trích xuất đặc trưng vùng bàn tay, nghiên cứu sử dụng công cụ mã nguồn mở MediaPipe Hands. Công cụ này xác định 21 tọa độ điểm mốc (landmarks với tọa độ x, y, z) trên bàn tay (bao gồm các đầu ngón tay, khớp ngón và lòng bàn tay) theo thời gian thực, hỗ trợ xác định khung giới hạn (bounding box) và vùng quan tâm (Region of Interest - ROI).
Về xử lý ngôn ngữ tự nhiên, hệ thống vận dụng ba thành phần phân tích chính gồm phân tích cú pháp (syntactic analysis), phân tích ngữ nghĩa (semantic analysis) và phân tích ngữ cảnh (contextual analysis). Các thư viện lập trình như NLTK, spaCy và thư viện chuyển văn bản thành giọng nói pyttsx3 (hoặc Google Text-to-Speech) được nghiên cứu để tích hợp vào khối động cơ gợi ý từ (Suggestion Engine) và phát âm câu hoàn chỉnh.
Phương pháp nghiên cứu thực nghiệm được triển khai cụ thể:
- Phương pháp thu thập dữ liệu: Ghi nhận hình ảnh thực tế từ người thực hiện ký hiệu qua webcam máy tính. Bộ dữ liệu gồm 8.100 ảnh, chia đều cho 27 lớp (mỗi lớp gồm 300 ảnh chụp ở nhiều góc độ).
- Phương pháp tiền xử lý dữ liệu: Phát hiện bàn tay qua MediaPipe/cvzone, cắt vùng ROI, chuẩn hóa kích thước cố định về 300 × 300 × 3 (định dạng màu RGB), chuẩn hóa giá trị điểm ảnh về đoạn [0, 1] bằng phép chia cho 255, và áp dụng kỹ thuật tăng cường dữ liệu (Data Augmentation) gồm xoay, tịnh tiến, lật ảnh theo chiều ngang và biến đổi độ sáng.
- Phương pháp kiểm định mô hình: Áp dụng kỹ thuật kiểm định chéo 10 lượt (10-fold cross-validation). Trong từng lượt, dữ liệu được phân chia theo tỷ lệ 70% dành cho huấn luyện (training) và 30% dành cho kiểm thử (testing).
- Thuật toán tối ưu: Sử dụng thuật toán tối ưu hóa Adam với tốc độ học (learning rate) ban đầu là 0,001, hàm mất mát là Categorical Cross-Entropy, kích thước lô huấn luyện (batch size) bằng 64 và số chu kỳ huấn luyện (epochs) là 150. Môi trường thực thi sử dụng Kaggle GPU với card đồ họa NVIDIA Tesla P100 (16 GB VRAM) và 29 GB RAM.
Thiết kế và triển khai
Hệ thống được thiết kế theo mô hình hoàn chỉnh từ đầu đến cuối (end-to-end), tích hợp giữa mô hình học sâu, dịch vụ backend và giao diện người dùng.
Kiến trúc mô hình 2D-CNN đề xuất
Mạng 2D-CNN được thiết kế với 5 tầng tích chập liên tiếp nhằm trích xuất các mức đặc trưng từ cơ bản (đường nét, góc cạnh) đến phức tạp (hình dạng ngón tay, cử chỉ tổng thể). Tất cả các tầng tích chập đều dùng bộ lọc kích thước 3 × 3. Chi tiết cấu hình các tầng được tổng hợp trong bảng sau:
| Tầng mạng |
Loại tầng |
Kích thước bộ lọc / Cửa sổ |
Số lượng bộ lọc / Nơ-ron |
Kích thước đầu ra |
Ghi chú kỹ thuật |
| Đầu vào |
Input Image |
- |
- |
300 × 300 × 3 |
Ảnh màu RGB chuẩn hóa |
| Khối 1 |
Conv2D + MaxPooling |
3 × 3 (Conv), 2 × 2 (Pool) |
16 bộ lọc |
- |
Kích hoạt ReLU, Batch Normalization |
| Khối 2 |
Conv2D + MaxPooling |
3 × 3 (Conv), 2 × 2 (Pool) |
32 bộ lọc |
- |
Kích hoạt ReLU, Batch Normalization |
| Khối 3 |
Conv2D + MaxPooling |
3 × 3 (Conv), 2 × 2 (Pool) |
64 bộ lọc |
- |
Kích hoạt ReLU, Batch Normalization |
| Khối 4 |
Conv2D + MaxPooling |
3 × 3 (Conv), 2 × 2 (Pool) |
128 bộ lọc |
- |
Kích hoạt ReLU, Batch Normalization |
| Khối 5 |
Conv2D + MaxPooling |
3 × 3 (Conv), 2 × 2 (Pool) |
256 bộ lọc |
7 × 7 × 256 |
Kích hoạt ReLU, Batch Normalization |
| Làm phẳng |
Flatten |
- |
- |
12.544 |
Chuyển ma trận thành vector 1D |
| Kết nối 1 |
Dense (FC 1) |
- |
96 nơ-ron |
96 |
Batch Normalization, Dropout 50% |
| Kết nối 2 |
Dense (FC 2) |
- |
64 nơ-ron |
64 |
Batch Normalization, Dropout 50% |
| Đầu ra |
Dense (FC 3) |
- |
27 nơ-ron |
27 |
Kích hoạt Softmax (26 chữ cái + Next) |
Thiết kế phần mềm và kiến trúc Backend
Hệ thống ứng dụng web được tổ chức theo kiến trúc phân tầng rõ ràng:
- Giao diện người dùng (Frontend UI): Được thiết kế nguyên mẫu trên công cụ Figma và triển khai bằng mã nguồn HTML, CSS và JavaScript. Giao diện bao gồm 4 màn hình chức năng:
- Trang đích (Landing Page): Giới thiệu hệ thống "ASL Room" với nút chuyển tiếp "Go to Lobby".
- Trang tạo và tham gia phòng (Room Creation & Joining): Tiếp nhận thông tin tên hiển thị của người dùng ("Your Name") và tên phòng ("Room Name").
- Giao diện phòng chat (Chat Room UI): Tích hợp khu vực phát luồng video thời gian thực (hiển thị nhãn "Character" và "Label"), khung hiển thị danh sách thành viên trực tuyến, khung tin nhắn văn bản và các nút điều khiển chức năng gồm "Start Recognition" (bắt đầu nhận diện), "Add to Message" (đưa ký tự vào hộp thoại), "Speak" (phát âm giọng nói), bật/tắt Camera, Mic và nút "Leave" (rời phòng).
- Máy chủ và giao diện API Backend: Được xây dựng trên nền tảng Django sử dụng Django Rest Framework (DRF). Các điểm cuối API chính gồm:
/api/rooms/: Xử lý việc khởi tạo và quản lý các phòng chat.
/api/users/: Quản lý danh sách người dùng và trạng thái trực tuyến.
/api/recognize/: Tiếp nhận dữ liệu hình ảnh bàn tay từ luồng video của client, chuyển đến mô hình học sâu để dự đoán ký tự và trả về nhãn kết quả cùng xác suất.
- Cơ sở dữ liệu: Hệ quản trị cơ sở dữ liệu quan hệ PostgreSQL được sử dụng để lưu trữ tập trung thông tin tài khoản người dùng, danh sách phòng hội thoại và lịch sử tin nhắn kèm nhãn thời gian truyền gửi.
- Động cơ NLP và Chuyển văn bản thành giọng nói (Text-to-Speech): Tiếp nhận chuỗi ký tự nhận diện, đưa qua module Suggestion Engine để hiển thị danh sách từ vựng gợi ý tương ứng (ví dụ: nhận diện ký tự 'A' sẽ hiển thị các từ gợi ý "Apple, Animal, Ask, Art, Ant"), hỗ trợ người dùng tạo lập câu hoàn chỉnh và phát âm thanh trực tiếp sang người đối diện.
Nội dung chính theo từng chương
Báo cáo khóa luận được tác giả bố cục thành 5 chương chính:
Chương 1: Introduction
Chương này trình bày tuyên bố vấn đề nghiên cứu (Problem Statement) dựa trên số liệu về người khiếm thính của Tổ chức Y tế Thế giới; xác lập các mục tiêu nghiên cứu (Objectives) về việc xây dựng hệ thống nhận dạng thời gian thực kết hợp CV và NLP; làm rõ các giới hạn nghiên cứu (Limitations) liên quan đến giả định dữ liệu đầu vào, công cụ tiền xử lý, kiến trúc học sâu và phương pháp đánh giá; tổng hợp phương pháp nghiên cứu (Research Method) và khái quát cấu trúc 5 chương của đồ án.
Chương 2: Literature Review and Background
Chương 2 cung cấp bức tranh tổng quan về ngôn ngữ ký hiệu (định nghĩa, các hệ thống ngôn ngữ ký hiệu phổ biến như ASL, ISL, KSL, CSL, BSL, PSL và bảng chữ cái ASL); cơ sở lý thuyết về mạng nơ-ron nhân tạo và mạng nơ-ron tích chập (công thức toán học của tầng tích chập, chuẩn hóa theo lô, hàm kích hoạt ReLU, tầng gom cụm max pooling và tầng kết nối đầy đủ); lý thuyết xử lý ngôn ngữ tự nhiên và mô hình tích hợp NLP vào giao tiếp; khảo sát các nghiên cứu trước đây về nhận diện cử chỉ, biểu cảm khuôn mặt qua SVM, mô hình HMM kết hợp găng tay màu, và hệ thống camera 3D.
Chương 3: System Design
Chương 3 trình bày các yêu cầu và mục tiêu kỹ thuật của hệ thống; sơ đồ khối chức năng tổng thể gồm 6 thành phần (Người dùng, Giao diện Web, API Server, Mô hình nhận dạng, Khối phân tích NLP và Khối hiển thị/phản hồi); quy trình thu thập dữ liệu 8.100 ảnh qua webcam; kỹ thuật trích xuất 21 điểm mốc bằng MediaPipe Hands; các bước tiền xử lý ảnh (cắt ROI, chuẩn hóa kích thước 300 × 300 × 3, tăng cường dữ liệu, chuẩn hóa giá trị điểm ảnh); thiết kế chi tiết kiến trúc mạng 2D-CNN; quy trình huấn luyện thực nghiệm trên nền tảng Kaggle GPU; thiết kế giao diện người dùng trên Figma (Landing Page, Room Creation/Joining, Chat Room); và thiết kế kiến trúc máy chủ backend Django Rest Framework cùng cơ sở dữ liệu PostgreSQL.
Chương 4: Result and Discussions
Chương 4 tập trung vào việc đánh giá mô hình và phân tích kết quả thực nghiệm. Nội dung bao gồm việc phân tích các đường cong độ chính xác và hàm mất mát (Accuracy and Loss Curves) trong quá trình huấn luyện và kiểm thử; phân tích ma trận nhầm lẫn (Confusion Matrix) của mô hình 2D-CNN; bảng số liệu hiệu năng theo từng lớp ký hiệu; bảng so sánh hiệu năng của mô hình đề xuất với các mô hình tham chiếu hiện có; và kết quả thử nghiệm nhận dạng thời gian thực trên giao diện web ở cả điều kiện ánh sáng chuẩn lẫn điều kiện ánh sáng yếu (Low-Light Conditions) cho các ký tự cụ thể như A, S, G, N, Q, L, X.
Chương 5: Conclusion
Chương cuối tóm tắt toàn bộ các kết quả đạt được của đề tài trong việc nghiên cứu mô hình 2D-CNN, xây dựng ứng dụng web thời gian thực tích hợp NLP và TTS; đồng thời chỉ ra các phương hướng mở rộng nghiên cứu trong tương lai nhằm nâng cao khả năng ứng dụng thực tế.
Kết quả và đóng góp
Khóa luận đã ghi nhận các kết quả thực nghiệm và đóng góp cụ thể:
Kết quả định lượng và thực nghiệm
- Độ chính xác mô hình: Quá trình kiểm định chéo 10 lượt (10-fold cross-validation) đối với mô hình 2D-CNN trên tập dữ liệu kiểm thử ghi nhận độ chính xác trung bình đạt 98%.
- Khả năng thích ứng môi trường: Khi thử nghiệm trong các điều kiện môi trường thực tế không lý tưởng (ánh sáng yếu, xuất hiện nhiễu nền hoặc hình ảnh đầu vào lệch chuẩn), mô hình vẫn duy trì độ chính xác phân loại trung bình vượt mức 90%.
- Thử nghiệm nhận dạng thời gian thực: Hệ thống nhận diện chính xác các ký hiệu đơn lẻ và hiển thị trực quan 21 điểm mốc cùng khung giới hạn bàn tay trên giao diện web. Một số trường hợp thử nghiệm cụ thể được báo cáo gồm:
- Ký tự 'A' (điều kiện chuẩn): Nhận diện chính xác, hiển thị lưới điểm mốc và đưa ra danh sách từ gợi ý: "Apple, Animal, Ask, Art, Ant".
- Ký tự 'S' (điều kiện chuẩn): Nhận diện chính xác kèm từ khóa gợi ý "Schools", hỗ trợ thao tác "Add to Message" và phát âm bằng nút "Speak".
- Ký tự 'G' và 'N' (điều kiện ánh sáng yếu): Mô hình vẫn phát hiện chính xác vị trí các điểm mốc chính của bàn tay, đưa ra các từ gợi ý tương ứng là "Biologics" và "Medication".
- Ký tự 'Q', 'L', 'X': Kiểm thử thời gian thực thành công; trong đó ký tự 'Q' được thử nghiệm ghép thành câu hoàn chỉnh "My name is Duong Hoang Gia" và chuyển đổi thành giọng nói âm thanh.
Giải pháp và đóng góp của tác giả
- Đề xuất một cấu trúc mạng 2D-CNN tinh gọn gồm 5 tầng tích chập với kích thước kernel cố định 3 × 3, kết hợp chuẩn hóa Batch Normalization và tỷ lệ Dropout 50% ở các tầng kết nối đầy đủ. Cấu trúc này giúp tối ưu hóa số lượng trọng số cần huấn luyện, tiết kiệm tài nguyên tính toán nhưng vẫn trích xuất hiệu quả các đặc trưng không gian phức tạp của bàn tay.
- Ứng dụng thành công MediaPipe Hands để tự động xác định 21 điểm mốc tọa độ và định vị vùng bàn tay (ROI), giúp giảm thiểu sự phụ thuộc vào các thuật toán phân đoạn màu da truyền thống vốn dễ bị ảnh hưởng bởi màu nền và sắc tố da.
- Xây dựng thành công một ứng dụng web hoàn chỉnh, có khả năng kết nối nhiều người dùng trong phòng chat trực tuyến, tích hợp đồng bộ giữa khối nhận dạng thị giác máy tính, khối hỗ trợ hoàn chỉnh câu thông qua xử lý ngôn ngữ tự nhiên và khối phát âm thanh Text-to-Speech hai chiều.
- So với các nghiên cứu trước đây đòi hỏi người dùng phải đeo găng tay màu chuyên dụng, sử dụng thiết bị cảm biến đắt tiền hoặc bố trí hệ thống 3 camera phức tạp, giải pháp của tác giả chỉ yêu cầu một webcam máy tính tiêu chuẩn, giúp giảm chi phí triển khai và tăng tính tiện dụng cho cộng đồng người khiếm thính.
Hạn chế và hướng nghiên cứu tiếp
Căn cứ theo mục 1.3 và các phân tích kỹ thuật trong văn bản, khóa luận tồn tại các hạn chế được tác giả chỉ ra:
- Hạn chế về dữ liệu đầu vào: Bộ dữ liệu nghiên cứu chủ yếu được thu thập trong môi trường tương đối đồng nhất hoặc dựa trên các bộ dữ liệu chuẩn hóa. Do đó, trong môi trường thực tế có sự thay đổi ánh sáng đột ngột hoặc nhiễu nền phức tạp, độ chính xác của mô hình có thể bị suy giảm.
- Hạn chế về công cụ tiền xử lý: Các giải pháp chuẩn hóa, tăng cường dữ liệu và thuật toán phân tích hình ảnh cơ bản được áp dụng có thể chưa tối ưu toàn diện cho mọi loại dữ liệu hình ảnh ngoài thực tế, đòi hỏi phải tiếp tục tinh chỉnh khi triển khai trên diện rộng.
- Hạn chế về kiến trúc học sâu: Mô hình 2D-CNN đề xuất hiện chỉ tập trung phân loại các cử chỉ tĩnh của bảng chữ cái ASL (26 chữ cái và ký hiệu Next) bằng một tay. Mô hình chưa hỗ trợ nhận dạng các cử chỉ động phức tạp (cần chuỗi khung hình theo thời gian), cử chỉ sử dụng cả hai tay hoặc các ký hiệu nằm ngoài tập dữ liệu huấn luyện.
- Hạn chế về phương pháp đánh giá: Đánh giá hiệu năng chủ yếu dựa trên các độ đo học máy tiêu chuẩn (accuracy, mean accuracy) trên tập kiểm thử và nhóm thử nghiệm nhỏ; hiệu năng thực tế có thể có sự biến động khi người dùng là những người khiếm thính không chuyên trong các ngữ cảnh giao tiếp tự nhiên thay đổi liên tục.
Hướng mở rộng nghiên cứu được đề cập:
- Nghiên cứu tích hợp các kiến trúc mạng nơ-ron học chuỗi thời gian như RNN, LSTM hoặc cơ chế Attention (Transformer / ViT) để mở rộng sang nhận dạng cử chỉ ngôn ngữ ký hiệu động.
- Áp dụng kỹ thuật huấn luyện với độ chính xác hỗn hợp (Mixed Precision Training) để giảm thiểu sâu hơn việc tiêu thụ tài nguyên phần cứng, nâng cao tốc độ suy luận thời gian thực.
- Mở rộng phạm vi từ điển ký hiệu sang các hệ ngôn ngữ ký hiệu của các quốc gia khác và nâng cao độ tự nhiên của động cơ gợi ý câu NLP.
Giá trị tham khảo
Khóa luận là tài liệu tham khảo chuyên môn phù hợp cho sinh viên, học viên cao học và các kỹ sư thuộc các chuyên ngành Công nghệ Kỹ thuật Máy tính, Khoa học Máy tính, Trí tuệ Nhân tạo và Công nghệ Thông tin.
Những nội dung có giá trị tham khảo ứng dụng cao bao gồm:
- Quy trình thiết kế kiến trúc mạng 2D-CNN tùy biến cho bài toán thị giác máy tính: Cung cấp đầy đủ cấu hình siêu tham số, kích thước bộ lọc, hàm kích hoạt, phương thức chuẩn hóa Batch Normalization và cơ chế chống quá khớp Dropout.
- Phương pháp tiền xử lý và trích xuất điểm mốc bàn tay: Tài liệu mô tả chi tiết cách thức kết hợp công cụ MediaPipe Hands để xác định 21 tọa độ điểm mốc và cắt chuẩn hóa vùng ảnh ROI kích thước 300 × 300 × 3 phục vụ đầu vào cho mô hình học sâu.
- Kiến trúc tích hợp hệ thống phần mềm hoàn chỉnh (End-to-End): Mô hình kết nối giữa giao diện web front-end với máy chủ backend thông qua Django Rest Framework và cơ sở dữ liệu PostgreSQL, phối hợp đồng thời luồng nhận dạng ảnh, xử lý văn bản NLP và phát âm giọng nói Text-to-Speech.
Câu hỏi thường gặp
1. Bộ dữ liệu huấn luyện của đồ án có quy mô bao nhiêu và bao gồm những ký hiệu nào?
Bộ dữ liệu gồm tổng cộng 8.100 ảnh thu thập qua webcam, được chia đều cho 27 lớp (mỗi lớp gồm 300 ảnh chụp ở nhiều góc độ). Tập ký hiệu bao gồm 26 chữ cái đơn trong bảng chữ cái Ngôn ngữ Ký hiệu Mỹ (ASL) từ A đến Z và 1 ký hiệu điều khiển "Next".
2. Kiến trúc mạng 2D-CNN đề xuất được cấu hình chi tiết như thế nào?
Mạng gồm 5 tầng tích chập (Conv2D) đều dùng bộ lọc kích thước 3 × 3 với số lượng bộ lọc tăng dần lần lượt là 16, 32, 64, 128 và 256. Mỗi tầng tích chập đi kèm hàm kích hoạt ReLU, chuẩn hóa Batch Normalization và một tầng MaxPooling2D kích thước 2 × 2. Đầu ra từ tầng tích chập cuối cùng có kích thước 7 × 7 × 256 được làm phẳng thành vector 12.544 chiều, sau đó đi qua 3 tầng kết nối đầy đủ (Dense) có số nơ-ron lần lượt là 96, 64 (kèm Dropout 50%) và 27 (kích hoạt bằng hàm Softmax).
3. MediaPipe Hands giữ vai trò gì trong quy trình tiền xử lý của hệ thống?
MediaPipe Hands được sử dụng để phát hiện bàn tay và định vị chính xác 21 điểm mốc tọa độ không gian (x, y, z) trên bàn tay (bao gồm các đầu ngón tay, khớp ngón và lòng bàn tay) theo thời gian thực. Từ các điểm mốc này, hệ thống xác định khung giới hạn để cắt chính xác vùng quan tâm (ROI) của bàn tay và chuẩn hóa kích thước về 300 × 300 × 3 trước khi đưa vào mạng 2D-CNN.
4. Ứng dụng web được xây dựng bằng những công nghệ và kiến trúc nào?
Hệ thống sử dụng kiến trúc phân tầng: Giao diện người dùng (Frontend) được thiết kế bằng Figma và lập trình bằng HTML, CSS, JavaScript gồm 4 màn hình (Landing Page, Room Creation & Joining, và 2 trang Chat Room). Máy chủ dịch vụ (Backend) sử dụng Django kết hợp Django Rest Framework để xây dựng các API endpoint (/api/rooms/, /api/users/, /api/recognize/). Cơ sở dữ liệu sử dụng PostgreSQL để lưu thông tin người dùng, phòng chat và lịch sử tin nhắn. Khối NLP và Text-to-Speech tích hợp NLTK, spaCy và thư viện pyttsx3.
5. Hiệu năng nhận dạng của mô hình 2D-CNN đạt mức bao nhiêu và hoạt động như thế nào trong điều kiện thực tế?
Mô hình đạt độ chính xác trung bình 98% qua quy trình kiểm định chéo 10 lượt (10-fold cross-validation) trên tập kiểm thử (chia tỷ lệ 70% train / 30% test, tối ưu Adam, batch size 64, 150 epochs). Trong điều kiện ánh sáng yếu (Low-Light Conditions) và có nhiễu nền, mô hình vẫn duy trì độ chính xác trung bình trên 90%, nhận dạng thành công các ký hiệu thử nghiệm như A, S, G, N, Q, L, X trên luồng video thời gian thực.
Kết luận
Khóa luận tốt nghiệp của tác giả Dương Hoàng Gia đã hoàn thành việc thiết kế và triển khai một ứng dụng web hỗ trợ giao tiếp ngôn ngữ ký hiệu ASL thời gian thực thông qua sự kết hợp giữa thị giác máy tính và xử lý ngôn ngữ tự nhiên. Bằng việc xây dựng mô hình mạng 2D-CNN 5 tầng tích chập kết hợp trích xuất điểm mốc bàn tay qua MediaPipe Hands, nghiên cứu đạt độ chính xác trung bình 98% trong điều kiện kiểm thử và duy trì trên 90% ở điều kiện ánh sáng yếu. Toàn bộ giải pháp được đóng gói thành một hệ thống web end-to-end hoàn chỉnh với backend Django Rest Framework, cơ sở dữ liệu PostgreSQL và tính năng Text-to-Speech, mở ra hướng ứng dụng công nghệ trợ năng chi phí thấp cho cộng đồng người khiếm thính.