Khóa luận Xây dựng ứng dụng nhận dạng biển báo giao thông trên thiết bị di động

Ngày nay với các tiến bộ của khoa học kỹ thuật thì mọi công việc hầu nhƣ đều có thể tiến hành trên máy tính một cách tự động hóa hoàn toàn hoặc một phần. Một trong những sự thay đổi lớn đó là cách thức chúng ta thu nhận và xử lý dữ liệu. Các công cụ nhập liệu nhƣ bàn phím hay máy scan dần bị thay thế bằng các thiết bị tiện lợi hơn nhƣ màn hình cảm ứng, camera Hơn thế nữa, các máy tính để bàn không còn là công cụ duy nhất có thể hỗ trợ cho con ngƣời. Chúng ta bƣớc sang thế kỷ 21 với sự phát triển mạnh mẽ của các thiết bị di động, giải trí cầm tay hay smartphone. Với kích thƣớc ngày càng nhỏ gọn và hiệu suất làm việc thì không ngừng đƣợc cải tiến, các công cụ mini này hứa hẹn sẽ là một phần không thể thiếu trong xã hội hiện đại. Và do đó, phát triển các ứng dụng trên các thiết bị này cũng là một xu thế tất yếu. Công nghệ nhận dạng là một trong các công nghệ đang đƣợc áp dụng cho các thiết bị di động hiện nay. Nhận dạng có thể bao gồm nhận dạng âm thanh, hình ảnh. Các đối tƣợng nhận dạng có nhiều kiểu nhƣ tiếng nói, chữ viết, khuôn mặt, mã vạch và biển báo giao thông cùng là một trong số đó. Chƣơng trình nhận dạng biển báo giao thông thƣờng phức tạp và đƣợc cài đặt trên những hệ thống có bộ xử lý lớn, camera chất lƣợng cao. Mục tiêu của khóa luận là cải tiến công nghệ nhận dạng này và mang nó cài đặt trên các thiết bị di động, giúp chúng ta phát hiện biển báo và nhận dạng nó một cách nhanh nhất. Khóa luận “Xây dựng ứng dụng nhận dạng biển báo giao thông trên thiết bị di động” bao gồm tất cả 4 chƣơng. Chƣơng I - Giới thiệu: Giới thiệu khái quát về khóa luận và mục đích của khóa luận. Chƣơng II - Nền tảng và công nghệ: Giới thiệu đầy đủ về các kiến thức nền tảng cũng nhƣ công nghệ và phần mềm đƣợc sử dụng trong khóa luận bao gồm kiến thức về xử lý ảnh, lý thuyết mạng noron, môi trƣờng hệ điều hành dành cho di động Android, thƣ viện xử lý ảnh OpenCV

pdf101 trang | Chia sẻ: lvbuiluyen | Lượt xem: 3017 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Khóa luận Xây dựng ứng dụng nhận dạng biển báo giao thông trên thiết bị di động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG NHẬN DẠNG BIỂN BÁO GIAO THÔNG TRÊN THIẾT BỊ DI ĐỘNG Giáo viên hƣớng dẫn: ThS. PHAN NGUYỆT MINH Sinh viên thực hiện: NGUYỄN BÁ CHUNG - 07520031 ĐỖ TRƢỜNG GIANG – 07520094 Lớp: CNPM02 Khóa: 02 TP. Hồ Chí Minh, tháng 2 năm 2012 GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang MỞ ĐẦU Ngày nay với các tiến bộ của khoa học kỹ thuật thì mọi công việc hầu nhƣ đều có thể tiến hành trên máy tính một cách tự động hóa hoàn toàn hoặc một phần. Một trong những sự thay đổi lớn đó là cách thức chúng ta thu nhận và xử lý dữ liệu. Các công cụ nhập liệu nhƣ bàn phím hay máy scan dần bị thay thế bằng các thiết bị tiện lợi hơn nhƣ màn hình cảm ứng, camera… Hơn thế nữa, các máy tính để bàn không còn là công cụ duy nhất có thể hỗ trợ cho con ngƣời. Chúng ta bƣớc sang thế kỷ 21 với sự phát triển mạnh mẽ của các thiết bị di động, giải trí cầm tay hay smartphone. Với kích thƣớc ngày càng nhỏ gọn và hiệu suất làm việc thì không ngừng đƣợc cải tiến, các công cụ mini này hứa hẹn sẽ là một phần không thể thiếu trong xã hội hiện đại. Và do đó, phát triển các ứng dụng trên các thiết bị này cũng là một xu thế tất yếu. Công nghệ nhận dạng là một trong các công nghệ đang đƣợc áp dụng cho các thiết bị di động hiện nay. Nhận dạng có thể bao gồm nhận dạng âm thanh, hình ảnh. Các đối tƣợng nhận dạng có nhiều kiểu nhƣ tiếng nói, chữ viết, khuôn mặt, mã vạch … và biển báo giao thông cùng là một trong số đó. Chƣơng trình nhận dạng biển báo giao thông thƣờng phức tạp và đƣợc cài đặt trên những hệ thống có bộ xử lý lớn, camera chất lƣợng cao. Mục tiêu của khóa luận là cải tiến công nghệ nhận dạng này và mang nó cài đặt trên các thiết bị di động, giúp chúng ta phát hiện biển báo và nhận dạng nó một cách nhanh nhất. Khóa luận “Xây dựng ứng dụng nhận dạng biển báo giao thông trên thiết bị di động” bao gồm tất cả 4 chƣơng. Chƣơng I - Giới thiệu: Giới thiệu khái quát về khóa luận và mục đích của khóa luận. Chƣơng II - Nền tảng và công nghệ: Giới thiệu đầy đủ về các kiến thức nền tảng cũng nhƣ công nghệ và phần mềm đƣợc sử dụng trong khóa luận bao gồm kiến thức về xử lý ảnh, lý thuyết mạng noron, môi trƣờng hệ điều hành dành cho di động Android, thƣ viện xử lý ảnh OpenCV. GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang Chƣơng III - Xây dựng ứng dụng nhận dạng biển báo giao thông: Trình bày mô hình giải quyết bài toán nhận dạng trên thiết bị di động, các sơ đồ chức năng và thiết kế giao diện của chƣơng trình. Chƣơng IV - Đánh giá kết quả và kết luận: Tổng kết quá trình thực hiện khóa luận và rút ra hƣớng phát triển sau này. GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang LỜI CẢM ƠN Trong suốt thời gian thực hiện khóa luận tốt nghiệp, chúng em đã nhận đƣợc sự giúp đỡ, chỉ bảo tận tình của các thầy cô Trƣờng ĐH CNTT – ĐHQGTPHCM. Chúngem xin gửi lời cảm ơn sâu sắc đến quý thầy cô. Đặc biệt xin chân thành cảm ơn cô Phan Nguyệt Minh – ngƣời đã trực tiếp hƣớng dẫn và tạo mọi điều kiện thuận lợi giúp đỡ chúng em hoàn thành khóa luận này. Chúng em cũng xin cảm ơn chân thành tới gia đình và bạn bè, công ty đã tạo điều kiện, giúp đỡ và động viên chúng em hoàn thành khóa luận đúng thời hạn. Mặc dù đã cố gắng hết khả năng nhƣng khóa luận không thể nào tránh khỏi những thiếu xót. Rất mong nhận đƣợc sự góp ý quý báu của quý thầy cô để khóa luận có thể hoàn chỉnh hơn. Nhóm sinh viên thực hiện Nguyễn Bá Chung – Đỗ Trƣờng Giang Tháng 2 – 2012 GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang NHẬN XÉT (Của giảng viên hƣớng dẫn) ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang NHẬN XÉT (Của giảng viên phản biện) ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... ..................................................................................................................... GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang MỤC LỤC MỞ ĐẦU .................................................................................................................. 2 LỜI CẢM ƠN ........................................................................................................... 4 NHẬN XÉT .............................................................................................................. 5 NHẬN XÉT .............................................................................................................. 6 MỤC LỤC ................................................................................................................ 7 DANH MỤC BẢNG BIỂU ...................................................................................... 9 DANH MỤC HÌNH VẼ .......................................................................................... 10 CHƢƠNG 1 : GIỚI THIỆU ................................................................................... 1 1.1 Giới Thiệu Đề Tài .......................................................................................... 1 1.2 Mục Tiêu Của Đề Tài .................................................................................... 3 CHƢƠNG 2 : NỀN TẢNG VÀ CÔNG NGHỆ ...................................................... 4 2.1 Lý Thuyết Xử Lý Ảnh ................................................................................... 4 2.1.1 Tổng quan về xử lý ảnh ....................................................................... 4 2.1.2 Một số phƣơng pháp biểu diễn ảnh ..................................................... 6 2.1.3 Phƣơng pháp phát hiện biên ảnh ......................................................... 8 2.1.4 Phân vùng ảnh ................................................................................... 12 2.1.5 Nhận dạng ảnh .................................................................................. 17 2.2 Lý Thuyết Mạng Nơron .............................................................................. 18 2.2.1 Tổng quan về mạng nơron ................................................................ 18 2.2.2 Các thành phần cơ bản của mạng nơron nhân tạo ............................ 18 2.2.3 Mạng truyền thẳng và thuật toán lan truyền ngƣợc .......................... 26 2.3 Nền Tảng Android ....................................................................................... 31 2.3.1 Sự phát triển của Android ................................................................. 31 2.3.2 Những đặc điểm khác biệt của Android............................................ 33 2.3.3 Máy ảo Dalvik ................................................................................... 34 2.3.4 Kiến trúc của Android ....................................................................... 34 2.3.5 Các thành phần trong một dự án ứng dụng Android ........................ 37 2.4 Thƣ Viện Xử Lý Ảnh OpenCv ................................................................... 40 2.4.1 Vài nét về Computer Vision ............................................................. 40 2.4.2 Một số thƣ viện xử lý ảnh tiêu biểu .................................................. 41 2.4.3 Thƣ viện OpenCV ............................................................................. 43 CHƢƠNG 3 : ỨNG DỤNG NHẬN DẠNG BIỂN BÁO GIAO THÔNG ........... 47 3.1 Mô Tả Bài Toán ........................................................................................... 47 GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang 3.1.1 Đặt vấn đề ......................................................................................... 47 3.1.2 Đối tƣợng của bài toán ...................................................................... 48 3.2 Mô Hình Giải Quyết Bài Toán ................................................................... 52 3.2.1 Mô hình tổng quát ............................................................................. 52 3.2.2 Thu nhận hình ảnh (Capture Image) ................................................. 53 3.2.3 Phát hiện biển báo và trích xuất vùng đặc trƣng ............................... 54 3.2.4 Xử lý trƣớc khi nhận dạng (Pre-recognized) .................................... 62 3.2.5 Quá trình nhận dạng (Recognized) ................................................... 63 3.3 Thiết Kế Chƣơng Trình .............................................................................. 66 3.3.1 Yêu cầu phần mềm ............................................................................ 66 3.3.2 Thiết kế Use-Case ............................................................................. 69 3.3.3 Thiết kế sơ đồ lớp (mức phân tích) ................................................... 74 3.3.4 Thiết kế dữ liệu ................................................................................. 81 3.3.5 Thiết kế giao diện .............................................................................. 82 3.4 Thực Nghiệm ............................................................................................... 87 CHƢƠNG 4 : ĐÁNH GIÁ KẾT QUẢ VÀ KẾT LUẬN ...................................... 88 4.1 Đánh Giá Luận Văn .................................................................................... 88 4.2 Đánh Giá Chƣơng Trình ............................................................................ 88 4.2.1 Kết quả đạt đƣợc ............................................................................... 88 4.2.2 Các hạn chế ....................................................................................... 88 4.3 Hƣớng Phát Triển ....................................................................................... 89 4.4 Kết Luận ....................................................................................................... 89 TÀI LIỆU THAM KHẢO ....................................................................................... 90 GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang DANH MỤC BẢNG BIỂU Bảng 3.1 – Danh sách yêu cầu chức năng ......................................................... 66 Bảng 3.2 – Danh sách yêu cầu hiệu quả ............................................................ 67 Bảng 3.3 – Danh sách yêu cầu tiện dụng .......................................................... 68 Bảng 3.4 – Danh sách yêu cầu tiến hóa ............................................................. 68 Bảng 3.5 – Danh sách các Actor ....................................................................... 69 Bảng 3.6 – Danh sách các Use-Case ................................................................. 70 Bảng 3.7 – Danh sách các lớp đối tƣợng quan hệ ............................................. 75 Bảng 3.8 – Danh sách thuộc tính lớp Input ....................................................... 75 Bảng 3.9 – Danh sách thuộc tính lớp Hidden .................................................... 76 Bảng 3.10 – Danh sách thuộc tính lớp Output .................................................. 76 Bảng 3.11 – Danh sách phƣơng thức lớp IbackPropagation ...................... 77 Bảng 3.12 – Danh sách thuộc tính lớp MLP .............................................. 78 Bảng 3.13 – Danh sách phƣơng thức lớp MLP .......................................... 78 Bảng 3.14 – Danh sách thuộc tính lớp CaptureObjectLayer ............................. 78 Bảng 3.15 – Danh sách phƣơng thức lớp CaptureObjectLayer ........................ 79 Bảng 3.16 – Danh sách thuộc tính lớp DetectObjectLayer ............................... 79 Bảng 3.17 – Danh sách phƣơng thức lớp DetectObjectLayer ........................... 80 Bảng 3.18 – Danh sách thuộc tính lớp NeuralNetwork.............................. 80 Bảng 3.19 – Danh sách phƣơng thức lớp NeuralNetwork ......................... 80 Bảng 3.20 – Danh sách màn hình ...................................................................... 82 Bảng 3.21 – Chi tiết màn hình chính ................................................................. 83 Bảng 3.22 – Chi tiết màn hình phát hiện biển báo bằng tay ............................. 84 Bảng 3.23 – Chi tiết màn hình phát hiện biển báo tự động ............................... 85 Bảng 3.24 – Chi tiết màn hình kết quả detect ................................................... 86 Bảng 3.25 – Chi tiết màn hình kết quả nhận dạng ............................................ 86 Bảng 3.26 – Bảng kết quả thực nghiệm ............................................................ 87 GVHD: ThS. Phan Nguyệt Minh SVTH: Nguyễn Bá Chung Đỗ Trƣờng Giang DANH MỤC HÌNH VẼ Hình 1.1 – Một số thiết bị hay đƣợc sử dụng trong nhận dạng ................................... 1 Hình 1.2 – Smartphone đang là xu hƣớng phát triển mới trong giai đoạn này ........... 2 Hình 1.3 – Những nền tảng sẽ sử dụng trong khóa luận ............................................. 3 Hình 2.1 – Các bƣớc cơ bản trong xử lý ảnh .....................................