董傲霜,宋宏亮
(東北大學(xué)軟件學(xué)院,沈陽(yáng)110004)
基于內(nèi)容的圖像檢索CBIR(Content-based Image retrieval)[1],屬于圖像分析的一個(gè)研究領(lǐng)域,目的是在給定查詢圖像的前提下,依據(jù)內(nèi)容信息或指定查詢標(biāo)準(zhǔn),在圖像數(shù)據(jù)庫(kù)中搜索并查找出符合查詢條件的圖片。傳統(tǒng)的圖像檢索是基于文本標(biāo)注的。其基本原理是通過對(duì)圖像進(jìn)行人工文字注解,利用文本關(guān)鍵字進(jìn)行檢索以實(shí)現(xiàn)對(duì)圖像的查找。而基于內(nèi)容的圖像檢索是圖像特征相似性匹配檢索,系統(tǒng)內(nèi)的圖像標(biāo)識(shí)是圖像特征描述,檢索線索是一目了然的圖像示例,輸入為圖像示例,輸出為所有與示例特征相同或相近的圖像,按相似程度排序,供用戶選擇。實(shí)際上,把一般用戶難以完成的圖像特征描述、提取與識(shí)別等難題交由系統(tǒng)解決。CBIR是一門有關(guān)圖像特征相似性匹配的新技術(shù)。它利用圖像的內(nèi)容,如顏色、形狀、紋理以及空間關(guān)系等特征,建立圖像的特征矢量檢索圖像[2]。當(dāng)用戶進(jìn)行圖像檢索時(shí),系統(tǒng)把查詢圖像作為檢索條件提交給系統(tǒng),通過提取查詢圖像的特征向量,在圖像庫(kù)中檢索與特征向量相匹配的圖像,將結(jié)果集返回給用戶。圖像的顏色具有穩(wěn)定性強(qiáng),旋轉(zhuǎn)不變形,復(fù)雜背景健壯性好及計(jì)算簡(jiǎn)單等特點(diǎn)。顏色特征成為描述一幅圖像最簡(jiǎn)便而有效的特征。但單純依靠描述圖像顏色特征進(jìn)行匹配不能達(dá)到理想的準(zhǔn)確程度,而SIFT特征提取能較好地處理局部點(diǎn)特征,應(yīng)用SIFT特征可得到很好的匹配效果?;谶@種思想,本文提出一種基于圖像顏色特征和局部點(diǎn)特征相結(jié)合的檢索算法。通過實(shí)驗(yàn)和結(jié)果分析,驗(yàn)證了算法的有效性。
本文實(shí)現(xiàn)一個(gè)基于Web的小型CBIR系統(tǒng)。系統(tǒng)采用C語(yǔ)言實(shí)現(xiàn)圖像特征提取和特征向量匹配,采用php抓取網(wǎng)絡(luò)圖像、客戶端上傳查詢圖像以及展現(xiàn)檢索結(jié)果等。系統(tǒng)可分為三個(gè)主要模塊:爬蟲模塊、特征提取及入庫(kù)模塊和用戶查詢模塊,模塊劃分如圖1所示。
圖1 系統(tǒng)模塊劃分Fig.1 Partition of system model
從圖1中可以看出,這三個(gè)模塊是系統(tǒng)的核心。各個(gè)模塊的功能如下。
①爬蟲模塊:將網(wǎng)絡(luò)上的圖像批量下載到本地,這些圖像作為服務(wù)器端圖像庫(kù)。
②圖像特征提取及入庫(kù)模塊:對(duì)圖像庫(kù)中的圖像進(jìn)行特征抽取及把這些圖像特征放入數(shù)據(jù)庫(kù),并通過k-means算法對(duì)顏色特征進(jìn)行聚類。
③用戶查詢模塊:將查詢圖像轉(zhuǎn)化為查詢向量,并根據(jù)查詢向量與數(shù)據(jù)庫(kù)中特征向量的相似度大小按序輸出結(jié)果。
算法采用基于RGB顏色空間的灰度直方圖和SIFT描述符綜合描述圖像內(nèi)容,一方面充分利用顏色直方圖特征提取計(jì)算量小和相似度計(jì)算簡(jiǎn)便的優(yōu)勢(shì),把顏色直方圖作為輔助特征,實(shí)現(xiàn)快速粗檢索,縮小檢索范圍;另一方面利用SIFT描述子能充分描述圖像空間信息,并且對(duì)圖像的旋轉(zhuǎn)、尺度等變化具有很高的魯棒性的優(yōu)勢(shì),把SIFT特征作為主特征,在粗檢索得出的中間集上進(jìn)行細(xì)檢索,查詢圖像匹配SIFT特征,得出相似度,最后根據(jù)相似度進(jìn)行從大到小排序,得到最后結(jié)果集。
2.1.1 基于灰度直方圖的顏色特征提取
在顏色檢索中,顏色直方圖是最通用的顏色特征表示形式,它運(yùn)用了統(tǒng)計(jì)學(xué)的方法,體現(xiàn)了三個(gè)顏色通道分布密度的聯(lián)合分布概率。本文將彩色圖像轉(zhuǎn)化為灰度圖像,將RGB三個(gè)分量變成一個(gè)灰度分量,再用顏色空間量將原來龐大的直方圖下降到可接受的程度。
給定一幅圖像(fxy)M×N,fxy表示像素點(diǎn)(x,y)處的顏色值,M×N表示圖像的尺寸,圖像所包含的顏色集記為C,則圖像的顏色直方圖可表示為
得到圖像的顏色特征為32維特征向量,可表示如下:
2.1.2 SIFT特征提取
SIFT特征提取可分解為兩個(gè)子模塊,即檢測(cè)特征點(diǎn)模塊和生成特征描述符模塊[3]。SIFT算法的主要步驟為:
①構(gòu)建高斯尺度空間和高斯差分尺度空間;
②檢測(cè)特征點(diǎn);
③確定穩(wěn)定特征點(diǎn);
④確定特征點(diǎn)主方向;
⑤生成特征點(diǎn)描述符;
⑥匹配特征點(diǎn)。
由于SIFT特征描述符是基于特征點(diǎn)鄰域像素梯度變化的,所以對(duì)于特征點(diǎn)而言,鄰域窗口內(nèi)像素的梯度變化越大,特征描述符的獨(dú)特性就越好,進(jìn)行描述符匹配時(shí)正確匹配的概率就越高。因?yàn)镠arris角點(diǎn)的鄰域窗口內(nèi)像素具有顯著的梯度變化,因此本文使用Harris角點(diǎn)對(duì)SIFT特征提取算法進(jìn)行改進(jìn)。算法首先按照傳統(tǒng)SIFT算法在像素點(diǎn)鄰域內(nèi)檢測(cè)極值點(diǎn),接著在極值點(diǎn)鄰域內(nèi)檢測(cè)該極值點(diǎn)是否是Harris角點(diǎn),如果是角點(diǎn),則保留該極值點(diǎn)為特征點(diǎn),否則直接丟棄該極值點(diǎn)。
不同的尺度空間上角點(diǎn)檢測(cè)公式為
式中:σ1是積分的尺度;σs是特征點(diǎn)所在的尺度。
分別使用傳統(tǒng)SIFT和改進(jìn)的SIFT對(duì)同一幅圖像檢測(cè)特征點(diǎn),結(jié)果如圖2所示。
圖2 兩種算法檢測(cè)特征點(diǎn)結(jié)果Fig.2 Search result of two algorithem
2.2.1 顏色直方圖匹配
對(duì)上面得到的圖像,使用歐氏距離計(jì)算兩個(gè)顏色特征向量的距離。令Hp(k)和Hq(k)分別為數(shù)據(jù)庫(kù)圖像p和查詢圖像q的特征向量,則兩圖像顏色特征的歐式距離可定義為
特征向量間歐式距離越小,說明相似度越大。
2.2.2 SIFT特征匹配
以兩個(gè)特征點(diǎn)描述符之間的歐式距離作為特征點(diǎn)匹配的相似度準(zhǔn)則。假設(shè)特征點(diǎn)對(duì)p和q的特征描述符分別為Desp和Desq,則其歐式距離定義為
使用基于 k-d樹的近似最近鄰搜索算法(Best-bin-first,BBF)在歐式空間中尋找各特征向量的最近鄰和次近鄰[4],比如尋找特征點(diǎn)p歐式距離最近和次近的兩個(gè)鄰居特征點(diǎn)q'和q″,然后計(jì)算p與q'及p與q″兩組描述符之間歐氏距離的比值。如果小于規(guī)定的某個(gè)閾值,則認(rèn)為匹配成功,接受點(diǎn)對(duì)(p,q')為一對(duì)匹配點(diǎn);否則匹配失敗。本文取閾值為0.45。
設(shè)Nq和Np分別表示查詢圖像q和數(shù)據(jù)庫(kù)圖像p提取的特征點(diǎn)個(gè)數(shù),應(yīng)用BBF算法得到圖像q和p匹配特征點(diǎn)個(gè)數(shù)為N_of_Mateched,則定義查詢圖像q和數(shù)據(jù)庫(kù)圖像p的相似度為
實(shí)驗(yàn)圖片集大致分為三類:人臉圖片、自然景物和同一物體仿射變換處理后的圖像。選取其中32幅具有代表性的圖片作為查詢圖像。
圖3是本文算法對(duì)某一自然景物圖像的檢索返回結(jié)果,圖4是本文算法對(duì)一幅建筑物圖像檢索的返回結(jié)果。其中左邊的圖像是查詢圖像。圖中只列出了結(jié)果的第一頁(yè),也就是最相似的圖像。其中包括圖像及與目標(biāo)圖像的相似度。
圖3 基于本文算法自然景物檢索結(jié)果Fig.3 Search result using color characteristics
圖4中采用本文算法返回的前10張圖像都是相似圖像,唯一的瑕疵是第7位和第4位位置應(yīng)該互換。
圖4 基于本文算法建筑物檢索結(jié)果Fig.4 Search result using method of this article
①查全率和查準(zhǔn)率。
本文采用查準(zhǔn)率/查全率作為系統(tǒng)性能評(píng)價(jià)準(zhǔn)則。結(jié)果為1表示最優(yōu)檢索,0表示最差檢索,其定義如下所示:
式中:Pn,Rn分別表示查準(zhǔn)率和查全率,tp表示返回的相關(guān)圖像個(gè)數(shù),n表示相關(guān)圖像個(gè)數(shù),k表示返回圖像個(gè)數(shù)。
32次檢索結(jié)果的平均查準(zhǔn)率Pn和查全率Rn如表1所示,在表1中,A1表示基于顏色直方圖算法,A2表示本文算法,A3表示基于SIFT特征算法。
表1 三種算法的查全率和查準(zhǔn)率Table 1 Recall rate and precision of three algorithms
所有檢索結(jié)果的查全率和查準(zhǔn)率如圖5和圖6所示。
圖5 算法對(duì)三類圖像的查全率Fig.5 Recall rate of algorithm on three types of image
圖6 算法對(duì)三類圖像的查準(zhǔn)率Fig.6 Precision of algorithm on three types of image
基于顏色直方圖算法的檢索能力很差,基于SIFT特征算法的檢索能力則非常強(qiáng),擁有超過0.9的查全率和查準(zhǔn)率。而本文算法的檢索能力比基于SIFT特征算法略弱,但查全率和查準(zhǔn)率也在超過了0.8。
②檢索響應(yīng)時(shí)間。
搜索引擎的檢索響應(yīng)時(shí)間是指系統(tǒng)平均完成一次檢索的耗時(shí),可用如下表達(dá)式描述:
式中:T表示平均檢索時(shí)間;n表示檢索次數(shù);tn表示n次檢索響應(yīng)時(shí)間總和。3種算法對(duì)于32次檢索所需時(shí)間如圖7所示。
圖7 三種算法的查詢響應(yīng)時(shí)間Fig.7 Query response time of three algorithms
對(duì)于圖像庫(kù)中存在500幅圖像規(guī)模,基于顏色直方圖算法每次檢索所需時(shí)間最短,平均檢索時(shí)間3.5 s左右;基于SIFT特征算法最長(zhǎng),平均大于60 s,大大超過了用戶的忍耐度;本文算法居中,平均檢索時(shí)間為12 s左右,這是因?yàn)樗惴ㄏ仁褂妙伾卣鬟^濾了大部分?jǐn)?shù)據(jù)。
本文提出了一種融合顏色特征和SIFT特征的圖像檢索算法。算法使用顏色特征匹配縮小檢索范圍,得到一個(gè)中間集合;對(duì)中間集合應(yīng)用SIFT算法,得到最終結(jié)果集和匹配的相似度。結(jié)果表明,算法綜合檢索能力良好,查全率和查準(zhǔn)率遠(yuǎn)高于單獨(dú)使用顏色特征算法,而平均檢索響應(yīng)時(shí)間遠(yuǎn)低于單獨(dú)使用SIFT特征檢索算法,對(duì)同一物體經(jīng)過旋轉(zhuǎn)、尺度縮放、平移等處理后的圖像表現(xiàn)出很好的檢索能力,該多特征融合算法是切實(shí)可行的。
[1]Niblack W.The QBIC project:Querying image by content using color,texture and shape[C]∥SPIE,1993: 173-187.
[2]周明全,耿國(guó)華,韋娜.基于內(nèi)容圖像檢索技術(shù)[M].北京:清華大學(xué)出版社,2007.
[3]Riepe W,Steller M.Characterization of coal and coal blends by automatic image analysis[J].Fuel,1984,63 (3):313.
[4]Zhan Hong-liang,Zhong Di.A scheme for visual feature based image retrieval[C]∥Proc SPIE Storage and Retrieval for Image and Video Database,1995.