1. Trang chủ
  2. » Công Nghệ Thông Tin

Báo Cáo AI Nhận Diện Biển Báo Giao Thông

27 166 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 27
Dung lượng 2,55 MB

Nội dung

Để đạt được độ chính xác trong công nghệ này, các phương tiện cần phải giải thích được các biển báo giao thông và đưa ra quyết định sao cho phù hợp. Vậy hãy cùng nhóm tụi em tìm hiểu xem làm thế nào để nhận diện biển báo giao thông trong project này nhé.

BẢNG KÍ HIỆU SỬ DỤNG TRONG ĐỒ ÁN Kí hiệu Ý nghĩa s Stride: số pixel dịch chuyển y Scaling factor hay scaling p lần trượt Padding: số hàng số cột tăng β parameter layer Shifitng factor hay offset nc thêm lớp tích chập Số filter sử dụng lớp ε layer Smoothing factor để tránh tích chập việc chia làm vơ nghía, Kích thước filter yi thường có giá trị nhỏ Đầu batch W normalization Chiều rộng lớp tích chập f*f H D Chiều dài lớp tích chập Số chiều lớp tích chập Kí hiệu Ý nghĩa CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI NHẬN DIỆN BIỂN BÁO GIAO THƠNG Chương trình bày tình hình nghiên cứu ngồi nước đề tài nhận diện biển báo giao thơng Từ đưa lí chọn đề tài tóm tắt trình thực 1.1 Đặt vấn đề Chắc hẳn bạn nghe xe ô tô tự lái mà hành khách hồn tồn tin tưởng vào xe để di chuyển Nhưng để đạt mức độ xác an tồn phương tiện cần phải hiểu tuân theo quy tắc giao thơng Trong giới trí tuệ nhân tạo tiến công nghệ, nhiều nhà nghiên cứu công ty lớn Tesla, Uber, Google, Mercedes-Benz, Toyota, Ford, Audi, v.v nghiên cứu xe tự hành xe tự lái Để đạt độ xác công nghệ này, phương tiện cần phải giải thích biển báo giao thơng đưa định cho phù hợp Vậy nhóm tụi em tìm hiểu xem làm để nhận diện biển báo giao thông project 1.2 Tình hình nghiên cứu ngồi nước Đối với tốn phân loại biển báo giao thơng, tức nhận diện ảnh thuộc loại biển báo Đối với ngõ vào, ta phân loại vào class định Đây toán phân lớp (Classification) Có nhiều thuật tốn để phân lớp liệu, từ cổ điển đến đại Nhưng mạng Nơ- ron tích chập đánh giá thuật tốn hiệu quả, tránh tác động từ môi trường, nhiễu, thay đổi khoảng cách ảnh đến camera Trong đề tài này, mục tiêu đặt xây dựng mơ hình nhận diện biển báo giao thơng ảnh video Từ so sánh hiệu mơ hình khác Với tốn nhận diện biển báo, gồm hai toán lớn phát phân loại vật thể Có nhiều cách để phân loại vật thể bao gồm R-CNN, Fast R-CNN, Faster R-CNN số thuật tốn khác 1.3 Tóm tắt q trình thực đề tài Việc đề tài chia thành nhiều giai đoạn, giai đoạn thực cơng việc trình bày phần mục lục Chi tiết cho giai đoạn sau:  Tìm hiểu Deep Learning ứng dụng  Nghiên cứu xây dựng mơ hình CNN  Tham khảo cách sử dụng thư viện môi trường ảo Lựa chọn thư viện phù hợp  Thu thập tiền xử lý liệu Phân chia dataset thành tập training, tập validation tập test  Xây dựng mơ hình phân loại mơ hình nhận diện biển báo giao thông CHƯƠNG 2: CƠ SỞ LÝ THUYẾT MẠNG CNN Chương đưa lý thuyết Deep Learning, mạng Neural Network Để thực việc phân loại phát biển báo giao thông, việc vận dụng kỹ thuật chứng minh hiệu Phần 2.1 giới thiệu nhanh kỹ thuật Deep Learning Phần 2.2 trình bày mạng Neural Network từ đưa sở để trình bày thuật toán Convolutional Neural Network phần 2.3 2.1 Deep Learning Deep Learning (Học sâu) nhánh nhỏ Machine Learning (Máy học), bắt nguồn từ thuật toán Neural Network Tuy nhiên, gần Deep Learning mang lại nhiều thành tựu kĩ thuật nhờ vào phát triển Big Data (Dữ liệu lớn), với tập liệu lớn giúp phát triển mạng Neural Network sâu với khả dự đốn xác cao (Hình 1.1) Bắt nguồn từ loại hình kinh doanh internet truyền thống tìm kiếm web quảng cáo Deep Learning ngày tạo nhiều lợi ích sống ngày Ví dụ lĩnh vực y tế, việc phân tích hình ảnh X-quang ứng dụng vào Deep Learning để nghiên cứu dự đoán khả mang bệnh người khám Và đặc biệt Deep Learning ứng dụng xe tự hành để dự đốn tình giao thơng Hình 2.1 Quan hệ liệu khả dự đoán thuật toán Nguồn: Coursera Các ứng dụng khác áp dụng Neuron Network khác nhau: Các ứng dụng Đoán giá nhà Neural Network áp dụng Standard Neural Network Quảng cáo online Xe tự hành Nhận diện giọng nói Máy dịch Nhận diện vật thể Custom, Hybrid Neural Network Current Neural Network Convolutional Neural Network 2.2 Neural Network Neural Network mạng lưới gồm nhiều lớp lấy cảm hứng từ neuron người Ở đó, lớp để đưa đặc tính vật cần dự đoán vào gọi Input Layer Và layer cuối mang kết dự đoán gọi Output Layer Một mạng neuron có khơng có lớp Input Layer Output Layer gọi Hidden Layer, Hidden Layer giúp cho tỉ lệ dự đốn xác cao nhiên việc huấn luyện tốn nhiều thời gian dung lượng Mỗi Layer tập hợp nhiều node, node lớp sau kết nối với toàn node lớp trước Mỗi node hidden layer output layer thực công việc sau: Liên kết với tất node layer trước với hệ số w riêng Mỗi node có hệ số bias b riêng Từ w,b biểu thị mối quan hệ node trước node sau Hình 2.2 Mối quan hệ ngõ vào ngõ node Node phía có đầu vào X1, X2, trọng số w1, w2 Ngõ y kết hàm phi tuyến hàm tuyến tính Hàm phi tuyến g cịn gọi hàm kích hoạt (activation) giúp tăng khả học mạng neural Các hàm phi kích hoạt thường sử dụng là: Sigmoid: Giá trị ngõ chuyển khoảng [0,1] công thức:  ( x)  1  e x Hàm sigmoid cho ngõ có giá trị ngõ vào lớn ngõ ngõ vào Ở thời gian đầu hàm sigmoid ưa chuộng sử dụng, nhiên sau hàm ln dương nên lấy gradient, hàm khó hội tụ Mặt khác hàm sigmoid dễ bị bão hịa khơng có gradient đầu vào nhỏ Vì vậy, sau hàm sigmoid sử dụng lớp tích chập cuối cần tính binary cross-entropy loss Tanh: Giá trị ngõ chuyển khoảng [-1,1] khiến có tính chất tâm khơng (zero-centered), theo cơng thức: Khi đó, ngõ ngõ vào lớn ngõ -1 ngõ vào nhỏ Hàm Tanh với tính chất tâm khơng giúp liệu phân bố quanh điểm 0, lấy đạo hàm có phần dương phần âm giúp việc hội tụ trở nên tốt Tuy nhiên hàm không giải vấn đề bão hòa giá trị ngõ vào lớn nhỏ sigmoid Hình 2.3 Đồ thị hàm sigmoid (a) hàm (b)[1] ReLU leaky ReLU: Lấy ngưỡng giá trị (Thay giá trị âm 0) : g(x)= max(0,x) Hàm ReLU loại bỏ giá trị âm, việc hội tụ diễn nhanh khơng cịn bị bão hòa hai đầu hàm Sigmoid hàm Tanh Tuy nhiên, với giá trị âm nhỏ gần 0, việc giữ lại đạo hàm có giá trị lấy Gradient, lại bị triệt tiêu gây tượng “Dying ReLU” Để khắc phục việc đó, hàm Leaky ReLU đời biến thể ReLU: g(x) = , giá trị âm lớn gần xấp xỉ giá trị âm nhỏ mang giá trị đạo hàm Nhưng hai hàm ReLU Leaky ReLU lại đạo hàm Hình 2.4: Đồ thị hàm ReLU[1] 2.3 Convolutional Neural Network 2.3.1 Tổng quát Convolutional Neural Network (CNN) hay cịn gọi mạng Nơ-ron tích chập mơ hình Deep Learning Tác dụng thuật tốn tạo hệ thống thơng minh, có phản ứng với độ xác cao Ví dụ Facebook, Google đưa vào sản phẩm chức nhận diện khuôn mặt… Ứng dụng thuật toán phân lớp, tức phân biệt kia, tức đưa hình ảnh vào máy tính, điểm ảnh hai chiều điều CNN thực điểm ảnh đổi máy tính biết hình ảnh CNNs chia thành chiều: rộng, cao, sâu Các Nơ-ron mạng khơng liên kết hồn tồn với tồn Nơ-ron mà liên kết tới vùng nhỏ Cuối cùng, tầng đầu tối giản thành vec-tơ giá trị xác suất CNNs gồm thành phần:  Phần tầng ẩn hay phần rút trích đặc trưng: Trong phần này, mạng tiến hành tính tốn hàng loạt phép tích chập (Convolutional layer) phép hợp (pooling) để phát đặc trưng  Phần phân lớp: Tại phần này, số lớp liên kết đầy đủ (Fully Connected) đóng vai trị phân lớp đặc trưng rút trích trước Tầng đưa xác suất đối tượng hình Hình 2.6 Cấu trúc CNN Nguồn www.mathworks.com 2.3.2 Lớp tích chập (Convolutional Layer) Đây phép tính quan trọng CNN Ta thực phép tích chập cách trượt kernel/filter theo kiểu liệu đầu vào Tại vị trí, ta tiến hành phép nhân ma trận tính tổng để đưa vào feature map Feature map ma trận chiều, bao gồm số (parameter) Ở lớp đầu tiên, khối tích chập dùng để phát cạnh thẳng đứng cạnh nằm ngang, cạnh nghiêng Ở lớp tiếp theo, khối tích chập nhận diện đường cong, đường gấp khúc Càng sử dụng nhiều lớp tích chập phát đặc trưng phức tạp hơn, vật thể mèo, hoa, bánh xe Hình 2.7 Mơ tả q trình nhận diện vật thể qua lớp tích chập.[2] Tại khối tích chập, thông số sử dụng bao gồm: Stride (S): Số pixel bạn dịch chuyển lần trượt Padding (P): Tăng thêm số hàng cột (thường có giá trị 0) để tránh việc giảm kích thước output để lấy thông tin pixel ngồi Có loại padding “valid” tức padding =0 “same” tức padding để kích thước ngõ kích thước ngõ vào #filters (nc): Số filter sử dụng layers f : kích thước filter f *f Hình 2.8 Các thông số conv layers 2.3.3 Lớp tổng hợp (Pooling layer) Mục đích làm giảm số parameters mà ta cần phải tính tốn, từ giảm thời gian tính tốn mà giữ đặc trưng quan trọng Ngồi cịn tránh overfitting Có loại pooling: max pooling lấy giá trị lớn pooling window average pooling lấy giá trị trung bình pooling window Pooling hoạt động gần giống convolution, max pooling cửa sổ trượt qua giá trị ma trận liệu đầu vào, chọn giá trị lớn nằm cửa sổ trượt Hình 2.9 Max pooling Nguồn: viblo 2.3.4 Lớp kết nối đầy đủ (Fully Connected Layer) Sau ảnh truyền qua nhiều lớp tích chập lớp tổng hợp model học tương đối đặc điểm ảnh (ví dụ bánh xe, khung xe…) tensor output cuối cùng, kích thước H* W* D chuyển vector kích thước (H * W* D) Hình 2.10 Phép flatten đưa tensor thành vector Sau đó, điểm vector liên kết với toàn output mode giống lớp mạng Neural Network Lớp kết nối đầy đủ cuối mạng có nhiệm vụ phân loại theo yêu cầu toán 2.3.5 Softmax Sau mạng CNNs học qua lớp phía trước, ta thu vector đặc trưng Khi đó, cần dựa vào vector đặc trưng để phân loại vào lớp theo yêu cầu toán Hàm softmax mơ hình xác suất để với input x, tính output a i thể xác suất để input rơi vào lớp thứ i 10 Bước 2: Phân chia liệu thành tập huấn luyện tập kiểm tra Bước 3: Huấn luyên mô hình sử dụng liệu tập huấn luyện Bước 4: Kiểm tra mơ hình với liệu test Dưới sơ đồ khối tổng quát hệ thống: Hinh 3.1 Sơ đồ khối tổng quát Từng giai đoạn cụ thể sơ đồ trình bày phần 3.2 Dataset Để huấn luyện mơ hình Deep Learning trước tiên ta cần chuẩn bị tập liệu tập liệu yếu tố vô quan trọng việc huấn luyện mô hình Vì 13 liệu mơi trường khác (cường độ ánh sáng, vật thể bị méo dạng, ), pixel ảnh khác Do đó, tập liệu lớn giúp mơ hình học vật thể nhiều trạng thái môi trường khác nhau, từ tăng khả xác dự đốn thực tế Tập liệu thường chia làm tập: + Tập training: tập training thường có kích thước lớn Tập training thường dán nhãn cho trước nhãn để tính tốn loss function cập nhập tham số để mơ hình tăng độ xác + Tập validation (hay tập development): Tập validation thường chia từ tập training Tập validation không dùng để cập nhập tham số mô hình, mà dùng để đánh giá xem mơ hình có cần điều chỉnh parameter lại hay khơng, có bị high bias hay high variance hay khơng + Tập test: tập test dùng để đánh giá lại mơ hình có hiệu hay khơng Dữ liệu tập test phải chưa xuất tập training để đánh giá mơ hình ngồi thực tế Sai số tập training 1% 15% 15% 0.5% Sai số tập validation 22% 16% 30% 1% Đánh giá mơ hình Mơ hình bị Mơ hình bị Mơ hình bị Mơ hình hoạt high high bias variance (underfitting) (overfitting) high bias động ổn định high variance Các tập training, validation, test thường chia với tỉ lệ 60/20/20 với tập liệu không lớn chia tỉ lệ 98/1/1 99.5/0.1/0.4 với tập liệu lớn (khoảng triệu mẫu) Trong project sử dụng tập liệu cơng khai có sẵn kaggle (một kho liệu mã cộng đồng xuất khổng lồ lĩnh vực khoa học máy tính, trí tuệ nhân tạo…) Bộ liệu chứa 50.000 hình ảnh biển báo giao thơng khác Nó phân loại thành 43 lớp khác Tập liệu khác nhau, số lớp có nhiều hình ảnh số lớp có hình ảnh Kích thước tập liệu 14 khoảng 300 MB Tập liệu có thư mục huấn luyện chứa hình ảnh bên lớp thư mục thử nghiệm mà sử dụng để thử nghiệm mơ hình Hình 3.2: Tập liệu sử dụng để xây dựng mơ hình CNN Trong đó, tập liệu training có kích thước 39252 mẫu biển báo giao thơng Đức với 43 class gán nhãn sau: BẢNG 3.1: NHÃN VÀ TÊN CÁC BIỂN BÁO TRONG BÀI TOÁN PHÂN LOẠI Nhãn Tên biển báo Tốc độ giới hạn 20km/h Tốc độ giới hạn 30km/h Tốc độ giới hạn 50km/h Tốc độ giới hạn 60km/h Tốc độ giới hạn 70km/h Tốc độ giới hạn 80km/h Nhãn 23 24 25 26 27 28 Tên biển báo Cảnh báo đường nhấp nhô Cảnh báo đường trơn trượt Đường bị hẹp bên phải Đường thi cơng Cảnh báo có đèn tín hiệu Cảnh báo có người 15 Hết đoạn đường giới hạn 29 Cảnh báo có học sinh qua 10 11 80km/h Tốc độ giới hạn 100km/h Tốc độ giới hạn 120km/h Cấm vượt Cấm xe 3,5 vượt Cảnh báo có xe đạp qua Cảnh báo tuyết lở Cảnh báo thú hoang qua Kết thúc tất giới hạn tốc độ 30 31 32 33 12 Giao với đường không 34 vượt qua Rẽ phải phía trước 13 14 15 16 17 18 19 ưu tiên Giao với đường ưu tiên Biển cảnh báo nguy hiểm Biển dừng lại Biển đường cấm Cấm xe 3.5 Cấm ngược chiều Biển nguy hiểm khác 35 36 37 38 39 40 41 Rẽ trái phía trước Đi thẳng Đi thẳng rẽ phải Đi thẳng rẽ trái Hướng phải vòng sang phải Hướng trái vòng sang trái Nơi giao chạy theo vòng 42 43 xuyến Hết đoạn đường cấm vượt Hết đoạn đường cấm vượt với 20 21 Nguy hiểm rẽ trái Nguy hiểm rẽ phải xe 3.5 22 Chỗ ngoặt nguy hiểm 3.3Tiền xử lí phân chia liệu Để thực project cần có kiến thức thư viện Keras, Matplotlib, Scikit-learning, Pandas, PIL phân loại hình ảnh Bước 1: Khám phá tập liệu 16 Thư mục train có chứa 43 thư mục thư mục đại diện cho lớp khác đánh số thứ tự từ đến 42 sử dụng module OS ta lặp lại tất lớp để kết nối hình ảnh với nhãn tương ứng chúng Thư viện PIL sử dụng để chuyển hình ảnh thành mảng 17 Sau ta lưu tất hình ảnh nhãn chúng vào lists data labels chuyển lists thành numpy array để làm đầu vào cho model Bước 2: Điều chỉnh kích thước ảnh Kích thước liệu (39209, 30, 30, 3), có nghĩa có 39209 hình ảnh, ảnh có kích thước 30×30 pixel, số cuối thể liệu hình ảnh màu (giá trị RGB) Bước 3: Phân chia liệu Với gói sklearn, chúng tơi sử dụng phương thức train_test_split () để phân chia liệu đào tạo kiểm tra Sử dụng phương thức to_categorical keras.utils để xử lý nhãn y_train y_test one-hot encoding 3.4 Xây dựng mơ hình 3.4.1 Mơ hình VGG16 18 Mơ hình VGG16-Net gồm có block block đầu thực chức trích chọn đặc trưng block cuối để phân loại liệu Hàm kích hoạt sử dụng hàm ReLU activation tất lớp trừ lớp cuối (fc6) hàm kích hoạt sử dụng hàm softmax activation Ở block tích chập đầu gồm có : + lớp thực chức tích chập + lớp thực max pooling Ở block tích chập gồm có: + lớp thực chức tích chập + lớp thực max pooling Ở block cuối để phân loại liệu gồm có: + lớp flatten (lớp fc6) + lớp fully connected (lớp fc7, fc8, fc9) + lớp drop out lớp fully connected fc7 fc8 lớp fc8 fc9 với tỉ lệ drop 0.5 BẢNG 3.3: KIẾN TRÚC MƠ HÌNH VGG-16 19 Loại Tên Số filter Kích thước stride filter Input Convolution Convolution Pooling Convolution Convolution Pooling Convolution Convolution Convolution Pooling Convolution Convolution Convolution Pooling Convolution Convolution Convolution Pooling Fully Connected Fully Connected Drop out Fully Connected Drop out Fully Connected Input Conv1-1 Conv1-2 Pool1 Conv2-1 Conv2-2 Pool2 Conv3-1 Conv3-2 Conv3-3 Pool3 Conv4-1 Conv4-2 Conv4-3 Pool4 Conv5-1 Conv5-2 Conv5-3 Final_pool Fc6 Fc7 Drop7 Fc8 Drop8 Fc9 64 64 128 128 256 256 256 512 512 512 512 512 512 3x3 3x3 2x2 3x3 3x3 3x3 3x3 3x3 3x3 2x2 3x3 3x3 3x3 2x2 3x3 3x3 3x3 2x2 512 4096 2x2 2x2 2x2 2x2 4096 43 Kích thước ngõ 48 x 48 x 48 x 48 x 64 48 x 48 x 64 23 x 23 x 64 23 x 23 x 128 23 x 23 x 128 11 x 11 x 128 11 x 11 x 256 11 x 11 x 256 11 x 11 x 256 x x 256 x x 512 x x 512 x x 512 x x 512 x x 512 x x 512 x x 512 x x 512 512 x 4096 x 4096 x 4096 x 4096 x 43 x Kiến trúc mơ hình CNN sau: + Conv2D layer (filter=32, kernel_size = (5,5), activation = ” relu ”) + MaxPool2D layer (pool_size = (2,2)) + Dropout layer (rate=0.25) + Conv2D layer (filter=64, kernel_size = (3,3), activation = ” relu”) + MaxPool2D layer (pool_size=(2,2)) + Dropout layer (rate=0.25) + Flatten layer to squeeze the layers into dimension + Dense Fully connected layer (256 nodes, activation = ”relu”) + Dropout layer (rate=0.5) + Dense layer (43 nodes, activation = ”softmax”) Chúng biên dịch mơ hình với trình tối ưu hóa Adam hoạt động tốt mát “categorical_crossentropy” chúng tơi có nhiều lớp để phân loại 20 3.5 Huấn luyện xác nhận mơ hình Việc huấn luyện thuật tốn thực sử dụng thư viện Keras Đây mã nguồn mở dành cho Neural Network Keras framework cấp cao, cung cấp số công cụ trừu tượng, module dược sử dụng chủ yếu Keras bao gồm: Keras models, keras layers, keras losses, keras optimizers Có bước để huấn luyện kiểm tra mơ hình dùng hàm xây dựng sẵn keras Bước1: Tạo model cách sử dụng hàm thư viện keras.layers.models Ví dụ: Tạo Convolutional Layer 2D sử dụng lệnh sau X=Conv2D (filters, kernel_size, strides=( ), padding=“…”, name=”…”) (X) Bước 2: Compile model cách gọi lệnh: model.compile ( optimizer= “….”, loss= “…” , metrics= [“ accuracy”]) Trong đó:  Hàm optimizer ‘adam’, ‘sdg’, RMSprop, …  Hàm Loss dùng để tính tốn chất lượng model từ tìm cách giảm thiểu trình đào tạo Bước 3: Train model dùng tập train cách gọi lệnh: Model.fit (x= …., y= …., epoch= … , batch_size =….) 21 Bước 4: Test model tập test cách gọi lệnh: model.evaluate (x= …., y= … ,batch_size= …, verbose= 1) Sau xây dựng kiến trúc mơ hình, chúng tơi huấn luyện mơ hình cách sử dụng model.fit () Tơi thử với kích thước lơ 32 64 Mơ hình chúng tơi hoạt động tốt với kích thước lơ 64 Và sau 15 kỷ, độ xác ổn định Mơ hình chúng tơi có độ xác 95% tập liệu đào tạo Với matplotlib, chúng tơi vẽ biểu đồ cho độ xác mát 22 Đây biểu đồ cho xác mát Tập liệu chứa thư mục thử nghiệm tệp test.csv, chúng tơi có chi tiết liên quan đến đường dẫn hình ảnh nhãn lớp tương ứng chúng Chúng tơi trích xuất đường dẫn hình ảnh nhãn cách sử dụng cấu trúc Sau đó, để dự đốn mơ hình, phải thay đổi kích thước hình ảnh thành 30 × 30 pixel tạo mảng phức tạp chứa tất liệu hình ảnh Từ sklearn.metrics, chúng tơi nhập precision_score quan sát cách mơ hình chúng tơi dự đốn nhãn thực tế Chúng tơi đạt độ xác 95% mơ hình 23 Cuối cùng, lưu mơ hình mà đào tạo cách sử dụng hàm Keras model.save () 3.6 GUI cơng cụ phân loại tín hiệu giao thông Đầu tiên tải mô hình đào tạo 'traffic_classifier.h5' Keras Và sau chúng tơi xây dựng GUI để tải lên hình ảnh nút sử dụng để phân loại gọi hàm phân loại () Hàm phân loại () chuyển đổi hình ảnh thành kích thước hình dạng (1, 30, 30, 3) Điều để dự đoán biển báo giao thông, phải cung cấp thứ nguyên mà sử dụng xây dựng mơ hình Sau đó, dự đốn lớp, model.posystem_classes (hình ảnh) trả cho số khoảng (0-42) đại diện cho lớp mà thuộc Chúng sử dụng từ điển để lấy thơng tin lớp Dưới hình ảnh giao diện GUI: 24 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN NHẬN DIỆN BIỂN BÁO GIAO THÔNG Chương đưa nhận xét mơ hình huấn luyện 4.1 Kết luận Mơ hình huấn luyện có độ xác cao với accuracy lên đến 94% với mát khoảng 19% sau kiểm tra với tập liệu mà mơ hình chưa nhìn thấy cho kết vơ cao là: 95% Sau import ảnh từ bên vào cho thấy mơ hình dự đốn xác, nhanh đạt mục tiêu mà đề lúc ban đầu Mọi người team làm việc hiệu quả, đồn kết ln tìm tịi kiến thức liên quan giúp project hoàn thiện 25 4.2 Hướng phát triển Mặc dù thuật toán phân loại phát biển báo giao thông đạt độ xác tương đối cao, việc áp dụng vào hệ thống thực tế chưa thực tốt Việc kết hợp thuật toán phân loại phát biển báo giao thơng cịn chưa thể kết hợp hồn chỉnh Trong giới hạn mặt kiến thức thời gian thực hiện, tồn nhiều khuyết điểm cho đề tài đồ án Để phát triển đề tài luận văn này, chúng tơi có đề xuất sau: - Sử dụng camera chuyên dụng để thu thập thêm liệu, hỗ trợ việc huấn luyện mô hình tốt - Sử dụng máy có cấu hình GPU tốt cho phép tăng tốc độ huấn luyện tăng số lớp nhận diện - Xây dựng app điện thoại, cho phép người dùng tra cứu thông tin biển báo thông qua ảnh chụp thời gian thực - Bên cạnh phần mềm, xây dựng phần cứng để gắn vào phương tiện ô tô, xe gắn máy - Xây dựng liệu lớn với thời điểm liệu lấy vào ban đêm ánh sáng yếu Trên định hướng phát triển cho để tài nhận diện biển báo giao thông đồ án 26 TÀI LIỆU THAM KHẢO [1] Vũ Hữu Tiệp, (2016), “Machine Learning bản”, Nhà xuất khoa học kỹ thuật [2] Mathew D mZeiler and Robs Fergus, (2014), “Visualizing and Understanding Convolutiona Networks, NewYork [3] Thor Pham Blog, (2018), "Tìm hiểu thư viện Keras Deep Learning", thorphamblog.github.io [4] Sik-Ho Tsang, (2018) "Review: DenseNet - Dense Convolution Network (Image Classification)", towardsdatascience.com [5] data- flair.training:” Dự án Python nhận dạng biển báo giao thông” [6] tek4.vn:” Nhận Diện Biển Báo Giao Thông Bằng CNN & Keras" [7] topdev.vn: "thuat-toan-cnn-convolutional-neural-network" [7] viblo.asia: "[Deep Learning] Tìm hiểu mạng tích chập (CNN)" 27 ... Classification)", towardsdatascience.com [5] data- flair.training:” Dự án Python nhận dạng biển báo giao thông? ?? [6] tek4.vn:” Nhận Diện Biển Báo Giao Thông Bằng CNN & Keras" [7] topdev.vn: "thuat-toan-cnn-convolutional-neural-network"... Trong đề tài này, mục tiêu đặt xây dựng mô hình nhận diện biển báo giao thơng ảnh video Từ so sánh hiệu mơ hình khác Với tốn nhận diện biển báo, gồm hai toán lớn phát phân loại vật thể Có nhiều cách... Trong đó, tập liệu training có kích thước 39252 mẫu biển báo giao thông Đức với 43 class gán nhãn sau: BẢNG 3.1: NHÃN VÀ TÊN CÁC BIỂN BÁO TRONG BÀI TOÁN PHÂN LOẠI Nhãn Tên biển báo Tốc độ giới hạn

Ngày đăng: 16/09/2021, 09:22

TỪ KHÓA LIÊN QUAN

w