李世鎮(zhèn),錢 俊,余 映,楊 鑒
(云南大學 信息學院,云南 昆明 650500)
視覺顯著性一直是神經科學、心理學和計算機科學的研究熱點. 它最初是預測人眼在場景中的注視位置,而研究人員發(fā)現(xiàn)人能夠快速、準確地從海量視覺信息中定位出最感興趣的部分區(qū)域,并可以自適應地將注意力集中在感興趣區(qū)域,這樣極大地減少腦神經資源占用. 隨著圖像信息的爆炸性增長,自動從圖像中提取顯著區(qū)域變得更加重要,目前已發(fā)展到自動識別出圖像中的顯著目標. 在計算機視覺中,將視覺選擇注意機制這一原理運用于圖像顯著性檢測模型中,通過相關分析計算提取與人視覺觀察結果相符合的圖像顯著目標,有效地提高了對圖像處理的效率,從而被廣泛運用于其他領域,如目標識別、對象分割、圖像分類、圖像壓縮等.顯著性檢測模型按人類視覺注意力機制劃分為以任務驅動的自頂向下(Top-down)和以數(shù)據(jù)驅動的自底向上(Bottom-up)兩大類.
目前已有許多視覺顯著性檢測算法,例如Itti等[1]最早提出了受生物啟發(fā)并模擬人眼視覺系統(tǒng)的IT顯著性檢測算法,其提取顏色、強度和方向3個特征,結合局部對比度和使用中心-周邊差異的多尺度圖像特征得到圖像顯著圖,但由于對每一個特征采用中心-周邊模型,能檢測顯著目標的邊界,但忽略了目標的內部信息,IT算法容易在復雜的背景中受到干擾且準確率低. Ma等[2]提出了一種生成顯著圖的局部對比分析算法,并模擬人類的直觀視覺感,計算在LUV顏色空間中所有區(qū)域與局部區(qū)域范圍內像素之間的空間距離,結合引入模糊增長方法對該算法進行優(yōu)化處理,但假設了顯著區(qū)域與周圍背景有較大差異,同時只考慮了LUV顏色空間的顏色信息,對圖像中顏色差異度比較小的不太適用. Cheng等[3-4]提出了一種基于全局和區(qū)域的顯著性檢測算法,考慮了整個圖像的全局區(qū)域對比度和區(qū)域之間的空間關系,其中兩種顯著性模型HC (Histogram based contrast)和RC (Region based contrast)為底層信息的典型應用,RC算法采用圖的分割方法,區(qū)域緊湊度很低且分割區(qū)域個數(shù)無法自由設定,而且對比范圍包含了圖像背景和前景的節(jié)點,在計算圖像塊之間的顏色對比度時弱化了對比度的關系,難以統(tǒng)一突出某個整體顯著對象. Achanta等[5]在IT算法的基礎上進行改進并提出了AC法,對圖像使用高斯帶通濾波處理,通過計算整個圖像的平均顏色差異得到顯著圖,但由于無監(jiān)督的特性,只考慮了圖像的一階平均顏色,AC算法在圖像顯著性檢測很容易對背景作出響應,精確度不高.Perazzi等[6]提出了一種顯著濾波器算法,首先對圖像進行超像素分割,使用顏色唯一性和分布特性計算顯著值并在后處理采用上采樣,得到一個精確的顯著性目標. 但認為顏色分布在整個圖片中,則是背景;顏色分布相對集中,則是顯著區(qū)域;導致它對于小目標顯著區(qū)域和存在復雜背景的區(qū)域則提取失敗. Jiang等[7]提出一種基于上下文分析和形狀先驗的顯著對象分割算法,能提取全分辨率的顯著圖,但若顯著目標位于圖像邊界而不是中心位置,容易降低目標的顯著性. Xie等[8]提出了一種利用圖像低級和中級線索的顯著性算法,對局部特征的超像素進行聚類,并對聚類結果進行粗糙顯著區(qū)域分析,利用興趣點形成凸包來估計前景位置,在貝葉斯框架下計算得到顯著圖,但凸包具有不靈活性,可能包含較多背景,對存在出現(xiàn)多個目標時檢測效果差;利用貝葉斯推理問題估計圖像中每個像素的后驗概率,計算耗時長.
另一類算法是在頻率域上計算,其核心思想將圖像在空間域轉換到頻率域中計算顯著性,頻率域算法計算復雜度低、運行時間快,但對顯著目標具有較低的準確率和分辨率,僅能突出目標的邊界區(qū)域,不能整體高亮顯著目標[9-10]. 近年來,隨著深度學習相關研究的不斷發(fā)展,基于深度神經網絡的顯著性檢測模型為圖像處理開拓了新的研究領域,該類算法準確率高,但是基于深度網絡的模型需要良好的計算設備,訓練過程比較復雜,訓練樣本數(shù)據(jù)大,計算時間長[11-12]. 由于圖像顯著性檢測是后續(xù)圖像處理任務的一個預處理階段,目前的顯著性檢測算法的研究趨勢在于主要解決以下3個方面的問題:
(1)顯著性檢測算法是否能有效抑制并消除圖像中的背景干擾,從復雜的背景中突出顯著區(qū)域,減少后續(xù)圖像任務的計算復雜度;
(2)顯著性檢測算法是否能生成準確率較高的全分辨率顯著目標,顯著目標是否具有明確的邊界;
(3)顯著性檢測算法是否能具有較快的計算速度,它決定了算法是否能應用于實時處理系統(tǒng).
本文從人類的視覺特性出發(fā),提出了一種空間域的算法,即基于凸包計算和顏色特征的顯著性檢測算法. 不同于RC算法使用圖的分割算法,本文使用超像素分割進行圖像預處理,可以得到區(qū)域緊湊并感知均勻的超像素塊;然后從圖像的全局考慮,分別在多種顏色空間中得到區(qū)域對比圖;在CIELAB顏色空間中得到平滑通道差值圖;考慮提取圖像中顯著區(qū)域時,會存在復雜的背景提供干擾,選擇使用顏色增強的Harris算子形成凸包得到結構圖和中心先驗圖;最后特征融合4種先驗信息,使用形態(tài)學后處理優(yōu)化得到最終顯著圖,能夠快速得到準確率較高、接近于人工標注圖的結果并抑制背景干擾的全分辨率顯著圖.
為了更好地捕獲輸入圖像的結構信息,使用簡單線性迭代聚類(Simple Linear Iterative Clustering,SLIC)算法[13]將原圖像分割成N個超像素作為最小處理單元,進行超像素分割可以極大的減少像素點,提高計算效率,可以有效保留邊界信息和保證顯著物體的完整性,算法流程如圖1所示.
圖1 本文算法流程圖Fig. 1 The flow chart of the proposed algorithm
1.1 區(qū)域對比圖由于對原圖像使用了超像素分割,超像素分割算法可以將一些像素點集合到有意義的區(qū)域中. 顏色是包含信息量最大的一種底層特征,可能會傳達原圖像中更多有用的顯著性信息,而顏色在人的視覺系統(tǒng)中也占有很重要的角色. 例如,在一堆紅蘋果中放進一個黃色的橘子,人們觀察時黃色的橘子會引起人眼注意,這說明黃色和紅色之間的對比差異度比較大,更能引起人們的注意.
Ma等[2]提出了一種生成顯著圖的局部對比分析算法,只考慮了LUV顏色空間的顏色信息,導致對圖像中顏色差異度比較小時不太適用,而且局部對比度的方法傾向于在邊緣輪廓部分產生高顯著性值,容易造成忽略顯著目標中央區(qū)域信息. 另外Tang等[14]在計算相鄰域顏色特征時融合了CIELAB和RGB兩種顏色空間的多個通道差異信息,認為使用兩種顏色空間獲得的差異信息比單獨使用一種顏色空間好. 由于單一顏色空間的分量不能完全反映圖像顏色信息的問題,而且圖像在不同通道間的顏色取值范圍又不同,從圖像的全局考慮可以為圖像中相似區(qū)域分配一個相近的顯著性值,充分有效地利用圖像中的顏色信息并均勻突出顯著目標,同時對提取圖像的區(qū)域對比圖時使用3種顏色空間,即對圖像中任何一個超像素i,分別定義超像素為區(qū)域Rli(i=1,2,···,N)、Rri(i=1,2,···,N)、Rhi(i=1,2,···,N),其中l(wèi)、r、h分別代表CIELAB、RGB和HSV 3種顏色空間,在區(qū)域的顏色特征定義為Ci,它是分別通過計算屬于這3個區(qū)域內超像素的平均顏色特征所得,最后超像素i的顯著值定義為在所有區(qū)域的歐式距離與每一個區(qū)域與其他區(qū)域顏色的歐式距離,該過程可表示為
其中,SR(i)為超像素i在區(qū)域R中的顯著值,U為3個區(qū)域的像素信息集合,即U={Rli,Rri,Rhi},‖‖為歐幾里得區(qū)域距離,dn為在n所代表顏色空間中區(qū)域的平均顏色Ci歐氏距離,即d1是n1所代表LAB顏色空間中Rli區(qū)域的平均顏色Ci歐氏距離,d2是n2所代表RGB顏色空間的Rri區(qū)域中平均顏色Ci歐氏距離,? 是控制對比度的常數(shù). 之后將區(qū)域中所得的顯著值歸一化到[0,1]之間.
兩個圖像區(qū)域對比圖的實例如圖2所示,從第1行的圖中可以看出,在單一目標中能很好地檢測出顯著目標,但是含有少量的背景噪聲,認為是成功的;從第2行的圖中可以看出,在多個目標中能凸出顯著區(qū)域,但是背景也被錯誤地凸顯出來,認為是失敗的,所以使用凸包的計算.
圖2 檢測成功(第1行)和檢測失?。ǖ?行)示例Fig. 2 Examples of successful detection (first line) and failed detection (second line)
1.2 凸包的計算凸包的計算是使用圖像中的特征興趣點獲得一個具有最小面積的凸變多邊形. 利用顏色增強的Harris算子[15]對原圖像進行顏色增強,并檢測圖像中顯著區(qū)域的角點或輪廓點. 圖3給出了幾張顏色增強的Harris凸包示例. 在第1行的圖中看出,凸包能很好地包圍并凸出顯著目標;在第2行的圖中看出,凸包不是很好地包圍顯著目標,并將圖像中的部分背景包含進來. 凸包能夠將人眼注視到感興趣的目標區(qū)域包圍起來,為后續(xù)的工作提供方便.
圖3 顏色增強的Harris凸包示例Fig. 3 Examples of the color-boosted Harris convex hull
1.2.1 中心先驗 在1.1節(jié)的對比圖中可以看出,有的圖像存在錯誤凸顯背景區(qū)域,為了解決這個問題,引入中心先驗,它能夠在一定程度上抑制背景中的稀缺區(qū)域. 不同于CA (Context-Aware) 算法[16]圍繞圖像中心位置的高斯模型對顯著目標進行濾波,抑制圖像背景噪聲,CA算法認為人眼對圖像中心位置的視覺刺激反應更強烈,又根據(jù)攝影者的規(guī)則認為顯著目標區(qū)域位于圖像的中心,在圖像中心的附近區(qū)域有較高顯著值,距離圖像中心較遠的區(qū)域有較低顯著值. 若當圖像中的顯著目標區(qū)域不在中心而發(fā)生偏置時,如圖像邊界區(qū)域,傳統(tǒng)的中心先驗達不到理想的效果,很可能會抑制顯著目標的顯著性. 因此對其進行改進,對圖像使用顏色增強的Harris算子檢測興趣點形成凸包,通過計算凸包的質心作為新的中心得到中心先驗. 如圖4所示為中心先驗和傳統(tǒng)中心先驗的結果對比圖,圖4(b)藍色線形成的凸包能找到圖像中顯著目標的位置,從而減少了背景的干擾;中心先驗對目標位置比較敏感,將圖4(c)和圖(d)進行相比,發(fā)現(xiàn)本文算法能得到精確的中心先驗圖. 具體計算流程如下:
步驟 1使用顏色增強Harris算子來檢測圖像中的興趣點;
步驟 2消除圖像邊界附近的興趣點,并連接所有剩余的興趣點形成凸包;
步驟 3使用快速拉普拉斯濾波器[17]對原圖像進行平滑或圖像增強處理,重復步驟1、2,形成第2個凸包;
步驟 4在第1個凸包和第2個凸包尋求公共集,形成第3個凸包.
圖4 中心先驗計算各階段和傳統(tǒng)的中心先驗Fig. 4 Central priors calculation and traditional central priors
將第3個凸包的質心位置設為 (x0,y0),超像素i的中心先驗顯著值為
其中,xi和yi分別為超像素i在LAB顏色空間的平均坐標值,?x=w/2?y=h/2,w、h分別為圖像的寬和高. 最后將得到的顯著值歸一化到 [0,1].
1.2.2 凸包結構圖 由于凸包內的超像素可能比凸包外部分的超像素會傳遞更多有用信息. 選取對原圖像使用顏色增強Harris算子形成的凸包,雖然此凸包包含了圖像中的部分背景,但它可能極大程度包圍了顯著目標. 本文對超像素是否在凸包內進行二值化處理,得到的圖定義為凸包結構圖. 對于凸包內超像素i的位置記為
其中,Ss(i)為超像素i根據(jù)位置得到的結構圖,convexhull為凸包,pi為在超像素點在圖像中的位置.
1.3 通道差值圖在CIELAB顏色空間中,亮度維度L的取值范圍為0~100,表示從最暗漸變到最亮的過程;顏色維度a取值范圍為-128~127,表示從綠色漸變到紅色的過程;顏色維度b取值范圍為-128~127,表示從藍色漸變到黃色的過程. Achanta等[5]在計算圖像顯著性時,利用在LAB三通道的均值與經過DoG算子模糊后圖像的像素值計算歐式距離,模糊后的圖像很容易丟失原圖像的高頻信息. 在LAB顏色空間經過SLIC超像素分割后,能記錄超像素在L、A、B3個通道的信息以及橫坐標x、縱坐標y的位置信息. 根據(jù)圖像顏色在3個通道的分布特點不同,認為如果在某一通道內的超像素點之間顏色差異值較大,則該通道內包含顏色信息就越多,反之越少. 因此,將L、A、B3個通道內所有超像素點的信息值求和并取平均,再將某個通道內所有超像素點的信息值與此得到的均值計算差值,然后取絕對值得到單個通道的通道差異值,該計算過程可表示為
其中,L(i)、A(i)、B(i) 分別為通道信息值,ML、MA、MB分為L、A、B 3個通道的平均值,最后將通道差異值歸一化到[0,1]之間.
CIELAB顏色空間是一種基于生理特性的顏色系統(tǒng),彌補了顏色分布的不均勻. 通道差值圖是由計算3個通道差異值的歐氏距離得到的,為了能更好地凸出顯著區(qū)域、減少背景噪聲,使圖像中顯著目標均勻. 采用一個顏色相似權重策略,得到一個相對準確、均勻的平滑差值圖,計算公式為
1.4 顯著性特征融合及優(yōu)化在得到區(qū)域對比圖的顯著值SR(i)、中心先驗圖的顯著值Sc(i)、結構圖的顯著值Ss(i) 和平滑的通道差值圖的顯著值Sb(i)后,本文將4種顯著圖進行特征融合得到初始顯著圖Sin(i),該計算過程可表示為
其中,α1和 α2為控制融合的參數(shù).
為了保持重要邊界細節(jié)以及抑制背景噪聲,本文對初始顯著圖Sin(i) 使用一個形態(tài)學平滑策略,得到平滑顯著圖Sins(i),該步驟由一個膨脹重建和一個侵蝕重建方法組成[18],定義核的半徑R為
其中,α 是一個預定義常數(shù),MS是初始顯著圖Sin(i)的均值. 為了進一步凸出顯著區(qū)域,減少背景噪聲的干擾,本文使用Sigmoid函數(shù)進行優(yōu)化處理,計算公式為
其中,Sins(i) 為通過形態(tài)學處理之后得到的平滑顯著圖,Sf(i) 為最終的顯著圖,b、c為調節(jié)參數(shù),分別控制前景和背景區(qū)域之間的對比度.
所有實驗均在Windows10環(huán)境下的Matlab 2017(a)上進行,處理器為Intel(R) Core(TM)i5-5200U,主頻為2.20 GHz. 實驗參數(shù)設置: 考慮CIELab顏色空間通道范圍的差異,即 ω1=1 ,ω2=ω3=(127+128)/100=2.55;由于該顯著性算法是無監(jiān)督的,而且多次進行參數(shù)調節(jié)實驗,? 取0.2;δ 取0.001;α 取50;α1取0.8;α2取0.2;b和c分別取10、0.5. 為了證明本文算法的檢測性能,在顯著目標檢測中廣泛使用的公開圖像數(shù)據(jù)集MSRA 1000上進行對比實驗,此數(shù)據(jù)集中目標與背景差異比較明顯,并且人工標記了具有精確目標邊界的真值圖以供測試. 與現(xiàn)有其他8種顯著性檢測算法進行定性分析和客觀評價指標比較. 8種算法為:HC[3]、RC[4]、SF[6]、WTHD[10]、CA[16]、MSS[19]、SEG[20]和LC[21].
圖5 本文算法與其他8種顯著性檢測算法的顯著圖對比Fig. 5 Comparison of the saliency map between the proposed algorithm and other 8 saliency detection algorithms
2.1 定性分析圖5為本文算法與其他8種顯著性檢測算法的顯著圖結果對比. 為了評價圖像提取質量好壞,在主觀上選取了顯著目標在圖像的中心區(qū)域和偏置區(qū)域,從圖5中可以看出,SEG、LC、RC和MSS算法能夠提取到顯著目標,但是目標區(qū)域亮度不夠;CA算法能夠抑制背景的干擾,但是目標的中心區(qū)域比較暗淡;WTHD能凸出顯著目標,但輪廓及邊緣比較模糊;HC算法能得到高亮度的顯著區(qū)域,但是存在較多的背景干擾;SF算法在顏色差異度較小能夠提取顯著目標. 對于背景顏色比較豐富時,可見第2行(從上而下)只有本文算法、WTHD和CA提取顯著區(qū)域,但是本文算法能夠抑制背景噪聲,達到人工標注圖的效果,不管對顯著目標在中心區(qū)域還是偏置區(qū)域都能夠從背景中分離出顯著目標,不僅抑制了背景干擾、凸出顯著區(qū)域,而且獲得全分辨率的顯著圖.
2.2 客觀評價指標采用準確率-召回率(P-R)曲線、自動閾值分割(F-Measure)、平均絕對誤差(Mean Absolute Error,MAE)、結構度量(Structure-Measure)和計算速度5種評價指標來證明算法的有效性.
(1)準確率-召回率(P-R)曲線. 為了比較不同圖像顯著圖的質量,設置顯著圖的閾值t從0到255,生成二進制值圖,再與人工標注的真值圖進行比較,其中顯著性值低于固定閾值的像素被標記出來,在圖像數(shù)據(jù)集中所有圖像上計算出256對平均準確率-召回率,計算公式記為
其中,M為二進制圖,G為人工標注圖.
圖6為準確率-召回率(P-R)曲線對比圖,可以看出本文算法優(yōu)于其他算法,檢測性能更好. 準確率較高意味著檢測出圖像的顯著目標更接近于人最感興趣的顯著目標. 但是在召回率為[0.8,1],本文算法存在上升陡峭,這是由于P-R曲線是逐輪劃分二值圖來進行對比,而該算法是經過超像素分割SLIC(N=200)之后,像素點變少,顏色豐富度相對缺失,會出現(xiàn)這種情況.
圖6 9種顯著性檢測算法的P-R曲線對比圖Fig. 6 P-R curve comparison of 9 saliency detection algorithms
(2)自動閾值分割 (F-Measure). 通常,當數(shù)據(jù)集比較大時,P和R兩者是相互對立的.F-Measure是準確率和召回率的調和平均數(shù),并給出了它的非負權重 γ,計算公式記為
其中,γ2通常設置為0.3,用以調節(jié)準確率和召回率的比重.
根據(jù)公式(10)計算出本文算法的P為0.863 5,R為0.744 2,F(xiàn)為0.814 9. 根據(jù)這9種算法計算出的數(shù)據(jù)繪制成柱狀圖,圖7為準確率(P)-召回率(R)-自動閾值分割值(F)對比圖,可以看出本文算法高于其他算法,說明該算法能得到較高質量的顯著圖.
圖7 9種顯著性檢測算法的P-R-F對比圖Fig. 7 P-R- F comparison of 9 saliency detection algorithms
(3)平均絕對誤差(Mean Absolute Error,MAE).由于計算準確率P和召回率R需要將顯著圖進行二值分割,對一副顯著圖的均勻度不敏感,并不反映背景噪聲的情況,因此本文需要評估圖像顯著圖和人工標注圖之間的平均絕對誤差,兩者需要歸一化到[0,1],計算公式為
其中,w、h分別為圖像的寬和高,S和G分別為歸一化顯著圖和標注圖的像素點值.
根據(jù)公式(11)計算出本文算法的M值為0.087 1.根據(jù)這9種算法計算出的數(shù)據(jù)繪制柱狀圖,見圖8為MAE對比圖,可以看出本文算法M值明顯遠低于其他算法,說明本文算法得到的顯著圖更接近于人工標注圖,更有效地抑制了背景干擾.
圖8 9種顯著性檢測算法的MAE對比圖Fig. 8 MAE comparison of 9 saliency detection algorithms
(4)結構度量(Structure-Measure). 上述指標是基于逐像素的計算方式,而忽略了顯著圖與標注圖之間的結構相似性,不能捕捉兩者的結構信息. 為此,使用Fan等[22]提出的結構度量評估算法,計算公式為
其中,α 取0.5,μ 為前景與圖像區(qū)域的比值,OFG為顯著圖與標注圖的相似性,OBG為背景相似性,K為分割顯著圖與標注圖塊數(shù),M(k) 為每個塊的區(qū)域相似度,ωk為每個圖像塊分配的權重. 其Structure-Measure值越大,表明顯著圖與標注圖的結構越相似. 圖9為結構度量S-M對比圖,可以看出本文算法的S-M值高于其他算法,說明本文算法檢測性能更好.
圖9 9種顯著性檢測算法的S-M對比圖Fig. 9 S-M comparison of 9 saliency detection algorithms
(5)計算速度. 計算速度是評價顯著性檢測算法的重要指標,計算速度快,可為后續(xù)其他圖像任務降低計算復雜度,同時也表明該算法的整體性越優(yōu)秀. 本文選取數(shù)據(jù)集MSRA 1000中的100張圖片計算平均時間. 9種算法的平均時間對比如表1所示,可以看出,本文算法與RC、SF兩種算法都使用了分割算法,3種算法計算時間基本處于同一數(shù)量內,但是本文算法檢測的結果不僅準確地突出了顯著目標的位置并整體高亮,而且還有效地抑制了背景噪聲的干擾,獲得了高質量的顯著圖,即本文算法能應用于實時系統(tǒng)處理.
表1 9種算法的平均時間對比Tab. 1 Average time comparison of 9 algorithms
提出了一種基于凸包計算和顏色特征的顯著性檢測算法. 該算法融合了區(qū)域對比圖、中心先驗、結構圖和平滑通道差值圖4種先驗信息,之后經過形態(tài)學處理得到最終的顯著圖. 本文算法更加接近人工標注圖的結果,能夠從背景中分離出顯著物體,不僅抑制了背景干擾、凸出顯著區(qū)域,而且獲得了全分辨率的顯著圖. 在公開的圖像數(shù)據(jù)集MSRA1000上與其他8種顯著性檢測算法進行了實驗對比. 實驗結果表明,不管從主觀顯著圖評價方面還是客觀評價指標方面,本文算法的有效性均優(yōu)于其他算法. 未來的工作包括開發(fā)一些增強的圖分割方法來輔助顯著性計算,以及將頻域方法或深度學習方法與當前的工作相結合.