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

(Đồ án hcmute) thiết kế hệ thống mở cửa tự động thông qua nhận diện có đeo khẩu trang và nhiệt độ cơ thể thấp

63 3 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 đề Thiết kế hệ thống mở cửa tự động thông qua nhận diện có đeo khẩu trang và nhiệt độ cơ thể thấp
Tác giả Nguyễn Anh Huy
Người hướng dẫn PGS.TS. Trương Ngọc Sơn
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Máy Tính
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 63
Dung lượng 6,05 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sơ lược về đề tài của nhóm thực hiện, nhóm sẽ tìm hiểu và thiết kế ra một hệ thống nhận diện có đeo khẩu trang và nhiệt độ cơ thể thấp để đóng mở cửa tự động.. Đầu tiên về khối nhận diện

Trang 1

THÀNH PHỐ HỒ CHÍ MINH

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH

Tp Hồ Chí Minh, Tháng 8/2022

SVTH: NGUYỄN ANH HUY GVHD: PGS.TS TRƯƠNG NGỌC SƠN

S K L 0 0 9 8 4 3

THIẾT KẾ HỆ THỐNG MỞ CỬA TỰ ĐỘNG

THÔNG QUA NHẬN DIỆN CÓ ĐEO KHẨU TRANG

VÀ NHIỆT ĐỘ CƠ THỂ THẤP

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH

KHOA ĐÀO TẠO CHẤT LƯỢNG CAO

ĐỒ ÁN TỐT NGHIỆP

NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH

THIẾT KẾ HỆ THỐNG MỞ CỬA TỰ ĐỘNG THÔNG QUA NHẬN DIỆN CÓ ĐEO KHẨU TRANG VÀ NHIỆT ĐỘ CƠ THỂ THẤP

MSSV: 18119077

TP HỒ CHÍ MINH – 08/2022

Trang 3

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH

KHOA ĐÀO TẠO CHẤT LƯỢNG CAO

ĐỒ ÁN TỐT NGHIỆP

NGÀNH CÔNG NGHỆ KỸ THUẬT MÁY TÍNH

THIẾT KẾ HỆ THỐNG MỞ CỬA TỰ ĐỘNG THÔNG QUA NHẬN DIỆN CÓ ĐEO KHẨU TRANG VÀ NHIỆT ĐỘ CƠ THỂ THẤP

MSSV: 18119077

GVHD: PGS.TS TRƯƠNG NGỌC SƠN

TP HỒ CHÍ MINH – 08/2022

Trang 4

TP Hồ Chí Minh, ngày 31 tháng 07 năm 2022

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

Họ và tên sinh viên: Nguyễn Anh Huy MSSV: 18119077

Ngành: Công nghệ kỹ thuật máy tính Lớp: 18119CL1A

Giảng viên hướng dẫn: PGS.TS Trương Ngọc Sơn

1 Tên đề tài: Thiết kế hệ thống mở cửa tự động thông qua nhận diện có đeo

khẩu trang và nhiệt độ cơ thể thấp

2 Các số liệu, tài liệu ban đầu: Các tài liệu về các dự án có liên quan, tài liệu

về ngôn ngữ lập trình sử dụng trong đề tài, tài liệu về các linh kiện sử dụng

trong đề tài

3 Nội dung thực hiện đề tài: Thiết kế chi tiết mô hình và thi công mô hình thử

nghiệm

4 Sản phẩm: Mô hình phần cứng hệ thống

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc ***

Trang 5

TP Hồ Chí Minh, ngày 31 tháng 07 năm 2022

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Họ và tên Sinh viên: Nguyễn Anh Huy MSSV: 18119077

Ngành: Công nghệ kỹ thuật máy tính

Tên đề tài: Thiết kế hệ thống mở cửa tự động thông qua nhận diện khẩu trang

và nhiệt độ cơ thể cao

Họ và tên Giáo viên hướng dẫn: PGS.TS Trương Ngọc Sơn

GIẢNG VIÊN HƯỚNG DẪN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc ***

Trang 6

TP Hồ Chí Minh, ngày tháng năm 2022

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

Họ và tên Sinh viên: Nguyễn Anh Huy MSSV: 18119077

Ngành: Công nghệ kỹ thuật máy tính

Tên đề tài: Thiết kế hệ thống mở cửa tự động thông qua nhận diện có đeo khẩu

trang và nhiệt độ cơ thể thấp

Họ và tên Giáo viên phản biện:

GIẢNG VIÊN PHẢN BIỆN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc ***

Trang 7

đã dành nhiều công sức để tìm hiểu và sửa chữa những kiến thức còn thiếu sót qua

đó giúp nhóm hoàn thành tốt luận văn

Do thời gian chuẩn bị và làm việc, cũng như với lượng kiến thức chuyên môn

và kinh nghiệm còn hạn chế nên có thể luận văn do nhóm thực hiện còn vướng mắc nhiều vấn đề Rất mong nhận được sự cảm thông và đóng góp của quí thầy cô

và các bạn

Cuối cùng, nhóm xin gửi lời cảm ơn đến gia đình và bạn bè, đã luôn tạo điều kiện, động lực, hỗ trợ, động viên nhóm để nhóm để có thể hoàn thành được luận văn tốt nghiệp một cách thuận lợi nhất Nhóm xin chân thành thành cám ơn !

Trang 8

vi

LỜI CAM ĐOAN

Nhóm thực hiện luận văn gồm Nguyễn Anh Huy xin cam đoan rằng tất cả nội dung đều do nhóm tự tìm hiểu và được sự hướng dẫn của PGS.TS Trương Ngọc Sơn Các ứng dụng trong bài báo cáo nhóm có tham khảo trong một vài tài liệu nhưng không thực hiện hành vi sao chép các nguồn tài liệu này Thông tin về tài liệu tham khảo đã được trích dẫn ở cuối bài báo cáo

Đại diện nhóm thực hiện đồ án tốt nghiệp

(ký và ghi rõ họ tên)

Nguyễn Anh Huy - 18119077

Trang 9

vii

TÓM TẮT

Ngày nay, với sự tiến bộ và phát triển không ngừng của khoa học kỹ thuật, trí tuệ nhân tạo và xử lý ảnh là những đề tài đang được để mắt đến Từ xử lý một ảnh xám đơn giản cho đến ứng dụng để xử lý một luồng hình ảnh trong thị giác máy tính Cùng với đó là sự phát triển của lĩnh vực trí tuệ nhân tạo đã mở ra những cơ hội mới cho nhóm ngành công nghệ nghiên cứu về máy tính, cung cấp cho máy tính các khả năng như con người như khả năng học, suy luận, dự đoán, thị giác, ngôn ngữ Nhận thấy các chủ đề xoay quanh việc sử dụng AI ngày càng nhiều trong cuộc sống, nhóm quyết định thực hiện đề tài về chủ để xử lý ảnh

Sơ lược về đề tài của nhóm thực hiện, nhóm sẽ tìm hiểu và thiết kế ra một hệ thống nhận diện có đeo khẩu trang và nhiệt độ cơ thể thấp để đóng mở cửa tự động

Để có thể tối ưu tốc độ của hệ thống nhiều nhất có thể, nhóm chia hệ thống thành hai khối nhỏ để đảm nhận các công việc khác nhau Đầu tiên về khối nhận diện khuôn mặt có đeo khẩu trang, nhóm sử dụng Raspberry Pi 4 để thực hiện công việc này với các ưu điểm như gọn nhẹ, tiết kiệm điện nhưng vẫn có đủ sức mạnh để có thể xử lý được mô hình nhận diện khẩu trang Về mô hình nhận diện khẩu trang, nhóm sử dụng kiến trúc MobileNetV2 với các ưu điểm là ít thuật toán, phù hợp với các thiết bị nhúng như Raspberry Về khối đo nhiệt độ cơ thể và đóng mở cửa

tự động, nhóm sử dụng STM32 với các ưu điểm là rẻ, sức mạng vi xử lý vừa đủ dùng, đồng thời có thể lập trình trên ngôn ngữ C nên khá gần gũi với nhóm Bên khối này, để có thể đo được nhiệt độ người ra vào thì nhóm sử dụng cảm biến nhiệt

độ không tiếp xúc để đo Đối việc đóng mở cửa thì nhóm sử dụng servo để mô phỏng cho hoạt động đóng mở cửa của hệ thống

Về nội dung bài báo cáo, nhóm sẽ trình bày về lý thuyết cơ bản của các khối

sử dụng trong bài báo cáo và lưu đồ hoạt động của cả hệ thống cả phần cứng lẫn phần mềm Cuối cùng là đánh giá hoạt động của từng khối, đồng thời thời cũng đưa ra bảng kiểm nghiệm sai số đối với mô hình nhận diện khẩu trang trong các môi trường hoạt động khác nhau

Trang 10

viii

ABSTRACT

Nowaday, with improvement of technology, artificial intelligent image processing are some topics kept an eye on it From process a simple gray image to process a list of images in a second With development of AI has bring a lot of opportunity to major relatived to AI, create a computer which can behave like a human like thinking, deductive, prediction, vision and language Found that topic about AI play important role in life today, my group decide to make a project about image processing

About our group project, we will research and design a system which can detect face with mask and measure body temperature, who is wearing mask for automatic door To optimize the system, we decide to split the system to two small parts The first part is used to detect face mask by using Raspberry Pi 4 with some advantages like small, save energy with powerful chip for process mask image About the architecture we use to detect the face mask, we choose MobileNetV2 network with have advantage like less parameter, appropriate to use for embedded system like Raspberry Pi 4 About the other part, we use STM32 with have advantage such as cheap, chip have enough power to measure body temperature, and it use C to program which is easy program To measure body temperature, we use sensor to measure temperature And to simulate automatic door, we use servo

in this system for this job

About content in this report, we will introduce about basic theory used in this system and working flowchart about hardware and software using in this system Finally, we will validate working each part can work smoothly Beside, we will summary about error when detect face mask in different light conditions

Trang 11

ix

MỤC LỤC

DANH MỤC HÌNH XI

DANH MỤC BẢNG XIII

CÁC TỪ VIẾT TẮT XIV

CHƯƠNG 1 GIỚI THIỆU 1

1.1 G IỚI THIỆU 1

1.2 MỤC TIÊU ĐỀ TÀI 2

1.3 GIỚI HẠN ĐỀ TÀI 3

1.4 PHƯƠNG PHÁP NGHIÊN CỨU 3

1.5 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 3

1.6 BỐ CỤC QUYỂN BÁO CÁO 3

CHƯƠNG 2 GIỚI THIỆU MẠNG MOBILE NET 5

2.1 G IỚI THIỆU K IẾN TRÚC M OBILE N ET V1 5

2.1.1 Lớp tích chập phân tách theo chiều sâu (DSC) 5

2.1.2 Kiến trúc mạng MobileNet V1 7

2.2 G IỚI THIỆU KIẾN TRÚC M OBILE N ET V2 8

2.2.1 Loại bỏ non-linear 8

2.2.2 Khối Inverted Residual với Linear Bottleneck 9

2.2.3 Kiến trúc mạng MobileNetV2 10

CHƯƠNG 3 THIẾT KẾ HỆ THỐNG MỞ CỬA TỰ ĐỘNG THÔNG QUA NHẬN DIỆN CÓ ĐEO KHẨU TRANG VÀ NHIỆT ĐỘ CƠ THỂ THẤP 12

3.1 T HIẾT KẾ PHẦN CỨNG 12

3.1.1 Sơ đồ khối hệ thống 12

3.1.2 Khối nhận tín hiệu 13

3.1.3 Khối đóng mở cửa 15

3.1.4 Khối giao tiếp giữa Raspberry Pi và STM32 16

3.1.5 Khối hiển thị 17

3.1.6 Khối nguồn 18

3.1.7 Sơ đồ nguyên lý 20

3.2 T HIẾT KẾ PHẦN MỀM 21

3.2.1 Huấn luyện xây dựng mô hình nhận dạng khẩu trang 21

Trang 12

x

3.2.2 Sơ đồ khối hệ thống thực thi 27

3.2.3 Lưu đồ giải thuật 27

CHƯƠNG 4 KẾT QUẢ 31

4.1 ĐÁNH GIÁ MÔ HÌNH NHẬN DẠNG KHẨU TRANG 31

4.2 Đ ÁNH G IÁ M Ô H ÌNH PHẦN CỨNG 32

4.2.1 Mô hình sản phẩm 32

4.2.2 Kết quả thực nghiệm từ việc nhận dạng khuôn mặt 34

4.2.3 Đánh giá quá trình nhận dữ liệu 36

4.2.4 Đánh giá hoạt động tổng thể của hệ thống 37

4.2.5 Đánh giá hoạt động của hệ thống 40

CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 42

5.1 KẾT LUẬN 42

5.2 HƯỚNG PHÁT TRIỂN 43

TÀI LIỆU THAM KHẢO 44

Trang 13

xi

DANH MỤC HÌNH

Hình 2.1 Mô tả phép chập Depthwise Convolution 5

Hình 2.2 Mô tả phép chập Pointwise Convolution 6

Hình 2.3 Bảng mô tả kiến trúc của mạng MobileNetV1 7

Hình 2.4 So sánh giữa phép chập thường và phép chập theo DSC 8

Hình 2.5 Biểu diễn của hàm phi tuyến tác động lên sự mất mát của dữ liệu 9

Hình 2.6 So sánh sự khác nhau giữa khối Residual Block và Inverted Residual Block 10

Hình 2.7 Bảng mô tả kiến trúc của mạng Mobile Net V2 và khối Inverted Residual Block 10

Hình 3.1 Sơ đồ khối hệ thống nhận diện và điều khiển đóng mở cửa 12

Hình 3.2 Hình minh họa camera sử dụng trong đề tài 13

Hình 3.3 Sơ đồ kết nối của cảm biến nhiệt độ MLX90614 14

Hình 3.4 Sơ đồ kết nối của servo SG90 15

Hình 3.5 Sơ đồ kết nối của cảm biến hồng ngoại 16

Hình 3.6 Sơ đồ kết nối của FT232RL 17

Hình 3.7 Màn hình Waveshare sử dụng trong hệ thống 18

Hình 3.8 Sơ đồ kết nối của mạch ổn áp LM2596S 19

Hình 3.9 Sơ đồ nguyên lý chi tiết của toàn bộ hệ thống 20

Hình 3.10 Sơ đồ khối quy trình xây dựng và ứng dụng mô hình 22

Hình 3.11 Dữ liệu ảnh đeo khẩu trang 23

Hình 3.12 Dữ liệu ảnh không đeo khẩu trang 23

Hình 3.13 Tăng cường tập ảnh dữ liệu train 24

Hình 3.14 Sơ đồ khối của hệ thống nhận diện khẩu trang và nhiệt độ để mở cửa 27

Hình 3.15 Lưu đồ hoạt động của Raspberry Pi 4 28

Hình 3.16 Lưu đồ hoạt động của STM32 29

Hình 4.1 Đồ thị giá trị loss và accuracy 31

Hình 4.2 Đánh giá model bằng classification_report 32

Hình 4.3 Mô hình toàn thể của hệ thống 33

Trang 14

xii

Hình 4.4 Màn hình của hệ thống khi hoạt động 34

Hình 4.5 Kiểm tra nhận diện không đeo khẩu trang trên Raspberry Pi 4 35

Hình 4.6 Kiểm tra nhận diện có đeo khẩu trang trên Raspberry Pi 4 35

Hình 4.7 Kiểm tra truyền tham số khi nhận diện không đeo khẩu trang 36

Hình 4.8 Kiểm tra truyền tham số khi nhận diện có đeo khẩu trang 37

Hình 4.9 Trường hợp nhiệt độ cao và có đeo khẩu trang 38

Hình 4.10 Trường hợp nhiệt độ thấp và không đeo khẩu trang 38

Hình 4.11 Trường hợp nhiệt độ cơ thể thấp và có đeo khẩu trang 39

Hình 4.12 Trường hợp có người đã đi qua cửa 39

Hình 4.13 Bảng đánh giá khả năng nhận diện trong các điều kiện khác nhau 40

Trang 15

xiii

DANH MỤC BẢNG

Bảng 1 Thông số công suất của từng bộ phận 20

Trang 16

xiv

CÁC TỪ VIẾT TẮT

DSC Depthwise Separable Convolution

RWFD Real-World Face

Trang 17

Song song với đó là sự phổ biến và phát triển vượt bậc của dòng thiết bị Raspberry Pi tuy nhỏ gọn nhưng vẫn mang sức mạnh xử lý mạnh mẽ và tiết kiệm năng lượng Kết hợp với khả năng chạy được hệ điều hành mở và giá thành thấp, phù hợp với các ứng dụng có chi phí không cao nhưng vẫn cần sức mạnh đủ lớn

dữ liệu đeo khẩu trang nhân tạo, cụ thể là lấy sử dụng một tấm hình bình thường

và chỉnh thêm khẩu trang vào cho khuôn mặt trong hình Cuối cùng là trong mô

Trang 18

2

hình này sử dụng thư viện dlib để xác định các mốc trên khuôn mặt, từ đó xác định

vị trí của đôi mắt, mũi, miệng Sử dụng các điểm ở vùng miệng và tính toán độ sáng trung bình ở vùng miệng để so sánh với một ngưỡng đặt trước để kiểm tra xem có đeo khẩu trang hay không, phương pháp này tuy nhanh nhưng độ chính xác không cao Vì vậy ở đây nhóm quyết định thực hiện đề tài sẽ sử dụng mạng MobileNetV2, một mạng nhẹ, tốc độ tính toán nhanh, số lượng tham số ít và dễ dàng triển khai trên các hệ thống nhúng gọn nhẹ có đủ sức mạnh để xử lý hình ảnh

để phát hiện khuôn mặt có đeo khẩu trang theo thời gian thực Nhận thấy các điều trên, nhóm đã chọn đề tài phát hiện người đeo khẩu trang bằng mạng MobilenetV2 kết hợp với việc đo nhiệt độ của người sử dụng để cho phép người đó có thể đi vào bên trong khu vực yêu càu đảm bảo an toàn dịch bệnh trên máy tính nhúng Raspberry Pi Đề tài phát hiện người đeo khẩu trang sẽ có input là hình ảnh được lấy trực tiếp từ webcam hoặc là hình ảnh cần phát hiện/nhận diện và output là ảnh

sẽ đóng khung khuôn mặt người đeo khẩu trang bằng ô vuông màu xanh lá, ảnh đóng khung mặt người không đeo khẩu trang bằng ô vuông màu đỏ Đồng thời để tài sẽ tiến hành đo đạc xem người đó có sốt không, một trong những triệu chứng sớm của bệnh Covid-19 Sau khi thỏa mãn các yêu cầu thì sẽ mở cổng và cho phép người đó đi vào trong

1.2 MỤC TIÊU ĐỀ TÀI

Mục tiêu của nhóm là nghiên cứu về một mạng AI có thể nhận dạng ảnh người

có hay không đeo khẩu trang, đồng thời cũng mong muốn có thể hoạt động tốt trên một hệ thống nhỏ gọn Nên ở đây nhóm nghiên cứu về mạng MobileNetV2 để có thể ứng dụng trên các thiết bị nhúng nhỏ gọn như Raspberry Pi 4 Từ những kiến thức đã nghiên cứu được, nhóm đã thiết kế và tích hợp mô hình vào Raspberry Pi

4 để cho ra được một hệ thống nhận diện khẩu trang tự động bằng mạng MobileNetV2 Sau cùng là nhúng hệ thống nhận diện khẩu trang vào một hệ thống đóng mở cửa tự động có đo nhiệt độ cơ thể để cho ra được hệ thống của nhóm

Trang 19

3

1.3 GIỚI HẠN ĐỀ TÀI

Đề tài sử dụng Raspberry Pi 4 để nhận diện nên việc nhận diện và trả tham số

về cho phía STM32 để xử lý bị chậm Ngoài ra đề tài chỉ có thể nhận diện tốt nhất vào lúc trời sáng và khoảng cách gần, và tệ dần khi gặp trời tối hoặc khoảng cách

xa

1.4 PHƯƠNG PHÁP NGHIÊN CỨU

Nghiên cứu, tìm hiểu về hệ thống nhận diện khuôn mặt có hay không đeo khẩu trang

Nghiên cứu, tìm hiểu về hệ thống thu thập nhiệt độ, đóng mở cửa

Phân tích giải thuật để thực thi và giao tiếp giữa hai hệ thống với nhau

Thiết kế hệ thống dựa trên giải thuật đã phân tích

Phân tích, đánh giá hiệu năng của hệ thống

1.5 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU

Đối tượng nghiên cứu: các thuật toán trích xuất đặt trung của khuôn mặt có và không đeo khẩu trang, các thuật toán nhận khuôn mặt

Phạm vi: Nghiên cứu các mô hình có sẵn như MobileNetV2, dataset sử dụng cho việc huấn luyện mô hình cũng được lấy từ nguồn có sẵn

Nhóm sẽ tiếp cận bài toán bằng cách sử dụng các các thư viện máy học như TensorFlow, Keras, OpenCV và Scikit-Learn Phương pháp sẽ là phát hiện khuôn mặt được đọc từ frame của camera realtime sau đó xác định xem khuôn mặt đó có đeo khẩu trang hay không bằng mạng MobilenetV2

1.6 BỐ CỤC QUYỂN BÁO CÁO

Nội dung chính của đề tài được trình bày với 5 chương:

• Chương 1 GIỚI THIỆU: giới thiệu chung về đề tài, mục tiêu nghiên cứu, giới hạn đề tài, phương pháp nghiên cứu, đối tượng và phạm vi nghiên cứu

• Chương 2 GIỚI THIỆU VỀ MOBILENET: giới thiệu về các lý thuyết cơ bản của MobileNet

Trang 20

4

• Chương 3 THIẾT KẾ HỆ THỐNG: đưa ra mô hình chung của toàn hệ thống, các khối của hệ thống, thiết kế từng khối và các thiết bị được sử dụng trong các khối

• Chương 4 KẾT QUẢ: trình bày kết quả thi công của mô hình hệ thống

• Chương 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN: rút ra các kết luận, điểm mạnh điểm yếu và hướng phát triển của mô hình

Trang 21

5

CHƯƠNG 2

GIỚI THIỆU MẠNG MOBILE NET

2.1 GIỚI THIỆU KIẾN TRÚC MOBILENET V1

Kiến trúc MobileNet V1 được giới thiệu vào năm 2017, điểm đáng chú ý của kiến trúc này là khả năng tối ưu khả năng khả năng accuracy có tỉ lệ rất cao, song song đó vẫn có thể hoạt động tốt trên hệ thống có nguồn tài nguyên hạn chế như các thiết bị di động hay các hệ thống nhúng Hai mục đích mà kiến trúc này hướng tới là: kích thước model nhỏ hơn (ít parameter hơn) và ít phức tạp hơn (ít phép cộng và phép nhân hơn) MobileNet V1 dựa trên một kiến trúc được sắp xếp hợp

lí sử dụng các lớp tích chập có thể phân tách theo chiều sâu (Depthwise Separable Convolution: DSC) để xây dựng mạng nơ ron có số lượng trọng số và độ phức tạp

ít hơn

2.1.1 Lớp tích chập phân tách theo chiều sâu (DSC)

Ý tưởng của DSC là tách phép tích chập làm 2 phần: tích chập theo chiều sâu (Depthwise Convolution: DC) và tích chập theo điểm (Pointwise Convulution: PC)

Hình 2.1 Mô tả phép chập Depthwise Convolution [1]

Depthwise Convulution là một phép tích chập bằng cách cho một kernel duy nhất chập với từng kênh của đầu vào, từ đó giúp giữ được sự đặc trưng của từng kênh Điều này ngược lại với phép tích chập thường thấy là số lượng kênh của

Trang 22

6

kernel bằng với số lượng kênh của đầu vào, việc thực hiện chập theo phương pháp này làm trộn lẫn các kênh và tạo ra được ảnh đầu ra Ngược lại, sự biến đổi theo chiều sâu giữ cho mỗi kênh riêng biệt Các bước thực hiện:

1) Tách ảnh đầu vào và bộ lọc thành M kênh

2) Tích chập M kênh đầu vào với M bộ lọc tương ứng

3) Xếp chồng M fearture map vào lại với nhau

Như vậy, độ phức tạp của DC là:

Hình 2.2 Mô tả phép chập Pointwise Convolution [1]

Như vậy, độ phức tạp của PC là:

Trang 23

2.1.2 Kiến trúc mạng MobileNet V1

Hình 2.3 Bảng mô tả kiến trúc của mạng MobileNetV1 [1]

Như chúng ta thấy, kiến trúc MobileNet có 30 lớp, ảnh ngõ vào là ảnh màu 224x224x3, phần lớn các lớp là DSC để giảm số lượng trọng số Ngõ ra là 1 trong

1000 lớp đã được đưa ra phân loại từ lớp softmax Sau các lớp chập Depthwise và

Pointwise mạng sử dụng hàm kích hoạt ReLU và Batch Normalization (BN) [1]

Trang 24

8

Hình 2.4 So sánh giữa phép chập thường và phép chập theo DSC [1]

Theo như hình đã so sánh thì khác phép chập thông thường, phép chập theo DSC sẽ có phép chập ở ngõ vào khác nhau và có thêm một vài lớp trung gian khác nữa

2.2 GIỚI THIỆU KIẾN TRÚC MOBILENET V2

Mạng MobileNetV2 được giới thiệu vào đầu năm 2018, là mạng được cải tiến

từ MobileNet V1, mạng đã cải tiến về mặt tốc độ và accuracy tốt hơn, nhưng vẫn giữ được sự đơn giản, không yêu cầu bất kì toán tử phức tạp nào để hạn chế sử dụng tài nguyên phần cứng Để giải quyết vấn đề đó, ở mạng MobileNetV2 đã được đề xuất một lớp mới là khối Inverted Residual với Linear Bottleneck

2.2.1 Loại bỏ non-linear

Xem xét một mạng nơ ron học sâu bao gồm n lớp (Li), mỗi lớp có một tensor kích hoạt có kích thước Hi * Wi * Di Những tensor này chúng ta sẽ xem như là nơi chứa Hi * Wi pixel với Di chiều, Với tập hình ảnh thực ở ngõ vào sẽ có tương ứng tập các lớp kích hoạt ở mỗi lớp tạo thành “maniford interest”, có thể được hiểu là một ma trận nhiều chiều phức tạp Đã có giả định rằng các “maniford interest” trong mạng nơ ron có thể được đưa vào một không gian phụ kích thước nhỏ hơn nếu xem xét tất cả các pixel của 1 kênh riêng trong một lớp tích chập, điều này đã được áp dụng thành công ở mạng MobileNet Theo cách đó, bằng cách tiếp cận để

hệ số chiều rộng để giảm kích thước tensor kích hoạt cho đến khi maniford interest

Trang 25

9

trải dài hết toàn bộ Tuy nhiên cách đó đã thất bại vì ở mỗi lớp trong mạng nơ ron học sâu có các phép biến đổi phi tuyến tính, ví dụ như ReLU, hàm ReLU được áp dụng cho một đường thẳng trong không gian 1 chiều tạo ra một tia, trong không gian Rn, nó tạo ra một đường cong tuyến tính với n điểm Có thể dễ dàng hiểu rằng nếu kết quả của lớp biến đối ReLU có ngõ ra khác không, các giá trị được ánh xạ

ở trong ngõ ra đã thu được với phép biến đổi tuyến tính của ngõ vào Điều đó chỉ

ra rằng một phần của không gian ngõ vào tương ứng với tất cả chiều của ngõ ra

được giới hạn bởi biến đổi tuyến tính [2]

Hình 2.5 Biểu diễn của hàm phi tuyến tác động lên sự mất mát của dữ liệu

[2]

Điều này cho thấy khi maniford ngõ vào có kích thước thấp thì ReLU vẫn có khả năng giữ nguyên thông tin nhưng ngược lại khi maniford có kích thước lớn thì các biến đổi phi tuyến sẽ làm mất mát thông tin Do đó, bằng sử dụng các lớp Linear Bottleneck vào các khối tích chập, bằng chứng trên thực nghiệm cho rằng việc sử dụng các lớp tuyến tính rất quan trọng vì nó ngăn các lớp phi tuyến tính

làm mất mát dữ liệu

2.2.2 Khối Inverted Residual với Linear Bottleneck

Với kiến trúc mạng MobileNetV2 sử dụng Inverted Residual vì cấu trúc này tiết kiệm bộ nhớ hơn Điểm khác biệt có thể dễ dàng nhận thấy là Residual này có

số lượng kênh ở input và output của một block sẽ có số lượng kênh nhiều hơn khi

so với lớp trung gian, điều này trái ngược hoàn toàn với khối Residual truyền thống Đối với layer trung gian nguyên nhân do có nhiều lớp hơn là để thực hiện chức năng biến đổi phi tuyến để tạo ra nhiều phép biến đổi hơn Tại đây, các layer trung gian này sử dụng phương pháp chập tách biệt theo chiều sâu để (DSC) mục đích để giảm số lượng tham số sử dụng trong kiến trúc này Các layer input và input không cần thực hiện việc biến đổi phi tuyến, vì sẽ có một kết nối tắt giữa các

Trang 26

10

bottleneck input và output mà không cần thực hiện trên các layer trung gian Các kết nối sẽ được điều chỉnh sao cho số lượng kênh ở input và output bị thu hẹp lại, chính vì vậy mới được gọi là bottleneck layers [2]

Hình 2.6 So sánh sự khác nhau giữa khối Residual Block và Inverted

Residual Block [2]

Đối với mạng MobileNetV2 thì sẽ sử dụng theo khối bên phải, với đặc điểm khá dễ để nhận ra là kích thước ngõ vào và ngõ ra nhỏ, còn kích thước lớp trung gian sẽ to ra

2.2.3 Kiến trúc mạng MobileNetV2

Hình 2.7 Bảng mô tả kiến trúc của mạng Mobile Net V2 và khối

Inverted Residual Block [2]

Theo như bảng ở trên thì MobileNetV2 là một kiến trúc mạng nơ ron tích chập dựa trên cấu trúc inverted residual, là nơi các kết nối residual nằm giữa các lớp bottleneck Lớp trung gian sử dụng tích chập theo chiều sâu để lọc các feature map không tuyến tính Kiến trúc mạng MobileNetV2 bao gồm 1 lớp chập truyền thống với 32 bộ lọc, tiếp theo là 19 lớp residual bottleneck

Trang 27

11

Cấu trúc một khối bottleneck residual gồm ngõ vào có kích thước h * w, độ sâu d’, hệ số mở rộng t và kích thước kernel k và độ sâu d’’ ở ngõ ra Tổng độ phức tạp của một khối bottleneck residual là h × w × d’ × t × (d’+ k2 + d’’) So sánh với lớp DSC ở mạng MobileNet thì khối bottleneck nhiều hơn một lớp tích chập theo điểm vì bản chất của mạng cần thu hẹp kích thước ngõ vào và ngõ ra

Ở bên trong các bottleneck, ta sử dụng ReLU6 là một hàm phi tuyến vì tính

ưu việt của nó khi tính toán trên số có precision thấp Ở lớp tích chập theo chiều sâu, ta sử dụng bộ lọc có kích thước 3x3 đồng thời vẫn sử dụng droppout và batch normalization Để tạo bottleneck sử dụng tích chập với kernnel 1x1, số kênh của output được mở rộng để tạo thành layer trung gian, sau đó tích chập theo chiều sâu với kernel 3x3 để rút trích đặc trưng, kích thước của ngõ ra có chiều sâu bằng với lớp chập cuối, và cuối là tích chập với kernel 1x1 để giảm số kênh xuống tạo thành output cho khối residual

Ngoại trừ lớp đầu tiên, kiến trúc mạng sử dụng hằng số mở rộng cho các lớp

để ở rộng thành các layer trung gian Trong quá trình nghiên cứu, nhận thấy rằng

hệ số mở rộng khoảng từ 5 đến 10 có hiệu suất gần giống nhau, tuy thuộc vào kích thước mạng, với mạng nhỏ thích hợp với hệ số mở rộng nhỏ và mạng lớn thích hợp với hệ số mở rộng lớn

Trang 28

12

CHƯƠNG 3

THIẾT KẾ HỆ THỐNG MỞ CỬA TỰ ĐỘNG THÔNG QUA NHẬN DIỆN CÓ ĐEO KHẨU TRANG VÀ NHIỆT ĐỘ CƠ THỂ THẤP

3.1 THIẾT KẾ PHẦN CỨNG

3.1.1 Sơ đồ khối hệ thống

Hệ thống nhận diện khẩu trang và nhiệt độ này phục vụ tại những vị trí có nhiều người qua lại thường xuyên, do đó hệ thống cần đạt được một số yêu cầu kỹ thuật Hệ thống cần có điện năng tiêu thụ nhỏ và có thể hoạt động liên tục trong khoảng thời gian dài Sơ đồ khối của hệ thống được mô tả trong hình dưới đây:

Hình 3.1 Sơ đồ khối hệ thống nhận diện và điều khiển đóng mở cửa

Hệ thống sử dụng hệ thống nhúng Raspberry Pi 4 làm bộ xử lý trung tâm, và

vi điều khiển STM32 để điều khiển và xử lý các cảm biến Bộ xử lý trung tâm phải đảm bảo có khả năng nhận dạng khuôn có hay không đeo khẩu trang thông qua các video, sau đó gửi tín hiệu đến STM32 qua chuẩn UART Đối với vi điều khiển STM32, yêu cầu phải nhận được tín hiệu được truyền từ Raspberry Pi 4, từ tín hiệu

đó kết hợp với giá trị trả về từ cảm biến nhiệt độ để quyết định sẽ đóng hay mở cửa Với việc nhận dạng khuôn mặt cần sử dụng các hệ thống có sức mạnh lớn nên nhóm quyết định sử dụng Raspberry Pi 4 để làm bộ xử lý chính Kèm theo đó, nhóm tách riêng ra sử dụng thêm vi điều khiển STM32 để điều khiển các cảm biến

Trang 29

13

và module nhằm đảm bảo tính đảm bảo về nguồn Đối với hệ thống chính sử dụng

hệ thống sử dụng Raspberry Pi 4 với bộ xử lý ARM 64 bit Cortex-A72, 4 nhân với tốc độ 1.5GHz cho phép xử lý với tốc độ cao Hệ thống sử dụng bộ nhớ 4GB cho phép chạy các ứng dụng xứ lý và nhận dạng giọng nói nhanh và hiệu quả Board

có tích hợp mạch kết nối mạng không dây (Wifi) và bluetooth 5.0 theo tiêu chuẩn 802.11b/g/n/ac dual band, 2.4GHz và 5GHz wifi Bộ xử lý ARM Cortex-A72 có tích hợp bộ xử lý đồ họa (GPU) đồng thời ngõ ra có bốn cổng kết nối USB để giao tiếp với camera bên ngoài và truyền tham số qua cho STM32 Còn với hệ thống STM32, em sử dụng vi điều khiển STM32F051R8T6 với bộ xử lý chính là ARM Cortex M0 với tần số tối đa là 48MHz, bộ nhớ ROM là 64kB và bộ nhớ RAM là 8kB, số lượng I/O là 55 pins

3.1.2 Khối nhận tín hiệu

3.1.2.1 Camera

Ở đây, nhóm sử dụng camera có cổng USB để truyền tín hiệu hình ảnh về cho Raspberry xử lý

Hình 3.2 Hình minh họa camera sử dụng trong đề tài

Lí do nhóm chọn camera này do thứ nhất là camera đã được hoàn thiện phần

vỏ nên việc hư hỏng trong khi sử dụng khá thấp Hai là thiết bị giao tiếp qua cổng USB nên việc truyền nhận dữ liệu diễn ra khá dễ dàng Ba là camera thu hình ảnh

Trang 30

GY-Hình 3.3 Sơ đồ kết nối của cảm biến nhiệt độ MLX90614

Mô hình kết nối giữa GY-MLX90614-DCI và STM32 sẽ kết nối như sau:

• Chân SCL của cảm biến kết nối với PB6 của STM32

• Chân SDA của cảm biến kết nối với PB7 của STM32

• Chân VIN sẽ được cấp nguồn bởi chân 5V của STM32 để cảm biến hoạt đông

• Chân GND sẽ kết nối với GND của STM32

Trang 31

15

3.1.3 Khối đóng mở cửa

3.1.3.1 Điều khiển cửa

Ở đây để mô phỏng được quá trình đóng mở cửa tự động thì nhóm sử dụng servo để mô phỏng hoạt động đóng mở cửa, cụ thể là servo SG90 Servo sử dụng nguồn cấp là 5V từ STM32, và nhận tín hiệu xung PWM từ STM32 để điều khiển xoay cửa

Hình 3.4 Sơ đồ kết nối của servo SG90

Dưới đây là kết nối giữa STM32 và Servo:

• Chân VDD sẽ được cấp nguồn bởi chân 5V của STM32

• Chân GND kết nối với chân GND của STM32

• Chân Signal sẽ nhận tín hiệu PWM của STM32 do chân PA5 cung cấp

3.1.3.2 Nhận diện người ra vào

Ở đây để nhận biết khi nào người ra vào chưa, nhóm sẽ sử dụng thêm cảm biến khoảng cách hồng ngoại để xét thêm điều kiện để đóng mở cửa

Ngày đăng: 10/10/2023, 15:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[7] Waveshare Electronics, 7inch HDMI LCD User Manual Sách, tạp chí
Tiêu đề: 7inch HDMI LCD User Manual
Tác giả: Waveshare Electronics
[2] Mark Sandler, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, Liang-Chieh Chen, Google Inc., MobileNetV2: Inverted Residuals and Linear Bottlenecks, arXiv:1801.04381, Jan 2018 Khác
[3] Trương Ngọc Sơn, Trí tuệ nhân tạo cơ sở và ứng dụng, Nhà xuất bản Đại học Quốc gia TP.Hồ Chí Minh, 2020 Khác
[4] Melexix Engineering, MLX90614 family Datasheet Khác
[5] Agamem Microelectronics Inc., Servo Motor Controller Datasheet Khác
[6] FTDI Chip, FT232R USB UART IC Datasheet Khác
[8] UMWR, 3A Step-Down Voltage Regulator Datasheet Khác

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w