文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.170367
中文引用格式: 鄒利華,戰蔭偉. 后驗概率改進Fisher向量的高性能圖像檢索算法[J].電子技術應用,2017,43(10):119-123.
英文引用格式: Zou Lihua,Zhan Yinwei. An image retrieval method combing with texture classification and modified Fisher vector[J].Application of Electronic Technique,2017,43(10):119-123.
0 引言
隨著多媒體和網絡技術的發展,圖像檢索的應用越來越廣泛。圖像檢索主要分為兩類:基于文字的圖像檢索(Text Based Image Retrieval,TBIR)和基于內容的圖像檢索(Content Based Image Retrieval,CBIR)。前者是依據圖像的文字注釋來進行檢索,后者直接依據圖像的內容進行檢索,不需要額外為圖像進行文字注釋,因此應用更加普遍[1-3]。目前CBIR技術研究成果較多,如文獻[4]結合圖像的紋理和形狀特征進行圖像檢索;文獻[5]基于Contourlet變換和Hu不變矩特征進行圖像檢索;文獻[6]融合尺度不變特征變換(Scale-Invariant Feature Transform,SIFT)、K-Means和線性判別式分析(Linear Discriminant Analysis,LDA)實現圖像檢索;文獻[7]融合灰度共生矩陣紋理特征和Hu不變矩特征進行圖像檢索;文獻[8]設計了模糊邏輯框架,將低層次視覺特征映射到高層次語義特征,并基于模糊邏輯實現圖像檢索;文獻[9]依據方向二值編碼、小波變換和方向梯度直方圖提取低層次圖像特征,再結合距離測度進行圖像檢索。另外,為了提高圖像檢索效率,乘積量化(Product quantization,PQ)和非對稱距離計算(Asymmetric Distance Computation,ADC)方法也在CBIR領域得到了廣泛應用[10-11]。不過,現有方法的圖像檢索性能還有較大的提升空間。
本文提出一種結合紋理分塊和改進Fisher向量的圖像檢索方法,是一種基于內容的圖像檢索方法,創新點主要包括兩個方面:一是在特征提取階段,本文不像傳統方法那樣直接提取圖像特征,而是先對圖像進行分塊,再對圖像子塊按照紋理復雜度進行分類,然后只對高復雜度的圖像子塊進行特征提取,而對低復雜度的圖像子塊直接將其特征向量賦值為零。這樣不僅可以大幅提高圖像的檢索效率,而且在一定程度上降低了紋理不豐富的圖像子塊引起的檢索誤差。二是在特征編碼和相似度計算階段,本文對特征向量進行分段,采用基于后驗概率改進的Fisher向量進行特征編碼,在小碼本尺寸上依據乘積量化和非對稱距離計算方法計算兩特征向量各分段之間的距離,這樣可以快速求取兩特征向量之間的距離,提高圖像檢索效率。
1 本文方法
對于待查詢圖像,本文先經過圖像預處理過程,得到歸一化圖像。然后進行圖像分塊,對不同的圖像子塊,依據紋理復雜度進行分類。對不同復雜度的圖像子塊,采用不同的特征提取方法提取圖像特征,之后采用基于后驗概率改進的Fisher向量進行特征編碼,最后依據乘積量化和非對稱距離計算方法計算兩特征向量之間的距離,快速求取兩特征向量的相似度指標,據此進行圖像檢索。本文方法的實現流程如圖1所示。
1.1 圖像預處理
在本文中,圖像預處理階段包括3個操作:圖像顏色空間轉換、尺寸歸一化和光照校正。
圖像顏色空間轉換是將輸入的非灰度圖像轉換為灰度圖像,后續的處理都是針對灰度圖像進行的。
尺寸歸一化是將輸入圖像的尺寸都歸一化到一個相同的尺寸上,便于后續提取一致性的特征。本文采用雙線性插值方法進行尺寸歸一化,歸一化后的圖像尺寸記為W×H。
光照校正是對輸入圖像的亮度進行校正,避免光照條件不佳引起的圖像細節丟失。本文采用常用的Gamma校正方法,校正公式如下:
其中,f(x,y)表示校正前歸一化圖像像素點(x,y)的灰度值,f′(x,y)為對應位置校正后的灰度值。γ為校正系數,當其取值在0~1之間時,校正后圖像低亮度區域的灰度動態范圍會變大,而高亮度區域的灰度動態范圍會變小,從而可以得到更豐富的圖像細節信息。
1.2 圖像子塊劃分
本文首先采用均勻分塊方式將圖像劃分為互不重疊的相同尺寸的圖像子塊;然后提取各圖像子塊的紋理復雜度指標,將圖像子塊分為兩類,后續針對兩類圖像子塊采用不同的特征提取方法提取圖像子塊的描述子。
假設圖像的尺寸為W×H,圖像子塊的尺寸為Ws×Hs。在進行圖像分塊時,如果圖像子塊的寬度Ws不能被圖像寬度W整除,這樣圖像最右側的一列圖像子塊會超出原圖像的范圍,此時需要將超出部分的像素點的灰度值賦值為0;類似地,如果圖像子塊的高度Hs不能被圖像高度H整除,這樣圖像最下側的一行圖像子塊會超出原圖像的范圍,此時同樣需要將超出部分的像素點的灰度值賦值為0。
1.3 圖像子塊分類
對于每一個圖像子塊,本文首先計算其灰度共生矩陣,然后計算圖像熵,將其作為圖像的紋理復雜度指標,對圖像子塊進行分類。
灰度共生矩陣是一種統計特征,用于統計圖像上某一特定距離和方向的兩個象素具有某種灰度分布的特性,能夠反映圖像灰度關于方向、距離和變化幅度的綜合信息,是分析圖像的局部模式和其排列規則的基礎,在圖像紋理描述方面應用非常廣泛。
對于尺寸為Ws×Hs的圖像子塊中的任一像素點(x,y),與其水平和垂直方向距離分別為a和b的另一像素點(x+a,y+b)組成一個像素點對,該像素點對的灰度值對記為(g1,g2),其中:
令像素點(x,y)在整個圖像子塊上移動,則會得到許多個(g1,g2)值。設圖像的灰度級數為L,則(g1,g2)的組合共有L2個,本文中L=256。對于整個圖像子塊,統計出每一種(g1,g2)組合出現的次數,然后用(g1,g2)出現的總次數將它們歸一化為出現概率p(g1,g2),表示為:
其中,n(g1,g2)表示圖像子塊上(g1,g2)組合出現的次數,N表示圖像子塊上像素點對(x,y)和(x+a,y+b)出現的總數。
得到所有的p(g1,g2)之后,再將其排列成一個方陣,該方陣即為灰度共生矩陣。
距離對(a,b)的取值不同,得到的灰度共生矩陣也不同。常依據圖像紋理的周期分布來選擇距離對(a,b)的取值。對于本文而言,計算灰度共生矩陣的目的是評價圖像子塊的紋理是否復雜,而不是區分不同的紋理。因此,本文采用街區距離為1的距離對,這樣可以分辨出細節豐富的紋理圖像。具體地,距離對(a,b)的取值組合為(1,0)、(0,1)、(1,1)和(-1,-1)。當(a,b)取值為(1,0)時,像素對(x,y)和(x+a,y+b)是水平方向,即0°掃描;當(a,b)取值為(0,1)時,像素對(x,y)和(x+a,y+b)是垂直方向,即90°掃描;當(a,b)取值為(1,1)時,像素對(x,y)和(x+a,y+b)是右對角線方向,即45°掃描;當(a,b)取值為(-1,-1)時,像素對(x,y)和(x+a,y+b)是左對角線方向,即135°掃描。
得到灰度共生矩陣之后,本文計算圖像熵來描述圖像紋理的復雜度,表示為:
熵值越大,說明圖像包含的紋理信息越多,圖像紋理復雜度越大;反之,圖像的紋理復雜度越小。
本文設定一個閾值TS,對圖像子塊進行分類。當圖像子塊的熵S小于閾值TS時,將其分為低復雜度圖像子塊類;否則,將其分為高復雜度圖像子塊類。
1.4 圖像子塊特征提取
本文在提取圖像子塊的特征時,區別對待低復雜度圖像子塊和高復雜度圖像子塊。
令X={x1,x2,…,xT}表示圖像的特征向量描述子。其中,xi表示第i個圖像子塊的特征向量,特征向量的維數為D;T表示圖像中的子塊數量。圖像子塊特征向量的排列順序是以圖像的左上角為起點,按照從左倒右、從上到下的掃描順序排列圖像子塊,也即:x1表示圖像左上角第一個圖像子塊的特征向量,xT表示圖像右下角最后一個圖像子塊的特征向量。
對于低復雜度圖像子塊,本文直接將其特征向量全部賦值為零,這樣做的意義在于:
(1)紋理不豐富的圖像子塊的特征顯著性不強,在特征匹配時不僅對區分不同圖像類別的貢獻很小,而且極易造成錯誤匹配;
(2)本文直接對此類圖像子塊的特征向量賦零值,省略了復雜的特征向量計算過程,而且在特征匹配階段零值特征向量與其他向量的相似度計算速度遠遠快于非零值特征向量之間相似度計算速度,這有助于提高圖像檢索的效率。
對于高復雜度圖像子塊,本文提取圖像子塊的SIFT特征,特征維數為128。
為了提高后續圖像檢索的效率以及降低大規模圖像數據集的特征存儲空間,本文采用主成分分析(PCA)方法對SIFT特征進行降維,降維后的維數為D(本文中,取D=64)。
1.5 特征編碼
經過圖像子塊的特征提取過程之后,可以將特征向量集X={x1,x2,…,xT}作為圖像的特征描述子。對于每一幅圖像的特征描述子,采用高斯混合模型(Gaussian Mixture Model,GMM)構建碼本,采用改進的Fisher向量進行編碼,具體描述如下。
假設樣本之間相互獨立且服從高斯分布,令Gk={ωk,μk,Σk|k=1,2,…,K}表示K個混合高斯模型的參數,其中,ωk表示第k個高斯模型的混合權重,μk表示第k個高斯模型的均值向量,Σk表示第k個高斯模型的協方差矩陣。每一個特征向量采用一個軟分配函數γt(k)與第k個高斯函數項關聯,本文采用后驗概率作為軟分配函數,定義為:
對每一個高斯模型的參數求導可以得到一個2D+1維的特征向量,這樣,K個高斯模型可以得到(2D+1)K維的特征向量。另外,由于混合高斯模型的權值之和為1,故冗余維數為1,這樣,經過Fisher向量編碼之后得到的特征向量維數為(2D+1)K-1。
1.6 相似度計算
當提取了查詢圖像的特征向量之后,本文采用距離測度來計算該特征向量與數據庫中的特征向量之間的相似度。為了加快搜索速度,本文采用乘積量化和非對稱距離計算方法進行圖像檢索。
令qr∈RD表示一個維數為D的查詢向量,X={xi|xi∈RD,i=1,2,…,n}表示數據庫中的特征向量集合,每一個特征向量的維數也為D,數據庫中的特征向量總數為n。采用ADC方法估算的查詢向量qr∈RD與數據庫X中任一特征向量xi∈X之間的距離可以表示為:
其中,q(xi)表示特征向量xi的量化向量。
事實上,碼本的尺寸越大,采用ADC方法估計的距離越精確。然而,在實際應用時碼本太大不僅會占用較多的存儲空間,而且計算效率也會下降。為了解決這一問題,本文采用的策略是:將特征向量劃分成m個段,對于每一個段,學習一個碼本并關聯一個碼字。這樣,采用ADC方法估計的距離可以改寫為:
其中,特征向量的分段數為m,uj(qr)∈RD/m表示特征向量qr的第j個分段。
在圖像檢索階段,首先計算查詢向量每一個分段與數據集中對應分段的所有可能聚類之間的距離,并將所有計算結果存儲在查找表中。為了加速距離計算,ADC充分利用該查找表,通過將每一個單獨分段的計算結果相加來得到最終的距離測度。在本文中,距離測度采用常用的歐氏距離。數據庫中的特征向量與待查詢圖像之間的距離越近,說明兩特征向量的相似度越大。按照相似度由大到小的順序進行排序,假設查詢余量為T,則輸出數據庫中前T個特征向量對應的圖像作為最終的檢索結果。
2 仿真實驗與分析
2.1 實驗說明
為驗證本文方法的圖像檢索性能,將本文方法與目前圖像檢索領域常用的3種方法(文獻[7,8,9]所述方法)進行對比實驗,在相同數據集和計算平臺上測試各種方法的查準率、召回率和查詢時間指標,定量評價本文方法的性能。其中,查準率是指檢索正確的相關圖像數量與檢索到的圖像總數的比值,召回率是指檢索正確的相關圖像數量與數據集中相關圖像總數的比值,查詢時間是指平均查詢一幅圖像所需要的時間,對應的計算機平臺參數為:CPU 3.2 GB四核,內存16 GB。
實驗數據集選用圖像檢索領域國際上通用的Holidays數據集。該數據集包含了500個圖像組,共1 491幅圖像。其中,每個圖像組代表一個特定的場景或者物體,每一組的第一幅圖像是查詢圖像,其余圖像為相關圖像,相關圖像包含了旋轉、視角和光照變化的差異。部分圖像示例見圖2。
另外,本文方法涉及了一些參數,如表1所示。這些參數的取值是根據實驗統計結果所取的經驗值。
本文方法的創新之一是在特征提取階段不像傳統方法那樣直接提取圖像特征,而是先對圖像進行分塊,再對圖像子塊按照紋理復雜度進行分類,只對高復雜度圖像子塊進行SIFT和PCA特征提取,而低復雜度圖像子塊的特征向量直接賦值為零。為了驗證這一創新的有效性,本文設計了一組仿真實驗,在本文方法的總體框架下,對比不進行圖像分塊和不進行圖像子塊分類情況下的圖像檢索性能差異,圖3給出了查準率和召回率的對比結果,表2列出了查詢時間的對比結果。其中,方法1是指在本文方法框架下不進行圖像分塊和圖像子塊分類操作的處理結果(也即跳過1.2和1.3小節的處理步驟),方法2是指在本文方法框架下不進行圖像子塊分類操作的處理結果(也即跳過1.3小節的處理步驟)。參數取值都如表1所示。
由圖3可見,本文方法的查準率和召回率明顯高于方法1,略高于方法2,這說明在相同特征維數的情況下,對圖像進行分塊明顯可以提高圖像檢索的查準率和召回率。同時,對紋理不豐富的圖像子塊的特征向量賦值為零,可以降低這些特征顯著性不強的特征向量引起的錯誤匹配,一定程度上提高了圖像檢索的查準率和召回率。再結合表2可見,本文方法的查詢時間明顯小于方法2,這是因為對低復雜度圖像子塊的特征向量賦零值,省略了復雜的特征向量計算過程,而且在特征匹配階段零值特征向量與其他向量的相似度計算速度遠遠快于非零值特征向量之間相似度計算速度,有效提高了圖像檢索的效率。因此,本文方法對圖像進行分塊并對圖像子塊進行分類是有效的。
2.2 不同檢索方法的檢索性能對比
下面將本文方法與文獻[7,8,9]所述方法進行對比實驗,驗證本文方法的優勢。圖4給出了查準率和召回率對比結果,表3給出了查詢時間對比結果。
結合圖4和表3可見,本文方法的查準率和召回率指標高于其他3種方法,查詢時間指標更是明顯低于其他3種方法。因此,本文方法的圖像檢索性能優于其他3種方法。
3 結束語
本文提出了一種結合紋理分塊和改進Fisher向量的圖像檢索方法,在特征提取階段,通過圖像分塊和紋理復雜度分類,僅對高復雜度圖像子塊提取SIFT和PCA特征,對低復雜度圖像子塊直接賦零值,大幅提高圖像檢索效率,并降低紋理不豐富圖像子塊引起的檢索誤差;在特征編碼和相似度計算階段,通過對特征向量進行分段,采用基于后驗概率改進的Fisher向量進行特征編碼,在小碼本尺寸上依據PQ和ADC方法計算兩特征向量各分段之間的歐氏距離,大幅提高相似度計算效率。圖像檢索實驗表明,本文方法耗費的查詢時間少,且查準率和查全率高。
參考文獻
[1] KOKARE M,CHATTERJI B N,BISWAS P K.A survey on current content based image retrieval methods[J].Iete Journal of Research,2015,48(3-4):261-271.
[2] RAMISA A,RAMISA A,SCHMID C.Combining attributes and Fisher vectors for efficient image retrieval[C].IEEE Conference on Computer Vision and Pattern Recognition. IEEE Computer Society, 2011:745-752.
[3] FARRUGGIA A,MAGRO R,VITABILE S.A text based indexing system for mammographic image retrieval and classification[J].Future Generation Computer Systems,2014,37(7):243-251.
[4] PUVIARASAN N,BHAVANI R,VASANTHI A.Image retrieval using combination of texture and shape features[J].Image,2014,3(3):39-62.
[5] 楊舒,王玉德.基于Contourlet變換和Hu不變矩的圖像檢索算法[J].紅外與激光工程,2014,43(1):306-310.
[6] 汪宇雷,畢樹生,孫明磊,等.基于SIFT,K-Means和LDA的圖像檢索算法[J].北京航空航天大學學報,2014,40(9):1317-1322.
[7] BAGRI N,JOHARI P K.A comparative study on feature extraction using texture and shape for content based image retrieval[J].International Journal of Advanced Science and Technology,2015,2(80):41-52.
[8] DARWISH S M,ALI R A.Observations on using type-2 fuzzy logic for reducing semantic gap in content-based image retrieval system[J].International Journal of Computer Theory and Engineering,2015,7(1):1-8.
[9] NAGARAJA S,PRABHAKAR C J.Low-level features for image retrieval based on extraction of directional binary patterns and its oriented gradients histogram[J].Computer Science,2015,2(1):13-28.
[10] GRAY R M,COSMAN P C,OEHLER K L.Neural network implementation of adaptive vector quantization for image compression[J].Global Journal of Computer Science & Technology,2014,59(4):91-96.
[11] NOVA D,ESTEVEZ P A.A review of learning vector quantization classifiers[J].Neural Computing & Applications,2015,25(3-4):511-524.
作者信息:
鄒利華1,戰蔭偉2
(1.東莞職業技術學院 計算機工程系,廣東 東莞523808;2.廣東工業大學 計算機學院,廣東 廣州510006)