Các kỹ thuật phân vùng thực thể

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu cải tiến kỹ thuật phát hiện và thay thế đối tượng trong video (Trang 94)

CHƯƠNG 3 THAY THẾ ĐỐI TƯỢNG VÀ HOÀN THIỆN VIDEO

3.1.1. Các kỹ thuật phân vùng thực thể

Trước khi mạng CNN ra đời, có ảnh hưởng lớn đến các phương pháp phân vùng ảnh, đã có rất nhiều kỹ thuật phân vùng ảnh được phát triển và sử dụng rộng rãi. Các giải thuật truyền thống này có thể kể đến như: phân ngưỡng – chia một ảnh thành các vùng đối tượng và vùng nền. Phân cụm k-means – nhóm các điểm ảnh thành k nhóm dựa trên sự tương đồng về đặc trưng. Phân vùng ảnh dựa trên histogram – sử dụng một histogram để nhóm các điểm ảnh dựa trên các mức xám. Dị tìm biên – phát hiện các thay đổi đột ngột hoặc không liên tục trong mức sáng. Tuy nhiên do sử dụng các giải thuật cứng nhắc và yêu cầu có sự can thiệp của con người hay chuyên gia nên rất kém hiệu quả khi so sánh với các giải thuật phân đoạn dựa trên mạng CNN.

Từ khi mạng CNN ra đời, đã có nhiều phương pháp dựa trên CNN cho bài toán phân vùng ảnh được nghiên cứu, phát triển nhằm gia tăng độ chính xác trong xác định đối tượng. Phần lớn các mơ hình này bao gồm hai giai đoạn: đầu tiên dị tìm, xác định các RoI có thể chứa đối tượng, sau đó phân vùng đối tượng trên những RoI này trong giai đoạn thứ hai. Ví dụ Mask-RCNN [30] sử dụng Faster-RCNN [71] cho pha dị tìm RoI và một mạng phân lớp đầy đủ (Fully Convolutional Network – FCN) cho pha phân vùng. Một số phương pháp khác thực hiện phân đoạn ngữ nghĩa trước khi dùng các kỹ thuật bổ trợ sau đó như dò biên, phân cụm điểm ảnh. Tuy nhiên những phương pháp này trải qua nhiều giai đoạn và có thể cần dùng đến các giải thuật phân cụm tốn kém nên khơng

đạt tốc độ và độ chính xác cao. Mặc dù đã có nhiều nghiên cứu, sử dụng các mạng khác nhau cho bài toán phân vùng ảnh nhưng vẫn chưa đạt được hiệu quả cân bằng giữa tốc độ thực thi và độ chính xác, ngay cả với mơ hình YOLACT [11] phương pháp cho tốc độ nhanh nhất hiện nay nhưng độ chính xác lại thấp nhất so với các phương pháp phổ biến khác.

Hình 3.1. Mơ hình huấn luyện mạng phân vùng ảnh Nhánh trên (mầu vàng)

có vai trị tạo ra các mặt nạ vùng thực thể. Nhánh dưới (màu xanh) dùng để huấn luyện mạng phân vùng ảnh với tập huấn luyện là các mặt nạ sinh ra từ nhánh trên. [48]

Thuật tốn 3.1. Huấn luyện mơ hình phân vùng thực thể

Đầu vào: Tập ảnh huấn luyện, mỗi ảnh kèm nhãn 𝑦 = [𝑦1, 𝑦2, … , 𝑦𝑐]

Đầu ra: Mô hình phân vùng thực thể đã được huấn luyện

1: Huấn luyện bộ phân lớp C dựa trên CAM bằng mơ hình PRM [96] 2: while i < số vịng lặp tối đa do

3: Lấy mẫu ngẫu nhiên một tập ảnh huấn luyện I;

4: Phát sinh một tập các đề xuất vùng P cho tập I;

5: Sử dụng PSL trên tập C thu được tập các đỉnh L cho tập I;

6: Khởi tạo một danh sách rỗng các kết quả T;

PSL Loss FCN Mask R-CNN Bản đồ kích hoạt lớp Cực đại cục bộ Mạt nạ thực thể Vùng dự đoán

7: for each (𝑖𝑘, 𝑗𝑘) ∈ 𝐿 do

8: Chọn ngẫu nhiên một đề xuất vùng (𝐺𝑘, 𝑏𝑘) theo phương trình 3.1 giao với (𝑖𝑘, 𝑗𝑘)

9: Thêm 𝐺𝑘 vào danh sách T

10: end for

11: Tính ℒ (𝐼, 𝑇, 𝜃) theo phương trình 3.3;

12: Cập nhật các trọng số cho 𝜃 sử dụng cơ chế lan truyền ngược;

13: end while

3.1.2. Mơ hình phân vùng thực thể

Mơ hình phân vùng thực thể luận án sử dụng kế thừa từ nghiên cứu của Laradji và các cộng sự [48]. Chi tiết mơ hình được dùng để đánh dấu, trích chọn vùng đối tượng trong ảnh hoặc bounding box thể hiện trong hình 3.1. Mơ hình này bao gồm hai phân nhánh: Nhánh thứ nhất, phát sinh các mặt nạ đánh dấu vùng đối tượng (gọi tắt là mặt nạ vùng) cho các đối tượng trong ảnh để dùng trong pha huấn luyện; và nhánh thứ hai là mạng phân vùng thực thể được huấn luyện đầy đủ trên các mặt nạ được sinh ra trong nhánh thứ nhất. Mỗi phân nhánh này sử dụng một kiến trúc mạng tích chập học sâu khác nhau cho mỗi nhánh. Cụ thể, mạng PRM [96] được dùng trong nhánh phát sinh mặt nạ vùng dựa trên các ảnh huấn luyện trong đó các vùng đối tượng huấn luyện đã được đánh dấu ở mức ảnh; Mạng Mask R-CNN được sử dụng trong nhánh phân vùng thực thể để trích chọn và đánh dấu các vùng chứa thực thể hoặc các phần hiển thị của thực thể. Quá trình huấn luyện mơ hình này được thể hiện theo giải thuật 3.1, ảnh huấn luyện với các nhãn mặt nạ được cho bởi 𝑦 = [𝑦1, 𝑦2, … , 𝑦𝑐] trong đó 𝑦1 = 1 ℎ𝑜ặ𝑐 0, xác định ảnh có hay khơng đối tượng thuộc lớp 𝑖.

Để phân vùng thực thể cho một ảnh mới, lúc này chỉ cần sử dụng duy nhất mạng Mask R-CNN huấn luyện trước để phát sinh các mặt nạ cho các thực

thể trong ảnh mà không cần phải sử dụng đến bản đồ đáp ứng đỉnh (Peak Response Maps - PRM [96]).

3.1.2.1. Phát sinh mặt nạ vùng

Một trở ngại lớn khác cho bài toán phân đoạn thực thể là các phương pháp hiện tại thường cần các nhãn cho từng điểm ảnh trong pha huấn luyện. Tuy nhiên để tạo ra các nhãn theo mức điểm ảnh này cần rất nhiều công sức, thời gian và chi phí. Với nhiều ứng dụng cụ thể, để tạo ra các nhãn huấn luyện này là khơng thể và cũng khơng sẵn có. Để khắc phục hạn chế này, luận án sử dụng mơ hình tạo mặt nạ vùng đối tượng theo đối tượng dựa trên CNN được nghiên cứu trong [48]. Tiếp theo, luận án sử dụng mơ hình Mask R-CNN để thực thi phân vùng đối tượng. Mask R-CNN có tốc độ tương đối chậm khi phân vùng đa đối tượng khi so sánh với YOLACT là mơ hình phân vùng đạt tốc độ nhanh nhất (>30fps). Khi so sánh độ chính xác thì Mask R-CNN cho độ chính xác cao nhất trong nhóm kỹ thuật phân vùng trong khi YOLACT cho độ chính xác khá thấp. Tuy nhiên khi áp dụng Mask R-CNN để phân vùng một đối tượng trong bounding box đã được trính chọn có kích thước vừa trong pha phát hiện đối tượng thì tốc độ phân vùng là chấp nhận được. Vì vậy, mơ hình phân vùng sử dụng trong luận án là Mask R-CNN được huấn luyện, thực nghiệm trên tập dữ liệu PASCAL VOC 2012 kết hợp với mặt nạ vùng đối tượng sinh ra từ một mạng tích chập đầy đủ (Fully convolutional networks - FCN [53]).

Hình 3.2. Ví dụ về làm tinh mặt nạ. Tại pha phân vùng, chỉ mạng Mask R-

CNN huấn luyện trước được sử dụng để đưa ra các mặt nạ dự đoán trong ảnh. Khi sử dụng thêm bước tinh chỉnh, các mặt nạ dự đốn được có thể được thay thế bằng các đề xuất vùng có chỉ số tương đồng Jaccard cao nhất. [48]

Ảnh đầu vào

Bộ làm tinh Mask R-CNN

Quá trình phát sinh mặt nạ vùng được thực hiện qua một số bước, trước hết mơ hình bản đồ đáp ứng đỉnh (Peak Response Maps - PRM [96]) được sử dụng để phát sinh các điểm trọng tâm vùng là các phần nổi bật của các thực thể đối tượng. Những điểm trọng tâm này là cơ sở để tạo ra mặt nạ vùng làm đầu vào để huấn luyện mạng Mask R-CNN. Theo phương pháp PRM, bộ phân lớp dựa trên bản đồ kích hoạt lớp (class response maps – CAM) với kiến trúc nền là một FCN được huấn luyện trước, sau đó chuyển qua tầng kích hoạt cực đại (Peak Simulation Layer - PSL) được minh họa trong hình 3.2. FCN được hình thành từ mạng phân lớp dựa trên CNN truyền thống bằng cách loại bỏ các tầng giảm kích thước (global pooling) và thay thế các tầng kết nối đầy đủ bằng các tầng tích chập 1x1. FCN duy trì thơng tin không gian thông qua quá trình chuyển tiếp và cho ra các bản đồ kích hoạt lớp nên thích hợp cho dự đốn khơng gian. Bản đồ kích hoạt lớp này xác định định hệ số tin cậy phân lớp tại mỗi vị trí trong ảnh. Tiếp theo PSL đẩy ra 𝑁(𝑐) cực đại cục bộ của CAM trong phạm vi cửa sổ kích thước 𝑟, cụ thể 𝐿(𝑐) = {(𝑖1, 𝑗1), (𝑖2, 𝑗2), … , (𝑖𝑁𝑐, 𝑗𝑁𝑐)} biểu diễn các vị trí trong CAM thuộc lớp đối tượng thứ 𝑐. Để thúc đẩy các kích hoạt của các cực trị cục bộ này, kích hoạt trung bình cần được tính đầu tiên, 𝑆(𝑐) =

1

𝑁(𝑐)∑ 𝑀𝑖 𝑘,𝑗𝑘 (𝑐)

(𝑖𝑘,𝑗𝑘)∈𝐿(𝑐) , trong đó 𝑀(𝑐) là bản đồ kích hoạt tương ứng với lớp 𝑐. Trung bình kích hoạt này sau đó được sử dụng cho phân lớp nhị phân. Tiến trình phân lớp này được lặp lại cho đến khi mơ hình hội tụ.

Khi phát sinh các mặt nạ vùng cho ảnh huấn luyện bằng cách sử dụng bộ phân lớp huấn luyện trước ta có thể nhận được một tập các mặt nạ tương ứng xung quanh các đỉnh là vị trí trọng tâm của đối tượng trong ảnh thu được từ PSL. Dựa vào vị trí này, các mặt nạ vùng này có thể được thay thế chính xác bằng các mặt nạ đề xuất vùng dựa trên tính đối tượng của nó theo độ tin cậy được xác định trong phương pháp phát sinh đề xuất vùng. Các đề xuất vùng có chỉ số đối tượng cao hơn thường được chọn. Cụ thể, để tạo ra được mặt nạ cho một đối tượng định vị tại đỉnh (𝑖, 𝑗), trước hết một tập gồm N đề xuất vùng mà

các mặt nạ của nó giao nhau tại (𝑖, 𝑗), được đặt là 𝑃 = {(𝐺1, 𝑏1), (𝐺2, 𝑏2), … , (𝐺𝑛, 𝑏𝑛) } với 𝐺𝑘 là mặt nạ và 𝑏𝑘 là độ tin cậy đối tượng. Khi đó, xác suất chọn ra một mặn nạ đề xuất vùng 𝐺𝑘 là

𝑃(𝐺𝑘) = 𝑏𝑘

∑𝑛𝑗=1𝑏𝑗 (3.1)

3.1.2.1. Phân vùng thực thể bằng Mask R-CNN

Sử dụng nhánh phát sinh mặt nạ vùng tập mặt nạ vùng đối tượng đã được sinh ra, gán nhãn trên tập ảnh huấn luyện và có thể được sử dụng độc lập trong pha huấn luyện của mạng phân đoạn ảnh bất kỳ. Tùy thuộc vào đặc trưng của từng ứng dụng mà mạng phân đoạn phù hợp được lựa chọn. Ví dụ nếu mục tiêu phân đoạn thực thể cần theo thời gian thực khơng cần độ chính xác cao thì YOLACT là một lựa chọn tốt, hay mạng phân vùng DeepLab [15] có thể được chọn nếu cần phân đoạn ngữ nghĩa. Do đặc trưng của bài toán đang nghiên cứu cần độ chính xác cao trong phân lớp và tận dụng các bounding box đã được trích chọn, phân lớp cùng với các đặc trưng của nó trong pha nhận nên mạng phân vùng đối tượng Mask R-CNN được lựa chọn. Tốc độ phân vùng của mạng Mask R-CNN được gia tăng đáng kể khi sử dụng các bounding box sẵn có thay vì phải trích chọn đề xuất vùng thơng qua mạng RPN.

Hình 3.3. Mơ hình phân vùng thực thể Mask R-CNN

Mask R-CNN là một kỹ thuật phân vùng thực thể đối tượng xác định từng điểm ảnh thuộc đối tượng nào trong ảnh thay vì chỉ xác định các bounding

box. Mask R-CNN mở rộng Faster R-CNN bằng cách thêm nhánh dự đoán mặt nạ đối tượng trên mỗi đề xuất vùng. Mask R-CNN bao gồm hai giai đoạn: phát sinh đề xuất vùng, sau đó phân lớp các đề xuất vùng và phát sinh các bounding box và mặt nạ như trong hình 3.3. Nhánh phía trên dùng dự đốn bounding box và lớp đối tượng trên ảnh. Tuy nhiên nhánh này không được sử dụng do các bounding box cùng với nhãn của đối tượng đã được dự đoán trong pha phát hiện đối tượng trước đó mà sử dụng FCN trên các vùng trích chọn này. Nhánh dưới sử dụng một FCN làm nhiệm vụ đánh nhãn cho mỗi điểm ảnh trong vùng bounding box để xây dựng mặt nạ đối tượng.

Với một mạng nơron tích chập bình thường được sử dụng cho dị tìm và nhận dạng đối tượng thường gồm các tầng nhân chập, các tầng trung gian và tầng cuối. Để giảm kích thước ở tầng cuối thường là một vector có cùng kích thước với số lớp và cho biết điểm số dự đoán của mỗi lớp. FCN loại bỏ các tầng trung gian và thay thế tầng cuối cùng bằng một số bước tích chập cho ra số lượng đặc trưng cùng kích thước với số lớp. Sau q trình học thích hợp FCN cho ra điểm số dự đoán lớp cho tất cả các điểm ảnh của lớp cuối cùng. Mỗi lớp nhận được một “bản đồ nhiệt”. Phần phân đoạn của Mask R-CNN sẽ sử dụng kết quả “bản đồ nhiệt” như trên và sau đó tiến hành giải tích chập (deconvolution) và tăng kích thước (unpooling) để thu được mặt nạ trên ảnh gốc. Trong đó deconvolution thực chất chỉ là tích chập với ma trận chuuyển vị. Với max-pooling ta lấy giá trị max của khối vì vậy thơng tin sẽ bị mất mát đi trong q trình pooling. Unpooling là quá trình ta xây dựng lại ma trận bằng cách ghi nhớ tọa độ của điểm cực đại và điền lại chính xác các điểm cịn lại khác trong khối là giá trị xấp xỉ từ các điểm đã có giá trị.

Deconvolution và unpooling làm xuất hiện một phân vùng dự đoán trên ảnh gốc cho tất cả các lớp đối tượng. Đây cũng chính là đầu ra cho khối phân vùng đối tượng.

Đối với ảnh I, với mặt vùng T, Mask R-CNN với các tham số  được

huấn luyện bằng cách tối ưu hóa hàm mục tiêu sau,

ℒ(𝐼, 𝑇,) = ℒ𝑐𝑙𝑠+ ℒ𝑏𝑜𝑥 + ℒ𝑚𝑎𝑠𝑘 (3.2)

Trong đó ℒ𝑐𝑙𝑠 là lỗi phân lớp khi dị tìm đối tượng, ℒ𝑏𝑜𝑥 là lỗi xác định vị trí khi dị tìm đối tượng và ℒ𝑚𝑎𝑠𝑘 là lỗi phân vùng. Tuy nhiên trong nghiên cứu này, tiến trình phân lớp đã được thực hiện trước đó, tức là các đối tượng ảnh huấn luyện và đầu vào đã được gán nhãn lớp. Vì vậy thành phần ℒ𝑐𝑙𝑠 là khơng cần thiết, lúc này hàm mục tiêu được viết lại thành:

ℒ(𝐼, 𝑇,) = ℒ𝑏𝑜𝑥 + ℒ𝑚𝑎𝑠𝑘 (3.3)

Hình 3.4. Một số kết quả phân vùng thực thể trực quan trên tập dữ liệu PASCAL VOC 2012 [48]

Mask R-CNN sau khi được huấn luyện được dùng để dự đoán mặt nạ vùng cho đối tượng trong ảnh mới. Để làm mượt, thu được vùng đối tượng chính xác hơn, mặt nạ vùng sinh ra từ mạng Mask R-CNN có thể được đưa qua bộ làm tinh. Trong bước làm tinh này đề xuất vùng đối tượng của cùng đối

tượng sử dụng trong khi huấn luyện được tận dụng và tái sử dụng. Theo đó, mỗi mặt nạ đối tượng dự đoán được thay thế bởi đề xuất vùng có chỉ số tương đồng Jaccard (được tính theo cơng thức 2.1) cao nhất. Hình 3.4 cho thấy kết quả mặt nạ vùng sinh ra tốt hơn sau khi qua bộ làm tinh.

3.1.3. Kết quả thực nghiệm mơ hình phân vùng

Mạng PRM trong pha sản sinh mặt nạ vùng sử dụng kiến trúc mạng ResNet-50 [31] được huấn luyện trước trên tập dữ liệu ImageNet [20]. Khác với PRM, Mask R-CNN được trang bị với một mạng tháp đặc trưng dùng để trích chọn đặc trưng tại các độ phân giải khác nhau. Các trọng số huấn luyện trước, cùng với các tham số cịn lại, sau đó được hồn thiện trên tập huấn luyện PASCAL VOC 2012. Các tham số còn lại của PRM và Mask R-CNN được thảo luận chi tiết trong [96], và [30] tương ứng. Mạng SharpMask [66] được sử dụng để tạo ra các đề xuất vùng.

Bảng 3.1. So sánh kết quả của mơ hình sử dụng với các phương pháp khác sử dụng nhiều phương pháp tạo mặt nạ huấn luyện khác nhau [48]

Phương pháp Phương pháp tạo mặt nạ mAP50

Mask R-CNN [30] Mức điểm ảnh 51.4

DeepMask [44] Mức điểm ảnh 41.7

PRM [96] Mức ảnh 26.8

DeepMask [44] Mức hộp bao 8.1

Mơ hình sử dụng Mức ảnh 41.7

Một số kết quả trực quan với số lượng đối tượng được phân vùng trong một ảnh từ 1 đến 3 được thể hiện trong hình 3.3. Phương pháp luận án kế thừa cũng được so sánh với một số phương pháp phân vùng phổ biến khác dựa trên mạng huấn luyện đầy đủ khác với độ chính xác trung bình mAP đạt ở mức 0.5. So với Mask R-CNN phương pháp [48] có hiệu năng thực thi tốt hơn theo hai cách tạo mặt nạ dùng trong huấn luyện, một là sử dụng ở mức bounding box và

một là ở mức ảnh để tạo ra các nhãn trong ảnh huấn luyện (bảng 3.1). Tuy nhiên khi so sánh với Mask R-CNN huấn luyện trên tập nhãn hình thành theo mức điểm ảnh, phương pháp luận án sử dụng vẫn cần phải cải tiến mạnh mẽ hơn nữa mới theo kịp về hiệu năng thực thi, đặc biệt là cải tiến thành phần sinh mặt nạ và phương pháp sinh đề xuất vùng.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu cải tiến kỹ thuật phát hiện và thay thế đối tượng trong video (Trang 94)

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

(138 trang)