Đồ án tốt nghiệp - Tài liệu dung tham khảo môn Công nghệ phần mềm | Đại học Bách Khoa, Đại học Đà Nẵng

Đồ án tốt nghiệp - Tài liệu dung tham khảo môn Công nghệ phần mềm | Đại học Bách Khoa, Đại học Đà Nẵng giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng, ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA …………………………………………
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP
1. Thông tin chung:
1. Họ và tên sinh viên: ………………………………………………………………….
2. Lớp: …………………………… Số thẻ SV: ..………………………………………
3. Tên đề tài: …………………………………………………………………………....
4. Người hướng dẫn: ………………………….………… Học hàm/ học vị: ………….
II. Nhận xét, đánh giá đồ án tốt nghiệp:
1. Về tính cấp thiết, tính mới, khả năng ứng dụng của đề tài: (điểm tối đa là 2đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
2. Về kết quả giải quyết các nội dung nhiệm vụ yêu cầu của đồ án: (điểm tối đa là 4đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
3. Về hình thức, cấu trúc, bố cục của đồ án tốt nghiệp: (điểm tối đa là 2đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
4. Đề tài giá trị khoa học/ bài báo/ giải quyết vấn đề đặt ra của doanh nghiệp hoặc
nhà trường: (điểm tối đa là 1đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
5. Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa:
………………………………………………………………………………………..
………………………………………………………………………………………..
III. Tinh thần, thái độ làm việc của sinh viên: (điểm tối đa 1đ)
………………………………………………………………………………………..
IV. Đánh giá:
1. Điểm đánh giá: ……../10 (lấy đến 1 số lẻ thập phân)
2. Đề nghị: Được bảo vệ đồ án Bổ sung để bảo vệ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201
Người hướng dẫn
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA …………………………………………
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHẬN XÉT PHẢN BIỆN ĐỒ ÁN TỐT NGHIỆP
Thông tin chung:
Họ và tên sinh viên: ……….………………………………………………………….
Lớp: …………………….……… Số thẻ SV: ..………………………………………
Tên đề tài: …………………………………………….……………………………....
Người phản biện: ..………………………….………… Học hàm/ học vị: ………….
Nhận xét, đánh giá đồ án tốt nghiệp:
TT Các tiêu chí đánh giá
Điểm
tối
đa
Điểm
đánh
giá
1
Sinh viên phương pháp nghiên cứu phù hợp, giải
quyết đủ nhiệm vụ đồ án được giao
80
1a
Tính mới (nội dung chính của ĐATN những phần mới
so với các ĐATN trước đây).
Đề tài giá trị khoa học, công nghệ; thể ứng dụng
thực tiễn.
15
1b
Kỹ năng giải quyết vấn đề; hiểu, vận dụng được kiến
thức bản, sở, chuyên ngành trong vấn đề nghiên
cứu.
Chất lượng nội dung ĐATN (thuyết minh, bản vẽ,
chương trình, mô hình,…).
50
1c
kỹ năng vận dụng thành thạo các phần mềm ứng
dụng trong vấn đề nghiên cứu;
kỹ năng đọc, hiểu tài liệu bằng tiếng nước ngoài ứng
dụng trong vấn đề nghiên cứu;
Có kỹ năng làm việc nhóm;
15
2 Kỹ năng viết: 20
2a Bố cục hợp lý, lập luận rõ ràng, chặt chẽ, lời văn súc tích 15
2b
Thuyết minh đồ án không lỗi chính tả, in ấn, định
dạng
5
3 Tổng điểm đánh giá theo thang 100:
Quy về thang 10 (lấy đến 1 số lẻ)
Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa: ………………………………………..
………………………………………………………………………………………...
Câu hỏi đề nghị sinh viên trả lời trong buổi bảo vệ: …………………………………
………………………………………………………………………………………...
………………………………………………………………………………………...
Đề nghị: Được bảo vệ đồ án Bổ sung để bảo vệ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201…
Người phản biện
TÓM TẮT
Tên đề tài: Hệ thống cảnh báo tài xế lái xe thiếu an toàn
Sinh viên thực hiện:
Đỗ Thành Đạt
Số thẻ SV: 106180071 Lớp: 18DT2
Sinh viên thực hiện:
Trần Hửu Quân
Số thẻ SV: 106180168 Lớp: 18DT3
Tai nạn giao thông đường bộ một trong những vấn đề nhức nhối đáng quan tâm hiện
nay. Tình trạng mất tập trung, thiếu an toàn khi tham gia giao thông một trong những
nguyên nhân chính gây ra những vụ tai nạn nghiêm trọng, ảnh hưởng nghiêm trọng đến
sức khỏe của người khác đến chính bản thân mình. một sản phẩm để cảnh báo khi
tài xế lái xe thiếu an toàn thực sự cần thiết. vậy, chúng tôi quyết định nghiên cứu
cho ra đời một sản phẩm nhằm giúp giải quyết vấn đề trên Hệ thống cảnh báo tài xế lái
xe thiếu an toàn. Đề tài này tập trung vào phát triển hình trí tuệ nhân tạo để phát hiện
những hành động thiếu an toàn của tài xế khi tham gia giao thông như uống nước, dùng
điện thoại, không đeo dây an toàn ngủ gật. Chúng tôi sử dụng bài toán Phát hiện đối
tượng để phát hiện ra các vật dụng như điện thoại, chai nước, dây an toàn phát hiện
khuôn mặt, từ khuôn mặt nhận diện được mắt để phát hiện khi tài xế ngủ gật. hình
được triển khai trên Máy tính Raspberry Pi4 nhỏ gọn, giá thành rẻ mang lại hiệu suất
khá tốt. Chúng tôi hi vọng đề tài này sẽ giúp ích cho các tài xế ô tô, góp phần giảm số các
vụ tai nạn thương tâm đáng tiếc xảy ra.
Báo cáo này gồm 4 chương:
- Chương 1: Tổng quan đề tài: Hệ thống cảnh báo tài xế lái xe thiếu an toàn.
- Chương 2: Cơ sở lý thuyết.
- Chương 3: Xây dựng mô hình cho Hệ thống cảnh báo tài xế lái xe thiếu an toàn.
- Chương 4: Thực nghiệm và kết quả.
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA …………………………………………
CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
TT Họ tên sinh viên Số thẻ SV Lớp Ngành
1 Đỗ Thành Đạt 106180071 18DT2 Kỹ thuật máy tính
2 Trần Hửu Quân 106180168 18DT3 Kỹ thuật máy tính
Tên đề tài đồ án:
Hệ thống cảnh báo tài xế lái xe thiếu an toàn
Đề tài thuộc diện: Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực hiện
Các số liệu và dữ liệu ban đầu:
Sử dụng dữ liệu tài xế lái xe ô tô ngoài thự tiễn bằng cách tự thu thập.
Nội dung các phần thuyết minh và tính toán:
Phần chung:
TT Họ tên sinh viên Nội dung
1 Đỗ Thành Đạt
-Tìm hiểu sở thuyết, các phương pháp hiện
- Tìm hiểu về hệ thống nhận dạng với SSD-
MobileNet
- Tìm hiểu phần cứng
- Đề ra phương pháp thực hiện
- Thực nghiệm và đánh giá kết quả huấn luyện
2 Trần Hửu Quân
Phần riêng:
TT Họ tên sinh viên Nội dung
1 Đỗ Thành Đạt
-Tìm hiểu và xây dựng mô hình
- m hiểu xây dựng module huấn luyện
hình
- Chuyển đổi sang mô hình Onnx
2 Trần Hửu Quân
-Tìm hiểu và xây dựng cơ sở dữ liệu
- Tìm hiểu và xây dựng module đánh giá mô hình
- Triển khai thực hiện trên phần cứng
Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ):
Phần chung:
TT Họ tên sinh viên Nội dung
TT Họ tên sinh viên Nội dung
Phần riêng:
TT Họ tên sinh viên Nội dung
Họ tên người hướng dẫn: Phần/ Nội dung:
TS. Trần Thị Minh Hạnh
- Hướng đề tài
- Bản thuyết minh
- Giám sát quá trình thực hiện đề tài
- Triển khai đề tài, thực nghiệm đánh
giá
Ngày giao nhiệm vụ đồ án: ……../……./201…..
Ngày hoàn thành đồ án: ……../……./201…..
Đà Nẵng, ngày tháng năm 201
Trưởng Bộ môn Người hướng dẫn……………………….
DANH SÁCH CÁC BẢNG, HÌNH VẼ
Hình 1.1 Lịch sử phát triển Machine Learning 18
Hình 1.2 Quá trình thực hiện 19
Hình 1.3. Quy trình xây dựng mô hình 20
Hình 1.4 Hướng triển khai đề tài với phần cứng 21
Hình 2.1 Cấu trúc mạng CNN 23
Hình 2.2 Sơ đồ khối phân lớp mô hình CNN 23
Hình 2.3 Mô tả tính chập 1 chiều 24
Hình 2.3 Mô tả tính chập 1 chiều 24
Hình 2.5 Mô tả tích chập 3 chiều 24
Hình 2.6 Kết quả khi sử dụng bộ lọc 3x3 25
Hình 2.7 Hàm kích hoạt ReLU 26
Hình 2.8 Các phương pháp lấy mẫu ảnh 27
Hình 2.9 Mạng ron thông thường (trái) mạng Mạng ron khi áp dụng Dropout
(phải) 28
Hình 2.10 Thuật toán Gradient Descent 29
Hình 2.11 Overfitting, Optimum và Underfitting 30
Hình 2.12 Thuật toán gradient descent nhằm tối ưu hóa loss function cho đến khi đạt
được điểm minimum 32
Hình 3.1 Dữ liệu từ máy ảnh điện thoại 34
Hình 3.2 Dữ liệu các khuôn mặt người nổi tiếng 35
Hình 3.2 Dữ liệu các khuôn mặt người nổi tiếng 36
Hình 3.4 Sơ đồ các mối liên hệ giữa các tác vụ trong computer vision 38
Hình 3.5 Sơ đồ pipeline xử lý trong mô hình mạng R-CNN 39
Hình 3.6 Kiến trúc single model Fast R-CNN 40
Hình 3.7 Kiến trúc mô hình Faster R-CNN 41
Hình 3.8 Minh họa về SSD 42
Hình 3.9 Kiến trúc SSD 43
Hình 3.10 Kiến trúc của multi-scale convolution prediction 43
Hình 3.11 Tính IoU 46
Hình 3.13 Fixed Priors 47
Hình 3.14 Các lớp trong mạng MobileNet 48
Hình 3.15 Convolution truyền thống (Trái), Depthwise separable convolution với BN
ReLU (Phải) 49
Hình 3.16 Kiến trúc MobileNet 49
Hình 3.17 Minh hoạ về dilation convolution với rate = 2 50
Hình 3.18 Sự khác nhau MobileNetV2 và V1 51
Hình 3.18 Sự khác nhau MobileNetV2 và V1 52
Hình 3.20 Biến đổi tích chập tách biệt chiều sâu để giảm thiểu số lượng tham số của
hình 53
Hình 3.21 Linear Bottlenecks 53
Hình 3.21 Linear Bottlenecks 54
Hình 3.21 Linear Bottlenecks 55
Hình 3.24 So sánh MobileNetv1 và MobileNetv2 khi kết hợp với SSDLite 55
Hình 3.25 So sánh MobileNetv1 và MobileNetv2 khi kết hợp với SSDLite 55
Hình 3.26 So sánh độ chính xác số đơn vị tính toán của các hình phân loại thông
dụng 56
Hình 3.26 So sánh độ chính xác số đơn vị tính toán của các hình phân loại thông
dụng 57
Hình 3.29 Công thức tính IoU 58
Hình 3.30 Đồ thị của hàm smooth L1 với trường hợp = 1 59𝛽
Hình 3.31 Đồ thị của hàm cross-entropy 60
Hình 3.32 68 điểm landmark 62
Hình 3.33 Tỷ lệ mắt nhắm/ mở 63
Hình 3.34 Bounding box thu được sau khi áp dụng thuật toán Non-Maximum
Suppression
64
Hình 3.35 Tổng quan Raspberry 67
Hình 3.36 Camera Pi 68
Hình 3.37 Sơ đồ khối Camera Raspberry Pi 69
DANH SÁCH CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
THUẬT NGỮ:
Thuật ngữ Diễn giải
Inference Dự đoán
Convolution layer Lớp tích chập
Activation layer Lớp kích hoạt
Fully connected layer Lớp kết nối đầy đủ
Feature map Ánh xạ đặc trưng
Receptive field Vùng tiếp nhận
Loss function Hàm mất mát
Learning rate Tốc độ học
Confidence score Độ tin cậy
Bounding box Khung chứa
Landmark Điểm mốc
Ground truth Nhãn gốc
Default box Khung chứa mặc định
Transfer learning Học truyền tải
Feature extractor Bộ trích xuất đặc trưng
Fine-tuning Tinh chỉnh
Regular convolution Tích chập thông thường
Depthwise separable convolution Tích chập tách biệt chiều sâu
Depthwise convolution Tích chập chiều sâu
Pointwise convolution Tích chập điểm
Computational cost Chi phí tính toán
Multi-task learning Học đa nhiệm
Back propagation Lan truyền ngược
Post-processing Xử lý hậu kỳ
CHỮ VIẾT TẮT:
Chữ viết tắt Tên đầy đủ Diễn giải
CNN
Convolutional Neural
Network
Mạng nơron tích chập
ReLU Rectified Linear Unit Đơn vị tuyến tính chỉnh lưu
SSD Single Shot Multibox Detector Bộ phát hiện nhiều box một lượt
SGD Stochastic Gradient Descent Giảm gradient ngẫu nhiên
IoU
Intersection of Union
Tỉ số giữa phần giao nhau hợp
nhau của 2 box
MRI Magnetic Resonance Imaging Chụp cộng hưởng từ
FPN Feature Pyramid Network Mạng kim tự tháp tính năng
AUC Area Under the Curve Diện tích dưới đường cong
PR-curve Precision-Recall curve Đường cong Precision-Recall
AccTP Accumulate True Positive Dương tính thật tích lũy
AccFP Accumulate False Positive Dương tính giả tích lũy
mAP Mean Average Precision Trung bình các Average Precision
NME Normalized Mean Error Sai số trung bình chuẩn hóa
NMS Non-Maximum Suppression Triệt phi cực đại
RFB Receptive Field Block Khối trường tiếp nhận
9
LỜI CẢM ƠN
Đầu tiên chúng tôi xin chân thành cảm ơn các thầy Khoa Điện tử - Viễn thông
trường Đại Học Bách Khoa Đại Học Đà Nẵng đã tận tình chỉ dạy qua bao năm để
chúng tôi có thể học tập và tích lũy kiến thức cho đến tận ngày hôm nay.
Để hoàn thành được dự án này, chúng tôi xin chân thành cảm ơn Trần Thị Minh
Hạnh đã không ngại khó khăn vất vả hướng dẫn thêm nhiều kiến thức chuyên sâu
cũng như kiến thức thực tế trong suốt quá trình thực hiện đồ án này.
Do còn nhiều hạn chế về kiến thức chuyên môn cũng như kiến thức thực tế nên đề tài
của chúng tôi không tránh khỏi sự thiếu sót. Mong các quý thầy bạn đọc đóng
góp ý để đề tài này được hoàn thiện hơn, tốt hơn.
Chúng tôi xin chân thành cảm ơn!
Đà Nẵng, ngày . . . . tháng . . . . năm 2022
Đại diện sinh viên thực hiện
10
CAM ĐOAN
Chúng tôi xin cam đoan đồ án “Phát hiện các nốt cảnh báo ung thư phổi” là công trình
nghiên cứu của chúng tôi. Những phần sử dụng tài liệu tham khảo trong đồ án đã
được nêu rõ trong phần tài liệu tham khảo. Các số liệu, kết quả trình bày trong đồ án
là hoàn toàn trung thực, nếu sai chúng tôi xin chịu hoàn toàn trách nhiệm và chịu mọi
kỷ luật của khoa và nhà trường.
Đại diện sinh viên thực hiện
11
MỤC LỤC
LỜI CẢM ƠN 11
CAM ĐOAN 12
MỞ ĐẦU 14
Chương 1: TỔNG QUAN HỆ THỐNG: PHÁT HIỆN VÀ CẢNH BÁO
TÀI XẾ MẤT TẬP TRUNG 15
1.1.Giới thiệu chương: 15
1.2.Đặt vấn đề: 15
1.3.Giới thiệu tổng quát 15
1.4.Mục tiêu 16
1.5.Phương pháp nghiên cứu: 17
1.6. Hướng tiếp cận đề tài: 17
1.7. Hướng triển khai với phần cứng: 18
1.8. Kết luận chương: 18
Chương 2: CƠ SỞ LÝ THUYẾT 18
2.1. Giới thiệu chương 18
2.2. Giới thiệu mạng nơ-ron tích chập (CNN) 18
2.3. Cấu trúc mạng nơ-ron tích chập 19
2.3.1 Lớp tích chập 20
2.3.2 Lớp kích hoạt phi tuyến 21
2.3.3 Lớp lấy mẫu 22
2.3.4. Lớp kết nối đầy đủ 22
2.3.5. Dropout 23
2.3.6. Softmax 23
2.3.7. Cross Entropy 24
2.3.8. Thuật toán tối ưu 24
2.3.9. Epoch - Batch size và Iterations 25
2.3.10. Kỹ thuật tăng cường dữ liệu 26
2.4 Giới thiệu mô hình SSD-Mobilenet 27
2.4.1 Phát hiện đối tượng: 27
2.5 Kết luận chương 2 31
12
Chương 3: XÂY DỰNG MÔ HÌNH CHO HỆ THỐNG CẢNH BÁO TÀI XẾ LÁI XE
THIẾU AN TOÀN 32
3.1 Giới thiệu chương 3: 32
3.2 Xây dựng cơ sở dữ liệu: 32
3.2.1. Thu thập dữ liệu: 32
3.2.2 Gán nhãn dữ liệu: 32
3.2.3 Tăng cường dữ liệu: 33
3.3 Xây dựng mô hình: 33
3.3.1 Mô hình SSD 33
3.3.2 MobileNet(V1). 39
3.3.3. MobileNetV2: 42
3.3.4 So sánh với MobileNetV1 46
3.4. Huấn luyện mô hình. 48
3.4.1. Khởi tạo các default box. 48
3.4.2. So khớp default box với ground truth box và ground truth landmark: 48
3.5 Áp dụng transfer learning: 49
3.6 Áp dụng Dlib vào phát hiện mắt người để cảnh báo buồn ngủ. 49
3.6.1. Thư viện Dlib 49
3.6.2. Tìm hiểu về bộ phát hiện dấu mốc trên khuôn mặt của dlib 49.
3.7 Post-processing kết quả dự đoán 51
3.7.1 Xử lý dự đoán 51
3.7.2 Thuật toán Non-Maximum Suppression 51
3.8 Tiêu chí đánh giá 52
3.8.1 Mean Average Precision 52
3.9. Tìm hiểu Raspberry Pi4: 54
3.10. Tìm hiểu Camera Pi. 55
3.11 Kết luận chương. 56
Chương 4: THỰC NGHIỆM VÀ KẾT QUẢ 57
4.1 Chuẩn bị tập cơ sở dữ liệu 57
4.1.1 Thu thập dữ liệu thực tế 57
4.1.2 Gắn nhãn dữ liệu 58
13
4.1.3 Chia dữ liệu để train và test 59
4.2 Thiết lập các thông số mô hình huấn luyện và đánh giá với bộ dữ liệu ban
đầu 59
4.3 Kết quả thực nghiệm với cơ sở dữ liệu ban đầu. 60
4.4 Tăng cường dữ liệu 62
4.5 Thực hiện với bộ dữ liệu sau khi tăng cường. 62
4.6 Kết quả thực nghiệm với cơ sở dữ liệu sau khi tăng cường. 63
4.7 So sánh chi tiết kết quả đánh giá mô hình trước và sau khi tăng cường dữ
liệu 64
4.8 Chuyển sang mô hình ONNX 65
4.9 Triển khai mô hình trên Raspberry Pi4
65
4.10 Kết luận chương 4: 65
KẾT LUẬN 67
Kết quả đạt được: 67
Đánh giá chung: 67
Hướng phát triển: 67
Tài liệu tham khảo 68
14
| 1/76

Preview text:

ĐẠI HỌC ĐÀ NẴNG
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Độc lập - Tự do - Hạnh phúc
KHOA …………………………………………
NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP 1. Thông tin chung:
1. Họ và tên sinh viên: ………………………………………………………………….
2. Lớp: …………………………… Số thẻ SV: ..………………………………………
3. Tên đề tài: …………………………………………………………………………....
4. Người hướng dẫn: ………………………….………… Học hàm/ học vị: ………….
II. Nhận xét, đánh giá đồ án tốt nghiệp:
1. Về tính cấp thiết, tính mới, khả năng ứng dụng của đề tài: (điểm tối đa là 2đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
2. Về kết quả giải quyết các nội dung nhiệm vụ yêu cầu của đồ án: (điểm tối đa là 4đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
3. Về hình thức, cấu trúc, bố cục của đồ án tốt nghiệp: (điểm tối đa là 2đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
4. Đề tài có giá trị khoa học/ có bài báo/ giải quyết vấn đề đặt ra của doanh nghiệp hoặc
nhà trường: (điểm tối đa là 1đ)
………………………………………………………………………………………..
………………………………………………………………………………………..
5. Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa:
………………………………………………………………………………………..
………………………………………………………………………………………..
III. Tinh thần, thái độ làm việc của sinh viên: (điểm tối đa 1đ)
……………………………………………………………………………………….. IV. Đánh giá: 1. Điểm đánh giá:
……../10 (lấy đến 1 số lẻ thập phân)
2. Đề nghị: ☐ Được bảo vệ đồ án ☐ Bổ sung để bảo vệ ☐ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201
Người hướng dẫn ĐẠI HỌC ĐÀ NẴNG
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Độc lập - Tự do - Hạnh phúc
KHOA …………………………………………
NHẬN XÉT PHẢN BIỆN ĐỒ ÁN TỐT NGHIỆP Thông tin chung:
Họ và tên sinh viên: ……….………………………………………………………….
Lớp: …………………….……… Số thẻ SV: ..………………………………………
Tên đề tài: …………………………………………….……………………………....
Người phản biện: ..………………………….………… Học hàm/ học vị: ………….
Nhận xét, đánh giá đồ án tốt nghiệp: Điểm Điểm
TT Các tiêu chí đánh giá tối đánh đa giá
Sinh viên có phương pháp nghiên cứu phù hợp, giải 1 80
quyết đủ nhiệm vụ đồ án được giao
Tính mới (nội dung chính của ĐATN có những phần mới
so với các ĐATN trước đây). 1a 15
Đề tài có giá trị khoa học, công nghệ; có thể ứng dụng thực tiễn.
Kỹ năng giải quyết vấn đề; hiểu, vận dụng được kiến
thức cơ bản, cơ sở, chuyên ngành trong vấn đề nghiên 1b cứu. 50
Chất lượng nội dung ĐATN (thuyết minh, bản vẽ,
chương trình, mô hình,…).
Có kỹ năng vận dụng thành thạo các phần mềm ứng
dụng trong vấn đề nghiên cứu; 1c
Có kỹ năng đọc, hiểu tài liệu bằng tiếng nước ngoài ứng 15
dụng trong vấn đề nghiên cứu;
Có kỹ năng làm việc nhóm; 2 Kỹ năng viết: 20
2a Bố cục hợp lý, lập luận rõ ràng, chặt chẽ, lời văn súc tích 15
Thuyết minh đồ án không có lỗi chính tả, in ấn, định 2b 5 dạng 3
Tổng điểm đánh giá theo thang 100:
Quy về thang 10 (lấy đến 1 số lẻ)
Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa: ………………………………………..
………………………………………………………………………………………...
Câu hỏi đề nghị sinh viên trả lời trong buổi bảo vệ: …………………………………
………………………………………………………………………………………...
………………………………………………………………………………………...
Đề nghị: ☐ Được bảo vệ đồ án ☐ Bổ sung để bảo vệ ☐ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201…
Người phản biện TÓM TẮT
Tên đề tài: Hệ thống cảnh báo tài xế lái xe thiếu an toàn Sinh viên thực hiện: Đỗ Thành Đạt
Số thẻ SV: 106180071 Lớp: 18DT2 Sinh viên thực hiện: Trần Hửu Quân
Số thẻ SV: 106180168 Lớp: 18DT3
Tai nạn giao thông đường bộ là một trong những vấn đề nhức nhối đáng quan tâm hiện
nay. Tình trạng mất tập trung, thiếu an toàn khi tham gia giao thông là một trong những
nguyên nhân chính gây ra những vụ tai nạn nghiêm trọng, ảnh hưởng nghiêm trọng đến
sức khỏe của người khác và đến chính bản thân mình. Và một sản phẩm để cảnh báo khi
tài xế lái xe thiếu an toàn là thực sự cần thiết. Vì vậy, chúng tôi quyết định nghiên cứu và
cho ra đời một sản phẩm nhằm giúp giải quyết vấn đề trên – Hệ thống cảnh báo tài xế lái
xe thiếu an toàn. Đề tài này tập trung vào phát triển mô hình trí tuệ nhân tạo để phát hiện
những hành động thiếu an toàn của tài xế khi tham gia giao thông như uống nước, dùng
điện thoại, không đeo dây an toàn và ngủ gật. Chúng tôi sử dụng bài toán Phát hiện đối
tượng để phát hiện ra các vật dụng như điện thoại, chai nước, dây an toàn và phát hiện
khuôn mặt, từ khuôn mặt nhận diện được mắt để phát hiện khi tài xế ngủ gật. Mô hình
được triển khai trên Máy tính Raspberry Pi4 nhỏ gọn, giá thành rẻ mà mang lại hiệu suất
khá tốt. Chúng tôi hi vọng đề tài này sẽ giúp ích cho các tài xế ô tô, góp phần giảm số các
vụ tai nạn thương tâm đáng tiếc xảy ra.
Báo cáo này gồm 4 chương: -
Chương 1: Tổng quan đề tài: Hệ thống cảnh báo tài xế lái xe thiếu an toàn. -
Chương 2: Cơ sở lý thuyết. -
Chương 3: Xây dựng mô hình cho Hệ thống cảnh báo tài xế lái xe thiếu an toàn. -
Chương 4: Thực nghiệm và kết quả. ĐẠI HỌC ĐÀ NẴNG
CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Độc lập - Tự do - Hạnh phúc
KHOA …………………………………………
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP TT Họ tên sinh viên Số thẻ SV Lớp Ngành 1 Đỗ Thành Đạt 106180071 18DT2 Kỹ thuật máy tính 2 Trần Hửu Quân 106180168 18DT3 Kỹ thuật máy tính Tên đề tài đồ án:
Hệ thống cảnh báo tài xế lái xe thiếu an toàn
Đề tài thuộc diện: Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực hiện
Các số liệu và dữ liệu ban đầu:
Sử dụng dữ liệu tài xế lái xe ô tô ngoài thự tiễn bằng cách tự thu thập.
Nội dung các phần thuyết minh và tính toán: Phần chung: TT Họ tên sinh viên Nội dung 1 Đỗ Thành Đạt
-Tìm hiểu cơ sở lý thuyết, các phương pháp hiện 2 Trần Hửu Quân có
- Tìm hiểu về hệ thống nhận dạng với SSD- MobileNet - Tìm hiểu phần cứng
- Đề ra phương pháp thực hiện
- Thực nghiệm và đánh giá kết quả huấn luyện Phần riêng: TT Họ tên sinh viên Nội dung 1 Đỗ Thành Đạt
-Tìm hiểu và xây dựng mô hình
- Tìm hiểu và xây dựng module huấn luyện mô hình
- Chuyển đổi sang mô hình Onnx 2 Trần Hửu Quân
-Tìm hiểu và xây dựng cơ sở dữ liệu
- Tìm hiểu và xây dựng module đánh giá mô hình
- Triển khai thực hiện trên phần cứng
Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ): Phần chung: TT Họ tên sinh viên Nội dung TT Họ tên sinh viên Nội dung Phần riêng: TT Họ tên sinh viên Nội dung
Họ tên người hướng dẫn: Phần/ Nội dung: TS. Trần Thị Minh Hạnh - Hướng đề tài - Bản thuyết minh
- Giám sát quá trình thực hiện đề tài
- Triển khai đề tài, thực nghiệm đánh giá
Ngày giao nhiệm vụ đồ án:
……../……./201…..
Ngày hoàn thành đồ án:
……../……./201…..
Đà Nẵng, ngày tháng năm 201
Trưởng Bộ môn………………………. Người hướng dẫn
DANH SÁCH CÁC BẢNG, HÌNH VẼ
Hình 1.1 Lịch sử phát triển Machine Learning 18
Hình 1.2 Quá trình thực hiện 19
Hình 1.3. Quy trình xây dựng mô hình 20
Hình 1.4 Hướng triển khai đề tài với phần cứng 21
Hình 2.1 Cấu trúc mạng CNN 23
Hình 2.2 Sơ đồ khối phân lớp mô hình CNN 23
Hình 2.3 Mô tả tính chập 1 chiều 24
Hình 2.3 Mô tả tính chập 1 chiều 24
Hình 2.5 Mô tả tích chập 3 chiều 24
Hình 2.6 Kết quả khi sử dụng bộ lọc 3x3 25
Hình 2.7 Hàm kích hoạt ReLU 26
Hình 2.8 Các phương pháp lấy mẫu ảnh 27
Hình 2.9 Mạng Nơ ron thông thường (trái) và mạng Mạng Nơ ron khi áp dụng Dropout (phải) 28
Hình 2.10 Thuật toán Gradient Descent 29
Hình 2.11 Overfitting, Optimum và Underfitting 30
Hình 2.12 Thuật toán gradient descent nhằm tối ưu hóa loss function cho đến khi đạt được điểm minimum 32
Hình 3.1 Dữ liệu từ máy ảnh điện thoại 34
Hình 3.2 Dữ liệu các khuôn mặt người nổi tiếng 35
Hình 3.2 Dữ liệu các khuôn mặt người nổi tiếng 36
Hình 3.4 Sơ đồ các mối liên hệ giữa các tác vụ trong computer vision 38
Hình 3.5 Sơ đồ pipeline xử lý trong mô hình mạng R-CNN 39
Hình 3.6 Kiến trúc single model Fast R-CNN 40
Hình 3.7 Kiến trúc mô hình Faster R-CNN 41 Hình 3.8 Minh họa về SSD 42 Hình 3.9 Kiến trúc SSD 43
Hình 3.10 Kiến trúc của multi-scale convolution prediction 43 Hình 3.11 Tính IoU 46 Hình 3.13 Fixed Priors 47
Hình 3.14 Các lớp trong mạng MobileNet 48
Hình 3.15 Convolution truyền thống (Trái), Depthwise separable convolution với BN và ReLU (Phải) 49
Hình 3.16 Kiến trúc MobileNet 49
Hình 3.17 Minh hoạ về dilation convolution với rate = 2 50
Hình 3.18 Sự khác nhau MobileNetV2 và V1 51
Hình 3.18 Sự khác nhau MobileNetV2 và V1 52
Hình 3.20 Biến đổi tích chập tách biệt chiều sâu để giảm thiểu số lượng tham số của mô hình 53 Hình 3.21 Linear Bottlenecks 53 Hình 3.21 Linear Bottlenecks 54 Hình 3.21 Linear Bottlenecks 55
Hình 3.24 So sánh MobileNetv1 và MobileNetv2 khi kết hợp với SSDLite 55
Hình 3.25 So sánh MobileNetv1 và MobileNetv2 khi kết hợp với SSDLite 55
Hình 3.26 So sánh độ chính xác và số đơn vị tính toán của các mô hình phân loại thông dụng 56
Hình 3.26 So sánh độ chính xác và số đơn vị tính toán của các mô hình phân loại thông dụng 57
Hình 3.29 Công thức tính IoU 58
Hình 3.30 Đồ thị của hàm smooth L1 với trường hợp 𝛽 = 1 59
Hình 3.31 Đồ thị của hàm cross-entropy 60 Hình 3.32 68 điểm landmark 62
Hình 3.33 Tỷ lệ mắt nhắm/ mở 63
Hình 3.34 Bounding box thu được sau khi áp dụng thuật toán Non-Maximum Suppression 64
Hình 3.35 Tổng quan Raspberry 67 Hình 3.36 Camera Pi 68
Hình 3.37 Sơ đồ khối Camera Raspberry Pi 69
DANH SÁCH CÁC THUẬT NGỮ, CHỮ VIẾT TẮT THUẬT NGỮ: Thuật ngữ Diễn giải Inference Dự đoán Convolution layer Lớp tích chập Activation layer Lớp kích hoạt Fully connected layer Lớp kết nối đầy đủ Feature map Ánh xạ đặc trưng Receptive field Vùng tiếp nhận Loss function Hàm mất mát Learning rate Tốc độ học Confidence score Độ tin cậy Bounding box Khung chứa Landmark Điểm mốc Ground truth Nhãn gốc Default box Khung chứa mặc định Transfer learning Học truyền tải Feature extractor
Bộ trích xuất đặc trưng Fine-tuning Tinh chỉnh Regular convolution Tích chập thông thường
Depthwise separable convolution Tích chập tách biệt chiều sâu Depthwise convolution Tích chập chiều sâu Pointwise convolution Tích chập điểm Computational cost Chi phí tính toán Multi-task learning Học đa nhiệm Back propagation Lan truyền ngược Post-processing Xử lý hậu kỳ CHỮ VIẾT TẮT: Chữ viết tắt Tên đầy đủ Diễn giải Convolutional Neural CNN Network Mạng nơron tích chập ReLU Rectified Linear Unit
Đơn vị tuyến tính chỉnh lưu SSD
Single Shot Multibox Detector Bộ phát hiện nhiều box một lượt SGD Stochastic Gradient Descent Giảm gradient ngẫu nhiên
Tỉ số giữa phần giao nhau và hợp Intersection of Union IoU nhau của 2 box MRI Magnetic Resonance Imaging Chụp cộng hưởng từ FPN Feature Pyramid Network
Mạng kim tự tháp tính năng AUC Area Under the Curve
Diện tích dưới đường cong PR-curve Precision-Recall curve
Đường cong Precision-Recall AccTP Accumulate True Positive
Dương tính thật tích lũy AccFP Accumulate False Positive Dương tính giả tích lũy mAP Mean Average Precision
Trung bình các Average Precision NME Normalized Mean Error
Sai số trung bình chuẩn hóa NMS Non-Maximum Suppression Triệt phi cực đại RFB Receptive Field Block Khối trường tiếp nhận 9 LỜI CẢM ƠN
Đầu tiên chúng tôi xin chân thành cảm ơn các thầy cô Khoa Điện tử - Viễn thông
trường Đại Học Bách Khoa – Đại Học Đà Nẵng đã tận tình chỉ dạy qua bao năm để
chúng tôi có thể học tập và tích lũy kiến thức cho đến tận ngày hôm nay.
Để hoàn thành được dự án này, chúng tôi xin chân thành cảm ơn Cô Trần Thị Minh
Hạnh đã không ngại khó khăn vất vả hướng dẫn thêm nhiều kiến thức chuyên sâu
cũng như kiến thức thực tế trong suốt quá trình thực hiện đồ án này.
Do còn nhiều hạn chế về kiến thức chuyên môn cũng như kiến thức thực tế nên đề tài
của chúng tôi không tránh khỏi sự thiếu sót. Mong các quý thầy cô và bạn đọc đóng
góp ý để đề tài này được hoàn thiện hơn, tốt hơn.
Chúng tôi xin chân thành cảm ơn!
Đà Nẵng, ngày . . . . tháng . . . . năm 2022
Đại diện sinh viên thực hiện 10 CAM ĐOAN
Chúng tôi xin cam đoan đồ án “Phát hiện các nốt cảnh báo ung thư phổi” là công trình
nghiên cứu của chúng tôi. Những phần sử dụng tài liệu tham khảo trong đồ án đã
được nêu rõ trong phần tài liệu tham khảo. Các số liệu, kết quả trình bày trong đồ án
là hoàn toàn trung thực, nếu sai chúng tôi xin chịu hoàn toàn trách nhiệm và chịu mọi
kỷ luật của khoa và nhà trường.
Đại diện sinh viên thực hiện 11 MỤC LỤC LỜI CẢM ƠN 11 CAM ĐOAN 12 MỞ ĐẦU 14
Chương 1: TỔNG QUAN HỆ THỐNG: PHÁT HIỆN VÀ CẢNH BÁO TÀI XẾ MẤT TẬP TRUNG 15
1.1.Giới thiệu chương: 15 1.2.Đặt vấn đề: 15
1.3.Giới thiệu tổng quát 15 1.4.Mục tiêu 16
1.5.Phương pháp nghiên cứu: 17
1.6. Hướng tiếp cận đề tài: 17
1.7. Hướng triển khai với phần cứng: 18 1.8. Kết luận chương: 18
Chương 2: CƠ SỞ LÝ THUYẾT 18 2.1. Giới thiệu chương 18
2.2. Giới thiệu mạng nơ-ron tích chập (CNN) 18
2.3. Cấu trúc mạng nơ-ron tích chập 19 2.3.1 Lớp tích chập 20
2.3.2 Lớp kích hoạt phi tuyến 21 2.3.3 Lớp lấy mẫu 22
2.3.4. Lớp kết nối đầy đủ 22 2.3.5. Dropout 23 2.3.6. Softmax 23 2.3.7. Cross Entropy 24
2.3.8. Thuật toán tối ưu 24
2.3.9. Epoch - Batch size và Iterations 25
2.3.10. Kỹ thuật tăng cường dữ liệu 26
2.4 Giới thiệu mô hình SSD-Mobilenet 27
2.4.1 Phát hiện đối tượng: 27
2.5 Kết luận chương 2 31 12
Chương 3: XÂY DỰNG MÔ HÌNH CHO HỆ THỐNG CẢNH BÁO TÀI XẾ LÁI XE THIẾU AN TOÀN 32 3.1 Giới thiệu chương 3: 32
3.2 Xây dựng cơ sở dữ liệu: 32 3.2.1. Thu thập dữ liệu: 32 3.2.2 Gán nhãn dữ liệu: 32
3.2.3 Tăng cường dữ liệu: 33
3.3 Xây dựng mô hình: 33 3.3.1 Mô hình SSD 33 3.3.2 MobileNet(V1). 39 3.3.3. MobileNetV2: 42
3.3.4 So sánh với MobileNetV1 46 3.4. Huấn luyện mô hình. 48
3.4.1. Khởi tạo các default box. 48
3.4.2. So khớp default box với ground truth box và ground truth landmark: 48
3.5 Áp dụng transfer learning: 49
3.6 Áp dụng Dlib vào phát hiện mắt người để cảnh báo buồn ngủ. 49 3.6.1. Thư viện Dlib 49
3.6.2. Tìm hiểu về bộ phát hiện dấu mốc trên khuôn mặt của dlib. 49
3.7 Post-processing kết quả dự đoán 51 3.7.1 Xử lý dự đoán 51
3.7.2 Thuật toán Non-Maximum Suppression 51 3.8 Tiêu chí đánh giá 52 3.8.1 Mean Average Precision 52
3.9. Tìm hiểu Raspberry Pi4: 54 3.10. Tìm hiểu Camera Pi. 55
3.11 Kết luận chương. 56
Chương 4: THỰC NGHIỆM VÀ KẾT QUẢ 57
4.1 Chuẩn bị tập cơ sở dữ liệu 57
4.1.1 Thu thập dữ liệu thực tế 57 4.1.2 Gắn nhãn dữ liệu 58 13
4.1.3 Chia dữ liệu để train và test 59
4.2 Thiết lập các thông số mô hình huấn luyện và đánh giá với bộ dữ liệu ban đầu 59
4.3 Kết quả thực nghiệm với cơ sở dữ liệu ban đầu. 60
4.4 Tăng cường dữ liệu 62
4.5 Thực hiện với bộ dữ liệu sau khi tăng cường. 62
4.6 Kết quả thực nghiệm với cơ sở dữ liệu sau khi tăng cường. 63
4.7 So sánh chi tiết kết quả đánh giá mô hình trước và sau khi tăng cường dữ liệu 64
4.8 Chuyển sang mô hình ONNX 65 4.9
Triển khai mô hình trên Raspberry Pi4 65 4.10 Kết luận chương 4: 65 KẾT LUẬN 67 Kết quả đạt được: 67 Đánh giá chung: 67 Hướng phát triển: 67 Tài liệu tham khảo 68 14