基于部件检测的细粒度图像分割

2019-05-16 01:39姚鸿勋孙晓帅
智能计算机与应用 2019年2期
关键词:细粒度部件前景

庞 程,姚鸿勋,孙晓帅

(哈尔滨工业大学计算机科学与技术学院,哈尔滨150001)

0 引 言

以往的研究表明,图像分类任务的准确率可以通过分割等预处理过程获得提升。这一结论在图像细粒度分类领域也得到了证实[1-2].但是一般的图像分割方法并不能很好地利用细粒度研究对象的部件信息,其分割过程往往会丢掉一些部件,将其错误地分类成为背景。而据已有的研究分析可知,物体的部件在细粒度视觉分析中起到至关重要的作用,因其承载了许多具有判别力的局部特征。如果忽略这些重要的部件或者局部特征,细粒度分类的性能反而会因为分割造成一定的损失。基于上述分析,本文提出了一种基于部件检测的细粒度图像分割方法,目的是利用部件信息指导分割的过程,尽可能地保留物体的重要部件,提高分割的准确性和后续分类的性能。

本文方法分为定位阶段和分割阶段。在定位阶段,将对物体的部件进行定位,获得一些部件的位置信息的假设。然后就是分割阶段,研究利用获得的部件假设指导GrabCut[3]方法的分割过程,达到优化分割的目的。具体来说,就是在设计的优化函数中,迭代地更新部件假设和前景分割的前景假设,使得两者最终达到统一。即如果部件假设中认定某些像素可能属于物体的部件,但是在分割的前景假设中这些像素属于背景,那么就增加这些像素在分割中属于前景的概率并同时减少部件假设中其属于部件的假设。图1显示了本文方法和其它方法的效果。

作为该方法核心的定位阶段,研究为其设计了2种定位方法,分别是基于弱监督的部件定位方法和基于无监督的部件定位方法。但是在实际应用中,部件的真实信息的获取通常较为困难,只有少数的数据集提供了相关信息。如何在没有专家知识或者少量专家指导的情况下,自动地获取这些对于细粒度视觉分析至关重要的信息,是本文研究中拟着重考虑的问题。在基于弱监督的部件定位方法中,研究利用了数据集提供的真实部件信息训练定位模型,然后利用定位模型推理查询图像中的物体部件信息。因为研究中仅仅在训练阶段使用了真实的部件信息,而一旦定位模型训练完成后,就可以在任何图像中实现自动的部件定位。更进一步,对于连训练数据都没有真实部件信息的情况,研究继而提出了无监督的部件定位(发现)方法。该方法仅仅利用一些底层的视觉特征,挖掘图像局部区域可能存在的部件,然后利用这些部件训练定位部件模型。相关的部件发现的工作、比如文献[4]也利用了图像底层视觉特征。但是本文提出的部件发现策略首次引入了姿态一致性的约束,使得本文发现的部件能够更好地覆盖研究对象。

图1 本文方法示意图Fig.1 Illustration of the proposed method

和本文提出的分割方法最相关的是文献[2]研发的共生的细粒度分类和分割方法。该方法第一次发现了细粒度图像分类和物体检测具有一定的协同作用,将部件检测和分割相结合可以提升细粒度视觉分析的性能。在设计框架中分别使用Deformable Part Model(DPM)[5]和 GrabCut作为其检测和分割算法。本文提出的方法与上述方法的不同主要表现在如下2个方面:

(1)DPM仅仅给出了一些粗略的部件的检测结果,而本文方法可以利用更富含语义信息的专家定义的部件训练模型进行检测。

(2)研究并不是在每次分割迭代之后都重新检测部件的位置,而是迭代地更新本文的部件检测假设和分割前景假设,为的是最大限度地保留尽可能多的对细粒度视觉分析有用的部件。

1 基于弱监督的部件检测

时下现有的部分成果已经证明了,精确的物体部件检测能够显著地提高细粒度分类的性能[1-2]。只是这些研究一般都基于参数化模型的工作,同时也都使用了这一假设:部件的位置分布遵循的是高斯分布。但已有证明指出这个假设是不正确的[6],部件的分布并不遵循高斯分布。而且,这些工作使用的参数化模型也不足以精确地描述一些无规律的部件分布模式。为此本文提出了一种基于弱监督的,结合参数模型和非参数模型的混合部件检测方法。该方法能够处理一些姿态变化巨大的部件分布模式,并且在较低的计算开销下能够足够精确地得到部件检测结果。

文献[6]的方法也使用了非参数的部件模型。方法中利用了底层视觉特征,比如全局的形状,来进行粗略的部件对齐。区别于该方法的是,本文方法仅仅将非参数模型的结果作为先验知识,后续还会利用参数模型进行更精确的检测。设计过程中,研究在第一阶段利用非参数部件传递,将一些训练样本的真实部件坐标赋予查询样本。而后在第二阶段,研究在传递的部件的邻域内进行精确的部件检测,使用的是参数化的部件检测子。对于传统的利用滑动窗口进行检测的方法,本文提出的混合部件检测方法的优势可表述为:

(1)结合了参数化和非参数化模型的优点,既能处理一些姿态变化极大的情况,又能在较低计算开销的情况下给出较为准确的检测结果。

(2)研究中第二阶段的在部件邻域内进行检测的方法,能够避免不同部件因为具有相似的表观特征而造成的检测混淆。

如图2所示,弱监督部件检测模型框架分为2个阶段,即:非参数的部件坐标传递和参数化的部件检测。对于该算法设计步骤可阐释如下。

图2 弱监督部件检测框架Fig.2 Pipeline of the semi-supervised part detection

在非参数部件坐标传递阶段,所有样本的最小边界框中的图像被缩放到256∗256尺寸,图像的HOG特征被用作底层视觉特征描述物体的姿态。对于一幅待检测部件的查询图像,研究首先在训练样本中搜索和查询图像的姿态最相近的k个近邻样本。然后,求取这些近邻的各个部件的平均坐标,并传递给查询图片作为查询图片对应部件的可能的位置。因为通过观察分析发现,整体姿态相近的2个样本,其组成部件的相对位置也是非常接近的。

在参数化的部件检测阶段,假设已为每一个部件训练了一个部件检测子,研究在上一步每个可能的部件位置的邻域,使用对应该部件的检测子进行滑动窗口搜索。算法将检测子检测分数最大的位置作为检测到的部件位置。接下来将会介绍并用到训练部件检测子的方法。首先根据物体姿态对训练样本进行聚类,获得具有相近姿态的若干类别,基于此将为每一个姿态训练单独的部件检测子。然后对于第i个部件,研究收集这个姿态类别中所有样本在部件i位置的图像块作为该部件的正例训练图像,而负例训练图像则采集自背景区域。需要指出的是,即使是同一部件,因为细粒度研究对象的巨大类别数,也可能呈现出多样化的外观。如果为一个部件仅仅训练一个检测子,那么获得的检测子可能具有较低的判别能力,因为其需要同时兼顾处理多样化外观的泛化能力。于是,研究有针对性地提出为一个部件训练多个检测子。其训练图像可由上述训练图像通过聚类得到,训练使用SVM分类器。那么最终研究为第i个部件训练的检测子实际上就是一个包含 SV,SV,…, SV在内分类器集合。

为了评估本文提出方法的计算开销,研究假设一幅图像的大小为n∗n像素,搜索的步长为1个像素。那么一个传统的基于滑动窗口的搜索算法搜索全图像将需要n∗n个CPU时间。而在本文提出的算法中,研究关注的是在检测到的部件邻域内进行有限的搜索而不是全图。如果研究中设定这个邻域的大小为图像边长的1/m,那么本文的算法仅用1/m2的CPU时间就可以完成搜索,并且还避免了不同部件之间的相互干扰。从效率和准确性方面都较一般的滑动窗口方法更具优势。

2 基于部件检测的细粒度图像分割

这一节中,拟将论述本文提出的基于部件检测的细粒度图像分割方法。该方法以GrabCut分割方法为基础,利用引入的部件的位置信息以指导分割过程,达到细粒度视觉分析的要求。GrabCut使用混合高斯模型作为分割算法的颜色模型,并不断地迭代更新颜色模型。与其不同的是,本文的分割方法则是交替更新研究中的部件假设和颜色模型,使得部件假设和分割的前景假设尽量达成一致。本文的算法不需要任何的用户介入,仅仅需要物体的最小边界框。而物体的最小边界框可以方便地使用任意检测方法得到,这不在本文的讨论范围。

2.1 定义

本文方法的核心思想是:如果本应该属于物体部件的像素被分割方法错误地分类为背景,那么就增大了分割模型中这些像素属于前景的概率。这就是研究中引入部件检测的原因。同时,研究还利用部件假设产生一个物体前景掩膜用于初始化分割的颜色模型,以减少因错误的模型初始化造成的分割错误。本文分割方法的目标函数可以表示为:

其中,z表示一幅图片的所有像素的RGB值组成的矩阵;s表示GrabCut分割产生的前景掩膜;w=[w1,w2, … ,wn] 存储每个像素属于前景的概率;EGC表示GrabCut的分割能量项;EP表示部件能量项;EC表示一致性项,且是分割能量和部件能量交互的桥梁,负责惩罚两者不一致的情况;超参数P=[p1,p2, … ,pn],用于指示每个像素在部件假设中的类别,即是属于部件还是属于背景;w是根据P进行初始化的,如果zi代表的像素是属于部件的,那么wi就会被初始化为1,否则为0;α和β是2个正的常数,用于平衡各个能量项。 这里,GrabCut能量项写作:

其中,D是高斯概率分布的负对数;V是平滑项;C是所有相邻像素的索引;γ是一个常数;I是图像中所有像素的索引。研究得到部件能量项的定义为:

这里,如果一个像素在部件假设的记录中是属于部件的,但是又被分割结果s归类为背景,那么则称这个像素为不一致像素。dif(.)返回I中所有不一致像素的索引。据此,一致性能量项可以定义为:

其中,U表示的补集,而这两者的并集是I。研究中将通过交替更新分割的输出和部件假设来最小化这个目标函数。本节分割方法的示意图可见图3。

图3 基于部件检测的分割示意图Fig.3 Illustration of the part-aware segmentation

2.2 分割优化

上文的目标函数可以按照如下的方法优化,即:固定部件假设w,更新前景分割s,而后反过来,如此交替,直到目标函数的值不再有大的变化。对此可展开论述如下。

2.2.1 更新部件假设w

固定前景分割结果s,则分割能量项EGC可以被忽略,目标函数变为:

由于式(5)的最后一项不依赖于w,所以式(5)可以写成:

研究选择合适的α和β, 使得α-βDi(si;zi) 总为一个正值。因此式(6)可以看成是一个w的单调递增函数。同时,限定每次迭代中,每个wi的变化量或者是0、或者是一个正常数λ。 当wi减小到接近于0时,可将其设为0并更新超参数Pi,使得Pi不再属于部件类、而是属于背景类。这种做法的研究目的是,只要部件假设和分割的结果不符合,那么减少被错误分到背景的部件的像素属于前景的概率。从而可以保证最终的分割结果对于一些不准确的部件检测结果造成的误差具有一定的宽容性。

2.2.2 更新前景分割s

固定w,则部件能量项EP项可以忽略。目标函数变为下面的形式:

与那些被正确分割了的像素不同,式(7)总是尽量使得不一致像素的系数变小,相当于鼓励分割算法将不一致像素被分类为前景。需要指出,式(7)仍然可以使用GrabCut的优化方法进行求解,这里不再赘述。

总之,研究按照如下步骤来优化式(1),具体流程可描述为:

(1)根据式(6)优化部件假设w。

(2)根据w更新超参数P。

(3)重新估计混合高斯颜色模型。

(4)根据式(7)优化前景分割s。

算法的收敛性依赖于部件假设和GrabCut的分割前景假设是否达到一致。从前述分析容易看出,两者的不一致性是由不一致像素引起的。如果部件假设中属于部件的所有像素在分割假设中被归类为前景,由此就可达到保留这些部件的目的。即不存在不一致像素,算法已经收敛。本文的算法将设计为交替更新部件假设和分割的前景假设,这也是一个不断减少不一致像素的过程。当然,如果2个假设的不一致性小于一个阈值或者已经达到最大的更新次数,此时也可认定算法已经收敛。

3 实验结果与分析

研究在 CUB-200-2011[7]鸟类数据集中和Stanford Dogs[8]数据集测试了本文的分割方法,这2个数据集是细粒度视觉分析领域的基准数据集。实验部分将考虑2个方面的性能:细粒度图像分割和细粒度分类。研究内容可分述如下。

3.1 数据集和参数设置

CUB200-2011数据集包括200种鸟类的11 788幅图像,并附有每幅图像的真实分割掩膜、类别标签、部件位置坐标、图像的最小边界框,二值化特征属性等信息。尽管研究者已经对该数据集进行了数目可观的研究,但是其样本表现出巨大的姿态、光照、尺度变化,仍然使得该数据集成为细粒度视觉分析领域最具挑战性的数据集之一,而且也还有大量的研究在将其拟定用于诸如细粒度分类等一系列任务中。在本文实验中,研究使用数据集提供的最小边界框进行弱监督和无监督的部件检测,然后使用基于部件检测的分割方法对图像中的物体进行分割。

Stanford Dogs数据集具有两倍于CUB鸟类数据集的样本数量,分别为120类狗,收集了20 580个样本图像。尽管该数据集为每一类提供了更多的样本,但是由其整合的标注信息要少于鸟类数据集,仅仅包括有图像标签和最小边界框。更值得注意的是,狗相比于鸟类有着与人类的更多交互,比如前者可能会穿着衣服或者佩戴玩具装饰,而这些显然会导致视觉分析中更多的遮挡和视觉混淆等问题。另外,因为该数据集没有提供真实的图像分割掩膜,就使得在该数据集上只能通过分类性能来衡量本文方法的效果。

3.2 实验结果与分析

3.2.1 部件检测

给定CUB200-2011数据集中真实的部件位置标注,研究将其与本文的部件检测方法进行对比,以验证本文方法的有效性。文中选择了在鸟类分类中比较重要的3个部件(背部、后颈部和腿部)进行实验验证,实验结果见图4。实验得到的检测误差是通过计算本文的检测结果和真实部件坐标的欧式距离得到的。样本的最小物体边界框的尺寸采用这些误差的标准化,标准化的样本误差将会排序用于展示。

图4 部件检测结果Fig.4 Results of part detection

如图4(a)~(c)图像所示,研究中结合了非参数模型和参数模型的部件检测比仅仅使用了非参数传递的方法[4]具有更小的错误率。对比的方法还使用了真实的分割掩膜,而本文方法却并未使用。不准确的部件检测结果会降低前景分割的性能,但是如果研究检测到的部件处在真实部件的邻域内,本文的算法仍有可能得到正确的分割结果。在这种情况下,这个部件检测的结果被看成是正确。文中的实验也展示了邻域大小对检测精度的影响,如图4(d)~(f)所示。对此分析可知,更大的邻域设置能够得到更高的检测准确率。在后续试验中则将选择20像素作为邻域的大小,其对应的部件检测准确率为60%,这是一个同时兼顾了准确率和计算开销的选择。

3.2.2 前景分割实验

研究使用文中的结合参数模型和非参数模型的部件定位方法估计样本图像中部件的位置。CUB鸟类训练集中的真实部件信息被用于训练部件检测子,而对于狗类数据集,研究首先使用无监督的部件发现策略发现一些部件,然后再训练部件检测子。通过使用数据集推荐的训练-测试样本划分,而后对所有样本进行分割,在整个数据集上评价本文提出的方法。试验中,每个图像样本都被缩放到最大边不大于500像素的尺寸。

研究将提出的基于部件检测的细粒度分割方法与基准方法GrabCut[3]、转为细粒度图像的分割方法[2]、最先进的基于深度神经网络的一般前景分割方法[9]做了比较。基于深度网络的方法训练了一个结合图像类别标签和图像边界标签的网络,显著地提高了一般前景分割方法的性能。综上各种方法的分割结果即如图5所示。

图5 分割结果Fig.5 Results of segmentation

同时,图5还给出了文中部件检测的结果、以及部分数据集附带的真实分割掩膜。由图5中可以看出,本文的方法能够保留一些具有语义的部件,但是GrabCut和Chai等人的方法[2]都倾向于丢弃这些重要部件。另外,本文方法通过使用部件检测结果初始化分割的颜色模型,在相当程度上减少了错误的初始化带来的分割错误,而Jain等人的方法[9]的分割结果则包含了太多的背景噪声。

不仅如此,本文还研究了一些分割失败的例子,各实例运行结果如图6所示。其中有一些是由于错误的部件检测而引起的。可以看出,这些例子中杂乱的背景十分容易对前景的检测和分割造成干扰,而本文的对比方法在这种情况下也不能得到良好的结果。

图6 分割失败的例子Fig.6 Some failures of segmentation

为了显示本文分割算法的有效性,研究使用了2种衡量标准,分别是:PASCAL VOC[10]重叠率(Seg.I)和被正确分割的前景像素和背景像素占总体像素的百分比(Seg.II)。

本文分割方法在CUB200-2011数据集上的分割性能见表1。由表1可知,本文方法对比GrabCut在SegI和 SegII两项指标上分别提高了11.1%和9.4%,对于 Chai的方法分别提高了1.9%和0.7%,对于Jain的方法分别提高了5.2%和2.8%。值得注意的是,本文的方法取得了比Jain的基于深度神经网络的分割方法更好的前景分割结果,这也从侧面反映了一般的前景分割方法在细粒度图像分割任务中并不能获得良好效果。这里,计算2个分割指标的时候,是取最小物体边界框之内的图像进行计算的。以上实验基于鸟类数据集而得。对于Stanford狗类数据集而言,研究时未能提供真实的图像分割掩膜,因此并不能够定量地分析各个分割算法的性能。本文将在下一节中对比使用不同分割方法得到的前景图像进行图像细粒度分类的性能评估,以进一步衡量各方法分割的效果。

表1 分割性能比较Tab.1 Comparison of the segmentation methods %

3.2.3 细粒度分类实验

从认知上来说,基于部件检测的分割方法能够更多地保留对于图像细粒度分类具有重要意义的部件,从而改进分类的效果。本文的目标是为图像的细粒度分类系统提供一个通用的分割方法,因此并没有选用那些带有特别设计的图像细粒度分类系统来验证文中算法的分割效果,这是因为要考虑到通用性方面的问题。文中专门选用了最为常用的基于视觉单词词袋的分类方法BOW[11]。该方法对底层视觉特征进行编码得到直方图向量,对于复杂背景表现出较强的鲁棒性并且在没有任何结构先验的情况下能够取得较为理想的分类效果。而且,文中提取了图像的SIFT、dense SIFT和color name三种特征作为图像的描述子。其中,又分别为2种SIFT类的特征分别学习了2个由8 000个视觉单词组成的字典,为color name特征学习了由800个视觉单词组成的字典。故而,研究最终得到的特征编码是一个16 800维的向量。

该数值就在CUB200-2011鸟类数据集上使用不同的分割方法获得图像进行图像细粒度分类的结果将如图7所示,该数值就是前r个排序结果中出现正确分类的准确率。首先,从所有r的取值对应的结果来看,前景分割明显有利于细粒度分类准确率的提高。究其原因即在于前景分割减少了背景噪声对特征提取和识别的干扰,故而使得所有的分割方法在准确率方面都超过了不使用分割而直接分类的方法。进一步分析可知,当r的值增大时,使用GrabCut的方法在准确率上已经渐渐地不再逊色于文献[2]的方法。这是因为尽管文献[2]的方法在减少背景噪声方面表现出色,但是也同时丢失了许多具有判别力的部件。如此推理也意味着随着r的增大,保留越多的部件,就可得到更高的分类准确率。文献[9]的方法表现比较稳定,但是在某些情况下却表现欠佳,因为该方法并没有如其它方法那样对细粒度分类对象的结构,比如部件进行探究。该方法常常在前景中包含了较多的背景噪声,一定程度上损害了分类的性能。

图7 CUB200-2011分类结果Fig.7 Classification results on CUB200-2011

此外,在Stanford Dogs狗类数据集上使用不同的分割方法获得图像进行图像细粒度分类的结果即如图8所示,相关设置和鸟类数据集一样。但是该数据集的样本却表现出更多的遮挡和混淆,因为狗和人类有更多的交互行为,这也在一定程度上对分类性能造成影响。由图8中可以看出,本文的方法在各种情况下的准确率都高于其它方法,因此就证明了本文研究引入部件检测以保留重要部件和优化初始分割颜色模型的有效性。

图8 Stanford Dogs分类结果Fig.8 Classification results on Stanford Dogs

4 结束语

本文提出了一种基于弱监督的部件检测的细粒度图像分割方法。该方法利用部件检测得到的部件假设来指导前景分割,从而保留更多的对细粒度分类有用的部件,提升细粒度分类的性能。研究设计了一种基于弱监督的部件检测方法,该方法使用数据集训练样本的部件标注训练了一个结合参数模型和非参数模型的混合型部件定位模型,而后便可以在任意的查询图像中自动检测定位预先定义的具有语义信息的部件。基于上述部件检测的分割算法则是最大程度地利用了部件假设来指导细粒度图像的前景分割,以求保留检测到的对细粒度分类具有重要作用的部件。本文的分割算法在GrabCut自动分割的基础上增加了部件假设能量项和一致性能量项,部件假设项及其相关的像素类别超参数能够不断修正部件假设,达到迭代优化的效果。实验证明了本文方法的有效性,在分割和分类性能上超过了基准方法GrabCut、转为细粒度分类设计的分割方法以及先进的基于深度学习的一般图像分割方法。

猜你喜欢
细粒度部件前景
农业好前景 品牌来引领
我国旅游房地产开发前景的探讨
奥迪e-tron纯电动汽车的高电压部件(下)
一种陀飞轮表的双秒轮结构
现代汉字的两种分析法与国家文字规范(四)
离岸央票:需求与前景
在线评论情感分析研究综述
基于型号装备?角色的IETM访问控制研究
基于web粒度可配的编辑锁设计
古文字中“口”部件的作用研究