Hệ thống gồm bốn khối chính: nhận và xử lý hình ảnh từ camera, cơ sở dữ liệu sử dụng Firebase, xử lý trung tâm để phân tích các tình huống như trẻ đi vào vùng cấm hoặc bị té ngã và ứng d
GIỚI THIỆU
GIỚI THIỆU
Trẻ em, với sự tò mò và hiếu động tự nhiên, thường thích khám phá thế giới xung quanh một mình Tuy nhiên, việc này có thể tiềm ẩn nhiều nguy hiểm mà bố mẹ không nhận ra kịp thời, dẫn đến những hậu quả đáng tiếc.
Hình ảnh trẻ nhỏ chơi một mình trong nhà có thể dẫn đến những tình huống nguy hiểm, từ việc trẻ bị mất tích đến tai nạn bất ngờ Do đó, phụ huynh cần áp dụng mô hình giám sát hiệu quả Mặc dù đã có nghiên cứu về thiết bị cảnh báo té ngã, những thiết bị này vẫn gặp phải một số hạn chế, như việc trẻ phải đeo thiết bị, gây bất tiện trong hoạt động vui chơi hàng ngày Cần thiết phải phát triển các giải pháp cải tiến để khắc phục những bất tiện này, nhằm tăng cường sự thoải mái và tự do cho trẻ nhỏ khi sử dụng thiết bị giám sát.
Sử dụng các thiết bị điện tử như camera giám sát để theo dõi trẻ khi chơi một mình là một biện pháp hữu hiệu Bên cạnh đó, việc giáo dục trẻ em về những nguy cơ tiềm ẩn và cách ứng phó với chúng cũng đóng vai trò quan trọng trong việc bảo vệ sự an toàn của trẻ.
Mô hình giám sát hiện đại cung cấp giải pháp hiệu quả và linh hoạt để bảo vệ trẻ em khi chơi một mình Người dùng có thể dễ dàng vẽ các vùng cảnh báo trên màn hình, và khi trẻ em bước vào những khu vực này, hệ thống sẽ tự động gửi thông báo đến điện thoại của người giám sát.
Mô hình không chỉ cảnh báo khi trẻ em tiếp cận vùng nguy hiểm mà còn thông báo ngay khi trẻ té ngã Điều này giúp người lớn phản ứng kịp thời và cung cấp sự hỗ trợ cần thiết, từ đó giảm thiểu nguy cơ tai nạn và thương tích cho trẻ.
Trong thời đại công nghệ hiện nay, việc sử dụng công nghệ thông minh như mô hình giám sát là giải pháp thiết yếu để bảo vệ an toàn cho trẻ em Tuy nhiên, sự quan tâm và chú ý từ người lớn vẫn là yếu tố quan trọng nhất trong việc đảm bảo sự an toàn cho trẻ.
MỤC TIÊU ĐỀ TÀI
- Mục tiêu của đề tài là xây dựng hệ thống giám sát an toàn của trẻ nhỏ trong gia đình
- 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
- 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ỏ
- Cung cấp khả năng trực tiếp camera thông quan ứng dụng di động.
GIỚI HẠN ĐỀ TÀI
Đề tài "Thiết kế hệ thống giám sát trẻ em thông qua camera" chỉ sử dụng một camera duy nhất để nhận diện Chất lượng hình ảnh của camera ảnh hưởng lớn đến khả năng nhận diện và xử lý hình ảnh Do đó, máy tính cần có khả năng xử lý hình ảnh tốt để đảm bảo hiệu quả của hệ thống.
PHƯƠNG PHÁP NGHIÊN CỨU
- Nghiên cứu và tìm hiểu hệ thống nhận diện đi vào vùng cảnh báo nguy hiểm
- Phân tích các giải thuật
- Thiết kế hệ thống nhận dạng đi vào vùng nguy hiểm
- Nghiên cứu vi điều khiển chịu trách nhiệm điều khiển các thiết bị, xử lý thông tin từ camera, truyền – nhận các thông số
- Tìm hiểu về thiết kế ứng dụng di động
- Phân tích và đánh giá hệ thống.
ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
- Nghiên cứu, đánh giá các thiết bị có trên thị trường
- Nghiên cứu các tình huống nguy hiểm và tác động của môi trường ảnh hưởng đến con người
- Nghiên cứu và phân tích các yếu tố ảnh hưởng đến chi phí doanh nghiệp
- Lựa chọn thuật toán và camera phù hợp
- Nghiên cứu huấn luyện, ứng dụng mô hình thị giác máy tính.
BỐ CỤC QUYỂN BÁO CÁO
Nội dung chính của đề tài được trình bày với 5 chương:
- CHƯƠNG 1 GIỚI THIỆU: Tìm hiểu khái quát về đề tài, mục tiêu, đối tượng, phương pháp và phạm vi nghiên cứu
- CHƯƠNG 2 CƠ SỞ LÝ THUYẾT: Tìm hiểu về các lý thuyết chính được thực hiện trong đề tài nghiên cứu
Trong chương 3, chúng tôi tiến hành thiết kế hệ thống bằng cách xây dựng sơ đồ khối tổng thể, phân tích các khối chức năng và mối liên hệ giữa chúng Chúng tôi cũng tạo lưu đồ giải thuật để mô tả quy trình hoạt động của hệ thống, đồng thời thiết kế chương trình chính và ứng dụng di động nhằm đáp ứng nhu cầu người dùng một cách hiệu quả.
- CHƯƠNG 4 KẾT QUẢ VÀ THẢO LUẬN: Trình bày kết quả đạt được của chương trình sau đó phân tích và đưa ra đánh giá
Chương 5 kết luận và hướng phát triển trình bày những kết quả đạt được của hệ thống so với mục tiêu ban đầu, đồng thời đề xuất các hướng đi mới cho sự phát triển trong tương lai.
CƠ SỞ LÝ THUYẾT
TÌM HIỂU VỀ THƯ VIỆN MÃ NGUỒN MỞ MEDIAPIPE
MediaPipe là thư viện mã nguồn mở của Google, cung cấp giải pháp máy học đa nền tảng và hiện đang ở giai đoạn Alpha Thư viện này hoàn toàn miễn phí, hỗ trợ trên nhiều hệ điều hành như Windows, Ubuntu và Mac, và có khả năng hoạt động ổn định trên hầu hết các cấu hình phần cứng phổ biến Việc cài đặt MediaPipe rất dễ dàng.
10 triển khai trên nhiều nền tảng khác nhau như Mobile (Android/ iOS), Desktop/ Cloud, Web và thiết bị IoT
Mã nguồn của dự án MediaPipe được công khai trên trang chủ, cho phép người dùng tải về và tùy chỉnh theo nhu cầu MediaPipe hiện có nhiều dự án ứng dụng quan trọng trong lĩnh vực thị giác máy tính, bao gồm phát hiện khuôn mặt, phân đoạn màu sắc, phát hiện đối tượng, mống mắt, tư thế, bàn tay và nhiều hơn nữa.
BlazePose là một mô hình nổi bật trong thư viện MediaPipe, được thiết kế để phân tích tư thế của con người Công cụ này đóng vai trò quan trọng trong các ứng dụng liên quan đến phát hiện và theo dõi tư thế, góp phần đáng kể vào lĩnh vực nghiên cứu này.
BlazePose bao gồm hai thành phần chính như sau:
Máy phát hiện tư thế (Pose Detector) là thành phần quan trọng trong việc xác định vùng chứa đối tượng trong khung hình ảnh Nó giúp xác định vị trí cơ thể và định vị các khu vực quan trọng như khuôn mặt, phục vụ cho việc phân tích tư thế và động tác.
Pose Tracker là một công cụ quan trọng trong việc theo dõi tư thế, có khả năng trích xuất các điểm keypoints thiết yếu từ vùng chứa đối tượng trong hình ảnh Nó dự đoán vị trí của đối tượng trong các khung hình tiếp theo, giúp duy trì việc theo dõi và phân tích tư thế một cách liên tục và ổn định.
Quy trình hoạt động của Pose Detector và Pose Tracker được mô tả chi tiết trong các phần 2.4.3 và 2.4.4 của tài liệu Pose Detector chủ yếu tập trung vào việc phát hiện và xác định vị trí cơ bản của đối tượng, trong khi Pose Tracker chuyên theo dõi và dự đoán vị trí của đối tượng qua các khung hình liên tiếp.
Hình 2.5 Sơ đồ theo dõi tư thế
2.2.3 Máy phát hiện tư thế - Pose Detector
Máy phát hiện tư thế (Pose Detector) trong BlazePose đóng vai trò quan trọng trong việc nâng cao hiệu suất nhận dạng, với mỗi thành phần chỉ sử dụng vài mili giây trên mỗi khung hình Tín hiệu mạnh nhất cho việc nhận dạng là khuôn mặt con người, nhờ vào các đặc điểm có độ tương phản cao và sự thay đổi nhỏ về ngoại hình Pose Detector được phát triển dựa trên mô hình BlazeFace, và khi mô hình xác định thành công khuôn mặt, nó sẽ dự đoán hai điểm ảo để mô tả trung tâm cơ thể Sau đó, người được xoay để đứng thẳng khi Pose Detector phát hiện thành công, giúp cải thiện độ chính xác trong việc nhận dạng và theo dõi tư thế cũng như động tác của người.
Hình 2.6 Vùng ROI của Model
Hình 2.7 Vùng ROI của model BalazePose khi xoay theo phương thẳng đứng
2.2.4 Máy theo dõi tư thế - Pose Tracker
Máy theo dõi tư thế (Pose Tracker) là công cụ quan trọng trong việc theo dõi và phân loại tư thế của con người qua các khung hình liên tiếp Nguyên tắc hoạt động của nó là xác định vị trí của người trong khung hình tiếp theo dựa trên các dự đoán trước đó, giúp giảm thiểu việc thực hiện lại quá trình phát hiện tư thế Pose Tracker bao gồm hai phần chính, đóng vai trò then chốt trong việc cải thiện độ chính xác và hiệu suất của quá trình theo dõi.
Phần Xác Định Vị Trí Các Điểm (Keypoints Detection) là quá trình xác định các điểm trên cơ thể người Trong giai đoạn này, bản đồ nhiệt (Heat maps) được áp dụng để ước lượng vị trí của các điểm, trong khi Offset maps giúp điều chỉnh vị trí một cách chính xác hơn.
Phần Hồi Quy Các Điểm (Keypoints Regression Part) là giai đoạn quan trọng, nơi các điểm keypoints được dự đoán dựa trên kết quả từ Phần Xác Định Vị Trí Các Điểm.
12 quá trình này, các đặc điểm được chia sẻ và sử dụng để huấn luyện mô hình, từ đó cải thiện độ chính xác của việc dự đoán
Kết quả từ Pose Tracker cung cấp vị trí chính xác của 33 điểm keypoints trên cơ thể, như mô tả trong hình 2.18 Điều này giúp hệ thống hiểu và theo dõi tư thế cũng như động tác của người dùng một cách chính xác và linh hoạt.
Hình 2.8 Quá trình huấn luyện mạng Pose Tracking
Mô hình điểm mốc tư thế trong MediaPipe Pose dự đoán vị trí của 33 điểm mốc trên cơ thể người với các thông số x, y và z Giá trị x và y tương ứng với tọa độ trên hình ảnh, trong khi thông số z biểu diễn độ sâu của các điểm mốc, cung cấp thông tin về vị trí 3D Việc xác định các điểm mốc này rất hữu ích trong việc phát hiện tư thế và động tác của người, như khi người cúi về phía trước hoặc ra phía sau Các giá trị x, y và z có thể được ứng dụng để phát hiện té ngã, cải thiện trải nghiệm trong thực tế ảo (VR) và tăng cường thực tế (AR) Bằng cách theo dõi sự thay đổi vị trí của các điểm mốc, hệ thống có khả năng phát hiện sự cố té ngã và gửi cảnh báo kịp thời, điều này rất quan trọng trong việc nhận diện đối tượng té ngã.
Hình 2.9 Các điểm landmark của Model BlazePose
2.2.6 Các thông số của Model Pose
Python hiện là ngôn ngữ phổ biến nhất trong lĩnh vực Machine Learning (ML), và vì lý do đó, các nhà nghiên cứu của Google đã phát triển thư viện Mediapipe với hỗ trợ Python API Chúng ta có thể dễ dàng sử dụng Mediapipe bằng cách import như một thư viện thông thường Một trong những mô hình quan trọng trong Mediapipe là BlazePose, với một số thông số quan trọng cần lưu ý, trong đó có static-image-mode (bool).
Tham số này xác định cách thức hoạt động của mô hình BlazePose, cho phép nó chạy trên từng khung hình riêng lẻ hoặc theo dõi liên tục các khung hình trong một luồng video.
Nếu static_image_mode là True mô hình sẽ xử lý từng khung hình như một hình ảnh tĩnh, không thực hiện theo dõi
Nếu `static_image_mode` được đặt là False, mô hình sẽ coi đầu vào là một luồng video và sẽ nỗ lực theo dõi các điểm chính giữa các khung hình nhằm nâng cao hiệu suất và độ chính xác Tham số `smooth-landmarks` (bool) cũng được sử dụng trong quá trình này.
THIẾT KẾ HỆ THỐNG GIÁM SÁT TRẺ EM THÔNG
YÊU CẦU CỦA HỆ THỐNG
Để phát triển một hệ thống giám sát an toàn cho trẻ em, cần đảm bảo hệ thống này đáp ứng các yêu cầu kỹ thuật nhất định.
- Hệ thống phát hiện và theo dõi trẻ em trong phạm vi camera nhìn thấy được
- Hệ thống nhận diện và phát cảnh báo đến người dùng thông qua ứng dụng di động
- Hệ thống cho phép người dùng vẽ được vùng cấm Khi trẻ đi vào cũng sẽ báo cho người dùng thông qua ứng dụng di động
- Phát triển ứng dụng di động với giao diện dễ sử dụng nhất có thể cho người dùng
3.1.2 Sơ đồ và chức năng từng khôi:
Sơ đồ có 5 khối và được miêu tả chi tiết ở hình 3.1:
Hình 3.1 Sơ đồ khối hệ thống
Chức năng của từng khối:
- Khối camera: Có chức năng đọc hình ảnh trực tiếp từ camera để gửi lên cơ sở dữ liệu
- Khối router và internet: Có chức năng giống như cầu nối để khối xử lý trung tâm và khối ứng dụng di động có thể giao tiếp với nhau
Khối máy tính có khả năng nhận diện sự té ngã của trẻ em và xử lý thông tin từ ứng dụng di động, xác định khu vực mà trẻ em đi vào trong vùng được chỉ định.
Khối ứng dụng di động cung cấp chức năng xem video trực tiếp từ camera, cho phép người dùng theo dõi tình hình của trẻ Ứng dụng còn có khả năng vẽ vùng cảnh báo và phát tín hiệu khi trẻ té ngã hoặc xâm nhập vào khu vực cấm.
3.1.3 Chức năng của hệ thống:
Hệ thống này chủ yếu được thiết kế để giám sát và bảo đảm an toàn cho trẻ em trong khu vực quản lý Các chức năng cụ thể của hệ thống bao gồm việc theo dõi hoạt động của trẻ, cảnh báo khi có nguy cơ và cung cấp thông tin cho phụ huynh để họ có thể yên tâm hơn về sự an toàn của con em mình.
Hệ thống phát hiện và theo dõi trẻ em sử dụng camera để xác định và giám sát vị trí của trẻ trong phạm vi quan sát Thuật toán nhận diện hình ảnh được áp dụng để nhận biết trẻ em và theo dõi chuyển động của họ một cách hiệu quả.
Hệ thống sử dụng công nghệ nhận diện để phát hiện trẻ em và đánh giá tình huống nguy hiểm Khi phát hiện có nguy cơ, hệ thống sẽ gửi cảnh báo đến người dùng qua ứng dụng di động.
Người dùng có thể sử dụng ứng dụng di động để vẽ vùng cấm trên bản đồ Hệ thống sẽ tự động phát hiện khi trẻ em đi vào những khu vực này và gửi cảnh báo đến người dùng ngay lập tức.
Ứng dụng di động được phát triển với giao diện thân thiện và dễ sử dụng, mang lại trải nghiệm tốt nhất cho người dùng Nó bao gồm các tính năng nổi bật như xem video trực tiếp, nhận thông báo, vẽ vùng cấm và tùy chỉnh các cài đặt theo nhu cầu.
KHỐI CAMERA
Nhóm nghiên cứu đã sử dụng camera IP, một loại camera có khả năng kết nối internet và truyền tải hình ảnh trực tiếp qua giao thức RTSP.
Khối tiếp nhận hình ảnh có nhiệm vụ đọc giá trị điểm ảnh từ môi trường, với các giá trị này thay đổi theo điều kiện ánh sáng khác nhau Chất lượng hình ảnh từ camera ảnh hưởng trực tiếp đến độ chính xác của hệ thống; hình ảnh rõ nét sẽ cải thiện khả năng hoạt động Trong quá trình vận hành, các frame ảnh liên tục được gửi từ camera đến khối phân tích xử lý để thực hiện tính toán và hiển thị.
Camera được sử dụng trong các hộ gia đình phụ thuộc vào loại camera sẵn có, nhưng nhóm thực hiện đề tài nhấn mạnh rằng cần chọn camera IP, có khả năng hoạt động độc lập khi có mạng internet.
KHỐI INTERNET
Nhóm thực hiện đề tài đã chọn sử dụng dịch vụ FireBase để thiết lập cơ sở dữ liệu do tính đơn giản và dễ sử dụng của nó Đặc biệt, người dùng không phải trả phí cho dịch vụ này, mang lại lợi ích kinh tế cho dự án.
Sơ đồ mô tả hoạt động của khối cơ sở dữ liệu cho thấy chương trình chính sử dụng Firebase để nhận điểm từ ứng dụng di động, đồng thời gửi tín hiệu khi đối tượng xâm nhập vùng cấm hoặc té ngã Ứng dụng di động cho phép người dùng vẽ các điểm trên khung ảnh và gửi tọa độ lên Firebase để thiết lập vùng cảnh báo Bên cạnh đó, ứng dụng cũng nhận tín hiệu khi đối tượng vào vùng cấm và gửi thông báo đến người dùng.
KHỐI MÁY TÍNH
Khối xử lý trung tâm có nhiệm vụ sau:
Mỗi khung hình ảnh từ camera sẽ được khối xử lý tiếp nhận và phân tích để xác định các vấn đề như việc có xâm nhập vào vùng cấm hay không, cũng như khả năng xảy ra tai nạn té ngã.
- Khi phát hiện đối tượng đi vào vùng cấm hoặc té ngã sẽ gửi thông báo lên FireBase
Đối với phát hiện đi vào vùng cấm:
Người dùng có thể vẽ ra khu vực cấm mà đối tượng không được phép vào Để nhận diện các đối tượng này, có hai phương pháp thực hiện.
Cách 1: Kiểm tra xem các điểm A, B, C, D có thuộc vùng X không Nếu cả 4 điểm thuộc vào vùng X thì mới gửi cảnh báo
Hình 3.3 Phương pháp thực hiện cách 1
Cách 2: Đầu tiên vẽ nối lần lượt A – D và B – C lại với nhau Chúng ta thu được 1 điểm trung tâm gọi là E Khi điểm E thuộc vùng X thì sẽ gửi cảnh báo
Hình 3.4 Phương pháp thực hiện cách 2
Việc kiểm tra điểm thuộc đa giác hay không nhóm thực hiện đề tài sử dụng thuật toán
Ray Casting là phương pháp xác định xem một điểm có nằm trong đa giác hay không bằng cách vẽ một số lượng tia nhất định từ điểm cần kiểm tra Nếu số điểm giao nhau giữa các tia và đa giác là số lẻ, điểm đó nằm trong đa giác; ngược lại, nếu số điểm giao nhau là số chẵn, điểm đó nằm ngoài đa giác.
Kết luận: Nhóm thực hiện đề tài sẽ chọn phương án xử lý tình huống đi vào vùng cấm theo cách thứ hai, vì khả năng xảy ra khi bốn điểm cùng nằm trong một vùng là rất thấp Đặc biệt, khi vùng cấm có hình dạng phức tạp, cách thứ hai được xem là phương án tối ưu nhất.
Đối với phát hiện té ngã:
Nhóm thực hiện sử dụng mã nguồn mở của “MediaPipe” đó chính là “MediaPipe Pose”
MediaPipe Pose: Cung cấp khả năng nhận diện và theo dõi các điểm khung xương
Trong video, việc phân tích các keypoints trên cơ thể con người giúp phát hiện khi một người té ngã Mô hình MediaPipe Pose được khởi tạo để nhận diện các keypoints, trong đó khung hình video được chuyển đổi sang định dạng RGB để đưa vào mô hình phân tích Các keypoints sau đó được vẽ trên khung hình, đồng thời kiểm tra sự thay đổi vị trí của các điểm chính như mũi Nếu có sự thay đổi lớn trong tọa độ y của điểm này và tốc độ thay đổi vượt quá ngưỡng xác định, hệ thống sẽ phát hiện được tình trạng té ngã.
20 giúp xác định khi một người té ngã dựa trên sự thay đổi vị trí và tốc độ của các keypoints trên cơ thể họ.
KHỐI ỨNG DỤNG DI ĐỘNG
Hệ thống giám sát trẻ em bằng camera cung cấp giải pháp an toàn cho việc theo dõi trẻ từ xa Ứng dụng di động đi kèm giúp việc giám sát trở nên dễ dàng và thuận tiện hơn cho phụ huynh Với giao diện thân thiện và dễ sử dụng, phụ huynh có thể dễ dàng truy cập và kiểm soát hệ thống Được phát triển trên nền tảng Android Studio và tích hợp Firebase, ứng dụng cung cấp các tính năng quan trọng cùng cơ chế quản lý người dùng và xác thực đáng tin cậy.
Android Studio là môi trường phát triển tích hợp chính thức của Google dành cho ứng dụng Android Những lý do chính để sử dụng Android Studio bao gồm tính năng mạnh mẽ, hỗ trợ lập trình viên với công cụ gỡ lỗi, và khả năng tích hợp dễ dàng với các dịch vụ Google.
Android Studio hỗ trợ cả ngôn ngữ lập trình Kotlin và Java, giúp lập trình viên có thể lựa chọn ngôn ngữ phù hợp với nhu cầu và sở thích cá nhân của họ.
Công cụ mạnh mẽ: Đây là một công cụ mạnh mẽ để quản lý dự án và thực hiện các hoạt động Debug và Profiling
Android Studio cung cấp một Emulator tích hợp mạnh mẽ, cho phép người dùng kiểm tra và thử nghiệm ứng dụng trên nhiều thiết bị ảo khác nhau.
Hỗ trợ Firebase cho phép tích hợp mạnh mẽ với các dịch vụ như Firebase Authentication và Realtime Database, giúp nâng cao tính bảo mật và khả năng mở rộng của hệ thống.
Firebase là một nền tảng phát triển ứng dụng di động của Google, cung cấp các dịch vụ quản lý người dùng, lưu trữ dữ liệu và phân tích
Firebase Authentication: Cung cấp một cơ chế đáng tin cậy để quản lý người dùng và xác thực họ khi truy cập vào ứng dụng
Firebase Realtime Database là giải pháp lý tưởng để lưu trữ dữ liệu ứng dụng theo thời gian thực, giúp đồng bộ hóa thông tin một cách nhanh chóng và đảm bảo dữ liệu luôn được cập nhật liên tục và nhất quán.
3.5.2 Tính năng của ứng dụng Đăng nhập và Đăng ký
Người dùng có thể đăng nhập vào hệ thống bằng cách cung cấp thông tin xác thực của họ
Người dùng có thể xem video trực tiếp từ các camera đã được cài đặt tại nhà Thay đổi khu vựa giám sát
Ứng dụng cho phép người dùng xác định và đánh dấu các vị trí nguy hiểm bằng cách chạm vào những điểm trên màn hình Những điểm này sẽ được nối lại, tạo thành khu vực nguy hiểm được ghi nhận.
Thông báo và cảnh báo
Thông báo người dùng khi có hoạt động bất thường được phát hiện trong phạm vi giám sát
LƯU ĐỒ GIẢI THUẬT
3.6.1 Lưu đồ giải thuật chương trình chính
Sau khi xác định các chức năng chính của đề tài, nhóm thực hiện đã xây dựng lưu đồ giải thuật chính cho chương trình, được thể hiện qua hình 3.5.
Hình 3.5 Lưu đồ giải thuật chính của chương trình
Chương trình này được phát triển bằng ngôn ngữ Python, sử dụng các thư viện hỗ trợ để nhận diện đối tượng xâm nhập vào vùng cấm và phát hiện sự kiện té ngã Người dùng có thể thiết lập ứng dụng trên máy tính để quản lý các sự kiện liên quan đến việc đối tượng vi phạm vùng cấm hoặc gặp sự cố té ngã Khi khởi động, chương trình sẽ tiến hành thiết lập và kết nối với các chức năng cần thiết.
Kết nối camera với mạng WiFi cho phép ứng dụng trên máy tính giao tiếp qua giao thức RTSP Người dùng có thể thiết lập vùng cấm thông qua ứng dụng di động, và tọa độ của vùng cấm sẽ được gửi đến chương trình Chương trình sẽ nhận diện đối tượng khi có tọa độ từ ứng dụng; nếu không, nó sẽ hoạt động độc lập Bên cạnh việc nhận diện đối tượng trong vùng cấm, chương trình cũng thực hiện nhận diện khi có sự kiện té ngã Nếu không phát hiện té ngã, chương trình sẽ tiếp tục theo dõi Khi phát hiện đối tượng bị té ngã, chương trình sẽ ngay lập tức gửi thông báo đến người dùng qua ứng dụng di động.
3.6.2 Lưu đồ giải thuật của ứng dụng android
Hình 3.6 Lưu đồ của chương trình chính
Khi ứng dụng khởi động, hệ thống sẽ khởi tạo các biến và kiểm tra trạng thái đăng nhập Nếu người dùng đã đăng nhập trước đó, ứng dụng sẽ chuyển sang chương trình con để thiết lập camera quan sát Ngược lại, nếu chưa đăng nhập, người dùng sẽ được hướng dẫn qua các chương trình con để đăng ký và đăng nhập Tất cả thông tin đăng ký và đăng nhập sẽ được lưu trữ trên Firebase nhằm đảm bảo an toàn cho người sử dụng.
Hình 3.7 Lưu đồ chương trình con đăng ký người dùng
Sau khi nhấn nút đăng ký, người dùng sẽ được chuyển đến màn hình đăng ký để hoàn tất thông tin cần thiết Chương trình sẽ kiểm tra tính đầy đủ của thông tin trước khi cho phép nhấn nút đăng ký Sau khi quá trình đăng ký thành công, người dùng sẽ được chuyển đến màn hình đăng nhập.
Hình 3.8 Lưu đồ chương trình con đăng nhập người dùng
Chương trình con sẽ kiểm tra thông tin đăng nhập người dùng trên Firebase sau khi khởi tạo Nếu thông tin đã được lưu trước đó, chương trình sẽ tự động đăng nhập và thiết lập camera IP Nếu chưa có dữ liệu, người dùng sẽ được yêu cầu đăng nhập.
Hình 3.9 Lưu đồ chương trình con thiếp lập IP camera
Chương trình con thiết lập IP camera khởi tạo biến Firebase để thông báo khi nhận tín hiệu từ ứng dụng liên kết với Firebase Realtime Khi có tín hiệu nguy hiểm, Firebase Realtime sẽ nâng tín hiệu lên “1” và ứng dụng sẽ gửi thông báo cho người dùng để xử lý kịp thời Để xem hình ảnh từ camera, người dùng cần nhập thông tin camera, sau đó ứng dụng sẽ kết nối và hiển thị hình ảnh cho người dùng.
Hình 3.10 Lưu đồ chương trình con hiển thị hình ảnh
Chương trình con hiển thị hình ảnh sẽ khởi tạo các giá trị cần thiết để hiển thị hình ảnh từ camera IP Nếu không lấy được URL kết nối với camera, chương trình sẽ thông báo lỗi và quay trở lại màn hình thiết lập.
Hình 3.13 Lưu đồ chương trình con vẽ khung trên video
Chương trình con vẽ khung trên video khởi tạo CustomView để vẽ khung trên VideoView hiển thị hình ảnh Camera IP Nó kiểm tra xem người dùng có chạm vào video không; nếu có, sẽ vẽ một chấm đỏ tại điểm chạm Khi đủ 4 điểm, chương trình sẽ vẽ một hình tứ giác và gửi tọa độ lên Firebase để lấy dữ liệu từ ứng dụng di động.
KẾT QUẢ
KẾT QUẢ THỰC HIỆN MÔ HÌNH
Để nâng cao trải nghiệm người dùng, nhóm thực hiện đề tài đã phát triển một ứng dụng di động, cho phép người dùng dễ dàng sử dụng hệ thống và nhận thông báo ngay khi xảy ra sự cố như té ngã hoặc khi vào khu vực cảnh báo.
Hình 4.1 Giao diện đăng kí, đăng nhập người dùng mới của hệ thống
Quá trình đăng ký yêu cầu người dùng cung cấp mật khẩu và email để lưu trữ thông tin trên Firebase Sau khi hoàn tất đăng ký, ứng dụng sẽ tự động chuyển sang màn hình đăng nhập tài khoản Khi quá trình đăng nhập hoàn tất, người dùng sẽ được xác thực và có quyền truy cập vào hệ thống Giao diện chính của hệ thống cho phép người dùng thiết lập thông số của camera IP để quan sát và theo dõi hiệu quả.
Hình 4.2 Giao diện thiết lập thông số của IP camera
Giao diện thiết lập thông số của hệ thống cho phép người dùng cấu hình các thông tin cần thiết cho camera IP, bao gồm việc kết nối thiết bị thông qua địa chỉ IP và mật khẩu của camera.
Hình 4.3 Hình sau khi nhập IP và Password
Sau khi nhập IP và mật khẩu của camera, ứng dụng cho phép người dùng xem video từ camera qua khung màu xanh lá, đồng thời cho phép thiết lập vùng cảnh báo bằng cách chấm lên khu vực đó Nút “Reset” giúp xóa vùng cảnh báo hiện tại và vẽ lại vùng mới Nếu không muốn thiết lập vùng cảnh báo, người dùng có thể nhấn nút “Reset”, lúc này ứng dụng sẽ hoạt động như một camera thông thường và vùng cấm có thể thay đổi trong suốt thời gian hoạt động của camera.
Về phía máy tính, chương trình cũng yêu cầu người dùng nhập IP và Password để có thể xem video từ camera
Hình 4.4 Giao diện đăng nhập từ máy tính
Giống như trên ứng dụng di động, hệ thống yêu cầu người dùng nhập địa chỉ IP và mật khẩu của camera để lấy video và bắt đầu quá trình nhận dạng Sau khi đăng nhập thành công trên cả camera và điện thoại, hệ thống sẽ tiến hành nhận dạng.
Hình 4.5 Kết quả hình ảnh hiển thị qua camera ở điện thoại và máy tính
Màn hình ứng dụng di động và máy tính hiển thị hình ảnh từ camera, với máy tính có thêm tính năng nhận dạng qua khung xanh trên ảnh.
Hình 4.6 Hình ảnh khi không có vùng cảnh báo
Khi không có vùng cảnh báo, hệ thống nhận diện được đối tượng và vẽ khung xương lên đối tượng để thực thi hệ thống cảnh báo té ngã
Hình 4.7 Hình ảnh sau khi người dùng vẽ vùng cảnh báo
Hệ thống cho phép người dùng vẽ vùng cảnh báo, và khi vùng cảnh báo được xác định, hệ thống sẽ kiểm tra xem có đối tượng nào xâm nhập vào khu vực này hay không Nếu không có đối tượng nào đi vào vùng cảnh báo hoặc nếu không nhận diện được vùng cảnh báo, hệ thống sẽ hoạt động như một camera thông thường.
Hình 4.8 Sau khi đối tượng đi vào vùng cấm
Khi đối tượng xâm nhập vào vùng cấm, màn hình máy tính sẽ hiển thị thông báo “Warning!” tại vị trí trung tâm Đồng thời, ứng dụng di động cũng sẽ gửi thông báo đến người dùng về việc đối tượng đã vào vùng cấm, như mô tả trong hình 4.3.
Hệ thống không chỉ phát hiện đối tượng xâm nhập vào vùng cấm mà còn giám sát khả năng té ngã của họ Việc nhận dạng té ngã sẽ luôn được kích hoạt, đảm bảo giám sát liên tục mỗi khi đối tượng xuất hiện trong khung hình.
Hình 4.4 và hình 4.5 cho thấy khi đối tượng thực hiện những hoạt động bình thường trong ngày thì hệ thống giống như một chiếc camera quan sát thông thường
Hình 4.11 Mô phỏng tối tượng bị té, ngã
Khi đối tượng xảy ra té ngã, khung ảnh sẽ in ra dòng chữ “Fall Detect” đồng thời gửi thông báo đến ứng dụng di động của người dùng
Hình 4.12 Nhận diện đối tượng ở điều kiện thiếu sáng
Hình 4.13 Đối tượng đi vào vùng cấm ở điều kiện thiếu sáng
Hình 4.14 Đối tượng ngồi ở điều kiện thiếu sáng
Hình 4.12, hình 4.13, hình 4.14 cho thấy ở điều kiện không thuận lợi (thiếu sáng) thì camera vẫn nhận diện được đối tượng.
ĐÁNH GIÁ MÔ HÌNH
Hệ thống giám sát trẻ em qua camera cho phép người dùng sử dụng camera như một thiết bị giám sát hiệu quả Hệ thống này có khả năng nhận diện đối tượng và phát hiện nguy hiểm bằng cách theo dõi xem có ai xâm nhập vào khu vực cấm hay không.
4.2.1 Độ chính xác của hệ thống
Hệ thống giám sát trẻ em qua camera được thiết kế để đảm bảo an toàn cho trẻ trong gia đình, với khả năng nhận diện và theo dõi chính xác Trong thử nghiệm, hệ thống phát hiện hiệu quả các tình huống nguy hiểm như trẻ vào vùng cấm hoặc bị té ngã Độ chính xác của hệ thống phụ thuộc vào chất lượng hình ảnh và điều kiện ánh sáng, với các thuật toán MobileNets SSD và MediaPipe Pose cho tỷ lệ chính xác cao, giúp giảm thiểu cảnh báo giả Tuy nhiên, hệ thống vẫn gặp một số khiếm khuyết do các yếu tố background có thể ảnh hưởng đến độ chính xác, như được thể hiện trong bảng 4.1.
Bảng 4.1 Giá trị kiểm nghiệm hệ thống
Loại Điều kiện Tư thế Số lần thực hiện Số lần đúng Độ chính xác
Chạy 20 17 85% Đi vào vùng cấm
Hệ thống thực tế vẫn gặp phải một số yếu tố ảnh hưởng đến khả năng nhận diện, như được thể hiện trong hình 4.15 và hình 4.16.
Hình 4.15 Đối tượng bị che khuất
Hình 4.16 Hệ thống nhận diện sai
Hệ thống nhận diện té ngã gặp vấn đề khi đối tượng bị che khuất, như trong hình 4.10 Việc hệ thống dựa vào điểm mũi để xác định té ngã khiến cho khi đầu của đối tượng bị che khuất, khả năng nhận diện té ngã không hoạt động chính xác.
Tuy nhiên với những camera hiện đại ngày nay, việc ánh sáng yếu không làm ảnh hưởng đến khả năng nhận diện của hệ thống
4.2.2 Tính linh hoạt và dễ sử dụng
Hệ thống cho phép người dùng vẽ vùng cấm tùy ý trên ứng dụng di động, mang lại sự linh hoạt cao trong việc giám sát con cái Giao diện ứng dụng được thiết kế đơn giản và thân thiện, giúp người dùng dễ dàng thao tác mà không cần kiến thức công nghệ chuyên sâu Tính năng xem video trực tiếp từ camera và nhận cảnh báo tức thì qua ứng dụng giúp phụ huynh theo dõi tình hình của trẻ mọi lúc, mọi nơi.
4.2.3 Hiệu suất và độ tin cậy
Trong quá trình thử nghiệm, hệ thống đã thể hiện hiệu suất ổn định và độ tin cậy cao, đạt dưới 85% ngay cả trong điều kiện bất lợi như thiếu sáng Việc áp dụng dịch vụ Firebase cho cơ sở dữ liệu và xác thực người dùng đã đảm bảo an toàn và bảo mật cho thông tin cá nhân Tuy nhiên, để hệ thống hoạt động hiệu quả, máy tính cần có khả năng xử lý hình ảnh tốt và kết nối internet ổn định, đặc biệt là với camera IP.
Hệ thống giám sát trẻ em qua camera đã cho thấy hiệu quả tích cực trong việc bảo đảm an toàn cho trẻ Với độ chính xác cao, tính linh hoạt và dễ sử dụng, hệ thống này trở thành công cụ hữu ích cho phụ huynh trong việc theo dõi và bảo vệ con cái Tuy nhiên, cần tiếp tục nghiên cứu và phát triển để khắc phục những hạn chế hiện tại và mở rộng ứng dụng của hệ thống.