1. Trang chủ
  2. » Giáo Dục - Đào Tạo

slide thuyết trình nghiên cứu về mạng nơ ron tích chập và xây dựng ứng dụng nhận diện biển báo giao thông

44 293 0

Đ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 44
Dung lượng 13,51 MB

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

Nội dung

TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TINBÁO CÁO CHUYÊN MÔN ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Ngành: Công nghệ Thông tin Chuyên ngành: Công nghệ phần mềm NGHIÊN CỨU VỀ MẠNG NƠ-RON TÍCH CH

Trang 1

TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO CHUYÊN MÔN

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Ngành: Công nghệ Thông tin Chuyên ngành: Công nghệ phần mềm

NGHIÊN CỨU VỀ MẠNG NƠ-RON TÍCH CHẬP VÀ XÂY DỰNG

ỨNG DỤNG NHẬN DIỆN BIỂN BÁO GIAO THÔNG

Sinh viên thực hiện: Nguyễn Thiên Sơn – 1610A06

Giảng viên hướng dẫn: TS Nguyễn Đức Tuấn

Trang 2

NỘI DUNG BÁO CÁO

1 Giới thiệu đề tài

Trang 3

1 GIỚI THIỆU VỀ ĐỀ TÀI

Trang 4

• Các bài toán với mạng nơ-ron tích chập

• Nhận diện vật thể với thuật toán Single Shot Multibox Detection

• SSD với mạng VGG16

• SSD-Lite với MobileNetV2

Trang 5

SINGLE SHOT MULTIBOX DETECTOR

Hình 2.10 Kiến trúc mạng SSD với backbone là mạng VGG16 [4]

Trang 6

HƯỚNG TIẾP CẬN

• Ý tưởng chính của SSD [4][5] đến từ việc sử dụng các bounding box, bằng việc khởi tạo sẵn các default box tại mỗi vị trí trên feature map, SSD sẽ tính toán và đánh giá thông tin tại mỗi vị trí xem vị trí đó có vật thể hay không, nếu có thì là vật thể nào

• Bằng việc sử dụng các default box trên các feature map khác nhau, các box sẽ ôm trọn một phần hình ảnh với các kích thước khác nhau

Hình 2.11 Hướng tiếp cận của SSD

Trang 7

HUẤN LUYỆN MẠNG

• Trong quá trình huấn luyện, ta tiến hành tìm các

default box trên các feature maps phù hợp với groundtruth (dữ liệu đã gán nhãn) bằng cách tìm các box có jaccard overlap cao Công thức tính jaccard overlap dựa trên tỉ lệ giữa diện tích vùng trùng nhau giữa 2 tập và diện tích hợp lại của cả 2 tập

• Đặt ra 1 ngưỡng, nếu jaccard overlap lớn hơn ngưỡng

Jaccard Overlap

Trang 8

HUẤN LUYỆN MẠNG

Hàm mất mát

• Hàm mất mát của SSD được xây dựng bằng localization loss để đánh giá việc phát hiện

và confidence loss để đánh giá việc phân lớp đối tượng

• Đặt xp

ij = { 1, 0 } ứng với default box thứ i khớp với groundtruth thứ j thuộc lớp p, ta có hàm Loss sau:

• Trong đó N là số lượng các default boxes matching với ground truth boxes

• c là các confidence score: Độ tin cậy

• l là predicted box: Các khung dự đoán

Trang 9

SINGLE SHOT MULTIBOX DETECTOR VỚI MOBILENET V2

• Cũng là thuật toán nhận diện vật thể SSD, nhưng sử dụng mạng mobilenet làm mạng

cơ sở để trích xuất đặc trưng ảnh Mạng mobilenet giúp ta có thể triển khai các mô hình máy học trên các thiết bị có tài nguyên tính toán hạn chế như Raspberry PI, Jetson Nano hoặc các thiết bị di động

Hình 2.13 Ứng dụng của mạng MobileNet trên thiết bị di động

Trang 10

SINGLE SHOT MULTIBOX DETECTOR VỚI MOBILENET V2

• Sử dụng kiến trúc của ResNet[6] để mạng có thể có rất nhiều layer nhưng không gặp hiện tượng Vanishing Gradient

• MobileNetV2[7] sử dụng tích chập chiều sâu tách biệt để giảm số lượng tham số trong mạng => Giảm số lượng tham số => Kích thước mạng giảm => có thể chạy tốt trên các thiết bị hạn chế về tài nguyên tính toán

Hình 2.15 Khối bình thường

Trang 11

3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

Ứng dụng đầu ra chạy trên mobile, gồm 2 nhóm chức năng chính:

• Tra cứu thông tin biển báo qua hình ảnh

• Nhận diện biển báo theo thời gian thực

Hình 3.1 Sơ đồ phân rã chức năng

Trang 12

PHÂN TÍCH CHỨC NĂNG

Hình 3.2 DFD mức khung cảnh

Trang 13

PHÂN TÍCH CHỨC NĂNG

Hình 3.3 DFD mức đỉnh

Trang 14

PHÂN TÍCH CHỨC NĂNG

Hình 3.4 DFD mức dưới đỉnh tiến trình

“Tra cứu thông tin biển báo” Hình 3.5 DFD mức dưới đỉnh tiến trình “Nhận diện biển báo theo thời gian thực”

Trang 15

PHÂN TÍCH CHỨC NĂNG

06/18/2024 Hình 3.6 DFD mức dưới đỉnh tiến trình “Quản trị 15/55

model nhận diện biển báo”

Trang 16

PHÂN TÍCH CHỨC NĂNG

Hình 3.7 DFD tiến trình “Tiền huấn luyện” Hình 3.8 DFD tiến trình “Huấn luyện model”

Trang 17

PHÂN TÍCH CHỨC NĂNG

06/18/2024 Hình 3.9 DFD tiến trình “Hậu huấn luyện” 17/55

Trang 18

PHÂN TÍCH DỮ LIỆU

STT Khóa

chính

Tên trường Kiểu dữ liệu Diễn giải

1 X Id int Mã biển báo

2 YNghia Nvarchar(Max) Ý nghĩa của biển

Ứng dụng cần lưu trữ các thông tin

về biển báo

Bảng 3.1 Bảng dữ liệu “biển báo”

Trang 19

THIẾT KẾ GIAO DIỆN ỨNG DỤNG

Hình 3.11 Màn hình cài đặt Hình 3.10 Giao diện Menu

Trang 20

THIẾT KẾ GIAO DIỆN ỨNG DỤNG

• Giao diện chức năng Tra cứu thông tin biển báo qua hình ảnh

• Khi bấm vào biển báo dưới listView của màn hình thì hiển thị dialog như hình bên phải: Chứa thông tin và ý nghĩa của biển báo

Trang 21

THIẾT KẾ GIAO DIỆN ỨNG DỤNG

Trang 22

4 TRIỂN KHAI VÀ KẾT QUẢ

• Theo QCVN41:2019/BGTVT [9] Có 5 nhóm biển báo giao thông chính

Trang 23

THU THẬP DỮ LIỆU

• Dữ liệu thu được để phục vụ huấn luyện được thu thập từ các nguồn:

• Các hình ảnh trên Internet(Facebook, Google)

• Hình ảnh được cắt ra từ các video trên youtube

• Hình ảnh được chụp bằng điện thoại trên các tuyến đường tại Hà Nội

• Hiện tại, số lượng ảnh đã lên đến 7078 ảnh với 114 loại biển báo thu thập được Tổng

số biển báo trong tập dữ liệu trên là 12958 biển

• Việc gán nhãn dữ liệu được thực hiện bằng công cụ LabelImg

Trang 24

THU THẬP DỮ LIỆU

• Thu thập dữ liệu

Trang 26

THU THẬP DỮ LIỆU

Trang 27

THU THẬP DỮ LIỆU

Hình 4.4 Biển báo trong điều kiện ánh sáng ban ngày

Trang 28

THU THẬP DỮ LIỆU

Trang 29

THU THẬP DỮ LIỆU

• Thu thập dữ liệu

• Số lượng: 7078 ảnh với 114 loại biển báo thu thập được

Tổng số biển báo trong tập dữ liệu trên là 12958 biển

Bảng 4.1 Biển báo và số lượng biển báo thu thập được

Trang 30

THU THẬP DỮ LIỆU

Dữ liệu huấn luyện:

• Do mô hình học máy học dựa vào dữ

liệu, do đó có càng nhiều dữ liệu càng tốt

• Để đảm bảo model hoạt động tốt,

Thực hiện lấy các biển báo có số lượng trên 100 trong tập dữ liệu để huấn luyện model Các biển báo còn lại được gộp lại như ý trên Được tập dữ liệu có các loại biển báo và số lượng như sau

Bảng 4.2 Biển báo và số lượng biển báo huấn luyện

Trang 31

CÔNG NGHỆ SỬ DỤNG

• Model nhận diện biển báo: Ngôn

ngữ python, framework pytorch

• Server web: Flask

• Ứng dụng Mobile: JavaAndroid,

TorchScript

Hình 4.5 Kiến trúc ứng dụng

Trang 32

HUẤN LUYỆN MODEL

Kết quả huấn luyện, việc đánh giá

được thực hiện trên tập dữ liệu kiểm

Trang 33

HUẤN LUYỆN MODEL

Hình 4.8 Biểu đồ hàm Regression Loss của mạng VGG và Mobilenet Hình 4.9 Biểu đồ hàm Classification Loss của mạng VGG và Mobilenet

Trang 34

KIỂM THỬ MODEL

• Average Precision [10] là độ đo về độ chính xác của

các mô hình nhận diện vật thể (object-detection) như

SSD, Faster-RCNN,…

• Nhận xét: Theo như các biểu đồ về hàm Loss bên

trên, và bảng so sánh về độ chính xác của 2 mạng

theo độ đo Average Precision, có thể thấy được rằng

Mạng VGG16-SSD có độ chính xác cao hơn nhiều so

với MobileNetV2 Nhưng có một nhược điểm là mạng

VGG16-SSD được tính toán và xử lý trên server, điều

này dẫn đến tình trạng nếu kết nối mạng giữa ứng

dụng và server không tốt, thì việc nhận diện sẽ có độ

trễ rất lớn Do đó cần phải tiếp tục huấn luyện mạng

MobileNetV2 để tăng độ chính xác cho mô hình mạng

MobileNetV2, hoặc phải có sự thay đổi trong kiến trúc

mạng Đây cũng sẽ là hướng nghiên cứu tiếp theo, để

việc xử lý tính toán, nhận diện biển báo không còn

phụ thuộc vào server.

Bảng 4.3 Độ chính xác của model trên trên tập dữ liệu huấn

luyện và kiểm thử

VGG16 - SSD MobileNetV2 SSD

Dữ liệu huấn luyện 0.78049555 0.52104798

Dữ liệu kiểm thử 0.6894157 0.47277347

Trang 35

06/18/2024 35/55

KIỂM THỬ MODEL

Hình 4.12 VGG16-SSD trên Gooogle Colab

Hình 4.13 VGG16-SSD trên máy tính cá nhân

Hình 4.14 MobiletNetV2 SSD Lite trên Gooogle Colab

Hình 4.15 MobiletNetV2 SSD Lite trên máy tính cá nhân

Google Colab: GPU NVIDIA TESLA T4 Máy tính cá nhân: CPU Intel Core I5 5200U

Trang 36

06/18/2024 36/55

• Chạy thử model

KIỂM THỬ MODEL

Trang 37

06/18/2024 37/55

• Chức năng “Nhận diện biển báo theo thời

gian thực”

• Bằng việc sử dụng mạng MobileNetV2

trên thiết bị di động, ứng dụng nhận diện

ổn định khoảng 4 khung hình/giây Còn

khi sử dụng server để nhận diện, ứng

dụng đạt độ chính xác cao hơn, và tốc

độ khung hình thì tùy thuộc vào sức

mạnh của server cũng như tốc độ mạng

KIỂM THỬ MODEL

Hình 4.11 Chạy thử tính năng nhận diện realtime

Trang 38

XÂY DỰNG ỨNG DỤNG

Hình 4.16 Giao diện menu ứng dụng

Trang 39

XÂY DỰNG ỨNG DỤNG

Trang 40

XÂY DỰNG ỨNG DỤNG

Hình 4.18 Chức năng tra cứu thông tin biển báo bằng hình ảnh

Trang 41

XÂY DỰNG ỨNG DỤNG

báo theo thời gian thực

Trang 42

KẾT LUẬN

1 Kết quả đã đạt được

• Đã tìm hiểu về mạng nơ-ron tích chập và xây dựng được model SSD dựa trên mạng cơ sở

là VGG16 và MobileNetV2 để nhận diện biển báo giao thông

• Model SSD MobileNetV2 có thể chạy được trực tiếp trên thiết bị di động.

• Đã xây dựng được ứng dụng nhận diện biển báo giao thông trên mobile với đầy đủ các chức năng đề ra

2 Những điểm hạn chế

• Dữ liệu thu thập vẫn còn ít, chưa đầy đủ các loại biển báo có tại Việt Nam.

• Độ chính xác của model chưa được cao.

• Khả năng nhận diện của model còn phụ thuộc vào góc chụp của biển báo, kích thước biển báo trong khung hình.

3 Hướng phát triển tiếp theo

• Tiếp tục thu thập thêm dữ liệu, huấn luyện tiếp model.

• Thực hiện việc tinh chỉnh kiến trúc mạng để model nhận diện tốt hơn hoặc có thể sẽ sử dụng các mô hình mạng khác.

• Phát triển sản phẩm thành module phần cứng, có khả năng tương thích với thiết bị camera hành trình.

• Nghiên cứu theo hướng tích hợp vào một hệ thống tự hành như: xe tự lái.

Trang 43

06/18/2024 43/55

TÀI LIỆU THAM KHẢO

[1] Lý thuyết mạng Nơron, "kdientu.duytan.edu.vn," [Online] Available: neural.pdf

http://kdientu.duytan.edu.vn/media/50176/ly-thuyet-mang-[2] nttuan8, "nttuan8.com," 30 3 2019 [Online] Available: https://nttuan8.com/bai-6-convolutional-neural-network/

[3] "Wikipedia," [Online] Available: https://en.wikipedia.org/wiki/Kernel_(image_processing)

[4] W Liu, D.Anguelov, D.Ehan, C.Y.Fu, "reasearchGate," 10 2016 [Online] Available:

https://www.researchgate.net/publication/308278279_SSD_Single_Shot_MultiBox_Detector

[5] P Trong, "nerophung.github.io," 15 06 2019 [Online] Available:

https://nerophung.github.io/2019/06/15/ssd-single-shot-detector

[6] K He, X Zhang, S Ren, J Sun, "Arxiv," 10 12 2015 [Online] Available: https://arxiv.org/pdf/1512.03385.pdf

[7] M Sandler, A Howard, M Zhu, A Zhmoginov, L.C Chen, "Arxiv.org," 13 1 2018 [Online] Available:

Trang 44

https://medium.com/@jonathan_hui/map-mean-average-precision-for-EM XIN CẢM ƠN QUÝ THẦY CÔ VÀ CÁC BẠN ĐÃ CHÚ Ý LẮNG NGHE!

Ngày đăng: 21/11/2020, 10:17

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Lý thuyết mạng Nơron, "kdientu.duytan.edu.vn," [Online]. Available: http://kdientu.duytan.edu.vn/media/50176/ly-thuyet-mang-neural.pdf Sách, tạp chí
Tiêu đề: kdientu.duytan.edu.vn
[2] nttuan8, "nttuan8.com," 30 3 2019. [Online]. Available: https://nttuan8.com/bai-6-convolutional-neural-network/ Sách, tạp chí
Tiêu đề: Bài 6: Convolutional neural network
Tác giả: nttuan8
Năm: 2019
[3] "Wikipedia," [Online]. Available: https://en.wikipedia.org/wiki/Kernel_(image_processing) Sách, tạp chí
Tiêu đề: Wikipedia
[4] W. Liu, D.Anguelov, D.Ehan, C.Y.Fu, "reasearchGate," 10 2016. [Online]. Available: https://www.researchgate.net/publication/308278279_SSD_Single_Shot_MultiBox_Detector Sách, tạp chí
Tiêu đề: reasearchGate
Tác giả: W. Liu, D. Anguelov, D. Ehan, C. Y. Fu
Năm: 2016
[5] P. Trong, "nerophung.github.io," 15 06 2019. [Online]. Available: https://nerophung.github.io/2019/06/15/ssd-single-shot-detector Sách, tạp chí
Tiêu đề: nerophung.github.io
Tác giả: P. Trong
Năm: 2019
[6] K. He, X. Zhang, S. Ren, J. Sun, "Arxiv," 10 12 2015. [Online]. Available: https://arxiv.org/pdf/1512.03385.pdf Sách, tạp chí
Tiêu đề: Deep Residual Learning for Image Recognition
Tác giả: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun
Nhà XB: Arxiv
Năm: 2015
[7] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, L.C. Chen, "Arxiv.org," 13 1 2018. [Online]. Available: https://arxiv.org/abs/1801.04381 Sách, tạp chí
Tiêu đề: Arxiv.org
Tác giả: M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, L.C. Chen
Năm: 2018
[8] P. Đ. Khánh, "Khoa học dữ liệu - Khanh's blog," 19 1 2020. [Online]. Available: https://phamdinhkhanh.github.io/2020/09/19/MobileNet.html Sách, tạp chí
Tiêu đề: Khoa học dữ liệu - Khanh's blog
Tác giả: P. Đ. Khánh
Năm: 2020
[9] BGTVT, "thuvienphapluat," 2019. [Online]. Available: https://thuvienphapluat.vn/tintuc/vn/thoi-su-phap-luat/chinh-sach-moi/27757/da-co-qcvn-41-2019-bgtvt-ve-bien-bao-giao-thong-duong-bo Sách, tạp chí
Tiêu đề: thuvienphapluat
Tác giả: BGTVT
Năm: 2019
[10] J. Hui, "Medium.com," 07 03 2018. [Online]. Available: https://medium.com/@jonathan_hui/map-mean-average-precision-for-object-detection-45c121a31173 Sách, tạp chí
Tiêu đề: Medium.com
Tác giả: J. Hui
Năm: 2018

TỪ KHÓA LIÊN QUAN

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