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

BÁO cáo xây DỰNG mô HÌNH CNN NHẬN DIỆN BIỂN báo GIAO THÔNG

45 396 2

Đ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

Cấu trúc

  • MỞ ĐẦU

    • 1. Đặt vấn đề

    • 2. Tình hình nghiên cứu trong và ngoài nước

      • 2.1. YOLOv1

      • 2.2. YOLOv2 & YOLO 9000

      • 2.3. YOLOv3

      • 2.4. YOLOv4

      • 2.5. YOLOv5

    • 3. Mục đích nghiên cứu

    • 4. Nội dung nghiên cứu

    • 5. Bố cục

  • CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

    • 1.1. Kiến trúc mạng YOLO

    • 1.2. Grid System

    • 1.3. Khái niệm về chỉ số IoU và thuật toán Non-max suppression

    • 1.4. Gán nhãn cho các mẫu

    • 1.5. Hàm mất mát

    • 1.6. Ngõ ra

    • 1.7. Thuật toán YOLOv4

    • 1.8. Cấu trúc nhận diện vật thể của YOLOv4

    • 1.9. Backbone

    • 1.10. Neck

    • 1.11. Head

  • CHƯƠNG 2: XÂY DỰNG MÔ HÌNH CNN PHÂN LOẠI BIỂN BÁO GIAO THÔNG TRÊN ẢNH

    • 2.1. Sơ đồ khối tổng quát

    • 2.2. Datasets

    • 2.3. Tiền xử lý và phân chia dữ liệu

    • 2.4. Định nghĩa mô hình

      • 2.4.1. Mô hình baseline

      • 2.4.2. Mô hình VGG16

      • 2.4.3. Mô hình baseline sử dụng Normalization

    • 2.5. Huấn luyện mô hình

    • 2.6. Tạo giao diện người dùng

  • CHƯƠNG 3: XÂY DỰNG MÔ HÌNH NHẬN DIỆN BIỂN BÁO GIAO THÔNG TRÊN VIDEO

    • 3.1. Sơ đồ khối

    • 3.2. Datasets

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM KHOA ĐIỆN – ĐIỆN TỬ  MÔN HỌC: ĐỒ ÁN BÁO CÁO XÂY DỰNG MƠ HÌNH CNN NHẬN DIỆN BIỂN BÁO GIAO THƠNG GVHD: TS Đỗ Duy Tân SVTH: MSSV Vũ Danh Long 18119167 Trương Thành Lợi 18119169 Tp Hồ Chí Minh, tháng năm 2021 ĐIỂM SỐ TIÊU CHÍ NỘI DUNG BỐ CỤC TRÌNH BÀY TỔNG ĐIỂM NHẬN XÉT Ký tên TS Đỗ Duy Tân BẢNG PHÂN CÔNG NHIỆM VỤ THỨ TỰ NHIỆM VỤ THỰC HIỆN KẾT QUẢ Phụ trách Chương Hoàn thành tốt Phụ trách Chương Hoàn thành tốt Phụ trách Chương Hoàn thành tốt Phụ trách Chương Hoàn thành tốt KÝ TÊN DANH MỤC VIẾT TẮT MỤC LỤC MỞ ĐẦU Đặt vấn đề .9 Tình hình nghiên cứu ngồi nước 2.1 YOLOv1 .9 2.2 YOLOv2 & YOLO 9000 11 2.3 YOLOv3 12 2.4 YOLOv4 13 2.5 YOLOv5 14 Mục đích nghiên cứu .15 Nội dung nghiên cứu .15 Bố cục 15 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 16 1.1 Kiến trúc mạng YOLO 16 1.2 Grid System 17 1.3 Khái niệm số IoU thuật toán Non-max suppression .19 1.4 Gán nhãn cho mẫu 20 1.5 Hàm mát 22 1.6 Ngõ 23 1.7 Thuật toán YOLOv4 23 1.8 Cấu trúc nhận diện vật thể YOLOv4 .24 1.9 Backbone .25 1.10 Neck 27 1.11 Head 30 CHƯƠNG 2: XÂY DỰNG MƠ HÌNH CNN PHÂN LOẠI BIỂN BÁO GIAO THÔNG TRÊN ẢNH 32 2.1 Sơ đồ khối tổng quát .32 2.2 Datasets 32 2.3 Tiền xử lý phân chia liệu .35 2.4 Định nghĩa mơ hình .36 2.4.1 Mơ hình baseline 36 2.4.2 Mơ hình VGG16 38 2.4.3 Mơ hình baseline sử dụng Normalization .39 2.5 Huấn luyện mơ hình 41 2.6 Tạo giao diện người dùng 42 MỞ ĐẦU Đặt vấn đề Ngày nay, với phát triển mạnh mẽ cơng nghệ, Artificial Intelligence (trí tuệ nhân tạo) hay cụ thể Machine Learning (máy học) bước phát triển không ngừng Các ứng dụng lĩnh vực ngày áp dụng nhiều vào đời sống người như: Robot giúp việc, hệ thống dịch thuật, chatbox, phân loại sản phẩm,… Mạng Nơron học sâu (Deep learning Network) lĩnh vực nghiên cứu thuật tốn, chương trình máy tính để máy tính học tập đưa dự đốn người Nó ứng dụng vào nhiều ứng dụng khác khoa học, kỹ thuật, lĩnh vực đời sống khác ứng dụng phân loại phát đối tượng Một ví dụ điển hình CNN (Convolutional Neural Network) áp dụng để nhận dạng tự động, tìm hiểu mẫu phân biệt từ ảnh cách xếp chồng liên tiếp lớp lên nhiều ứng dụng, CNN coi trình phân loại ảnh mạnh thúc đẩy công nghệ lĩnh vực thị giác máy tính, làm địn bẩy cho q trình học máy Nhưng bên cạnh đó, để phân loại đối tượng cơng nghệ CNN tiêu tốn cực lớn tài nguyên băng thông, nhớ khả xử lý phần cứng Để giảm thiểu tài nguyên tiêu hao này, thuật tốn, mơ hình giải thuật theo thời gian đời ngày nhiều mơ hình YOLOv4 cho tốn phân loại vật thể số Tình hình nghiên cứu ngồi nước Với tốn nhận diện biển báo, có hai vấn đề lớn cần giải 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 toán khác Trong đó, thuật tốn YOLO (You Only Look Once) xem vượt trội mặt thời gian đáp ứng thời gian thực tốt hơn, khả nhận diện đánh giá thấp R-CNN series trade-off khả nhận diện xác thời gian nhận diện vật thể đánh giá cao 2.1 YOLOv1 Đầu vào toán ảnh Bài toán giúp phân loại object ảnh phải định vị vị trí đối tượng Khi chưa có YOLOv1, phương pháp trước thường sử dụng bước: - Bước 1: sử dụng sliding window để lấy vùng khác ảnh, sử dụng thuật tốn lựa chọn vùng có khả chứa vật - Bước 2: phân loại vị trí xem vật thuộc lớp Các cách làm có nhược điểm yêu cầu lượng tính tốn lớn, bị phân nhỏ thành nhiều bước, khó tối ưu mặt tốc độ Kiến trúc YOLOv1 coi toán phát vật toán regression Từ input ảnh đầu vào, qua mạng gồm lớp convolution, pooling fully connected output Kiến trúc tối ưu để chạy GPU với lần forward pass, đạt tốc độ cao Hình Cách YOLOv1 dự đốn [1] YOLOv1 chia ảnh thành lưới ô (grid cell) với kích thước SxS (mặc định 7x7) Với grid cell, mơ hình đưa dự đốn cho B bounding box Ứng với box B bounding box tham số x, y, w, h, confidence, tọa độ tâm (x, y), chiều rộng, chiều cao độ tự tin dự đoán Với grid cell lưới SxS kia, mơ hình dự đốn xác suất rơi vào class Độ xác dự đoán ứng với bounding box định nghĩa truth p(Object)∗IO U truth pred p(Object ) xác suất có vật cell IO U pred Intersection over Union vùng dự đoán ground truth Xác suất rơi vào class cho grid cell ký hiệu p(Clas si ∨Object ) Các giá trị xác suất cho C class tạo C output cho grid cell Lưu ý B bounding box grid cell chia sẻ chung tập dự đoán class vật, đồng nghĩa với việc tất bounding box grid cell có chung class Vậy tổng số output mơ hình S × S ×(5∗B+C) Hình kiến trúc YOLOv1 Mạng backbone YOLOv1 lấy ý tưởng từ kiến trúc GoogleNet Hình Kiến trúc YOLOv1 [2] Nhược điểm YOLOv1: - YOLOv1 áp đặt ràng buộc không gian bounding box, grid cell predict bounding box (B) class Các ràng buộc hạn chế khả nhận biết số object nằm gần nhau, object có kích thước nhỏ - Ngồi ra, q trình training, loss function khơng có đánh giá riêng biệt error bounding box kích thước nhỏ so với error bounding box kích thước lớn Việc coi chúng loại tổng hợp lại làm ảnh hưởng đến độ xác tồn cục mạng Error nhỏ box lớn nhìn chung tác hại, error nhỏ với box nhỏ đặc biệt ảnh hưởng đến giá trị IOU 2.2 YOLOv2 & YOLO 9000 YOLOv2 đặt tên YOLO9000 Joseph Redmon Ali Farhadi công bố vào cuối năm 2016 có mặt 2017 CVPR Cải tiến phiên tốt hơn, nhanh hơn, tiên tiến để bắt kịp faster R-CNN (phương pháp sử dụng Region Proposal Network), xử lý vấn đề gặp phải YOLOv1 Một số điểm cải tiến YOLOv2 nói qua như: - Thêm Batch Normalization - High resolution classifier - Sử dụng kiến trúc anchorbox để đưa dự đoán - K-mean clustering cho lựa chọn anchor - Direct location prediction - Thêm fine-grained features - Multi-Scale Training - Light-weight backbone YOLO9000 đưa cách kết hợp dataset khác với ImageNet để phát nhiều class Tác giả tạo directed graph gọi WordTree hình Để merge label từ tập ImageNet (1000 class) với COCO/PASCAL (100 class), tác giả dựa vào WordNet để xây dựng quan hệ class, từ huấn luyện mạng nhận dạng class có quan hệ với 2.3 YOLOv3 YOLOv3 có kiến trúc giống YOLOv2 Tác giả thêm cải tiến nghiên cứu gần vào YOLOv2 để tạo YOLOv3 Các cải tiến bao gồm: - Logistic regression cho confidence score: YOLOv3 predict độ xác bounding box (có chứa vật hay khơng) sử dụng logistic regression - Thay softmax logistic classifier rời rạc: YOLOv3 sử dụng logistic classifier thay softmax cho việc classify đối tượng Việc cho hiệu tốt label không "mutually exclusive", tức có đối tượng thuộc hay nhiều class khác Ví dụ với tốn cần phát đối tượng "chó" "chó Phú Quốc" Rõ ràng đối tượng "chó Phú Quốc" thuộc class "chó", việc sử dụng softmax không phù hợp trường hợp - Backbone - Darknet-53: Backbone thiết kế lại với việc thêm residual blocks (kiến trúc sử dụng ResNet) - Multi-scale prediction: YOLOv3 sử dụng kiến trúc Feature Pyramid Networks (FPN) để đưa dự đoán từ nhiều scale khác feature map Việc giúp YOLOv3 tận dụng feature map với độ thô - tinh khác cho việc dự đoán - Skip-layer concatenation: YOLOv3 thêm liên kết lớp dự đốn Mơ hình upsample lớp dự đốn tầng sau sau concatenate với lớp dự 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 ngồi 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 thực tế Sai số tập training Sai số tập validation Đánh giá mơ hình 1% 15% 15% 0.5% 22% 16% 30% 1% Mơ hình bị Mơ hình bị Mơ hình bị Mơ hình high variance high bias high bias hoạt động ổn (overfitting) (underfitting) high variance định 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 việc phân loại biển báo giao thông ảnh, tập datasets sử dụng biển báo giao thông Đức công khai nguồn liệu trang web Kaggle [12] Tại tập datasets này, sử dụng file Train.zip bao gồm 9030 mẫu biển báo 43 class để tiến hành training file Test.zip để tiến hành kiểm tra lại Hình 2.2: Tập liệu sử dụng để xây dựng mơ hình CNN Trong đó, tập liệu training 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 10 11 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 Hết đoạn đường giới hạn 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 Giao với đường Nhãn Tên biển báo 22 23 24 25 26 27 28 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 Cảnh báo có học sinh qua 29 30 31 32 33 Cảnh báo có xe đạp qua Cảnh báo tuyết lở Cảnh báo thú hoang qua Hết tất lệnh cấm Rẽ phải phía trước 12 13 14 15 16 không ư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 34 35 36 37 38 17 18 Cấm ngược chiều Biển nguy hiểm khác 39 40 19 20 Nguy hiểm rẽ trái Nguy hiểm rẽ phải 41 42 21 Chỗ ngoặt nguy hiểm 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 xuyến Hết đoạn đường cấm vượt Hết đoạn đường cấm vượt với xe 3.5 2.3 Tiền xử lý phân chia liệu Đầu tiên, phải truy suất đến tập tin lưu liệu Sau đó, lưu lại liệu, nhãn ảnh reshape lại tập datasets cho phù hợp với đầu vào mạng nơtron tích chặp Q trình viết sau: Hình 2.3: Tiền xử lý tập datasets Tiếp theo, để dễ dàng cho việc tính tốn mạng nơtron tích chặp, phải chuyển liệu mẫu biển báo từ dạng danh sách sang mảng, sau tiến hành cắt tập train tập test với tỷ lệ 8:2 chuyển nhãn sang dạng one-hot cho phù hợp với mạng nơtron tích chặp Q trình viết sau: Hình 2.4: Xử lý phân chia tập train, tập test 2.4 Định nghĩa mô hình 2.4.1 Mơ hình baseline Mơ hình baseline 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 gồm có : - lớp thực chức tích chập - lớp thực max pooling - lớp thực drop out với tỉ lệ drop 0.2 Ở block cuối để phân loại liệu gồm có: - lớp flatten (lớp fc4) - lớp fully connected (lớp fc5) - lớp drop out lớp fully connected fc5 fc6 với tỉ lệ drop 0.5 - lớp fully connected (lớp fc6) BẢNG 3.2 : KIẾN TRÚC MƠ HÌNH BASELINE Loại Input Convolution Convolution Pooling Drop out Convolution Convolution Pooling Dropout Convolution Convolution Pooling Drop out Fully Connected Fully Connected Drop out Fully Connected Tên Input Conv1-1 Conv1-2 Pool1 Drop1 Conv2-1 Conv2-2 Pool2 Drop2 Conv3-1 Conv3-2 Pool3 Drop3 Fc4 Fc5 Drop4 Fc6 Số filter 32 32 Kích thước filter 3x3 3x3 2x2 64 64 3x3 3x3 3x3 128 128 3x3 3x3 2x2 2048 512 43 stride 2x2 2x2 Kích thước ngõ 32 x 32 x 32 x 32 x 32 32 x 32 x 32 16 x 16 x 32 16 x 16 x 32 16 x 16 x 64 16 x 16 x 64 x x 64 x x 64 x x 128 x x 128 x x 128 x x 128 2048 x 512 x 512 x 43 x 2.4.2 Mơ hình VGG16 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 Loại 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 Tên 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 Số filter 64 64 128 128 256 256 256 512 512 512 512 512 512 Kích thước filter 3x3 3x3 2x2 3x3 3x3 3x3 3x3 3x3 3x3 2x2 3x3 3x3 3x3 2x2 3x3 3x3 3x3 2x2 512 4096 4096 43 stride 2x2 2x2 2x2 2x2 Kích thước ngõ 32 x 32 x 32 x 32 x 64 32 x 32 x 64 16 x 16 x 64 16 x 16 x 128 16 x 16 x 128 x x 128 x x 256 x x 256 x x 256 x x 256 x x 256 x x 256 x x 256 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 2.4.3 Mơ hình baseline sử dụng Normalization Mơ hình huấn luyện Baseline model Normalization tương tự với mơ hình Baseline nhiên với mơ hình thực thêm lớp chức chuẩn hóa liệu Việc chuẩn hóa liệu thực với epsilon 10-6 momentum 0.99 Ở block tích chập gồm có : - lớp thực chức tích chập - lớp thực chức chuẩn hóa liệu - lớp thực max pooling - lớp thực drop out với tỉ lệ drop 0.2 Ở block cuối để phân loại liệu gồm có: - lớp flatten (lớp fc4) - lớp fully connected (lớp fc5) - lớp drop out lớp fully connected fc5 fc6 với tỉ lệ drop 0.5 - lớp thực chức chuẩn hóa liệu sau lớp drop out - lớp fully connected (lớp fc6) BẢNG 3.4 : KIẾN TRÚC MƠ HÌNH BASELINE MODEL NORMALIZATION Loại Input Convolution Convolution BatchNormalization Pooling Drop out Convolution Convolution BatchNormalization Pooling Dropout Convolution Convolution Pooling Drop out Fully Connected Fully connected Drop out BatchNormalization Fully connected Tên Input Conv1-1 Conv1-2 Norm1 Pool1 Drop1 Conv2-1 Conv2-2 Norm2 Pool2 Drop2 Conv3-1 Conv3-2 Pool3 Drop3 Fc4 Fc5 Drop5 Norm5 Fc6 Số filter 32 32 Kích thước filter 3x3 3x3 2x2 64 64 128 128 Stride Kích thước ngõ 32 x 32 x 32x 32 x 32 32 x 32 x 32 32 x 32 x 32 2x2 16 x 16 x 32 16 x 16 x 32 16 x 16 x 64 16 x 16 x 64 16 x 16 x 64 2x2 2x2 3x3 3x3 2x2 2x2 x x 64 x x 64 x x 128 x x 128 x x 128 x x 128 2048 x 512 x 512 x 512 x 3x3 3x3 2048 512 43 43 x 2.5 Huấn luyện mơ hình Với đề tài này, nhóm chúng tơi huấn luyện mơ hình 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ước 1: Khai báo module cần thiết thư viện Keras VD: Khai báo thư viện cần thiết để thực huấn luyện kiến trúc bên Hình 2.5: Khai báo thư viện Keras Bước 2: Tạo model cách sử dụng hàm thư viện Keras: VD: Tạo Convolutional Layer 2D, Maxpooling Dropout Hình 2.6: Tạo model Keras Bước 3: Compile model lệnh sau: Hình 2.7: Compile model Keras 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 q trình đào tạo Bước 4: Train model test model lệnh sau: Hình 2.8: Training model Keras Bước 5: Lưu model để sử dụng sau này: Hình 2.9: Lưu model Keras 2.6 Tạo giao diện người dùng Sau trình training, nhận file lưu trọng số model, lúc tiến hành xây dựng giao diện người dùng sử dụng thư viện Tkinter Python load model để nhận diện biển báo Bước 1: Khai báo thư viện Tkinter Keras Hình 2.10: Khai báo thư viện Tkinter Keras để tạo giao diện người dùng Bước 2: Tạo mảng lưu lại nhãn 43 lớp mẫu biển báo VD: Tạo cho 17 biển báo Hình 2.11: Tạo mảng gồm nhãn biển báo Bước 3: Thiết kế giao diện Hình 2.12: Tạo giao diện Bước 4: Tạo hàm để xử lý đưa kết Hình 2.13: Tạo hàm xử lý ảnh Bước 5: Gọi hàm vừa khai báo tiến hành classify ảnh Hình 2.14: Tiến hành xử lý ảnh Kết thu sau tạo mơ hình thiết kế giao diện: Hình 2.15: Kết CHƯƠNG 3: XÂY DỰNG MƠ HÌNH NHẬN DIỆN BIỂN BÁO GIAO THÔNG TRÊN VIDEO 3.1 Sơ đồ khối Để thực mơ hình nhận diện biển báo video, nhóm chúng tơi sử dụng thuật tốn YOLO Bước 1: Tìm kiếm thu thập ảnh chứa biển báo giao thông, tiến hành gán nhãn Bước 2: Phân chia liệu thành tập training tập testing 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 đánh giá mô Dưới sơ đồ khối tổng quát hệ thống: Hình 3.1 Sơ đồ khối trình thực mơ hình phát biển báo giao thơng 3.2 Datasets Tập liệu thu thập từ biển báo giao thông thành phố Hồ Chí Minh, tập liệu bao gồm 12532 ảnh tập training 12511 khác cho tập testing chia sẻ thư viện Mì AI [13] TÀI LIỆU THAM KHẢO [1] Joseph Redmon, Santosh Divvalay, Ross Girshick, Ali Farhadiy, (2016) ,You Only Look Once: Unified, Real-Time Object Detection, University of Washington [2] Lilianweng, (2018), Object Detection Part 4: Fast Detection Models, lilianweng.github.io [3] Yi-Qi Huang, Jia-Chun Zheng, Shi-Dan Sun, Cheng-Yi Chen, (2020) ,Optimized YOLOv3 Algorithm and Its Application in Traffic Flow Detections [4] Alexey Bochkovskiy, (2020), YOLOv4: Optimal Speed and Accuracy of Object Detection [5] Vũ Hữu Tiệp,(2016), “Machine Learning bản”, Nhà xuất khoa học kỹ thuật [6] Joseph Redmon, Santosh Divvala, Ross Girshick, Ali Farhadi, (2016) You Only Look Once: Unified, Real-Time Object Detection, University of Washington, Allen Institute for AI, Facebook AI Research [7] Alexey Bachkovskiy, Chien-Yao Wang, Hong-Yuan Mark Liao,(2020), YOLOv4: Optimal Speed and Accuracy of Object Detection, Institute of Information science Academia Sinica [8] Sik-Ho Tsang,(2018) Review: DenseNet - Dense Convolution Network (Image Classification), towardsdatascience.com [9] Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan, Serge Belongie, (2017) Feature Pyramid Networks for Object Detectio, Facebook AI Research (FAIR), Cornell University and Cornell Tech [10] Shu Liu, Lu Qi, Haifang Qin, Jianping Shi, Jiaya Jia,(2018) Path Aggregation Network for Instance Segmentation, The Chinese University of Hong Kong, Peking University, SenseTime Research, YouTu Lab, Tencent [11] Joseph Redmon, Ali Farhadi,(2018) YOLOv3: An incremental Improvement , University of Washington [12] Mykola, (2018), GTSRB - German Traffic Sign Recognition Benchmark, https://www.kaggle.com/meowmeowmeowmeowmeow/gtsrb-german-traffic-sign [13] Mì AI, (2021) Dữ liệu biển báo giao thông Việt Nam, https://miai.vn/thu-vien-miai/ [13] Lê Mỹ Hà, (2019), Mạng nơ ron học sâu ứng dụng, Nhà xuất Đại học quốc gia TP.HCM, H.2016 ... trợ, môi trường ảo để thực thi mô hình Thực thi mơ hình nhận diện biển báo cụ thể Nội dung nghiên cứu Ở báo cáo này, nhóm nghiên cứu tìm hiểu Deep Learning, mơ hình CNN, YOLOv4 tiến hành xây dựng. .. chương: Chương 1: Cơ sở lý thuyết Chương 2: Xây dựng mơ hình CNN phân loại biển báo giao thơng ảnh Chương 3: Xây dựng mơ hình nhận diện biển báo giao trông video Chương 4: Kết luận hướng phát... Gọi hàm vừa khai báo tiến hành classify ảnh Hình 2.14: Tiến hành xử lý ảnh Kết thu sau tạo mơ hình thiết kế giao diện: Hình 2.15: Kết CHƯƠNG 3: XÂY DỰNG MƠ HÌNH NHẬN DIỆN BIỂN BÁO GIAO THƠNG TRÊN

Ngày đăng: 04/09/2021, 06:49

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w