文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.170367
中文引用格式: 鄒利華,戰(zhàn)蔭偉. 后驗(yàn)概率改進(jìn)Fisher向量的高性能圖像檢索算法[J].電子技術(shù)應(yīng)用,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 引言
隨著多媒體和網(wǎng)絡(luò)技術(shù)的發(fā)展,圖像檢索的應(yīng)用越來越廣泛。圖像檢索主要分為兩類:基于文字的圖像檢索(Text Based Image Retrieval,TBIR)和基于內(nèi)容的圖像檢索(Content Based Image Retrieval,CBIR)。前者是依據(jù)圖像的文字注釋來進(jìn)行檢索,后者直接依據(jù)圖像的內(nèi)容進(jìn)行檢索,不需要額外為圖像進(jìn)行文字注釋,因此應(yīng)用更加普遍[1-3]。目前CBIR技術(shù)研究成果較多,如文獻(xiàn)[4]結(jié)合圖像的紋理和形狀特征進(jìn)行圖像檢索;文獻(xiàn)[5]基于Contourlet變換和Hu不變矩特征進(jìn)行圖像檢索;文獻(xiàn)[6]融合尺度不變特征變換(Scale-Invariant Feature Transform,SIFT)、K-Means和線性判別式分析(Linear Discriminant Analysis,LDA)實(shí)現(xiàn)圖像檢索;文獻(xiàn)[7]融合灰度共生矩陣紋理特征和Hu不變矩特征進(jìn)行圖像檢索;文獻(xiàn)[8]設(shè)計(jì)了模糊邏輯框架,將低層次視覺特征映射到高層次語義特征,并基于模糊邏輯實(shí)現(xiàn)圖像檢索;文獻(xiàn)[9]依據(jù)方向二值編碼、小波變換和方向梯度直方圖提取低層次圖像特征,再結(jié)合距離測度進(jìn)行圖像檢索。另外,為了提高圖像檢索效率,乘積量化(Product quantization,PQ)和非對(duì)稱距離計(jì)算(Asymmetric Distance Computation,ADC)方法也在CBIR領(lǐng)域得到了廣泛應(yīng)用[10-11]。不過,現(xiàn)有方法的圖像檢索性能還有較大的提升空間。
本文提出一種結(jié)合紋理分塊和改進(jìn)Fisher向量的圖像檢索方法,是一種基于內(nèi)容的圖像檢索方法,創(chuàng)新點(diǎn)主要包括兩個(gè)方面:一是在特征提取階段,本文不像傳統(tǒng)方法那樣直接提取圖像特征,而是先對(duì)圖像進(jìn)行分塊,再對(duì)圖像子塊按照紋理復(fù)雜度進(jìn)行分類,然后只對(duì)高復(fù)雜度的圖像子塊進(jìn)行特征提取,而對(duì)低復(fù)雜度的圖像子塊直接將其特征向量賦值為零。這樣不僅可以大幅提高圖像的檢索效率,而且在一定程度上降低了紋理不豐富的圖像子塊引起的檢索誤差。二是在特征編碼和相似度計(jì)算階段,本文對(duì)特征向量進(jìn)行分段,采用基于后驗(yàn)概率改進(jìn)的Fisher向量進(jìn)行特征編碼,在小碼本尺寸上依據(jù)乘積量化和非對(duì)稱距離計(jì)算方法計(jì)算兩特征向量各分段之間的距離,這樣可以快速求取兩特征向量之間的距離,提高圖像檢索效率。
1 本文方法
對(duì)于待查詢圖像,本文先經(jīng)過圖像預(yù)處理過程,得到歸一化圖像。然后進(jìn)行圖像分塊,對(duì)不同的圖像子塊,依據(jù)紋理復(fù)雜度進(jìn)行分類。對(duì)不同復(fù)雜度的圖像子塊,采用不同的特征提取方法提取圖像特征,之后采用基于后驗(yàn)概率改進(jìn)的Fisher向量進(jìn)行特征編碼,最后依據(jù)乘積量化和非對(duì)稱距離計(jì)算方法計(jì)算兩特征向量之間的距離,快速求取兩特征向量的相似度指標(biāo),據(jù)此進(jìn)行圖像檢索。本文方法的實(shí)現(xiàn)流程如圖1所示。
1.1 圖像預(yù)處理
在本文中,圖像預(yù)處理階段包括3個(gè)操作:圖像顏色空間轉(zhuǎn)換、尺寸歸一化和光照校正。
圖像顏色空間轉(zhuǎn)換是將輸入的非灰度圖像轉(zhuǎn)換為灰度圖像,后續(xù)的處理都是針對(duì)灰度圖像進(jìn)行的。
尺寸歸一化是將輸入圖像的尺寸都?xì)w一化到一個(gè)相同的尺寸上,便于后續(xù)提取一致性的特征。本文采用雙線性插值方法進(jìn)行尺寸歸一化,歸一化后的圖像尺寸記為W×H。
光照校正是對(duì)輸入圖像的亮度進(jìn)行校正,避免光照條件不佳引起的圖像細(xì)節(jié)丟失。本文采用常用的Gamma校正方法,校正公式如下:
其中,f(x,y)表示校正前歸一化圖像像素點(diǎn)(x,y)的灰度值,f′(x,y)為對(duì)應(yīng)位置校正后的灰度值。γ為校正系數(shù),當(dāng)其取值在0~1之間時(shí),校正后圖像低亮度區(qū)域的灰度動(dòng)態(tài)范圍會(huì)變大,而高亮度區(qū)域的灰度動(dòng)態(tài)范圍會(huì)變小,從而可以得到更豐富的圖像細(xì)節(jié)信息。
1.2 圖像子塊劃分
本文首先采用均勻分塊方式將圖像劃分為互不重疊的相同尺寸的圖像子塊;然后提取各圖像子塊的紋理復(fù)雜度指標(biāo),將圖像子塊分為兩類,后續(xù)針對(duì)兩類圖像子塊采用不同的特征提取方法提取圖像子塊的描述子。
假設(shè)圖像的尺寸為W×H,圖像子塊的尺寸為Ws×Hs。在進(jìn)行圖像分塊時(shí),如果圖像子塊的寬度Ws不能被圖像寬度W整除,這樣圖像最右側(cè)的一列圖像子塊會(huì)超出原圖像的范圍,此時(shí)需要將超出部分的像素點(diǎn)的灰度值賦值為0;類似地,如果圖像子塊的高度Hs不能被圖像高度H整除,這樣圖像最下側(cè)的一行圖像子塊會(huì)超出原圖像的范圍,此時(shí)同樣需要將超出部分的像素點(diǎn)的灰度值賦值為0。
1.3 圖像子塊分類
對(duì)于每一個(gè)圖像子塊,本文首先計(jì)算其灰度共生矩陣,然后計(jì)算圖像熵,將其作為圖像的紋理復(fù)雜度指標(biāo),對(duì)圖像子塊進(jìn)行分類。
灰度共生矩陣是一種統(tǒng)計(jì)特征,用于統(tǒng)計(jì)圖像上某一特定距離和方向的兩個(gè)象素具有某種灰度分布的特性,能夠反映圖像灰度關(guān)于方向、距離和變化幅度的綜合信息,是分析圖像的局部模式和其排列規(guī)則的基礎(chǔ),在圖像紋理描述方面應(yīng)用非常廣泛。
對(duì)于尺寸為Ws×Hs的圖像子塊中的任一像素點(diǎn)(x,y),與其水平和垂直方向距離分別為a和b的另一像素點(diǎn)(x+a,y+b)組成一個(gè)像素點(diǎn)對(duì),該像素點(diǎn)對(duì)的灰度值對(duì)記為(g1,g2),其中:
令像素點(diǎn)(x,y)在整個(gè)圖像子塊上移動(dòng),則會(huì)得到許多個(gè)(g1,g2)值。設(shè)圖像的灰度級(jí)數(shù)為L,則(g1,g2)的組合共有L2個(gè),本文中L=256。對(duì)于整個(gè)圖像子塊,統(tǒng)計(jì)出每一種(g1,g2)組合出現(xiàn)的次數(shù),然后用(g1,g2)出現(xiàn)的總次數(shù)將它們歸一化為出現(xiàn)概率p(g1,g2),表示為:
其中,n(g1,g2)表示圖像子塊上(g1,g2)組合出現(xiàn)的次數(shù),N表示圖像子塊上像素點(diǎn)對(duì)(x,y)和(x+a,y+b)出現(xiàn)的總數(shù)。
得到所有的p(g1,g2)之后,再將其排列成一個(gè)方陣,該方陣即為灰度共生矩陣。
距離對(duì)(a,b)的取值不同,得到的灰度共生矩陣也不同。常依據(jù)圖像紋理的周期分布來選擇距離對(duì)(a,b)的取值。對(duì)于本文而言,計(jì)算灰度共生矩陣的目的是評(píng)價(jià)圖像子塊的紋理是否復(fù)雜,而不是區(qū)分不同的紋理。因此,本文采用街區(qū)距離為1的距離對(duì),這樣可以分辨出細(xì)節(jié)豐富的紋理圖像。具體地,距離對(duì)(a,b)的取值組合為(1,0)、(0,1)、(1,1)和(-1,-1)。當(dāng)(a,b)取值為(1,0)時(shí),像素對(duì)(x,y)和(x+a,y+b)是水平方向,即0°掃描;當(dāng)(a,b)取值為(0,1)時(shí),像素對(duì)(x,y)和(x+a,y+b)是垂直方向,即90°掃描;當(dāng)(a,b)取值為(1,1)時(shí),像素對(duì)(x,y)和(x+a,y+b)是右對(duì)角線方向,即45°掃描;當(dāng)(a,b)取值為(-1,-1)時(shí),像素對(duì)(x,y)和(x+a,y+b)是左對(duì)角線方向,即135°掃描。
得到灰度共生矩陣之后,本文計(jì)算圖像熵來描述圖像紋理的復(fù)雜度,表示為:
熵值越大,說明圖像包含的紋理信息越多,圖像紋理復(fù)雜度越大;反之,圖像的紋理復(fù)雜度越小。
本文設(shè)定一個(gè)閾值TS,對(duì)圖像子塊進(jìn)行分類。當(dāng)圖像子塊的熵S小于閾值TS時(shí),將其分為低復(fù)雜度圖像子塊類;否則,將其分為高復(fù)雜度圖像子塊類。
1.4 圖像子塊特征提取
本文在提取圖像子塊的特征時(shí),區(qū)別對(duì)待低復(fù)雜度圖像子塊和高復(fù)雜度圖像子塊。
令X={x1,x2,…,xT}表示圖像的特征向量描述子。其中,xi表示第i個(gè)圖像子塊的特征向量,特征向量的維數(shù)為D;T表示圖像中的子塊數(shù)量。圖像子塊特征向量的排列順序是以圖像的左上角為起點(diǎn),按照從左倒右、從上到下的掃描順序排列圖像子塊,也即:x1表示圖像左上角第一個(gè)圖像子塊的特征向量,xT表示圖像右下角最后一個(gè)圖像子塊的特征向量。
對(duì)于低復(fù)雜度圖像子塊,本文直接將其特征向量全部賦值為零,這樣做的意義在于:
(1)紋理不豐富的圖像子塊的特征顯著性不強(qiáng),在特征匹配時(shí)不僅對(duì)區(qū)分不同圖像類別的貢獻(xiàn)很小,而且極易造成錯(cuò)誤匹配;
(2)本文直接對(duì)此類圖像子塊的特征向量賦零值,省略了復(fù)雜的特征向量計(jì)算過程,而且在特征匹配階段零值特征向量與其他向量的相似度計(jì)算速度遠(yuǎn)遠(yuǎn)快于非零值特征向量之間相似度計(jì)算速度,這有助于提高圖像檢索的效率。
對(duì)于高復(fù)雜度圖像子塊,本文提取圖像子塊的SIFT特征,特征維數(shù)為128。
為了提高后續(xù)圖像檢索的效率以及降低大規(guī)模圖像數(shù)據(jù)集的特征存儲(chǔ)空間,本文采用主成分分析(PCA)方法對(duì)SIFT特征進(jìn)行降維,降維后的維數(shù)為D(本文中,取D=64)。
1.5 特征編碼
經(jīng)過圖像子塊的特征提取過程之后,可以將特征向量集X={x1,x2,…,xT}作為圖像的特征描述子。對(duì)于每一幅圖像的特征描述子,采用高斯混合模型(Gaussian Mixture Model,GMM)構(gòu)建碼本,采用改進(jìn)的Fisher向量進(jìn)行編碼,具體描述如下。
假設(shè)樣本之間相互獨(dú)立且服從高斯分布,令Gk={ωk,μk,Σk|k=1,2,…,K}表示K個(gè)混合高斯模型的參數(shù),其中,ωk表示第k個(gè)高斯模型的混合權(quán)重,μk表示第k個(gè)高斯模型的均值向量,Σk表示第k個(gè)高斯模型的協(xié)方差矩陣。每一個(gè)特征向量采用一個(gè)軟分配函數(shù)γt(k)與第k個(gè)高斯函數(shù)項(xiàng)關(guān)聯(lián),本文采用后驗(yàn)概率作為軟分配函數(shù),定義為:
對(duì)每一個(gè)高斯模型的參數(shù)求導(dǎo)可以得到一個(gè)2D+1維的特征向量,這樣,K個(gè)高斯模型可以得到(2D+1)K維的特征向量。另外,由于混合高斯模型的權(quán)值之和為1,故冗余維數(shù)為1,這樣,經(jīng)過Fisher向量編碼之后得到的特征向量維數(shù)為(2D+1)K-1。
1.6 相似度計(jì)算
當(dāng)提取了查詢圖像的特征向量之后,本文采用距離測度來計(jì)算該特征向量與數(shù)據(jù)庫中的特征向量之間的相似度。為了加快搜索速度,本文采用乘積量化和非對(duì)稱距離計(jì)算方法進(jìn)行圖像檢索。
令qr∈RD表示一個(gè)維數(shù)為D的查詢向量,X={xi|xi∈RD,i=1,2,…,n}表示數(shù)據(jù)庫中的特征向量集合,每一個(gè)特征向量的維數(shù)也為D,數(shù)據(jù)庫中的特征向量總數(shù)為n。采用ADC方法估算的查詢向量qr∈RD與數(shù)據(jù)庫X中任一特征向量xi∈X之間的距離可以表示為:
其中,q(xi)表示特征向量xi的量化向量。
事實(shí)上,碼本的尺寸越大,采用ADC方法估計(jì)的距離越精確。然而,在實(shí)際應(yīng)用時(shí)碼本太大不僅會(huì)占用較多的存儲(chǔ)空間,而且計(jì)算效率也會(huì)下降。為了解決這一問題,本文采用的策略是:將特征向量劃分成m個(gè)段,對(duì)于每一個(gè)段,學(xué)習(xí)一個(gè)碼本并關(guān)聯(lián)一個(gè)碼字。這樣,采用ADC方法估計(jì)的距離可以改寫為:
其中,特征向量的分段數(shù)為m,uj(qr)∈RD/m表示特征向量qr的第j個(gè)分段。
在圖像檢索階段,首先計(jì)算查詢向量每一個(gè)分段與數(shù)據(jù)集中對(duì)應(yīng)分段的所有可能聚類之間的距離,并將所有計(jì)算結(jié)果存儲(chǔ)在查找表中。為了加速距離計(jì)算,ADC充分利用該查找表,通過將每一個(gè)單獨(dú)分段的計(jì)算結(jié)果相加來得到最終的距離測度。在本文中,距離測度采用常用的歐氏距離。數(shù)據(jù)庫中的特征向量與待查詢圖像之間的距離越近,說明兩特征向量的相似度越大。按照相似度由大到小的順序進(jìn)行排序,假設(shè)查詢余量為T,則輸出數(shù)據(jù)庫中前T個(gè)特征向量對(duì)應(yīng)的圖像作為最終的檢索結(jié)果。
2 仿真實(shí)驗(yàn)與分析
2.1 實(shí)驗(yàn)說明
為驗(yàn)證本文方法的圖像檢索性能,將本文方法與目前圖像檢索領(lǐng)域常用的3種方法(文獻(xiàn)[7,8,9]所述方法)進(jìn)行對(duì)比實(shí)驗(yàn),在相同數(shù)據(jù)集和計(jì)算平臺(tái)上測試各種方法的查準(zhǔn)率、召回率和查詢時(shí)間指標(biāo),定量評(píng)價(jià)本文方法的性能。其中,查準(zhǔn)率是指檢索正確的相關(guān)圖像數(shù)量與檢索到的圖像總數(shù)的比值,召回率是指檢索正確的相關(guān)圖像數(shù)量與數(shù)據(jù)集中相關(guān)圖像總數(shù)的比值,查詢時(shí)間是指平均查詢一幅圖像所需要的時(shí)間,對(duì)應(yīng)的計(jì)算機(jī)平臺(tái)參數(shù)為:CPU 3.2 GB四核,內(nèi)存16 GB。
實(shí)驗(yàn)數(shù)據(jù)集選用圖像檢索領(lǐng)域國際上通用的Holidays數(shù)據(jù)集。該數(shù)據(jù)集包含了500個(gè)圖像組,共1 491幅圖像。其中,每個(gè)圖像組代表一個(gè)特定的場景或者物體,每一組的第一幅圖像是查詢圖像,其余圖像為相關(guān)圖像,相關(guān)圖像包含了旋轉(zhuǎn)、視角和光照變化的差異。部分圖像示例見圖2。
另外,本文方法涉及了一些參數(shù),如表1所示。這些參數(shù)的取值是根據(jù)實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果所取的經(jīng)驗(yàn)值。
本文方法的創(chuàng)新之一是在特征提取階段不像傳統(tǒng)方法那樣直接提取圖像特征,而是先對(duì)圖像進(jìn)行分塊,再對(duì)圖像子塊按照紋理復(fù)雜度進(jìn)行分類,只對(duì)高復(fù)雜度圖像子塊進(jìn)行SIFT和PCA特征提取,而低復(fù)雜度圖像子塊的特征向量直接賦值為零。為了驗(yàn)證這一創(chuàng)新的有效性,本文設(shè)計(jì)了一組仿真實(shí)驗(yàn),在本文方法的總體框架下,對(duì)比不進(jìn)行圖像分塊和不進(jìn)行圖像子塊分類情況下的圖像檢索性能差異,圖3給出了查準(zhǔn)率和召回率的對(duì)比結(jié)果,表2列出了查詢時(shí)間的對(duì)比結(jié)果。其中,方法1是指在本文方法框架下不進(jìn)行圖像分塊和圖像子塊分類操作的處理結(jié)果(也即跳過1.2和1.3小節(jié)的處理步驟),方法2是指在本文方法框架下不進(jìn)行圖像子塊分類操作的處理結(jié)果(也即跳過1.3小節(jié)的處理步驟)。參數(shù)取值都如表1所示。
由圖3可見,本文方法的查準(zhǔn)率和召回率明顯高于方法1,略高于方法2,這說明在相同特征維數(shù)的情況下,對(duì)圖像進(jìn)行分塊明顯可以提高圖像檢索的查準(zhǔn)率和召回率。同時(shí),對(duì)紋理不豐富的圖像子塊的特征向量賦值為零,可以降低這些特征顯著性不強(qiáng)的特征向量引起的錯(cuò)誤匹配,一定程度上提高了圖像檢索的查準(zhǔn)率和召回率。再結(jié)合表2可見,本文方法的查詢時(shí)間明顯小于方法2,這是因?yàn)閷?duì)低復(fù)雜度圖像子塊的特征向量賦零值,省略了復(fù)雜的特征向量計(jì)算過程,而且在特征匹配階段零值特征向量與其他向量的相似度計(jì)算速度遠(yuǎn)遠(yuǎn)快于非零值特征向量之間相似度計(jì)算速度,有效提高了圖像檢索的效率。因此,本文方法對(duì)圖像進(jìn)行分塊并對(duì)圖像子塊進(jìn)行分類是有效的。
2.2 不同檢索方法的檢索性能對(duì)比
下面將本文方法與文獻(xiàn)[7,8,9]所述方法進(jìn)行對(duì)比實(shí)驗(yàn),驗(yàn)證本文方法的優(yōu)勢。圖4給出了查準(zhǔn)率和召回率對(duì)比結(jié)果,表3給出了查詢時(shí)間對(duì)比結(jié)果。
結(jié)合圖4和表3可見,本文方法的查準(zhǔn)率和召回率指標(biāo)高于其他3種方法,查詢時(shí)間指標(biāo)更是明顯低于其他3種方法。因此,本文方法的圖像檢索性能優(yōu)于其他3種方法。
3 結(jié)束語
本文提出了一種結(jié)合紋理分塊和改進(jìn)Fisher向量的圖像檢索方法,在特征提取階段,通過圖像分塊和紋理復(fù)雜度分類,僅對(duì)高復(fù)雜度圖像子塊提取SIFT和PCA特征,對(duì)低復(fù)雜度圖像子塊直接賦零值,大幅提高圖像檢索效率,并降低紋理不豐富圖像子塊引起的檢索誤差;在特征編碼和相似度計(jì)算階段,通過對(duì)特征向量進(jìn)行分段,采用基于后驗(yàn)概率改進(jìn)的Fisher向量進(jìn)行特征編碼,在小碼本尺寸上依據(jù)PQ和ADC方法計(jì)算兩特征向量各分段之間的歐氏距離,大幅提高相似度計(jì)算效率。圖像檢索實(shí)驗(yàn)表明,本文方法耗費(fèi)的查詢時(shí)間少,且查準(zhǔn)率和查全率高。
參考文獻(xiàn)
[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].北京航空航天大學(xué)學(xué)報(bào),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,戰(zhàn)蔭偉2
(1.東莞職業(yè)技術(shù)學(xué)院 計(jì)算機(jī)工程系,廣東 東莞523808;2.廣東工業(yè)大學(xué) 計(jì)算機(jī)學(xué)院,廣東 廣州510006)