Mô hình túi từ trong thị giác máy tính

Trong **thị giác máy tính**, **mô hình túi từ** (**bag-of-words model,** mô hình BoW) có thể được áp dụng để phân loại hình ảnh, bằng cách coi các đặc trưng của hình ảnh như từ ngữ. Trong phân loại văn bản, một túi các từ là một vectơ thưa về số lần xuất hiện của các từ; đó là, một biểu đồ thưa trên tập từ vựng. Trong thị giác máy tính, một *túi các từ trực quan* là một vectơ  đếm sự xuất hiện của các đặc trưng của hình ảnh.

## Biểu diễn hình ảnh dựa trên mô hình BoW
Để biểu diễn một hình ảnh bằng mô hình BoW, một hình ảnh có thể được coi là một văn bản. Tương tự, "từ" trong ảnh cũng cần được định nghĩa. Để đạt được điều này, nó thường bao gồm ba bước sau: phát hiện đặc trưng, mô tả đặc trưng và tạo danh bạ. Một định nghĩa của mô hình BoW có thể là "biểu diễn biểu đồ dựa trên các đặc trưng độc lập với nhau". Lập chỉ mục và truy xuất hình ảnh dựa trên nội dung (CBIR) có thể coi là phương pháp áp dụng sớm kỹ thuật biểu diễn hình ảnh này.

### Biểu diễn lại đặc trưng
Sau khi phát hiện đặc trưng, mỗi hình ảnh được trừu tượng hóa bằng một số bản mẫu cục bộ. Các phương thức biểu diễn lại đặc trưng liên quan đến cách biểu diễn lại các bản mẫu dưới dạng các vectơ số. Các vectơ này được gọi là một mô tả đặc trưng. Một mô tả tốt nên có khả năng xử lý các thay đổi về cường độ, xoay, thu phóng và biến đổi afin ở một mức độ nào đó. Một trong những mô tả nổi tiếng nhất là biến đổi đặc trưng bất biến tỷ lệ (SIFT). SIFT chuyển đổi từng bản mẫu thành vector 128 chiều. Sau bước này, mỗi hình ảnh là một tập hợp các vectơ có cùng kích thước (128 cho SIFT), thứ tự của các vectơ không quan trọng.

### Tạo danh bạ
Bước cuối cùng cho mô hình BoW là chuyển đổi các bản mẫu được biểu thị bằng vector thành "từ mã" (tương tự như các từ trong tài liệu văn bản), tạo ra một "tư điển các từ mã" (tương tự như một từ điển các từ trong văn bản). Một từ mã có thể được coi là một đại diện của một số bản mẫu tương tự. Một phương pháp đơn giản là thực hiện phân cụm k-means trên tất cả các vectơ. Từ mã sau đó được định nghĩa là tâm của các cụm được tạo ra. Số lượng các cụm là kích thước danh bạ (tương tự như kích thước của từ điển).

Do đó, mỗi bản mẫu trong một hình ảnh được ánh xạ tới một từ mã nhất định thông qua quá trình phân cụm và hình ảnh có thể được biểu thị bằng biểu đồ của từ mã.

## Học hỏi và nhận dạng dựa trên mô hình BoW
Các nhà nghiên cứu thị giác máy tính đã phát triển một số phương pháp học tập để thúc đẩy mô hình BoW cho các nhiệm vụ liên quan đến hình ảnh, chẳng hạn như phân loại đối tượng. Những phương pháp này đại khái có thể được chia thành hai loại, mô hình khái quát và mô hình điều kiện. Đối với vấn đề phân loại nhiều nhãn, ma trận nhầm lẫn có thể được sử dụng làm số liệu đánh giá.

### Mô hình khái quát
Dưới đây là một số ký hiệu cho phần này. Giả sử kích thước của danh bạ là V.

*w: từng bản mẫu  w là một vectơ V chiều có một thành phần duy nhất bằng một và tất cả các thành phần khác bằng 0 (Đối với cài đặt phân cụm k-means, thành phần đơn bằng một chỉ ra cụm  w  thuộc về). Các v từ mã trong từ điển từ mã có thể được biểu diễn dưới dạng   w^v=1  và   w^u = 0  cho   u\neq v.
*\mathbf{w}: mỗi hình ảnh được đại diện bởi  \mathbf{w}=[w_1, w_2, \cdots, w_N], tất cả các bản mẫu trong một hình ảnh
*d_j: hình ảnh thứ j  trong một bộ sưu tập hình ảnh
*c: thể loại của hình ảnh
*z: chủ đề của bản vá
*\pi: tỷ lệ hỗn hợp

Do mô hình BoW tương tự như mô hình BoW trong xử lí ngôn ngữ tự nhiên, các mô hình khái quát được phát triển cho văn bản cũng có thể được điều chỉnh trong thị giác máy tính. Mô hình Naïve Bayes đơn giản và mô hình Bayes phân cấp được thảo luận.

#### Naïve Bayes
Đơn giản nhất là phân loại Naïve Bayes. Sử dụng ngôn ngữ của các mô hình đồ họa, trình phân loại Naïve Bayes được mô tả theo phương trình dưới đây. Ý tưởng cơ bản (hoặc giả định) của mô hình này là mỗi loại có phân phối riêng của nó trên từ điển từ mã và các phân phối của mỗi loại có quan sát khác nhau. Lấy thể loại khuôn mặt và thể loại xe hơi làm ví dụ. Thể loại khuôn mặt có thể nhấn mạnh các từ mã đại diện cho "mũi", "mắt" và "miệng", trong khi thể loại xe hơi có thể nhấn mạnh các từ mã đại diện cho "bánh xe" và "cửa sổ". Đưa ra một tập hợp các ví dụ đào tạo, bộ phân loại học các phân phối khác nhau cho các loại khác nhau. Quyết định phân loại vào các thể loại

:c^*=\arg \max_c p(c|\mathbf{w}) = \arg \max_c p(c)p(\mathbf{w}|c)=\arg \max_c p(c)\prod_{n=1}^Np(w_n|c)

Do phân loại Naïve Bayes đơn giản nhưng hiệu quả, nó thường được sử dụng làm phương pháp cơ sở để so sánh.

#### Mô hình Bayes phân cấp
Giả định cơ bản của mô hình Naïve Bayes đôi khi không giữ được. Ví dụ, một hình ảnh cảnh thiên nhiên có thể chứa một số chủ đề khác nhau. Phân tích ngữ nghĩa tiềm ẩn xác suất (pLSA)  và phân bố Dirichlet tiềm ẩn (LDA)  là hai mô hình chủ đề phổ biến từ các văn bản để giải quyết vấn đề "chủ đề" tương tự. Lấy LDA làm ví dụ. Để mô hình hóa hình ảnh cảnh thiên nhiên bằng LDA, một cách tương tự với phân tích văn bản được thực hiện:

* thể loại hình ảnh được ánh xạ đến thể loại tài liệu; 
* tỷ lệ hỗn hợp của các chủ đề ánh xạ tỷ lệ hỗn hợp của các chủ đề; 
* chỉ mục chủ đề được ánh xạ tới chỉ mục chủ đề; 
* từ mã được ánh xạ tới từ.

Phương pháp này cho thấy kết quả rất hứa hẹn trong phân loại cảnh thiên nhiên trên 13 Danh mục cảnh thiên nhiên.

### Mô hình điều kiện
Vì hình ảnh được biểu diễn dựa trên mô hình BoW, bất kỳ mô hình điều kiện nào phù hợp với phân loại tài liệu văn bản đều có thể được thử, chẳng hạn như máy vectơ hỗ trợ (SVM)  và AdaBoost. Thủ thuật kernel cũng được áp dụng khi phân loại dựa trên kernel được sử dụng, chẳng hạn như SVM. Hạt nhân hình kim tự tháp được phát triển mới dựa trên mô hình BoW. Cách tiếp cận đặc trưng cục bộ của việc sử dụng biểu diễn mô hình BoW được học bởi các bộ phân loại học máy với các hạt nhân khác nhau (ví dụ: hạt nhân EMD và   X^2  kernel) đã được thử nghiệm rất nhiều trong lĩnh vực nhận dạng kết cấu và đối tượng.  Kết quả rất hứa hẹn trên một số bộ dữ liệu đã được báo cáo. Cách tiếp cận này  đã đạt được kết quả rất ấn tượng trong Thử thách các lớp đối tượng trực quan PASCAL .
#### Hạt nhân hình kim tự tháp
Hạt nhân hình kim tự tháp  là một thuật toán nhanh (độ phức tạp tuyến tính thay vì hàm cổ điển với độ phức tạp bậc hai) (thỏa mãn điều kiện của Mercer) để ánh xạ các đặc trưng của BoW, hoặc tập hợp các đặc trưng theo chiều cao, thành biểu đồ đa độ phân giải đa chiều. Một lợi thế của các biểu đồ đa độ phân giải này là khả năng nắm bắt, xử lí các đặc trưng cùng xảy ra. Hạt nhân hình kim tự tháp xây dựng biểu đồ đa độ phân giải bằng cách ghép các điểm dữ liệu vào các vùng riêng biệt có kích thước tăng dần. Do đó, các điểm không khớp ở độ phân giải cao có cơ hội khớp ở độ phân giải thấp. Hạt nhân hình kim tự tháp thực hiện khớp tương tự gần đúng, không cần tìm kiếm chính xác hoặc tính toán khoảng cách. Thay vào đó, nó giao cắt các biểu đồ để xấp xỉ đến khớp tối ưu. Theo đó, thời gian tính toán chỉ là tuyến tính trong số lượng các đặc trưng. So với các cách tiếp cận hạt nhân khác, hạt nhân hình kim tự tháp nhanh hơn nhiều, nhưng cung cấp độ chính xác tương đương. Hạt nhân hình với kim tự tháp đã được áp dụng cho cơ sở dữ liệu ETH-80 và cơ sở dữ liệu Caltech 101 với kết quả đầy hứa hẹn.

## Hạn chế và phát triển gần đây
Một trong những nhược điểm hiển nhiên của BoW là nó bỏ qua các mối quan hệ không gian giữa các bản mẫu, điều này rất quan trọng trong việc biểu diễn hình ảnh. Các nhà nghiên cứu đã đề xuất một số phương pháp để kết hợp thông tin không gian. Đối với những cải tiến mức độ đặc trưng, đặc trưng correlogram  có thể lưu lại không gian đồng xuất hiện của các đặc trưng khác. Đối với các mô hình khái quát, các vị trí tương đối  của từ mã cũng được tính đến. Hình dạng phân cấp và mô hình xuất hiện cho hành động của con người  giới thiệu một lớp phần mới (mô hình Chòm sao) giữa tỷ lệ hỗn hợp và các tính năng BoW, nắm bắt các mối quan hệ không gian giữa các phần trong lớp. Đối với các mô hình điều kiện,  kim tự tháp không gian  được thực hiện so khớp bằng cách phân vùng hình ảnh thành các tiểu vùng càng nhỏ càng tốt và tính toán biểu đồ của các đặc trưng  cục bộ bên trong mỗi tiểu vùng. Gần đây, một sự gia tăng của các mô tả hình ảnh địa phương (tức là SIFT) bằng tọa độ không gian của chúng được chuẩn hóa theo chiều rộng và chiều cao của hình ảnh đã được chứng minh là cách tiếp cận Mã hóa tọa độ không gian mạnh mẽ và đơn giản  giúp giới thiệu thông tin không gian cho mô hình BoW.

Mô hình BoW chưa được thử nghiệm rộng rãi cho quan điểm bất biến và bất biến tỷ lệ, và hiệu suất không rõ ràng. Ngoài ra, mô hình BoW cho phân tách đối tượng và khu vực hóa không được nghiên cứu rõ ràng.

Một so sánh có hệ thống các đường ống phân loại cho thấy việc mã hóa số liệu thống kê thứ tự thứ nhất và thứ hai (Vector của mô tả tổng hợp cục bộ (VLAD)  và Fisher Vector (FV)) tăng đáng kể độ chính xác phân loại so với BoW, đồng thời giảm kích thước danh bạ, do đó làm giảm chi phí tính toán cho việc tạo codebook. Hơn nữa, một so sánh chi tiết gần đây về các phương pháp mã hóa và gộp chung  cho BoW đã chỉ ra rằng số liệu thống kê thứ hai kết hợp với Mã hóa thưa  và một nhóm thích hợp như Power bình thường hóa có thể vượt trội hơn so với Fisher vectơ và thậm chí tiếp cận kết quả của các mô hình đơn giản của Mạng thần kinh tích chập  đơn giản trên một số bộ dữ liệu nhận dạng đối tượng như Oxford Flower Dataset 102.

## Xem thêm

* Mô hình dựa trên một phần 
* Mã hóa Fisher Vector 
* Phân loại đối tượng dựa trên phân khúc 
* Mô hình không gian vector 
* Mô hình túi từ 
* Trích xuất đặc trưng

## Tham khảo

## Liên kết ngoài

* Một bản trình diễn cho hai phân loại túi từ của L. Fei-Fei, R. Fergus và A. Torralba. 
* Hộp công cụ tìm kiếm hình ảnh quy mô lớn của Caltech: hộp công cụ Matlab / C ++ thực hiện tìm kiếm tệp đảo ngược cho mô hình Bag of Words. Nó cũng chứa các triển khai để tìm kiếm hàng xóm gần đúng nhanh nhất bằng cách sử dụng cây k-d ngẫu nhiên, băm nhạy cảm cục bộ và  k-means phân cấp. 
* Thư viện DBoW2: một thư viện triển khai một túi từ nhanh trong C ++ với sự hỗ trợ cho OpenCV.