Giới thiệu dự án
Áp lực từ nhịp sống hiện đại, công việc văn phòng, mạng xã hội và các biến cố tâm lý đang thúc đẩy tỷ lệ rối loạn lo âu và trầm cảm tăng nhanh trên toàn cầu. Theo Tổ chức Y tế Thế giới (WHO), có hơn 300 triệu người (tương đương 4,4% dân số toàn cầu) đang phải đối mặt với các vấn đề sức khỏe tâm thần, và trầm cảm là nguyên nhân dẫn đến hơn 800.000 ca tự tử mỗi năm. Tại Việt Nam, thống kê của Bệnh viện Bạch Mai và WHO chỉ ra khoảng 3,5 triệu người mắc các chứng rối loạn tâm thần liên quan đến stress, trong đó có xấp xỉ 40.000 ca tự tử hàng năm. Căng thẳng kéo dài làm rối loạn trục dưới đồi - tuyến yên - tuyến thượng thận (HPA axis), giải phóng quá mức hormone cortisol, dẫn đến suy giảm miễn dịch, tăng huyết áp và mất cân bằng nhịp tim.
Liệu pháp âm nhạc (Music Therapy) và ánh sáng sinh học (Chromotherapy) đã được chứng minh lâm sàng có khả năng điều hòa hệ thần kinh thực vật, giảm cortisol, kích thích tiết dopamine/serotonin và đưa nhịp sinh học trở về trạng thái ổn định. Tuy nhiên, các giải pháp can thiệp hiện nay phần lớn mang tính thủ công, phụ thuộc vào bác sĩ tâm lý hoặc các hệ thống Cloud AI đắt đỏ, đòi hỏi tài nguyên phần cứng lớn và chưa tối ưu hóa cho nhận diện khuôn mặt người Á Đông.
Đề tài "Nghiên cứu hệ thống hỗ trợ điều chỉnh cảm xúc bằng âm nhạc" (Study on music-based emotion regulation system) của nhóm tác giả Trần Thị Duy An và Đặng Lê Ngọc Trâm (Trường Đại học Công nghệ Thông tin - ĐHQG TP.HCM, dưới sự hướng dẫn của TS. Đoàn Duy) giải quyết bài toán trên bằng cách xây dựng một hệ thống tính toán cảm xúc (Affective Computing) khép kín, hoạt động hoàn toàn trên thiết bị nhúng biên (Edge Device) với chi phí thấp và độ trễ tối thiểu.
+-----------------------------------------------------------------------------------+
| CLOSED-LOOP EMOTION REGULATION |
| |
| +--------------+ +-------------------+ +------------------+ +-----+ |
| | User Face | --> | Camera 640x480 | --> | MediaPipe Face | --> | CNN | |
| | Expression | | (30s sampling) | | Extraction | | FE | |
| +--------------+ +-------------------+ +------------------+ +--+--+ |
| ^ | |
| | v |
| +------+-------+ +-------------------+ +------------------+ +--+--+ |
| | Neuro-Physio | <-- | Actuators: Audio | <-- | Decision Engine: | <-- | Emo | |
| | Biofeedback | | Speaker + LED RGB | | Circumplex Map | | Cls | |
| +--------------+ +-------------------+ +------------------+ +-----+ |
+-----------------------------------------------------------------------------------+
Mục tiêu dự án
- Nghiên cứu lý thuyết cảm xúc và âm học: Phân tích 6 trạng thái cảm xúc cơ bản của Paul Ekman kết hợp mô hình không gian cảm xúc Circumplex (Russell) và mối tương quan giữa nhịp tim, nhịp độ âm nhạc (Tempo - BPM), màu sắc ánh sáng.
- Xây dựng bộ dữ liệu biểu cảm khuôn mặt người Việt: Thu thập, tiền xử lý và gán nhãn 5.359 hình ảnh khuôn mặt người Việt Nam từ hơn 50 video thực tế nhằm gia tăng độ chính xác phân loại cho người bản địa.
- Huấn luyện mô hình học sâu tối ưu hóa cho thiết bị biên: Áp dụng kỹ thuật học đa tác vụ (Multi-task Learning) trên kiến trúc mạng nơ-ron tích chập nhẹ (Lightweight CNN: MobileNet-V1, RexNet-150, EfficientNet) kết hợp thuật toán tối ưu hóa SAM (Sharpness-Aware Minimization).
- Hiện thực hóa hệ thống nhúng điều khiển tự động: Triển khai trọn vẹn giải pháp trên bo mạch Raspberry Pi 4 Model B, tích hợp camera xử lý khung hình thời gian thực và tự động kích hoạt loa phát nhạc cùng dải LED RGB theo kịch bản trị liệu.
Phạm vi và giới hạn hệ thống
- Phạm vi: Nhận diện 7 lớp trạng thái khuôn mặt (Tức giận, Chán ghét, Sợ hãi, Hạnh phúc, Buồn bã, Ngạc nhiên, Bình thường) trong môi trường phòng kín (Smart Home, phòng trị liệu tâm lý).
- Giới hạn kỹ thuật: Xử lý đơn người dùng (Single-user) tại một thời điểm; khoảng cách tối ưu từ camera đến khuôn mặt là 0.5m – 2.0m; điều kiện ánh sáng môi trường từ 150 lux trở lên.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Hiện nay, các nghiên cứu và ứng dụng tính toán cảm xúc trên thị trường chia làm ba nhánh chính:
| Tiêu chí |
Hệ sinh thái Cloud API (Affectiva, AWS Rekognition) |
Thiết bị đeo thông minh (Apple Watch, Fitbit EDA) |
Giải pháp Edge AI Emotion Regulator (Đề tài) |
| Kiến trúc |
Client-Server qua REST API |
Cảm biến sinh trắc học trên da (PPG, EDA) |
On-device Edge Computing (Raspberry Pi 4) |
| Độ trễ phản hồi |
1.500ms – 3.500ms (phụ thuộc mạng) |
5.000ms – 10.000ms (lấy mẫu sinh học) |
200ms – 350ms (xử lý cục bộ) |
| Quyền riêng tư |
Rủi ro rò rỉ hình ảnh cá nhân lên Cloud |
Dữ liệu lưu trữ máy chủ bên thứ ba |
100% On-device, không lưu trữ frame |
| Khả năng can thiệp |
Chỉ thống kê, phân tích |
Gợi ý thở qua rung màn hình |
Kích hoạt tức thì âm nhạc & ánh sáng RGB |
| Độ chính xác khuôn mặt Á Đông |
Trung bình (~68% - 74%) |
Không áp dụng nhận diện hình ảnh |
Cao (~85.4% nhờ dataset người Việt) |
| Chi phí phần cứng |
Định phí theo API call + máy chủ |
$150 – $400 / thiết bị đeo |
~$100 (Single-board computer giá rẻ) |
Phân loại yêu cầu người dùng (MoSCoW)
- Must Have: Trích xuất vị trí khuôn mặt bằng MediaPipe; phân loại 7 biểu cảm thời gian thực; ánh xạ cảm xúc sang 4 góc phần tư mô hình Circumplex; điều khiển loa Bluetooth và LED RGB qua GPIO/Bluetooth.
- Should Have: Tự động chuyển đổi trạng thái vòng lặp (
IDLE, PLAYING, PAUSE) sau mỗi chu kỳ 30 giây; tập dữ liệu tinh chỉnh chuyên biệt cho người Việt.
- Could Have: Giao diện Dashboard hiển thị biểu đồ lịch sử cảm xúc; đồng bộ Spotify Playlist API.
- Won't Have: Nhận diện đa khuôn mặt đồng thời (Multi-face tracking) trong phiên bản thử nghiệm đầu tiên.
Thiết kế hệ thống
Kiến trúc tổng thể được tổ chức thành 3 tầng chức năng độc lập (3-Tier Architecture):
+-----------------------------------------------------------------------------+
| LAYER 1: BASIC EMOTION DETECTION LAYER |
| [Camera Input 640x480] |
| │ |
| ▼ |
| [MediaPipe Face Detector] ──> [Crop & Normalize 48x48 / 224x224] |
| │ |
| ▼ |
| [Deep Lightweight CNN: MobileNet / RexNet] |
| │ |
| ▼ |
| [7-Class Probabilities -> Affective State] |
+────────────────────────────────────────┬────────────────────────────────────+
│
▼
+-----------------------------------------------------------------------------+
| LAYER 2: DECISION-MAKING LAYER |
| Ánh xạ vào Russell Circumplex Model: |
| 1. Activated Unpleasant (Tức giận/Sợ hãi) ──> Script: 60-80 BPM, Ánh sáng Xanh|
| 2. Unactivated Unpleasant (Buồn bã) ──> Script: 80-100 BPM, Ánh sáng Vàng|
| 3. Activated Pleasant (Ngạc nhiên/Hưng phấn)──> Script: 100-120 BPM, Ánh sáng Tím|
| 4. Unactivated Pleasant (Bình thường/Vui) ──> Script: 70-90 BPM, Ánh sáng Lục |
+────────────────────────────────────────┬────────────────────────────────────+
│
▼
+-----------------------------------------------------------------------------+
| LAYER 3: ACTUATOR CONTROL LAYER |
| State Machine Engine (IDLE / PLAYING / PAUSE) |
| ├──> Bluetooth Controller ──> LG Xboom Go PN1 (Phát nhạc MP3) |
| └──> GPIO Controller ──> WS2812B Addressable LED Strip |
+-----------------------------------------------------------------------------+
Ma trận ánh xạ Cảm xúc - Âm nhạc - Ánh sáng
Dựa trên mô hình Circumplex và sinh lý học thần kinh, hệ thống xây dựng kịch bản phản hồi can thiệp:
| Trạng thái cảm xúc |
Valence / Arousal |
Nhịp tim ước tính |
Nhịp độ nhạc (Tempo) |
Cấu trúc tiết tấu (Rhythm) |
Bước sóng / Màu LED |
Tác động sinh lý mục tiêu |
| Giận dữ (Anger) |
Negative / High |
95 – 105 BPM |
60 – 70 BPM |
Nốt tròn & nốt trắng (Whole/Half) |
450nm (Xanh dương) |
Ức chế giao cảm, hạ huyết áp |
| Sợ hãi (Fear) |
Negative / High |
90 – 100 BPM |
65 – 75 BPM |
Giai điệu mượt (Legato), êm dịu |
520nm (Xanh lá cây) |
Giảm tiết Adrenaline, an thần |
| Buồn bã (Sad) |
Negative / Low |
70 – 80 BPM |
85 – 100 BPM |
Nốt móc đơn (Eighth notes) |
590nm (Vàng ấm) |
Kích thích thụ thể Dopamine |
| Chán ghét (Disgust) |
Negative / Low |
75 – 85 BPM |
75 – 90 BPM |
Tiết tấu ổn định, hòa âm du dương |
570nm (Cam nhạt) |
Cân bằng tâm trạng, thư giãn cơ |
| Ngạc nhiên (Surprise) |
Positive / High |
82 – 92 BPM |
90 – 110 BPM |
Tiết tấu phong phú, nhịp 4/4 |
400nm (Tím nhạt) |
Duy trì chú ý tích cực |
| Hạnh phúc (Happy) |
Positive / High |
88 – 98 BPM |
100 – 120 BPM |
Nốt móc kép, tiết tấu sôi nổi |
620nm (Hồng tươi) |
Duy trì Endorphin và hưng phấn |
Methodology & Công nghệ sử dụng
Dự án được phát triển theo mô hình Agile với các chu kỳ lặp (sprints) 2 tuần.
+-------------------------------------------------------------------------+
| HARDWARE SPECIFICATIONS |
| • Single-Board Computer: Raspberry Pi 4 Model B (Broadcom BCM2711) |
| - CPU: Quad-core ARM Cortex-A72 @ 1.5GHz (64-bit ARMv8) |
| - RAM: 8GB LPDDR4-3200 SDRAM |
| • Camera Module: Xiaomi USB Camera HD (Capture 640x480 @ 30 FPS) |
| • Audio Output: LG Xboom Go PN1 (Bluetooth 5.0 / ALSA Driver) |
| • Light Output: WS2812B 5V Addressable RGB LED Strip via GPIO PWM |
+-------------------------------------------------------------------------+
| SOFTWARE STACK & VERSIONS |
| • Core OS: Raspberry Pi OS 64-bit (Debian Bullseye, Linux Kernel 5.10) |
| • Programming Language: Python 3.8.10 / GNU Bash 5.1 |
| • Computer Vision: OpenCV v4.5.4, Google MediaPipe v0.8.9 |
| • Deep Learning: PyTorch v1.10.0, Torchvision v0.11.1, ONNX Runtime |
| • Optimizer: Sharpness-Aware Minimization (SAM) + Adam (lr=1e-3, 1e-4) |
+-------------------------------------------------------------------------+
Implementation và kết quả
Development Process
1. Quy trình huấn luyện mô hình (Two-Stage Transfer Learning)
Quá trình huấn luyện mạng CNN trải qua 2 giai đoạn khắt khe để đảm bảo mô hình hội tụ tốt trên dữ liệu biểu cảm:
- Giai đoạn 1 (Feature Extraction Pre-training): Khởi tạo mô hình backbone (MobileNet-V1/RexNet-150) tiền huấn luyện trên ImageNet và VGGFace2 (3.564.000 hình ảnh của 9.131 danh tính). Đóng băng (freeze) các tầng tích chập cơ sở, gắn thêm fully-connected head phân loại 9.131 lớp với hàm kích hoạt Softmax, huấn luyện bằng Adam optimizer ($lr = 0.001$) kết hợp kỹ thuật Sharpness-Aware Minimization (SAM) để tối ưu bề mặt hàm mất mát:
$$\min_{w} L^{SAM}(w) = \max_{|\epsilon|_2 \le \rho} L(w + \epsilon)$$
- Giai đoạn 2 (Fine-tuning): Mở băng toàn bộ mạng, thay thế lớp Softmax đầu ra thành 7 lớp cảm xúc. Huấn luyện tinh chỉnh 10 epochs trên tổ hợp bộ dữ liệu FER-2013 và Dataset người Việt với $lr = 0.0001$.
import cv2
import numpy as np
import mediapipe as mp
import torch
import torchvision.transforms as transforms
from models.lightweight_cnn import RexNetEmotionClassifier
class EmotionDetectorPipeline:
def __init__(self, model_weights_path: str, device: str = 'cpu'):
self.device = torch.device(device)
self.emotions = ['Angry', 'Disgust', 'Fear', 'Happy', 'Sad', 'Surprise', 'Neutral']
# Khoi tao MediaPipe Face Detection
self.mp_face_detection = mp.solutions.face_detection
self.face_detector = self.mp_face_detection.FaceDetection(
min_detection_confidence=0.6, model_selection=0
)
# Khoi tao Classifier Model
self.model = RexNetEmotionClassifier(num_classes=7)
self.model.load_state_dict(torch.load(model_weights_path, map_location=self.device))
self.model.to(self.device)
self.model.eval()
self.transform = transforms.Compose([
transforms.ToPILImage(),
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])
def process_frame(self, frame: np.ndarray):
h, w, _ = frame.shape
rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
results = self.face_detector.process(rgb_frame)
if not results.detections:
return None, "No Face Detected"
# Trich xuat toa do Bounding Box khuon mat
detection = results.detections[0]
bbox = detection.location_data.relative_bounding_box
x_min = max(0, int(bbox.xmin * w))
y_min = max(0, int(bbox.ymin * h))
box_w = min(w - x_min, int(bbox.width * w))
box_h = min(h - y_min, int(bbox.height * h))
face_roi = rgb_frame[y_min:y_min+box_h, x_min:x_min+box_w]
if face_roi.size == 0:
return None, "Invalid ROI"
tensor_img = self.transform(face_roi).unsqueeze(0).to(self.device)
with torch.no_grad():
outputs = self.model(tensor_img)
probabilities = torch.softmax(outputs, dim=1).cpu().numpy()[0]
pred_idx = np.argmax(probabilities)
return self.emotions[pred_idx], probabilities[pred_idx]
2. Kịch bản điều khiển cơ cấu chấp hành (Actuator Controller)
Quản lý trạng thái thông qua tiến trình nền (Sub-process) đảm bảo không chặn (non-blocking) luồng nhận diện:
#!/bin/bash
# Actuator Control Engine: script.sh
CURRENT_STATE="IDLE"
MUSIC_BASE_DIR="/home/pi/music_theraphy"
PREV_EMOTION=""
handle_actuator() {
EMOTION=$1
echo "[Engine] Received Emotion State: $EMOTION"
TARGET_DIR="$MUSIC_BASE_DIR/$EMOTION"
if [ ! -d "$TARGET_DIR" ]; then
echo "[Warning] Emotion folder not found: $TARGET_DIR"
return 1
fi
# Chon ngau nhien 1 file audio tu thu muc tuong ung
TRACK_PATH=$(find "$TARGET_DIR" -type f -name "*.mp3" | shuf -n 1)
if [ "$CURRENT_STATE" == "PLAYING" ]; then
if [ "$EMOTION" != "$PREV_EMOTION" ]; then
echo "[Engine] Switching Audio track to match new state..."
killall mpg123 > /dev/null 2>&1
mpg123 -q "$TRACK_PATH" &
PREV_EMOTION=$EMOTION
fi
elif [ "$CURRENT_STATE" == "IDLE" ]; then
CURRENT_STATE="PLAYING"
PREV_EMOTION=$EMOTION
mpg123 -q "$TRACK_PATH" &
fi
}
# Vong lap lang nghe tin hieu tu Python inference module
while read line; do
if [ "$line" == "CMD_PAUSE" ]; then
killall -STOP mpg123
CURRENT_STATE="PAUSE"
elif [ "$line" == "CMD_RESUME" ]; then
killall -CONT mpg123
CURRENT_STATE="PLAYING"
else
handle_actuator "$line"
fi
done
Testing và Validation
1. Đánh giá bộ dữ liệu và Ma trận nhầm lẫn (Confusion Matrix)
Tập dữ liệu chuẩn FER-2013 gồm 35.887 ảnh (48x48 pixel) bị mất cân bằng nghiêm trọng giữa các lớp (Lớp Hạnh phúc có 7.215 mẫu, trong khi lớp Chán ghét chỉ có 436 mẫu - chênh lệch hơn 16 lần). Việc bổ sung 5.359 mẫu từ tập dữ liệu Việt Nam giúp tái cân bằng phân phối và cải thiện rõ rệt độ nhạy của mô hình.
MA TRẬN LỖI (CONFUSION MATRIX) TRÊN TẬP KIỂM THỬ TỔNG HỢP:
-----------------------------------------------------------------------------
True \ Pred Angry Disgust Fear Happy Sad Surprise Neutral [Recall]
Angry 312 12 28 11 42 8 29 70.6%
Disgust 9 82 6 2 5 1 4 75.2%
Fear 31 4 298 14 51 24 32 65.6%
Happy 8 1 10 820 15 12 18 92.8%
Sad 38 5 44 19 410 7 47 71.9%
Surprise 11 2 21 16 8 362 11 84.0%
Neutral 20 3 22 22 39 9 498 78.7%
-----------------------------------------------------------------------------
[Precision] 72.7% 75.2% 69.1% 90.7% 71.9% 85.6% 78.0% (Avg: 77.0%)
2. Benchmark hiệu năng trên phần cứng Raspberry Pi 4
+-----------------------------------------------------------------------------+
| PERFORMANCE BENCHMARK (Raspberry Pi 4 Model B - 8GB RAM, CPU 1.5GHz) |
+------------------------------------+-------------------+--------------------+
| Công đoạn xử lý | Độ trễ tiêu thụ | Tỷ lệ chiếm dụng |
+------------------------------------+-------------------+--------------------+
| Camera Capture & Pre-processing | 28.4 ms | 12% Core 0 |
| MediaPipe Face Detection | 45.2 ms | 48% Core 0, 1 |
| RexNet Emotion Inference (PyTorch)| 162.8 ms | 85% All 4 Cores |
| Decision Engine & State Trigger | 3.1 ms | < 2% Core 2 |
| Actuator (Audio + LED via GPIO) | 8.5 ms | < 3% Core 3 |
+------------------------------------+-------------------+--------------------+
| TOTAL END-TO-END PIPELINE LATENCY | 248.0 ms (~4 FPS) | RAM: 640MB / 8GB |
+------------------------------------+-------------------+--------------------+
Đổi mới và đóng góp
- Khắc phục hiện tượng thiên kiến dữ liệu chủng tộc (Ethnic Bias Mitigation):
- Các mô hình quốc tế như AffectNet hay FER-2013 huấn luyện chủ yếu trên khuôn mặt người phương Tây. Bằng việc xây dựng thủ công bộ dữ liệu chuẩn 5.359 khuôn mặt người Việt Nam với tỷ lệ trích xuất $1/5$ frame từ 50+ video thực tế, độ chính xác nhận diện trên người bản địa tăng 14.2% so với mô hình gốc.
- Kỹ thuật học sâu siêu nhẹ kết hợp SAM Optimizer:
- Triển khai thành công kiến trúc nơ-ron tích chập nhẹ (Lightweight Deep CNN) trên nền tảng vi xử lý ARM, đạt độ chính xác tương đương các mạng nơ-ron lớn (VGG-16, ResNet-50) nhưng giảm dung lượng tham số tới 78% và giảm năng lượng tiêu thụ 65%.
- Mô hình vòng lặp can thiệp cảm xúc khép kín (Closed-Loop Bio-Intervention):
- Không dừng lại ở bài toán thị giác máy tính đơn thuần (phân loại cảm xúc), hệ thống tích hợp lý thuyết âm học tâm lý và ánh sáng trị liệu tạo thành một chu trình can thiệp tự động (Capture $\rightarrow$ Detect $\rightarrow$ Decide $\rightarrow$ Regulate $\rightarrow$ Feedback), mở ra hướng tiếp cận mới trong y tế thông minh và chăm sóc sức khỏe ban ngày.
Ứng dụng thực tế và triển khai
+------------------------------------------+
| DEPLOYMENT ARCHITECTURE |
+------------------------------------------+
│
┌─────────────────────────────────┼─────────────────────────────────┐
▼ ▼ ▼
+-----------------+ +-----------------+ +-----------------+
| SMART HOME | | MENTAL CLINIC | | WORKPLACE POD |
| Tích hợp phòng | | Hỗ trợ bác sĩ | | Cabin xả stress |
| ngủ, tự bật đèn | | tâm lý theo dõi | | cho lập trình |
| ấm & nhạc êm | | phản ứng bệnh | | viên, nhân viên |
| khi stress | | nhân tự động | | trực tổng đài |
+-----------------+ +-----------------+ +-----------------+
Hướng dẫn cài đặt và cấu hình nhanh (Deployment Guide)
# 1. Cap nhat he dieu hanh va cai dat cac goi dependencies
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install -y python3-pip python3-opencv mpg123 alsa-utils libatlas-base-dev
# 2. Clone source code va cai dat thu vien Python
git clone https://github.com/uit-research/music-emotion-regulation.git
cd music-emotion-regulation
pip3 install -r requirements.txt
# 3. Kiem tra ket noi thiet bi Audio Bluetooth & Camera
arecord -l && aplay -l
ls -l /dev/video0
# 4. Khoi chay he thong o che do Daemon giam sat
python3 main.py --model_path weights/rexnet_vn_emotion.pth --interval 30 --device cpu
Hạn chế và hướng phát triển
Hạn chế kỹ thuật
- Yếu tố môi trường: Sự thay đổi đột ngột về cường độ ánh sáng (< 100 lux) và góc nghiêng khuôn mặt (> 45 độ) làm giảm độ chính xác của MediaPipe Face Detector.
- Kênh thu thập đơn chiều (Unimodal): Hệ thống chỉ dựa vào biểu cảm khuôn mặt (Facial expression), chưa tích hợp cảm biến đo tín hiệu sinh lý trực tiếp (Nhịp tim PPG, biến thiên nhịp tim HRV, điện não đồ EEG).
Lộ trình nâng cấp đề xuất
- Quý 1: Chuyển đổi mô hình Deep Learning sang định dạng TensorFlow Lite INT8 và tăng tốc phần cứng bằng Google Coral Edge TPU USB Accelerator, nâng tốc độ xử lý lên >30 FPS.
- Quý 2: Tích hợp thuật toán Học tăng cường (Reinforcement Learning) để cá nhân hóa gu âm nhạc theo từng người dùng dựa trên phản hồi mức độ phục hồi cảm xúc.
- Quý 3: Mở rộng giao thức kết nối MQTT/Zigbee, tích hợp sâu vào hệ sinh thái Home Assistant và Apple HomeKit.
Đối tượng hưởng lợi
- Sinh viên & Nghiên cứu sinh: Cung cấp tài liệu tham khảo hoàn chỉnh từ thiết kế mô hình CNN, kỹ thuật SAM, quy trình thu thập dữ liệu thực nghiệm đến tối ưu hóa nhúng trên ARM SoC.
- Lập trình viên IoT / Edge AI: Nắm bắt kiến trúc tích hợp hệ thống giữa Python xử lý thị giác máy tính và Shell script điều khiển phần cứng qua Bluetooth/GPIO.
- Doanh nghiệp & Đơn vị y tế: Giải pháp mẫu khả thi (Proof of Concept) với chi phí thấp để thương mại hóa các sản phẩm phòng trị liệu tâm lý, cabin thông minh giảm stress.
Câu hỏi thường gặp
1. Cấu hình phần cứng tối thiểu để triển khai hệ thống là gì?
Bo mạch Raspberry Pi 4 Model B (tối thiểu 4GB RAM, khuyến nghị 8GB), thẻ nhớ MicroSD 32GB Class 10 U3, Camera USB độ phân giải tối thiểu 720p, Loa hỗ trợ kết nối Bluetooth 4.2+ hoặc Jack 3.5mm, nguồn 5V/3A chuẩn Type-C.
2. Hệ thống xử lý thế nào khi người dùng đeo khẩu trang hoặc che mặt?
MediaPipe Face Detection tích hợp thuật toán nhận diện dựa trên mắt và trán. Nếu chỉ thấy một phần khuôn mặt, mô hình sẽ cố gắng nội suy đặc trưng vùng trán/mắt; nếu độ tin cậy rơi xuống dưới 60%, hệ thống giữ nguyên kịch bản âm thanh hiện tại và thử lại sau 5 giây thay vì chuyển trạng thái sai.
3. Âm nhạc có thể tự cập nhật theo sở thích cá nhân không?
Trong kiến trúc hiện tại, âm nhạc được phân loại tĩnh theo thư mục BPM/Thể loại tương ứng với 4 nhóm cảm xúc. Người dùng có thể copy thêm file MP3 tùy chọn vào các thư mục tương ứng hoặc mở rộng module kết nối Spotify Web API để lấy danh sách bài hát cá nhân hóa.
4. Chi phí chế tạo một bộ sản phẩm hoàn chỉnh là bao nhiêu?
Tổng chi phí linh kiện phần cứng (Raspberry Pi 4 8GB, Camera Xiaomi, Loa Bluetooth LG PN1, dải LED WS2812B, nguồn và vỏ tản nhiệt) dao động trong khoảng 2.300.000 – 2.800.000 VNĐ, chỉ bằng 1/10 so với các hệ thống theo dõi chuyên dụng trong y tế.
5. Dữ liệu hình ảnh khuôn mặt người dùng có bị lưu trữ gây mất an toàn thông tin không?
Hệ thống xử lý In-Memory hoàn toàn trên RAM của Raspberry Pi. Khung hình sau khi trích xuất vector đặc trưng cảm xúc sẽ lập tức bị giải phóng khỏi bộ nhớ đệm, không lưu trữ ảnh dưới bất kỳ định dạng nào trên thẻ nhớ hay truyền ra bên ngoài Internet.
Kết luận
Đề tài "Nghiên cứu hệ thống hỗ trợ điều chỉnh cảm xúc bằng âm nhạc" đã xây dựng thành công một giải pháp can thiệp tâm lý bán tự động mang tính thực tiễn cao. Bằng cách kết hợp sáng tạo giữa mô hình nhận diện khuôn mặt tối ưu hóa cho người Việt, mạng nơ-ron học sâu nhẹ và cơ chế phản hồi âm thanh - ánh sáng sinh học trên phần cứng nhúng Raspberry Pi 4, công trình chứng minh tính khả thi vượt trội của việc ứng dụng Trí tuệ nhân tạo biên (Edge AI) trong việc nâng cao sức khỏe tinh thần cộng đồng. Đây là tiền đề vững chắc cho việc thương mại hóa và tích hợp sâu vào các giải pháp Nhà thông minh (Smart Home) và Bệnh viện thông minh (Smart Healthcare) trong kỷ nguyên số.