Giới thiệu dự án

An toàn lao động trong ngành xây dựng luôn là thách thức hàng đầu đối với các nhà quản lý và nhà thầu. Theo báo cáo chính thức của Bộ Lao động - Thương binh và Xã hội năm 2019, toàn quốc đã xảy ra 8.150 vụ tai nạn lao động làm 8.327 người bị thương vong, trong đó phần lớn các vụ việc nghiêm trọng xuất phát từ việc người lao động không trang bị hoặc sử dụng không đúng quy cách các trang thiết bị bảo hộ cá nhân (Personal Protective Equipment - PPE).

+-----------------------------------------------------------------------+
|  Thực trạng: 8.150 vụ tai nạn (2019) -> Phần lớn do vi phạm PPE       |
|  Phương pháp cũ: Giám sát thủ công -> Tốn nhân lực, dễ sai sót, chậm  |
|  Giải pháp: Camera AI biên (Jetson Nano + YOLOv4-tiny) -> Real-time   |
+-----------------------------------------------------------------------+

Tại các công trường xây dựng ở Việt Nam, quy trình giám sát tuân thủ an toàn lao động hiện nay chủ yếu được thực hiện thủ công bởi cán bộ chuyên trách an toàn (HSE) tại cổng kiểm soát hoặc trên mặt bằng thi công. Cách tiếp cận truyền thống này tồn tại nhiều điểm nghẽn nghiêm trọng:

  • Tốn kém chi phí và nhân lực: Cần bố trí nhân sự túc trực liên tục tại các vị trí ra vào.
  • Độ bao phủ thấp và gián đoạn: Kiểm tra thủ công chỉ mang tính thời điểm, dễ bỏ lọt vi phạm trong giờ cao điểm khi lượng công nhân ra vào đông.
  • Thiếu tính minh bạch và lưu trữ dữ liệu: Khó lưu vết bằng hình ảnh hoặc dữ liệu định lượng để phục vụ công tác thanh tra, đánh giá an toàn định kỳ.

Đồ án tốt nghiệp ngành Kỹ thuật Máy tính tại Trường Đại học Công nghệ Thông tin - ĐHQG TP.HCM của nhóm tác giả Phạm Hồ Ngọc Bình và Trần Hữu Nhi (dưới sự hướng dẫn của TS. Nguyễn Minh Sơn, 2021) đã tập trung giải quyết bài toán trên bằng đề tài: "Nghiên cứu và hiện thực camera nhận dạng công nhân đảm bảo an toàn lao động trong công trường xây dựng" (Research and Implementation of Safety Worker-Detecting Camera for Construction Site).

Mục tiêu cụ thể của đồ án

  1. Xây dựng và chuẩn hóa bộ dữ liệu hình ảnh PPE đặc thù bao gồm 4 nhóm trang bị: Mũ bảo hộ (Hard Hat), Kính bảo hộ (Safety Goggles), Áo phản quang (Safety Vest) và Găng tay bảo hộ (Safety Gloves).
  2. Huấn luyện mô hình mạng nơ-ron tích chập (Convolutional Neural Network - CNN) với thuật toán tối ưu hóa YOLOv4-tiny nhằm đạt độ chính xác trung bình (mAP) từ 85% đến 90%.
  3. Triển khai toàn diện mô hình học sâu lên hệ thống máy tính nhúng (Edge Computing) NVIDIA Jetson Nano kết hợp cùng cảm biến hình ảnh Raspberry Pi Camera Module V2.
  4. Xây dựng hệ thống phần mềm hoàn chỉnh có khả năng xử lý thời gian thực từ 8 đến 10 FPS, tự động phân loại trạng thái an toàn (PASS khi đủ 4 trang bị, NOT PASS khi thiếu), đồng thời lưu trữ hình ảnh và nhật ký vi phạm.
  5. Thiết kế hộp camera bảo vệ (Camera Box) công nghiệp khép kín, tích hợp giải pháp điều khiển và giám sát từ xa qua giao thức VNC (Virtual Network Computing).

Phạm vi và giới hạn của đề tài

  • Phần cứng thực thi: Bo mạch nhúng NVIDIA Jetson Nano Developer Kit (4GB LPDDR4, 128 CUDA cores), Raspberry Pi Camera V2 (Sony IMX219 8MP), nguồn cấp Philips 5V/4A.
  • Thuật toán cốt lõi: YOLOv4-tiny chạy trên nền tảng framework Darknet.
  • Đối tượng nhận dạng: 4 lớp PPE bắt buộc gồm Mũ bảo hộ, Kính bảo hộ, Áo phản quang và Găng tay.
  • Vị trí hoạt động tối ưu: Cổng ra vào công trường (Site Entry Access Point) với cự ly nhận diện hiệu quả từ 1.5m đến 3m.

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

Phân tích hiện trạng và các giải pháp hiện nay

Trong thị trường thị giác máy tính ứng dụng cho an toàn xây dựng, các giải pháp phát hiện đối tượng thường được phân chia thành hai nhánh chính: Two-stage detector (hai giai đoạn) và One-stage detector (một giai đoạn).

Tiêu chí Two-stage (Faster R-CNN, Mask R-CNN) One-stage (SSD MobileNet) Giải pháp đề xuất (YOLOv4-tiny trên Jetson Nano)
Độ chính xác (mAP) Rất cao (> 90%) Trung bình (70% - 78%) Cao (85% - 92%)
Tốc độ xử lý (FPS) Chậm (1 - 3 FPS trên Edge GPU) Nhanh (12 - 18 FPS) Thời gian thực tối ưu (8 - 10 FPS)
Tài nguyên phần cứng Đòi hỏi GPU máy trạm đắt tiền Yêu cầu tài nguyên thấp Tối ưu hoàn hảo cho Edge AI < 10W
Khả năng nhận diện vật thể nhỏ Tốt Kém (dễ mất dấu kính, găng tay) Tốt nhờ kiến trúc CSPDarknet53-tiny
Chi phí đầu tư Rất cao (> 1.500 USD/điểm) Thấp (~ 150 USD) Thấp (~ 180 USD trọn bộ thiết bị)

Phân loại yêu cầu theo mô hình MoSCoW

  • Must-have (Bắt buộc phải có):
    • Nhận diện đồng thời 4 lớp vật thể PPE trong luồng video trực tiếp.
    • Tự động đưa ra quyết định nhị phân: PASS (Đầy đủ trang bị) hoặc NOT PASS (Vi phạm/Thiếu trang bị).
    • Vận hành độc lập trên máy tính nhúng NVIDIA Jetson Nano với tốc độ $\ge 8$ FPS.
  • Should-have (Nên có):
    • Cơ chế ghi log tự động thời gian và lưu ảnh chụp bounding box của công nhân vi phạm vào cơ sở dữ liệu nội bộ.
    • Giao diện đồ họa (GUI) hiển thị bounding box, tên nhãn và độ tin cậy (Confidence Score).
  • Could-have (Có thể có):
    • Truy cập và điều khiển máy tính nhúng từ xa qua mạng không dây (Wi-Fi/VNC).
  • Won't-have (Chưa thực hiện trong giai đoạn này):
    • Tích hợp nhận diện danh tính/khuôn mặt kết hợp chấm công (chỉ tập trung chuyên sâu vào giám sát an toàn PPE).

Thiết kế kiến trúc hệ thống

Hệ thống được thiết kế theo mô hình xử lý tính toán tại biên (Edge Computing Architecture), giúp giảm tải băng thông mạng và loại bỏ độ trễ truyền dữ liệu lên máy chủ đám mây.

+------------------------------------------------------------------------------------+
|                                KIẾN TRÚC HỆ THỐNG                                 |
+------------------------------------------------------------------------------------+
  [ Công nhân tại cổng ] 
            |
            v
  [ Raspberry Pi Camera V2 (Sony IMX219) ] --- (Giao tiếp CSI-2)
            |
            v
  +--------------------------------------------------------------------------------+
  | NVIDIA Jetson Nano Developer Kit (Ubuntu 18.04 LTS + JetPack 4.4)              |
  |  +--------------------------------------------------------------------------+  |
  |  | Pipeline Thị giác Máy tính (OpenCV 4.1.1 + CUDA 10.2 + cuDNN 8.0)         |  |
  |  |   - Thu nhận khung hình (Capture Frame 416x416)                          |  |
  |  |   - Tiền xử lý & Chuẩn hóa ảnh                                           |  |
  |  +--------------------------------------------------------------------------+  |
  |  | Khối Inference Engine (Darknet Framework - YOLOv4-tiny Custom Model)     |  |
  |  |   - Backbone: CSPDarknet53-tiny                                          |  |
  |  |   - Head: Dense Prediction (Bounding Boxes, Classes: Hat, Vest, etc.)   |  |
  |  +--------------------------------------------------------------------------+  |
  |  | Bộ xử lý Logic An toàn (Rule Engine)                                     |  |
  |  |   - IF (HardHat AND Goggles AND SafetyVest AND Gloves) == TRUE:         |  |
  |  |         Status = PASS                                                    |  |
  |  |     ELSE:                                                                |  |
  |  |         Status = NOT PASS -> Lưu Log CSV & Ảnh vi phạm                   |  |
  |  +--------------------------------------------------------------------------+  |
  +--------------------------------------------------------------------------------+
            |
            +---------------------------------+
            |                                 |
            v                                 v
  [ Màn hình hiển thị tại cổng ]     [ Giám sát từ xa qua VNC (Laptop / Smartphone) ]

Thông số kỹ thuật của các thành phần phần cứng cốt lõi

  • Bộ xử lý trung tâm (NVIDIA Jetson Nano):
    • GPU: Kiến trúc NVIDIA Maxwell với 128 lõi CUDA, năng lực tính toán 472 GFLOPS (FP16).
    • CPU: Quad-core ARM Cortex-A57 MPCore @ 1.43 GHz.
    • Bộ nhớ: 4 GB 64-bit LPDDR4 tốc độ 1600MHz băng thông 25.6 GB/s.
    • Hệ điều hành: Linux for Tegra (L4T) dựa trên Ubuntu 18.04 LTS (JetPack 4.4).
  • Cảm biến thu nhận hình ảnh (Raspberry Pi Camera Module V2):
    • Cảm biến: Sony IMX219 độ phân giải 8 Megapixel.
    • Chuẩn kết nối: Cáp dẹt MIPI CSI-2 15-pin kết nối trực tiếp vào phần cứng Jetson Nano, giải phóng tải cho CPU so với camera USB thông thường.

Implementation và kết quả

Quy trình xây dựng bộ dữ liệu PPE chuyên biệt

Do không có sẵn bộ dữ liệu PPE chuẩn dành riêng cho điều kiện công trường xây dựng, nhóm nghiên cứu đã tiến hành thu thập và gán nhãn 3.500 hình ảnh đa dạng:

  • Nguồn dữ liệu: 3.000 hình ảnh từ Internet và 500 hình ảnh tự chụp thực tế với nhiều góc độ, bối cảnh trong nhà/ngoài trời và các điều kiện chiếu sáng khác nhau.
  • Công cụ gán nhãn: Sử dụng phần mềm LabelImg để trích xuất tọa độ Bounding Box định dạng chuẩn YOLO (class_id x_center y_center width height).
+------------------------------------------------------------------------+
|                      PHÂN BỐ TẬP DỮ LIỆU PPE                           |
+------------------+------------+-----------+-------------+--------------+
| Phân loại        | Mũ bảo hộ  | Kính bảo hộ| Áo phản quang| Găng tay     |
|                  | (Hard hat) | (Goggles) | (Safety vest)| (Gloves)    |
+------------------+------------+-----------+-------------+--------------+
| Training Set     | 3.951      | 895       | 1.972       | 2.625        |
| Testing Set      | 1.050      | 150       | 553         | 564          |
+------------------+------------+-----------+-------------+--------------+
| Tổng số đối tượng| 5.151      | 1.045     | 2.525       | 3.189        |
+------------------+------------+-----------+-------------+--------------+

Cơ sở lý thuyết thuật toán và hàm mục tiêu

Mô hình sử dụng mạng đường trục CSPDarknet53-tiny. Bằng cách phân chia bản đồ đặc trưng (Feature Map) thành hai phần và hợp nhất qua nhánh dư (Cross Stage Residual Edge), kiến trúc này giúp luồng gradient lan truyền theo hai đường dẫn độc lập, tăng cường khả năng học đặc trưng và giảm nút thắt cổ chai tính toán.

Hệ thống tính toán điểm tin cậy (Confidence Score) $C_j^i$ của bounding box thứ $j$ trong ô lưới thứ $i$:

$$C_j^i = P_{i,j} \cdot \text{IOU}_{\text{pred}}^{\text{truth}}$$

Trong đó $P_{i,j} = 1$ nếu có đối tượng nằm trong box, ngược lại bằng $0$. $\text{IOU}_{\text{pred}}^{\text{truth}}$ là chỉ số giao diện trên diện tích hợp (Intersection Over Union) giữa bounding box dự đoán và ground-truth.

Hàm mất mát tổng thể $\mathcal{L}_{\text{total}}$ của YOLOv4-tiny bao gồm ba thành phần:

$$\mathcal{L}{\text{total}} = \mathcal{L}{\text{conf}} + \mathcal{L}{\text{cls}} + \mathcal{L}{\text{reg}}$$

  1. Confidence Loss ($\mathcal{L}_{\text{conf}}$):

$$\mathcal{L}{\text{conf}} = - \sum{i=0}^{S^2} \sum_{j=0}^{B} w_{ij}^{\text{obj}} \left[ c_j^i \log(\hat{c}j^i) + (1 - c_j^i) \log(1 - \hat{c}j^i) \right] - \lambda{\text{noobj}} \sum{i=0}^{S^2} \sum_{j=0}^{B} (1 - w_{ij}^{\text{obj}}) \left[ c_j^i \log(\hat{c}_j^i) + (1 - c_j^i) \log(1 - \hat{c}_j^i) \right]$$

  1. Classification Loss ($\mathcal{L}_{\text{cls}}$):

$$\mathcal{L}{\text{cls}} = - \sum{i=0}^{S^2} \sum_{j=0}^{B} w_{ij}^{\text{obj}} \sum_{c \in \text{classes}} \left[ p_j^i(c) \log(\hat{p}_j^i(c)) + (1 - p_j^i(c)) \log(1 - \hat{p}_j^i(c)) \right]$$

  1. Bounding Box Regression Loss ($\mathcal{L}_{\text{reg}}$) dựa trên CIoU loss:

$$\mathcal{L}_{\text{reg}} = 1 - \text{IOU} + \frac{\rho^2(b, b^{\text{gt}})}{c^2} + \alpha v$$

$$\text{với } v = \frac{4}{\pi^2} \left( \arctan\frac{w^{\text{gt}}}{h^{\text{gt}}} - \arctan\frac{w}{h} \right)^2, \quad \alpha = \frac{v}{(1 - \text{IOU}) + v}$$

Cấu hình huấn luyện mô hình trên Google Colab

Quá trình huấn luyện sử dụng GPU NVIDIA Tesla K80 (2.496 CUDA cores) trên nền tảng Google Colaboratory. File cấu hình yolov4-tiny-custom.cfg được tinh chỉnh chính xác theo đặc tả 4 lớp đối tượng:

[net]
# Cấu hình Batch & Subdivisions
batch=64
subdivisions=16
width=416
height=416
channels=3
momentum=0.9
decay=0.0005

# Tối ưu hóa số bước lặp (classes * 2000 = 8000)
max_batches=8000
policy=steps
steps=6400,7200

# Cấu hình tại các tầng YOLO Head (2 tầng output)
# Số lượng filter = (classes + 5) * 3 = (4 + 5) * 3 = 27
[convolutional]
size=1
stride=1
pad=1
filters=27
activation=linear

[yolo]
mask = 0,1,2
anchors = 10,14,  23,27,  37,58,  81,82,  135,169,  344,319
classes=4
num=6
jitter=.3
scale_x_y = 1.05
cls_normalizer=1.0
iou_normalizer=0.07
iou_loss=ciou
nms_kind=greedynms
beta_nms=0.6

Lệnh thực thi quá trình huấn luyện và theo dõi mAP trực tiếp:

# Cấp quyền thực thi và khởi chạy Darknet trên GPU Colab
chmod +x ./darknet
./darknet detector train data/yolo.data cfg/yolov4-tiny-custom.cfg yolov4-tiny.conv.29 -dont_show -map

Kết quả huấn luyện và kiểm thử thực nghiệm

Sau 8.000 vòng lặp (Iterations), mô hình đạt điểm mAP cao nhất tại khoảng vòng lặp 6.400 - 7.200 với giá trị hàm mất mát trung bình (Average Loss) giảm sâu về mức 0.02. Trọng số tối ưu yolov4-tiny-custom_best.weights được xuất sang Jetson Nano để thử nghiệm thực tế.

+-----------------------------------------------------------------------+
|                KẾT QUẢ ĐỘ CHÍNH XÁC THEO KHOẢNG CÁCH                  |
+-------------------+--------------------+------------------------------+
| Khoảng cách (m)   | Đủ sáng (Full Light)| Thiếu sáng (Lack of Light)  |
+-------------------+--------------------+------------------------------+
| 1.5 m             | 94.2%              | 88.5%                        |
| 2.5 m             | 91.8%              | 84.1%                        |
| 3.0 m             | 87.6%              | 79.3%                        |
| 7.0 m             | 68.4%              | 55.2%                        |
| 25.0 m            | 32.1%              | 18.0%                        |
+-------------------+--------------------+------------------------------+
+-----------------------------------------------------------------------+
|                 HIỆU NĂNG TÍNH TOÁN TRÊN JETSON NANO                  |
+------------------------------------+----------------------------------+
| Chỉ số thực nghiệm                 | Giá trị đo lường                 |
+------------------------------------+----------------------------------+
| Tốc độ xử lý trung bình (FPS)      | 8.5 - 10.2 FPS                   |
| Độ trễ xử lý khung hình (Latency)  | ~98 ms - 117 ms                  |
| Độ chính xác tổng thể mAP          | 90.0%                            |
| Công suất tiêu thụ hệ thống        | ~5W - 8.5W (Qua nguồn 5V 4A)     |
| Khả năng nhận diện đồng thời       | 6+ đối tượng PPE trong một khung |
+------------------------------------+----------------------------------+

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

  1. Bộ dữ liệu PPE chuyên biệt: Xây dựng thành công tập dữ liệu 3.500 ảnh với hơn 11.900 nhãn bounding box đại diện cho môi trường công trường thực tế tại Việt Nam, bù đắp sự thiếu hụt dữ liệu huấn luyện mở trong lĩnh vực an toàn lao động.
  2. Tối ưu hóa kiến trúc AI cho thiết bị biên: Triển khai thành công YOLOv4-tiny trên nền tảng Jetson Nano đạt tốc độ tiệm cận thời gian thực (10 FPS) mà không cần trang bị các máy chủ xử lý cồng kềnh, giảm thiểu hơn 85% chi phí đầu tư phần cứng so với các giải pháp máy trạm truyền thống.
  3. Mô hình hóa quy tắc an toàn tự động: Tích hợp thuật toán logic đưa ra phán quyết nhị phân (Binary Safety Gate Logic), cho phép hệ thống tự động khóa/mở cổng kiểm soát hoặc phát cảnh báo khi thiếu bất kỳ một trong bốn món bảo hộ.
  4. Đóng gói phần cứng chuyên dụng (All-in-One Camera Box): Tích hợp module camera, mạch hạ áp, tản nhiệt và bo mạch xử lý vào hộp bảo vệ tiêu chuẩn, hỗ trợ điều khiển không dây hoàn toàn qua giao thức VNC.

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

Kịch bản triển khai tại cổng công trường (Access Control)

Hệ thống được thiết kế tối ưu để lắp đặt tại cửa kiểm soát an ninh (Turnstile Gate) trước khi công nhân bước vào khu vực thi công:

  1. Công nhân bước vào khoảng cách nhận diện chuẩn từ 1.5m đến 2.5m trước camera.
  2. Camera Raspberry Pi V2 ghi nhận luồng hình ảnh và truyền về Jetson Nano qua giao tiếp CSI-2.
  3. Hệ thống quét đồng thời 4 vị trí: Đầu (Mũ), Mặt (Kính), Thân (Áo), Tay (Găng tay).
  4. Nếu phát hiện đủ cả 4 trang bị $\rightarrow$ Màn hình hiển thị trạng thái xanh PASS, ghi nhận thời gian vào ca.
  5. Nếu thiếu bất kỳ trang bị nào $\rightarrow$ Màn hình hiển thị cảnh báo đỏ NOT PASS, tự động lưu vết hình ảnh và từ chối mở cổng cơ học.
+-----------------------------------------------------------------------+
|               SƠ ĐỒ LẮP ĐẶT HỆ THỐNG TẠI CỔNG KIỂM SOÁT               |
+-----------------------------------------------------------------------+

        [ Hộp Camera AI ] (Cao 1.8m, góc nghiêng 15 độ)
               |
               | (Vùng quét tối ưu 1.5m - 2.5m)
               v
        +--------------+
        |   Công nhân  | ----> [ Mũ bảo hộ  : OK ]
        |   vào ca     | ----> [ Kính bảo hộ: OK ] ===> TRẠNG THÁI: PASS
        +--------------+ ----> [ Áo phản quang: OK ]    (Mở cổng Barrier)
               |         ----> [ Găng tay   : OK ]
               v
        [ Cổng kiểm soát Barrier ]

Phân tích chi phí và hiệu quả đầu tư (ROI)

  • Chi phí phần cứng một điểm kiểm soát:
    • Bo mạch NVIDIA Jetson Nano B01: ~100 USD
    • Cảm biến Raspberry Pi Camera V2 (Sony IMX219): ~25 USD
    • Nguồn công nghiệp Philips 5V 4A & Thẻ nhớ MicroSD 64GB: ~25 USD
    • Hộp bảo vệ, giá treo kim loại, cáp kết nối: ~30 USD
    • Tổng chi phí ước tính: ~180 USD / trạm kiểm soát.
  • Hiệu quả kinh tế: Thay thế hoàn toàn 1 nhân sự kiểm tra an toàn tại mỗi cổng ra vào (tiết kiệm chi phí vận hành ước tính từ 300 - 500 USD/tháng cho mỗi cổng kiểm soát), thời gian thu hồi vốn (Payback Period) dưới 1 tháng vận hành.

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

Hạn chế kỹ thuật

  • Khoảng cách và góc quan sát: Độ chính xác giảm mạnh khi khoảng cách vượt quá 7m, đặc biệt là với các vật thể nhỏ như kính bảo hộ và găng tay.
  • Điều kiện thiếu sáng cực đoan: Môi trường ban đêm thiếu ánh sáng đèn bổ trợ làm giảm mAP xuống dưới 60% do cảm biến Sony IMX219 không tích hợp bộ lọc hồng ngoại chuyên dụng.
  • Hiện tượng che khuất (Occlusion): Khi công nhân di chuyển theo nhóm đông đúc hoặc bị che khuất một phần cơ thể, hệ thống có thể nhận diện thiếu sót các thành phần bảo hộ.

Hướng phát triển trong tương lai

  • Chuyển đổi sang NVIDIA TensorRT: Tối ưu hóa mô hình từ định dạng Darknet sang FP16/INT8 qua TensorRT để nâng tốc độ xử lý từ 10 FPS lên 20 - 25 FPS trên Jetson Nano.
  • Bổ sung camera hồng ngoại / LED trợ sáng: Sử dụng camera NoIR kết hợp đèn LED hồng ngoại tự động kích hoạt khi cường độ ánh sáng môi trường xuống thấp.
  • Mở rộng nhận diện hành vi: Nhận diện dây đai an toàn toàn thân (Safety Harness) khi làm việc trên cao và nhận diện tình huống công nhân té ngã.
  • Tích hợp API điện toán đám mây: Xây dựng Web Dashboard quản lý tập trung đa công trường, đồng bộ dữ liệu vi phạm về máy chủ quản lý trung tâm của nhà thầu.

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

  • Sinh viên & Kỹ sư nhúng/AI:
    • Tài liệu tham khảo thực tế về pipeline hoàn chỉnh: từ thu thập dữ liệu, cấu hình cfg Darknet, huấn luyện trên Cloud GPU (Colab) đến triển khai trên phần cứng nhúng (Jetson Nano).
    • Mã nguồn mẫu và quy trình cài đặt môi trường L4T, CUDA, cuDNN trên JetPack 4.4.
  • Nhà thầu & Doanh nghiệp xây dựng:
    • Giải pháp tự động hóa giám sát an toàn với chi phí cực thấp, dễ dàng nhân rộng trên nhiều dự án.
    • Giảm thiểu nguy cơ tai nạn lao động, nâng cao chỉ số tuân thủ pháp lý và uy tín của nhà thầu.
  • Nhà nghiên cứu thị giác máy tính ứng dụng:
    • Cơ sở thực nghiệm về sự cân bằng giữa độ trễ (Latency) và độ chính xác (Accuracy) của các biến thể YOLO trên phần cứng giới hạn tài nguyên.

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

1. Cần chuẩn bị môi trường phần mềm như thế nào để nạp mô hình vào Jetson Nano?

Hệ thống yêu cầu cài đặt gói hệ điều hành NVIDIA JetPack 4.4 (bao gồm Linux for Tegra Ubuntu 18.04, CUDA 10.2, cuDNN 8.0.0, TensorRT 7.1). Sau đó, biên dịch trực tiếp mã nguồn Darknet framework trên bo mạch với các cờ GPU=1, CUDNN=1, OPENCV=1 trong Makefile để kích hoạt tăng tốc phần cứng tối đa.

2. Tại sao đồ án lựa chọn YOLOv4-tiny thay vì YOLOv4 tiêu chuẩn hay SSD MobileNet?

YOLOv4 tiêu chuẩn chứa hơn 60 triệu tham số, quá nặng đối với GPU 128 nhân của Jetson Nano (chỉ đạt 1 - 2 FPS). Trong khi đó, SSD MobileNet có tốc độ nhanh nhưng khả năng nhận diện các vật thể nhỏ như kính bảo hộ hay găng tay rất kém. YOLOv4-tiny là sự dung hòa tối ưu nhất, chỉ có khoảng 6 triệu tham số nhưng giữ lại các đặc trưng gradient quan trọng nhờ CSPBlock, đạt mAP ~90% và tốc độ 10 FPS.

3. Hệ thống xử lý thế nào khi công nhân cố tình quay lưng lại phía camera?

Tại cổng kiểm soát, làn di chuyển được thiết kế theo dạng một chiều hẹp (Turnstile Gate). Công nhân bắt buộc phải hướng mặt về phía camera để quan sát trạng thái đèn hiển thị PASS/NOT PASS. Trường hợp quay lưng, hệ thống sẽ phát hiện thiếu kính bảo hộ và tự động kích hoạt trạng thái NOT PASS để yêu cầu kiểm tra lại.

4. Chi phí bảo trì và độ bền của hộp camera ngoài công trường ra sao?

Camera Box được chế tạo từ vỏ nhựa ABS/Kim loại đạt chuẩn kháng bụi nước cơ bản, có trang bị quạt tản nhiệt 5V cho CPU/GPU Jetson Nano. Chi phí bảo trì định kỳ rất thấp, chủ yếu là vệ sinh bề mặt kính trước ống kính camera sau mỗi tuần làm việc nhiều bụi.

5. Có thể tích hợp hệ thống với các cổng Barrier tự động sẵn có không?

Hoàn toàn khả thi. Bo mạch Jetson Nano tích hợp sẵn cụm chân giao tiếp 40-pin GPIO. Khi thuật toán trả về trạng thái PASS, chương trình Python có thể kích hoạt mức logic HIGH (3.3V) trên một chân GPIO qua mạch Relay điều khiển đóng mở cổng Barrier cơ điện tự động mà không cần máy tính phụ trợ.


Kết luận

Đồ án tốt nghiệp "Nghiên cứu và hiện thực camera nhận dạng công nhân đảm bảo an toàn lao động trong công trường xây dựng" của hai kỹ sư Phạm Hồ Ngọc Bình và Trần Hữu Nhi đã giải quyết trọn vẹn một bài toán cấp thiết trong thực tiễn an toàn lao động. Bằng việc kết hợp nhuần nhuyễn giữa giải thuật thị giác máy tính hiện đại (YOLOv4-tiny) và phần cứng tính toán biên mạnh mẽ, tiết kiệm năng lượng (NVIDIA Jetson Nano), đề tài đã chứng minh tính khả thi vượt trội của việc áp dụng Edge AI vào giám sát an toàn tự động.

Hệ thống đạt độ chính xác 90.0% với tốc độ xử lý thời gian thực ổn định (8 - 10 FPS), chi phí triển khai dưới 200 USD cho một điểm kiểm soát, mở ra tiềm năng thương mại hóa và ứng dụng rộng rãi tại hàng ngàn công trường xây dựng trên toàn quốc. Đây là nền tảng kỹ thuật vững chắc để tiếp tục mở rộng các tính năng quản lý an toàn và chuyển đổi số toàn diện cho ngành công nghiệp xây dựng trong tương lai.