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

Trẻ em trong độ tuổi phát triển thường có đặc tính hiếu động, tò mò và xu hướng tự khám phá môi trường xung quanh. Tuy nhiên, việc tự do hoạt động một mình trong không gian gia đình tiềm ẩn nhiều rủi ro khôn lường như té ngã, tiếp cận các khu vực nguy hiểm (ban công, cầu thang, khu vực bếp nấu) hoặc xảy ra tai nạn ngoài tầm kiểm soát của người lớn. Thực tế cho thấy các bậc phụ huynh không thể duy trì việc giám sát trực tiếp liên tục 24/7.

Trước thực trạng đó, một số nghiên cứu trước đây đã đề xuất các thiết bị cảnh báo té ngã dạng đeo trên người. Dù mang lại hiệu quả nhất định, giải pháp này bộc lộ hạn chế lớn khi yêu cầu trẻ phải mang thiết bị liên tục trên cơ thể, gây cảm giác khó chịu, vướng víu và hạn chế sự tự do trong các hoạt động vui chơi hàng ngày. Để khắc phục nhược điểm này, việc xây dựng một hệ thống giám sát không tiếp xúc (non-contact) dựa trên thị giác máy tính và camera giám sát là hướng tiếp cận cần thiết, mang lại sự thoải mái cho trẻ nhỏ và tính tiện lợi cho người chăm sóc.

Đề tài "Thiết kế hệ thống giám sát trẻ em thông qua camera" do sinh viên Đào Minh Trà và Tạ Ngọc Minh thực hiện dưới sự hướng dẫn của TS. Trương Ngọc Sơn (Bộ môn Kỹ thuật Máy tính – Viễn thông, Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh) xác định các mục tiêu cụ thể:

  1. Xây dựng hệ thống giám sát an toàn cho trẻ nhỏ trong gia đình.
  2. Nghiên cứu, khảo sát hệ thống nhận diện trẻ em có khả năng gặp nguy hiểm qua camera.
  3. Nghiên cứu và ứng dụng thị giác máy tính trong việc nhận dạng các tình huống có nguy cơ nguy hiểm có thể xảy ra cho trẻ nhỏ (té ngã, đi vào vùng cấm).
  4. Cung cấp khả năng quan sát trực tiếp camera thông qua ứng dụng di động.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Các thuật toán thị giác máy tính phát hiện đối tượng và phân tích tư thế người; hệ thống camera IP; nền tảng cơ sở dữ liệu thời gian thực và ứng dụng di động giám sát.
  • Phạm vi và giới hạn đề tài: Đề tài giới hạn thu nhận và xử lý tín hiệu từ một camera IP duy nhất trong môi trường gia đình; luồng hình ảnh truyền qua giao thức RTSP; quá trình xử lý hình ảnh được thực hiện trên máy tính trung tâm; hiệu năng của hệ thống phụ thuộc vào chất lượng hình ảnh từ camera và cấu hình phần cứng của máy tính xử lý.

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

Đề tài kết hợp giữa các kiến trúc học sâu (Deep Learning) chuyên dụng cho thị giác máy tính nhằm cân bằng giữa tốc độ xử lý thời gian thực và độ chính xác phân tích:

Mô hình MobileNet SSD

  • MobileNet: Mạng nơ-ron tích chập (CNN) được tối ưu hóa cho các thiết bị hạn chế tài nguyên. Cốt lõi của MobileNet là phép nhân chập tách rời theo chiều sâu (Depthwise Separable Convolution), chia quá trình tích chập thông thường thành hai bước: nhân chập theo chiều sâu (Depthwise Convolution) xử lý độc lập từng kênh đầu vào và nhân chập theo từng điểm (Pointwise Convolution) dùng bộ lọc $1 \times 1$ để tổng hợp đặc trưng liên kênh. Kiến trúc gồm 14 tầng nhân chập, loại bỏ các tầng Avg Pool và Fully-Connected ở cuối, sử dụng hệ số nhân chiều rộng ($\alpha$ - Width Multiplier) để điều chỉnh số lượng kênh, giảm khối lượng tham số và tính toán.
  • SSD (Single Shot MultiBox Detector): Thuật toán phát hiện đối tượng trên mạng truyền xuôi (forward propagation), tạo ra tập hợp khung bao mặc định (default bounding boxes) với tỷ lệ 4 hoặc 6 khung trên các feature map đa tỷ lệ. SSD sử dụng hai hàm mất mát: hàm mất mát vị trí Smooth L1 (đo sai số giữa khung dự đoán $p$ và khung thực tế $g$) và hàm mất mát phân loại Cross-Entropy.
  • Kết hợp MobileNet-v1 và SSD: MobileNet đóng vai trò mạng trích xuất đặc trưng (backbone network) thay thế cho VGG-16. Hệ thống kết nối tầng 12 (Depthwise convolution với bộ lọc $1 \times 1 \times 512 \times 512$, độ sâu 512) và tầng 14 (Pointwise convolution cuối cùng với feature map 1024) của MobileNet vào SSD để trích xuất đồng thời các đặc trưng mức trung bình và mức cao phục vụ nhận diện đối tượng người.

Thư viện MediaPipe và mô hình BlazePose

  • MediaPipe: Thư viện mã nguồn mở của Google cung cấp các giải pháp thị giác máy tính đa nền tảng (Mobile, Desktop, Web, IoT).
  • Mô hình BlazePose: Sử dụng mô hình 2 giai đoạn (two-step pipeline) để nhận diện và theo dõi tư thế:
    1. Pose Detector (Máy phát hiện tư thế): Lấy cảm hứng từ BlazeFace, phát hiện vùng chứa khuôn mặt (vùng có độ tương phản cao và ít biến đổi), dự đoán 2 điểm ảo làm tâm cơ thể và xoay trục cơ thể theo phương thẳng đứng.
    2. Pose Tracker (Máy theo dõi tư thế): Xác định vị trí 33 điểm mốc (landmarks) trên cơ thể thông qua phần phát hiện điểm mốc (Keypoints Detection sử dụng Heat maps và Offset maps) và phần hồi quy điểm mốc (Keypoints Regression Part).
  • Thông số điểm mốc: Mỗi điểm mốc trong số 33 điểm cung cấp tọa độ $(x, y, z)$, trong đó $x, y$ là tọa độ không gian 2D trên ảnh, $z$ thể hiện độ sâu tương đối so với mốc hông.
  • Các tham số cấu hình chính: static_image_mode (xử lý ảnh tĩnh hay chuỗi video), smooth_landmarks (lọc làm mượt điểm mốc giảm rung lắc), min_detection_confidence (ngưỡng tin cậy phát hiện ban đầu, dải giá trị $0.0 - 1.0$), min_tracking_confidence (ngưỡng tin cậy theo dõi liên tục).

Thuật toán xác định vùng nguy hiểm và phát hiện sự cố

  • Kiểm tra đối tượng đi vào vùng cấm: Tác giả khảo sát hai phương án xác định vùng cấm (vùng đa giác do người dùng thiết lập qua 4 điểm $A, B, C, D$):
    • Phương pháp 1: Kiểm tra cả 4 điểm biên của đối tượng có nằm trong vùng cấm hay không.
    • Phương pháp 2 (được chọn): Nối các đường chéo $A-D$ và $B-C$ để xác định điểm trung tâm $E$ của đối tượng. Sử dụng thuật toán Ray Casting (bắn tia từ điểm $E$; nếu số giao điểm giữa tia và các cạnh của đa giác là số lẻ thì điểm nằm trong vùng cấm, ngược lại nếu chẵn thì nằm ngoài). Phương pháp này được lựa chọn vì tính tối ưu khi vùng cấm có hình dạng phức tạp.
  • Phát hiện té ngã: Trích xuất tọa độ các điểm mốc từ MediaPipe Pose (đặc biệt là điểm mốc vùng mũi và đầu), theo dõi sự thay đổi đột ngột về biên độ tọa độ trục $y$ ($\Delta y$) và vận tốc biến thiên vượt qua ngưỡng quy định để kích hoạt sự kiện té ngã.

Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình phân tán gồm 5 khối chức năng chính:

[Khối Camera IP] ---> (Giao thức RTSP) ---> [Khối Xử lý trung tâm (PC Python)]
                                                    |
                                            (Đồng bộ dữ liệu)
                                                    v
[Khối Ứng dụng Di động (Android)] <---> [Khối Cơ sở dữ liệu (Firebase)]

Chi tiết các khối chức năng và công nghệ sử dụng

  • Khối Camera: Sử dụng camera IP kết nối mạng nội bộ/Internet, truyền luồng video thời gian thực về hệ thống thông qua giao thức RTSP (Real Time Streaming Protocol).
  • Khối Router và Internet: Hạ tầng mạng truyền dẫn, đóng vai trò cầu nối giao tiếp giữa camera, máy tính xử lý và thiết bị di động.
  • Khối Xử lý trung tâm (Máy tính): Viết bằng ngôn ngữ Python, chịu trách nhiệm tiếp nhận luồng hình ảnh RTSP từ camera, thực thi mô hình nhận diện MobileNet SSD, thuật toán phân tích tư thế MediaPipe BlazePose và thuật toán Ray Casting. Khi phát hiện vi phạm vùng cấm hoặc té ngã, chương trình cập nhật trạng thái cảnh báo lên Firebase.
  • Khối Cơ sở dữ liệu (Firebase): Sử dụng các dịch vụ đám mây của Google:
    • Firebase Authentication: Quản lý đăng ký, đăng nhập và xác thực tài khoản người dùng bằng Email/Password.
    • Firebase Realtime Database: Lưu trữ tọa độ vùng cấm do ứng dụng gửi lên và biến trạng thái cảnh báo (signal = "1" khi có nguy hiểm, signal = "0" ở trạng thái bình thường).
  • Khối Ứng dụng di động (Android): Phát triển trên môi trường Android Studio (hỗ trợ Java/Kotlin), tích hợp Firebase SDK. Ứng dụng cung cấp các tính năng: đăng ký/đăng nhập, cấu hình thông số kết nối IP camera (IP, Password, URL RTSP), xem video trực tiếp bằng VideoView, vẽ vùng cảnh báo tứ giác bằng CustomView (người dùng chạm 4 điểm trên màn hình để tạo vùng đa giác và đẩy tọa độ lên Firebase), nhận thông báo cảnh báo tức thời khi biến signal chuyển sang giá trị "1".

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

Chương 1: Giới thiệu

Trình bày tổng quan về tính cấp thiết của việc bảo vệ an toàn cho trẻ em trong gia đình, phân tích các hạn chế của thiết bị đeo cảnh báo truyền thống. Xác định 4 mục tiêu nghiên cứu chính, đối tượng, phạm vi giới hạn của đề tài (giới hạn 1 camera, phụ thuộc năng lực xử lý của máy tính) và phác thảo cấu trúc tài liệu gồm 5 chương.

Chương 2: Cơ sở lý thuyết

Nghiên cứu chi tiết cấu trúc toán học và hoạt động của mô hình MobileNet SSD (phép nhân chập tách rời theo chiều sâu, hệ số $\alpha$, kiến trúc kết hợp tầng 12 và tầng 14 vào SSD, các hàm mất mát Smooth L1 và Cross-Entropy). Phân tích cấu trúc 2 giai đoạn của thư viện MediaPipe BlazePose (Pose Detector, Pose Tracker), cơ chế trích xuất 33 điểm mốc 3D $(x, y, z)$ và ý nghĩa các tham số cấu hình hệ thống.

Chương 3: Thiết kế hệ thống giám sát trẻ em thông qua camera

Trình bày các yêu cầu kỹ thuật của hệ thống, thiết lập sơ đồ khối 5 thành phần. Phân tích giải thuật kiểm tra điểm thuộc đa giác bằng thuật toán Ray Casting (so sánh phương pháp 4 điểm biên và phương pháp điểm trung tâm $E$). Trình bày giải thuật nhận diện té ngã qua biến thiên tọa độ điểm mốc MediaPipe Pose. Mô tả chi tiết kiến trúc phần mềm trên Android Studio, tích hợp Firebase Realtime Database/Authentication và thiết lập các lưu đồ giải thuật cho chương trình chính (Python) cùng các luồng chương trình con trên Android (đăng ký, đăng nhập, cấu hình IP camera, hiển thị video, vẽ vùng cấm).

Chương 4: Kết quả

Trình bày kết quả xây dựng giao diện ứng dụng di động và giao diện đăng nhập trên máy tính. Mô tả quá trình kết nối luồng camera qua RTSP, chức năng vẽ và reset vùng cảnh báo. Báo cáo các kịch bản thực nghiệm hệ thống gồm: đối tượng ở tư thế đứng, tư thế ngồi, mô phỏng đối tượng bị té ngã, nhận diện trong điều kiện thiếu sáng, nhận diện khi đi vào vùng cấm trong điều kiện thiếu sáng, nhận diện khi đối tượng bị che khuất một phần và phân tích các trường hợp nhận diện sai của mô hình.

Chương 5: Kết luận và hướng phát triển

Đánh giá mức độ hoàn thành nhiệm vụ so với mục tiêu ban đầu đề ra, khẳng định tính khả thi của mô hình giám sát trẻ em dựa trên thị giác máy tính và đề xuất các giải pháp nâng cấp, mở rộng hệ thống trong tương lai.

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

Kết quả thực nghiệm

Hệ thống đã triển khai hoàn chỉnh quy trình giám sát từ camera IP đến ứng dụng Android thông qua máy tính xử lý trung tâm và Firebase. Kết quả đánh giá trên các kịch bản thực tế được ghi nhận:

Kịch bản thực nghiệm Điều kiện môi trường Kết quả hoạt động của hệ thống
Nhận diện tư thế đứng, ngồi Ánh sáng tiêu chuẩn Hệ thống nhận diện chính xác khung xương và vị trí đối tượng.
Thiết lập và cảnh báo vùng cấm Ánh sáng tiêu chuẩn Người dùng vẽ 4 điểm tạo tứ giác; khi điểm trung tâm $E$ cắt vùng cấm, hệ thống gửi cảnh báo về điện thoại.
Mô phỏng sự cố té ngã Ánh sáng tiêu chuẩn Phát hiện sự thay đổi đột ngột tọa độ $y$ của mốc cơ thể và gửi thông báo tức thời.
Giám sát trong môi trường thiếu sáng Ánh sáng yếu Vẫn nhận diện được đối tượng, tư thế ngồi và cảnh báo vùng cấm nhưng độ ổn định giảm.
Đối tượng bị che khuất Vật cản che một phần cơ thể Khó xác định đủ 33 điểm mốc, dẫn đến hiện tượng nhận diện sai hoặc bỏ sót sự kiện.

Theo số liệu công bố trong văn bản đồ án, tỷ lệ phát hiện chính xác các tình huống nguy hiểm của hệ thống đạt mức dưới 85% ($< 85%$).

Giải pháp và kiến nghị của tác giả

  • Ứng dụng giải thuật Ray Casting trên điểm tâm $E$ giúp tối ưu hóa việc phát hiện vùng cấm thay vì kiểm tra toàn bộ 4 góc bounding box.
  • Sử dụng mô hình BlazePose với cơ chế theo dõi liên tục (Pose Tracker) giúp giảm tải việc phải chạy lại toàn bộ quy trình phát hiện (Pose Detector) ở từng khung hình.
  • Tích hợp Firebase Realtime Database làm trung gian phi cấu trúc giúp loại bỏ chi phí duy trì máy chủ riêng biệt và đơn giản hóa việc đồng bộ tín hiệu thời gian thực.

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

  • Đề xuất giải pháp giám sát an toàn cho trẻ em hoàn toàn không tiếp xúc, khắc phục sự bất tiện và vướng víu của các thiết bị cảm biến đeo trên người.
  • Xây dựng thành công quy trình kết hợp giữa nhận diện đối tượng (MobileNet SSD) và phân tích tư thế cục bộ (MediaPipe BlazePose) trên luồng camera thời gian thực.
  • Cung cấp giao diện di động trực quan cho phép người dùng tùy biến vùng cấm linh hoạt bằng thao tác chạm trực tiếp trên video stream.

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

Hạn chế được ghi nhận

  • Hệ thống mới chỉ hỗ trợ thu nhận và xử lý tín hiệu từ một camera IP đơn lẻ, chưa hỗ trợ hệ thống đa camera (multi-camera) để bao quát toàn bộ ngôi nhà.
  • Độ chính xác phụ thuộc chặt chẽ vào độ phân giải của camera và điều kiện ánh sáng môi trường; khả năng nhận diện suy giảm khi đối tượng bị che khuất hoặc trong môi trường thiếu sáng.
  • Yêu cầu máy tính trung tâm phải có năng lực tính toán xử lý hình ảnh đủ tốt; chưa thể chạy độc lập trực tiếp toàn bộ mô hình AI trên thiết bị di động hay phần cứng nhúng tại biên.
  • Tỷ lệ nhận diện các tình huống nguy hiểm còn giới hạn ở mức dưới 85%, vẫn xảy ra các trường hợp nhận diện sai trong các tư thế phức tạp.

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

  • Mở rộng hệ thống để hỗ trợ tích hợp và đồng bộ nhiều camera đồng thời.
  • Nghiên cứu tối ưu hóa thuật toán để nâng cao độ chính xác nhận diện trong điều kiện ánh sáng yếu và vật cản phức tạp.
  • Tối ưu hóa mô hình AI để giảm tải phần cứng, hướng tới triển khai trực tiếp trên các vi điều khiển/thiết bị nhúng hoặc tích hợp hoàn toàn trong ứng dụng di động.

Giá trị tham khảo

Đồ án là tài liệu tham khảo thực tiễn cho sinh viên và kỹ sư thuộc các ngành Công nghệ Kỹ thuật Máy tính, Kỹ thuật Điện tử – Viễn thông, Công nghệ Thông tin và Hệ thống Nhúng:

  • Phần kiến trúc lý thuyết (Chương 2): Cung cấp tài liệu tổng hợp về cách ghép nối các tầng trích xuất đặc trưng của MobileNet-v1 vào kiến trúc mạng SSD, cũng như cơ chế hoạt động của mô hình BlazePose trong MediaPipe.
  • Phần thiết kế và thuật toán (Chương 3): Cung cấp giải pháp triển khai thực tế thuật toán Ray Casting trong bài toán khoanh vùng hình học trên video và phương pháp giao tiếp thời gian thực giữa Python - Firebase Realtime Database - Android Studio (CustomView trên VideoView).

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

1. Đồ án sử dụng phương pháp nào để xác định đối tượng đi vào vùng cấm?
Tác giả sử dụng Phương pháp 2: xác định điểm trung tâm $E$ bằng cách nối hai đường chéo $A-D$ và $B-C$ của khung bao đối tượng, sau đó áp dụng thuật toán Ray Casting để kiểm tra điểm $E$ có nằm trong đa giác vùng cấm hay không. Nếu số giao điểm giữa tia bắn ra từ điểm $E$ và các cạnh đa giác là số lẻ, đối tượng được xác định đã đi vào vùng cấm.

2. Mô hình MobileNet SSD trong đề tài kết nối các tầng nào của MobileNet với mạng SSD?
Trong SSD framework, tầng 12 của MobileNet (tầng nhân chập theo chiều sâu với bộ lọc $1 \times 1 \times 512 \times 512$) được kết nối với SSD để tạo feature map có độ sâu 512, đồng thời tầng 14 (tầng nhân chập điểm cuối cùng) được kết nối với SSD để tạo feature map độ sâu 1024. Việc kết hợp này giúp SSD nhận được cả đặc trưng mức trung bình và đặc trưng mức cao.

3. Mô hình BlazePose trong MediaPipe trích xuất bao nhiêu điểm mốc và bao gồm những thông số gì?
Mô hình BlazePose trích xuất 33 điểm mốc (landmarks) trên cơ thể người. Mỗi điểm mốc bao gồm 3 thông số tọa độ: $x, y$ (tọa độ không gian đại diện cho chiều rộng và chiều cao ảnh) và $z$ (biểu diễn độ sâu của điểm mốc so với điểm mốc ở hông).

4. Cơ chế đồng bộ dữ liệu cảnh báo giữa máy tính xử lý và ứng dụng Android được thực hiện như thế nào?
Dữ liệu được đồng bộ thông qua Firebase Realtime Database. Người dùng vẽ 4 điểm vùng cấm trên ứng dụng Android để gửi tọa độ lên Firebase; chương trình Python trên máy tính đọc tọa độ này để thiết lập vùng giám sát. Khi phát hiện té ngã hoặc đi vào vùng cấm, chương trình Python cập nhật biến signal = "1" lên Firebase, ứng dụng di động lắng nghe sự thay đổi này để phát thông báo cảnh báo cho người dùng.

5. Độ chính xác phát hiện nguy hiểm của hệ thống đạt mức bao nhiêu và gặp khó khăn trong những điều kiện nào?
Theo kết quả thử nghiệm trong báo cáo, hệ thống đạt độ chính xác phát hiện các tình huống nguy hiểm ở mức dưới 85% ($< 85%$). Hệ thống gặp khó khăn và có thể nhận diện sai trong các điều kiện môi trường thiếu sáng hoặc khi đối tượng bị đồ vật trong nhà che khuất một phần cơ thể.

Kết luận

Đồ án "Thiết kế hệ thống giám sát trẻ em thông qua camera" của sinh viên Đào Minh Trà và Tạ Ngọc Minh đã xây dựng thành công giải pháp giám sát an toàn không tiếp xúc cho trẻ nhỏ bằng cách kết hợp mô hình nhận diện MobileNet SSD, thư viện MediaPipe BlazePose và thuật toán Ray Casting. Hệ thống tích hợp đồng bộ giữa camera IP (RTSP), máy tính xử lý trung tâm (Python), cơ sở dữ liệu thời gian thực (Firebase) và ứng dụng di động (Android), cho phép người dùng tùy biến vùng cấm và nhận cảnh báo khi trẻ té ngã hoặc đi vào khu vực nguy hiểm với độ chính xác đạt dưới 85%. Mặc dù còn hạn chế về xử lý đơn camera và độ nhạy trong môi trường thiếu sáng, nghiên cứu đã chứng minh tính khả thi của việc ứng dụng thị giác máy tính trong giám sát an toàn gia đình và tạo nền tảng cho các hướng phát triển nhúng biên đa camera tiếp theo.