1. Trang chủ
  2. » Luận Văn - Báo Cáo

nhận dạng biển số xe máy trên kit friendly arm tiny210 vơi hệ điều hành android

91 887 3

Đ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 91
Dung lượng 2,75 MB

Nội dung

HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA KỸ THUẬT MÁY TÍNH ĐẶNG VĂN HÙNG – 10520070 NGÔ THANH TUẤN – 10520456 KHÓA LUẬN TỐT NGHIỆP NHẬN DẠNG BIỂN SỐ XE MÁY TRÊN KIT FRIEND

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KỸ THUẬT MÁY TÍNH

ĐẶNG VĂN HÙNG – 10520070

NGÔ THANH TUẤN – 10520456

KHÓA LUẬN TỐT NGHIỆP

NHẬN DẠNG BIỂN SỐ XE MÁY TRÊN KIT FRIENDLY

ARM TINY210 VƠI HỆ ĐIỀU HÀNH ANDROID

KỸ SƯ KỸ THUẬT MÁY TÍNH

GIẢNG VIÊN HƯỚNG DẪN THS LÊ HOÀI NGHĨA

Trang 2

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KỸ THUẬT MÁY TÍNH

ĐẶNG VĂN HÙNG – 10520070

NGÔ THANH TUẤN - 10520456

KHÓA LUẬN TỐT NGHIỆP

NHẬN DẠNG BIỂN SỐ XE MÁY TRÊN KIT FRIENDLY

ARM TINY210 VƠI HỆ ĐIỀU HÀNH ANDROID

KỸ SƯ KỸ THUẬT MÁY TÍNH

GIẢNG VIÊN HƯỚNG DẪN THS LÊ HOÀI NGHĨA

Trang 3

DANH SÁCH HỘI ĐỒNG BẢO VỆ KHÓA LUẬN

Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……… ngày ……… của Hiệu trưởng Trường Đại học Công nghệ Thông tin

1 ……… – Chủ tịch

2 ……… – Thư ký

3 ……… – Ủy viên

4 ……… – Ủy viên

Trang 4

NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC

CÔNG NGHỆ THÔNG TIN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc Lập - Tự Do - Hạnh Phúc

TP HCM, ngày… tháng… năm……

NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP

Tên khóa luận:

NHẬN DẠNG BIỂN SỐ XE MÁY TRÊN KIT FRIENDLY ARM TINY210

VƠI HỆ ĐIỀU HÀNH ANDROID Nhóm SV thực hiện: Cán bộ hướng dẫn/phản biện:

Đặng Văn Hùng 10520070 Ths Lê Hoài Nghĩa

Ngô Thanh Tuấn 10520456

Đánh giá Khóa luận

1 Về cuốn báo cáo:

Số trang _ Số chương _

Số bảng số liệu _ Số hình vẽ _

Số tài liệu tham khảo _ Sản phẩm _

Một số nhận xét về hình thức cuốn báo cáo:

Trang 5

2 Về nội dung nghiên cứu:

Trang 6

NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC

CÔNG NGHỆ THÔNG TIN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc Lập - Tự Do - Hạnh Phúc

TP HCM, ngày… tháng… năm……

NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP

Tên khóa luận:

NHẬN DẠNG BIỂN SỐ XE MÁY TRÊN KIT FRIENDLY ARM TINY210

VƠI HỆ ĐIỀU HÀNH ANDROID Nhóm SV thực hiện: Cán bộ hướng dẫn/phản biện:

Đặng Văn Hùng 10520070 Ths Lê Hoài Nghĩa

Ngô Thanh Tuấn 10520456

Đánh giá Khóa luận

1 Về cuốn báo cáo:

Số trang _ Số chương _

Số bảng số liệu _ Số hình vẽ _

Số tài liệu tham khảo _ Sản phẩm _

Một số nhận xét về hình thức cuốn báo cáo:

Trang 7

2 Về nội dung nghiên cứu:

Trang 8

Chúng em xin cảm ơn khoa Kỹ Thuật Máy Tính trường Đại Học Công Nghệ Thông Tin – ĐHQGTPHCM, cảm ơn các thầy cô trong khoa đã tận tình giảng dạy, truyền đạt kiến thức quý báu trong những năm học vừa qua, giúp chúng em có một nền tảng kiến thức vững chắc để thực hiện khóa luận cũng như nghiên cứu học tập sau này

TP Hồ Chí Minh, tháng 12 năm 2014

Đặng Văn Hùng Ngô Thanh Tuấn

Trang 9

Mục lục

CHƯƠNG 1 : MỞ ĐẦU 1

1.1 Tên khóa luận 1

1.2 Lí Do Và Mục Đích Chọn Đề Tài 1

1.3 Đối Tượng Và Phạm Vi Nghiên Cứu 2

CHƯƠNG 2:TỔNG QUAN VỀ ĐỀ TÀI 3

Lịch Sử Phát Triển 3

2.1 Trên Thế Giới 3

2.2 Trong nước 5

2.3 Tổng kết chương 8

2.4 CHƯƠNG 3 : XÂY DỰNG HỆ ĐIỀU HÀNH ANDROID TRÊN KIT FRIENDLY ARM 10

3.1 Giới thiệu KIT Friendly Arm Tiny 210 10

3.2 Hệ điều hành nhúng Linux 12

3.3 Cài đặt Android trên KIT Friendly Arm Tiny210 V2 15

3.3.1 Sơ lược hệ điều hành Android 15

3.3.2 Tải Superboot vào SD Card 17

3.3.3 Restore TF Card 23

3.3.4 Cấu hình file FriendlyARM.ini 24

CHƯƠNG 4: HỆ THỐNG NHẬN DIỆN BIỂN SỐ VÀ THÔNG TIN NGƯỜI DÙNG TRÊN ANDROID 28

4.1 Phát Hiện Và Định Vị Vùng Chứa Biển Số Xe 28

4.1.1 Đặc Trưng Haar Like 28

4.1.2 Thuật toán AdaBoost 31

Trang 10

4.1.3 Mô hình phân tầng Cascade 32

4.1.4 Hệ thống xác định vùng chứa biển số xe 34

4.1.5 Huấn luyện bộ phân loại 35

4.2 Tách Ký Tự 39

4.2.1 Tiền Xử Lý Vùng Ảnh Chứa Biển Số 40

4.2.2 Xác Định Ngưởng, Nhị phân hóa ảnh 41

4.2.3 Tách kí tự dựa trên đặc tính hình thái học 43

4.3 Nhận Dạng Ký Tự 45

4.3.1 Lịch sử phát triển mạng neural 45

4.3.2 Sơ lược về neural sinh học 48

4.3.3 So sánh mạng neural với máy tính truyền thống 50

4.3.4 Mạng Neural Nhân Tạo 50

4.3.5 Mạng neural Kohonen 55

4.3.6 Huấn Luyện Nhận Dạng Ký Tự 60

CHƯƠNG 5 : HIỆN THỰC HỆ THỐNG TRÊN KIT FRIENDLY ARM 64

5.1 Tính năng của ứng dụng 64

5.2 Cấu trúc ứng dụng 65

5.2.1 Phần Java Error! Bookmark not defined. 5.2.2 Phần thư viện 66

5.2.3 Phần máy chủ - web service Error! Bookmark not defined. 5.3 Các lớp trong ứng dụng 66 5.4 Chương trình huấn luyện mạng Kohonen Error! Bookmark not defined.

5.5 Hiệu chỉnh két quả dựa trên cú pháp Error! Bookmark not defined.

Trang 11

5.7 Tổng kết chương 71

CHƯƠNG 6 : TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN KHÓA LUẬN 73

6.1 Tổng kết 73

6.2 Những kết quả đạt được 73

6.3 Hướng phát triển 74

TÀI LIỆU THAM KHẢO 75

Trang 12

Danh mục hình ảnh

Hình 2.1 Cụm Closed-circuit television cameras dùng cho hệ thống nhận diện biển

số cố định ở úc 4

Hình 2.2 Hệ thống nhận dạng trên xe tuần tra New South Wales Police Force Highway Patrol 4

Hình 2.3 Hệ Thống Nhận Diện Biển Số Xe Được Trang Bị Cho Xe Cảnh Sát Ở Hoa Kỳ 5

Hình 2.4 Ứng dụng nhận dạng của Biển Bạc ANPR 6

Hình 2.5 Ứng dụng nhận dạng trên máy bắn tốc độ 7

Hình 2.6 Giao diện của ứng dụng MT-BSX 8

Hình 3.1 : KIT Friendly Arm Tiny210 11

Hình 3.2 : Quá trình boot hệ thống linux trên PC 14

Hình 3.3 : Quá trình boot hệ thống Linux nhúng 15

Hình 3.4 : File SD-Flasher.exe 17

Hình 3.5 : Hộp thoại “Select your Machine” 18

Hình 3.6 : Giao diện của SD-Flasher.exe 18

Hình 3.7 : Đường dẫn file superboot 19

Hình 3.8 : Trạng thái Available “No” 20

Hình 3.9 : Relayout 20

Hình 3.10 : Scan Card 21

Hình 3.11 : Fuse superboot 22

Hình 3.12 : Restore TF Card 23

Hình 3.13 : Restore hoàn thành 24

Hình 3.14 : Chi tiết file FriendlyARM.ini 25

Hình 4.1 : Đặc trưng haar like cơ bản 29

Hình 4.2 Đặc Trưng haar like, đặc trưng cạnh 29

Hình 4.3 Đặc Trưng Haar like, đặc trưng đường 29

Hình 4.4 Đặc trưng Haar like, đặc trưng xung quanh tâm 29

Hình 4.5 Tính giá trị ảnh tích phân tại điểm có tọa độ (x, y) 30

Hình 4.6 Ví dụ cách tính nhanh các giá trị mức xám của vùng D trên ảnh 30

Hình 4.7: Mô hình phân tầng kết hợp các bộ phân loại yếu để xác định biển số 33

Hình 4.8 Kết hợp các bộ phận phân loại yếu thành bộ phân loại mạnh 34

Hình 4.9 Hệ thống xác định vùng chứa biển số xe 34

Hình 4.10: File miêu tả mẫu negative 36

Hình 4.11: File miêu tả mẫu positive 37

Hình 4.12: Cú pháp tạo file vector plate_vector.vec 37

Trang 13

Hình 4.10 Chuyển ảnh màu sang ảnh trắng đen 41

Hình 4.11 Tăng tính tương phản bằng phương pháp lọc trung vị 41

Hình 4.12 Cách xác định ngưỡng động 42

Hình 4.13 Nhị phân hóa ảnh bằng phương pháp tìm ngưỡng 43

Hình 4.14 Tìm Đường Viền Trong Ảnh 44

Hình 4.15 các ký tự đã được tách riêng rẽ 45

Hình 4.16 Dữ liệu ảnh ký tự thu được 45

Hình 4.17 Cấu trúc của một neural sinh học điển hình 49

Hình 4.18 Biểu diễn một neural nhân tạo 53

Hình 4.19 Một dạng mạng neural Kohonen 57

Hình 4.21 Sơ đồ khối biểu diễn huấn luyện mạng neural Kohonen 63

Hình 5.1 : Giao diện Login của ứng dụng 64

Hình 5.2 : Phát hiện vùng chứa biển số xe 65

Hình 5.3 : Trích xuất thông tin vùng miền và người dùng 65

Hình 5.4 Kiểm tra trạng thái kết nối của thiết bị 67

Hình 5.5: Sơ đồ lớp loginActivity và các lớp liên quan 67

Hình 5.6: Sơ đồ lớp MainActivity và các lớp liên quan 69

Hình 5.7: sơ đồ các lớp của mạng kohonen 70

Trang 14

DANH MỤC BẢNG

Bảng 3.1: Thông số kỹ thuật của KIT Friendly ARM Tiny210 12

Bảng 3.3: Kiến trúc hệ điều hành Linux 13

Bảng 3.4 : Giải thích các đối tƣợng trong file 27

Bảng 4.1 Mẫu đầu vào của mạng Kohonen 57

Bảng 4.2 Trọng số kết nối giữa các neuron trong mạng 57

Bảng 5.1: Kết quả thử nghiệm 1 71

Trang 15

CHƯƠNG 1 : MỞ ĐẦU

1.1 Tên khóa luận

Nghiên cứu xây dựng chương trình nhận dạng biển số xe trên KIT FRIENDLY TINY210

1.2 Lí Do Và Mục Đích Chọn Đề Tài

Ngày nay trên thế giới bên cạnh việc tăng trưởng kinh tế là sự phát triển của các ngành khoa học kỹ thuật nói chung, mà trong đó ngành công nghiệp sản xuất các phương tiện giao thông lại là một trong những ngành có tốc độ phát triển cực nhanh

Sự phát triển ấy, được thể hiện rõ ràng nhất thông qua hình ảnh các phương tiện giao thông trên thế giới ngày một tăng cao và đa dạng Tuy nhiên,điều đó lại gây ra một áp lực đối với những người và cơ quan các cấp quản lý,làm cho công tác quản

lý và giám sát sẽ khó khăn hơn, Và đây cũng là một trong những vấn nạn ở Việt Nam Công tác quản lý phương tiện giao thông nói chung và quản lý ôtô, xe máy là

vô cùng phức tạp cũng như công tác phát hiện, xử phạt các hành vi vi phạm giao thông, chống trộm, sẽ tốn nhiều thời gian và công sức hơn Để làm giảm lượng nhân lực trong việc công tác quản lý, kiểm soát phương tiện giao thông, trên thế giới đã nhanh chóng xây dựng hệ thống giám đối với các phương tiện giao thông Một yêu cầu đặt ra các hệ thống này phải tự động giám sát Một trong những hệ thống tự động như vậy là hệ thống tự động nhận dạng biển số xe, đặc trưng của nó là có khả năng thu nhận hình ảnh cũng như đọc và hiểu các biển số xe một cách tự động

Hệ thống như vậy có thể được sử dụng trong rất nhiều ứng dụng như trạm cân trạm kiểm tra an ninh của cơ quan hay trạm kiểm dịch của các xe chở thực phẩm khi vào trung tâm thành phố, các bãi giữ xe tự động, các hệ thống kiểm soát vi phạm giao thông hay trong các ứng dụng về an ninh như tìm kiếm xe mất cắp

Hiện nay với việc bùng nổ các thiết bị di dộng thông minh cũng như sức mạnh phần cứng hổ trợ trên nó và sự phổ cập của internet tốc độ cao tại việt nam (wifi miễn phí

đã có mặt trên 5 thành phố lớn của cả nước) Kit tiny friend arm là 1 kit nhúng được

Trang 16

hỗ trợ các đặc tính tương tự như một điện thoại thông minh, kit có khả năng chạy được 3 hệ điều hành WINCE, LINUX và android

Qua những tìm hiểu trên nhóm đã hướng tới nghiên cứu và phát triển phần mềm nhận dạng biển số xe trên KIT Friendly Arm Tiny210 với hệ điều hành Android

1.3 Đối Tượng Và Phạm Vi Nghiên Cứu

Việc nhận dạng kí tự trên thiết bị di động không phải mới, nhiều ứng dụng hoạt động rất tốt,có độ chính xác cao ở trong và ngoài nước Nhiều mã nguồn mở hỗ trợ mạnh mẽ trong việc xử lý hình ảnh cũng như nhận dạng Nhưng việc nhận dạng mới thực hiện trên văn bản, chưa xuất hiện nhận dạng trên biển số xe Đặc biệt các kí tự trên biển số khác so với các kí tự trênvăn bản, nên muốn nhận dạng được ta phải làm cho ứng dụng hiểu được các kí tự này

Khóa luận sử dụng sự hỗ trợ khá mạnh trong việc xử lí hình ảnh của mã nguồn OpenCV để nhận dạng vùng biển số cũng như thao tác trên nó, trong giai đoạn nhận dạng kí tự có sử dụng mạng neural network cơ bản Kohonen để nhận dạng Việc kết hợp này bước đầu giúp quá trình phát triển ứng dụng linh hoạt hơn, mang lại hiệu quả khá cao

Khóa luận sẽ làm những việc sau:

1 Tổng hợp dữ liệu cho quá trình huấn luyện hệ thống

2 Tiền xử lý ảnh thu được từ Camera của thiết bị

3 Huấn luyện hệ thống nhằm phát hiện vùng chứa biển số

4 Tách các kí tự có trên biển số

5 Nhận dạng các kí tự

6 Xây dựng database và webservice để lưu trữ thông tin biển số

Trang 17

CHƯƠNG 2:TỔNG QUAN VỀ ĐỀ TÀI

Lịch Sử Phát Triển

2.1

Kỹ thuật nhận dạng biển số (Automatic number plate recognition) đã được nghiên cứu từ năm 1976 tại chi nhánh phát triển khoa học Cảnh sát ở Anh Hệ thống kiểm thử lần đầu tiên vào năm 1979 Ca phát hiện trộm xe đầu tiên sử dụng hệ thống này

là vào 1981.Các hệ thống thử nghiệm ban đầu được triển khai trên các đường A1 và

ở Dartford Tunnel Hệ thống này đã được áp dụng để hỗ trợ kiểm soát lưu lượng, thu thập thông tin, xử lí vi phạm cho cảnh sát giao thông Hệ thống thu thập hình ảnh đòi hỏi phải có tầm nhìn rộng, thu nhận ảnh nhanh và cho chất lượng ảnh tốt Tuy nhiên do còn nhiều mặt giới hạn về công nghệ hệ thống này còn chưa được sử dụng rộng rãi cho đến những năm 1990

Kỹ Thuật này phát triển trên khía cạnh phần mềm của hệ thống máy tính Sử dụng các kỹ thuật sử lý ảnh sơ khai đầu tiên để nhận dạng ký tự các chử cái và biển số

Hệ thống được triển khai bằng phương pháp tiếp cận cơ bản Toàn bộ quá trình được thực hiện tại vị trí nhận dữ liệu ảnh hay truyền dữ liệu về một máy tính từ xa

Trang 18

Hình 2.1 Cụm Closed-circuit television cameras dùng cho hệ thống nhận diện biển

số cố định ở úc

Đến năm 2009 họ có 1 bước tiến trong công ngệ nhận diện biển số đó là sử dụng hệ thống nhận diện di động được trang bị 3 máy ảnh hồng ngoại hệ thống này có chức năng xác định xe không đăng ký, đánh cắp cũng như điểu khiển xe cá nhân khi bị mất cắp

Hình 2.2 Hệ thống nhận dạng trên xe tuần tra New South Wales Police Force

Highway Patrol

United States

Trang 19

Tại hoa kỳ hệ thống nhận diện biển số xe di dộng phổ biến trong các cơ quan thực thi pháp luật của nước này theo báo cáo của diễn đàn Police Executive khoảng xấp

xỉ 71% tất cả các sở cảnh sát của Hoa Kỳ sử dụng hệ thống này Hệ thống nhận diện biển số xe đang trở thành 1 phần quan trọng của chiến lược bảo an các thành phố lớn của mỹ thu thập các thông tin tình báo Phát hiện tội phạm, các xe nhập lậu không đăng ký, truy tìm xe bị mất cắp, và phát hiện các lỗi vi phạm giao thông Vì được giám sát 24/24 nên ý thức giao thông của người dân của các quốc gia sử dụng công nghệ này rất cao Vì nếu họ vi phạm thì sẽ có giấy phạt được gũi tới họ vào hàng tháng Theo dõi giám sát các nghi phạm, phát hiện khủng bố, toàn bộ thông tin

về thời gian, tốc độ, vị trí (tọa độ GPS) được lưu trữ lại không giới hạn phục vụ cho việc sữ dụng làm bằng chứng sau này

Hình 2.3 Hệ Thống Nhận Diện Biển Số Xe Được Trang Bị Cho Xe Cảnh Sát Ở Hoa

Trang 20

Ứng dụng của Biển Bạc ANPR dựa trên mã nguồn mở OpenCV,thu nhận ảnh thông qua các Camera có chất lượng cao, được đặt cố định Quá trình nhận dạng được xử

lí trên máy tính.Nhận dạng các kí tự nhanh, cho kết quả trong thời gian ngắn

Hình 2.4 Ứng dụng nhận dạng của Biển Bạc ANPR

MT-ATGT2012 nhận dạng biển số xe từ ảnh chụp của máy bắn tốc độ

Trong hệ thống giám sát trật tự an toàn giao thông, một yêu cầu chức năng không thể thiếu đó là việc truy tìm và chặn bắt một phương tiện vi phạm luật giao thông Mỗi phương tiện vi phạm luật giao thông bị phát hiện bởi các thiết bị (máy bắn tốc

độ, camera giám sát lỗi vi phạm…) sẽ được thiết lập thành một hồ sơ xe vi phạm dưới dạng một bản ghi cơ sở dữ liệu (CSDL) gửi về máy chủ đặt tại trung tâm chỉ huy Từ trung tâm chỉ huy, để biết các xe vi phạm hiện tại đang lưu thông tại địa điểm nào, có thể thiết lập một danh sách xe vi phạm (gọi là “danh sách đen”) và gửi yêu cầu cho một số camera lắp đặt ở các địa điểm khác nhau nhằm phát hiện xe vi phạm có đi qua điểm đặt camera đó hay không Một khi camera nào phát hiện được

xe vi phạm đang đi qua thì ngay lập tức sẽ báo về trung tâm và đến trạm kiểm soát gần nhất để lực lượng CSGT kịp thời chặn bắt xe vi phạm đó

Các loại máy bắn tốc độ của CSGT đều đã được trang bị chức năng ghi lại hình ảnh

Trang 21

chuyển, vận tốc,vận tốc giới hạn trên đoạn đường đó (để so sánh) và làn đường chiếc xe đang chạy đều được hiển thị trên hình ảnh máy bắn tốc độ thu nhận được Vấn đề nhận dạng biển số được tích hợp trên máy giải quyết vấn đề nhận dạng biển

số xe vi phạm, khoanh vùng xác định chính xác xe bị bắn tốc độ Hình ảnh xe vi phạm vượt tốc độ sau khi đã được nhận dạng biển số và khoanh vùng phương tiện, được thiết lập thành bản ghi cơ sở dữ liệu xe vi phạm vượt tốc độ.Khảo sát độ chính xác của phần mềm với các ảnh bắn tốc độ kích thước 4008x3092 (pixels) tốc độ nhận dạng biển số trung bình của Mắt Thần là 1-2 giây (trên cấu hình máy tính thông thường), hiệu suất nhận dạng biển số đạt đến 98%

Hình 2.5 Ứng dụng nhận dạng trên máy bắn tốc độ

MT-BSX3.5 ứng dụng nhận dạng biển số thông qua camera ghi hình và xử lý nhận dạng trên máy tính tại các điểm giữ xe

Trang 22

Phiên bản mới nhất của ứng dụng này có nhiều cải tiến theo chiều hướng tích cực, chức năng nâng cao chất lượng hình ảnh biển số, cắt vùng biển số nâng cao và chồng hình ảnh biển số lên hình ảnh camera thu nhận được, cho phép nhân viên trông giữ xe dễ dàng quan sát được cảnh biển số và thao tác nhanh hơn và tính an ninh hơn Hiệu suất nhận dạng biển số xe máy được cải thiện Trong phiên bản này,

độ chính xác nhận dạng biển số được cải thiện, các tình huống độ sáng của các ký tự trên biển số phân bố không đều, các ký tự hàng trên bị bắn đinh ốc, hàng ký tự dính mép biển số đều được xử lý triệt để

Hình 2.6 Giao diện của ứng dụng MT-BSX

Tổng kết chương

2.4

Qua khảo sát ở trên về nhận diện biển số xe, thì các quốc gia trên thế giới đã gần như là hoàn thiện về tốc độ nhận diện, tính cơ động Riêng ở việt nam các ứng dụng này còn dừng lại ở mức là camera chỉ đặt cố định Tức là không trang bị cho xe cảnh sát, có thể là do cơ sở vật chất trang bị cho cảnh sát giao thông còn thua kém, rồi vấn đề về kinh phí khi lắp đặt camera cho xe moto cảnh sát, bảo trì, điều kiện khí hậu nhưng vần đề về tài chính là quan trọng hơn cả

Trang 23

Nhận thấy điều này, hệ thống chúng tôi phát triển các thiết bị giá rẽ, có sự kết hợp giữa OpenCV, hỗ trợ tốt trong việc xử lí hình ảnh, nhận diện các vùng chứa biển số

và tách kí tự Nhận diện kí tự áp dụng mô hình mạng neural nhân tạo để cải thiện kết quả nhận dạng Ứng dụng phát triển trên KIT Friendly Arm sử dụng hệ điều hành Android qua module camera cho thấy đƣợc tính linh hoạt trong quá trình nhận dạng

Trang 24

CHƯƠNG 3 : XÂY DỰNG HỆ ĐIỀU HÀNH ANDROID TRÊN KIT

FRIENDLY ARM

3.1 Giới thiệu KIT Friendly Arm Tiny 210

Friendly Arm Tiny 210 với bộ vi xử lý 1GHz Samsung S5PV210 ARM Cortex-A8

Trang 25

Hình 3.1 : KIT Friendly Arm Tiny210

 1 USB Slave Type B

 1 giao tiếp SD Card

 1 Stereo Audio out, 1Micro out

 1 20-pin JTAG (kết nối với mạch nạp debug)

 4 đèn LED đơn xanh

 1 đèn nguồn đỏ

 9 nút bấm

 1 còi điều khiển sử dụng PWM

 1 biến trở sử dụng kiểm tra bộ chuyển đổi số/tương

tự (A/D converter)

 1 EEPROM giao tiếp chuẩn I2C

 1 giao tiếp với cảm biến ảnh (20-chân)

 1 pin cho đồng hồ thời gian thực

 Nguồn 5V

Trang 27

Bảng 3.3: Kiến trúc hệ điều hành Linux

Đặc trưng của hệ điều hành nhúng:

o Tăng tính tin cậy (reliability)

o Tăng tính khả chuyển (portability)

o Khả năng tương thích mềm: dễ dàng nâng cấp hay thu gọn để tương thích với nền tảng hệ thống

o Thu gọn, đòi hỏi ít bộ nhớ hơn Có thể hỗ trợ khởi động từ bộ nhớ ROM, Flash (hệ thống không có ổ cứng)

o Cung cấp các cơ chế lập lích (scheduler) hỗ trợ thời gian thực (Realtime OS - RTOS)

o Hệ thống thời gian thực (Realtime): các phần mềm, phần cứng hoạt động thỏa mãn các ràng buộc về thời gian

o Phân loại:

 Hard Realtime: không đáp ứng deadline -> lỗi hệ thống

 Soft Realtime: không đáp dứng deadline -> giảm chất lượng dịch vụ (QoS)

 Một số thư mục quan trọng

o /home: thư mục người dùng

Trang 28

o /dev: chứa các file thiết bị

o /bin: chứa các file thực thi của hệ thống

o /etc: chứa các file cấu hình

o /var: chứa các file log

o /opt: chứa các gói chương trình cài đặt thêm

o /proc: chưa thông tin về các tiến trình, các thành phần phần cứng, phần

mềm đang chạy trong hệ thống

o /usr: chứa các file thực thi, tài liệu liên quan tới người dùng

 Hỗ trợ rất nhiều kiến trúc vi xử lý (cả 32 bit và 64 bit)

o Intel X86, ARM, PowerPC, MIPS, AVR32, …

 Không hỗ trợ các vi điều khiển hiệu năng thấp

 Hỗ trợ cả kiến trúc có và không có khối quản lý bộ nhớ (MMU)

 Các hệ thống có thể dùng chung toolchains, bootloader và kernel, các thành phần khác phải riêng biệt và tương thích với từng hệ thống

Hình 3.2 : Quá trình boot hệ thống linux trên PC

Trang 29

Hình 3.3 : Quá trình boot hệ thống Linux nhúng

 Boot loader: chương trình đầu tiên thực hiện kiểm tra phần cứng hệ thống và nạp nhân (kernel) của hệ điều hành

 Kernel: nhân hệ điều hành, chứa các thành phần cơ bản nhất

 Root file system: hệ thống file, chứa các modules bổ sung và các phần mềm ứng dụng

3.3 Cài đặt Android trên KIT Friendly Arm Tiny210 V2

3.3.1 Sơ lược hệ điều hành Android

Android là hệ điều hành điện thoại di động mã nguồn mở miễn phí do Google phát triển dựa trên nền tảng của Linux Nó bao gồm một hệ điều hành, midware và một số ứng dụng chủ đạo Bộ công cụ Android SDK bao gồm các công cụ riêng lẻ như debugger, các thư viện,trình giả lập điện thoại Android, các tài liệu hỗ trợ, code mẫu, các hàm API cần thiết để phát triển ứng dụng cho nền tảng Android sử dụng ngôn ngữ lập trình java

Trang 30

Hiện Android cung cấp bộ công cụ này trên nhiều nền tảng hệ điều hành khác nhau (Win-dows, Linux, Mac, ), miễn có sẵn Java Development Kit, Apache Ant

và Python2.2 trở lên

Những tính năng mà nền tảng Android hỗ trợ

 Application framework: Cho phép tái sử dụng và thay thế các thành phần sẵn

có củaAndroid

 Dalvik virtual macine: Máy ảo java được tối ưu hóa cho thiết bị di động

 Intergrated browser: Trình duyệt web tích hợp được xây dựng dựa trên WebKit engine

 Optimized graphics: Hổ trợ bộ thư viện 2D và 3D dự vào đặc tả OpenGL ES 1.0

 SQLite: DBMS dùng để lưu trữ dữ liệu có cấu trúc

 Hỗ trợ các định dạng media phổ biến như MPEG4, H.264, MP3, AAC, ARM, JPG, PNG, GIF

 Hỗ trợ thoại trên nền tảng GSM (Phụ thuộc vài phần cứng thiết bị)

 Bluetooth, EDGE, 3G và WiFi (Phụ thuộc vài phần cứng thiết bị)

 Camera, GPS, la bàn và cảm biến (Phụ thuộc vài phần cứng thiết bị)

 Bộ công cụ phát triển ứng dụng mạnh mẽ

Ngôn ngữ lập trình chính thức của Android là Java Dựa trên máy ảo Java của Sun, Google đãtinh chỉnh và phát triển nên máy ảo Dalvik để biên dịch mã Java với tốc độ biên dịch nhanh hơn và nhẹ hơn Các ứng dụng của Android sử dụng SQLite

để quản lý cơ sở dữ liệu

Bằng cách sử dụng các frameworks của hãng thứ ba (VD PhoneGap, Titanium, ), các nhà lập trình web cũng có thể phát triển ứng dụng Android một cách dễ dàng bằng các ngôn ngữ web phổ dụng như HTML, CSS, Javascript

Trang 31

sản xuất có thể tùy biến lại những trải nghiệm Android cho khách hàng của riêng mình

Về phần cứng, Android hiện là hệ điều hành xuất hiện trên nhiều thiết bị nhất, người dùng có thêm nhiều lựa chọn để sở hữu một chiếc điện thoại hợp với túi tiền

và nhu cầu sử dụngcủa bản thân Hầu như tất cả những Smartphone sử dụng hệ điều hành android đều rất dễ sử dụng, khả năng tùy biến nhanh chóng, ứng dụng hỗ trợ phong phú, tương thích với đa cấu hình phần cứng của các nhà xản xuất

Qua tìm hiểu, nhận thấy tính linh hoạt và khả năng hỗ trợ cao từ cộng đồng, thiết bị đa dạng, chi phí hợp lý Khóa luận đã quyết định phát triển ứng dụng nhận dạng biển số xe máy trên KIT Friendly ARM sử dụng hệ điều hành Android

3.3.2 Tải Superboot vào SD Card

Trong phần này, chúng ta thực hiện các bước trên Windown 8.1 Lưu ý, nếu đầu đọc thẻ SD tích hợp sẵn ở một số Laptop không thể burn ra thẻ hoặc đọc thẻ thì các bạn nên thử một đầu đọc thẻ thông thường SD-Flasher.exe định dạng 130M cho bootloader và phần còn lại là lưu dữ liệu cài đặt chương trình Không nên sử dụng thẻ SD ít hơn 256M và nên sử dụng bộ nhớ ít nhất là 4Gb

Bước 1: chạy SD-Flasher.exe trong thư mục Tool đã được cung cấp kèm theo Lưu

ý, chúng ta nên chạy chương trình dưới chế độ “administrator”

Hình 3.4 : File SD-Flasher.exe

Khi chương trình chạy sẽ hiện ra một hộp thoại “Select your Machine ”, chúng ta chọn “Mini210/Tiny210”:

Trang 32

Hình 3.5 : Hộp thoại “Select your Machine”

Bấm Nextvà sẽ tiếp tục hiện ra hộp thoại phía dưới để bắt đầu Lưu ý, Nút

“ReLayout” để enable và format SD card

Hình 3.6 : Giao diện của SD-Flasher.exe

Trang 33

Bước 2: Click vào để chọn đường dẫn tới file Superboot

Hình 3.7 : Đường dẫn file superboot

Bước 3: Cắm thẻ FAT32 vào máy tính, sao lưu dữ liệu trong thẻ SD và click vào

“Scan”, tất cả các thẻ SD tìm thấy sẽ được hiện ra trong danh sách bên cạnh Chúng

ta để ý cột “Available” đang ở trạng thái là “No” (vòng tròn màu đỏ hình dưới)

Trang 34

Hình 3.8 : Trạng thái Available “No”

Bước 4: Click vào “ReLayout” để định dạng lại thẻ nhớ SD Lưu ý, tất cả dữ liệu sẽ

bị mất Sau đó chúng ta click vào “Yes”

Hình 3.9 : Relayout

Sau khi Format xong sẽ tự động chuyển hướng vè menu chính Click vào “Scan”, chúng ta sẽ thấy trong cột “Label” tên “FriendlyARM” và “Avaiable” là “Yes”

Trang 35

Hình 3.10 : Scan Card

Bước 5: Click vào “Fuse”, Superboot sẽ được tải vào SD Card Chúng ta có thể

hoàn toàn làm điều này trên những hệ điều hành khác

Trang 36

Hình 3.11 : Fuse superboot

Superboot trong thẻ nhớ thì sẽ không thể nhìn thấy được Để kiểm tra Superboot đã được chèn vào thẻ SD hay chưa? Chúng ta cắm thẻ SD vào khe thẻ nhớ của KIT Friendly Arm, chuyển Switch S2 sang chế độ “SDBOOT”, khởi động KIT và nếu đèn Flash LED1 sáng thì đã có Supberboot trong SD Card của mình

Nếu bạn không thấy LED1 sáng hoặc bất kỳ đầu ra nào từ cổng SD Card thì có thể bạn chưa tải Superboot vào thẻ nhớ thành công Chúng ta có thể giải quyết trường hợp này như sau

1 Nếu bạn đang sử dụng laptop và có thể đầu đọc thẻ nhớ của laptop không sử dụng đươc Bạn hãy thử với đầu đọc thẻ USB

2 Thẻ nhớ của bạn không được tốt Bạn nên sử dụng thẻ có dụng lượng lớn hơn 4GB hoặc SDHC

Trang 37

3 Bạn có thể sử dụng thẻ microSD/TF và sử dụng chuẩn thẻ SD để kết nối trực tiếp tới đầu đọc thẻ

3.3.3 Restore TF Card

Nếu trong một thời gian dài bạn không cần sử dụng TF Card để cài hệ điều hành thì bạn sử dụng SD-Flasher.exe để hoàn lại 130MB bộ nhớ mà mình đã tạo cho Superboot Bạn nhấn chuột phải vào SD-Flasher.exe chạy dưới chế độ “Run as administrator” sau đó sẽ hiện ra hình như bên dưới và click vào “Scan” và click vào

“ReFormat”

Hình 3.12 : Restore TF Card

Click vào “Yes” Chờ một lúc bạn click lại nút “Scan”, bạn sẽ thấy trong cột Avaiable là “No” Khi đó SD-Card đã restore thành công

Trang 38

Hình 3.13 : Restore hoàn thành

3.3.4 Cấu hình file FriendlyARM.ini

Khi cài đặt hệ điều hành, chúng ta sẽ sử dụng file “FriendlyARM.ini”

Trang 39

Hình 3.14 : Chi tiết file FriendlyARM.ini

Action Thiết lập hành động: Install/Run/Null

Install – Cài đặt từ NAND Flash Run – Chạy từ TF Card

Null – Không làm gì hết

Mặc định là “Install”

OS Hệ điều hành đƣợc tải lên từ

Trang 40

LowFormat Thực hiện fomat trên NAND Flash với level thấp

StatusType Đèn báo “LED”, “Beeper” hoặc cả 2 sẽ hoạt động khi

đang cài hệ điều hành

Android-RootFs-InstallImage

File system image sử dụng để install – hiện tại chỉ có hệ thống yaffs2

Ngày đăng: 29/01/2015, 19:18

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Ed Burnette. Hello, Android. Introducing Google’s Mobile Development Platform. Pragmatic Bookshelf, 2nd edition, 2009. 41 Khác
[2] G. Harman. A case study on data interoperability for license plate recognition. In Technologies for Homeland Security, 2008 IEEE Conference on, pages 237 –239, may 2008 Khác
[3] Yoav Freund and Robert E. Schapire. A decision-theoretic generalization of on- line learning and an application to boosting. In Proceedings of the Second European Con-ference on Computational Learning Theory, EuroCOLT ’95, pages 23–37, London, UK, UK, 1995. Springer-Verlag Khác
[4] J. Heaton. Introduction to Neural Networks for Java, Second Edition. Heaton Research, 2008. 47 Khác
[5] J.S. Kang, M.H. Kang, C.H. Park, J.H. Kim, and Y.S. Choi. Implementation of em- bedded system for vehicle tracking and license plates recognition using spatial relative distance. In Information Technology Interfaces, 2004. 26th International Conference on, pages 167 –172 Vol.1, june 2004 Khác
[6] Chen Yuan-yuan and Li Jing. A method of number-plate character recognition algo- rithm based on boosting classification. In Communications and Mobile Computing, 2009. CMC ’09. WRI International Conference on, volume 3, pages 263 –267, jan. 2009 Khác
[7] Andres Llana. Wireless application protocol (wap) and mobile wireless access. Infor- mation Systems Security, 11(3).14–21, 2002 Khác
[8] R.A. Lotufo, A.D. Morgan, and A.S. Johnson. Automatic number-plate recognition. In Image Analysis for Transport Applications, IEE Colloquium on, pages 6/1 –6/6, feb 1990 Khác
[9] A. Mutholib, T.S. Gunawan, and M. Kartiwi. Design and implementation of automatic number plate recognition on android platform. In Computer and Communication En- gineering (ICCCE), 2012 International Conference on, pages 540 –543, july 2012 Khác
[10] OndrejMartinsky. Algorithmic and mathematical principles of automatic number plate recognition systems. Master’s thesis, BRNO University of Technology, 2007 Khác
[11] M.R. Lynch. Practical automobile number plate recognition by linear weight neural networks. In Toll Systems, IEE Colloquium on, pages 61 –63, oct 1992 Khác
[12] Constantine P. Papageorgiou, Michael Oren, and Tomaso Poggio. A general framework for object detection. In Proceedings of the Sixth International Conference on Computer Vision, ICCV ’98, pages 555–, Washington, DC, USA, 1998. IEEE Computer Society Khác
[13] Paul Viola andMichael Jones. Rapid object detection using a boosted cascade of simple features. In Proceeding of Conference on Computer Vision and Pattern Recognition, pages 511–518, 2001. 12 Khác
[14] Mke Rhead, Robert Gurney, Soodamani Ramalingam, and Neil Cohen. Accuracy of automatic number plate recognition (anpr) and real world uk number plate problems. In Security Technology (ICCST), 2012 IEEE International Carnahan Conference on, pages 286 –291, oct. 2012 Khác
[15] A. Sharma, A. Dharwadker, and T. Kasar. Moblp. A cc-based approach to vehicle license plate number segmentation from images acquired with a mobile phone camera. In India Conference (INDICON), 2010 Annual IEEE, pages 1 –4, dec. 2010 Khác
[16] J. Parker, R.V. Kenyon, and D.E. Troxel. Comparison of interpolating methods for image resampling. IEEE Trans Med Imaging, 2(1).31–9, 1983 Khác
[17] J. Wang, D.H. Wang, and S. Chen. Map matching algorithm based on mobile phone location. In Intelligent Computation Technology and Automation (ICICTA), 2011 In- ternational Conference on, volume 1, pages 676 –679, march 2011 Khác
[18] Paul Viola andMichael Jones. Robust real-time object detection. International Journal of Computer Vision, 57(2).137–154, 2002 Khác
[19] Rainer Lienhart and Jochen Maydt. An extended set of haar-like features for rapid object detection. In IEEE ICIP 2002, pages 900–903, 2002 Khác

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w