Neo nhanh hơn RCNN


10

Trong bài viết RCNN nhanh hơn khi nói về việc neo, chúng có ý nghĩa gì khi sử dụng "kim tự tháp của các hộp tham chiếu" và làm thế nào được thực hiện? Có phải điều này chỉ có nghĩa là tại mỗi điểm neo W * H * k, một hộp giới hạn được tạo ra?

Trong đó W = chiều rộng, H = chiều cao và k = số tỷ lệ khung hình * tỷ lệ num

liên kết đến giấy: https://arxiv.org/abs/1506.01497


Đây là một câu hỏi rất hay.
Michael R. Chernick

Câu trả lời:


10

Neo giải thích

Neo

Hiện tại, bỏ qua thuật ngữ ưa thích của "kim tự tháp của các hộp tham chiếu", các neo không là gì ngoài hình chữ nhật có kích thước cố định sẽ được đưa vào Mạng Đề xuất Vùng. Các neo được xác định trên bản đồ đặc trưng tích chập cuối cùng, có nghĩa là có (Hfemộttbạnremmộtp*Wfemộttbạnremmộtp)*(k)của họ, nhưng chúng tương ứng với hình ảnh. Đối với mỗi neo thì RPN dự đoán xác suất chứa một đối tượng nói chung và bốn tọa độ hiệu chỉnh để di chuyển và thay đổi kích thước của neo đến đúng vị trí. Nhưng làm thế nào để hình học của neo phải làm bất cứ điều gì với RPN?

Neo thực sự xuất hiện trong chức năng mất

Khi huấn luyện RPN, đầu tiên nhãn lớp nhị phân được gán cho mỗi neo. Các neo có liên kết giao nhau ( IoU ) chồng chéo với hộp sự thật, cao hơn một ngưỡng nhất định, được gán một nhãn dương (tương tự các neo có IoU dưới ngưỡng nhất định sẽ được gắn nhãn Phủ định). Các nhãn này được sử dụng thêm để tính toán hàm mất:

Chức năng mất RPN

là đầu ra đầu phân loại của RPN xác định xác suất của neo để chứa một đối tượng. Đối với neo dán nhãn là Negative, không có thiệt hại phát sinh từ hồi quy - p * , nhãn trên mặt đất thật là zero. Nói cách khác, mạng không quan tâm đến tọa độ đầu ra cho các neo âm và rất vui miễn là nó phân loại chúng chính xác. Trong trường hợp neo tích cực, mất hồi quy được tính đến. t là đầu ra hồi quy của RPN, một vectơ biểu thị 4 tọa độ tham số của hộp giới hạn dự đoán. Việc tham số hóa phụ thuộc vàohình dạng neovà như sau:pp*t

nhập mô tả hình ảnh ở đây

trong đó x,y,w,x,xmột,x*y,w,h

Cũng lưu ý các neo không có nhãn không được phân loại cũng không được định hình lại và RPM chỉ đơn giản là ném chúng ra khỏi các tính toán. Khi công việc của RPN được thực hiện và các đề xuất được tạo, phần còn lại rất giống với Fast R-CNN.


@Fathi Còn nếu chúng ta có nhiều lớp thì sao? Theo như tôi biết, trong Fast R-CNN, mỗi RoI đào tạo được chỉ định một lớp sự thật nền tảng. Vì vậy, tôi đoán điều gì đó tương tự xảy ra ở đây?
thanasissdr

@Fathi Tôi hoàn toàn đồng ý với những gì bạn đang nói, vì vậy tôi cho rằng bạn đồng ý với tôi. Ý tôi là các tác giả của bài báo gốc cho Faster R-CNN chỉ sử dụng hai lớp (nền / đối tượng) để đơn giản, cố gắng giải thích cách thức hoạt động của RPN, phải không? Vì vậy, thay vì chỉ có hai lớp, tôi có thể có nhiều hơn chỉ hai và tôi đoán rằng tôi có thể có chức năng mất entropy chéo đã biết, phải không?
thanasissdr

@thanasissdr Ý tưởng cơ bản đằng sau Faster R-CNN là "khi mạng lưới thần kinh rất tốt trong mọi thứ khác, tại sao không sử dụng chúng cho các đề xuất khu vực?". So sánh Fast R-CNN với R-CNN tiêu chuẩn, điểm khác biệt duy nhất là các đề xuất RoI - một lần nữa được thực hiện bằng cách sử dụng các kỹ thuật cũ, ví dụ: Chọn lọc hoặc EdgeBox - được ánh xạ từ hình ảnh thô sang các tính năng tích chập, sau đó được đưa vào các FC. Bằng cách này, quá trình chuyển tiếp của mỗi RoI thông qua CNN được bỏ qua.
Mahan Fathi

Trong R-CNN nhanh hơn, RPN học cách đề xuất các vùng thích hợp. Khi RPN được thực hiện, phần còn lại tương tự như Fast R-CNN và các FC phân loại và hồi quy các đề xuất.
Mahan Fathi

@thanasissdr Vâng. Chúng ta ở trong cùng hoàn cảnh. Tôi cho rằng bạn có thể phân loại theo RPN, nhưng điều đó sẽ không cần thiết vì mạng FC thực hiện phân loại lại và không gặp khó khăn khi từ chối các đề xuất rác. Ngoài ra, hãy suy nghĩ về đường ống dẫn, bạn sẽ sử dụng điểm số phân loại như thế nào và chúng sẽ giúp ích như thế nào? Đứng cuối cùng của tôi là, phân loại (nền / đối tượng) là một nền tảng trong Faster R-CNN.
Mahan Fathi

1

Tôi đã đọc bài báo này ngày hôm qua và, ngay từ cái nhìn đầu tiên, nó cũng khó hiểu với tôi. Sau khi đọc lại tôi đã đi đến kết luận này:

  • Lớp cuối cùng của mạng ban đầu (ZF hoặc VGG-16) đóng vai trò là đầu vào cho Mạng đề xuất khu vực và nhóm RoI. Trong trường hợp VGG-16, lớp đối lưu cuối cùng này là a 7x7x512 (HxWxD).
  • Lớp này được ánh xạ tới lớp 512 chiều với 3x3lớp đối lưu. Kích thước đầu ra là 7x7x512(nếu sử dụng phần đệm).
  • Lớp này được ánh xạ tới một lớp 7x7x(2k+4k)(ví dụ 7x7x54) với một 1x1lớp đối lưu cho mỗi khộp neo.

Bây giờ, theo Hình 1 trong bài báo, bạn có thể có một hình chóp hình ảnh đầu vào (cùng hình ảnh với tỷ lệ khác nhau), hình chóp bộ lọc (bộ lọc có tỷ lệ khác nhau, trong cùng một lớp) hoặc hình chóp hộp tham chiếu. Cái thứ hai đề cập đến các khộp neo ở lớp cuối cùng của mạng đề xuất khu vực. Thay vì các bộ lọc với các kích thước khác nhau được xếp chồng lên nhau (trường hợp giữa), các bộ lọc có kích thước và tỷ lệ khung hình khác nhau được xếp chồng lên nhau.

Nói tóm lại, đối với mỗi điểm neo ( HxWví dụ 7x7), một kim tự tháp của các hộp tham chiếu ( kví dụ 9) được sử dụng.


nhưng chính xác thì hộp neo là gì? Mục đích của mỗi hộp neo: được sử dụng làm đầu vào cho RPN để dự đoán một delta trong chiều rộng và chiều cao của hộp neo cho mỗi hộp neo được coi là một phần của tiền cảnh?
BadProgrammer

RPN dự đoán cả sự dịch chuyển delta của vị trí tiền cảnh và điểm số đối tượng. Cái sau cố gắng dự đoán rõ ràng nếu nó là nền hoặc tiền cảnh (cũng xem chú thích 3).
Pieter

Bạn có thể giải thích làm thế nào một 3x3lớp đối lưu dịch sang 7x7? Trong prototxt, nó nói phần đệm là 1 trên lớp VGG16 cuối cùng.
Klik
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.