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

Ứng dụng trí tuệ nhân tạo để phát triển hệ thống nhận diện và theo dõi làn đường cho xe tự lái

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 (6.37 MB, 113 trang )

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ TH

T TH NH PHỐ HỒ CHÍ MINH

KHOA CƠ KHÍ ĐỘNG LỰC

ĐỒ ÁN TỐT NGHIỆP

ỨNG DỤNG TRÍ TUỆ NHÂN TẠO ĐỂ PHÁT TRIỂN HỆ
THỐNG NHẬN DIỆN VÀ THEO DÕI LÀN ĐƯỜNG CHO
XE TỰ LÁI

SVTH : NGÔ THÀNH MIN
MSSV:

15145289

SVTH : LÊ VĂN TRIỆU
MSSV:

15145393

GVHD: PGS.TS. ĐỖ VĂN DŨNG

Tp. Hồ Chí Minh, tháng 7 năm 2019


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ TH

T TH NH PHỐ HỒ CHÍ MINH


KHOA CƠ KHÍ ĐỘNG LỰC

ĐỒ ÁN TỐT NGHIỆP
Chuyên ngành: Công nghệ Kỹ thuật ô tô

Tên đề tài

ỨNG DỤNG TRÍ TUỆ NHÂN TẠO ĐỂ PHÁT TRIỂN HỆ
THỐNG NHẬN DIỆN VÀ THEO DÕI LÀN ĐƯỜNG CHO
XE TỰ LÁI

SVTH :

NGÔ THÀNH MIN

MSSV:

15145289

SVTH :

LÊ VĂN TRIỆU

MSSV:

15145393

GVHD:

PGS.TS. ĐỖ VĂN DŨNG


Tp. Hồ Chí Minh, tháng 7 năm 2019


TRƯỜNG ĐH SƯ PHẠM KỸ THU T

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TP. HỒ CHÍ MINH

Độc Lập – Tự Do – Hạnh Phúc

KHOA CƠ KHÍ ĐỘNG LỰC

TP. Hồ Chí Minh, ngày 22 tháng 7 năm 2019

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên:

1. NGÔ THÀNH MIN

MSSV: 15145289

(E-mail:

Điện thoại: 0333772680 )

2. LÊ VĂN TRIỆU

MSSV: 15145393


(E-mail:

Điện thoại: 0355997404)

Ngành: Công nghệ Kỹ thuật ơ tơ
Khóa: 2015
1. Tên đề tài:
Ứng dụng trí tuệ nhân tạo để phát triển hệ thống nhận diện và theo dõi làn đường
cho xe tự lái
2. Nhiệm vụ đề tài:
Nghiên cứu và ứng dụng trí tuệ nhân tạo trong việc nhận diện và theo dõi lane
đường trên nền tảng Deep learning
3. Sản phẩm của đề tài:
Giải thuật, phần mềm
4. Ngày giao nhiệm vụ đề tài: 02/04/2019
5. Ngày hồn thành nhiệm vụ: 22/7/2019
TRƯỞNG BỘ MƠN

CÁN BỘ HƯỚNG DẪN

PGS.TS. Đỗ Văn Dũng


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THU T TP. HCM

KHOA CƠ KHÍ ĐỘNG LỰC

CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do – Hạnh phúc


Bộ môn Điện tử ô tô

PHIẾU NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP
(Dành cho giảng viên hướng dẫn)

Họ và tên sinh viên NGÔ THÀNH MIN

MSSV: 15145289

Hội đồng:…………

Họ và tên sinh viên LÊ VĂN TRIỆ

MSSV: 15145393

Hội đồng:…………

Tên đề tài: Ứng dụng trí tuệ nhân tạo để phát triển hệ thống nhận diện và theo dõi làn đường cho
xe tự lái
Ngành đào tạo: Công nghệ Kỹ thuật ô tô
Họ và tên GV hướng dẫn: PGS.TS. Đỗ Văn Dũng
Ý KIẾN NHẬN XÉT
1. Nhận xét về tinh thần, thái độ làm việc của sinh viên (không đánh máy)
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

2. Nhận xét về kết quả thực hiện của ĐATN (không đánh máy)

2.1. Kết cấu, cách thức trình bày ĐATN:
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

2.2. Nội dung đồ án:
(Cơ sở lý luận, tính thực tiễn và khả năng ứng dụng của đồ án, các hướng nghiên cứu có thể tiếp tục phát triển)
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

2.3. Kết quả đạt được:
...................................................................................................................................................................................


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

2.4. Những tồn tại (nếu có):
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................


3. Đánh giá:

1.

Hình thức và kết cấu ĐATN
Đ ng

2.

Điểm tối
đa

Mục đánh giá

TT

Điểm đạt
được

30

rmat ới đ y đủ cả hình thức à nội dung của các mục

10

Mục tiêu, nhiệm vụ, tổng quan của đề tài

10


Tính cấp thiết của đề tài

10

Nội dung ĐATN

50

Khả năng ứng dụng kiến thức toán học, khoa học và kỹ thuật, khoa
học hội

5

Khả năng thực hiện/phân tích/tổng hợp/đánh giá

10

Khả năng thiết kế chế tạo một hệ thống, thành ph n, hoặc quy trình
đáp ứng yêu c u đưa ra ới những ràng buộc thực tế.

15

Khả năng cải tiến và phát triển

15

Khả năng sử dụng công cụ kỹ thuật, ph n mềm chuyên ngành

5


3.

Đánh giá về khả năng ứng dụng của đề tài

10

4.

Sản phẩm cụ thể của ĐATN

10
Tổng điểm

100

4. Kết luận:
 Được phép bảo vệ
 Không được phép bảo vệ
TP.HCM, ngày 22 tháng 07 năm 2018
Giảng viên hướng dẫn
((Ký, ghi rõ họ tên)

PGS.TS. Đỗ Văn Dũng


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THU T TP. HCM

KHOA CƠ KHÍ ĐỘNG LỰC

CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập - Tự do – Hạnh phúc

Bộ môn Điện tử ô tô

PHIẾU NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP
(Dành cho giảng viên phản biện)

Họ và tên sinh viên NGÔ THÀNH MIN

MSSV: 15145289 Hội đồng…………

Họ và tên sinh viên LÊ VĂN TRIỆ

MSSV: 15145393 Hội đồng…………

Tên đề tài: Ứng dụng trí tuệ nhân tạo để phát triển hệ thống nhận diện và theo dõi làn đường cho
xe tự lái
Ngành đào tạo: Công nghệ Kỹ thuật ô tô
Họ và tên GV phản biện: (Mã GV) ..................................................................................................
Ý KIẾN NHẬN XÉT
1. Kết cấu, cách thức trình bày ĐATN:
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

2. Nội dung đồ án:
(Cơ sở lý luận, tính thực tiễn và khả năng ứng dụng của đồ án, các hướng nghiên cứu có thể tiếp tục phát triển)
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

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

3. Kết quả đạt được:
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

4. Những thiếu sót và tồn tại của ĐATN:
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................
...................................................................................................................................................................................

5. Câu hỏi:


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


6. Đánh giá:

1.

Hình thức và kết cấu ĐATN
Đ ng

2.

Điểm tối
đa

Mục đánh giá

TT

Điểm đạt
được

30

rmat ới đ y đủ cả hình thức à nội dung của các mục

10

Mục tiêu, nhiệm vụ, tổng quan của đề tài

10

Tính cấp thiết của đề tài


10

Nội dung ĐATN

50

Khả năng ứng dụng kiến thức toán học, khoa học và kỹ thuật, h a
học hội

5

Khả năng thực hiện/phân tích/tổng hợp/đánh giá

10

Khả năng thiết kế, chế tạo một hệ thống, thành ph n, hoặc quy trình
đáp ứng yêu c u đưa ra ới những ràng buộc thực tế.

15

Khả năng cải tiến và phát triển

15

Khả năng sử dụng công cụ kỹ thuật, ph n mềm chuyên ngành

5

3.


Đánh giá về khả năng ứng dụng của đề tài

10

4.

Sản phẩm cụ thể của ĐATN

10
Tổng điểm

100

7. Kết luận:
 Được phép bảo vệ
 Không được phép bảo vệ
TP.HCM, ngày

tháng 07 năm 2018

Giảng viên phản biện
((Ký, ghi rõ họ tên)


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THU T
THÀNH PHỐ HỒ CHÍ MINH
KHOA CƠ KHÍ ĐỘNG LỰC

XÁC NHẬN HỒN THÀNH ĐỒ ÁN

Tên đề tài:
ỨNG DỤNG TRÍ TUỆ NHÂN TẠO ĐỂ PHÁT TRIỂN HỆ THỐNG NH N
DIỆN V THEO DÕI L N ĐƯỜNG CHO XE TỰ LÁI
Họ tên sinh viên:

1. NGÔ THÀNH MIN
2. LÊ VĂN TRIỆU

MSSV: 15145289
MSSV: 15145393

Ngành: Công nghệ Kỹ thuật ô tô
Sau khi tiếp thu và điều chỉnh theo góp ý của Giảng viên hướng dẫn, Giảng viên
phản biện và các thành viên trong Hội đồng bảo về. Đồ án tốt nghiệp đã được hoàn
chỉnh đúng theo yêu cầu về nội dung và hình thức.

Chủ tịch Hội đồng: ……………………………….. …………….…………..

Giảng viên hướng dẫn: ………………………… ………………...………….

Giảng viên phản biện: ………………………….. ………………...…………

Tp. Hồ Chí Minh, ngày 22 tháng 7 năm 2019


LỜI CẢM ƠN
Trí tuệ nhân tạo tuy khơng phải là thuật ngữ quá mới mẻ ở Việt Nam, nhưng đối
với những sinh viên chuyên ngành công nghệ kỹ thuật ô tơ như chúng em thì kiến thức về
lĩnh vực này vẫn cịn hạn chế. Ứng dụng trí tuệ nhân tạo để giải quyết một vấn đề trong
chuyên ngành thực sự là một thử thách nhưng cũng là một cơ hội để chúng em tìm hiểu

những kiến thức mới về một lĩnh vực tiềm năng trong tương lai. Ngoài những kiến thức
về trí tuệ nhân tạo, qua đề tài này, chúng em còn học hỏi được nhiều kiến thức xử lý ảnh,
lập trình python và nhiều lĩnh vực hồn tồn xa lạ đối với chúng em trước đây. Chúng em
rất vui vì cuối cùng cũng đã vượt qua các thử thách gặp phải và hoàn thành đề tài đúng
thời hạn.
Trong quá trình thực hiện đề tài của mình, do điều kiện hạn chế về kiến thức và
thời gian nghiên cứu nên khơng tránh được những sai sót, rất mong nhận được sự góp ý
từ q Thầy Cơ và các bạn để đề tài của chúng em có thể ngày càng hồn thiện hơn.
Chúng em xin chân thành cảm ơn Thầy PGS.TS. Đỗ Văn Dũng – Giảng viên
hướng dẫn, đã tận tình giúp đỡ chúng em, luôn cho chúng em những lời khuyên, những
lời động viên quý báu, chúng em đã học được rất nhiều kiến thức từ Thầy, học được cách
tổ chức và phân công công việc hợp lý để từ đó chúng em có thể hồn thiện được đồ án
tốt nghiệp này.
Chúng em cũng xin chân thành cảm ơn Thầy ThS. Nguyễn Trung Hiếu – Giảng
viên Khoa Cơ Khí Động Lực, Thầy TS. Trần Vũ Hoàng – Giảng viên Khoa Điện - Điện
Tử đã luôn hỗ trợ chúng em về cơ sở vật chất và những kiến thức chuyên môn vơ cùng
bổ ích, cùng với đó là những lời khun, những lời động viên quý báu.
Qua đây, chúng em xin chân thành cảm ơn các Thầy Cô trong Khoa Cơ Khí Động
Lực trường Đại học Sư Phạm Kỹ Thuật TP. Hồ Chí Minh đã cho chúng em những kiến
thức chuyên ngành thật bổ ích, tạo điều kiện thuận lợi để chúng em có thể hồn thành
được đồ án tốt nghiệp này.
Một lần nữa, chúng em xin cảm ơn tất cả q Thầy, q Cơ, kính chúc q Thầy,
q Cơ ln thành công trên con đường đào tạo nhân tài của mình.
i


TĨM TẮT
Trong xu hướng tự động hóa ngày càng gia tăng, các công nghệ, kỹ thuật hỗ trợ
cho xe tự lái cũng ngày càng phát triển và nhận được nhiều sự quan tâm của các nhà khoa
học trên thế giới. Kèm theo đó, trí tuệ nhân tạo (AI) và xử lý ảnh mặc dù mới mẻ nhưng

lại có tốc độ phát triển vơ cùng nhanh chóng và được ứng dụng rộng rãi trong nhiều lĩnh
vực của đời sống.
Nhiệm vụ đồ án là nghiên cứu và sử dụng trí tuệ nhân tạo trên nền tảng học sâu
(deep learning) kết hợp với thuật toán xử lý ảnh để nhận biết lane hỗ trợ người lái.
Đề tài đề xuất một phương pháp nhận biết lane đường mới kết hợp sự ưu việt giữa
các thuật toán học sâu tiên tiến và một số phương pháp xử lý ảnh truyền thống. Dựa trên
hình ảnh thu thập từ camera, thuật toán học sâu đã được huấn luyện trên các bộ dữ liệu
có sẵn trên thế giới được áp dụng để đưa ra các phán đoán đầu tiên về lane đường. Sau
đó, các kỹ thuật xử lý ảnh và xử lý tín hiệu truyền thống như Hough Transform, Kmeans và Kalman filter được áp dụng trên các phán đoán đầu tiên này để tăng hiệu quả
nhận dạng phù hợp với đặc tính đường ở Việt Nam. Đề tài được phát triển trên hệ điều
hành Ubuntu 16.04 sử dụng ngơn ngữ lập trình python.
Kết quả thử nghiệm cho thấy phương pháp của nhóm có thể nhận diện và theo dõi
các làn đường trong nhiều điều kiện thách thức khác nhau trên đường điển hình như
đường bị các vật cản che chắn (như ô tô, xe máy,…), đường cong, đường có một số kết
cấu lạ,…

ii


MỤC LỤC

LỜI CẢM ƠN .......................................................................................................................i
TÓM TẮT ........................................................................................................................... ii
MỤC LỤC ......................................................................................................................... iii
DANH MỤC CÁC TỪ VIẾT TẮT V KÝ HIỆ ............................................................vi
DANH MỤC CÁC HÌNH................................................................................................. vii
DANH MỤC CÁC BẢNG .................................................................................................. x
Chương 1. TỔNG QUAN .................................................................................................. 1
1.1. Lý do chọn đề tài...........................................................................................................1
1.2. Mục tiêu nghiên cứu .....................................................................................................1

1.3. Nội dung nghiên cứu .....................................................................................................2
1.4. Giới hạn đề tài ...............................................................................................................2
1.5. Phạm vi ứng dụng .........................................................................................................2
Chương 2. CƠ SỞ LÝ THUYẾT ...................................................................................... 3
2.1. Cơ sở lý thuyết về ảnh và xử lý ảnh .............................................................................3
2.1.1. Cơ sở lý thuyết về ảnh ............................................................................................3
2.1.1.1. Điểm ảnh (Picture Element) .............................................................................3
2.1.1.2. Độ phân giải của ảnh ........................................................................................4
2.1.1.3. Mức xám của ảnh .............................................................................................5
2.1.1.4. Không gian màu. ..............................................................................................5
2.1.1.5. Định nghĩa ảnh số ............................................................................................8
2.1.1.6. Ảnh trắng đen ...................................................................................................8
2.1.1.7. Ảnh màu ...........................................................................................................9
2.1.2. Cơ sở lý thuyết về xử lý ảnh .................................................................................10
2.1.2.1. Các bước cơ bản trong xử lý ảnh ...................................................................10
2.1.2.2. Các thành phần cơ bản của hệ thống xử lý ảnh .............................................15
2.1.2.3. Những vấn đề trong xử lý ảnh........................................................................16
2.2. Mạng nơron tích chập – Convolutional Neural Network (CNN) ...............................17
2.2.1. Thị giác máy tính (Computer vision) ...................................................................17
2.2.2. Mạng nơ ron tích chập (CNN hay ConvNet) .......................................................18
iii


2.2.2.1. Lớp tích chập (Convolutional layer) ..............................................................18
2.2.2.2. Đường viền phụ (Padding) .............................................................................19
2.2.2.3. Nhân chập sải (strided convolutions) .............................................................21
2.2.3. Phép chập khối .....................................................................................................22
2.2.3.1. Phép chập khối với một bộ lọc .......................................................................22
2.2.3.2. Phép chập khối với nhiều bộ lọc ....................................................................23
2.2.4. Mạng CNN một lớp ..............................................................................................24

2.2.5. Mạng CNN đơn giản ............................................................................................24
2.2.6. Lớp Pooling ..........................................................................................................25
2.2.6.1. Pooling theo giá trị cực đại (Max Pooling) ....................................................25
2.2.6.2. Pooling theo giá trị trung bình (Average Pooling).........................................26
2.2.7. Ví dụ một CNN nhận diện ra lane đường .............................................................26
2.2.8. Ưu điểm của CNN ................................................................................................28
Chương 3. SƠ LƯỢC PHẦN CỨNG VÀ PHẦN MỀM .............................................. 29
3.1. Sơ lược về phần cứng .................................................................................................29
3.1.1. Xây dựng cấu hình máy tính phục vụ đồ án .........................................................29
3.1.2. Lựa chọn camera ..................................................................................................29
3.2. Sơ lược về phần mềm .................................................................................................30
3.2.1. Hệ điều hành Ubuntu ............................................................................................30
3.2.2. Python ...................................................................................................................31
3.2.3. Anaconda ..............................................................................................................32
3.2.4. Cuda ......................................................................................................................32
3.2.5. CuDNN .................................................................................................................33
3.2.6. Tensorflow ............................................................................................................33
3.2.7. Một số thư viện sử dụng trong đồ án ....................................................................38
Chương 4. CHƯƠNG TRÌNH ĐIỀU KHIỂN NHẬN DIỆN LÀN ĐƯỜNG ............. 40
(LANE DETECTION) ..................................................................................................... 40
4.1. Sơ đồ tổng thể của hệ thống ........................................................................................40
4.2. Lựa chọn thuật toán học sâu cho việc nhận diện lane ................................................40
4.3. Áp dụng thuật toán lanenet lane detection ..................................................................43
4.3.1. Giới thiệu sơ lược về LaneNET ...........................................................................43
iv


4.3.2. Áp dụng thuật toán ...............................................................................................45
4.4. Nhận diện làn đường bằng giải thuật K – means Clustering ......................................46
4.4.1. Lấy dữ liệu cho K - means từ Hough Transform .................................................46

4.4.2. Ứng dụng Hough Transform trong OpenCV .......................................................48
4.4.3. Áp dụng giải thuật K – means Clustering ............................................................49
4.4.3.1. Giới thiệu về phân cụm dữ liệu bằng K – means. ..........................................49
4.4.3.2. Giải thuật K – means ......................................................................................50
4.4.3.3. Các bước để ứng dụng K-means nhận diện lane............................................52
4.5. Theo dõi làn đường (tracking) bằng cách sử dụng Kalman filter ...............................59
4.5.1. Giới thiệu Kalman filter .......................................................................................59
4.5.2. Các phương trình của Kalman filter: ....................................................................60
4.5.3. Ứng dụng Kalman fileter để tracking ...................................................................62
Chương 5. THỰC NGHIỆM VÀ KẾT QUẢ THỰC NGHIỆM ................................. 66
5.1. Chuẩn bị ......................................................................................................................66
5.2. Địa điểm thực nghiệm .................................................................................................66
5.3. Kết quả thực nghiệm ...................................................................................................67
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................................... 72
6.1. Kết luận .......................................................................................................................72
6.2. Hướng phát triển .........................................................................................................72
DANH MỤC T I LIỆ THAM KHẢO ........................................................................... 74
PHỤ LỤC .......................................................................................................................... 75

v


DANH MỤC CÁC TỪ VIẾT TẮT VÀ KÝ HIỆU
AI

Artificial Intelligence – Trí tuệ nhân tạo

API

Application Programming Interface – Giao diện lập trình ứng dụng


CIE

Commission Internationale d’Eclairage – Tổ chức quốc tế về chuẩn hóa màu

CMYK

Cyan, Magenta, Yellow, Black – Khơng gian màu CMYK

CNN

Convolutional Neural Network – Mạng tích chập

CUDA

Compute Unified Device Architecture – Kiến trúc thiết bị tính tốn hợp nhất

CUDNN NVIDIA CUDA Deep Neural Network library – Thư viện tăng tốc độ GPU
cho các deep learning networks
GPGPU

General-purpose computing on graphics processing units – Điện toán đa năng
trên các đơn vị xử lý đồ họa

GPU

Graphics Processing Unit – Đơn vị xử lý đồ họa

HSV


Hue, Saturation, Value – Không gian màu HSV

IDE

Integrated Development Environment – Mơi trường phát triển tích hợp

OpenCV Open Source Computer Vision – Thư viện mở cho thị giác máy tính
PEL

Picture Element – Điểm ảnh

RGB

Red, Green, Blue – Không gian màu RGB

vi


DANH MỤC CÁC HÌNH

Hình 2.1 Điểm ảnh (Pixel) ...................................................................................................3
Hình 2.2 Các độ phân giải của ảnh ......................................................................................4
Hình 2.3 Hệ tọa độ RGB ......................................................................................................6
Hình 2.4 Khơng gian màu HSV và vịng trịn biểu diễn màu sắc (HUE) ............................7
Hình 2.5 Khơng gian màu CMYK .......................................................................................8
Hình 2.6 Ảnh xám (bên trái) và ảnh nhị phân (bên phải) ....................................................9
Hình 2.7 Ảnh màu ..............................................................................................................10
Hình 2.8 Các bước cơ bản trong xử lý ảnh ........................................................................10
Hình 2.9 Sơ đồ phân tích và xử lý ảnh và lưu đồ thơng tin giữa các khối ........................14
Hình 2.10 Các thành phần cơ bản của hệ thống xử lý ảnh ................................................15

Hình 2.11 Bộ lọc được sử dụng trong lớp tích chập đầu tiên là các ma trận kích thước 3x3
............................................................................................................................................19
Hình 2.12 Nhân bộ lọc k với ma trận đầu vào I .................................................................19
Hình 2.13 Ma trận đầu vào được bao quanh bởi đường viền phụ kích thước p (giá trị 0) 20
Hình 2.14 Nhân chập với bước sải s=2 ..............................................................................22
Hình 2.15 Phép nhân chập khối .........................................................................................22
Hình 2.16 Ba lớp của bộ lọc có thể được cấu hình khác nhau để phát hiện đặc trưng trên
một, hai hoặc cả ba kênh màu của ảnh đầu vào. ................................................................23
Hình 2.17 Kiến trúc của một lớp: Input => 2 filters of 3x3x3=> ReLU (non-linear
activation function) => Output ..........................................................................................24
Hình 2.18 Ví dụ một CNN cơ bản được sử dụng cho bài tốn phân loại ảnh ...................25
Hình 2.19 Ví dụ pooling theo giá trị cực đại .....................................................................26
Hình 2.20 Cấu trúc cơ bản của một CNN thường là một vài cụm CONV => POOL theo
sau bởi một tập FC và kết thúc bởi một lớp Softmax ........................................................27

Hình 3.1 Cấu hình máy tính ...............................................................................................29
Hình 3.2 GoPro Hero 5 Black ............................................................................................30
Hình 3.3 Biểu tượng và giao diện hệ điều hành Ubuntu ...................................................31
vii


Hình 3.4 Biểu tượng Anaconda .........................................................................................32
Hình 3.5 Cách thức nhận diện hình ảnh khn mặt trong Tensorflow ..............................35
Hình 3.6 Xác định đối tượng trong video với Tensorflow ................................................36

Hình 4.1 Sơ đồ tổng thể của hệ thống ................................................................................40
Hình 4.2 Các giải thuật lane detection trên github.com ....................................................41
Hình 4.3 Cấu trúc của mạng LaneNET..............................................................................44
Hình 4.4 Kết quả chạy thuật tốn trên Model Weights .....................................................45
Hình 4.5 Kết quả chạy thuật tốn trên ảnh chụp................................................................46

Hình 4.6 Hình mình họa sử dụng trong OpenCV ..............................................................47
Hình 4.7 Biểu diễn giá trị ρ trong miền θ ..........................................................................47
Hình 4.8 Biến đổi Hough transform ..................................................................................49
Hình 4.9 Các đối tượng được phân phối vào 3 cụm đại diện là 3 điểm trung tâm nhất ....50
Hình 4.10 Các bước của thuật tốn K - means ..................................................................52
Hình 4.11 Tìm các contours trên ảnh chụp ........................................................................53
Hình 4.12 Tìm các contours trên ảnh download ................................................................53
Hình 4.13 Tìm box ơm lấy contour trên ảnh tự chụp ........................................................54
Hình 4.14 Tìm box ơm lấy contour trên ảnh download .....................................................54
Hình 4.15 Tìm các center trên ảnh tự chụp........................................................................55
Hình 4.16 Tìm các center trên ảnh download ....................................................................55
Hình 4.17 Bắt lane trên ảnh tự chụp ..................................................................................56
Hình 4.18 Bắt lane trên ảnh download ..............................................................................56
Hình 4.19 Kết quả sau khi sử dụng K-Means ....................................................................58
Hình 4.20 Hoạt động của Kalman filter .............................................................................59
Hình 4.21 Mơ hình khơng gian trạng thái của Kalman filter.............................................60
Hình 4.22 Quá trình khởi tạo của Kalman filter ................................................................61
Hình 4.23 Ảnh thể hiện 2 lane chính màu xanh.................................................................63
Hình 4.24 Chấm xanh dương đậm được gọi là VashingPoint ...........................................64
Hình 4.25 Kết quả sau khi tracking bằng Kalman Filter ...................................................65

viii


Hình 5.1 Cài đặt camera GoPro Hero 5 Black trên xe .......................................................66
Hình 5.2 Địa điểm thực nghiệm.........................................................................................67
Hình 5.3 Kết quả thực nghiệm ...........................................................................................70

ix



DANH MỤC CÁC BẢNG

Bảng 2.1 Tổng kết tham số tại mỗi lớp CNN ....................................................................27

Bảng 4.1 Khảo sát các giải thuật lane detection có trên github.com .................................42
Bảng 4.2 Các source code lane detection có sử dụng deep learning framework...............43

x


Chương 1. TỔNG QUAN
1.1 Lý do chọn đề tài
Trong thời đại cách mạng công nghiệp 4.0 hiện nay, nền công nghiệp ơ tơ khơng
cịn mang khuynh hướng thuần cơ khí như trước đây nữa, mà nó đang chuyển hóa dần và
có xu thế kết hợp với các lĩnh vực khác như điện, điện tử và khoa học máy tính. Trong
đó, thuật ngữ “AI” hay “trí tuệ nhân tạo” khơng cịn quá xa lạ đối với chúng ta nữa, thậm
chí, chúng ta vẫn luôn tiếp xúc với chúng hàng ngày, hàng giờ, chẳng hạn như các trợ lý
ảo Siri hay Google Assistant trên các điện thoại thơng minh. Ngồi ra, nó cịn được ứng
dụng trong các mơ hình nhà thơng minh, trong các trò chơi điện tử, trong y tế hay trong
quân sự,… mà đặc biệt, đối với những sinh viên “Ơ tơ” như chúng ta, khơng thể khơng
nhắc đến cụm từ “xe tự lái”
Nhắc đến “xe tự lái”, chắc hẳn nhiều người cũng biết năm 2016, công ty Otto sở
hữu bởi

ber đã thành công trong việc vận chuyển 50.000 lon bia Budweisers bằng xe

vận tải tự lái [14]. Về lợi ích kinh tế, ứng dụng trí tuệ nhân tạo cho vận tải đường dài có
thể giảm chi phí, ngồi ra còn giúp hạn chế tối đa những tai nạn chết người. Công ty
nghiên cứu và tư vấn công nghệ thông tin hàng đầu thế giới Gartner dự đoán, đến 2020,

trên tồn cầu sẽ có 250 triệu chiếc xe kết nối với nhau thông qua hệ thống Wi-Fi [14],
chúng sẽ tự "giao tiếp" để cho ra lộ trình tốt nhất.
Hiện nay, việc ứng dụng công nghệ AI trong ngành học của chúng ta nói chung và
trong cơng nghệ xe tự lái nói riêng vẫn đang được diễn ra trên khắp thế giới. Nó mở ra
một cơ hội đầy tiềm năng và thách thức đối với sinh viên “Ơ tơ” chúng ta. Với mong
muốn tham gia, tìm hiểu về lĩnh vực này nên nhóm quyết định chọn đề tài “Ứng dụng trí
tuệ nhân tạo để phát triển hệ thống nhận diện và theo dõi làn đường cho xe tự lái”. Thông
qua đề tài, nhóm hi vọng sẽ đưa ra một cái nhìn khái quát về việc ứng dụng công nghệ AI
trong ngành học của chúng ta và cũng góp phần tích lũy một lượng nhỏ kiến thức để làm
hành trang hội nhập với nền công nghiệp ô tô thế giới cho sinh viên “Ơ tơ” chúng ta sau
này.
1.2 Mục tiêu nghiên cứu
-

Ứng dụng trí tuệ nhân tạo trong việc nhận diện làn đường.
1


-

Nâng cao độ chính xác và hiển thị trong việc phát hiện làn đường.

-

Theo dõi làn đường khắc phục những tình trạng mất làn tạm thời do ngoại cảnh khi
chạy trên đường.

1.3 Nội dung nghiên cứu
-


Nghiên cứu các kiến thức liên quan đến xử lý ảnh và các phần mềm hỗ trợ xử lý ảnh:
Ubuntu, Python, OpenCV, Numpy,…

-

Nghiên cứu về nền tảng, phương thức hoạt động của các hệ thống sử dụng trí tuệ
nhân tạo.

-

Nghiên cứu về phương pháp nhận diện làn đường sử dụng mạng học sâu (deep
learning framework). Cụ thể là mạng nơ-ron tích chập (Convolutional Neural
Network (CNN)).

-

Sử dụng mạng đã được đào tạo sẵn để nhận diện làn đường.

-

Sử dụng các thuật toán để nâng cao nhận diện làn đường làn bằng các thuật toán như
Hough Transform, K-means, Kalman filter,…

-

Sử dụng Kalman filter để theo dõi làn đường.

-

Hiển thị nội dung nhận diện lên màn hình bằng hình ảnh lấy trực tiếp từ webcam.


1.4. Giới hạn đề tài
-

Ở đề tài này nhóm sử dụng mạng học sâu đã được huấn luyện sẵn như là một bộ nhận
diện thơ sau đó đề xuất các phương pháp xử lý hậu kì để nâng cao hiệu quả của việc
bắt và theo dõi làn đường ở nhiều thời gian và không gian khác nhau. Nhóm khơng
huấn luyện lại mạng vì hạn chế về dữ liệu và phần cứng.

-

Hệ thống vẫn chưa thể vận hành real-time được do bộ xử lý trung tâm chưa đủ mạnh
để đáp ứng các bước xử lý hình ảnh và mạng học sâu.

1.5. Phạm vi ứng dụng
Đồ án này cho ta thấy một cái nhìn tổng quan trong việc ứng dụng công nghệ AI
trong ngành công nghệ kỹ thuật ô tô ở phạm vi nhận biết lane đường, từ đó có thể cải tiến
lên để cảnh báo người lái khi lệch khỏi lane đường hay cho xe tự hành khơng người lái
chạy trên lane đường của mình.

2


Chương 2. CƠ SỞ LÝ THUYẾT
2.1. Cơ sở lý thuyết về ảnh và xử lý ảnh
2.1.1. Cơ sở lý thuyết về ảnh
2.1.1.1. Điểm ảnh (Picture Element)
Gốc của ảnh (ảnh tự nhiên) là ảnh liên tục về không gian và độ sáng. Để xử lý
bằng máy tính (số), ảnh cần phải được số hoá. Số hoá ảnh là sự biến đổi gần đúng một
ảnh liên tục thành một tập điểm phù hợp với ảnh thật về vị trí (khơng gian) và độ sáng

(mức xám). Khoảng cách giữa các điểm ảnh đó được thiết lập sao cho mắt người không
phân biệt được ranh giới giữa chúng. Mỗi một điểm như vậy gọi là điểm ảnh (PEL:
Picture Element) hay gọi tắt là Pixel và được thể hiện qua hình 2.1. Trong khn khổ ảnh
hai chiều, mỗi pixel ứng với cặp tọa độ (x, y).
Định nghĩa: Điểm ảnh (Pixel) là một phần tử của ảnh số tại toạ độ (x, y) với độ
xám hoặc màu nhất định. Kích thước và khoảng cách giữa các điểm ảnh đó được chọn
thích hợp sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu)
của ảnh số gần như ảnh thật. Mỗi phần tử trong ma trận được gọi là một phần tử ảnh.

Hình 2.1 Điểm ảnh (Pixel)

3


2.1.1.2. Độ phân giải của ảnh
Định nghĩa: Độ phân giải (Resolution) của ảnh là mật độ điểm ảnh được ấn định
trên một ảnh số được hiển thị.
Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt
người vẫn thấy được sự liên tục của ảnh. Việc lựa chọn khoảng cách thích hợp tạo nên
một mật độ phân bổ, đó chính là độ phân giải và được phân bố theo trục x và y trong
không gian hai chiều.
Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một
lưới điểm theo chiều ngang màn hình: 320 điểm chiều dọc * 200 điểm ảnh (320*200). Rõ
ràng, cùng màn hình CGA 12” ta nhận thấy mịn hơn màn hình CGA 17” độ phân giải
320*200. Lý do: cùng một mật độ (độ phân giải) nhưng diện tích màn hình rộng hơn thì
độ mịn (liên tục của các điểm) kém hơn. Các độ phân giải thường dùng được thể hiện qua
hình 2.2.

Hình 2.2 Các độ phân giải của ảnh


4


2.1.1.3. Mức xám của ảnh
Một điểm ảnh (pixel) có hai đặc trưng cơ bản là vị trí (x, y) của điểm ảnh và độ
xám của nó. Dưới đây chúng ta xem xét một số khái niệm và thuật ngữ thường dùng
trong xử lý ảnh.
2.1.1.3.1. Định nghĩa: Mức xám của điểm ảnh là cường độ sáng của nó được gán bằng
giá trị số tại điểm đó.
2.1.1.3.2. Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (Mức 256 là
mức phổ dụng. Lý do: từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám:
Mức xám dùng 1 byte biểu diễn: 28=256 mức, tức là từ 0 đến 255).
2.1.1.3.3. Ảnh đen trắng: là ảnh có hai màu đen, trắng (không chứa màu khác) với mức
xám ở các điểm ảnh có thể khác nhau.
2.1.1.3.4. Ảnh nhị phân: ảnh chỉ có 2 mức đen trắng phân biệt tức dùng 1 bit mơ tả 21
mức khác nhau. Nói cách khác: mỗi điểm ảnh của ảnh nhị phân chỉ có thể là 0 hoặc 1.
2.1.1.3.5. Ảnh màu: trong khn khổ lý thuyết ba màu (Red, Blue, Green) để tạo nên thế
giới màu, người ta thường dùng 3 byte để mơ tả mức màu, khi đó các giá trị màu:
28*3=224≈ 16,7 triệu màu.
2.1.1.4. Không gian màu.
2.1.1.4.1. Không gian màu RGB
Tổ chức quốc tế về chuẩn hóa màu CIE (Commission Internationale d’Eclairage)
đưa ra một số chuẩn để biểu diễn màu. Các hệ này có các chuẩn riêng. Hệ chuẩn màu
CIE-RGB dùng 3 màu cơ bản R, G, B và ký hiệu RGBCIE để phân biệt với các chuẩn
khác. Như đã nêu trên, một màu là tổ hợp của các màu cơ bản theo một tỷ lệ nào đó. Như
vậy, mỗi pixel ảnh màu ký hiệu Px, được viết: (T: trong công thức dướ đây là ký hiệu
chuyển vị).
Px = [red,green,blue] T

[2.1]


Người ta dùng hệ tọa độ ba màu R-G-B (tương ứng với hệ tọa độ x-y-z) để biểu
diễn màu như sau:

5


Hình 2.3 Hệ tọa độ RGB
Trong cách biểu diễn này ta có cơng thức:
đỏ + lục + lơ = 1

[2.2]

Cơng thức này gọi là cơng thức Maxwell. Trong hình trên, tam giác tạo bởi ba
đường đứt đoạn gọi là tam giác Maxwell. Màu trắng trong hệ tọa độ này được tính bởi:
trắngCIE = (đỏCIE + lụcCIE + lơCIE) = 1

[2.3]

2.1.1.4.2. Khơng gian màu HSV
Khơng gian màu HSV như hình 2.4 là không gian màu được dùng nhiều trong
việc chỉnh sữa ảnh, phân tích ảnh và một phần của lĩnh vực thị giác máy tính. Hệ khơng
gian này dựa vào ba thông số sau để mô tả màu sắc:
- H viết tắt của từ H E có nghĩa là vùng màu.
- S Viết tắt của từ SATURATION có nghĩa là độ bảo hòa màu.
- V viết tắt của chữ VAL E có nghĩ là giá trị hay độ sáng của màu sắc.

6



Hình 2.4 Khơng gian màu HSV và vịng trịn biểu diễn màu sắc (HUE)
Theo đó, đi theo vịng trịn từ 0 -360 độ là trường biểu diễn màu sắc (Hue).
Trường này bắt đầu từ màu đỏ đầu tiên (red primary) tới màu xanh lục đầu tiên (green
primary) nằm trong khoảng 0-120 độ, từ 120 - 240 độ là màu xanh lục tới xanh lơ (green
primary - blue primary). Từ 240 - 360 là từ màu đen tới lại màu đỏ.
Theo như cách biểu diễn khơng gian màu theo hình trụ như trên, đi từ giá trị độ
sáng (V) được biểu diễn bằng cách đi từ dưới đáy hình trụ lên và nằm trong khoảng từ 0
-1. Ở đáy hình trụ V có giá trị là 0, là tối nhất và trên đỉnh hình trụ là độ sáng lớn nhất (V
= 1). Đi từ tâm hình trụ ra mặt trụ là giá trị bão hịa của màu sắc (S). S có giá trị từ 0 - 1.
0 ứng với tâm hình trụ là chỗ mà màu sắc là nhạt nhất. S = 1 ở ngoài mặt trụ, là nơi mà
giá trị màu sắc là đậm đặc nhất.
Như vậy với mỗi giá trị (H, S, V) sẽ cho ta một màu sắc mà ở đó mơ tả đầy đủ
thơng tin về máu sắc, độ đậm đặc và độ sáng của màu đó.
2.1.1.4.3. Không gian màu CMYK
CMYK là không gian màu được sử dụng phổ biến trong ngành công nghiệp in
ấn.Ý tưởng cơ bản của hệ không gian này là dùng 4 màu sắc cơ bản để phục vụ cho việc
pha trộn mực in. Trên thực tế, người ta dùng 3 màu là C (Cyan): xanh lơ, M (Magenta):
hồng xẫm, và Y (Yellow): vàng để biểu diễn các màu sắc khác nhau. Nếu lấy màu hồng
xẫm cộng với vàng sẽ ra màu đỏ, màu xẫm kết hợp với xanh lơ sẽ cho xanh lam ... Sự kết
hợp của 3 màu trên sẽ cho ra màu đen, tuy nhiên màu đen ở đây khôn phải là đen tuyệt
đối và thường có độ tương phản lớn, nên trong ngành in, để tiết kiệm mực in người ta
7


×