Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
1 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA BÙI THANH PHONG ÁP DỤNG HỌC MÁY TRONG NHẬN DẠNG BIỂN BÁO GIAO THƠNG Chun ngành: Khoa học máy tính Mã số: 60.48.01.01 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng – Năm 2018 Cơng trình hồn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHĐN Người hướng dẫn khoa học: TS PHẠM MINH TUẤN Phản biện 1: PGS.TS Nguyễn Thanh Bình Phản biện 2: TS Lê Xuân Vinh Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Khoa học máy tính Trường Đại học Bách khoa vào ngày 17 tháng năm 2018 Có thể tìm hiểu luận văn tại: - Trung tâm Học liệu, Đại học Đà Nẵng Trường Đại học Bách khoa - Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa – Đại học Đà Nẵng MỞ ĐẦU Lý chọn đề tài Việt nam đất nước có hệ thống trị ổn định bậc khu vực giới, tình trạng khủng bố khơng có Thế tình trạng thiệt mạng tai nạn giao thơng lại cao, năm 2017, toàn quốc xảy 20.280 vụ tai nạn giao thông, làm chết 8.279 người, bị thương 17.040 người, thiệt hại kinh tế ước tính đến tỷ USD So với năm trước, số vụ tai nạn giao thông năm giảm 7% (Số vụ tai nạn giao thông từ nghiêm trọng trở lên giảm 5,6%; số vụ va chạm giao thông giảm 8,3%); số người chết giảm 4,7%; số người bị thương giảm 9,6% số người bị thương nhẹ giảm 12,6% Nhìn vào số thống kê, bình quân ngày năm 2017, địa bàn nước xảy 55 vụ tai nạn giao thơng, gồm 27 vụ tai nạn giao thơng từ nghiêm trọng trở lên 28 vụ va chạm giao thông, làm 23 người chết, 47 người bị thương Qua thống kê lượng người chết thiệt hại kinh tế, ta thấy mát lớn nhiều người nạn nhân trực tiếp hệ lụy, ảnh hưởng tai nạn giao thông Từ tình hình thực tế giao thơng Việt Nam, có nhiều nguyên nhân gây vụ tai nạn giao thông đường bộ, phần lớn tài xế không làm chủ tốc độ, thiếu quan sát khơng kịp nhận loại biển báo tín hiệu giao thông Những mối nguy hiểm cảnh báo trước hệ thống biển báo giao thông tai nạn thường xuyên xảy ra, gây không thiệt hại tính mạng, tài sản người tham gia giao thông đặc biệt để lại hậu nặng nề cho gia đình, xã hội Cơng nghệ thông tin ngày phát triển sôi động nhiều lĩnh vực toàn giới có Việt Nam, hầu hết hoạt động hàng ngày liên quan đến công nghệ thông tin Trong thực tế ngày nay, ứng dụng công nghệ thông tin đưa vào lĩnh vực kinh tế, trị, xã hội, quân sự…, hội phát triển đồng thời thách thức to lớn việc phát triển xã hội nói chung Cho đến nay, vấn đề nhiều nghiên cứu giới quan tâm Nhưng nghiên cứu chưa thực hiệu giao thông đường Việt Nam Trong đó, tình hình nghiên cứu biển báo giao thơng Việt Nam nhiều hạn chế chưa đầy đủ Vì vậy, Trong luận văn tốt nghiệp, tơi chọn đề tài “Áp dụng học máy nhận dạng biển báo giao thơng” để nghiên cứu với mục đích tìm hiểu tảng công nghệ, lý thuyết toán xử lý ảnh, học máy áp dụng vào việc nhận dạng biển báo giao thông nhằm xây dựng chương trình nhắc nhở tài xế Mục đích nghiên cứu Nghiên cứu, tìm hiểu phương pháp nhận dạng, áp dụng vào nhận diện biển báo giao thơng, xây dựng chương trình, cài đặt thực nghiệm chương trình phát nhận dạng biển báo giao thơng đường từ hình ảnh tĩnh video thu về, sau hiển thị thơng tin cảnh báo dạng hình ảnh âm Đối tượng phạm vi nghiên cứu Hệ thống biển báo giao thông đường Việt Nam gồm: - Hệ thống biển báo nguy hiểm - Hệ thống biển báo dẫn - Hệ thống biển cấm - Hệ thống biển hiệu lệnh Phương pháp nghiên cứu Phương pháp lý thuyết Nghiên cứu lý thuyết học máy - Học có giám sát - Bán giám sát - Học khơng giám sát Nghiên cứu xử lý ảnh - Tiền xử lý - Thuật toán Viola – Jone Phương pháp thực nghiệm Xây dựng liệu: bước này, tiến hành thu thập liệu cách quay phim, chụp ảnh hệ thống biển báo giao thông thực tế Tìm hiểu phương pháp phát biển báo giao thơng dựa trích chọn đặc trưng Haar-like kết hợp với tăng tốc Adaboost Tìm hiểu phương pháp nhận dạng biển báo giao thơng đường bộ: Luận văn có sử dụng phương pháp phân tích thành phần Principal Components Analysis (PCA) để nhận dạng biển báo giao thông Xây dựng mơ hình nhận dạng sử dụng thuật tốn Cài đặt chương trình thử nghiệm Đánh giá tỉ lệ nhận dạng Ý nghĩa khoa học thực tiễn đề tài Với đề tài “Áp dụng học máy nhận dạng biển báo giao thông”, mục tiêu xây dựng chương trình hỗ trợ lái xe hiệu áp dụng thực tế, đầu vào hình ảnh giao thơng phía trước, đầu hệ thống thông tin cảnh báo cho tài xế hệ thống biển báo phía trước giúp tài xế tập trung lái xe an toàn Khi đề tài hoàn thành, tảng để xây dựng phần mềm hỗ trợ đáp ứng nhu cầu thực tế cho tài xế việc tham gia giao thơng Hơn nữa, đề tài giải pháp tình cho lĩnh vực giao thông Việt Nam trước lên xây dựng hệ thống tổng thể thống nhất, toàn diện Bố cục luận văn Phần mở đầu: Nêu lên lý chọn đề tài, đối tượng phạm vi nghiên cứu phương pháp nghiên cứu đề tài Phần nội dung: Chương 1: Tổng Quan Nghiên Cứu Chương trình bày lý thuyết xử lý ảnh, tổng quát phương pháp phổ biến trình phát nhận dạng đối tượng, học máy Chương 2: Mơ Hình Đề Xuất Trong Nhận Dạng Biển Báo Giao Thơng Chương trình bày ý tưởng đề tài, phát biểu toán nhận dạng biển báo giao thơng trình bày tảng cơng nghệ, chi tiết thuật toán hỗ trợ việc phát nhận dạng biển báo bao gồm: Trích chọn đặc trưng Haar-like, tăng tốc Adaboost, phân tích thành phần PCA Chương 3: Thực Nghiệm Và Đánh Giá Kết Quả Chương mơ tả chương trình cài đặt , thực thực nghiệm đánh giá kết Sử dụng ngôn ngữ Java, thư viện xử lý ảnh mã nguồn mở OpenCV để xây dựng chương trình Sau phân tích đánh giá kết nhận dạng Phần kết luận hướng phát triển đề tài CHƯƠNG TỔNG QUAN NGHIÊN CỨU Chương trình bày lý thuyết xử lý ảnh, tổng quát phương pháp phổ biến trình phát nhận dạng đối tượng, học máy 1.1 Tổng quan xử lý ảnh 1.1.1 Tổng quan xử lý ảnh 1.1.2 Các trình xử lý ảnh Thu nhận ảnh Tiền xử lý Phân đoạn ảnh Tách đặc tính Hình 1.2 Các giai đoạn xử lý ảnh 1.1.3 Ảnh biểu diễn ảnh 1.1.4 Phạm vi ứng dụng xử lý ảnh 1.2 Học máy 1.2.1 Tổng quan học máy Học máy lĩnh vực trí tuệ nhân tạo liên quan đến việc phát triển kĩ thuật cho phép máy tính “học” Cụ thể hơn, học máy phương pháp để tạo chương trình máy tính việc phân tích tập liệu 1.2.2 Các phương pháp học máy 1.2.2.1 Học khơng giám sát 1.2.2.2 Học có giám sát 1.2.2.3 Học bán giám sát Nhận dạng giải thích 1.2.2.4 Học tăng cường 1.2.2.5 Các ứng dụng học máy 1.3 Các phương pháp nhận dạng đối tượng 1.3.1 Phương pháp Neural Networks (NN) 1.3.2 Phương pháp Support Vector Machine (SVM) 1.3.3 Phương pháp Linear Discriminant Analysis 1.3.4 Phương pháp Naive Bayes (NB) 1.3.5 Phương pháp Principal Component Analysis (PCA) 1.4 Kết chương Nội dung chương I trình bày nêu vấn đề tương đối chi tiết lý thuyết Xử lý ảnh, Học máy nêu ưu điểm nhược điểm cụ thể phương pháp nhận dạng đối tượng nghiên cứu trước áp dụng được, để thực nghiên cứu đề tài CHƯƠNG MƠ HÌNH ĐỀ XUẤT TRONG PHÁT HIỆN VÀ NHẬN DẠNG BIỂN BÁO GIAO THÔNG Chương trình bày ý tưởng đề tài phương pháp để xây dựng chương trình Trong phương pháp phát đối tượng, chọn sử dụng thuật tốn Viola-Jone thuật tốn đơn giản, hiệu 2.1 Mơ tả tốn Bài tốn mơ tả qua việc xây dựng mơ hình (Learning), phát (detecting), nhận dạng (Recognize) sau: + Xây dựng mơ hình: Cho tập liệu biển báo giao thơng (có thể hình ảnh tĩnh video) nhãn tương ứng với liệu Xây dựng mơ hình nhận dạng (Các luật mơ hình xác suất) cho việc nhận dạng nhãn mẫu biển báo xác + Phát hiện: Dữ liệu đầu vào hình ảnh có chứa hình ảnh biển báo giao thơng Qua liệu học, hệ thống phát vùng ảnh chứa biển báo giao thông + Nhận dạng: Dữ liệu đầu vào mẫu biển báo phát Thơng qua mơ hình xây dựng, hệ thống trả nhãn biển báo Trong q trình nhận dạng, hệ thống gặp số khó khăn việc nhận dạng nhầm lẫn Ví dụ: Khi góc nhìn máy quay khác dẫn đến hình ảnh khác biển báo bị che lấp phần kết nhận dạng sai lệch Vì vậy, ngồi việc xây dựng mơ hình nhận dạng tiền xử lý trích chọn đặc tính giai đoạn quan trọng Thu thập liệu thực tế Hệ thống biển báo chuẩn luật giao thông đường Việt Nam Hậu xử lý Tiền xử lý ảnh Trích chọn đặc tính Kết nhận dạng Mơ hình phân loại nhận dạng Hình 2.1: Mơ hình tổng qt 2.2 Mơ hình tổng qt 2.3 Phương pháp đề xuất 2.3.1 Mơ hình phát Biển Báo Giao Thơng 2.3.1.1 Mơ hình phát Thuật tốn Viola-jones ảnh 24x24 pixel Hình 2.2: Mơ hình phát +1 Nếu đầu vào biển báo -1 Nếu đầu vào biển báo 2.3.1.2 Thuật tốn Adaboost 2.3.1.3 Cascade 2.3.2 Mơ tả thuật tốn nhận diện biển báo Ý tưởng thuật toán nhận dạng biển báo sau: Chúng ta xem xét hình biển báo điểm hệ không 10 2.3.3 Principal component analysis (PCA) 2.3.4 Khoảng cách mahalanobis 2.3.5 Chuyển đổi không gian vector 2.3.6 Các bước giảm chiều liệu 2.3.7 Tiến trình nhận dạng biển báo 2.4 Kết chương Nội dung chương trình bày ý tưởng đề tài, phát biểu toán nhận dạng biển báo giao thơng trình bày tảng cơng nghệ, chi tiết thuật tốn hỗ trợ việc phát nhận dạng biển báo bao gồm: Trích chọn đặc trưng Haar-like, tăng tốc Adaboost, phân tích thành phần PCA, tiến trình huấn luyện phát nhận dạng để áp dụng vào xây dựng chương trình nhận dạng biển báo giao thơng 11 CHƯƠNG THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ Chương mơ tả chương trình cài đặt , thực thực nghiệm đánh giá kết 3.1 Tổ chức liệu Ảnh dùng trình huấn luyện phát biển báo gồm loại: Positive, Negative Vì nhóm biển báo có đặc điểm khác nên để huấn luyện nhận dạng nhóm biển báo hiệu lệnh nhóm biển báo cấm ta cần phải huấn luyện lần với liệu khác đặc trưng cho nhóm biển báo cần huấn luyện Bộ ảnh huấn luyện phát biển báo gồm: 5314 ảnh nhóm biển báo nguy hiểm, 4558 ảnh nhóm biển báo cấm với nhiều loại biển báo Bộ ảnh huấn luyện nhận dạng biển báo gồm: với loại biển báo cần nhận dạng có số lượng tối thiểu 10 ảnh lưu vào thư mục riêng đặt theo tên loại biển báo Bộ ảnh mẫu ảnh biển biển báo giao thông chuẩn Bộ Giao thông vận tải lưu với định dạng png kích thước 24x24 thư mục Data\signs 3.2 Thu thập liệu Biển báo giao thơng Việt Nam chia thành nhóm: Nhóm biển dẫn, nhóm biển hiệu lệnh, nhóm biển báo cấm, nhóm biển báo nguy hiểm, nhóm biển phụ Trong ứng dụng Demo giới hạn thực phát nhận dạng nhóm biển báo hiệu lệnh nhóm biển báo cấm 12 Để thực đề tài, cần phải xây dựng liệu training lớn 4000 ảnh từ nhiều hình ảnh thực tế khác cho loại biển báo để huấn luyện 3.3 Cài đặt thực nghiệm chương trình 3.3.1 Dữ liệu đầu vào Dữ liệu đầu vào cho chương trình tập liệu chủ yếu ảnh tự chụp, lưu thư mục Traindata\test bao gồm 562 ảnh tĩnh 96 video có chứa biển báo giao thơng Các ảnh chụp điều kiện thời tiết, chiếu sáng khác Mỗi ảnh chụp nhiều góc độ khác xa, gần, nghiêng, 3.3.2 Xử lý liệu Các biển báo cần huấn luyện nhận dạng đưa dạng ảnh xám kích thước 24x24 để tiến hành huấn luyện nhận dạng Để thực đưa ảnh xám có chuẩn kích thước ảnh làm tăng thêm liệu cho huấn luyện, tơi có xây dựng hàm ScaleImageTo24x24, RotateImage, TograyImage, CutImage 3.3.2.1 Cấu trúc chương trình Hình 3.1: Cấu trúc chương trình 13 Đưa vào hệ thống hình ảnh có chứa biển báo Sau đó, chương trình dùng thuật tốn Viola-Jones để phát biển báo cắt hình ảnh biển báo để thực học tập lưu vào sở liệu 3.3.2.2 Huấn luyện Chuẩn bị liệu ảnh huấn luyện Tập ảnh Positive: “D:\traindata\train\signs” chứa liệu biển báo Tập ảnh Negative: “D:\traindata\train\nonsigns” chứa liệu biển báo 3.3.2.3 Phát biển báo Hình 3.2: Phát biển báo Khi hệ thống quét khung hình nhỏ ảnh lớn, sử dụng thuật tốn Viola-jones để xác định có phải biển báo hay không 14 3.3.2.4 Nhận dạng biển báo Hình 3.3: Nhận dạng biển báo Sau phát biển báo, hệ thống thực việc học tập lưu liệu huấn luyện vào sở liệu Trong chương trình Demo này, liệu hình ảnh biển báo học lưu vào thư mục có tên riêng làm tăng thêm liệu nhận dạng ta thực training nhận dạng Ta vào thư mục chương trình để thay đổi tập huấn luyện u cầu hệ thống tìm hiểu xác định lại biển báo biển báo bị xác định sai 15 Hình 3.4: Dữ liệu loại biển báo khác huấn luyện Hình 3.5: Dữ liệu biển báo đường hẹp bên trái lưu vào thư mục 3.3.3 Giao diện chương trình 16 Hình 3.6: Khởi chạy chương trình Chương trình gồm phần: - Data: chứa liệu biển báo học - Recognize: huấn luyện nhận dạng biển báo file ảnh - Camera: huấn luyện nhận dạng biển báo thơng qua camera Hình 3.7: Giao diện chương trình 17 Hình 3.8: Dữ liệu biển báo huấn luyện Trong chức Recognize, nhấn Browse để chọn file ảnh, chương trình xác định biển báo, ta click chuột vào vị trí biển báo thông tin biển báo Nếu biển báo bị xác định sai thơng tin thực update lại thơng tin Hình 3.9: Giao diện chương trình chức Recognize Trong chức Camera, ta điền thông tin biển báo vào textbox, chọn start để huấn luyện chọn Recog để thực xác định thông tin biển báo 18 Hình 3.10: Giao diện chương trình chức Camera 3.4 Một số hình ảnh thực chương trình Demo 3.4.1 Phát biển báo Một số hình ảnh phát biển báo hình ảnh có điều kiện lý tưởng: Hình 3.11: Phát biển báo cấm hình ảnh chuẩn Có hình tổng số 11 hình biển báo cấm chương trình phát có hình bị chương trình phát sai 19 Hình 3.12: Phát biển báo nguy hiểm hình ảnh chuẩn Có 23 hình biển báo nguy hiểm phát có hình ảnh khơng phải biển báo bị phát biển báo, có 01 biển báo khơng nhận diện hình dạng khác so với huấn luyện chung biển báo nguy hiểm Nguyên nhân phát sai nội dung hình ảnh tương đối giống với dạng hình tam giác dạng hình tròn Một số hình ảnh Modun phát biển báo hình ảnh thực tế: 3.4.2 Huấn luyện kiểm tra Quy trình Huấn luyện (Training) biển báo Kiểm tra (Check) biển báo học 20 Hình 3.17: Huấn luyện biển báo Cấm tơ xe máy Hình 3.18: Kiểm tra nhận dạng biển báo Cấm ô tô xe máy 21 Hình 3.21: Huấn luyện biển báo tín hiệu đèn giao thơng Hình 3.22: Kiểm tra nhận dạng biển báo tín hiệu đèn giao thơng 3.5 Đánh giá kết Kết chương trình Demo thực nghiệm bước đầu cho kết tương đối xác với tập liệu mô phỏng, tức phát hình ảnh đối tượng biển báo khung ảnh lớn 22 Tuy nhiên, kết phát biển báo chương trình chưa sát với khung biển báo tạo nên môi trường nhiễu xung quanh biển báo làm giảm tỷ lệ nhận dạng Để khắc phục vấn đề này, thực xây dựng lại ảnh huấn luyện để phát xác đối tượng nâng cao tỷ lệ phát hiện, từ nâng cao tỷ lệ nhận dạng Kết thể tốt việc nhận dạng đối tượng biển báo phương pháp trích chọn đặc trưng 3.5.1 Về lý thuyết Đã trình bày đầy đủ học máy kỹ thuật để xây dựng mô hình học máy Khái qt hóa đầy đủ hệ thống nhận dạng đối tượng Tìm hiểu chi tiết thuật toán hỗ trợ việc phát nhận dạng biển báo bao gồm: Trích chọn đặc trưng Haar-like, tăng tốc Adaboost, phân tích thành phần PCA 3.5.2 Về Cài đặt Sử dụng thành thạo ngôn ngữ lập trình java xây dựng hệ thống sử dụng code (java) Vận dụng lý thuyết tảng kỹ thuật trích chọn đặc trưng Haar-like, tăng tốc Adaboost, phân tích thành phần PCA để xây dựng mơ hình nhận dạng đối tượng dựa việc rút trích lựa chọn đặc trưng cho đối tượng 3.5.3 Về thực nghiệm Kết nhận dạng phương pháp đề xuất có tỷ lệ phát biển báo cao, nhiên kết nhận dạng xác định phụ thuộc nhiều vào sở liệu học nên tỷ lệ nhận dạng thấp, nhận dạng môi trường chuẩn lý tưởng 23 Kết thử nghiệm phát biển báo môi trường thời tiết khác Trong điều kiện tốt Mưa, nhiều mây, ánh sáng yếu Ban đêm Biển báo bị phai mờ, bị bẩn, bong tróc sơn Phát Nhận dạng xác xác 90.25% 71.42% 86.7% 62.5% 61.9% 51.14% 78.26% 58.69% Hệ thống cho phép phát biển báo góc độ nhỏ so với bề mặt biển báo khác với tỷ lệ xác ngày cải thiện, nhờ vào phương pháp học tăng cường, điều có nghĩa liệu tập huấn luyện ngày bổ sung, nên kết nhận dạng cải thiện rõ ràng sau nhiều lần huấn luyện tập huấn luyện nhiều đầy đủ Những hạn chế chương trình Demo: - Còn phụ thuộc vào điều kiện ánh sáng khác - Phụ thuộc vào góc chụp hình ảnh biển báo (q lớn hẹp Ví dụ biển báo bị nghiêng lớn bị ngã ) - Trạng thái biển báo (bị hỏng phần, bị móp méo, bị che khuất ) - Tốc độ phát nhận dạng chậm 24 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Đã làm Bước đầu xây dựng mô hình huấn luyện để phát nhận dạng đối tượng biển báo cách sử dụng thuật toán hỗ trợ việc phát nhận dạng biển báo bao gồm: Trích chọn đặc trưng Haar-like, tăng tốc Adaboost, phân tích thành phần PCA Sử dụng công cụ hỗ trợ OpenCV để tiến hành cài đặt thực nghiệm Xây dựng chương trình Demo Nhận diện biển báo giao thơng có khả phát nhận dạng biển báo giao thông hình ảnh Kết trình phụ thuộc nhiều vào trình thu thập liệu huấn luyện phát hiện, nhận dạng Sau thời gian ngắn nghiên cứu xử lý ảnh, học máy tìm hiểu số sở lý thuyết áp dụng vào nhận dạng biển báo giao thông đường Việt Nam Tuy nhiên đề tài khó, nước chưa có cơng trình nghiên cứu khẳng định vượt trội hiệu quả, thời gian thực ngắn nên đề tài dừng lại mức độ nghiên cứu, nhiều vấn đề cần giải Hướng phát triển - Cải tiến chất lượng huấn luyện phát ảnh biển báo - Mở rộng sở liệu biển báo giao thơng - Mở rộng nhận dạng nhóm biển báo nghiên cứu - Nâng cấp hoàn thiện khả hệ thống trở thành hệ thống nhận dạng đưa cảnh báo tức thời cho người tham gia giao thơng chương trình hồn chỉnh ... lệ nhận dạng Ý nghĩa khoa học thực tiễn đề tài Với đề tài Áp dụng học máy nhận dạng biển báo giao thơng”, mục tiêu xây dựng chương trình hỗ trợ lái xe hiệu áp dụng thực tế, đầu vào hình ảnh giao. .. liệu Biển báo giao thông Việt Nam chia thành nhóm: Nhóm biển dẫn, nhóm biển hiệu lệnh, nhóm biển báo cấm, nhóm biển báo nguy hiểm, nhóm biển phụ Trong ứng dụng Demo giới hạn thực phát nhận dạng. .. (Training) biển báo Kiểm tra (Check) biển báo học 20 Hình 3.17: Huấn luyện biển báo Cấm ô tô xe máy Hình 3.18: Kiểm tra nhận dạng biển báo Cấm ô tô xe máy 21 Hình 3.21: Huấn luyện biển báo tín