Giới thiệu dự án

Thị giác máy tính (Computer Vision) và Trí tuệ nhân tạo (Artificial Intelligence - AI) đang tạo ra những bước chuyển dịch mang tính cách mạng trong cuộc cách mạng công nghiệp 4.0. Theo thống kê từ các tổ chức phân tích thị trường công nghệ, dữ liệu video chiếm tới hơn 80% tổng lưu lượng băng thông Internet toàn cầu, xuất phát từ hàng tỷ thiết bị thu phát như camera giám sát (CCTV), điện thoại thông minh, drone và thiết bị IoT. Tuy nhiên, việc khai thác luồng dữ liệu khổng lồ này phần lớn vẫn phụ thuộc vào sự giám sát thủ công của con người, dẫn đến tình trạng quá tải, chi phí vận hành cao và độ trễ phản ứng lớn trước các sự cố an ninh hoặc y tế khẩn cấp.

Vấn đề cốt lõi đặt ra là sự hạn chế của các phương pháp thị giác máy tính truyền thống. Các mô hình học máy kinh điển (Machine Learning - ML) như HOG (Histogram of Oriented Gradients) hay SIFT (Scale-Invariant Feature Transform) kết hợp với SVM (Support Vector Machine) đòi hỏi quá trình trích xuất đặc trưng thủ công (hand-crafted features) vô cùng phức tạp, tốn thời gian và nhạy cảm với sự biến đổi góc nhìn, ánh sáng. Bên cạnh đó, nếu sử dụng mạng nơ-ron nhân tạo truyền thống (Artificial Neural Network - ANN) với các tầng kết nối đầy đủ (Fully Connected - FC), số lượng trọng số liên kết (weights) sẽ bùng nổ theo cấp số nhân. Điển hình, một ảnh đầu vào kích thước $1000 \times 1000$ pixel nối tới 1.000 nơ-ron tầng ẩn sẽ tạo ra tới $10^{12}$ tham số, gây nghẽn phần cứng huấn luyện và dẫn tới hiện tượng quá khớp (overfitting) nghiêm trọng.

Đề tài tập trung giải quyết bài toán trên bằng cách nghiên cứu và ứng dụng mạng nơ-ron tích chập (Convolutional Neural Network - CNN) với các mục tiêu cụ thể:

  1. Nghiên cứu cơ sở lý thuyết về giải thuật lan truyền ngược (Backpropagation), mạng nơ-ron truyền thống và kiến trúc mạng nơ-ron tích chập.
  2. Xây dựng bộ dữ liệu ảnh hành động người thực tế (MyData) gồm 3.418 ảnh RGB được phân loại thành 4 nhóm hành động: Bowing (Cúi chào), Walking (Đi bộ), Waving (Vẫy tay), và Nothing (Trạng thái tĩnh/Không hành động).
  3. Thiết kế, tối ưu hóa và huấn luyện kiến trúc mạng CNN 10 lớp tùy biến (MyNet) trên nền tảng tính toán song song GPU (Graphics Processing Unit).
  4. Đánh giá kiểm chứng chéo mô hình trên tập dữ liệu chuẩn CIFAR-10 và so sánh trực tiếp hiệu năng với phương pháp HOG + SVM.
  5. Phát triển ứng dụng hoàn chỉnh có giao diện người dùng đồ họa (GUI) cho phép phân loại hành động người từ hình ảnh tĩnh, video clip và luồng camera thời gian thực (Webcam/IP Camera).

Giải pháp sử dụng CNN mang lại lợi thế vượt trội nhờ cơ chế kết nối cục bộ (Local Receptive Fields) và chia sẻ trọng số (Shared Weights). Thay vì xử lý từng pixel riêng biệt, CNN sử dụng các bộ lọc tích chập (kernels) trượt trên ma trận ảnh để tự động học các đặc trưng không gian đa cấp từ mức thấp (cạnh, góc, kết cấu) đến mức cao (bộ phận cơ thể, dáng điệu).

Dự án đặt ra kỳ vọng đạt độ chính xác phân loại trên 95% trên tập dữ liệu thực nghiệm, thời gian suy luận dưới 50ms/khung hình và đóng gói thành công công cụ kiểm thử tương tác trực quan. Phạm vi đề tài tập trung vào việc nhận dạng 4 hành vi cơ bản của đơn đối tượng trong môi trường cố định (khoảng cách 2-3 mét), trích xuất và phân loại theo từng khung hình (frame-by-frame).


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trước khi xây dựng mô hình học sâu, các giải pháp phân loại ảnh và nhận dạng hành động phổ biến được phân tích để làm rõ ưu nhược điểm:

Phương pháp Cơ chế hoạt động Ưu điểm Nhược điểm / Hạn chế
HOG + SVM Trích xuất biểu đồ hướng gradient cục bộ + Phân loại siêu phẳng SVM - Toán học rõ ràng
- Tốn ít bộ nhớ RAM khi huấn luyện trên tập nhỏ
- Đặc trưng thủ công không tối ưu
- Nhạy cảm với che khuất và biến dạng
- Độ chính xác hạn chế trên ảnh phức tạp
ANN truyền thống (MLP) Tầng kết nối đầy đủ (Fully Connected) + Lan truyền ngược (BP) - Khả năng xấp xỉ hàm phi tuyến tốt cho dữ liệu dạng bảng - Bùng nổ tham số ($>10^9$ weights)
- Mất toàn bộ cấu trúc không gian 2D của ảnh
- Dễ bị overfitting
Deep CNN (Giải pháp đề xuất) Tích chập (Conv) + Biến đổi ReLU + Max Pooling + Tầng FC - Tự động học đặc trưng phân cấp
- Giảm mạnh số lượng tham số nhờ shared weights
- Độ chính xác vượt trội
- Đòi hỏi năng lực tính toán phần cứng (GPU)
- Cần quy trình chuẩn hóa dữ liệu chặt chẽ

Yêu cầu hệ thống được xác định theo mô hình MoSCoW:

  • Must have (Bắt buộc): Pipeline xử lý ảnh đầu vào kích thước $227 \times 227 \times 3$, kiến trúc mạng 10 lớp, hàm kích hoạt ReLU, bộ tối ưu SGDM, giao diện GUI tải file model .mat.
  • Should have (Nên có): Cơ chế kết nối trực tiếp với Webcam và IP Camera qua giao thức mạng, hiển thị ma trận nhầm lẫn (Confusion Matrix).
  • Could have (Có thể mở rộng): Mở rộng số lượng lớp hành động phức tạp (ngã, chạy, nhảy), nhận dạng đồng thời nhiều người trong khung hình.
  • Won't have (Chưa thực hiện): Nhận dạng hành động dựa trên mô hình không gian - thời gian 3D-CNN hoặc mô hình chuỗi RNN/LSTM trong giai đoạn này.

Thiết kế hệ thống

Kiến trúc mạng CNN 10 lớp (MyNet) được xây dựng tối ưu cho bài toán phân loại hành động, gồm 10 tầng chức năng liên kết tuần tự:

graph LR
    Input["Input Image<br/>(227x227x3)"] --> Conv1["Lớp 2: Conv1<br/>32 filters 11x11, Stride 4"]
    Conv1 --> ReLU1["Lớp 3: ReLU1<br/>Activation"]
    ReLU1 --> Pool1["Lớp 4: MaxPool1<br/>Pool 3x3, Stride 2"]
    Pool1 --> Conv2["Lớp 5: Conv2<br/>64 filters 5x5, Stride 1, Pad 2"]
    Conv2 --> ReLU2["Lớp 6: ReLU2<br/>Activation"]
    ReLU2 --> Pool2["Lớp 7: MaxPool2<br/>Pool 3x3, Stride 2"]
    Pool2 --> FC1["Lớp 8: Fully Connected<br/>Output Size: 4"]
    FC1 --> Softmax["Lớp 9: Softmax<br/>Probability Distribution"]
    Softmax --> Output["Lớp 10: Classification<br/>Bowing, Walking, Waving, Nothing"]

Quy tắc biến đổi kích thước không gian qua tầng tích chập và pooling tuân theo công thức toán học:

$$W_2 = \frac{W_1 - F + 2P}{S} + 1, \quad H_2 = \frac{H_1 - F + 2P}{S} + 1$$

Trong đó: $W_1, H_1$ là kích thước ảnh đầu vào; $F$ là kích thước bộ lọc (filter size); $P$ là phần bù viền (padding); $S$ là bước trượt (stride).

  • Lớp 1 (Image Input): Nhận ma trận ảnh màu kích thước $227 \times 227 \times 3$.
  • Lớp 2 (Conv1): 32 bộ lọc kích thước $11 \times 11 \times 3$, Stride $S = 4$, Padding $P = 0$. Kích thước feature map đầu ra: $\frac{227 - 11 + 0}{4} + 1 = 55 \times 55 \times 32$. Số lượng tham số cần học: $(11 \times 11 \times 3 + 1) \times 32 = 11.648$ tham số.
  • Lớp 3 (ReLU1): Áp dụng hàm kích hoạt phi tuyến tính $f(x) = \max(0, x)$ nhằm duy trì tính thưa (sparsity) và đẩy nhanh tốc độ hội tụ của gradient.
  • Lớp 4 (Pool1): Max Pooling kích thước $3 \times 3$, Stride $S = 2$, Padding $P = 0$. Kích thước đầu ra: $\frac{55 - 3}{2} + 1 = 27 \times 27 \times 32$.
  • Lớp 5 (Conv2): 64 bộ lọc kích thước $5 \times 5 \times 32$, Stride $S = 1$, Padding $P = 2$. Kích thước đầu ra: $\frac{27 - 5 + 2 \times 2}{1} + 1 = 27 \times 27 \times 64$. Số lượng tham số: $(5 \times 5 \times 32 + 1) \times 64 = 51.264$ tham số.
  • Lớp 6 (ReLU2): Hàm kích hoạt phi tuyến mức hai.
  • Lớp 7 (Pool2): Max Pooling kích thước $3 \times 3$, Stride $S = 2$. Kích thước đầu ra: $\frac{27 - 3}{2} + 1 = 13 \times 13 \times 64$.
  • Lớp 8 (FC1): Tầng kết nối đầy đủ chuyển toàn bộ đặc trưng thành vector 4 chiều ứng với 4 lớp đầu ra.
  • Lớp 9 (Softmax): Chuẩn hóa giá trị ngõ ra thành phân phối xác suất: $P(y = j \mid x) = \frac{e^{z_j}}{\sum_{k=1}^K e^{z_k}}$.
  • Lớp 10 (Classification Output): Xác định nhãn phân loại có xác suất cực đại bằng hàm mất mát Cross-Entropy.

Methodology

Phương pháp nghiên cứu áp dụng mô hình thực nghiệm lặp (Iterative Experimental Research) được chia làm 4 giai đoạn chính:

[Thu thập & Tiền xử lý dữ liệu] ➔ [Xây dựng kiến trúc mạng] ➔ [Huấn luyện & Tối ưu GPU] ➔ [Kiểm thử & Đóng gói GUI]
  • Môi trường phần cứng: GPU rời NVIDIA GeForce GTX 750 Ti (2GB VRAM, kiến trúc Maxwell), CPU Intel Core i5, 8GB DDR3 RAM.
  • Môi trường phần mềm: MATLAB R2017b / R2018a kết hợp Neural Network Toolbox, Image Processing Toolbox và Parallel Computing Toolbox.
  • Quản trị rủi ro (Risk Mitigation):
    • Hiện tượng biến mất gradient (Vanishing Gradient) được giải quyết bằng hàm kích hoạt ReLU thay vì Sigmoid/Tanh.
    • Quá tải bộ nhớ GPU được kiểm soát nhờ cấu hình kích thước mini-batch phù hợp và downsampling qua 2 tầng pooling.

Implementation và kết quả

Development process

Quy trình huấn luyện và đánh giá mô hình được lập trình trực tiếp trên môi trường MATLAB với các bước chuẩn hóa:

% Bước 1: Tải và tự động gán nhãn dữ liệu từ cấu trúc thư mục
categories = {'Bowing', 'Walking', 'Waving', 'Nothing'};
imds = imageDatastore(fullfile('myimage', 'imagetrain', categories), ...
    'LabelSource', 'foldernames');

% Bước 2: Phân chia tập dữ liệu: 70% Training và 30% Testing
[trainingSet, testSet] = splitEachLabel(imds, 0.7, 'randomize');

% Bước 3: Định nghĩa kiến trúc mạng CNN 10 lớp
layers = [
    imageInputLayer([227 227 3], 'Name', 'input')
    
    convolution2dLayer(11, 32, 'Stride', 4, 'Padding', 0, 'Name', 'conv1')
    reluLayer('Name', 'relu1')
    maxPooling2dLayer(3, 'Stride', 2, 'Padding', 0, 'Name', 'pool1')
    
    convolution2dLayer(5, 64, 'Stride', 1, 'Padding', 2, 'Name', 'conv2')
    reluLayer('Name', 'relu2')
    maxPooling2dLayer(3, 'Stride', 2, 'Padding', 0, 'Name', 'pool2')
    
    fullyConnectedLayer(4, 'Name', 'fc1')
    softmaxLayer('Name', 'softmax')
    classificationLayer('Name', 'output')
];

% Bước 4: Cấu hình siêu tham số huấn luyện bằng SGDM
options = trainingOptions('sgdm', ...
    'MaxEpochs', 20, ...
    'InitialLearnRate', 0.0001, ...
    'Momentum', 0.9, ...
    'ExecutionEnvironment', 'gpu', ...
    'Plots', 'training-progress');

% Bước 5: Thực thi huấn luyện mạng nơ-ron tích chập
convnet = trainNetwork(trainingSet, layers, options);

% Bước 6: Dự đoán nhãn trên tập kiểm tra và tính toán độ chính xác
YTest = classify(convnet, testSet);
TTest = testSet.Labels;
accuracy = sum(YTest == TTest) / numel(TTest);
fprintf('Độ chính xác trên tập kiểm tra: %.2f%%\n', accuracy * 100);

Testing và validation

Bộ dữ liệu thực nghiệm MyData bao gồm 3.418 ảnh được phân bố cụ thể:

STT Tên lớp hành động Số lượng ảnh mẫu Tỷ lệ trong tập dữ liệu
1 Bowing (Cúi chào) 660 19.31%
2 Walking (Đi bộ) 1.146 33.53%
3 Waving (Vẫy tay) 1.400 40.96%
4 Nothing (Tĩnh/Không hành động) 212 6.20%
Tổng 4 Lớp hành động 3.418 100%

Tập dữ liệu được chia theo tỷ lệ 70% dành cho huấn luyện (2.393 ảnh) và 30% dành cho kiểm định (1.025 ảnh). Quá trình huấn luyện diễn ra qua 20 epochs với tổng thời gian thực thi xấp xỉ 4 giờ trên GPU NVIDIA GeForce GTX 750 Ti.

Kết quả đạt được

Đồ án ghi nhận các kết quả thực nghiệm nổi bật:

  1. Hiệu năng trên tập dữ liệu MyData: Sau 20 epoch, mô hình CNN 10 lớp đạt độ chính xác nhận dạng lên tới 99,79% trên tập dữ liệu kiểm tra độc lập ($TestSet$). Hàm mất mát giảm dần đều và hội tụ ổn định từ epoch thứ 12 trở đi, không xuất hiện hiện tượng dao động hay phân kỳ.
  2. Kiểm chứng trên tập chuẩn CIFAR-10 (60.000 ảnh 32x32, 10 lớp): Quá trình huấn luyện kéo dài 5 giờ, mô hình đạt độ chính xác 66,82%.
  3. So sánh với phương pháp trích đặc trưng thủ công (HOG + Multi-class SVM): Trên cùng tập dữ liệu CIFAR-10 với tham số kích thước ô $CellSize = [4, 4]$ (trích xuất vector đặc trưng không gian qua hàm extractHOGFeatures), giải pháp HOG + SVM chỉ đạt độ chính xác 42,47%.
  4. Phát triển giao diện kiểm thử (GUI): Đóng gói thành công mô hình huấn luyện vào tệp MyData_MyNet.mat. Giao diện hỗ trợ 3 module kiểm thử:
    • Module nhận dạng hành động người đơn lẻ qua tệp ảnh tĩnh (Get Image to Test).
    • Module kiểm thử trực tiếp qua luồng video từ Webcam và camera IP qua mạng LAN.
    • Module mở rộng nhận dạng ký tự chữ số viết tay (NumberRecognition.mat).

Đổi mới và đóng góp

Đồ án mang lại nhiều giá trị khoa học và ứng dụng thực tiễn:

  • Đổi mới trong tự động hóa trích xuất đặc trưng: Loại bỏ hoàn toàn sự can thiệp thủ công của kỹ sư vào khâu trích xuất đặc trưng (Feature Engineering). Hệ thống tự học trọng số của 32 filter ở tầng Conv1 và 64 filter ở tầng Conv2, tạo ra cơ chế biểu diễn tri thức thị giác thích nghi cao.
  • Tối ưu hóa tài nguyên tính toán: Kiến trúc 10 lớp được thiết kế tinh gọn, cân bằng tối ưu giữa độ sâu mạng và năng lực xử lý của GPU phổ thông (GTX 750 Ti 2GB), cho phép triển khai trên các hệ thống biên (Edge Devices) có cấu hình vừa phải.
  • Minh chứng định lượng vượt trội: Trên tập dữ liệu kiểm định CIFAR-10, mô hình CNN 10 lớp tạo ra bước nhảy vọt về hiệu năng khi vượt +24,35% độ chính xác so với phương pháp cổ điển HOG + SVM ($66,82%$ so với $42,47%$).
Kiến trúc / Phương pháp Cơ chế trích đặc trưng Số lớp xử lý Độ chính xác (CIFAR-10)
HOG + Multi-Class SVM Biểu đồ hướng Gradient thủ công - 42.47%
MyNet (CNN đề xuất) Tích chập tự học sâu (Deep Conv) 10 lớp 66.82%
AlexNet (Benchmark tham chiếu) Deep CNN (5 Conv, 3 FC) 8 lớp ~80.00%
VGGNet (Benchmark tham chiếu) Deep CNN (Small $3 \times 3$ filters) 16/19 lớp ~89.00%

Ứng dụng thực tế và triển khai

Giải pháp phân loại hành động sử dụng mạng CNN 10 lớp sở hữu tiềm năng ứng dụng lớn trong các lĩnh vực đời sống:

  • Hệ thống giám sát an ninh thông minh (Smart Surveillance): Tự động phát hiện các hành vi bất thường, hỗ trợ nhân viên an ninh tại các tòa nhà, ngân hàng, sân bay, giảm thiểu 70% thời gian quan sát màn hình camera liên tục.
  • Giám sát và chăm sóc sức khỏe y tế (Healthcare Monitoring): Ứng dụng tại viện dưỡng lão hoặc bệnh viện để phát hiện hành vi mất cân bằng, ngã hoặc vẫy tay cầu cứu của bệnh nhân mà không xâm phạm quyền riêng tư như các thiết bị đeo cảm biến.
  • Tương tác người - máy (Human-Computer Interaction - HCI): Điều khiển thiết bị gia dụng thông minh qua cử chỉ vẫy tay hoặc tư thế người mà không cần chạm trực tiếp.
[Camera / RTSP Stream] ➔ [Frame Resizing 227x227] ➔ [CNN Inference (GPU)] ➔ [Phân loại hành động] ➔ [Cảnh báo / Điều khiển]

Phương án triển khai hệ thống có thể chuyển đổi mô hình từ định dạng .mat sang mã nguồn C/C++ độc lập thông qua MATLAB Coder, hoặc xuất mô hình sang chuẩn ONNX để chạy trên các vi xử lý nhúng như NVIDIA Jetson Nano / Raspberry Pi 4 kết hợp GPU tăng tốc.


Hạn chế và hướng phát triển

Mặc dù đạt được độ chính xác rất cao trên tập kiểm nghiệm, đề tài vẫn tồn tại một số điểm hạn chế kỹ thuật:

  1. Quy mô tập dữ liệu còn nhỏ: Tập dữ liệu 3.418 ảnh được ghi hình trong điều kiện phòng cố định, phông nền đơn giản, chưa đa dạng hóa góc máy và điều kiện ánh sáng môi trường phức tạp ngoài trời.
  2. Xử lý đơn đối tượng: Thuật toán hiện xử lý trích đặc trưng trên toàn bộ khung hình, chưa tích hợp thuật toán định vị vùng (Bounding Box Proposal) để nhận dạng cùng lúc nhiều người độc lập trong một khung cảnh.
  3. Mô hình chuỗi thời gian: Việc phân loại dựa trên từng frame tĩnh chưa khai thác triệt để mối tương quan thời gian liên tục giữa các khung hình liên tiếp.

Hướng phát triển tiếp theo:

  • Tích hợp mạng định vị đối tượng tiên tiến như YOLOv8 hoặc Faster R-CNN ở tầng tiền xử lý để cắt vùng chứa người trước khi đưa vào mạng phân loại.
  • Kết hợp mô hình không gian - thời gian bằng kiến trúc mạng 3D-CNN hoặc mạng tích chập kết hợp mạng hồi quy LSTM/GRU (CNN-LSTM) để nhận dạng các hành động có tính liên tục cao như chạy, nhảy, vấp ngã.
  • Ứng dụng kỹ thuật Transfer Learning từ các mạng sâu hiện đại (ResNet-50, MobileNetV3) nhằm nâng cao độ chính xác tổng quát hóa trên dữ liệu lớn.

Đối tượng hưởng lợi

  • Sinh viên & Học viên ngành CNTT/Điện tử: Nắm bắt quy trình thực hành từ lý thuyết mạng nơ-ron, toán học tích chập đến việc huấn luyện thực tế mô hình Deep Learning bằng MATLAB.
  • Kỹ sư thị giác máy tính & Lập trình viên: Tham khảo cấu trúc mạng CNN 10 lớp tinh gọn, kỹ thuật chia sẻ tham số và cách thức kết nối luồng camera ngoại vi vào mô hình suy luận.
  • Doanh nghiệp tích hợp hệ thống an ninh: Tiếp cận phương án nhận dạng cử chỉ/hành vi chi phí thấp, tận dụng phần cứng GPU hiện có mà không cần đầu tư máy chủ chuyên dụng đắt đỏ.
  • Nhà nghiên cứu học máy: Có thêm tư liệu thực nghiệm so sánh định lượng giữa phương pháp học máy trích đặc trưng thủ công (HOG+SVM) và học sâu tự động (CNN).

Câu hỏi thường gặp

1. Yêu cầu phần cứng tối thiểu để huấn luyện và triển khai mô hình là gì?

Để huấn luyện mô hình 10 lớp trong thời gian tối ưu, khuyến nghị sử dụng GPU rời hỗ trợ CUDA (từ NVIDIA GeForce GTX 750 Ti trở lên, VRAM tối thiểu 2GB), CPU Intel Core i3 thế hệ 4 trở lên và 8GB RAM. Khi triển khai suy luận (Inference), mô hình có thể chạy mượt mà trên CPU thông thường với tốc độ đạt từ 25-30 FPS.

2. Tại sao mô hình đạt 99,79% trên tập MyData nhưng chỉ đạt 66,82% trên tập CIFAR-10?

Tập dữ liệu MyData có kích thước ảnh $227 \times 227$ pixel với 4 lớp hành động được thu thập trong điều kiện góc quay và phông nền đồng nhất. Trong khi đó, CIFAR-10 là tập dữ liệu tổng quát gồm 60.000 ảnh nhỏ ($32 \times 32$ pixel) với 10 lớp vật thể đa dạng, độ phân giải thấp và độ nhiễu cao. Kết quả này phản ánh tính chất phụ thuộc của mạng CNN vào độ phân giải không gian và tính phân cấp của tập dữ liệu huấn luyện.

3. Làm thế nào để tích hợp thêm các hành động mới vào hệ thống?

Để bổ sung hành động mới (ví dụ: Running, Falling), người phát triển chỉ cần tạo thêm thư mục chứa ảnh mẫu tương ứng trong cấu trúc của ImageDatastore, chỉnh sửa tham số OutputSize của tầng fullyConnectedLayer thành số lớp mới tương ứng và tiến hành huấn luyện lại mạng (trainNetwork).

4. Hàm kích hoạt ReLU có ưu điểm gì vượt trội so với Sigmoid trong mạng CNN?

Hàm ReLU ($f(x) = \max(0, x)$) có đạo hàm bằng 1 khi $x > 0$, giúp triệt tiêu hoàn toàn hiện tượng suy giảm gradient (Vanishing Gradient) trong quá trình lan truyền ngược, đồng thời tính toán nhanh hơn rất nhiều do không phải thực hiện các phép tính mũ phức tạp như Sigmoid hay Tanh.

5. Hệ thống xử lý video theo thời gian thực như thế nào?

Giao diện GUI kết nối với camera qua giao thức thu thập hình ảnh của MATLAB. Luồng video được tách thành các frame tuần tự, mỗi frame được chuẩn hóa kích thước về $227 \times 227 \times 3$, chuyển qua hàm classify() của mạng convnet để dự đoán nhãn hành động và hiển thị kết quả trực tiếp lên khung Textbox trong thời gian thực.


Kết luận

Đồ án đã nghiên cứu và hiện thực hóa thành công giải pháp nhận dạng hành động người sử dụng mạng nơ-ron tích chập (CNN) 10 lớp trên nền tảng MATLAB và tăng tốc GPU. Bằng việc làm chủ các kỹ thuật cốt lõi như phép nhân chập ma trận, biến đổi phi tuyến ReLU, giảm chiều dữ liệu Max Pooling và tối ưu hóa lan truyền ngược SGDM, mô hình đã đạt độ chính xác ấn tượng 99,79% trên tập dữ liệu thực nghiệm và chứng minh tính ưu việt rõ rệt khi so sánh với giải pháp truyền thống HOG + SVM.

Hệ thống được đóng gói hoàn chỉnh với giao diện GUI thân thiện, có khả năng xử lý linh hoạt từ ảnh tĩnh đến luồng video thời gian thực từ Webcam và Camera IP. Đây là nền tảng vững chắc để mở rộng phát triển các hệ thống giám sát an ninh thông minh, chẩn đoán y tế tự động và tương tác người - máy hiện đại trong tương lai.