第八章:将自下而上、自上而下和平滑性线索结合起来进行弱监督图像分割

news2024/11/15 19:55:41

0.摘要

        本文解决了弱监督语义图像分割的问题。我们的目标是在仅给出与训练图像关联的图像级别对象标签的情况下,为新图像中的每个像素标记类别。我们的问题陈述与常见的语义分割有所不同,常规的语义分割假设在训练中可用像素级注释。我们提出了一种新颖的深度架构,它融合了三个不同的计算过程,用于语义分割,即:(i)在CNN中进行自下而上的神经激活计算,用于对对象类别进行图像级别预测;(ii)在给定预测对象的情况下,估计CNN激活的条件概率,从而产生每个对象类别的概率注意力图;(iii)在同一层的相邻神经元之间进行横向注意力消息传递。通过条件随机场作为循环网络,将(i)-(iii)的融合实现为生成平滑且保持边界的分割。与现有工作不同的是,我们统一了我们深度架构的所有组件的端到端学习。在基准的PASCAL VOC 2012数据集上的评估表明,我们优于合理的弱监督基线和最先进的方法。

1.引言

        本文解决了在弱监督条件下的语义图像分割问题。给定一张图像,我们的目标是为每个像素分配一个对象类别标签。我们通过仅使用图像级别的类别标签(即图像标签)从训练图像中学习对象的信息。我们的问题与之前的工作中常见的全监督语义分割问题不同,全监督语义分割问题通常在训练中提供了像素级别的真实对象类别注释。

        语义图像分割具有挑战性,因为图像中的对象可能以各种姿势出现,在部分遮挡下,并且背景混乱。这是一个长期存在的问题,在训练中使用真实的像素级标签,已经有很多成功的方法来解决这个问题[22,14,27,11,3,7,12]。由于这种假设,很难将之前的工作扩展到其他广泛的领域,这些领域没有提供像素级别的注释,或者提供的监督信息不足以进行强大的学习。

        为了减少训练中所需的监督级别,最近提出了用于语义图像分割的弱监督卷积神经网络(CNN)[24,25,28,26,45,29,18,41,4,30,36]。这些方法仅在训练中使用图像标签。其中大部分方法在多实例学习(MIL)框架内进行分割,这可以确保像素标签与预测图像标签一致,因为后者的预测可以用于根据可用的图像级别真实标签指定损失,并以此方式训练CNN模型。

        受到这些方法的成功启发,我们也从一个CNN开始,旨在完成两个任务:像素标注和预测图像类别-其中在训练数据上的图像分类结果用于进行端到端的基于MIL的学习。具体而言,我们使用DeepLab网络[7]进行像素标注,并使用另一个全连接层进行图像类别预测。然后,我们扩展了这个框架,以融合自顶向下、自下而上和平滑性的视觉线索,以实现更准确的语义分割,如图1所示。我们的扩展旨在解决我们在相关工作的分割结果中观察到的以下两个问题:(1)对象的定位不准确;(2)对象边界的保留和平滑性在真实空间范围内受到限制。

        为了生成保持边界的分割结果,我们将CNN预测的像素标签和图像的原始像素传递给一个全连接的条件随机场(CRF)。具体来说,我们将CRF实现为一个循环神经网络(RNN),并将其称为CRF-RNN。我们的CRF-RNN对初始CNN的预测进行了细化,使得像素标签更好地适应输入图像中的图像边缘。重要的是,我们的基于CRF的分割细化不是像相关工作[24,25,29,18]中的独立后处理步骤,而是我们端到端训练的深度架构的一个组成部分。由于CRF-RNN试图尊重图像边缘,它的输出可能容易出现过分分割的情况。

        为了避免过度分割,并且改善对象的空间范围内的平滑性,我们将我们的CNN用于第三个任务,即预测识别图像类别的自顶向下的视觉注意力图。我们将对象类别的视觉注意力图指定为CNN对该类别的神经激活的空间矫正高斯分布[34,16]。这扩展了最近的方法[44],该方法使用马尔可夫链来建模神经激活的父子依赖关系以估计注意力图,因为我们通过考虑CNN中三种类型的神经依赖关系(i)从父到子;(ii)从子到父;(iii)在同一CNN层中相邻神经元的激活之间)来估计矫正的高斯分布。重要的是,我们使用相同的CNN来计算注意力图,这与相关工作不同,相关工作使用外部网络来估计对象种子。

        如图1所示,我们的方法迭代地进行以下操作:(i)将CNN和CRF-RNN产生的自下而上的过分割图与CNN估计的自顶向下的注意力图进行融合,然后(ii)使用CRF-RNN对融合的像素标签预测进行细化,生成最终的分割图。注意力图表示对分类至关重要的具有鉴别性的对象部分,而分割图则捕捉到对象的空间范围。我们采用了相关文献中使用的自顶向下和自下而上处理的相同定义[5,20,16],其中自下而上的过程从像素预测对象类别,而自顶向下的过程在自下而上的过程预测的对象类别的条件下,预测图像中的注意力图。我们的深度架构的所有组件都通过估计图像分类损失和分割“损失”进行端到端的训练。在训练中,使用一个全连接层(FCL)从像素标签预测中预测图像类别。这进一步生成图像分类损失,该损失通过FCL、CRF-RNN和CNN进行反向传播,学习所有网络参数。关于分割“损失”,我们在这里稍微滥用了常见的损失定义,因为我们没有给出地面真值分割。我们将分割“损失”估计为注意力图和自下而上分割中像素标签的两个概率分布之间的距离。分割“损失”通过CRF-RNN和CNN进行反向传播,并用于规范化图像分类损失。

        在基准PASCAL VOC 2012数据集上的评估表明,我们的方法胜过了合理的弱监督基线和最先进的方法。我们的贡献包括:•新的深度架构,融合自顶向下的注意力和自下而上的分割,并通过细化分割来保持边界。该架构是统一的,不使用外部网络,也不进行后处理。•使用矫正的高斯分布对视觉注意力图进行新的建模,该分布考虑了CNN中父节点、子节点和相邻神经元之间的激活之间的统计依赖关系。

        接下来,第2节回顾了相关工作,第3节详细说明了我们的自下而上像素标签和对象识别聚合方法,第4节阐述了我们的自顶向下注意力估计方法,第5节描述了我们保持边界的分割细化方法,第6节解释了两个损失函数和我们的学习方法,第7节呈现了我们的结果。

图1:概述:给定一张图像,我们使用CNN计算每个对象类别的自下而上分割图(蓝色链接表示自下而上计算)。这些像素级的预测通过一个全连接层(FCL)进行对象识别的聚合。同样的CNN用于每个识别的对象类别的自顶向下注意力图的估计(红色链接表示自顶向下计算)。最后,自下而上和自顶向下的线索在CRF-RNN中进行融合和迭代细化,以改善对象边界的定位和最终分割的空间平滑度(黑色链接表示融合和细化计算)。在学习过程中,我们通过反向传播图像分类损失来对训练图像中的FCL输出进行学习。这个学习过程通过弱监督的分割“损失”进行规范化,该损失估计了注意力图和自下而上分割中像素标签的两个概率分布之间的距离(灰色链接表示所有组件的端到端训练)。

2.先前的研究工作

        弱监督语义图像分割已经通过图形模型和参数化结构化预测模型进行了研究[39,40,9,45,21]。这些方法通常利用关于空间平滑性的启发式信息(例如基于相邻像素之间的相似性[39]),需要预处理提取超像素[40],或使用弱分割先验[9]。最近,基于CNN的方法[28,25,24,4,41]通过通常考虑多实例学习(MIL)来迭代地增强其输出分割与地面真实图像标签一致,已经显示出更好的性能。MIL框架可以通过广义期望或后验规则化来扩展,以在域约束下最大化模型参数的期望[25]。

        为了提高性能,一些最近的方法[28,24,4,41]试图通过运行对象提议的检测器[1,10]来初始化对象定位。然而,这增加了监督的程度,因为对象提议检测器需要边界框注释或对象边界注释进行训练。此外,使用基于注意力的对象定位已经被证明可以改善弱监督分割[29,18,15,30]。然而,这些方法通常依赖外部网络来计算注意力线索[18],或者从自下而上的神经激活中估计前景掩码(类别非特定)[29]。最近的工作[44]通过估计自上而下的马尔可夫链来计算注意力图,但这项工作没有考虑弱监督分割。我们通过使用矫正的高斯分布来扩展[44]的马尔可夫链公式,用于对视觉注意力图的建模,从而改善了每个对象类别的注意力图的空间平滑性。

        将自上而下和自下而上的线索结合起来用于图像分割和其他视觉问题是一个经常出现的研究课题;然而,这两个线索通常在不同的阶段计算[5,6,20,42]。最近的方法[16]使用矫正的高斯分布将这两个计算过程结合在一个单一的CNN中,用于人体姿势估计。但是他们的CNN是在全监督下训练的。虽然我们解决了一个不同的视觉问题,但关键的区别在于我们矫正的高斯的协方差矩阵不是二值的,而是根据视觉外观进行估计,并且我们的自顶向下的注意力线索在预测的对象类别的条件下具有语义上的意义。

3.自下而上的计算过程

像素标注。给定一张图像x,我们使用具有大场景视野的DeepLab网络[7]生成像素标签y={yi},其中yi∈Y是来自对象类别集合Y的第i个像素的对象类别标签。具体而言,我们通过计算每个像素i的每个对象类别y∈Y的输出得分fi(y),生成K=|Y|个分割图。像素级的得分通过标准的softmax操作进行归一化,以估计相应的后验概率,如下所示:

        因此,我们将使用简写符号pSi(y)来表示pSi(y|x),即自下而上的分割预测。

聚合。上述像素级的对象预测得分然后被聚合用于对象识别,即预测图像x中出现的对象类别集合Yx。文献中提出了许多启发式方法来进行这种聚合,包括全局最大池化(GMP)[23]、全局平均池化(GAP)[47]、对GMP和GAP进行平滑组合的对数和指数测量(LSE)[28],以及全局加权排序池化(GWRP)在聚合中偏好于地面真实对象的高分数并抑制其他对象[18]。我们不使用这些启发式方法,而是使用全连接层(FCL)从像素级得分中估计图像级得分,然后与我们方法的其他组件一起训练FCL。给定K个像素级得分的图{fi(y):i,y∈Y},FCL输出K个归一化的对象得分{p(y|x):y∈Y}。为此,每个分割热图{fi(y):i}都与表示对象类别y的相应输出单元进行全连接。

4.自下而上的计算过程

       本节解释了如何为每个对象类别估计自上而下的视觉注意力图,然后将其用作改善对象定位和减少自下而上像素标注中的过分分割的上下文线索。在估计概率视觉注意力图方面,我们遵循了众多研究工作[38,17,35]以及最近对神经激活进行可视化的方法[43,32,2,44]。我们使用自上而下的计算过程来估计我们CNN每一层的神经激活的概率视觉注意力图。我们的自上而下估计是逐层进行的,从用于对象识别的FCL的输出层开始,如第3节所述。为了提高效率,与[44]类似,我们将自上而下的计算停止在pool-4层,并将该结果放大到图像大小,以获得与K个对象类别对应的所有像素上的K个概率视觉注意力图。

        我们将第l层第i个神经元对于对象类别y的视觉注意力定义为该神经元激活al i在图像中预测y的相关性,表示为p(al i|y)≥0。第l层所有神经元的视觉注意力图被定义为一个随机变量向量:pl(y)=[...p(al i|y)...]⊤,由修正的高斯分布[34,16]控制:

        我们使用简写符号 p = pl(y) 表示矩阵 D = Dl = [δii l ′] 捕捉同一层 l 中相邻神经元激活之间的依赖关系的强度,而 b = bl(y) 表示层 l 和下一层 l - 1 中神经元激活的父子依赖关系。根据设计,我们保证 δii l ′ < 0,因此负的 -D 是一个共正矩阵,即 -p⊤Dp ≥ 0,对于 p 0。δl ii δl ii' 的计算如下所述。根据 (2),pl(y) 的计算等同于修正高斯分布的最大后验估计,而这又可以被表述为具有非负约束的二次规划问题。

        负矩阵 -D 的共正性质保证了二次优化在 (3) 中的收敛性[16,34]。给定我们的卷积神经网络,我们按照自顶向下、逐层地计算 (3) 中的二次规划问题,直到 pool-4 层为止。前一层 l-1 的结果被用来定义参数 bl(y),因为它们捕捉了神经元激活的父子依赖关系。最后,对于 pool-4 层,估计的 pl(y) 被放大到图像尺寸,然后在对象类别上进行归一化,以便在每个像素上生成一个合适的概率分布。

        与最近的工作[44]相比,该工作仅考虑神经元激活的父子依赖关系,即 p(al i|y)=Pj p(al i|al j−1)p(al j−1|y),我们在一定程度上增加了计算时间,但显著改善了注意力图,使其能够很好地覆盖对象的真实空间范围。在本节的剩余部分,我们定义了修正高斯的参数 bl(y) 和 D。如图2所示,每个 p(al i|y) 都依赖于神经元的激活情况:

 

        其中 zi = (xi, yi) 是像素的位置,ri 是HSV颜色直方图,σz = 10 和 σr = 30 控制敏感度。然后,我们对双边相似性进行归一化,并定义:

        请注意,δl ii δl ii' 只取决于图像,而不取决于对象类别的预测,因此可以预先计算以提高效率。请注意,在 (8) 中,wii = 1,wii' > 0: i 6= i',这意味着在 (9) 中 δii' < 0。因此,矩阵 -D 是共正的,这保证了二次优化在 (3) 中的收敛性。回想一下,注意力图用于计算分割损失,该损失在学习过程中通过网络进行反向传播(图1)。

 图2:(左)之前的工作[44]使用自顶向下的马尔可夫链来估计注意力图。(右)我们还考虑了同一层的邻近神经元激活,以改善基于对象的平滑度估计注意力图。

 图3:CRF均场推理的单步骤实现,实现为一堆叠卷积层。均场迭代代表了一个循环神经网络。

5.细化计算过程

        由于CNN中的连续池化,由(1)给出的初始像素标签pS i (y|x)很可能会产生粗糙的分割图,对象边界的检测效果较差。为了解决这个问题,我们将初始的粗糙分割图与估计的视觉注意力图和输入图像一起传递给CRF-RNN [19, 46],以进一步细化分割。我们考虑一个全连接的CRF,其像素级类别分配y = {yi}的能量定义为:

 一元势能。为了初始化我们的分割优化,在每个像素i处,我们结合上行的视觉注意力pA i (yi)(由(4)给出)和下行的分割pS i (y|x)(由(1)给出),计算相应的一元势能φ(yi),即:

        在(11)中,我们使用视觉注意力pA i (yi)作为像素级先验(PLP)来进行分割。我们的动机来自于现有的弱监督分割工作,这些工作考虑了图像级先验(ILP),例如图像级对象预测得分,用于优化他们的分割[28,31,39]。ILP已被证明通过减少假阳性来改善弱监督分割。我们在(11)中的公式扩展了这项工作,因为我们在每个像素上驱动的注意力先验似乎比图像级先验更适合分割。与ILP不同,我们的PLP融合了有关对象位置的线索。

成对势能。我们根据双边权重wii'(由(8)给出)定义成对势能,以确保我们的分割优化遵守对象边界:

        其中µ(yi, yi′)是标签兼容性,旨在估计类别yi和yi′在像素i和i′处共存的可能性。注意,µ(yi, yi′)在不同的像素位置上变化。它被实现为一个卷积层,并且通过在第6节中指定的分割“损失”进行学习。

CRF推理。根据[19,46]的方法,我们将CRF推理作为一系列的平均场迭代进行。如图3所示,每个平均场估计对应于沿着一系列卷积层的前馈神经处理,其结果被反馈用于另一次迭代。因此,平均场迭代表示一个递归神经网络。注意,我们的CRF推理以pS和pA作为输入,根据公式(11)计算每个像素i和所有K个对象类别的φ(yi)。在第一次迭代中,将一元势能的软最大得分视为边际概率以初始化解决方案。在随后的迭代中,边际概率被估计为CRF-RNN输出的软最大得分。给定前一层输出,双边滤波器响应从输入图像中计算出来。与[46]不同的是,我们考虑固定的双边核,因为它们不能在没有像素级监督的情况下可靠地学习。标签兼容性µ(yi, yi′)是通过应用1×1卷积滤波器来估计的,其具有K个输入通道和K个输出通道,用于K个对象类别,给定双边响应。最后,给定估计的φ(yi)和ψ(yi, yi′),将组合的CRF势通过软最大操作传递,以生成下一个CRF-RNN迭代的归一化分割得分。

6.端到端学习和损失函数

        我们的方法的所有组件都是以端到端的方式进行学习的,只使用了地面真实图像标签。为了在学习中使用这种图像级监督,我们的方法将训练图像上预测的像素标签聚合到对象识别中,这反过来可以用于估计分类损失∆C。为了训练CRF-RNN和我们的初始分割器DeepLab网络[7],我们另外使用了一个对象分割“损失”∆S,该损失相对于在训练图像上估计的视觉注意力图进行定义,因为我们无法访问像素级注释。因此,在我们的学习中,我们反向传播以下损失:

 分类损失是根据Sec.3中指定的用于图像级对象识别的FCL输出聚合函数p(y|x)来定义的。

 其中,Yx表示训练图像x中存在的地面真实对象类别的集合,Y¯x = Y \ Yx表示已知不存在的类别的集合。∆C惩罚FCL对于在训练图像中被注释为存在的对象的低预测得分,并对于其他对象给出高得分。

对象分割损失定义为惩罚估计的分割与视觉注意力图之间的任何差异。∆S被定义为在训练图像中被注释为存在的对象y ∈Yx的两个预测分布pS和pA之间的距离:

        其中N表示像素的数量。值得注意的是,在我们的方法中,视觉注意力以两种不同的方式使用,即用于计算单个图像上CRF-RNN推理的一元势能,以及用于在训练图像的小批量学习中估计∆S。因此,我们方法中的这两种对视觉注意力的使用并不多余,正如我们的实验证明的那样。

7.实验

        在本节中,我们首先描述了我们的实验设置,然后呈现了结果。

数据集。我们在PASCAL VOC 2012数据集上评估我们的方法,这个数据集通常被认为是弱监督分割基准[25,28,29,18]。该数据集包含21个对象类别,包括背景。我们遵循标准的实验设置,将图像分为三组:1464个训练图像,1456个测试图像和1449个验证图像。按照通常的做法,我们在训练时考虑额外的trainaug集合[18,36],并在验证和测试集合的图像上评估我们的方法。我们考虑使用标准的PASCAL VOC分割指标,即平均交并比(mIoU)比率,也称为Jaccard指数。

实现细节。我们考虑使用具有大视野的DeepLab网络[7]进行图像分割。DeepLab采用VGG-16网络[33]进行分割,通过用卷积层替换全连接层。给定输入图像,DeepLab生成与每个对象类别相对应的粗糙热图。网络使用带动量的次梯度下降进行训练。我们考虑批大小为20个图像,动量设置为0.9。学习率初始设为0.001,并在每2000次迭代中缩小10倍。我们训练网络进行10000次迭代。整个训练过程在Nvidia Tesla k80 GPU上大约需要10小时,与[25,24]相当。在推理过程中,我们首先计算特定对象的注意力图,然后将其视为基于注意力的PLP。基于注意力的PLP用作CRF-RNN层中的一元势能。虽然在推理过程中无法获得图像级别的标签,但可以基于完全监督的图像分类对可靠的对象预测进行估计注意力图。对于学习和推理,我们将CRF-RNN应用于三次迭代,因为额外的迭代对最终性能没有显著影响。

基线。为了证明我们方法的各个组成部分的重要性,我们定义了以下基线。与基线的比较结果如表1所示。

B1:没有自上而下的注意力(无att)。在这个基线中,我们忽略了我们方法中的自上而下的注意力线索。由于没有注意力线索,无法计算分割损失,因此只使用分类损失来学习分割网络。请注意,没有注意力线索,很难在图像中定位对象。表1中的结果表明,忽略自上而下的注意力线索对性能有显著影响,这证明了在弱监督分割中注意力线索的重要性。

B2:没有分割损失(无seg损失)。在这个基线中,我们忽略了基于注意力图计算的分割损失。没有分割损失,注意力线索仅在CRF-RNN层的一元势能中考虑,如(11)中定义的那样。如表1所示,分割损失对于弱监督分割很重要,因为它在学习分割网络和CRF-RNN时是必需的。

B3:没有基于注意力的一元势能(无att一元)。在这个基线中,我们不在CRF-RNN层的一元势能中考虑注意力线索。因此,注意力线索仅通过损失函数(15)在分割框架中进行考虑。表1中的结果表明,在CRF一元势能中考虑注意力线索可以提高整体性能。

B4:没有考虑注意力中的邻居依赖(无neighbor)。在这个基线中,我们在计算注意力图时忽略了邻居神经元之间的依赖关系(即(9)中的δii l')。因此,我们只考虑父子依赖关系来计算注意力图,就像[44]中所示。如表1所示,如果不考虑注意力估计中的邻居依赖关系,性能会较差,因为这些依赖关系提供了关于对象的平滑性和边界的线索。

B5:没有CRF-RNN层(无CRF-RNN)。在这个基线中,不是将CRF-RNN层应用于细化分割图,而是执行基于密集CRF的后处理[7]。没有CRF-RNN层,标签的兼容性或对象类之间的共现关系(即(12)中的µ(yi,yi′))无法学习。从表1中我们可以看出,考虑CRF-RNN层比基于CRF的后处理能够获得更好的性能。

B6:在推理中没有注意力线索(无att推理)。在这个基线中,我们忽略了注意力线索,在推理过程中计算CRF一元势能。回想一下,注意力线索可以被视为像素级先验,对于在图像中定位对象非常重要。因此,在推理过程中忽略注意力会导致更差的整体性能(表1)。

使用图像级别注释与最先进方法的比较。我们在PASCAL 2012验证集和测试图像上与最先进的方法进行比较。我们的方法仅使用图像级别标签进行学习。因此,为了公平比较,我们将与仅考虑图像级别注释作为弱监督的方法进行比较。由于基于注意力的定位线索,我们不需要依赖额外的监督,如目标提议[28],图像裁剪[24]或对象尺寸[25]。在PASCAL验证集和测试集上的结果分别显示在表2和表3中,我们在mIoU指标方面超过了最先进的方法。

与具有额外注释的最先进方法的比较。一些方法考虑额外的低成本监督来促进弱监督分割。例如,MIL+ILP+SP-bb[28],MIL+ILP+SP-seg[28],SN-B[41]使用对象定位线索,使用MCG对象提议[1]或BING边界框[10]。EM-Adapt的变体[24]和CCCN[25]考虑多个图像裁剪以增加监督数量。[4]使用了额外的“点击每个对象”的注释,CCCN+size[25]考虑了额外的1位监督,即对象的大小(大或小)。直接与这些方法进行比较是不公平的,但为了完整性起见,我们在表4中总结了上述方法的结果。

聚合方法的评估。请注意,我们考虑了一个全连接层(FCL),它被学习用于将逐像素的预测聚合成图像级别的对象预测分数。我们将FCL与其他聚合方法进行了比较,如GMP [23],GAP [47]和LSE [28],LSE是GMP和GAP的平滑组合。尽管考虑FCL层会增加学习中的参数数量,如表5所示,我们提出的FCL明显优于其他基于启发式的聚合方法。

定性结果。在图4中,我们展示了在PASCAL 2012验证集上的定性结果。我们的方法在大部分情况下能够正确地定位图像中的对象,并且保持对象的边界。图5中展示了一对失败案例,我们的方法未能检测到图像中的“飞机”,这是由于它与训练数据中其他“飞机”实例的外观不同。在第二个案例中,我们的方法未能检测到图像中的一些“人”实例和“瓶子”。我们认为这是由于图像中小物体(例如瓶子)缺乏注意力线索所导致的。请注意,即使在完全监督的情况下,分割小物体也是具有挑战性的[8]。

表1:根据mIoU指标(%)与PASCAL 2012验证集和测试集上的基准方法进行比较

表2:根据mIOU指标(%)与PASCAL 2012验证集上的最先进方法进行比较

表3:根据mIOU指标(%)与PASCAL 2012测试集上的最先进方法进行比较

表4:根据mIoU指标(%)对使用额外监督的方法在PASCAL 2012验证集和测试集上进行比较

表5:根据平均IoU指标(%),在PASCAL 2012验证集和测试集上对FCL与其他聚合方法进行比较

8.结果

        我们提出了一种用于弱监督图像分割的新型深度架构。我们的关键思想是使用同一网络估计和融合自底向上、自顶向下和平滑性线索,以更好地适应物体边界并覆盖物体的空间范围。我们的统一框架由CNN、CRF-RNN和全连接层组成,可以仅使用地面真实图像标签进行端到端训练。在对基准PASCAL VOC 2012数据集的评估中,我们观察到我们的方法可以在不依赖额外监督(如物体提议和图像裁剪)的情况下定位物体。基于外观的相邻依赖关系估计有助于更好地定位物体的完整范围,而不仅仅是部分范围。我们的方法与基线方法的比较证明了注意力线索、CRF RNN平滑和FCL层作为弱监督分割中的聚合方法的重要性。

图4:PASCAL 2012验证集上的定性结果。

图5:PASCAL 2012验证集上的失败案例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/801185.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PSP - MMseqs2 编译最新版本源码 (14-7e284) 支持 MPI 功能 MSA 快速搜索

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/131966061 MPI (Message Passing Interface) 是用于并行计算的标准化和可移植的消息传递接口&#xff0c;可以在分布式内存的多台计算机上运行并行…

操作系统、人工智能、芯片和其它

最近出差一段时间&#xff0c;听到一些事&#xff0c;看到一些事&#xff0c;说点个人观感。有些话可能不好听&#xff0c;还希望不要被平台和谐。   从一位现在微软工作的前同事处得来的消息&#xff0c;微软下一代操作系统Windows 12将深度集成AI&#xff0c;如果再加上的它…

彻底搞懂CPU的特权等级

x86 处理器中,提供了4个特权级别:0,1,2,3。数字越小,特权级别越高! 一般来说,操作系统是的重要性、可靠性是最高的,需要运行在 0 特权级; 应用程序工作在最上层,来源广泛、可靠性最低,工作在 3 特权级别。 中间的1 和 2 两个特权级别,一般很少使用。 理论上来讲,…

redis到底几个线程?

通常我们说redis是单线程指的是从接收客户端请求->解析请求->读写->响应客户端这整个过程是由一个线程来完成的。这并不意味着redis在任何场景、任何版本下都只有一个线程 为何用单线程处理数据读写&#xff1f; 内存数据储存已经很快了 redis相比于mysql等数据库是…

集合---list接口及实现类

一、list概述 1、list接口概述 List接口继承自Collection接口&#xff0c;是单列集合的一一个重要分支&#xff0c;我们习惯性地会将实现了 List接口的对象称为List集合。在List集合中允许出现重复的元素&#xff0c;所有的元素是以一种线性方 式进行有序存储的&#xff0c;在…

在linux中怎样同时运行三个微服务保证退出时不会终止

前言 1.maven中打jar包 使用插件打包,必须在pom.xml中添加插件,否则不能在linux中编译运行 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version&g…

RISC-V公测平台发布 · 第一个WEB Server “Hello RISC-V world!”

RISC-V公测平台Web Server地址&#xff1a;http://175.8.161.253:8081 一、前言 Web Server是互联网应用的基础设施&#xff0c;无论是用户访问网站&#xff0c;还是后端服务提供商和开发者构建各种应用程序&#xff0c;Web Server都在其中扮演着至关重要的角色。 显而易见…

甄品焕新 | 链接上下游企业服务协同,改变服务获取方式

文/玉娇龙 本文字数&#xff1a;3500&#xff5c;预计3分钟读完 使用燕千云上下游服务管理&#xff0c;你可以统一管理IT服务供应商、业务经销商、客户等业务伙伴的服务往来&#xff0c;将企业与上下游公司之间的工单服务往来进行统一管理、共享与升级&#xff0c;实现服务共享…

jmeter接口测试、压力测试简单实现

jmeter测试的组件执行顺序&#xff1a; 测试计划—>线程组—>配置元件—>前置处理器—>定时器—>逻辑控制器—>取样器—>后置处理器—>断言—>监听器 组件的作用范围&#xff1a; 同级组件同级组件下的子组件父组件 目前市面上的三类接口 1、基…

netty 809协议

netty 809协议 目录概述需求&#xff1a; 设计思路实现思路分析1.netty 809 协议2.概念代码 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy&#xff0c;skip hardness,make a better result,wait for chan…

ad+硬件每日学习十个知识点(15)23.7.26 (逻辑器件、拉电流和灌电流、OC门和OD门、总线保持)

文章目录 1.逻辑器件介绍2.什么是总线缓冲器&#xff1f;3.逻辑器件按功能分类4.逻辑器件按工艺分类&#xff08;目前主要用CMOS逻辑&#xff09;5.什么是总线保持&#xff1f;6.逻辑电平7.两个逻辑器件互连&#xff0c;需要满足什么要求&#xff1f;8.什么是推挽&#xff0c;什…

关于自签名证书授权后在哪儿看

目录 firefox可以看到 chrome and edge firefox可以看到 chrome and edge 只能从打开的网站左上角进入

读《全球科技通史》总结——历史总在重演,科技永远向前

今天和大家分享一下吴军老师的《全球科技通史》。大部分人谈到历史的时候&#xff0c;关注的是国家的兴衰、王朝的更替&#xff0c;往往忽视了科技的力量。“文津图书奖”得主吴军博士&#xff0c;从科技视角串联历史&#xff0c;首次以能量和信息两条主线&#xff0c;系统阐述…

【Docker】Docker相关基础命令

目录 一、Docker服务相关命令 1、启动docker服务 2、停止docker服务 3、重启docker服务 4、查看docker服务状态 5、开机自启动docker服务 二、Images镜像相关命令 1、查看镜像 2、拉取镜像 3、搜索镜像 4、删除镜像 三、Container容器相关命令 1、创建容器 2、查…

ad+硬件每日学习十个知识点(9)23.7.20

文章目录 1.正点原子fpga开拓者无gui检查项目2.排针连接器A2541WR-XP-2P3.肖特基二极管反接在LDO的输出端&#xff0c;是什么用&#xff1f;4.在AD中如何实现批量元器件的移动&#xff1f;5.在PCB中&#xff0c;如何让元器件以任意角度旋转&#xff1f;6.接口设计都要做静电防护…

MIT学生揭示ChatGPT完成本科课程存在问题

一个机器学习工程师发推特说&#xff1a;“这太疯狂了&#xff01;”一家专注于人工智能新闻的账号称这是一项“开创性的研究”。这项研究声称&#xff0c;ChatGPT能够以100%的准确率完成麻省理工学院的数学、计算机科学和电气工程本科课程。 它每个问题都答对了。 然而&#…

Spring:泛型依赖注入

Spring 泛型依赖注入问题解决 泛型依赖注入 泛型&#xff1a;具有占位符&#xff08;类型参数&#xff09;的类、结构、接口和方法&#xff0c;通过 <> 的方式定义了一个形式参数&#xff0c;在实例化时再指明具体类型 依赖注入&#xff1a;IoC 的具体实现&#xff0c;…

提升性能的利器:理解线程池的使用、工作原理和优势

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览2.1 为什么创建和销毁线程开销较大2.2 为什么要使…

【C++从0到王者】第十三站:vector源码分析及手把手教你如何写一个简单的vector

文章目录 一、vector的源码分析1.分析思路2.构造函数和插入接口 二、手把手教你写一个简单的vector1.基本结构2.迭代器与私有成员变量的定义3.构造函数4.size和capacity5.迭代器函数接口6.析构函数7.reserve接口8.尾插9.operator[]运算符重载10.简单的测试前面的接口11.insert以…

【Spring框架】Spring读取与存储综合练习

练习 在 Spring 项⽬中&#xff0c;通过 main ⽅法获取到 Controller 类&#xff0c;调⽤ Controller ⾥⾯通过注⼊的⽅式调⽤ Service 类&#xff0c;Service 再通过注⼊的⽅式获取到 Repository 类&#xff0c;Repository 类⾥⾯有⼀个⽅法构建⼀个 User 对象&#xff0c;返…