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

ĐỀ TÀI NHẬN DẠNG BIỂN SỐ XE

57 6 0

Đ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 57
Dung lượng 1,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

License Plate Recognition LPR.. Car Plate Recognition CPR.. Automatic Number Plate Recognition ANPR.. Car Plate Reader CPR.. Optical Character Recognition OCR for Cars... figure, imshowI

Trang 1

Trong gi i h n c a tài lu n v n thì không th khái quát h t t t c các v n

ng nh các thu t toán gi i quy t cho t ng v n m t Vì v y không tránh kh i thi usót trong quá trình th c hi n R t mong s óng góp ý ki n c a quý th y cô và b n bè

Em xin chân thành cám n n Ban Giám hi u Tr ng i h c Tôn c Th ng

Th y cô trong Khoa n – n t và Th y Ph m Thiên Duy (Gi ng viên h ng d n)

Sinh viên th c hi n

ng Tu n t

Trang 2

LÍ DO TH C HI N TÀI

Cùng v i s phát tri n c a khoa h c k thu t và nhu c u i l i ngày càng t ng, s

ng ph ng ti n giao thông trên ng ngày càng xu t hi n nhi u V i s l ng

ph ng ti n giao thông l n và còn không ng ng t ng lên nh v y ã làm n y sinh nhi u

n trong vi c ki m soát c ng nh qu n lý các ph ng ti n gi i quy t v n nàynhu c u t ra là áp d ng các h th ng t ng M t trong nh ng h th ng nh v y là h

th ng t ng nh n d ng bi n s xe là h th ng có kh n ng thu nh n hình nh c ng nh

là c và hi u các bi n s xe m t cách t ng

t h th ng nh v y có th c s d ng trong r t nhi u các ng d ng ch ng

n nh : ki m soát ra vào sân bay, b n c ng, khu v c biên gi i c a kh u, tr m cân r a

xe t ng hoàn toàn, bãi gi xe t ng, ki m soát l u l ng giao thông hay trong các

Trang 3

CH NG 1: TÌM HI U H TH NG NH N D NG BI N S XE

H th ng này còn có các tên g i qu c t nh :

1 License Plate Recognition (LPR)

2 Automatic Vehicle Identification (AVI)

3 Car Plate Recognition (CPR)

4 Automatic Number Plate Recognition (ANPR)

5 Car Plate Reader (CPR)

6 Optical Character Recognition (OCR) for Cars

th ng nh n d ng bi n s xe y

Hình nh thu nh n c t camera quan sát a qua m t thi t b có kh n ng

“capture” hình nh (Frame Grabber) Sau ó a vào máy tính x lí d i s h tr c a

ph n m m nh n d ng v i các th vi n liên k t ng (*.dll) Hình nh sau khi x lí sliên k t v i m t kho c s d li u ghi nh n l i nh c ng nh i chi u v i d li u liênquan (tên ch ph ng ti n; ngày, gi qua tr m; các thông tin m t c p n u có… ) Cu icùng s a ra quy t nh u khi n ( óng, m tr m)

Trang 4

kh i h th ng nh n d ng bi n s xe:

Trang 5

Ví d v quá trình nh n d ng bi n s xe th c t :

nh ch p ph ng ti n t camera

nh ch p sau khi l c màu vàng c a bi n s

Trang 6

Vùng nh ch a bi n s xe

Xác nh góc nghiêng c a nh

Trang 8

nh a c p xám (Gray)

nh sau khi qua b l c thích nghi

nh nh phân (các m nh có giá tr là 0 ho c 1)

Trang 10

Phân n kí t dùng ph ng pháp “peaks to valleys”

nh s sau khi c làm gi n n ra

Trang 13

CH NG 2: GI I THI U V X LÝ NH VÀ MATLAB

Cài t: Th c hi n cài t Matlab 7.0 (ho c 6.5) Có hai a, m t a ph n m m

ch y ch ng trình Matlab 7.0 và m t a Help Sau khi cài t thành công ta có th vàohelp tìm thông tin, t p l nh liên quan

• Trong c a s command windows gõ: help “l nh hay bi u th c liên quan”

• Vào menu/help/demos: m t s ví d tham kh o

• Vào menu/help/Search: ki m thông tin liên quan

Trang 14

2.1.1 Thu nh n nh

Thu nh n nh có th s d ng máy quay (camera), webcam, máy quét (scanner)

nh thu c có th là nh tr ng en ho c c ng có th là nh màu Tuy nhiên, có th

lý và tính toán các nh trên máy tính thì ch có nh s là n gi n nh t

Tùy thu c vào ch t l ng thi t b thu nh n nh, các nh s có ch t l ng khácnhau u này nh h ng l n n quá trình ti n x lý nh

Các thi t b nh có th cho ra các k t qu t ng t ho c nh s cho nên nh sau khi

ch p ph i c chuy n thành nh s (có th dùng máy scanner quét l i t m nh t ng, chuy n nó sang nh s a lên máy tính x lý)

2.1.2 Quá trình ti n x lý nh

ó là quá trình x lý và nâng cao ch t l ng nh nh sau khi thu nh n c có

th ch a nhi u thông tin không c n thi t nh : nhi u, lòe,… u này làm cho nh códung l ng l n và có ch t l ng không t t, nh h ng n quá trình x lý nh

i v i tài lu n v n thì nh sau x lý ph i t c các y u t nh : cân b ngcác m c sáng t i, kh nhi u, nâng cao t ng ph n

2.1.3 Quá trình phân tích nh

Phân tích nh là quá trình bi n i nh t ó a ra các c tr ng quan tr ng

a nh ây là giai n quan tr ng nh t c a quá trình x lý nh Các c tr ng c a

m nh có th là: ng biên, phân vùng nh, ho c c hai…

2.1.4 c tr ng c a nh

nh sau khi qua các b c ti n x lý và phân tích nh s a ra các thông s c a

i t ng mà chúng ta c n quan tâm t i Các thông s này s c tính toán l i t óchúng ta có th a ra các c tr ng c a t m nh Chúng ta có th s d ng c tr ng này

nh n d ng s khác bi t c a: các khuôn m t ng i, s n ph m b l i trong dây chuy n,

nh n d ng bi n s xe…

Trong th c t , quá trình x lý nh thì có nhi u ph ng pháp làm khác nhau và vì

th chúng ta s có nhi u thu t toán tìm ra c tr ng c a m t t m nh là khác nhau

Ph màu c chia thành 6 vùng màu: tím, lam, l c, vàng, cam, N u nhìn màu

y thì không có ranh gi i gi a các màu k nhau, mà màu này li n sang màu khác.Màu mà m t ng i c m nh n c là do s ph n x ánh sáng t v t th

2.2.2 nh RGB

nh RGB ( nh màu) g m 3 màu c b n R:red; G:green; B:blue hay còn g i là nh

“truecolor” do tính trung th c c a nó nh này c bi u di n theo m t ma tr n ba chi ukích th c m*n*3 v i [m n] là kích th c nh theo pixels Ma tr n này nh ngh a cácthành ph n màu red, green, blue cho m i m nh Ví d : m nh v trí (10,5) s có

Trang 15

3 thành ph n màu c xác nh b i các giá tr (10,5,1), (10,5,2) và (10,5,3) V i 1, 2, 3

là t ng ng v i các màu R, G, B

2.2.3 nh tr ng en, nh a c p xám

nh tr ng en ch bao g m hai màu: màu en và màu tr ng Chúng ta phân s bi n

i này thành L m c N u L b ng hai t c ch có hai m c là 0 và 1 thì ó là nh tr ng

en, hay còn g i là nh nh phân N u L l n h n hai thì ta có nh a c p xám Vi c xác

nh s m c này ph thu c vào tiêu chí l ng t hóa L th ng ch n là 32, 64, 128, 256.Trong ó nh a c p xám 256 m c là nh có ch t l ng cao và th ng c ch n

i nh nh phân thì m i pixel mã hóa trên m t bit Còn nh a c p xám 256 m cthì m i pixel mã hóa trên tám bit T nh RGB c n qua b c trung gian chuy n i là

nh a c p xám chuy n thành nh nh phân Chúng ta có th th y rõ c nguyên lý

a m t t m nh màu, c ng nh nh tr ng en thông qua m t s l nh trong matlab:

Trang 16

% Th c hi n tách ma tr n màu ra kh i nh màu RGB

>> goc = anh;

>> H1 = goc;

>> H1(:,:,1) = 0; % Cho ma tr n màu Red b ng không

>> H1(:,:,2) = 0; % Cho ma tr n màu xanh lá Green b ng không

>> H1(:,:,3) = 0; % Cho ma tr n màu xanh d ng Blue b ng không

>>lay_nguong = graythresh(tuong_phan); % y ng ng theo thu t toán otsu

>> trang_den = im2bw(tuong_phan , lay_nguong); % nh tr ng en

>> figure(5), imshow(trang_den);

Trang 17

2.2.4 Các nh d ng nh

nh Bitmap - Microsoft Windows Bitmap (*.BMP)

Là nh c nh d ng theo chu n do Microsoft a ra V i nh d ng này, nh

c chuy n mã và c l u l i y thông tin Tuy nhiên, nh c nh d ng theo

ng này có dung l ng r t l n vì nó không c nén

nh GIF - Graphic Interchanger Format (*.GIF)

c nh d ng theo chu n nén LZW d a trên s l p l i c a m t nhóm m nhthay vì các mã lo t dài nh các nh d ng khác nên dung l ng l u tr nh h n nhGIF th ng c dùng l u tr các nh n gi n và ít có s chuy n i màu gi a cácvùng nh Ch ng h n các nh h a hay th , bi u …Tuy nhiên, nh GIF có ch t

ng cao, phân gi i h a cao, có th hi n th trên h u h t các ph n m m h a

nh JPEG - Joint Photographic Expert Group (*.JPEG hay *.JPG)

nh JPEG là chu n nén nh t nh có m t mát, th ng c dùng l u tr các nhmàu ho c các nh a m c xám khi không có yêu c u cao v nh gi i nén ph i gi nghoàn toàn nh g c Dung l ng c a nh JPEG th ng r t nh Ng i dùng có th ch

ng dung l ng c a nh l u tr b ng cách ch n t l nén nhi u hay ít nh l u v i nh

ng JPG có th l u c 24 bits/pixel d li u màu (t ng ng 16 tri u màu)

t ng i gi ng nhau v màu s c, ánh sáng gi a i t ng và không gian quanh i

ng ho c do tính không tuy n tính hay bi n ng nh c a b c m nh n nh

u ch nh l i t ng ph n c a nh, ta u ch nh l i biên trên toàn d i haytrên d i có gi i h n b ng cách bi n i tuy n tính u vào (dùng hàm bi n i là hàmtuy n tính) hay phi tuy n (hàm m hay hàm logarit)

Trang 18

Hình 2.6 nh ch a t ng t ng ph n

Hình 2.7 nh sau khi t ng t ng ph n

Công th c chung cho l nh imadjust ( i v i t t c các nh xám, màu ) là:

>> J = imadjust(I, [low_in; high_in], [low_out; high_out], gamma);

• [low_out; high_out]: là giá tr m c xám nh sau bi n i Các giá tr c ch n

a nó n m trong kho ng [0 1], t ng t nh [low_in; high_in]

Trang 19

u gamma nh h n 1 thì nh sau bi n i s phi tuy n v i nh ban u, theo hàm m ng:

u gamma b ng 1 thì nh sau bi n i s t l tuy n tính v i nh ban u

u gamma l n h n 1 thì nh sau bi n i phi tuy n v i nh ban u theo hàm m ng:

Trang 20

Chú ý: Ta có thay i các thông s c a [low_in; high_in] ho c [low_out; high_out]

th c t , histogram th ng c chu n hóa b ng cách chia m i giá tr c a nó cho t ng s

m nh, ký hi u là n Do ó histogram chu n hóa cho b i p(rk) = nk/n v i k = 0, 1, 2,

…, L-1

Trang 24

các thông s tol cho hàm stretchlim ó là m t vector g m hai ph n t thu c [0 1] cho

bi t ta s ch n các gi i h n m c nào trong vùng bi n thiên m c xám (m c nh là[0.01 0.99])

>> [low, high] = stretchlim(I, tol);

>>figure; imshow(J2); title('Nhieu poisson');

>>J3 = imnoise(I,'salt & pepper');

>>figure; imshow(J3); title('Nhieu salt & pepper');

>>J4 = imnoise(I,'speckle');

>>figure; imshow(J4); title('Nhieu speckle');

Trang 26

Hình 2.18 nh sau khi tách biên v i Prewitt

Trang 27

Sau khi ti n hành dò biên i t ng trong nh, Matlab tr v 4 thông s B,L,N,A Trong

ó có 2 thông s ta c n quan tâm

Trang 29

Giao ti p máy tính v i webcam:

• Mua m t webcam có kèm theo a driver N u có webcam không có driver thì có

th tìm thông tin c a hãng bán webcam ó (có ghi trên s n ph m) Sau ó cài adriver vô máy tính

• m u n i webcam vào c ng USB

• ch ng trình ch y, lúc này máy tính ã có th giao ti p v i webcam

Matlab giao ti p v i Webcam:

Trong quá trình x lý nh, mu n ch p, quay phim…x lý nh m t cách tr c ti p twebcam v i ph n m m matlab Thì c n ph i th c hi n nh ng b c sau:

Ph i có file vfm.dll

Sau khi có file vfm.dll thì th c hi n chép file này vào a ch :

Trang 31

2.4.4 T o giao di n ng i s d ng:

Giao di n ng i s d ng (Graphical User Interface - GUI) là giao di n b ng hình

nh c a ch ng trình M t GUI t t có th làm cho ch ng trình tr nên d s d ng b ngcách cung c p nh ng thông tin ban u c n thi t và v i nh ng công c u khi n nh :nút nh n (Pushbutton), h p li t kê (list box), thanh tr t (slider), trình n(menu),…GUI nên c thi t k m t cách d hi u và thân thi n ng i s d ng có th

hi u và d oán c k t qu c a m t tác ng

Cách làm vi c c a m t GUI:

GUI bao g m các nút nh n, h p li t kê, thanh tr t, menu,… cung c p cho ng i

d ng m t môi tr ng làm vi c thân thi n V i GUI thì ng i s d ng ch c n hi u

c cách ng d ng c a nó, không c n i chi ti t quá sâu vào chuyên môn, không c n

hi u rõ cách th c làm vi c c a ch ng trình nh th nào Tuy nhiên, t o m t GUI là

t công vi c r t khó kh n i v i ng i l p trình b i vì GUI trong matlab thì ch a

c ph bi n, nghiên c u k , các h ng d n c ng nh ví d ng d ng là ch a nhi u

Các thành ph n chính trong m t GUI c a matlab:

• Component (các thành ph n c u thành): m i i t ng trong GUI (nút nh n,nhãn, h p so n th o,…) sau khi k t h p l i thì t o thành m t GUI hoàn ch nh

Callback: cu i cùng, khi ng i s d ng tác ng vào ch ng trình b ng cách

nh n chu t, hay gõ bàn phím thì ch ng trình ph i áp ng l i m i s ki n này

Các công c u khi n

hàm khi ta nh n vào nó

thái là “on” và “off” Khi

có tác ng nó s g i hàm

ng ng và thay i tr ngthái t “on” sang “off” và

ng c l i

Trang 32

t nhóm Radio button ta

ch có th ch n c m tthành ph n Khi có tác

ng c l i

chu i Ng i s d ng có

th ch n m t chu i b ngcách click ho c doubleclick vào nó Ch ng trình

g i m t hàm khi có m tchu i c ch n

chúng ta ch n m t chu itrong m t nhóm các chu i.Danh sách t t c các chu i

c hi n th khi cóclick chu t Khi không cóclick chu t công c ch th

Trang 33

Text field Uicontrol c s d ng t o ra m t

nhãn bao g m các ký t Text field không có kh

ng g i hàm

Menu và tr c th

menu trên thanh công c

Ch ng trình s g i hàmkhi m t i t ng trongmenu c ch n

tr c th Axes không

có kh n ng g i hàm

menu xu t hi n khi righclick vào m t hình tronggiao di n

Hình 2.20 M t s thành ph n trong giao di n

Trang 34

figure, imshow(I), title('Anh da cap xam');

figure, imhist(I), title('Histogram anh goc');

% Giai n ti n x lí nh

J1 = medfilt2(I);

figure, imshow(J1), title('Anh sau khi loc trung vi');

J2 = imadjust(J1);

figure, imhist(J2), title('Histogram cua anh sau khi hieu chinh');

figure, imshow(J2), title('Anh sau khi hieu chinh do sang');

nh a c p xám nh sau khi hi u ch nh sáng

Histogram nh g c Histogram c a nh sau khi hi u ch nh

Trang 35

J4 = wiener2(J2,[5 5]); % loc Wiener

threshold = graythresh(J4); % xac dinh nguong cua anh

BW = im2bw(J4,threshold);

figure, imshow(BW), title('Anh nhi phan');

nh nh phânBWdfill = imfill(BW,'holes');

figure, imshow(BWdfill), title('Anh nhi phan xac dinh khung bien so xe);

Trang 36

[m,n] = max(tam) % m : gia tri lon nhat ; n : vi tri hang cua gia tri max

W = cell2mat(B(n,1)); % chuyen tu mang sang ma tran

% Xac dinh toa do vung chua bien so xe

cot_min = min(W(:,1));

cot_max = max(W(:,1));

hang_min = min(W(:,2));

hang_max = max(W(:,2));

% ghi lai anh moi trich xuat tu anh goc voi toa do moi tim duoc

imwrite(J4(cot_min : cot_max, hang_min : hang_max),'catbienso.jpg');

RGBcrop = imread('catbienso.jpg');

figure, imshow(RGBcrop), title('Bien so xe duoc cat tu anh goc');

% Chuan hoa kich thuoc bien so xe

Y = imresize(RGBcrop,[300 400]);

figure, imshow(Y), title('Bien so xe duoc chuan hoa kich thuoc');

Vùng nh ch a bi n s xe c tách t nh g c

Trang 37

Sau khi tách c vùng nh ch a bi n s xe và chu n hóa l i kich th c nh, ta

ti p t c chia ôi bi n s xe thành n a trên (4 kí t trên) và n a d i (4 kí t d i)

u này giúp ta thu n l i h n trong vi c tách các kí t trong bi n s xe Kích th cchu n hóa c l a ch n sao cho ta d quan sát và thu n l i cho vi c tính toán

Trang 38

BW_Y1_fill = imfill(~BW_Y1,'holes');

figure, imshow(BW_Y1_fill), title('Binary image with filled holes');

% Xoa cac doi tuong nam tren bien anh

BW_Y1_nobord = imclearborder(BW_Y1_fill,8);

figure, imshow(BW_Y1_nobord), title('cleared border image');

nh sau khi c xóa nhi u t i biên nh

% xoa cac vung anh nho hon 100 pixel <=> nhieu dom trang

figure, imshow(W1), title('chu so thu 1');

figure, imshow(W2), title('chu so thu 2');

Trang 39

figure, imshow(W3), title('chu so thu 3');

figure, imshow(W4), title('chu so thu 4');

end

end

end

Trang 40

nh ngh ch o

Trang 41

BW_Y2_fill = imfill(~BW_Y2,'holes');

figure, imshow(BW_Y2_fill), title('binary image with filled holes');

% Xoa cac doi tuong nam tren bien anh

BW_Y2_nobord = imclearborder(BW_Y2_fill,8);

figure, imshow(BW_Y2_nobord), title('cleared border image');

nh sau khi c xóa nhi u t i biên nh

% xoa cac vung anh nho hon 100 pixel <=> nhieu dom trang

Trang 42

imwrite(Y2(cell_cot_min:cell_cot_max , cell_hang_min:cell_hang_max,:),'num5.jpg'); W5 = imread('num5.jpg');

figure, imshow(W5), title('chu so thu 5');

figure, imshow(W6), title('chu so thu 6');

figure, imshow(W7), title('chu so thu 7');

figure, imshow(W8), title('chu so thu 8');

end

end

end

% END

Ngày đăng: 30/10/2022, 19:02

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

TÀI LIỆU LIÊN QUAN

w