Kết quả thực nghiệm

Một phần của tài liệu Ứng dụng tri 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 đồ án tốt nghiệp ngành công nghệ kỹ thuật ô tô (Trang 75)

Kết quả thực nghiệm được lưu trên trang web:

https://drive.google.com/open?id=1N8cMYqmhlxAGES2g_H3vbRnSUNPRy_76 Các ảnh kết quả thực nghiệm được chụp lại từ video được lưu trong bộ hình 5.3

68

70

Hình 5.3 Kết quả thực nghiệm

Nhận xét:

- Thuật toán bắt tốt ở một số làn đường thẳng và đường cong.

- Quá trình theo dõi làn đường thực hiện ở đường thẳng thì rất tốt nhưng đường cong còn rất nhiều hạn chế.

72

Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1. Kết luận

Các hệ thống sử dụng giải thuật học sâu mặc dù đạt hiệu suất cao nhưng đòi hỏi dữ liệu huấn luyện khá lớn, bên cạnh đó các hệ thống này chỉ thường hoạt động tốt trên các bối cảnh và môi trường đã được huấn luyện. Do đó khi chuyển sang một môi trường mới, các hệ thống này thường phải được huấn luyện lại hoặc tinh chỉnh (fine-tuning) dựa trên dữ liệu thu thập ở môi trường mới. Tuy nhiên với giới hạn về thời gian thực hiện đề tài và phần cứng hiện có, việc thu thập dữ liệu mới và huấn luyện lại hệ thống là điều bất khả thi. Do đó trong đề tài này, chúng em đề xuất một giải pháp mới kết hợp tính ưu việt của giải thuật học sâu và tính tuỳ biến của các phương pháp xử lý ảnh và xử lý tín hiệu truyền thống cho việc phát triển hệ thống nhận diện lane đường ở Việt Nam. Tuy kết quả đạt được vẫn còn bị nhiễu ở một số trường hợp, nhưng về cơ bản hệ thống đã đạt được mục tiêu đề ra. Bên cạnh đó, vì áp dụng học sâu nhưng phần cứng bị hạn chế nên tốc độ xử lý chưa cao. Ban đầu thời gian để xử lý 1 khung hình lên đến 0.25s, nhưng sau quá trình cải tiến, tốc độ xử lý đã được tăng lên còn 0.16s/khung hình, tuy đã cãi thiện được tốc độ xử lý nhưng hệ thống vẫn chưa đủ đáp ứng xử lý theo thời gian thực. Để tăng tốc độ xử lý (lên đến 50fps), tác giả trong bài viết [3] khuyến nghị nên sử dụng card đồ họa GTX-1070.

Sau khi hoàn thành đồ án này, chúng em đã tích góp được rất nhiều kiến thức bổ ích về học sâu, xử lý ảnh kết hợp ngôn ngữ lập trình python trên nền tảng hệ điều hành ubuntu. Chúng em tin chắc rằng, những kiến thức tích lũy được qua đồ án này sẽ là những kiến thức quý báu làm hành trang hỗ trợ chúng em trên con đường phát triển sự nghiệp sau này.

6.2. Hướng phát triển

Để tăng hiệu suất của hệ thống nhận diện lane làm cho nó phù hợp với môi trường Việt Nam, việc phát triển các giải thuật học chuyển đổi (transfer learning) là điều cần thiết. Các giải thuật này sẽ giúp cho các hệ thống học sâu thích nghi tốt hơn khi được áp dụng ở môi trường mới, và cải thiện hiệu suất nhận diện. Sau khi cải tiến việc nhận diện lane, chúng ta có thể phát triển hệ thống này lên thành cảnh báo cho tài xế khi lệch lane,

73 có thể ứng dụng cho hệ thống lane keeping trên xe tự lái. Bên cạnh đó, chúng ta còn có thể phát triển thêm cho AI biết cách nhận biết vật thể (Object detection) để từ đó xe của chúng ta có thể nhận diện vật cản, các vật trong vùng nguy hiểm để cảnh báo cho tài xế hoặc tác động trực tiếp vào xe để giúp xe chủ động tránh các trường hợp nguy hiểm, nó còn có thể được áp dụng cho hệ thống cảnh báo điểm mù, hệ thống Adaptive Cruise Control,… và với việc ứng dụng AI, sau khi được train nhiều lần thì việc sử dụng cho tình trạng giao thông phức tạp như ở Việt Nam chúng ta chắc chắn sẽ không còn là một vấn đề nan giải.

74

DANH MỤC TÀI LIỆU THAM KHẢO

[1] https://github.com/amusi/awesome-lane-detection [2] https://github.com/georgesung/advanced_lane_detection [3] https://github.com/MaybeShewill-CV/lanenet-lane-detection [4] https://github.com/XingangPan/SCNN [5] https://github.com/davidawad/Lane-Detection [6] https://github.com/yang1688899/CarND-Advanced-Lane-Lines [7] https://github.com/SeokjuLee/VPGNet

[8] https://github.com/mvirgo/MLND-Capstone:Lane Detection with Deep Learning

[9] https://machinelearningcoban.com/2016/12/28/linearregression/

[10] https://github.com/galenballew/SDC-Lane-and-Vehicle-Detection-Tracking

[11] https://github.com/shawshany/Advance_LaneFinding

[12] https://opencv-python-tutroals.readthedocs.io

[13] PGS.TS Nguyễn Quang Hoan, Giáo trình xử lý ảnh, Học viện bưu chính viễn thông

[14] https://vnexpress.net/so-hoa/nhung-ung-dung-cua-ai-trong-cuoc-song-3772257.html [15] https://tech.vccloud.vn/ubuntu-la-gi-co-nen-su-dung-ubuntu-khong- 20180908094633985.htm [16] https://o7planning.org/vi/11385/gioi-thieu-ve-python [17] https://nttuan8.com/huong-dan-cai-dat-anaconda/ [18] https://vi.wikipedia.org/wiki/CUDA [19] https://developer.nvidia.com/cudnn [20] https://drive.google.com/open?id=1N8cMYqmhlxAGES2g_H3vbRnSUNPRy_76

75

PHỤ LỤC

Cài đặt hệ điều hành Ubuntu 16.04

Chuẩn bị:

- SB dùng để boot tốt nhất là trên 4gb

- Phần mềm tạo usb boot ( SB installer, netbootin,…). Ở đây nhóm chúng em sẽ hướng dẫn sử dụng phần mềm USB installer

- File ISO Ubuntu 16.04: http://releases.Ubuntu.com/16.04/

Yêu cầu cấu hình tối thiểu:

- 2 GHz dual core processor - 2 GiB RAM

- 25 GB không gian ổ đĩa cứng

- VGA có khả năng phân giải màn hình 1024×768 - Cổng USB, máy tính hỗ trợ boot từ USB

Tiến hành cài đặt:

77

Bước 2: Khởi động máy tính từ USB boot

Hầu hết các máy tính sẽ tự khởi động từ USB. Chỉ cần kết nối USB và bật nguồn máy tính hoặc khởi động lại. Bạn sẽ thấy cùng một cửa sổ chào mừng, nhắc bạn chọn ngôn ngữ của bạn và cài đặt hoặc dùng thử Ubuntu Desktop.

Nếu máy tính của bạn không tự động khởi động từ USB, hãy thử giữ F12 hoặc phím ESC, F2, F10 khi máy tính của bạn khởi động lần đầu tiên. Với hầu hết các máy, điều này sẽ cho phép bạn chọn thiết bị USB từ menu khởi động hệ thống. Nếu không bạn có thể tham khảo phím tắt Boot option của một số dòng máy tại đây: https://blogtinhoc.vn/tong-hop-phim-tat-vao-boot-option-va-bios-cua-may-tinh.html

Bước 3: Sau khi chọn khởi động máy tình bằng SB boot, chương trình sẽ hiển

thị bảng menu các option sử dụng, ta sẽ chọn “Install buntu” để tiến hành cài đặt hoặc chọn “Try buntu without installing” để trải nghiệm buntu trước khi quyết định cài đặt hay không.

78

Bước 4: Tới phần “Select a language” Bạn chọn ngôn ngữ mà bạn muốn

Bước 5: Sau khi chọn ngôn ngữ, bạn sẽ được hỏi về các bản cập nhật và phần

79 Chúng tôi khuyên bạn nên bật cả Download updates và Install third-party software.

Luôn kết nối với internet để bạn có thể nhận được các bản cập nhật mới nhất trong khi cài đặt Ubuntu.

Nếu bạn không kết nối với internet, bạn sẽ được yêu cầu chọn một mạng không dây, nếu có. Chúng tôi khuyên bạn nên kết nối trong khi cài đặt để chúng tôi có thể đảm bảo máy của bạn được cập nhật.

Bước 6: Sử dụng các hộp kiểm để chọn xem bạn có muốn xóa hệ điều hành hiện

tại và thay thế bằng Ubuntu hoặc cài đặt Ubuntu cùng với hệ điều hành khác hoặc nếu bạn là người dùng nâng cao hãy chọn tùy chọn “Something else”.

Ở đây, chúng tôi chọn xóa hệ điều hành hiện tại và thay thế bằng Ubuntu

Sau khi định cấu hình bộ nhớ, hãy nhấp vào nút “Cài đặt ngay”. Một khung nhỏ sẽ xuất hiện với tổng quan về các tùy chọn lưu trữ bạn đã chọn, với cơ hội quay lại nếu chi tiết không chính xác.

80

81

Bước 8: Chọn kiểu bàn phím

Bước 9: Thiết lập thông tin đăng nhập

Nhập tên của bạn và trình cài đặt sẽ tự động đề xuất tên máy tính và tên người dùng. Nó có thể dễ dàng được thay đổi nếu bạn thích. Tên máy tính là cách máy tính của bạn sẽ xuất hiện trên mạng, trong khi tên người dùng của bạn sẽ là tên đăng nhập và tài khoản của bạn.

Tiếp theo, nhập mật khẩu mạnh. Trình cài đặt sẽ cho bạn biết nếu nó quá yếu. Bạn cũng có thể chọn bật tự động đăng nhập và mã hóa thư mục gốc. Nếu bạn có nhiều dữ liệu quan trọng, bạn nên tắt tính năng đăng nhập tự động và bật mã hóa. Điều này sẽ ngăn mọi người truy cập các tệp cá nhân của bạn nếu máy bị mất hoặc bị đánh cắp.

Chú ý: Nếu bạn bật mã hóa thư mục chính và bạn quên mật khẩu, bạn sẽ không thể truy xuất bất kỳ dữ liệu cá nhân nào được lưu trữ trong thư mục chính của mình.

82

Bước 10: Tiến hành cài đặt

Trình cài đặt sẽ hoàn thành ở chế độ nền trong khi cửa sổ cài đặt hướng dẫn bạn một chút về mức độ tuyệt vời của Ubuntu. Tùy thuộc vào tốc độ của máy và kết nối mạng của bạn, quá trình cài đặt sẽ chỉ mất vài phút.

83

Bước 11: Hoàn thành quá trình cài đặt

Sau khi mọi thứ đã được cài đặt và cấu hình, một cửa sổ nhỏ sẽ xuất hiện yêu cầu bạn khởi động lại máy tính của bạn. Nhấp vào “Khởi động lại” và rút SB khỏi máy tính khi được nhắc.

84

Bước 12: Đặng nhập và sử dụng

Cài đặt Anaconda

Bước 1: Truy xuất phiên bản mới nhất của Anaconda

Từ trình duyệt web, hãy chuyển đến trang tải xuống Anaconda thông qua đường dẫn sau: https://www.anaconda.com/distribution/

Tìm phiên bản Linux mới nhất và sao chép tập lệnh bash của trình cài đặt.

Bước 2: Tải xuống tập lệnh Anaconda Bash

Đăng nhập vào máy chủ buntu 16.04 của bạn với tư cách người dùng không phải root, chuyển vào /tmp thư mục và sử dụng curl để tải xuống liên kết bạn đã sao chép từ trang web Anaconda:

cd /tmp

Sử dụng curl để tải xuống liên kết mà bạn đã sao chép từ trang web Anaconda:

85

Bước 3: Xác minh tính toàn vẹn dữ liệu của trình cài đặt

Đảm bảo tính toàn vẹn của trình cài đặt với xác minh băm mật mã thông qua tổng kiểm tra SHA-256:

sha256sum Anaconda3-5.2.0-Linux-x86_64.sh Output:

09f53738b0cd3bb96f5b1bac488e5528df9906be2480fe61df40e0e0d19e3d48 Anaconda3-5.2.0-Linux-x86_64.sh

Bước 4: Chạy tập lệnh Anaconda

bash Anaconda3-5.2.0-Linux-x86_64.sh

Bạn sẽ nhận được kết quả sau để xem lại thỏa thuận cấp phép bằng cách nhấn ENTER cho đến khi bạn đạt đến kết thúc.

Output:

Welcome to Anaconda3 5.2.0

In order to continue the installation process, please review the license agreement.

Please, press ENTER to continue

>>> ...

Do you approve the license terms? [yes|no]

Khi bạn đến cuối giấy phép, hãy nhập yes miễn là bạn đồng ý với giấy phép để hoàn tất cài đặt.

Bước 5: Hoàn tất quá trình cài đặt

Khi bạn đồng ý với giấy phép, bạn sẽ được nhắc chọn vị trí cài đặt. Bạn có thể nhấn ENTER để chấp nhận vị trí mặc định hoặc chỉ định một vị trí khác.

86 Output:

Anaconda3 will now be installed into this location: /home/sammy/anaconda3 - Press ENTER to confirm the location

- Press CTRL-C to abort the installation - Or specify a different location below [/home/sammy/anaconda3] >>>

Tại thời điểm này, tiến trình cài đặt sẽ tiến hành. Lưu ý rằng quá trình cài đặt mất một thời gian.

Bước 6: Chọn tùy chọn

Sau khi cài đặt hoàn tất, bạn sẽ nhận được kết quả sau:

Output:

Installation finished.

Do you wish the installer to prepend the Anaconda3 install location to PATH in your /home/sammy/.bashrc ? [yes|no]

[no] >>>

Bạn nên nhập yes sử dụng conda chỉ huy.

Tiếp theo, bạn sẽ được nhắc tải xuống Visual Studio Code, bạn có thể tìm hiểu thêm về từ trang web chính thức của VSCode.

Kiểu yes để cài đặt và no để từ chối.

Bước 7: Kích hoạt cài đặt

Bây giờ bạn có thể kích hoạt cài đặt bằng lệnh sau:

source ~/.bashrc

Bước 8: Thử nghiệm cài đặt:

87

conda list

Bạn sẽ nhận được đầu ra của tất cả các gói bạn có sẵn thông qua cài đặt Anaconda:

Bây giờ Anaconda được cài đặt, chúng ta có thể tiếp tục thiết lập môi trường Anaconda.

Bước 9: Thiết lập môi trường Anaconda

Bạn có thể tạo các môi trường Anaconda với conda create chỉ huy. Ví dụ, một môi trường Python 3 có tên my_env có thể được tạo bằng lệnh sau:

conda create --name my_env python=3

Kích hoạt môi trường mới như sau:

source activate my_env

Tiền tố nhắc lệnh của bạn sẽ thay đổi để phản ánh rằng bạn đang ở trong một môi trường Anaconda hoạt động, và bây giờ bạn đã sẵn sàng để bắt đầu làm việc trên một dự án.

Tạo môi trường với conda

Bước 1: Tạo thư mục dự án, ví dụ ~/projects/python_env_example trên máy tính

của bạn, sau đó chuyển vào thư mục vừa tạo:

$ mkdir ~/projects/python_env_example $ cd ~/projects/python_env_example

88

Bước 2: Tạo môi trường Conda với tên my_env và cài sử dụng python 3.5 với

lệnh:

$ conda create --name my_env python=3.5

Bước 3: Sử dụng môi trường my_env để làm việc bằng lệnh:

$ source activate my_env

Khi đó, tiền tố (base) sẽ được chuyển thành tên môi trường hiện tại của bạn ví dụ: (my_env)

Bạn có thể kiểm tra các môi trường đang có bằng lệnh:

$ conda info --envs

Kiểm tra các gói và thư viện hiện có trong môi trường bằng lệnh: $ conda list

Bước 4: Thoát khỏi môi trường

Nếu bạn không muốn làm việc trong môi trường đó nữa, bạn có thể dùng lệnh:

$ conda deactivate để thoát khỏi môi trường hiện tại

Cài đặt Cuda 9.0 và CuDNN 7.0

Bước 1: Cài đặt driver card đồ họa NVIDIA với apt-get

Cuda 9.0 yêu cầu driver NVIDIA phiên bản 384 trở lên, để cài đặt driver, ta sử dụng lệnh apt-get thay cho file cài đặt:

sudo apt-get install nvidia-384 nvidia-modprobe

Tiếp theo, bạn vào BIOS để disable Secure Boot. Thông thường, bạn có thể vào BIOS bằng cách khởi động lại máy tính và ấn F12

Sau đó, bạn kiểm tra cài đặt bằng lệnh nvidia-smi, hệ thống sẽ thông báo thông tin về card đồ họa bạn đang dùng và phiên bản driver bạn vừa cài.

89

Bước 2: Cài đặt Cuda 9.0 bằng file cài đặt

Bạn có thể tải bộ cài đặt Cuda 9.0 tại địa chỉ: https://developer.nvidia.com/cuda- 90-download-archive Hoặc sử dụng lệnh wget trong trường hợp không tìm thấy phiên bản phù hợp

90

$ wget

https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_3 84.81_linux-run

Giải nén nén file vừa cài đặt với lệnh --extract

$ chmod +x cuda_9.0.176_384.81_linux-run

$ ./cuda_9.0.176_384.81_linux-run --extract=$HOME

Sau khi giải nén, bạn sẽ nhận được 3 file: NVIDIA-Linux-x86_64-384.81.run (Driver NVIDIA), cuda-linux.9.0.176-22781540.run (file cài đặt cuda), cuda-

samples.9.0.176-22781540-linux.run (cuda 9.0 samples)

Tiến hành cài đặt CUDA Toolkit 9.0

$ sudo ./cuda-linux.9.0.176-22781540.run

Bạn sẽ phải đọc qua các quy định về pháp lý (ấn “d” trên bàn phím để đi đến cuối thông tin pháp lý nếu bạn đã đọc rõ các quy định) và ấn enter để đồng ý (accept) các quy định về pháp lý

Để xác minh cài đặt C DA, hãy cài đặt bài kiểm tra mẫu bằng lệnh:

$ sudo ./cuda-samples.9.0.176-22781540-linux.run

Sau khi việc cài đặt kết thúc, đặt lại đường dẫn thư viện

$ sudo bash -c "echo /usr/local/cuda/lib64/ > /etc/ld.so.conf.d/cuda.conf" $ sudo ldconfig

Bạn nên thêm chuỗi /usr/local/cuda/bin vào file hệ thống /etc/environment để nvcc sẽ được bao gồm trong $PATH. Điều này sẽ có hiệu lực sau khi khởi động lại máy. Để làm được điều này, bạn chỉ cần dùng lệnh:

$ sudo vim /etc/environment

Và thêm :/usr/local/cuda/bin (bao gồm dấu “:”) ở cuối đường dẫn PATH="/blah:/blah/blah" (bên trong dấu ngoặc kép)

91

$ cd /usr/local/cuda-9.0/samples $ sudo make

Tiến trình chạy sẽ tốn khá nhiều thời gian và xuất hiện nhiều cảnh báo không quan trọng. Sau khi hoàn thành, chạy deviceQuery và p2pBandwidthLatencyTest bằng lệnh:

$ cd /usr/local/cuda/samples/bin/x86_64/linux/release $ ./deviceQuery

93

Bước 3: Cài đặt cuDNN 7.0

Một phần của tài liệu Ứng dụng tri 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 đồ án tốt nghiệp ngành công nghệ kỹ thuật ô tô (Trang 75)

Tải bản đầy đủ (PDF)

(103 trang)