Tải bản đầy đủ (.pdf) (73 trang)

Áp dụng học máy trong nhận dạng biển báo giao thông

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.98 MB, 73 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA

BÙI THANH PHONG

ÁP DỤNG HỌC MÁY
TRONG NHẬN DẠNG BIỂN BÁO GIAO THÔNG

Chuyên ngành

: Khoa học máy tính

Mã số

: 60.48.01.01

LUẬN VĂN THẠC SĨ KHOA HỌC

Người hướng dẫn khoa học: TS. PHẠM MINH TUẤN

Đà Nẵng - Năm 2018


LỜI CẢM ƠN

Tôi xin chân thành cảm ơn các thầy, cô trong khoa Công nghệ thông tin cũng
như các thầy cô giảng dạy trong trường Đại học Đà Nẵng đã truyền đạt những kiến
thức quý báu cho tôi trong những năm nghiên cứu và học tập tại trường.
Đặc biệt, tôi xin chân thành cảm ơn thầy Phạm Minh Tuấn, khoa Công nghệ
thông tin, trường Đại học Bách khoa đã tận tình hướng dẫn, động viên và giúp đỡ tôi
trong suốt thời gian nghiên cứu và thực hiện đề tài. Và để có được kết quả như ngày


hôm nay, tôi rất biết ơn gia đình đã động viên, khích lệ, tạo mọi điều kiện thuận lợi
nhất trong suốt quá trình nghiên cứu, học tập cũng như quá trình thực hiện đề tài tốt
nghiệp này.
Một lần nữa xin chân thành cám ơn!
Đà Nẵng, tháng 5 năm 2018
Tác giả

Bùi Thanh Phong


LỜI CAM ĐOAN
Tôi xin cam đoan đây đúng là công trình nghiên cứu của tôi.
- Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn
trực tiếp của TS. Phạm Minh Tuấn.
- Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và trung
thực tên tác giả, tên công trình, thời gian, địa điểm công bố.
- Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin
chịu hoàn toàn trách nhiệm.
Tác giả

Bùi Thanh Phong


MỤC LỤC
LỜI CAM ĐOAN
MỤC LỤC
DANH MỤC CÁC CHỮ VIẾT TẮT
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH
TÓM TẮT LUẬN VĂN

MỞ ĐẦU .........................................................................................................................1
1. Lý do chọn đề tài .............................................................................................. 1
2. Mục tiêu nghiên cứu .........................................................................................2
3. Đối tượng và phạm vi nghiên cứu ....................................................................2
4. Phương pháp nghiên cứu ..................................................................................2
5. Ý nghĩa khoa học và thực tiễn ..........................................................................2
6. Bố cục của Luận văn ......................................................................................3
CHƯƠNG 1. TỔNG QUAN NGHIÊN CỨU .............................................................. 4
1.1. Tổng quan về xử lý ảnh ............................................................................................ 4
1.1.1. Tổng quan về xử lý ảnh...............................................................................4
1.1.2. Các quá trình xử lý ảnh ..............................................................................5
1.1.3. Ảnh và biểu diễn ảnh ..................................................................................6
1.1.4. Phạm vi ứng dụng của xử lý ảnh ................................................................ 8
1.2. Học máy ....................................................................................................................9
1.2.1. Tổng quan học máy ...................................................................................9
1.2.2. Các phương pháp học máy ........................................................................9
1.2.2.1. Học không giám sát .................................................................................9
1.2.2.2. Học có giám sát .......................................................................................9
1.2.2.3. Học bán giám sát ...................................................................................10
1.2.2.4. Học tăng cường .....................................................................................10
1.2.2.5. Các ứng dụng của học máy ...................................................................11
1.3. Các phương pháp nhận dạng đối tượng ..................................................................11
1.3.1. Phương pháp Neural Networks (NN) ......................................................11
1.3.2. Phương pháp Support Vector Machine (SVM) .......................................12
1.3.3. Phương pháp Linear Discriminant Analysis ...........................................12
1.3.4. Phương pháp Naive Bayes (NB) ............................................................. 12


1.3.5. Phương pháp Principal Component Analysis (PCA) ............................. 12
1.4. Kết chương .............................................................................................................13

CHƯƠNG 2. MÔ HÌNH ĐỀ XUẤT TRONG PHÁT HIỆN VÀ NHẬN DẠNG
BIỂN BÁO GIAO THÔNG ........................................................................................14
2.1. Mô tả bài toán .........................................................................................................14
2.2. Mô hình tổng quát...................................................................................................14
2.3. Phương pháp đề xuất .............................................................................................. 15
2.3.1. Mô hình phát hiện Biển Báo Giao Thông ...............................................15
2.3.1.1. Mô hình phát hiện ..................................................................................15
2.3.1.2. Đặc trưng Haar-like ..............................................................................16
2.3.1.3. Integral Image .......................................................................................17
2.3.1.4. Thuật toán Adaboost ..............................................................................18
2.3.1.5. Cascade ..................................................................................................23
2.3.2.
2.3.3.
2.3.4.
2.3.5.

Mô tả thuật toán nhận diện biển báo ......................................................28
Principal component analysis (PCA) ......................................................29
Khoảng cách mahalanobis ......................................................................31
Chuyển đổi không gian vector .................................................................31

2.3.6. Các bước giảm chiều dữ liệu: .................................................................32
2.3.7. Tiến trình nhận dạng biển báo ................................................................ 35
2.4 Kết chương .............................................................................................................35
CHƯƠNG 3. THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ ..................................36
3.1. Tổ chức dữ liệu .......................................................................................................36
3.2. Thu thập dữ liệu ......................................................................................................36
3.3. Cài đặt và thực nghiệm chương trình .....................................................................36
3.3.1. Dữ liệu đầu vào .......................................................................................36
3.3.2. Xử lý dữ liệu ............................................................................................ 36

3.3.2.1. Cấu trúc chương trình .........................................................................37
3.3.2.2. Huấn luyện ........................................................................................... 37
3.3.2.3. Phát hiện biển báo ...............................................................................37
3.3.2.4. Nhận dạng biển báo .............................................................................38
3.3.3. Giao diện chương trình ...........................................................................40
3.4. Một số hình ảnh thực hiện trên chương trình Demo ..............................................43
3.4.1. Phát hiện biển báo ...................................................................................43
3.4.2. Huấn luyện và kiểm tra ...........................................................................46
3.5. Đánh giá kết quả .....................................................................................................50


3.5.1. Về lý thuyết .............................................................................................. 50
3.5.2. Về Cài đặt ................................................................................................ 51
3.5.3. Về thực nghiệm ........................................................................................51
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .................................................................52
TÀI LIỆU THAM KHẢO........................................................................................... 53
QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN (bản sao)


TÓM TẮT LUẬN VĂN
ÁP DỤNG HỌC MÁY TRONG NHẬN DẠNG
BIỂN BÁO GIAO THÔNG
Bùi Thanh Phong, học viên cao học khóa 33 Quảng Ngãi, chuyên ngành Khoa học
máy tính.
Tóm tắt:
Biển báo giao thông là một phần của công trình tín hiệu đường bộ, tuy nhiên việc phát
hiện và nhận biết biển báo giao thông gặp rất nhiều khó khăn do trong quá trình lái xe
còn nhiều vấn đề an toàn khác chi phối. Mục đích của đề tài này là nghiên cứu và tìm
ra phương pháp tối ưu nhất để xây dựng thuật toán phát hiện và nhận dạng biển báo
giao thông. Chương trình có đầu vào là một file ảnh hoặc video và đầu ra là biển báo

có trong dữ liệu đầu vào. Chương trình áp dụng thuật toán Viola-Jones để phát hiện
biển báo trong ảnh. Sau đó sử dụng kỹ thuật phân tích thành phần chính (PCA) để xác
định biển báo trong ảnh. Báo cáo sẽ tập trung vào việc trình bày các thuật toán ViolaJones và kỹ thuật PCA.
Từ khóa: biển báo giao thông, Viola-Jones, PCA
Abstract:
Traffic signs are a part of road signaling works, however, the detection and
identification of traffic signs are difficult due to many other safety issues in driving.
The purpose of this research is to research and find the best method to build traffic
detection and identification algorithm. The program has an input image or video file
and the output is the signage contained in the input data. The program uses the ViolaJones algorithm to detect signage in photos. Then use the component analysis
technique to identify the sign in the image. The report will focus on presenting ViolaJones algorithms and PCA techniques.
Keyword: traffic signs, Viola-Jones, PCA.


DANH MỤC CÁC TỪ VIẾT TẮT
Từ đầy đủ

Từ viết tắt
DP

Dynamic Programming

DT

Decision Tree

EM

Expectation Maximization


HAC

Hierarchial Agglomerative Clustering

KNN

K Nearest Neighbours

LDA

Linear Discriminant Analysis

LLSF

Linear Least Square Fit

NB

Naive Bayes

NN

Neural Networks

Nnet

Neural Network

PCA


Principal Components Analysis

SVM

Support Vector Machine

SVM

pháp Support Vector Machine

TD
TSVM
XLA

Temporal Difference
Transductive Support Vector Machine
Xử lý ảnh


DANH MỤC CÁC HÌNH VẼ
Số hiệu

Tên hình

Trang

hình
1.1:

Các bước cơ bản trong quá trình xử lí ảnh


4

1.2:

Các giai đoạn chính trong xử lý ảnh

5

1.3:

Quan hệ trong vùng lân cận giữa các điểm ảnh

8

2.1:

Mô hình tổng quát

14

2.2:

Mô hình phát hiện

15

2.3:

4 đặt trưng Haar-like cơ bản


16

2.4:

Các đặc trưng mở rộng của các đặc trưng Haar-like cơ sở

16

2.7:

Vòng 1

19

2.9:

Vòng 3

20

2.10:

Vòng 4

21

2.11:

Hoàn thành boosting


21

2.12:

Chọn p = 1 và tăng trọng số của mẫu phân loại sai.

23

2.13:

Trong bước này chúng ta chọn p = -1.

23

2.14:

Mô hình hoạt động Cascade

24

2.15:

Mô hình phân tầng

24

2.16:

Biểu đồ thống kê số phân loại yếu trong mỗi phân loại mạnh của


25

biển báo nguy hiểm
2.17:

Biểu đồ thống kê số phân loại yếu trong mỗi phân loại mạnh của
biển báo Cấm

25

2.18:

Tỷ lệ false positive của mỗi strong classifier trên tập test ( biển
nguy hiểm)

26

2.19:

Tỷ lệ false positive của mỗi strong classifier trên tập test ( biển báo

26

cấm)
2.20:

Tỷ lệ false positive của mỗi strong classifier trên tập train (biển
nguy hiểm)


27

2.21:

Tỷ lệ false positive của mỗi strong classifier trên tập train ( biển
báo cấm)

27

2.22:

Xem biển báo là một điểm trong không gian

28

2.23:

Khoảng cách giữa các điểm

28

2.24:

Chuyển vector x ban đầu có N chiều thành vector y còn K chiều

29

2.25:

Tập huấn luyện biển báo


30


2.26:

Vector riêng có giá trị riêng lớn nhất

32

2.27:

Ma trận hiệp phương sai

33

2.28:

Biểu đồ eigenvalues

34

3.1:

Cấu trúc chương trình

37

3.2:


Phát hiện biển báo

37

3.3:

Nhận dạng biển báo

38

3.4:

Dữ liệu của từng loại biển báo khác nhau đã được huấn luyện.

39

3.5:

Dữ liệu biển báo đường hẹp bên trái được lưu vào thư mục

39

3.6:

Khởi chạy chương trình

40

3.7:


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

40

3.8:

Dữ liệu biển báo đã huấn luyện

41

3.9:

Giao diện chương trình trong chức năng Recognize.

42

3.10:

Giao diện chương trình trong chức năng Camera.

42

3.11:

Phát hiện biển báo cấm trong hình ảnh chuẩn

43

3.12:


Phát hiện biển báo nguy hiểm trong hình ảnh chuẩn

43

3.13:

Phát hiện biển báo giao nhau và có vùng bị phát hiện sai.

44

3.14:

Phát hiện biển báo giới hạn tốc độ 40 Km/h.

45

3.15:

Phát hiện đúng 2 biển báo giới hạn tốc độc và biển báo đường hẹp
bên

45

3.16:

Phát hiện sai và nhiều vùng bị nhận là biển báo.

46

3.17:


Huấn luyện biển báo Cấm ô tô và xe máy.

46

3.18:

Kiểm tra và nhận dạng biển báo Cấm ô tô và xe máy

47

3.19:

Huấn luyện biển báo Cấm mô tô.

47

3.20:

Kiểm tra và nhận dạng biển báo Cấm mô tô.

48

3.21:

Huấn luyện biển báo tín hiệu đèn giao thông

48

3.22:


Kiểm tra và nhận dạng biển báo tín hiệu đèn giao thông

49

3.23:

Huấn luyện biển báo vòng xoay phía trước

49

3.24:

Kiểm tra biển báo vòng xoay phía trước nhưng bị cho kết quả sai.

50


1

MỞ ĐẦU
1. Lý do chọn đề tài
Việt nam là một đất nước có hệ thống chính trị ổn định bậc nhất trong khu vực và
trên thế giới, tình trạng khủng bố hầu như không có. Thế nhưng tình trạng thiệt mạng
do tai nạn giao thông thì lại rất cao, trong năm 2017, toàn quốc xảy ra 20.280 vụ tai
nạn giao thông, làm chết 8.279 người, bị thương 17.040 người, thiệt hại kinh tế ước
tính đến cả tỷ USD. So với năm trước, số vụ tai nạn giao thông năm nay giảm 7% (Số
vụ tai nạn giao thông từ ít nghiêm trọng trở lên giảm 5,6%; số vụ va chạm giao thông
giảm 8,3%); số người chết giảm 4,7%; số người bị thương giảm 9,6% và số người bị
thương nhẹ giảm 12,6%. Nhìn vào con số thống kê, bình quân 1 ngày trong năm 2017,

trên địa bàn cả nước xảy ra 55 vụ tai nạn giao thông, gồm 27 vụ tai nạn giao thông từ ít
nghiêm trọng trở lên và 28 vụ va chạm giao thông, làm 23 người chết, 47 người bị
thương. Qua thống kê về lượng người chết và thiệt hại về kinh tế, ta thấy sự mất mát
rất lớn và rất nhiều người đã là nạn nhân trực tiếp hoặc là hệ lụy, ảnh hưởng của tai
nạn giao thông. Từ tình hình thực tế giao thông tại Việt Nam, có nhiều nguyên nhân
gây ra các vụ tai nạn giao thông đường bộ, nhưng phần lớn là do tài xế không làm chủ
tốc độ, thiếu quan sát hoặc không kịp nhận ra các loại biển báo và tín hiệu giao thông.
Những mối nguy hiểm này đã được cảnh báo trước bởi hệ thống biển báo giao thông
nhưng tai nạn vẫn thường xuyên xảy ra, gây không ít thiệt hại về tính mạng, tài sản của
người tham gia giao thông và đặc biệt để lại hậu quả nặng nề cho gia đình, xã hội.
Công nghệ thông tin ngày nay đã phát triển rất sôi động trong rất nhiều lĩnh vực
trên toàn thế giới trong đó có Việt Nam, hầu hết các hoạt động hàng ngày của chúng ta
đều liên quan đến công nghệ thông tin. Trong thực tế ngày nay, ứng dụng công nghệ
thông tin đã được đưa vào các lĩnh vực kinh tế, chính trị, xã hội, quân sự…, đây là cơ
hội phát triển và đồng thời cũng là thách thức to lớn đối với việc phát triển xã hội nói
chung. Cho đến nay, vấn đề này đã được nhiều nghiên cứu trên thế giới quan tâm.
Nhưng những nghiên cứu này chưa thực sự hiệu quả đối với giao thông đường bộ tại
Việt Nam. Trong khi đó, tình hình nghiên cứu biển báo giao thông tại Việt Nam vẫn
còn nhiều hạn chế và chưa đầy đủ.
Vì vậy, Trong luận văn tốt nghiệp, tôi chọn đề tài “Áp dụng học máy trong nhận
dạng biển báo giao thông” để nghiên cứu với mục đích tìm hiểu được nền tảng công
nghệ, các lý thuyết cơ bản trong bài toán xử lý ảnh, học máy và áp dụng vào việc nhận
dạng biển báo giao thông nhằm xây dựng chương trình nhắc nhở tài xế.


2

2. Mục tiêu nghiên cứu
Nghiên cứu, tìm hiểu các phương pháp nhận dạng, áp dụng vào nhận diện biển
báo giao thông, xây dựng chương trình, cài đặt thực nghiệm chương trình phát hiện và

nhận dạng biển báo giao thông đường bộ từ hình ảnh tĩnh và video thu về, sau đó hiển
thị thông tin cảnh báo dưới dạng hình ảnh hoặc âm thanh.

3. Đối tượng và phạm vi nghiên cứu
Hệ thống các biển báo giao thông đường bộ ở Việt Nam gồm:
- Hệ thống biển báo nguy hiểm
- Hệ thống biển báo chỉ dẫn
- Hệ thống biển cấm
- Hệ thống biển hiệu lệnh

4. Phương pháp nghiên cứu
4.1.

Phương pháp lý thuyết

4.1.1. Nghiên cứu lý thuyết học máy
- Học có giám sát
- Bán giám sát
- Học không giám sát
4.1.2. Nghiên cứu xử lý ảnh
- Tiền xử lý
- Thuật toán Viola – Jone
4.2. Phương pháp thực nghiệm
- Xây dựng bộ dữ liệu: ở bước này, tôi tiến hành thu thập dữ liệu bằng cách
quay phim, chụp ảnh hệ thống biển báo giao thông trong thực tế
- Tìm hiểu phương pháp phát hiện biển báo giao thông dựa trên trích chọn đặc
trưng Haar-like kết hợp với bộ tăng tốc Adaboost.
- Tìm hiểu phương pháp nhận dạng biển báo giao thông đường bộ: Luận văn có
sử dụng phương pháp phân tích thành phần chính Principal Components Analysis
(PCA) để nhận dạng biển báo giao thông.

- Xây dựng mô hình nhận dạng sử dụng thuật toán
- Cài đặt chương trình thử nghiệm
- Đánh giá tỉ lệ nhận dạng

5. Ý nghĩa khoa học và thực tiễn
Với đề tài “Áp dụng học máy trong nhận dạng biển báo giao thông”, mục tiêu là
xây dựng một chương trình hỗ trợ lái xe hiệu quả và áp dụng trong thực tế, đầu vào là


3
hình ảnh giao thông phía trước, đầu ra của hệ thống là thông tin cảnh báo cho tài xế về
hệ thống biển báo ở phía trước giúp tài xế tập trung và lái xe an toàn hơn.
Khi đề tài được hoàn thành, sẽ là nền tảng để xây dựng phần mềm hỗ trợ đáp
ứng được nhu cầu thực tế cho tài xế trong việc tham gia giao thông. Hơn nữa, đề tài
này có thể là một giải pháp tình thế cho lĩnh vực giao thông ở Việt Nam trước khi đi
lên xây dựng một hệ thống tổng thể thống nhất, toàn diện.
6. Bố cục của Luận văn
Phần mở đầu: Nêu lên lý do chọn đề tài, đối tượng và phạm vi nghiên cứu và
phương pháp nghiên cứu của đề tài.
Phần nội dung:
Chương 1: Tổng Quan Nghiên Cứu
Chương này trình bày những lý thuyết cơ bản về xử lý ảnh, tổng quát các phương
pháp phổ biến trong quá trình phát hiện và nhận dạng đối tượng, học máy.
Chương 2: Mô Hình Đề Xuất Trong Nhận Dạng Biển Báo Giao Thông
Chương này trình bày về ý tưởng đề tài, phát biểu bài toán nhận dạng biển báo
giao thông và trình bày nền tảng công nghệ, chi tiết các thuật toán hỗ trợ trong việc
phát hiện và nhận dạng biển báo bao gồm: Trích chọn đặc trưng Haar-like, bộ tăng tốc
Adaboost, phân tích thành phần chính PCA.
Chương 3: Thực Nghiệm Và Đánh Giá Kết Quả
Chương này mô tả chương trình cài đặt , thực hiện thực nghiệm và đánh giá kết

quả. Sử dụng ngôn ngữ Java, và bộ thư viện xử lý ảnh mã nguồn mở OpenCV để xây
dựng chương trình. Sau đó phân tích và đánh giá kết quả nhận dạng.
Phần kết luận và hướng phát triển của đề tài.


4

CHƯƠNG 1
TỔNG QUAN NGHIÊN CỨU
Chương này trình bày những lý thuyết cơ bản về xử lý ảnh, tổng quát các phương
pháp phổ biến trong quá trình phát hiện và nhận dạng đối tượng, học máy.

1.1.

Tổng quan về xử lý ảnh

1.1.1. Tổng quan về xử lý ảnh

Hình 1.1: Các bước cơ bản trong quá trình xử lí ảnh
Xử lý ảnh (XLA) [1] là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá
trình biến đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính và tuân theo ý
muốn của người sử dụng. Xử lý ảnh có thể gồm nhiều quá trình: phân tích, phân lớp
các đối tượng, làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay
quá trình biên dịch các thông tin hình ảnh của ảnh. Cũng như xử lý dữ liệu bằng đồ
hoạ, xử lý ảnh số là một lĩnh vực của tin học ứng dụng. Xử lý dữ liệu bằng đồ họa đề
cập đến những ảnh nhân tạo, các ảnh này được xem xét như là một cấu trúc dữ liệu và
được tạo bởi các chương trình. Xử lý ảnh số bao gồm các phương pháp và kỹ thuật
biến đổi, để truyền tải hoặc mã hoá các ảnh tự nhiên.
Mục đích của xử lý ảnh gồm:
+ Biến đổi ảnh làm tăng chất lượng ảnh.

+ Tự động nhận dạng ảnh, đoán nhận ảnh, đánh giá các nội dung của ảnh.
+ Nhận biết và đánh giá các nội dung của ảnh là sự phân tích một hình ảnh thành
những phần có ý nghĩa để phân biệt đối tượng này với đối tượng khác, dựa vào
đó ta có thể mô tả cấu trúc của hình ảnh ban đầu. Có thể liệt kê một số phương
pháp nhận dạng cơ bản như nhận dạng ảnh của các đối tượng trên ảnh, tách cạnh,


5
phân đoạn hình ảnh,…Kỹ thuật này được dùng nhiều trong y học (xử lý tế bào,
nhiễm sắc thể), nhận dạng chữ trong văn bản.
1.1.2. Các quá trình xử lý ảnh

Thu
nhận
ảnh

Tiền
xử lý

Phân
đoạn
ảnh

Tách
các
đặc
tính

Nhận
dạng

và giải
thích

Hình 1.2: Các giai đoạn chính trong xử lý ảnh
Thu nhận ảnh: Đây là công đoạn đầu tiên mang tính quyết định đối với quá trình
XLA. Ảnh đầu vào sẽ được thu nhận qua các thiết bị như camera, sensor, máy
scanner,v.v… và sau đó các tín hiệu này sẽ được số hóa. Việc lựa chọn các thiết bị thu
nhận ảnh sẽ phụ thuộc vào đặc tính của các đối tượng cần xử lý. Các thông số quan
trọng ở bước này là độ phân giải, chất lượng màu, dung lượng bộ nhớ và tốc độ thu
nhận ảnh của các thiết bị.
Tiền xử lý: Ở bước này, ảnh sẽ được cải thiện về độ tương phản, khử nhiễu, khử
bóng, khử độ lệch,v.v… với mục đích làm cho chất lượng ảnh trở lên tốt hơn nữa,
chuẩn bị cho các bước xử lý phức tạp hơn về sau trong quá trình XLA. Quá trình này
thường được thực hiện bởi các bộ lọc.
Phân đoạn ảnh: phân đoạn ảnh là bước then chốt trong XLA. Giai đoạn này phân
tích ảnh thành những thành phần có cùng tính chất nào đó dựa theo biên hay các vùng
liên thông. Tiêu chuẩn để xác định các vùng liên thông có thể là cùng màu, cùng mức
xám v.v… Mục đích của phân đoạn ảnh là để có một miêu tả tổng hợp về nhiều phần
tử khác nhau cấu tạo lên ảnh thô. Vì lượng thông tin chứa trong ảnh rất lớn, trong khi
đa số các ứng dụng chúng ta chỉ cần trích một vài đặc trưng nào đó, do vậy cần có một
quá trình để giảm lượng thông tin khổng lồ đó. Quá trình này bao gồm phân vùng ảnh
và trích chọn đặc tính chủ yếu.
Tách các đặc tính: Kết quả của bước phân đoạn ảnh thường được cho dưới dạng
dữ liệu điểm ảnh thô, trong đó hàm chứa biên của một vùng ảnh, hoặc tập hợp tất cả
các điểm ảnh thuộc về chính vùng ảnh đó. Trong cả hai trường hợp, sự chuyển đổi dữ
liệu thô này thành một dạng thích hợp hơn cho việc xử lý trong máy tính là rất cần
thiết. Để chuyển đổi chúng, câu hỏi đầu tiên cần phải trả lời là nên biểu diễn một vùng
ảnh dưới dạng biên hay dưới dạng một vùng hoàn chỉnh gồm tất cả những điểm ảnh
thuộc về nó. Biểu diễn dạng biên cho một vùng phù hợp với những ứng dụng chỉ quan



6
tâm chủ yếu đến các đặc trưng hình dạng bên ngoài của đối tượng, ví dụ như các góc
cạnh và điểm uốn trên biên chẳng hạn. Biểu diễn dạng vùng lại thích hợp cho những
ứng dụng khai thác các tính chất bên trong của đối tượng, ví dụ như vân ảnh hoặc cấu
trúc xương của nó. Sự chọn lựa cách biểu diễn thích hợp cho một vùng ảnh chỉ mới là
một phần trong việc chuyển đổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các
xử lý về sau. Chúng ta còn phải đưa ra một phương pháp mô tả dữ liệu đã được chuyển
đổi đó sao cho những tính chất cần quan tâm đến sẽ được làm nổi bật lên, thuận tiện
cho việc xử lý chúng.
Nhận dạng và giải thích: Đây là bước cuối cùng trong quá trình XLA. Nhận dạng
ảnh có thể được nhìn nhận một cách đơn giản là việc gán nhãn cho các đối tượng trong
ảnh. Ví dụ đối với nhận dạng chữ viết, các đối tượng trong ảnh cần nhận dạng là các
mẫu chữ, ta cần tách riêng các mẫu chữ đó ra và tìm cách gán đúng các ký tự của bảng
chữ cái tương ứng cho các mẫu chữ thu được trong ảnh. Giải thích là công đoạn gán
nghĩa cho một tập các đối tượng đã được nhận biết.
Không phải bất kỳ một ứng dụng XLA nào cũng bắt buộc phải tuân theo tất cả
các bước xử lý đã nêu ở trên, tùy theo mục đích sử dụng dữ liệu của từng ứng dụng
XLA. Ví dụ như các ứng dụng chỉnh sửa ảnh nghệ thuật chỉ dừng lại ở bước tiền xử lý.
Một cách tổng quát thì những chức năng xử lý bao gồm cả nhận dạng và giải thích
thường chỉ có mặt trong hệ thống phân tích ảnh tự động hoặc bán tự động, được dùng
để rút trích ra những thông tin quan trọng từ ảnh, ví dụ như các ứng dụng nhận dạng
ký tự quang học, nhận dạng chữ viết tay v.v…
1.1.3. Ảnh và biểu diễn ảnh
Ảnh trong thực tế là một ảnh liên tục cả về không gian và giá trị độ sáng. Để có
thể xử lý ảnh bằng máy tính thì cần thiết phải tiến hành số hóa ảnh. Quá trình số hóa
biến đổi các tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc
hóa về không gian) và lượng tử hóa các thành phần giá trị mà về nguyên tắc bằng mắt
thường không thể phân biệt được hai điểm liền kề nhau. Các điểm như vậy được gọi là
các pixel (Picture Element) hay các phần tử ảnh hoặc điểm ảnh. Ở đây cần phân biệt

khái niệm pixel hay đề cập đến trong các hệ thống đồ họa máy tính. Để tránh nhầm lẫn
ta gọi khái niệm pixel này là pixel thiết bị. Khái niệm pixel thiết bị có thể xem xét như
sau: khi ta quan sát màn hình (trong chế độ đồ họa), màn hình không liên tục mà gồm
các điểm nhỏ, gọi là pixel. Mỗi pixel gồm một tập tọa độ (x, y) và màu.
Như vậy mỗi ảnh là tập hợp các điểm ảnh. Khi được số hóa nó thường được biểu
diễn bởi mảng 2 chiều I(n,p): n là dòng và p là cột. Về mặt toán học có thể xem ảnh là
một hàm hai biến f(x,y) với x, y là các biến tọa độ. Giá trị số ở điểm (x,y) tương ứng


7
với giá trị xám hoặc độ sáng của ảnh (x là các cột còn y là các hàng). Giá trị của hàm
ảnh f(x,y) được hạn chế trong phạm vi của các số nguyên dương.
0 ≤ f(x,y) ≤ fmax.
Với ảnh đen trắng mức xám của ảnh có thể được biểu diễn bởi một số như sau:

Trong đó SBW( λ) là đặc tính phổ của cảm biến được sử dụng và k là hệ số tỷ lệ
xích. Vì sự cảm nhận độ sáng có tầm quan trọng hàng đầu đối với ảnh đen trắng nên
SBW( λ) được chọn giống như là hiệu suất sáng tương đối. Vì f biểu diễn công suất trên
đơn vị diện tích, nên nó bao giờ cũng không âm và hữu hạn.
0≤ f ≤ fmax
Trong đó fmax là giá trị lớn nhất mà f đạt được. Trong xử lý ảnh, f được chia
thang sao cho nó nằm trong một phạm vi thuận lợi nào đó. Thông thường đối với ảnh
xám,
giá
trị
fmax

255
(28=256)
bởi


mỗi
phần
tử
ảnh được mã hóa bởi một byte. Khi quan tâm đến ảnh màu ta có thể mô tả màu qua ba
hàm số: thành phần màu đỏ qua R(x,y), thành phần màu lục qua G(x,y) và thành phần
màu lam qua B(x,y). Bộ ba giá trị R, G, và B nhận được từ:

Ở đó SR(λ), SG(λ) và SB(λ) theo thứ tự là những đặc tính phổ của các cảm biến (bộ
lọc) đỏ, lục và lam. R, G, B cũng không âm và hữu hạn.
Ảnh có thể được biểu diễn theo một trong hai mô hình: mô hình Vector hoặc mô hình
Raster.
Mô hình Vector: Ngoài mục đích tiết kiệm không gian lưu trữ, dễ dàng hiển thị
và in ấn, các ảnh biểu diễn theo mô hình vector còn có ưu điểm cho phép dễ dàng lựa
chọn, sao chép, di chuyển, tìm kiếm…Theo những yêu cầu này thì kỹ thuật biểu diễn
vector tỏ ra ưu việt hơn. Trong mô hình này, người ta sử dụng hướng vector của các
điểm ảnh lân cận để mã hóa và tái tạo lại hình ảnh ban đầu. Các ảnh vector được thu


8
nhận trực tiếp từ các thiết bị số hóa như Digitalize hoặc được chuyển đổi từ các ảnh
Raster thông qua các chương trình vector hóa.
Mô hình Raster: là mô hình biểu diễn ảnh thông dụng nhất hiện nay. Ảnh được
biểu diễn dưới dạng ma trận các điểm ảnh. Tùy theo nhu cầu thực tế mà mỗi điểm ảnh
có thể được biểu diễn bởi một hay nhiều bit. Mô hình Raster thuận lợi cho việc thu
nhận, hiển thị và in ấn. Các ảnh được sử dụng trong phạm vi của đề tài này cũng là các
ảnh được biểu diễn theo mô hình Raster.
Khi xử lý các ảnh Raster chúng ta có thể quan tâm đến mối quan hệ trong vùng
lân cận của các điểm ảnh. Các điểm ảnh có thể xếp hàng trên một lưới (raster) hình
vuông, lưới hình lục giác hoặc theo một cách hoàn toàn ngẫu nhiên với nhau.

Cách sắp xếp theo hình vuông là được quan tâm đến nhiều nhất và có hai loại: điểm 4
láng giềng (4 liền kề) hoặc 8 láng giềng (8 liền kề). Với điểm 4 láng giềng, một điểm
ảnh I(i, j) sẽ có điểm kế cận theo 2 hướng i và j; trong khi đó với điểm 8 láng giềng,
điểm ảnh I(i, j) sẽ có 4 điểm kế cận theo 2 hướng i, j và 4 điểm kế cận theo hướng
chéo 45o (Xem hình 1-3).

8 láng giềng

4 láng giềng

Hình 1.3: Quan hệ trong vùng lân cận giữa các điểm ảnh
1.1.4. Phạm vi ứng dụng của xử lý ảnh
Xử lý ảnh đã đem lại nhiều ứng dụng trong nhiều lĩnh vực khác nhau: y học,
khoa học hình hình sự, khí tượng thuỷ văn, quản lý, ... Quản lý là là một trong những
ứng dụng quan trọng của xử lý ảnh. Cùng với sự bùng nổ của kinh tế thị trường. Khối
lượng quản lý càng lớn, như quản lý hồ sơ, quản lý phiếu điều tra trong công tác thống
kê, các câu hỏi trắc nghiệm. Để thực hiện các công việc trên một cách chính xác,
nhanh chóng và hiệu quả. Xử lý ảnh và nhận dạng đã nghiên cứu và phát triển mạnh
mẽ bài toán nhập liệu tự động.


9
1.2. Học máy
1.2.1. Tổng quan học máy
Học máy [6] là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc phát triển
các kĩ thuật cho phép các máy tính có thể “học”. Cụ thể hơn, học máy là một phương
pháp để tạo ra các chương trình máy tính bằng việc phân tích các tập dữ liệu.
Học máy có liên quan lớn đến thống kê, vì cả hai lĩnh vực đều nghiên cứu việc
phân tích dữ liệu, nhưng khác với thống kê, học máy tập trung vào sự phức tạp của các
giải thuật trong việc thực thi tính toán. Nhiều bài toán suy luận được xếp vào loại bài

toán khó, vì thế một phần của học máy là nghiên cứu sự phát triển các giải thuật suy
luận xấp xỉ mà có thể xử lý được.
Học máy có tính ứng dụng rất cao bao gồm máy truy tìm dữ liệu, chẩn đoán y
khoa, phát hiện thẻ tín dụng giả, phân tích thị trường chứng khoán, phân loại các chuỗi
DNA, nhận dạng tiếng nói và chữ viết, dịch tự động, chơi trò chơi và cử động rô-bốt.
1.2.2. Các phương pháp học máy

1.2.2.1. Học không giám sát
Học không giám sát (Unsupervised Learning) là một phương pháp nhằm tìm ra
một mô hình mà phù hợp với các tập dữ liệu quan sát. Nó khác biệt với học có giám
sát ở chỗ là đầu ra đúng tương ứng cho mỗi đầu vào là không biết trước. Trong học
không có giám sát, đầu vào là một tập dữ liệu được thu thập. Học không có giám sát
thường đối xử với các đối tượng đầu vào như là một tập các biến ngẫu nhiên. Sau đó,
một mô hình mật độ kết hợp sẽ được xây dựng cho tập dữ liệu đó.
Học không giám sát có thể được dùng kết hợp với suy diễn Bayes (Bayesian
inference) để cho ra xác suất có điều kiện cho bất kì biến ngẫu nhiên nào khi biết trước
các biến khác.
Học không giám sát cũng hữu ích cho việc nén dữ liệu: về cơ bản, mọi giải
thuật nén dữ liệu hoặc là dựa vào một phân bố xác suất trên một tập đầu vào một cách
tường minh hay không tường minh.
Có rất nhiều thuật toán học không giám sát được ra đời và phát triển nhằm giải
quyết bài toán phân cụm phục vụ khai thác hiệu quả nguồn dữ liệu chưa gán nhãn
nhiều và rất đa dạng. Việc lựa chọn sử dụng thuật toán nào tuỳ thuộc vào dữ liệu và
mục đích của từng bài toán.

1.2.2.2. Học có giám sát
Học có giám sát (Supervised Learning) là một kĩ thuật của ngành học máy để
xây dựng một hàm từ dữ liệu huấn luyện. Dữ liệu huấn luyện bao gồm các cặp gồm
đối tượng đầu vào, và đầu ra mong muốn. Đầu ra của một hàm có thể là một giá trị



10
liên tục, hay có thể là dự đoán một nhãn phân loại cho một đối tượng đầu vào. Nhiệm
vụ của chương trình học có giám sát là dự đoán giá trị của các cặp đầu vào và đầu ra
tương ứng. Chương trình học tổng quát hóa từ các dữ liệu sẵn có để dự đoán được
những tình huống chưa gặp phải theo một cách hợp lý. Một số thuật toán thường được
lựa chọn khi xây dựng bộ phân lớp gồm có: mạng nơron (Neural Network – Nnet),
Vector trọng tâm (Centroid–base vector), tuyến tính bình phương nhỏ nhất (Linear
Least Square Fit – LLSF), máy vector hỗ trợ (Support Vector Machine – SVM), hạt
nhân phân tích biệt thức, K láng giềng gần nhất (K Nearest Neighbours – KNN), tiếp
cận xác suất thống kê (Naive Bayes – NB), cây quyết định (Decision Tree – DT).

1.2.2.3. Học bán giám sát
Học bán giám sát là một lớp của kỹ thuật học máy, sử dụng cả dữ liệu đã gán
nhãn và chưa gán nhãn để huấn luyện – điển hình là một lượng nhỏ dữ liệu có gán
nhãn cùng với lượng lớn dữ liệu chưa gán nhãn. Có thể xem học bán giám sát là trung
gian đứng giữa học không giám sát và có giám sát. Xét qua nhiều nghiên cứu, ta có thể
nhận thấy dữ liệu không gán nhãn, khi được sử dụng kết hợp với một chút dữ liệu có
gán nhãn, có thể cải thiện đáng kể độ chính xác.
Để gán nhãn dữ liệu cho một bài toán học máy thường đòi hỏi một chuyên viên
có kĩ năng để phân loại bằng tay các ví dụ huấn luyện. Chi phí cho quy trình này khiến
tập dữ liệu được gán nhãn hoàn toàn trở nên không khả thi, trong khi dữ liệu không
gán nhãn thường tương đối rẻ tiền. Trong tình huống đó, học bán giám sát có giá trị
thực tiễn lớn lao. Một số thuật toán thường được sử dụng gồm có: thuật toán Cực đại
kỳ vọng (EM – Expectation Maximization), SVM truyền dẫn (TSVM – Transductive
Support Vector Machine), Self-training, Co-training và các phương pháp dựa trên đồ
thị (graphbased). Việc lựa chọn thuật toán nào dựa trên một số định hướng: nếu các
lớp dữ liệu có tính phân cụm cao thì nên dùng EM với mô hình hỗn hợp sinh; nếu đã
sử dụng SVM thì mở rộng thành TSVM; khi khó nâng cấp mô hình học có giám sát đã
có, thì nên dùng self-training; nếu các đặc trưng của dữ liệu phân chia tự nhiên thành

hai phần riêng rẽ thì nên dùng Co-training; còn nếu hai mẫu dữ liệu có đặc trưng tương
tự nhau hướng tới một lớp thì sử dụng phương pháp dựa trên đồ thị.

1.2.2.4. Học tăng cường
Học tăng cường [9] là phương pháp máy tính đưa ra quyết định hành động
(action) và nhận kết quả phản hồi (response/reward) từ môi trường (environment). Sau
đó máy tính tìm cách chỉnh sửa cách ra quyết định hành động của mình.
Các thuật toán học tăng cường được chia thành hai loại chính đó là: học dựa trên
mô hình (model based) và học không có mô hình (model free). Đại điện cho kiểu học


11
dựa trên mô hình phải kể đến phương pháp quy hoạch động (Dynamic Programming
DP), đại diện cho kiểu học không có mô hình là phương pháp Monte Carlo và phương
pháp TD (Temporal Difference).

1.2.2.5. Các ứng dụng của học máy
Học máy có ứng dụng trải rộng khắp trong các ngành khoa học/sản xuất, đặc biệt
những ngành cần phân tích khối lượng dữ liệu khổng lồ.
Một số ứng dụng phổ biến:
- Xử lý ngôn ngữ tự nhiên (Natural Language Processing): xử lý văn bản,
-

giao tiếp người – máy, …
Nhận dạng (Pattern Recognition): nhận dạng tiếng nói, chữ viết tay, vân

-

tay, thị giác máy (Computer Vision)…
Tìm kiếm (Search Engine)

Chẩn đoán trong y tế: phân tích ảnh X-quang, các hệ chuyên gia chẩn đoán

-

tự động.
Tin sinh học: phân loại chuỗi gene, quá trình hình thành gene/protein
Vật lý: phân tích ảnh thiên văn, tác động giữa các hạt …
Phát hiện gian lận tài chính (financial fraud): gian lận thẻ tín dụng…

-

Phân tích thị trường chứng khoán (stock market analysis)
Chơi trò chơi: tự động chơi cờ, hành động của các nhân vật ảo.
Rôbốt: là tổng hợp của rất nhiều ngành khoa học, trong đó học máy tạo nên

hệ thần kinh/bộ não của người máy.
1.3. Các phương pháp nhận dạng đối tượng
1.3.1. Phương pháp Neural Networks (NN)
Mạng noron nhân tạo (Artifical Neural Networks) mô phỏng lại mạng noron sinh
học là một cấu trúc khối gồm các đơn vị tính toán đơn giản được liên kết chặt chẽ với
nhau trong đó các liên kết giữa các noron quyết định chức năng của mạng.
Về cơ bản mạng Neural là một mạng các phần tử (gọi là neural) kết nối với nhau
thông qua các liên kết (các liên kết này được gọi là trọng số liên kết) để thực hiện một
công việc cụ thể nào đó.
Khả năng xử lý của mạng neural được hình thành thông qua quá trình hiệu chỉnh
trọng số liên kết giữa các neural, nói cách khác là học từ tập hợp các mẫu huấn luyện.
Ưu điểm: Dễ cài đặt cùng với khả năng học và tổng quát hoá rất cao, tốc độ xử lý
nhanh, linh hoạt và dễ bảo trì.
Nhược điểm: Tính chậm và xác suất không cao không có quy tắc tổng quát để
xác định cấu trúc mạng và các tham số học tối ưu cho một (lớp) bài toán nhất định,



12
tiêu chuẩn thu thập cơ sở dữ liệu huấn luyện còn khắt khe, đòi hỏi thời gian xử lý cao
với mạng một mạng Neural lớn.
1.3.2. Phương pháp Support Vector Machine (SVM)
Cho trước một tập huấn luyện, các ảnh được biểu diễn dưới dạng vector. Trong
không gian vector, mỗi vertor được biểu diễn bởi một điểm. Phương pháp SVM sẽ tìm
một siêu phẳng quyết định để phân chia không gian vector thành hai lớp. Chất lượng
của siêu phẳng này phụ thuộc vào khoảng cách giữa các vector, tức là phụ thuộc vào
các đặc trưng của ảnh.
Ưu điểm: Cho kết quả nhận dạng với độ chính xác cao, bài toán huấn luyện
SVM thực chất là bài toán trên một tập lồi, do đó SVM luôn có nghiệm toàn cục và
duy nhất, đây chính là điểm khác biệt rõ nhất giữa SVM so với phương pháp mạng
Neural, vì mạng Neural vốn tồn tại nhiều điểm cực trị địa phương.
Nhược điểm: Hạn chế lớn nhất của SVM là tốc độ phân lớp rất chậm, tùy thuộc
vào số lượng các véc tơ hỗ trợ, giai đoạn huấn luyện SVM đòi hỏi bộ nhớ rất lớn, do đó các
bài toán huấn luyện với số lượng mẫu lớn sẽ gặp trở ngại trong vấn đề lưu trữ. Hiệu quả
phân lớp của SVM phụ thuộc vào hai yếu tố: giải bài toán và lựa chọn hàm nhân.
1.3.3. Phương pháp Linear Discriminant Analysis
Mục đích của LDA – Linear Discriminant Analysis là tìm cách phân loại các đối
tượng (người, sự vật,…) vào một trong hai hay nhiều lớp đã được xác định trước dựa
vào các đặt trưng (feature) dùng để mô tả đối tượng (ví dụ như các đặc trưng dùng để
mô tả đối tượng khách hàng là giới tính, tuổi, nghề nghiệp, thu nhập,…)
Ưu điểm: Dễ dàng hơn để đào tạo, phương sai thấp, hiệu quả hơn nếu mô hình là
chính xác, LDA làm việc tốt khi số mẫu là lớn.
Nhược điểm: LDA gặp phải vấn đề khi tổng số mẫu huấn luyện ít hơn so với
kích thước của không gian đặc trưng.
1.3.4. Phương pháp Naive Bayes (NB)
Ý tưởng cơ bản của cách tiếp cận NB là sử dụng xác suất có điều kiện.

Ưu điểm: Cho độ chính xác cao khi kết hợp với các phương pháp khác.
Nhược điểm: Chi phí thời gian để đếm mẫu, phải kết hợp với các phương pháp khác
1.3.5. Phương pháp Principal Component Analysis (PCA)
Principal Component Analysis [5] là một thuật toán được sử dụng để tạo ra một
ảnh mới từ ảnh ban đầu. Ảnh mới này có kích thước nhỏ hơn nhiều so với ảnh ban đầu
nhưng vẫn mang những đặc trưng cơ bản nhất của ảnh cần nhận dạng.
Nói một cách ngắn gọn, mục tiêu của PCA là tìm một không gian mới (với số
chiều nhỏ hơn không gian cũ). Các trục tọa độ trong không gian mới được xây dựng


13
sao cho trên mỗi trục, độ biến thiên của dữ liệu trên đó là lớn nhất có thể.
Ưu điểm: Tìm được các đặc tính tiêu biểu của đối tượng cần nhận dạng mà
không cần phải xác định các thành phần và mối quan hệ giữa các thành phần đó, thuật
toán có thể thức hiện tốt với các ảnh có độ phân giải cao, do PCA sẽ thu gọn ảnh thành
một ảnh có kích thước nhỏ hơn, PCA có thể kết hợp với các phương pháp khác để
mang lại hiệu quả nhận dạng cao hơn.
Nhược điểm: PCA chỉ làm việc với dữ liệu numeric, PCA rất nhạy với nhiễu,
Không phù hợp với các mô hình phi tuyến do PCA hoàn toàn dựa trên các biến đổi
tuyến tính, cài đặt thuật toán phức tạp.

1.4. Kết chương
Nội dung chương I được trình bày ở trên đã nêu ra những vấn đề cơ bản tương
đối chi tiết về lý thuyết Xử lý ảnh, Học máy và nêu ưu điểm và nhược điểm cụ thể của
từng phương pháp nhận dạng đối tượng đã được nghiên cứu trước đây và có thể áp
dụng được, để thực hiện nghiên cứu trong đề tài này.


14


CHƯƠNG 2
MÔ HÌNH ĐỀ XUẤT TRONG
PHÁT HIỆN VÀ NHẬN DẠNG BIỂN BÁO GIAO THÔNG
Chương này trình bày về ý tưởng đề tài và phương pháp chính để xây dựng
chương trình. Trong các phương pháp phát hiện đối tượng, tôi sẽ chọn sử dụng thuật
toán Viola-Jone vì thuật toán đơn giản, hiệu quả.
2.1. Mô tả bài toán
Bài toán được mô tả qua việc xây dựng mô hình (Learning), phát hiện
(detecting), nhận dạng (Recognize) như sau:
+ Xây dựng mô hình: Cho một tập dữ liệu các biển báo giao thông (có thể là
hình ảnh tĩnh hoặc có thể là video) và các nhãn tương ứng với các dữ liệu đó. Xây
dựng một mô hình nhận dạng (Các luật hoặc mô hình xác suất) sao cho việc nhận
dạng các nhãn của mẫu biển báo là chính xác nhất.
+ Phát hiện: Dữ liệu đầu vào là một hình ảnh có chứa hình ảnh biển báo giao
thông. Qua dữ liệu đã học, hệ thống sẽ phát hiện vùng ảnh chứa biển báo giao thông.
+ Nhận dạng: Dữ liệu đầu vào là một mẫu biển báo được phát hiện. Thông qua
mô hình đã xây dựng, hệ thống sẽ trả về nhãn của biển báo đó. Trong quá trình nhận
dạng, hệ thống có thể gặp một số khó khăn do việc nhận dạng nhầm lẫn. Ví dụ: Khi góc
nhìn của máy quay khác nhau dẫn đến hình ảnh cũng khác nhau hoặc biển báo bị che lấp
một phần thì kết quả nhận dạng cũng có thể sai lệch. Vì vậy, ngoài việc xây dựng mô hình
và nhận dạng thì tiền xử lý và trích chọn đặc tính là giai đoạn cũng rất quan trọng.
2.2. Mô hình tổng quát
Thu thập dữ liệu thực tế
Hệ thống biển báo chuẩn
trong luật giao thông đường
bộ Việt Nam

Hậu xử lý

Tiền xử


Trích
chọn đặc

lý ảnh

tính

Kết quả
nhận
dạng

Mô hình
phân loại
và nhận
dạng

Hình 2.1: Mô hình tổng quát


15
- Thu thập tập dữ liệu thực tế: Tập dữ liệu này sử dụng với mục đích để xây
dựng mô hình phân loại.
- Hệ thống biển báo chuẩn trong luật giao thông đường bộ Việt Nam: Dữ liệu
chưa được dán nhãn.
- Tiền xử lý: Áp dụng các phương pháp xử lý ảnh để phục vụ xử lý: các xử lý
biên, xử lý điểm ảnh…
- Trích chọn đặc tính: Trích chọn những đặc tính của dữ liệu sao cho khi sử
dụng Mô hình phân loại thì việc phân loại là tốt nhất.
- Mô hình phân loại: Khối này chịu trách nhiệm xây dựng mô hình phân loại

hay nhận dạng theo mô hình …..
- Kết quả phân loại: Trả về kết quả là nhãn của mẫu biển báo.
- Hậu xử lý: Thực hiện các công việc sau khi nhận kết quả trả về từ Mô hình
phân loại như: hiển thị kết quả biển báo đã nhận dạng được hoặc trở thành dữ liệu đầu
vào cho các module xử lý khác.
2.3. Phương pháp đề xuất
2.3.1. Mô hình phát hiện Biển Báo Giao Thông
2.3.1.1. Mô hình phát hiện
ảnh 24x24

+1 Nếu đầu vào là biển báo

Thuật toán

pixel

Viola-jones

-1 Nếu đầu vào không phải
là biển báo

Hình 2.2: Mô hình phát hiện
Có rất nhiều phương pháp để giải quyết vấn đề xác định đối tượng trên các hình
ảnh dựa trên các cách tiếp cận khác nhau. Phương pháp Adaboost Haar-like của hai
nhà khoa học Paul Viola và Michael Jones là phương pháp xác định đối tượng dựa trên
phương pháp tiếp cận.
Ta có thể áp dụng vào nhận diện biển báo giao thông bằng phương pháp tiếp
cận này, có nghĩa là các hệ thống nhận dạng biển báo sẽ học các mẫu biển báo từ một
tập hợp các hình ảnh mẫu. Sau khi quá trình đào tạo được hoàn thành, hệ thống sẽ có
các thông số để sử dụng cho quá trình phát hiện biển báo. Do đó, phương pháp tiếp cận

này còn được gọi là phương pháp học máy. Phần này sẽ tập trung vào quá trình phát
hiện và quy trình đào tạo.
Trong tổng quan, phương pháp Adaboost Haar-like dựa trên sự kết hợp của bốn
thành phần:


×