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

Khóa luận tốt nghiệp Kỹ thuật máy tính: Nghiên cứu thiết kế hệ thống giám sát chất lượng công việc của thợ sửa chữa điện dựa trên nền tảng IoT

65 0 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à thiết kế hệ thống giám sát chất lượng công việc của thợ sửa chữa điện dựa trên nền tảng IoT
Tác giả Huỳnh Quang Thái, Nguyễn Văn Thiện Tâm
Người hướng dẫn TS. Nguyễn Minh Sơn
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Kỹ thuật máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 65
Dung lượng 42,73 MB

Nội dung

TOM TAT KHÓA LUẬNHệ thống giám sát chất lượng công việc của thợ sửa chữa điện ứng dụng IoT, về mặt cốt lõi là một nghiên cứu nhằm hiện thực hóa ý tưởng về một mô hình dịch vụ, với khả nă

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KỸ THUẬT MÁY TÍNH

HUỲNH QUANG THÁI - 18521380

NGUYÊN VĂN THIỆN TÂM - 18521369

KHÓA LUẬN TÓT NGHIỆP

NGHIÊN CỨU VÀ THIẾT KÉ HỆ THÓNG GIÁM SÁT CHÁT LƯỢNG CÔNG VIỆC CỦA THỢ SỮA CHỮA

ĐIỆN DỰA TREN NEN TANG IOT

RESEARCH AND DESIGN THE MONITORING

SYSTEM BASED ON IOT PLATFORM FOR

ELECTRICIAN

KY SU NGANH KY THUAT MAY TINH

GIANG VIEN HUONG DAN

TS NGUYEN MINH SON

TP HO CHi MINH, 2024

Trang 2

THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số

10/QD-ĐHCNTTT ngày 05 tháng 01 năm 2024 của Hiệu trưởng Trường Đại học Công nghệ thông tin.

Trang 3

tập thê thầy cô giảng viên luôn thúc đây và truyền đạt những kiến thức sâu rộng,

cần thiết, giúp sinh viên tích lũy kinh nghiệm quý báu cho con đường sự nghiệp sau

`

này.

Cuối cùng, chúng em đặc biệt bày tỏ lòng biết ơn đến thay TS Nguyễn Minh Son,người đã không ngừng hỗ trợ và khích lệ bọn em trong suốt quá trình thực hiện

khóa luận tốt nghiệp Những kiến thức, kỹ năng, va tư duy mà Thay đã truyền dat

với nhóm không chỉ là những tri thức quý báu cho công việc nghiên cứu mà còn là

những giá trị quan trọng trong sự phát triển cá nhân sau này

Một lần nữa, xin chân thành cảm ơn Ban giám hiệu nhà trường, quý thầy cô giảng

viên viên, và đặc biệt là thầy TS Nguyễn Minh Sơn đã trao tặng chúng em vô số cơhội dé phát triển

Chúng em xin chân thành cảm ơn!

Sinh viên thực hiện

Huỳnh Quang Thái

Nguyễn Văn Thiện Tâm

Khoa Kỹ Thuật Máy Tính Lớp

KTMT2018

Trang 4

TOM TAT 4:9.00079)00010757 ÿ(9E.1005

Chương 1 TONG QUAN ©2522 2ESEESEEEEE2E12171571121221 21212 xe,

1.1 Tổng quan để tài -2¿©5¿+2<+E<£EEEEEEEEEEEEEE21121121 1121 1c

1.2 Tính hình trong nước và thé giới -22+2+z++£++£x+zxerxerreee

1.2.2 Tình hình quốc tẾ 2-2 E+E+£E+£E£EE£EE+EEtrkerkerkrrkered

1.3 Mục tiêu đề tài L HH,

Chương 2 CƠ SỞ LÝ THUYÊT - ¿2 s+E£+E£+E££E+EE+EE£EE£Eerkerxrreee

2.1 Tổng quan các thiết bi phần cứng sử dụng trong hệ thống

2.1.1 Vi điều khiển ESP32Cam ccccccccrkerrrrrrrrrrrrrke 2.1.2 Nguồn điện Battery :-5scctccE2 2121121122111 21c

2.1.3 Bộ khung in 3ÌD - - SG sung key

2.2 Tổng quan các thiết bi phần mềm sử dung trong hệ thống II

2.2.2 Framework NestJŠ - -.-c Sàn ng ng ngư, 12

2.2.5 Cơ sở dữ liệu NoSQL MongoDB «+ ««c+sxsseeesee 14

MỤC LỤC

Trang 5

2.2.6 Phản hồi thời gian thực với WebSocket . « «+ 15

2.3 Hệ thống xử lý ảnh - 2 -©k+EE+EE2E2EEEEEEEEEEEEEEEEEErkerkerrrei 16 2.3.1 Thur viện OpenC - cv vn TH ng ng ry 16 2.3.2 Nhận diện vật thé (Object Detection) .- ‹ -«« -«+<<s++ 17 2.3.3 Giải thuật YOOV HS nH TH nhiệt 19 2.3.4 May 6o (0 22

Chương 3 PHAN TÍCH VÀ THIET KE HỆ THÓNG - 23

3.1 Sơ đồ tong quan hệ thống 2-2-2 +2 +E2EE2EE+EE+EEerEerxerreee 23 3.2 Lưu đồ giải thuật hệ thống - 2-52 2+ 2+E+EEeEeEzErkersees 24 3.3 Luồng đặt dịch vụ từ người đùng - - «+ +-« «+ +sseesseessees 27 3.3.1 Module tìm va chọn địa điểm thực hiện dịch vu mong muốn 27

3.3.2 Tìm kiếm vi trí qua việc thao tác trực tiếp với giao điện bản d631 3.3.3 Chọn thợ sữa chữa dựa trên khoảng cách địa lý mong muốn 33

3.3.4 Đặt các dịch vụ cụ thé, điền các thông tin cần thiết và xác nhận

3.4 Phương thức hoạt động cua ứng dụng thợ sửa chữa 35

3.4.1 Tổng quan về ứng dụng và quy trình nhận đơn hàng dịch vụ 36

3.4.2 Luéng hoạt động khi thợ thực hiện công viỆc - 36

3.4.3 Phương thức hoạt động của Server AI nhận diện hình anh 38

3.5 Xây dựng bộ dữ liệu Dataset cho mô hình AI - «« 38

3.5.1 Bộ dữ liệu Dataset cho thuật toán YOLOv3 38

3.5.2 Thu thập dữ liệu Dataset thủ công - - «++s«<+++++ 40

3.5.3 Thu thập dữ liệu Dataset từ một nguồn CÓ SẵN c-ccccecsca 41

Trang 6

3.6 Các tệp tin Config và Classmame . «+ s «+ x++e+xeerseeres 42

3.7 Xay dựng mô hình Yolov3 tự chọn với Google Colab 43

3.7.1 Framework Darknet và máy ảo Google Colab 43

3.7.2 Huấn luyện mô hình YOLOv3 với Google Colab 43

Chương 4 KET QUÁ THUC NGHIỆM - 2-2 2 2+s+zx+zszceez 48

Chương 5 KẾT LUẬN VA HƯỚNG PHAT TRIEN - 52

5.1 Kết luận ccccrtr the 52 5.2 Hướng mở rộng đề tài 2 s+s+EE+EEeEESEEE2EE2EEEEEErkerkerreee 52

TÀI LIEU THAM KHẢO - S6 St St SESEEEEEEEEEEEEEEEEEEEESEEEEEErkrkrrerksree 53

Trang 7

DANH MỤC HÌNH VE

Hinh 2.1 Kit Esp32Cam 0n 5 Hình 2.2 Hộp sac chứa pin sạc I§65 - 1S S2 SH ng ke, 6

Hình 2.3 Vỏ ngoài khi thao TỜI - ¿- <6 +1 kExE vn tư rưệt 7

Hình 2.4 Vỏ ngoài khi được lắp nguyên khối -2- 2 2 s2 s+zxezszzsz 8

Hình 2.5 Mặt dưới Camera cccccccccecccccccssscccessscsecsesssssccssssseceessssesessssseeeeees 8

Hình 2.6 Mặt trước Camera - - - << + + SE 32223311111 1111995331111 tren, 8

Hình 2.8 Góc thắng đứng thực tế khi tháo rời ¿ sc©cz+cxccxcrxcrreerxee 9

Hình 2.9 Góc nghiêng thực tế khi tháo rời - ¿552 ©52+++£++£x+rxerxezes 9 Hình 2.10 Mặt trước mũ bảo hộ khi gan Cam 2-2 52 s52 10 Hình 2.11 Mặt bên mũ bảo hộ khi gan Cam - 555cc sszseeeezreeecs 10 Hình 2.12 Mặt sau mũ bảo hộ khi gắn Cam 2 2 2 55s +52 10 Hình 2.14 Mặt dưới mũ bảo hộ có gan Ost a re 11 Hình 2.14 Mặt trên mũ bảo hộ có gắn Cam 2 2 2 s2 s+£++zszzse2 11

Hình 2.15 NodeJS - c- G1111 HT TH HH ng HH kh 11 Hình 2.16 NestJS - ác LH HH TH TH ng TH nh HT nh 12 Hinh 2.17 ReactyS woo 13

Hình 2.18 React ÏNafIV€ - - G1 ng TH TH HH ngư 14

Hình 2.19 Cấu trúc MOongoDB 111177 15

Hình 2.20 WebsOCKL - - G1111 HH it 15

Hình 2.21 Các cột mốc quan trọng DCNNs và modult mạng - 17 Hình 2.22 Cấu trúc của Residual unit - cccc+ccxxerrrrrterrrrrrrrrrrrrree 20

Hình 3.1 Sơ đồ tổng quan hệ thống 2-2-2 2 E2+E£2E£2EE+EE+EEerxerxerree 23 Hình 3.2 Lưu đồ giải thuật hệ thống - 2 2 2 E+£E+EEe£EtE+Ezrezrxee 24 Hình 3.3 Module tìm va chọn địa điểm thực hiện dịch vụ - 27

Trang 8

Hình 3.4 Cấp quyền định vị cho ứng dụng - 2 22+ s+zs+zxzzxzse+ 28

Hình 3.5 Tìm kiếm vị trí người dùng - 2 2 s+x+zx+rxerxerrezrerrserxee 29 Hình 3.6 Dữ liệu trả về của API autocomplete l - 2-5-5252 30 Hình 3.7 Dữ liệu trả về của API autocomplete 2 2-22 s+cscszsz 31 Hình 3.8 Dữ liệu trả về của API geocode -¿2¿©cz+cz+cs+zs+zxerxersee 32

Hình 3.9 Lưu đồ chọn thợ theo khoảng cách địa lý mong muốn 33

Hình 3.10 Công thức tính khoảng cách giữa hai điểm - 34

Hình 3.11 Đặt và nhận don - - 2 SE 222311111 1111993331111 key 35 Hình 3.12 Phương thức hoạt động của server AÌ -««+-««++s++ss++ 37 Hình 3.13 Hình ảnh khi được nhận diện chú thích - - -<55<5 39 Hình 3.14 Nội dung tiêu biểu của một file chú thích -2- 39 Hình 3.15 Giao diện của LabelÏmg - - s55 55+ +£+*vE+eeeeeerseeresees 40 Hình 3.16 Tập thư mục thu thập thủ công - ¿++-«+++s+++e>+sex+sss+ 41 Hình 3.17 Giao diện Google OpenImage - 5 555555 *++s£+seessees 42 Hình 3.18 Tập thư mục hình ảnh thu được từ Openlmage 42

Hình 3.19 Lệnh clone IDDarknet - c5 5 +1 31333 2E*35E551xxxx+ 44 Hình 3.20 Sửa đôi Makefile dé thiết lập GPU và OpenCV 44

Hình 3.21 Bảng chon chế độ GPU cho Colab - - 2 s+s+s+ze£s+E+E+zszezxez 44 Hình 3.22 Lay trọng số Weight mặc định Train san của YOLOv3 45

Hình 3.23 Make File darknet - < 6 +11 vn ng ng ng 45 Hình 3.24 Xác thực phiên ban CUDA 6 5S 2s £*vE+veeseeseeeserse 45 Hình 3.25 Chạy lệnh nhận dạng đồ vật Darknet với model đã train sẵn 45

Hình 3.26 Kết quả nhận dạng vật thé với Model đã tran sẵn - 46

Hình 3.27 Tập câu lệnh liên kết Google Colab với Google Drive 46

Hình 3.28 Chép tệp tin nén từ Drive sang Colab và giải nén 47

Hình 3.29 Nội dung File Ob)J.đa{a G G 1v ng ng nền 47 Hình 3.30 Câu lệnh train mô hình nhận dạng vật thé tự chọn 48

Trang 9

Hình 4.1 Nhận diện ban tay khi đang cầm nắm thiết bị (1) - 49

Hình 4.2 Nhận diện bàn tay khi đang cầm nắm thiết bị (2) . 49

Hình 4.3 Nhận diện găng tay khi đang cầm năm thiết bị (1) - 50

Hình 4.4 Nhận diện găng tay khi đang cầm nắm thiết bị (2) - 50

Trang 10

DANH MỤC BANG BIEU

Bảng 4.1 Bảng kết quả kiểm thử thực nghiệm

Trang 11

DANH MỤC TỪ VIET TAT

STT | Ký hiệu chữ viết tắt | Chữ viết đầy đủ

1 AC Alternating Current

2 Al Artificial Intelligence

3 API Application Program Interface

4 ARM Advanced RISC Machine

5 CPU Central Processing Unit

6 CSS Cascading Style Sheets

12 HDMI High Definition Multimedia Interface

13 HTML Hypertext Markup Language

14 HTTP Hypertext Transfer Protocol

15 IoT Internet of Things

16 LCD Liquid Crystal Display

17 MMM Magic Mirror Module

18 MQTT Message Queueing Telemetry Transport

19 MTCNN Multi-task Cascaded Convolutional Networks

20 NPM Node Package Manager

Trang 12

21 RISC Reduced Instructions Set Computer

22 SoC System on Chip

23 USB Universal Serial Bus

24 | VGA Video Graphics Adaptor

25 DCNNs Deep Convolutional Neural Networks

26 GPU Graphics Processing Unit

27 CNN Convolutional Neural Network

28 YOLO You Only Look Once

29 GPS Global Positioning System

30 ID Identification

Trang 13

TOM TAT KHÓA LUẬN

Hệ thống giám sát chất lượng công việc của thợ sửa chữa điện ứng dụng IoT,

về mặt cốt lõi là một nghiên cứu nhằm hiện thực hóa ý tưởng về một mô hình dịch

vụ, với khả năng đặt tạo đơn hàng sửa chữa điện, khả năng tùy chỉnh vị trí và lựa

chọn người thợ sữa chữa dựa trên số liệu khoảng cách thực tế Cùng với đó là tích

hợp mô hình IoT cho phan cứng và quy trình làm việc của người thợ dé đảm bao chat

lượng an toàn lao động, và hiển thị cảnh báo cho người thợ Cụ thể hơn, nhóm cần

phải hoàn thành hai mục tiêu chính.

Đầu tiên chính là việc xây dựng Module lựa chọn vị trí làm việc mong muốn,qua dir liệu tọa độ, hoặc qua địa chỉ văn ban Input Xây dựng Module hiển thị danhsách thợ dựa trên khoảng cách xa gần thực tế, phải đảm bao khả năng hién thị danhsách thợ trong bán kính 5 Km, 10 Km, hoặc toàn bộ danh sách thợ Đồng thời thiếtlập Database và mô hình Webserver để truy xuất và lưu trữ đơn hàng Thiết lập

Websocket để quy trình đặt đơn, nhận đơn diễn ra tức thời Xây dựng giao diệnWebsite va Android cho các Module trên, dé thuận tiện thao tác và hién thị

Phần thứ hai là xây dựng mô hình IoT với trọng tâm là ESP32, thiết bị sẽ đượclắp đặt trên mũ bảo hộ của người thợ Build mô hình đề xác lập kết nối giữa ESP32

và thiết bị di động, qua đó thu thập dữ liệu Phát triển mô hình AI tự chọn vớiYOLOv3, phân tích dữ liệu hình ảnh thu thập được và tra về lại giao diện hiển thị cho

người thợ ứng với cảnh báo an toàn lao động.

Trang 14

riêng biệt của doanh nghiệp Dịch vụ đặt hàng thợ sửa chữa cũng không ngoại lệ, tuy

chưa dat được độ phổ biến hay những thành công vang dội về mặt kinh tế như các

ứng dụng kế trên, nhưng các doanh nghiệp cũng dang dan dan cho ra đời sản pham

của riêng mình, là những viên gạch đầu tiên, đặt nền móng cho sự phát triển Hưởngứng nhu cầu cần thiết của tương lai, nhóm đã chọn đề tài “Nghiên cứu và phát triển

hệ thống giám sát công việc cua thơ sữa điện ứng dụng công nghệ IoT”, với mục tiêuxây dựng giải pháp đặt thợ với kết cấu chặt chẽ, có tính hệ thống cao, đồng thời, cốtlõi của mô hình là phát triển hệ thống nhận diện sai phạm an toàn lao động của ngườithợ khi làm việc, ứng dụng IoT và AI Ở thời điểm hiện tại, phần lớn các giải phápdịch vụ thợ trên thị trường đều dừng lại ở ứng dụng thao tác, giới hạn tại chức năngđặt và nhận đơn hàng Với giải pháp nhóm đề xuất, chúng em mong muốn có thé taonên một sản phâm hoàn thiện, sẵn sàng vận hành trong môi trường doanh nghiệp,nhưng đồng thời cũng có những nét nỗi bật, ứng dụng khoa học công nghệ và các

kiến thức đã học.

Trang 15

Chương 1 TONG QUAN

1.1 Tong quan đề tài

Trong bối cảnh cuộc sống hiện dai, công nghệ IoT (Internet of Things) ngày càng

trở nên quan trọng, đặc biệt là trong lĩnh vực quản lý và giám sát công việc Đề tàinày tập trung vào việc nghiên cứu và thiết kế một hệ thống giám sát chất lượng côngviệc của thợ sửa chữa điện, kết hợp cả phần mềm và phần cứng, dé nang cao hiéusuất và an toan trong ngành nghé này Mục tiêu chính của dé tai là xây dựng một hệthong toàn diện cho việc giám sat va quản ly công việc của thợ sửa chữa điện Đồngthời, thông qua việc sử dụng IoT, hệ thống này sẽ tự động hóa quá trình giám sát và

báo cáo chất lượng công việc, tăng cường khả năng xử lý vấn đề dựa trên đữ liệu thời

gian thực.

1.2 Tính hình trong nước và thế giới

1.2.1 Tình hình trong nước

Tại Việt Nam, hiện nay có một vài doanh nghiệp tiên phong trong lĩnh vực dịch

vụ kết nối thợ sữa chữa điện như Diennuocthienphuc.com hay Kythuatkhd.co, tuynhiên, theo quan sát của nhóm thì các doanh nghiệp đều có sự đầu tư không cao vềmặt kỹ thuật, giao diện ứng dụng người dùng được thiết kế khá sơ sai, cùng với đó là

sự giới hạn về chức năng, khi họ chỉ gói gọn trong việc đặt lịch hẹn cho chuyên viên

và thực hiện đơn hàng khi thời gian đến Vì thế, việc thiết kế hệ thống giám sát chất

lượng công việc dựa trên IoT va AI sẽ là một đóng góp quan trong, øg1úp nâng cao uytín của ngành nghề, đồng thời cải thiện chất lượng dịch vụ thông qua quản lý hiệu

suất và đào tạo nhân sự Đặc biệt là trong bối cảnh hiện nay, khi mà ở nước ta, ngành

công nghiệp sửa chữa điện đang trong giai đoạn phát triển mạnh mẽ theo sự gia tăng

của nhu cầu sửa chữa và bảo trì hệ thống điện Sự phát triển của các dự án công

nghiệp, dân dụ và các ngành công nghiệp khác đều tạo ra nhu cầu lớn cho các dịch

vụ sửa chữa điện, cùng với sự phát triển này, cũng xuất hiện nhiều thách thức về chất

lượng công việc và an toàn lao động.

Trang 16

1.2.2 Tình hình quốc tế

Trên thế giới, theo quan sát của nhóm, tuy các doanh nghiệp sửa chữa điện có tính

hệ thống và bắt mắt hơn về mặt giao nhiên, nhưng họ cũng chịu thực trạng thiếu sự

tích hợp công nghệ cho giải pháp của mình Mà, trong công nghiệp, việc sử dụng các

giải pháp thông minh như hệ thống giám sát dựa trên IoT không chỉ mang lại sự hiệu

quả mà còn giảm thiêu rủi ro và chi phi Cũng vi thế nên nhiều quốc gia đang chútrọng vào nâng cao chất lượng lao động và an toàn trong các ngành nghé đặc biệt

nguy hiểm Qua đó, giải pháp mà nhóm đề ra sẽ phản ánh xu hướng toàn cầu hóacùng với nhu cầu ngày càng tăng về giải pháp thông minh trong quản lý lao động và

công việc.

1.3 Mục tiêu đề tài

Với các van dé nêu trên, hệ thống mà nhóm xây dựng hướng tới những mục tiêu

là:

- Xây dung giao diện người dùng chuyên nghiệp và than thiện qua ứng dụng

Website và Mobile Android.

- _ Xây dựng hệ thống Backend ứng dụng cơ sở dữ liệu NoSQL MongoDB,

tích hợp Websocket cho giao tiếp thời gian thực

- _ Xây dựng giao thức đăng nhập cùng với giao diện riêng cho người dùng

và thợ.

- _ Xây dựng hệ thống dịch vụ phản hồi và thay đổi giá thành sản phẩm ứng

với số lượng dịch vụ được chọn

- _ Xây dựng Module cho phép người dùng lựa chon vi trí thực hiện dịch vụ

dựa trên Google API.

- _ Xây dựng Module cho phép người dùng lựa chon thợ dựa trên vi trí đã lựa

chọn, ứng dụng Google API.

- Thu thập dữ liệu và theo dõi vi trí thợ

- _ Phát triển mô hình trí tuệ nhân tạo, nhận diện vật thé tự chọn với thuật

toán YOLOv3.

Trang 17

- _ Xây dựng hệ thống AI dé phân tích dữ liệu hình anh và trả về kết quả cho

người dùng.

- Thu thập bộ dữ liệu thủ công, nghiên cứu thu thập bộ dữ liệu từ nguồn

Google API.

- Thiét kế thiết bi phan cứng dé kết nối với mũ bảo hộ người thợ và truyền

tải dữ liệu hình ảnh thu thập được về hệ thống

- _ Phát triển Module cảnh báo vi phạm an toàn cho thợ đồng thời thống kê

số lần thợ vi phạm quy định trong một phiên hoạt động

Chương 2 CƠ SỞ LÝ THUYET

2.1 Tổng quan các thiết bị phần cứng sử dụng trong hệ thống

2.1.1 Vi điều khiến ESP32Cam

Kit thu phát Wifi BLE ESP32 Camera ESP32-CAM Ai-Thinker được phát triểntrên nền Vi điều khiến trung tâm là ESP32 SoC (System on Chip) với công nghệ Wifi,

BLE và kiến trac ARM(Advanced RISC Machine) mới nhất hiện nay, kit két hop voi

Camera OV2640 sử dung trong các ứng dụng truyền hình ảnh, xử ly anh qua Wifi,Bluetooth hoặc các ứng dụng loT, mạch có chất lượng gia công tốt, độ bền cao

Trang 18

Thông số kỹ thuật:

Model: ESP32-CAM Ai-Thinker

Module trung tâm: Ai-Thinker ESP32-S

Power Supply: 5VDC (nguồn từ 2A trở lên)

Điện áp giao tiếp GPIO: 3.3VDC

SPI Flash: Default 32Mbit

RAM: 520KB SRAM +4M PSRAM

Bluetooth: Bluetooth 4.2 BR/EDR and BLE standards

12 UVART Baudrate: Default 115200 bps

13 Image Output Format: JPEG( OV2640 support only), BMP,GRAYSCALE

14 Spectrum Range: 2412-2484MHz

2.1.2 Nguồn điện Battery

Bộ nguồn này đặc trưng bởi viên pin 18650, có dung lượng 3350 mAh, giúp cung

cấp năng lượng đáng tin cậy trong thời gian dai

Trang 19

Viên pin 18650 này được tích hợp trong một hộp sạc,g1úp tối ưu hóa quá trình sạc

dé dam bảo hiệu suất tối đa và tuổi tho pin dai hạn

Trang 20

Hình 2.4 Vỏ ngoài khi được lắp nguyên khối

Trang 21

ta Móc nối với thiết bị

huyện dụng

Hình 2.7 Mặt bên Camera

Trang 22

Hình 2.10 Mat trước mũ bao hộ khi gan Cam

Hình 2.11 Mat bên mũ bdo hộ khi gắn Cam

Hình 2.12 Mặt sau mũ bảo hộ khi gan Cam

10

Trang 23

Hình 2.14 Mặt dưới mũ bảo hộ có gắn Cam Hình 2.14 Mặt trên mũ bảo hộ có gắn Cam

2.2 Tổng quan các thiết bị phần mềm sử dụng trong hệ thống

2.2.1 Môi trường NodeJS

Hinh 2.15 NodeJS

Node.js là môi trường chạy Javascript phổ biến đối với các lập trình viên Full Stack

trong việc lập trình Web Nó cho phép các lập trình viên tao ra code JavaScript theo

11

Trang 24

hướng từ máy chủ và có thé quản lý cả từ phía máy chủ lẫn server NodeJs đảm bảo

hiệu suất vượt trội, nó sử dụng theo hướng sự kiện (event-driven), sử dụng đầu vào

và đầu ra không chặn (non-blocking input output) và mô hình không đồng bộ

(asynchronous paradigm) Sau đây là các lợi thế khi sử dụng Nodejs:

- Chi cần một ngôn ngữ duy nhất

- Kha năng kết nối máy chủ nhanh

- - Là ngôn ngữ được sử dụng nhiều nhất [1]

nên tảng cơ bản.

12

Trang 25

2.2.3 Thu viện ReactJS

Nest (NestJS) là một khung (framework) được thiết kế dé xây dựng các ứng dụng

phía máy chủ Node.js và có khả năng mở rộng Nó sử dụng ngôn ngữ JavaScript dé

xây dựng và hỗ trợ đầy đủ TypeScript (nhưng vẫn cho phép nhà phát triển viết mãbang JavaScript thuần túy) và kết hợp các yếu tố của Lập trình Hướng đối tượng

(OOP - Object Oriented Programming), Lập trình Chức năng (FP - Functional Programming), và Lap trình Phan ứng Chức năng (FRP - Functional Reactive

Programming).

Nói chung, Nest sử dụng các khung máy chủ HTTP như Express va có kha nang

được cấu hình dé sử dụng Fastify!

Nest cung cấp một mức độ trừu tượng cao hơn so với các frameworks Node.js phébiến như Express/Fastify, đồng thời vẫn hiển thị trực tiếp các API của chúng cho nhàphát triển Điều này giúp nhà phát triển có tự do sử dụng nhiều mô-đun bên thứ ba có

sẵn cho nền tảng cơ bản [2]

13

Trang 26

@ Ag.

React Native iOS Android

Hình 2.18 React Native

React Native được các tô chức trên toàn thé giới ưa chuộng dé phat triển ứng dụng

điện thoại/máy tính bảng đa nền tảng với một mã code cơ sở duy nhất Điều này có

nghĩa là bạn có thể dễ dàng viết code một lần và chạy ứng dụng trên iPhone, iPad,điện thoại, và máy tính bảng Android mà không cần phải viết lại bằng các ngôn ngữkhác Và ngôn ngữ đó rất đễ học nếu bạn đã quen React và JavaScript

Điều đặc biệt là ứng dụng có thê được trién khai trực tiếp trên AppStore của Apple

hoặc cửa hàng Google Play, không phải thông qua các web app chạy trong adapter hoặc trình dịch nào khác Do đó, chúng mang lại trải nghiệm nhanh chóng và đáng

tin cậy hơn, cũng như thuận tiện cho việc quản lý và cập nhật ứng dụng.

2.2.5 Cơ sở dữ liệu NoSQL MongoDB

MongoDB là một chương trình cơ sở đữ liệu hướng tài liệu, đa nên tảng, có sẵn

mã nguồn mở Được xem xét là một sản pham cơ sở dữ liệu NoSQL, MongoDB sửdụng các tài liệu có định dạng tương tự JSON, với khả năng sử dụng các lược đồ tùychọn Do MongoDB Inc phát triển và duy trì, các phiên bản hiện tại của MongoDBđều tuân theo Giấy phép Công cộng Phía Máy chủ (SSPL)

14

Trang 27

MongoDB không chỉ là một chương trình cơ sở đữ liệu, mà còn là thành viên tích cực của Liên minh MACH, hỗ trợ sự tích hợp chặt chẽ giữa các công nghệ

Microservices, Apache Kafka, Cassandra, và Hadoop Với mô hình tài liệu linh hoạt

và khả năng mở rộng dễ dàng, MongoDB đang ngày càng trở thành một lựa chọn

phô biến trong cộng đồng phát triển phần mềm [3]

@® Canfig Server

all Request mongod

J <> | xa mongodResponse

Client mongod

Shard 1 Shard 2 Shard 3

mongod mongod monged

(Primary) {Primary} (Primary)

R51 | Rs2 | ' R53

H De: DBL ' DB: D1 h De: DBL

¡ Collection: Coll | Collection: Coll ! ; Collection: Coll !

mongod mongod mongod mongod mongod monged

(Secondary) (Secondary) (Secondary) (Secondary) (Secondary) (Secondary)

R51 E51 Rs2 ' OB ñB1 DB: n1 DB: DBL i Of ñB1 i ' OB: DBL i

| Collection: ©nl-1 Collection: Col-1 Collection: Cof-1 nlle ol Collection: Cold ! ¡ Collection: Coli !

Hinh 2.19 Cau tric MongoDB

2.2.6 Phan hồi thời gian thực với WebSocket

code không đáng tin cậy trong một môi trường kiểm soát, và một máy chủ từ xa đã

15

Trang 28

chọn tham gia giao tiếp với mã đó Mô hình bảo mật được áp dụng trong trường hợpnày là mô hình bảo mật dựa trên nguồn gốc, thường được sử dụng bởi các trình duyệt

web Giao thức bao gồm một bước bắt tay mở, sau đó là cơ chế cơ bản dé định dạng

thông báo, được đặt lớp trên giao thức TCP (Transmission Control Protocol) Mục

tiêu của công nghệ này là cung cấp một cơ chế cho các ứng dụng dựa trên trình duyệt,cần thiết lập tương tác hai chiều với các máy chủ mà không cần mở nhiều kết nối

HTTP (vi dụ: sử dụng XMLHttpRequest hoặc <iframe> và long polling) [4]

2.3 Hệ thống xử lý anh

2.3.1 Thu viện OpenCV

OpenCV là một thư viện thị giác máy tính nguồn mở Thư viện này được viết bằng

C và C++ và hoạt động trên các hệ điều hành Linux, Windows và MacOS X Hiện

đang có sự phát triển tích cực cho các giao diện Python, Ruby, Matlab và các ngôn

ngữ khác.

OpenCV được thiết kế với mục tiêu chính là tối ưu hóa tính toán và tập trung mạnh

mẽ vào các ứng dụng thời gian thực Thư viện này được viết bằng C, được tối ưu hóa

và có khả năng tận dụng các bộ xử lý đa 161 Nếu bạn muốn tối ưu hóa tự động hơntrên kiến trúc Intel, bao gồm các quy trình được tôi ưu hóa ở mức độ thấp trong nhiều

lĩnh vực thuật toán khác nhau OpenCV sẽ tự động sử dụng thư viện thích hợp trong

thời gian chạy nếu nó được cài đặt

Một trong những mục tiêu của OpenCV là cung cấp một cơ sở hạ tầng thị giác máy

tính dễ sử dụng, giúp người ta xây dựng các ứng dụng thị giác phức tạp một cách

nhanh chóng Thư viện OpenCV chứa hơn 500 chức năng trải rộng trên nhiều lĩnhvực về thị giác, bao gồm kiểm tra sản pham tai nha may, hinh anh y tế, bảo mật, giao

diện người dùng, hiệu chỉnh máy ảnh, tam nhìn nỗi và robot Do thị giác máy tính va

học máy thường đi đôi với nhau, OpenCV cũng có Thư viện Học máy đầy đủ chứcnăng và linh hoạt Thư viện con này tập trung vào nhận dạng và phân cụm mẫu thống

kê, rất hữu ích cho các nhiệm vụ thị giác, làm nôi bật trong sứ mệnh của OpenCV,

nhưng đủ tổng quát dé sử dụng cho bat kỳ van đề học máy nao

16

Trang 29

Đồng thời, giao thức này được thiết kế dé có thé mở rộng; các phiên bản trong

tương lai có thể giới thiệu các khái niệm bổ sung như ghép kênh [5]

2.3.2 Nhận diện vật thé (Object Detection)

Nên tang cho bai toán nhận diện vat thé là một mang thân kinh trích xuât các đặc

điêm từ hình anh đâu vào rôi lây đó làm cơ sở cho các tác vụ tiép theo cho các mô hình lớn hơn.

dens dens: dense}

Fully connected+ReLU MAX T1

& softmax POOL é

(b) VGG16 (c) Inception module of GoogLeNet

Hình 2.21 Các cột mốc quan trọng DCNNs và modult mang

Cu thé hơn, một loạt các DCNNs (Deep Convolutional Neural Networks - mạng

than kinh tich chap sâu) có khả năng mạnh mẽ đã được đề xuất, hầu hết đều có cáckiến trúc đổi mới, như thể hiện trong Hình 2.21 DCNNs là nền tảng chính dé pháthiện đối tượng (hoặc phân loại) Dé cải thiện hiệu suất biểu diễn đặc trưng, kiến trúcmạng trở nên ngày càng phức tạp hơn (các lớp mạng trở nên sâu hơn và các tham sốmạng trở nên nhiều hơn) Trong môi trường có nguồn lực tính toán và lưu trữ hạnchế, như thiết bị di động, xe tự lái, sản xuất công nghiệp, đã được dé xuất các cấu trúcmạng nhẹ, giúp đơn giản hóa cấu trúc mạng mà vẫn duy trì khả năng biểu diễn đặctrưng Có thé thay rằng độ chính xác của các mạng nền phức tạp (CBN - complex

backbone networks) có thê được cải thiện bằng cách tăng độ sâu các lớp mạng Cũng

17

Trang 30

có thé nhận thấy rằng việc giảm các tham số một cách hợp lý, không ảnh hưởng đến

độ chính xác của các mạng nền nhẹ (LBNs - lightweight backbone networks)

AlexNet là mạng nơ-ron tích chập đầu tiên được Yann LeCun đề xuất, dựa trên

công trình nghiên cứu trước đó vào năm 1998, được gọi là LeNet-5 Nó đạt độ chính

xác trung bình là 98% trên bộ dữ liệu MNIST LeNet-5 là mạng nơ-ron tích chập côđiển được sử dụng dé nhận diện các ký tự số viết tay Sự xuất hiện của nó quyết địnhkiến trúc cơ bản của các mạng nơ-ron tích chập sâu với lớp tích chập, lớp tổng hợp,

và lớp được kết nỗi đầy đủ Day là lần đầu tiên một mạng nơ-ron tích chập có sẵn

Tuy nhiên, trong thập kỷ tiếp theo, nó không đạt được sự tiến triển lớn, với sự mở

rộng bị hạn chế bởi sức mạnh tính toán Đồng thời, các thuật toán máy học truyền

thống như SVM có thê đạt được độ chính xác tương tự hoặc thậm chí cao hơn Do

đó, mạng nơ-ron tích chập này không thu hút nhiều sự chú ý

Năm 2012, AlexNet đã giành chức vô địch trong cuộc thi ILSVRC-2012 Trên bộ

thử nghiệm LSVRC-2010, ho dat tỷ lệ lỗi top 1 và top 5 lần lượt là 37,5% và 17,0%

Trong bộ thử nghiệm ILSVRC-2012, họ đạt tỷ lệ lỗi thuộc top 5 là 15,3%, cao hơn

nhiều so với vị trí thứ hai AlexNet tăng chiều sâu và chiều rộng của kiến trúc mạngLeNet-5, bao gồm năm lớp tích chập (Conv), ba lớp tổng hợp tối đa và ba lớp đượckết nối đầy đủ , với tông số 60 triệu tham số Kiến trúc được thé hiện trong Hình

2.21a.

Thanh công cua AlexNet là dựa vào các công nghệ sau:

- Cac phương pháp nâng cao dữ liệu (chang hạn như lật ngang, cắt ngẫu

nhiên, chuyên đổi tịnh tiến, chuyển đổi chiếu sáng màu) được sử dụng dé

mở rộng tập dữ liệu và giảm trường hợp không nhận diện đối tượng

- Cac hàm kích hoạt truyền thống (như Sigmoid và Tanh) đã được thay thé

bang hàm kích hoạt ReLu Điều này giải quyết van dé phân tán độ dốc trong

mạng khi nó trở nên sâu hơn.

- Một phan của các tế bào thần kinh được loại bỏ ngẫu nhiên thông qua việc

sử dụng phương pháp chính quy Dropout trong quá trình huấn luyện Điềunày giúp giảm mỗi quan hệ phức tạp thích ứng giữa các tế bao thần kinh và

18

Trang 31

giảm khả năng quá mức trang bị.

- _ Công nghệ điện toán nhiều GPU song song được áp dụng, hỗ trợ giao tiếp

giữa các lớp cụ thé và gia tăng tốc độ huấn luyện mạng

2.3.3 Giải thuật YOLOv3

2.3.3.1 Giới thiệu YOLOv3

Phát hiện mục tiêu là một trong những lĩnh vực nghiên cứu quan trọng trong thị

giác máy tính Nó giúp xác định vị trí và loại mục tiêu băng cách sử dụng tính năng

phát hiện mục tiêu Hiện nay, phát hiện mục tiêu đang được áp dụng rộng rãi trong

nhiều lĩnh vực như quân sự và dân sự, bao gồm phân đoạn hình ảnh, giám sát thông

minh, lãi xe tự động và giao thông thông minh.

Với sự phát trién nhanh chóng của phần cứng bộ xử lý đồ họa (GPU), deep learning

đã đạt được tiến bộ đáng kế và nhiều thuật toán phát hiện mục tiêu dựa trên deeplearning đã trở thành một phần không thẻ thiếu trong cuộc sống hàng ngày, chắng

hạn như phát hiện người đi bộ, nhận diện khuôn mặt và nhận diện phương tiện Mạng

no ron tích chập (CNN), một loại mạng có nhiều lớp được thiết kế dé trích xuất đặctrưng từ thống kê vùng trong ảnh, đã chứng minh khả năng tự động hóa việc học các

đặc trưng của mục tiêu và cải thiện hiệu suất mô hình

Với sự cải tiến của phan cứng máy tính, cấu trúc của CNN trở nên sâu sắc hơn và

có khả năng hiểu rõ hơn về các đặc trưng của mục tiêu LeNet, một mô hình phổ biến,

bao gồm năm lớp, còn Mạng đường cao tốc và Mạng dư đã vượt qua 100 lớp.DenseNet kết nối các lớp theo kiểu chuyền tiếp nguồn cấp dữ liệu, giúp tái sử dụng

tính năng và tránh sự mờ dần của độ dốc, đồng thời tăng cường khả năng hiệu quả

của mô hình.

Các thuật toán phát hiện mục tiêu tiên tiễn dựa trên CNN hiện đang phát triển thành

hai loại chính.

Loại đầu tiên là thuật toán phát hiện mục tiêu giai đoạn, bao gồm các mô hình như

R-CNN, Fast R-CNN, Faster R-CNN, Mask R-CNN, vv Quá trình phát hiện mục

tiêu ở đây được thực hiện trong hai giai đoạn Trước hết, Mạng đề xuất khu vực (RPN)

19

Trang 32

được sử dụng dé tạo ra một số lượng nhỏ các hộp neo ứng cử viên Sau đó, mạng phát

hiện có thé dự đoán và xác định vi tri cũng như danh mục của các mục tiêu ứng cử

viên Mặc dù có hiệu suất phát hiện mục tiêu tốt, nhưng chúng không phải là thuật

toán phát hiện mục tiêu toàn diện.

Loại thứ hai là thuật toán phát hiện mục tiêu một giai đoạn, bao gồm OverFeat,

SSD, YOLO, YOLO 9000, YOLO V3, You Only Look Twice, vv Cac thuat toan

này không can sử dụng RPN để tạo các mục tiêu ứng cử viên Thay vào đó, chúng dựđoán thông tin danh mục và vị trí mục tiêu trực tiếp qua mạng, làm cho quá trình phát

hiện mục tiêu nhanh hơn YOLO V3 là một đại diện nồi bật của loại thuật toán này.

2.3.3.2 So lược cách hoạt động của YOLOv3

Thuật toán phát hiện mục tiêu YOLO (You Only Look Once) đã phát triển quanhiều phiên bản, và phiên bản thứ ba của nó được gọi là YOLO V3 YOLO V3 làmột thuật toán phát hiện mục tiêu toàn diện, có khả năng dự đoán trực tiếp danh mục

và vị trí của các mục tiêu, điều này giúp nó đạt được tốc độ phát hiện nhanh

Trong quá trình trích xuất tính năng, YOLO V3 sử dụng các lớp chập 3 x 3 và 1 x

1 liên tiếp, dựa trên ý tưởng của Mạng dư Cấu trúc này giúp mô hình trở nên sâu hơn

và tránh được vấn đề mờ độ dốc YOLO V3 có tong cong 5 khối, và mỗi khối bao

Hình 2.22 Cấu trúc của Residual unit

gồm nhiều đơn vị dư, nhằm tăng cường khả năng học của mạng

Đơn vị dư, được mô tả trong Hình 2.23 sau, giúp tăng độ sâu của mạng mà không gap vân đê phai màu độ dôc Điêu nay đóng góp vảo việc cải thiện hiệu suât tông thê

20

Ngày đăng: 02/10/2024, 02:48