Thuật toán dựa trên đặc trưng về màu sắc, hình dạng của từng loại biển báo để phân đoạn màu sử dụng thuật toán HSV Achrom, phân đoạn hình học với phương pháp Affine Moment Invariant sau
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA TP HCM
TRẦN QUANG HOÀNG GIANG
HỆ THỐNG PHÁT HIỆN VÀ NHẬN DIỆN BIỂN BÁO GIAO
THÔNG TRÊN KIT FRIENDLY ARM
Chuyên ngành: Kỹ Thuật Điện Tử
Mã số: 60 52 02 03
LUẬN VĂN THẠC SĨ
TP Hồ Chí Minh, tháng 01 năm 2016
Trang 2Công trình được hoàn thành tại: Trường Đại học Bách Khoa -ĐHQG-HCM Cán bộ hướng dẫn khoa học : TS Trương Quang Vinh
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1: PGS.TS Lê Tỉến Thường
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2: TS Bùi Trọng Tú
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày 15 tháng 01 năm 2016
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghỉ rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)
1 CTHĐTS Lê Chí Thông
2 PB1: PGS.TS Lễ Tiến Thường
3 PB2: TS Bùi Trọng Tú
4 UV: TS Nguyễn Minh Son
5 CBHD: TS Trương Quang Vinh
Xác nhận của Chủ tịch Hộỉ đồng đánh giả LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu cố)
Trang 3ĐẠI HỌC QUÓC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tền học viền: TRẦN QUANG HOÀNG GIANG MSSV: 13141117 Ngày, tháng, năm sinh: 25/09/2988 Nơi sinh: Quảng Ngãi
I TÊN ĐỀ TÀI: HỆ THỐNG PHÁT HIỆN VÀ NHẬN DIỆN BIÊN BÁO GIAO THÔNG TRÊN KIT FRIENDLY ARM
NHIỆM VỤ VÀ NỘI DUNG:
Tìm hiểu, xây dựng giải thuật và thiết kế hệ thống phát hiện và nhận diện biển báo giao thông tại Việt Nam, thực hiện trên kít nhúng FriendlyARM
II NGÀY GIAO NHIỆM VỤ: 17/08/2015
III NGÀY HOÀN THÀNH NHIỆM VỤ: 04/12/2015
IV CÁN BỘ HƯỚNG DẪN: TS TRƯƠNG QUANG VINH
Trang 5- i -
LỜI CÁM ƠN
Em xin gởi đến TS Trương Quang Vinh lời cảm ơn chân thành với sự trân trọng và lòng biết ơn sâu sắc về sự hướng dẫn đầy chu đáo và nhiệt tình Thầy đã dẫn dắt, tạo cho em cách tư duy và làm việc một cách khoa học, hướng em đến đề tài khoa học mới mẻ, tiếp cận với các công nghệ hiện đại
Em xin chân thành cám ơn các thầy cô ngành Kỹ Thuật Điện Tử đã hết lòng dạy dỗ
và truyền đạt cho em những kiến thức quý báu
Con xin gởi đến cha mẹ lòng kính trọng và biết ơn sâu sắc nhất Cha mẹ đã nuôi nấng dạy dỗ con nên người và là chỗ dựa tinh thần vững chắc cho con trong cuộc đời
Tôi xin cảm ơn các bạn đã cùng học tập, giúp đỡ, động viên và cùng tôi bước trên con đường nghiên cứu này
Tp Hồ Chí Minh, tháng 01 năm 2016
Học viên
TRẦN QUANG HOÀNG GIANG
Trang 6và nhận dạng
Thuật toán dựa trên đặc trưng về màu sắc, hình dạng của từng loại biển báo để phân đoạn màu sử dụng thuật toán HSV Achrom, phân đoạn hình học với phương pháp Affine Moment Invariant sau đó phân loại biển báo trước khi đưa vào giai đoạn nhận dạng Phương pháp nhận dạng sử dụng thuật toán phân lớp Support Vector Machines (SVMs) có tốc độ phân lớp nhanh và độ chính xác cao
Kết quả thực nghiệm cho thấy thuật toán đáp ứng được cho thời gian thực, mang lại hiệu suất cao và có thể áp dụng vào thực tế
Trang 7The system capture traffic signs through a camera mounted on moving vehicle, then detect, tracking and recognize signs, display the result on the screen
The system is based on three major stages: pre-processing, detection and recognition The algorithm is based on the characteristics of color, shape The color segmentation using HSV Achrom algorithms, shape segmentation using Affine Invariant Moment method before feed to classification stage
Recognition method using Support Vector Machines (SVMs) classifier with fast speed and high accuracy
Experimental results show that the algorithm can be used for real-time applications, providing high performance and can be applied in reality
Trang 8- 4 -
LỜI CAM ĐOAN
Tôi xin cam đoan các kết quả đề tài thực hiện chưa từng công bố trong bất kỳ công trình khoa học trước đây
Người cam đoan
TRẦN QUANG HOÀNG GIANG
Trang 10- V -
MỤC LỤC
1 CHƯƠNG 1: GIỚI THIỆU 1
1.1 Giới thiệu tổng quan 1
1.2 Mục tiêu đề tài 1
1.3 Một số thách thức và giới hạn đề tài 1
1.3.1 Một số thách thức 2
1.3.2 Giới hạn đề tài 5
2 CHƯƠNG 2: TÌNH HÌNH NGHIÊN CỨU 9
2.1 Cơ bản về giải thuật nhận dạng biển báo giao thông 9
2.2 Các công trình nghiên cứu liên quan 9
2.2.1 Các công trình nghiên cứu dựa trên thông tin màu sắc, hình dạng 9
2.2.2 Các công trình nghiên cứu sử dụng thuật toán máy học 14
2.3 Phân tích tổng quan lý thuyết 16
2.3.1 Tiền xử lý 17
2.3.2 Phát hiện biển báo 20
2.3.3 Giới thiệu thu viện mã nguồn mở OpenCV 38
3 CHƯƠNG 3: NỘI DUNG 40
3.1 Giải thuật đề nghị 40
3.1.1 Ảnh đầu vào 40
3.1.2 Tiền xử lý 40
3.1.3 Phát hiện biển 43
3.1.4 Nhận dạng 57
3.1.5 Kết quả mô phỏng 59
3.1.6 Một số phương pháp tối ưu 59
Trang 12- vi -
3.2 Thiết kế hệ thống nhúng phát hiện và nhận dạng biển báo 66
3.2.1 Kit nhúng Tiny4412 66
3.2.2 Cài đặt thư viện, hệ điều hành trên kit Tiny4412 68
3.2.3 Các bước biên dịch cài đặt OpenCV 81
3.2.4 Porting ứng dụng lên kit nhúng 89
4 CHƯƠNG 4: THỬ NGHIỆM ĐÁNH GIÁ 94
4.1 Phương pháp thử nghiệm: 94
4.2 Đánh giá: 109
4.3 Kết luận: 109
TÀI LIỆU THAM KHẢO 110
PHỤ LỤC 112
Trang 14- V11 -
DANH SÁCH CÁC CHỮ VIẾT TẮT
SVM Support Vector Machine Máy véc-tơ hỗ trợ
YCbCr
Luminance, Chroma: Blue, Chroma: Red Green (Y), Blue (Cb), Red (Cr)
Trang 16- viii -
DANH SÁCH BẢNG
Bảng 1.1 Danh sách biển cấm được thử nghiệm 5
Bảng 1.2 Danh sách biển báo nguy hiểm được thử nghiệm 6
Bảng 1.3 Danh sách các biển báo hiệu lệnh được thử nghiệm 8
Bảng 2.1 Bảng giá trị thông thường của Hue và Saturation 22
Bảng 3.1 Giá trị các ngưỡng trong phân đoạn màu 46
Bảng 3.2 Số lượng thread xử lý các contour 65
Bảng 3.3 Bảng so sánh các kit phát triển nhúng 66
Bảng 4.1 Kết quả thử nghiệm 100
Trang 17- 9 -
DANH SÁCH HÌNH
Hình 1.1 Biển báo bị phai mờ 2
Hình 1.2 Biển báo bị sương mù bao phủ 2
Hình 1.3 Biển báo bị che khuất 3
Hình 1.4 Biển báo thiếu sáng 3
Hình 1.5 Biển báo trùng màu nền (quảng cáo ) 4
Hình 1.6 Quá nhiều biển báo cùng lúc 4
Hình 2.1 Hệ thống nhận diện biển báo của Hoferlin, K Zimmer 10
Hình 2.2 Giải thuật nhận diện biển báo của Yin, et 11
Hình 2.3 Hệ thống nhận diện biển báo của Bùi Minh Thành, et 13
Hình 2.4 Các giai đoạn nhận diện biển báo 13
Hình 2.5 Đặc trưng Haar-like 15
Hình 2.6 Lưu đồ giải thuật nhận diện của Lê Thanh Tâm, et 16
Hình 2.7 Bài toán phát hiện và nhận diện biển báo 17
Hình 2.8 Không gian màu HSV 18
Hình 2.9 Biểu diễn màu sắc Hue 18
Hình 2.10 Khoảng cách Euclid của hai véc tơ 21
Hình 2.11 H_out theo RED 22
Hình 2.12 H_out theo Green 23
Hình 2.13 H_out theo Blue 23
Hình 2.14 Lưu đồ giải thuật Shadow High Light Invariant 25
Hình 2.15 HSV Achrom - HSV color space 26
Hình 2.16 Chromatic Zone của màu đỏ 27
Hình 2.17 Phân đoạn bên ừong của biến báo 29
Hình 2.18 Lưu đồ thuật toán Watershed [7] 30
Hình 2.19 Phát hiện vùng ứng cử dính liền bởi thuật toán watershed 31
Hình 2.20 Kiến trúc tổng quát của Artificial Neural Network 32
Hình 2.21 Quá trình xử lí của một ANN 33
Hình 2.22 Ví dụ về hàm chuyển đổi đầu vào tìm kết quả 34
Hình 2.23 Minh họa mẫu vector hỗ ttợ (support vector) 37
Trang 19- X -
Hình 2.24 Tổng quan OpenCV 39
Hình 3.1 Sơ đồ tổng quan hệ thống nhận dạng 40
Hình 3.2 Ví dụ tạo vùng mặt nạ 41
Hình 3.3 Minh họa vùng ảnh cần xử lý 41
Hình 3.4 Ảnh trước khi áp dụng bộ lọc Gaussian 42
Hình 3.5 Ảnh sau khi áp dụng bộ lọc Gaussian 43
Hình 3.6 Sơ đồ khối phát hiện biển báo 43
Hình 3.7 Ngưỡng giá trị s và V đối với màu đỏ trong Chromatic Zone 44
Hình 3.8 Lưu đồ giải thuật phân đoạn màu 46
Hình 3.9 Phát hiện biển báo ngược chiều 47
Hình 3.10 Ảnh gốc chuẩn bị phân đoạn màu 49
Hình 3.11 Ảnh sau khi phân đoạn màu 49
Hình 3.12 Minh họa lấy toàn bộ đối tượng sau khi phân đoạn màu 50
Hình 3.13 Minh họa lấy phần bên trong để tách đối tượng 50
Hình 3.14 Minh họa loại bỏ đối tượng dựa trên diện tích 50
Hình 3.15 Minh họa biển báo hiệu lệnh 51
Hình 3.16 Biển báo hiệu lệnh sau khi phân đoạn màu 52
Hình 3.17 Lấy phần bên trong sau khi phân đoạn màu 52
Hình 3.18 Lấy toàn bộ phần bên trong và bên ngoài của đối tượng 53
Hình 3.19 Hình minh họa kết quả trích xuất đặc trưng 57
Hình 3.20 Mô phỏng giải thật với biển báo cấm ô tô rẽ phải 59
Hình 3.21 Ảnh gốc và ảnh phân đoạn màu bị đứt cạnh 61
Hình 3.22 Ảnh gốc và ảnh phân đoạn màu sau giãn nở 62
Hình 3.23 Minh họa thread và process 63
Hình 3.24 Kít nhúng FriendlyARM Tiny 4412 67
Hình 3.25 Bo mạch Tiny4412 68
Hình 3.26 Chạy SD-Flasher.exe 69
Hình 3.27 SD-Flasher chọn Mini4412/Tiny4412 69
Hình 3.28 SD-Flasher relayout 70
Hình 3.29 SD-Flasher Fuse 71
Trang 21- xi -
Hình 3.30 Chép các file boot image lên SD card 72
Hình 3.31 Cài đặt Qt Creator từ Ubuntu Software Center 76
Hình 3.32 Giao diện của Qt Creator 77
Hình 3.33 Thêm Tool chains vào QT Creator 80
Hình 3.34 Thêm qmake của Qt Everywhere vào Qt Creator 80
Hình 3.35 Build configuration cho kit ARM 81
Hình 3.36 Cmake Opencv Desktop Use default compiler 82
Hình 3.37 Cmake Opencv Desktop Configure 83
Hình 3.38 Cmake Opencv Desktop Generate 84
Hình 3.39 Cmake Opencv ARM tùy chọn cross compiler 85
Hình 3.40 Cmake Opencv ARM đường dẫn tới cross compiler 86
Hình 3.41 Cmake Opencv kit configure 87
Hình 3.42 Cmake Opencv kit generating 88
Hình 3.43 Copy thư viện opencv lên kit 89
Hình 3.44 Copy thư viện qte lên kit 90
Hình 3.45 Chỉnh sửa đường dẫn thư viện build cho kit 91
Hình 3.46 Copy ứng dụng xuống kit 91
Hình 3.47 Chỉnh sửa file rcS 92
Hình 3.48 Chỉnh sửa file appscript 93
Hình 4.1 Nhận diện biển báo bị chói nắng 95
Hình 4.2 Nhận diện biển báo có màu sơn mờ, bong ttóc 95
Hình 4.3 Nhận diện biển báo lúc ttời tối, sơn phai màu 96
Hình 4.4 Nhận diện biển báo có viền trùng màu nền 96
Hình 4.5 Nhận diện biển báo ánh sáng không đồng đều, bóng râm 97
Hình 4.6 Nhận diện biển báo mờ, blur do di chuyển 97
Hình 4.7 Nhận diện biển báo bị blur 1 98
Hình 4.8 Nhận diện biển báo bị blur 2 98
Hình 4.9 Nhận diện biển báo bị blur 3 99
Hình 4.10 Nhận diện biển báo bị cong, méo 99
Hình 4.11 Thử nghiệm giải thuật ttên kit 104
Trang 22- xii -
Hình 4.12 Nhận diện biển báo giao thông trên kit 1 105 Hình 4.13 Nhận diện biển báo giao thông trên kit 2 105 Hình 4.14 Thời gian nhận diện biển báo 124a - 23ms 106 Hình 4.15 Thời gian nhận diện biển báo 128 ~24ms 107 Hình 4.16 Thời gian nhận diện biển báo 13 lb - 21ms 107 Hình 4.17 Thời gian nhận diện biển báo 201a - 20ms 108 Hình 4.18 Thời gian nhận diện biển báo 208 - 20ms 108
Trang 241 CHƯƠNG 1: GIỚI THIỆU
1.1 Giới thiệu tổng quan
Vấn đề về an toàn giao thông luôn là một chủ đề nóng được cộng đồng và nhà nước quan tâm Mỗi ngày số người chết vì tai nạn giao thông không ngừng tăng lên, nguyên nhân chủ yếu là do ý thức người tham gia giao thông, ngoài ra còn phải kể tới cơ sở hạ tầng giao thông Tuy nhiên cũng không thể đổ lỗi hoàn toàn cho người tham gia giao thông, một phần các tài xế lưu thông trên đường luôn phải xử lí rất nhiều tình huống liên tục do đó sự thiếu sót là không tránh khỏi, một phần không nhỏ đó là ý thức tham gia giao thông
Để giảm bớt thiếu sót trong xử lý tình huống của tài xế cũng như giảm bớt tai nạn giao thông, việc giúp tài xế phát hiện và nhận diện biển báo giao thông có thể giảm bớt phần nào tai nạn giao thông Phát hiện và nhận diện biển báo giao thông là một phần chính của hệ thống hỗ trợ lái xe DAS (Driver Assistant Systems) Nó có thể cung cấp thông tin như đưa ra các cảnh báo cho tài xế, hoặc hỗ trợ cho việc lái xe tự động Trong phạm
vi luận văn này em sẽ từng bước xây dựng ra hệ thống này dựa trên bộ thư viện xử lý ảnh OpenCV, chạy trên Kit nhúng Friendly ARM Tiny4412
1.2 Mục tiêu đề tài
- Phát triển giải thuật phát hiện và nhận dạng biển báo giao thông tại Việt Nam
- Mô phỏng giải thuật trên PC
- Xây dựng hệ thống phát hiện và nhận diện biển báo giao thông ở Việt Nam, sử dụng kit Friendly Arm Tiny 4412
- Xây dựng cơ sở dữ liệu hình ảnh và video về biển báo giao thông Việt Nam
1.3 Một số thách thức và giói hạn đề tài
Biển báo giao thông đường bộ 2015 hay còn gọi là hệ thống báo hiệu đường bộ là
hệ thống các biển báo được đặt ven đường giao thông, biển báo giao thông cung cấp các thông tin cụ thể đến người tham gia giao thông Được chia thành 6 nhóm sau: biển báo cấm, biển báo nguy hiểm, biển hiệu lệnh, biển chỉ dẫn, biển phụ, vạch
Trang 26-2-
kẻ đường Trong mỗi nhóm biển báo có số lượng biển báo rất đa dạng nhiều hình dạng
màu sắc khác nhau
1.3.1 Một số thách thức
Do sự phức tạp của biển báo và môi trường xung quanh chúng, việc phát hiện và nhận
diện biển báo sẽ gặp nhiều khó khăn như:
- Màu sắc biển báo bị phai mờ theo thời gian do sự tiếp xúc với ánh mặt trời và phản
ứng của lớp sơn với không khí
Hình 1.1 Biển báo bị phai mờ
- Tầm nhìn hạn chế do điều kiện thời tiết như sương mù, mưa, mây hoặc tuyết rơi
Hình 1.2 Biển báo bị sưong mù bao phủ
- Độ sáng thay đổi theo thời gian ừong ngày, bị che khuất bởi các vật thể khác
Trang 27-3-
Hình 1.3 Biển báo bị che khuất
- Đặc biệt thông tin màu sắc rất nhạy cảm với các điều kiện ánh sáng như bóng tối,
đám mây, mặt trời, có thể bị ảnh hưởng sự chiếu sáng do góc nhìn
Hình 1.4 Biển báo thiếu sáng
- Nhiễu do các vật thể cùng màu sắc như các biển quảng cáo, băng rôn
Trang 28-4-
Hình 1.5 Biển báo trùng màu nền (quảng cáo)
- Biển báo bị hư hỏng, mất góc
- Có quá nhiều biển báo hiện diện cùng lúc
Hình 1.6 Quá nhiều biển báo cùng lúc
- Thông thường hình ảnh được lấy từ camera ttên xe do đó sẽ không ttánh khỏi bị mờ
do chuyển động, rung
- Sự hiện diện của các chướng ngại như cây cối, nhà cửa, xe cộ và người đi bộ
- Hiện nay biển báo giao thông ở Việt Nam do nhiều công ty thi công và không có quy chuẩn nhất định
- Thiếu một cơ sở dữ liệu tiêu chuẩn để đánh giá các phương pháp phân loại hiện có
1.3.2 Giói hạn đề tài
Phạm vi nghiên cứu của đề tài dành cho 3 loại biển báo chính vái số lượng như sau: 20 Biền báo cấm: Biển báo cấm để biểu thị các điều cấm Người sử dụng đường phải chấp
Trang 29Bảng 1.1 Danh sách biền cấm được thử nghiệm
Trang 30Đặc trung: Có hình tam giác nền vàng, viền đỏ
Bảng 1.2 Danh sách biển báo nguy hỉểm được thử nghiệm
A A A
A A
Trang 31-7-
A A A A
ẫ
A A
A
A A
MT
A
10 Biển hiệu lệnh: chỉ dẫn hiệu lệnh, được đanh số từ 301 đến 309 Đặc trung: Hình ttòn, nền xanh và không viền
Trang 32- Đề tài được thực hiện ttên kit nhúng Friendly Arm Tiny 4412
- Camera thực hiện có độ phân giải 640x480
- Xử lý thời gian thực ở tốc độ < 20 frames/s
Trang 33-9-
2 CHƯƠNG 2: TÌNH HÌNH NGHIÊN cứu
Phát hiện và nhận diện biển báo giao thông không phải là một vấn đề mới, nó đã được các hãng xe hơi lớn trên thế giới áp dụng trong các mẫu xe hiện đại (BMW đã lắp đặt
bộ phát hiện biển báo giao thông cho một số dòng xe tuy nhiên chỉ với một số biển quan trọng) Chủ đề nhận diện biển báo được xuất bản đầu tiên tại Nhật năm 1984, kể từ đó chủ
đề này nhanh chóng trở thành lĩnh vực nghiên cứu ứng dụng được hỗ trợ bởi các công ty lớn ửong ngành công nghiệp ô tô
2.1 Cơ bản về giải thuật nhận dạng biển báo giao thông
Quá trình nhận diện biển báo giao thông có thể chia ra làm 2 giai đoạn chính: phát hiện
và nhận diện Trong đó giai đoạn phát hiện đóng vai trò quyết định về sau, chỉ có phát hiện chính xác đối tượng nào là biển báo thì mới có thể đưa vào nhận diện được Chính vì vậy đây là giai đoạn cực kỳ quan trọng cần phải nghiên cứu kỹ lưỡng Dựa hên các phân tích
về đặc trưng biển báo cho thấy màu sắc và hình dạng biển báo là hai thông tin quan trọng giúp phát hiện và phân loại biển báo do đó ta sẽ xem xét các bài báo sử dụng các kỹ thuật phát hiện và nhận dạng dựa trên: thông tin màu sắc, thông tin hình dạng, dựa trên các thuật toán máy học (machine learning)
2.2 Các công trình nghiên cứu liên quan
2.2.1 Các công trình nghiên cứu dựa trên thông tin màu sắc, hình dạng
Một bài báo của Ghica năm 1995 [1] sử dụng ngưỡng để phân đoạn màu, đây là kỹ thuật cơ bản nhất tính toán sự sai khác giữa các pixel trong ảnh so với giá trị tham khảo trên không gian RGB
Fang [2] tính toán giá trị Hue của không gian màu HSI trên mỗi pixel, so sánh sự tương đồng của Hue với giá trị Hue tham khảo Đối tượng được phát hiện nếu sự tương đồng là lớn, kết quả sau đó đem đi phân tích xác định màu sắc của đối tượng so với màu biển báo chuẩn để nhận diện
Trang 34- 10-
Hoferlin, K Zimmermann [3], đây là một bài báo phát hiện biển báo dựa trên hình dạng đối tượng
Hình 2.1 Hệ thống nhận diện biển báo của Hoferlin, K Zimmer
Hình 2.1 là cấu trúc hệ thống nhận diện biển báo giao thông của Hoferlin, K Zimmer, sử dụng các ứng dụng của SIFT và dựa trên hình dạng biển báo để phát hiện đối tượng là biển báo Hơn nữa nhóm tác giả bổ sung một kỹ thuật gọi là mật độ cong tương ứng (contracting curve density - CCD) để tinh chỉnh vùng ứng cử được phát hiện là biển báo, tăng hiệu suất cho quá trình phân loại kế tiếp Cuối cùng nhận diện dựa trên SIFT và SURF sử dụng mạng
nơ rơn
Yin s, Ouyang p, et al [4] sử dụng phương pháp biến đổi Hough điển hình để phát hiện vùng ảnh có khả năng là biển báo giao thông sau đó họ dùng RIBP (Rotation Invariant Binary Pattern) dựa trên không gian affine và Gaussian để rút ngắn thời gian phát hiện biển báo hiệu quả ttên những biển báo bị xoay, chói sáng, hoặc không đúng tỉ lệ Cuối cùng họ
sử dụng mạng ANN (Artificial Neuttal Network) dựa trên tính năng giảm kích thước và phân loại để giảm thời gian nhận diện
ccn &
Hjrnui/Hliri-
3*=T
■* Rjdtal Hixon
Trang 35- 11 -
Hình 2.2 Giải thuật nhận diện biển báo của Yin, et
Đây là mô hình nhận diện biển báo giao thông họ đề xuất, phương pháp đặc trưng của biến đồi Hough (được cung cấp bởi thư viện OpenCV) để xác định vị trí các vùng ứng cử cho biển báo giao thông Sau đó áp dụng kỹ thuật không gian Affine và Gaussian để củng cố lại các vùng ứng cử Kỹ thuật tọa độ cực trị (extreme localization) thừa hưởng từ thuật toán SIFT, cung cấp các hướng và tọa độ cực trị Tháp Gaussian sẽ tạo ra các khối ảnh nhị phân
và xoay chuỗi nhị phân đến vị trị tối thiểu để tạo ra ảnh RIBP Sau đó thông qua bộ lọc hình ttòn, dựa trên các tọa độ cực trị và hướng tạo ra biểu đồ nhị phân các vùng ttòn (Cữcular Binary Pattern based Histogram) Dựa ttên các biểu đồ liên tiếp này sẽ tạo thành những véc tơ đặc trưng Cuối cùng là một véc tơ 64 chiều được đại diện bởi các dữ liệu cố định (fixed-point data) Những dữ liệu cố định này dựa trên các véc tơ đặc trưng góp phần cải thiện tốc độ tính toán Các véc tơ đặc trưng được tạo ra ở một vùng ứng cử sẽ được nhóm lại sử dụng ANN dựa trên phương pháp K-means, sau đó phân loại ANN sẽ giảm kích thước phân loại cải thiện đáng kể tốc độ xử lý
Affine Space ũrnmian pyramid
J
RectkgMiion IV- ' I-.*
CxlfcrftiH
1
Funhirc Gcne-Jtion
Trang 36- 12-
Hasan Fleyeh [5], ông phát triển hệ thống nhận diện báo giao thông kết hợp của hai thông tin màu sắc và hình dạng biển báo trải qua ba quá trình chính: phân đoạn màu, phân loại và nhận diện Trong giai đoạn phân đoạn màu, tác giả phát triển bốn thuật toán bao gồm: Shadow and highlight invariant (SHI), lấy ngưỡng động, chỉnh sửa thuật toán de la Escalera’s và thuật toán phân đoạn màu dùng Fuzzy
Tất cả các thuật toán được tác giả phát triển và thử nghiệm rất kỹ lưỡng, trong đó thuật toán SHI được đánh giá là có hiệu năng cao nhất Nó có thể chống lại được các điều kiện khó khăn của thời tiết, ánh sáng (chói sáng, bóng râm), và thời điểm trong ngày (được chứng minh là không phụ thuộc vào cường độ ánh sáng)
Abhishek Bedi 2011 [6], cũng dựa trên thông tin màu sắc hình dạng cho việc phát hiện biển báo, tác giả phát triển hệ thống nhận diện biển báo hạn chế tốc độ ẩn trong bóng tối hoặc trời nhiều mây ánh sáng không đủ
Tình hình nghiên cứu trong nước,
Đe phát hiện và nhận diện chính xác biển báo giao thông là một thử thách lớn cho việc phát triển các hệ thống hỗ trợ tài xế khi phải giải quyết khá nhiều vấn đề về mặt hình ảnh như vật chuyển động, trong điều kiện thời tiết khác nhau, bóng tối hoặc che khuất thường gặp khi xe di chuyển
Bùi Minh Thành [7] phân chia công việc thành ba giai đoạn: phân đoạn màu, phát hiện biển báo, phân loại biển báo Ket quả thực nghiệm ttên các tuyến đường ở Ireland và vưomg quốc Anh khá tốt với 99,2 % độ chính xác phân loại biển báo Mô hình đề xuất của tác giả
Trang 37- 13-
Hình 2.3 Hệ thống nhận diện biển báo của Bùi Minh Thành, et
Cũng áp dụng phương pháp này nhiều luận văn được thực hiện cho biển báo giao thông ở Việt Nam như Trịnh Quốc Tài - 2012 [8], Nguyễn Việt Tiến - 2013 [9], Lê Quốc
Trang 38- 14-
cao, phân đoạn màu sắc, hình dạng Đầu ra là một hình tiềm năng có thể là biển báo Giúp tăng hiệu quả và tốc độ phát hiện vì chỉ giữ lại những vùng tiềm năng thỏa mãn yêu cầu Trong giai đoạn nhận diện (Recognition Phase): Mỗi vùng tiềm năng được kiểm tra các đặc trưng để quyết định nó có phải hay không Hình dạng của đối tượng đóng vai trò quan trọng, nó quyết định xem đối tượng nên học lớp nào hình tròn hay tam giác
2.2.2 Các công trình nghiên cứu sử dụng thuật toán máy học
Máy học là một ngành khoa học nghiên cứu các thuật toán cho phép máy tính có thể học được các khái niệm (concept) Có hai phương pháp máy học chính:
- Phương pháp quy nạp: Máy học phân biệt các khái niệm dựa trên dữ liệu đã thu thập được trước đó Phương pháp này cho phép tận dụng được nguồn dữ liệu rất nhiều và sẵn
sự khác biệt tổng các pixel trong ảnh
masH TBH
Hình 2.5 Đặc trưng Haar-like
Adaboost là một thuật toán máy học trình bày bởi Yoav Freund & Rebert Schafire [12] cải
Trang 39- 15-
tiến từ thuật toán Boosting, R Lienhart, and J Maydt [13], giúp đẩy nhanh việc tạo ra bộ phân loại mạnh (strong classifier) bằng cách chọn các đặc trưng tốt Haar- like trong các bộ phân loại yếu (weak classifier) và kết hợp chúng lại tuyến tính để hình thành một bộ phân loại mạnh bằng cách sử dụng các ửọng số đánh dấu các mẫu khó nhận dạng
Tình hình nghiên cứu trong nước:
Phạm Hồng Thái - 2012 [14], biển báo giao thông được phát hiện bằng phương pháp rút đặc trưng Haar kết hợp với bộ huấn luyện tăng tốc Adaboost Sau đó rút đặc trưng bằng phương pháp Principle Components Analysis và được nhận dạng bằng thuật toán Support Vector Machine Với trên 500 ảnh thử được dùng, kết quả nhận dạng có độ chính xác trung bình 92,97% cho thấy phương pháp này khá thuyết phục
Lê Thanh Tâm 2009 [15] giới thiệu cách tiếp cận hiệu quả sử dụng đặc trưng màu trên SVM
để phát hiện vùng ứng cử cho biển báo giao thông trong thời gian thực Đặc trưng màu được xử lý trên vùng của pixel để sử dụng các thông tin pixel lân cận thay vì ttên từng pixel Sau đó phép biến đổi Hough và thuật toán phát hiện contour được áp dụng để phân lớp cũng như khử nhiễu dựa trên đặc trưng hình học của biển báo giao thông, kết quả đạt được ttên nhiều điều kiện khác nhau của môi trường là rất khả quan Mô hình tác giả đề nghi:
Anil đằu vào
1’hãnđe.in ánh máu bàng SVM dê có X úng úng cứ trẽn ar.h dủ dưục thu nhu kích ihưức
Phân Loai biên báo búng biền dời Huugh vủ contour
Trang 40- 16-
Á nil Let ứỊU-đ ,
Hình 2.6 Lưu đồ giải thuật nhận diện của Lê Thanh Tâm, et
Ảnh đầu vào được thu nhỏ kích thước 2 lần chiều rộng và 2 lần chiều cao, thuật toán phân đoạn màu quan tâm sẽ đưa ra các vùng ứng cử Sau đó vùng ứng cử sẽ được rút trích từ ảnh gốc ban đầu dựa trên vị trí ảnh lấy được qua bước phân đoạn màu sẽ được xử lý bởi thuật toán hội tụ màu (color constancy) để giảm bớt một phần nhiễu giúp ảnh đạt chất lượng cao hơn Sau đó thuật toán Hough và contour được áp dụng để phân loại theo hình dạng các biển báo đồng thời loại bỏ các vùng ứng cử nhiễu
2.3 Phân tích tổng quan lý thuyết
Nhiều công nghệ được sử dụng để nhận diện biển báo giao thông đã được trình bày
ở ttên, một số chúng có thể kết hợp lại để tối ưu và đem lại hiệu năng cao như kết hợp màu sắc và hình dạng để phát hiện chính xác hơn
Thông qua các nghiên cứu, bài toán phát hiện và nhận diện biển báo cơ bản bao gồm các bước:
Hình 2.7 Bài toán phát hiện và nhận diện biển báo
2.3.1 Tiền xử lý
Đây là bước khá quan họng giúp cho quá trình phát hiện nhanh và chính xác hơn Ảnh đầu vào thu thập từ camera qua tiền xử lý để nâng cao chất lượng ảnh, giảm nhiễu, và chuyển đổi không gian màu sang HSV
Từ phân tích tổng quan và đặc trưng biển báo giao thông, rõ ràng màu sắc là chìa khóa cung cấp thông tin cho tài xế, do đó nó là nguồn thông tin quan họng đối với hệ thống phát