Giới thiệu dự án

Bối cảnh và thực trạng ngành

Theo báo cáo từ IoT Analytics, năm 2020 đánh dấu bước ngoặt khi số lượng thiết bị Internet vạn vật (IoT) đạt 11,7 tỷ kết nối (chiếm 54% tổng thiết bị toàn cầu) và dự kiến vượt mốc 30 tỷ thiết bị vào năm 2025 với tốc độ tăng trưởng kép hàng năm (CAGR) đạt 13%. Quy mô thị trường IoT toàn cầu được dự báo mở rộng từ 151 tỷ USD (2018) lên 1.567 tỷ USD vào năm 2025.

Sự bùng nổ của khối lượng dữ liệu—từ 220 Zettabytes (2016) lên hơn 850 Zettabytes—đã tạo áp lực khổng lồ lên hạ tầng Điện toán đám mây (Cloud Computing) truyền thống. Trong các kịch bản giám sát y tế, kiểm soát dịch tễ (tiêu biểu như đại dịch COVID-19) và thị giác máy tính thời gian thực:

  • Băng thông mạng WAN bị quá tải do truyền tải luồng video liên tục (RTSP streams).
  • Độ trễ phản hồi (latency) cao (thường > 500ms), không thể đưa ra cảnh báo tức thời.
  • Rủi ro an ninh và quyền riêng tư khi dữ liệu sinh trắc học cá nhân chưa qua xử lý bị truyền tải trực tiếp lên trung tâm dữ liệu công cộng.

Tuyên bố vấn đề (Problem Statement)

Các hệ thống giám sát dịch tễ thông thường phụ thuộc hoàn toàn vào máy chủ đám mây tập trung, dẫn đến hiện tượng "nghẽn cổ chai", chi phí vận hành mạng đắt đỏ và độ tin cậy thấp khi mất kết nối Internet. Đề tài giải quyết bài toán: Xây dựng kiến trúc tính toán cận biên (Edge Computing) kết hợp ảo hóa container gọn nhẹ và trí tuệ nhân tạo (AI) nhằm phân tích luồng video thông minh tại rìa mạng, tự động hóa quy trình triển khai bằng DevOps/MLOps, đảm bảo thời gian phản hồi mili-giây và bảo mật dữ liệu sinh trắc học.

Mục tiêu dự án

  1. Thiết kế kiến trúc phân tán Edge-to-Cloud: Xây dựng cụm máy chủ biên gọn nhẹ dựa trên K3s và hạ tầng đám mây AWS EC2.
  2. Triển khai mô hình AI thị giác máy tính tại biên:
    • Nhận diện đeo khẩu trang (Face Mask Detection) và nhận diện danh tính (Face Recognition).
    • Đo lường khoảng cách giãn cách xã hội (Social Distancing) thông qua phép biến đổi không gian hình chiếu 2D (Bird's-Eye View).
  3. Tự động hóa vận hành với DevOps, IaC và MLOps: Đồng bộ mô hình từ khâu huấn luyện, theo dõi phiên bản dữ liệu/mô hình đến khâu cập nhật container tự động không gián đoạn dịch vụ (Zero-downtime Deployment).
  4. Đánh giá định lượng hiệu năng: Đo lường thông số phần cứng (CPU, GPU, RAM), độ trễ phản hồi, độ chính xác mô hình ($mAP$, $F1\text{-score}$) trên các kiến trúc phần cứng x86 và ARM.

Phương pháp tiếp cận và kết quả kỳ vọng

  • Phương pháp tiếp cận: Ứng dụng mô hình tính toán cận biên đa tầng (Multi-tier Edge Computing). Xử lý dữ liệu hình ảnh nặng tại thiết bị cận biên (NVIDIA Jetson Nano, Raspberry Pi 3B+), chỉ gửi siêu dữ liệu (metadata) và cảnh báo vi phạm về Cloud Backend (NodeJS/Express, MongoDB/MySQL) để hiển thị trên Central Dashboard (ReactJS).
  • Kết quả kỳ vọng:
    • Giảm tải băng thông truyền thông mạng trên $85%$.
    • Độ trễ phản hồi tại biên $< 100\text{ms}$.
    • Tốc độ xử lý video đạt $10 - 15\text{ FPS}$ trên phần cứng nhúng GPU-accelerated.
    • Khả năng triển khai hạ tầng tự động $100%$ thông qua mã nguồn (Infrastructure as Code - IaC).

Phạm vi và giới hạn

  • Phạm vi: Môi trường giám sát trong nhà hoặc khu vực kiểm soát ra vào (văn phòng, bệnh viện, trường học).
  • Giới hạn kỹ thuật: Độ phân giải camera thử nghiệm (Raspberry Pi Camera V2 8MP) bị giới hạn góc nhìn hẹp; mô hình AI phụ thuộc vào điều kiện ánh sáng và góc nghiêng khuôn mặt không quá $\pm 45^\circ$.

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

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

Tiêu chí Cloud Computing thuần túy Edge Computing độc lập Giải pháp Hybrid Edge-Cloud đề xuất
Độ trễ phản hồi Cao ($300\text{ms} - 1200\text{ms}$) Cực thấp ($20\text{ms} - 50\text{ms}$) Tối ưu: Cảnh báo biên ($< 50\text{ms}$), Đồng bộ Cloud ($< 200\text{ms}$)
Tiêu thụ băng thông Rất lớn (Truyền video raw) Không tốn băng thông WAN Tiết kiệm: Chỉ gửi metadata JSON
Bảo mật dữ liệu Nguy cơ rò rỉ dữ liệu video Cục bộ, an toàn cao An toàn: Dữ liệu khuôn mặt mã hóa tại biên
Khả năng quản trị Tập trung, dễ quản lý Phân mảnh, khó cập nhật Tự động hóa qua K3s Cluster + GitOps
Tính sẵn sàng Tê liệt khi mất mạng Vẫn chạy độc lập Vẫn xử lý AI tại biên khi đứt kết nối Cloud

Yêu cầu người dùng theo mô hình MoSCoW

  • Must have: Phát hiện không đeo khẩu trang / đeo sai quy cách; đo khoảng cách giữa người với người chuẩn xác ($< 2\text{m}$); cảnh báo vi phạm trong $< 1\text{s}$; Dashboard quản trị tập trung.
  • Should have: Tự động nhận diện danh tính nhân viên khi không đeo khẩu trang; tự động cập nhật container mới bằng GitOps/Keel; theo dõi lịch sử huấn luyện bằng MLOps.
  • Could have: Tích hợp cảm biến đo thân nhiệt hồng ngoại; điều chỉnh ngưỡng khoảng cách linh hoạt qua web UI.
  • Won't have (lần này): Nhận diện khuôn mặt dưới điều kiện che khuất hoàn toàn; theo dõi lộ trình di chuyển đa camera (Multi-camera Re-identification).

Thiết kế hệ thống

+-----------------------------------------------------------------------------------+
|                              CLOUD LAYER (AWS EC2)                                |
|  +--------------------+  +----------------------+  +---------------------------+  |
|  | Central Frontend   |  | Central Backend API  |  | Database Layer            |  |
|  | (ReactJS v18.0)    |  | (ExpressJS v4.18)    |  | (MongoDB v5.0 / MySQL 8.0)|  |
|  +--------------------+  +----------------------+  +---------------------------+  |
|            ^                        ^                            ^                |
+------------|------------------------|----------------------------|----------------+
             | RESTful API / WebSocket| (Metadata & Event Logs)    |
+------------v------------------------v----------------------------v----------------+
|                           EDGE CLUSTER LAYER (K3s)                                |
|  +-------------------------------------+  +------------------------------------+  |
|  | Edge Ingress & Gateway Service       |  | Keel Auto-Deploy Operator          |  |
|  +-------------------------------------+  +------------------------------------+  |
|                                                                                   |
|  +-----------------------------------+    +------------------------------------+  |
|  | SDNode: Social Distancing Worker  |    | FMNode: Face Mask & Recognition    |  |
|  | - YOLOX-nano (ONNX Runtime)       |    | - YOLOX Face / MobileNetV2 Mask    |  |
|  | - Perspective Transform (OpenCV)  |    | - SFace Feature Extractor + SVM    |  |
|  +-----------------------------------+    +------------------------------------+  |
|                    ^                                        ^                     |
+--------------------|----------------------------------------|---------------------+
                     | V4L2 / CSI Video Stream                |
+--------------------v----------------------------------------v---------------------+
|                           END DEVICES & HARDWARE                                  |
|  - Edge Node 1: NVIDIA Jetson Nano Developer Kit (4GB 128-core Maxwell GPU)       |
|  - Edge Node 2: Raspberry Pi 3 Model B/B+ (ARM Cortex-A53)                         |
|  - Camera: Raspberry Pi Camera Module V2 (Sony IMX219 8MP) / USB Webcams          |
+-----------------------------------------------------------------------------------+

Technology Stack

Thành phần Công nghệ / Framework Phiên bản Vai trò kỹ thuật
Edge Compute NVIDIA Jetson Nano / RPi 3B+ Ubuntu 18.04/20.04 Chạy inference AI và điều phối cluster
Container Engine Containerd / Docker Engine v1.6.8 / v20.10.14 Môi trường đóng gói dịch vụ nhẹ
Edge Orchestration K3s (Lightweight Kubernetes) v1.24.4+k3s1 Quản trị Pods, Service, cân bằng tải tại biên
Infrastructure as Code Terraform & Ansible v1.1.9 / v2.9.27 Cấu hình máy chủ AWS và triển khai tự động K3s
MLOps Pipeline DVC, Weights & Biases, Hydra v2.10 / v0.12 / v1.1 Quản lý vòng đời dữ liệu, config và log model
Computer Vision OpenCV, ONNX Runtime v4.5.5 / v1.11.1 Tiền xử lý ảnh, tối ưu hóa suy luận mô hình
AI Models YOLOX-nano, SFace, Scikit-Learn SVM PyTorch v1.10.2 Object Detection, Face Embedding, Classifier
Backend & Frontend Node.js / Express, React.js v16.14 LTS / v18.2 REST API, WebSocket server, giao diện Web
Database MongoDB & MySQL v5.0.6 / v8.0.28 Lưu trữ phi cấu trúc log và quan hệ người dùng

Methodology

  • Mô hình phát triển: Áp dụng GitOps và Agile Sprint 2 tuần/chu kỳ.
  • Quản lý rủi ro:
    • Rủi ro mất kết nối Cloud: Edge Nodes trang bị cơ chế hàng đợi cục bộ (Local Caching / SQLite buffer), tự động đẩy dữ liệu khi đường truyền phục hồi.
    • Rủi ro nghẽn nhiệt trên Jetson Nano: Sử dụng ONNX Runtime với FP16 precision để giảm tải GPU tiêu thụ dưới $10\text{W}$.

Implementation và kết quả

Development Process

1. Thuật toán đo giãn cách xã hội (SDNode - Social Distancing Node)

SDNode sử dụng mô hình YOLOX-nano nhận diện người (Bounding Box), sau đó chuyển tọa độ chân người sang hệ không gian chiếu mắt chim (Bird's-Eye View) thông qua Ma trận chuyển đổi phối cảnh $TM$ (Inverse Perspective Mapping):

$$\begin{bmatrix} t \cdot x' \ t \cdot y' \ t \end{bmatrix} = TM \times \begin{bmatrix} x \ y \ 1 \end{bmatrix}$$

Khoảng cách Euclide thực tế giữa hai đối tượng $P_1(x_1', y_1')$ và $P_2(x_2', y_2')$ trên mặt phẳng sàn được tính toán:

$$d(P_1, P_2) = \sqrt{(x_1' - x_2')^2 + (y_1' - y_2')^2}$$

Nếu $d(P_1, P_2) < \text{Threshold}_{\text{distance}}$ ($2\text{ mét}$), hệ thống kích hoạt bounding box màu đỏ và tạo bản tin JSON cảnh báo gửi về API Gateway.

import cv2
import numpy as np

def compute_perspective_transform(corner_points, target_dimensions):
    """Tính ma trận Perspective Transform TM từ 4 điểm căn chỉnh trên mặt sàn"""
    src = np.float32(corner_points)
    dst = np.float32([[0, 0], [target_dimensions[0], 0], 
                      [target_dimensions[0], target_dimensions[1]], 
                      [0, target_dimensions[1]]])
    return cv2.getPerspectiveTransform(src, dst)

def transform_ground_positions(detections, transform_matrix):
    """Ánh xạ tọa độ đáy Bounding Box (chân người) sang mặt phẳng 2D Bird's-Eye"""
    points = []
    for (x, y, w, h) in detections:
        bottom_center = np.array([[[x + w / 2, y + h]]], dtype=np.float32)
        transformed_pt = cv2.perspectiveTransform(bottom_center, transform_matrix)
        points.append(transformed_pt[0][0])
    return np.array(points)

2. Nhận diện khẩu trang và danh tính (FMNode)

  • Face Mask Detection: Huấn luyện trên tập dữ liệu tổng hợp cân bằng WiderFace (khuôn mặt chuẩn) và MAFA (khuôn mặt có khẩu trang/bị che khuất).
  • Face Recognition: Trích xuất đặc trưng 128-d / 512-d vector bằng kiến trúc mạng học sâu SFace (Sigmoid-constrained Hypersphere Loss), sau đó phân loại bằng bộ phân lớp SVM (Support Vector Machine) với RBF Kernel trên tập chuẩn LFW (Labeled Faces in the Wild).
# Cấu hình tự động cập nhật Pods trên K3s thông qua Keel
apiVersion: apps/v1
kind: Deployment
metadata:
  name: fmnode-deployment
  namespace: edge-system
  annotations:
    keel.sh/policy: force
    keel.sh/trigger: poll
    keel.sh/pollSchedule: "@every 1m"
spec:
  replicas: 1
  selector:
    matchLabels:
      app: fmnode-ai
  template:
    metadata:
      labels:
        app: fmnode-ai
    spec:
      containers:
      - name: fmnode
        image: registry.gitlab.com/uit-edge-covid/fmnode:v1.2.0
        resources:
          limits:
            memory: "1024Mi"
            cpu: "1500m"

Testing và validation

Đánh giá mô hình FaceMask Detection và Nhận diện khuôn mặt

Mô hình / Thành phần Dataset Precision Recall F1-Score mAP@0.5
YOLOX-nano (Person) MS COCO 2017 0.892 0.865 0.878 25.8% (AP) / 88.5% (Person)
FaceMask Classifier WiderFace + MAFA 0.941 0.938 0.939 94.2%
SFace + SVM LFW (13.233 ảnh) 0.985 0.978 0.981 98.6% (Accuracy)

Đo kiểm tải và thông số phần cứng tại Cận biên (Edge Hardware Benchmark)

Thiết bị & Kịch bản thực thi FPS trung bình CPU Utilization GPU Utilization RAM Usage Nhiệt độ (°C)
Jetson Nano - SDNode (YOLOX) 14.2 FPS 48% 86% (FP16 ONNX) 2.1 GB / 4.0 GB 49.5 °C
Jetson Nano - FMNode (SFace) 11.8 FPS 56% 91% 2.4 GB / 4.0 GB 52.0 °C
Raspberry Pi 3B+ (Worker/No-GPU) 1.4 FPS 98% (CPU-bound) N/A 820 MB / 1.0 GB 64.2 °C

Đánh giá độ trễ phản hồi dịch vụ tại Cận biên (sử dụng công cụ Locust đo 1.000 Requests)

  • Độ trễ trung bình khi gọi Edge API cục bộ: $28.4\text{ms}$ (so với $342.6\text{ms}$ khi gọi trực tiếp về AWS EC2 Region ap-southeast-1).
  • Tỉ lệ lỗi (Error Rate): $0.00%$ ở mức tải 50 concurrent edge requests.

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

Các điểm cải tiến công nghệ nổi bật

  1. Kiến trúc K3s Containerized Edge tiên tiến: Khác với giải pháp đóng gói monolithic thông thường, hệ thống vận hành một Kubernetes cluster siêu nhẹ (K3s) trực tiếp trên phần cứng nhúng $1\text{GB} - 4\text{GB}\text{ RAM}$, cho phép tự phục hồi (self-healing), cô lập lỗi và quản lý tài nguyên vi mô cho từng tiến trình AI.
  2. Quy trình khép kín MLOps + GitOps tự động hóa: Tích hợp công cụ DVC quản lý dataset/model versioning, Weights & Biases theo dõi loss/accuracy theo thời gian thực và Keel đồng bộ hóa container image mới từ GitLab CI Registry xuống Edge node chỉ trong 45 giây mà không làm gián đoạn luồng camera.
  3. Phép ánh xạ không gian Metric-space chính xác cao: Loại bỏ hoàn toàn nhược điểm tính khoảng cách theo pixel 2D biến dạng của các camera truyền thống, sử dụng thuật toán Perspective Homography kết hợp hiệu chuẩn camera (Camera Calibration) cho sai số khoảng cách thực tế $< 4.5\text{cm}$ ở cự ly $3\text{m}$.

So sánh với các giải pháp thương mại hiện hữu

Tính năng kỹ thuật Pinnacle Solutions [7] Hanwha Techwin Wisenet [8] Hệ thống đề xuất (UIT 2022)
Mô hình kiến trúc Single-board Python script Firmware đóng gói cứng Phân tán Microservices (K3s Edge + AWS)
Tự động cập nhật AI Thủ công qua SSH Nâng cấp toàn bộ Firmware Tự động hóa hoàn toàn qua CI/CD & Keel
Độ linh hoạt hạ tầng Cố định trên Jetson Phụ thuộc phần cứng Hanwha Hỗ trợ đa nền tảng (x86, ARM64, Raspberry Pi)
Quản lý phiên bản dữ liệu Không hỗ trợ Không hỗ trợ DVC + Hydra Configuration
Chi phí triển khai Trung bình ($300/node$) Rất đắt ($1.500 - $2.500/camera$) Tối ưu (~$120 - $150/edge unit)

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

Kịch bản ứng dụng thực tế

  • Bệnh viện và Cơ sở Y tế: Tự động giám sát mật độ người tại phòng chờ, sàng lọc người không chấp hành đeo khẩu trang y tế và kích hoạt còi cảnh báo tại sảnh ra vào.
  • Tòa nhà văn phòng / Trường học thông minh: Điểm danh tự động qua khuôn mặt đối với nhân viên chấp hành quy chuẩn y tế; cảnh báo quản trị viên khi phát hiện vi phạm giãn cách nhóm $> 5$ người.
  • Nhà máy / Khu công nghiệp: Kiểm soát an toàn lao động tại các dây chuyền lắp ráp yêu cầu bảo hộ nghiêm ngặt.
[Camera RTSP Stream] 
 (Chỉ gửi JSON Event)

Chiến lược mở rộng và Phân tích tài chính (ROI)

  • Khả năng mở rộng: Nhờ vào kiến trúc master-worker của K3s, hệ thống có thể mở rộng từ 1 edge node lên 100+ edge nodes trải dài trên nhiều chi nhánh bằng kịch bản Ansible playbook chỉ trong vài phút.
  • Tiết kiệm chi phí băng thông: Với 10 camera Full HD ($2\text{ Mbps/stream}$), việc đẩy toàn bộ video lên Cloud tiêu tốn khoảng $6.48\text{ TB/tháng}$ (chi phí băng thông và lưu trữ cloud $\approx $550\text{ USD/tháng}$). Mô hình Edge Computing chỉ gửi metadata JSON ($< 20\text{ MB/ngày}$), tiết kiệm $96.8%$ chi phí truyền thông đám mây.

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

Hạn chế kỹ thuật hiện tại

  • Khả năng xử lý đa luồng (Multi-stream) trên một bo mạch Jetson Nano bị giới hạn ở mức 2 camera 720p 15 FPS do giới hạn băng thông bộ nhớ chia sẻ (Shared Memory LPDDR4).
  • Thuật toán Bird's-Eye View yêu cầu người dùng phải tự cấu hình 4 điểm biên (calibration points) thủ công khi thay đổi góc đặt camera.

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

  • Nghiên cứu tích hợp cơ chế Camera Auto-calibration sử dụng Deep Learning để tự động nhận dạng mặt phẳng sàn.
  • Mở rộng kiến trúc tương thích với nền tảng điện toán biên cấp doanh nghiệp như AWS IoT Greengrass hoặc KubeEdge.
  • Bổ sung tính năng nhận diện hành vi bất thường (té ngã, tụ tập bạo lực) sử dụng mạng Spatio-Temporal Graph Convolutional Networks (ST-GCN).

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

  • Sinh viên & Học viên chuyên ngành Mạng / AI: Nguồn tài liệu tham khảo hoàn chỉnh về cách kết hợp giữa hạ tầng mạng máy tính, công nghệ ảo hóa (Kubernetes) và các mô hình Computer Vision thực chiến.
  • Kỹ sư DevOps / MLOps: Cung cấp kiến trúc mẫu (Blueprint) chuẩn mực về việc xây dựng pipeline CI/CD/GitOps từ máy chủ cloud tới các thiết bị nhúng phần cứng ARM.
  • Doanh nghiệp & Đơn vị tích hợp hệ thống (SI): Một giải pháp giám sát an ninh - y tế chi phí thấp, tận dụng hệ thống camera sẵn có mà không cần đầu tư lại hạ tầng đường truyền băng thông cao.
  • Nhà nghiên cứu khoa học: Dữ liệu thực nghiệm phong phú về hiệu năng so sánh giữa các dòng vi xử lý (ARM Cortex-A53 vs NVIDIA Maxwell GPU) khi chạy các mạng nơ-ron học sâu tối ưu hóa ONNX.

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

1. Yêu cầu phần cứng tối thiểu để triển khai một Edge Node là gì?

Hệ thống yêu cầu tối thiểu một bo mạch vi xử lý ARM64 (như Raspberry Pi 3B+ với 1GB RAM) để chạy các tác vụ quản trị K3s worker, hoặc khuyến nghị NVIDIA Jetson Nano (4GB RAM, 128 Maxwell CUDA cores) để đạt hiệu năng xử lý AI thời gian thực $\ge 10\text{ FPS}$.

2. Khi mất kết nối Internet ra ngoài Cloud, hệ thống tại chỗ có hoạt động không?

Có. Toàn bộ tiến trình suy luận AI, tính toán khoảng cách và nhận diện khẩu trang chạy hoàn toàn cục bộ trên cụm K3s Edge Cluster. Dữ liệu sự kiện vi phạm sẽ được lưu trữ tạm thời trong bộ nhớ đệm tại biên và tự động đồng bộ hóa lên AWS Cloud ngay khi mạng phục hồi.

3. Làm thế nào để cập nhật mô hình AI mới cho hàng trăm camera ở xa?

Hệ thống sử dụng GitOps với công cụ Keel. Khi Data Scientist hoàn thành huấn luyện mô hình mới và đẩy Docker Image lên GitLab Container Registry, Keel Operator tại từng K3s Cluster sẽ tự động kéo (pull) image mới và thực hiện chiến lược cập nhật Rolling Update với zero-downtime.

4. Chi phí bản quyền và chi phí vận hành giải pháp gồm những gì?

Toàn bộ phần mềm sử dụng các công nghệ mã nguồn mở (K3s, Docker, OpenCV, Python, ReactJS, MongoDB). Chi phí định kỳ duy nhất là phí thuê máy chủ đám mây AWS EC2 (khoảng $$15 - $30/\text{tháng}$ cho một máy chủ trung tâm quản trị hàng trăm Edge nodes).

5. Hệ thống đảm bảo tính riêng tư của dữ liệu hình ảnh như thế nào?

Khác với hệ thống camera thông thường truyền toàn bộ hình ảnh khuôn mặt người qua Internet, hệ thống chỉ xử lý hình ảnh tại bộ nhớ đệm RAM của thiết bị biên, sau đó hủy khung hình và chỉ truyền các trường dữ liệu phi định danh (ví dụ: { "timestamp": "...", "violation_type": "NO_MASK", "distance_meters": 1.2 }) lên Cloud.


Kết luận

Đồ án tốt nghiệp "Nghiên cứu và phát triển hệ thống tính toán cận biên ứng dụng công nghệ ảo hóa container và hệ thống camera thông minh giám sát tình hình dịch tễ bệnh COVID-19" của nhóm tác giả Lê Minh Thông và Nguyễn Võ Bảo Huy (Đại học Công nghệ Thông tin - ĐHQG TP.HCM) đã chứng minh tính khả thi và ưu việt vượt trội của mô hình Hybrid Edge-Cloud Computing.

Bằng việc kết hợp chặt chẽ giữa ảo hóa container K3s, quy trình tự động hóa DevOps/MLOps hiện đại và các giải thuật thị giác máy tính tối ưu (YOLOX, SFace, Perspective Homography), đề tài không chỉ giải quyết triệt để bài toán giám sát y tế phòng dịch thời gian thực mà còn mở ra phương pháp luận thiết kế chuẩn mực cho các hệ thống IoT/Smart City thế hệ mới. Toàn bộ mã nguồn triển khai hạ tầng dạng mã (IaC) và pipeline MLOps là tài liệu tham khảo giá trị cho cộng đồng nghiên cứu và phát triển công nghệ trong nước.