施怡澄,劉洞波,陳玉婷
(湖南工程學院 計算機與通信學院,湘潭411104)
互聯(lián)網(wǎng)時代數(shù)據(jù)繁雜,快速準確檢索到期望的服裝圖像成為亟待解決的難題.基于現(xiàn)有圖像匹配算法的主要衡量指標是匹配速度、匹配概率、匹配算法的魯棒性和并行處理能力.許多學者對此做了大量的研究,Tanimoto[1]提出利用圖像金字塔的分層匹配策略提高匹配速度;Chang和Cheng[2]利用圖像的平移、旋轉和尺度不變特征提出了點模式匹配的快速算法,提高了算法的運算速度;Jane[3]提出了基于小波的圖像尺度由粗到精的圖像匹配方案,算法的局限性在于要求圖像間要有較高的相似度;Borgefors[4]提出基于分布式系統(tǒng)的分層倒角匹配算法,不足之處是需要考慮節(jié)點下限的問題,增加了算法的復雜性.薛利軍等[5]提出了一種減少檢索分支的快速匹配算法,孫遠[6]提出了基于投影的一種新式快速模板匹配算法,陳凱迪與陳鵬[7]提出了一種基于分塊顏色直方圖的快速圖像檢索,翟銘晗和高玲[8]提出了一種基于顏色和紋理特征的圖像檢索算法,Herbert Bay等[9]提出了一種基于Sift的Surf特征提取方法.
針對,單一匹配算法會導致檢索效率不高和精度較低等問題出現(xiàn),本文提出一種基于Surf和改進顏色矩的服裝圖像檢索算法,首先采用改進的顏色矩進行特征篩選,獲得新的目標圖像數(shù)據(jù)庫,減小檢索范圍;再利用Surf算法進行圖像匹配檢索得到目標圖像,從而提高了算法的準確性和檢索效率.
顏色特征是圖像的一種底層特征,包含了圖像的目標內容和應用場景內容.顏色特征與Surf特征在檢索中可以互相彌補各自的缺點,同時使用兩種特征可以在提取圖像色彩信息的同時,可識別圖像的旋轉、平移和尺度變換特征.因此,本文將顏色特征與Surf特征結合,提出一種新的圖像匹配算法CM(Color Moment)-Surf算法,以此實現(xiàn)服裝圖像的快速檢索.首先,提取目標圖像在HSV顏色空間的顏色矩特征,利用歐氏距離篩選出目標區(qū)域;然后,使用Surf特征匹配算法在已篩選出的區(qū)域提取特征點;最后,通過目標圖像和源圖像特征點歐氏距離的相似性度量匹配出源圖像.
圖1 CM-Surf算法流程圖
顏色空間的轉換是分別對H、S、V三個分量進行非均勻量化,達到減小計算量的目的,即把色調、飽和度、亮度分別分為16份、4份、4份.再將三維H、S、V轉化為一維分量,含參公式為:L=H*Qs*Qv+S*Qv+v,用公式表示為L=16H+4S+I.
由于HSV顏色空間的色調、飽和度、明度與人眼對顏色的主觀認識相對比較符合,與其他顏色空間相比HSV空間能更好地反映人類對顏色的感知,所以本算法采用HSV顏色空間下的顏色矩作為顏色特征.
表1 RGB轉HSV顏色空間參數(shù)設定
色調H(Hue)每隔60°表示一種基本顏色,轉換顏色空間后的H值由R、G、B與其他常數(shù)計算得到,見式(1);飽和度S(Saturation)由R、G、B值和其他常數(shù)計算得到,見式(2);明度V(Value)由R、G、B值和其他常數(shù)計算得到,見式(3).
為色調、飽和度、亮度參數(shù)進行賦值,不同的賦值突出不同的特點,設置16、4、1則突出了人類視覺對色調敏感的特點,減小了圖像亮度和飽和度對檢索結果的影響[10].
顏色矩的一階矩用圖像的像素總數(shù)N和某點像素值P ij來計算,二階矩在前者基礎上加入了所有像素第i個顏色通道的顏色均值E ij,而三階矩綜合了前兩者的內容,其中i為顏色通道數(shù),s i具有的幾何意義是:當s i=0時,圖像的顏色分布是對稱的,否則不對稱[11].顏色矩是多階矩,一、二、三階均可以描述圖像的顏色分布,則說明顏色分布一般集中在低階矩,一、二、三階中心矩分別表示圖像或子區(qū)域圖像的均色、標準差和三次根非對稱性[10].
利用改進的顏色矩計算出數(shù)據(jù)庫中所有圖片的三階顏色矩,對各階顏色矩進行加權,然后與目標圖像的顏色矩進行歐氏距離相似性度量,更高效準確地獲得場景信息,全面呈現(xiàn)圖像的顏色分布特征.
相似性度量方法有歐式距離、曼哈頓距離、馬氏距離等,本文采用歐式距離對顏色矩進行相似性度量,歐氏距離可以克服變量之間的相關性干擾,且計算速度較快.若將源圖像I和目標圖像M的顏色通道數(shù)定義時,源圖像I的顏色矩分別為E i、σi、S i,目標圖像M的三階顏色矩分別為D i、τi、R i.兩圖像間的歐氏距離相似度定義如式(7)所示:
其中ωi是權重系數(shù)向量.
通過對兩圖像的歐式距離進行計算,得出兩個圖像特征點的實際距離,從而得到兩幅圖像的相似度,以此來判斷兩幅圖像是否包含同一物體或同一圖像.
傳統(tǒng)的RGB顏色矩特征在提取后,對9個通道的顏色矩進行處理,本文采用HSV顏色空間的顏色矩特征,更能體現(xiàn)服裝的顏色和亮度,從而達到提高檢索準確度的目的,在進行兩個圖像歐氏距離的計算時,不再進行權重系數(shù)設定,以初始顏色矩的歐氏距離進行運算,通過對比篩選出相關圖像,為Surf特征匹配做準備.
通過顏色矩來對新數(shù)據(jù)庫中相似性較高的圖像進行Surf特征提取,特征點提取的前提是要在圖像上檢測到特征點,而特征點的檢測則基于尺度空間理論,即先將此圖像與高斯核函數(shù)做卷積運算,得到該圖像的尺度空間,且尺度空間各不相同.構建尺度空間的預先步驟是構造Hessian矩陣,好的Hessian矩陣可以為特征提取建立更好的基礎.Surf尺度空間是由X組Y層組成的,與Sift的區(qū)別在于后者的尺度空間內圖像尺寸是逐組減半的,在同組中擁有同樣的尺寸;而前者的不同組間圖像的尺寸也是一致的,僅改變了高斯模糊模板的尺寸以及尺度的值.因Surf算法無須在不同組間進行尺寸縮小,因此該階段的處理速度更快.
在待求圖像中,每一個像素點都可以求得一個Hessian矩陣,通過特定核間的卷積計算二階偏導數(shù),計算出Hessian矩陣的三個矩陣元素L x x、L yy、L xy從而得到Hessian矩陣的定義式如式(8)所示.
每個像素的Hessian矩陣行列式的近似值如式(9)所示:
Hessian矩陣判別式中的f( )x,y是原始圖像的高斯卷積,Surf和Sift有一個顯著不同在于,前者使用了盒式濾波器來代替了后者中的高斯濾波器,從而提高了運算速度,加權系數(shù)ω平衡了使用濾波器近似所帶來的誤差造成的影響.
構造完畢Hessian矩陣后,將經(jīng)過Hessian矩陣處理過的每個像素點與其相鄰2個空間的8鄰域點包括該點在其他空間的位置共9個點,以及該點在該空間的8鄰域點共26個點進行大小比較,如果該點是這26個點中的最大值或者最小值,則作為初步特征點進行保留.然后通過閾值篩選以及增加極值使檢測得到的特征點減少,得到特征最明顯的點.
與Sift不同的是,Surf采用統(tǒng)計特征點圓形領域內的harr小波特征.在該點的圓形鄰域內,統(tǒng)計60°扇形內所有點的水平、垂直harr小波特征總和,然后扇形以一定間隔進行旋轉并再次統(tǒng)計該區(qū)域內harr小波特征值,最后將值最大的扇形方向作為該特征點的主方向.確定主方向后,在特征點周圍取一個4×4的矩形區(qū)域塊,所取矩形區(qū)域塊方向即特征點主方向.然后對該矩形區(qū)域塊的每個子區(qū)域內的harr小波特征點進行統(tǒng)計,每個像素點相鄰2個空間的8鄰域點包括該點在其他空間的位置共9個點,以及該點在該空間的8鄰域點共25個像素的水平、垂直方向的haar小波特征,該處水平、垂直方向均為相對主方向而言的方向.此時得到的harr小波特征為水平、垂直值,加上水平絕對值以及垂直絕對值之和.通過減少每個特征點的向量數(shù)從而提高了特征匹配的速度.
通過計算兩個特征點間的歐氏距離來判斷是否匹配,距離越小則相似度越高.Surf還引進積分圖的概念,通過矩形區(qū)域內像素和來加速計算達到加速匹配的效果,另外Surf還加入了Hessian矩陣跡的判斷,可以判斷排除一些歐氏距離為0但不是目標點的特征點.
采用DeepFashion圖像數(shù)據(jù)集中的圖片,數(shù)據(jù)集來自香港中文大學,包含服裝實物圖片、賣家秀、買家秀圖片等對應的數(shù)據(jù)集,每個商品id對應的文件夾中包含一張賣家秀和幾張買家秀.總共33881種商品,239557張圖片.為驗證改進算法的有效性,選取MATLAB2014b作為實驗平臺進行仿真實驗.
單獨采用Surf算法提取源圖像中所有的特征點,并與目標圖像提取到的所有特征點進行匹配,現(xiàn)就部分實驗匹配結果進行展示,圖2(a)為待檢測圖像a的特征點提取結果,圖2(b)為待檢測圖像b的特征點提取結果,圖2(c)為待檢測圖像c的特征點提取結果.圖3(a)、圖3(b)、圖3(c)分別為傳統(tǒng)Surf算法對于圖像圖3(a)的圖像匹配結果,因為沒有先過濾數(shù)據(jù)庫,所以得到了源圖像、同款不同色服裝圖像以及無相關且特征點相近圖像的三個檢索結果,使得檢索結果混亂且計算量增大,單獨使用Surf算法而丟失了顏色信息,不但匹配到了不同顏色相同型號的服裝,還對完全不一致的服裝進行了匹配,降低了算法效率以及準確性.圖4為CMSurf算法對圖像圖3(a)的圖像檢索結果,因為CM-Surf算法首先對數(shù)據(jù)庫進行過濾,消除了同款不同色服裝圖像以及無相關且特征點相近圖像對檢索結果的影響,從而得到了精確的檢索結果.
圖2 特征點提取結果
圖3 Surf算法圖像匹配結果
圖4 CM-Surf圖像匹配結果
兩種算法的不同之處主要在于單獨使用Surf算法無法通過顏色矩過濾掉一部分圖像,算法效率較低,雖然在特征匹配階段,兩種算法對目標圖像提取到的特征點是一樣多,但是采用CM-Surf特征匹配算法,解決了丟失顏色信息而導致的相同形狀而不同顏色的誤匹配,再加上顏色矩既能表示豐富的顏色信息,又包含一定的空間分布信息,而且具備特征矢量維數(shù)少的特點[12].通過改進顏色矩匹配的方法過濾掉一部分圖像,并在此基礎上,利用Surf算法對剩下的目標圖像進行尋找特征點以及匹配,匹配過程直接通過顏色矩過濾了圖像顏色矩歐氏距離差距過大的圖像,減少了在匹配階段的工作,使檢索結果明確,消除無用的檢索結果帶來的影響,減少計算量并縮短運算時間,圖像檢索時間比單一算法縮短了62.5%,效率提高了166%,
CM-Surf算法結合2種算法作出改進,在實際應用上可以得到更多較為準確的目標服裝圖像,同時也可以在匹配后得到唯一的目標服裝圖像,得到更佳的檢索結果.
實驗結果如表2及圖5(a)、圖5(b)所示.圖5(a)為兩種算法匹配過程所需時間對比圖像,其中縱坐標表示匹配所需時間,橫坐標表示不同算法,值越小代表匹配時間越短,算法效率更高.圖5(b)為兩種算法得到的匹配目標個數(shù)對比圖像,縱坐標表示檢索結果個數(shù),橫坐標表示不同算法,值越小代表檢索結果越少,得到的結果越精確.
表2 部分實驗結果對比
圖5 實驗結果對比
針對服裝圖像檢索效率偏低和準確率不高的問題,提出了一種基于Surf特征與改進顏色矩特征相結合的CM-Surf服裝圖像檢索算法,算法仿真實驗結果表明,算法結合了顏色特征和Surf特征的互補性關系,改善了Surf特征匹配法對顏色不敏感的問題,能夠更準確地檢索出需要的服裝圖像,證明了算法的準確性以及高效性.