Mạng Nơ ron tích chập khu vực nhanh (Fast R-CNN)

Một phần của tài liệu Đề tài nghiên cứu ứng dụng thuật toán mạng nơ ron tích chập nhận dạng các đối tượng di động (Trang 32 - 35)

5. Nội dung nghiên cứu

1.3.3.Mạng Nơ ron tích chập khu vực nhanh (Fast R-CNN)

Sau khi đã có đầu ra của các khu vực, chúng ta sẽ tìm hiểu về khái niệm khu vực. Tại mỗi vị trí của cửa sổtrượt trên đặc trưng tích chập, chúng ta tạo ra k khu vực tương ứng ở hình ảnh gốc. Trong nghiên cứu [7] tác giả sử dụng một hình vuông, 2 hình chữ nhật với tỉ lệ chiều rộng, chiều dài là 1×2 hoặc 2×1, cùng với 3 kích cỡkhác nhau, như vậy k= 3×3 = 9.

Các khu vực này sẽ được gán mác là tích cực hoặc tiêu cực dựa vào diện tích chồng chéo với khu vực chứa vật thể (ground truth box-hộp chứa vật thể) theo luật như sau.

Các khu vực được phân loại là tích cực nếu:

- Là khu vực có tỉ lệ diện tích chồng chéo trên diện tích chồng chéo (Intersection- over-Union) lớn nhất với một ground truth box.

- Là khu vực có tỉ lệ giao nhau với một ground truth lớn hơn 0.7.

Các khu vực được phân loại là tiêu cực nếu có giá trị IoU (Region of Interest- khu vực quan tâm) bé hơn 0.3.

Tại sao phải tạo ra những khu vực này? Câu trả lời gồm 2 nguyên nhân chính: - Dựa phân loại của khu vực, để dự đoán xác suất chứa vật thể của các khu vực. - Dựa vào khoảng cách từ anchor (mẫu) đến ground truth box, để dự đoán vị trí của khung.

Từ đây ta xác định được mục tiêu đầu ra của hộp hồi quy (box-regression) và hộp phân loại (box-classification) được nhắc tới ở phần cấu trúc mạng RPN.

Box-classification dựđoán xác suất chứa vật thể của k khu vực được đề xuất, tương ứng với k anchor tại từng vị trí của cửa sổ trượt (sliding-window).

Box-regression dự đoán khoảng cách từ anchor đến khung dữ liệu thật tương ứng. Tuy nhiên là kích thước của các khu vực khác nhau nên khi làm phẳng sẽ ra các véctơ có kích thước khác nhau nên không thể áp dụng mạng Nơ ron (neural network) được. Nó đã thay đổi kích thước các khu vực về cùng kích thước trước khi dùng thay

18 đổi cách học. Tuy nhiên ở bản đồ đặc trưng ta không thể thay đổi kích thước được, nên ta phải có cách khác để chuyển các khu vực trong bản đồ đặc trưng về cùng kích thước. Do đó ROI pooling (khu vực quan tâm) ra đời.

1.3.3.1. Khu vực quan tâm (ROI pooling)

ROI pooling (Region of Interest pooling) là một dạng của pooling layer. Điểm khác so với max pooling (phép gộp lấy giá trị lớn nhất) hay average pooling (phép gộp chung) là bất kể kích thước của đầu vào của đối tượng (tensor), ROI pooling luôn cho ra đầu ra có kích thước cố định được định nghĩa trước.

Ta kí hiệu a/b là phần nguyên của a khi chia cho b và a%b là phần dư của a khi chia cho b. Ví dụ: 10/3 = 3 và 10%3 = 1.

Gọi đầu vào của ROI pooling kích thước m×n và đầu ra có kích thước h×k (thông thường h, k nhỏ ví dụ 7×7).

Ta chia chiều rộng thành h phần, (h-1) phần có kích thước m/h, phần cuối có kích thước m/h+ m%h.

Tương tự ta chia chiều dài thành k phần (k-1) phần có kích thước n/k, phần cuối có kích thước n/k+n%k.

Ví dụ m = n = 10, h = k = 3, do m/h = 3 và m%h = 1, nên ta sẽ chia chiều rộng thành 3 phần, 2 phần có kích thước 3, và 1 phần có kích thước 4.

19 Sau đó với mỗi khối được tạo ra bằng các đường đỏ và cạnh, ta thực hiện max pooling lấy ra một giá trị.

Hình 1.15: Vùng quan tâm (ROI pooling) Thực hiện ROI pooling

Ta có thể thấy là kích thước sau khi thực hiện ROI pooling về đúng h×k như ta mong muốn.

1.3.3.2. Đánh giá giữa R_CNN và Fast R-CNN

So sánh thời huấn luyện và kiểm tra giữa R-CNN và Fast R-CNN [10].

Hình 1.16: So sánh thời gian huấn luyện và kiểm tra giữa R-CNN và Fast R-CNN Fast R-CNN khác với R-CNN là nó thực hiện bản đồ đặc trưng với các ảnh sau đó

20 mới lấy các khu vực ra từ bản đồ đặc trưng, còn R-CNN thực hiện tách các khu vực ra rồi mới thực hiện CNN trên từng khu vực. Do đó Fast R-CNN nhanh hơn đáng kể nhờ tối ưu, việc tính toán bằng véctơ hóa (Vectorization).

Tuy nhiên Hình 1.16 ta thấy ở phần kiểm tra thời gian với mục Fast R-CNN thì thời gian tính khu vực rất lâu và làm chậm thuật toán. Cần thay thế thuật toán tìm kiếm chọn lọc. Giờ người ta nghĩ đến việc dùng deep learning để tạo ra khu vực và Faster R- CNN [8] ra đời.

Một phần của tài liệu Đề tài nghiên cứu ứng dụng thuật toán mạng nơ ron tích chập nhận dạng các đối tượng di động (Trang 32 - 35)