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: Ứng dựng các thiết bị IoT vào thực tế ảo Metaverse

63 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

Định dạng
Số trang 63
Dung lượng 63,87 MB

Nội dung

Trong cuốn tiêu thuyết này, Metaverse được mô tả như một không gian ảo nơi con người tương tác với nhau thông qua các avatar và trải nghiệm những điều không thê có trong thế giới thực..

Trang 1

ĐẠI HOC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KY THUAT MAY TINH

CHU THÀNH NHÂN - 20520665

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

UNG DUNG CÁC THIET BI IOT VÀO

THUC TE AO METAVERSE

IOT IN METAVERSE

CU NHAN KY THUAT MAY TINH

GIANG VIEN HUONG DAN

ThS PHAN DINH DUY

TP HO CHÍ MINH, 2024

Trang 2

LỜI CẢM ƠN Đầu tiên, em xin gửi lời cảm ơn đến quý thầy cô trường Đại Học

Công Nghệ Thông Tin Trong quá trình học tập và rèn luyện tại trường,

với sự dạy dỗ, chỉ bảo tận tình của quý thầy cô đã trang bị cho em những

kiến thức về chuyên môn cũng như kỹ năng mềm, tạo cho em hành trang vững chắc trong cuộc sống cũng như công việc sau này.

Tiếp theo, em xin cảm ơn khoa Kỹ Thuật Máy Tính vì đã luôn tạo

mọi điều kiện thuận lợi cho em được học tập và phát triển Đặc biệt, dé

hoàn thành khóa luận tốt nghiệp này, em xin gửi lời cảm ơn sâu sắc tới ThS Phan Đình Duy đã tận tình chỉ bảo, hướng dẫn và hỗ trợ trang thiết bị

cho em trong, suốt thời gian thực hiện đề tài Đồng thời, em cũng xin gửi

lời cảm ơn đến các sinh viên khác trong CLB CEEC đã giúp đỡ em hiện

thực đề tài Em cũng muốn cảm ơn tất cả các công ty và nhà phát triển cung cấp các dịch vụ miễn phí cũng như các thư viện và dự án mã nguồn

mở Không có những công cụ và thư viện này khoá luận của em sẽ không

thé hoàn thành được như bây giờ Cuối cùng, em xin cảm ơn đến gia đình, những người luôn dành những sự động viên đến em trong suốt quá trình

thực hiện khóa luận.

Thành phố Hồ Chí Minh, tháng 07 năm 2024

Sinh viên thực hiện

Chu Thành Nhân

Trang 3

1.1.3 Kết hợp IOT vào Metaverse: -ceciicccecccrrrrerererrrrreeerrrrrreerrr 4

1.2 Tình hình hiện nay trên thế giới: -ecceerreceeerreereerreeeerrrerrerrre 5

1.3 Tình hình hiện nay trong THƯỚC: -e ©ccsecscxererxeerrrterrrrterrrrkrrrrrrrrrrree 7

1.4 Mục tiêu đề tải: ecHHHHHHHHHHHHHHHHHHa are 9

1.5 Phương pháp thực hiỆn: eee-cssecccseterrterrrkrtrrtirrrrtirtrrrirrrrrrrrrrrie 10

1.6 Nội dung báo CAO leet tesssstesssstesssseesssseessnsecesneessnsesssnenssaessnseenssseessnneensaseesnaneessasess 13

Chương 2 CO’ SỞ LÝ THUYẾT ĐỀ TÀI -22.+eesrceetreerrrrrerrre 14

2.1 WebSockel Fe | 2, cuoi 14

Trang 4

2.8 Phần mềm: ccccccccccc2EEEEEEEEEEEEEEEEEEEEEEEEvvererererrrrrtrtrtrrtrtrrrrrrrrrrrrrrrrrrrrrre 32

"9® ca 33

Chương 3 NOI DUNG THỰC HIỆN -cccccccccrttttrecvzvvvvrrrrrrrrerre 35

3.1 Tổng quan kiến trúc hệ thống: :-::+eeecctirreevetrrrreeverrrrrresrrrrrre 35

3.1.1 KhOi thiét bi (Devices): n.ẽỒ 35

3.1.2 Khối Server: ce-creeccrrreeeerrrrerrrrirrrtrrrrrrrrrirrrrrrrree 393.1.3 Khối người dùng (User): c -rceccccrrrreecrerrrrrrrrerrrrrererrre 41Chương 4 KET QUA THỰC HIỆN -::cc22ircecetrreeeerrrerertrrrerrrrre 45

4.1 Tổng quan kết quả: e -eceexeceetreeerrrererrererrrrvrtrrrrrrrrrrrree 45

4.1.1 Khối Devices: eeeeceeeecccceeceeeeeercieecceerrrrieeeerrrrirrrerrrrrirrrrrrrrrree 45

ESP32-CAM và Cảm biến: 22-52 SEtrrevettirrrrrrirrrtrrrrrrrtrrrrrrrrre 45

ƯA tố (đê 7` CS 5S£+1)1H)H,.ŨÃa 45

4.13 Khối WRT: AB Fe \1EE Í 48

Chương 5 KẾT LUẬN -e22icccEEieeEtrreetriretrrrerrrrrerrrrerrre 51

5.1 Kết quả đạt QUOC! eseecsseecsssecsseesssesssesssessesesnsecsseesseecsaseesusessueesatessueeeseesaseesueesseesaersuees 51

5.2 Ưu điểm và nhược điểm của đề tài: ccccccccvvvvvvcccrrtrtttrtritrreeeeeeeevee 51

5.2.1 Ưu điểm: eeceerreecerrirereerirrrrtrrirrrtrirrrrrrrrrrrrrrrree 515.2.2 Nhược điỂm: -c-ccccreecerrreeeerrrirertrrirrrtrirrrrrrrirrrrrrrree 51

5.3 Khó khăn gặp phải: -c eecrreerrrretrrrrtrrrrrrrirrrrirrrrrrrrrrrrrrrrree 51

5.4 Hướng phát triển của đề tài: -+eeceerreeeerrrerrerrrerrrrrrrrrrrrre 51

Trang 5

DANH MỤC HÌNH

Hình 1.1 Lộ trình của Metaverse [ 1] -cc secceervterrveerreeerkeerrerrrrrerrrrrrree 3

Hình 1.2 Người dung đang sử dụng Apple Vision PO -««ccceeeeererrrrrrree 7 Hình 1.3 Giao diện của Hội An Metaverse -scctnxetttkeeriEkiekiitrrrrrerrrrrrrrrrree 8

Hình 1.4 FPT đưa akaVerse - giải pháp công nghệ thực tế ảo - XR, VR, AR 9

Hình 2.1 Mô hình mạng và Vi tri của SOClKet -c-ccxecerkirtrriirrriirrirrke 14

Hình 2.2 Cách hoạt động của WebSoclket ‹csxkketrkirtiiriiirriiree 15

Hình 2.3 Vị trí của MQTT trong hệ thống -ccccceccccveierrrveerrrrresrrrrrrer 17

Hình 2.4 Mô hình Pub//Sub -xxcsckrkrttrkkiirtttiiiririiiiiiiirriiirreiee 18

Hình 2.5 Sơ đồ cấu trúc của thư viện OpenCV -cccvvcrerccvvvvvererrrre 20

Hình 2.6 Mô hình của YOLO -«-cccxxccckxirrrrrttrrrttrirririirrriiriirrrrrrrrre 22

Hình 2.7 Cách YOLO chia grid và nhận diện [1 5 ] -. -«ec.ex 23

Hình 2.8 So sánh YOLOv8 và các phiên bản trước -. c cese-crxesrrerrxee 25

Hình 2.9 Giao diện cơ bản của UNity -.‹ c-xeeeerrrerttrriertrrriirriirrrrie 26

Hình 2.10 Cấu tạo ESP32-CAM.cccssssssssscsssssssssssesssssssseseesssssseeceesssnseesseessssseeeseesssnsseeseesssnsssseeess 31

500008920007 019i0air-800)0v1011.11777 33

Hình 2.12 Ba loại ứng dụng Firebase cung cấp ccc e-cccccccvcveceee 34

Hình 2.13 Minh họa cho Big JSON ccccckieerieekriitriiirriiiirirrrrerrie 34

Hình 3.1 Sơ đồ cơ bản của hệ thống -.ccccccerrerrrrtrkiiiiiiiirriirriiiiiiirree 35 Hình 3.2 Sơ đồ của khối DeviCes cccc cccvvveeerrrrrrrrererrrrrrrrrrrrrrrrrrrrrrrrrrrre 38 Hình 3.3 Mô hình của khối SerVerr -cccce-+cccxxxeerrtrtrrirrrtrrrriiirrrrrrrrrrree 40 Hình 3.4 Hình ảnh giao diện thiết kế phần người dùng .- 42 Hình 3.5 Sơ đồ khối USerr -cccccccvvvvrrtrrrrrrrvrerrtrrrrrrrrrrrrrtrrrrrrrrrrrrrrrrrrrrrrie 43

Hình 4.1 Hình anh database được lưu trên Firebase ce-cc-ecreecxes 46

Hinh 4.2 K@t qua train 0777 47

Hình 4.3 Hình anh thuật toán được xử lí ở python Serve .- 48

Hình 4.4 Hình ảnh camera được gửi đến User -©-cccccvvveeeeeereexee 49

Hình 4.5 Mô phỏng thành công số người xuất hiện - -cccccccccee 50

Trang 6

Hình 4.6 Thông tin ảnh gửi thành công tới user

Hình 5.1 Hình ảnh công cụ VR học tập với IOT [22]

Trang 7

DANH MỤC BANG

Bang 2.1 So sánh Azure với Google và AWS, eceeeeeriierieriirrere

Bảng 3.1 Cấu trúc của dữ liệu truyền từ python server tới nodejs server

Trang 8

DANH MỤC TU VIET TAT

AR - Augmented Reality

AWS — Amazon Web Services

IOT — Internet Of Things

MCU - Micro Controller Unit

MQTT - Message Queuing Telemetry Transport

UI — User Interface

VHD - Virtual Hard Disk

VR - Virtual Reality

Trang 9

TOM TAT KHÓA LUẬN

Đề tài này tập trung vào việc nghiên cứu và tích hợp Internet of Things (IoT) vào Metaverse, tạo ra một cầu nối giữa thế giới thực và thế giới ảo Cụ thể, sử dụng

ESP32-CAM để thu thập dữ liệu hình ảnh và thông tin từ môi trường thực, sau đó

truyền dữ liệu này đến máy chủ để xử lý và cuối cùng hiển thị trong môi trườngMetaverse được xây dựng bằng Unity Cụ thé hơn bao gồm các bước:

-_ Xây dựng hệ thống IoT: Thiết lập một hệ thống IoT hoàn chỉnh, bao gồm

ESP32-CAM làm thiệt bi thu thập dữ liệu, máy chủ xử ly dữ liệu va Unity làm nên tảng hiên thị.

— Thu thập và xử lý dữ liệu: Sử dụng ESP32-CAM để thu thập dữ liệu hình

ảnh, sau đó gửi dữ liệu này đến máy chủ để xử lý, phân tích và chuyên đổi

thành định dạng phù hợp với Unity.

- Mô phỏng trong Metaverse: Hiển thị dữ liệu đã xử lý trong môi trường

Metaverse được xây dựng bang Unity, tạo ra một ban sao ảo của môi trường thực.

Trang 10

Chương 1 TONG QUAN DE TÀI

1.1 Giới thiệu:

1.1.1 Metaverse là gì?

Mặc dù thuật ngữ Metaverse không còn mới nữa nhưng nó vẫn còn rất nóng

Nó được nhắc đến lần đầu tiên trong cuốn tiêu thuyết khoa học viễn tưởng "Snow

Crash" của Neal Stephenson vào năm 1992 Trong cuốn tiêu thuyết này, Metaverse

được mô tả như một không gian ảo nơi con người tương tác với nhau thông qua các

avatar và trải nghiệm những điều không thê có trong thế giới thực

Nói một cách dễ hiểu hơn thì đó là một thế giới ảo, giống như Internet,metaverse sẽ giúp bạn kết nối với mọi người khi bạn không ở cùng một nơi và đưachúng ta đến gần hon với cảm giác được ở bên nhau trực tiếp [1] Day là một mạnglưới của các môi trường thế giới thực được sao chép kỹ thuật số, nơi người dùng có

thé tương tác, làm việc, choi và kiếm tiền (Sandbox: có 1.260.000.000 token SAND

đang được lưu hành, với tổng nguồn cung tối da là 3.000.000.000 token) [2] Côngnghệ blockchain trong Metaverse cung cấp tính bảo mật, minh bạch và không théthay đổi, đồng thời ngăn chặn sự can thiệp từ các cơ quan tập trung Metaverse sửdụng thực tế ảo, tăng cường thực tế và trí tuệ nhân tạo dé làm mờ ranh gidi giữa thế

giới ảo và thực tế Lộ trình của Metaverse được mô tả cụ thé hơn ở hình 1.1:

Trang 11

Nano Quantum Cloud Computing, Edge

nee Computing.

Network and Nano and Quantum Computational

Communication Technology Paradigm

*

) Extended ,

-VR/AR/MR wen Computing v ae >| ML, DL NUP RL Reality Intelligence

Infrastructure

Brain Signal 7 5 :

Processing & Brain | (D) Virtual (8) Fundamental Spa Tow Fretion

Recognition Computer «| Reality Space Technology 1] consistency Spatio-Temporal

- Convergence ortthm

be} videos (C) Virtual Reality mmmn „[ Security & ideo Game h curity fivacv

Rendering Object Privacy

Connection

ế

Identity Decentralized Social

Modeling Technology Computing

IoT sử dụng nhiều công nghệ khác nhau dé kết nối thế giới kỹ thuật số vàthiết bị Các thiết bị có thê được nhúng với các cảm biến Cảm biến theo dõi những

thứ như nhiệt độ hoặc chuyền động, hoặc thực sự bất kỳ thay đổi nào trong môi

trường Thiết bị truyền nhận tín hiệu từ các cảm biến và sau đó phản ứng với nhữngthay đổi được báo cáo Cảm biến và thiết bị truyền giao tiếp với các hệ thống máy

tính thông qua mang có dây (ví dụ: Ethernet) hoặc không dây (ví du: Wi-Fi hoặc di

động); Những máy tính này có thể theo dõi hoặc quản lý sức khỏe và hành động củacác đối tượng và máy móc được kết nối

Kết nối liên tục mà IoT cho phép, kết hợp với dữ liệu và phân tích, cung cấp

cơ hội mới cho các công ty đổi mới sản phâm và dịch vụ, cũng như tăng hiệu qua

hoạt động Thật vậy, IoT đã nồi lên như một trong những xu hướng quan trọng nhất

Trang 12

hiện nay trong quá trình chuyền đổi kỹ thuật số của doanh nghiệp và nền kinh tế Córất nhiều thách thức, đặc biệt là khi nói đến an ninh mạng IoT, nhưng chúng tôi ướctinh tổng tiềm năng giá trị cho hệ sinh thái IoT có thé đạt 12,6 nghìn tỷ đô la vào

năm 2030 [3] [4]

1.1.3 Kết hợp IOT vào Metaverse:

Đề hỗ trợ trải nghiệm Metaverse được kết nối không dây và liền mạch,Internet of Things (IoT) có thé duoc tan dung trong Metaverse [5], ánh xa dữ liệuIoT thời gian thực từ đời thực thành hiện thực kỹ thuật số trong thé giới ảo loT có

thé bổ sung giao diện trải nghiệm của người dùng vào thế giới ảo được tạo bởi AR /

VR [6] Lay ứng dung nang cao nhận thức về sức khỏe làm vi du Các thiết bi loT y

tế có thé được gắn vào co thé người dùng hoặc bộ dé toàn thân có cảm biến dé do

trạng thái của người dùng, chang hạn như các điều kiện sức khỏe có thé tạo ra phản

ứng trong thé giới ảo IoT cũng có thé giúp cải thiện trải nghiệm thương mại điện tửcủa phòng thử đồ ảo, nơi các thiết bị IoT được sử dụng để theo dõi chuyển động của

cơ thể người dùng Ví dụ: thông tin cá nhân về cơ thể có thể được cập nhật thông

qua đữ liệu từ ảnh chụp trên điện thoại thông minh hoặc cân thông minh của người

dùng Điều này cho phép người ding trong Metaverse hoàn toàn đắm chìm trongmột đại diện ảo của cửa hàng, giúp khắc phục các rào cản trải nghiệm của mua sam

trực tuyến truyền thông Ngoài ra, dữ liệu IoT có thể được sử dụng bởi Internet Xúcgiác gần đây, xây dựng một mạng lưới hoặc mạng lưới các mạng dé truy cập hoặcđiều khiển từ xa các vật thé thực hoặc ảo trong thời gian thực bởi con người hoặcmáy móc Dữ liệu IoT có thể cung cấp bối cảnh và nhận thức tình huống về nhữngthứ vật lý cho các ứng dụng AR / VR, đồng thời kích hoạt trao đổi dit liệu giữa thégiới kỹ thuật số và thé giới vật lý [7] Ví dụ: thiết bi AR có thé phan ứng với cử chỉ

ngón tay của người dùng hoặc kích hoạt chức năng không gian mạng do một sự

kiện xảy ra trong thé giới thực điều khiến

Sự tương tác được hỗ trợ bởi IoT giữa đời thực và thế giới ảo ø1úp tạo ra mộtcặp song sinh kỹ thuật số, một phản chiếu kỹ thuật số về trạng thái và điều kiện vật

Trang 13

lý của một vật thé vật lý duy nhất Đề đạt được một cặp song sinh kỹ thuật số thiếtthực, Metaverse nhằm mục đích đảm bảo sự phản chiếu càng gần với trạng thái vật

lý thời gian thực càng tốt Do tính năng khác biệt này, cặp song sinh kỹ thuật sốphát triển như một trong những ứng dụng cơ bản trong Metaverse Người dùng cóthé tương tác với nhau trong khi vận hành hoặc trình diễn một bản sao của nguyênmẫu phần cứng hoặc phần mềm Trong các chương trình đào tạo kỹ thuật, cặp songsinh kỹ thuật số giúp các kỹ sư vận hành trực tiếp các biéu diễn 3D của các hệ thống

phức tạp Các cặp song sinh kỹ thuật số cũng có thể tái tạo một xưởng bảo trì hoàn

chỉnh với một bản sao ảo của các thiết bị được bảo dưỡng và một số công cụ cơ khí

dé sửa chữa thiết bị Các cặp song sinh kỹ thuật số thiết lập một môi trường ảo đượckết nối với một xưởng thực trong thế giới vật lý, nơi có thể thực hiện bảo trì từ xa.Trong quy hoạch và xây dựng đô thị, cặp song sinh kỹ thuật số có thé ảo hóa mộtthành phố trong thế giới thực, nơi người dân hoặc các chủ thé kinh tế có thé sử dụnghình ảnh đại diện để thực hiện kế hoạch phát triển và khám phá các dự án đô thị

trong tương lai [8].

1.2 Tình hình hiện nay trên thế giới:

Tình hình hiện nay của IoT trong Metaverse trên thế giới đang ở giai đoạn đầytiềm năng và hứa hẹn Sự kết hợp giữa hai công nghệ này đang được các ông lớncông nghệ và các công ty khởi nghiệp quan tâm và đầu tư mạnh mẽ Các công tycông nghệ lớn như Meta (Facebook), Microsoft, Google và nhiều công ty khởinghiệp khác đang đầu tư mạnh mẽ vào việc nghiên cứu và phát triển các ứng dụngIoT trong Metaverse Họ đang xây dựng các nên tảng, công cụ và giải pháp mới dékết nối các thiết bị IoT với thé giới ảo, tạo ra trải nghiệm người dùng chân thực và

tương tác hơn.

Trang 14

Theo dõi chuyển động và biểu cảm: Các thiết bị loT như kínhthực tế ảo, găng tay haptic và bộ theo dõi chuyển động được sửdụng dé thu thập dữ liệu về chuyển động và biểu cảm của ngườidùng Dữ liệu này được truyền vào Metaverse để tạo ra các avatar

phản ánh chính xác hành động và cảm xúc của người dùng trong thời gian thực.

Tái tạo môi trường thực tế: Các cảm biến IoT như cảm biếnnhiệt độ, ánh sáng và âm thanh được sử dụng dé thu thập dữ liệu

về môi trường thực tế và tái tạo chúng trong Metaverse Điều nàygiúp tao ra một môi trường ảo chân thực và sống động hon, manglại trải nghiệm tốt hơn cho người dùng

Tương tác vật lý: Các thiết bị loT như robot, máy bay khôngngười lái và các thiết bị điều khiển khác có thể được kết nối vớiMetaverse, cho phép người dùng tương tác với các đối tượng ảo

và thực hiện các hoạt động trong thế giới ảo

Cá nhân hóa trải nghiệm: Dữ liệu từ các thiết bị IoT như điệnthoại thông minh, đồng hồ thông minh và các thiết bị gia đìnhthông minh được sử dụng dé cá nhân hóa trải nghiệm Metaversecho từng người dùng Điều này bao gồm việc đề xuất nội dungphù hợp, điều chỉnh môi trường ảo theo sở thích và cung cấp các

và bạn bè từ khắp nơi trên thế giới Trong lĩnh vực y tế, các bác sĩ

đang sử dụng Metaverse dé mô phỏng phẫu thuật và dao tạo cácbác sĩ tương lai.

Trang 15

Điền hình cho các ứng dụng trên tiêu biểu hiện nay là Apple Vision Pro Đó

sự kết hợp của AR và VR thậm chí là cả IOT Được Apple giới thiệu vào tháng 6năm 2023 và chính thức tại Mỹ vào ngày 2 tháng 2 năm 2024 Hình 1.2 chính là thé

Hình 1.2 Người dùng đang sử dụng Apple Vision Pro

1.3 Tình hình hiện nay trong nước:

Tình hình IoT trong Metaverse ở Việt Nam hiện nay đang ở giai đoạn khởi

đầu, tuy nhiên, tiềm năng phát triển là rất lớn và nhận được sự quan tâm từ nhiều

Trang 16

Một số địa phương và doanh nghiệp du lịch tại Việt Nam đã bắt đầu thửnghiệm việc sử dụng Metaverse và loT dé quảng bá du lich và tạo ra các trảinghiệm du lịch ảo Ví dụ, du khách có thé tham quan các địa điểm du lịch nồi tiếng

của Việt Nam thông qua Metaverse và tương tác với môi trường ảo thông qua các

thiết bị loT Cụ thé hơn là: Tham quan phố cô Hội An bằng kính VR,

Trang 17

Ngoài ra, vào năm 2022 tại FPT Techday 2022 đã xuất hiện akaVerse - giảipháp công nghệ đưa thé giới thực - ảo hòa nhập làm một sẽ là điểm nhắn công nghệkhông thê bỏ qua Tại không gian trình diễn akaVerse, khách tham dự có cơ hội tự

tay tạo ra phiên bản thứ hai của chính mình và điêu khiên đê “người ảo” hoạt động,

Hình 1.4 FPT đưa akaVerse - giải pháp công nghệ thực tế ảo - XR, VR, AR

1.4 Mục tiêu đề tài:

Đề tài này hướng tới mục tiêu chủ chốt là tích hợp sâu rộng công nghệ Internet

of Things (IoT) vào môi trường Metaverse, tạo ra một cầu nối liền mạch giữa thếgiới thực và thế giới ảo Bằng cách tận dụng môi trường thực tế ảo của Metaverse,

người dùng sẽ có khả năng tương tác và điều khiển các thiết bị IoT trong thế giớithực một cách trực quan, tự nhiên và an toàn.

- Nang cao khả năng tương tác: Phát triển giao diện người dùng thân thiện,

cho phép tương tác với các thiết bị loT trong Metaverse một cách trực quan

và tự nhiên, tương tự như tương tác trong thế giới thực

Trang 18

- - Tỉ lệ nhận diện người có độ chính xác cao: Mục tiêu đạt độ chính xác khi

nhận diện người trên 80%, không bị mất dữ liệu

- _ Tốc độ: Độ trễ khi mô phỏng lên thế giới ảo không quá 3 giây, không bị mat

gói tin.

Ứng dụng cu thé tai tang 6 tòa E:

— Nhận biét sự hiện diện: Triên khai các cảm biên IoT như cảm biên chuyên

động, cảm biên nhiệt độ hoặc cảm biên hình ảnh đê phát hiện sự có mặt của người trong khu vực Thông tin này sẽ được truyên vào Metaverse đê hiên

thị trạng thái phòng, bật đèn tự động hoặc điều chỉnh nhiệt độ

-_ Mô phỏng môi trường thực tế: Sử dụng các cảm biến IoT dé thu thập dit

liệu về môi trường thực tế như nhiệt độ, độ ẩm, ánh sáng và chất lượng

không khí Dữ liệu này sẽ được sử dụng dé tạo ra một mô hình 3D của tầng 6tòa E trong Metaverse, phản ánh chính xác điều kiện môi trường thực tế

Điều này cho phép người dùng theo dõi và kiểm soát môi trường từ xa thông

qua Metaverse.

1.5 Phương pháp thực hiện:

Dự án này sẽ được chia thành ba giai đoạn chính: thiết kế, phát triển và triểnkhai Mỗi giai đoạn sẽ sử dụng các công cụ và kỹ thuật cụ thê để đạt được các mụctiêu đã đề ra

Giai đoạn 1: Thiết kế

— Thiết kế môi trường 3D: Sử dụng Unity hoặc Unreal Engine dé tạo ra môi

trường 3D chân thực của tang 6 tòa E

— Thiết lập kết nối IoT:

10

Trang 19

+ Lựa chọn các thiết bị loT phù hợp với nhu cầu và mục đích sử dụng,

ví dụ như cảm biến chuyên động, cảm biến nhiệt độ, cảm biến ánhsang, camera, và các thiết bị điều khiển thông minh

+ Xác định giao thức kết nối IoT phù hợp (ví dụ: MQTT, Websocket,

HTTP) và thiết lập kết nối giữa các thiết bị IoT và môi trường thực tế

ảo.

+ Xây dựng cơ sở dữ liệu dé lưu trữ và quan lý dit liệu từ các thiết bị

loT.

— Thiết kế giao diện người dùng:

+ Tạo ra giao diện người dùng trực quan, dễ sử dụng và thân thiện với

người dùng.

+ Thiết kế các thành phan giao diện như bảng điều khiển, nút bam,

thanh trượt và các biểu đồ trực quan dé hiên thị di liệu từ các thiết bị

loT.

Giai đoạn 2: Phát triển

— Triển khai môi trường ảo:

+ Tích hợp mô hình 3D đã thiết kế vào Unity hoặc Unreal Engine

+ Thêm các hiệu ứng ánh sáng, âm thanh và vật lý dé tăng tính chân

thực cho môi trường ảo.

— Kết nối thiết bị loT với môi trường ảo:

+ Viết mã dé kết nối các thiết bị loT với môi trường thực tế ảo thông

qua giao thức đã chọn.

+ Xử lý dé liệu từ các thiết bị IoT và hiển thị chúng trên giao điện người

dùng trong Metaverse.

+ Phát triển các chức năng điều khiến các thiết bị IoT từ xa thông qua

giao diện Metaverse.

11

Trang 20

— Sử dụng YOLOv8 để nhận diện người: Sử dụng thư viện YOLOv§ dé

train model, xuất thành một model nhận diện người

+ Sửa lỗi và cải thiện hiệu suất của hệ thống

Giai đoạn 3: Triển khai

— Triển khai hệ thống:

+ Cài đặt hệ thống trên các thiết bị thực tế ảo và máy chủ

+ Cấu hình các thiết bị IoT và kết nói chúng với hệ thống

— Trải nghiệm và thử nghiệm:

+ Mời người dùng trải nghiệm và đánh giá hệ thống

+ Thu thập phản hồi từ người dùng và sử dụng chúng dé cải thiện hệ

thống

— Sửa lỗi và bảo trì:

+ Theo dõi hoạt động của hệ thống và phát hiện các lỗi

+ Sửa lỗi và cập nhật hệ thông thường xuyên dé đảm bảo tính 6n định

và bảo mật.

Vệ công cu:

12

Trang 21

-_ Unity: Công cụ mạnh mẽ để tạo môi trường 3D và các trò chơi tương tác.

Ngôn ngữ lập trình C# được sử dụng để phát triển các chức năng và tương

Z

tác.

-_ Arduino IDE: Môi trường phát triển tích hợp (IDE) để lập trình các bo

mạch Arduino, bao gồm cả ESP32

— Unreal Engine: Một công cụ tạo môi trường 3D và trò chơi khác, có kha

năng tạo đồ họa chân thực và hiệu ứng hình ảnh ấn tượng Có thể được sử

dụng dé nâng cấp dự án trong tương lai

— Polycam: Ung dụng di động mạnh mẽ cho phép quét 3D các đối tượng và

không gian thực tế một cách nhanh chóng va dễ dang Mặc dù có chi phi,nhưng chất lượng mô hình 3D mà Polycam tạo ra là rất cao, giúp tăng tính

chân thực cho môi trường ảo.

1.6 Nội dung báo cáo:

Nội dung đề tài bao gồm 5 Chương:

— Chương 1: Tổng quan đề tài

— Chương 2: Cơ sở lý thuyết đề tài

— Chương 3: Nội dung thực hiện

— Chương 4: Kết quả thực hiện

— Chương 5: Kết luận

13

Trang 22

Chương 2 CƠ SỞ LÝ THUYET DE TÀI

2.1 WebSocket:

2.1.1 Socket là gi?

Socket là giao diện lập trình ứng dụng mạng được dùng dé truyền và nhận ditliệu trên internet Giữa hai chương trình chạy trên mạng cần có một liên kết giao

tiếp hai chiều, hay còn gọi là two-way communication để kết nối 2 process trò

chuyện với nhau Điểm cuối (endpoint) của liên kết này được gọi là socket.

Một chức năng khác của socket là giúp các tầng TCP hoặc TCP Layer địnhdanh ứng dụng mà dữ liệu sẽ được gửi tới thông qua sự ràng buộc với một công port

(thé hiện là một con số cụ thé), từ đó tiến hành kết nối giữa client và server Hình

2.1 mô tả chỉ tiết vị trí của socket trong mô hình mạng

Hình 2.1 Mô hình mạng va vị tri của socket

Người dùng cần socket bởi vì ưu những điểm mạnh của nó Socket hỗ trợ

hầu hết các hệ điều hành bao gồm MS Windows, Linux Ngoài ra, socket cũng

được sử dụng với nhiều ngôn ngữ lập trình, gồm C, C++, Java, Visual Basic, Visual

14

Trang 23

C++ nên nó có thể tương thích với hầu hết mọi đối tượng người dùng với những

câu hình máy khác nhau.

Đặc biệt, người dùng cũng có thê chạy cùng một lúc nhiêu socket liên tục,

giúp nâng cao hiệu suât làm việc, cũng như tiệt kiệm thêm nhiêu thời gian và công

sức hơn [10]

Có nhiều loại socket như: Stream Socket, Datagram Socket Nhưng trong đề

tài này chỉ sử dụng WebSocket.

2.1.2 WebSocket là gì?

Websocket là công cụ hỗ trợ việc kết nối qua lại trên internet giữa client và

server Giúp diễn ra nhanh chóng và hiệu quả hơn thông qua việc sử

dụng TCP socket Không chỉ sử dụng riêng cho ứng dụng web, Websocket có thé ápdụng cho bat kì ứng dụng nào khác cần có sự trao đổi thông tin trên Internet Cáchhoạt động chi tiết của WebSocket được mô tả chỉ tiết trong hình 2.2

Trang 24

Ưu điểm của WebSocket:

— Tăng tốc độ truyền tải thông tin giữa 2 chiều

— Dé phát hiện và xử lý trong trường hợp có lỗi xảy ra

— Dễ dàng sử dụng, không cần cài đặt thêm các phần mềm bồ sung khác

— Không cần sử dụng nhiều phương pháp kết nối khác nhau

Nhược điểm của WebSocket:

— Chưa hỗ trợ trên tất cả các trình duyệt

— Với các dịch vụ có phạm vi yêu cầu, Websocket chưa hỗ trợ hoàn toàn [10]

2.2 Message Queuing Telemetry Transport:

Message Queuing Telemetry Transport (MQTT) là giao thức truyền thôngđiệp (message) theo mô hình publish/subscribe (cung cấp / thuê bao), được sử dungcho các thiết bị IoT với băng thông thấp, độ tin cậy cao và khả năng được sử dụngtrong mạng lưới không ôn định Nó dựa trên một Broker (tạm dịch là “May chủ môigiới”) “nhẹ” (khá ít xử lý) và được thiết kế có tính mở (tức là không đặc trưng cho

ứng dụng cụ thê nào), đơn giản và dễ cài đặt.

MỌTTT là lựa chon lý tưởng trong các môi trường như:

— Những nơi mà giá mạng viễn thông đắt đỏ hoặc băng thông thấp hay thiếu

tin cậy.

— Khi chạy trên thiết bị nhúng bị giới hạn về tài nguyên tốc độ và bộ nhớ

— Bởi vì giao thức này sử dụng băng thông thấp trong môi trường có độ trễ cao

nên nó là một giao thức lý tưởng cho các ứng dụng M2M (Machine to

Machine).

MOQTT cũng là giao thức được sử dụng trong Facebook Messenger VỊ trí của

MQTT trong hệ thống được mô tả ở hình 2.3

16

Trang 25

: Server (NodeJs,

Attacher Fe Sensor oom MOTT ==+ PHP )

—= LÍ

Mobile Web

Thing app app

Hinh 2.3 Vi tri cua MQTT trong hé thong

Ưu điểm của MQTT:

— Truyền thông tin hiệu quả hơn.

— Tang khả năng mở rộng.

— Giảm đáng ké tiêu thụ băng thông mạng.

— Rất phù hợp cho điều khiến và do thám.

— Tối đa hóa băng thông có san

— Chi phí thấp

— Rấtan toàn, bảo mật

- Được sử dụng trong các ngành công nghiệp dầu khí, các công ty lớn như

Amazon, Facebook,

— Tiết kiệm thời gian phát triển

— Giao thức publish/subscribe thu thập nhiều dữ liệu hơn và tốn ít băng thông

hơn so với giao thức cũ.

17

Trang 26

2.2.1 Mô hình Pub/Sub:

Client:

— Publisher - Nơi gửi thông điệp

— Subscriber - Nơi nhận thông điệp

Broker: Máy chủ

Trong đó Broker được coi như trung tâm, nó là điểm giao của tất cả các kếtnối đến từ Client (Publisher/Subscriber) Nhiệm vụ chính của Broker là nhận thôngđiệp (message) từ Publisher, xếp vào hàng đợi rồi chuyển đến một địa điểm cụ thé.Nhiệm vụ phụ của Broker là nó có thé đảm nhận thêm một vai tinh năng liên quantới quá trình truyền thông như: bảo mat message, lưu trữ message, logs,

Client thì được chia thành hai nhóm là Publisher và Subscriber Client chỉ làm

ít nhất một trong 2 việc là publish các thông điệp (message) lên một/nhiều topic cụthể hoặc subscribe một/nhiều topic nào đó dé nhận message từ topic này Hình 2.4

mô tả chỉ tiết về mô hình Pub/Sub

— Thời gian tách biệt (Time decoupling).

— Đồng bộ riêng rẽ (Synchronization decoupling)

18

Trang 27

Nhược điểm:

— Máy chủ (Broker) không cần thông báo về trạng thái gửi thông điệp Do đó

không có cách nào dé phát hiện xem thông điệp đã gửi đúng hay chưa

— Publisher không hề biết gì về trạng thái của subscribe và ngược lại.

— Những kẻ xấu (Malicious Publisher) có thé gửi những thông điệp xấu, và các

Subscriber sẽ truy cập vào những thứ mà họ không nên nhận [11]

2.3 OpenCV:

OpenCV (Open Source Computer Vision Library) là một thư viện phần mềmchứa hàng ngàn thuật toán xử lý ảnh và video, được thiết kế để giúp các nhà pháttriển đễ đàng xây dựng các ứng dụng thị giác máy tính OpenCV hỗ trợ nhiều ngônngữ lập trình khác nhau như C++, Python, Java, và hoạt động trên nhiều hệ điều

hành khác nhau như Windows, macOS, Linux và Android.

Các tính năng nỗi bật của OpenCV:

— Xử lý ảnh: OpenCV cung cấp các công cụ mạnh mẽ dé đọc, ghi, hiển thị,

biến đổi, lọc và phân tích ảnh Bạn có thể dễ dàng thực hiện các tác vụ như

thay đổi kích thước, xoay, cắt, làm mịn, tăng độ tương phan, phát hiện biên,phân đoạn ảnh, và nhiều hơn thế nữa

-_ Xử lý video: OpenCV cho phép bạn đọc, ghi, hiển thị va xử lý video theo

thời gian thực Bạn có thé thực hiện các tác vụ như theo dõi đối tượng, pháthiện chuyền động, ước tính chuyền động, én định video, và thậm chi xâydựng các hệ thống nhận dạng hành động

— Machine learning: OpenCV tích hợp các thuật toán machine learning (học

máy) để giải quyết các bài toán thị giác máy tính phức tạp Bạn có thể sửdụng các mô hình học máy có sẵn hoặc huấn luyện mô hình của riêng mình

dé thực hiện các tác vụ như phân loại đối tượng, nhận dạng khuôn mặt, phát

hiện vật thê, và nhiêu hơn thê nữa.

19

Trang 28

-_ Giao diện người dùng: OpenCV cung cấp các công cụ dé xây dựng giao

diện người dùng đồ họa cho các ứng dụng thị giác máy tính của bạn Bạn cóthé dễ dàng tạo các cửa số, nút bam, thanh trượt và các thành phần khác dé

tương tác với người dùng [12]

Sơ đồ cau trúc của OpenCV có thê được mô ta bằng hình 2.3

Core ML

Basic structures, Tools for classification

algorithms and

and drawing functions clustering

Hình 2.5 Sơ đồ cấu trúc của thư viện OpenCV

Trong đó:

Phần Core của thư viện bao gồm các lĩnh vực chức năng sau:

— Khởi tao các cấu trúc dit liệu cơ bản

— Sao chép, điền và truy cập các phan tử con của cấu trúc dit liệu

-_ Các hàm số học, logic, thống kê và toán học

— Các hàm vẽ (đường thắng, hình tròn, hình chữ nhật, văn bản)

-_ Xử lý lỗi

Phan CV của thư viện chứa các chức năng sau:

— Tinh toán gradient, phát hiện cạnh và góc.

— Tìm kiếm đặc trưng dé theo dõi.

—_ Nội suy và biến đổi hình học.

— Chuyên đôi mau sắc.

20

Trang 29

—_ Các phép toán hình thái.

—_ Lọc 2D.

— So khớp mẫu.

— Tinh toán và phân tích biểu đồ.

— Phan đoạn hình ảnh và các thành phan liên kết.

— Phân tích chuyền động và theo dõi đối tượng.

— Nhận dạng đối tượng.

— _ Hiệu chỉnh camera và tái tạo cảnh 3D.

Phần GUI của thư viện OpenCV không chỉ dành riêng cho GUI mà còn bao gồm các chức

năng sau:

- Tạo giao diện người dùng đồ họa - cửa sé, thanh trượt, phát hiện sự kiện chuột và

bàn phím.

—_ Tải và lưu hình anh ở nhiều định dạng khác nhau.

— Nhap/xuat tệp video và thiết lập thông số camera.

— Các chức năng tiện ích và hệ thống khác.

Có một phần riêng biệt của thư viện OpenCV dành riêng cho các thuật toán học máy (machine learning) Nó cực kỳ hữu ích cho tất cả các ứng dụng nhận dạng mẫu hiện đại và bao gồm các phương pháp phân loại sau:

— Naive Bayes

— k-nearest neighbors

— Máy vecto hỗ tro (Support vector machines)

— Cây quyết định (Decision trees)

— Boosting

— Random trees

— _ Thuật toán kỳ vọng tối đa (Expectation-maximization)

— Mạng no-ron (Neural networks) [13]

21

Trang 30

Cụ thê hơn thì Yolo là một mô hình mạng CNN cho việc phát hiện, nhận dạng, phân

loại đối tượng Yolo được tạo ra từ việc kết hợp giữa các convolutional layers vàconnected layers Trong đóp các convolutional layers sẽ trích xuất ra các feature củaảnh, còn full-connected layers sẽ dự đoán ra xác suất đó và tọa độ của đối tượng.[14] Hình 2.6 thể hiện kiến trúc chung của YOLO

Hình 2.6 Mô hình của YOLO

Nguyên lý hoạt động của YOLO:

Khác với các phương pháp phát hiện đối tượng truyền thống như R-CNN(Region-based Convolutional Neural Networks), YOLO sử dụng cách tiếp cận toàndiện (end-to-end) dé phát hiện đối tượng Thuật toán này chia hình ảnh đầu vào

thành các lưới (grid) và dự đoán các hộp giới hạn (bounding boxes) cũng như các

xác suất cho từng lớp đối tượng trong mỗi ô lưới

Cụ thể hơn thì Đầu vào của mô hình là một ảnh, mô hình sẽ nhận dạng ảnh đó

có đối tượng nào hay không, sau đó sẽ xác định tọa độ của đối tượng trong bức ảnh.Ảnh đầu vào được chia thành thành SxS ô thường thi sẽ là 3 x 3, 7 x 7, 9 x 9,

22

Trang 31

việc chia ô này có ảnh hưởng tới việc mô hình phát hiện đối tượng Hình 2.7 mô tả

quá trình YOLO chia các grid và nhận diện.

Bounding boxes + confidence

S x S grid on input Final detections

Hinh 2.7 Cach YOLO chia grid va nhan dién [15]

Dựa vào ảnh 2.7 Với Input là 1 ảnh, đầu ra mô hình là một ma trận 3

chiều có kích thước SxSx(5xN+M) với số lượng tham số mỗi 6 là (5xN+M) với

N và M lần lượt là số lượng Box và Class mà mỗi ô cần dự đoán Ví dụ với hình

ảnh trên chia thành 7x7 ô, mỗi ô cần dự đoán 2 bounding box và 3 object: con chó, ô tô, xe đạp thì output là 7x7x13, mỗi ô sẽ có 13 tham số, kết quả trả về

(7x7x2=98) bounding box Chúng ta sẽ cùng giải thích con số (5xN+M) được tính như thế nào.

Dự đoán mỗi bounding box gồm 5 thành phần: (x, y, w, h, prediction) với

(x, y) là tọa độ tâm của bounding box, (w, h) lần lượt là chiều rộng và chiều cao

của bounding box, prediction được định nghĩa Pr (Object)* IOU (pred, truth)

xin trình bày sau Với hình anh trên như ta tính mỗi 6 sẽ có 13 tham số, ta có

thể hiểu đơn giản như sau tham số thứ 1 sẽ chỉ ra ô đó có chứa đối tượng nào hay không P(Object), tham số 2, 3, 4, 5 sẽ trả về x, y, w, h của Box1 Tham số 6,

23

Ngày đăng: 23/12/2024, 23:45

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

TÀI LIỆU LIÊN QUAN