灵长类动物能快速处理视觉图像中的感兴趣区域, 为了模仿这种视觉注意机制, 图像显著性检测理论得到快速发展. 该理论研究广泛应用于很多领域, 如图像分割[1], 目标检测[2]和图像检索[3]等.
传统显著性检测算法都是利用目标的稀有性特征解决问题, 忽略了背景信息. 例如Itti[4]计算图像颜色和空间位置等特征获得图像显著性. Achanta[5]提出基于频率调谐(Frequency-Tuned, FT)显著性算法. Goferman等[6]提出利用图像上下文感知(Context-Aware, CA)检测图像的显著性. Hou等人[7]从谱残差的角度计算显著图. Cheng等人[8]根据区域对比度信息来计算显著性, 取得不错的检测效果. Yan[9]从多层次考虑显著性检测. Perazzi等人[10]提出Saliency filters显著性算法. 以上这些显著性算法都有效地促进了显著性检测理论的发展, 但显著目标检测的准确率和召回率还有待提高.
近来, 基于超像素[11,12]、图模型[13]和背景先验[14–17]的显著性检测研究广泛. 例如Wei等[14]利用测地线距离来计算显著性. Zhang等[15]基于边界背景先验的思想, 将图像边界区域作为背景, 取得一定的检测效果, 但背景假设太理想. 徐威等[16]提出利用层次先验估计的显著性的检测算法. Yang等[17]基于超像素构造图模型, 提出利用背景先验知识和流形排序(Manifold Ranking, MR)计算显著性. 其中由于背景选取理想化和前景节点漏选, 在显著目标靠近图像边界的情况下, MR算法会出现目标检测不准确和不完整的现象. 基于MR算法, 朱征宇等人[18]通过前景和背景特征获取了更多查询节点, 提高了显著目标的准确性, 但目标的完整性还待解决, 还需要从根源解决该问题. 周强强等人[19]基于MR算法提出结合前景和背景的检测方法, 得到了比较精细的显著图. 邓凝旖等人[20]利用深度学习来计算显著性, 取得不错的检测效果.
本文在流形排序算法的基础上, 提出一种基于背景感知的显著性目标检测算法. 针对上述基于背景先验的显著性检测算法中存在的背景假设过于理想和目标检测不完整的问题, 本文提出以下解决方法: (1)对背景区域的真实性进行判断; (2)提取完整的前景节点区域, 检测到完整目标; (3)加强显著目标边界.
1 基于流形排序的显著性检测基于图的流形排序显著性(MR)检测算法是Yang等人[17]提出的. MR算法中主要提出了用流形排序算法进行显著性计算, 其主要过程如下:
首先, 对输入图像进行超像素分割. 再构造基于超像素的图模型
${{{f}}^*} = {\rm{arg}}\mathop {\rm{min}}\limits_f \frac{1}{2}\left( {{{\sum\limits_{i,j = 1}^n {{w_{ij}}\left\| {\frac{{{{f_i}}}}{{\sqrt {{d_{ii}}} }} - \frac{{{{{{f_j}}}}}}{{\sqrt {{d_{jj}}} }}} \right\|} }^2} + u\sum\limits_{i = 1}^n {{{\left\| {{f_i} - {y_i}} \right\|}^2}} } \right)$ | (1) |
公式(1)中,
${w_{ij}} = {e^{ - \frac{{\left\| {ci - cj} \right\|}}{{{\sigma ^2}}}}}\;\;\;i,j \in V,$ | (2) |
${f^*} = \left( {{\bf{I}} - \alpha {{\bf{S}}^{ - 1}}{{y}}} \right)$ | (3) |
${f^*} = {\left( {{\bf{D}} - a{{\bf{W}}}} \right)^{ - 1}}{{y}}$ | (4) |
式中ci和cj分别是超像素节点在CIELAB颜色空间对应的均值,
文献[17]中的MR显著性检测主要有2个阶段. 第1阶段: 先按式(4)和(5)分别计算节点xi相对边界背景种子点(即背景查询对象)的排序得分和显著值. 再根据式(6)计算第1阶段的最终显著图. 式中
$\begin{array}{l}{{S}}_{ {s}}^{\left( {i} \right)} = 1 - {\overline f ^*}\left( i \right), \;\;\;s = d,t,r,l, \;\;i = 1,2,\cdots,N,\end{array}$ | (5) |
${{S}_{bq}}{ {(i)}} = {{{S}}_{{d}}}{{(i)}} \times {{{S}}_{{t}}}{{(i)}} \times {{{S}}_{{r}}}{{(i)}} \times {{{S}}_{{l}}}{{(i)}}$ | (6) |
第2阶段: 阈值分割第1阶段的显著图, 获得前景种子点(即为前景查询对象). 再根据式(4)计算各节点相对前景种子点的排序得分. 最后根据(7)计算第2阶段(最终的)的显著值, 实验结果如图1所示.
${{{S}}_{fq}}(i) = {\overline f ^*}(i)$ | (7) |
由图1(c)观察可知, 在显著目标靠近图片边界的情况下, 显著图没完整地突显出前景目标且背景未被完全抑制, 总体实验结果不理想. 由图1(d)可见, 在目标未靠近边界情况下, 图1(f)中目标突显的较完整, 且背景抑制程度较低. 由上述可知, 经典MR方法存在对背景抑制程度不够, 且对部分靠近边界目标的图片显著性检测较差.
2 本文算法 2.1 基于背景感知的显著性检测
本文算法基于背景先验[14]的基础上, 感知到真实背景. 同时根据目标物体的封闭性特征, 采用BING (Binarized Normed Gradients)[21]算法获得完整的前景目标区域. 本文的显著性目标检测算法主要步骤如下:
Step 1. 将图像分割成超像素, 根据SLIC[19]方法, 并构造图模型. 本文和文献[17]一样, 所有实验超像素的数量取200, 如图1所示.
Step 2. 选择图像边界处的超像素为初始背景, 再运用自适应颜色聚类得到相应的区域, 计算这些区域的综合差异度, 筛选出真实超像素区域并标记为真实背景种子点. 进行流形排序, 生成第1阶段的显著图.
Step 3. 根据物体目标的封闭性, 计算输入图像的BING特征, 估计出目标的位置. 再结合第1阶段的显著图, 得到完整的前景目标区域.
Step 4. 重构前景目标区域的图模型并加强重要节点间的连接权值. 最后利用流形排序生成第2 阶段的显著图, 即最终的显著图.
2.2 边界背景感知由第1节MR算法的实验结果可知, 在目标接触图像边界的检测情况下, 前景目标没被完整地突出, 甚至会检测错误. 导致该现象的根本原因是背景种子点的误选, 所以本文提出根据边界区域的综合差异度, 筛选出真实背景种子点. 背景种子点的筛选方法具体步骤如下:
Step 1. 选取图像边界的超像素作为初始背景种子点集
Step 2. 计算每个区域
Step 3. 选取综合差异度较大的前m个区域(m=0,1), 将其包含的超像素从初始背景种子点集中去除, 得到真实的背景种子点集, 如图2(c)所示. 背景种子点筛选后得到的实验结果, 如图3所示.
Step 4. 选择真实的背景种子点作为查询对象, 利用式(4)和式(5)计算其余节点相对于查询对象的流形排序得分和显著值, 得到第1阶段显著图, 实验结果如图4.
${D_{pl}} = {\left\| {{M_{l - 1}} - {M_l}} \right\|^2}$ | (8) |
${D_{sl}} = {\left\| {{M_{l + 1}} - {M_l}} \right\|^2}$ | (9) |
${D_{{\text{m}}l}} = {\left\| {{M_m} - {M_l}} \right\|^2}$ | (10) |
${D_{fl}} = \frac{1}{2}\left( {\frac{{\left( {{D_{pl}} + {D_{sl}} + {D_{ml}}} \right)}}{3} + \frac{{A{R_l}}}{{\sum\limits_1^i {A{R_l}} }}} \right)$ | (11) |
Step 3中区域数m的选择是根据边界区域归一化
由图3(c)和3(d)对比可知, 该图背景种子点主要在下边界发生变化, 所以单独以下边界为背景种子点产生的显著图有明显改变, 突出了目标整体, 如图4(e)的右上角部分的小图所示.
显著性检测2个阶段的试验结果对比, 如图4所示. 由于本文筛选出了真实背景种子点, 所以单独用四个边界产生的显著图与MR算法不同, 见图4(a)和图4(b). 由图4观察可看出, 本文第1阶段的显著图4(d)相比MR算法图4(b), 更大面积突出了目标且目标亮度更大、更真实. 由此得到的第2阶段的显著图图4(f), 对比可看出本文算法有效地抑制了背景区域. 图4(h)和(g)是二值化后处理后的图, 对比观察可看出, 本节检测算法突出了图像边界处的目标, 效果明显优于MR算法的检测结果.
2.3 前景目标检测
由2.2节内容可知, 在获得真实背景种子点之后, 仍有部分图片的前景目标未被完整地突显. 分析得到该现象发生的原因是现有前景种子点的区域范围, 未能有效的覆盖到目标整体, 漏选了重要的前景节点. 由Yang[17]的论述和实验结果可知, 前景节点的误选对实验结果不会产生太大影响, 但文中没有论述和分析前景种子节点的漏选对实验结果的影响.
BING[21]算法是一种利用物体封闭性特征快速预测目标位置的算法. 目标物体的封闭性特征为当物体梯度图缩小到一定尺寸(例如
${s_l}{\text{ = < }}w,{g_l}{\text{ > }}$ | (12) |
$l = (i,x,y)$ | (13) |
${{{O}}_l} = {{{v}}_i} \cdot {{{s}}_l} + {{{t}}_i}$ | (14) |
公式(11)中的w是BING算法中用liblinear分类器离线训练第1阶段得到的模型W, 如图5. 本文这里采用VOC2007数据集作为训练集, MASR-1000数据集作为测试集.
本文采用BING算法, 检测得到目标物体的候选位置, 如图7(a)所示. 对比观察图7的(b)图和(c)图, 可看出本算法提取出完整的前景种子点且不存在漏选, 最终显著图如图7(d)所示. 本文算法完整地突出了前景目标, 并且有效地抑制了背景区域, 整体检测效果很好.
获取完整的前景种子点后, 为获得清晰的目标边界, 加强这些节点间的相关性, 削弱他们与背景节点的相关性. 本文对该候选框区域内的超像素重新构造图模型, 候选框区域之外节点连接方式不变, 如图8所示. 在构造前景节点区域的图模型时, 规定每个节点只与直接相连的邻居节点相连, 并且要求这些邻居节点本身至少有5个以上相邻节点(减少边缘节点的可能性). 例如图6中的圆型节点只和2个节点相连, 矩形节点和菱形节点分别与7个节点相连、4个节点相连.
同时, 本文分析发现图模型中不同节点的重要性有较大差异且属于目标区域的可能性也不同. 在重构图模型后, 采用文献[22]提出的加权k-壳分解法, 将前景节点区域的节点层层剥去, 确定出图模型中重要节点的位置, 主要涉及到的公式如下:
${k_{\text{i}}}^\prime = {\left[ {k_i^\alpha {{\left( {\sum\limits_j^{{k_i}} {{C_{ij}}^\prime } } \right)}^\beta }} \right]^{\frac{1}{{\alpha + \beta }}}}$ | (15) |
上式中
${w_{ij}}^\prime = {e^{ - \frac{{\left\| {{c_i} - {c_j}} \right\|}}{{{\sigma ^2}}}}} \cdot \left( {1 + \frac{{{k_{\rm{i}}}^\prime }}{{\sum\limits_1^c {{k_{\rm{i}}}^\prime } }}} \right),\;\;\;i,j \in V,$ | (16) |
式中c为重要节点的个数.
本文前景目标显著图检测的具体步骤如下:
1) 首先, 利用物体的封闭性特征, 采用BING算法检测得到目标位置的一些候选窗口
2) 对第1阶段产生的背景显著图进行阈值分割, 得到分割图
3) 分别计算外接矩形框
4) 重构该前景节点区域的图模型, 再利用加权k-壳分解法得到该区域的重要节点. 并根据公式(15)加强这这些节点间的连接权值. 最后, 进行流形排序, 得到最终的显著图, 如图7(d)所示.
由图7观察可知, 本节算法的实验结果图7(d)相比于图4(e)和图4(f), 检测效果提高明显, 背景几乎完全被抑制, 目标被完整突出且目标边界较清晰.
3 实验设计及分析本文在MRSA-1000数据集上进行分析检测和评价. MRSA-1000数据集含有1000张显著对象的图片, 且提供对应的人工标识图, 是显著性检测领域公开的数据集. 本文分别选取了多种显著性检测算法与本文进行比较, 其中包括: IT[4], FT[5], CA[6], RC[8], HS[9], SF[10], MR[17], FB[18], FBE[19], CP-DNN[20], BSCA[23], GraB[24].
3.1 评价指标采用了4种显著性目标检测的评价指标, 分别是准确率(Precision)、召回率(Recall)、F-measure和平均绝对误差(MAE). F-measure指标是对准确率和召回率的权衡. 平均MAE是对图像背景区域抑制程度大小的反应, 该值越小表明检测算法性能越好. 分别用式(16)和(17)来计算. 其中
$F - measure = \frac{{\left( {1 + {{\beta }^2}} \right) \times Precision \times Recall}}{{{{\beta }^2} \times Precision + Recall}}$ | (17) |
$MAE = \frac{1}{{M \times N}}\sum\limits_{x = 1}^M {\sum\limits_{y = 1}^N {\left| {S\left( {x,y} \right) - GT\left( {x,y} \right)} \right|} } $ | (18) |
本文算法在MRSA-1000数据集上的P-R曲线(Precision-Recall curve)和自适应阈值分割后的精确度、召回率和F-measure, 如图9所示. 由图9(a)可见, 从整体趋势上看, 本文算法的准确率较高. FB、FBE、MR与本文算法都是基于前景与背景的思想, 但它们的曲线都在本文算法曲线之下. 定量分析发现, 当召回率处于[0, 0.80]区间时, 本文算法的准确率保持在0.96左右, 略高于MR算法. 当召回率在0.75左右时, 本文算法的准确率最高, 竞争优势明显. 分析图9(b)可知, 本文算法在MRSA-1000数据集上的F-measure数值是各算法中最高的. 本文高F-measure值的原因是选择了真实的背景种子点, 并通过封闭性特征得到完整前景种子节点. FB、FBE、MR等其余算法在召回率和F-measure值上没有本文算法优势大.
平均MAE值对比. 各算法在MRSA-1000数据集上的平均MAE值对比, 见表1. 由表1观察可知, 本文算法的平均MAE值和MR算法最为接近, 且是所列算法中值最小的, 可见对背景的有效抑制程度最大.
运行时间对比, 见表2. 本文算法采用C++语言编写, 实验运行环境设置为Intel(R) Core(TM) i3-2410M CPU, 4 G内存的笔记本. 表2中各算法均用C++编写、实验, 测试数据集为MRSA-1000. 由表2可知, 本文算法相比于MR算法检测时间变化不大. 虽然本算法实现步骤增加了BING特征检测, 但BING检测可达到300 ftps的检测速度, 所以整体时间增加不多. 本文算法相比于SF、HS和FBE算法的运行时间较少, 相比于RC、IT、和FT算法运行时间略多, 但存在检测准确率、召回率高的优势. 故综合准确率、召回率和时间三方面考虑, 本文算法有较大竞争优势.
实验结果对比. 本文算法分别与5种显著性检测算法的实验结果见图10, 这5种算法分别是CA[6], HS[10], FT[5], SR[7], MR[17]. 图10中的6幅输入图像都取自MRSA-1000数据集, 从整体实验结果来看, 本文算法的实验检测效果最好, 目标边界清晰. 观察第1、第5张输入图像, 在目标靠近图像边界时, 本文算法完整地突出了目标且与Ground Truth图中标注的显著目标最为接近, 较好地抑制了背景. 观察第2和第3张图片的检测结果, 发现本文算法检测获得的目标内部亮度较均一, 明显优于其余算法的结果. 观察第4张输入图像的检测结果, MR算法和其余算法的检测效果都没过滤掉目标的影子. 本文算法对该图的检测效果最好, 因为提取了完整的前景种子点并加强了它们的连接权值, 准确完整地突出了前景目标, 很好地消除了目标的影子, 最接近Ground Truth图标注中的显著目标. 观察第6张输入图片的检测结果, 本文算法检测有效抑制了目标的背景区域, 且准确地突出了目标, 优于其余算法. 其余算法的背景抑制程度较差, 导致目标检测准确率不高. 综上所述, 本文实验结果相比于其余算法检测效果最优.
4 结论
本文提出了一种基于背景感知的显著性目标检测算法, 重点研究了背景判断和前景节点的选取问题. 与经典的流形排序显著性检测算法相比, 本文算法解决了背景假设不准确和目标检测不完整的问题, 同时获得轮廓清晰的目标. 实验结果表明, 同几种显著性检测算法相比, 本文算法在MRSA-1000数据集上, 取得了较好的实验结果, 优于经典的MR和部分算法. 由于本文研究是基于超像素分割基础之上, 下一步的研究工作将专注于研究高效的超像素分割方法, 降低它的时间复杂度.
[1] |
白雪飞, 王文剑, 梁吉业. 基于区域显著性的活动轮廓分割模型. 计算机研究与发展, 2012, 49(12): 2686-2695. |
[2] |
曲延云, 郑南宁, 李翠华, 等. 基于支持向量机的显著性建筑物检测. 计算机研究与发展, 2007, 44(1): 141-147. |
[3] |
冯松鹤, 郎丛妍, 须德. 一种融合图学习与区域显著性分析的图像检索算法. 电子学报, 2011, 39(10): 2288-2294. |
[4] |
Itti L, Koch C, Niebur E. A model of saliency-based visual attention for rapid scene analysis. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1998, 20(11): 1254-1259. DOI:10.1109/34.730558 |
[5] |
Achanta R, Hemami S, Estrada F, et al. Frequency-tuned salient region detection. Proceedings of 2009 IEEE Conference on Computer Vision and Pattern Recognition. Miami, FL, USA. 2009. 1597–1604.
|
[6] |
Goferman S, Zelnik-Manor L, Tal A. Context-aware saliency detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(10): 1915-1926. DOI:10.1109/TPAMI.2011.272 |
[7] |
Hou XD, Zhang LQ. Saliency detection: A spectral residual approach. Proceedings of 2007 IEEE Conference on Computer Vision and Pattern Recognition. Minneapolis, MN, USA. 2007. 1–8.
|
[8] |
Cheng MM, Zhang GX, Mitra NJ, et al. Global contrast based salient region detection. Proceedings of 2011 IEEE Conference on Computer Vision and Pattern Recognition. Colorado Springs, USA. 2015. 409–416.
|
[9] |
Yan Q, Xu L, Shi JP, et al. Hierarchical saliency detection. Proceedings of 2013 IEEE Conference on Computer Vision and Pattern Recognition. Portland, OR, USA. 2013. 1155–1162.
|
[10] |
Perazzi F, Krähenbühl P, Pritch Y, et al. Saliency filters: Contrast based filtering for salient region detection. Proceedings of 2012 IEEE Conference on Computer Vision and Pattern Recognition. Providence, RI, USA. 2012. 733–740.
|
[11] |
Zhu WJ, Liang S, Wei YC, et al. Saliency optimization from robust background detection. Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, OH, USA. 2014. 2814–2821.
|
[12] |
吕建勇, 唐振民. 一种基于图的流形排序的显著性目标检测改进方法. 电子与信息学报, 2015, 37(11): 2555-2563. DOI:10.11999/JEIT150619 |
[13] |
Jiang BW, Zhang LH, Lu HC, et al. Saliency detection via absorbing Markov chain. Proceedings of 2013 IEEE International Conference on Computer Vision. Sydney, NSW, Australia. 2013. 1665–1672.
|
[14] |
Wei YC, Wen F, Zhu WJ, et al. Geodesic saliency using background priors. Proceedings of the 12th European Conference on Computer Vision. Florence, Italy. 2012. 29–42.
|
[15] |
张巧荣. 利用背景先验的显著性检测算法. 中国图象图形学报, 2016, 21(2): 165-173. DOI:10.11834/jig.20160205 |
[16] |
徐威, 唐振民. 利用层次先验估计的显著性目标检测. 自动化学报, 2015, 41(4): 799-812. |
[17] |
Yang C, Zhang LH, Lu HC, et al. Saliency detection via graph-based manifold ranking. Proceedings of 2013 IEEE Conference on Computer Vision and Pattern Recognition. Portland, OR, USA. 2013. 3166–3173.
|
[18] |
朱征宇, 汪梅. 基于Manifold Ranking和结合前景背景特征的显著性检测. 计算机应用, 2016, 36(9): 2560-2565. DOI:10.11772/j.issn.1001-9081.2016.09.2560 |
[19] |
周强强, 赵卫东, 柳先辉, 等. 一种前景和背景提取相结合的图像显著性检测. 计算机辅助设计与图形学学报, 2017, 29(8): 1396-1407. |
[20] |
邓凝旖, 沈志强, 郭跃飞. 基于类别先验与深度神经网络特征的显著性检测. 计算机工程, 2017, 43(6): 225-229. |
[21] |
Cheng MM, Zhang ZM, Lin WY, et al. BING: Binarized normed gradients for objectness estimation at 300 fps. Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, OH, USA. 2014. 3286–3293.
|
[22] |
Garas A, Schweitzer F, Havlin S. A k-shell decomposition method for weighted networks. New Journal of Physics, 2012, 14(8): 083030. DOI:10.1088/1367-2630/14/8/083030 |
[23] |
Qin Y, Lu HC, Xu YQ, et al. Saliency detection via cellular automata. Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA. 2015. 110–119.
|
[24] |
Wang QS, Zheng W, Piramuthu R. GraB: Visual saliency via novel graph model and background priors. Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA. 2016. 535–543.
|