Bối cảnh và vấn đề nghiên cứu
Sự phát triển của trí tuệ nhân tạo (AI) và học sâu (Deep Learning) đã mở rộng phạm vi ứng dụng của thị giác máy tính sang nhiều lĩnh vực thực tiễn như nhận diện khuôn mặt, xe tự lái, phân loại nội dung đa phương tiện và tự động hóa giám sát. Dữ liệu video hiện nay được tạo ra liên tục từ nhiều thiết bị như máy quay, điện thoại thông minh, máy tính xách tay và hệ thống camera quan sát. Tuy nhiên, việc khai thác nguồn dữ liệu lớn này đòi hỏi các giải pháp tự động nhằm thay thế hoặc hỗ trợ con người trong công tác giám sát an ninh (phát hiện hành vi đáng ngờ) và y tế (phát hiện sớm các dấu hiệu bất thường như bệnh nhân té ngã hoặc đột quỵ).
Để giải quyết nhu cầu trên, đề tài tập trung vào việc nghiên cứu và ứng dụng mạng nơ-ron tích chập (Convolutional Neural Network - CNN) nhằm phân tích hình ảnh và xây dựng bộ phân loại có khả năng nhận biết hành động của con người từ các khung hình tĩnh và video.
Mục tiêu cụ thể của đề tài là xây dựng một thuật toán học sâu dựa trên kiến trúc CNN có khả năng phát hiện đúng hành động của con người trong các hình ảnh mới và dự đoán hành động trong một đoạn video thực tế. Nhiệm vụ nghiên cứu được văn bản xác định qua 5 nội dung chính:
- Tìm hiểu một số mô hình và ứng dụng của học sâu (Deep Learning) trong xử lý hình ảnh.
- Tìm hiểu các phương pháp xác định điểm đặc trưng trong ảnh.
- Trích xuất các điểm đặc trưng và biểu diễn đặc trưng đó trong mạng nơ-ron tích chập.
- Tập hợp các điểm đặc trưng từ nhiều ảnh nhằm dự đoán tính chất và đặc trưng của ảnh.
- Thực hiện huấn luyện và mô phỏng bằng phần mềm MATLAB để dự đoán hành động của đối tượng.
Phạm vi và giới hạn nghiên cứu được tác giả xác định rõ trong văn bản:
- Dữ liệu nghiên cứu thực nghiệm được giới hạn trong tập dữ liệu tự thu thập (MyData), bao gồm 4 trạng thái hành động cơ bản: cúi người (Bowing), đi bộ (Walking), vẫy tay (Waving) và không thực hiện hành động/trạng thái tĩnh (Nothing).
- Không gian thu thập dữ liệu là phòng nhỏ với một camera cố định, khoảng cách ghi hình từ 2 đến 3 mét; nghiên cứu bỏ qua ảnh hưởng của điều kiện chiếu sáng phức tạp và phông nền (background) phức tạp.
- Về mặt xử lý thuật toán, mô hình trích xuất đặc trưng trên từng khung hình (frame) độc lập của video và chưa hỗ trợ dự đoán đồng thời hành động của nhiều người cùng lúc trên một khung hình.
Cơ sở lý thuyết và phương pháp
Khóa luận xây dựng hệ thống phân loại dựa trên nền tảng lý thuyết mạng nơ-ron nhân tạo và kỹ thuật học sâu:
- Mạng nơ-ron nhân tạo (ANN): Văn bản hệ thống hóa mô hình toán học của nơ-ron nhân tạo, mô phỏng tế bào thần kinh sinh học gồm các thành phần: tín hiệu đầu vào vector $N$ chiều, trọng số liên kết ($w_{ij}$), bộ tổng, ngưỡng lệch (bias) và hàm truyền (activation function). Khóa luận liệt kê các hàm kích hoạt tiêu biểu gồm: hàm nấc, hàm dấu, hàm tuyến tính, hàm dốc bão hòa, hàm tuyến tính bão hòa, hàm sigmoid đơn cực và hàm sigmoid lưỡng cực. Đồng thời, văn bản trình bày chi tiết giải thuật huấn luyện lan truyền ngược (Backpropagation) kết hợp suy giảm độ dốc (Gradient Descent) qua 7 bước tính toán để cập nhật ma trận trọng số.
- Mạng nơ-ron tích chập (CNN): Tác giả phân tích hạn chế của mạng kết nối đầy đủ (Fully Connected) truyền thống khi xử lý ảnh kích thước lớn (ví dụ: ảnh $1000 \times 1000$ với 1.000 nơ-ron ẩn đòi hỏi tới $10^{12}$ trọng số cần ước lượng). CNN khắc phục nhược điểm này thông qua cơ chế kết nối cục bộ (local receptive fields) và chia sẻ trọng số (shared weights). Kiến trúc CNN tổng quát gồm các lớp:
- Lớp tích chập (Convolutional Layer): Thực hiện phép trượt bộ lọc (kernel/filter) kích thước $F \times F$ trên ảnh đầu vào $W_1 \times H_1 \times D_1$ với bước nhảy $S$ và đệm viền $P$ để tạo ra bản đồ đặc trưng (feature map) kích thước $W_2 \times H_2 \times D_2$.
- Lớp gộp (Pooling Layer): Thực hiện giảm chiều không gian (downsampling/subsampling) bằng toán tử Max-Pooling, giúp giảm tham số và duy trì đặc trưng bất biến.
- Lớp phi tuyến ReLU (Rectified Linear Unit): Hàm kích hoạt $f(x) = \max(0, x)$ giúp đơn giản hóa tính toán, tạo tính thưa (sparsity) cho mạng và tăng tốc độ hội tụ.
- Lớp kết nối đầy đủ (Fully Connected Layer) và hàm Softmax: Đặt ở cuối mạng để tổng hợp đặc trưng và tính toán phân phối xác suất cho các lớp phân loại đầu ra.
Phương pháp nghiên cứu bao gồm:
- Phương pháp phân tích và tổng hợp tài liệu lý thuyết trong nước và quốc tế về mạng nơ-ron và thị giác máy tính.
- Phương pháp thực nghiệm: Thiết kế kiến trúc mạng CNN, chuẩn bị dữ liệu, cấu hình tham số học và lập trình mô phỏng toàn bộ quy trình trên phần mềm MATLAB.
- Phương pháp đối sánh: Thực nghiệm mô hình trên tập dữ liệu chuẩn CIFAR-10 và so sánh hiệu năng phân loại giữa mô hình CNN tự đề xuất với phương pháp học máy truyền thống sử dụng đặc trưng HOG (Histogram of Oriented Gradients) kết hợp phân loại SVM (Support Vector Machine).
Nguồn dữ liệu sử dụng:
- Tập dữ liệu MyData do tác giả tự xây dựng từ video quay thực tế, gồm 3.418 ảnh màu kích thước hiệu chỉnh $227 \times 227$.
- Tập dữ liệu chuẩn CIFAR-10 gồm 60.000 ảnh màu kích thước $32 \times 32$ thuộc 10 lớp đối tượng khác nhau.
Thiết kế và triển khai
Hệ thống nhận dạng hành động người được thiết kế và thực thi hoàn chỉnh trong môi trường phần mềm MATLAB, sử dụng bộ xử lý đồ họa để tăng tốc tính toán.
Kiến trúc mạng CNN 10 lớp
Tác giả đề xuất mô hình mạng gồm 10 lớp tuần tự với các thông số kỹ thuật được cấu hình như sau:
| Thứ tự lớp |
Tên lớp |
Loại tầng |
Kích thước bộ lọc / Tham số |
Kích thước đầu ra |
| Lớp 1 |
imageinput |
Image Input |
Ảnh màu RGB |
$227 \times 227 \times 3$ |
| Lớp 2 |
conv1 |
Convolution |
Filter: $11 \times 11$, NumFilters: 32, Stride: [4, 4], Padding: [0, 0] |
$55 \times 55 \times 32$ |
| Lớp 3 |
relu1 |
ReLU |
Hàm kích hoạt biến đổi tuyến tính |
$55 \times 55 \times 32$ |
| Lớp 4 |
poo1 |
Max Pooling |
PoolSize: $3 \times 3$, Stride: [2, 2], Padding: [0, 0] |
$27 \times 27 \times 32$ |
| Lớp 5 |
conv2 |
Convolution |
Filter: $5 \times 5$, NumFilters: 64, Stride: [1, 1], Padding: [2, 2] |
$27 \times 27 \times 64$ |
| Lớp 6 |
relu2 |
ReLU |
Hàm kích hoạt biến đổi tuyến tính |
$27 \times 27 \times 64$ |
| Lớp 7 |
poo2 |
Max Pooling |
PoolSize: $3 \times 3$, Stride: [2, 2], Padding: [0, 0] |
$13 \times 13 \times 64$ |
| Lớp 8 |
fc1 |
Fully Connected |
OutputSize: 4 (nối đẩy đủ các nơ-ron) |
$1 \times 1 \times 4$ |
| Lớp 9 |
softmax |
Softmax |
Chuẩn hóa xác suất phân loại |
$1 \times 1 \times 4$ |
| Lớp 10 |
classoutput |
Classification Output |
4 nhãn: Walking, Bowing, Waving, Nothing |
4 lớp |
Môi trường phần cứng và công cụ phát triển
- Phần cứng: Huấn luyện thực hiện trên máy tính trang bị card đồ họa rời NVIDIA GeForce GTX 750 Ti nhằm tận dụng khả năng tính toán song song của GPU.
- Môi trường phần mềm: Sử dụng nền tảng MATLAB và công cụ Deep Learning Toolbox với các hàm chuyên dụng:
imageDatastore, trainingOptions, trainNetwork, classify.
Quy trình huấn luyện và kiểm thử
Quy trình huấn luyện mạng được thiết lập qua 6 bước:
% Bước 1: Khai báo nhãn và nạp dữ liệu bằng ImageDatastore
categories = {'Bowing','Walking','Waving','Nothing'};
imds = imageDatastore(fullfile('myimage','imagetrain', categories), 'LabelSource', 'foldernames');
% Bước 2: Phân chia tập dữ liệu huấn luyện (70%) và kiểm tra (30%)
[trainingSet, testSet] = splitEachLabel(imds, 0.7, 'randomize');
% Bước 3: Định nghĩa cấu trúc mạng CNN 10 lớp (biến layers)
% Bước 4: Thiết lập tùy chọn huấn luyện với thuật toán SGDM
options = trainingOptions('sgdm', 'MaxEpochs', 20, 'InitialLearnRate', 0.0001);
% Bước 5: Thực hiện huấn luyện mạng
convnet = trainNetwork(trainingSet, layers, options);
% Bước 6: Đánh giá độ chính xác trên tập kiểm tra
YTest = classify(convnet, testSet);
TTest = testSet.Labels;
accuracy = sum(YTest == TTest) / numel(TTest);
Xây dựng giao diện ứng dụng (GUI)
Tác giả thiết kế giao diện đồ họa người dùng trong MATLAB gồm màn hình chính và màn hình kiểm thử (Test) với các khối chức năng:
- Nút Get Mat File: Cho phép nạp các mô hình đã được huấn luyện sẵn và đóng gói dạng file
.mat vào bộ nhớ. Các file mô hình được tạo sẵn gồm: MyData_MyNet.mat (nhận dạng hành động người), một file nhận dạng ký tự số viết tay và một file nhận dạng hành động cùng môi trường xung quanh.
- Nút Get Image to Test: Cho phép người dùng tải một hình ảnh bất kỳ từ máy tính để mạng tự động gán nhãn dự đoán.
- Khối kiểm thử thời gian thực: Tích hợp lựa chọn nguồn dữ liệu đầu vào từ webcam máy tính hoặc camera giao thức IP (IP Camera) kết nối qua mạng cục bộ.
- Ô hiển thị kết quả: Hiển thị nhãn hành động phân loại được dưới dạng văn bản (Textbox).
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương này trình bày bối cảnh ra đời và ứng dụng của trí tuệ nhân tạo, sự phát triển của học máy và học sâu thông qua các dấu mốc thực tiễn như dự án Google Brain (2011), bộ phận nghiên cứu AI của Facebook và các trợ lý ảo Siri, Google Now. Tác giả chỉ ra tính cấp thiết của việc tự động hóa trích xuất thông tin từ nguồn dữ liệu video phục vụ giám sát an ninh và hỗ trợ chăm sóc sức khỏe. Từ đó, chương xác định mục đích nghiên cứu, 5 nhiệm vụ cụ thể, phạm vi và giới hạn của đề tài, các phương pháp nghiên cứu được áp dụng cùng cấu trúc báo cáo qua 4 chương.
Chương 2: Cơ sở lý thuyết
Chương 2 cung cấp toàn bộ nền tảng toán học và kỹ thuật tính toán của các mô hình mạng nơ-ron:
- Nơ-ron nhân tạo: Trình bày cấu trúc toán học của nơ-ron nhân tạo phỏng theo nơ-ron sinh học, phân loại các hàm kích hoạt (tuyến tính, toàn phương, dạng cầu, nấc, dấu, dốc bão hòa, sigmoid) và cấu trúc mạng (truyền thẳng một lớp/nhiều lớp, hồi quy một lớp/nhiều lớp).
- Các phương thức học: Trình bày ba phương pháp học có giám sát (supervised learning), học củng cố (reinforcement learning/reward-penalty) và học không giám sát (unsupervised learning). Trình bày thuật toán lan truyền ngược trên mạng MLP qua 7 bước chi tiết.
- Mạng nơ-ron tích chập (CNN): Trình bày các thành phần của lớp tích chập gồm kernel, bước trượt stride, đệm viền padding, công thức xác định kích thước đầu ra $W_2, H_2$, bộ lọc Sobel tách biên, tính chất chia sẻ trọng số giúp tối ưu số lượng tham số so với ANN truyền thống. Trình bày chi tiết cơ chế lớp Max-Pooling và ưu điểm của hàm truyền ReLU.
Chương 3: Xây dựng bộ phân loại hành động người sử dụng mạng Nơ-ron tích chập
Chương này mô tả chi tiết quá trình thực nghiệm:
- So sánh phương pháp phân loại giữa Machine Learning truyền thống (trích xuất đặc trưng thủ công như HOG, SIFT) và Deep Learning (tự động học đặc trưng từ dữ liệu thô). Điểm qua các kiến trúc tiêu biểu (AlexNet, VGGNet, GoogLeNet, ResNet) và các thư viện mã nguồn mở (Caffe, Torch, TensorFlow, Theano).
- Thiết lập dữ liệu MyData: Thu thập và gán nhãn 3.418 ảnh thuộc 4 lớp (Bowing, Walking, Waving, Nothing).
- Thiết lập mô hình phần cứng GPU GTX 750 Ti và cấu trúc chi tiết của mạng CNN 10 lớp.
- Thực hiện huấn luyện trên tập MyData (tỷ lệ 70% huấn luyện, 30% kiểm tra) qua 20 epoch với thuật toán SGDM.
- Thực nghiệm đối chứng trên tập dữ liệu chuẩn CIFAR-10 với 20 epoch.
- Thực nghiệm mô hình phân loại truyền thống HOG kết hợp SVM trên CIFAR-10 với kích thước tế bào CellSize [4, 4].
- Thiết kế và kiểm thử giao diện chương trình MATLAB với các nguồn dữ liệu ảnh tĩnh, webcam và IP camera.
Chương 4: Kết luận và hướng phát triển
Chương 4 tổng hợp các kết quả đã đạt được trong quá trình nghiên cứu, chỉ rõ những hạn chế thực tế về tập dữ liệu, năng lực tính toán và phạm vi xử lý của thuật toán; đồng thời đề xuất các định hướng nghiên cứu tiếp theo để hoàn thiện đề tài.
Kết quả và đóng góp
Số liệu kết quả thực nghiệm
Văn bản cung cấp các số liệu thực nghiệm cụ thể thu được từ quá trình huấn luyện và kiểm thử mô hình trên phần mềm MATLAB:
-
Thống kê tập dữ liệu huấn luyện MyData:
- Tổng số lượng ảnh: 3.418 ảnh màu ($227 \times 227$).
- Phân bố theo lớp:
- Lớp Bowing (Cúi người): 660 ảnh.
- Lớp Walking (Đi bộ): 1.146 ảnh.
- Lớp Waving (Vẫy tay): 1.400 ảnh.
- Lớp Nothing (Không hành động): 212 ảnh.
-
Kết quả phân loại của mô hình CNN 10 lớp và các phương pháp đối chứng:
| Mô hình / Phương pháp |
Tập dữ liệu thử nghiệm |
Số chu kỳ (Epoch) |
Thời gian huấn luyện |
Độ chính xác kiểm tra (%) |
| CNN 10 lớp (MyNet) |
MyData (4 lớp hành động) |
20 epoch |
~4 giờ |
99,79% |
| CNN 10 lớp (MyNet) |
CIFAR-10 (10 lớp đối tượng) |
20 epoch |
~5 giờ |
66,82% |
| HOG + Multi-class SVM |
CIFAR-10 (CellSize [4, 4]) |
- |
- |
42,47% |
Số liệu thực nghiệm cho thấy trên cùng tập dữ liệu chuẩn CIFAR-10, mô hình CNN 10 lớp đạt độ chính xác 66,82%, cao hơn đáng kể so với phương pháp trích đặc trưng thủ công HOG kết hợp SVM (42,47%). Ngoài ra, biểu đồ đối sánh của tác giả cũng ghi nhận độ chính xác của các kiến trúc sâu hơn trên tập CIFAR-10, trong đó mô hình ResNet đạt mức xấp xỉ 89%.
Đóng góp của đề tài
Theo nội dung tác giả tự trình bày, các đóng góp chính của khóa luận gồm:
- Xây dựng thành công một kiến trúc mạng nơ-ron tích chập 10 lớp tinh gọn, phù hợp với điều kiện tính toán trên card đồ họa phổ thông (GeForce GTX 750 Ti) nhưng vẫn đảm bảo độ chính xác nhận dạng đạt 99,79% trên tập dữ liệu thử nghiệm của đề tài.
- Xây dựng được tập dữ liệu hình ảnh hành động người thực tế (MyData) với 4 trạng thái cơ bản, tạo tiền đề dữ liệu cho các thử nghiệm phân loại.
- Triển khai thành công giao diện đồ họa người dùng (GUI) trên MATLAB cho phép tương tác trực tiếp: nạp file mô hình huấn luyện
.mat, nhận dạng ảnh tĩnh và kết nối nhận dạng luồng hình ảnh trực tiếp từ webcam máy tính hoặc camera IP qua mạng.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài
Tác giả đã chỉ ra các hạn chế cụ thể tồn tại trong nghiên cứu:
- Số lượng hành động phân loại còn ít (chỉ giới hạn ở 4 hành động cơ bản: Bowing, Walking, Waving và Nothing).
- Dữ liệu thu thập ở điều kiện đơn giản (phòng nhỏ, camera đặt cố định từ 2 đến 3 mét), chưa đánh giá trong các môi trường có điều kiện chiếu sáng biến đổi mạnh hoặc phông nền phức tạp.
- Mô hình thực hiện trích xuất và phân loại độc lập trên từng khung hình của video, chưa có cơ chế kết hợp thông tin chuyển động theo thời gian giữa các khung hình liên tiếp.
- Chưa hỗ trợ nhận dạng đồng thời hành động của nhiều người cùng xuất hiện trong một khung hình.
- Năng lực phần cứng còn hạn chế, dẫn đến việc chưa thể mở rộng huấn luyện cho nhiều nhóm hành động phức tạp hơn do thời gian xử lý và yêu cầu bộ nhớ tăng cao.
Hướng nghiên cứu tiếp
Dựa trên các hạn chế đã nêu, văn bản định hướng các nội dung phát triển tiếp theo:
- Mở rộng tập dữ liệu huấn luyện với số lượng mẫu lớn hơn, đa dạng hơn về góc quay, phông nền và điều kiện chiếu sáng.
- Nghiên cứu phát hiện và phân loại thêm các hành động phức tạp, đặc biệt là các hành vi bất thường phục vụ bài toán an ninh và y tế.
- Phát triển thuật toán nhận dạng hành động đồng thời của nhiều đối tượng trên cùng một khung hình.
- Nâng cấp cấu hình phần cứng và nghiên cứu áp dụng các kiến trúc mạng học sâu tiên tiến hơn (như VGGNet, ResNet) nhằm nâng cao độ chính xác và tính tổng quát của hệ thống.
Giá trị tham khảo
Tài liệu này cung cấp giá trị tham khảo hữu ích cho sinh viên, học viên kỹ thuật thuộc các ngành Công nghệ thông tin, Kỹ thuật máy tính, Điện tử - Viễn thông và Tự động hóa khi bước đầu tiếp cận lĩnh vực thị giác máy tính và học sâu.
Các nội dung có giá trị tham khảo chuyên môn cao bao gồm:
- Phương pháp tính toán tham số mạng CNN: Các công thức xác định kích thước đầu ra của lớp tích chập, lớp pooling và cách tính số lượng tham số cần học khi áp dụng cơ chế chia sẻ trọng số (mục 2.2 và 2.3).
- Quy trình thực thi học sâu trên MATLAB: Cách sử dụng đối tượng
imageDatastore để quản lý tập dữ liệu lớn, chia tách tập dữ liệu ngẫu nhiên, cấu hình thuật toán tối ưu sgdm và hàm trainNetwork.
- Thực nghiệm đối chứng: Phương pháp so sánh định lượng giữa mô hình học sâu (CNN) và học máy truyền thống (HOG kết hợp SVM) trên cùng một tập dữ liệu chuẩn (CIFAR-10).
- Thiết kế ứng dụng thực tế: Cách thức đóng gói mô hình học sâu thành tệp dữ liệu
.mat và tích hợp vào giao diện điều khiển kết nối nguồn hình ảnh trực tiếp từ camera mạng.
Câu hỏi thường gặp
1. Kiến trúc mạng CNN 10 lớp của tác giả có cấu hình chi tiết như thế nào?
Mạng gồm 10 lớp tuần tự: Lớp 1 là lớp đầu vào ảnh kích thước $227 \times 227 \times 3$; Lớp 2 là tích chập conv1 (32 bộ lọc kích thước $11 \times 11$, bước trượt stride 4); Lớp 3 là hàm kích hoạt relu1; Lớp 4 là max pooling poo1 ($3 \times 3$, stride 2); Lớp 5 là tích chập conv2 (64 bộ lọc kích thước $5 \times 5$, stride 1, padding 2); Lớp 6 là hàm kích hoạt relu2; Lớp 7 là max pooling poo2 ($3 \times 3$, stride 2); Lớp 8 là lớp kết nối đầy đủ fc1 với 4 đầu ra; Lớp 9 là lớp Softmax; và Lớp 10 là lớp phân loại đầu ra (Classification Output).
2. Tập dữ liệu MyData được thu thập trong điều kiện nào và gồm bao nhiêu ảnh?
Tập dữ liệu MyData gồm tổng cộng 3.418 ảnh màu kích thước $227 \times 227$, được trích tự động từ các đoạn video ngắn do tác giả tự quay bằng một camera cố định đặt trong phòng nhỏ ở khoảng cách 2 đến 3 mét (bỏ qua điều kiện chiếu sáng và nền phức tạp). Dữ liệu phân thành 4 lớp: Bowing (660 ảnh), Walking (1.146 ảnh), Waving (1.400 ảnh) và Nothing (212 ảnh).
3. Tại sao độ chính xác của mạng CNN 10 lớp trên tập MyData (99,79%) lại chênh lệch lớn so với trên tập CIFAR-10 (66,82%)?
Tác giả giải thích nguyên nhân xuất phát từ sự khác biệt của tập dữ liệu huấn luyện: Tập MyData được thu thập trong môi trường tĩnh đồng nhất, nền đơn giản và chỉ phân loại 4 trạng thái; trong khi tập CIFAR-10 là tập dữ liệu mở chuẩn gồm 10 lớp đối tượng đa dạng, phức tạp hơn rất nhiều, làm giảm độ chính xác của một kiến trúc mạng 10 lớp tinh gọn.
4. Kết quả so sánh giữa phương pháp học sâu CNN và học máy truyền thống HOG kết hợp SVM trên tập CIFAR-10 là bao nhiêu?
Khi kiểm thử trên tập dữ liệu chuẩn CIFAR-10, mô hình trích xuất đặc trưng thủ công HOG (với CellSize [4, 4]) kết hợp phân loại SVM đa lớp đạt độ chính xác 42,47%, thấp hơn đáng kể so với mô hình mạng CNN 10 lớp của tác giả với độ chính xác đạt 66,82%.
5. Hệ thống hỗ trợ những nguồn cấp dữ liệu nào khi chạy thử nghiệm trên giao diện phần mềm?
Chương trình giao diện thử nghiệm viết trên MATLAB hỗ trợ 3 nguồn dữ liệu: nạp file ảnh tĩnh lưu trữ trên máy tính qua nút "Get Image to Test", tiếp nhận luồng video trực tiếp từ webcam tích hợp của máy tính, hoặc kết nối luồng truyền trực tiếp từ một camera IP thông qua mạng nội bộ.
Kết luận
Khóa luận đã nghiên cứu có hệ thống cơ sở lý thuyết về mạng nơ-ron nhân tạo và mạng nơ-ron tích chập, từ đó thiết kế thành công mô hình CNN 10 lớp ứng dụng cho bài toán nhận dạng hành động người. Bằng việc thực nghiệm trên card đồ họa NVIDIA GeForce GTX 750 Ti và nền tảng MATLAB, tác giả đã chứng minh tính hiệu quả của mô hình với độ chính xác đạt 99,79% trên tập dữ liệu tự xây dựng và vượt trội hơn phương pháp HOG kết hợp SVM trên tập dữ liệu chuẩn CIFAR-10. Dù còn một số hạn chế về số lượng hành động và bối cảnh ghi hình đơn giản, đề tài đã xây dựng được một giải pháp phần mềm hoàn chỉnh từ khâu huấn luyện dữ liệu đến giao diện nhận dạng thực tế qua camera.