江佳翼,左劼,孫頻捷
(1.四川大學計算機學院,成都610065;2.上海政法學院,上海200000)
基于內容的圖像檢索技術已在實際生活中廣泛使用?;趦热莸膱D像檢索是指從圖像中提取出包含語義信息的特征,之后與待測數據庫中的待測圖像對應的特征計算相似度,返回相似度最高的一些結果。傳統的圖像檢索會去提取圖像的紋理等信息[1],由于深度學習的發展,深度學習能提取出更好的特征,在圖像檢索中能發揮更好的作用。
然而提取的各種特征只能表征圖像的一些低階信息,無法與圖像的高階語義匹配,這被稱為“語義鴻溝”,即圖像的一些固有特征與用戶的真實需求不一致。為了解決這一問題,交互式圖像檢索發揮了重要作用。交互式圖像檢索是指讓用戶參與到檢索的整個系統中,讓用戶對檢索結果進行標注,得到用戶對于結果的反饋,然后交互式圖像檢索框架對反饋信息進行學習,捕捉用戶的真實興趣,從而讓下一輪檢索效果更好。文獻[2]提出將交互式圖像檢索應用在醫學領域,達到了一定的效果。
交互式圖像檢索的目的是學到一個新的度量,文獻[3]的方法利用孿生神經網絡去學習用戶標注的圖像特征和查詢圖像特征的新的相似度度量方式,文獻[4-5]的方法用支持向量機去學習用戶的興趣度模型,文獻[6]的方法將用戶的反饋劃分為四個級別,而不是一般的非正即負的反饋,通過規則挖掘來獲取圖像相關性。已有的交互式圖像檢索方法,將查詢圖像和待測圖像均看成一個整體,忽略了圖像中各個區域的重要性,而用戶對于給定的查詢圖像,往往只關注圖像中的某些區域。文獻[7-8]的方法利用到了區域信息,將兩個圖片最相似的區域的相似度看為兩張圖片的相似度。本文針對這個問題進行研究,提出了利用圖像區域信息的交互式圖像檢索框架,用兩個圖片各個區域的相似度的加權平均來表征兩個圖片的總體相似度,且在交互的過程中,不斷改變各個區域的權重,以提高下一次檢索的性能。
本文的主要貢獻在于:
(1)用兩個圖像各個區域對的相似度的面積加權平均來表示整個圖像的相似度,這種方式很好地利用到了區域信息。
(2)隨著交互進行,不斷調整查詢圖像中各個區域的權重,從而讓用戶更感興趣的區域發揮更重要作用,改善了檢索性能。
圖像檢索是根據查詢圖像,從待測圖像庫中找出用戶想要的圖像結果。傳統基于內容的圖像檢索會提取圖像的傳統特征,如紋理、顏色,來表征圖像,這種方式往往不能對圖像的內容有很好的理解。隨著深度學習的發展,目前的基于內容的圖像檢索是通過神經網絡來提取圖像的深層特征,能更好地表達圖像的內容。其具體做法是:將待提取圖像輸入已經訓練好的神經網絡模型中,讓其經過前饋計算后,得到在某一層的輸出,將其作為圖像的特征。
在得到圖像的特征之后,可以存儲在圖像數據庫中,方便之后使用。在檢索時,會計算查詢圖像與各個待測圖像的相似度,一般選用余弦相似度。然后根據相似度從大到小排序,返回相似度最高的前K 個作為檢索結果。
為了改善圖像檢索的性能,需要使得特征能更好地表達圖像的內容。目前的工作提出了很多的神經網絡結構,可以選擇相同網絡結構中不同神經網絡層去提取特征,也可以采用另一種新的網絡結構去提取特征,所有這些方法他們都可以被抽象為一個特征提取器。特征提取的越好,圖像檢索的效果就越好。常見的有VGG16、VGG19 等。
基于內容的圖像檢索只會得到圖像的固有屬性所產生的排序,無法在檢索的過程中得到用戶的反饋信息,為了利用用戶反饋,越來越多的研究者開始關注交互式圖像檢索。交互式圖像檢索是將用戶納入了檢索過程的整個系統中,具體流程如下:
(1)將用戶提供的查詢圖像Q 與待測圖像庫中的各個圖像計算特征相似度,最終結果為S,將S 排序后,返回前K 個結果。
(2)用戶對返回的K 個結果進行標注,結果是用戶想要的則標注為1,反之則是0。
(3)根據用戶所有反饋信息,將其作為標簽,與已標注的圖像對應的特征一起送入SVM 模型,得到一個用戶興趣度模型。
(4)將待測圖像庫中的未標注圖片送入訓練好的SVM 中,得到分類概率,其概率值的含義是用戶對待測圖像的興趣度P,然后乘以之前得到的相似度S,即Score=S*P。Score 即新一輪檢索的得分,返回Score最大的前K 個對應圖像結果給用戶。
(5)重復234 過程,直到用戶停止交互。
圖像檢索的目的不僅僅是返回最相似的圖像,而還有返回用戶最想要的圖像,交互式圖像檢索能捕捉到用戶真實需求,這是圖像檢索所做不到的。根據用戶的反饋信息,我們可以訓練出一個二分類模型,即在特征空間中尋找到一條分界線,將剩余的待測圖像分成兩部分,表示用戶對圖像的興趣度,且離這條分界線越遠,表示用戶的興趣度相應的越大(或越小)。根據興趣度與相似度的乘積,我們可以返回給用戶新的檢索結果,這些結果是既滿足與查詢圖像的相似性,又滿足用戶的興趣的結果。從而使得新的檢索結果性能更好。
已有的交互式圖像檢索框架,將圖像看作一個整體,忽略了圖像中各區域關系。對于一幅圖像,我們可以通過區域選擇算法得到其區域信息(圖1)。在所選擇到的區域中,用戶必然不是對每個區域都是同樣關注,如在圖1 中,用戶一般會對包含槍械部分的區域更關心,而對底下的畫布的關注度則沒那么強。所以我們需要尋求一種新的匹配措施,使得圖像的區域信息能被利用起來。

圖1 圖像的區域
為了獲得圖像中的各個區域,一般可以用窮舉法列出物體可能出現的區域,但是這樣做的復雜度太高。目前廣泛采取的做法是通過選擇性搜索算法(Selective Search),它會先分割整幅圖像得到小圖像,然后合并一些區域來得到最終結果。這種方法的表現良好,因此在本實驗中也是采用這種算法。
我們通過Selective Search 來得到圖像的各個區域。對于查詢圖像,我們得到其N 個區域,對于待測圖像,我們得到其M 個區域。針對每個區域,我們會通過神經網絡得到這個區域的特征。然后我們將查詢圖像與待測圖像的各個區域兩兩計算相似度,得到一個N*M 的相似度矩陣,如圖2。

圖2
相似度矩陣中每一個值Tij表示查詢圖像的第i個區域與待測圖像的第j 個區域的相似度。為了度量兩個圖像的相似度s,我們對矩陣的每一行求得一個最大值,其含義為:對查詢圖像的每一個區域,我們找到在其在待測圖像中最匹配的區域對應的相似度。然后將所有行的最大值求平均,得到s1。

以上是基于查詢圖像去找到待測圖像中的最匹配區域??紤]到查詢圖像中,并不是每個區域,用戶都感興趣。我們也可以反過來,根據待測圖像中的區域,去找到查詢圖像中的最匹配區域,得到s2。

我們定義最終查詢圖像與待測圖像的相似度s 為:

通過這樣的區域匹配,用區域之間的相似度來表征總體的相似度,能很好地使區域信息被捕捉到。
在2.1 小節中,s1(s2)的計算是直接將各行(列)的最大值求平均,這是將圖像中的各個區域看成同等重要,但顯然,對于用戶而言,查詢圖像并不是各個區域都同樣重要。為了衡量不同區域對用戶而言的重要程度,我們給每個匹配區域對定義一個權重wi。下面介紹如何表示wi。
一般而言,區域面積大的區域,會具有更多的重要性。在這樣的假設下,我們首先通過區域面積給選出來的區域進行加權,以2.1 小節中s1 的獲得為例,我們假設查詢圖像的第i 個區域Qi與待測圖像的Imgi區域匹配,那么我們可以得到這兩個區域的面積的乘積Areai,于是可以得到一個維度為N 的向量Area,它表示了每個匹配的區域對的面積,歸一化后可以將其與區域對的相似度加權平均,作為基于區域面積的相似度度量方法。
然而基于面積加權的一個弊端是,每個區域的面積是固定的,所以權重也是固定的,無法在交互式圖像檢索中獲取到用戶興趣,于是我們為每個查詢圖像中的區域定義了變量,維度為N。我們將wi=Areaij,即我們的匹配區域對的權重是自定義區域權重與面積權重的綜合考量。
因此,加了權重的相似度s1 計算我們定義為s1'。則其表達式為:

我們定義的是查詢圖像的興趣度權重,因為待測圖像有很多個,所以我們沒有定義待測圖像的權重,這也無意義。在求得時我們用查詢圖像的權重去表示待測圖像權重:

其中wi,j表示待測圖像的j 區域匹配到的查詢圖像區域為i 的權重。


用戶的反饋信息是用戶對之前已給出的檢索結果的標注,1 表示對應的檢索結果是用戶喜歡的,-1 則相反。對于每一個標注結果,我們仍然從相似度矩陣入手,取每一列最大的值,即在計算s2’時待測圖像每一個區域,所匹配到的查詢圖像的區域。值得注意的是,這些區域有可能是重復的,因為待測圖像的不同區域可能匹配到相同的查詢圖像區域。當命中一次查詢圖像的區域后,如果用戶的標注為1,那么我們認為這個區域是用戶感興趣的區域,那我們需要增加這個命中的查詢圖像區域的權重;反之用戶的標注為-1,那么這是一個與用戶興趣無關的區域,我們需要減小其權重。即對每一個命中區域i,其權重變化公式為:

其中,label 表示用戶標注,取值為[1,-1],step 表示權重更新的步長,默認取值為0.01。
可以看到,當label 為-1 時,wi會被縮小一定倍數,label 為1 時則會放大一定的倍數。
在已有的交互式圖像檢索方法中,下一輪檢索得分是Score=S*P,其中S 是兩個圖像的相似度。在我們的方法中,我們得到s 的值后,也是采取Score=S’*P 的方式來得到新的排序得分。然后返回得分最高的,且未被用戶標記過的結果。
已有的工作中,使用的數據集是Caltech101、Corel5K。Caltech101 含101 類圖像,圖像種類較多。Corel5K 含50 個主題,每個主題100 張圖像,一共5000張圖像,我們認為其圖像種類太少,任務相對簡單。在本文實驗中,我們選擇了Caltech256,他是Caltech101的加強版,含有257 類,圖像種類更多,任務難度更大。對于每一類,我們抽30 張作為待檢索圖像,10 張作為查詢圖像。所以一共有30×257=7710 張待測圖像,10×257=2570 張查詢圖像。
不同于圖像檢索,交互式圖像檢索中,我們需要記錄用戶已經標注的樣本,這樣在下一次檢索結果返回的時候,我們需要過濾掉已經讓用戶看過的結果。我們采用MAP 來評估檢索的性能,AP 表示為:

其中,R 表示對于一個查詢圖像,其總的同類數,Rj表示在前j 個中,有多少個是查詢圖像的同類,Ij=1表示第j 位的結果是同類,反之Ij=0 表示不是同類。我們設置n=100,然后MAP 表示所有查詢圖像的AP結果的均值。
實驗設計如下:
(1)已有的方法:以整張圖計算相似度。
(2)基于區域對的面積加權計算方法。這種方式不隨著交互改變區域的重要度。
(3)基于區域對的面積加權以及區域重要度加權計算方法。這種方式會隨著交互的進行,改變區域的重要度。
實驗結果如表1,表中數值表示前100 個返回結果的MAP 值。

表1
可以看到,基于區域相似度的計算方法在多次交互中均優于已有的交互式圖像檢索方式,這證明了基于區域相似度檢索的有效性,同時,比較實驗2 與實驗3,我們發現,改變了區域權重的方法,會使得交互過程中,檢索的性能改善的更好,說明區域權重很好地反映了用戶的興趣點所在。
本文提出了一種基于區域信息的交互式圖像檢索框架,利用了區域的面積信息,并且在用戶交互的過程中不斷調整不同區域的權重,更好地抓住了用戶對查詢圖像不同區域的興趣度,實驗表明,我們的方法優于目前的方法,解決了已有的交互式圖像檢索任務中對區域信息沒有利用的問題。