Tìm hiểu về YOLO trong bài toán realtime object detection

12 15 0
Tìm hiểu về YOLO trong bài toán realtime object detection

Đ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

Tìm hiểu về YOLO trong bài toán realtime object detection I. Yolo là gì? Object Detection là một bài toán quan trọng trong lĩnh vực Computer Vision, thuật toán Object Detection được chia thành 2 nhóm chính: Họ các mô hình RCNN ( RegionBased Convolutional Neural Networks) để giải quyết các bài toán về định vị và nhận diện vật thể. Họ các mô hình về YOLO (You Only Look Once) dùng để nhận dạng đối tượng được thiết kế để nhận diện các vật thể realtime. Yolo là một mô hình mạng CNN cho việc phát hiện, nhận dạng, phân loại đối tượng. Yolo được tạo ra từ việc kết hợp giữa các convolutional layers và connected layers. Trong đó, các convolutional layers sẽ trích xuất ra các feature – đặc trưng của ảnh, còn fullconnected layers sẽ dự đoán ra xác suất đó và tọa độ của đối tượng

Tìm hiểu YOLO tốn real-time object detection I Yolo gì? Object Detection tốn quan trọng lĩnh vực Computer Vision, thuật toán Object Detection chia thành nhóm chính: - Họ mơ hình RCNN ( Region-Based Convolutional Neural Networks) để giải toán định vị nhận diện vật thể - Họ mơ hình YOLO (You Only Look Once) dùng để nhận dạng đối tượng thiết kế để nhận diện vật thể real-time Yolo mơ hình mạng CNN cho việc phát hiện, nhận dạng, phân loại đối tượng Yolo tạo từ việc kết hợp convolutional layers connected layers Trong đó, convolutional layers trích xuất feature – đặc trưng ảnh, full-connected layers dự đốn xác suất tọa độ đối tượng II - Hoạt động thuật toán YOLO Tổng hợp số khái niệm liên quan AI - Artificial intelligence: Trí tuệ nhân tạo ngành khoa học cơng nghệ cho phép máy móc bắt trước hành vi người Machine Learning: tập AI, sử dụng thuật toán tập liệu “training” để máy móc hoạt động người nâng cao hiệu suất Deep Learning: tập hai thành phần trên, hoạt động dựa cấu trúc giống não người Cấu trúc gọi Mạng nơ-ron nhân tạo – Artificial Neural Network - CNN – Convolutional Neural Network: Mạng nơ-ron tích chập mạng nơ-ron nhân tạo sử dụng nhiều deep learning Thuật toán Yolo hoạt động liên quan đến cấu trúc Hoạt động II.1 Với ảnh đơn giản, có đối tượng đối tượng ảnh Ví dụ: Làm máy tính để nhận diện chó ảnh? Hình - - Giải vấn đề Đầu tiên, phân loại đối tượng sử dụng mạng nơ-ron (Neural Network) Giả sử có hai Class: o – Con chó o – Con người  Thuật tốn liên quan: Image classification Xác định vị trí xác đối tượng hình bao quanh(Bounding box) =>Thuật tốn liên quan: Object Localization - Tấm ảnh phân loại đánh dấu vị trí đối tượng BB Khi thơng tin liên quan đến BB ảnh thể vector Vector chứa thơng tin cho biết xác vị trí loại(Class) đối tượng Các tham số vector: o o o o Pc: xác suất dự đốn có đối tượng BB X, Y: tọa độ trung tâm đối tượng BB W, H: dài, rộng BB C1, C2: class - Một số ví dụ: Con chó Con người Khơng có - Dùng tập liệu để train cho mơ hình mạng CNN Data = tập ảnh xác định vị trí đối tượng BB Labels = vector tương ứng với BB - Vậy đưa vào ảnh mới, ta nhận vector tương ứng đối tượng BB có Trên ta nói nguyên lý hoạt động thuật toán YOLO với ảnh đơn giản Các ảnh phức tạp trình bày phần II.2 Với ảnh phức tạp, đối tượng khơng bước ảnh có nhiều thành phần khác Ta xử lý ảnh phức tạp theo cách chuẩn hóa thành grid với nhiều ô Và với ô áp dụng cách tương tự 2.1 Ảnh đầu vào chuẩn hóa thành grid có kích thước S×S ơ, thường 3×3, 7×7, 9×9 việc chia có ảnh hưởng tới việc mơ hình phát đối tượng, trình bày phần sau Nếu INPUT: ảnh kích thước S x S OUTPUT: ma trận chiều kích thước S x S x N x (5 + M ) có số lượng tham số N x (M + 5) Trong đó, N số lượng BB, M số lượng Class Ví dụ với hình ảnh chia thành 3×3 = ơ, cần dự đóan N = BB (BB màu đỏ, BB màu xanh) Và giả sử M = class : người đường, tơ, xe đạp Có tổng 3x3x2 = 18 BB Mỗi có 2x8 = 16 tham số, tham số BB màu đỏ, tham số BB màu xanh, tham số class cho BB Output ma trận 3x3x2x8 S = 3, N = BB, M = class Như 2.1, tương ứng với vector Cịn toàn ảnh biến đổi thành ma trận chiều - Dùng tập liệu để train cho mơ hình mạng CNN Data = tập ảnh xác định vị trí đối tượng BB Labels = ma trận tương ứng - Vậy đưa vào ảnh mới, ta nhận ma trận tương ứng Và từ ma trận đưa thông tin để nhận dạng đối tượng – Object Detection Trên tồn nội dung trình bày hoạt động thuật toán YOLO để nhận dạng đối tượng III Vấn đề phát sinh Multi-BB Giải thuật tốn Non Maximum Suppression dựa thơng số IOU: IOU(Intersection Over Union) - hàm đánh giá độ xác object detector tập liệu cụ thể Công thức: Trong Area of Overlap diện tích phần giao predicted bounding box với grouth-truth bouding box , cịn Area of Union diện tích phần hợp predicted bounding box với grouth-truth bounding box Những bounding box đánh nhãn tay tập traing set test set Nếu IOU > 0.5 prediction đánh giá tốt IV Loss Function Hàm lỗi YOLO tính việc dự đốn nhãn(labels) mơ hình để tính Cụ thể tổng độ lỗi thành phần sau: - Độ lỗi việc dự đoán loại nhãn object - Classifycation loss Độ lỗi dự đoán tọa độ tâm, chiều dài, rộng boundary box (x, y ,w, h) Localization loss Độ lỗi việc dự đoán bounding box chứa object so với nhãn thực tế vng - Confidence loss Classifycation loss Classifycation loss - độ lỗi việc dự đoán loại nhãn cuả object, hàm lỗi tính vng có xuất object, cịn vng khác ta khơng quan tâm Classifycation loss tính cơng thức sau: Localization loss Localization loss hàm lỗi dùng để tính giá trị lỗi cho boundary box dự đoán bao gồm tọa độ tâm, chiều rộng, chiều cao so với vị trí thực tế từ liệu huấn luyện mơ hình Lưu ý khơng nên tính giá trị hàm lỗi trực tiếp từ kích thức ảnh thực tế mà cần phải chuẩn hóa [0, 1] so với tâm bounding box Việc chuẩn hóa kích thước giúp cho mơ hình dự đốn nhanh xác so với để giá trị mặc định ảnh Hãy xem ví dụ: Giá trị hàm Localization loss tính tổng giá trị lỗi dự đốn toạ độ tâm (x, y) (w, h) predicted bounding box với grouth-truth bounding box Tại có chưa object, ta chọn boundary box có IOU (Intersect over union) tốt nhất, sau tính độ lỗi theo boundary box Giá trị hàm lỗi dự đoán tọa độ tâm (x, y) predicted bounding box (x̂, ŷ) tọa độ tâm truth bounding box tính sau : GIá trị hàm lỗi dự đốn (w, h ) predicted bounding box so với truth bounding box tính sau : Với ví dụ S =7, B =2, cịn λcoord trọng số thành phần paper gốc tác giả lấy giá trị Confidence loss Confidence loss độ lỗi dự đốn boundary box chứa object so với nhãn thực tế vng Độ lỗi tính vng chứa object khơng chứa object Với ví dụ S =7, B =2, λnoobject trọng số thành phần paper gốc tác giả lấy giá trị 0.5 Đối với hộp j ô thứ i xuất hiệu object Ci =1 ngược lại Total loss Tổng lại có hàm lỗi tổng hàm lỗi : V The Network Như ta nói mơ hình mạng YOLO mơ hình mạng CNN thơng thường gồm convolutional layers kết hợp maxpooling layers cuối lớp fully connected layers, với hàm kích hoạt cho layer cuối linear activation function tất layers khác sử dụng leaky RELU : s

Ngày đăng: 21/04/2023, 08:34

Tài liệu cùng người dùng

Tài liệu liên quan