(Đồ án tốt nghiệp) Ứ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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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
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 năm 2019 LỜI CẢM ƠN Trí tuệ nhân tạo thuật ngữ mẻ Việt Nam, sinh viên chuyên ngành công nghệ kỹ thuật tơ chúng em kiến thức lĩnh vực hạn chế Ứng dụng trí tuệ nhân tạo để giải vấn đề chuyên ngành thực thử thách hội để chúng em tìm hiểu kiến thức lĩnh vực tiềm tương lai Ngồi kiến thức trí tuệ nhân tạo, qua đề tài này, chúng em học hỏi nhiều kiến thức xử lý ảnh, lập trình python nhiều lĩnh vực hồn tồn xa lạ chúng em trước Chúng em vui cuối vượt qua thử thách gặp phải hoàn thành đề tài thời hạn Trong trình thực đề tài mình, điều kiện hạn chế kiến thức thời gian nghiên cứu nên khơng tránh sai sót, mong nhận góp ý từ q Thầy Cơ bạn để đề tài chúng em ngày hoàn thiệ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, cho chúng em lời khuyên, lời động viên quý báu, chúng em học nhiều kiến thức từ Thầy, học cách tổ chức phân cơng cơng việc hợp lý để từ chúng em hồn thiện đồ án tốt nghiệp Chúng em 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ử hỗ trợ chúng em sở vật chất kiến thức chun mơn vơ bổ ích, với lời khuyên, lời động viên quý báu Qua đây, chúng em xin chân thành cảm ơn Thầy Cơ 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 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 hoàn thành đồ án tốt nghiệp Một lần nữa, chúng em xin cảm ơn tất quý Thầy, q Cơ, kính chúc q Thầy, q Cơ ln thành cơng đường đào tạo nhân tài i TĨM TẮT Trong xu hướng tự động hóa ngày gia tăng, công nghệ, kỹ thuật hỗ trợ cho xe tự lái ngày phát triển nhận nhiều quan tâm nhà khoa học giới Kèm theo đó, trí tuệ nhân tạo (AI) xử lý ảnh mẻ lại có tốc độ phát triển vơ nhanh chóng ứng dụng rộng rãi nhiều lĩnh vực đời sống Nhiệm vụ đồ án nghiên cứu sử dụng trí tuệ nhân tạo 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 phương pháp nhận biết lane đường kết hợp ưu việt thuật toán học sâu tiên tiến số phương pháp xử lý ảnh truyền thống Dựa hình ảnh thu thập từ camera, thuật toán học sâu huấn luyện liệu có sẵn giới áp dụng để đưa phán đốn lane đường Sau đó, kỹ thuật xử lý ảnh xử lý tín hiệu truyền thống Hough Transform, Kmeans Kalman filter áp dụng phán đoán để tăng hiệu nhận dạng phù hợp với đặc tính đường Việt Nam Đề tài phát triển hệ điều hành Ubuntu 16.04 sử dụng ngơn ngữ lập trình python Kết thử nghiệm cho thấy phương pháp nhóm nhận diện theo dõi đường nhiều điều kiện thách thức khác đường điển đường bị vật cản che chắn (như tơ, xe máy,…), đường cong, đường có 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 TỔNG QUAN 1.1 Lý chọn đề tài 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 Chương CƠ SỞ LÝ THUYẾT 2.1 Cơ sở lý thuyết ảnh xử lý ảnh .3 2.1.1 Cơ sở lý thuyết ảnh 2.1.1.1 Điểm ảnh (Picture Element) .3 2.1.1.2 Độ phân giải ảnh 2.1.1.3 Mức xám ảnh .5 2.1.1.4 Không gian màu 2.1.1.5 Định nghĩa ảnh số 2.1.1.6 Ảnh trắng đen 2.1.1.7 Ảnh màu 2.1.2 Cơ sở lý thuyết xử lý ảnh 10 2.1.2.1 Các bước xử lý ảnh 10 2.1.2.2 Các thành phần hệ thống xử lý ảnh .15 2.1.2.3 Những vấn đề 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 lọc .22 2.2.3.2 Phép chập khối với nhiều lọc 23 2.2.4 Mạng CNN 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ụ CNN nhận diện lane đường .26 2.2.8 Ưu điểm CNN 28 Chương SƠ LƯỢC PHẦN CỨNG VÀ PHẦN MỀM 29 3.1 Sơ lược 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 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 đồ án 38 Chương 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ể 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 LaneNET 43 iv 4.3.2 Áp dụng thuật toán .45 4.4 Nhận diện đường giải thuật K – means Clustering 46 4.4.1 Lấy liệu cho K - means từ Hough Transform 46 4.4.2 Ứng dụng Hough Transform OpenCV .48 4.4.3 Áp dụng giải thuật K – means Clustering 49 4.4.3.1 Giới thiệu phân cụm liệu 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 đường (tracking) 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 Kalman filter: 60 4.5.3 Ứng dụng Kalman fileter để tracking 62 Chương 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 thực nghiệm 67 Chương 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ế 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 CUDNN NVIDIA CUDA Deep Neural Network library – Thư viện tăng tốc độ GPU cho deep learning networks GPGPU General-purpose computing on graphics processing units – Điện toán đa đơ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) Hình 2.2 Các độ phân giải ảnh Hình 2.3 Hệ tọa độ RGB Hình 2.4 Khơng gian màu HSV vòng tròn biểu diễn màu sắc (HUE) Hình 2.5 Khơng gian màu CMYK .8 Hình 2.6 Ảnh xám (bên trái) ảnh nhị phân (bên phải) Hình 2.7 Ảnh màu 10 Hình 2.8 Các bước xử lý ảnh 10 Hình 2.9 Sơ đồ phân tích xử lý ảnh lưu đồ thơng tin khối 14 Hình 2.10 Các thành phần hệ thống xử lý ảnh 15 Hình 2.11 Bộ lọc sử dụng lớp tích chập ma trận kích thước 3x3 19 Hình 2.12 Nhân lọc k với ma trận đầu vào I 19 Hình 2.13 Ma trận đầu vào bao quanh đườ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 lọc cấu hình khác để phát đặc trưng một, hai ba kênh màu ảnh đầu vào 23 Hình 2.17 Kiến trúc lớp: Input => filters of 3x3x3=> ReLU (non-linear activation function) => Output 24 Hình 2.18 Ví dụ CNN sử dụng cho toá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 CNN thường vài cụm CONV => POOL theo sau tập FC kết thúc lớp Softmax 27 Hình 3.1 Cấu hình máy tính .29 Hình 3.2 GoPro Hero Black 30 Hình 3.3 Biểu tượng 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 Tensorflow 35 Hình 3.6 Xác định đối tượng video với Tensorflow 36 Hình 4.1 Sơ đồ tổng thể hệ thống 40 Hình 4.2 Các giải thuật lane detection github.com 41 Hình 4.3 Cấu trúc mạng LaneNET 44 Hình 4.4 Kết chạy thuật toán Model Weights .45 Hình 4.5 Kết chạy thuật toán ảnh chụp 46 Hình 4.6 Hình họa sử dụng OpenCV 47 Hình 4.7 Biểu diễn giá trị ρ miền θ 47 Hình 4.8 Biến đổi Hough transform 49 Hình 4.9 Các đối tượng phân phối vào cụm đại diện điểm trung tâm 50 Hình 4.10 Các bước thuật toán K - means 52 Hình 4.11 Tìm contours ảnh chụp 53 Hình 4.12 Tìm contours ảnh download 53 Hình 4.13 Tìm box ơm lấy contour ảnh tự chụp 54 Hình 4.14 Tìm box ơm lấy contour ảnh download .54 Hình 4.15 Tìm center ảnh tự chụp 55 Hình 4.16 Tìm center ảnh download 55 Hình 4.17 Bắt lane ảnh tự chụp 56 Hình 4.18 Bắt lane ảnh download 56 Hình 4.19 Kết sau sử dụng K-Means 58 Hình 4.20 Hoạt động Kalman filter .59 Hình 4.21 Mơ hình khơng gian trạng thái Kalman filter 60 Hình 4.22 Quá trình khởi tạo Kalman filter 61 Hình 4.23 Ảnh thể lane màu xanh .63 Hình 4.24 Chấm xanh dương đậm gọi VashingPoint 64 Hình 4.25 Kết sau tracking Kalman Filter 65 viii Hình 5.1 Cài đặt camera GoPro Hero Black xe .66 Hình 5.2 Địa điểm thực nghiệm .67 Hình 5.3 Kết thực nghiệm 70 ix Bước 10: Tiến hành cài đặt Trình cài đặt hồn thành chế độ cửa sổ cài đặt hướng dẫn bạn chút mức độ tuyệt vời Ubuntu Tùy thuộc vào tốc độ máy kết nối mạng bạn, trình cài đặt vài phút 82 Bước 11: Hồn thành q trình cài đặt Sau thứ cài đặt cấu hình, cửa sổ nhỏ xuất yêu cầu bạn khởi động lại máy tính bạn Nhấp vào “Khởi động lại” rút SB khỏi máy tính nhắc 83 Bước 12: Đặng nhập sử dụng Cài đặt Anaconda Bước 1: Truy xuất phiên Anaconda Từ trình duyệt web, 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 Linux chép tập lệnh bash 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 bạn với tư cách người dùng root, chuyển vào /tmp thư mục sử dụng curl để tải xuống liên kết bạn chép từ trang web Anaconda: cd /tmp Sử dụng curl để tải xuống liên kết mà bạn chép từ trang web Anaconda: curl -O https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh 84 Bước 3: Xác minh tính tồn vẹn liệu trình cài đặt Đảm bảo tính tồn vẹn 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 nhận kết sau để xem lại thỏa thuận cấp phép cách nhấn ENTER 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, nhập yes miễn bạn đồng ý với giấy phép để hoàn tất cài đặt Bước 5: Hồn tất q trình cài đặt Khi bạn đồng ý với giấy phép, bạn nhắc chọn vị trí cài đặt Bạn nhấn ENTER để chấp nhận vị trí mặc định định vị trí khác 85 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 tiến hành Lưu ý trình cài đặt thời gian Bước 6: Chọn tùy chọn Sau cài đặt hoàn tất, bạn nhận kết 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 huy Tiếp theo, bạn nhắc tải xuống Visual Studio Code, bạn tìm hiểu thêm từ trang web thức VSCode Kiểu yes để cài đặt no để từ chối Bước 7: Kích hoạt cài đặt Bây bạn kích hoạt cài đặt lệnh sau: source ~/.bashrc Bước 8: Thử nghiệm cài đặt: Sử dụng conda lệnh để kiểm tra cài đặt kích hoạt: 86 conda list Bạn nhận đầu tất gói bạn có sẵn thông qua cài đặt Anaconda: Bây Anaconda cài đặt, 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 tạo mơi trường Anaconda với conda create huy Ví dụ, mơi trường Python có tên my_env tạo lệnh sau: conda create name my_env python=3 Kích hoạt mơi trường sau: source activate my_env Tiền tố nhắc lệnh bạn thay đổi để phản ánh bạn môi trường Anaconda hoạt động, bạn sẵn sàng để bắt đầu làm việc 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 máy tính bạn, sau chuyển vào thư mục vừa tạo: $ mkdir ~/projects/python_env_example $ cd ~/projects/python_env_example 87 Bước 2: Tạo môi trường Conda với tên my_env 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 lệnh: $ source activate my_env Khi đó, tiền tố (base) chuyển thành tên mơi trường bạn ví dụ: (my_env) Bạn kiểm tra mơi trường có lệnh: $ conda info envs Kiểm tra gói thư viện có mơi trường lệnh: $ conda list Bước 4: Thốt khỏi mơi trường Nếu bạn khơng muốn làm việc mơi trường nữa, bạn dùng lệnh: $ conda deactivate để khỏi môi trường Cài đặt Cuda 9.0 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 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 vào BIOS cách khởi động lại máy tính ấn F12 Sau đó, bạn kiểm tra cài đặt lệnh nvidia-smi, hệ thống thông báo thông tin card đồ họa bạn dùng phiên driver bạn vừa cài 88 Bước 2: Cài đặt Cuda 9.0 file cài đặt Bạn tải cài đặt Cuda 9.0 địa chỉ: https://developer.nvidia.com/cuda90-download-archive Hoặc sử dụng lệnh wget trường hợp khơng tìm thấy phiên phù hợp $ cd 89 $ 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 giải nén, bạn nhận file: NVIDIA-Linux-x86_64-384.81.run (Driver NVIDIA), cuda-linux.9.0.176-22781540.run (file cài đặt cuda), cudasamples.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 phải đọc qua quy định pháp lý (ấn “d” bàn phím để đến cuối thơng tin pháp lý bạn đọc rõ quy định) ấn enter để đồng ý (accept) quy định pháp lý Để xác minh cài đặt C DA, cài đặt kiểm tra mẫu lệnh: $ sudo /cuda-samples.9.0.176-22781540-linux.run Sau 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 bao gồm $PATH Điều có hiệu lực sau khởi động lại máy Để làm điều này, bạn 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 dấu ngoặc kép) Sau đó, khởi động lại máy tính kiểm tra thử cài đặt lệnh: 90 $ cd /usr/local/cuda-9.0/samples $ sudo make Tiến trình chạy tốn nhiều thời gian xuất nhiều cảnh báo khơng quan trọng Sau hồn thành, chạy deviceQuery p2pBandwidthLatencyTest lệnh: $ cd /usr/local/cuda/samples/bin/x86_64/linux/release $ /deviceQuery Sau chạy chương trình test, bạn nhận kết quả: 91 92 Bước 3: Cài đặt cuDNN 7.0 Vào trang web download cuDNN: https://developer.nvidia.com/rdp/cudnndownload (cần phải đăng ký tài khoản) chọn phiên cuDNN 9.0 cho CUDA 9.0 Tải file có deb: the runtime library, the developer library, the code samples library for Ubuntu 16.04 Sau tải xong, thư mục download mình, cài đặt file vừa tải lệnh: $ sudo dpkg -i libcudnn7_7.0.5.15–1+cuda9.0_amd64.deb (the runtime library) $ sudo dpkg -i libcudnn7-dev_7.0.5.15–1+cuda9.0_amd64.deb (the developer library) $ sudo dpkg -i libcudnn7-doc_7.0.5.15–1+cuda9.0_amd64.deb (the code samples) Bây giờ, bạn kiểm tra cuDNN có cài đặt hay chưa cách: - Sao chép code mẫu lệnh cp -r /usr/src/cudnn_samples_v7/ ~ - Di chuyển code đến ví dụ MNIST: cd ~/cudnn_samples_v7/mnistCUDNN - Biên dịch ví dụ MNIST: make clean && make - Chạy ví dụ MNIST:./mnistCUDNN Nếu cuDNN cài đặt thành công, bạn thấy Test passed! cuối phần kết trả Cài đặt Tensorflow 1.10.0 Sau cài Cuda 9.0 cuDNN 7.0, ta dễ dàng cài đặt Tensorflow 1.10.0 lệnh: $ pip install tensorflow==1.10.0 Để kiểm tra xem Tensorflow cài đặt thành công hay chưa Ta mở terminal gõ thử lệnh python sau Nếu báo lỗi tức cài đặt không thành công $ python >>> import tensorflow as tf >>> hello = tf.constant('Hello, TensorFlow!') >>> sess = tf.Session() >>> print(sess.run(hello)) 93 Hello, TensorFlow! >>> a = tf.constant(10) >>> b = tf.constant(32) >>> print(sess.run(a + b)) 42 Cài đặt easydict 1.6 Ta cài đặt easydict 1.6 lệnh: $ pip install easydict==1.6 Để kiểm tra easydict cài thành công hay chưa Ta chạy đoạn code sau với python, khơng có lỗi easydict cài đặt thành công $ python >>> from easydict import EasyDict as edict >>> d = edict({‘foo’:3, ‘bar’:{‘x’:1, ‘y’:2}}) >>> d.foo >>> d.bar.x >>> d = edict(foo=3) >>>d.foo Cài đặt gói thư viện lại Opencv_python 3.4.1.15: pip install opencv-python==3.4.1.15 Glog 0.3.1: pip install glog==0.3.1 Tensorflow-gpu 1.10.0: pip install tensorflow-gpu==1.10.0 Numpy 1.13.1: pip install numpy==1.13.1 Matplotlib 2.0.2: pip install matplotlib==2.0.2 94 Scikit_learn 0.19.1: pip install scikit-learn==0.19 95 S K L 0 ... đị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 theo dõi đường cho xe tự lái? ?? Thơng qua đề tài, nhóm hi vọng đưa nhìn khái qt việc ứng dụng cơng nghệ AI ngành học góp... (CNN)) - Sử dụng mạng đào tạo sẵn để nhận diện đường - Sử dụng thuật toán để nâng cao nhận diện đường thuật toán Hough Transform, K-means, Kalman filter,… - Sử dụng Kalman filter để theo dõi đường. .. cơng đường đào tạo nhân tài i TĨM TẮT Trong xu hướng tự động hóa ngày gia tăng, công nghệ, kỹ thuật hỗ trợ cho xe tự lái ngày phát tri? ??n nhận nhiều quan tâm nhà khoa học giới Kèm theo đó, trí tuệ