HỆ THỐNG GIỮ XE TỰ ĐỘNG Đinh Hồng Hà, Nguyễn Thị Phương Thảo Khoa Công nghệ thông tin, Trường Đại học Lạc Hồng 1 Email: mrdinh@live.com , khiconlovely0905@gmail.com Tóm tắt: Trong bài
Trang 1HỆ THỐNG GIỮ XE TỰ ĐỘNG Đinh Hồng Hà, Nguyễn Thị Phương Thảo
Khoa Công nghệ thông tin, Trường Đại học Lạc Hồng 1
Email: mrdinh@live.com , khiconlovely0905@gmail.com
Tóm tắt:
Trong bài báo này nhóm tác giả trình bày hệ thống giữ xe tự đông : tự động chụp ảnh biển số xe dùng phương pháp phân vùng ảnh và nhận dạng ký tự đối với biển số gắn máy ở Việt Nam,kết hợp sử dụng công nghệ RFID (nhận dạng bằng sóng vô tuyến) để xử lý lấy thông tin người dùng từ cơ sở dữ liệu phục vụ cho việc lưu trữ thông tin gửi và trả xe, tự động đóng/mở cổng chắn thông qua giao tiếp RS232 sau khi đã xác thực xe ra vào Kết quả nhóm đã xây dựng một hệ thống thu nhỏ mô phỏng thực tế quá trình giữ xe tự động.
GIỚI THIỆU
Hiện nay, hệ thống giữ xe tự động là vấn đề được rất nhiều quốc gia quan tâm và trở thành đề tài nóng hổi đối với một số quốc gia đang phát triển theo hướng tự động hóa Sau đây là một số hệ thống giữ xe tự động của một số nước trên thế giới và nước ta:
Hệ thống giữ xe tự động Budapest – Parksafe 580 của tập đoàn WORH (Đức): Ý tưởng tạo ra 200 địa điểm đỗ xe công cộng trong không gian 300 mét vuông ở phía bên ngoài đường phố của một tòa nhà nổi tiếng như một phần của một dự án cải tạo đã được giải thưởng
2009 EPA do European Parking Association công nhận
Hệ thống giữ xe tự động CHD-DX-L010 Control box and barrier gates là sản phẩm mới nhất của tập đoàn Shenzhen Newabel Electronics (Trung Quốc): cấu hình một cách tự do,
hỗ trợ hiển thị chi phí bên ngoài màn hình, camera, đầu đọc thẻ RF vv Nó hỗ trợ rất nhiều chức năng có sẵn, đếm thời gian thực cho chỗ đậu xe, khi không còn chỗ đậu, nó cấm xe vào cho đến khi có không gian trống
Hệ thống giữ xe thông minh Green Parking do công ty Isoftco phối hợp với Phú Lê Telecom thực hiện: sử dụng hộp đen lưu trữ thông tin “thông minh” để tìm kiếm lại thông tin
xe vào ra dựa vào số thẻ, số xe và tra cứu qua lại camera vào ra
ĐẶT VẤN ĐỀ
Hiện nay ở Việt Nam, với sự bùng nổ về gia tăng dân số nên mỗi ngày có hàng triệu lượt xe gắn máy lưu thông trên xa lộ, nhưng cơ sở hạ tầng lại không phát triển theo kịp tốc độ
đó, đây là một trong những nguyên gây nên vấn đề nhức nhối trong 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 sát tự động đối với các phương
1 Số 10 Huỳnh Văn Nghệ, Biên Hòa Đồng Nai
Trang 2tiện giao thông Vì vậy, việc nghiên cứu về hệ thống giữ xe tự động là cần thiết và có ý nghĩa rất lớn về mặt ứng dụng, đáp ứng nhu cầu tự động hóa của xã hội Trong bài bào này, chúng tôi trình bày phương pháp trong kỹ thuật xác định vùng chứa biển số xe và kỹ thuật nhận dạng
ký tự, từ đó tiến tới xây dựng chương trình nhận dạng biển số xe gắn máy tự động ở Việt Nam Và kết hợp sử dụng công nghệ RFID (nhận dạng bằng sóng vô tuyến) để xử lý lấy thông tin người dùng từ cơ sở dữ liệu phục vụ cho việc lưu trữ thông tin gửi và trả xe, tự động đóng/mở cổng chắn thông qua giao tiếp RS232 sau khi đã xác thực xe ra vào Từ đó, chúng tôi xây dựng một hệ thống giữ xe tự động
Mục đích là xây dựng hệ thống giữ xe tự động: chụp ảnh biển số xe, đọc thẻ RFID, mở/đóng cổng chắn và một số chức năng cần thiết khác Với phương pháp: tìm hiểu, nghiên cứu xử lý - nhận dạng biển số xe Việt Nam; kế thừa những phương pháp đạt kết quả tốt và phù hợp với nội dung cần đạt được; tìm hiểu phương thức lưu trữ dữ liệu trên thẻ RFID nhằm phục vụ lưu trữ thông tin gửi và trả xe trên thẻ RFID
NỘI DUNG NGHIÊN CỨU
1 Chương trình nhận dạng biển số xe
Chương trình nhận dạng biển số xe được xây dựng theo trình tự bốn bước cơ bản của một hệ thống nhận dạng bao gồm: tiếp nhận ảnh đầu vào, xác định vị trí biển số xe, tách riêng từng ký tự trên biển số và nhận dạng ký tự Bài báo này trình bày kỹ thuật nhận dạng ký tự bằng phân lớp Bayes kết hợp với bảy mômen bất biến là một phương pháp mới
Hình 1 Quá trình nhận dạng biển số xe
Trang 32 Phân vùng màu
Chúng tôi sử dụng mô hình màu HSI để phân vùng màu nhằm xác định những vùng ứng viên có khả năng chứa biển số xe Màu tại vùng chứa biển số với vùng khác trong ảnh thường có sự khác biệt khi quan sát bằng mắt thường hay nói cách khác thì mô hình màu HSI đổi tất cả vùng có giá trị tương tự với giá trị vùng chứa biển số thành 1 (màu trắng) và vùng còn lại thành 0 (màu đen) Những thông số làm điều kiện của mô hình màu được sử dụng để phát hiện vùng ứng viên và những đặc tính hình học của biển số xe để giảm số lượng vùng ứng viên có khả năng chứa biển số xe đều dựa trên những khảo sát thực tế của chúng tôi
( , ) ( ) & ( , ) 1.0* ) 1,
0,
trang
b
otherwise
Trong đó, S(x, y) và I(x, y) là độ bão hòa và độ chói tại điểm x, y; S, I lần lượt là giá trị trung bình của S và I; S, I là độ lệch chuẩn của S và I
3 Xác định vùng ứng viên chứa biển số
Ảnh sau khi phân vùng màu chỉ còn lại những vùng ứng viên có khả năng chứa biển
số xe Bước tiếp theo, chúng tôi sử dụng thuật toán tô màu theo đường biên không đệ qui để gán nhãn thành phần liên thông đối với mỗi vùng ứng viên Từ đó, lọc vùng ứng viên bằng cách lặp lại điều kiện trên mỗi thành phần liên thông được gán nhãn để kiểm tra và tìm ra vùng chứa biển số xe Dựa trên đặc tính hình học của biển số xe ở Việt Nam và sau khi khảo sát trên 100 ảnh chụp biển số đầu vào, chúng tôi đưa ra ba thông số điều kiện để lọc vùng ứng viên gồm diện tích, tỉ lệ cạnh và biên vùng ứng viên [2]
ax min max min
1 1
m A
P
Trong đó, PA là tỉ lệ cạnh; cmax, cmin là tọa độ điểm lớn nhất và nhỏ nhất theo trục X;
rmax, rmin là tọa độ điểm lớn nhất và nhỏ nhất theo trục Y
Hình 2 a) Ảnh đầu vào; b) Ảnh sau khi phân vùng màu; c) Ảnh sau khi gán nhãn thành
phần liên thông; d) Ảnh sau khi lọc vùng ứng viên
4 Quay ảnh
Bước này chính là sự khác biệt giữa nhận dạng biển số xe ôtô và biển số xe gắn máy, biển số xe gắn máy có góc nghiêng rất lớn, xấp xỉ 30 độ nên chúng tôi chọn phương pháp tính góc nghiêng biển số tối ưu nhất, trong bài báo này chúng tôi sử dụng phép biến đổi Hough để
Trang 4tính góc nghiêng của biển số Một kỹ thuật không thể thiếu trong quá trình quay ảnh là tách biên ảnh với biên là phần ranh giới nằm giữa hai vùng ảnh có sự khác biệt lớn về mức xám Phép biển đối Hough sẽ tìm ra phương trình đường thẳng đi qua nhiều điểm trắng trên ảnh sau khi ảnh được tách biên, từ đó tính được góc lệch giữa phương trình đường thẳng với trục hoành [3]
os
m
Từ (3) chúng tôi tính được công thức tính góc lệch
= θm - 90o (4) Sau khi tính được góc nghiêng biển số xe, lần lượt quay từng điểm ảnh theo góc lệch
tính được từ công thức (4) Đặt điểm ảnh ban đầu là gốc và điểm ảnh sau khi quay là đích, bài báo tính được tọa độ điểm đích theo góc lệch
DW = cos(a1)*SW sin(a1)*SH (5)
DH = sin(a1)*SW cos(a1)*SH (6)
Hình 3 a) Ảnh trước khi quay; b) Ảnh sau khi quay theo góc nghiêng tính được
5 Phân ngưỡng ảnh
Nhằm làm tăng độ tương phản giữa màu ký tự và màu nền, ảnh biển số được chuyển thành ảnh nhị phân trong đó mỗi điểm ảnh chỉ được biểu diễn một trong hai giá trị 0 (màu đen) hoặc 1 (màu trắng) Từ ảnh đầu vào, chọn ra một ngưỡng thích hợp rồi so sánh với từng điểm ảnh để xác định điểm đó có giá trị là 0 hoặc 1 Bài báo này chúng tôi trình bày phương pháp phân ngưỡng theo từng vùng nhỏ hay là ngưỡng cục bộ Cài đặt một ma trận vuông có
độ dài 2*m+1 (độ dài ma trận lẻ để có được điểm chính giữa của ma trận), từ điểm ảnh đang xét tính giá trị trung bình những điểm ảnh xung quanh dựa trên độ dài của ma trận với vị trí chính giữa là điểm ảnh đang xét Trong đó [x-m,y-m], [x-m,y+m], [x+m,y-m], [x+m,y+m] là bốn góc của ma trận [3]
x m i x m
y m j y m
T x y mean f i j
Việc phân ngưỡng ảnh được tính theo công thức
Trang 51 if f(x,y) > T(x,y) ( , )
0 if f(x,y) T(x,y)
Trong đó, T(x,y) là ngưỡng cục bộ tại vị trí x,y; g(x,y) là ảnh đầu ra; f(x,y) là ảnh đầu vào
6 Tách ký tự
Ở bước này, chúng tôi trình bày kỹ thuật phân vùng và chia ký tự biển số thành từng ảnh riêng biệt trước đi đưa vào nhận dạng Biển số xe gắn máy ở Việt Nam bao gồm hai dòng, dòng trên có từ hai đến bốn ký tự, dòng dưới có bốn ký tự (hiện nay đã là năm ký tự) Do đó, chúng tôi sẽ chia biển số thành hai dòng riêng biệt, sau đó mới thực hiện phân vùng ký tự
Ảnh sau khi phân ngưỡng là ảnh nhị phân chỉ có hai giá trị hoặc 1 (màu trắng) hoặc 0 (màu đen) Như vậy, mật độ phân bố giá trị 0 (màu đen) giữa dòng trên và dòng dưới rất lớn Chúng tôi sử dụng phép chiếu ngang để thể hiện mật độ phân bố điểm ảnh theo từng dòng Từ
đó xác định vị trí để chia biển số thành hai dòng là vị trí có giá trị nhỏ hơn rất nhiều so với những vị trí lân cận, để tránh trường hợp vị trí nhỏ nhất nằm ở biên ta chỉ xét những vị trí trung tâm với sai số tự chọn
0
( , ) / ( *( 1))
M i i
Hình 4 a)Ảnh sau khi phân ngưỡng;b) Ảnh hiển thị phép chiếu ngang của ảnh;
c) Ảnh sau khi chia thành hai hàng Tiếp theo, ta thực hiện tách riêng từng ký tự trên mỗi dòng Khác với việc chia biển số thành hai dòng, chỉ xác định ranh giới giữa hai dòng bằng phép chiếu ngang rồi tiến hành chia biển số Ở đây, chúng tôi sẽ sử dụng những thông số cần thiết để xác định đâu là ký tự đâu không phải ký tự Mỗi ký tự đều có khoảng cách nhất định với ký tự bên cạnh hay nói cách khác giữa hai ký tự liền kề đếu có sự phân bố giá trị 0 (màu đen) lớn Dựa vào đặc điểm đó, chúng tôi sử dụng phép chiếu dọc để xác định ranh giới giữa hai ký tự liền kề
0
( , ) / ( *( 1))
N i i
Trang 6Hình 5 Ảnh hiển thị phép chiếu dọc của ảnh
7 Nhận dạng ký tự
Mômen bất biến
Mômen bất biến là những mômen được trích tách ra từ những đặc trưng riêng của một đối tượng mà những mômen đó không thay đổi đối với phép quay, phép tịnh tiến, phép tỉ lệ [3] Một đối tượng hay chính xác hơn là một ký tự bao gồm bảy mômen bất biến, ký hiệu
1, 2, ,3 4, ,5 6, 7
Trong bài báo này, chúng tôi xây dựng tập tin mẫu dựa trên bảy mômen bất biến và sử dụng nó trong phân lớp Bayes Công thức tổng quát
(11-1)
2 2
2 ( 20 02) 2 11
(11-2)
3 ( 30 3 12) (3 21 03)
4 ( 30 12) ( 21 03)
5 30 12 30 12 30 12 21 03
21 03 21 03 30 12 21 03
6 20 02 30 12 21 03
11 30 12 21 03
Với pq là giá trị trung tâm được định nghĩa như sau
00
pq
Trong đó
Trang 71 2
p q
(11-9)
M N
pq
x y
Với điều kiện p = 0, 1, 2, … và q = 0, 1, 2, …
10 00
m
x
m
00
m y m
Công thức tổng quát tính giá trị mpq
1 1
0 0
( , )
M N
p q pq
x y
Phân lớp Bayes
Phân lớp Bayes là kỹ thuật phân lớp dựa trên việc tính xác suất có điều kiện, từ đó ước tính một thông số cần thiết cho tập mẫu của mỗi lớp [3]
dj(x) = p(x/j)P(j) với j = 1, 2, 3, … (11-13)
Từ công thức trên, bài báo xác định được điều kiện cho thuật toán nhận dạng với giá trị dj(x) là lớn nhất Đó là trong điều kiện lý tưởng, còn thực tế thì không phải lúc nào tập mẫu cũng có sự khác biệt lớn về giá trị, có những tập mẫu có sự khác biệt rất nhỏ mà chúng ta không thể kiểm soát được Với tập mẫu x ban đầu và W lớp, ta sẽ nhận được W giá trị khác nhau nhưng không thể đảm bảo rằng tất cả W giá trị đó sẽ đúng theo mong muốn Ngoài ra, tập tin mẫu của mỗi lớp quá ít hoặc không được xử lý tốt thì kết quả nhận được có thể sai hoàn toàn Do đó, phân lớp Bayes đã giả sử theo hàm mật độ Gauss.để giải quyết vấn đề trên
Khác với việc huấn luyện của mạng nơron, phân lớp Bayes giả sử mỗi lớp được huấn luyện theo hàm mật độ Gauss dựa trên hai giá trị là giá trị trung bình mi và độ lệch chuẩn i [3] Từ đó, phân lớp Bayes giả sử theo hàm mật độ Gauss có công thức như sau
dj(x) = p(x/j)P(j)
2 2
( ) 2 1
( ) 2
j j
x m
j j
e P
Để tránh khả năng phân lớp sai khi tập mẫu có giá trị tại ranh giới nơi mà hai tập mẫu
có giá trị giống nhau, Gauss đã đưa ra công thức không phụ thuộc vào x0
1
1 ( ) ( )
1 2 2
1 ( / )
(2 )
T
j j j
x m C x m j
n j
C
Trong đó, Cj là định thức ma trận Cj; mj là ma trận trung bình lớp j; Cj là ma trận hiệp phương sai của tập mẫu x với lớp j
Trang 8Với mỗi tập tin mẫu, chúng tôi tính được ma trận bảy mômen bất biến trung bình Sau
đó, lần lượt lấy từng ký tự được tách ra ở bước trên, tính bảy mômen bất biến kết hợp với ma trận mômen trung bình để tính ma trận hiệp phương sai Áp dụng công thức (11-15) tính được giá trị p(x/j) (ở đây đang xét ký tự là chữ số thì j = 0, 1, 2, …, 9) Nếu p(x/j) có giá trị lớn nhất thì đó là ký tự cần nhận dạng
8 Công nghệ RFID
RFID (Radio Frequency Identification) là công nghệ xác nhận dữ liệu đối tượng bằng sóng vô tuyến để nhận dạng, theo dõi và lưu thông tin trong một thẻ (Tag) Reader quét dữ liệu thẻ và gửi thông tin đến cơ sở dữ liệu lưu trữ dữ liệu của thẻ [1]
Kỹ thuật RFID có liên quan đến hệ thống không dây cho phép một thiết bị đọc thông tin được chứa trong một chip không tiếp xúc trực tiếp ở khoảng cách xa mà không thực hiện bất kỳ giao tiếp vật lý nào hoặc yêu cầu một sự nhìn thấy giữa hai cái Nó cho ta phương pháp truyền và nhận dữ liệu từ một điểm đến điểm khác
Dạng đơn giản nhất được sử dụng hiện nay hệ thống RFID bị động làm việc như sau: một RFID reader truyền một tín hiệu tần số vô tuyến điện từ qua antenna của nó đến một con chip không tiếp xúc Reader nhận thông tin trở lại từ chip và gửi nó đến máy tính điều khiển đầu đọc và xử lý thông tin tìm được từ con chip Các con chip không tiếp xúc, không tích điện, chúng hoạt động bằng cách sử dụng năng lượng chúng nhận từ tín hiệu được gửi bởi một reader
Kỹ thuật RFID sử dụng truyền thông không dây trong dải tần sóng vô tuyến để truyền
dữ liệu từ các thẻ đến các reader Thẻ có thể được đính kèm hoặc gắn vào đối tượng được nhận dạng chẳng hạn sản phẩm, hộp hoặc pallet
Các thành phần của một hệ thống RFID
Các thành phần chính trong hệ thống RFID là thẻ, reader và cơ sở dữ liệu Một hệ thống RFID toàn diện bao gồm bốm thành phần:
- Thẻ RFID (RFID Tag, Transponder - bộ phát đáp) được lập trình điện tử với thông tin duy nhất
- Các reader (đầu đọc) hoặc sensor (cái cảm biến) để truy vấn các thẻ
- Antenna thu, phát sóng vô tuyến
- Host computer - server, nơi mà máy chủ và hệ thống phần mềm giao diện với hệ thống được tải Nó cũng có thể phân phối phần mềm trong các reader và cảm biến Cơ sở hạ tầng truyền thông: là thành phần bắt buộc, nó là một tập gồm cả hai mạng có dây và không dây và các bộ phận kết nối tuần tự để kết nối các thành phần đã liệt kê ở trên với nhau để chúng truyền với nhau hiệu quả
Trang 9Hình 2 Hệ thống RFID toàn diện
KẾT QUẢ THỬ NGHIỆM
Môi trường phát triển hệ thống
Về phần mềm, yêu cầu máy tính chạy Windows XP hoặc hệ điều hành mới hơn, chạy Visual Studio 2010 C + + và MSXML 6.0 XML Về phần cứng, yêu cầu duy nhất là một CPU
hỗ trợ SSE2 phần mở rộng
Hệ thống giữ xe tự động cho phép tự động:
- Phát hiện, nhận dạng biển số xe thông qua camera
- Chụp ảnh biển số xe của khách ra vào và lưu vào cơ sở dữ liệu
- Đọc mã số thẻ khi khách quét thẻ qua máy đọc thẻ RFID và truy xuất dữ liệu từ máy chủ
- Lưu lại thông tin biển số xe vào hoặc ra thông qua công nghệ phát hiện và nhận dạng các kí tự trên biển số xe
- Mở cổng chắn cho xe qua khi thỏa mãn đầy đủ yêu cầu của hệ thống
- Thông báo cho khách các trường hợp lỗi phát sinh lên bảng thông báo điện tử để khách nhanh chóng có biện pháp xử lý kịp thời
Trang 10Hình 3 Mô hình hệ thống giữ xe tự động
Hình 4 Giao diện chính của chương trình Giao diện chính sẽ hiển thị tên người quản lý và các nút chức năng dùng để kết nối với các thiết bị Camera, cổng chắn, máy đọc thẻ RFID, và các chức năng phụ khác
Giao diện chức năng chính của chương trình là khi người dùng quét thẻ lên máy đọc thẻ RFID, thông tin sẽ được truy xuất từ máy chủ và hiển thị lên trên giao diện chính các thông tin được hiển thị bao gồm: Mã số thẻ, tên chủ xe, loại thẻ, thời gian vào, thời gian ra,
mã tài khoản, biển số xe, đơn giá và thành tiền phải thanh toán, và ô nhập biển số xe cho