74
- 1 - HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN ___o0o___ ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ XE Giảng viên hướng dẫn : PGS.TS. TỪ MINH PHƯƠNG Sinh viên thực hiện : NGUYỄN MINH TUẤN Lớp : D05CNPM Khoá : 2005-2010 Hệ : Đại học chính quy

Do an Tot Nghiepv3.0

Embed Size (px)

Citation preview

Page 1: Do an Tot Nghiepv3.0

- 1 -

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN

___o0o___

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Đề tài:

TỰ ĐỘNG NHẬN DẠNG

KÝ TỰ TRÊN BIỂN SỐ XE

Giảng viên hướng dẫn : PGS.TS. TỪ MINH PHƯƠNG

Sinh viên thực hiện : NGUYỄN MINH TUẤN

Lớp : D05CNPM

Khoá : 2005-2010

Hệ : Đại học chính quy

Hà Nội, tháng … /2009

Page 2: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập - Tự do – Hạnh phúcKHOA CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC

Họ và tên sinh viên: NGUYỄN MINH TUẤN

Lớpp: D05CNPM Khoá: I (2005-2010)

Ngành đào tạo: Công nghệ thông tin Hệ đào tạo: Đại học chính quy

1/ Tên đồ án tốt nghiệp:

TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ XE

2/ Nội dung chính của đồ án:

1/Tìm hiểu bài toán tự động nhận dạng biển số xe

2/Tìm hiểu một số kỹ thuật xử lý và nhận dạng ảnh

3/Tìm hiểu thư viện mã nguồn mở OpenCV và LibSVM

4/ Cài đặt thử nghiệm chương trình tự động nhận dạng ký tự trên biển số xe

3/ Cơ sở dữ liệu ban đầu

Dữ liệu là tập ảnh thu thập tại:

Bãi giữ xe khu đô thị Văn Quán

Xung quanh khu đô thị Văn Quán

Nhà để xe của chung cư CT2B khu đô thị Văn Quán

Trên mạng internet

4/ Ngày giao đồ án: 15/12/2009

5/ Ngày nộp đồ án : …../…../2009

TRƯỞNG BỘ MÔN (Duyệt) GIÁO VIÊN HƯỚNG DẪN(Ký, ghi rõ họ tên) (Ký, ghi rõ họ tên)

TRƯỞNG KHOA

GVHD: PGS.TS.Từ Minh Phương - 2 - SVTH: Nguyễn Minh Tuấn

Page 3: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

LỜI CẢM ƠN

Để có được thành quả ngày hôm này, em xin chân thành cảm ơn các thầy cô khoa Công nghệ thông tin Học viện Công nghệ Bưu chính Viễn thông đã dạy dỗ, chỉ bảo em.

Em xin chân thành cảm ơn thầy giáo Từ Minh Phương – Trưởng Khoa Công Nghệ Thông Tin, người đã trực tiếp hướng dẫn tận tình cho em trong đề tài này. Cảm ơn thầy đã dành thời gian và những kinh nghiệm quý báu cho em. Em đã học được rất nhiều trong quá trình làm đồ án. Một lần nữa xin chân thành cảm ơn thầy.

Trong báo cáo của em, em đã sử dụng tài liệu “Giáo trình xử lý ảnh” của thầy Đỗ Năng Toàn – Viện công nghệ thông tin, “Nhập môn xử lý ảnh” của Đại học Bách Khoa Hà Nội và một tố tạp chí khoa học để tham khảo và nghiên cứu.

Em xin chân thành cảm ơn.

GVHD: PGS.TS.Từ Minh Phương - 3 - SVTH: Nguyễn Minh Tuấn

Page 4: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Hà Nội, ngày ..…/…../2009

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

Giáo viên hướng dẫn

(Kí và ghi đủ họ tên, chức danh)

PGS.TS. TỪ MINH PHƯƠNG

GVHD: PGS.TS.Từ Minh Phương - 4 - SVTH: Nguyễn Minh Tuấn

Page 5: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN

Hà Nội, ngày ..…/…../2009

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

.....................................................................................................................................................

Giáo viên phản biện

(Kí và ghi đủ họ tên, chức danh)

GVHD: PGS.TS.Từ Minh Phương - 5 - SVTH: Nguyễn Minh Tuấn

Page 6: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

MỤC LỤC

LỜI CẢM ƠN.................................................................................................................................3

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN........................................................................4

NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN...........................................................................5

MỤC LỤC.......................................................................................................................................6

DANH MỤC CÁC HÌNH VẼ........................................................................................................9

MỞ ĐẦU........................................................................................................................................10

Chương 1: BÀI TOÁN NHẬN DẠNG BIỂN SỐ XE................................................................12

1.1. Hệ thống tự động nhận dạng biển số xe.....................................................................12

1.1.1. Giới thiệu...............................................................................................................12

1.1.2. Lưu đồ chi tiết của hệ thống................................................................................12

1.1.3. Một số quy định về biển số xe Việt Nam............................................................13

1.1.4. Phân loại hệ thống nhận dạng biển số xe...........................................................15

1.1.5. Ứng dụng của hệ thống nhận dạng biển số xe...................................................16

1.2. Các phương pháp đã phát triển..................................................................................17

1.2.1. Các phương pháp tách biển số xe.......................................................................18

1.2.2. Các phương pháp tách ký tự và nhận dạng ký tự.............................................19

1.2.2.1. Tách ký tự.....................................................................................................................19

1.2.2.2. Nhận dạng ký tự...........................................................................................................21

Chương 2: CÁC KỸ THUẬT XỬ LÝ ẢNH LIÊN QUAN.......................................................23

2.1. Các kỹ thuật nâng cao chất lượng ảnh.......................................................................23

2.1.1. Chuẩn hóa histogram...........................................................................................23

2.1.2. Cân bằng histogram.............................................................................................25

2.1.3. Tách ngưỡng tự động...........................................................................................25

2.1.4. Phép cuộn và mẫu.................................................................................................26

2.1.5. Khử nhiễu..............................................................................................................26

2.2. Biên và phương pháp phát hiện biên..........................................................................27

2.2.1. Giới thiệu...............................................................................................................27

2.2.2. Kỹ thuật phát hiện biên Sobel.............................................................................27

Chương 3: TÁCH KÝ TỰ...........................................................................................................30

GVHD: PGS.TS.Từ Minh Phương - 6 - SVTH: Nguyễn Minh Tuấn

Page 7: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

3.1. Nhị phân hóa.................................................................................................................30

3.1.1. Cách tiếp cận của Chow và Kaneko...................................................................31

3.1.2. Ngưỡng cục bộ......................................................................................................32

3.2. Phát hiện biên Sobel.....................................................................................................33

3.3. Tách ký tự.....................................................................................................................33

3.3.1. Chiếu ngang..........................................................................................................33

3.3.2. Chiếu dọc...............................................................................................................37

Chương 4: NHẬN DẠNG KÝ TỰ..............................................................................................39

4.1. Tổng quan về nhận dạng..............................................................................................39

4.1.1. Không gian biểu diễn đối tượng và không gian diễn dịch................................39

4.1.2. Mô hình và bản chất của quá trình nhận dạng.................................................40

4.1.2.1. Mô hình.........................................................................................................................40

4.1.2.2. Bản chất của quá trình nhận dạng.............................................................................41

4.2. Phương pháp nhận dạng Support Vector Machine (SVM)......................................42

4.2.1. SVM trong trường hợp tập mẫu phân hoạch tuyến tính được........................42

4.2.1.1. Giai đoạn huấn luyện SVM.........................................................................................42

4.2.1.2. Giai đoạn nhận dạng....................................................................................................45

4.2.2. SVM phi tuyến......................................................................................................45

4.2.3. Một số ví dụ về hàm kernel..................................................................................48

4.2.4. SVM cho vấn đề nhận dạng đa lớp.....................................................................49

4.2.4.1. One – vs – rest...............................................................................................................49

4.2.4.2. One-vs-one....................................................................................................................50

Chương 5: CÀI ĐẶT THỰC NGHIỆM.....................................................................................52

5.1. Thử nghiệm...................................................................................................................52

5.1.1. Điều kiện thử nghiệm và giới hạn.......................................................................52

5.1.2. Dữ liệu....................................................................................................................52

5.1.3. Phương pháp.........................................................................................................53

5.1.3.1. Lựa chọn tham số.........................................................................................................54

5.1.4. Kết quả..................................................................................................................55

GVHD: PGS.TS.Từ Minh Phương - 7 - SVTH: Nguyễn Minh Tuấn

Page 8: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

5.1.5. Các lỗi nhận dạng.................................................................................................56

5.2. Chương trình................................................................................................................56

5.3. Hướng nghiên cứu phát triển......................................................................................57

TÀI LIỆU THAM KHẢO............................................................................................................59

GVHD: PGS.TS.Từ Minh Phương - 8 - SVTH: Nguyễn Minh Tuấn

Page 9: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

DANH MỤC CÁC HÌNH VẼHình 1.1: Sơ đồ hệ thống tự động nhận dạng biển số xeHình 1.2: Lưu đồ chi tiết của hệ thống tự động nhận dạng biển số xeHình 1.3: Biển trắngHình 1.4: Biển xanhHình 1.5: Biển đỏHình 1.6: Kích thước biển trướcHình 1.7: Kích thước biển sauHình 1.8: Ứng dụng của hệ thống tự động nhận dạng biển số xeHình 1.9: Các module trong hệ thống tự động nhận dạng biển số xeHình 1.10: Tách biển bằng dò biên và HoughHình 1.11: Các bước tách ký tự sử dụng kỹ thuật tách ngưỡngHình 1.12: Các bước tách ký tự sử dụng kỹ thuật sobelHình 1.13: Noron sinh họcHình 2.1: Chuẩn hóa histogramHình 3.1: Lưu đồ tách ký tựHình 3.2: Ảnh qua quá trình nhị phân hóaHình 3.3: Biển số được chia ra thành 6 hình chữ nhật nhỏ với histogram và ngưỡng của riêng nóHình 3.4: Ảnh qua quá trình phát hiện biên sobelHình 3.5: Đồ thị chiếu ngang của biển sốHình 3.6: Đồ thị chiếu ngang của biển số sau khi xóa phép chiếu ngang trong khoảng [b,t]Hình 3.7: Đồ thị chiếu ngang đối với ảnh nhị phân hóaHình 3.8: Đồ thị chiếu ngang đối với ảnh phát hiện biên sobelHình 3.9: Đồ thị chiếu dọc đối với ảnh nhị phân hóaHình 4.1: Sơ đồ tổng quát một hệ nhận dạngHình 4.2: Siêu phẳng phân chia hai tập mẫuHình 4.3: 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ơnHình 4.4: Mặt phẳng [-1, 1] x [-1, 1] trong R2 thành mặt cong trong R3Hình 4.5: RBF Gaussian Kernel có thể chuyển một mặt bất kỳ thành một siêu phẳngHình 4.6: Hàm nhận dạng SVM 2 - vs – rest có giá trị bé nhất, nên mẫu cần nhận dạng là lớp thứ Hình 4.7: SVM loại trừHình 4.8: Sơ đồ loại trừ trong các tình huốngHình 5.1: Tập dữ liệuHình 5.2: Phương pháp tách ký tự được lựa chọnHình 5.3: Kết quả chọn tham số gama bằng tool của libSVMHình 5.4: Giao diện chính của chương trìnhHình 5.5: Giải thích giao diện chính của chương trình

GVHD: PGS.TS.Từ Minh Phương - 9 - SVTH: Nguyễn Minh Tuấn

Page 10: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

MỞ ĐẦUCùng với sự phát triển của công nghệ và khoa học kỹ thuật, các hệ thống giao thông thông

minh đang dần trở thành những công cụ hỗ trợ đắc lực cho con người. Có rất nhiều thành tựu khoa học công nghệ trong giao thông vận tải giúp các nhà quản lý giám sát và điều khiển sự di chuyển, hoạt động của các phương tiện giao thông ở các đô thị lớn. Một trong số đó là hệ thống nhận dạng biển số xe tự động. Hệ thống này làm đơn giản hóa việc nhận dạng biển số xe bằng cách áp dụng các kỹ thuật xử lý ảnh để xử lý ảnh hoặc một đoạn video có chứa phương tiện giao thông.

Trong những năm gần đây, số lượng các phương tiện tham gia vào giao thông ngày càng tăng do nhu cầu đi lại, sản xuất của người dân ngày càng nhiều. Lưu lượng các phương tiện giao thông sử dụng ở những nơi công cộng rất lớn. Vấn đề quản lý các phương tiện giao thông tại các địa điểm công cộng, bãi giữ xe là một bài toán lớn cho các nhà quản lý. Bên cạnh vấn đề quản lý sao cho phù hợp, yêu cầu về kinh tế cũng không thể bỏ qua. Mặc dù việc sử dụng mắt người là cách tốt nhất để đọc biển số xe nhưng đó không phải là cách giải quyết trên quy mô rộng lớn. Bài toán đặt ra ở đây cho những người làm khoa học là cần phải xây dựng một hệ thống tự động quản lý các phương tiện giao thông nơi công cộng với một chi phí phù hợp với điều kiện kinh tế Việt Nam.

Trong hệ thống này cần có một chương trình nhận dạng biển số xe tự động trên ảnh. Kết hợp chương trình này với phần cứng phù hợp thành một hệ thống hoàn chỉnh. Hệ thống này giúp các nhà quản lý giảm thiểu nhân lực, tiết kiệm chi phí, triển khai trên quy mô rộng. Đồng thời hỗ trợ con người trong những công việc tẻ nhạt như nhận xe, trả xe, ghi vé xe…Hệ thống nhận dạng biển số xe tự động mong muốn phải làm việc được trong nhiều điều kiện và môi trường khác nhau như thiếu ánh sáng, độ tương phản của ảnh đầu vào thấp, ảnh đầu vào nhòe, biển số bẩn, điều kiện thời tiết khắc nghiệt.

Ngoài việc hỗ trợ coi giữ xe ở những nơi công cộng, hệ thống nhận dạng biển số xe còn được lắp đặt với nhiều mục đích khác nhau. Hệ thống nhận dạng biển số xe được lắp cùng với hệ thống tự động mở cổng, sẽ nhận dạng biển số xe của công ty, biển số xe của khách để tiến hành mở cổng. Trên các trạm thu phí người ta sử dụng hệ thống tự động nhận dạng biển số xe để thu lộ phí các phương tiện giao thông. Hay trên các xa lộ, các trọng điểm giao thông, người ta lắp đặt hệ thống này để hỗ trợ công tác điều tra, truy bắt tội phạm…

Hiện nay, trên thế giới các hệ thống nhận dạng biển số xe tự động đang được áp dụng một cách rộng rãi, điển hình là hệ thống tự động nhận dạng biển số xe ANPR (Automatic Number Plate Recognition). Nhưng các hệ thống này yêu cầu sử dụng các thiết bị chuyên dụng có giá thành cao, đồng thời khó áp dụng ở Việt Nam. Vì vậy việc xây dựng một hệ thống tương tự phù hợp với điều kiện của Việt Nam là một yêu cầu thiết yếu. Ngoài ra do đặc thù biển số xe của mỗi nước là khác nhau nên không thể áp dụng một cách trực tiếp hệ thống ANPR vào Việt Nam.

Nhìn chung các hệ thống nhận dạng biển số xe tự động được chia thành 3 phần chính: phát hiện vùng chứa biển số (tách biển số), phân đoạn ký tự (tách ký tự) và nhận dạng kí tự đã

GVHD: PGS.TS.Từ Minh Phương - 10 - SVTH: Nguyễn Minh Tuấn

Page 11: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

tách. Đồ án này nhằm giải quyết hai vấn đề: phân đoạn ký tự (tách ký tự) và nhận dạng kí tự đã tách.

Bố cục của đồ án này bao gồm 5 chương:

Chương 1: Bài toán nhận dạng biển số xe

Chương 2: Các kỹ thuật xử lý ảnh liên quan

Chương 3: Tách kí tự

Chương 4: Nhận dạng kí tự

Chương 5: Cài đặt thử nghiệm

GVHD: PGS.TS.Từ Minh Phương - 11 - SVTH: Nguyễn Minh Tuấn

Page 12: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chương 1: BÀI TOÁN NHẬN DẠNG BIỂN SỐ XE

1.1.Hệ thống tự động nhận dạng biển số xe

1.1.1. Giới thiệu

Hệ thống tự động nhận dạng biển số xe là hệ thống có khả năng phân tích, xử lý hình ảnh biển số xe trên các hình ảnh chụp được từ các thiết bị thu hình, cho kết quả đầu ra là chuỗi ký tự trên biển số. Nguồn hình ảnh cho ứng dụng có rất nhiều nhưng thường là hình ảnh được thu nhận trực tiếp từ camera. Đầu vào của hệ thống là ảnh phương tiện giao thông có biển số xe. Đầu ra là chuỗi ký tự trên biển số xe.

Hình 1.1: Sơ đồ hệ thống tự động nhận dạng biển số xe

Trong đồ án này, em xin phát triển một hệ thống tự động nhận dạng biển số xe với một số giới hạn:

Biển số là biển số Việt Nam tức là hệ thống chỉ hoạt động ở phạm vi trong nước. Nếu đưa hệ thống ra hoạt động ở nước ngoài thì độ chính xác sẽ giảm.

Hệ thống chỉ xử lý ảnh có chứa biển số nền trắng chữ đen.

Vùng ảnh biển số có góc nghiêng ≤ 4o

Từ những điều kiện trên, bài toán tự động nhận dạng biển số xe được phát biểu như sau: Xây dựng hệ thống tự động nhận dạng biển số xe Việt Nam. Đầu vào là ảnh chụp phương tiện cùng với biển số. Đầu ra là các ký tự trên biển số xe dưới dạng text.

1.1.2. Lưu đồ chi tiết của hệ thống

GVHD: PGS.TS.Từ Minh Phương - 12 - SVTH: Nguyễn Minh Tuấn

Tiền xử lý

Ảnh thu từ camera

Phát hiện vùng biển số

Nhận dạng ký tự

Tách ký tự trên biển số

Chuỗi ký tự

Page 13: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 1.2: Lưu đồ chi tiết của hệ thống tự động nhận dạng biển số xe

1.1.3. Một số quy định về biển số xe Việt Nam

Nhìn chung biển số xe đều có những đặc điểm: hình vuông hoặc hình chữ nhật, có màu sáng, phủ sơn phản quang, có chứa một số ký tự, thường được gắn ở đằng trước hoặc đằng sau xe hoặc cả hai. Tuy nhiên, ở mỗi quốc gia biển số xe lại có những đặc thù riêng về kích thước, tỷ lệ chiều rộng/chiều dài, số lượng ký tự, kiểu ký tự…

GVHD: PGS.TS.Từ Minh Phương - 13 - SVTH: Nguyễn Minh Tuấn

Yêu cầu ảnhYêu cầu ảnh

Nâng cao chất lượng ảnhNâng cao chất lượng ảnh

Trích ký tựTrích ký tự

Trích biển sốTrích biển số

Nhận dạng ký tựNhận dạng ký tự

Dữ liệu ký tự

Dữ liệu ký tự

TrainningTrainning

Engine nhận dạng ký tự

Engine nhận dạng ký tự

Mạng noron nhân tạo hoặc hệ

SVM (Super vector Machine)

Mạng noron nhân tạo hoặc hệ

SVM (Super vector Machine)

Chuỗi ký tự kết quả

Tiêu chí của biển số

Chọn ngưỡng Phát hiện biên sobel

Chuẩn hóa ký tựChuẩn hóa ký tự

Kích thước chuẩn

Lọc nhiễu, chuẩn hóa histogram

Page 14: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Ở Việt Nam, biển số xe là tấm biển gắn trên mỗi xe cơ giới, được cơ quan công an cấp khi mua xe mới hoặc chuyển nhượng xe. Biển số xe được làm bằng hợp kim nhôm sắt, có dạng hình chữ nhật hoặc hơi vuông, trên đó có in những con số và chữ cho biết: vùng và địa phương quản lý, các con số cụ thể khi tra trên máy tính còn cho biết danh tính người chủ hay đơn vị đã mua nó, thời gian mua nó phục vụ cho công tác an ninh...Đặc biệt trên đó còn có hình quốc huy của nước CHXHCN Việt Nam.

Một số đặc điểm của biển số xe Việt Nam:

Màu sắc:

o Nền biển màu trắng, chữ màu đen là xe thuộc sở hữu cá nhân và xe của các

doanh nghiệp.

Hình 1.3: Biển trắng

o Nền biển màu xanh dương, chữ màu trắng là biển xe của các cơ quan hành

chính sự nghiệp (dân sự).

Hình 1.4: Biển xanh

o Nền biển màu đỏ, chữ màu trắng là xe quân đội, xe của các doanh nghiệp quân

đội.

Hình 1.5: Biển đỏ

o Nền biển màu vàng chữ trắng là xe thuộc Bộ tư lệnh Biên phòng (ít gặp)

o Nền biển màu vàng chữ đen là xe cơ giới chuyên dụng làm công trình

Kích thước của biển số:

GVHD: PGS.TS.Từ Minh Phương - 14 - SVTH: Nguyễn Minh Tuấn

Page 15: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

o Biển số xe ô tô gồm 2 biển không giống nhau về kích thước nhưng giống về

chữ và số trong biển. Một biển gắn phía trước và một biển gắn phía sau xe. Có kích thước như sau:

- Biển trước: Chiều cao 110 mm, chiều dài 470 mm.

Hình 1.6: Kích thước biển trước

- Biển sau: Chiều cao 200 mm, chiều dài 280 mm.

Hình 1.7: Kích thước biển sau

o Biển số rơ moóc, sơ mi rơ moóc: 1 biển gắn phía sau thành xe. Kích thước:

Chiều cao 200 mm, chiều dài 280 mm.

o Biển số xe mô tô: 1 biến gắn phía sau xe. Kích thước: Chiều cao 140 mm,

chiều dài 190 mm.

1.1.4. Phân loại hệ thống nhận dạng biển số xe

Có một vài tiêu chí khác nhau để phân loại các hệ thống nhận dạng biển số xe như mục đích sử dụng, kiểu ảnh đầu vào…Dựa trên loại ảnh mà hệ thống phân tích xử lý có thể chia ứng dụng nhận dạng biển số xe thành hai loại sau:

Loại 1: Ảnh đầu vào có giới hạn vùng nhìn:

- Đầu vào: Ảnh thu trực tiếp từ các thiết bị ghi nhận ảnh kỹ thuật số. Ảnh được ghi nhận thường chỉ giới hạn trong vùng có biển số xe.

- Nguyên lý hoạt động: Các phương tiện giao thông phải chạy với một tốc độ đủ chậm để máy ghi nhận hình ảnh co thể thu được ảnh vùng biển số xe.

- Ứng dụng: Những ứng dụng nhận dạng biển số xe loại này thường được dung tại cac trạm kiểm soát, các trạm thu phí, các bãi gửi xe tự động, các trạm gác cổng.

GVHD: PGS.TS.Từ Minh Phương - 15 - SVTH: Nguyễn Minh Tuấn

470mm

110mm

280mm

200mm

Page 16: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Loại 2: Ảnh đầu vào không giới hạn vùng nhìn.

- Đầu vào: Ảnh đầu vào thu được từ các thiết bị ghi hình tự động, không phụ thuộc vào góc độ, các đối tượng xung quanh, ảnh không cần bắt buộc chỉ chụp vùng chứa biển số xe, mà có thể ảnh tổng hợp như chứa thêm các đối tượng như người, cây, đường phố.., miễn là vùng biển số xe phải đủ rõ để có thể thực hiện nhận dạng được các ký tự trong vùng đó

- Nguyên lý hoạt động: Do đặc tính không giới hạn vùng nhìn mà ảnh đầu vào có thể thu được từ một thiết bị ghi hình (camara, máy ảnh…). Và do đó, công việc đầu tiên là dò tìm trong ảnh, để xác định đúng vùng nào là biển số xe. Sau đó, thực hiện tách vùng và nhận dạng. Cuối cùng tùy thuộc vào mục đích sử dụng mà kết quả nhận dạng được truyền đi hay lưu trữ để phục vụ nhu cầu của người dùng cuối.

- Ứng dụng: Vì không phụ thuộc vào hình ảnh thu được nên có thể dùng ứng dụng tại nhiều nơi như tại những nơi điều tiết giao thông, tại các vị trí nhạy cảm của giao thông như ngã ba, ngã tư đường giao nhau. Kiểm soát, phát hiện những hành vi vi phạm an toàn giao thông.

Trong quá trình tìm hiểu, xây dựng ứng dụng của mình. Ứng dụng mà em hướng tới trong quá trình xây dựng là ứng dụng loại 1. Tức là ảnh đầu vào được giới hạn góc độ, số lượng các đối tượng khác là tối thiểu.

1.1.5. Ứng dụng của hệ thống nhận dạng biển số xe

Hệ thống nhận dạng biến số xe được xây dựng nhằm mục đích giám sát, kiểm soát các phương tiện. Dưới đây chúng ta đề cập đến một số ứng dụng phổ biến đối với hệ thống nhận dạng biển số xe:

Đối với các cơ quan: ứng dụng sẽ nhận dạng, và biết được xe đó có phải là xe của cơ quan mình không, để tiến hành tự động đóng mở cổng

GVHD: PGS.TS.Từ Minh Phương - 16 - SVTH: Nguyễn Minh Tuấn

Page 17: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 1.8: Ứng dụng của hệ thống tự động nhận dạng biển số xe

Tại các bãi xe tự động: sẽ nhận biết được xe vào và ra khỏi nhà để xe….

Tại các trạm thu phí: Ứng dụng hỗ trợ tự động thu phí giao thông. Mà không cần nhân viên thu phí. Đảm bảo nhan chóng, chính xác

Được sử dụng trong giao thông: hệ thống xác định những xe vi phạm giao thông, như phóng vượt tốc độ cho phép, vượt đèn đỏ…

Và còn được sử dụng trong nhiều lĩnh vực khác.

1.2.Các phương pháp đã phát triển

Với bài toán này, chúng ta có thể có rất nhiều hướng giải quyết tùy vào đặc thù của biển số xe mỗi quốc gia và thuật toán được lựa chọn. Tuy nhiên nhìn chung thì có một số kỹ thuật chung được áp dụng vào bài toán nhận dạng biển số xe. Những kỹ thuật này có thể kể ra đây như: phương pháp hình thái học, phương pháp hough, phương pháp chiếu…

Vấn đề chính gặp phải khi xây dựng hệ thống tự động nhận dạng biển số xe là vấn đề phân đoạn ảnh. Có hai giai đoạn phân đoạn ảnh chính. Thứ nhất là xác định và trích xuất vùng biển số xe từ ảnh lớn hơn. Thứ hai là trích xuất các ký tự alpha từ vùng biển đã có.

Giải quyết bài toán này yêu cầu một hệ thống các thủ tục được sắp xếp hợp lý. Để dễ dàng hơn, bài toán sẽ được chia thành hai bài toán nhỏ: bài toán tách biển số xe, bài toán tách ký tự và nhận dạng ký tự.

Với thời khối lượng thời gian có hạn, quy mô bài toán nhỏ em xin phép được nghiên cứu và giải quyết bài toán: tách ký tự và nhận dạng ký tự.

GVHD: PGS.TS.Từ Minh Phương - 17 - SVTH: Nguyễn Minh Tuấn

Nhận dạng

Phát hiện vùng biển số

Tách ký tự

Nhận dạng ký tự

Hệ thống tự động nhận

dạng biển số xe

Page 18: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 1.9: Các module trong hệ thống tự động nhận dạng biển số xe

1.2.1. Các phương pháp tách biển số xe

a. Hướng tiếp cận dò biên và biến đổi Hough

Ý tưởng của cách tiếp cận này là: Biển số xe được bao bọc bởi đường viền. Do đó, có thể dùng phương pháp phát hiện biên, sau đó dùng phép biến đổi Hough để tách những đoạn thẳng dọc, ngang tồn tại trong ảnh. Giao điểm của những đoạn thẳng này chính là vùng bao chứa biển số xe. Và cuối cùng là tiến hành nhận dạng các ký tự ở trên mỗi vùng con [7] [4] [8].

Hình 1.10: Tách biển bằng dò biên và Hough

Ưu điểm: độ chính xác cao. Và các hệ thống nhận dạng đa phần đều phát triển theo hướng tiếp cận này.

Nhược điểm: Độ phức tạp tính toán khá cao. Khi ảnh có thêm nhiều đối tượng khác thì khối lượng tính toán tăng lên rất nhiều. Do mục đích là phải xác định được vùng con nào chứa biển số xe.

b. Hướng tiếp cận dò biên sobel và chiếu

Ý tưởng của cách tiếp cận này là: Trên biển số xe có rất nhiều ký tự nên khi dò biên sobel có thể phát hiện ra các ký tự này, rồi dùng phép chiếu để tách dải ảnh có các ký tự này. Sau đó dùng một số kỹ thuật phụ trợ để giới hạn lại độ rộng của dải ảnh, khi đó ta có thể xác định được vùng biển số xe [3] [6].

GVHD: PGS.TS.Từ Minh Phương - 18 - SVTH: Nguyễn Minh Tuấn

Tách ngưỡngTách ngưỡng

Phát hiện biên dọcPhát hiện biên dọc

Biển đổi HoughBiển đổi Hough

Phát hiện biên ngangPhát hiện biên ngang

Biển đổi HoughBiển đổi Hough

Trích các đoạn thẳngTrích các đoạn thẳngTrích các đoạn thẳngTrích các đoạn thẳng

Trích vùng ứng cửTrích vùng ứng cử

Page 19: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Ưu điểm: Khá nhanh và đơn giản do không phải xét nhiều các cặp đường thẳng như phương pháp hough.

Nhược điểm: Nếu gặp những ảnh có xen lẫn các đối tượng là ký tự thì dễ cho kết quả không như mong muốn. Vùng được nhận ra không phải là vùng biển số mà có thể là vùng chứa những ký tự đó. Đôi khi ảnh đầu vào có nhiều đối tượng khác cũng làm cho độ chính xác của cách tiếp cận này giảm đi rất nhiều.

c. Hướng tiếp cận phát triển vùng

Ý tưởng của phương pháp này: đó là biển số xe thường chứa một màu đồng nhất, chẳng hạn màu trắng, và có diện tích tương đối nhất định. Vì vậy có thể dùng phương pháp phát triển vùng, hoặc sử dụng khung chữ nhật di chuyển trong để tìm ra vùng có tính chất thỏa mãn biển số xe và tiến hành nhận dạng.

Ưu điểm: rất đơn giản, và xử lý rất nhanh đối với những ảnh chỉ chứa vùng biển số xe.

Nhược điểm: khi ảnh có thêm nhiều đối tượng không phải là vùng biển số xe, chẳng hạn là ảnh chụp tổng quát gồm cả cảnh vật bên ngoài thì cách tiếp cận này trở nên không hiệu quả. Vì vậy phương pháp này rất hiệu quả đối với hệ thống trạm thu phí, trạm gác cổng, gửi xe tự động

Ngoài những cách tiếp cận trên, còn có nhiều cách tiếp cận khác để xác định chính xác vùng nào chứa biển số xe và bước cuối cùng là tiến hành nhận dạng ký tự. Mỗi cách tiếp cận có một ưu và nhược điểm. Đa số các ứng dụng đều sử dụng cách tiếp cận biến đổi Hough.

1.2.2. Các phương pháp tách ký tự và nhận dạng ký tự

1.2.2.1. Tách ký tự

Bước tiếp theo sau khi tách được biển số xe là tách ký tự trên biển số. Đây là một bước quan trọng trong quy trình nhận dạng biển số xe tự động bởi vì tất cả các bước sau đó đều phụ thuộc vào bước này. Nếu tách ký tự không chính xác thì mọi cố gắng tiếp theo đều vô nghĩa.

Việc tách ký tự có thể gặp phải một số khó khăn như dính ký tự, dính viền biển số với ký tự, không thể tách được ký tự do ký tự quá mờ hoặc biển số quá cũ. Đôi khi ký tự tách được lại có một số nhiễu đi kèm. Đặc biệt đối với Việt Nam, rất nhiều ký tự trên biển số bị che lấp bởi các đinh ốc gắn vào biển. Đây là một thách thức lớn đối với quá trình nhận dạng.

Có rất nhiều phương pháp để thực hiện tách ký tự, một số phương pháp có thể kể đến như phương pháp chiếu, phương pháp hình thái học, phương phát phát hiện contour, phương pháp sử dụng trí tuệ nhân tạo… Tuy nhiên phương pháp chiếu có vẻ như được lựa chọn nhiều hơn. Trong bài báo cáo này em cũng tập trung vào phương pháp chiếu. Với phương pháp chiếu này chúng ta cũng có nhiều cách thực hiện, có thể nhị phân ảnh rồi chiếu, có thể phát hiện biên rồi chiếu.

GVHD: PGS.TS.Từ Minh Phương - 19 - SVTH: Nguyễn Minh Tuấn

Page 20: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

a. Phương pháp đã phát triển - Sử dụng ngưỡng xám và chiếu

Phương pháp này sử dụng một ngưỡng tự động để làm nổi ký tự rồi chiếu ngang, chiếu dọc để phân tách ký tự [8].

Hình 1.11: Các bước tách ký tự sử dụng kỹ thuật tách ngưỡng

Các bước xử lý:

- Chuyển ảnh đầu vào thành ảnh xám 256 mức xám

- Tiền xử lý: lọc nhiễu, chuẩn hóa histogram…

- Nhị phân hóa ảnh xám bằng thuật toán tách ngưỡng. Thông thường người ta thường dùng thuật toán tách ngưỡng Otsu hoặc thuật toán tách ngưỡng thích ứng (adaptive thresolding)

- Chiếu ngang để phát hiện dòng chữ trên biển số xe

- Tách các dòng ký tự

- Chiếu dọc để phát hiện ra các ký tự

- Tách các ký tự

- Chuẩn hóa ký tự về một kích thước cố định

GVHD: PGS.TS.Từ Minh Phương - 20 - SVTH: Nguyễn Minh Tuấn

Ảnh đầu vàoẢnh đầu vào

Ảnh xámẢnh xám

Nhị phân hóaNhị phân hóa

Tiền xử lýTiền xử lý

Chiếu ngangChiếu ngang

Chiếu dọcChiếu dọcTách dòng chữTách dòng chữ

Tách ký tựTách ký tựChuẩn hóa ký tựChuẩn hóa ký tự

Page 21: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

b. Phương pháp đề xuất - Sử dụng phát hiện biên sobel và chiếu

Hình 1.12: Các bước tách ký tự sử dụng kỹ thuật sobel

Các bước xử lý:

- Chuyển ảnh đầu vào thành ảnh xám 256 mức xám

- Tiền xử lý: lọc nhiễu, chuẩn hóa histogram…

- Phát hiện biên dọc bằng thuật toán sobel

- Chiếu ngang để phát hiện dòng chữ trên biển số xe

- Tách các dòng ký tự

- Nhị phân hóa ảnh xám bằng thuật toán tách ngưỡng

- Chiếu dọc để phát hiện ra các ký tự

- Tách các ký tự

- Chuẩn hóa ký tự về một kích thước cố định

1.2.2.2. Nhận dạng ký tự

Sau khi tách rời được các ký tự, việc tiếp theo là nhận dạng ký tự. Bài toán nhận dạng ký tự là bài toán đã được phát triển và sử dụng trong rất nhiều ứng dụng như nhận dạng chữ viết tay, nhận dạng chữ in. Với bài toán nhận dạng biển số xe, số lượng ký tự ít, các kiểu font chữ ít cho nên độ phức tạp cũng ít hơn, đó là một thuận lợi.

GVHD: PGS.TS.Từ Minh Phương - 21 - SVTH: Nguyễn Minh Tuấn

Ảnh đầu vàoẢnh đầu vào Ảnh xámẢnh xám Tiền xử lýTiền xử lý

Sobel cho biên dọcSobel cho biên dọcChiếu ngangChiếu ngang

Chiếu dọcChiếu dọc

Tách dòng chữTách dòng chữ

Tách ký tựTách ký tự

Chuẩn hóa ký tựChuẩn hóa ký tự

Nhị phân hóaNhị phân hóa

Page 22: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Phương pháp nhận dạng ký tự phổ biến là sử dụng mạng noron tức là huấn luyện cho máy tính nhận dạng các ký tự. Phương pháp này cho kết quả khá chính xác [3] [4].

Hình 1.13: Noron sinh học

Bên cạnh đó còn có một phương pháp khác là phương pháp hình thái học. Phương pháp này sử dụng các hình thái đặc biệt của các ký tự để phân biệt các ký tự. Các ký tự đều có những đặc điểm hình thái riêng có thể phân biệt với nhau chẳng hạn như ‘0’ có lỗ trống ở giữa, ‘8’ có 2 lỗ trống hay ‘X’ đối xứng 2 trục ngang và dọc…

Hai phương pháp trên đã được sử dụng khá nhiều, tuy nhiên ở đây em không sử dụng phương pháp nào trong hai phương pháp trên. Phương pháp mà em lựa chọn là phương pháp nhận dạng SVM (support vector machine).

Phương pháp SVM sử dụng một không gian đa chiều để phân hoạch các mẫu. Các mẫu nhận dạng được biểu diễn dưới dạng véc tơ. Ban đầu, thuật toán dựa vào tập mẫu để phân hoạch không gian véc tơ thành các không gian con. Mỗi không gian con tương ứng với một loại mẫu. Dựa vào các không gian con này, phương pháp SVM có thể nhận dạng được các mẫu. Phương pháp này sẽ được trình bày cụ thể ở những chương sau.

GVHD: PGS.TS.Từ Minh Phương - 22 - SVTH: Nguyễn Minh Tuấn

Page 23: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chương 2: CÁC KỸ THUẬT XỬ LÝ ẢNH LIÊN QUAN

2.1.Các kỹ thuật nâng cao chất lượng ảnh

2.1.1. Chuẩn hóa histogram

Chuẩn hóa histogram là kỹ thuật phân bố lại histogram của ảnh. Những chỗ có độ tương phản thấp sẽ đạt được độ tương phản cao hơn mà không làm ảnh hưởng đến đặc điểm của ảnh.

Khái niệm histogram [1]: Biểu đồ tần suất của mức xám g của ảnh I là số điểm ảnh có giá trị g của ảnh I. Ký hiệu là h(g)

Ví dụ:

I =

Xét một ảnh một ảnh xám được định nghĩa bởi một hàm f(x,y). Cho I là tổng số mức xám trong ảnh (ví dụ I = 256). Chúng ta sử dụng biểu đồ tần suất histogram để xác định tần suất của

mỗi mức xám i, i 0 … I – 1[3].

Trong đó:

- x, y: tọa độ điểm ảnh

- w: độ rộng của ảnh

- h: chiều cao của ảnh

Giá trị lớn nhất, nhỏ nhất và trung bình trong histogram được định nghĩa như sau:

GVHD: PGS.TS.Từ Minh Phương - 23 - SVTH: Nguyễn Minh Tuấn

Page 24: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Trong đó Hmin , Hmax , Havg thỏa mãn điều kiện sau:

Mục đích của việc chuẩn hóa histogram là để đạt được một histogram chuẩn mà Hmin = 0,

Hmax = I-1 , Havg = . Để đạt được mục đích này chúng ta sẽ xây dựng một hàm biến đổi g(i).

Cho [x1, y1] = [Hmin ,0], [x2, y2] = [Havg , ] và [x3, y3] = [Hmax ,I-1] thì hàm g(i) được định

nghĩa như sau[3]:

Có thể triển khai cụ thể như sau:

Thay lần lượt các điểm đã cho ở trên vào, với số mức xám 256 ta có:

GVHD: PGS.TS.Từ Minh Phương - 24 - SVTH: Nguyễn Minh Tuấn

Page 25: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 2.1: Chuẩn hóa histogram

2.1.2. Cân bằng histogram

Ảnh I được gọi là cân bằng “lý tưởng” nếu với mọi mức xám g, g’ ta có h(g) = h(g’) [1]

Giả sử , ta có:

- ảnh I ~ kích thước m x n

- new_level ~ số mức xám của ảnh cân bằng

- TB = (m x n)/new_level ~ số điểm ảnh trung bình của mỗi mức xám của ảnh cân bằng

- ~ số điểm ảnh có mức xám ≤ g

Xác định hàm f: g → f(g), sao cho:

2.1.3. Tách ngưỡng tự động

Ngưỡng θ trong kỹ thuật tách ngưỡng thường được cho bởi người sử dụng. Kỹ thuật tách ngưỡng tự động nhằm tìm ra ngưỡng θ một cách tự động dựa vào histogram [1].

Giả sử , ta có:

- ảnh I ~ kích thước m x n

GVHD: PGS.TS.Từ Minh Phương - 25 - SVTH: Nguyễn Minh Tuấn

Page 26: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

- G ~ số là số mức xám của ảnh kể cả khuyết thiếu

- t(g) ~ số điểm ảnh có mức xám ≤ g

- ~ mô men quán tính TB có mức xám ≤ g

Hàm f: g → f(g)

Tìm θ sao cho:

2.1.4. Phép cuộn và mẫu

Giả sử ta có ảnh I kích thước M x N, mẫu T có kích thước m x n khi đó, ảnh I cuộn theo mẫu T được xác định bởi công thức.

Hoặc

Nhận xét: Trong quá trình thực hiện phép cuộn có một số thao tác ra ngoài ảnh, ảnh không xác định tại những vị trí đó dẫn đến ảnh thu được có kích thước nhỏ hơn [1].

2.1.5. Khử nhiễu

2.1.5.1. Lọc trung vị

a. Định nghĩa

Cho dãy x1; x2...; xn đơn điệu tăng (giảm). Khi đó trung vị của dãy ký hiệu là Med({xn}), được định nghĩa[1]:

Nếu n lẻ Med({xn}) = x[ ]

GVHD: PGS.TS.Từ Minh Phương - 26 - SVTH: Nguyễn Minh Tuấn

(CT.2 - 1)

(CT.2 - 2)

Page 27: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Nếu n chẵn Med({xn}) = x[ ] hoặc Med({xn}) = x[ ]

b. Kỹ thuật lọc trung vị

Giả sử ta có ảnh I ngưỡng θ cửa sổ W(P) và điểm ảnh P. Khi đó kỹ thuật lọc trung vị phụ thuộc không gian bao gồm các bước cơ bản sau[1]:

Bước 1: Tìm trung vị

Bước 2: Gán giá trị

2.1.5.2. Lọc trung bình

a. Định nghĩa

Cho dãy x1, x2…, xn khi đó trung bình của dãy ký hiệu AV({xn}) được định nghĩa[1]:

b. Kỹ thuật lọc trung bình

Giả sử ta có ảnh I, điểm ảnh P, cửa sổ W(P) và ngưỡng θ. Khi đó kỹ thuật lọc trung bình phụ thuộc không gian bao gồm các bước cơ bản sau[1]:

Bước 1: Tìm trung bình

Bước 2: Gán giá trị

2.2.Biên và phương pháp phát hiện biên

2.2.1. Giới thiệu

GVHD: PGS.TS.Từ Minh Phương - 27 - SVTH: Nguyễn Minh Tuấn

Page 28: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Biên là vấn đề quan trọng trong trích chọn đặc điểm nhằm tiến tới hiểu ảnh. Cho đến nay chưa có định nghĩa chính xác về biên, trong mỗi ứng dụng người ta đưa ra các độ đo khác nhau về biên, một trong các độ đo đó là độ đo về sự thay đổi đột ngột về cấp xám. Ví dụ: đối với ảnh đen trắng, một điểm được gọi là điểm biên nếu nó là điểm đen có ít nhất một điểm trắng bên cạnh. Tập hợp các điểm biên tạo nên biên hay đường bao của đối tượng. Xuất phát từ cơ sở này người ta thường dùng hai phương pháp phát hiện biên cơ bản:

Phát hiện biên trực tiếp: Phương pháp này làm nổi biên dựa vào sự biến thiên mức xám của ảnh. Kỹ thuật chủ yếu dùng để phát hiện biên ở đây là dựa vào sự biến đổi cấp xám theo hướng. Cách tiếp cận theo đạo hàm bậc nhất của ảnh dựa trên kỹ thuật Gradient, nếu lấy đạo hàm bậc hai của ảnh dựa trên biến đổi gia ta có kỹ thuật Laplace.

Phát hiện biên gián tiếp: Nếu bằng cách nào đó ta phân được ảnh thành các vùng thì ranh giới giữa các vùng đó gọi là biên. Kỹ thuật dò biên và phân vùng ảnh là hai bài toán đối ngẫu nhau vì dò biên để thực hiện phân lớp đối tượng mà khi đã phân lớp đối tượng xong nghĩa là đã phân vùng được ảnh và ngược lại, khi đã phân vùng ảnh tức là đã phân lớp được đối tượng, do đó có thể phát hiện được biên.

2.2.2. Kỹ thuật phát hiện biên Sobel

Phát hiện biên Sobel là kỹ thuật phát hiện biên trực tiếp. Kỹ thuật này dựa vào việc lấy đạo hàm bậc nhất của ảnh nên thuộc vào kỹ thuật Gradient.

Theo định nghĩa, gradient là một vector có các thành phần biểu thị tốc độ thay đổi giá trị của điểm ảnh, ta có:

Trong đó: dx, dy là khoảng cách (tính bằng số điểm) theo hướng x và y.

Tuy nói rằng lấy đạo hàm nhưng thực chất chỉ là mô phỏng và xấp xỉ đạo hàm bằng các kỹ thuật nhân chập (cuộn theo mẫu) vì ảnh số là tín hiểu rời rạc nên đạo hàm không tồn tại.

Ví dụ: Với dx = dy = 1, ta có:

Do đó mặt nạ nhân chập theo hướng x là A = (-1 1)

GVHD: PGS.TS.Từ Minh Phương - 28 - SVTH: Nguyễn Minh Tuấn

Page 29: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

và theo hướng y là B =

Ví dụ:

Ta có:

Đối với ký thuật Sobel người ta sử dụng 2 mặt nạ nhân chập theo 2 hướng x, y là:

Các bước tính toán:

Bước 1: Tính I Hx và I Hy

Bước 2: Tính I Hx + I Hy

GVHD: PGS.TS.Từ Minh Phương - 29 - SVTH: Nguyễn Minh Tuấn

Page 30: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chương 3: TÁCH KÝ TỰ

Trong chương này em xin trình bày cụ thể các bước để tách ký tự. Chúng ta sẽ đi lần lượt từng bước. Bắt đầu từ ảnh đầu vào cho đến khi tách được từng ký tự. Để dễ dàng hơn cho việc xử lý, ảnh đầu vào được chuyển thành ảnh 256 mức xám. Việc chuyển đổi này không làm mất đi tính chất và các đặc trưng của ảnh. Đặc điểm của các đối tượng ảnh vẫn được giữ nguyên sau khi chuyển đổi.

Việc tách ký tự này là một phần của bài toán phân đoạn ảnh trong hệ thống tự động nhận dạng biển số xe. Có 3 bước chính quan trọng trong việc tách ký tự là: tiền xử lý, nhị phân hóa(hoặc phát hiện biên sobel) và cuối cùng là tách ký tự. Ảnh đầu vào phải được tiền xử lý bằng các kỹ thuật đã nêu ở chương 2. Tiếp theo nhị phân hóa để làm nổi bật phần ký tự. Sau đó tách rời các ký tự riêng biệt.

Hình 3.1: Lưu đồ tách ký tự

3.1.Nhị phân hóa

Vì đôi khi biển số xe được chụp có độ sáng không đồng nhất mà có thể chuyển dần từ sáng sang tối hoặc ngược lại. Đây là lý do chính mà tách ngưỡng toàn phần (global thresholding) bị lỗi. Chính vì lý do này mà em đã chọn tách ngưỡng thích ứng (adaptive thresholding) để nhị

GVHD: PGS.TS.Từ Minh Phương - 30 - SVTH: Nguyễn Minh Tuấn

Ảnh xámẢnh xám Tiền xử lýTiền xử lý

Sobel cho biên dọcSobel cho biên dọc

Chiếu ngang+

Chiếu dọc

Chiếu ngang+

Chiếu dọc

Tách ký tựTách ký tự

Nhị phân hóaNhị phân hóa

OR

Page 31: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

phân hóa ảnh đầu vào. Tách ngưỡng thích ứng tốt hơn tách ngưỡng toàn phần trong đa số trường hợp nhưng lại làm cho chương trình chậm hơn do nó tính ngưỡng cục bộ cho từng pixel. Nếu ảnh lớn, độ phân giải cao thì đây là một vấn đề. Tuy nhiên biển số xe có kích thước khá nhỏ nên tốc độ chương trình sẽ không bị ảnh hưởng mấy. Có hai cách tiếp cận để tìm ngưỡng thích ứng. Một là cách tiếp cận của Chow và Kaneko, hai là cách tiếp cận ngưỡng cục bộ.

Hình 3.2: Ảnh qua quá trình nhị phân hóa

3.1.1. Cách tiếp cận của Chow và Kaneko

Cách tiếp cận này chia ảnh thành những hình chữ nhật nhỏ với kích thước m x n pixel. Ảnh trên những hình chữ nhật nhỏ này sẽ có độ sáng gần đồng nhất. Histogram cục bộ và ngưỡng cục bộ sẽ được tính cho mỗi hình chữ nhật[3].

GVHD: PGS.TS.Từ Minh Phương - 31 - SVTH: Nguyễn Minh Tuấn

Tách ngưỡng

Page 32: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 3.3: Biển số được chia ra thành 6 hình chữ nhật nhỏ với histogram và ngưỡng của riêng nó

3.1.2. Ngưỡng cục bộ

Cách thứ hai để tìm ra ngưỡng cục bộ là dựa vào các pixel liền kề hay còn gọi là các pixel hàng xóm. Cho [x, y] là một pixel. Để tính toán ngưỡng cục bộ, chúng ta xét một hình vuông các hàng xóm với độ rộng 2r + 1, trong đó [x – r, y – r], [x – r, y + r], [x + r, y – r], [x + r, y + r] là bốn góc của hình vuông đó. Có một số cách tính giá trị ngưỡng cục bộ như sau[3]:

Trung bình:

Trung vị:

Trung bình của giá trị mức xám lớn nhất và bé nhất:

Giá trị mới f’(x,y) của pixel [x,y] được tính toán như sau:

GVHD: PGS.TS.Từ Minh Phương - 32 - SVTH: Nguyễn Minh Tuấn

Page 33: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

3.2.Phát hiện biên Sobel

Trước khi tách ký tự, ngoài cách nhị phân hóa, ta có thể chọn cách phát hiện biên sobel. Việc phát hiện biên cũng làm cho các ký tự nổi lên. Đây là phương pháp em đã đề cập trong chương đầu. Có 2 cách dò biên sobel là dò theo hướng x và dò theo hướng y. Tùy vào mục đích có thể chọn 1 trong 2 cách hoặc kết hợp cả 2.

Hình 3.4: Ảnh qua quá trình phát hiện biên sobel

3.3.Tách ký tự

Sau khi nhị phân hóa, ta sẽ sử dụng phép chiếu dọc py(y) và chiếu ngang px(x)để cách ly các ký tự.

3.3.1. Chiếu ngang

Bước đầu tiên, ta sẽ tính toán phép chiếu ngang ph(y). Bước này cho phép tách các ký tự thành các dòng. Trước tiên chúng ta sẽ định nghĩa một số ký hiệu:

GVHD: PGS.TS.Từ Minh Phương - 33 - SVTH: Nguyễn Minh Tuấn

Sobel theo phương ngang

Page 34: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

w : chiều rộng của ảnh

h : chiều cao của ảnh

f(x,y) : mức xám tại điểm (x,y)

Thuật toán của chiếu ngang:

0. y = 0

1. ph(y) =

2. y = y+1;

3. Nếu y < h quay lại bước 1, ngược lại làm tiếp bước 4

4. Kết thúc

Sau khi chiếu ngang ta sẽ được một đồ thị như sau:

Hình 3.5: Đồ thị chiếu ngang của biển số

Công việc tiếp theo sau khi chiếu ngang là tìm đỉnh có giá trị lớn nhất. Giá trị lớn nhất này chính là trục của dòng ký tự:

GVHD: PGS.TS.Từ Minh Phương - 34 - SVTH: Nguyễn Minh Tuấn

0% 100%

y1

Ph(y)

t(top)

y0

ylmax

y

b(bottom)

Ngưỡng chọn chân của đỉnh

Ngưỡng chọn đỉnh

Page 35: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

ylmax = arg

Đỉnh có giá trị lớn nhất này phải thỏa mãn điều kiện lớn hơn ngưỡng chọn đỉnh:

minPeak =

Trong đó: cpeak = 0.4. Ngưỡng chọn đỉnh này chỉ tính một lần duy nhất theo giá trị ylmax

của dòng ký tự đầu tiên.

Độ cao của dòng ký tự được giới hạn bởi hai giá trị y = t và y = b. Hai giá trị này có thể được tính như sau:

t =

b =

Trong đó giá trị là ngưỡng chọn chân của đỉnh . Việc chọn

cfoot ảnh hưởng trực tiếp tới độ rộng của dòng ký tự. Theo thực nghiệm cfoot có thể nhận giá trị:

Cfoot = 0.3 đối với biển hai dòng ký tự

Cfoot = 0.2 đối với biển một dòng ký tự

Mỗi dòng ký tự được giới hạn bởi t và b. Do đó phải lưu giá trị t và b vào danh sách các dòng ký tự. Sau đó xóa phép chiếu ngang trong khoảng [b,t].

GVHD: PGS.TS.Từ Minh Phương - 35 - SVTH: Nguyễn Minh Tuấn

Page 36: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 3.6: Đồ thị chiếu ngang của biển số sau khi xóa phép chiếu ngang trong khoảng [b,t]

Việc xóa này có thể được minh họa bằng đoạn code sau:

Dòng ký tự tiếp theo được xác định bằng việc lặp lại quá trình tìm ylmax. Sau khi xóa phép chiếu ngang trong khoảng [b,t] thì giá trị ylmax sẽ không còn nhận giá trị cũ nữa mà có một giá trị mới (Hình 3.6): Giá trị mới này giúp xác định một dòng ký tự mới. Tất nhiên giá trị ylmax phải thỏa mãn điều kiện lơn hơn giá trị minPeak đã xác định ở trên.

Toàn bộ tiến trình tách dòng ký tự có thể minh họa bằng đoạn code sau:

GVHD: PGS.TS.Từ Minh Phương - 36 - SVTH: Nguyễn Minh Tuấn

0% 100%

y1

Ph(y)

t(top)

y0

y

b(bottom)

Ngưỡng chọn chân của đỉnh

Ngưỡng chọn đỉnh

ylmax

zero(b,t)begin

for y:=b to t do begin

= 0;end

end

Page 37: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 3.7: Đồ thị chiếu ngang đối với ảnh nhị phân hóa

Hình 3.8: Đồ thị chiếu ngang đối với ảnh phát hiện biên sobel

Dựa vào phép chiếu ngang này, việc tách các ký tự thành các dòng trở nên đơn giản.

3.3.2. Chiếu dọc

GVHD: PGS.TS.Từ Minh Phương - 37 - SVTH: Nguyễn Minh Tuấn

L is list of line

detect detect minPeak

while( >= minPeak}begin

detect t, b;save t, b to Lzero(b,t);

detect end

Page 38: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Việc tiếp theo là tách các ký tự trong một dòng thành các ký tự riêng biệt. Bây giờ, ta sẽ tính toán phép chiếu dọc pv(x), sau đó tách rời các ký tự dựa vào phép chiếu dọc. Công việc này tương tự như việc tính toán phép chiếu ngang.

Thuật toán chiếu dọc:

0. x = 0

1. pv(x) =

2. x = x+1;

3. Nếu x < w quay lại bước 1, ngược lại làm tiếp bước 4

4. Kết thúc

Sau bước này ta có đồ thị chiếu dọc của dòng ký tự. Từ đây, việc tách các ký tự được thực hiện với thuật toán tương tự thuật toán tách dòng ký tự chỉ khác nhau ở các hằng số.

Hình 3.9: Đồ thị chiếu dọc đối với ảnh nhị phân hóa

Kết quả thu được từ hai bước chiếu dọc và chiếu ngang là ảnh của các ký tự trên biển số.

GVHD: PGS.TS.Từ Minh Phương - 38 - SVTH: Nguyễn Minh Tuấn

Page 39: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chương 4: NHẬN DẠNG KÝ TỰ

Trong chương này, em xin trình bày về vấn đề nhận dạng ký tự bằng thuật toán SVM (Support Vector Machine). Thuật toán này được sử dụng rất nhiều trong các bài toán xử lý và nhận dạng ảnh.

4.1. Tổng quan về nhận dạng

Nhận dạng là quá trình phân loại các đối tượng được biểu diễn theo một mô hình nào đó và gán cho chúng vào một lớp (gán cho đối tượng một tên gọi) dựa theo những quy luật và các mẫu chuẩn [5]. Quá trình nhận dạng dựa vào những mẫu học biết trước gọi là nhận dạng có thầy hay học có thầy (supervised learning); trong trường hợp ngược lại gọi là học không có thầy (non supervised learning). Chúng ta sẽ lần lượt giới thiệu các khái niệm này.

4.1.1. Không gian biểu diễn đối tượng và không gian diễn dịch

a. Không gian biểu diễn đối tượng

Các đối tượng khi quan sát hay thu thập được, thường được biểu diễn bởi tập các đặc trưng hay đặc tính. Người ta thường phân các đặc trưng theo các loại như: đặc trưng tô pô, đặc trưng hình học và đặc trưng chức năng. Việc biểu diễn ảnh theo đặc trưng nào là phụ thuộc vào ứng dụng tiếp theo.

Ở đây ta đưa ra một cách hình thức việc biểu diễn các đối tượng. Giả sử đối tượng X (ảnh, chữ viết, dấu vân tay, v...,v) được biểu diễn bởi n thành phần (n đặc trưng): X = {x1, x2,..., xn}; mỗi xi biểu diễn một đặc tính. Không gian biểu diễn đối tượng thường gọi tắt là không gian đối tượng X được định nghĩa:

X = {X1, X2,..., Xm}

trong đó mỗi Xi biểu diễn một đối tượng. Không gian này có thể là vô hạn. Để tiện xem xét chúng ta chỉ xét tập X là hữu hạn.

b. Không gian diễn dịch

Không gian diễn dịch là tập các tên gọi của đối tượng. Kết thúc quá trình nhận dạng ta xác định được tên gọi cho các đối tượng trong tập không gian đối tượng hay nói là đã nhận dạng được đối tượng. Một cách hình thức gọi là tập tên đối tượng:

= {w1, w2,...,wk} với wi, i = 1, 2,..., k là tên các đối tượng

Quá trình nhận dạng đối tượng f là một ánh xạ f: X ---> với f là tập các quy luật để xác định một phần tử trong X ứng với một phần tử trong . Nếu tập các quy luật và tập tên các

GVHD: PGS.TS.Từ Minh Phương - 39 - SVTH: Nguyễn Minh Tuấn

Page 40: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

đối tượng là biết trước như trong nhận dạng chữ viết (có 26 lớp từ A đến Z), người ta gọi là nhận dạng có thầy. Trường hợp thứ hai là nhận dạng không có thầy. Đương nhiên trong trường hợp này việc nhận dạng có khó khăn hơn.

4.1.2. Mô hình và bản chất của quá trình nhận dạng

4.1.2.1. Mô hình

Việc chọn lựa một quá trình nhận dạng có liên quan mật thiết đến kiểu mô tả mà người ta sử dụng để đặc tả đối tượng. Trong nhận dạng, người ta phân chia làm 2 họ lớn:

- Họ mô tả theo tham số

- Họ mô tả theo cấu trúc.

Cách mô tả được lựa chọn sẽ xác định mô hình của đối tượng. Như vậy, chúng ta sẽ có 2 loại mô hình: mô hình theo tham số và mô hình cấu trúc.

Mô hình tham số sử dụng một véctơ để đặc tả đối tượng. Mỗi phần tử của véctơ mô tả một đặc tính của đối tượng. Thí dụ như trong các đặc trưng chức năng, người ta sử dụng các hàm cơ sở trực giao để biểu diễn. Và như vậy ảnh sẽ được biểu diễn bởi một chuỗi các hàm trực giao. Giả sử C là đường bao của ảnh và C(i, j) là điểm thứ i trên đường bao, i = 1, 2,..., N (đường bao gồm N điểm).

Giả sử tiếp :

x0 = 1

1N i

N

xi

y0 = 1

1N i

N

yi

là toạ độ tâm điểm. Như vậy, moment trung tâm bậc p, q của đường bao là:

pq =1

1N i

N

(xi-x0)p(yi-y0)q

Véctơ tham số trong trường hợp này chính là các moment ij với i=1, 2,...,p và j=1, 2,...,q. Còn trong số các đặc trưng hình học, người ta hay sử dụng chu tuyến , đường bao, diện tích và tỉ lệ T = 4S/p2, với S là diện tích, p là chu tuyến.

Việc lựa chọn phương pháp biểu diễn sẽ làm đơn giản cách xây dựng. Tuy nhiên, việc lựa chọn đặc trưng nào là hoàn toàn phụ thuộc vào ứng dụng. Thí dụ , trong nhận dạng chữ (sẽ trình bày sau), các tham số là các dấu hiệu:

- số điểm chạc ba, chạc tư,

- số điểm chu trình,

GVHD: PGS.TS.Từ Minh Phương - 40 - SVTH: Nguyễn Minh Tuấn

Page 41: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

- số điểm ngoặt,

- số điểm kết thúc,

chẳng hạn với chữ t có 4 điểm kết thúc, 1 điểm chạc tư,...

Mô hình cấu trúc: Cách tiếp cận của mô hình này dựa vào việc mô tả đối tượng nhờ một số khái niệm biểu thị các đối tượng cơ sở trong ngôn ngữ tự nhiên. Để mô tả đối tượng, người ta dùng một số dạng nguyên thuỷ như đoạn thẳng, cung, v,...,v. Chẳng hạn một hình chữ nhật được định nghĩa gồm 4 đoạn thẳng vuông góc với nhau từng đôi một. Trong mô hình này người ta sử dụng một bộ kí hiệu kết thúc Vt, một bộ kí hiệu không kết thúc gọi là Vn. Ngoài ra có dùng một tập các luật sản xuất để mô tả cách xây dựng các đối tượng phù hợp dựa trên các đối tượng đơn giản hơn hoặc đối tượng nguyên thuỷ (tập Vt). Trong cách tiếp cận này, ta chấp nhận một khẳng đinh là: cấu trúc một dạng là kết quả của việc áp dụng luật sản xuất theo theo những nguyên tắc xác định bắt đầu từ một dạng gốc ban đầu. Một cách hình thức, ta có thể coi mô hình này tương đương một văn phạm G = (Vt, Vn, P, S) với:

- Vt là bộ ký hiệu kết thúc,

- Vn là bộ ký hiệu không kết thúc,

- P là luật sản xuất,

- S là dạng (ký hiệu bắt đầu).

4.1.2.2. Bản chất của quá trình nhận dạng

Quá trình nhận dạng gồm 3 giai đoạn chính:

Lựa chọn mô hình biểu diễn đối tượng.

Lựa chọn luật ra quyết định (phương pháp nhận dạng) và suy diễn quá trình học.

Học nhận dạng.

Khi mô hình biểu diễn đối tượng đã được xác định, có thể là định lượng (mô hình tham số) hay định tính (mô hình cấu trúc), quá trình nhận dạng chuyển sang giai đoạn học. Học là giai đoạn rất quan trọng. Thao tác học nhằm cải thiện, điều chỉnh việc phân hoạch tập đối tượng thành các lớp.

Việc nhận dạng chính là tìm ra quy luật và các thuật toán để có thể gán đối tượng vào một lớp hay nói một cách khác gán cho đối tượng một tên.

Học có thầy (supervised learning)

Kỹ thuật phân loại nhờ kiến thức biết trước gọi là học có thầy. Đặc điểm cơ bản của kỹ thuật này là người ta có một thư viện các mẫu chuẩn. Mẫu cần nhận dạng sẽ được

GVHD: PGS.TS.Từ Minh Phương - 41 - SVTH: Nguyễn Minh Tuấn

Page 42: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

đem sánh với mẫu chuẩn để xem nó thuộc loại nào. Thí dụ như trong một ảnh viễn thám, người ta muốn phân biệt một cánh đồng lúa, một cánh rừng hay một vùng đất hoang mà đã có các miêu tả về các đối tượng đó. Vấn đề chủ yếu là thiết kế một hệ thống để có thể đối sánh đối tượng trong ảnh với mẫu chuẩn và quyết định gán cho chúng vào một lớp. Việc đối sánh nhờ vào các thủ tục ra quyết định dựa trên một công cụ gọi là hàm phân lớp hay hàm ra quyết định. Hàm này sẽ được đề cập trong phần sau.

Học không có thầy(unsupervised learning)

Kỹ thuật học này phải tự định ra các lớp khác nhau và xác định các tham số đặc trưng cho từng lớp. Học không có thầy đương nhiên là khó khăn hơn. Một mặt, do số lớp không được biết trước, mặt khác những đặc trưng của các lớp cũng không biết trước. Kỹ thuật này nhằm tiến hành mọi cách gộp nhóm có thể và chọn lựa cách tốt nhất. Bắt đầu từ tập dữ liệu, nhiều thủ tục xử lý khác nhau nhằm phân lớp và nâng cấp dần để đạt được một phương án phân loại.

Nhìn chung, dù là mô hình nào và kỹ thuật nhận dạng ra sao, một hệ thống nhận dạng có thể tóm tắt theo sơ đồ sau:

Trích chọn đặc tính Phân lớp trả lời Đánh

biểu diễn đối tượng ra quyết định giá

Quá trình tiền xử lý Khối nhận dạng

Hình 4.1: Sơ đồ tổng quát một hệ nhận dạng

4.2. Phương pháp nhận dạng Support Vector Machine (SVM)

4.2.1. SVM trong trường hợp tập mẫu phân hoạch tuyến tính được

Đây là trường hợp đơn giản nhất. Trong trường hợp này, tập mẫu là một tập có thể phân chia tuyến tính bằng một siêu phẳng. Và SVM đi tìm siêu phẳng này.

4.2.1.1. Giai đoạn huấn luyện SVM

Giả sử tập mẫu có được gồm l phần tử là:

GVHD: PGS.TS.Từ Minh Phương - 42 - SVTH: Nguyễn Minh Tuấn

Page 43: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

(x1, y1), (x2, y2),…, (xl, yl)

Trong đó xi Rn còn yi { - 1, 1} là phân lớp của xi

Cần xác định được một siêu phẳng mà có thể tách biệt được hai lớp trên. Có thể có nhiều siêu phẳng như vậy và vấn đề là cần tìm ra siêu phẳng nào làm cho khoảng cách Euclid giữa hai lớp trên là lớn nhất (Hình 4.2). Lúc đó các vector có khoảng cách gần siêu phẳng nhất được gọi là support vector.[2]

Hình 4.2: Siêu phẳng phân chia hai tập mẫu

Giả sử phương trình siêu phẳng cần tìm là w.x + b = 0 trong đó w là vector pháp tuyến của

siêu phẳng, w Rn. Ta có hai bất phương trình sau[2]:

w.xi + b ≤ - 1 với yi = - 1

w.xi + b ≥ + 1 với yi = + 1

Kết hợp hai bất phương trình trên:

yi (w.xi + b) – 1 ≥ 0

Khi đó những support vector xi thỏa mãn phương trình w.xi + b = - 1 nằm trên siêu phẳng H1, phương trình w.xi + b = 1 nằm trên siêu phẳng H2.

Khoảng cách có dấu d1 từ gốc tọa độ đến H1 là: d1 = (1 - b)/ ║w║

Khoảng cách có dấu d2 từ gốc tọa độ đến H2 là: d2 = ( - 1 - b)/ ║w║

Suy ra khoảng cách phân hoạch d giữa H1 và H2 là: d = | d1 – d2 | = 2/║w║

GVHD: PGS.TS.Từ Minh Phương - 43 - SVTH: Nguyễn Minh Tuấn

(CT.4 - 1)

Page 44: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Do đó để có d lớn nhất thì ║w║ phải nhỏ nhất hay nói cách khác phải đi tìm cực tiểu của

║w║ (được biến đổi một chút để sau này dễ tìm w).

Tại sao lại phải cần tìm siêu phẳng ứng với khoảng cách phân hoạch lớn nhất. Đơn giản để khi có thêm mẫu mới thì khả năng phân tách hai lớp là lớn nhất.

Bài toán: Tìm cực tiểu của ║w║ theo w và b

Với kiều kiện yi (w.xi + b) – 1 ≥ 0 trong đó i = 1, 2, …, l

Đây là loại bài toán tối ưu có ràng buộc, trong đó hàm mục tiêu là một hàm lồi và miền ràng buộc cũng là một tập lồi.

Do có tính lồi nên để giải bài toán trên ta có thể chuyển qua giải bài toán đối ngẫu tương ứng. Bài toán đối ngẫu sẽ là:

Tìm cực đại của : θ(u) với u Є Rl, u ≥ 0

Trong đó

Để giải bài toán đối ngẫu trước tiên ta phải tìm cực tiểu của

Vì L là hàm hai biến w, b bậc hai không ràng buộc nên theo điều kiện Fermat, cực tiểu của L xảy ra tại w và b sao cho:

Lúc đó giá trị của L là:

GVHD: PGS.TS.Từ Minh Phương - 44 - SVTH: Nguyễn Minh Tuấn

(CT.4 - 2)

(CT.4 - 3)

Page 45: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Như vậy bài toán đối ngẫu được viết lại thành:

Giải bài toán này ta tìm được u và từ đó tính được w theo công thức (CT.4-2).

Để tính b, vận dụng điều kiện Karush – Kuhn – Tucker (KKT) được phát biểu bởi Fletcher năm 1987:

Do đó đối vói một I thì có hai trường hợp:

ui = 0: trong trường hợp này yi(w.xi + b) – 1 > 0 suy ra xi không nằm trên siêu phẳng H1 hay H2. Vì ui = 0 nên xi không tham gia vào việc cấu trúc w theo công thức (CT.4 - 2). Những xi này là không cần thiết và có thể được bỏ đi mà không ảnh hưởng đến w.

ui > 0: lúc này yi(w.xi + b) – 1 = 0 suy ra xi nằm trên siêu phẳng H1 hay H2. xi được gọi là support vector và tham gia vào việc tính w. Thường thì số lượng support vector nhỏ hơn nhiều so với số lượng mẫu.

Do đó để tính b chỉ cần chọn một i mà có ui > 0, lúc đó:

Vậy ta đã tính được w và b nên xác định được siêu phẳng phân hoạch.

4.2.1.2. Giai đoạn nhận dạng

Bây giờ giả sử có một mẫu dữ liệu cần nhận dạng x* nào đó, thì phân lớp y* của x* ( - 1 hay 1) được xác định thông qua công thức [2]:

GVHD: PGS.TS.Từ Minh Phương - 45 - SVTH: Nguyễn Minh Tuấn

(CT.4 - 4)

(CT.4 - 5)

Page 46: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

4.2.2. SVM phi tuyến

Trong trường hợp tổng quát, thực tế mặt phân hoạch có thể là một mặt phi tuyến bất kỳ (Hình 4.3). Giả sử các mẫu xi thuộc không gian Rn, không gian này được gọi là không gian giả thiết (hypothesis space). Để tìm mặt phi tuyến trong không gian này, có thể áp dụng một thủ thuật là ánh xạ các vector mẫu xi từ Rn vào một không gian Rd có số chiều lớn hơn (d > n, d có thể bằng ∞). Rd được gọi là không gian đặc trưng (feature space). Sau đó áp dụng SVM tuyến tính để tìm ra một siêu phẳng phân hoạch trong không gian đặc trưng Rd. Siêu phẳng này sẽ ứng với mặt phi tuyến trong không gian Rn.

Hình 4.3: 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

Ánh xạ từ không gian Rn vào không gian Rd:

Gọi ánh xạ được áp dụng là , như vậy:

: Rn → Rd

x →

Ví dụ: x = (x1, x2) R2. Định nghĩa hàm ánh xạ : R2 →R3 như sau:

Với ánh xạ trên thì mặt hình vuông [-1, 1] x [-1, 1] trong không gian R2 sẽ trở thành một mặt cong trong không gian R3 như trong hình 4.4. Bây giờ dùng một mặt phẳng trong không gian R3 này thì có thể chia mặt cong trên thành hai phần (mà trong không gian R2 thì phải dùng một đường cong mới được kết quả phân chia tương ứng).

GVHD: PGS.TS.Từ Minh Phương - 46 - SVTH: Nguyễn Minh Tuấn

Page 47: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 4.4: Mặt phẳng [-1, 1] x [-1, 1] trong R2 thành mặt cong trong R3

Áp dụng siêu phẳng phân hoạch mềm (soft- margin hyperplane) trong không gian Rd cho

các mẫu (xi) thì siêu phẳng này sẽ là:

Từ đó cũng có hàm phân hoạch trong không gian Rn là hàm hợp fo . Đây là hàm phi

tuyến.

Cách tiếp cận này gặp phải vấn đề là hàm (x) có thể có số chiều rất lớn (nếu không gian

Rd có d lớn). Và do đó tiêu tốn thời gian nhiều trong các phép tính. Tuy nhiên, có thể nhận xét

rằng trong các phép tính (x) chỉ xuất hiện dưới dạng tích vô hướng tức là dạng (x) (y) mà

không xuất hiện đơn lẻ. Đây là một nhận xét quan trọng trong việc tìm ra quy tắc sau[2]:

Thay vì sử dụng dạng tường minh của (x) thì chỉ cần sử dụng hàm biểu diễn giá trị vô

hướng (x) (y).

Đặt K(x, y) = (x) (y), được gọi là hàm hạt nhân (kernel function).

Như vậy là chỉ cần biết dạng của hàm hạt nhân K(x, y) mà không cần biết cụ thể ánh xạ

(x). Lúc đó hàm nhận dạng trở thành:

GVHD: PGS.TS.Từ Minh Phương - 47 - SVTH: Nguyễn Minh Tuấn

(CT.4 - 11)

(CT.4 - 12)

Page 48: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Tuy nhiên không thể chọn tùy ý hàm K(x, y) mà phải chọn K(x, y) sao cho tồn tại một hàm

mà K(x, y) = (x) (y).

Tóm lại phương pháp SVM phi tuyến là tìm một hàm kernel K(x, y), sau đó giải bài toán soft-margin hyperplane với việc thay x1x2 = K(x, y) để tìm ra u và b. Cuối cùng xây dựng hàm nhận dạng đối với một mẫu thử x* nào đó:

Còn vấn đề tìm hàm kernel K(x, y) như thế nào là vấn đề phụ thuộc vào bài toán nhận dạng. Đối với bài toán nhận dạng đơn giản trong đó có sự phân bố các mẫu của hai lớp { - 1, 1}

không quá phức tạp thì có thể tìm hàm K(x, y) đơn giản sao cho số chiều của là không quá lớn.

4.2.3. Một số ví dụ về hàm kernel

Tiêu chuẩn đầu tiên để chọn một hàm kernel K là phải tồn tại để K(x, y) = (x) (y).

Một số đặc tính của hàm kernel như sau:

Nếu K1(x, y), K2(x, y) là các hàm kernel thì K3(x, y) cũng là hàm kernel với:

Từ các công thức trên có thể suy ra một số hàm kernel như sau:

a. Hàm đa thức

Chiều của không gian đặc trưng ứng với kernel này là d =

Kernel này có thể chuyển tất cả các mặt cong bậc p trong không gian Rn thành siêu phẳng trong không gian đặc trưng.

b. Hàm bán kính căn bản Gaussian RBF (Radial Basis Function)

GVHD: PGS.TS.Từ Minh Phương - 48 - SVTH: Nguyễn Minh Tuấn

Page 49: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chiều của không gian đặc trưng ứng với kernel này là ∞. Do đó nó có thể chuyển một mặt cong bất kỳ trong không gian Rn thành siêu phẳng trong không gian đặc trưng.

Hình 4.5: RBF Gaussian Kernel có thể chuyển một mặt bất kỳ thành một siêu phẳng

Ngoài ra hàm kernel này có đặc điểm là x và y không liên hệ với nhau qua tích vô hướng mà là theo khoảng cách Euclid ║x-y║2.

4.2.4. SVM cho vấn đề nhận dạng đa lớp

Trong phần trên đã đề cập đến vấn đề sử dụng phương pháp SVM để nhận dạng hai lớp, yi

= { - 1, 1}. Phương pháp SVM chỉ được xây dựng trên nền tảng nhận dạng hai lớp, bắt đầu từ lý thuyết học thống kê. Vậy đối với nhận dạng đa lớp thì sao? Vấn đề này có thể được giải quyết bằng cách kết hợp nhiều SVM lại với nhau qua một số phương pháp sau:

4.2.4.1. One – vs – rest

Giả sử cần phải nhận dạng K lớp thì cần sử dụng K SVM. SVM thứ I sẽ phân biệt lớp thứ i và các lớp còn lại (i là lớp -1, còn lại là lớp 1). Một mẫu thử x sẽ được kiểm tra trên K SVM này. Hàm nhận dạng SVM thứ i nào cho ra kết quả có giá trị bé nhất thì mẫu thử x thuộc lớp i đó. Sau đây là ví dụ về nhận dạng bốn lớp trong không gian Rd:

GVHD: PGS.TS.Từ Minh Phương - 49 - SVTH: Nguyễn Minh Tuấn

Page 50: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 4.6: Hàm nhận dạng SVM 2 - vs – rest có giá trị bé nhất, nên mẫu cần nhận dạng là lớp thứ 2

4.2.4.2. One-vs-one

Phương pháp one-vs-one do John Platt và Nello Cristianini đưa ra [2]. Trong phương pháp này, các lớp không phải là kết quả nhận dạng được loại trừ dần dần. Ứng với mỗi cặp lớp i, j, một SVM (i, j) được thiết lập chỉ dựa trên những mẫu của 2 lớp này ( i là lớp – 1, j là lớp 1). Đặc điểm của SVM này là nếu một mẫu thử có kết quả âm thì nó không kết luận mẫu này thuộc lớp i mà nó chỉ kết luận là mẫu này không thuộc lớp j và ngược lại (Hình 4.7). Có K(K-1)/2 SVM như vậy.

GVHD: PGS.TS.Từ Minh Phương - 50 - SVTH: Nguyễn Minh Tuấn

Page 51: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 4.7: SVM loại trừ

Khi bắt đầu nhận dạng, SVM(1, 2) sẽ được xem xét để xem cần phải loại trừ lớp 1 hay loại trừ lớp 2. Nếu là loại trừ lớp 2 thì SVM(1,3) sẽ được xem xét tiếp, còn ngược lại thì SVM(2,3) sẽ được xem xét. Cứ loại trừ dần như vậy cho đến khi chỉ còn lại một lớp cuối cùng thì lớp đó là kết quả nhận dạng (Hình 4.8).

Hình 4.8: Sơ đồ loại trừ trong các tình huống

Có thể thấy rằng việc nhận dạng một mẫu không cần phải trải qua hết K(K-1)/2 SVM mà chỉ cần trải qua K-1 SVM mà thôi. Do đó số lượng các giá trị các kernel K(x,y) cần phải tính chỉ là (K-1)* Ms với Ms là số lượng support vector trung bình của một SVM hai lớp i, j. Vì Ms nhỏ hơn nhiều so với Ns nên thời gian nhận dạng sẽ giảm bớt so với phương pháp one-vs-rest.

GVHD: PGS.TS.Từ Minh Phương - 51 - SVTH: Nguyễn Minh Tuấn

Page 52: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Chương 5: CÀI ĐẶT THỰC NGHIỆM

Trong quá trình nghiên cứu và cài đặt thực nghiệm, em có sử dụng một số thư viện mã nguồn mở như OpenCV, LibSVM. Đây là hai thư viện mã nguồn mở khá nổi tiếng. OpenCV cài đặt khá đầy đủ các thuật toán xử lý ảnh nên được sử dụng rộng rãi trong lĩnh vực xử lý ảnh. Bộ thư viện LibSVM cài đặt thuật toán SVM trên cả hai ngôn ngữ C++ và Java.

5.1. Thử nghiệm

5.1.1. Điều kiện thử nghiệm và giới hạn

Do thời gian làm đồ án có hạn và quy mô hệ thống khá lớn nên em chỉ thực hiện thử nghiệm với một số giới hạn sau:

Chương trình là một module tách và nhận dạng ký tự trong hệ thống nhận dạng biển số xe

Chỉ hoạt động với biển số Việt Nam tức là ở phạm vi trong nước. Nếu đưa chương trình ra hoạt động ở nước ngoài thì độ chính xác sẽ giảm và chưa chắc đã chạy đúng.

Chương trình chỉ xử lý ảnh biển số nền trắng chữ đen, chưa xử lý biển số có màu khác.

Vùng ảnh biển số có góc nghiêng ≤ 7o

5.1.2. Dữ liệu

Dữ liệu là tập ảnh gồm 300 chiếc, được thu thập tại các địa điểm:

Bãi giữ xe khu đô thị Văn Quán

Xung quanh khu đô thị Văn Quán

Nhà để xe của chung cư CT2B khu đô thị Văn Quán

Trên mạng internet

Tập dữ liệu này bao gồm cả biển số xe ô tô và xe máy.

Ảnh được chụp bằng máy điện thoại có camera 2.0Megapixel và máy ảnh kỹ thuật số 8.0Magapixel. Sau khi chụp, phần biển số xe được tách thủ công bằng Photoshop.

GVHD: PGS.TS.Từ Minh Phương - 52 - SVTH: Nguyễn Minh Tuấn

Page 53: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 5.1: Tập dữ liệu

Vì tập ảnh còn nhỏ nên số lượng kí tự xuất hiện còn chưa đủ và chưa đồng đều. Số lượng các ký tự “2” và “3” xuất hiện nhiều nhất do biển dược chụp chủ yếu ở Hà Nội. Ngoài ra, do tập dữ liệu chỉ là biển trắng nên không xuất hiện các ký tự hay có trên biển xanh và biển đỏ như: A, B, D, …

5.1.3. Phương pháp

Như đã trình bày trong chương 3, việc tách ký tự được thực hiện theo phương pháp sau:

GVHD: PGS.TS.Từ Minh Phương - 53 - SVTH: Nguyễn Minh Tuấn

Page 54: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 5.2: Phương pháp tách ký tự được lựa chọn

Đối với quá trình nhận dạng, em sử dụng phương pháp SVM (Support Vector Machine) phi tuyến với thư viện mã nguồn mở LibSVM.

5.1.3.1. Lựa chọn tham số

Đối với quá trình tách ký tự:

o Tách dòng:

cpeak = 0.4

cfoot = 0.3 đối với biển hai dòng ký tự

cfoot = 0.2 đối với biển một dòng ký tự

o Tách ký tự:

cpeak = 0.4

Ngưỡng chọn chân của đỉnh bằng 0

Đối với quá trình huấn luyện:

Sử dụng nhân RBF:

Tham số gama được lựa chọn nhờ vào tool kèm theo của libSVM: = 0.0078125.

GVHD: PGS.TS.Từ Minh Phương - 54 - SVTH: Nguyễn Minh Tuấn

Ảnh xámẢnh xám Tiền xử lýTiền xử lý

Sobel cho biên dọcSobel cho biên dọc

Chiếu ngang+

Chiếu dọc

Chiếu ngang+

Chiếu dọc

Tách ký tựTách ký tự

Page 55: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Hình 5.3: Kết quả chọn tham số gama bằng tool của libSVM

5.1.4. Kết quả

Với thuật toán và những tham số trình bày ở trên, em đã tiến hành cài đặt trên Visual C++. Tập cơ sở dữ liệu mẫu là ảnh chụp biển số xe ở Hà Nội với độ phân giải 1280 x 768, chất lượng trung bình.

Thời gian chạy của thuật toán nhỏ hơn 1s.

Việc xác định tỷ lệ thành công dựa trên tỉ lệ:

Một kết quả được cho là sai khi có ít nhất một ký tự sai. Nghĩa là mặc dù các ký tự khác trên biển cho kết quả nhận dạng đúng nhưng kết quả của cả biển vẫn là sai.

Kết quả thực nghiệm thu được:

Tổng số biển là 300 cái

Số kết quả đúng là 292

Số kết quả sai là 8

Thuật toán Tỷ lệ thành công

GVHD: PGS.TS.Từ Minh Phương - 55 - SVTH: Nguyễn Minh Tuấn

Page 56: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Tách ký tự 97,3%

Nhận dạng ký tự 99%

Kết quả nhận dạng chung 96,3%

5.1.5. Các lỗi nhận dạng

Nhìn chung, các thuật toán đã lựa chọn cho kết quả khả quan. Tuy nhiên vẫn còn một số trường hợp chưa giải quyết được. Có thể kể ra một số trường hợp sau:

Ảnh chụp bị lóa do biển số có lớp kính bảo vệ

Do đặc thù biển số xe Việt Nam hay có đinh ốc nên thường các ký tự bị dính vào nhau không tách được hoặc tách được nhưng nhận dạng sai. Đây là trường hợp chiếm phần lớn tỉ lệ không chính xác của chương trình.

Ký tự trên biển số bị mờ do biển quá cũ

5.2. Chương trình

Giao diện của chương trình thử nghiệm:

Hình 5.4: Giao diện chính của chương trình

GVHD: PGS.TS.Từ Minh Phương - 56 - SVTH: Nguyễn Minh Tuấn

Page 57: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Bao gồm:

Nút “Open”: Mở ảnh biển số xe

Nút “Detect”: Nhận dạng

Ô text box: Hiển thị kết quả nhận dạng

Menu “Training”: gồm một số menu item nhỏ để trợ giúp cho việc tạo training data.

Khi click vào nút “Detect”, sẽ có kết quả như sau:

Hình 5.5: Giải thích giao diện chính của chương trình

5.3. Hướng nghiên cứu phát triển

Với kết quả thực nghiệm trên, hướng nghiên cứu phát triển tiếp theo của em sẽ là:

Nâng cao hiệu quả chương trình nhận dạng kí tự, cách ly các kí tự trong biển số trong các trường hợp biển số bị nhiễu nhiều, mất mát thông tin do nhiễu từ điều kiện môi trường

Mở rộng tập ảnh mẫu để tăng độ chính xác nhận dạng

GVHD: PGS.TS.Từ Minh Phương - 57 - SVTH: Nguyễn Minh Tuấn

Click

Kết quả

Page 58: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

Mở rộng điều kiện nhận dạng với những biển số bị nghiêng nhiều, biển số nền xanh chữ trắng, nền đỏ chữ trắng. Và tiến tới nhận dạng nhiều loại biển nước ngoài.

Phát triển module nhận dạng vùng biển số xe để tích hợp với module này thành một ứng dụng có thể triển khai và có tính khả dụng cao.

GVHD: PGS.TS.Từ Minh Phương - 58 - SVTH: Nguyễn Minh Tuấn

Page 59: Do an Tot Nghiepv3.0

ĐỒ ÁN TỐT NGHIỆP TỰ ĐỘNG NHẬN DẠNG KÝ TỰ TRÊN BIỂN SỐ

TÀI LIỆU THAM KHẢO

[1]. TS. Đỗ Năng Toàn, TS. Phạm Việt Bình, “Giáo trình xử lý ảnh”, Đại học Thái Nguyên, Viện Công nghệ thông tin, 11/2007.

[2]. Trần Minh Văn, Luận văn thạc sỹ công nghệ thông tin: “Tìm hiểu phương pháp SVM và ứng dụng trong nhạn dạng chữ viết tay trực tuyến”, Đại học Quốc gia thành phố Hồ Chí Minh, trường Đại học Khoa học tự nhiên, 2004.

[3]. Ondrej Martinsky, “Algorithmic and mathematical principles of automatic number plate recognition systems”, BRNO University Of Technology, 2007.

[4]. THS Trần Thái Anh Âu, SV Doãn Đạt Phước, SV Nguyễn Đồng Hải Dương, “Tự động nhận dạng biển số đăng ký xe trong ảnh chụp từ camera”, Khoa Điện kỹ thuật, Đại học Bách Khoa, Đại học Đà Nẵng, 2008

[5] “Nhập môn xử lý ảnh”, Đại học Bách Khoa Hà Nội

[6] Ho C. H., Koay S. B., Lee M. H., M. Moghavvemi, M. R. Tamjis, “License Plate Recognition”, Department of Electrical Engineering, Engineering Faculty, University of Malaya

[7] Hakob Sarukhanyan, Souren Alaverdyan, Grigor Petrosyan “Automatic Number Plate Recognition System”, Institute for Informatics and Automation Problems of NAS RA, Yerevan, Armenia, hakop, ouren, [email protected]

[8] Duan. T.D., Du. T.L.H., Phuoc. T.V, Hoang. N.V, “Building an Automatic Vehicle License-Plate Recognition System”, International Conference in Computer Science, 2005

[9] Sorin Draghici, “A neural network based artificial vision system for licence plate recognition” , Dept. of Computer Science, Wayne State University, [email protected], 1997

[10] CHRISTOPHER J. C. BURGES, “A Tutorial on Support Vector Machines for Pattern Recognition”, Bell Laboratories, LucentTechnologies, [email protected]

GVHD: PGS.TS.Từ Minh Phương - 59 - SVTH: Nguyễn Minh Tuấn