Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 96 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
96
Dung lượng
6,68 MB
Nội dung
TRƢỜNG ĐẠI HỌC LẠC HỒNG KHOA CÔNG NGHỆ THÔNG TIN ---------- BÁOCÁONGHIÊNCỨUKHOAHỌC ĐỀ TÀI: XÂYDỰNG CHƢƠNG TRÌNHPHÁTHIỆNVÀNHẬNDẠNGMỘTSỐBIỂNBÁOGIAOTHÔNG ĐƢỜNG BỘNGUYHIỂMTẠIVIỆTNAM LÊ CHÂN THIỆN TÂM PHẠM HỒNG THÁI BIÊN HÒA, THÁNG 11/2012 TRƢỜNG ĐẠI HỌC LẠC HỒNG KHOA CÔNG NGHỆ THÔNG TIN ---------- BÁOCÁONGHIÊNCỨUKHOAHỌC ĐỀ TÀI: XÂYDỰNG CHƢƠNG TRÌNHPHÁTHIỆNVÀNHẬNDẠNGMỘTSỐBIỂNBÁOGIAOTHÔNG ĐƢỜNG BỘNGUYHIỂMTẠIVIỆTNAM SVTH : LÊ CHÂN THIỆN TÂM PHẠM HỒNG THÁI GVHD : ThS. TRẦN TIẾN ĐỨC BIÊN HÒA, THÁNG 11/2012 LỜI CÁM ƠN Để hoàn thành đề tài này và có kiến thức như ngày hôm nay, đầu tiên chúng em xin gửi lời cảm ơn đến Ban Giám Hiệu cùng toàn thể Thầy Cô Khoa Công Nghệ Thông Tin – Trường Đại Học Lạc Hồng đã tận tình giảng dạy, truyền đạt kiến thức cũng như những kinh nghiệm quý báu cho chúng em trong suốt quá trìnhhọc tập tại trường. Chúng em xin gửi những lời tri ân sâu sắc nhất đến thầy Ths Trần Tiến Đức, người thầy đã tận tình hướng dẫn và quan tâm, động viên chúng em trong suốt quá trình thực hiện đề tài. Chúng em xin chân thành cảm ơn sự đóng góp ý kiến để góp phần hoàn thiện đề tài các từ thầy Ths Huỳnh Cao Tuấn, thầy Ths Phan Mạnh Thường, thầy Ths Nguyễn Phát Nhựt. Chúng em cũng vô cùng cảm ơn sự nhiệt tình của các nhóm bạn đã hỗ trợ cho nhóm nghiêncứu trong quá trình khảo sát thực tế, lấy mẫu thực nghiệm, đánh giá kết quả cũng như hỗ trợ các thiết bị cần thiết để nhóm có thể hoàn thành đề tài. Chúng em cũng bày tỏ lòng biết ơn đến những người thân trong gia đình đã động viênvà tạo mọi điều kiện giúp chúng em trong quá trìnhhọc tập cũng như trong cuộc sống. Mặc dù chúng em đã cố gắng hoàn thành tốt đề tài nhưng cũng không thể tránh khỏi những sai sót nhất định, rất mong được sự thông cảm và chia sẻ cùng quý Thầy Cô và bạn bè. Chúng em xin gửi lời chúc sức khỏe và thành đạt tới tất cả quý thầy cô cùng các bạn. Nhóm sinhviên thực hiện đề tài Lê Chân Thiện Tâm – Phạm Hồng Thái Biên Hòa, Tháng 11 - 2012 NHẬN XÉT CỦA GIÁOVIÊN HƢỚNG DẪNPHẢN BIỆNBiên Hòa, Ngày … tháng … năm 201… Kí tên Formatted: Vietnamese MỤC LỤC ---------- Trang phụ bìa Lời cám ơn Mục lục Danh mục viết tắt Danh mục bảng và hình PHẦN MỞ ĐẦU 1 CHƢƠNG 1: TỔNG QUAN VỀ CÁC PHƢƠNG PHÁP PHÁTHIỆNBIỂNBÁOGIAOTHÔNGVÀ NỀN TẢNG OPENCV 9 1.1. Các phương pháp pháthiệnbiểnbáogiao thông. 10 1.1.1, Phương pháp pháthiện dựa trên màu sắc 10 1.1.2, Phương pháp pháthiện dựa trên hình dạng 11 1.1.3, Phương pháp pháthiện dựa trên máy học 14 1.2. Giới thiệu thư viện mã nguồn mở OpenCV . 14 1.2.1, Lịch sử OpenCV . 15 1.2.2, Kiến trúc của OpenCV . 16 1.3. Tiểu kết . 17 CHƢƠNG 2: GIỚI THIỆU PHƢƠNG PHÁP NHẬNDẠNGBIỂNBÁOGIAOTHÔNG 18 2.1. Khái quát phương pháp nhậndạngbiểnbáogiaothông sử dụng trong đề tài. 19 2.2. Xác định vùng đặc trưng chứa biểnbáogiaothông . 20 2.2.1, Đặc trưng Haar-like 20 2.2.2, Thuật toán tăng tốc Adaboost . 22 2.2.2.1, Tiếp cận Boosting 22 2.2.2.2, AdaBoost . 23 2.3. Giới thiệu phương pháp phân tích thành phần chính (Principle Component Analysis_PCA). . 25 2.3.1, Giới thiệu 25 2.3.2, Thuật toán PCA 27 2.4. Nhậndạngbiểnbáodùngbộ phân lớp Support Vector Machine (SVM) 30 2.4.1, Phân lớp tuyến tính (Linear classifier) . 30 2.4.2, Phân lớp phi tuyến (Nonlinear classifier) 34 2.5. Tiểu kết . 35 CHƢƠNG 3: THIẾT KẾ VÀXÂYDỰNG CHƢƠNG TRÌNH . 36 3.1. Chức năng của chươngtrình . 37 3.2. Xâydựngchươngtrình . 37 3.2.1, Xâydựng cơ sở dữ liệu ảnh biểnbáo . 37 3.2.1.1, Nguồn ảnh . 37 3.2.1.2, Phân loại ảnh . 38 3.2.2, Huấn luyện pháthiệnbiểnbáo trong ảnh 39 3.2.2.1, Chuẩn bị dữ liệu 39 3.2.2.2, Lấy mẫu dữ liệu huấn luyện 40 3.2.2.3, Huấn luyện máy học (Machine Learning) 42 3.2.3, Huấn luyện nhậndạngbiểnbáo . 47 3.2.4, Chươngtrìnhnhận dạng. 5251 3.2.4.1, Sơ đồ hoạt động của chươngtrình 5251 3.2.4.2, Giao diện và cách sử dụng 5453 3.3. Tiểu kết . 5655 CHƢƠNG 4: ĐÁNH GIÁ KẾT QUẢ CHƢƠNG TRÌNH 5756 4.1. Đánh giá kết quả. 5857 4.1.1, Các môi trường thử nghiệm đánh giá . 5857 4.1.2, Đánh giá các sai số . 6564 4.2. Ưu và nhược điểm của chươngtrình 6665 4.2.1, Ưu điểm 6665 4.2.2, Nhược điểm 6665 4.3. Tiểu kết . 6766 PHẦN KẾT LUẬN 6867 TÀI LIỆU THAM KHẢO DANH MỤC VIẾT TẮT ---------- Từ viết tắt Từ đầy đủ AVI Audio Video Interleave BMP Bitmap Portable CPU Central Processing Unit GB Gigabyte HSI Hue – Saturation – Intensity IPP Intergrated Performance Primitives JPG Joint Photographic Experts Group MB Megabyte ML Machine Learning OpenCV Open Computer Vision ORC Optical Character Recognition PCA Principle Components Analysis PGM Portable Graymap RGB Red – Green – Blue SVM Support Vector Machine DANH MỤC BẢNG VÀ HÌNH ---------- DANH MỤC HÌNH Hình 1. Mô hình xử lý nhậndạngbiểnbáogiaothông của bài báo “A Road Sign Recognition System Based on Dynamic Visual Model” [10] . 3 Hình 2. Mô hình xử lý nhậndạngbiểnbáogiaothông của bài báo “A System for Traffic Sign Detection, Tracking, and Recognition Using Color, Shape, and Motion Information” [8]. . 4 Hình 3. Mô hình pháthiệnbiểnbáogiaothông của bài báo “Color-Based Road Sign Detection and Tracking” [14]. 4 Hình 4. Mô hình tác giả đề nghị [5]. . 5 Hình 5. Tổng quan thuật toán [2]. . 6 Hình 1. 1. Các vị trí của một đề cử điểm ảnh cho tâm đối tượng [13]. 11 Hình 1. 2. Nhân các góc gradient của một tam giác cho 3. 12 Hình 1. 3. Vùng kiểm soát. . 13 Hình 1. 4. Xâydựng ảnh biến đổi khoảng cách [9]. . 14 Hình 1. 5. Lịch sử phát triển của OpenCV [12, Trang 7]. 16 Hình 1. 6. Kiến trúc cơ bản của OpenCV [12, Trang 13]. 17 Hình 2. 1. Đặc trưng theo cạnh . 20 Hình 2. 2. Đặc trưng theo đường 20 Hình 2. 3. Đặc trưng theo xung quanh tâm . 20 Hình 2. 4. Đặc trưng theo đường chéo 20 Hình 2. 5. Cách tính Integral Image của ảnh 21 Hình 2. 6. Cách tính tổng giá trị pixel vùng cần tính. . 22 Hình 2. 7. Boosting[ 3, Trang 16 ]. . 23 Hình 2. 8. Phép chiếu lên các trục tọa độ khác nhau có thể cho cách nhìn khác nhau về cùng một dữ liệu. . 26 Hình 2. 9. Tìm các trục tọa độ mới sao cho dữ liệu có độ biến thiên cao nhất . 26 Hình 2. 10. Tách hai phân lớp tuyến tính với một mặt siêu phẳng. 31 Hình 2. 11. Tách hai phân lớp tuyến tính với hai mặt siêu phẳng 31 Hình 2. 12. Ví dụ minh họa về độ lớn của lề (margin) . 32 Hình 2. 13. Minh họa các mẫu được gọi là Support Vector. 34 Hình 2. 14. Một mặt phân chia phi tuyến có thể trở thành một siêu phẳng trong không gian lớn hơn . 34 Hình 3. 1. Tập ảnh Positive trong thư mục “rawdata” 39 Hình 3. 2. Tập ảnh Negative trong thư mục “negative” . 40 Hình 3. 3. Nội dung file “inforfile.txt” sau khi chạy file “create_list.bat” . 40 Hình 3. 4. Chươngtrình ObjectMaker trong thư mục “positive”. 41 Hình 3. 5. Đánh dấu đối tượng trong trình ObjectMaker . 41 Hình 3. 6. Nội dung file “info.txt”. . 42 Hình 3. 7. Nội dung file “samples_creation.bat” 42 Hình 3. 8. Nội dung file “haarTraining.bat” . 43 Hình 3. 9. Kết quả phân tầng 44 Hình 3. 10. Nội dung file “convert.bat” 45 Hình 3. 11. Cấu trúc của một tập tin XML . 45 Hình 3. 12. Kết quả ảnh biểnsố 201a nhận được. 46 Hình 3. 13. Kết quả ảnh biểnsố 210 nhận được. 46 Hình 3. 16. Một phần nội dung file “psiTT.txt”. 50 Hình 3. 17. Một phần nội dung file “svmtrained.xml” . 50
Hình 1.
Mô hình xử lý nhận dạng biển báo giao thông của bài báo “A Road Sign (Trang 15)
Hình 2.
Mô hình xử lý nhận dạng biển báo giao thông của bài báo “A System for (Trang 16)
Hình 4.
Mô hình tác giả đề nghị [5] (Trang 17)
to
án được tác giả trình bày như theo hình 5. Kết quả của đề tài dừng lại ở việc xác (Trang 18)
t
ừ khi dự án đầu tiên vào năm 1999 (Hình 1.5) thì đến nay thư viện OpenCV là một lĩnh vực tích cực quan trọng của một số tổ chức phát triển cũng như thu hút trên 20.000 thành viên sử dụng trên khắp thế giới , do đó OpenCV được mong đợi có sẽ (Trang 28)
Hình 1.6.
Kiến trúc cơ bản của OpenCV [12, Trang 13] (Trang 29)
Hình 2.
7. Boosting[ 3, Trang 16 ]. 2.2.2.2, AdaBoost (Trang 35)
Hình 2.
13. Minh họa các mẫu được gọi là Support Vector. 2.4.2, Phân lớp phi tuyến (Nonlinear classifier) (Trang 46)
Hình 3.1.
Tập ảnh Positive trong thư mục “rawdata” (Trang 51)
Hình 3.2.
Tập ảnh Negative trong thư mục “negative” (Trang 52)
Hình 3.
4. Chương trình ObjectMaker trong thư mục “positive” (Trang 53)
Hình 3.
5. Đánh dấu đối tượng trong trình ObjectMaker (Trang 53)
u
á trình huấn luyện này, với cấu hình máy tính được nhóm sử dụng là: (Trang 56)
Hình 3.
15. Một số mẫu huấn luyện nhận dạng (Trang 60)
Hình 3.
16. Một phần nội dung file “eigenTT.txt” (Trang 61)
Hình 3.
17. Một phần nội dung file “psiTT.txt” (Trang 62)
Hình 3.
18. Một phần nội dung file “svmtrained.xml” (Trang 62)
Hình 3.19.
Giao diện chọn ảnh (Trang 67)
Hình 3.20.
Giao diện chọn video clip (Trang 67)
Hình 4.1.
Một số kết quả thử nghiệm trong môi trường chuẩn (Trang 70)
Hình 4.
5. Kết quả thử nghiệm với biển bị bong tróc sơn (Trang 73)
Hình 4.
4. Kết quả thử nghiệm biển bị che khuất bởi cây (Trang 73)
Hình 4.
7. Kết quả thử nghiệm với biển cũ bị phai màu (Trang 74)
Hình 4.
8. Kết quả thử nghiệm với ảnh bị các tờ quảng cáo dán lên (Trang 75)
Hình 4.
9. Kết quả thử nghiệm với biển báo nghiêng bên phải trên ảnh tĩnh (Trang 75)
Hình 4.
10. Kết quả thử nghiệm với biển báo bị nghiêng bên trái trên ảnh tĩnh (Trang 76)
Hình 4.
11. Khoảng cách từ lúc nhận dạng đến biển báo (Trang 76)
Bảng 4.1.
Kết quả nhận dạng biển báo giao thông Biển (Trang 77)
c
ảm biến hình ảnh (CCD) (Trang 92)