CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI: Giới thiệu về đề tài, mục tiêu, giới hạn đề tài, phạm vi nghiên cứu, phương pháp nghiên cứu cho đề tài “Nghiên cứu và phát triển mô hình xe tự hành ứng dụng AI”. CƠ SỞ LÝ THUYẾT: Trình bày lý thuyết về xe tự hành, công nghệ, các phương pháp xử lí ảnh để nhận diện làn đường, biển báo. THIẾT KẾ HỆ THỐNG: Trình bày yêu cầu thiết kế hệ thống phần cứng và phần mềm.
CÁC PHƯƠNG PHÁP PHÁT HIỆN VÀ NHẬN DIỆN: Trình bày các phương pháp nhận diện làn đường đã tìm hiểu và nghiên cứu, so sánh các phương pháp. KẾT QUẢ VÀ ĐÁNH GIÁ: Trình bày kết quả thực hiện, đánh giá tổng quan về mô hình. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN: Trình bày ưu và nhược điểm của mô hình, đưa ra giải pháp và hướng phát triển cho đề tài trong tương lai. Xe tự hành 2.
Giới thiệu Xe tự hành hay xe tự lái, là loại xe có khả năng di chuyển và điều hướng mà không cần bất kỳ sự can thiệp trực tiếp nào đến từ con người. Chúng được trang bị một loạt các cảm biến, các thuật toán và trí tuệ nhân tạo để có thể nhận thức và phát hiện môi trường xung quanh, bao gồm các phương tiện khác, người đi bộ, chướng ngại vật và đường sá. Nhờ đó, xe tự hành có thể tự động điều chỉnh tốc độ, phanh, và rẽ trái/phải để di chuyển an toàn và hiệu quả. Chúng ta có thể xem qua chiếc xe tự hành của Google như Hình 1.
Xe tự hành của Google. Hiện nay, xe tự hành được phân loại thành 6 cấp độ theo chuẩn của SAE (Society of Automobile Engineers). Các cấp độ này phân hóa từ 0 đến 5, với các mức độ tự động hóa khác nhau được mô tả như Hình 2. • Cấp độ 0 - Không tự động hóa: Xe không có bất kỳ tính năng tự động hóa nào.
Tài xế phải kiểm soát hoàn toàn tất cả các chức năng của xe mọi lúc. • Cấp độ 1 - Hỗ trợ tài xế: Xe có một số hệ thống hỗ trợ tài xế, chẳng hạn như 4 kiểm soát hành trình (cruise control) hoặc hỗ trợ giữ làn đường. Tài xế vẫn phải kiểm soát phần lớn hoạt động của xe và luôn luôn phải chú ý. • Cấp độ 2 –Tự động hóa bán phần: Xe có thể tự động hóa một số chức năng, như duy trì tốc độ và giữ làn đường đồng thời.
Tuy nhiên, tài xế vẫn phải giám sát và sẵn sàng can thiệp bất kỳ lúc nào. • Cấp độ 3 – Tự động hóa có điều kiện, có người lái: Xe có thể tự vận hành trong một số điều kiện nhất định mà không cần sự can thiệp của tài xế. Tuy nhiên, tài xế phải sẵn sàng tiếp quản khi hệ thống yêu cầu. • Cấp độ 4 - Tự động hóa cao, không người lái: Xe có thể tự vận hành trong hầu hết các tình huống mà không cần sự can thiệp của tài xế.
Tuy nhiên, có thể có những điều kiện mà xe không thể xử lý và yêu cầu tài xế can thiệp. • Cấp độ 5 - Tự động hóa hoàn toàn, không người lái: Xe hoàn toàn tự hành trong mọi điều kiện và tình huống mà không cần sự can thiệp của tài xế. Xe không cần các yếu tố điều khiển như vô lăng hay bàn đạp. Xe tự hành – 6 cấp độ tự động hóa.
Ứng dụng AI trên Xe tự hành Để xe có thể tự hoạt động hoàn toàn mà không cần bất cứ sự can thiệp của con người, ngoài việc xử lý nguồn dữ liệu đã có sẵn, xe còn phải tự thu thập và xử lý những dữ liệu mới. Điều này đòi hỏi phải sử dụng công nghệ AI (trí tuệ nhân tạo). Để đơn giản hóa, AI là khi máy tính có thể bắt chước hành vi và tư duy của con người 5 theo một cách nào đó. Để máy tính làm được điều này, con người cần thiết lập nền tảng và phương pháp để máy học kiến thức mới từ những kiến thức đã được dạy.
Giải pháp được sử dụng ở đây là Machine Learning (học máy). Công nghệ học máy hoạt động dựa trên mối liên kết toán học giữa dữ liệu đầu vào và kết quả. Mô hình học máy không biết được trước mối quan hệ này, nhưng có thể dự đoán được nếu có đẩy đủ nguồn dữ liệu. Tất cả các thuật toán học máy đều dựa trên các hàm toán học có thể được điều chỉnh.
Trong xe tự hành, các thuật toán này giúp xe nhận diện các yếu tố như điều kiện đường xá, vật cản, biển báo giao thông,. Tuy nhiên, việc xử lý lượng lớn dữ liệu này là rất khó khăn nếu chỉ sử dụng các thuật toán thông thường do lượng dữ liệu đầu vào quá lớn và phức tạp. Do đó, giải pháp ở đây là để máy tính bắt chước hoạt động của bộ não con người, từ đó mạng thần kinh nhân tạo (Neural Networks) ra đời. [1] Mạng thần kinh nhân tạo bao gồm một nhóm các nút (neural) được liên kết với nhau, chúng xử lý thông tin bằng cách truyền qua các kết nối và tính toán các giá trị mới tại các nút.
Trong một số trường hợp, mạng thần kinh nhân tạo là một hệ thống thích ứng, tự thay đổi cấu trúc dựa trên thông tin thông qua mạng trong quá trình học. Phương pháp để hình thành các mạng lưới này là Deep Learning. Deep Learning hoạt động bằng cách cung cấp một lượng lớn dữ liệu về một đối tượng nhất định, sau đó máy tính phân tích đặc điểm của dữ liệu đầu vào, để tìm ra các đặc điểm chung và hình thành một mạng lưới thần kinh với các đặc điểm nhận dạng của dữ liệu đầu vào. Từ đó hình thành nên mối liên kết chặt chẽ giữa AI, học máy và học sâu như Hình 3.
Mối quan hệ giữa trí tuệ nhân tạo, học máy và học sâu. 6 Ví dụ đối với chương trình nhận dạng khuôn mặt, Deep Learning được mô phỏng bao gồm cách bước sau: • Chuẩn bị dữ liệu: Dữ liệu khuôn mặt được tải về, sau đó được chuẩn hóa và chuẩn bị sẵn sàng cho quá trình huấn luyện. • Xây dựng mô hình: Mô hình CNN (Convolutional Neural Network) cơ bản được xây dựng, bao gồm nhiều lớp tích chập (convolutional layers) và lớp gộp (pooling layers), sau đó là các lớp dày đặc (dense layers) để thực hiện phân loại. • Huấn luyện mô hình: Mô hình được huấn luyện với dữ liệu hình ảnh qua nhiều epoch (chu kỳ huấn luyện).
• Đánh giá mô hình: Mô hình được đánh giá bằng tập dữ liệu kiểm tra để đo lường độ chính xác của nó trong việc việc nhận diện khuôn mặt. • Dự đoán: Mô hình sau đó được sử dụng để dự đoán trên dữ liệu mới, và kết quả dự đoán này được trực quan hóa bằng cách phân tích và nhận diện khuôn mặt ở nhiều điều kiện khác nhau. Sơ đồ mô phỏng thuật toán học sâu – Deep Learning. Giới thiệu về xử lý ảnh 7 Xử lý ảnh là một lĩnh vực nghiên cứu quan trọng trong khoa học công nghệ.
Trong những năm qua, lĩnh vực này đã và đang phát triển với tốc độ chóng mặt bởi các trung tâm nghiên cứu và các trường đại học, với rất nhiều ứng dụng thực tế trong nhiều lĩnh vực khác nhau. Các phương pháp xử lý ảnh được bắt đầu từ các ứng dụng nhằm nâng cao chất lượng ảnh bằng các phương pháp phân tích được nghiên cứu trong giai đoạn thiết bị phần cứng bị hạn chế. Ví dụ như nâng cao độ sáng hay độ phân giải của ảnh. Ngày nay, với sự phát triển của công nghệ máy tính đã tạo ra điều kiện thuận lợi cho việc thực hiện các thuật toán xử lý ảnh phức tạp.
Xử lý ảnh ngày càng được ứng dụng rộng rãi và phổ biến trong nhiều lĩnh vực như tự động hóa, kỹ thuật y sinh, viễn thông. Trong đời sống hàng ngày, các thiết bị kỹ thuật số như máy ảnh, điện thoại thông minh, tivi thông minh,. cũng tích hợp các công nghệ này để cung cấp những hình ảnh rõ nét và đáp ứng nhu cầu của người sử dụng. Các bước xử lý ảnh Như được thể hiện trong Hình 5, các bước xử lý ảnh bao gồm: • Thu thập dữ liệu (Data Acquisition): Đây là bước đầu tiên để nhận ảnh đầu vào qua các thiết bị như camera, ảnh vệ tinh, hoặc cơ sở dữ liệu hình ảnh.
Các định dạng phổ biến bao gồm JPEG, PNG, BMP, TIFF, … • Tiền xử lý (Preprocessing): Sau khi nhận ảnh đầu vào từ nguồn cấp, ảnh sẽ được xử lý để nâng cao chất lượng, đảm bảo tất cả các hình ảnh có định dạng đồng nhất để dễ dàng thao tác, loại bỏ các phần không cần thiết của hình ảnh, tập trung vào vùng chứa thông tin quan trọng. Điều chỉnh kích thước hình ảnh để phù hợp với yêu cầu của thuận toán, giúp tăng hiệu quả xử lí. Điều chỉnh độ sáng độ tương phản để chuẩn hóa hình ảnh, làm cho các chi tiết dễ nhận diện hơn. Sử dụng các bộ lọc để giảm nhiễu, cải thiện chất lượng ảnh và tăng độ chính xác của các bước xử lý sau.
• Chuyển đổi không gian màu (Color Space Transformation): Chuyển đổi giữa 8 các không gian màu khác nhau như HSV để phục vụ cho các kỹ thuật xử lý. • Tăng cường hình ảnh (Image Enhancement): Sử dụng các bộ lọc để làm mịn ảnh, giảm nhiễu và cải thiện chất lượng tổng thể. Làm nét các cạnh và chi tiết nhỏ trong hình ảnh, giúp hình ảnh rõ nét hơn. Cải thiện độ tương phản, làm nổi bật các chi tiết quan trọng.
• Phân đoạn ảnh (Image Segmentation): Sử dụng thuật toán để nhận diện các mẫu và đối tượng trong ảnh. Quá trình này thực hiện thông qua việc chia ảnh thành từng vùng riêng biệt và đồng nhất, hay còn gọi là là xác định các biên của các ảnh. Phân đoạn ảnh là quá trình chia ảnh thành các vùng không trùng lặp, mỗi vùng gồm một nhóm pixel liên kết và đồng nhất theo một tiêu chí nhất định. Đây là phần phức tạp nhất trong xử lý ảnh vì dễ gây lỗi, có thể làm giảm độ chính xác của ảnh.
Kết quả của việc nhận dạng ảnh phụ thuộc rất nhiều vào công đoạn này. • Nhận dạng và phân loại: (Recognition and Classification): Đây là bước cuối cùng trong quá trình xử lý ảnh, liên quan đến việc mô tả các đối tượng cần đặc tả. Nhận dạng ảnh ở đây có thể được hiểu một cách đơn giản là gán nhãn cho các đối tượng trong ảnh. Hiện nay, kỹ thuật nhận dạng đã được áp dụng thành công với nhiều đối tượng như: vân tay, khuôn mặt, biển số xe, .