Giới thiệu về YOLO

Một phần của tài liệu HD3 trần ngọc tiến nghiên cứu, thiết kế, chế tạo xe tự hành sử dụng mạng học sâu nhân tạo (Trang 41 - 45)

Về YOLO, một cách tiếp cận mới để phát hiện đối tượng. Công việc trước về phát hiện đối tượng đặt lại các bộ phân loại để thực hiện phát hiện. Thay vào đó, đóng khung phát hiện đối tượng như một vấn đề hồi quy cho các hộp giới hạn được phân tách theo không gian và xác suất lớp liên quan. Một mạng nơ-ron duy nhất dự đoán các hộp giới hạn và xác suất lớp trực tiếp từ các hình ảnh đầy đủ trong một lần đánh giá. Vì toàn bộ đường ống phát hiện là một mạng duy nhất, nó có thể được tối ưu hóa end-to-end trực tiếp dựa trên hiệu suất phát hiện. Kiến trúc thống nhất của chúng tôi là cực kỳ nhanh chóng. Mô hình YOLO cơ sở của chúng tôi xử lý hình ảnh trong thời

gian thực với tốc độ 45 khung hình / giây. Một phiên bản mạng nhỏ hơn, Fast YOLO, xử lý 155 khung hình / giây đáng kinh ngạc trong khi vẫn đạt được gấp đôi mAP của các máy dò thời gian thực khác. So với các hệ thống phát hiện hiện đại, YOLO mắc nhiều lỗi bản địa hóa hơn nhưng ít có khả năng dự đoán dương tính giả trên nền hơn. Cuối cùng, YOLO học các đại diện rất chung của các đối tượng. Nó vượt trội hơn các phương pháp phát hiện khác, bao gồm DPM và R-CNN, khi tổng quát hóa từ hình ảnh tự nhiên sang các lĩnh vực khác như tác phẩm nghệ thuật. [15]

You only look once (YOLO) là một mô hình CNN để phát hiện vật thể mà một ưu điểm nổi trội là nhanh hơn nhiều so với những mô hình cũ. YOLO mang ý nghĩa chỉ cần nhìn 1 lần là có thể phát hiện ra vật thể. Về độ chính xác thì YOLO có thể không phải là thuật toán tốt nhất nhưng nó là thuật toán nhanh nhất trong các lớp mô hình phát hiện vật thể. Nó có thể đạt được tốc độ gần như bằng thời gian thực mà độ chính xác không quá giảm so với các model thuộc top đầu.

Hình 2.26 Ví dụ về phát hiện vật thể của YOLO

YOLO là thuật toán object detection nên mục tiêu của mô hình không chỉ là dự báo nhãn cho vật thể như các bài toán phân loại mà nó còn xác định vị trí của vật thể. Do đó YOLO có thể phát hiện được nhiều vật thể có nhãn khác nhau trong một bức ảnh thay vì chỉ phân loại duy nhất một nhãn cho một bức ảnh.

YOLO sử dụng một phương pháp hoàn toàn khác. YOLO là một mạng nơ-ron tích chập thông minh (CNN) để thực hiện phát hiện đối tượng trong thời gian thực. Thuật toán áp dụng một mạng nơ-ron duy nhất cho bức tranh đầy đủ và sau đó chia

bức tranh thành các khu vực và dự đoán các hộp giới hạn và xác suất cho mọi ngôn ngữ. Các hộp giới hạn này được tính theo các xác suất dự đoán.

YOLO được biết đến nhiều vì nó đạt được độ chính xác cao trong khi cũng có tùy chọn chạy thời gian thực. Thuật toán “chỉ nhìn một lần” vào bức tranh như trong nó yêu cầu chỉ một lần truyền chuyển tiếp qua mạng nơ-ron để đưa ra dự báo. Sau khi triệt tiêu tối đa (đảm bảo thuật toán phát hiện đối tượng chỉ phát hiện từng đối tượng một lần), tại thời điểm đó, nó tạo ra các đối tượng được nhận dạng cùng với các hộp giới hạn.

Cấu trúc đặc biệt của mạng nơ-ron phù hợp để xử lý cấu trúc liên kết dữ liệu dạng lưới. Tính năng đặc biệt của CNNs có tầm quan trọng trong việc phát hiện đối tượng là chia sẻ tham số. Không giống như mạng nơ-ron truyền thẳng, trong đó mỗi tham số trọng số được sử dụng một lần, trong kiến trúc CNN, mỗi thành viên của hạt nhân được sử dụng ở mọi vị trí của đầu vào, có nghĩa là học một tập tham số cho mọi vị trí thay vì một tập tham số riêng biệt. Tính năng này đóng vai trò quan trọng trong việc chụp toàn cảnh trên đường. Trên hình 2.17 được trình bày tổng quan về thuật toán YOLO v3. [16]

Hình 2.27 Tổng quan về thuật toán YOLO 2.3.2.Thuật toán YOLO

Con người nhìn lướt qua một hình ảnh và ngay lập tức biết được những đối tượng nào trong hình ảnh, vị trí của chúng và cách chúng tương tác. Hệ thống thị giác của con người nhanh và chính xác, cho phép chúng ta thực hiện các nhiệm vụ phức tạp

như lái xe mà không cần suy nghĩ nhiều về ý thức. Các thuật toán nhanh, chính xác để phát hiện đối tượng sẽ cho phép máy tính điều khiển ô tô mà không cần cảm biến chuyên dụng, cho phép các thiết bị hỗ trợ truyền tải thông tin hiện trường theo thời gian thực cho người dùng và mở khóa tiềm năng cho các mục đích chung, các hệ thống robot đáp ứng. [15]

Các hệ thống phát hiện hiện tại sử dụng lại các bộ phân loại để thực hiện phát hiện. Để phát hiện một đối tượng, các hệ thống này lấy một bộ phân loại cho đối tượng đó và đánh giá nó ở các vị trí và tỷ lệ khác nhau trong một hình ảnh thử nghiệm. Các hệ thống như mô hình bộ phận có thể biến dạng (DPM) sử dụng phương pháp tiếp cận cửa sổ trượt trong đó trình phân loại được chạy ở các vị trí cách đều nhau trên toàn bộ hình ảnh. Các phương pháp tiếp cận gần đây hơn như R-CNN sử dụng đề xuất khu vực.

Hình 2.28 Hệ thống phát hiện YOLO.

Xử lý hình ảnh với YOLO rất đơn giản và dễ hiểu. Hệ thống của chúng tôi (1) thay đổi kích thước hình ảnh đầu vào thành 448 × 448, (2) chạy một mạng phức hợp duy nhất trên hình ảnh và (3) ngưỡng các phát hiện kết quả theo độ tin cậy của mô hình.

Các phương pháp để tạo các hộp giới hạn tiềm năng trước tiên trong một hình ảnh và sau đó chạy bộ phân loại trên các hộp được đề xuất này. Sau khi phân loại, xử lý hậu kỳ được sử dụng để tinh chỉnh các hộp giới hạn, loại bỏ các phát hiện trùng lặp và xếp lại các hộp dựa trên các đối tượng khác trong cảnh. Những đường ống phức tạp này rất chậm và khó tối ưu hóa vì mỗi thành phần riêng lẻ phải được đào tạo riêng biệt.

Sắp xếp lại việc phát hiện đối tượng như một bài toán hồi quy duy nhất, trực tiếp từ pixel hình ảnh đến tọa độ hộp giới hạn và xác suất lớp. Sử dụng hệ thống của chúng tôi, bạn chỉ nhìn một lần (YOLO) vào một hình ảnh để dự đoán những đối tượng nào đang hiện diện và chúng đang ở đâu.

YOLO rất đơn giản xem hình 2.18. Một mạng tích chập đơn đồng thời dự đoán nhiều hộp giới hạn và xác suất lớp cho các hộp đó. YOLO đào tạo trên hình ảnh đầy đủ và trực tiếp tối ưu hóa hiệu suất phát hiện. Mô hình thống nhất này có một số lợi ích so với các phương pháp phát hiện đối tượng truyền thống.

Đầu tiên, YOLO cực kỳ nhanh. Vì chúng tôi định khung phát hiện là một vấn đề hồi quy nên chúng tôi không cần một đường dẫn phức tạp. Chúng tôi chỉ cần chạy mạng nơ-ron của mình trên một hình ảnh mới tại thời điểm thử nghiệm để dự đoán các phát hiện. Mạng cơ sở của chúng tôi chạy ở tốc độ 45 khung hình / giây mà không cần xử lý hàng loạt trên GPU Titan X và phiên bản nhanh chạy với tốc độ hơn 150 khung hình / giây. Điều này có nghĩa là chúng tôi có thể xử lý video phát trực tuyến trong thời gian thực với độ trễ ít hơn 25 mili giây. Hơn nữa, YOLO đạt được độ chính xác trung bình cao hơn gấp đôi so với các hệ thống thời gian thực khác.

Thứ hai, lý do YOLO toàn cầu hóa về hình ảnh khi đưa ra dự đoán. Không giống như các kỹ thuật dựa trên đề xuất vùng và cửa sổ trượt, YOLO nhìn thấy toàn bộ hình ảnh trong thời gian đào tạo và kiểm tra, do đó nó mã hóa ngầm thông tin theo ngữ cảnh về các lớp cũng như diện mạo của chúng. Fast R-CNN, một phương pháp phát hiện hàng đầu, nhầm lẫn các mảng nền trong hình ảnh cho các đối tượng vì nó không thể nhìn thấy bối cảnh lớn hơn. YOLO mắc ít hơn một nửa số lỗi nền so với Fast R- CNN.

Thứ ba, YOLO học các đại diện tổng quát của các đối tượng. Khi được đào tạo về hình ảnh tự nhiên và thử nghiệm trên tác phẩm nghệ thuật, YOLO vượt trội hơn các phương pháp phát hiện hàng đầu như DPM và R-CNN bởi một biên độ rộng. Vì YOLO có khả năng tổng quát hóa cao nên ít có khả năng bị hỏng khi áp dụng cho các miền mới hoặc đầu vào không mong muốn.

Tất cả mã đào tạo và kiểm tra của chúng tôi đều là mã nguồn mở. Nhiều mô hình được đào tạo trước cũng có sẵn để tải xuống. [15]

Một phần của tài liệu HD3 trần ngọc tiến nghiên cứu, thiết kế, chế tạo xe tự hành sử dụng mạng học sâu nhân tạo (Trang 41 - 45)

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

(120 trang)