Bối cảnh và vấn đề nghiên cứu

Sự phát triển nhanh chóng của xã hội đi kèm với nhiều vấn đề an ninh trật tự phức tạp như trộm cắp, phá hoại tài sản và đánh nhau tại những khu vực công cộng đông người như đường phố, siêu thị, trung tâm thương mại, nhà hàng, bệnh viện và nhà ga. Việc lắp đặt hệ thống camera an ninh giám sát trở nên phổ biến, tuy nhiên phần lớn các hệ thống truyền thống chỉ thực hiện chức năng ghi hình và truyền tín hiệu trực tiếp về trung tâm quan sát. Mô hình này phụ thuộc hoàn toàn vào nhân viên an ninh theo dõi màn hình liên tục, dẫn đến nguy cơ bỏ sót sự cố do quá tải thị giác và đánh giá chủ quan. Mặt khác, giải pháp truyền dữ liệu video nén về máy chủ trung tâm (server) qua mạng Internet để xử lý cũng bộc lộ nhược điểm lớn: khi máy chủ gặp sự cố thì toàn bộ hệ thống bị đình trệ, đồng thời chi phí đầu tư xây dựng, lắp đặt và bảo trì hạ tầng máy chủ quy mô lớn là rất tốn kém.

Nhằm giải quyết những bất cập trên, khóa luận tốt nghiệp kỹ sư ngành Kỹ thuật Máy tính tại Trường Đại học Công nghệ Thông tin – Đại học Quốc gia TP. Hồ Chí Minh đã nghiên cứu và hiện thực hóa đề tài: "Hệ thống camera thông minh phát hiện các hành vi bất thường" (Smart camera system for abnormal behavior detection).

Mục tiêu chính của khóa luận là nghiên cứu, thử nghiệm và triển khai một hệ thống camera thông minh có khả năng quan sát, theo dõi và ghi nhận các hành vi bất thường của con người. Điểm cốt lõi là việc tính toán và phát hiện hành vi được thực hiện trực tiếp tại camera thông qua máy tính nhúng, sau đó tự động gửi cảnh báo qua thư điện tử (email) đến nhân viên giám sát để kịp thời xử lý.

Nội dung và nhiệm vụ nghiên cứu của đề tài được xác định gồm 5 phần chính:

  1. Nghiên cứu các phương pháp phát hiện các hành vi bất thường.
  2. Xây dựng và huấn luyện mô hình máy học có khả năng phát hiện các hành vi bất thường của con người từ dữ liệu thu được qua camera Pi NoIR V2, bao gồm các mô hình: ResNet-18, ResNet-3D-18 và MobileNet_v2.
  3. Thử nghiệm, đánh giá tốc độ thực thi và độ chính xác của các mô hình máy học trên kit máy tính nhúng NVIDIA Jetson Nano.
  4. Lập trình chức năng cảnh báo qua E-mail thông qua máy chủ SMTP của Gmail.
  5. Thiết kế và thực nghiệm mô hình thực tế.

Phạm vi và giới hạn của đề tài được tác giả xác định rõ:

  • Môi trường lắp đặt: Đường phố, cửa hàng, siêu thị, trung tâm thương mại.
  • Phạm vi hành vi nhận diện: Giới hạn ở 3 nhóm hành vi bất thường chính gồm đánh nhau (fighting), trộm cắp (stealing) và phá hoại (vandalism).
  • Yêu cầu kỹ thuật: Độ chính xác khi phát hiện đạt tối thiểu 70%.

Cơ sở lý thuyết và phương pháp

Khóa luận xây dựng trên nền tảng lý thuyết thị giác máy tính (Computer Vision), học máy (Machine Learning - ML) và học sâu (Deep Learning - DL), tập trung vào các mạng nơ-ron nhân tạo và mạng nơ-ron tích chập (Convolutional Neural Networks - CNN).

Khung lý thuyết và mô hình học sâu

Tác giả hệ thống hóa lịch sử phát triển từ mô hình toán học của nơ-ron nhân tạo (McCulloch và Pitts, 1943), lý thuyết truyền tín hiệu khớp thần kinh (Donald Hebb, 1949), cơ chế phản ứng tế bào thần kinh thị giác (Hubel và Wiesel, 1959) cho đến kiến trúc LeNet-5 của Yann LeCun (1998). Một nơ-ron nhân tạo được tính toán dựa trên danh sách đầu vào $X_i$, trọng số liên kết $w_i$, hàm tổng $\sum w_i X_i$ và hàm kích hoạt (Activation function).

Mạng CNN được sử dụng với cấu trúc gồm các lớp cơ bản:

  • Convolution layer (Lớp tích chập): Đóng vai trò phát hiện đặc trưng thông qua việc trượt bộ lọc (filter) kích thước lẻ ($3 \times 3$ hoặc $5 \times 5$) trên ảnh đầu vào để tạo thành bản đồ đặc trưng (feature map). Kích thước bộ lọc nhỏ được ưu tiên nhằm rút trích đặc trưng cục bộ, giảm tham số và cho phép xây dựng mạng sâu hơn.
  • Nonlinear layer: Hàm kích hoạt phi tuyến tính ReLU chuyển đổi các giá trị âm về 0.
  • Pooling layer: Giảm chiều dữ liệu không gian thông qua Max-pooling hoặc Average-pooling (kích thước $2 \times 2$), hạn chế hiện tượng quá khớp (overfitting) và tăng tốc độ tính toán.
  • Fully connected layer & Softmax: Chuyển đổi ma trận đặc trưng thành vector xác suất của các lớp đối tượng cần dự đoán.

Khóa luận nghiên cứu hai hướng tiếp cận bài toán:

  • Phân loại ảnh đa lớp (Multiclass Image Classification): Phân tích từng khung hình (frame) tuần tự từ luồng video bằng các mô hình 2D CNN gồm ResNet-18 (sử dụng các khối phần dư residual block với kết nối tắt skip connection) và MobileNet_v2 (sử dụng tích chập chiều sâu depthwise separable convolution, cấu trúc bottleneck và kết nối tắt, loại bỏ phi tuyến tính tại lớp ngõ vào/ra để tối ưu trên thiết bị nhúng).
  • Phân loại video (Video Classification): Sử dụng mạng ResNet-3D-18 với các lớp tích chập 3D. Bộ lọc trong không gian 4 chiều $[N_i \times t \times d \times d]$ (với $t=3$) cho phép trích xuất đồng thời các đặc trưng không gian và thời gian (spatio-temporal) từ chuỗi 16 khung hình liên tiếp.

Phương pháp nghiên cứu và nguồn dữ liệu

Phương pháp nghiên cứu thực nghiệm được áp dụng qua quy trình: xử lý dữ liệu video thành khung hình, chuẩn hóa kích thước và giá trị pixel, huấn luyện mô hình học sâu trên môi trường đám mây và triển khai suy luận (inference) trên thiết bị phần cứng nhúng.

Nguồn dữ liệu thực nghiệm được tác giả khảo sát và trích xuất từ hai bộ dữ liệu học thuật chuẩn:

  • Bộ dữ liệu CityScene: Gồm 1321 video hành vi bất thường (tổng thời lượng 4 giờ 23 phút 27 giây) thuộc 12 lớp hành vi và 758 video sự kiện bình thường (4 giờ 26 phút 34 giây).
  • Bộ dữ liệu UCF-Crime: Gồm 1900 video (tổng thời lượng 128 giờ, trung bình 7247 khung hình mỗi video) thuộc 14 nhóm hành vi an ninh.

Nhận thấy dữ liệu gốc có sự chênh lệch và dễ gây nhầm lẫn giữa các lớp tương đồng, nhóm nghiên cứu đã xây dựng Bộ dữ liệu tổng hợp bằng cách kết hợp các lớp chọn lọc từ CityScene, UCF-Crime và bổ sung thêm video tự thu thập từ hệ thống camera an ninh thực tế tại Việt Nam (độ phân giải $480 \times 360$ hoặc $858 \times 480$).

Tên lớp hành vi Định nghĩa và nguồn gốc dữ liệu Số lượng video
Fighting Hành vi hai hoặc nhiều người đánh nhau; trích từ CityScene và UCF-Crime 314 video
Normal Cảnh các sự kiện diễn ra bình thường; trích từ CityScene và UCF-Crime 1708 video
Stealing_Motor Hành vi bẻ khóa trộm xe máy; dữ liệu tự thu thập tại Việt Nam 139 video
Stealing_Car_Mirror Hành vi bẻ trộm gương chiếu hậu xe ô tô; dữ liệu tự thu thập tại Việt Nam 91 video
Vandalism Hành vi vẽ bậy (graffiti), phá hoại; lấy từ CityScene, UCF-Crime và 73 video tự thu thập 183 video

Thiết kế và triển khai

Hệ thống camera thông minh được thiết kế theo kiến trúc xử lý tại biên (edge computing) gồm 3 khối chức năng chính:

  1. Khối thu dữ liệu: Sử dụng Camera Pi NoIR V2 trang bị cảm biến Sony IMX219 độ phân giải 8 Megapixel (chụp ảnh tối đa $3280 \times 2464$, quay video 1080p30, 720p60, 640x480p60/90), kết nối qua giao tiếp CSI. Điểm đặc trưng của loại camera này là không sử dụng bộ lọc hồng ngoại (No Infrared), giúp tăng khả năng ghi hình trong điều kiện ánh sáng yếu.
  2. Khối xử lý trung tâm: Sử dụng máy tính nhúng NVIDIA Jetson Nano Developer Kit với cấu hình: CPU 64-bit Quad-Core ARM A57 @ 1.43 GHz, GPU 128 nhân kiến trúc Maxwell xung nhịp 921 MHz (hiệu năng tính toán 472 GFLOPs FP16), bộ nhớ RAM 4 GB 64-bit LPDDR4 băng thông 25.6 GB/s, mức tiêu thụ điện năng dưới 5W. Nền tảng phần mềm vận hành trên hệ điều hành Ubuntu Linux thuộc bộ NVIDIA JetPack SDK cùng thư viện tăng tốc phần cứng CUDA.
  3. Khối thông báo và cảnh báo: Sử dụng giao thức SMTP (Simple Mail Transfer Protocol) qua máy chủ smtp.gmail.com của dịch vụ Gmail và thư viện gửi mail trong Python.
[Luồng phân loại ảnh đa lớp]
Camera Pi NoIR V2 -> Tách frame (OpenCV) -> Tiền xử lý (224x224, Tensor) -> Mô hình 2D CNN (ResNet-18 / MobileNet_v2) -> Phát hiện bất thường -> Gửi Email cảnh báo (SMTP)

[Luồng phân loại video]
Camera Pi NoIR V2 -> Trích xuất chuỗi 16 frame (OpenCV) -> Chuẩn hóa Spatio-temporal -> Mô hình ResNet-3D-18 -> Phát hiện bất thường -> Gửi Email cảnh báo (SMTP)

Quá trình tiền xử lý và huấn luyện:

  • Khung hình trích xuất qua thư viện OpenCV được áp dụng các phép biến đổi từ thư viện PyTorch: Center Crop, Resize về kích thước chuẩn $224 \times 224$ pixel, Normalize và chuyển đổi sang dạng Tensor.
  • Quá trình huấn luyện mô hình được thực hiện trên nền tảng Google Colab (máy ảo Ubuntu 18.04 LTS 64-bit, 2 CPU @ 2.3 GHz, RAM ~12.6 GB, GPU NVIDIA Tesla K80 12GB VRAM, dung lượng ổ đĩa ~68 GB). Do giới hạn thời gian kết nối 12 giờ của phiên bản Colab miễn phí, quá trình huấn luyện được thiết lập trong 10 epoch.
  • Mô hình sau khi huấn luyện sẽ xuất ra tệp lưu trữ trọng số (save_weights), tệp này được nạp vào máy tính nhúng Jetson Nano để thực hiện suy luận thời gian thực.

Dữ liệu hình ảnh dùng để huấn luyện và đánh giá trên bộ dữ liệu tổng hợp được phân chia chi tiết theo bảng sau:

Lớp hành vi Tập huấn luyện (Train) Tập kiểm định (Val) Tập kiểm thử (Test)
Fighting 10.992 2.279 2.390
Normal Event 101.059 12.998 20.334
Stealing_Car_Mirror 15.817 779 1.000
Stealing_Motor 6.730 688 720
Vandalism 9.099 842 939
Tổng cộng 143.697 17.586 25.383

Nội dung chính theo từng chương

Chương 1. Tổng quan và lý do chọn đề tài

Chương mở đầu phân tích bối cảnh an ninh trật tự xã hội, nêu bật nhu cầu giám sát tự động và chỉ ra các hạn chế của mô hình camera tập trung phụ thuộc máy chủ. Tác giả xác định mục tiêu xây dựng camera thông minh xử lý trực tiếp tại biên, làm rõ 5 nhiệm vụ nghiên cứu, xác định phạm vi không gian (đường phố, cửa hàng, siêu thị) và 3 nhóm hành vi bất thường cần nhận diện (đánh nhau, trộm cắp, phá hoại) với yêu cầu độ chính xác tối thiểu 70%.

Chương 2. Việc sử dụng camera để giám sát và cơ sở lý thuyết

Chương này tổng kết thực trạng giám sát hình ảnh, các khái niệm cơ bản về AI, ML và Deep Learning. Nội dung đi sâu phân tích cấu trúc nơ-ron sinh học, mô hình nơ-ron nhân tạo, các tầng chức năng trong mạng CNN (Convolution, ReLU, Pooling, Fully Connected) và ưu thế của bộ lọc kích thước nhỏ $3 \times 3$. Chương 2 đồng thời trình bày nguyên lý của hai bài toán: phân loại ảnh đa lớp và phân loại video (chuỗi khung hình, tích chập 3D trích xuất đặc trưng không gian - thời gian), cùng kiến trúc chi tiết của 3 mô hình học sâu: ResNet-18, ResNet-3D-18 và MobileNet_v2.

Chương 3. Giải pháp đề xuất

Chương 3 trình bày toàn bộ giải pháp thiết kế hệ thống từ sơ đồ khối tổng quan, thông số kỹ thuật phần cứng (NVIDIA Jetson Nano, Camera Pi NoIR V2) đến các công cụ phần mềm (PyTorch, OpenCV, Google Colab). Tác giả phân tích chi tiết hai bộ dữ liệu CityScene và UCF-Crime, nêu lý do xây dựng bộ dữ liệu tổng hợp 5 lớp có bổ sung video trộm cắp tại Việt Nam. Chương này mô tả chi tiết quy trình xử lý ảnh $224 \times 224$, luồng thực thi phân loại ảnh đa lớp, luồng phân loại video với chuỗi 16 khung hình trên ResNet-3D-18, và giải pháp gửi email cảnh báo qua giao thức SMTP Gmail.

Chương 4. Kết quả thực nghiệm

Chương 4 ghi nhận các kết quả thực nghiệm chi tiết của đề tài:

  • Đánh giá độ chính xác và quá trình huấn luyện của mô hình ResNet-18 và MobileNet_v2 trên tập kiểm thử của từng bộ dữ liệu đơn lẻ (UCF-Crime, CityScene) và bộ dữ liệu tổng hợp.
  • Đo lường và đánh giá tốc độ thực thi (FPS) của mô hình ResNet-18 và MobileNet_v2 trên máy tính nhúng NVIDIA Jetson Nano đối với từng lớp hành vi.
  • Đánh giá kết quả huấn luyện và thử nghiệm của mô hình phân loại video ResNet-3D-18.
  • Kiểm thử và ghi nhận hoạt động ổn định của chức năng cảnh báo qua email từ hệ thống khi phát hiện hành vi bất thường.

Chương 5. Nhận xét và hướng phát triển

Chương cuối đưa ra các nhận xét tổng quan về tính khả thi của hệ thống camera giám sát nhúng, đánh giá mức độ hoàn thành các mục tiêu đề ra và đề xuất các giải pháp kỹ thuật nhằm cải tiến, mở rộng đề tài trong tương lai.

Kết quả và đóng góp

Kết quả chính đạt được

  • Hiện thực hóa hệ thống hoàn chỉnh: Đã thiết kế, cài đặt và vận hành thành công hệ thống camera thông minh phát hiện hành vi bất thường chạy hoàn toàn trên thiết bị nhúng NVIDIA Jetson Nano kết hợp camera Pi NoIR V2 mà không cần phụ thuộc vào máy chủ xử lý trung tâm.
  • Xây dựng bộ dữ liệu thực tế: Đã thu thập và chuẩn hóa bộ dữ liệu tổng hợp gồm 143.697 khung hình huấn luyện, 17.586 khung hình kiểm định và 25.383 khung hình kiểm thử trên 5 lớp hành vi, giải quyết được tình trạng thiếu dữ liệu và nhập nhằng giữa các hành vi trong các bộ dữ liệu mở.
  • Thực nghiệm đa mô hình: Hoàn thành việc huấn luyện và so sánh hiệu năng của hai mô hình 2D CNN (ResNet-18, MobileNet_v2) và mô hình 3D CNN (ResNet-3D-18), đánh giá trực tiếp tốc độ khung hình (FPS) trên phần cứng Jetson Nano.
  • Cơ chế cảnh báo tự động: Tích hợp thành công module gửi email cảnh báo tức thời qua giao thức SMTP của Gmail kèm bằng chứng hình ảnh khi phát hiện sự kiện đánh nhau, trộm cắp hoặc phá hoại.

Đóng góp của đề tài

  1. Đóng góp bộ dữ liệu hình ảnh đặc thù về hành vi trộm cắp tài sản (bẻ khóa xe máy, bẻ trộm gương ô tô) được ghi nhận từ camera an ninh thực tế tại Việt Nam, bổ sung vào tập dữ liệu chuẩn phục vụ nghiên cứu thị giác máy tính.
  2. Đưa ra giải pháp kỹ thuật khả thi cho bài toán giám sát an ninh tại biên với chi phí phần cứng thấp, công suất tiêu thụ điện dưới 5W, loại bỏ nguy cơ nghẽn mạng và sập hệ thống do phụ thuộc máy chủ.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế

  • Thời gian huấn luyện mô hình bị giới hạn trong 10 epoch do sử dụng tài nguyên đám mây miễn phí trên Google Colab (giới hạn thời gian phiên làm việc liên tục 12 giờ).
  • Bộ dữ liệu ban đầu từ CityScene và UCF-Crime có số lượng mẫu ở một số lớp còn ít và sự khác biệt giữa các lớp chưa thật sự rõ nét, dễ gây nhầm lẫn cho mô hình trong quá trình phân loại.
  • Phạm vi nhận diện mới chỉ tập trung vào 3 nhóm hành vi: đánh nhau, trộm cắp (xe máy, gương ô tô) và phá hoại (vẽ bậy graffiti); chưa bao quát được toàn bộ các dạng hành vi bất thường trong môi trường thực tế.

Hướng nghiên cứu tiếp

  • Mở rộng tập dữ liệu với quy mô lớn hơn và bổ sung thêm các lớp hành vi bất thường mới.
  • Nghiên cứu tối ưu hóa kiến trúc mô hình học sâu để nâng cao hơn nữa độ chính xác và tốc độ xử lý khung hình (FPS) trên kit máy tính nhúng.
  • Hoàn thiện giải pháp xử lý triệt để hiện tượng chập chờn nhận diện (flickering) trong quá trình phân loại video thời gian thực.

Giá trị tham khảo

Khóa luận là tài liệu tham khảo giá trị cho sinh viên, học viên cao học và kỹ sư thuộc các chuyên ngành Kỹ thuật Máy tính, Khoa học Máy tính, Hệ thống Nhúng và Công nghệ Thông tin đang thực hiện các đề tài về Trí tuệ nhân tạo ứng dụng và Thị giác máy tính.

Các nội dung có giá trị ứng dụng cao gồm:

  • Quy trình xây dựng và triển khai mô hình học sâu (ResNet, MobileNet, 3D-CNN) trên phần cứng nhúng NVIDIA Jetson Nano kết hợp camera giao tiếp CSI.
  • Phương pháp xử lý dữ liệu video, trích xuất khung hình và cấu trúc bộ dữ liệu hành vi bất thường phục vụ bài toán phân loại ảnh đa lớp và phân loại video.
  • Kỹ thuật lập trình tích hợp hệ thống cảnh báo tự động qua giao thức SMTP sử dụng ngôn ngữ Python.

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

1. Hệ thống camera thông minh trong khóa luận sử dụng những thiết bị phần cứng cụ thể nào?
Hệ thống sử dụng máy tính nhúng NVIDIA Jetson Nano Developer Kit (CPU Quad-Core ARM A57 @ 1.43 GHz, GPU 128 nhân Maxwell, RAM 4 GB LPDDR4, công suất < 5W) kết hợp với module Camera Pi NoIR V2 trang bị cảm biến Sony IMX219 8 Megapixel giao tiếp qua cổng CSI không có bộ lọc hồng ngoại.

2. Bộ dữ liệu tổng hợp do nhóm tác giả xây dựng gồm những lớp hành vi nào và có quy mô ra sao?
Bộ dữ liệu tổng hợp gồm 5 lớp: Fighting (314 video), Normal (1708 video), Stealing_Motor (139 video), Stealing_Car_Mirror (91 video) và Vandalism (183 video). Dữ liệu sau khi trích xuất frame được chia thành: 143.697 hình cho tập Train, 17.586 hình cho tập Val và 25.383 hình cho tập Test.

3. Khóa luận đã nghiên cứu và thử nghiệm những mô hình học sâu nào cho bài toán phát hiện hành vi?
Tác giả đã nghiên cứu và thử nghiệm 3 mô hình học sâu: ResNet-18 và MobileNet_v2 cho phương pháp phân loại ảnh đa lớp (trên từng khung hình $224 \times 224$), và ResNet-3D-18 cho phương pháp phân loại video (trên chuỗi 16 khung hình liên tiếp trích xuất đặc trưng không gian - thời gian).

4. Tại sao nhóm nghiên cứu phải tự thu thập thêm dữ liệu video tại Việt Nam?
Do thử nghiệm ban đầu trên các lớp của hai bộ dữ liệu quốc tế CityScene và UCF-Crime cho kết quả chưa tốt vì lượng dữ liệu còn ít và sự khác biệt giữa các lớp không rõ nét, dễ gây nhầm lẫn cho mô hình. Nhóm đã bổ sung các video camera an ninh thực tế tại Việt Nam cho hai hành vi cụ thể là bẻ khóa xe máy (Stealing_Motor) và bẻ trộm gương ô tô (Stealing_Car_Mirror).

5. Cơ chế phát hiện và gửi cảnh báo của hệ thống hoạt động như thế nào?
Dữ liệu hình ảnh từ Camera Pi NoIR V2 được đọc bằng OpenCV, tiền xử lý và đưa vào mô hình học sâu chạy trực tiếp trên Jetson Nano. Khi mô hình dự đoán khung hình hoặc chuỗi khung hình thuộc các lớp hành vi bất thường (Fighting, Stealing, Vandalism), hệ thống kích hoạt module Python tự động gửi email cảnh báo đến người giám sát thông qua máy chủ SMTP của Gmail (smtp.gmail.com).

Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Văn Thắng và Nguyễn Đông Quân đã nghiên cứu và triển khai thành công hệ thống camera thông minh phát hiện hành vi bất thường xử lý trực tiếp tại biên trên máy tính nhúng NVIDIA Jetson Nano. Đề tài đã xây dựng một bộ dữ liệu tổng hợp kết hợp các tập dữ liệu chuẩn quốc tế với dữ liệu thực tế tại Việt Nam, đồng thời đánh giá hiệu năng của các mô hình ResNet-18, MobileNet_v2 và ResNet-3D-18. Hệ thống đáp ứng tốt mục tiêu giám sát an ninh tự động, giảm tải áp lực cho nhân viên an ninh và cung cấp cơ chế cảnh báo qua email tức thời với chi phí đầu tư phần cứng tối ưu.