CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 1. Bài toán phát hiện đối tượng Một camera quay lại hình ảnh của tuyến phố, câu hỏi đặt ra là đặt ra là có bao nhiêu chiếc xe đi qua tuyến phố đó trong một khoảng thời gian. Một chiếc xe ô tô thông minh phải xác định được đâu là các chiếc xe khác hay đâu là con người. Một Robot tự hành cần phân biệt được các đối tượng mà nó gặp phải.
Các ví dụ trên là các yêu cầu cơ bản của nhiệm vụ phát hiện đối tượng (Object detection). Phát hiện đối tượng là một trong những thách thức cơ bản của thị giác máy tính. Nó trả lời cho câu hỏi “Đó là những đối tượng nào?”, “Đối tượng ở đâu trong hình?”. Từ “đối tượng” ở đây được hiểu như một lớp đối tượng chắc chắn nào đó như con người, tòa nhà, xe cộ, khuôn mặt v., mà chúng ta muốn máy tính "nhìn thấy" ở trong hình.
Đầu vào của nhiệm vụ phát hiện đối tượng thông thường là một ảnh tĩnh và kết quả đầu ra thường là một cặp thông tin vị trí và nhóm đối tượng. Cho một tập hợp các nhóm đối tượng được định nghĩa trước, mục đích là trả về danh sách chính xác nhóm đối tượng quan tâm có ở trong hình và vị trí của mỗi đối tượng với một bounding box bó sát bao quanh phạm vi của đối tượng. Để trả lời cho câu hỏi “Đối tượng ở đâu trong hình?” của các ví dụ trên là một vấn đề không hề đơn giản. Quá trình thu nhận từ môi trường thực tế chiếu một ảnh từ một không gian ba chiều vào một không gian hai chiều.
Thông tin thu thập được bị mất mát và bị ảnh hưởng bởi nhiễu là điều không thể tránh khỏi. Từ đầu vào này hệ thống phát hiện đối tượng phải chỉ ra được có những đối tượng nào trong hình và nó ở đâu. Ngay cả định nghĩa về đối tượng nhiều khi cũng còn gây nhầm lẫn, ví dụ chúng ta định nghĩa đối tượng xe hơi (Car) như thế nào? Nếu suy nghĩ về cách định nghĩa đó nhiều khi nó cũng gây nhầm lẫn với các đối tượng tương tự khác như xe tải, hay một đối tượng khác mà cũng có bốn bánh. Nhưng LUẬN VĂN CAO HỌC GVHD: TS.
TRỊNH HOÀNG HƠN Hình 1.1: Kết quả của một thuật toán phát hiện đối tượng trong tập mẫu PASCAL VOC 2010 [1] kể cả với các đối tượng trong các lớp nhỏ hơn chúng cũng có sự khác biệt lớn vì ảnh hưởng bởi các yếu tố như: sự tương phản của ánh sáng, hình dáng đa dạng của đối tượng, sự che khuất một phần của đối tượng, sự xuất hiện của cùng lúc nhiều đối tượng khác nhau trong một khung cảnh phức tạp v.1 minh họa kết quả của một thuật toán phát hiện đối tượng. Trong hình có ba nhóm đối tượng "Dog", "Bicycle" và "Car" với các thách thức đặc trưng của bài toán phát hiện đối tượng. Các đối tượng nằm chen lẫn với các đối tượng khác, một số bộ phận của đối tượng bị che khuất, độ chiếu sáng là khác nhau đối với các đối tượng khác nhau, các đối tượng cũng có sự biến dạng nhất định. Kết quả của bài toán là các hình chữ nhật bao quanh đối tượng và các nhãn thể hiện nhóm đối tượng.
Việc phát hiện đối tượng có rất nhiều ứng dụng khác nhau trong nghiên cứu khoa học cũng như trong đời sống, nó là bước đầu để máy tính có thể “nhìn” thấy thế giới. Phát hiện HVTH: ĐINH VĂN TUYẾN - 1570373 Trang 2 LUẬN VĂN CAO HỌC GVHD: TS. TRỊNH HOÀNG HƠN đối tượng có nhiều ứng dụng rộng rãi trong mọi mặt của đời sống như phát hiện khuôn mặt, phát hiện người, phát hiện xe, biển báo giao thông, các hệ thống tìm kiếm thông tin dựa trên nội dung ảnh, các robot thông minh v. Các công trình nghiên cứu liên quan Phát hiện đối tượng là một đề tài nhận được nhiều quan tâm của các nhà khoa học trên thế giới.
Có rất nhiều phương pháp đã được đề xuất và được thực nghiệm, mỗi phương pháp đều có ưu và nhược điểm riêng. Trong phần này, các phương pháp chính và nổi trội trong thời gian gần đây được trình bày tổng quan nhằm tạo ra một cái nhìn tổng quát về bức tranh “phát hiện đối tượng” hiện nay. De Carrera và các cộng sự [3] đã áp dụng phương pháp phân tích thành phần chính Principal component analysis (PCA) và thuật toán Eigenface để nhận dạng khuôn mặt. Viola và Jones [4] đã giới thiệu khái niệm ảnh tích phân (Integral image) nhằm tính nhanh các đặc trưng Haar-like và áp dụng phương pháp máy học Adaboost để xây dựng một bộ phân loại mạnh được áp dụng vào việc phát hiện khuôn mặt với độ chính xác cao.
Một hướng tiếp cận khác là sử dụng các đặc trưng bất biến cục bộ Scale Invariant Feature Transform (SIFT) được Lowe [5] giới thiệu như là các đặc trưng bất biến trước những biến đổi của tỉ lệ ảnh, tịnh tiến, phép quay, không bị thay đổi một phần đối với phép biến đổi hình học affine và thích nghi với những thay đổi về độ sáng, sự nhiễu và che khuất. Chennamma và các cộng sự [6] đã sử dụng đặc trưng cục bộ SIFT để nhận dạng khuôn mặt trên tập ảnh chọn lọc được cho trước và so sánh kết quả nhận dạng với thuật toán phân tích thành phần chính cho thấy kết quả có độ chính xác cao hơn. Được đề xuất bởi Dalal và các cộng sự [7], đặc trưng Histogram of Oriented Gradients (HOG) mô tả trạng thái của đối tượng bằng sự phân bố về cường độ và hướng của cạnh. Các đặc trưng của đối tượng được đưa vào thuật toán huấn luyện phân lớp Support Vector Machine (SVM) để tạo ra một “siêu phẳng” nhằm phân biệt giữa hai nhóm “đối tượng” hoặc “không phải đối tượng”.
Bài báo đã áp dụng thành công vào việc phát hiện người đi bộ với độ chính xác cao trên tập ảnh INRIA Person do chính nhóm tác giả đề xuất. Tiếp nối thành công của Dalal, P.Felzenszwalb và các đồng sự [8, 2] đã sử dụng thành HVTH: ĐINH VĂN TUYẾN - 1570373 Trang 3 LUẬN VĂN CAO HỌC GVHD: TS. TRỊNH HOÀNG HƠN công đặc trưng HOG kết hợp với mô hình Deformable Part Model (DPM) để biểu diễn một đối tượng như là một tập của các thành phần khác nhau. Nhóm tác giả đã giới thiệu một phương pháp huấn luyện mới được gọi với cái tên Latent SVM , trong đó vị trí của mỗi phần của đối tượng được xem như latent.
Nhóm tác giả đã xây dựng mô hình của nhiều nhóm đối tượng khác nhau và sử dụng để phát hiện đối tượng. Hiện nay trên tập mẫu PASCAL VOC, thuật toán của nhóm tác giả đề xuất đang chiếm giữ vị trí là thuật toán phát hiện đối tượng có độ chính xác cao nhất. Một phương pháp tiếp cận mới gần đây là sử dụng một mô hình Deep Learning có tên CNNs (Convolutional Neural Nets) được nhóm của Sermanet và các cộng sự [9] đề xuất. Kết quả thực nghiệm trên tập mẫu INRIA Person giảm sai số phát hiện xuống còn 10% đạt kết quả cao hơn nhiều so với thuật toán HOG + SVM mà Dalal [7] đã đề xuất.
Hiện nay CNNs đang được ứng dụng để hỗ trợ tìm kiếm ảnh trong Google Plus. Ross Girshick là một trong những tác giả của hai bài báo [8, 2] đã đề xuất thuật toán Fast Region-based Convolutional Network (Fast R-CNN) [10] nhằm cải tiến tốc độ so với R-CNN truyền thống. Kết quả thực nghiệm trên tập PASCAL VOC 2012 cho kết quả phát hiện đối tượng cao hơn và thời gian huấn luyện mô hình đối tượng và thời gian detect nhanh hơn nhiều so với CNN truyền thống. Đề tài phát hiện đối tượng dựa vào các đặc tính cục bộ ứng dụng lý thuyết về mô hình DPM [2] vào việc phát hiện các đối tượng.
Chương trình xây dựng dựa trên mô hình này có thể phát hiện được đối tượng ở trong các môi trường khác nhau, đối tượng có thể xuất hiện với hình dáng bất kỳ và đặc biệt một số bộ phận của đối tượng có thể bị che khuất nhưng mô hình vẫn đưa ra được dự đoán vị trí của đối tượng. Các tập mẫu chuẩn như PASCAL VOC [1], SUN database [11], ImageNet [12] đưa ra rất nhiều “thử thách” đối với các thuật toán phát hiện đối tượng. Đặc tính toàn cục và Đặc tính cục bộ Một bộ mô tả (descriptor) dùng một thuật toán nào đó để mã hóa ảnh đầu vào tạo ra một đặc trưng nhằm cho phép so khớp hai ảnh với nhau. Có nhiều cách để miêu tả các đặc trưng khác nhau, dựa vào phạm vi của vùng được lấy đặc trưng mà các đặc trưng được chia làm HVTH: ĐINH VĂN TUYẾN - 1570373 Trang 4 LUẬN VĂN CAO HỌC GVHD: TS.
TRỊNH HOÀNG HƠN hai nhóm: Đặc trưng cục bộ mô tả tổng quát toàn bộ bức ảnh. Các đặc trưng cục bộ bao gồm các biểu diễn về đường viền (contour), các mô tả hình dáng (Shape) và các đặc trưng bề mặt(texture features). Các thuật toán mô tả đặc trưng toàn cục tiêu biểu như Shape Matrices [13], Invariant Moments [14], HOG [7]. Các đặc trưng toàn cục thường không bền vững với các thay đổi trong các thành phần của đối tượng.
Dẫn đến kết quả sai trong các bài toán nhận dạng, ảnh hưởng đến bộ mô tả kết quả. Các đặc trưng này cũng được trích xuất và áp dụng vào các bài toán phát hiện đối tượng [15, 16, 17], và là một phần trong đặc trưng của các đối tượng được mô tả trong luận văn này. Đặc trưng cục bộ mô tả một phần của ảnh, thường là các điểm đặc biệt (Keypoint) của một đối tượng. Một vài thuật toán trích xuất đặc trưng cục bộ gồm có SIFT [5], Speeded up robust features (SURF) [18] , Local Binary Pattern (LBP) [19] , and Maximally Stable Extremal Region (MSER) [20].
Các đặc trưng cục bộ mô tả bền vững hơn đối với sự thay đổi của các bộ phận của đối tượng. Đặc trưng SIFT được sử dụng trong bài báo [21], nhằm trích xuất các điểm của các đối tượng trong 2 frame hình khác nhau. Sau đó việc phân tích sự kết nối của các đặc tính này nhằm tạo ra một vùng quan tâm trong ảnh. Một các tổng quát, đối với các bài toán phát hiện, phân lớp đối tượng, các đặc trưng cục bộ thường được sử dụng.
Đối với các bài toán nhận dạng đối tượng, so khớp ảnh các đặc trưng cục bộ được áp dụng hiệu quả hơn. Trong luận văn này khái niệm đặc trưng cục bộ được sử dụng chỉ đặc trưng được trích xuất các bộ phận của đối tượng, kết hợp các đặc trưng cục bộ của các bộ phận của đối tượng cho ta một cái nhìn tổng quát về một đối tượng.