李小雨,房體育,夏英杰,李金屏*
(1.濟南大學信息科學與工程學院,濟南 250022;2.山東省網絡環境智能計算技術重點實驗室(濟南大學),濟南 250022;3.山東省“十三五”高校信息處理與認知計算重點實驗室(濟南大學),濟南 250022)
(?通信作者電子郵箱ise_lijp@ujn.edu.cn)
人類的視覺注意力機制可以很好地從復雜場景中提取感興趣的區域并提供給大腦進行后續分析,如何使計算機模擬此機制并準確、快速地提取圖像關鍵信息,是圖像顯著性檢測的主要目標。隨著顯著性檢測在目標識別、圖像壓縮、圖像自動裁剪等計算機視覺領域的廣泛應用,關注它的學者逐年增多,涌現了大量的顯著性檢測算法。目前顯著性檢測算法大致分為傳統模型和深度學習模型兩類。
基于手工提取特征的傳統模型[1-4]通常根據輸入圖像本身利用主成分分析、頻率分析等方法提取線索來突出目標并抑制干擾,可以在很少的時間成本下執行,但是檢測精度上普遍不高。例如:Achanta 等[1]利用頻域顏色特征和亮度特征來計算顯著值;Cheng等[4]將像素的顯著值定義為它與圖像中所有其他像素的顏色差異的加權和。
深度學習模型[5-10]根據人類注釋的顯著性masks 是否用于訓練,可以分為全監督方法和非全監督方法。在全監督方面,Lee 等[6]將編碼的低級距離圖和VGG 網絡提取的高層特征連接起來,并將它們連接到一個全連接分類器來評估顯著性。Hou等[7]提出了一種具有多分支短連接的深度監督框架,它嵌入了高層次和低層次的特征來進行精確的全監督顯著性檢測。非全監督方法分為弱監督方法和無監督方法,它們大多使用圖像級分類標簽或使用其他任務生成的偽像素標簽來注釋顯著性。在弱監督方面,Wang 等[8]開發了一種僅使用圖像級標記的弱監督顯著性檢測算法,通過將前景推理網絡與全卷積網絡聯合訓練來預測圖像級標簽。而在無監督方面,Zhang等[9]提出“融合監督”,結合圖像內融合流和圖像間融合流,從無監督顯著性模型的融合過程中生成有用的監督信號以監督深度顯著目標檢測器的訓練。Zhang 等[10]用一個潛在的顯著性預測模塊和一個顯式的噪聲建模模型組成一種端到端的深度學習框架。
傳統的顯著性檢測模型雖然模型簡單并且時間成本低,但分割精度普遍不高,而基于深度學習的模型雖然有較高的精確度,但是訓練階段依賴于大量的手動注釋數據或偽像素標簽,因此,如何在無人工標記或者少人工標記的情況下對顯著性目標進行精確檢測是目前該領域面臨的一個核心問題。針對該問題,本文提出一種基于圖割精細化和可微分聚類的無監督顯著性目標檢測算法。該算法采用由“粗”到“精”的思想,將顯著性目標檢測問題分成定位和精細化兩個部分進行解決,在無人工標記的情況下僅利用單張圖像便可獲取精確的目標檢測結果。首先,利用Frequency-tuned 算法[1]根據圖像自身的顏色和亮度特征進行對比以得到顯著粗圖;然后根據圖像的統計特性進行二值化并結合中心優先假設[11]得到顯著目標的候選區域,進而利用GrabCut 算法[12]對單張圖像迭代實現能量最小化以實現顯著目標的精細化分割;最后,結合具有良好邊界分割效果的無監督可微分聚類算法[13]對單張顯著圖進一步優化,使優化顯著圖更接近于真值圖。
為了彌補目前顯著性檢測存在的不足,本文提出一種基于圖割精細化和可微分聚類的無監督顯著性目標檢測算法。該算法整體流程如圖1 所示,接下來將以顯著性目標粗定位、候選區域的生成、GrabCut 圖像精細化分割、可微分聚類優化分割結果四個部分具體介紹本文算法。

圖1 本文算法流程Fig.1 Flowchart of the proposed algorithm
顯著性目標粗定位指的是利用顯著性檢測算法對圖像進行顯著性檢測,得到一個顯著粗圖A,用于后續的精細化分割。圖像在頻率域可以分為低頻和高頻部分:低頻反映圖像的整體部分,如基本的組成區域;高頻部分反映圖像的細節信息,如物體的紋理。顯著性目標檢測算法更多用到的是低頻部分的信息。Frequency-tuned 算法充分考慮這個特點,首先利用高斯濾波排除高頻的干擾,再利用顏色和亮度特征來估計中心與周圍的對比度以作為顯著度,由此得到的顯著區域具有明確的邊界、完全分辨率和較高的計算效率,生成的顯著性映射可以更有效地應用于其他領域。因此,本文采用Frequency-tuned 算法進行初步顯著性檢測,具有如下的顯著性映射定義:

其中:Iμ是圖像在LAB 顏色空間的三個通道的算術平均像素值;Iwhc(x,y)是原始圖像經過5× 5 高斯模糊后在LAB 顏色空間的像素值;‖ ‖是L2范數。
生成的顯著粗圖如圖2 所示。圖2(a)是原圖,圖2(b)是經過Frequency-tuned 算法得到的顯著粗圖,可以發現顯著粗圖中一些背景區域也被突出了。

圖2 Frequency-tuned算法顯著性檢測結果Fig.2 Saliency detection results of Frequency-tuned algorithm
由于顯著粗圖中部分背景區域被突出,自適應二值化得到的候選區域不利于后續的精細化分割。本文則基于圖像像素值的統計結果,獲取圖像像素值的最大值,并設置參數a調節前景和背景的比例,以此獲得更加精確的目標二值圖B,具體表示如下:

其中,a是0到1的變量。
目標二值圖作為下一步分割的先驗知識,以指導分割顯著目標的準確區域。將二值圖中包含所有白像素的相應矩形區域定義為候選區域。部分圖像背景與目標的相似程度較高,Frequency-tuned 算法檢測出來的顯著粗圖不夠精確,導致目標二值圖的白像素覆于整個圖像。針對此類情況,本文引入顯著性檢測的中心優先假設[11]:顯著對象更有可能在圖像中心附近找到,而邊界區域更有可能是背景。充分考慮目標存在于圖像邊緣時中心優先假設造成的一定程度上的特征丟失,利用參數b調節目標區域的選定。目標區域定義為:

其中:(xmin,ymin)和(xmax,ymax)表示候選區域的矩形對角坐標;表示包含所有白像素的最大矩形區域的對角坐標;b為0到20的變量;W表示圖像的寬度,H表示圖像的高度。
生成的候選區域如圖3 所示。圖3 中的第一組圖是選取包含所有白像素的最大矩形區域作為候選區域的效果圖;第二組圖是針對目標二值圖的白像素覆于整個圖像的情況引入中心優先假設后確定的候選區域效果圖。

圖3 候選區域選擇結果Fig.3 Results of candidate region selection
前文已經對目標進行粗定位并得到一個目標區域,GrabCut 算法通過迭代圖形切割優化和邊界摳圖結合硬分割來處理對象邊界上的模糊和混合像素,能夠實現很好的分割效果。因此,基于前文所得到的背景區域和可能目標區域,選擇GrabCut來實現對顯著目標的準確分割。
GrabCut 利用混合高斯模型背景區域和目標區域進行建模,對于每個像素,僅可能來自背景或目標的某個高斯分量。每完成一次分割,便計算一次能量項,即像素n分配目標或背景標簽的懲罰與相鄰像素n和m之間不連續的懲罰的和,用Gibbs能量項表示:

其中:N表示輸入圖像的像素點集合,C表示相鄰像素對的集合;Pn表示像素n屬于目標或者背景高斯分量的概率;In和Im分別表示像素n和像素m的RGB(Red-Green-Blue)值;an和am表示像素的類別標簽;參數δ指的是高斯模型的方差;γ根據經驗取值50。
GrabCut 算法將一次最小割估計算法替換為一個更強大的迭代過程。第一步是對已知背景區域內的每一像素n初始化類別標簽an=0;而對已知的可能目標區域內的每個像素n初始化類別標簽an=1,再通過k-means 將可能目標像素和背景像素聚類成K類,即高斯混合模型(Gaussian Mixture Model,GMM)模型的K維高斯分量。第二步是根據RGB 值對每個像素分配GMM 的高斯分量并根據給定的圖像數據來更新GMM參數。第三步是利用Gibbs 能量項估計最小割。通過第二和第三步交替進行實現最小割估計和參數學習,得到一種使圖像Gibbs能量項最小的分割方式。
利用GrabCut 算法對已注釋背景區域的圖像進行目標精細化分割得到的精細化分割顯著圖能較好地將顯著目標分割并突出,如圖4 所示第一組圖所示。但當背景和目標相似度高的情況下存在兩種問題:一是圖割結果中摻雜部分背景,如圖4 第二組圖;二是圖割結果無顯著目標或者目標區域極小,如圖4第三組圖。

圖4 精細化分割圖示Fig.4 Refined segmentation diagram
為了彌補GrabCut 圖像精細化分割存在的兩種不足,需要尋找一種具有良好邊界分割效果的算法來進行優化。基于這種需求,本文引入一種可微分聚類算法,該算法在卷積神經網絡(Convolutional Neural Network,CNN)中對單張圖像進行微分聚類來實現圖像分割,分割結果保留了較好的邊緣信息,能夠有效解決前文算法的不足。
可微分聚類是一種新的基于單圖像的端到端網絡的無監督圖像分割方法,基于這種思想,設計出如圖5 所示的結構。首先,使用CNN 進行特征提取獲取圖像特征{xn},接著利用q維卷積層計算q維特征圖{rn},再使用Batch Norm 進行歸一化得到歸一化特征圖。然后,借助argmax 函數獲取每個像素對應特征向量中最大值的ID作為像素類別,以此得到最終的聚類標簽{cn} 。最后,使用梯度下降的反向傳播方法來更新參數,以找到一個使損失函數L最小化的標簽分配解決方案。損失函數L表示如下:

圖5 可微分聚類算法流程Fig.5 Flowchart of differentiable clustering algorithm

其中:N表示輸入圖像的像素點集合;表示在映射中的第i個元素的特征值表示在映射中(ξ,η)處的特征值;μ根據經驗取值5,表示平衡這兩個約束的權重。
可微分聚類結果如圖6(d)所示,針對精細化顯著圖的兩種不足,分別采用不同的方法優化。
針對精細化分割圖中包含背景的情況,由于精細化顯著圖中包含的背景是一些雜質,比例較小,將目標中像素占比最小的像素值所對應區域定義為背景得到優化顯著圖S,映射關系見式(7)。

其中:D(x,y)表示精細化分割圖中(x,y)處的像素值;Imin表示精細化分割圖中目標區域所對應可微分聚類圖的區域的統計灰度直方圖中占比最少的像素值;I(x,y)表示可微分聚類圖中(x,y)處的像素值。
針對精細化分割圖無顯著目標或者目標區域極小的情況,以目標二值圖的最大連通區域為掩膜對可微分聚類圖進行感興趣區域(Region Of Interest,ROI)選擇后得到新的目標可能區域,將該區域灰度直方圖中除0 像素值以外占比最高的像素值作為種子點Imax來得到優化顯著圖S,映射關系見式(8)。

利用可微分聚類優化后的結果如圖6 所示:從第一組圖可以看出,背景噪聲被有效抑制;從第二組可以看出,顯著目標被準確突出。

圖6 可微分聚類優化效果Fig.6 Differentiable clustering optimization effect
為驗證本文提出的基于圖割精細化和可微分聚類的無監督顯著性目標檢測算法的有效性,采用ECSSD[14]和SOD[15]兩個國際公開的顯著性檢測數據集進行實驗,其中,ECSSD數據集由1 000 張圖像組成,圖像結構較為復雜;SOD 數據集是一個更具挑戰的數據集,包含300 幅圖像,具有多個與背景或與圖像邊界形成低色彩對比度的顯著對象。實驗運行環境為Visual Studio 2017 和Pytorch 1.5,硬件平臺使用的GPU 為2080Ti,內存為32 GB。
部分參數設置如下:式(2)中的參數a=0.45,式(3)中的參數b=10,GrabCut 的最小割算法迭代次數設置為10,可微分聚類網絡的迭代次數設置為100。
為了保證對比實驗的客觀性,采用顯著性目標檢測普遍使用的平均絕對誤差eMAE(Mean Absolute Error,MAE)、準確率P(Precision)、召回率R(Recall)和F?measure值來進行評價。
MAE表征真值圖GT與顯著圖之間的誤差,計算如下:

其中:S(x,y)表示優化顯著圖在(x,y)處的像素值;GT(x,y)表示二值化的ground truth 在(x,y)處的像素真值。eMAE值越低表明真值圖與優化顯著圖之間誤差越小,算法越好。
通過將優化顯著圖S與真實標簽進行比較來計算準確率P和召回率R,計算公式如下:

綜合考慮P與R,采用P與R的加權調和平均值F-measure來綜合評估顯著性圖片,計算公式為:

其中,為突出準確率的重要性,根據經驗值設置β2為0.3。Fmeasure值越大表明顯著性目標檢測算法的性能越好。
為驗證本文算法的性能,與以下關注度較高的7 種算法進行實驗對比:文獻[16]中提出的基于圖論的視覺顯著性計算方法,檢測準確度高,記作GBVS;文獻[17]中利用主成分追蹤來準確地恢復低秩和稀疏分量的算法,記作RPCA;文獻[18]中提出的顯著性過濾算法,記作SF;文獻[19]中利用自底向上的先驗知識來約束圖像特征的算法,記作SLR;文獻[20]中利用連續性來提高背景先驗的魯棒性,記敘RBD;文獻[21]以及文獻[22]中的算法通過變形平滑約束的新傳播模型來優化背景對比度低的對象區域,分別記作FBS與SC。
表1 列出了8 種算法在F-measure值和eMAE評估指標上的評估結果,加粗數字表示最佳性能,下劃線數字表示次優性能。從表1 中可以看出,在ECSSD 和SOD 數據集上本文算法表現優異。
ECSSD數據集包含多個獨立或者相鄰的顯著目標且顯著目標大小各異。從表1 可看出,本文算法實現了最低的eMAE值,而且F?measure值僅僅略低于SC 算法。結果表明,本文算法能夠有效地對具有多個顯著目標的圖像進行檢測。

表1 不同顯著性檢測算法在ECSSD和SOD數據集上的指標得分Tab.1 Index scores of different saliency detection methods on ECSSD and SOD datasets
SOD 數據集圖像背景復雜且顯著目標大小各異。從表1中可看出,本文算法從eMAE值和F?measure值綜合來看優于除SC 算法以外的算法,本文算法在背景復雜的場景中能夠較好地檢測顯著目標。與SC 算法相比,本文算法具有較低的eMAE值,表明本文算法檢測的顯著圖更接近于真值圖。
為驗證本文所用優化策略的有效性,在ECSSD 數據集和SOD 數據集上生成顯著粗圖、精細化分割圖、優化顯著圖,并計算相應eMAE、P、R和F?measure值,結果如表2。表2 中“顯著粗圖”表示Frequency-tuned 算法檢測的顯著粗圖,“精細化分割圖”表示經過GrabCut 精細化分割的顯著圖,“優化顯著圖”表示在精細化分割圖經過可微分聚類優化后的顯著圖。從表2 可以看出,精細化分割的顯著圖與顯著粗圖相比,在4 個指標上均有明顯的提升,優化后的顯著圖與精細化分割圖相比,在3個指標上有一定的提升。

表2 顯著粗圖、精細化分割圖、優化顯著圖的比較Tab.2 Comparison of saliency rough map,refined segmentation map and optimized saliency map
對于本文算法所涉及的顯著粗圖進行二值化時的閾值選擇,為了盡可能多地保留圖像信息,實驗中基于顯著圖自身的灰度統計特性,選擇了多種閾值進行二值化進行對比實驗,eMAE值和F?measure值結果顯示見表3。從表3中可以看出,在ECSSD數據集上,當a=0.45時所得優化顯著圖的eMAE值略差于a=0.4的情況;在SOD 數據集上,當a=0.45時所得顯著圖的eMAE值和F?measure值均優于其他取值情況;綜合考慮,選擇a=0.45。

表3 二值化閾值的靈敏度分析(b=10)Tab.3 Sensitivity analysis of binarization threshold(b=10)
對于本文候選區域生成時候選區域選擇所涉及的參數b,選擇了多種取值進行對比實驗,結果見表4。從表4中可以看出,在ECSSD數據集和SOD數據集上,當b=10時所得優化顯著圖的eMAE值略差于b=15 的情況,但F?measure值均優于其他取值情況,綜合看來,當b=10時實驗結果最好。

表4 候選區域選擇的靈敏度分析(a=0.45)Tab.4 Sensitivity analysis of candidate area selection(a=0.45)
從主觀視覺上,圖7 顯示了本文優化過程在ECSSD 數據集和SOD 的數據集上的視覺顯著圖。從上到下依次是:原始輸入圖像、人工標注真值圖、Frequency-tuned 算法檢測的顯著粗圖、經GrabCut 精細化分割的精細化分割圖、經可微分聚類優化精細化分割圖后的優化顯著圖。通過對比可看出,顯著粗圖能夠檢測出目標的大致輪廓;經過精細化分割以后,可以將目標從背景中分割出來,但是在精細化分割圖中依然存在一部分的背景噪聲;可微分聚類可以有效地過濾這些背景噪聲,得到一個更接近真值圖的優化顯著圖;針對顯著粗圖不準確導致精細化分割圖不包含任何目標或者僅存在部分小區域的情況,經過優化后顯著目標也可以比較準確地檢測出來。

圖7 本文優化算法在ECSSD、SOD數據集上的視覺顯著圖對比Fig.7 Comparison of visual saliency maps on ECSSD and SOD datasets
近年來,隨著深度學習的迅速發展,顯著性目標檢測算法大部分都是依賴于大量數據或像素級標簽的,而本文將圖割和可微分聚類引入顯著性檢測,由“粗”到“精”地優化傳統顯著性檢測算法,僅通過提取單張圖像的信息特征便能夠在無人工標記的情況下獲取精確的顯著性目標檢測結果。本文提出的算法與7 種現有算法在ECSSD、SOD 數據集上進行對比,本文算法在對背景復雜和多目標的圖像進行顯著性目標檢測時具有一定的優勢。在未來的工作中,一方面可以從顯著粗圖生成方面入手,采用一種更為準確的無監督算法來粗定位目標;另一方面由于本文算法是完全基于圖像本身特征進行的無監督的顯著性目標檢測,后續可以結合有監督的顯著性目標檢測算法,進一步提高精度。