1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Công nghệ thông tin: Nghiên cứu và phát triển hệ thống cận biên thông minh vào ứng dụng nhận diện mặt người không đeo khẩu trang

174 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Và Phát Triển Hệ Thống Cận Biên Thông Minh Vào Ứng Dụng Nhận Diện Mặt Người Không Đeo Khẩu Trang
Tác giả Lê Anh Tuấn
Người hướng dẫn PGS. TS. Lê Trung Quân
Trường học Đại học Quốc gia TP. HCM
Chuyên ngành Công nghệ thông tin
Thể loại luận văn thạc sĩ
Năm xuất bản 2022
Thành phố TP. HỒ CHÍ MINH
Định dạng
Số trang 174
Dung lượng 78,62 MB

Nội dung

Trong dé tài này, hệ thống cận biên được dé xuất dùng công nghệ ảo hóa và điều phối container gọn nhẹ, có hỗ trợ GPU cũng như các chức năng nền tảng, giúp cho việc triển khai và quản lý

Trang 1

BOK CR

LE ANH TUAN

NGHIEN CUU VA PHAT TRIEN HE THONG CAN BIEN THONG MINH VAO UNG DUNG NHAN DIEN MAT NGUOI

KHONG DEO KHAU TRANG

RESEARCH AND DEVELOP INTELLIGENT EDGE SYSTEM

FOR FACE MASK RECOGNITION APPLICATION

LUAN VAN THAC Si NGANH CONG NGHE THONG TIN

Mã số: 8.48.02.01

GIẢNG VIÊN HƯỚNG DAN:

PGS TS Lê Trung Quân

Trang 2

Trước tiên, tôi xin gửi lời cảm ơn chân thành đến toàn thé quý Thay Cô, Giảng

viên trường Đại học Công nghệ thông tin - Đại học quốc gia TP Hồ Chí Minh, đặcbiệt là quý Thầy Cô đã trực tiếp giảng dạy, hướng dẫn, cung cấp những kiến thức

quan trọng, định hướng nghiên cứu và chia sẻ những kinh nghiệm làm việc trong

những dự án thực tế Tắt cả những điều ấy luôn là hành trang quý báu giúp tôi trongquá trình nghiên cứu khoa học và làm việc sau này Đặc biệt, để hoàn tất khóa luậncao học và các bài báo khoa học trong quá trình nghiên cứu và học tập, tôi luôn biết

ơn Thầy PGS.TS Lê Trung Quân Trong suốt quá trình thực hiện dé tài này, Thầy

luôn động viên, theo dõi tiến độ và hỗ trợ kịp thời Bên cạnh đó, tôi xin gửi lời cảm

ơn anh Huỳnh Văn Đặng đã hỗ trợ tôi nhiệt tình trong quá trình viết báo, tham gianghiên cứu khoa học Cuối cùng, tôi xin gửi lời tri ân đến gia đình, người thân và bạn

bè luôn quan tâm, theo dõi và hỗ trợ tôi trong suốt thời gian tham gia học tập và

nghiên cứu tại trường.

Tran trọng cảm on!

Tác giả.

Trang 3

Tôi xin cam đoan dé tài “Nghién cứu và phát triển hệ thống cận biên thông minh

vào ứng dụng nhận diện mặt người không đeo khẩu trang” được thực hiện độc lậpdưới sự hướng dẫn của Thầy PGS TS Lê Trung Quân Các kết quả và số liệu trong

báo cáo là trung thực Vì vậy, tôi xin hoàn toàn chịu trách nhiệm về các công trìnhnghiên cứu của mình.

Trang 4

DANH MỤC CÁC HÌNH ẢNH

DANH MỤC CÁC BẢNG

TOM TAT LUẬN VĂN

Chương 1 TONG QUAN

1LI Giớithiệu

1.2 Mục tiêu hướng đến của đề tài

1.2.1 Mục tiêu tông quan

1.2.2 Mục tiêu cụ thể

1.3 Giới hạn và kết quả mong muốn của đề tài

1.3.1 Đối tượng nghiên cứu

143.2 Giới hạn đề tài

1.4 Nội dung và phương pháp thực hiện

1.4.1 Các nghiên cứu và công nghệ có liên quan

1.4.2 Phân tích và thiết kế hệ thống

1.4.3 Thực hiện và triển khai hệ thống

14.4 Kết quả thực nghiệm và đánh giá

1.4.5 Kết luận và hướng phát triển tương lai

1.5 Y nghĩa của đề tài

1.6 Sản phẩm khoa học liên quan

Chương 2 CÁC NGHIÊN CỨU VÀ CÔNG NGHỆ LIÊN QUAN

24 Các nghiên cứu và xu hướng công nghệ trên thế giới

Trang 5

2.2 Một số ứng dụng liên quan đến COVID-19 tại Việt Nam

2.3 Cơ sở lý thuyết và hướng tiếp cận đề tài

Ảo hóa tại cận biên

Công nghệ ảo hóa container

Công nghệ điều phối containerNền tảng quản lý các điều phối container

Prometheus, Grafana và AlertManager

Các mô hình trí tuệ nhân tao nhận diện đôi tượng

Các công nghệ phát triển ứng dụng AI nhận diện đối tượng

Các chức năng nền tảng hệ thống

Trang 6

4.1.3 Facemask Recognition Management System

4.1.4 Huấn luyén va kiêm tra mô hình trí tuệ nhân tao

4.2 Triển khai các thành phần cận biên

4.2.1 Nền tảng hệ thống

4.2.2 Các chức năng nên tảng hệ thống

4.2.3 Facemask Recognition 102

4.3 Thực hiện các thành phan thiết bị đầu cuối

Chương 5 KET QUA THỰC NGHIỆM VÀ ĐÁNH GIA

5.1 Danh giá độ chính xác và hiệu suất của mô hình A

5.1.1 Ly thuyết phép đo đánh giá mô hình

5.1.2 Đánh giá kết quả 105

5.2 Đánh giá hiệu suất và tính sẵn sàng 109

5.3 Đánh giá hiệu suất trong việc triển khai hệ thống tự động

Trang 7

6.1 Kếtluận

6.1.1 Kết quả đạt được

6.1.2 Một số thách thức khi thực hiện đề tài

6.1.3 Một số hạn chế của đề tài

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

TÀI LIỆU THAM KHẢO

Trang 8

Advanced RISC Machine

Amazon Web Services Continuous Integration / Continuous Deployment Command-Line Interface

Configuration Management

Cloud Native Computing Foundation

Convolutional Neural Network

Central Processing Unit

Container Runtime Interface

Container Runtime Interface for Open Container Initiative

Camera Serial Interface

Development and Operations

Amazon Elastic Kubernetes Service Facemask Recognition Management System

Google Cloud Platform

Google Kubernetes Engine

Graphics Processing Unit Hypertext Transfer Protocol Infrastructure as Code

Institute of Electrical and Electronics Engineers

Integrated Development Environment Intersection over Union

Internet of Things

Trang 9

Machine Learning

Message Queuing Telemetry Transport

Network File System Non-Maximum Suppression

Open Container Initiative

Software Development Kit

Spatial Pyramid Pooling Single Shot Detector

Secure Sockets Layer

Transport Layer Security

VideoLAN Client Virtual Machine

Visual Object Classes

Wireless Fidelity

YAML Ain't Markup Language You Only Look Once

Trang 10

Hình 2.1 Kiến trúc nền tang Docker.

Hình 2.2 Kiến trúc hệ thông Kubernetes

Hình 2.3 Kiến trúc hệ thống K3:

Hình 2.4 Kiến trúc hệ thống Rancher Hình 2.5 Kiến trúc hệ thống Longhorn

Hình 2.6 Triển khai C/CD dùng Jenkin: Hình 2.7 Triển khai CI/CD dùng Jenkins và Ansible Hình 2.8 GitLab Runner dùng Kubernetes Executor. Hình 2.9 Tổng quan hệ thống R-CNN Al Hình 2.10 Kiến trúc Fast R-CNN Hình 2.11 Kiến trúc Faster R-CNN Hình 2.12 Kiến trúc Mask R-CNN Hình 2.13 Kiến trúc SSD Hình 2.14 Kiến trúc mạng SSD Hình 2.15 Hệ thống nhận diện YOLO

Hình 2.16 Mô hình YOLO

Hình 2.17 Kiến trúc mạng YOLO

Hình 2.18 Kiến trúc mạng YOLOv2

Hình 2.19 Kiến trúc mạng YOLOv3

Hình 2.20 Kiến trúc YOLOv4 Hình 3.1 Sơ đồ phân rã các thành phần hệ thống Hình 3.2 Kiến trúc hệ thống tổng quan

Hình 3.3 Kiến trúc nền tảng hệ thống đám mây

Hình 3.4 Kiến trúc hệ thống Cluster Management Hình 3.5 Kiến trúc dịch vụ Monitoring

Hình 3.6 Kiến trúc dịch vụ DevOps Hình 3.7 Kiến trúc dich vu Registry Hình 3.8 Kiến trúc ứng dụng FRMS

Hình 3.9 Lược đồ cơ sở dữ liệu ứng dụng FRMS

Trang 11

Hình 3.12 Kiến trúc dịch vụ Facemask Recognition.

Hình 3.13 Thiết kế mạch xử lý [8]

Hình 3.14 Thiết kế xử lý luồng video [8]

Hình 3.15 Thiết kế giao điện ứng dụng di động

Hình 3.16 Minh họa cơ sở dit li ứng dụng di động.

Hình 4.1 Chương trình cài đặt nền tảng đám mây dùng K8s cluster .Hình 4.2 Chương trình cai đặt nền tang đám mây dùng K3s cluster .Hình 4.3 Cấu hình NVIDIA Container Runtime hỗ trợ GPU

Hình 4.4 Các thành phần hệ thống đám mây dùng K3s cluster

Hình 4.5 Các thành phần hệ thống đám mây dùng K8s cluster

Hình 4.6 Chương trình cài đặt hệ thống quản lý Kubernetes cluster .

Hình 4.7 Các thành phan của hệ thống quan lý Kubernetes cluster

Hình 4.8 Giao diện hệ thống quản lý Kubernetes cluster

Hình 4.9 Giao diện hệ thống lưu trữ

Hình 4.10 Nhân bản dữ liệu và sao lưu dự phòng

Hình 4.11 Kế hoạch sao lưu dit liệu định kỳ

Hình 4.12 Sao lưu dữ liệu trên Amazon S.

Hình 4.18 Chương trình cài đặt nền tảng DevOps

Hình 4.19 Chương trình xây dựng container image của GitLab Runner

Hình 4.20 Khởi tạo GitLab.

Trang 12

Hình 4.27 Trạng thái của GitLab Runner sau khi được câu hình.

Hình 4.28 Quản lý CI/CD pipelines .

Hình 4.29 Xây dựng và đóng gói ứng dụng FRMS

Hình 4.30 Triển khai ứng dụng FRMS Hình 4.31 Dọn dẹp môi trường hệ thống Hình 4.32 Chương trình cai đặt chức năng quản lý container images

Hình 4.33 Khởi tạo Registry Hình 4.34 Dừng Registry .

Hình 4.35 Trạng thái dịch vụ lưu trữ của Registry Hình 4.36 Trạng thái hoạt động của Registry

Hình 4.37 Đăng nhập Registry

Hình 4.38 Truy cập Credential Store Hình 4.39 Chương cai đặt và mã nguồn của ứng dụng FRMS

Hình 4.40 Khởi tạo FRMS .

Hình 4.41 Dừng FRMS

Hình 4.42 Trạng thái dịch vụ lưu trữ của FRMG .86

Hình 4.43 Trạng thái hoạt động của FRMS .87 Hình 4.44 Giao diện quan lý của FRMS 87 Hình 4.45 Trang thông tin liên hệ của FRMS .88 Hình 4.46 Kết quả huấn luyện mô hình YOLOv3 416 x 416 91 Hình 4.47 Nhận diện đối tượng dùng hình ảnh 91 Hình 4.48 Nhận diện đối tượng dùng video

Hình 4.49 Nhận diện đối tượng dùng live camera

Hình 4.50 Dự đoán hình ảnh dùng pytorch-YOLOv4 Hình 4.51 Dự đoán video sử dung DeepStream

Hình 4.52 Thư mục cài đặt K3s cluster

Hình 4.53 Nền tảng hệ thống cận biên dùng K3s và Docker

Hình 4.54 Nền tảng hệ thống cận biên dùng K3s và Containerd Hình 4.55 Trạng thái ưu tiên của các kết nối mạng

Trang 13

Hình 4.58 Giao diện hệ thống quản lý Kubernetes cluster.

Hình 4.59 Giao diện hệ thông lưu trữ

Hình 4.60 Giao diện quan lý cấu hình các nodes của hệ thống lưu trữ Hình 4.61 Nhân bản dữ liệu và sao lưu dự phòng Hình 4.62 Sao lưu dữ liệu trên Amazon S3. Hình 4.63 Hệ thống giám sát trực quan Hình 4.64 Quản lý mã nguồn

Hình 4.65 Quản lý CI/CD pipelines

Hình 4.66 Cập nhật dịch vụ Facemask Recognition dùng CI/CD pipelines 101

Hình 4.67 Chương trình cài đặt dịch vụ Facemask Recognition .

Hình 4.68 Dịch vụ Facemask Recognition. Hình 4.69 Hệ thống camera và vi điều khién ESP32 [8]

Hình 4.70 Ứng dụng desktop (VLC)

Hình 4.71 Ung dung di động

Hình 5.1 Confusion Matrix

Hình 5.2 Biéu đồ đánh giá độ chính xác của các mô hình AI „107 Hình 5.3 Biéu đồ đánh giá độ chính xác của các mô hình AI 108 Hình 5.4 Biéu đồ đánh giá hiệu suất của mô hình AI 109 Hình 5.5 Biểu đồ tài nguyên phần cứng sử dụng 111

Trang 14

Bảng 2.1 So sánh SSD với các mô hình khác.

Bang 2.2 So sánh YOLO với các mô hình khác

Bang 2.3 So sánh YOLOv2 với các mô hình khác.

Bảng 2.4 So sánh YOLOv3 với các mô hình khác.

Bang 2.5 So sánh YOLOv3-Tiny với các phiên bản khác .

Bảng 2.6 So sánh YOLOv4 các mô hình khá

Bang 2.7 So sánh YOLOv4-Tiny với các mô hình kh: 55

Bảng 4.1 Các pretraining weights 88

Bảng 5.1 Đặc ta phần cứng thực nghiệm 104

Bảng 5.2 Đánh giá độ chính xác của các mô hình AI, 106

Bang 5.3 Đánh giá độ chính xác của các mô hình AI,

Bảng 5.4 Đánh giá số lượng tính toán của các mô hình AI

Bang 5.5 Đánh giá hiệu suất của mô hình AI

Bang 5.6 Đánh giá thời gian triển khai hệ thống an biên tự động

Bang 5.7 Đánh giá thời gian thực thi CI/CD pipelines

Bảng 5.8 Đánh giá tài nguyên phần cứng sử dụng

Trang 15

Trong thời đại ngày nay, sự phát triển không ngừng của các hệ thống nhúng

hiện đại, IoT (Internet of Things), 5G (Fifth Generation) và AI (Artificial

Intelligence) đã thúc đây sự phát triển của các ứng dụng thông minh dựa trên tính

toán biên Hướng tiếp cận này nhằm giải quyết số vấn dé của điện toán đám may

về độ trễ phản hồi đối với các ứng dụng yêu cầu xử lý theo thời gian thực, tiêu haonăng lượng và chỉ phí đường truyền

Trong dé tài này, hệ thống cận biên được dé xuất dùng công nghệ ảo hóa và

điều phối container gọn nhẹ, có hỗ trợ GPU cũng như các chức năng nền tảng, giúp

cho việc triển khai và quản lý các ứng dụng AI (dựa vào kiến trúc microservices) xử

lý theo thời gian thực trên các máy tính nhúng (có tài nguyên phần cứng hạn chế) trởnên dễ đàng, linh hoạt và hiệu quả hơn Giải pháp ảo hóa tối ưu phần cứng, gọn nhẹ,

hỗ trợ triển khai ứng dụng nhanh Hệ thống này điều phối các ứng dụng tự động, đảmbảo tính sẵn sàng, khả năng mở rộng, tự phục hồi, cân bằng tải và triển khai tự động

Các chức năng quản lý và giám sát tập trung đơn giản hóa việc quản trị các dịch vụ

chạy trên nền tảng ảo hóa và điều phối container, đặc biệt với số lượng lớn các thiết

bị và dịch vụ Ngoài ra, chức năng quan lý container image và DevOps giúp tự động.

hóa việc phân phối liên tục phần mềm cập nhật cho các ứng dụng chạy trên nền tảng

ảo hóa và điều phối container tại cận biên Hơn nữa, nhằm đảm bảo tính sẵn sàng, dữ

liệu được nhân bản, sao lưu dự phòng trên hệ thống và trung tâm đám mây giúp khôiphục dữ liệu trong trường hợp cap bách

Hiện nay, sự bùng nỗ của đại dịch COVID-19 gây thiệt hại nghiêm trọng về

người và tài sản trên toàn thé giới Trong đó, việc đeo khẩu trang là một trong những

biện pháp thiết thực nhất dé ngăn ngừa lay lan dịch bệnh trong cộng đồng Với nhu

cầu cấp thiết của đề tài, ứng dụng nhận diện mặt người không đeo khẩu trang đượcchọn để triển khai thực nghiệm trong việc nghiên cứu và xây dựng hệ thống cận biênthông minh dựa trên các giải pháp và hướng tiếp cận đã được trình bày ở trên

Trang 16

Chương 1

TONG QUAN

Chương | giới thiệu bài toán cần giải quyết, từ đó đưa ra giải pháp khắc phục,mục tiêu hướng đến và phạm vi nghiên cứu, nội dung và phương pháp thực hiện, ýnghĩa của đề tài, và sau cùng là các sản phẩm khoa học liên quan

1.1 Giới thiệu

Trong thời đại bùng nỗ thông tin, số lượng lớn các thiết bị kết nối mạng và dữ

liệu được sinh ra ngày càng tăng [4] [5], trong đó việc phân tích, xử lý dữ liệu trên,

cũng như áp dụng AI chủ yếu diễn ra tại điện toán đám mây Tuy nhiên, hướng tiếpcận này gặp phải van đề về độ trễ phản hồi do kết nói mạng giữa thiết bị nguồn và hệthống xử lý dữ liệu tại trung tâm đám mây thông qua đường truyền Internet có tốc độ

và băng thông hạn chế; vấn đề tắc nghẽn mạng bởi số lượng lớn dữ liệu được sinh ra

từ nhiều thiết bị kết nối mạng, cũng như tốn băng thông và tiêu hao năng lượng Đặc

biệt, với một số ứng dụng yêu cầu xử lý theo thời gian thực, hướng tiếp cận này không

thé đáp ứng yêu cầu Cụ thé, ứng dụng chăm sóc sức khỏe thông minh [6] (bài báođăng tại Hội nghị quốc tế INISCOM 2021 mà tác giả đã tham gia) yêu cầu phải có độ

trễ phản hồi thấp trong việc xử lý dữ liệu, đưa ra các cảnh báo về sức khỏe nhanh

chóng Nếu thời gian phản hồi chậm dẫn đến chậm trễ trong việc chữa trị và chăm

sóc bệnh nhân Dé giải quyết các van đề trên, giải pháp tính toán biên cho ứng dụng

chăm sóc sức khỏe thông minh đã được đề xuất Tính toán biên hướng đến việc phân

tích xử lý tính toán trung gian, xử lý dữ in thiết bị gửi dữ liệu nhất có thể Hướngtiếp cận này đáp ứng được độ trễ phản hồi thấp cũng như tiết kiệm năng lượng và chỉphí đường truyền

Ngoài ra, áp dụng AI tại hệ thống cận biên đang là một trong những xu hướngnghiên cứu hàng đầu hiện nay, với sự hậu thuẫn của các máy tính nhúng hiện đại,thiết bị IoT thông minh, các thuật toán học sâu tiên tiến, đã tạo ra các phần mềm thôngminh, hỗ trợ xử lý theo thời gian thực Mặc dù giải pháp tính toán biên đã giải quyếtđược vấn đề độ trễ phản hồi, giảm tiêu hao năng lượng và băng thông mạng, việctriển khai và quản lý ứng dụng AI tại cận biên vẫn gặp phải một số thách thức, gồm

Trang 17

có: tính sẵn sàng thấp, khó mở rộng và bảo trì; việc triển khai thủ công, tốn chi phí,đặc biệt với số lượng lớn các thiết bị và dịch vụ; quản lý và giám sát hệ thống cònnhiều hạn chế Trong thực tế, một số tình huống có thể xảy ra Ví dụ: giả sử một thiết

bị cận biên hoặc 6 cứng bị hỏng, ứng dụng AI được triển khai trên thiết bị trên ngừnghoạt động Nếu không có hệ thống giám sát, nhà quản trị sẽ không biết được tìnhtrạng tài nguyên phần cứng, trạng thái hoạt động của các dich vu dé sửa chữa kịpthời; hoặc nếu không có hệ thống dự phòng, mắt mát dữ liệu, thời gian khắc phục lâu,

giảm chất lượng dịch vụ, đặc biệt là các ứng dụng AI trong lĩnh vực y tế, hệ thống

cần ồn định và đảm bảo tính sẵn sàng cao Hơn nữa, việc bảo trì hệ thống thủ công

dẫn đến tốn chỉ phí và thời gian, dé sai sót do con người; khó khăn trong việc mởrộng hệ thống Để khắc phục các hạn chế trên, việc áp dụng công nghệ ảo hóa và điều

phối container tại cận biên là một lựa chọn phù hợp và hiệu quả Công nghệ ảo hóa

container cho phép các ứng dụng và thư viện phụ thuộc được đóng gói với nhiều kiến

trúc phần cứng khác nhau và thực thi trên môi trường riêng biệt Chúng được thiết kếnhỏ gọn, tối ưu hóa phần cứng, triển khai ứng dụng nhanh, phù hợp triển khai trêncác máy tính nhúng tại cận biên có tài nguyên phần cứng hạn chế Bên cạnh đó, côngnghệ điều phối container quản lý các ứng dụng tự động, nhằm đảm bảo tính sẵn sang,khả năng mở rộng, tự phục hồi và triển khai tự động Đặc biệt, nền tảng này hỗ trợ

GPU giúp cho ứng dụng AI xử lý theo thời gian dựa trên tính toán biên Ngoài ra, các

chức năng quản lý và giám sát tập trung được triên khai giúp đơn giản hóa việc quản

trị các ứng dụng trên nền tảng ảo hóa và điều phối container; chức năng quản lýcontainer image và nền tảng DevOps giúp tự động hóa việc cập nhật phần mềm chocác ứng dụng AI tại cận biên trở nên dễ dàng, linh hoạt và hiệu quả hơn, đặc biệt vớicác hệ thống có số lượng lớn thiết bị và ứng dụng được triển khai, tiết kiệm và giảmchỉ phí vận hành Sau cùng, hệ thống lưu trữ cung cấp chức năng nhân bản dữ liệutrên nhiều nodes nhằm đảm bảo tính sẵn sàng dữ liệu, sao lưu dự phòng trên hệ thống

và đám mây, hỗ trợ khôi phục dit liệu khi có sự cố nghiêm trọng xảy ra

Hiện nay, sự bùng nỗ của đại dịch COVID-19 gây thiệt hại nghiêm trọng về

người và tài sản trên khắp toàn cầu Thông qua việc khảo sát một số công trình liên

quan, kết quả cho thấy việc nghiên cứu ứng dụng phục vụ phòng tránh dịch bệnh đang

được nhiều sự quan tâm, đặc biệt trong trong tình hình dịch bệnh diễn biến phức tạp

Trang 18

Nếu có các giải pháp cảnh báo việc tuân thủ các quy tắc cộng đồng sẽ giúp phần nàocải thiện tình hình lây nhiễm dịch bệnh Một trong những giải pháp thiết thực nhất làgiải pháp giám sát các cá nhân không đeo khẩu trang ở những nơi công cộng trongthời gian dịch bệnh đang diễn ra Với nhu cầu cấp thiết của đề tài, ứng dụng nhậndiện mặt người không deo khẩu trang được chọn để triển khai thực nghiệm trong việcnghiên cứu và xây dựng hệ thống cận biên thông minh dựa trên các tiêu chí, giải pháp

và hướng tiếp cận đã được trình bày ở trên

1.2 Mục tiêu hướng đến của đề tài

1.2.1 Mục tiêu tổng quan

Nghiên cứu và triển khai hệ thống cận biên thông minh dùng công nghệ ảo hóa

và điều phối container có hỗ trợ GPU, cho các ứng dụng AI xử lý theo thời gian thựctrên các máy tính nhúng có tài nguyên phần cứng hạn chế Giải pháp ảo hóa tối ưu

phần cứng, gọn nhẹ, hỗ trợ triển khai ứng dụng nhanh Hệ thống này điều phối các

ứng dụng tự động, đảm bảo tính sẵn sàng, khả năng mở rộng, tự phục hồi và triểnkhai tự động Hệ thống cung cấp các chức năng quản lý và giám sát giúp đơn giản

hóa việc quản trị ứng dụng chạy trên nền tảng ảo hóa và điều phối container Ngoài

ra, chức năng quan lý container image và nền tang DevOps hỗ trợ tự động hóa việcphân phối liên tục phần mềm cập nhật cho các ứng dụng chạy trên nền tảng ảo hóa

và điều phối container tại cận biên Trong đề tài này, hệ thống đề xuất được áp dụng

vào ứng dụng nhận diện mặt người không đeo khâu trang.

1.2.2 Mục tiêu cụ thể

© Tim hiểu các công trình nghiên cứu và công nghệ có liên quan

© Phan tích thiết kế và triển khai nền tảng hệ thống đám mây trên máy tính (kiếntrúc x64) và hệ thống cận biên trên các máy tính nhúng (kiến trúc ARM) dùng

nền tảng ảo hóa và điều phối container

¢ Tim hiểu và triển khai hệ thống quan lý nền tảng điều phối container, tích hợp

địch vụ giám sát, dịch vụ lưu trữ và sao lưu dự phòng.

¢ Tim hiểu và ứng dụng nền tảng DevOps, tích hợp quản lý mã nguồn và CI/CD

hỗ trợ phân phối liên tục phần mềm cập nhật của ứng dụng nhận diện mặtngười không đeo khâu trang

Trang 19

Tìm hiểu và triển khai dịch vụ quản lý các container image, lưu trữ các ứng

dụng được đóng gói dưới dạng container.

Nghiên cứu và triển khai ứng dụng nhận diện mặt người không đeo khẩu trang.Tìm hiểu và phát triển ứng dụng di động đơn giản theo dõi luồng video nhậndiện mặt người không đeo khâu trang

Thực nghiệm và đánh giá kết quả: đánh giá độ chính xác và hiệu suất của môhình AI; đánh giá hiệu suất và tính sẵn sàng của hệ thống cận biên; đánh giáhiệu suất việc triển khai tự động hệ thống được dé xuất; đánh giá tài nguyên

và phần cứng sử dụng

1.3 Giới hạn và kết quả mong muốn của đề tài

1.3.1. Đối tượng nghiên cứu

Trong báo cáo này, các đối tượng nghiên cứu bao gồm:

Công nghệ ảo hóa và điều phối container: NVIDIA Docker, Containerd hỗ trợ

GPU, Kubernetes (K8s) và Lightweight Kubernetes (K3s).

Nén tang quan ly Kubernetes cluster: Rancher

Công cụ giám sát: Prometheus, Grafana và AlertManager.

Công cụ lưu trữ dữ liệu và sao lưu dự phòng: Kubernetes Persistent Volume,

Longhorn, Amazon S3 (Amazon Simple Cloud Storage).

Nền tảng DevOps: GitLab, GitLab Runner và Kubernetes Executor

Dịch vụ quản lý container image: Docker Registry và Docker Credential Pass.

Nền tảng ứng dụng nhận diện mặt người không đeo khẩu trang: Eclipse

Mosquitto, PostreSQL, FastAPI, Streamlit, Nginx, OpenCV, DeepStream,

TensorRT và một số thư viện khác

Nền tảng ứng dụng di động: Flutter, Google Cloud Firestore

Mô hình nhận diện đối tượng: YOLO (You Only Look Once)

Ngôn ngữ lập trình: Python, Bash, Dart, JSON (JavaScript Object Notation),

YAML (YAML Ain't Markup Language)

Thiết bị phan cứng:

o Máy tính sử dụng kiến trúc x64

o Máy tính nhúng Jetson Nano, kiến trúc ARM64

Trang 20

© Bộ vi điều khiển ESP32.

o Camera OV2640, IMX219-160, IMX219-160IR.

1.3.2 Giới han đề tài

Trong phạm vi tài chính và thời gian có giới hạn, hệ thống đang trong giaiđoạn phát triển có một số hạn chế nhất định

Công nghệ Kubernetes: Nền tảng hệ thống đám mây được xây dựng trên K8shoặc K3s tùy theo độ phức tạp của hệ thống và ràng buộc tài nguyên phầncứng, trong khi hệ thống cận biên được xây dựng trên K3s triển khai các dịch

vụ dùng YAML, Bash Script hoặc Helm Chart Trong đề tài này, hệ thống tíchhợp mở rộng một số dịch vụ chính, chưa ding hết tất cả các chức năng mà

Kubernetes hỗ trợ.

Nền tảng Rancher: Hệ thống hỗ trợ điều phối nhiều phân phối Kubernetescluster khác nhau Trong đề tài này, Rancher được dùng để quản lý cácKubernetes cluster, bao gồm: K8s hoặc K3s cho nền tảng hệ thống đám may

và K3s cho nền tảng hệ thống cận biên Hệ thống này tích hợp với dịch vụgiám sát dựa trên Prometheus, Grafana, AlertManager và hệ thống lưu trữLonghorn Các dịch vụ mở rộng khác, chẳng hạn như: Istio, Logging, v.v

không được giới thiệu và trình bày trong báo cáo này.

Nền táng DevOps: GitLab là một nền tảng DevOps hỗ trợ đa tính năng Trongphạm vi dé tài, hệ thống được triển khai nghiên cứu, tập trung chủ yếu sử dụng

công cụ quản lý mã nguồn kết hợp với GitLab Runner, Kubernetes Executor

thực thi CƯCD pipelines đơn giản nhằm tích hợp và phân phối liên tục ứngdụng nhận diện mặt người không đeo khẩu trang trên nền tảng ảo hóa và điềuphối container

Dịch vụ quản lý container image: Các công nghệ Docker Registry và

Credential Store được triển khai, cung cấp dịch vụ thông qua giao diện dòng

lệnh Việc xây dựng giao diện web đê quản lý các container image tương tự

Docker Hub hoặc dùng các công cụ hỗ trợ bên thứ ba không thực sự cần thiết,

tốn tài nguyên phần cứng

Ứng dụng nhận diện mặt người không đeo khẩu trang: Ứng dụng nhận

diện mặt người không đeo khâu trang được triên khai dựa trên MaskCam [7].

Trang 21

Trong phan này, nghiên cứu và triển khai ứng dụng nhận diện mặt người khôngđeo khẩu trang trên môi trường ảo hóa và điều phối container; tìm hiểu và thựchiện việc tạo dữ liệu, huấn luyện, trích xuất và tích hợp mô hình nhận diện đôitượng dùng YOLO vào ứng dung được triển khai tại hệ thông cận biên; nângcấp phần mềm, thư viện, giao diện, mã hóa giao tiếp kết nối và khắc phục lỗitrong quá trình xây dựng và triển khai.

¢ M6 hình AI nhận diện đối tượng theo thời gian thực: Dựa trên các côngtrình nghiên cứu liên quan, tìm hiểu cách thức hoạt động của các mô hình nhận

diện đối tượng, đồng thời so sánh độ chính xác và hiệu suất của các mô hình

nhận diện đối tượng bao gồm: R-CNN, SSD và YOLO từ đó nắm được ưu vànhược điểm của các mô hình và lựa chọn mô hình phù hợp cho ứng dụng nhậndiện mặt người không đeo khẩu trang theo thời gian thực, chạy trên máy tínhnhúng tại cận biên có tài nguyên phần cứng hạn chế Trong đề tài này, tập

trung thực nghiệm, so sánh và đánh giá hiệu suất và độ chính xác giữa các

phiên bản YOLOv3-Tiny và YOLOv4-Tiny, phù hợp dé phát triển ứng dụngđược đề xuất

¢ Tài nguyên phan cứng: Trong giới hạn tài chính, các phần cứng dùng chothực nghiệm có một số hạn chế nhất định về số lượng cũng như chất lượng.Thực nghiệm dựa trên quy mô nhỏ, không tập trung vào việc kiểm tra hiệu

suất của hệ thống với số lượng lớn các thiết bi

1.4 Nội dung và phương pháp thực hiện

1.4.1 Các nghiên cứu và công nghệ có liên quan

Trong phan này, tác giả thực hiện khảo sát, thu thập thông tin, tìm hiểu cáccông trình nghiên cứu và công nghệ có liên quan đến hệ thống được đề xuất Các bài

báo khoa học được tìm trên các trang web có uy tín bao gồm: Google Scholar,

SpringerLink, IEEE và một số tạp chí khoa học khác

1.4.2 Phân tích và thiết kế hệ thông

Trong giai đoạn này, các bước phân tích cầu trúc, phân rã hệ thống được thựchiện nhằm phân tích, thiết kế và xây dựng kiến trúc phần mềm, phần cứng cho từngthành phần hệ thống

Trang 22

1.4.3 Thực hiện và triển khai hệ thống

Trong phần này, các thành phần hệ thống được thực hiện và triển khai quatừng giai đoạn, dựa trên các thiết kế phần cứng, phần mềm và công nghệ liên quan

cho từng thành phần được thực hiện ở giai đoạn phân tích và thiết kế hệ thống.

1.4.4 Kết quá thực nghiệm và đánh giá

Trong phan thực nghiệm, các kết quả đo lường về độ chính xác, hiệu suất, tínhsẵn sàng và tài nguyên phần cứng sử dụng được ghi nhận qua các lần kiểm tra trên hệ

thống được đề xuất với các kịch bản khác nhau, từ đó so sánh kết quả, đưa ra nhậnxét và kết luận Nội dung bao gồm: đánh giá độ chính xác và hiệu suất của mô hình

AI nhận diện mặt người không đeo khẩu trang; đánh giá hiệu suất và tính sẵn sàng

của các ứng dụng được triển khai trên hệ thống cận biên; đánh giá hiệu suất việc triển

khai hệ thống cận biên tự động; đánh giá tài nguyên phần cứng sử dụng của dịch vụ

AI nhận diện mặt người không đeo khâu trang tại cận biên.

1.4.5 Kết luận và hướng phát triển tương lai

Phần kết luận tóm lược các kết quả đạt được của đề tài so với đề cương ban đầu,các nghiên cứu và thực nghiệm bé sung, một số thách thức khi thực hiện dé tài, vàsau cùng là các hạn chế của đề tài và hướng phát triển tương lai

1.5 Ý nghĩa của đề tài

¢ Tinh ứng dụng: Hệ thống cận biên được đề xuất được triển khai trên các máytính nhúng, kiến trúc ARM, dùng công nghệ ảo hóa và điều phối container có

hỗ trợ GPU, giúp cho việc triển khai và quản lý các ứng dụng AI (theo môhình microservices) xử lý theo thời gian thực tại cận biên trở nên dễ dàng, linh

hoạt và hiệu quả hơn Các chức năng quản lý và giám sát tập trung giúp đơngiản hóa việc quản trị và điều phối các ứng dụng và dịch vụ chạy trên nền tảng

ảo hóa và điều phối container Hệ thống này tích hợp dịch vụ quản lý các ứngdụng được đóng gói dưới dạng container image và nền tảng DevOps, hỗ trợ

triển khai phần mềm cập nhật cho các ứng dụng AI chạy trên các nền tảng ảo

hóa và điều phối container hiệu quả, giảm thiểu sai sót, lỗi cài đặt thủ công,

tiết kiệm chỉ phí và thời gian, đặc biệt triển khai với số lượng lớn thiết bị và

dịch vụ Hệ thống lưu trữ hỗ trợ việc nhân bản dữ liệu nhằm đảm bảo tính sẵn

Trang 23

sang, sao lưu dự phòng trên hệ thống đồng thời trên dich vụ lưu trữ đám mâycông cộng, hỗ trợ khôi phục dữ liệu trong một số trường hợp cấp bách.

¢ Tính khoa học: Phù hợp với xu hướng công nghệ và nghiên cứu trong giai

đoạn bùng né cách mạng công nghiệp 4.0 như hiện nay Sự phát triển của cácứng dụng dựa trên tính toán biên, việc chú trọng tốc độ phản hồi, xử lý thờigian thực cũng như giảm thiểu chỉ phí đường truyền ngày được quan tâm Do

đó việc nghiên cứu xây dựng ứng dụng sử dụng giải pháp tính toán biên là phù

hợp với sự phát triển

¢ Tinh cấp thiết: Sự bùng nỗ của đại dịch COVID-19 gây ra thiệt hại nghiêm

trọng về người và tài sản trên toàn thế giới Trong đó, đeo khẩu trang là một

trong những biện pháp thiết thực nhất nhằm ngăn ngừa lây lan dịch bệnh trongcộng đồng Việc có một ứng dụng giúp cảnh báo các trường hợp không đeo

khẩu trang là một điều hết sức cần thiết.

¢ Tính mới: Xây dựng hệ thống dựa trên Cloud Native đang được phát triểnmạnh mẽ trong những năm gần đây Tuy nhiên, việc triển khai hệ thống này

trên các máy tính nhúng, kiến trúc ARM tại cận biên vẫn còn trong giai đoạn

phát triển Hệ thóng cận biên sử dụng nền tảng ảo hóa và điều phối container,tích hợp các chức năng quản lý và giám sát, DevOps giúp quá trình triển khai

và quản trị các ứng dụng AI theo mô hình microservices tại cận biên trở nên

dễ dàng, linh hoạt và hiệu quả hơn Ngoài ra, nền tảng ảo hóa và điều phối

container hỗ trợ GPU tăng tốc xử lý tính toán, phù hợp với xu hướng hiện nay,

triển khai ứng dụng AI xử lý theo thời gian thực dùng tính toán biên trên nềntảng ảo hóa và điều phối container

1.6 Sản phẩm khoa học liên quan

Trước khi đăng ký đề tài này, tác giả là tác giả chính của một bài báo quốc tế

Hội nghị Quốc tế INISCOM 2021, Nhà xuất bản Springer; một bài báo Hội nghị Khoa

học trẻ 2021, Trường Đại học Công nghệ thông tin, Đại học Quốc gia Thành Phố HồChí Minh; và một bài báo được chấp nhận vào tháng 2 năm 2022 tại Hội nghị Quốc

tế INISCOM 2022

¢ Bài báo 1 - Hội nghị Quốc tế INISCOM 2021: “A Container-based Edge

Computing System for Smart Healthcare Applications” [6] Bài báo trên giới

Trang 24

thiệu về ứng dụng chăm sóc sức khỏe thông minh, hỗ trợ theo dõi và chăm sócbệnh nhân trong giai đoạn phục hỏi, cách ly Ứng dụng này dùng các thiết bị,ứng dung IoT và camera đề thu thập các dữ liệu bệnh nhân; áp dụng giải pháptính toán biên vào việc phân tích, xử lý dữ liệu dé giải quyết các van đề về độtrễ phan hồi, tiêu hao năng lượng và tốn chi phí đường truyền của hệ thốngtính toán dựa trên điện toán đám mây; áp dụng AI chan đoán bệnh tim và nhận

điện cảm xúc khuôn mặt bệnh nhân.

¢ Bai báo 2 - Hội nghị khoa học trẻ 2021, Trường Dai học Công nghệ thông tin,

Đại học Quốc gia Thành phố Hồ Chí Minh: “Research And Develop An

Intelligent Edge System Using Container And Kubernetes For A Smart

Face-Mask Recognition Application” [8] Bài báo này trình bày về hệ thống cận

biên dựa trên nền tảng ảo hóa và điều phối container cho ứng dụng nhận diện

mặt người không đeo khẩu trang

© Bai báo 3 - Hội nghị Quốc tế INISCOM 2022: “An Intelligent Edge System

For Face Mask Recognition Application” Bài báo trên được chấp nhận vàotháng 2 năm 2022 tại Hội nghị Quốc tế INISCOM 2022 Bài báo này là bảncập nhật của bài báo 2 với một số chức năng hệ thống được bồ sung; và cũngchính là một trong các sản phẩm khoa học của quá trình nghiên cứu và thực

hiện đê tài luận văn của tác giả.

Trang 25

Chương 2

CÁC NGHIÊN CỨU VÀ CÔNG NGHỆ LIÊN QUAN

Trong chương này, các nghiên cứu và xu hướng công nghệ trên thế giới được

khảo sát, nghiên cứu và tìm hiểu, gồm có: áp dụng AI trong phòng chống đại dịch

COVID-19; xu thé phát triển ứng dụng AI dựa trên tính toán biên và công nghệ ảohóa và điều phối container Tiếp theo là giới thiệu một số ứng dụng liên quan đếnCOVID-19 tại Việt Nam Sau cùng là cơ sở lý thuyết, các kỹ thuật, nền tảng côngnghệ liên quan và hướng tiếp cận đề tài

2.1 Các nghiên cứu và xu hướng công nghệ trên thế giới

2.1.1 COVID-19

Tình hình dịch bệnh COVID-19 diễn ra rất phức tạp trong những năm gần đây,trong khi nguồn nhân lực để tham gia vào cuộc chiến này còn nhiều hạn chế Chính

vì thế mà nhu cầu về ứng dụng AI trong phòng chống COVID-19 là rất lớn Trong

đó, các giải pháp giám sát dựa trên AI được áp dụng nhằm góp phần giảm thiểu sựlây lan của dịch bệnh, bao gồm: giám sát giãn cách xã hội, kiểm tra nhiệt độ cơ thể

và phát hiện mặt người không đeo khẩu trang [9]-[1I]

2.1.2 Trí tuệ nhân tạo tại cận biên

Trong những năm gần đây, ứng dụng AI tại cận biên là một trong những mục

tiêu chiến lược rõ ràng đối với nhiều doanh nghiệp Việc phát triển các ứng dụngthông minh dựa trên AI và tính toán biên với độ trễ phản hồi thấp, tiết kiệm băngthông và năng lượng đã trở thành nhu cầu cấp thiết trong nhiêu lĩnh vực, đặc biệt cácứng dụng yêu cầu xử lý theo thời gian thực Một số nghiên cứu cụ thể áp dụng AI tạicận biên gồm có: hệ thống giám sát sạt lở đất [12], áp dụng AI với kiến trúc tính toánbiên trên nền tảng Kubernetes và Docker; hệ thống tưới tiêu [13], giám sát theo thờigian thực và ứng dụng theo dõi bệnh nhân và người cao tuổi, trên nền tảng IoT vàđiện toán đám mây [14] và một số nghiên cứu khác

Mặc dù việc áp dụng AI tại cận biên phù hợp với xu thế hiện nay, cách tiếp

cận này cũng phải đối mặt với nhiều thách thức, chẳng hạn như van đề xử lý và tiêu

Trang 26

thụ điện năng Quá trình huấn luyện mô hình AI diễn ra tại cận biên cũng dẫn đếnnhu cầu cao hơn về khả năng tính toán của các phần cứng cận biên Ngoài ra, việclưu trữ và bảo mật dữ liệu đặt ra một thách thức vì các thiết bị cận biên sẽ giữ phầnlớn dữ liệu trong khi một lượng nhỏ dữ liệu hữu ích được lưu trữ tại hệ thống đámmây Do vậy, các công ty công nghệ hàng đầu phát triển phần cứng tại cận biên mạnhhơn với mức tiêu thụ năng lượng thấp hơn, đồng thời tập trung vào việc tối ưu hóacác phần mềm nhằm học và suy luận (inference) hiệu quả hơn [15].

2.1.3 Ảo hóa tại cận biên

Hiện nay, các ứng dụng tại cận biên áp dụng các công nghệ ảo hóa tăng lên

[16] [17] Các công nghệ ảo hóa cung cấp nền tang dé chạy các dịch vụ trên các kiếntrúc phần cứng khác nhau, dùng kỹ thuật hypervisor hoặc container Tuy nhiên, các

giải pháp dựa trên container đang thách thức các máy ảo dựa trên hypervisor truyền

thống Các xu hướng công nghệ ảo hóa mới là gọn nhẹ, linh hoạt và hiệu quả hơn

trong việc triển khai các dịch vụ Một số nghiên cứu gần đây tập trung vào việc tối

ưu ảo hóa dé tăng hiệu suất và so sánh hiệu suất giữa các công nghệ ảo hóa khác nhau,

trong đó các bài báo [18]-[22] tác giả đã thực nghiệm và so sánh hiệu suất của KVM,

Xen và Linux Container (LXC), Docker, OSv và so sánh thời gian chạy của từng môitrường với máy chủ vật lý Mặc dù kết quả cho thấy hiệu suất của các hypervisor đã

được cải thiện trong những năm qua, các giải pháp container vượt trội hơn; các tính

toán không cần thiết của chúng hầu như không đáng kẻ Mặt khác, ngoài các lợi ích

mà giải pháp ảo hóa container cung cấp, việc cân nhắc giữa hiệu suất và van dé bảomật của chúng cũng cần được quan tâm

Ngoài ra, việc kết hợp công nghệ ảo hóa và điều phối container là một trongnhững xu thế hiện nay, phù hợp với các ứng dụng dựa trên kiến trúc microservices.Nền tảng này điều phối các ứng dụng tự động, nhằm đảm bảo tính sẵn sàng, khả năng

mở rộng, tự phục hồi và triển khai tự động Trong đó, Kubernetes là một trong nhữngcông nghệ đang được sử dụng rộng rãi Với sự phát triển không ngừng, xu hướng

triển khai Kubernetes phiên bản gọn nhẹ dành cho thiết bị cận biên và IoT ngày càng

phổ biến, giúp quản trị và điều phối các dịch vụ chạy trên các container tại cận biên

tự động, linh hoạt và hiệu quả hơn Một công cụ khác, Docker Swarm cũng cung cấpmột giải pháp tương tự nhưng hạn chế các chức năng, chỉ phù hợp với các giải pháp

Trang 27

đơn giản, triển khai nhanh và quản lý dé dàng, trong khi Kubernetes hỗ trợ các yêucầu với độ phức tap cao hơn, có thé chạy trên nhiều container runtime, chăng hạn

như: Docker, Containerd và CRI-O Hiện nay, khoảng 70% doanh nghiệp có ý định

chuẩn hóa nên tảng Kubernetes đề quản lý các ứng dụng chạy trên các container trongnhững năm tới, và ước tính sẽ có 29 tỷ thiết bị được kết nối trên toàn cầu vào năm

2022 nhờ sự gia tăng mạnh mẽ của máy tính nhúng hiện đại, thiệt bị oT thông minh,

5G và tính toán biên [23] M: số nhà cung cấp dịch vụ đám mây hàng đầu đã xây

dựng dịch vụ dựa trên nền tảng Kubernetes bao gồm: EKS (Amazon ElasticKubernetes Service), GKE (Google Kubernetes Engine), AKS (Azure Kubernetes

Service), v.v, Ngoải ra, các phân phối Kubernetes nỗi bật dành cho hệ thống máy chủ,

gồm có: K8s, MicroK8s, K3s, v.v Đặc biệt, K3s sử dụng tài nguyên phần cứng thấp

hơn so với K8s và MicroK8s [24], được chứng nhận bởi CNCF (Cloud Native

Computing Foundation), có tính sẵn sàng cao, được thiết kế chủ yếu dành cho thiết

bị cận biên và IoT Hơn nữa, khi số lượng các ứng dụng chạy trên Kubernetes tại cậnbiên ngày càng tăng, sự ra đời của các giải pháp dùng dé đơn giản hóa việc quản trị

và điều phối các Kubernetes cluster ngày càng trở nên cấp thiết Cụ thé, vào năm

2019, Rancher và ARM đã hợp tác để phát triển giải pháp quản trị và điều phối

Kubernetes cluster cho hệ thống cận biên, dùng K3s trên các thiết bị kiến trúc ARM

có tài nguyên phần cứng hạn chế [23]

2.2 Một số ứng dụng liên quan đến COVID-19 tại Việt Nam

Với tình hình COVID-19 đang diễn ra phức tạp ở nước ta, một số doanh nghiệp

đã và đang phát triển các giải pháp dựa trên AI nhằm hỗ trợ kiểm soát tình hình dịch

bệnh, giảm rủi ro lây nhiễm chéo cho người kiểm tra khi tiếp xúc gần, giảm sức ép

nguồn lực nhân viên y tế, dễ dàng quản lý và kiểm soát, kịp thời ứng phó khi có tìnhtrạng khẩn cấp Một số ứng dụng cụ thể gồm có: Thiết bị kiểm soát cách ly,STAYHOMEI4 [1], giúp kiểm soát vị trí bằng cách tích hợp GPS nhằm xác định vịtrí của người dang cách ly theo thời gian thực, ghi lại các lần vi phạm, v.v Một ứngdụng khác là Máy kiểm tra đeo khẩu trang [2], tự động phát tín hiệu cảnh báo khi có

vi phạm, tự động nhận diện khuôn mặt của người tại địa điểm đặt thiết bi, và thông

tin được lưu trữ tại trung tâm điện toán đám mây Ngoài ra, ứng dụng xác định ngườitiếp xúc [3], sử dụng dữ liệu hình ảnh khuôn mặt của các đối tượng và video trích

Trang 28

xuất từ các camera có sẵn; sử dụng công nghệ AI để dò tìm đối tượng theo dữ liệuhình ảnh gương mặt và xác định các nguồn tiếp xúc gần nhằm tìm ra các đối tượng

FI-F3 xuất hiện trong các đoạn video; xuất ra báo cáo chỉ tiết thời gian đối tượng

xuất hiện và những người tiếp xúc gần với đối tượng; và một số ứng dụng khác

2.3 Cơ sở lý thuyết và hướng tiếp cận đề tài

2.3.1 Công nghệ ảo hóa container

2.3.1.1 Docker

Docker là một trong những nền tảng ảo hóa container phô biến nhất hiện nay

Chúng đóng gói các ứng dụng và thư viện phụ thuộc thành các container image và

triển khai trên các container Docker tích hợp các công cụ quản lý và tự động hóatriển khai ứng dụng trên một môi trường nhanh, gọn nhẹ và linh hoạt

Client

docker build

docker pull

docker run

Nguồn: Hình ảnh được trích dẫn từ docker.com.

Với xu hướng phát trién ứng dụng AI trên nền tảng ảo hóa container ngày càng,tang, NVIDIA Docker đã ra đời nhằm hỗ trợ các ứng dụng AI chạy trên các container

có thé sử dụng GPU dé tăng tốc xử lý tính toán

2.3.1.2 Containered

Containerd là một container runtime với ưu điểm là sự đơn giản, mạnh mẽ và

tích hợp dễ dàng Containerd được xây dựng tuân theo OCI (Open Container

Initiative) dé chạy các container OCI gom các tiêu chuẩn mở liên quan đến định dạng

container và container runtime Do đó, các container image được xây dựng theo OCI

có thể chạy trên các container runtime khác nhau Theo mặc định, Containerd sử dụngrunc để tạo và chạy các container Kể từ tháng 2 năm 2021, NVIDIA GPU đã công

Trang 29

bố hỗ trợ tích hợp cho Containerd Trước đó, NVIDIA GPU chỉ hỗ trợ Docker hoặcCRI-O Tuy nhiên, tài liệu chính thức hỗ trợ Containerd vẫn còn hạn chế.

2.3.1.3 CRI-O

CRI-O (Container Runtime Interface for Open Container Initiative) là một

container runtime khác, giải pháp gọn nhẹ dành cho Kubernetes, giải pháp thay thécho Containerd CRI-O cho phép sử dụng các runtime theo tiêu chuẩn OCI, chẳnghạn như: runc, Kata Containers, v.v dé chạy các container Tương tự Containerd,NVIDIA GPU có hỗ trợ CRI-O, cho phép các ứng dụng AI tận dụng GPU để tăng tốc

xử lý tính toán các tác vụ trên nền tảng ảo hóa container

2.3.2 Công nghệ điều phối container

Trong nhiều năm qua, dockershim là cầu nối giao tiếp giữa Docker vàKubernetes luôn được duy trì và phát triển Tuy nhiên, với sự phát triển rộng rãi củaKubernetes, việc chuẩn hóa CRI (Container Runtime Interface) được xây dung nhằmgiảm chỉ phí bảo trì, hỗ trợ các container runtime khác nhau, đồng thời củng cố và

mở rộng hệ sinh thái container dễ đàng và linh hoạt hơn Trong số đó, CRI-O hoặc

Containerd là các container runtime đang được hậu thuẫn bởi Kubernetes và CNCF

ngày càng phát triển và mở rộng dịch vụ Chúng đang dan thay thế Docker khi

Kubernetes có kế hoạch không tiếp tục sử dụng dockershim kể từ phiên bản 1.20 [25]

Tuy nhiên, thay đổi này ảnh hưởng chủ yếu đến việc quản trị của Kubernetes Các

Docker image tuân theo tiêu chuẩn OCI, được hỗ trợ đầy đủ trên Containerd, đồngthời Mirantis tiếp quản Kubernetes dockershim Do đó, Docker vẫn tiếp tục được hỗtrợ dé hoạt động với Kubernetes

2.3.2.1 Kubernetes

Kubernetes (K8s) là một nền tảng mã nguồn mở hỗ trợ quản trị và điều phối

các dịch vụ chạy trên container Kubernetes có một hệ sinh thái lớn, được sử dụngbởi nhiều nhà cung cấp dịch vụ đám mây hàng đầu, chăng hạn như: Amazon Web

Services, Microsoft Azure, v.v Các dịch vụ, tài liệu và công cụ hỗ trợ của Kubernetes

có sẵn rộng rãi Một số đặc điểm nổi bật của Kubernetes bao gồm: triên khai dịch vụ

tự động; khả năng tự khắc phục lỗi; tính sẵn sàng cao; tận dụng tài nguyên hiệu quả;

khả năng tăng giảm tự động; cân bằng tải; nâng cấp, phục hồi tự động các phiên bảnmới hoặc cũ dễ đàng và linh hoạt

Trang 30

Hình 2.2 Kiến trúc hệ t ống Kubernetes.

Nguồn: Hình ảnh được trích dẫn từ kubernetes.io.

2.3.2.2 K3s

K3s là một phân phối Kubernetes gọn nhẹ, được chứng nhận bởi CNCF do

Rancher Labs phát triển Chúng được thiết kế chủ yếu dành cho môi trường có phầncứng hạn chế, tính toán biên, IoT, kiến trúc ARM Các thành phan không cần thiết

của K8s được loại bỏ và đóng gói dưới dạng một tệp nhị phân duy nhất với kích thước

thấp hơn 50 MB Điều này giúp giảm sự phụ thuộc, đơn giản hóa việc cài đặt, chạy

và cập nhật hệ thống Mặc nhiên, K3s sử dụng Containerd runtime Tuy nhiên, người

dùng có thé cai đặt K3s với Docker một cách dé dang và nhanh chóng Với việc sử

dụng tài nguyên thấp [24], [26] và được sự hỗ trợ lớn của cộng đồng [27], K3s là một

lựa chọn phù hợp và hiệu quả, triển khai trên các thiết bị cận biên và IoT với tàinguyên phần cứng hạn chế

¬

Example configuration for nodes

‘running your apps and services

Hình 2.3 Kiến trúc hệ thống K3s.

Nguồn: Hình ảnh được trích dẫn từ rancher.com.

Trang 31

2.3.2.3 MicroK8s

MicrosK8s là một phân phối Kubernetes gọn nhẹ được phát triển bởiCanonical Chúng là một lựa chọn thay thế cho K3s, có thể hoạt động được trên máy

chủ, tính toán đám mây, cận biên và IoT Tuy nhiê MicroK8s sử dụng tài nguyên

lớn và xử lý chậm hơn so với K3s, đồng thời cần tối thiểu 4 GB bộ nhớ và dụng lượng

lưu trữ 20 GB [24].

2.3.2.4 KubeEdge

KubeEdge được giới thiệu vào cuối năm 2018, được hỗ trợ bởi Huawei [26].KubeEdge là một hệ thống mã nguồn mở dựa trên Kubernetes để mở rộng khả năngđiều phối ứng dụng trên nền tảng ảo hóa container cho các máy chủ tại cận biên.Chúng cung cấp hỗ trợ cơ sở hạ tầng mạng, triển khai ứng dụng và đồng bộ hóa siêu

dữ liệu (metadata) giữa hệ thống đám mây và cận biên Ngoài ra, KubeEdge tối ưu

hóa việc sử dụng tài nguyên tại cận biên với dung lượng bộ nhớ xuống thấp hơn70MB, đơn giản hóa giao tiếp giữa ứng dụng và thiết bị IOT, các thiết bị kiến trúcARM Tuy nhiên, KubeEdge vẫn trong giai đoạn phát triển, không ngừng cải tiến vàngày càng trở nên phô biến hơn

2.3.3 Nền tang quản lý các điều phối container

2.3.3.1 Red Hat OpenShift

OpenShift là nền tảng điều phối container dùng Kubernetes được phát triểnbởi Red Hat Chúng cung cấp một nền tảng ứng dụng nhất quán đề quản lý việc triển

khai Hybrid Cloud, nhiều Cloud và cận biên OpenShift hỗ trợ đa dạng các ứng dụng

bao gồm AI/ML, phân tích dữ liệu, v.v Tự động hóa việc trién khai và quản lý vòng

đời phát triển phần mềm dễ dàng và linh hoạt Nếu dự án là một phần của hệ sinh thái

Red Hat, OpenShift là một lựa chọn tốt Chúng được thiết kế đề tích hợp với cơ sở

hạ tầng Red Hat

2.3.3.2 Rancher

Rancher là một hệ thống được thiết kế nhằm quản lý và điều phối các

Kubernetes cluster Chúng giải quyết những vấn đề về vận hành và bảo mật khiquản lý tập trung nhiều Kubernetes cluster, đồng thời tích hợp nhiều công cụ như

quản lý và giám sát các tài nguyên và dịch vụ, sao lưu dự phòng, cũng như các công

cụ hỗ trợ tự động hóa việc triển khai các ứng dụng chạy trên các container Một số

Trang 32

công cụ phổ biến gồm có: Prometheus, Grafana, AlertManager hỗ trợ giám sát hệ

thống: Jenkins, GitLab hoặc Travis CI hỗ trợ triển khai CI/CD pipeline; Longhorn

iều dịch vụ khác Bên cạnh đó, Rancher dùng Helm

Chart nhằm đơn giản hóa việc cài đặt, cấu hình, nâng cấp các dịch vụ trên nền tảng

quản lý dịch vụ lưu trữ và nl

ảo hóa và điều phối container

User Cluster 2

kubeapt auth

Rancher là nền tảng mã nguồn mở, tuân theo các chuẩn mở và được hỗ trợ bởi

CNCF Do đó, chúng không bị giới hạn hoặc ràng buộc bởi một tổ chức như

OpenShift Nói cách khác, quá trình chuyền đổi giữa Rancher và các nền tảng khác

sẽ dễ dàng hơn, thay vì dùng OpenShift của Red Hat

2.3.4 Helm

Helm là trình quản lý và cài đặt gói ứng dụng dành cho Kubernetes Helm

Chart hỗ trợ cài đặt hoặc nâng cấp ứng dụng dựa trên các tham số cầu hình được định

trước Tất cả Helm Chart có cấu trúc định dạng chung, các cấu hình được khai báodưới dạng YAML Ưu điểm của Helm là quản lý và cài đặt ứng dụng một cách dễ

dàng, linh hoạt; tạo phiên bản, chia sẻ và triển khai trên nhiều hệ thống nhanh chóng;

Trang 33

quản lý tập trung Tuy nhiên, người dùng có thé mat nhiều thời gian dé tìm hiểu vàtriển khai Helm Chart, đặc biệt với các hệ thống phức tạp.

2.3.5 Prometheus, Grafana và AlertManager

Prometheus, Grafana, AlertManager là một bộ công cụ giám sát và cảnh báo

mã nguồn mở Prometheus thu thập và lưu trữ các thông số từ các mục tiêu giám sátdưới dạng dữ liệu chuỗi thời gian Các chỉ số này được thu thập và đánh giá theo định

kỳ Các quy tắc dùng đề tổng hợp và đánh giá các thông số cũng như kích hoạt cảnhbáo khi thỏa một trong các điều kiện đặt ra Dé kích hoạt cảnh báo, Prometheus sửdụng AlertManager để quản lý và gửi cảnh báo đến hệ thống nhận cảnh báo.Prometheus cho phép truy vấn các thông số của các mục tiêu giám sát thông quaserver API, dùng ngôn ngữ truy vấn PromQL Về giao diện, Prometheus tích hợp với

Grafana, hoặc Prometheus Graph dé giám sát trực quan tài nguyên và dịch vụ dựa

trên các kết quả truy vấn dùng PromQL

2.3.6 Longhorn

Longhorn là dịch vụ lưu trữ phân tán, gọn nhẹ, mã nguồn mở dành choKubernetes, được xây dựng bởi Rancher Lab và được hỗ trợ bởi CNCF Các chứcnăng chính của Longhorn gồm có: phân phdi các persistent volume tự động; nhân bản

các persistent volume trên các nodes của Kubernetes cluster nhằm đảm bảo tính sẵn

sàng dữ liệu; sao lưu dữ liệu trên hệ thống và dịch vụ lưu trữ mở rộng dùng NFS

(Network File System) hoặc Amazon S3; tao snapshot hoặc backup định kỳ và một

Trang 34

2.3.7 Kiến trúc Microservices

Microservices là một dạng kiến trúc, trong đó cấu trúc một ứng dụng như làmột tập hợp các dịch vụ, có thể bảo trì dễ dang, triên khai độc lập, giảm bớt sự phụthuộc giữa các dịch vụ với nhau Các dịch vụ có thê sử dụng các nên tảng công nghệkhác nhau Kiến trúc microservices cho phép phân phối nhanh chóng, thường xuyên

và đáng tin cậy, đặc biệt các ứng dụng lớn, phức tạp Các ứng dụng được xây dựng

theo kiến trúc này phù hợp việc trién khai trên nền tảng ảo hóa và điều phối container

được áp dụng rộng rãi hiện nay.

2.3.8 Công cụ và kỹ thuật DevOps

Ngày nay DevOps đã trở nên phé biến và được áp dụng rộng rãi trong lĩnh vựcphát triển phần mềm DevOps là sự kết hợp giữa phát triển (Development) và vận

hành (Operations) Chúng bao gồm các triết ly, kỹ thuật và công cụ thúc day việc

giao tiếp, cộng tác giữa các nhóm, rút ngắn thời gian phát triển va day nhanh việc

phân phối các ứng dụng với chất lượng cao Một s6 kỹ thuật của DevOps bao gồm:

quan lý dự án theo mô hình Agile, CI/CD; CM (Configuration Management), laC

(Infrastructure as Code); gidm sat va phan hồi liên tục Một thuật ngữ khác làDevSecOps, đề cập đến việc tích hợp các kỹ thuật kiểm tra và đánh giá tính bảo mậtvào mô hình phân phối phần mềm DevOps, từ thiết kế ban đầu đến tích hợp, kiểmthử và triển khai phần mềm

2.3.8.1 CUCD

CI/CD (Continuous Integration / Continuous Deployment) là một kỹ thuật tích

hợp va triên khai ứng dụng liên tục bằng việc áp dụng tự động hóa vào việc xây dựng,kiểm thử và trién khai các ứng dụng Điều này giúp giảm lỗi thủ công, phát hiện cáclỗi phần mềm sớm giúp tăng chất lượng phần mềm, đồng thời cung cấp phản hồinhanh hơn, giảm chỉ phí phát triển và vận hành Dưới đây là một ví dụ mình họa vềviệc triển khai ứng dụng tự động dùng CI/CD

Trang 35

Build Automation

Server

Deployment Push Code ‘Trigger Build Update

Hiện nay, các công cụ CƯ/CD được phát triển rộng rãi Tuy nhiên, xu hướng

triển khai CI/CD cho hệ thống cận biên trên các máy tính nhúng, kiến trúc ARM vẫn

trong giai đoạn phát triển và các công cụ hỗ trợ còn hạn chế Một số công cu CI/CD

nổi bật hiện nay hỗ trợ kiến trúc này gồm: Jenkins, Drone IO, GitLab, CircleCI và

Travis CI [28] Bên cạnh đó, các công cụ CM chăng hạn như: Ansible, Chef, Salt,

Puppet, hỗ trợ tự động hóa việc triển khai ứng dụng trên các hệ thống dựa trên cáctệp cấu hình định trước và được quản lý tập trung Điều này giúp việc quản lý và triểnkhai ứng dụng một cách nhất quán, đơn giản và linh hoạt hơn, tránh xảy ra lỗi hoặcthiếu sót do con người Ngoài ra, còn có các cộng cụ laC hỗ trợ quản lý và triển khai

cơ sở hạ tầng hệ thống thông qua các tệp cấu hình định trước Cơ sở hạ tầng đượcquản lý bởi quá trình này bao gồm cả thiết bị vật lý, máy ảo và tài nguyên cầu hìnhliên quan Một số công cụ phổ biến hiện nay như: Terraform, Vagrant, v.v Các công

cụ CM và laC có thể kết hợp với các công cụ CI/CD hỗ trợ quản lý và triển khai tự

động cơ sở hạ tang, dich vụ và ứng dụng

Trang 36

_Build Automation Serve

Hình 2.7 Triên khai CI/CD ding Jenkins va Ansible.

2.3.8.3 GitLab

Nhu da dé cập ở trên, một số công cụ nổi bật, chẳng hạn như: Jenkins,CircleCl, v.v hỗ trợ triển khai CI/CD trên máy tính nhúng, kiến trúc ARM tại hệ

thống cận biên Tuy nhiên, các công cụ này không tích hợp sẵn chức năng quản lý mã

nguồn Do đó, khi triển khai CI/CD, các hệ thống này cần liên kết đến hệ thống quản

lý mã nguồn bên thứ ba, chẳng hạn như GitHub Các bước cấu hình xác thực, phân

quyền, nhận thông báo đề kích hoạt CI/CD pipelines khi mã nguồn thay đồi khá phứctạp, cũng như các ràng buộc khác bởi nhà cung cap dich vụ Trong khi đó, hệ thống

GitLab có sẵn chức năng quản lý mã nguồn, đồng thời tích hợp GitLab CI, dùng

GitLab Runner giúp triển khai CI/CD trở nên đơn giản và dé dang hơn, cũng như

không bị ràng buộc bởi ứng dụng bên thứ ba Ngoài ra, công cụ GitLab còn tích hợp

nhiều chức năng khác và GitLab Runner có thể được thực hiện trên nhiều môi trường

khác nhau, đặc biệt dùng Kubernetes executor [29].

Trang 37

GitLab instance Runner on Kuberetes caster Kubemetes API Pop

Get acl job.

Create a POD to run the CI job.

Execute job

<

GitLab instance Runner on Kuberetes caster Kubemetes API Pop

Hinh 2.8 GitLab Runner ding Kubernetes Executor.

Nguồn: Hình ảnh được trích dẫn tir gitlab.com.

2.3.9 Flutter

Flutter là một nền tảng mã nguồn mở, viết bằng ngôn ngữ Dart, đang đượcphát triển rộng rãi trong những năm gần đây Một số ưu điểm của Flutter gồm có: hỗ

trợ phát triển ứng dụng nhanh, linh hoạt; giao điện đẹp, hiệu suất tương đương native;

triển khai ứng dụng trên đa nền tảng từ một mã chương trình Một mã nguồn có théđược biên dịch và chạy trên cả Android và iOS; hỗ trợ tính năng hot reload Cập nhật

mã nguồn và xem các thay đồi gần như ngay lập tức mà không bị mắt trạng thái Mặt

khác, Flutter cũng có một số hạn chế như sau: thư viện và hỗ trợ người dùng còn hạnchế so với các nền tảng native khác; kích thước của ứng dụng lớn hơn so với các nền

tảng khác do cấu trúc của chúng chứa các thư viện chạy trên đa nền tảng Tuy nhiên,

được sự quan tâm và phát triển bởi Google và cộng đồng, Flutter liên tục được cai

thiện và ngày càng phát triển mạnh mẽ hơn

2.3.10.Streamlit

Streamlit là một nền tảng mã nguồn mở được viết bằng ngôn ngữ Python

Chúng có một số ưu điểm là dé sử dụng; hỗ trợ phát triển nhanh các ứng dụng nhanh;

tự động cập nhật ứng dụng khi mã nguồn thay đổi; tương thích với nhiều thư viện

Python như: TensorFlow, Keras, PyTorch, v.v Ngược lại, do mới phát triển trong

Trang 38

những năm gan đây, thư viện và hỗ trợ người dùng của Streamlit vẫn còn hạn chế.

Thời gian qua, các phiên bản mới của Streamlit liên tục được phát hành, thư viện, tài

liệu và hỗ trợ người dùng ngày càng phong phú và hoàn thiện hơn

2.3.11.Eclipse Mosquitto

Eclipse Mosquitto là một broker mã nguồn mở, viết bằng ngôn ngữ C, sử dụng

giao thức MQTT (Message Queueing Telemetry Transport) MQTT là một giao thức

mạng có kích thước nhỏ, được thiết kế gọn nhẹ, truyền thông điệp giữa các thiết bị,

hoạt động theo mô hình publish / subscribe Các thông điệp có thể được mã hóa dùng

SSL/TLS và các máy khách được xác thực thông qua tên người dùng và mật khẩu,

plugin xác thực, chăng hạn như: Dynamic Security, Mosquitto Go Auth.

2.3.12.PostreSQL

PostgreSQL là một hệ quản trị cơ sở dir liệu quan hệ đối tượng mã nguồn mởdựa trên POSTGRES phiên bản 4.2 do đại học California, Berkeley phát triển.PostgreSQL chạy trên hầu hết các hệ điều hành phô biến hiện nay, tuân theo ACID

(Atomicity, Consistency, Isolation, Durability), có độ tin cậy cao, tính toàn vẹn dữ

liệu, hỗ trợ đa dạng các tính năng Chúng có các tiện ích mở rộng nổi bật như phần

mở rộng cơ sở dữ liệu không gian địa lý PostGIS phô biến hiện nay Bên cạnh đó,

được sự quan tâm và đóng góp của cộng đồng mã nguồn mở, PostgreSQL không

ngừng cải thiện về hiệu suất, tối ưu tài nguyên phần cứng sử dụng và các giải pháp

khác ngày càng vững mạnh và đa dạng hơn.

2.3.13.NoSQL

Cơ sở dữ liệu NoSQL cung cấp các lược đồ đa dạng và dễ dàng mở rộng, giải

quyết các vấn đề dữ liệu lớn và phân tán dữ liệu Do ưu tiên về hiệu suất và tốc độ xử

lý, không giới hạn về việc mở rộng dữ liệu, NoSQL có một sé hạn chế về tính nhấtquán dữ liệu, thiếu chuẩn hóa, v.v NoSQL có nhiều loại dựa trên mô hình dữ liệu củachúng, trong đó, các mô hình dữ liệu chính gồm có: Document, Key-value store, WideColumn Store và Graph Một số công cụ NoSQL phổ biến bao gồm: MongoDB,

Redis, Cassandra, và một số công cụ khác

2.3.14.Cloud Firestore

Firestore là một cơ sở dữ liệu NoSQL được phát triển bởi Google Chúng có

cấu trúc phân cấp linh hoạt, có thé mở rộng, đảm bảo tính sẵn sàng, bảo mật, hỗ trợ

Trang 39

phát triển các ứng dụng di động, web trên Firebase và Google Cloud Tương tựFirebase Realtime Database, Firestore đồng bộ hóa dit liệu đến các ứng dụng di động,web thông qua trình điều khiển thời gian thực và cho phép các ứng dụng có thể hoạtđộng ngoại tuyến cho dù gặp vấn đề về độ trễ mạng hoặc kết nối Internet Firestore

là dịch vụ phải trả phí mặc dù Google cho phép sử dụng miễn phí với một hạn ngạch

nhất định về kích thước dữ liệu, số lần truy cập, đọc, ghi hoặc xóa dữ liệu

2.3.15 Các mô hình trí t hân tạo nhận diện đối tượng

Trong lĩnh vực thị giác máy tính, hiện nay có nhiều mô hình nhận diện đốitượng hiện đại, tạo ra các ứng dụng thông minh được áp dụng trong thực tế Ví dụ:

hệ thống phát hiện người la, tội phạm; hệ thống xe tự lái, v.v Có hai loại mô hình

chủ yếu, bao gồm: nhận diện đối tượng qua hai giai đoạn và nhận diện đối tượng qua

một giai đoạn duy nhất Một số mô hình nổi bật hiện nay gồm có: Faster R-CNN,

Mask R-CNN, SSD, YOLO, v.v Theo kết quả khảo sát dưới đây, mô hình YOLO có

kích thước mạng gọn nhẹ là lựa chọn phù hợp đê áp dụng vào giải pháp nhận diện

mặt người không đeo khâu trang trên các máy tính nhúng Jetson Nano nhỏ gọn, cótài nguyên phần cứng hạn ché tại cận biên

2.3.15.1 Các mô hình R-CNN

¢ R-CNN

Mô hình R-CNN (Region Based Convolutional Neural Network) được tác gia

Ross Girshick và cộng sự giới thiệu vào năm 2014 [30] R-CNN được thiết kế đơngiản, có thể mở rộng, kết hợp các đề xuất vùng (region proposal) với CNN

(Convolutional Neural Network) giúp cải thiện độ chính xác trung bình đạt 53,3%

mAP (Mean Average Precision), hơn 30% so với kết quả tốt nhất trước đó trên tập

dữ liệu VOC (Visual Object Classes).

Tir anh dau vao, R-CNN dùng thuật toán Tim kiếm có chọn lọc (SelectiveSearch) [31] xác định các vùng được đề xuất (xắp xi 2,000 vùng) và dùng CNN dé

tính toán các đặc trưng trên từng vùng Từ đó, áp dụng thuật toán SVM (Support

Vector Machine) đề phân lớp đối tượng trên mỗi vùng, và dùng phương pháp hồi quy(regression) để điều chỉnh các bounding box

Trang 40

Regions with CNN features

3 warped region [acroplane? no ]

Nguồn: Hình ảnh được trích dẫn từ bài báo [30].

Một số hạn chế của R-CNN, trong đó đáng chú ý là quá trình huấn luyện phức

tạp, nhiều công đoạn, tốn nhiều thời gian và không gian Với tốc độ xử lý rất chậm,đạt 47 giây cho mỗi ảnh [32], R-CNN không phù hợp cho các ứng dụng nhận diệnđối tượng theo thời gian thực Hơn nữa, phương pháp Tìm kiếm có chọn lọc có thé

tạo ra các vùng được đề xuất không chính xác Điều này cũng ảnh hưởng đến hiệu

suất và độ chính xác của mô hình

e Fast R-CNN

Mô hình Fast R-CNN, phiên bản nâng cấp của R-CNN, được tác gid Ross

Girshick được đề xuất vào năm 2015 [32] Tương tự R-CNN, mô hình Fast R-CNN

vẫn ding thuật toán Tim kiếm có chọn lọc dé xác định các Rol (Region of Interest)

tir anh dau vao Mặt khác, thay vì thực hiện CNN cho mỗi vùng, Faster R-CNN đưa

toàn bộ bức ảnh vào một CNN đê tạo feature map Rol pooling layer theo sau bởi các

fully-connected layer được dùng để trích xuất vecto đặc trưng có kích thước cố địnhcho mỗi vùng Mỗi véctơ đặc trưng sau đó được đưa vào các fully-connected layertương ứng, dùng hàm softmax đề dự đoán xác suất phân lớp đối tượng, hoặc không

chứa đối tượng (background), đồng thời dự đoán vị trí của bounding box, dùng

phương pháp bounding box regression.

VECtOF foreach Ro!

Hinh 2.10 Kién tric Fast R-CNN.

Nguồn: Hình ảnh được trích dan từ bai báo [32].

Ngày đăng: 24/11/2024, 14:55

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN