Giới thiệu dự án
Khả năng vận động tự chủ và giao tiếp là hai quyền cơ bản quyết định chất lượng cuộc sống của con người. Tuy nhiên, các tai nạn chấn thương tủy sống (Spinal Cord Injury - SCI) và các bệnh lý thoái hóa thần kinh đang tước đoạt khả năng này của hàng trăm nghìn người mỗi năm. Theo thống kê từ Trung tâm Thống kê Chấn thương Tủy sống Quốc gia Hoa Kỳ (NSCISC), hàng năm ghi nhận khoảng 17.000 ca chấn thương tủy sống mới, trong đó khoảng 60% trường hợp tiến triển thành chứng liệt tứ chi (Quadriplegia). Đặc biệt, bệnh nhân mắc hội chứng "Khóa trong" (Locked-in Syndrome - LiS, tỷ lệ mắc < 1/1.000 theo Orphanet) hoặc bệnh xơ cứng teo cơ một bên (ALS) rơi vào tình trạng toàn bộ cơ thể bị tê liệt hoàn toàn nhưng chức năng nhận thức, tư duy và chuyển động mắt dọc/chớp mắt vẫn được bảo tồn nguyên vẹn.
+-----------------------------------------------------------------------------+
| PROBLEM CONTEXT |
| - Liệt tứ chi / Locked-in Syndrome (LiS) / ALS |
| - Mất hoàn toàn chức năng vận động & phát âm |
| - Rào cản tiếp cận công nghệ: Thiết bị thương mại (Tobii) giá $3.000-$5.000|
+-----------------------------------------------------------------------------+
|
v
+-----------------------------------------------------------------------------+
| GIẢI PHÁP ĐỀ TÀI |
| - Xử lý biên (Edge AI): NVIDIA Jetson Nano Developer Kit (128-core GPU) |
| - Thị giác máy tính: YOLOv4 nhận diện 6 trạng thái con ngươi thời gian thực|
| - Đa phương thức: UI Bàn phím ảo + Âm thanh TTS + Điều khiển Xe lăn 24V |
+-----------------------------------------------------------------------------+
Tại Việt Nam, các giải pháp công nghệ trợ tiếp cận (Assistive Technology) dành cho nhóm bệnh nhân này còn hạn chế và các thiết bị nhập khẩu (như hệ thống theo dõi chuyển động mắt Tobii Dynavox) có giá thành quá cao (từ 3.000 đến 5.000 USD), vượt quá khả năng chi trả của đại đa số gia đình. Đề tài "Thiết kế và thi công thiết bị hỗ trợ giao tiếp cho bệnh nhân bị liệt dựa vào chuyển động con ngươi của mắt" giải quyết triệt để rào cản này bằng một giải pháp nhúng trí tuệ nhân tạo (Edge AI) với giá thành tối ưu và khả năng vận hành độc lập.
Mục tiêu dự án
- Thu thập và tiền xử lý dữ liệu sinh trắc học mắt: Xây dựng tập dữ liệu gồm 8.250 ảnh chất lượng cao phân loại 6 trạng thái cử động con ngươi của người Việt Nam.
- Triển khai mô hình học sâu nhận diện thời gian thực: Tối ưu hóa mô hình YOLOv4 (You Only Look Once version 4) trên kit máy tính nhúng NVIDIA Jetson Nano A02.
- Phát triển giao diện tương tác người máy (HMI/UI): Thiết kế hệ thống Menu ngữ cảnh, bộ phát âm thanh Text-to-Speech (TTS), chức năng gọi trợ giúp khẩn cấp và bàn phím gõ ký tự tiếng Việt ảo.
- Tích hợp module điều khiển xe lăn điện thông minh: Xây dựng giao thức truyền thông không dây Bluetooth kết nối vi điều khiển Arduino Due R3 và mạch cầu H công suất cao BTS7960 để điều hướng động cơ xe lăn.
Phạm vi và giới hạn kỹ thuật
- Vị trí & cự ly tương tác: Khuôn mặt người bệnh cố định chính diện camera ở khoảng cách từ 20 cm đến 25 cm.
- Tập nhãn cử động (6 classes): Nhìn thẳng/Mở mắt (
mo), Liếc lên (tren), Liếc xuống (duoi), Liếc trái (trai), Liếc phải (phai), Nhắm mắt (dong).
- Nguồn cấp hệ thống: Bộ chuyển đổi nguồn DC 5V - 5A cho bộ xử lý biên và ắc quy 24V - 12Ah cho hệ thống truyền động xe lăn.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Các phương pháp hỗ trợ giao tiếp cho người liệt hiện nay được chia thành ba nhánh chính: giao tiếp sóng não (EEG/BCI), cảm biến điện cơ (EMG) và thị giác máy tính theo dõi mắt (Eye-Gaze Tracking - EGT).
| Tiêu chí so sánh |
Tobii Dynavox (Hồng ngoại IR) |
Mô hình VGG16 + 39 Landmarks |
Giải pháp YOLOv4 trên Jetson Nano (Đề tài) |
| Nguyên lý thu nhận |
Nguồn phát hồng ngoại & cảm biến phản xạ võng mạc |
Camera RGB trích xuất 39 điểm mốc khuôn mặt |
Camera RGB phân loại trực tiếp hộp giới hạn con ngươi |
| Độ phức tạp phần cứng |
Phần cứng chuyên dụng độc quyền, đắt đỏ |
Yêu cầu GPU máy trạm cấu hình cao |
Máy tính nhúng tiêu chuẩn (Jetson Nano 4GB) |
| Tốc độ xử lý (FPS) |
30 - 60 FPS |
8 - 10 FPS (trên thiết bị di động) |
14 - 17 FPS (Real-time Edge inference) |
| Chi phí triển khai |
$3.000 - $5.000 USD |
~$800 USD |
< $300 USD |
| Khả năng mở rộng |
Giới hạn trong hệ sinh thái Windows |
Xử lý giao diện, khó ghép nối cơ cấu chấp hành |
Ghép nối trực tiếp cơ cấu chấp hành xe lăn điện 24V |
Phân tích yêu cầu chức năng theo mô hình MoSCoW:
- Must Have: Nhận diện chính xác 6 cử động mắt thời gian thực; Giao diện bàn phím ảo hiển thị trên màn hình 10.1 inch; Phát âm thanh giao tiếp qua loa.
- Should Have: Module truyền thông không dây Bluetooth điều khiển động cơ di chuyển xe lăn 4 hướng; Chức năng nghỉ mắt tạm thời chống mỏi cơ vận nhãn.
- Could Have: Tính năng gửi tin nhắn/thông báo cảnh báo đến smartphone của người chăm sóc.
- Won't Have: Nhận diện cử động khi người dùng quay đầu góc lớn (>30 độ) hoặc điều kiện ánh sáng tối hoàn toàn (không có đèn nền).
Thiết kế hệ thống
Kiến trúc phần cứng và luồng dữ liệu của hệ thống được module hóa thành các khối chức năng độc lập:
graph TD
A[Webcam Logitech C270 HD 720p] -->|USB 2.0 Video Stream| B[NVIDIA Jetson Nano 4GB]
subgraph "Khối Xử Lý Trung Tâm (Edge AI Engine)"
B --> C[YOLOv4 Object Detection]
C --> D[State Machine & UI Logic Controller]
end
D -->|HDMI Video Out| E[Màn hình Waveshare LCD 10.1 inch]
D -->|USB Audio| F[Loa mini i.value Audio Feedback]
D -->|Bluetooth UART Data| G[Intel Wireless-AC 8265]
G -.->|Wireless RF Signal| H[Arduino Due R3 Microcontroller]
subgraph "Khối Điều Khiển Xe Lăn Công Suất"
H -->|PWM Control Signals| I[Dual BTS7960 43A H-Bridge Drivers]
I -->|24V High Current Power| J[Động cơ DC Trục Bánh Xe Lăn]
K[Bộ Ắc Quy 24V 12Ah] -->|Nguồn chính 24V| I
K -->|Hạ áp qua LM2596 5V/3A| H
end
Danh mục công nghệ và linh kiện hệ thống (Technology Stack)
- Máy tính nhúng trung tâm: NVIDIA Jetson Nano Developer Kit A02 (CPU Quad-core ARM Cortex-A57 @ 1.43 GHz, GPU 128-core Maxwell, 4GB 64-bit LPDDR4 25.6 GB/s, hệ điều hành Ubuntu 18.04 LTS nền tảng JetPack SDK 4.6).
- Bộ thu nhận hình ảnh: Logitech C270 HD (Cảm biến 0.9 MP, độ phân giải 720p @ 30fps, tiêu cự cố định, góc nhìn chéo dFoV 55°).
- Màn hình hiển thị: Waveshare 10.1 inch LCD Touch Screen (Độ phân giải 1024x600/1220x800 pixel, tần số quét 30Hz, giao tiếp HDMI).
- Khối chấp hành công suất: Bo mạch Arduino Due R3 (Chip vi điều khiển Atmel SAM3X8E ARM Cortex-M3 32-bit @ 84 MHz) kết hợp 02 mạch cầu H BTS7960 (Điện áp làm việc 6V - 27V, dòng tải định mức 43A).
- Mạng truyền thông: Card mạng không dây M.2 Intel Wireless-AC 8265 (Dual-band Wi-Fi 2.4/5GHz + Bluetooth 4.2).
Tính toán công suất và thời lượng nguồn điện
Năng lượng tiêu thụ của khối điều khiển xe lăn:
- Arduino Due R3: $P_{\text{MCU}} = 5\text{V} \times 0.5\text{A} = 2.5\text{W}$
- Dòng tiêu thụ không tải mạch công suất và tổn hao: $P_{\text{idle}} \approx 0.45\text{W}$
- Tổng công suất tiêu thụ định mức của khối điều khiển: $P_{\text{ctrl}} = 2.95\text{W}$
Thời gian hoạt động liên tục của ắc quy 24V - 12Ah (dung lượng $W = 288\text{Wh}$, hệ số phóng xả an toàn $\eta = 0.7$):
$$t_{\text{battery}} = \frac{A \cdot V \cdot \eta}{P_{\text{ctrl}}} = \frac{12\text{Ah} \times 24\text{V} \times 0.7}{2.95\text{W}} \approx 68.34\text{ giờ}$$
Đối với khối xử lý Edge AI di động sử dụng bộ nguồn lưu điện Waveshare UPS (4 cell pin 18650, tổng năng lượng $42\text{Wh}$), công suất tải gồm Jetson Nano ($10\text{W}$), Webcam C270 ($5\text{W}$) và Loa ($5\text{W}$) với tổng $P_{\text{AI}} = 20\text{W}$:
$$t_{\text{UPS}} = \frac{42\text{Wh} \times 0.7}{20\text{W}} \approx 1.47\text{ giờ}$$
Methodology
Dự án áp dụng mô hình phát triển phần mềm và kỹ thuật phần cứng lai ghép (Hybrid Engineering Lifecycle) kéo dài 16 tuần, chia làm 4 giai đoạn trọng tâm:
Tuần 1-4: Khảo sát lý thuyết, nghiên cứu giải phẫu học cơ vận nhãn, lựa chọn kiến trúc phần cứng.
Tuần 5-8: Thu thập 8.250 ảnh mẫu, gán nhãn dữ liệu qua LabelImg, thiết kế khung giao diện UI.
Tuần 9-12: Huấn luyện mô hình YOLOv4 trên Google Colab GPU, đóng gói mã nguồn sang Jetson Nano, lập trình Firmware Arduino Due.
Tuần 13-16: Thi công khung vỏ cơ khí, kiểm chuẩn sai số thực nghiệm, tích hợp hệ thống xe lăn và bảo vệ tốt nghiệp.
Ma trận quản trị rủi ro kỹ thuật:
- Rủi ro quá nhiệt GPU trên Jetson Nano: Khi chạy mô hình CNN liên tục, nhiệt độ chip tăng vượt ngưỡng $75^\circ\text{C}$ gây hiện tượng giảm xung (Thermal Throttling). Giải pháp: Lắp đặt quạt làm mát cưỡng bức 5V kết hợp cụm tản nhiệt nhôm định hình, duy trì nhiệt độ ổn định dưới $52^\circ\text{C}$.
- Rủi ro trễ tín hiệu điều khiển xe lăn: Hiện tượng nhảy nhầm lệnh do mắt chớp tự nhiên. Giải pháp: Xây dựng bộ lọc Debounce thời gian (Time-threshold Debouncing), yêu cầu duy trì hướng nhìn liên tục trong cửa sổ thời gian $t_{\text{hold}} \ge 600\text{ms}$ mới kích hoạt lệnh.
Implementation và kết quả
Development process
Quá trình huấn luyện mô hình nhận diện sử dụng mạng nơ-ron tích chập YOLOv4 với cấu trúc xương sống CSPDarknet53 (Cross-Stage Partial Connections) nhằm giảm 20% chi phí tính toán so với Darknet-53 gốc mà vẫn duy trì độ chính xác cao. Cấu trúc cổ mạng (Neck) kết hợp Spatial Pyramid Pooling (SPP với các kích thước kernel max-pooling $5\times5, 9\times9, 13\times13$) và Path Aggregation Network (PANet) để tổng hợp đặc trưng đa tầng.
+--------------------------------------------------------------------------+
| KIẾN TRÚC MÔ HÌNH YOLOV4 |
| |
| [Input: 416x416x3 Image] |
| | |
| v |
| +--------------------------------------------------------------------+ |
| | Backbone: CSPDarknet53 (53 Conv Layers + Mish Activation + CSPBlock)| |
| +--------------------------------------------------------------------+ |
| | |
| v |
| +--------------------------------------------------------------------+ |
| | Neck: SPP (Maxpool 5, 9, 13) + PANet (Bottom-up & Top-down Fusion) | |
| +--------------------------------------------------------------------+ |
| | |
| v |
| +--------------------------------------------------------------------+ |
| | Head: 3 YOLO Detection Layers (19x19, 38x38, 76x76 Feature Maps) | |
| +--------------------------------------------------------------------+ |
| | |
| v |
| [Output: Class Predictions (6) + Bounding Box Coordinates (CIoU)] |
+--------------------------------------------------------------------------+
Hàm mất mát tổng thể của YOLOv4 tích hợp hàm mất mát khoảng cách hoàn chỉnh CIoU (Complete Intersection over Union):
$$\mathcal{L}{\text{total}} = \mathcal{L}{\text{CIoU}}(\text{box}, \text{truth}) + \lambda_{\text{conf}} \mathcal{L}{\text{conf}} + \lambda{\text{cls}} \mathcal{L}_{\text{cls}}$$
Trong đó, tổn thất vị trí CIoU tính toán trực tiếp độ lệch tâm sai số Euclidean và tỷ lệ khung hình:
$$\mathcal{R}_{\text{CIoU}} = \frac{\rho^2(b, b^{\text{gt}})}{c^2} + \alpha v, \quad v = \frac{4}{\pi^2} \left( \arctan\frac{w^{\text{gt}}}{h^{\text{gt}}} - \arctan\frac{w}{h} \right)^2$$
Đoạn mã Python xử lý luồng nhận diện và ánh xạ hành vi cử động mắt sang cơ chế giao tiếp trên Jetson Nano:
import cv2
import numpy as np
import serial
import time
class EyeGazeController:
def __init__(self, weights_path: str, config_path: str, serial_port: str = '/dev/ttyTHS1'):
# Khởi tạo mạng Darknet YOLOv4 qua OpenCV DNN Backend CUDA
self.net = cv2.dnn.readNetFromDarknet(config_path, weights_path)
self.net.setPreferableBackend(cv2.dnn.DNN_BACKEND_CUDA)
self.net.setPreferableTarget(cv2.dnn.DNN_TARGET_CUDA)
self.classes = ["mo", "tren", "duoi", "trai", "phai", "dong"]
self.layer_names = self.net.getLayerNames()
self.output_layers = [self.layer_names[i - 1] for i in self.net.getUnconnectedOutLayers()]
# Khởi tạo kết nối UART/Bluetooth tới Arduino Due
self.ser = serial.Serial(serial_port, baudrate=115200, timeout=0.1)
self.last_action = "mo"
self.action_start_time = time.time()
self.DEBOUNCE_DELAY = 0.6 # Ngưỡng trễ 600ms chống chớp mắt giả
def process_frame(self, frame: np.ndarray):
height, width, _ = frame.shape
blob = cv2.dnn.blobFromImage(frame, 1/255.0, (416, 416), swapRB=True, crop=False)
self.net.setInput(blob)
outs = self.net.forward(self.output_layers)
detected_action = "mo"
max_confidence = 0.0
for out in outs:
for detection in out:
scores = detection[5:]
class_id = np.argmax(scores)
confidence = scores[class_id]
if confidence > 0.65 and confidence > max_confidence:
max_confidence = confidence
detected_action = self.classes[class_id]
self._dispatch_command(detected_action)
return detected_action
def _dispatch_command(self, current_action: str):
current_time = time.time()
if current_action == self.last_action:
if (current_time - self.action_start_time) >= self.DEBOUNCE_DELAY:
if current_action in ["trai", "phai", "tren", "duoi"]:
# Gửi mã lệnh điều khiển xe lăn hoặc điều hướng Menu UI
payload = f"CMD:{current_action.upper()}\n".encode('ascii')
self.ser.write(payload)
self.action_start_time = current_time # Reset bộ đếm
else:
self.last_action = current_action
self.action_start_time = current_time
Testing và validation
Hiệu năng thực thi giữa các nền tảng phần cứng và mô hình học sâu được đánh giá trực tiếp trong môi trường thực nghiệm:
| Nền tảng phần cứng |
Mô hình học sâu |
Average Precision (AP) |
Tốc độ xử lý (FPS) |
Đánh giá khả thi |
| Raspberry Pi 4 Model B |
YOLOv3 (Full) |
43% |
1 FPS |
Không khả thi (độ trễ quá lớn) |
| Raspberry Pi 4 Model B |
EfficientDet-B0 |
32% |
40 FPS |
Tốc độ cao nhưng AP quá thấp |
| Jetson Nano Developer Kit |
MobileNetV2-SSDLite |
44% |
17 FPS |
Khả thi nhưng độ bao phủ hộp thấp |
| Jetson Nano Developer Kit |
YOLOv4 (Custom 6 Classes) |
46% (mAP@0.5: 89.2%) |
14 FPS |
Tối ưu nhất cho điều khiển |
Kiểm tra độ chính xác phân loại theo khoảng cách thực tế từ mắt đến camera:
| Khoảng cách (cm) |
Số mẫu thử nghiệm |
Số mẫu nhận diện đúng |
Độ chính xác (Accuracy %) |
Thời gian phản hồi trung bình (ms) |
| 15 cm |
100 |
81 |
81.0% |
72 ms |
| 20 cm |
100 |
94 |
94.0% |
68 ms |
| 25 cm |
100 |
91 |
91.0% |
69 ms |
| 30 cm |
100 |
76 |
76.0% |
75 ms |
+--------------------------------------------------------------------+
| MA TRẬN NHẦM LẪN (CONFUSION MATRIX) |
| (Đánh giá trên 825 ảnh tập kiểm thử) |
| |
| Thực tế \ Dự đoán Mở Lên Xuống Trái Phải Đóng Recall|
| Mở (218) 205 2 3 3 4 1 94.0%|
| Lên (112) 4 101 1 2 4 0 90.2%|
| Xuống (112) 5 1 100 3 3 0 89.3%|
| Trái (119) 6 1 2 106 3 1 89.1%|
| Phải (121) 5 3 1 2 109 1 90.1%|
| Đóng (143) 3 0 1 1 1 137 95.8%|
| Precision 89.9% 93.5% 92.6% 90.6% 87.9% 97.9% |
+--------------------------------------------------------------------+
Kết quả đạt được
- Tính năng điều hướng và phản hồi ngữ cảnh: Thiết bị thực hiện chính xác các lệnh giao tiếp mẫu như "CÓ", "KHÔNG", "ĐÚNG", "SAI" với thời gian trễ phản hồi âm thanh $< 250\text{ms}$. Chức năng "GỌI TRỢ GIÚP" gửi cảnh báo đến điện thoại người thân qua Wi-Fi/Bluetooth hoàn tất trong $1.2\text{s}$.
- Gõ văn bản tiếng Việt qua bàn phím ảo: Hệ thống phân tách bàn phím thành hai nửa Trái/Phải giúp người bệnh quét tọa độ ký tự nhanh chóng. Tốc độ gõ trung bình đạt 3 đến 5 từ/phút đối với người dùng đã qua 15 phút làm quen.
- Điều khiển xe lăn điện thời gian thực: Tín hiệu truyền thông từ Jetson Nano qua Arduino Due điều khiển cầu H BTS7960 di chuyển xe lăn 4 hướng (Tiến, Lùi, Rẽ Trái, Rẽ Phải) và Dừng khẩn cấp khi nhắm mắt $> 1.5\text{s}$, sai số quỹ đạo chuyển hướng $< 5%$.
Đổi mới và đóng góp
- Kiến trúc tính toán biên hoàn toàn độc lập (True Edge AI): Không phụ thuộc vào kết nối Internet hay điện toán đám mây (Cloud), toàn bộ mạng nơ-ron tích chập YOLOv4 được tăng tốc phần cứng thông qua nhân Tensor/CUDA trên chip xử lý đồ họa Maxwell của Jetson Nano, bảo mật tuyệt đối dữ liệu hình ảnh người bệnh.
- Kỹ thuật trích xuất đặc trưng không xâm lấn: Khác với các phương pháp dán điện cực EEG quanh vùng đầu gây khó chịu hay cảm biến hồng ngoại chiếu trực tiếp vào giác mạc gây khô mắt, giải pháp sử dụng webcam quang học RGB thông thường với thuật toán học sâu giúp quá trình tương tác hoàn toàn tự nhiên.
- Tích hợp đồng thời hai cơ chế HMI và Cơ điện tử: Kết hợp liền mạch giữa giao diện đồ họa giao tiếp xã hội và hệ thống điều khiển công suất cơ khí di động trên cùng một hệ điều hành nhúng duy nhất.
- Tối ưu hóa chi phí sản xuất y tế: Tổng chi phí linh kiện phần cứng (BOM) của toàn bộ module điều khiển và xử lý hình ảnh chỉ xấp xỉ 6.500.000 VNĐ, giảm hơn 90% chi phí so với các hệ thống nhập khẩu nguyên chiếc từ Châu Âu.
Ứng dụng thực tế và triển khai
+---------------------------------------------------------------------------+
| KỊCH BẢN TRIỂN KHAI THỰC TẾ |
| |
| [Bệnh nhân LiS / Bại liệt] |
| | |
| |--> Ngồi trên xe lăn điện, mắt cách màn hình 20-25cm |
| | |
| +---> [Chế độ Giao tiếp]: Liếc chọn 'ĐÓI' / 'KHÁT' -> Loa phát |
| | |
| +---> [Chế độ Soạn thảo]: Gõ ký tự tiếng Việt gửi thông điệp |
| | |
| +---> [Chế độ Di chuyển]: Liếc Trái/Phải/Lên để lái xe lăn |
| | |
| +---> [Chế độ Nghỉ/Dừng]: Nhắm mắt >1.5s để ngắt động cơ an toàn|
+---------------------------------------------------------------------------+
Kịch bản sử dụng thực tế
- Khoa Hồi sức Tích cực (ICU) & Trung tâm Phục hồi Chức năng: Hỗ trợ bác sĩ và điều dưỡng nắm bắt nhanh nhu cầu cấp thiết của bệnh nhân chấn thương sọ não, đột quỵ mất tiếng nói.
- Sinh hoạt gia đình: Giúp bệnh nhân tự chủ di chuyển xe lăn trong không gian nhà ở, tự chọn các nhu cầu cá nhân (ăn uống, vệ sinh, giải trí) mà không cần người túc trực 24/7.
Hướng dẫn lắp đặt và hiệu chuẩn
- Gắn giá đỡ màn hình Waveshare 10.1 inch và Webcam Logitech C270 cố định trên thành xe lăn điện.
- Điều chỉnh khớp cầu đa hướng sao cho camera hướng thẳng góc $90^\circ$ vào sống mũi người bệnh, cự ly đạt chuẩn $22\text{ cm}$.
- Cấp nguồn Adapter 5V - 5A cho Jetson Nano; hệ thống tự động khởi chạy script Python thông qua dịch vụ
systemd khi khởi động (Boot-to-App).
- Người bệnh thực hiện nhìn 4 góc màn hình trong 5 giây đầu tiên để thuật toán tự động cân bằng ánh sáng và xác lập ngưỡng biên độ chuyển động con ngươi.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Phụ thuộc góc nhìn đầu: Hệ thống yêu cầu đầu bệnh nhân giữ tương đối ổn định; nếu người bệnh nghiêng đầu góc $> 25^\circ$, độ chính xác nhận diện giảm xuống dưới 70%.
- Điều kiện ánh sáng môi trường: Camera RGB không có đèn LED hồng ngoại bổ trợ nên độ chính xác suy giảm trong môi trường thiếu sáng hoặc ánh sáng ngược gắt.
- Thời lượng pin module AI: Bộ lưu điện Waveshare UPS 42Wh chỉ duy trì được 1.47 giờ hoạt động liên tục cho khối máy tính nhúng và màn hình.
Kế hoạch phát triển
- Chuyển đổi mô hình sang TensorRT: Tối ưu hóa trọng số YOLOv4 từ FP32 sang FP16/INT8 thông qua NVIDIA TensorRT Engine để nâng tốc độ khung hình từ 14 FPS lên trên 30 FPS.
- Tích hợp Camera hồng ngoại (IR Night Vision): Trang bị cảm biến camera có bộ lọc bước sóng 850nm kết hợp đèn chiếu hồng ngoại công suất thấp để hệ thống hoạt động ổn định trong bóng tối.
- Mô hình hóa Vector hướng mắt 3D (3D Gaze Estimation): Ứng dụng mạng học sâu ước lượng hướng nhìn không phụ thuộc tư thế đầu (Head-pose Invariant Gaze Tracking).
Đối tượng hưởng lợi
- Bệnh nhân mất khả năng vận động và phát âm: Giành lại quyền tự do biểu đạt tư duy, tự chủ điều khiển phương tiện di chuyển cá nhân, cải thiện sức khỏe tâm lý.
- Người chăm sóc và nhân viên y tế: Giảm áp lực theo dõi liên tục; nhận biết chính xác tình trạng khẩn cấp của bệnh nhân qua chuông báo tự động.
- Kỹ sư và lập trình viên nhúng AI: Cung cấp mã nguồn tham khảo hoàn chỉnh về việc triển khai mạng nơ-ron tích chập thời gian thực trên phần cứng NVIDIA Jetson kết hợp vi điều khiển thời gian thực.
- Cộng đồng nghiên cứu Kỹ thuật Y sinh (BME): Dữ liệu thực nghiệm và phương pháp luận thiết kế hệ thống tương tác mắt chi phí thấp phục vụ công tác đào tạo và nghiên cứu ứng dụng.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật phần cứng tối thiểu để triển khai hệ thống là gì?
Hệ thống yêu cầu máy tính nhúng tối thiểu là NVIDIA Jetson Nano 4GB (hoặc Jetson Orin Nano để có hiệu năng cao hơn), 01 thẻ nhớ MicroSD 64GB chuẩn U3/V30 tốc độ đọc $\ge 100\text{MB/s}$, 01 Webcam độ phân giải tối thiểu 720p @ 30fps và màn hình hiển thị cổng HDMI độ phân giải từ 1024x600 pixel.
2. Người dùng đeo kính cận hoặc kính lão có sử dụng được thiết bị không?
Hệ thống vẫn nhận diện được khi người dùng đeo kính mắt trong suốt không màu. Tuy nhiên, nếu tròng kính bị phản quang ánh sáng mạnh hoặc người dùng đeo kính râm tối màu, hệ thống sẽ gặp hiện tượng suy giảm độ chính xác nhận diện con ngươi.
3. Làm thế nào để xe lăn không bị chạy sai khi người bệnh vô tình đảo mắt hoặc chớp mắt?
Thuật toán tích hợp cơ chế lọc trễ thời gian (Debounce Filter). Lệnh di chuyển chỉ được phát đi khi trạng thái mắt giữ liên tục ở một hướng vượt quá 600 miligiây. Đồng thời, hành động nhắm mắt liên tục trong 1.5 giây được lập trình làm cơ chế ngắt khẩn cấp (Emergency Kill-Switch), ngay lập tức dừng động cơ xe lăn.
4. Hệ thống tiêu thụ điện năng như thế nào và cách sạc pin?
Hệ thống sử dụng hai đường nguồn riêng biệt: Bình ắc quy 24V - 12Ah chuyên dụng cấp cho động cơ xe lăn (sạc qua bộ sạc chuyên dụng 24V đi kèm) và khối pin sạc Lithium 18650 tích hợp trong mạch UPS cho máy tính Jetson Nano (sạc qua cổng Type-C/DC 5V).
5. Chi phí tự lắp ráp toàn bộ hệ thống này là bao nhiêu?
Tổng chi phí linh kiện phần cứng (chưa bao gồm khung xe lăn điện cơ sở) rơi vào khoảng 6.500.000 đến 7.500.000 VNĐ, bao gồm Jetson Nano, camera HD, màn hình LCD 10 inch, mạch công suất BTS7960, Arduino Due, bộ nguồn UPS và các phụ kiện cơ khí.
Kết luận
Đề tài tốt nghiệp "Thiết kế và thi công thiết bị hỗ trợ giao tiếp cho bệnh nhân bị liệt dựa vào chuyển động con ngươi của mắt" đã giải quyết thành công bài toán kỹ thuật phức tạp kết hợp giữa Thị giác máy tính biên (Edge Computer Vision), Kỹ thuật Y sinh và Điều khiển tự động. Việc ứng dụng mạng nơ-ron tích chập YOLOv4 trên kit máy tính nhúng NVIDIA Jetson Nano đạt độ chính xác phân loại trên 91% ở cự ly làm việc tiêu chuẩn và tốc độ xử lý ổn định 14 FPS là minh chứng rõ nét cho tính khả thi của giải pháp. Hệ thống không chỉ mở ra cánh cửa tái hòa nhập cộng đồng cho những bệnh nhân mắc chứng liệt tứ chi và hội chứng Locked-in với chi phí tối ưu, mà còn khẳng định tiềm năng to lớn của các công nghệ AI nhúng mã nguồn mở trong việc phụng sự sức khỏe cộng đồng tại Việt Nam.