1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án tốt nghiệp Công nghệ kỹ thuật điện tử, viễn thông: Thiết kế và xây dựng mô hình điều khiển xe thông minh

116 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết Kế Và Xây Dựng Mô Hình Điều Khiển Xe Thông Minh
Tác giả Võ Phước Tiến, Trần Quốc Tiến
Người hướng dẫn ThS. Nguyễn Ngô Lâm
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Điện Tử, Viễn Thông
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Thủ Đức
Định dạng
Số trang 116
Dung lượng 6,9 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (22)
    • 1.1 GIỚI THIỆU (22)
    • 1.2 TÍNH CẤP THIẾT CỦA ĐỀ TÀI (22)
    • 1.3 MỤC TIÊU NGHIÊN CỨU (23)
    • 1.4 ĐỐI TƯỢNG NGHIÊN CỨU (24)
    • 1.5 PHẠM VI NGHIÊN CỨU (24)
    • 1.6 PHƯƠNG PHÁP NGHIÊN CỨU (24)
    • 1.7 BỐ CỤC ĐỒ ÁN (25)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (26)
    • 2.1 GIỚI THIỆU VỀ DEEP LEARNING (26)
      • 2.1.1 Kiến trúc mạng nơ ron (26)
      • 2.1.2 Huấn Luyện Mạng Nơ-ron (26)
      • 2.1.3 Ứng Dụng trong Xử Lý Ảnh (27)
    • 2.2 XỬ LÍ ẢNH VÀ THỊ GIÁC MÁY TÍNH (27)
      • 2.2.1 Xử Lý Ảnh (27)
      • 2.2.2 Thị giác máy tính (28)
      • 2.2.3 Công Nghệ và Thư Viện (28)
    • 2.3 ỨNG DỤNG XỬ LÍ ẢNH TRONG XE TỰ HÀNH (28)
      • 2.3.1 Nhận Diện Biển Báo Giao Thông (0)
      • 2.3.2 Phát Hiện và Theo Dõi Đối Tượng (28)
      • 2.3.3 Dự Đoán Hành Vi (29)
      • 2.3.4 Tăng Cường An Toàn và Hiệu Suất (29)
    • 2.4 TỔNG QUAN VỀ CÁC PHẦN CỨNG TRONG HỆ THỐNG (29)
      • 2.4.1 Module giao tiếp wifi ESP32-CAM AI Thinker (29)
      • 2.4.2 Vi điều khiển ESP32 Dev Module (31)
      • 2.4.3 Module điều khiển động cơ L298N (32)
      • 2.4.4 Cảm Biến Siêu Âm UltraSonic HY-SRF05 (34)
      • 2.4.5 Module Sim 4G A7680C (35)
      • 2.4.6 Module GPS Neo 6m V2 (35)
      • 2.4.7 Module LCD-I2C 16x2 (36)
      • 2.4.8 Pin Lithium18650 (37)
      • 2.4.9 Module Joystick (38)
      • 2.4.10 Mạch giảm áp DC-DC 12V XL4015 (39)
      • 2.4.11 Mạch giảm áp DC-DC 5V-5A MP2482 SY8205 (40)
      • 2.4.12 Động cơ DC giảm tốc vàng 2 trục (41)
      • 2.4.13 Nút nhấn SW15 đề nhả 2 chân R13-507 (42)
      • 2.4.14 Mạch hiển thị mức dung lượng Pin Lithium 18650 (42)
    • 2.5 CÁC CHUẨN GIAO TIẾP (43)
      • 2.5.1 Chuẩn giao tiếp UART (43)
      • 2.5.2 Chuẩn giao tiếp I2C (44)
      • 2.5.3 Chuẩn giao tiếp không dây Wifi (45)
      • 2.5.4 Chuẩn giao tiếp ESP-NOW (46)
    • 2.6 TỔNG QUAN VỀ CÔNG NGHỆ IOT (49)
    • 2.7 TỔNG QUAN VỀ GOOGLE FIREBASE (50)
    • 2.8 TỔNG QUAN CÁC CÔNG CỤ XÂY DỰNG VÀ LẬP TRÌNH NÊN HỆ THỐNG (51)
      • 2.8.1 Giới thiệu về nền tảng Roboflow (51)
      • 2.8.2 Giới thiệu về Google Colab (52)
      • 2.8.3 Giới thiệu về Yolo v8 (53)
      • 2.8.4 Giới thiệu về phần mềm lập trình Visual Studio Code (0)
      • 2.8.5 Phần mềm lập trình Ardunio IDE (0)
  • CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG (63)
    • 3.1 YÊU CẦU VÀ SƠ ĐỒ KHỐI HỆ THỐNG (63)
      • 3.1.1 Yêu cầu của hệ thống (63)
      • 3.1.2 Sơ đồ khối và chức năng của từng khối (64)
      • 3.1.3 Hoạt động của hệ thống (67)
    • 3.2 THIẾT KẾ HỆ THỐNG (68)
      • 3.2.1 Khối Camera (68)
      • 3.2.2 Khối cảnh báo (68)
      • 3.2.3 Khối hiển thị (70)
      • 3.2.4 Khối nút nhấn (71)
      • 3.2.5 Khối điều khiển động cơ (71)
      • 3.2.6 Khối gửi tin nhắn (72)
      • 3.2.7 Khối định vị GPS (74)
      • 3.2.8 Khối chuyển đổi chế độ (74)
      • 3.2.9 Khối thông báo kết nối (75)
      • 3.2.10 Khối đo khoảng cách (76)
      • 3.2.11 Khối xử lý trung tâm 1 (77)
      • 3.2.12 Khối xử lý trung tâm 2 (78)
      • 3.2.13 Khối nguồn (79)
  • CHƯƠNG 4: THI CÔNG – TÍNH TOÁN – LẬP TRÌNH CHO HỆ THỐNG (84)
    • 4.1 THI CÔNG HỆ THỐNG THỰC TẾ (84)
    • 4.2 TẠO TỆP DATASET VỚI ROBOFLOW (85)
    • 4.3 TRAIN MODEL VỚI GOOGLE COLAB (89)
    • 4.4 LƯU ĐỒ GIẢI THUẬT CỦA HỆ THỐNG (92)
      • 4.4.1 Lưu đồ giải thuật khối xử lí trung tâm 1 (0)
      • 4.4.2 Lưu đồ giải thuật chế độ Manual (0)
      • 4.4.3 Lưu đồ giải thuật chế độ Auto (0)
      • 4.4.4 Lưu đồ giải thuật ESP Camera (0)
      • 4.4.5 Lưu đồ giải thuật khối xử lí trung tâm 2 (0)
      • 4.4.6 Lưu đồ giải thuật khối xử lí ảnh và gửi dữ liệu đến Firebase (0)
  • CHƯƠNG 5: KẾT QUẢ - KIỂM TRA – ĐÁNH GIÁ (98)
    • 5.1 KẾT QUẢ CỦA QUÁ TRÌNH HUẤN LUYỆN (98)
    • 5.2 KẾT QUẢ TIN NHẮN GỬI TỌA ĐỘ VỀ CHO NGƯỜI DÙNG (99)
    • 5.3 KẾT QUẢ HỆ THỐNG Ở CHẾ ĐỘ MANUAL (100)
    • 5.4 KẾT QUẢ HỆ THỐNG Ở CHẾ ĐỘ AUTO (101)
    • 5.5 KIỂM TRA KHẢ NĂNG NHẬN DIỆN CÁC BIỂN BÁO VÀ ĐÈN TÍN HIỆU GIAO THÔNG KHI XE HOẠT ĐỘNG Ở CHẾ ĐỘ AUTO (103)
    • 5.6 ĐÁNH GIÁ HOẠT ĐỘNG TOÀN HỆ THỐNG (104)
  • CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (106)
    • 6.1 KẾT LUẬN (106)
    • 6.2 HƯỚNG PHÁT TRIỂN (106)
  • TÀI LIỆU THAM KHẢO (108)

Nội dung

Sự phát triển của trí tuệ nhân tạo AI và xử lý ảnh đã tạo ra cơ hội mới để tạo ra những hệ thống xe tự hành thông minh, có khả năng nhận diện và tương tác với môi trường xung quanh một c

TỔNG QUAN

GIỚI THIỆU

Trong thời đại công nghệ hiện đại, xe tự hành đang trở thành xu hướng tiên tiến trong ngành ô tô Sự phát triển của trí tuệ nhân tạo (AI) và xử lý ảnh đã mở ra cơ hội cho việc tạo ra hệ thống xe tự hành thông minh, có khả năng nhận diện và tương tác hiệu quả với môi trường Xử lý ảnh đóng vai trò quan trọng trong việc giúp xe tự hành nhận biết và phản ứng với các tình huống giao thông Thông qua các kỹ thuật deep learning và computer vision, hệ thống này có khả năng phát hiện đối tượng như xe hơi, người đi bộ và biển báo giao thông từ dữ liệu hình ảnh thu thập từ cảm biến trên xe.

Nhóm nghiên cứu giới thiệu dự án "Thiết kế và Xây dựng Mô hình Điều khiển Xe Thông minh", tập trung vào việc áp dụng kỹ thuật xử lý ảnh và trí tuệ nhân tạo để phát triển hệ thống xe tự hành thông minh Dự án này nhằm nhận diện và phản ứng chính xác với các đối tượng và tình huống giao thông phức tạp, góp phần nâng cao an toàn và hiệu suất cho xe tự hành.

TÍNH CẤP THIẾT CỦA ĐỀ TÀI

Tronglthờilđạilcônglnghệ 4.0, sựlphátltriển nhanh chóng của tríltuệ nhânltạo và Internet vạn vật đang mở ra nhiều cơ hội mới cho các ứng dụng công nghệ cao Xe tự hành là một trong những xu hướng công nghệ tiên tiến và đang được nghiên cứu phát triển mạnh mẽ trên toàn thế giới Việc ứng dụng các công nghệ này khônglchỉlgiúplnânglcaolhiệulquả giao thông màlcònlgóplphầnlgiảm thiểu tailnạn và ô nhiễm môiltrường

Tai nạn giao thông là một vấn đề nghiêm trọng gây thiệt hại lớn về người và tài sản Xe tự hành với khả năng nhận diện và phản ứng nhanh chóng trước các tình huống giao thông có thể giảm thiểu rủi ro tai nạn, bảo vệ tính mạng con người Việc phát triển các hệ thống xe tự hành thông minh, có khả năng xử lý ảnh và nhận diện đối tượng một cách chính xác và nhanh chóng, là cần thiết để đảm bảo an toàn giao thông.

Nghiên cứu và phát triển hệ thống xe tự hành thông minh ứng dụng xử lý ảnh và AI không chỉ nâng cao hiệu quả giao thông mà còn thúc đẩy sự phát triển của nhiều ngành công nghiệp liên quan Các công nghệ như deep learning, computer vision và cảm biến thông minh đang trở thành nền tảng cho các ứng dụng thực tiễn đa dạng, từ giám sát an ninh, quản lý đô thị cho đến các dịch vụ tự động hóa trong nhà máy.

Xe tự hành thông minh giúp tối ưu hóa lộ trình và giảm tiêu thụ nhiên liệu, từ đó giảm thiểu khí thải ô nhiễm Phát triển và triển khai các hệ thống xe tự hành thân thiện với môi trường sẽ góp phần quan trọng vào việc bảo vệ môi trường và xây dựng tương lai bền vững.

Nghiên cứu xe tự hành không chỉ cải thiện giao thông và môi trường mà còn thúc đẩy tiến bộ trong khoa học và công nghệ Các dự án phát triển xe tự hành tạo ra nhiều cơ hội học tập, nghiên cứu và việc làm cho nhà khoa học, kỹ sư và sinh viên.

Với sự phát triển của công nghệ, nhu cầu về phương tiện giao thông thông minh và tự động hóa đang gia tăng Thị trường xe tự hành dự kiến sẽ có sự tăng trưởng mạnh mẽ trong những năm tới, điều này đòi hỏi sự đầu tư và phát triển mạnh mẽ từ các nhà nghiên cứu và doanh nghiệp.

MỤC TIÊU NGHIÊN CỨU

Mục tiêu của dự án là phát triển và triển khai một hệ thống xe tự hành thông minh, có khả năng nhận diện và phản ứng hiệu quả với môi trường giao thông xung quanh.

Cụ thể, chúng tôi đặt ra các mục tiêu nghiên cứu như sau:

Phát triển mô hình nhận biết đối tượng là quá trình sử dụng mô hình học sâu để huấn luyện dữ liệu tự tạo, nhằm nhận diện và phân loại các đối tượng quan trọng trên đường như biển báo giao thông và đèn tín hiệu giao thông.

Tối ưu hóa hiệu suất và tốc độ xử lý của mô hình nhận biết đối tượng là cần thiết để phù hợp với môi trường thực tế của xe tự hành Đồng thời, việc kiểm tra và đánh giá tính ổn định và an toàn của hệ thống trong các tình huống giao thông phức tạp là cực kỳ quan trọng, nhằm đảm bảo khả năng xử lý hiệu quả các tình huống bất ngờ.

Triểnlkhai và thử nghiệm hệ thống trên một môi trường thựcltế để đánhlgiá hiệulsuất và khả năng áp dụng của nó trong điều kiện thực tế

ĐỐI TƯỢNG NGHIÊN CỨU

Về phần cứng, nhóm chọn nghiên cứu về các vi điều khiển như ESP 32 Dev, ESP

32 Cam AI-Thinker, các cảm biến thu thập dữ liệu, đo đạc như cảm biến khoảng cách HCSR04, module GPS neo-6m, module Sim 4G A7680C,…

− ESP32 Cam: Nghiên cứu cấu tạo, cách đọc hình ảnh truyền qua wifi

− ESP32: là bộ xử lý trung tâm, kết nối với các cảm biến, truyền dữ liệu điều khiển

− Module Sim 4G A7680C: Tìm hiểu về phần cứng, cách thức giao tiếp giữa module với bộ xử lý trung tâm

− Module GPS neo-6m: Nghiên cứu về cấu tạo, cách đọc dữ liệu từ Module, công nghệ giúp module cải thiện độ chính xác

Nhóm nghiên cứu sử dụng ngôn ngữ C để lập trình điều khiển xe trên phần mềm Arduino IDE, đồng thời cũng nghiên cứu ngôn ngữ Python cho việc xử lý ảnh trên Google Colab và Visual Studio Code.

PHẠM VI NGHIÊN CỨU

Nghiên cứu và phát triển từ mô hình học sâu hiện có nhằm huấn luyện tệp dữ liệu tự tạo để nhận diện các đối tượng giao thông, bao gồm biển báo hiệu và đèn tín hiệu giao thông.

Xử lý và phân tích dữ liệu hình ảnh từ các cảm biến như camera trên xe giúp đưa ra quyết định an toàn và hiệu quả trong các điều kiện thực tế.

Kiểm|tra và|đánh|giá|hiệu|suất|của hệ thống xe tự hành trên một loạt các tình huống giao thông và điều kiện địa hình khác nhau

Tìm hiểu cácllý thuyết có liênlquanlnhư ngônlngữ lập trình cho Adrunio và VS Code.

PHƯƠNG PHÁP NGHIÊN CỨU

Để thực hiện đồ án, nhóm cần nắm vững kiến thức về vi điều khiển, giao tiếp với các module và cảm biến, cũng như hoạt động của thiết bị và linh kiện Ngoài ra, nền tảng về ngôn ngữ lập trình như C và Python là cần thiết Kỹ năng làm việc nhóm, thiết kế, xây dựng hệ thống và kiểm nghiệm kết quả cũng rất quan trọng.

BỐ CỤC ĐỒ ÁN

Chương 1: Tổng Quan: Trong|chương|này, |nhóm sẽ trình|bày vềltính cấplthiết của đềltài, dựa trên xu hướng và tình hình phát triển hiện nay của khoa học và công nghệ Chúng tôi cũng sẽ đề cập đến sự|phát triển|công nghiệp|và ảnh|hưởng của|nó đến đời|sống hàng|ngày, |từ đó giải thích lý|do lựa chọn|đề|tài này và xác định mục tiêu nghiên cứu cụ thể

Chương 2: Cơ Sở Lý Thuyết: |Chương này|cung cấp|cái nhìn|tổng quan|về các thành|phần và|chức năng|của từng|loại phần|cứng có|trong hệ|thống |Chúng tôi|sẽ mô tả chi|tiết từng thành phần và cách chúng liên kết với nhau để xây dựng mô hình hoàn chỉnh của hệ thống xe tự hành thông minh

Chương 3: Thiết Kế và Xây Dựng Hệ Thống: |Từ các yêu|cầu của|đề tài, chương này sẽ|trình|bày|sơ|đồ tổng quan của hệ|thống Chúng tôi sẽ thảo luận về các phương pháp xử lý dữ liệu được sử dụng và từ đó, thiết kế mô hình hệ|thống|bao|gồm|cả phần cứng|và phần|mềm

Chương 4: Thi Công Hệ Thống: Chương này mô tả chi tiết quá trình lắp ráp các thành phần phần cứng, lập trình và nạp mã cho vi điều khiển, kiểm tra và hiệu chỉnh hệ thống, cũng như thử nghiệm thực tế để đánh giá hiệu suất và khả năng hoạt động của hệ thống xe tự hành thông minh

Chương 5: Kết Quả, Nhận Xét và Đánh Giá: |Chương này|trình|bày các kết|quả đạt|được từ|quá trình|thi công|và thử|nghiệm|hệ|thống, |đánh|giá hiệu suất hoạt|động, nhận xét về ưu điểm và nhược điểm, và đưa ra những phản hồi cùng đề xuất cải tiến để nâng cao hiệu quả hệ|thống

Chương 6: Kết Luận và Hướng Phát Triển: |Trong|chương|cuối cùng, chúng tôi sẽ tổng kết lại|những gì đã đạt được và chưa đạt được trong quá trình thực hiện đề tài Dựa trên các kết quả và nhận xét, chúng tôi sẽ đề xuất các hướng|phát|triển để|cải|thiện và|mở|rộng|hệ thống trong tương lai

CƠ SỞ LÝ THUYẾT

GIỚI THIỆU VỀ DEEP LEARNING

Công nghệ Deep Learning, một nhánh của trí tuệ nhân tạo, tập trung vào việc xây dựng và huấn luyện các mạng nơ-ron để học và hiểu các biểu diễn phức tạp từ dữ liệu Nhờ vào khả năng này, Deep Learning giúp giải quyết những vấn đề phức tạp mà các phương pháp truyền thống trước đây không thể xử lý hiệu quả.

Hình 2 1 Công nghệ Deep Learning

2.1.1 Kiến trúc mạng nơ ron

Một mạng nơ-ron sâu bao gồm nhiều lớp xếp chồng lên nhau, mỗi lớp chứa các đơn vị tính toán gọi là nơ-ron Các lớp trong mạng nơ-ron sâu được chia thành ba loại chính.

Lớp Input (Input Layer) tiếp nhận dữ liệu đầu vào và chuyển tiếp chúng qua mạng, trong khi Lớp Ẩn (Hidden Layers) nằm giữa lớp input và output, thực hiện các phép toán để học các biểu diễn phức tạp từ dữ liệu.

Lớp Output (Output Layer): Tạo ra dự đoán và kết quả của mạng dựa trên biểu diễn đã học được

2.1.2 Huấn Luyện Mạng Nơ-ron

Quá trình huấn luyện mạng nơ-ron bao gồm hai giai đoạn chính: lan truyền tiến và lan truyền ngược Trong lan truyền tiến, dữ liệu được truyền từ lớp đầu vào qua các lớp ẩn đến lớp đầu ra để tạo ra dự đoán Ngược lại, trong lan truyền ngược, độ lỗi giữa dự đoán và giá trị thực tế được tính toán và truyền ngược từ lớp đầu ra qua các lớp ẩn nhằm điều chỉnh trọng số của các nơ-ron dựa trên độ lỗi đó.

2.1.3 Ứng Dụng trong Xử Lý Ảnh

Deep Learning đã chứng tỏ hiệu quả vượt trội trong nhiều ứng dụng xử lý ảnh, bao gồm nhận diện đối tượng, phân loại ảnh, phát hiện đối tượng và khôi phục ảnh.

XỬ LÍ ẢNH VÀ THỊ GIÁC MÁY TÍNH

Hình 2 3 Thị giác máy tính

Xử lý ảnh và thị giác máy tính là hai lĩnh vực quan trọng trong trí tuệ nhân tạo (AI), chuyên về phân tích và hiểu nội dung hình ảnh cũng như video Bài viết này sẽ giới thiệu một số khái niệm cơ bản và công nghệ liên quan đến hai lĩnh vực này.

Xử lý và phân tích hình ảnh là quá trình sử dụng các phép toán và thuật toán máy tính để cải thiện và trích xuất thông tin từ hình ảnh Các công việc phổ biến trong lĩnh vực này bao gồm nhận diện đối tượng, nâng cao chất lượng hình ảnh và phân loại hình ảnh.

• Biến đổi ảnh: Điều chỉnh kích thước, cắt ghép, xoay, làm sáng tối, làm nét hoặc làm mờ ảnh

• Trích xuất đặc trưng: Tìm kiếm và phát hiện các đặclđiểm độc đáo trong hìnhlảnh như cạnh, lgóc, hoặclđiểm nổi bật

• Phân loại ảnh: Xáclđịnh và phânlloại các đốiltượng hoặc nhãn trong ảnh

Thị giác máy tính là lĩnh vực nghiên cứu và ứng dụng các phương pháp giúp máy tính tự động hiểu và giải thích hình ảnh cũng như video Các ứng dụng của thị giác máy tính rất đa dạng và phong phú.

• Nhận diện đối tượng: Xác|định và|định danh các đối|tượng trong|hình|ảnh hoặc video

• Phát hiện và theo dõi đối tượng: Phát hiện và theo dõi sự di chuyển của các đối tượng trong video

• Phân tích hành vi: Hiểu và dự đoán hành vi của đối tượng trong hình ảnh hoặc video

2.2.3 Công Nghệ và Thư Viện

Trong lĩnh vực xử lý ảnh và thị giác máy tính, nhiều công nghệ và thư viện phổ biến như OpenCV, TensorFlow, PyTorch và Keras được sử dụng rộng rãi Những công nghệ này cung cấp các công cụ và tài nguyên cần thiết để phát triển các giải pháp thị giác máy tính một cách hiệu quả.

ỨNG DỤNG XỬ LÍ ẢNH TRONG XE TỰ HÀNH

Xử lý ảnh và thị giác máy tính là yếu tố then chốt trong việc phát triển và triển khai hệ thống xe tự hành thông minh Dưới đây là một số ứng dụng cụ thể của công nghệ này trong lĩnh vực xe tự hành.

2.3.1 Nhận Diện Biển Báo Giao Thông

Một ứng dụng quan trọng của xử lý ảnh trong xe tự hành là nhận diện biển báo giao thông Hệ thống xe tự hành sử dụng các mô hình deep learning để nhận diện và hiểu các thông điệp từ biển báo, bao gồm giới hạn tốc độ, biển dừng và quy định hướng đi.

2.3.2 Phát Hiện và Theo Dõi Đối Tượng

Thị giác máy tính đóng vai trò quan trọng trong việc phát hiện và theo dõi các đối tượng như xe hơi, người đi bộ và xe đạp trên đường Thông qua việc áp dụng các mô hình phát hiện và phương pháp theo dõi, hệ thống xe tự hành có khả năng dự đoán và phản ứng chính xác với hành vi của các đối tượng này.

Hệ thống xe tự hành sử dụng dữ liệu hình ảnh từ camera và cảm biến để phân tích và dự đoán hành vi của các phương tiện khác trên đường Nhờ đó, hệ thống điều khiển tự động có khả năng phản ứng chính xác và an toàn trong các tình huống giao thông phức tạp.

2.3.4 Tăng Cường An Toàn và Hiệu Suất

Các ứng dụng này tập trung vào việc nâng cao an toàn và hiệu suất cho hệ thống xe tự hành Thông qua công nghệ xử lý ảnh và thị giác máy tính, hệ thống có khả năng phản ứng nhanh chóng và chính xác với các tình huống giao thông, giúp giảm thiểu nguy cơ tai nạn và cải thiện trải nghiệm lái xe.

TỔNG QUAN VỀ CÁC PHẦN CỨNG TRONG HỆ THỐNG

2.4.1 Module giao tiếp wifi ESP32-CAM AI Thinker

ESP32-CAM là mô-đun camera nhỏ gọn, với kích thước 40 x 27 x 12 mm và tiêu thụ chỉ 6mA khi nghỉ, rất phù hợp cho nhiều ứng dụng IoT Mô-đun này có khả năng hoạt động độc lập, lý tưởng cho thiết bị nhà thông minh, điều khiển không dây, giám sát và kiểm soát, nhận dạng mã QR, cũng như hệ thống định vị không dây Với tính năng linh hoạt và hiệu suất cao, ESP32-CAM trở thành giải pháp tối ưu cho các ứng dụng IoT đa dạng.

Sản phẩm AI-Thinker ESP32-CAM nổi bật với độ ổn định và độ bền cao, trang bị camera OV2640 cho hình ảnh sắc nét và không nhiễu Nhờ vào IC cấp nguồn chất lượng, thiết bị hoạt động mượt mà mà không gặp tình trạng treo Hơn nữa, ESP32-CAM được hỗ trợ mạnh mẽ từ cộng đồng và có thể lập trình dễ dàng thông qua Arduino IDE, giúp phát triển ứng dụng trở nên hiệu quả và thuận tiện.

Hình 2 4 Module ESP CAM và đế nạp Bảng 2 1 Thông số kỹ thuật ESP32-CAM [22]

Thông số cơ bản của Esp-32 CAM:

• ICichính: ESP32-Si (AI-Thinker)

• CPUi32-bit côngisuất thấp, icũngicó thể phụcivụ bộ xửilý ứngidụng

• HỗitrợiUART/SPI/I2C/PWM/ADC/DAC

• Hỗitrợ máyiảnhiOV2640ivà OV7670, iđèniflashitíchihợp

• Hỗitrợichế độ hoạtiđộng STA/AP/STA+AP

Hình 2 5 Sơ đồ chân ESP32 Dev Module

2.4.2 Vi điều khiển ESP32 Dev Module

ESP32 là dòng vi xử lý hiệu suất cao do Espressif Systems sản xuất, với thiết kế mạnh mẽ và tích hợp nhiều tính năng Nền tảng này là lựa chọn lý tưởng cho việc phát triển các ứng dụng IoT và các dự án nhúng.

- Hiệu Suất Cao: ESP32 được trang bị một vi xử lý kép Tensilica Xtensa LX6, cho phép xử lý đa nhiệmlvà hiệu suất mạnh mẽ

ESP32 hỗ trợ kết nối Wi-Fi và Bluetooth, giúp dễ dàng kết nối không dây với mạng và các thiết bị khác.

ESP32 không chỉ hỗ trợ Wi-Fi và Bluetooth mà còn tích hợp nhiều giao diện như UART, SPI, I2C, GPIO, ADC và DAC Điều này cho phép ESP32 kết nối với đa dạng cảm biến và thiết bị ngoại vi, mở rộng khả năng ứng dụng của nó trong các dự án IoT và tự động hóa.

ESP32 được trang bị bộ nhớ flash tích hợp với dung lượng lớn, cho phép lưu trữ ứng dụng và dữ liệu một cách hiệu quả.

ESP32 được thiết kế với tính năng tiết kiệm năng lượng, lý tưởng cho các ứng dụng IoT yêu cầu tiêu thụ điện năng thấp hoặc sử dụng pin năng lượng mặt trời.

ESP32 là một vi điều khiển phổ biến trong các dự án IoT và ứng dụng nhúng, nhờ vào khả năng kết nối mạnh mẽ và hiệu suất ổn định Nó được ưa chuộng trong việc phát triển các thiết bị thông minh, hệ thống giám sát và các ứng dụng kết nối công nghệ mới.

Bảng 2 2 Thông số kĩ thuật ESP32 Dev Module [23]

2.4.3 Module điều khiển động cơ L298N

L298N là một module điều khiển động cơ phổ biến, được sử dụng để điều khiển xe DC và động cơ bước Với IC điều khiển động cơ L298 và bộ điều chỉnh điện áp 5V 78M05, module này có khả năng điều khiển tối đa 4 động cơ DC hoặc 2 động cơ DC, cho phép điều chỉnh hướng và tốc độ một cách linh hoạt.

Module điều khiển động cơ L298N có IC điều khiển động cơ L298, Bộ điều chỉnh điện áp 78M05, điện trở, tụ điện, LED nguồn, jumper 5V tích hợp

Hình 2 6 Module điều khiển động cơ L298N

Bộ điều chỉnh điện áp 78M05 chỉ hoạt động khi jumper được đặt Khi nguồn điện nhỏ hơn hoặc bằng 12V, mạch bên trong nhận nguồn từ bộ điều chỉnh và chân 5V có thể được sử dụng để cấp nguồn cho vi điều khiển Tuy nhiên, không nên đặt jumper khi nguồn điện lớn hơn 12V; trong trường hợp này, chân 5V cần được cấp nguồn riêng bằng nguồn 5V cho mạch bên trong.

Chân ENA và ENB điều khiển tốc độ cho Động cơ A và Động cơ B, trong khi IN1 & IN2 và IN3 & IN4 đảm nhận vai trò điều khiển hướng quay cho hai động cơ này.

• Sơ đồ mạch bên trong của module điều khiển động cơ L298N được đưa ra dưới đây:

Hình 2 7 Sơ đồ nguyên lí module L298N

- Điều khiển động cơ DC, động cơ bước

Bảng 2 3 Thông số kĩ thuật module L298N [24]

Bảng 2 4 Bảng trạng thái các chiều quay của chân IN1 và IN2 [24]

− Tượng tự cho các chân ngõ vào IN3 và IN4

2.4.4 Cảm Biến Siêu Âm UltraSonic HY-SRF05

Cảm biến siêu âm HY-SRF05 sử dụng sóng siêu âm để đo khoảng cách giữa vật thể và cảm biến Với khả năng phản hồi nhanh và độ chính xác cao, thiết bị này rất phù hợp cho các ứng dụng phát hiện vật cản và đo khoảng cách.

Cảm biến HY-SRF05 hỗ trợ hai phương thức kết nối: sử dụng cặp chân Echo/Trigger hoặc chỉ cần một chân Out để phát và nhận tín hiệu Với nhiều thư viện và mã mẫu tích hợp sẵn cho Arduino, cảm biến này trở nên phổ biến và dễ dàng áp dụng trong các dự án IoT và robotica.

Hình 2 8 Cảm biến khoảng cách SRF05Bảng 2 5 Thông số kĩ thuật cảm biến SRF05 [25]

Module Sim 4G A7680C DTU là giải pháp kỹ thuật thay thế module sim sử dụng nền tảng 2G, 3G

Hình 2 9 Module SIM 4G A7680C Bảng 2 6 Thông số kỹ thuật Module Sim 4G A7680C [6]

Bảng 2 7 Mô tả kết nối và phần cứng module sim A7680C [6]

Mạch định vị GPS GY-NEO 6M V2 là một moduleiđịnhivị toànicầu sử dụng hệ thống vệitinh GPSicủa Mỹ Với tốciđộ xáciđịnh vịitrí nhanhivà chínhixác, nó có

15 mức tiêu thụ năng lượng thấp, lý tưởng cho các ứng dụng yêu cầu pin Sử dụng board điều khiển kết nối của hãng U-BLOX, nổi tiếng với kinh nghiệm lâu năm trong sản xuất module định vị toàn cầu.

Hình 2 10 Module SIM GPS NEO 6M V2

Mạch định vị GPS GY-NEO 6M (mẫu GY-GPS6MV2) hoạt động với nguồn cung cấp từ 3V đến 5V, được trang bị ăng-ten sứ cho tín hiệu mạnh và kích thước nhỏ gọn Với tính năng EEPROM ipower-down, mạch có khả năng lưu trữ dữ liệu cấu hình, cùng với pin dự phòng để duy trì dữ liệu và đèn LED báo tín hiệu Kích thước ăng-ten là 12x12mm, trong khi module có kích thước 23mmx30mm và khẩu độ lắp đặt 3mm Tốc độ baud mặc định là 9600, và mạch tương thích với nhiều module điều khiển chuyến bay, cung cấp chức năng kiểm tra máy tính GPS.

Bảng 2 8 Thông số kỹ thuật Module GPS Neo 6M [26]

CÁC CHUẨN GIAO TIẾP

Các chuẩn giao tiếp phổ biến hiện nay bao gồm các chuẩn có dây như UART, SPI, I2C và chuẩn không dây như Wifi, được áp dụng rộng rãi trong các hệ thống tiên tiến.

Chuẩn giao tiếp UART là một giao thức không đồng bộ với tốc độ truyền dữ liệu không cao, nhưng nó nổi bật với sự đơn giản trong kết nối, bao gồm một thiết bị truyền và một thiết bị nhận.

UART hoạt động theo cơ chế truyền dữ liệu giữa thiết bị gửi và thiết bị nhận, với khả năng phản hồi từ thiết bị nhận về thiết bị gửi Mặc dù giao thức 2 dây cho phép khoảng cách truyền tương đối lớn do tốc độ truyền không cao, nhưng việc mở rộng bus kết nối lại là một hạn chế.

Hình 2 19 Giao tiếp UART giữa 2 thiết bị

- Thông thường, tốc độltruyền của UART hoạt động ở các mức như 9600, l19200,

- Giao thứcltruyền UART gồm có 2 chân truyền dữiliệu độcilập với nhaullàiTX (là chân truyềnldữ liệu) vàiRX (là chân nhậnldữiliệu)

- Các dữiliệu nàylđược truyềninhận thông qua cácikhungldữiliệu (data frame) với mộtibit bắtiđầu (startibit), các bit dữiliệu (dataibits), mộtibit kiểmitra chẵnilẽ (parity ibit) và các bit dừngi (stopibits)

Giao thức I2Cilà giao thức nốiitiếp hai dâyido PHILIPSiphát triển, đượcisử dụngiđể kếtinối cácibộ viiđiều khiểnivà cácithiết bịingoạiivi

Giao thức BusiI2C sử dụng hai dây (SDA và SCL) để truyền thông tin giữa bus và thiết bị, cho phép giao tiếp nối tiếp giữa vi điều khiển và các thiết bị ngoại vi, cũng như truyền dữ liệu hai chiều giữa nhiều chủ và nhiều thiết bị Hầu hết các ứng dụng I2C dựa vào hai dây này (SCL và SDA), thường được sử dụng để truyền tín hiệu điều khiển một cách hiệu quả.

I2C là mộtibus đaimaster, vìivậy bất kỳithiết bị nàoicũng cóithể hoạt độnginhư masterivà điềuikhiểnibus Mỗi thiếtibị trên busicó một địaichỉ duyinhất Nhiều bộivi điều khiểnicó thể cùngitồn tạiitrên cùngimột busiI2C

Theo nghiên cứu thực nghiệm, khoảng cách truyền dẫn hiệu quả cho 3-5 thiết bị kết nối qua bus I2C là khoảng 1m Khi khoảng cách tăng lên từ 1-1.5m, dữ liệu bắt đầu bị nhiễu nhiều, và trên 1.5m, dữ liệu không còn khả thi cho 3 thiết bị Do đó, khoảng cách truyền là một hạn chế của giao thức I2C so với giao tiếp UART.

Hình 2 20 Giao tiếp I2C giữa 1 Master và 3 Slaves

Hầu hết các thiết bị hỗ trợ giao tiếp I2C hoạt động ở chế độ tiêu thụ điện năng thấp hoặc có khả năng tương thích với nhiều mức điện áp khác nhau, điều này rất quan trọng trong việc truyền dữ liệu hiệu quả.

Trong khoảng cách 1.5m, cần sử dụng điện trở kéo lên ở vị trí thích hợp để đảm bảo không mất dữ liệu Giá trị của điện trở kéo lên cần nằm trong khoảng Rmin và Rmax.

Bảng 2 14 Thông số kỹ thuật chuẩn giao tiếp I2C [10]

2.5.3 Chuẩn giao tiếp không dây Wifi

WI-FI là giao thức truy cập Internet không dây Wifi ngày nay là một kiểu truyền dữ liệu được sử dụng nhiều và phổ biến nhất

Các chuẩn kết nối Wifi hiện nay [11]:

Chuẩn WiFi 802.11, được IEEE giới thiệu vào năm 1997, đánh dấu sự ra đời của mạng không dây đầu tiên với tốc độ tối đa chỉ 2 Mbps ở băng tần 2.4GHz.

Chuẩn WiFi 802.11b (WiFi 1) ra mắt vào giữa cuối năm 1999, mang đến tốc độ cải thiện lên tới 11Mbps Tuy nhiên, chuẩn này dễ bị nhiễu từ các thiết bị khác do sử dụng cùng băng tần 2.4GHz với thế hệ đầu tiên.

Chuẩn WiFi 802.11a (WiFi 2): Songlsong vớilquáltrình hìnhlthành chuẩnlb, chuẩn 802.11a hoạt động ở băng tần 5GHz để tránhlbịlnhiễultừ cáclthiếtlbịlkhác Tốclđộ xử lílđạt đến 54 Mbps, ltuy nhiênlchuẩn WiFi nàylkhólxuyênlqua cácltường chắn

Chuẩn WiFi 802.11g (WiFi 3): Vào năm 2003, chuẩn WiFi 802.11g được ra mắt và có phầnlhơn so vớilchuẩn b, chuẩn này cũng hoạtlđộng ở băng tần 2.4GHz Chuẩnlnày có thểlxửllý tốclđộ lên đến 54lMbps

- Hình 2 21 Chuẩn giao tiếp không dây Wifi

Chuẩn WiFi 802.11n (WiFi 4), ra mắt vào năm 2009, hiện là chuẩn WiFi phổ biến nhất nhờ vào hiệu suất vượt trội so với các chuẩn trước đó như 802.11b và 802.11g Với tốc độ tối đa lên tới 300Mbps, chuẩn này hỗ trợ hoạt động trên cả hai băng tần 2.4 GHz và 5 GHz, giúp cải thiện phạm vi phát sóng và tốc độ kết nối WiFi 802.11n đang dần thay thế chuẩn 802.11g nhờ những ưu điểm vượt trội của nó.

Chuẩn WiFi 802.11ac (WiFi 5) được IEEE giới thiệu vào năm 2013, hoạt động trên băng tần 5 GHz và sử dụng công nghệ MIMO, cho phép đạt tốc độ truyền dữ liệu cao nhất lên tới.

Chuẩn WiFi 802.11ad: Được ra đời vào năml2014, chuẩnlWiFi 802.11adlhỗltrợ bănglthông lên tới 70lGbps và hoạtlđộng ở dảiltần 60 GHz

Chuẩn WiFi 802.11ax, hay còn gọi là WiFi 6, là phiên bản mới nhất của giao thức mạng không dây, mang lại tốc độ nhanh hơn, dung lượng lớn hơn và hiệu suất năng lượng cải thiện so với các chuẩn WiFi trước.

WiFi Hotspot: Ngoài các chuẩn WiFi hiện có, mỗi thiết bị di động đều có khả năng phát sóng WiFi cho các thiết bị khác Nói cách khác, thiết bị di động có thể được xem như một router.

2.5.4 Chuẩn giao tiếp ESP-NOW

ESP-NOW là giao thức không dây độc quyền cho việc truyền dữ liệu giữa các thiết bị ESP8266 và ESP32, do Espressif Systems phát triển Giao thức này cho phép các thiết bị truyền dữ liệu trực tiếp với nhau mà không cần thông qua trạm trung gian, mang lại hiệu suất cao và giảm độ trễ trong việc truyền tải thông tin.

Router Wi-Fi 26 giúp giảm thiểu độ trễ và tiết kiệm năng lượng hơn so với việc sử dụng Wi-Fi truyền thống Giao thức của nó tương tự như kết nối không dây 2.4GHz với công suất thấp.

TỔNG QUAN VỀ CÔNG NGHỆ IOT

IoT là công nghệ kết nối các thiết bị điện tử và cảm biến với internet, cho phép giao tiếp và trao đổi dữ liệu tự động Công nghệ này thu thập và xử lý thông tin, thực hiện hành động mà không cần can thiệp của con người, với ứng dụng rộng rãi trong y tế, nhà thông minh, công nghiệp, nông nghiệp và vận tải IoT giúp tối ưu hóa quy trình, giảm lãng phí và mở ra cơ hội cho các ứng dụng mới, cải thiện chất lượng cuộc sống và thúc đẩy phát triển bền vững Tuy nhiên, bảo mật và quyền riêng tư là thách thức lớn cần được giải quyết để đảm bảo an toàn cho các hệ thống IoT Dự đoán trong tương lai, IoT sẽ tiếp tục phát triển và trở thành phần thiết yếu trong cuộc sống hàng ngày, mang lại lợi ích và cơ hội mới cho xã hội và kinh tế toàn cầu.

29 Ứngldụng của IoT rất đa dạng và được triểnlkhai trong nhiều lĩnhlvực khác nhau:

• Trong đời sống: IoT được sử dụng rộng rãi trong nhà thông minh, vận chuyển tự động, quản lý điện năng, cung cấp nước và quản lý môi trường

Trong ngành công nghiệp, IoT đóng vai trò quan trọng trong việc giám sát quy trình sản xuất nhờ vào các cảm biến và dây chuyền tự động Công nghệ này cho phép thu thập dữ liệu từ máy móc, giúp người quản lý điều khiển và theo dõi hoạt động sản xuất từ xa thông qua web hoặc ứng dụng di động.

Công nghệ IoT đang trở thành xu hướng không thể thiếu trong các hệ thống hiện đại Việc phát triển các hệ thống IoT không chỉ nâng cao chất lượng cuộc sống mà còn mang lại sự tiện lợi tối đa cho con người.

TỔNG QUAN VỀ GOOGLE FIREBASE

Firebase là nền tảng phát triển ứng dụng di động và web do Google phát triển, cung cấp nhiều công cụ và dịch vụ hỗ trợ cho nhà phát triển Với Firebase, nhà phát triển có thể sử dụng Realtime Database để đồng bộ dữ liệu thời gian thực, Authentication để quản lý đăng nhập và xác thực người dùng, cùng Cloud Firestore để lưu trữ và truy vấn dữ liệu linh hoạt Bên cạnh đó, Firebase Hosting cho phép triển khai ứng dụng web và tĩnh nhanh chóng, tạo điều kiện thuận lợi cho quá trình phát triển.

Firebase cung cấp nhiều dịch vụ hữu ích như Firebase Storage để lưu trữ và quản lý tệp, Cloud Functions cho phép viết và triển khai mã máy chủ mà không cần quản lý cơ sở hạ tầng Ngoài ra, các công cụ phân tích tích hợp như Analytics giúp hiểu rõ hành vi người dùng, trong khi Performance Monitoring hỗ trợ giám sát và tối ưu hóa hiệu suất ứng dụng Firebase cũng có Crashlytics, công cụ theo dõi và báo cáo lỗi, giúp nhà phát triển nhanh chóng phát hiện và khắc phục các vấn đề trong ứng dụng.

30 chónglvà dễldàng Tóm lại, Firebase là một giải pháp toàn diện và mạnh mẽ cho việc phát triển ứng dụng di động và web

Firebase can be accessed at [https://firebase.google.com](https://firebase.google.com) It offers two widely used applications: the Realtime Database for real-time data storage and the Firestore Database for scalable cloud storage solutions.

Firebase Realtime Database là giải pháp lý tưởng để lưu trữ dữ liệu tạm thời cho các dự án quy mô vừa và nhỏ, đặc biệt là cho đồ án sinh viên Nó cho phép người dùng tương tác (đọc/ghi) dễ dàng với các ứng dụng trên Android, web và Winform trên Windows Dữ liệu được tổ chức theo cấu trúc phân nhánh và luôn được cập nhật liên tục khi có yêu cầu truy xuất theo thời gian thực.

TỔNG QUAN CÁC CÔNG CỤ XÂY DỰNG VÀ LẬP TRÌNH NÊN HỆ THỐNG

2.8.1 Giới thiệu về nền tảng Roboflow

Roboflow là nền tảng hỗ trợ xử lý dữ liệu hình ảnh và huấn luyện mô hình học sâu cho các ứng dụng thị giác máy tính Nền tảng này được thiết kế để đơn giản hóa và tăng tốc quá trình phát triển dự án thị giác máy tính, cung cấp nhiều công cụ và dịch vụ giúp người dùng thu thập, chú thích, xử lý và huấn luyện dữ liệu hình ảnh Một trong những tính năng chính của Roboflow là quản lý dữ liệu hình ảnh, cho phép người dùng tải lên và quản lý bộ dữ liệu hình ảnh một cách dễ dàng, hỗ trợ nhiều định dạng tệp và cung cấp các công cụ để sắp xếp và quản lý hình ảnh hiệu quả.

Nền tảng này cung cấp các công cụ trực quan cho việc chú thích hình ảnh, bao gồm khả năng vẽ bounding box, phân vùng hình ảnh (segmentation) và chú thích theo điểm (keypoint annotation).

Hình 2 29 Giao diện nền tảng Roboflow

Tăng cường dữ liệu (Data Augmentation) là một kỹ thuật quan trọng mà Roboflow sử dụng để tạo ra các phiên bản biến đổi của hình ảnh gốc, nhằm nâng cao độ chính xác của mô hình Các phương pháp tăng cường này bao gồm xoay, lật, cắt, thay đổi độ sáng và nhiều kỹ thuật khác.

Chuyển đổi dữ liệu (Data Transformation) là quá trình mà người dùng có thể điều chỉnh dữ liệu hình ảnh để đáp ứng yêu cầu cụ thể của mô hình học máy Các phương pháp này bao gồm thay đổi kích thước, chuẩn hóa màu sắc và áp dụng các bộ lọc khác nhau.

Huấn LuyệnlMô Hình: Roboflow tích hợplvới nhiều framework họclsâu phổ biến như TensorFlow, PyTorch, và YOLO, giúp người dùng dễ dàng xuấtldữ liệu và huấn luyện mô hình củalmình

Sau khi hoàn tất quá trình huấn luyện mô hình, Roboflow cung cấp các công cụ cần thiết để triển khai mô hình vào sản xuất Điều này bao gồm API cho phép tích hợp mô hình vào các ứng dụng và dịch vụ của bên thứ ba.

Roboflow được ứng dụng rộng rãi trong nhiều lĩnh vực như nhận dạng đối tượng, phân loại hình ảnh, phát hiện sự kiện bất thường và nhiều ứng dụng khác trong thị giác máy tính Nền tảng này hỗ trợ cả người dùng cá nhân và doanh nghiệp trong việc phát triển và triển khai các giải pháp AI dựa trên hình ảnh một cách nhanh chóng và hiệu quả.

2.8.2 Giới thiệu về Google Colab

Google Colab là dịch vụ miễn phí của Google, cho phép người dùng tạo và chia sẻ notebook Jupyter trên đám mây mà không cần cài đặt phần mềm Dịch vụ này hoàn toàn miễn phí và tích hợp với Google Drive, giúp lưu trữ và quản lý các notebook một cách dễ dàng.

Liên quan đến MachinelLearning, Google Colab còn là một dịch vụ cunglcấp môi trường lậpltrình và trainlmô hình machinellearning hoàn toànlmiễn phí, được cunglcấp bởi Google

Những ưu điểm mà Google Colab mang đến cho người dùng như sau [16]:

- Cung cấp dịch vụ miễn phí và dễ dàng truy cập

- Hỗ trợ GPU và TPU để tăng tốc quá trình huấn luyện mô hình máy học và học sâu (machine learning và deep learning)

- Cho phép tạo và sử dụng các notebook Jupyter, một môi trường phổ biến cholviệc phânltích dữlliệu, thí nghiệm và viết mã Python tương tác

- Colab tích hợp tốt với Google Drive, cho phép lưu trữ và chia sẻ các notebook của mình một cách dễ dàng

- Colab hỗ trợ nhiều thư viện và module phổ biến trong cộng đồng Python, bao gồm NumPy, Pandas, Matplotlib, TensorFlow, PyTorch, và nhiều thư viện khác

- Có thể tích hợp Colab với GitHub để mở notebook trực tiếp từ kho lưu trữ của mình trên GitHub

Hình 2 30 Giao diện thực hiện các lệnh trên Google Colab

2.8.3.1 Giới thiệu về phát hiện đối tượng

Phát hiện đối tượng là một kỹ thuật quan trọng trong lĩnh vực thị giác máy tính và trí tuệ nhân tạo, được sử dụng để xác định và định vị các đối tượng trong hình ảnh hoặc video Kỹ thuật này không chỉ phát hiện các đối tượng xuất hiện trong khung hình mà còn xác định vị trí cụ thể của từng đối tượng thông qua các hộp giới hạn (bounding boxes).

Kết quả của quá trình phát hiện đối tượng là giá trị tọa độ của các đối tượng trong khung cảnh đã được huấn luyện trước đó Đồng thời, việc phát hiện đối tượng cũng cung cấp mức độ tin cậy cho hệ thống trong việc dự đoán chính xác.

Hình 2 31 Hình ảnh minh họa Input và Output của phát hiện đối tượng

2.8.3.2 Các thuật toán phát hiện đối tượng phổ biến

❖ Phương pháp mô tả đặc trưng – HOG [19]

Phương pháp HOG (Histogram of Oriented Gradients) là một trong những kỹ thuật mô tả đặc trưng và phát hiện đối tượng ra đời sớm nhất vào năm 1986 Mục đích của phương pháp này là trích xuất các đặc trưng của đối tượng và loại bỏ những thông tin không hữu ích, giúp cải thiện độ chính xác trong nhận diện và phân loại đối tượng.

HOG dựa trênlviệc phânlchia các ảnh đầulvào thành các tập ảnhlcon, tính toán histogramlcủa ảnh để tổnglhợp và tríchlxuất ra cáclvector gọi làlvector đặcltrưng ứnglvới từng đốiltượng

Hình 2 32 Cấu trúc hoạt động của HOG

Toán tử HOG phân chia ảnh đầu vào thành các vùng nhỏ gọi là Cell, sau đó thực hiện tính toán Histogram cho mỗi Cell Các Histogram này được ghép lại để biểu diễn cho bức ảnh đầu vào Để nâng cao khả năng nhận dạng, các histogram được chuẩn hóa về độ tương phản thành các khối (blocks) Kết quả sau bước chuẩn hóa sẽ là một vector đặc trưng mang tính đặc trưng HOG.

❖ Mạng nơ ron tích chập theo vùng (R-CNN) [17]

Mạng nơ-ron tích chập theo vùng (R-CNN) là một công nghệ tiên tiến trong lĩnh vực thị giác máy tính, đặc biệt hiệu quả trong nhận diện và phát hiện đối tượng Kỹ thuật này kết hợp các khái niệm từ mạng nơ-ron tích chập với các phương pháp phát hiện đối tượng truyền thống, tạo ra một mô hình mạnh mẽ cho việc phát hiện đối tượng trong hình ảnh.

Hình 2 33 Cấu trúc hoạt động của R-CNN

- Đầu tiên, R-CNN sử dụng thuậtltoán Selective Search để tạolra các vùng đề xuất (RegionlProposal) trong hìnhlảnh đầu vào

- Các vùng đềlxuất đó được đưa vàolmột mạnglCNN để tríchlxuất các đặcltrưng của vùng đó Mạng CNN này có thể là mộtlmạng đã được huấnlluyện trước (pre- trained)

Sau khi trích xuất đặc trưng, mỗi vùng đề xuất được phân loại bằng mạng nơ ron Fully Connected Network để xác định xem vùng đó có đối tượng hay không và đối tượng đó thuộc loại nào.

- Đồng thời, một bộ điềuchỉnh bouding box được áp dụng để tinh chỉnh vị trí của hộp giới hạn dựa trên đặc trưng của vùng đó

YOLO (You Only Look Once) là một mô hình học sâu nổi bật trong lĩnh vực nhận diện vật thể và phát hiện đối tượng trong hình ảnh và video Mô hình này được xây dựng dựa trên các mạng nơ-ron, cho phép xử lý hình ảnh nhanh chóng và hiệu quả.

CNN và sử dụng kiếnltrúc mạng phức tạp để phânlloại và dự đoán vịltrí của các vật thể trong hìnhlảnh hoặc video một cách nhanhlchóng và chính xác

Mô hình được giớilthiệu lần đầu bởi Joseph Redmon và các cộnglsự vào năm

Năm 2016, YOLO đã nổi bật với khả năng phát hiện đối tượng theo thời gian thực với độ chính xác cao Điểm khác biệt lớn giữa YOLO và các mô hình học sâu trước đó là khả năng đưa ra dự đoán cho toàn bộ quá trình trong một lần chạy, bao gồm việc xác định vị trí và phân loại đối tượng.

Hình 2 35 Cấu trúc hoạt động của YOLO

- Các hìnhlảnh đầu vào được phânlchia thành các ô lướilnhỏ có các kích thước SxS ( ví dụ 13x13, 19x19)

- Sửldụng mạng CNN nhận các hìnhlảnh đầu vào và thựclhiện các phép biếnlđổi sử dụng tíchlchập để trích xuấtlcác đặc trưng từ ảnh

THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG

YÊU CẦU VÀ SƠ ĐỒ KHỐI HỆ THỐNG

3.1.1 Yêu cầu của hệ thống

Nhóm đã thiết kế và thi công hệ thống điều khiển xe thông minh với các chức năng cơ bản nhằm giải quyết những vấn đề đặt ra trong đề tài.

➢ Cho phép xe hoạt động ở 2 chế|độ độc lập: chế|độ tự hành và chế|độ điều|khiển cơ

➢ Ở chế độ tự hành xe sẽ di chuyển theo sự chỉ dẫn của các biển báo hiệu giao thông và đèn tín hiệu giao thông

Hệ thống nhận diện đối tượng trên xe có khả năng phát hiện các biển báo giao thông và đèn tín hiệu quan trọng thông qua camera gắn ở phía trước, giúp tăng cường an toàn khi lái xe.

Sau khi nhận diện, hệ thống cần phân loại các đối tượng để hiểu rõ hơn và đưa ra các phản ứng phù hợp Việc phân loại này giúp nâng cao khả năng xử lý thông tin và tối ưu hóa các hành động phản ứng.

Khi gặp các biển báo giao thông như biển chỉ dẫn đi thẳng, biển báo rẽ, biển dừng (stop), biển dành cho người đi bộ và đèn tín hiệu giao thông, xe cần thực hiện các hành động phù hợp để đảm bảo an toàn và tuân thủ luật lệ.

➢ Chế độ điều khiển cơ cho phép người dùng điều khiển hướng xe và kiểm soát tốc độ của xe bằng tay cầm điều khiển

➢ Tại màn hình hiển thị, người dùng có thể quan sát được chế độ hoạt động hiện tại của xe

Để đảm bảo an toàn cho người dùng, việc thu thập các giá trị đo từ cảm biến vật cản phía trước xe là rất quan trọng Hệ thống sẽ nhanh chóng đưa ra cảnh báo khi phát hiện nguy cơ va chạm, giúp người lái có thời gian phản ứng kịp thời.

➢ Người dùng có thể cập nhật vị trí của xe từ tin nhắn được gửi từ hệ thống thông qua số điện thoại được cài đặt trước

Đo lường dung lượng pin của hệ thống và hiển thị mức dung lượng giúp người dùng kịp thời nạp lại pin khi ở dưới mức cho phép, từ đó duy trì tuổi thọ pin hiệu quả.

Người dùng có thể dễ dàng chuyển đổi giữa hai chế độ hoạt động của xe bằng cách sử dụng công tắc và nhấn nút reset, giúp hệ thống hoạt động ổn định hơn.

Mục tiêu đề ra ban đầu:

Hệ thống có khả năng phát hiện và nhận diện nhanh chóng các loại biển báo và đèn tín hiệu giao thông, từ đó đưa ra các hành động điều khiển xe phù hợp.

- Hệ thống có thể chuyển đổi linh hoạt giữa hai chế độ hoạt động nhanh chóng

- Hệ thống phải hoạt động ổn định và có tốc độ phản hồi nhanh

Giảm thiểu nhiễu trong môi trường có nhiều sóng điện từ là yếu tố quan trọng để nâng cao tốc độ phản hồi của xe đối với các lệnh điều khiển.

3.1.2 Sơ đồ khối và chức năng của từng khối

Hình 3 1 Sơ đồ khối hệ thống

Chức năng của các khối:

Khối nguồn cung cấp điện ổn định cho hệ thống lớn với các mức điện áp khác nhau như 16.8VDC, 12VDC và 5VDC, là rất quan trọng để đảm bảo mỗi phần cứng hoạt động tối ưu Việc duy trì điện áp ổn định là bắt buộc, vì nếu điện áp biến đổi, dữ liệu truyền đi có thể bị sai lệch, dẫn đến lỗi trong toàn bộ quá trình vận hành hệ thống.

- Khối chuyển chế độ: Thực hiện chuyển đổi công tắc để xử lí tác vụ cho phép người dùng chuyển đổi chế độ vận hành của hệ thống

- Khối nút nhấn: Thực hiện nhấn phím truyền dữ liệu để xử lý các tác vụ cho phép người dùng reset hệ thống

Khối đo khoảng cách sử dụng cảm biến phát hiện vật cản để xác định khoảng cách từ một vật thể gần bằng sóng siêu âm Dữ liệu thu được sẽ được gửi đến bộ xử lý trung tâm để thực hiện các tác vụ tiếp theo.

Khối định vị GPS sử dụng module GPS để thu thập dữ liệu vị trí và đồng bộ thời gian thực Dữ liệu này sau đó được gửi đến bộ xử lý trung tâm 1 để thực hiện các tác vụ tiếp theo.

- Khối gửi tin nhắn: Gửi vị trí của thiết bị về số điện thoại người dùng thông qua tin nhắn SMS

Khối điều khiển động cơ nhận tín hiệu điều khiển từ khối xử lý trung tâm 1 để điều chỉnh tốc độ và hướng quay của các động cơ.

- Khối cảnh báo: Đưa ra tín hiệu hiệu cảnh báo khi có vật cản phía trước thiết bị

- Khối hiển thị: Dùng để hiển|thị các thông|tin cần|thiết về chế độ hoạt động

- Khối Camera: Thu thập dữ liệu hình ảnh môi trường xung quanh, sau đó dữ liệu được gửi đến khối xử lí ảnh thông qua khối Internet

Khối Internet đóng vai trò trung gian giữa khối xử lý trung tâm 1 và khối Firebase, cho phép chúng giao tiếp và truyền nhận dữ liệu Ngoài ra, khối này còn thu thập dữ liệu từ camera để hỗ trợ khối xử lý ảnh trong việc nhận dạng và phát hiện vật thể.

Khối xử lý ảnh sử dụng video từ camera qua Internet, thực hiện các tính toán trên máy tính và gửi lệnh tương ứng đến cơ sở dữ liệu Firebase thông qua kết nối Internet.

THIẾT KẾ HỆ THỐNG

ESP32-CAM AI Thinker là một module tích hợp camera, cho phép kết nối Wifi và Bluetooth Với nhiệm vụ quan sát và thu thập dữ liệu hình ảnh, cũng như nhận dạng biển báo giao thông và đèn giao thông, nhóm đã quyết định sử dụng ESP-32 AI Camera Thinker.

ESP32-Cam AI Thinker được tích hợp một vi xử lý

ESP32, cho phép khối camera

ESP32-CAM là một thiết bị mạnh mẽ, dễ dàng thực hiện các nhiệm vụ xử lý dữ liệu và giao tiếp mạng Với camera OV2640 2 megapixel, nó cho phép chụp hình và ghi video với chất lượng hình ảnh tương đối tốt.

Hình 3 2 Sơ đồ nguyên lí khối Camera

Về kết nối sơ đồ nguyên lí hình 3.2, ESP32 CAM được cấp nguồn đầu vào 5VDC thông qua các chân 5V và GND

ESP32-Cam AI Thinker là giải pháp mạnh mẽ cho việc quan sát và nhận diện biển báo giao thông cũng như đèn giao thông trong ứng dụng xe tự hành Việc kết hợp với các thư viện như ESP32 Camera Library, TensorFlow và OpenCV giúp đơn giản hóa quá trình triển khai và tối ưu hóa hệ thống nhận dạng.

Hệ thống xe tự hành không tích hợp các thuật toán tránh vật cản do yêu cầu phải tuân thủ biển báo và đèn giao thông Vì vậy, cần thiết kế thêm khối cảnh để nâng cao khả năng vận hành của hệ thống.

48 báo, nhiệm vụ phát ra cảnh báo khi gặp vật cản ở khoảng cách nhỏ hơn khoảng cách an toàn cho phép

Việc truyền tínlhiệu điều khiển từ

Việc I/O trực tiếp đến Buzzer không được khuyến khích do nguy cơ hư hỏng nếu Buzzer tiêu thụ dòng tải cao trong thời gian dài Do đó, cần có một linh kiện để nhận tín hiệu điều khiển từ khối xử lý trung tâm và cho phép Buzzer hoạt động Hệ thống được thiết kế thêm một Transistor NPN để đảm bảo hoạt động an toàn và hiệu quả.

C1815 đểlnhận tín hiệulđiều khiển từ khối xử lý trung tâm 1, từ đólđiều khiển Buzzer

Hình 3 3 Sơ đồ nguyên lí khối cảnh báo

Bảng 3 1 Thông số kỹ thuật 2SC1815 [31]

• Trasistor dẫn bão hòa khi 𝐼𝐵 > 𝐼𝐶 β

R8 là giá trị điện trở tại thời điểm Transistor bắt đầu dẫn bão hòa Từ đó, điện trở R8 được tính toán dựa theo công thức:

- VOH: điện áp mức cao từ IO của MCU (khoảng 5VDC)

- Vdrop: VBE(sat) của Transistor

- Ic: Dòng qua cực thu

Vcc từ vi điều khiển thường là 5 VDC, trong khi Buzzer tiêu thụ dòng tối đa 30mA, dẫn đến Icollector = 30mA Hệ số khuếch đại hFE của Transistor 2SC1815 thường là 100 Dựa vào bảng thông số của C1815 và công thức tính điện trở, giá trị R8 được xác định qua các phép tính cụ thể.

Vì vậy, lấy giá trị R8 = 10 KΩ là hoàn toàn hợp lí

3.2.3 Khối hiển thị Đối với khối hiển thị trạng thái qua các màn hình kết nối trực tiếp, với mục đích để so sánh với các trạng thái hiển thị lên các thiết bị khác, nếu có sai lệch sẽ tiến hành phân tích và tối ưu lại lập trình Với sự thông dụng và được ứng dụng đa phần trong các dự án yêu cầu hiển thị đơn giản thì màn hình LCD 16X2 là một sự lựa chọn tối ưu Để tiết kiệm số dây kết nối và đơn giản hóa việc giao tiếp LCD 16X2 sẽ được kết nối với module I2C

Moulde I2C sử dụng chuẩn giao tiếp I2C, các chân của module theo thứ tự SCL và

SDA sẽ được kết nối với SCL và SDA của khối xử lý trung tâm, thể hiện rõ ràng qua sơ đồ nguyên lý.

Hình 3 4 Sơ đồ nguyên lí khối hiển thị

Màn hình LCD 16x2 là giải pháp hiển thị hiệu quả cho việc trình bày thông tin hệ thống Kết hợp với các thư viện hỗ trợ như LiquidCrystal và Wire, việc triển khai và tối ưu hóa hệ thống hiển thị trở nên dễ dàng hơn.

Hệ thống yêu cầu một nút nhấn để thực hiện việc reset, và nút nhấn này được kết nối theo sơ đồ nguyên lý hình 3.5 Để đảm bảo giao tiếp hiệu quả giữa nút nhấn và phần mềm, cần xác định trạng thái của nút nhấn khi được nhấn và không nhấn Do đó, nhóm đã sử dụng một điện trở kéo lên (pull up) ở ngõ vào của nút nhấn, giúp nhận diện trạng thái của nút dựa trên giá trị điện áp.

Khi nút nhấn không được kích hoạt, điện trở pull-up sẽ kéo chân nút nhấn lên mức điện áp nguồn Vcc, đảm bảo tín hiệu đọc được là HIGH Ngược lại, khi nút nhấn được nhấn, chân đó sẽ được nối đất, dẫn đến tín hiệu đọc được là LOW.

Khi chọn giá trị điện trở pull-up, cần xem xét các yếu tố như điện áp, dòng điện tiêu thụ và độ nhạy tín hiệu Với điện áp Vcc từ vi điều khiển là 5VDC và điện trở pull-up là 10KOhm, ta có thể tính toán dòng điện tiêu thụ của nút nhấn.

Dòng điện tiêu thụ của mối nút nhấn là 0,5mA, đủ nhỏ để tiết kiệm năng lượng nhưng vẫn duy trì tín hiệu ở mức HIGH Điện trở 10K ohm giúp chống lại nhiễu điện từ và đảm bảo mức tín hiệu ổn định Do đó, giá trị điện trở pull-up được chọn là hoàn toàn phù hợp.

3.2.5 Khối điều khiển động cơ

Hệ thống điều khiển xe sử dụng 4 động cơ DC, với Module L298N giúp kiểm soát hướng quay và tốc độ của các động cơ Sơ đồ kết nối giữa các động cơ DC và module L298N được trình bày dưới đây.

Hình 3 6 Sơ đồ nguyên lí khối điều khiển động cơ

Module L298N là cầu H kép, cho phép điều khiển độc lập hai nhóm động cơ DC Tại ngõ ra OUT1 và OUT2, hai động cơ được kết nối và gọi là động cơ A, trong khi OUT3 và OUT4 kết nối với hai động cơ còn lại, gọi là động cơ B Động cơ A và B được lắp ở hai bên thân xe, giúp điều khiển hướng quay và tốc độ xe thông qua việc điều khiển các động cơ này.

THI CÔNG – TÍNH TOÁN – LẬP TRÌNH CHO HỆ THỐNG

THI CÔNG HỆ THỐNG THỰC TẾ

Sau khi hoàn tất thiết kế sơ đồ nguyên lý và sơ đồ khối chức năng, nhóm đã thực hiện các tính toán cần thiết cho phần cứng Tiếp theo, nhóm tiến hành thi công mô hình phần cứng cho toàn bộ hệ thống Dưới đây là hình ảnh mô hình toàn hệ thống sau khi hoàn tất thi công.

Hình 4 1 Mô hình hệ thống sau khi thi công

Hình 4 2 Mặt trước mô hình

Hình 4 3 Mô hình tay cầm điều khiển sau khi thi công

Hình 4 4 Mặt sau mô hình

Bảng 4 1 Mô tả hệ thống

1 Vị trí led hiển thị kết nối wifi của hệ thống

2 Vị trí đặt ăn-ten thu sóng module SIM

3 Ví trí đặt công tắc chuyển đổi chế độ

4 Vị trí đặt nút nhấn dùng để reset hệ thống

5 Vị trí đặt khối nguồn cho hệ thống và các module điều hướng và một số module khác của phần cứng hệ thống

6 Vị trí màn hình LCD dùng để hiển thị trạng thái hoạt động của hệ thống

7 Vị trí đặt ăn-ten thu sóng GPS

8 Vị trí đặt esp camera

9 Vị trí đặt cảm biến siêu âm phát hiện vật cản

10 Vị trí đặt các động cơ và bánh xe điều hướng

11 Vị trí đặt module hiển thị mức dung lượng pin

12 Vị trí đặt module giảm áp, |cung cấp nguồn cho hệ thống hoạt động

13 Vị trí đặt bộ xử lí trung tâm cho hệ thống điều khiển cơ và nơi để cấp nguồn cho hệ thống hoạt động thông qua cổng micro usb

14 Vị trí led hiển thị trạng thái kết nối esp now ở hệ thống điều khiển cơ

13 Vị trí đặt các Joystick.

TẠO TỆP DATASET VỚI ROBOFLOW

Bước 1: Truy cậplvào trang chủlRoboflow , ấn tạoldự án mới để bắt đầuldự án mới

Hình 4 5 Truy cập vào Roboflow

Bước 2: Điền vào tên dự án, giữ giấy phép 4.0 Sau đó, tại nhóm chú thích điền vào tên các đối tượng cần dự đoán

Hình 4 6 Điền thông tin khởi tạo dự án trên Roboflow

Chọn dự án Object Detection, nhóm thực hiện gán nhãn cho các đối tượng như biển báo giao thông và đèn tín hiệu Các nhãn được gán bao gồm: Green, Red, Yellow, GoStraight, Stop, Crossing, và TurnRight.

Hình 4 7 Create để tạo dự án

Sau khi hoàn tất các thông tin cơ bản, Click Create Public để tạo dự án và bắt đầu các công việc tiếp theo

Bước 3: Tải lên tệp dữ liệu đã chuẩn bị và chờ hệ thống xử lý hình ảnh.

Hình 4 8 Tải lên tệp dữ liệu cần gán nhãn

Sau khi hoàn tất việc xử lý tệp ảnh, hãy vẽ khung chữ nhật bao quanh từng đối tượng và gắn nhãn tương ứng cho chúng Tiếp tục thực hiện quy trình này cho tất cả các tệp ảnh đã được tải lên.

Hình 4 9 Thực hiện gán nhãn cho hình ảnh

Bước 5: Tănglcường và phânlchia tệp dữ liệu

Sau khi hoàn tất gán nhãn cho tệp dữ liệu hình ảnh, tiến hành phân chia tệp dữ liệu thành 3 tệp riêng lẻ: “Train”, “Valid” và “Test” Giữ tỉ lệ phần trăm như mặc định và nhấn vào nút Save.

Hình 4 10 Các bước tăng cường và phân chia tệp dữ liệu sau khi gắn nhãn

Xử lý trước hình ảnh là bước quan trọng để điều chỉnh kích thước hình ảnh sao cho phù hợp với mô hình huấn luyện Trong bài viết này, nhóm đã sử dụng mô hình YOLO v8 để tiến hành huấn luyện, nhằm tối ưu hóa hiệu suất nhận diện đối tượng.

67 đổi kích thước hình ảnh thành 640x640 theo như nhà sản xuất yêu cầu để cho ra kết quả huấn luyện được tốt nhất

Hình 4 11 Xử lí hình ảnh trước khi xuất tệp dữ liệu

Để cải thiện độ đa dạng của tập dữ liệu huấn luyện, bạn có thể tăng số lượng hình ảnh bằng cách áp dụng các kỹ thuật như xoay, làm mờ và cắt Việc này giúp tạo ra nhiều biến thể hình ảnh khác nhau, từ đó nâng cao hiệu quả của quá trình huấn luyện.

Hình 4 12 Tăng số lượng hình ảnh huấn luyện

Bước 7: Sau khi hoànltất các bước resizelhình ảnh và gialtăng hình ảnh cho tệp dataset, nhấn vàolnút Create để xuất tệp dataset

Hình 4 13 Create để tạo tệp dữ liệu huấn luyện

Bước 8: Lựa chọn tệp theo định dạng tương thích với mô hình huấn luyện Vì nhóm đang tiến hành huấn luyện với mô hình YOLO v8, nên tệp sẽ được xuất ra với định dạng YOLO v8.

Hình 4 14 Xuất file với định dạnh YOLO v8

Sau khi hoàn tất quá trình tạo dataset, file zip vừa được tải về sẽ được đem đi huấn luyện với mô hình YOLO trên nền tảng google colab.

TRAIN MODEL VỚI GOOGLE COLAB

Để có thể huấn luyện tệp dataset đã được tạo ở mục 4.2 với mô hình học sâu YOLO v8, tiến hành thựclhiện theo các hướng dẫn sau:

Để chuẩn bị môi trường cài đặt và huấn luyện cho YOLO v8, nhóm đã sử dụng Google Colab nhằm tận dụng các tài nguyên miễn phí mà Google cung cấp Các bước sử dụng Google Colab được thực hiện như sau:

Bước 1: Truy cập vàolđường dẫn https://colab.research.google.com/?utm_source=scs- index sẽ thấy mộtlgiao diện tổng quanlcủa GooglelColab như hình bên dưới

Hình 4 15 Truy cập vào Google Colab

Thực hiện khởiltạo một notebooklmới Notebook nàylsẽ là giao diệnlchính để thực hiện viết cácldòng lệnh Pythonlcho việclhuấn luyệnlmodel vớilYOLO

Bước 2: Thực hiện thaylđổi runtime của notebook từ CPUlsang GPU theo thứltự các bước như hình 4.16

Hình 4 16 Thực hiện thay đổi Runtime

Bước 3: Cuối cùng, để có thể thựclhiện viết các dòng lệnh pythonltrên notebook nàylta cần khởi chạylnotebook Các bước khởilchạy notebook được thựclhiện theo các bước như hình 4.17:

Hình 4 17 Khởi tạo kết nối GPU

Bước 4: Tại googleldrive đã liên kết với googlelcolab, thực hiện xâyldựng thư mục chứa các filelcần thiết trước khilthực hiện quá trình huấn luyện

Hình 4 18 Xây dựng các file cần thiết để huấn luyện với YOLO v8

1: Thưlmục chứa tệp dữ liệu hình ảnh được tải về từ roboflow như đã đề cập ở mục 4.2 2: Thư mụclyaml chứa các thông tin về bộldữ liệu huấnlluyện

3: Thư mụclchính chứa các dòngllệnh python cholviệc huấn luyện

Hình 4 19 Cấu trúc tệp dữ liệu

- Tại mỗi thựlmục test, train, val đều có chứa mộtlthự mục images và label

- Với thưlmục images chứa cáclfile ảnh (.jpg, png, jpec)

- Với thưlmục label chứa các file txt tương ứnglvới mỗi ảnh trongltệp images

Hình 4 20 Thông tin về tệp Yaml

Bước 5: Thực hiện khởilchạy quá trình huấn luyệnltheo thứ tự trong hình 4.21:

- Tại notebook trên colab thực hiện khởi chạy các dòng lệnh sau:

Hình 4 21 Cài đặt thư viện cho YOLO v8

- 1: Thực hiện chạy đoạn lệnh này để liên kết notebook với google drive

- 2: Thực hiện chạy đoạn lệnh này để trỏ đến thư mục gốc chứa các file tại bước 4

Trước khi khởi chạy YOLO v8, bạn cần cài đặt các gói thư viện cần thiết để đáp ứng yêu cầu của nó Mã nguồn YOLO v8 được phát triển dựa trên nhiều gói hỗ trợ thư viện khác nhau.

Vì vậy để chạy được YOLO v8 cần cài đặt gói thự viện Ultralytics theo đề xuất của YOLO v8 Và cài đặt thư viện Ultralytics thông qua một lệnh pip

Hình 4 22 Huấn luyện model với YOLO v8

- 1: import thư viện os để làm việc với hệ thống tệp tin của máy tính

- 2: import YOLO từ thư viện Utralytics đã được cài đặt ở trên

- 3: tải pre-trained từ nhà sản xuất cho lần huấn luyện đầu tiên Ở các lần huấn luyện sau đó, thay thế bằng file last.pt

Hình 4 23 Sao lưu dữ liệu sau khi kết thúc huấn luyện

Chạy dòng lệnh ở hình 4.23 để thực hiện sao chép lại các kết quả sau khi quá trình huấn luyện kết thúc sang google drive.

LƯU ĐỒ GIẢI THUẬT CỦA HỆ THỐNG

4.4.1 Lưu đồ giải thuật khối xử lí trung tâm 1

Hình 4 24 Lưu đồ giải thuật khối xử lí trung tâm 1

Khi bắt đầu cấp nguồn, hệ thống sẽ thực hiện các cấu hình và khởi tạo ban đầu

Hệ thống sẽ thực hiện lấy vị trí tọa độ và gửi về số điện người dùng thông qua tin nhắn sau những khoảng thời gian cố định

Thực hiện chuyển đổi qua lại giữa chế độ Manual và Auto bằng công tắc trên thiết bị

4.4.2 Lưu đồ giải thuật chế độ Manual

Hình 4 25 Lưu đồ giải thuật chế độ Manual

Trong chế độ Manual, thiết bị sẽ ngắt kết nối với wifi và khởi tạo giao thức esp-now Lúc này, chế độ wifi được đặt thành AP với SSID là thiết bị Slave, và kênh giao tiếp được thiết lập là 1 để đảm bảo giao tiếp hiệu quả với khối xử lý trung tâm 2 (Thiết bị Master) Đồng thời, thiết bị cũng đăng ký hàm callback để nhận dữ liệu từ thiết bị Master qua giao thức esp-now.

- Nếu trục y bằng ngưỡng thiết lập, hệ thống sẽ điều khiển xe đứng yên

- Nếu trục y lớn hơn ngưỡng thiết lập, hệ thống sẽ điều khiển xe đi thẳng về phía trước Ngược lại, điều khiển xe đi lùi

- Nếu trục x lớn hơn ngưỡng thiết lập, hệ thống sẽ điều khiển xe di chuyển rẻ trái Ngược lại, điều khiển xe rẻ phải

4.4.3 Lưu đồ giải thuật chế độ Auto

Trong chế độ Auto, hệ thống ngắt kết nối giao thức esp-now và thiết lập kết nối với wifi Tiếp theo, hệ thống kết nối với Firebase để nhận dữ liệu Sau khi nhận được các giá trị từ Firebase, chúng sẽ được lưu trữ vào các biến tương ứng để thực hiện các hành động tiếp theo.

Hệ thống sẽ so sánh giá trị khoảng cách giữa xe và vật cản Nếu khoảng cách dưới ngưỡng thiết lập, xe sẽ được coi là ở vị trí không an toàn và hệ thống sẽ tự động dừng xe, đồng thời phát ra cảnh báo bằng buzzer Ngược lại, nếu khoảng cách lớn hơn ngưỡng đã thiết lập, xe sẽ được xem là ở khoảng cách an toàn.

- Nếu Go hoặc Green bằng 1, xe được điều khiển đi thẳng

- Nếu Stop hoặc Red bằng 1, xe được điều khiển dừng lại

- Nếu Slow hoặc Yellow bằng 1, được điều khiển giảm tốc độ

- Nếu Right bằng 1, xe được điều hướng rẻ phải

4.4.4 Lưu đồ giải thuật ESP Camera

Hình 4 27 Lưu đồ giải thuật ESP CAM

Sau khi camera được cấp nguồn và bắt đầu hoạt động, esp cam sẽ tiến hành các khởi tạo ban đầu và kết nối đến wifi

Sau khi thực hiện kết nối đến wifi, esp cam sẽ khởi tạo một địa chỉ http và in ra địa chỉ này

4.4.5 Lưu đồ giải thuật khối xử lí trung tâm 2

Hình 4 28 Lưu đồ giải thuật khối xử lí trung tâm 2

Tại khối xử lý trung tâm 2 (thiết bị Master), sau khi được cấp nguồn, hệ thống sẽ thực hiện cấu hình ban đầu và khởi tạo giao thức ESP-NOW Thiết bị Master sẽ chuyển sang chế độ Wi-Fi STA với kênh giao tiếp 1, tương ứng với kênh của thiết bị Slaves Hệ thống cũng đăng ký hàm callback để nhận thông báo về tình trạng gửi dữ liệu.

Sau khi hoàn thành các khởi tạo và cấu hình ban đầu, hệ thống sẽ tiến hành quét và tìm các thiết bị “Slave” xung quanh

Nếu tìm được thiết bị Slave, hệ thống sẽ kiểm tra thiết bị đó có SSID bắt đầu là

Nếu không phát hiện thiết bị nào, chương trình sẽ dừng lại Khi có thiết bị với SSID “Slave”, địa chỉ MAC của thiết bị đó sẽ được trích xuất và lưu trữ Hệ thống sẽ kiểm tra xem thiết bị Slave có cùng kênh giao tiếp hay không; nếu không, chương trình sẽ kết thúc.

Khi sử dụng cùng một kênh giao tiếp, thiết bị Master sẽ xác minh xem hai thiết bị đã được ghép nối trước đó hay chưa Nếu chưa, quá trình ghép nối sẽ được thực hiện lại Nếu ghép nối không thành công, đèn LED báo hiệu tình trạng không kết nối ESP-NOW sẽ sáng lên.

Nếu quá trình ghép nối thành công, đèn LED sẽ sáng để báo hiệu kết nối ESP-NOW Đồng thời, các giá trị trục X và Y từ module Joystick sẽ được gửi từ thiết bị Master đến thiết bị Slaves để thực hiện các hành động tương ứng.

4.4.6 Lưu đồ giải thuật khối xử lí ảnh và gửi dữ liệu đến Firebase

Hình 4 29 Lưu đồ giải thuật xử lí dữ liệu hình ảnh

Video từ ESPCam sẽ được khởi tạo thông qua địa chỉ máy chủ HTTP của ESPCam Đồng thời, mô hình YOLO sẽ được kích hoạt để thực hiện việc phát hiện và nhận diện các vật thể trong video.

Khởi tạo kết nối với Firebase, chương trình sẽ chụp từng khung hình từ luồng video qua ESP32 Cam Các đối tượng trong video sẽ được nhận diện bằng model YOLO đã được huấn luyện Khi đối tượng được phát hiện, khung hình sẽ được vẽ bao quanh và gán nhãn phù hợp Cuối cùng, các nhãn này sẽ được gửi lên Firebase.

KẾT QUẢ - KIỂM TRA – ĐÁNH GIÁ

KẾT QUẢ CỦA QUÁ TRÌNH HUẤN LUYỆN

Sau khi kếtlthúc quá trình huấn luyện, trên giaoldiện notebook sẽlxuất hiện một số thông tin như sau:

Hình 5 1 Một số thông tin cần chú ý sau khi kết thúc quá trình huấn luyện

- 1: Đường dẫnlđến tệp trọng số sau khi hoàn thànhlquá trình huấn luyện

- 2: Các kếtlquả đánh giá mô hình

- 3: Đường dẫn đếnlkết quả của toànlbộ quá trìnhlhuấn luyện

Tệp trọng số (weight) lưu trữ các giá trị trọng số đã học được của mô hình sau quá trình huấn luyện, bao gồm trọng số của các lớp tích chập và các lớp kết nối đầy đủ Đây là thành phần quan trọng nhất của mô hình, được sử dụng để tái huấn luyện trong lần tiếp theo với tệp last.pt hoặc để nhận diện đối tượng với tệp best.pt.

Sau khi hoàn tất quá trình huấn luyện, các kết quả và chỉ số quan trọng sẽ được hiển thị, như trong hình 5.1, nhằm đánh giá chất lượng của toàn bộ mô hình huấn luyện.

❖ Ý nghĩa của các chỉ số như sau:

Giá trị P được sử dụng để đo lường độ chính xác của các dự đoán trong mô hình Một giá trị P cao cho thấy mô hình ít dự đoán sai, tức là giảm thiểu các dự đoán nhầm lẫn về sự hiện diện của đối tượng Khi P đạt 98,1%, điều này được coi là rất tốt, cho thấy hầu hết các dự đoán của mô hình là chính xác.

Chỉ số R được sử dụng để đánh giá khả năng phát hiện các đối tượng thực sự trong ảnh, với R = 96,6% cho thấy mô hình có hiệu suất rất tốt, ít bỏ sót các đối tượng Chỉ số mAP50, với giá trị 98%, phản ánh khả năng phát hiện và phân loại đối tượng chính xác ở ngưỡng IoU = 0.5 Trong khi đó, mAP50-95 cung cấp cái nhìn tổng quan hơn về hiệu suất của mô hình trên các ngưỡng IoU từ 0.5 đến 0.9, với giá trị 75,8% cho thấy mô hình ổn định trong việc phát hiện đối tượng ở nhiều ngưỡng khác nhau.

Mô hình đã được huấn luyện đạt hiệu suất cao, cho phép nhận diện và phân loại các đối tượng một cách hiệu quả.

KẾT QUẢ TIN NHẮN GỬI TỌA ĐỘ VỀ CHO NGƯỜI DÙNG

Khi hệ thống hoạt động, bên cạnh việc điều khiển xe tự động và các chức năng cơ bản khác, nó còn có khả năng gửi tọa độ vị trí của xe đến người dùng qua tin nhắn.

Hình 5 2 Gửi vị trí của xe về cho người dùng

Sau khi các khoảng thời gian cố định được thiết lập, hệ thống sẽ gửi thông tin tọa độ, bao gồm kinh độ và vĩ độ, đến người dùng qua tin nhắn.

Dựa trên dữ liệu tọa độ, sau khi tra cứu kinh độ và vĩ độ trên Google Maps, vị trí của xe vào thời điểm tin nhắn được gửi là tại Khu E của trường ĐHSPKT.

KẾT QUẢ HỆ THỐNG Ở CHẾ ĐỘ MANUAL

Khi công tắc được gạt sang chế độ manual, trên màn hình LCD sẽ hiển thị chế độ hoạt động của hệ thống là manual

Hình 5 4 Tay cầm điều khiển xe

Khi xe hoạt động ở chế độ manual, tay cầm kết nối với xe qua giao thức esp-now, và đèn LED xanh trên tay cầm sẽ sáng lên, cho thấy rằng giao thức esp-now đã được ghép nối thành công giữa hai thiết bị.

Xe sẽ được điều hướng tiến, lùi, rẻ trái, rẻ phải dựa vào 2 cụm điều khiển 1 và 2 như hình trên

- Tại cụm 1: di chuyển joystick lên/xuống tương ứng tiến/lùi cho xe

- Tại cụm 2: di chuyển joystick lên/xuống tương ứng rẻ trái/phải cho xe.

KẾT QUẢ HỆ THỐNG Ở CHẾ ĐỘ AUTO

Khi xe hoạt động ở chế độ tự động, hệ thống sẽ tự động ngắt kết nối với esp-now và chuyển sang kết nối wifi Đèn LED xanh trên xe sẽ sáng lên để thông báo rằng hệ thống đã kết nối thành công với wifi.

Khi ở chế độ tự động, xe sẽ tự di chuyển trên tuyến đường dựa vào các biển báo và đèn tín hiệu giao thông

- Biển đi thẳng: Xe sẽ được điều hướng di chuyển tiến về phía trước

- Biển stop: Điều khiển xe dừng lại

- Biển dành cho người đi bộ: Khi xe gặp biển này, xe được điều khiển giảm tốc độ lại và di chuyển chậm

- Biển rẻ phải: Khi xe gặp biển báo rẻ phải, xe được điều hướng rẻ sang bên phải

- Đèn đỏ: điều khiển xe dừng lại khi gặp đèn đỏ

- Đèn xanh: điều khiển xe đi thẳng về phía trước

- Đèn vàng: điều khiển xe đi chậm lại

Hình 5 6 Xe hoạt động ở chế độ Auto

Khi xe di chuyển trên đường và gặp đèn tín hiệu giao thông như hình 5.7, hệ thống sẽ tự động thực hiện các lệnh điều khiển xe tương ứng với từng loại đèn tín hiệu.

Hình 5 8 Nhận diện các biển báo hiệu giao thông

Khi xe tiếp cận một trong bốn loại biển báo như biển đi thẳng, biển dành cho người qua đường, biển rẽ phải và biển dừng, hệ thống sẽ tự động thực hiện các lệnh điều khiển xe di chuyển phù hợp với từng loại biển báo.

KIỂM TRA KHẢ NĂNG NHẬN DIỆN CÁC BIỂN BÁO VÀ ĐÈN TÍN HIỆU GIAO THÔNG KHI XE HOẠT ĐỘNG Ở CHẾ ĐỘ AUTO

Bảng 5 1 Thống kê độ tin cậy của mô hình huấn luyện khi đem đi nhận diện các đối tượng ngoài thực tế với 5 lần chạy

Hệ thống nhận diện cho thấy các đối tượng đã được huấn luyện có mức độ phát hiện từ 60% đến 90% Tuy nhiên, một số biển báo như biển Yellow và Green được phát hiện với độ tin cậy thấp do kích thước nhỏ và độ sáng yếu của đèn giao thông, cùng với ánh sáng môi trường làm giảm chất lượng hình ảnh Ngược lại, các biển báo lớn hơn không bị ảnh hưởng nhiều bởi ánh sáng xung quanh, giúp camera ghi lại hình ảnh rõ nét hơn và nâng cao độ tin cậy trong việc phát hiện.

Hệ thống nhận diện hình ảnh của xe có khả năng phát hiện và nhận diện các đối tượng một cách hiệu quả, cho phép điều khiển hành động của xe Điều này chứng tỏ rằng hệ thống có thể phân biệt và xác định chính xác các loại biển báo cũng như đèn tín hiệu giao thông.

ĐÁNH GIÁ HOẠT ĐỘNG TOÀN HỆ THỐNG

Sau quá trình chạy thử và kiểm tra dựa trên các số liệu thống kê, có thể đưa ra những đánh giá tổng quan cho hệ thống như sau:

- Hiểu được cách thức giao tiếp giữa các thiết bị phần cứng với các phần mềm lập trình như Ardunio IDE và VS Code

- Biết được cách thu thập dữ liệu để tạo tệp dataset cung cấp cho quá trình huấn luyện

- Biết được cách thức huấn luyện tệp dữ liệu tự tạo với thuật toán YOLO v8 trên nền tảng google colab

- Thành công trong việc điều khiển xe với module Joystick từ một thiết bị Master đến Slaves thông qua giao thức không dây esp-now

- Đảm bảo độ ổn định của hệ thống khi chuyển đổi qua lại giữa hai chế độ hoạt động

- Xe có thể tự động di chuyển dựa trên các biển báo và đèn tín hiệu giao thông

Về mặt nhận diện đối tượng được huấn luyện:

Việc huấn luyện nhằm nhận diện các biển báo và đèn tín hiệu giao thông đã được thực hiện đầy đủ, đảm bảo khả năng phát hiện và nhận diện đối tượng hiệu quả.

Độ tin cậy trong việc nhận diện các đối tượng sẽ cao hơn khi hệ thống được thử nghiệm trong môi trường lý tưởng, với ánh sáng tốt, không gian xung quanh thoáng đãng và không có nhiều vật thể khác ngoài những đối tượng đã được huấn luyện.

Độ tin cậy của hệ thống sẽ giảm khi hoạt động trong môi trường không lý tưởng, chẳng hạn như ánh sáng kém và sự hiện diện của nhiều vật thể xung quanh như cây cối, xe cộ và con người.

Những hạn chế còn tồn tại trên toàn hệ thống:

- Khi hệ thống hoạt động tại nơi có nhiều tòa nhà cao tầng hay trong phòng kín thì hệ thống không cập nhật được dữ liệu tọa độ GPS

Trong chế độ tự động, xe có thể phản hồi chậm khi gặp biển báo và đèn tín hiệu giao thông Nếu đường truyền mạng kém, xe sẽ không nhận được dữ liệu từ Firebase, dẫn đến việc điều khiển hoạt động trên xe bị ảnh hưởng.

Ngày đăng: 19/12/2024, 11:45

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Trần Thu Hà, “Giáo trình Điện Tử Cơ Bản”, NXB Đại học Quốc Gia Tp. Hồ Chí Minh, 1/2013 Sách, tạp chí
Tiêu đề: Giáo trình Điện Tử Cơ Bản
Nhà XB: NXB Đại học Quốc Gia Tp. Hồ Chí Minh
[2] FPT Digital, “Tìm hiểu về xe điện và xe tự hành – Lợi ích, thách thức và tiềm năng”, Truy cập ngày 20/05/2024, từ https://digital.fpt.com/chien-luoc/xe-dien-va-xe-tu-hanh.html Sách, tạp chí
Tiêu đề: Tìm hiểu về xe điện và xe tự hành – Lợi ích, thách thức và tiềm năng
[3] Toyota, “GPS là gì? Ứng dụng của định vị toàn cầu GPS trên ô tô”, truy cập ngày 20/05/2024, từ https://www.toyota.com.vn/tin-tuc/thong-tin-bo-tro/gps-la-gi-35592[4] Hưng Nguyễn, “Deep Learning là gì? Tổng quan về Deep Learning từ A-Z”, truy cập ngày 20/05/2024, từ https://vietnix.vn/deep-learning-la-gi/ Sách, tạp chí
Tiêu đề: GPS là gì? Ứng dụng của định vị toàn cầu GPS trên ô tô”, truy cập ngày 20/05/2024, từ https://www.toyota.com.vn/tin-tuc/thong-tin-bo-tro/gps-la-gi-35592 [4] Hưng Nguyễn, “Deep Learning là gì? Tổng quan về Deep Learning từ A-Z
[5] elcom, “Thị giác máy tính là gì? Ứng dụng của thị giác máy tính trong thực tiễn”, truy cập ngày 20/05/2024, từ https://www.elcom.com.vn/thi-giac-may-tinh-la-gi-ung-dung-cua-thi-giac-may-tinh-trong-thuc-tien-1663913803 Sách, tạp chí
Tiêu đề: Thị giác máy tính là gì? Ứng dụng của thị giác máy tính trong thực tiễn
[6] NSHOP, “Module Sim 4G A7680C”, Truy cập ngày 20/05/2024, từ: https://nshopvn.com/product/module-sim-4g-a7680c-chinh-hang-simcom/ Sách, tạp chí
Tiêu đề: Module Sim 4G A7680C
[7] NSHOP, “Động cơ DC giảm tốc vàng 2 trục 1:48”, Truy cập ngày 20/05/2024, từ: https://nshopvn.com/product/dong-co-dc-giam-toc-vang-2-truc-148/ Sách, tạp chí
Tiêu đề: Động cơ DC giảm tốc vàng 2 trục 1:48
[8] NSHOP, “ Thông số MẠCH HIỂN THỊ DUNG LƯỢNG PIN ĐA NĂNG”, Truy cập ngày 20/05/2024, từ: https://nshopvn.com/PRODUCT/MACH-HIEN-THI-DUNG-LUONG-PIN-DA-NANG-1-2-3-4-5-6-7-8S/ Sách, tạp chí
Tiêu đề: Thông số MẠCH HIỂN THỊ DUNG LƯỢNG PIN ĐA NĂNG
[9] BKAII, “Tìm hiểu về truyền thông UART: Khái niệm, nguyên lí và ứng dụng”, Truy cập ngày 20/05/2024, từ https://bkaii.com.vn/tin-tuc/1099-tim-hieu-ve-truyen-thong-uart-khai-niem-nguyen-ly-va-ung-dung Sách, tạp chí
Tiêu đề: Tìm hiểu về truyền thông UART: Khái niệm, nguyên lí và ứng dụng
[10] ESP32.vn, “Ardunio cơ bản. Giao tiếp I2C”, Truy cập ngày 20/05/2024, từ https://esp32.vn/idf/i2c.html Sách, tạp chí
Tiêu đề: Ardunio cơ bản. Giao tiếp I2C
[11] Quản trị mạng, “Giải thích về các tiêu chuẩn wifi phổ biến hiện nay”, Truy cập ngày 20/05/2024, từ https://quantrimang.com/cong-nghe/cac-chuan-wireless-802-11b-802-11a-802-11g-va-802-11n-47723 Sách, tạp chí
Tiêu đề: Giải thích về các tiêu chuẩn wifi phổ biến hiện nay
[12] Tensor, “Tìm hiểu về ESP-NOW (ESP32 với Ardunio IDE)”, Truy cập ngày 20/05/2024, từ https://www.tensorsmarthome.com/tim-hieu-ve-esp-now-voi-esp32/ Sách, tạp chí
Tiêu đề: Tìm hiểu về ESP-NOW (ESP32 với Ardunio IDE)
[13] TEKY, “IoT là gì? Cách ứng dụng IoT vào thực tế”, Truy cập ngày 20/05/2024, từ https://teky.edu.vn/blog/cong-nghe-iot-la-gi/#Thiet_bi_IoT_la_gi Sách, tạp chí
Tiêu đề: IoT là gì? Cách ứng dụng IoT vào thực tế
[14] GIANG, “Firebase là gì? Các đặt điểm của Firebase”, Truy cập ngày 20/05/2024, từ https://bizflycloud.vn/tin-tuc/firebase-la-gi-cac-dat-diem-cua-firebase-20181113143407272.htm Sách, tạp chí
Tiêu đề: Firebase là gì? Các đặt điểm của Firebase
[15] Utralytics, “Roboflow về Xây dựng với Mã nguồn mở và Ultralytics YOLOv8”, Truy cập ngày 20/05/2024, từ: https://www.ultralytics.com/vi/blog/roboflow-on-building-with-open-source-and-ultralytics-yolov8# Sách, tạp chí
Tiêu đề: Roboflow về Xây dựng với Mã nguồn mở và Ultralytics YOLOv8
[16] Nga Vu, “Google Colab là gì? Hướng dẫn sử dụng Google Colab cho người mới” Truy cập ngày 20/05/2024, từ: https://200lab.io/blog/google-colab-la-gi/ Sách, tạp chí
Tiêu đề: Google Colab là gì? Hướng dẫn sử dụng Google Colab cho người mới
[17] Tran Van Huy, “R-CNN Understanding”, truy cập ngày 20/05/2024, từ https://huytranvan2010.github.io/R-CNN-Understanding/ Sách, tạp chí
Tiêu đề: R-CNN Understanding
[18] Văn Bưởi, “mAp trong Object detection”, Truy cập ngày 20/05/2024, từ https://viblo.asia/p/map-trong-object-detection-38X4E55j4N2Tiếng Anh Sách, tạp chí
Tiêu đề: mAp trong Object detection
[19] Aishwarya Singh, “Feature Engineering for Images: A Valuable Introduction to the HOG Feature Descriptor”, Available:https://www.analyticsvidhya.com/blog/2019/09/feature-engineering-images-introduction-hog-feature-descriptor/ Sách, tạp chí
Tiêu đề: Feature Engineering for Images: A Valuable Introduction to the HOG Feature Descriptor
[20] Raghav Bhandari, “Understanding Yolo (You Look Only Once)”, Available: https://aurigait.com/blog/understanding-yolo-you-look-only-once/ Sách, tạp chí
Tiêu đề: Understanding Yolo (You Look Only Once)
[21] Joseph Redmon, Santosh Divvala, Ross Girshick, Ali Farhadi, “You Only Look Once: Unified, Real-Time Object Detection”, Available : https://arxiv.org/pdf/1506.02640 Sách, tạp chí
Tiêu đề: You Only Look Once: Unified, Real-Time Object Detection

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w