Tổng quan nghiên cứu

Trong bối cảnh công nghệ thiết bị bay không người lái (drone) ngày càng phổ biến và được ứng dụng rộng rãi trong nhiều lĩnh vực như an ninh, cứu hộ, giám sát, việc phát hiện và nhận dạng người từ nguồn video trực tiếp trở thành một nhu cầu cấp thiết. Theo ước tính, các thiết bị drone hiện nay có khả năng truyền tải hình ảnh trực tiếp với chất lượng cao, tạo điều kiện thuận lợi cho việc áp dụng các thuật toán thị giác máy tính nhằm phát hiện đối tượng trong thời gian thực. Tuy nhiên, việc phát hiện người dựa trên khuôn mặt từ video drone gặp nhiều thách thức do đa dạng về góc nhìn, kích thước khuôn mặt, ánh sáng và che khuất.

Mục tiêu chính của luận văn là nghiên cứu và xây dựng hệ thống phát hiện và nhận dạng người dựa trên khuôn mặt từ luồng video trực tiếp do drone truyền về, nhằm hỗ trợ tìm kiếm người trong đám đông một cách nhanh chóng và chính xác. Phạm vi nghiên cứu tập trung vào việc áp dụng và cải tiến các thuật toán phát hiện khuôn mặt họ YOLO, đặc biệt là YOLOv4 Tiny Face, kết hợp với phương pháp nhận dạng MobileFaceNet trên bộ dữ liệu DroneSURF và WiderFace. Nghiên cứu được thực hiện trong môi trường thực nghiệm tại TP. Hồ Chí Minh, năm 2021.

Ý nghĩa của nghiên cứu thể hiện qua việc nâng cao hiệu quả phát hiện và nhận dạng khuôn mặt trong các ứng dụng an ninh và cứu hộ cứu nạn, giúp giảm thiểu thời gian xử lý và tăng độ chính xác so với phương pháp thủ công. Kết quả nghiên cứu có thể ứng dụng trong các hệ thống giám sát thông minh, hỗ trợ ra quyết định nhanh chóng trong các tình huống khẩn cấp.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Luận văn dựa trên hai khung lý thuyết chính: mạng nơ-ron nhân tạo (Artificial Neural Network - ANN) và mạng nơ-ron tích chập (Convolutional Neural Network - CNN). ANN là tập hợp các perceptron kết hợp với các hàm kích hoạt phi tuyến, cho phép mô hình hóa các hàm phức tạp thông qua các lớp ẩn. CNN được thiết kế đặc biệt cho dữ liệu ảnh, sử dụng các lớp tích chập để trích xuất đặc trưng không gian, giảm thiểu số lượng tham số và tránh hiện tượng overfitting.

Thuật toán YOLO (You Only Look Once) và các phiên bản cải tiến như YOLOv4 và YOLOv4 Tiny Face được sử dụng làm phương pháp phát hiện khuôn mặt. YOLO chia ảnh đầu vào thành các lưới và dự đoán vị trí cùng xác suất xuất hiện đối tượng trong từng ô lưới, cho phép xử lý nhanh và chính xác trong thời gian thực. YOLOv4 Tiny Face là phiên bản nhẹ, tối ưu cho thiết bị nhúng và di động, sử dụng kiến trúc CSPDarknet53-tiny và các kỹ thuật như LeakyReLU, FPN để tăng tốc độ phát hiện.

Phương pháp nhận dạng khuôn mặt sử dụng MobileFaceNet, một mạng CNN nhẹ dựa trên Depthwise Separable Convolution, giúp giảm đáng kể số lượng tham số và chi phí tính toán so với convolution truyền thống. MobileFaceNet kết hợp với ArcFace, một hàm mất mát cải tiến, giúp tăng độ phân biệt đặc trưng khuôn mặt, nâng cao độ chính xác nhận dạng.

Các khái niệm chính bao gồm:

  • Perceptron và hàm kích hoạt (activation function)
  • Mạng nơ-ron tích chập (CNN) và các lớp convolution, pooling
  • Thuật toán YOLO và các phiên bản YOLOv2, YOLOv3, YOLOv4
  • Depthwise Separable Convolution trong MobileNet
  • Hàm mất mát ArcFace trong nhận dạng khuôn mặt

Phương pháp nghiên cứu

Nguồn dữ liệu chính gồm hai bộ dữ liệu công khai: WiderFace với 393,703 khuôn mặt trên 32,203 hình ảnh, và DroneSURF với 200 video, 411,451 khung hình, hơn 786,000 chú thích khuôn mặt từ video drone. WiderFace được dùng để huấn luyện mô hình YOLOv4 Tiny Face, trong khi DroneSURF dùng để đánh giá hiệu năng thực tế.

Phương pháp phân tích bao gồm:

  • Huấn luyện mô hình phát hiện khuôn mặt YOLOv4 Tiny Face trên bộ dữ liệu WiderFace.
  • Đánh giá mô hình trên bộ dữ liệu DroneSURF với các chỉ số IoU (Intersection over Union), Precision, Recall và mAP (mean Average Precision).
  • Áp dụng MobileFaceNet kết hợp ArcFace để nhận dạng khuôn mặt từ các khuôn mặt được phát hiện.
  • Xây dựng hệ thống ứng dụng web client-server sử dụng FastAPI và ReactJS, giao tiếp qua REST API và streaming qua RTMP/RTSP.

Cỡ mẫu dữ liệu thử nghiệm gồm 360,706 file ảnh với 710,930 đối tượng khuôn mặt được đánh giá. Phương pháp chọn mẫu dựa trên dữ liệu thực tế từ drone, đảm bảo tính đa dạng về góc nhìn, ánh sáng và che khuất. Phân tích kết quả sử dụng các biểu đồ Precision-Recall và bảng so sánh mAP với các ngưỡng IoU khác nhau.

Timeline nghiên cứu kéo dài trong năm 2021, bao gồm các giai đoạn thu thập dữ liệu, huấn luyện mô hình, thử nghiệm và xây dựng hệ thống ứng dụng.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

  1. Hiệu quả phát hiện khuôn mặt bằng YOLOv4 Tiny Face: Trên bộ dữ liệu DroneSURF, mô hình đạt mAP 92.82% với ngưỡng IoU = 0.05 và mAP 63.09% với IoU = 0.1, cho thấy độ chính xác cao trong việc phát hiện khuôn mặt từ video drone. Số lượng đối tượng phát hiện đúng chiếm phần lớn, với tỷ lệ False Positive thấp.

  2. Khả năng nhận dạng khuôn mặt bằng MobileFaceNet kết hợp ArcFace: Mô hình nhận dạng cho kết quả chính xác cao trên các khuôn mặt được crop từ video drone, đặc biệt khi sử dụng 5 ảnh chân dung đa góc của đối tượng cần tìm. Việc giảm không gian tìm kiếm xuống 20 khuôn mặt lớn nhất giúp tối ưu thời gian xử lý mà không làm giảm độ chính xác.

  3. Tính đa dạng và thách thức của dữ liệu drone: Video drone có nhiều biến thể về góc nhìn, kích thước khuôn mặt, ánh sáng và che khuất, ảnh hưởng đến kết quả phát hiện và nhận dạng. Việc sử dụng bộ dữ liệu DroneSURF với hơn 786,000 chú thích khuôn mặt giúp đánh giá thực tế và toàn diện.

  4. Xây dựng hệ thống ứng dụng web: Hệ thống client-server sử dụng FastAPI và ReactJS, giao tiếp qua REST API và streaming RTMP/RTSP, cho phép người dùng dễ dàng truy cập và sử dụng trên nhiều thiết bị. Hệ thống đáp ứng yêu cầu xử lý thời gian thực và độ chính xác cao.

Thảo luận kết quả

Kết quả phát hiện khuôn mặt với mAP trên 90% ở ngưỡng IoU thấp cho thấy YOLOv4 Tiny Face phù hợp với bài toán phát hiện khuôn mặt trong video drone, nhờ kiến trúc mạng nhẹ và kỹ thuật trích xuất đặc trưng hiệu quả. Tuy nhiên, mAP giảm khi tăng ngưỡng IoU phản ánh sự khác biệt trong cách chọn bounding box giữa bộ dữ liệu huấn luyện WiderFace và bộ dữ liệu đánh giá DroneSURF, cũng như ảnh hưởng của các yếu tố như che khuất và góc nhìn.

MobileFaceNet với Depthwise Separable Convolution giúp giảm chi phí tính toán đáng kể, phù hợp cho ứng dụng trên thiết bị có tài nguyên hạn chế. Việc kết hợp ArcFace làm hàm mất mát tăng khả năng phân biệt đặc trưng khuôn mặt, cải thiện độ chính xác nhận dạng so với các phương pháp truyền thống.

So sánh với các nghiên cứu trước đây, hệ thống đề xuất đạt hiệu quả cao hơn trong điều kiện video drone thực tế, nhờ sự kết hợp tối ưu giữa thuật toán phát hiện và nhận dạng. Biểu đồ Precision-Recall và bảng mAP minh họa rõ sự ổn định và hiệu quả của mô hình trên các ngưỡng khác nhau.

Tuy nhiên, một số hạn chế như thiếu thông tin về khoảng cách và tốc độ drone, cũng như số lượng đối tượng trong mỗi video không lớn, ảnh hưởng đến khả năng đánh giá toàn diện về tốc độ xử lý và độ chính xác trong các tình huống phức tạp.

Đề xuất và khuyến nghị

  1. Tối ưu hóa thuật toán phát hiện khuôn mặt: Nâng cấp mô hình YOLOv4 Tiny Face bằng cách tích hợp các kỹ thuật augmentation dữ liệu và cải tiến kiến trúc mạng để tăng độ chính xác phát hiện ở các điều kiện ánh sáng yếu và che khuất. Mục tiêu tăng mAP lên trên 95% trong vòng 12 tháng, do nhóm nghiên cứu thực hiện.

  2. Mở rộng bộ dữ liệu huấn luyện và đánh giá: Thu thập thêm dữ liệu video drone với đa dạng điều kiện môi trường, khoảng cách và tốc độ bay để cải thiện khả năng tổng quát của mô hình. Thời gian thực hiện dự kiến 6-9 tháng, phối hợp với các đơn vị an ninh và cứu hộ.

  3. Phát triển hệ thống nhận dạng khuôn mặt đa đối tượng: Nâng cao khả năng nhận dạng đồng thời nhiều người trong video bằng cách mở rộng số lượng khuôn mặt được xử lý trong giai đoạn tiền xử lý và áp dụng các thuật toán phân loại đa nhãn. Mục tiêu giảm thời gian xử lý xuống dưới 1 giây cho mỗi khung hình, thực hiện trong 1 năm.

  4. Triển khai hệ thống trên nền tảng thiết bị nhúng và di động: Tối ưu hóa phần mềm và mô hình để chạy hiệu quả trên các thiết bị có tài nguyên hạn chế như drone hoặc thiết bị di động, giúp mở rộng ứng dụng trong thực tế. Thời gian phát triển dự kiến 12 tháng, phối hợp với các nhà sản xuất phần cứng.

  5. Tăng cường bảo mật và quyền riêng tư: Xây dựng các cơ chế bảo vệ dữ liệu khuôn mặt và thông tin cá nhân trong hệ thống, tuân thủ các quy định pháp luật về bảo vệ dữ liệu cá nhân. Đề xuất hoàn thiện trong 6 tháng, phối hợp với chuyên gia pháp lý.

Đối tượng nên tham khảo luận văn

  1. Nhà nghiên cứu và sinh viên ngành khoa học máy tính, thị giác máy tính: Luận văn cung cấp kiến thức sâu về các thuật toán phát hiện và nhận dạng khuôn mặt, phương pháp huấn luyện và đánh giá mô hình trên dữ liệu thực tế, phù hợp cho nghiên cứu và phát triển đề tài liên quan.

  2. Chuyên gia phát triển hệ thống an ninh và giám sát: Các giải pháp và kết quả nghiên cứu giúp cải thiện hiệu quả phát hiện người trong video drone, hỗ trợ xây dựng hệ thống giám sát thông minh, tăng cường an ninh công cộng và cứu hộ.

  3. Nhà phát triển phần mềm ứng dụng web và di động: Hướng tiếp cận xây dựng hệ thống client-server với FastAPI và ReactJS, cùng các yêu cầu phần cứng, phần mềm chi tiết, giúp phát triển ứng dụng tương tác người dùng thân thiện và hiệu quả.

  4. Doanh nghiệp sản xuất thiết bị drone và thiết bị nhúng: Nghiên cứu về tối ưu thuật toán nhẹ, giảm chi phí tính toán, phù hợp triển khai trên thiết bị có tài nguyên hạn chế, giúp nâng cao giá trị sản phẩm và mở rộng ứng dụng trong thực tế.

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

  1. Phương pháp YOLOv4 Tiny Face có ưu điểm gì so với các phiên bản YOLO khác?
    YOLOv4 Tiny Face có cấu trúc mạng nhẹ hơn, sử dụng CSPDarknet53-tiny và hai tỷ lệ dự đoán, giúp tăng tốc độ xử lý phù hợp cho thiết bị nhúng và di động, đồng thời vẫn giữ được độ chính xác cao trong phát hiện khuôn mặt.

  2. MobileFaceNet giảm chi phí tính toán như thế nào?
    MobileFaceNet sử dụng Depthwise Separable Convolution, chia phép tích chập thành hai bước riêng biệt, giảm số lượng tham số và phép tính đến khoảng 1/8 so với convolution truyền thống, giúp mô hình nhẹ và nhanh hơn mà vẫn duy trì độ chính xác.

  3. Bộ dữ liệu DroneSURF có đặc điểm gì nổi bật?
    DroneSURF là bộ dữ liệu lớn nhất về video drone với 200 video, hơn 411,000 khung hình và gần 787,000 chú thích khuôn mặt, thu thập trong nhiều điều kiện giám sát chủ động và thụ động, đa dạng về ánh sáng và góc nhìn, phù hợp cho nghiên cứu phát hiện và nhận dạng khuôn mặt.

  4. Làm thế nào để đánh giá hiệu quả mô hình phát hiện khuôn mặt?
    Hiệu quả được đánh giá qua các chỉ số như Intersection over Union (IoU), Precision, Recall và mean Average Precision (mAP). Đường cong Precision-Recall và giá trị mAP thể hiện độ chính xác và khả năng phát hiện đúng của mô hình trên bộ dữ liệu thử nghiệm.

  5. Hệ thống ứng dụng được triển khai như thế nào?
    Hệ thống sử dụng kiến trúc client-server, backend viết bằng Python với FastAPI cung cấp API, frontend sử dụng ReactJS tạo giao diện thân thiện. Streaming video sử dụng giao thức RTMP/RTSP, phù hợp cho xử lý thời gian thực và dễ dàng mở rộng.

Kết luận

  • Nghiên cứu thành công trong việc áp dụng và cải tiến thuật toán YOLOv4 Tiny Face kết hợp MobileFaceNet để phát hiện và nhận dạng người dựa trên khuôn mặt từ video drone trực tiếp.
  • Mô hình đạt mAP 92.82% với IoU 0.05 trên bộ dữ liệu DroneSURF, đáp ứng yêu cầu về độ chính xác và tốc độ xử lý trong thời gian thực.
  • Hệ thống ứng dụng web được xây dựng hoàn chỉnh, hỗ trợ giao diện thân thiện và khả năng mở rộng cho các thiết bị khác nhau.
  • Đề xuất các giải pháp nâng cao hiệu quả, mở rộng bộ dữ liệu và triển khai trên thiết bị nhúng nhằm phát triển ứng dụng thực tế.
  • Khuyến khích các nhà nghiên cứu và doanh nghiệp tiếp tục phát triển, ứng dụng công nghệ trong lĩnh vực an ninh, cứu hộ và giám sát thông minh.

Để tiếp tục phát triển, nhóm nghiên cứu sẽ tập trung vào tối ưu thuật toán, mở rộng dữ liệu và triển khai hệ thống trên nền tảng thiết bị di động trong vòng 12 tháng tới. Mời độc giả và các chuyên gia quan tâm liên hệ để hợp tác nghiên cứu và ứng dụng thực tiễn.