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

Ứng dụng thuật toán adaboost và hog vào hệ thống trợ lái thông minh adas để phát hiện, phân loại các phương tiện chuyển động

72 13 0

Đ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 đề Ứng dụng thuật toán adaboost và hog vào hệ thống trợ lái thông minh adas để phát hiện, phân loại các phương tiện chuyển động
Tác giả Nguyễn Thị Mai
Người hướng dẫn TS. Lê Hùng Linh
Trường học Đại học Thái Nguyên
Chuyên ngành Kỹ thuật điều khiển và tự động hóa
Thể loại Luận văn thạc sĩ
Năm xuất bản 2020
Thành phố Thái Nguyên
Định dạng
Số trang 72
Dung lượng 2,17 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1: KHÁI QUÁT CÔNG NGHỆ VÀ HỆ THỐNG TRỢ LÁI THÔNG (10)
    • 1.1 TỔNG QUAN VỀ HỆ THỐNG TRỢ LÁI THÔNG MINH (11)
    • 1.2 HỆ THỐNG PHÁT HIỆN VÀ PHÂN LOẠI CÁC PHƯƠNG TIỆN DI ĐỘNG (14)
      • 1.2.1 Phương pháp phát hiện dựa trên hình dạng (15)
      • 1.2.2 Phương pháp phát hiện dựa trên máy học (17)
    • 1.3 NGUYÊN TẮC THU THẬP VÀ XỬ LÝ DỮ LIỆU CỦA HỆ THỐNG ADAS (17)
      • 1.3.1 Thuật toán học tập dựa trên AdaBoost (19)
      • 1.3.2 Tính năng Haar-Like (20)
      • 1.3.3 Cấu trúc tầng để phát hiện nhanh đối tượng (21)
      • 1.3.4 Luồng phát hiện (21)
    • 1.4 KẾT LUẬN CHƯƠNG 1 (23)
  • Chương 2: ĐỀ XUẤT MÔ HÌNH TRỢ LÁI THÔNG MINH (24)
    • 2.1 NGUYÊN TẮC KIỂM SOÁT DỮ LIỆU CỦA HỆ THỐNG (24)
    • 2.2 PHẦN MỀM CHO HỆ THỐNG TRỢ LÁI THÔNG MINH (25)
      • 2.2.1 Tổng quan về visual studio 2010 (25)
      • 2.2.2. Tổng quan về phần mềm mô phòng OpenCV (28)
    • 2.3. THUẬT TOÁN ADABOOST VÀ HOG (36)
      • 2.3.1. Thuật toán AdaBoost (36)
      • 2.3.2 Thuật toán HOG (0)
    • 2.4. MÔ HÌNH HỆ THỐNG TRỢ LÁI THÔNG MINH ĐƯỢC ĐỀ XUẤT (0)
    • 2.5. KẾT LUẬN CHƯƠNG 2 (61)
  • Chương 3: ĐÁNH GIÁ HIỆU SUẤT VÀ SO SÁNH (10)
    • 3.1. YÊU CẦU CỦA HỆ THỐNG VÀ CẤU TRÚC CHƯƠNG TRÌNH (0)
    • 3.2. NGUYÊN TẮC VẬN HÀNH, THỬ NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG (62)
    • 3.3. CÁC KẾT QUẢ THỬ NGHIỆM (0)
    • 3.4. HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI (0)
    • 3.5. KẾT LUẬN CHƯƠNG 3 (0)
  • TÀI LIỆU THAM KHẢO (0)

Nội dung

KHÁI QUÁT CÔNG NGHỆ VÀ HỆ THỐNG TRỢ LÁI THÔNG

TỔNG QUAN VỀ HỆ THỐNG TRỢ LÁI THÔNG MINH

Nhạy bén ở mọi giác quan:

Tránh tai nạn và giảm thiểu hậu quả là phương pháp tích hợp trong nghiên cứu tai nạn của Mercedes-Benz, thể hiện qua khẩu hiệu của hãng.

Mercedes-Benz cam kết mang đến "cuộc sống thực sự an toàn" thông qua chiến lược "Lái xe thông minh" Các hệ thống hỗ trợ tiên tiến giúp phát hiện nguy hiểm và cảnh báo lái xe bằng hình ảnh, âm thanh hoặc xúc giác, từ đó thúc đẩy phản ứng kịp thời Một số tính năng còn tự động can thiệp trong tình huống khẩn cấp, như phanh tự động để tránh tai nạn hoặc giảm thiểu thiệt hại Sự kết hợp của các cảm biến và công nghệ thông minh này đánh dấu một bước tiến quan trọng hướng tới lái xe tự động và an toàn hơn.

Hình 1.1 Tầm nhìn của một ô tô đang di chuyển trên đường

Các chức năng mới của xe dựa trên hệ thống cảm biến hiện có, bao gồm camera stereo mới và cảm biến ra-đa đa năng Camera stereo đa năng (SMPC) cho công nghệ "Vision 6D" mở rộng tầm quan sát lên tới 50 mét phía trước và ghi nhận môi trường 500 mét Hệ thống này phát hiện các phương tiện, người đi bộ, biển báo giao thông và dải phân cách Dữ liệu từ các cảm biến ra-đa tầm ngắn và tầm xa cung cấp thông tin về khoảng cách với các đối tượng xung quanh Thông tin từ camera và ra-đa được biên soạn và kết hợp thông minh trong bộ thiết bị điều khiển, cho phép tăng cường hiệu quả của công nghệ an toàn chủ động và thụ động trên xe.

Hình 1.2 Hệ thống camera lắp ở đầu xe

Hệ thống tư duy tương lai:

Các hệ thống hỗ trợ lái xe mới đã cải thiện đáng kể khả năng giảm áp lực cho người lái trong quá trình di chuyển Chúng có khả năng tự động theo xe phía trước, dừng lại và lưu thông nhờ vào camera quan sát và hệ thống phanh tích hợp với tính năng dự đoán va chạm Hệ thống này giúp phát hiện phương tiện và người đi bộ băng qua đường, đồng thời cảnh báo lái xe về việc phanh Hỗ trợ duy trì làn đường có thể nhận diện xe trong làn đường liền kề và giảm nguy cơ lấn làn bằng cách áp dụng phanh bên Hệ thống đèn pha chủ động cho phép chiếu sáng liên tục mà không gây chói cho người khác Ngoài ra, hệ thống quan sát ban đêm sử dụng camera ảnh nhiệt để cảnh báo nguy hiểm từ người đi bộ hoặc động vật trong điều kiện ánh sáng kém Cuối cùng, hệ thống cảnh báo mất tập trung giúp nhận diện khi lái xe không tập trung hoặc buồn ngủ, mở rộng phạm vi cảnh báo.

Hình 1.3 Hệ thống cảnh báo mất tập trung

HỆ THỐNG PHÁT HIỆN VÀ PHÂN LOẠI CÁC PHƯƠNG TIỆN DI ĐỘNG

Phân loại ảnh là một lĩnh vực nghiên cứu đang thu hút sự quan tâm lớn, với ứng dụng trong tìm kiếm ảnh, nhận dạng, theo dõi và phát hiện đối tượng Trong giám sát chuyển động từ video, phân loại ảnh là bước tiếp theo sau phát hiện đối tượng Phương pháp phổ biến để phân loại ảnh là đối sánh ảnh, tức là xác định các vùng tương đồng giữa hai bức ảnh thông qua các điểm đặc trưng Bài toán đối sánh ảnh trở thành việc so sánh các đặc trưng đã được trích xuất, như đường biên, điểm ảnh đặc trưng và lược đồ xám.

Có hai vấn đề cơ bản thường đặt ra trong bài toán đối sánh ảnh:

Một là, làm sao có thể biểu diễn thông tin một cách hiệu quả nhằm thực hiện việc đối sánh hai ảnh nhanh nhất có thể;

Giải pháp đối sánh vẫn duy trì hiệu quả trong môi trường thay đổi bằng cách điều chỉnh để ứng phó với nhiễu trong quá trình thu nhận ảnh, sự biến đổi về ánh sáng và các yếu tố che khuất Những cải tiến này giúp nâng cao độ chính xác và khả năng nhận diện trong các điều kiện khác nhau.

Các phương pháp đối sánh ảnh dựa trên điểm đặc trưng đã đạt được thành công, nhưng thường yêu cầu thời gian tính toán dài Trong các ứng dụng thời gian thực như giám sát giao thông tự động, cần thiết phải có phương pháp đối sánh ảnh hoạt động nhanh chóng Nghiên cứu này giới thiệu một phương pháp phân loại mạnh mẽ cho ô tô và xe máy trong ảnh giao thông, với mục tiêu phát hiện và phân loại các phương tiện di động nhằm hỗ trợ hệ thống lái xe thông minh.

1.2.1 Phương pháp phát hiện dựa trên hình dạng

Phát hiện biển báo giao thông theo hình dạng có nhiều phương pháp đã được nghiên cứu và công bố Trong số đó, phép biến đổi Hough được coi là phương pháp phổ biến nhất.

Phép biến đổi Hough là một kỹ thuật quan trọng trong nhận dạng hình dạng ngẫu nhiên trong ảnh, dựa trên việc xác định các điểm ảnh trên biên của hình ảnh Kỹ thuật này đã được phát triển qua nhiều biến thể trong lịch sử thị giác máy tính, trong đó nghiên cứu của Loy và Barnes nổi bật với việc áp dụng vào nhận dạng biển báo giao thông Họ đã giới thiệu bộ phát hiện đa giác đều tổng quát, sử dụng phép biến đổi đối xứng xuyên tâm tương tự như phép biến đổi Hough Quá trình bắt đầu bằng việc tính đạo hàm cấp một của ảnh gốc, sau đó phân ngưỡng để loại bỏ các điểm có biên độ thấp, giữ lại những điểm khả thi cho vị trí tâm đa giác đều Mỗi điểm ảnh có thể được chọn trên nhiều vị trí dọc theo đường trực giao với đạo hàm cấp một, với khoảng cách tương ứng với các bán kính của đa giác đều Cần lưu ý rằng có thể có hai đường thẳng thỏa mãn điều kiện này, một theo hướng của đạo hàm và một theo hướng ngược lại, giúp xác định biển báo bất kể độ sáng của nó so với nền.

Hình 1.4 Các vị trí của một đề cử điểm ảnh cho tâm đối tượng [6]

Chiều dài đường biểu quyết được xác định bởi bán kính của đa giác đều, với các điểm ảnh ở cuối đường thẳng có trọng số tiêu cực nhằm giảm thiểu ảnh hưởng của những đường thẳng quá dài trong ảnh, không đủ điều kiện để được xem như cạnh của đa giác Kết quả cuối cùng của ảnh đề cử sẽ được gán nhãn tương ứng.

Ngoài ảnh đề cử, còn có ảnh đẳng giác được tạo ra bằng cách nhân góc đạo hàm của các điểm ảnh trên cạnh của đa giác đều mặt với một hệ số nhất định Nếu thực hiện đúng, các góc sẽ bằng nhau Ví dụ, trong một tam giác đẳng giác, nếu ta thử giá trị góc đạo hàm tại mỗi bên với các giá trị 73°, 193° và 313°, cách nhau 120°, thì ta có thể tính toán như sau: 73° x 3 = 219° và 193° x 3 = 579°.

Trong quá trình xử lý hình ảnh, các điểm ảnh được chọn làm tâm của đa giác và tạo ra một vector đơn vị Độ dốc của vector này tương ứng với góc đạo hàm của điểm ảnh, nhân với số mặt của đa gia đều Các điểm ảnh tiếp theo được chọn dựa trên một đường thẳng đề cử, với hình thức của vector đơn vị Kết quả là một ảnh mới được gọi là ảnh đẳng giác, trong đó mỗi điểm đại diện cho tổng của các vector từ các điểm được chọn Các điểm từ các cạnh của đa giác đẳng giác sẽ có cùng độ dốc, dẫn đến độ lớn tối đa của các vector tại trọng tâm của đa giác.

Hình 1.5 Nhân các góc gradient của một tam giác với 3 [6]

Kết quả các góc sẽ bằng nhau.

Cuối cùng, ảnh đề cử và định mức của ảnh đẳng giác được kết hợp để tạo ra đáp ứng tổng thể Phương pháp này có độ phức tạp O(Nkl), trong đó l là độ dài cực đại của đường thẳng được chọn, N là số lượng điểm ảnh trong ảnh, và k là số lượng bán kính đang được xem xét.

Khuyết điểm lớn nhất của phương pháp này là cần biết trước bán kính của đa giác, điều này thường không dễ dàng Mặc dù có thể thử nghiệm với nhiều bán kính khác nhau, nhưng quá trình này tốn quá nhiều thời gian xử lý.

1.2.2 Phương pháp phát hiện dựa trên máy học

Phương pháp tiếp cận dựa trên hình dạng yêu cầu giải quyết bài toán một cách thủ công Tuy nhiên, kiến thức này cũng có thể được phát hiện thông qua việc sử dụng máy học.

Nghiên cứu của Viola và Jones đánh dấu một bước tiến quan trọng trong thị giác máy tính với việc phát triển thuật toán phát hiện đối tượng trong thời gian thực Bộ phát hiện này được huấn luyện từ các mẫu tích cực và tiêu cực, ban đầu chỉ tập trung vào việc phát hiện khuôn mặt Tuy nhiên, nhiều nhà nghiên cứu đã mở rộng ứng dụng của bộ phát hiện này cho các đối tượng khác, bao gồm phương tiện và biển báo giao thông.

Bộ phát hiện của Viola và Jones kết hợp giữa hai khái niệm Adaboost và bộ phân lớp Haar-like.

NGUYÊN TẮC THU THẬP VÀ XỬ LÝ DỮ LIỆU CỦA HỆ THỐNG ADAS

Phát hiện vật thể là một thách thức quan trọng trong lĩnh vực thị giác máy tính, thường được sử dụng trong các hệ thống nhận diện mặt người đi bộ Thuật toán Viola và Jones, dựa trên AdaBoost, đã chứng minh hiệu quả cao trong việc phát hiện nhanh chóng không chỉ khuôn mặt mà còn cả người đi bộ và phương tiện Để xây dựng các hệ thống nhận dạng hình ảnh thực tế, việc xử lý thời gian thực là rất cần thiết Thư viện OpenCV của Intel cung cấp nhiều chức năng hữu ích cho các thuật toán xử lý hình ảnh, cho phép xử lý nhanh chóng trên các hệ thống PC với hiệu suất tối ưu cho CPU Tuy nhiên, để tăng tốc độ xử lý hơn nữa, cần triển khai trên các hệ thống tính toán song song như bộ xử lý đa nhân hoặc đa lõi.

Xử lý nhận dạng hình ảnh theo thời gian thực là điều cần thiết cho các hệ thống nhúng như ô tô, hệ thống bảo mật và thiết bị di động Để áp dụng hiệu quả trong các hệ thống này, cần có khả năng xử lý thời gian thực Tuy nhiên, các phương pháp hiện tại không đáp ứng yêu cầu này do tiêu thụ điện năng cao hoặc không phù hợp với quy mô lớn của hệ thống.

Một số phần cứng chuyên dụng cho phát hiện đối tượng đã được đề xuất, nhưng chưa có công trình nào khai thác hiệu quả tính song song của thuật toán để đạt được tỷ lệ phát hiện cao và xử lý nhanh Để phát triển một hệ thống nhúng hiệu quả, cần chú trọng hai tính năng quan trọng: phân tích thuật toán phát hiện chi tiết và lựa chọn thuật toán phù hợp dựa trên phần cứng đã phân tích Hiệu suất và hạn chế của các nguồn lực khác nhau tùy thuộc vào hệ thống cần tạo ra, vì vậy một thiết kế kiến trúc duy nhất là không đủ Đề xuất phát hiện đối tượng nhanh và mạnh mẽ sử dụng biến thể của thuật toán AdaBoost cho việc chọn tính năng và đào tạo trình phân loại Trong kế hoạch của Viola và Jones, phương pháp trích xuất tính năng “tính năng Haar-like” được áp dụng cho các bộ phân loại yếu, cùng với cấu trúc tầng của trình phân loại để đạt được phát hiện nhanh chóng Chi tiết của từng phương pháp sẽ được mô tả cụ thể.

1.3.1 Thuật toán học tập dựa trên AdaBoost Để phát hiện đối tượng từ một hình ảnh đầu vào, cần phải phân loại để xác định x khu vực nào là đối tượng mục tiêu Một chức năng phân loại có thể đạt được bằng phương pháp máy học, sử dụng một số lượng lớn các hình ảnh để đào tạo phân loại Một số đề án đã được đề xuất để đạt được chức năng phân loại theo máy học.

Sung và Poggio áp dụng hỗn hợp các mô hình Gaussian, trong khi Rowley và cộng sự sử dụng một tập hợp nhỏ các tính năng hình ảnh đơn giản kết hợp với mạng thần kinh Osuna và các đồng tác giả đã triển khai máy vectơ hỗ trợ, còn Yang cùng các cộng sự đề xuất một hình ảnh đại diện ban đầu và áp dụng phương pháp học tập Winnow.

Viola và Jones đã áp dụng thuật toán AdaBoost, một trong những phương pháp máy học tiên tiến, để phát hiện đối tượng Phương pháp này yêu cầu phân loại nhiều khu vực mục tiêu, với kích thước khu vực cần được giữ nhỏ để đạt hiệu quả cao trong việc nhận diện.

Hình 1.6 Ví dụ về các tính năng Haar-like Những tính năng đơn giản này tương tự như Chức năng cơ sở Haar

Thuật toán dựa trên AdaBoost có thể đạt được phân loại chính xác với ít chi phí tính toán nếu các tính năng đầy đủ được chấp nhận.

Thuật toán AdaBoost nâng cao hiệu suất phân loại bằng cách kết hợp nhiều phân loại yếu thành một trình phân loại mạnh mẽ Trình phân loại này được xây dựng thông qua việc kết hợp tuyến tính các kết quả có trọng số từ các phân loại yếu, với trọng số được điều chỉnh dựa trên nhiều hình ảnh có hình dạng khác nhau.

1.3.2 Tính năng Haar-Like Đối với các bộ phân loại yếu trong thuật toán AdaBoost, Viola và Jones sử dụng các tính năng Haar-like, có thể phát hiện một cạnh hoặc một đường thẳng và giống với hàm cơ sở Haar Các ví dụ được thể hiện trong hình 1.6 Các tính năng Haar-like thu được từ hình ảnh đầu vào bằng các thao tác sau Đầu tiên, tổng các giá trị pixel trong màu trắng và bên trong các vùng màu đen trong hình 1.6 được tính toán, và sau đó là sự khác biệt của các trọng số trong các khu vực này được tính toán Nếu sự khác biệt vượt quá ngưỡng được xác định trước, bộ phân loại yếu phát hiện, có nghĩa là một tính năng cạnh tồn tại Nếu không, bộ phân loại đầu ra của trình phân loại sai Bằng cách kết hợp các bộ phân loại yếu này, để tăng mạnh phân loại có thể phát hiện các đối tượng phức tạp hơn Tính toán tổng các giá trị pixel trong màu trắng và hình chữ nhật màu đen được tăng tốc bằng cách sử dụng hình ảnh tích phân.

Các hình ảnh tích phân tại vị trí chứa tổng của pixel trong vùng được xác định bởi một điểm gốc và điểm (x hình 1.7)

Hình 1.7 Vùng xác định trong điểm ảnh gốc

1.3.3 Cấu trúc tầng để phát hiện nhanh đối tượng Để đạt được phát hiện nhanh đối tượng, Viola và Jones đã đề xuất một cấu trúc xếp tầng của một trình phân loại là một chuỗi các bộ phân lớp giai đoạn Mặc dù phân loại chính xác là khó khăn và đòi hỏi một số lượng lớn của các trình phân loại yếu, ngoại trừ các vùng phủ định rõ ràng có thể đạt được với một vài phân loại đơn giản hơn Cách tiếp cận khai thác thực tế này và đặt các trình phân loại đơn giản hơn từ chối hiệu quả phần lớn các cửa sổ phụ trước khi các bộ phân loại phức tạp thực hiện phân loại chính xác Các cấu trúc tầng được thể hiện trong hình 1.8 của một số trình phân loại giai đoạn, bao gồm các trình phân loại yếu Các cửa sổ phụ được đánh giá tuần tự bởi các bộ phân loại giai đoạn và quy trình tiếp theo chỉ được gọi nếu giai đoạn ban đầu trả về tích cực Cấu trúc tầng này giảm đáng kể thời gian xử lý vì trình phân loại được đào tạo để nhanh chóng từ chối các cửa sổ phụ không phải đối tượng và chi tiêu nhiều tính toán hơn trên các vùng giống như đối tượng đầy hứa hẹn.

Hình 1.8 Cấu trúc tầng của hệ thống

Phát hiện đối tượng được thực hiện qua các cửa sổ con, quét toàn bộ hình ảnh đầu vào Tỷ lệ của các cửa sổ phụ và bước cố định được sử dụng để phát hiện các đối tượng có kích thước lớn bằng cách mở rộng các cửa sổ phụ Quá trình phát hiện diễn ra theo các bước nhảy cụ thể.

Bước 1: Tạo ra một hình ảnh tích phân từ một hình ảnh gốc

Bước 2: Đối với tất cả các cửa sổ phụ trong hình ảnh đầu vào.

Bước 2.1: Bắt đầu với giai đoạn xếp tầng.

Bước 2.2: Đánh giá các bộ phân loại yếu trong giai đoạn như sau:

+, Tính toán tính năng Haar-like cho từng phân loại yếu bằng cách sử dụng hình ảnh tích phân.

+ Trả về đúng nếu đối tượng vượt quá ngưỡng đối tượng địa lý hoặc sai khác.

Nếu tổng trọng số của các bộ phân loại yếu trong giai đoạn vượt quá ngưỡng, hãy cập nhật và chuyển sang bước 2b Trong giai đoạn cuối cùng, nếu đầu ra đúng, tiếp tục đến bước 3 Ngược lại, nếu tổng không vượt quá ngưỡng, xuất sai và chuyển đến bước 3.

Bước 3: Thay đổi hệ số tỷ lệ của các cửa sổ phụ, và lặp lại Bước 2.

Hình 1.9 Bước nhảy của quá trình phát hiện vật [7]

KẾT LUẬN CHƯƠNG 1

Chương này giới thiệu các phương pháp cơ bản trong phát hiện và nhận dạng vật thể, đã được ứng dụng trong nhiều nghiên cứu, đồng thời phân tích nguyên tắc thu thập và xử lý dữ liệu của hệ thống ADAS Qua đó, lựa chọn và xác định các thuật toán, công nghệ phù hợp cho việc phát triển đề tài.

ĐỀ XUẤT MÔ HÌNH TRỢ LÁI THÔNG MINH

NGUYÊN TẮC KIỂM SOÁT DỮ LIỆU CỦA HỆ THỐNG

Phát hiện đối tượng theo thời gian thực ngày càng trở nên quan trọng trong nhiều lĩnh vực như thị giác máy tính, bảo mật và tin sinh học Hiện tại, phần mềm phát hiện đối tượng thường bị giới hạn ở hình ảnh độ phân giải thấp và phụ thuộc vào điều kiện thuận lợi để đạt tỷ lệ khung hình cao Mặc dù có những nỗ lực thiết kế kiến trúc phần cứng, nhưng chúng thường chỉ tập trung vào một ứng dụng cụ thể Do đó, cần phát triển một kiến trúc phần cứng linh hoạt, có khả năng phát hiện nhiều đối tượng trong hình ảnh độ phân giải cao và áp dụng cho nhiều tình huống khác nhau Luận văn đề xuất kiến trúc phát hiện và phân loại đối tượng dựa trên thuật toán AdaBoost, nổi bật với hiệu quả cao Qua lập trình và mô phỏng quy mô lớn, kiến trúc này có thể phát hiện đối tượng trong hình ảnh có độ phân giải lên đến 1024 x 768 pixel với tốc độ khung hình từ 64 đến 139 khung hình/giây, phù hợp cho nhiều ứng dụng khác nhau.

Phát hiện đối tượng trong video và hình ảnh là một hoạt động quan trọng trong các ứng dụng như xử lý hình ảnh, an ninh và trí tuệ nhân tạo Quá trình này liên quan đến việc trích xuất thông tin và xác định vị trí của đối tượng trong hình ảnh, đòi hỏi tính toán chuyên sâu Các thuật toán phát hiện đối tượng đã được thiết kế dựa trên phần cứng, đặc biệt trong các hệ thống thời gian thực và nhúng, với ứng dụng quan trọng trong tìm kiếm cứu nạn, y sinh học và giám sát cơ sở hạ tầng Luận văn này đề xuất các kỹ thuật mới như ROI và đường cơ sở phát hiện tọa độ nhằm tăng tốc độ xử lý cho thuật toán AdaBoost Để giảm tỷ lệ phát hiện lỗi, đề tài cũng đưa ra chiến lược đào tạo bổ sung mẫu dương và âm cùng với hiệu chỉnh các tầng trong quá trình học máy Mô hình được đề xuất có khả năng phát hiện đối tượng với tốc độ 55 khung hình/giây, tỷ lệ phát hiện 99.4% và tỷ lệ cảnh báo lỗi thấp 4.08%.

PHẦN MỀM CHO HỆ THỐNG TRỢ LÁI THÔNG MINH

2.2.1 Tổng quan về visual studio 2010

Hình 2.1 Cấu trúc Visual Studio 2010

Visual Studio là một bộ công cụ toàn diện, hỗ trợ phát triển ứng dụng cho máy tính để bàn và ứng dụng web doanh nghiệp theo nhóm Nó không chỉ cho phép xây dựng các ứng dụng desktop hiệu suất cao mà còn cung cấp các công cụ phát triển mạnh mẽ, giúp đơn giản hóa quá trình thiết kế, phát triển và triển khai các giải pháp doanh nghiệp.

- Sử dụng tính năng trong Visual Studio 2010 để quản lý cơ sở dữ liệu

Trong quá trình phát triển phần mềm, lập trình viên thường gặp khó khăn khi làm việc với cơ sở dữ liệu SQL Server do không phải ai cũng có SQL Management Studio cài đặt Để thực hiện các tác vụ như viết câu lệnh truy vấn, tạo bảng dữ liệu, hay viết hàm và thủ tục, máy tính của lập trình viên cần phải có SQL Management Studio và công cụ truy xuất trực tiếp vào cơ sở dữ liệu.

Hình 2.2 Thiết lập cấu hình

Sản phẩm này cung cấp cho lập trình viên các công cụ chuyên nghiệp để thao tác hiệu quả với cơ sở dữ liệu, bao gồm nhiều tính năng hữu ích.

Mô hình hóa yêu cầu phần mềm:

Việc mô tả giao tác của người dùng trong hệ thống dựa trên các tác nhân và mối quan hệ giữa chúng, bao gồm quan hệ kế thừa, phụ thuộc, , và các quan hệ khác Đồng thời, các module trong hệ thống phần mềm được xác định từ nhóm các giao tác có cùng mục đích, mỗi nhóm này tương ứng với một module hoặc gói (package) trong hệ thống.

Sơ đồ hoạt động minh họa các quy trình nghiệp vụ trong tổ chức, chẳng hạn như quy trình cho vay tại ngân hàng Nó mô tả luồng dữ liệu giữa các thao tác, thể hiện sự tương tác thông qua việc gửi, nhận và chấp thuận Đặc biệt, sơ đồ hoạt động được hỗ trợ bởi Visual Studio 2010, giúp người dùng dễ dàng theo dõi và quản lý các thao tác trong quy trình.

Ra (Input/Output) mô tả quá trình nhập và xuất dữ liệu trong các thao tác và sự kiện Visual Studio 2010 hỗ trợ nhiều ký tự để biểu thị các sự kiện như bắt đầu, kết thúc, cấu trúc lặp và các thao tác xử lý khác Việc xây dựng sơ đồ hoạt động trở nên nhanh chóng và tiện lợi nhờ tính năng kéo thả các đối tượng từ thanh công cụ.

Mô hình hóa kiến trúc phần mềm:

Công việc kiến trúc phần mềm ứng dụng liên quan đến việc xác định cấu trúc tổng thể của hệ thống phần mềm, bao gồm chức năng, vấn đề kỹ thuật, dữ liệu và triển khai Điều này giúp tạo ra một cái nhìn tổng quát về hệ thống, xác định các thành phần luận lý của dữ liệu và mối quan hệ giữa chúng Qua đó, kiến trúc sư phần mềm sẽ thiết lập kiến trúc dự kiến, xác định thứ tự ưu tiên và mức độ quan trọng của các thành phần trong hệ thống, cũng như các lớp để giải quyết các vấn đề chức năng và phi chức năng Visual Studio 2010 hỗ trợ UML Modeling Project, giúp tối ưu hóa quá trình kiến trúc ứng dụng trong vòng đời phát triển phần mềm.

Trong Visual Studio 2010, việc xây dựng các sơ đồ UML được thực hiện bằng một trong hai cách sau:

Sử dụng UML Model Project (.modelproj)

Sử dụng Net Code Project.

Phần mềm ứng dụng được tổ chức thành các tầng luận lý như Presentation, Business, Data Access và Database/Persistence, nhằm thể hiện mối quan hệ và sự tương tác giữa các thành phần Mặc dù Visual Studio 2010 không cung cấp sơ đồ chức năng hay phạm vi kỹ thuật của phần mềm, nhưng sơ đồ phân tầng trong mô hình kiến trúc ứng dụng giúp mô tả rõ ràng kiến trúc của các tầng trong hệ thống.

Mỗi tầng trong sơ đồ kiến trúc đại diện cho một hệ thống con của toàn bộ ứng dụng Trong quá trình phát triển, các thành phần như UI, Business, và Data Access được quản lý trong Visual Studio Solution Explorer và liên kết với từng tầng của sơ đồ phân tầng Nếu mã nguồn không được gắn kết đúng cách, có thể gặp vấn đề kết nối giữa các thành phần Để kiểm soát vấn đề này, tùy chọn “Architecture Validation” cho phép người dùng kiểm tra sự tương thích bằng cách nhấp chuột vào sơ đồ phân tầng.

2.2.2 Tổng quan về phần mềm mô phòng OpenCV

OpenCV, viết tắt của Open Source Computer Vision Library, là một thư viện mã nguồn mở được phát triển bằng ngôn ngữ C và C++, hỗ trợ trên các hệ điều hành Linux, Windows và Mac OS X Thư viện này được thiết kế nhằm nâng cao hiệu suất tính toán và tối ưu cho các ứng dụng thời gian thực Một điểm nổi bật của OpenCV là hệ thống dễ sử dụng, cho phép người dùng nhanh chóng phát triển các ứng dụng trong lĩnh vực thị giác máy, từ kiểm tra trong nhà máy đến y học, bảo mật và robot OpenCV cung cấp nhiều chức năng xử lý ảnh đơn giản, bao gồm cả các hàm phức tạp như dò tìm, theo dõi và nhận dạng khuôn mặt, cũng như lọc Kalman.

Kể từ khi ra mắt vào tháng 1 năm 1999, OpenCV đã trở thành công cụ quan trọng trong nhiều ứng dụng và nghiên cứu, từ hàng không vũ trụ, bản đồ web, đến y học với chức năng giảm nhiễu Nó được áp dụng trong phân tích đối tượng, an ninh, hệ thống dò tìm, theo dõi tự động, và quản lý sản xuất OpenCV cũng đóng vai trò quan trọng trong xử lý camera, ứng dụng quân sự, hệ thống hàng không không người lái và tàu ngầm, cũng như trong nhận dạng âm thanh Ngoài ra, OpenCV là chìa khóa cho các robot sử dụng thị giác máy, như Stanford và Asimo.

Hình 2.3 Quá trình phát triển của OpenCV

Lý do để lựa chọn Open CV

Thị trường thị giác máy đang phát triển mạnh mẽ, với các thư viện tiêu chuẩn tạo ra ứng dụng mới và giải pháp xử lý hiệu quả hơn, đặc biệt khi tận dụng cấu trúc của Intel Việc cập nhật thường xuyên các thư viện giúp xây dựng các mẫu ứng dụng có khả năng thực hiện các thuật toán phức tạp, như dò tìm khuôn mặt.

Có rất nhiều công nghệ hiện đại và các công ty lớn sử dụng thư việnOpenCV trong ứng dụng của mình (điển hình như Intel, Microsoft, IBM, Siens,

Google v v.) và các trung tâm nghiên cứu như (Stanford, MIT, CMU, Cambridge, INRIA…).

Diễn đàn OpenCVyahoogroups.com hiện có hơn 14.000 thành viên, với trung bình từ 10 đến 20 bức thông điệp được trao đổi mỗi ngày Điều này chứng tỏ rằng OpenCV đã đóng góp vô cùng lớn vào sự phát triển của lĩnh vực thị giác máy.

OpenCV có cấu trúc được chia thành 5 phần chính, giúp người dùng hiểu rõ cách thức hoạt động của nó Bốn trong số các phần này được thể hiện trong hình 6, cung cấp cái nhìn tổng quan về nội dung và chức năng của OpenCV.

CV (computer vision) là thành phần chứa những xử lý ảnh cơ sở và thuật toán thị giác máy ở mức cao.

MLL (machine learning library) là thư viện machine learning, cái này bao gồm rất nhiều lớp thống kê và gộp các công cụ xử lý.

HighGui chứa các thủ tục vào ra và các hàm dùng cho việc lưu trữ và tải ảnh video.

CXCore chứa cấu trúc và nội dung dữ liệu cơ sở.

Hình 2.4 Cấu trúc cơ sở của OpenCV

OpenCV cung cấp các hàm cho phép tương tác trực tiếp với hệ điều hành và phần cứng như Webcam thông qua thư viện HighGUI Thư viện này hỗ trợ mở cửa sổ, hiển thị hình ảnh, đọc các file đồ họa như jpg, bmp và video như avi, wma, mp4 Ngoài ra, HighGUI còn xử lý các sự kiện chuột và bàn phím, đồng thời cho phép người dùng lựa chọn thuật toán linh động hơn với các hàm tạo thanh trượt và công tắc Để làm việc hiệu quả với OpenCV, người dùng cần nắm vững các hàm trong thư viện này.

MÔ HÌNH HỆ THỐNG TRỢ LÁI THÔNG MINH ĐƯỢC ĐỀ XUẤT

Chương 3 Đánh giá hiệu suất và so sánh.

Dù thời gian và kiến thức có hạn, luận văn vẫn có thể mắc phải sai sót Rất mong nhận được ý kiến đóng góp từ thầy cô, bạn bè và đồng nghiệp để hoàn thiện hơn.

Tôi xin chân thành cảm ơn!

Thái Nguyên, ngày tháng năm 2020

Chương 1: KHÁI QUÁT CÔNG NGHỆ VÀ HỆ THỐNG TRỢ LÁI

THÔNG MINH 1.1 TỔNG QUAN VỀ HỆ THỐNG TRỢ LÁI THÔNG MINH

Nhạy bén ở mọi giác quan:

Tránh tai nạn và giảm thiểu hậu quả là phương pháp tiếp cận tích hợp trong nghiên cứu tai nạn của Mercedes-Benz, nhằm nâng cao an toàn giao thông.

Mercedes-Benz cam kết mang đến "cuộc sống thực sự an toàn" thông qua chiến lược "Lái xe thông minh" với nhiều hệ thống hỗ trợ và tính năng bảo vệ sáng tạo Xe hơi của bạn trở thành "bạn đồng hành thông minh", có khả năng phát hiện nguy hiểm và hỗ trợ lái xe qua cảnh báo hình ảnh, âm thanh hoặc xúc giác Một số hệ thống còn tự động can thiệp trong tình huống khẩn cấp, như phanh tự động để tránh tai nạn hoặc giảm thiểu thiệt hại, giúp lái xe thư giãn và thoải mái hơn Sự kết hợp của các cảm biến và hệ thống tiên tiến này đánh dấu bước tiến quan trọng trong việc hướng tới lái xe tự động và không tai nạn.

Hình 1.1 Tầm nhìn của một ô tô đang di chuyển trên đường

Các chức năng mới của xe dựa trên hệ thống cảm biến hiện có, bao gồm camera stereo mới và cảm biến ra-đa đa cấp, hoạt động như đôi mắt và tai của xe Camera stereo đa năng (SMPC) cung cấp khả năng quan sát lên đến 50 mét phía trước và ghi nhận môi trường trong phạm vi 500 mét, phát hiện các xe đang di chuyển, người đi bộ, biển báo giao thông và dải phân cách Dữ liệu từ các cảm biến ra-đa tầm ngắn và tầm xa cung cấp thông tin về khoảng cách từ các đối tượng phát hiện Thông tin từ hệ thống camera và ra-đa được biên soạn và kết hợp thông minh trong bộ thiết bị điều khiển, cho phép phối hợp hiệu quả giữa công nghệ an toàn chủ động và thụ động trên xe.

Hình 1.2 Hệ thống camera lắp ở đầu xe

Hệ thống tư duy tương lai:

Các hệ thống hỗ trợ lái xe mới đã cải thiện đáng kể khả năng giảm áp lực cho người lái khi điều khiển xe, bao gồm khả năng tự động theo xe phía trước, dừng xe và lưu thông Hệ thống hỗ trợ phanh kết hợp với tính năng dự đoán va chạm giúp phát hiện phương tiện và người đi bộ băng qua đường, đồng thời cảnh báo lái xe phanh kịp thời Hỗ trợ duy trì làn đường có thể nhận diện xe trong làn kế bên và giảm nguy cơ lấn làn bằng cách áp dụng phanh bên Hệ thống đèn pha chủ động cho phép chiếu sáng liên tục mà không làm chói mắt người tham gia giao thông khác Với camera ảnh nhiệt, hệ thống quan sát ban đêm cảnh báo lái xe về nguy hiểm từ người đi bộ hoặc động vật trong khu vực tối Cuối cùng, hệ thống cảnh báo mất tập trung có khả năng nhắc nhở lái xe khi không tập trung hoặc buồn ngủ ở tốc độ cao hơn.

Hình 1.3 Hệ thống cảnh báo mất tập trung

1.2 HỆ THỐNG PHÁT HIỆN VÀ PHÂN LOẠI CÁC PHƯƠNG TIỆN DI ĐỘNG

Phân loại ảnh là một lĩnh vực nghiên cứu thu hút sự quan tâm lớn, với nhiều ứng dụng thiết thực như tìm kiếm ảnh, nhận dạng và phát hiện đối tượng Trong giám sát đối tượng chuyển động từ video, phân loại ảnh đóng vai trò quan trọng sau khi phát hiện đối tượng Phương pháp phổ biến để thực hiện phân loại ảnh là đối sánh ảnh, nhằm tìm kiếm các vùng tương đồng giữa hai ảnh thông qua các điểm đặc trưng Bài toán này liên quan đến việc so sánh các đặc trưng đã được trích xuất, bao gồm đường biên, điểm ảnh đặc trưng và lược đồ xám.

Có hai vấn đề cơ bản thường đặt ra trong bài toán đối sánh ảnh:

Một là, làm sao có thể biểu diễn thông tin một cách hiệu quả nhằm thực hiện việc đối sánh hai ảnh nhanh nhất có thể;

Giải pháp đối sánh vẫn duy trì hiệu quả ngay cả khi môi trường thay đổi, bao gồm nhiễu trong quá trình thu nhận ảnh, sự thay đổi về ánh sáng và sự che khuất Những yếu tố này có thể ảnh hưởng đến độ chính xác của quá trình nhận diện, nhưng việc áp dụng các kỹ thuật xử lý ảnh tiên tiến giúp cải thiện khả năng thích ứng và độ tin cậy của giải pháp.

Các phương pháp đối sánh ảnh dựa trên điểm đặc trưng đã đạt được nhiều thành công, nhưng thường yêu cầu thời gian tính toán lớn Trong các ứng dụng thời gian thực như giám sát giao thông tự động, cần thiết phải phát triển phương pháp đối sánh ảnh hiệu quả trong thời gian thực Nghiên cứu này giới thiệu một phương pháp phân loại mạnh mẽ cho ô tô và xe máy trong ảnh giao thông, với đóng góp chính là phát hiện và phân loại các phương tiện di động cho hệ thống trợ lái thông minh, phục vụ cho việc nhận dạng và phân loại đối tượng.

1.2.1 Phương pháp phát hiện dựa trên hình dạng

Phát hiện biển báo giao thông thông qua hình dạng đã được nghiên cứu nhiều, với nhiều phương pháp khác nhau Trong số đó, phương pháp sử dụng phép biến đổi Hough được coi là phổ biến nhất.

Phép biến đổi Hough là kỹ thuật xác định hình dạng ngẫu nhiên trong ảnh bằng cách sử dụng các điểm ảnh trên biên của ảnh Kỹ thuật này đã phát triển qua nhiều biến thể trong lịch sử thị giác máy tính Bài viết tập trung vào nghiên cứu của Loy và Barnes, đề xuất phương pháp hiệu quả cho việc nhận dạng biển báo giao thông thông qua bộ phát hiện đa giác đều tổng quát Phương pháp này dựa trên phép biến đổi đối xứng xuyên tâm và bắt đầu bằng việc tính đạo hàm cấp một của ảnh gốc Ảnh đạo hàm sau đó được phân ngưỡng để loại bỏ các điểm có biên độ thấp, giữ lại các điểm ảnh khả thi cho vị trí tâm đa giác đều Mỗi điểm ảnh có thể được chọn trên nhiều vị trí dọc theo đường trực giao với đạo hàm cấp một, với khoảng cách tương ứng với bán kính của đa giác đều Cần lưu ý rằng có hai đường thẳng có thể thỏa mãn yêu cầu này, một hướng theo đạo hàm và một hướng ngược lại, cho phép linh hoạt trong việc xác định độ sáng của biển báo so với nền.

Hình 1.4 Các vị trí của một đề cử điểm ảnh cho tâm đối tượng [6]

Chiều dài đường biểu quyết được xác định bởi bán kính của đa giác đều Các điểm ảnh ở cuối đường thẳng có trọng số tiêu cực nhằm giảm thiểu tác động của những đường thẳng quá dài trong ảnh, không thể coi như là cạnh của đa giác Kết quả là ảnh đề cử được gán nhãn tương ứng.

Ngoài ảnh đề cử, một ảnh đẳng giác được tạo ra bằng cách nhân góc đạo hàm của các điểm ảnh trên cạnh của đa giác đều (sided) với một hệ số nhất định Thủ tục này đảm bảo rằng các góc sẽ bằng nhau Ví dụ, trong một tam giác đẳng giác, nếu giá trị đạo hàm tại mỗi bên lần lượt là 73°, 193° và 313°, với khoảng cách giữa các đạo hàm là 120°, thì khi nhân 73° với 3 ta được 219°, và 193° với 3 ta được 579°.

Trong bài viết này, chúng ta xem xét cách tính toán các vector đơn vị từ các điểm ảnh trong đa giác Đầu tiên, chúng ta thực hiện các phép toán như 579 0 – 360 0 = 219 0 và 313 0 x 3 = 939 0, sau đó tiếp tục với 939 0 – 2 x 360 0 = 219 0 Mỗi điểm ảnh được chọn làm tâm của đa giác sẽ tạo ra một vector đơn vị với độ dốc tương ứng với góc đạo hàm của điểm ảnh đó Các điểm ảnh tiếp theo được chọn theo một đường thẳng, nhưng dưới dạng vector đơn vị Kết quả là một ảnh mới, gọi là ảnh đẳng giác, trong đó mỗi điểm đại diện cho một vector tổng hợp từ các điểm đã chọn Những điểm này, được lấy từ các cạnh của đa giác đẳng giác, sẽ có cùng độ dốc, dẫn đến độ lớn tối đa của các vector tại trọng tâm của đa giác.

Hình 1.5 Nhân các góc gradient của một tam giác với 3 [6]

Kết quả các góc sẽ bằng nhau.

Cuối cùng, ảnh đề cử và định mức của ảnh đẳng giác được kết hợp để tạo ra đáp ứng tổng thể Phương thức này có độ phức tạp O(Nkl), trong đó l là độ dài cực đại của đường thẳng được chọn, N là số lượng điểm ảnh trong ảnh và k là số lượng bán kính đang được xem xét.

Khuyết điểm lớn nhất của phương pháp này là cần phải biết trước bán kính của đa giác, điều này thường rất khó khăn Mặc dù có thể thử nghiệm với nhiều bán kính khác nhau, nhưng quá trình này tốn nhiều thời gian xử lý.

1.2.2 Phương pháp phát hiện dựa trên máy học

ĐÁNH GIÁ HIỆU SUẤT VÀ SO SÁNH

Ngày đăng: 05/05/2021, 19:12

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w