多边形对象标注***和方法以及训练对象标注***的方法
技术领域
本说明书总体上涉及对象标注,特别是多边形的对象标注。
背景技术
有关图像中的结构或对象的详细推理对许多计算机视觉应用程序很有帮助。例如,在自主驾驶域中,定位并勾勒出所有汽车、行人以及各种静态和动态对象的轮廓通常很关键。对于制图,通常需要从航空或卫星影像中获得建筑物和道路的详细足迹,而医学和保健域通常需要使用自动方法来精确地勾勒出细胞、组织和其他相关结构的轮廓。
神经网络有时是在具有挑战性的影像中推断语义和对象实例分割信息的有效方法。通常,网络在训练期间看到的数据量和种类会极大地影响其在运行时的性能。然而,收集基准真相实例掩模可能是非常耗时的任务,诸如需要人类标注者在图像中的每个对象上花费20-30秒。
由于对象实例分割进行手动标注可能很耗时,因此某些方法试图使用交互式技术来加快此过程。在一些方法中,使用随意画图(scribble)对前景和背景的外观进行建模,并经由图切割(graph-cut)进行分割。一些方法在对象和背景上都使用了多个随意画图,并已用于标注视频中的对象。
在一些方法中,使用随意画图来训练卷积神经网络(‘CNN’)以进行语义图像分割。在一种称为GrabCut的方法中,利用了标注器提供的2D边界框,并使用最大期望值法(‘EM’)进行了像素级前景和背景标记。在一些方法中,GrabCut与卷积网组合以标注影像中的结构。在一些方法中,通过利用用户提供的3D边界框内的3D点云来对汽车进行像素级分割。
对象实例分割的许多方法都在像素级别上进行。许多方法依赖于对象检测,并使用框方案上的卷积网来进行标记。尽管在一些作品中,对象周围会产生多边形。一些方法首先检测边界片段,然后找到将边界链接到对象区域中的最佳循环。一些方法产生小多边形形式的超像素,并将其进一步组合为对象。
在一些方法中,多边形对象表示已被引入作为标记每个单独像素的替代方法。多边形对象表示的一个好处是它很稀疏;多边形中仅用几个顶点表示大的图像区域。例如,这可以允许用户通过校正错误的顶点轻松地引入任何校正。循环神经网络(‘RNN’)还可以提供强大的模型,因为它捕获了非线性形状表示,从而有效地捕获了对象的典型形状。这在模棱两可的情况下(诸如包含阴影和饱和度的影像)可能尤其重要。
例如,多边形-RNN是用于半自动和交互式标记的概念模型,以帮助加快对象标注。多边形-RNN不会像在一些交互式工具(诸如Grabcut)中那样产生对对象的像素级分割,而是预测勾勒出对象轮廓的多边形的顶点。多边形表示可以提供若干好处:它稀疏,仅用几个顶点表示具有大量像素的区域;它可以与标注器更容易地交互;并且该模型可能能够直接采用标注器输入来重新预测受校正约束的更好的多边形。在一些实施方案中,多边形表示模型已经显示出在自主驾驶数据集上的高标注加速。
进一步改进的多边形表示模型还可以加快标注时间,改进多边形表示模型的神经网络学习,并提高多边形的输出分辨率。
发明内容
在本发明的实施方案中,提供了一种标注对象的方法,所述方法包括:接收描绘对象的图像;使用在一个或多个计算机上实现的CNN编码器生成图像特征集;使用所述图像特征集预测第一顶点预测集;使用利用所述第一顶点预测集和所述图像特征集的循环解码器产生所述对象的多边形表示集,所述循环解码器包括在一个或多个计算机上实现的RNN;并且使用评估器网络从所述多边形表示集中选择多边形对象标注。
在本发明的实施方案中,提供了一种用于对象标注的***,所述***包括:CNN编码器,其由一个或多个计算机实现以用于从接收到的图像生成图像特征,所述图像特征用于预测对象标注的第一顶点;循环解码器,其用于生成所述接收到的图像中的对象的多边形表示集,所述循环解码器包括由一个或多个计算机实现的RNN;以及评估器网络,其用于从所述多边形表示集中选择多边形对象标注。
在本发明的实施方案中,提供了一种训练具有CNN编码器、RNN循环解码器和评估器网络的对象标注***的方法,所述方法包括:接收训练数据集;使用受管理的学习环境训练(诸如,最大似然学习)来启动用于设置所述对象标注***的一个或多个权重矩阵的训练序列;并且使用强化学习对所述对象标注***的所述一个或多个权重矩阵进行微调,以产生经过训练的对象标注***。
在本发明的另一个实施方案中,提供了一种标注对象的方法,所述方法包括:接收描绘对象的图像,所述图像包括n维阵列状数据结构;使用在一个或多个计算机上实现的CNN编码器生成图像特征集;从所述图像特征集初始化N个节点的集合,所述N个节点的集合沿着以所述图像为中心的圆形成闭合曲线;使用图神经网络(GNN)同时预测每个节点的位置偏移;通过所述GNN对每个节点的预测进行迭代,每次迭代基于来自前次迭代的每个节点的节点位置定义每个节点的新的位置偏移;并且基于最终迭代产生对象标注;其中用多边形和样条之一对所述对象进行参数化。
在本发明的另一个实施方案中,提供了一种用于对象标注的***,所述***包括:CNN编码器,其由一个或多个计算机实现以用于从接收到的图像生成图像特征集,所述图像包括n维阵列状数据结构,并且用于从所述图像特征集初始化N个节点的集合,所述N个节点的集合沿着以所述图像为中心的圆形成闭合曲线;图神经网络(GCN),其由一个或多个计算机实现以用于同时预测每个节点的位置偏移并且通过所述GNN对每个节点的预测进行迭代,每次迭代基于来自前次迭代的每个节点的节点位置定义每个节点的新的位置偏移;以及输出选择器,其用于基于来自所述GNN的最终迭代产生输出。
在本发明的另一个实施方案中,提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括用于标注对象的方法的指令,所述方法包括:接收描绘对象的图像,所述图像包括n维阵列状数据结构;使用在一个或多个计算机上实现的CNN编码器生成图像特征集;使用所述图像特征集预测第一顶点预测集;使用利用所述第一顶点预测集和所述图像特征集的循环解码器产生所述对象的多边形预测集,所述循环解码器在一个或多个计算机上实现;并且从所述多边形预测集中选择多边形对象标注。
在本发明的另一个实施方案中,提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括用于标注对象的方法的指令,所述方法包括:接收描绘对象的图像,所述图像包括n维阵列状数据结构;使用在一个或多个计算机上实现的CNN编码器生成图像特征集;从所述图像特征集初始化N个节点的集合,所述N个节点的集合沿着以所述图像为中心的圆形成闭合曲线;使用图神经网络(GNN)同时预测每个节点的位置偏移;通过所述GNN对每个节点的预测进行迭代,每次迭代基于来自前次迭代的每个节点的节点位置定义每个节点的新的位置偏移;并且基于最终迭代产生对象标注;其中用多边形和样条之一对所述对象进行参数化。
在本发明的又一个实施方案中,提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括用于训练具有CNN编码器、RNN循环解码器和评估器网络的对象标注***的方法的指令,所述方法包括:接收训练数据集;使用受管理的学习环境训练来启动用于设置所述对象标注***的一个或多个权重矩阵的训练序列;并且对所述对象标注***的所述一个或多个权重矩阵进行微调,以产生经过训练的对象标注***。
附图简述
参考附图可以更好地理解本发明的原理,所述附图是通过结合本发明的原理和各方面对一个或多个示例性实施方案进行说明提供的,并且在附图中:
图1示出了四个数据集图像的示例;
图2示出了实施方案的各方面的示意图;
图3示出了实施方案的各方面的示意图;
图4示出了实施方案的各方面的示意图;
图5示出了实施方案的各方面的示意图;
图6示出了实施方案的实验结果的表示;
图7示出了实施方案的实验结果的表示;
图8示出了实施方案的实验结果的表示;
图9A至图9D示出了实施方案的实验结果的表示;
图10示出了用实施方案标注的图像的示例;
图11示出了用实施方案标注的图像的示例;
图12示出了用实施方案标注的图像的示例;
图13示出了用实施方案标注的图像的示例;
图14示出了实施方案的流程图;
图15示出了实施方案的示意图;
图16示出了实施方案的流程图;
图17示出了实施方案的各方面的示意图;
图18示出了实施方案的一方面的表示;
图19示出了实施方案的各方面的示意图;
图20示出了用实施方案标注的图像的示例;
图21示出了用实施方案标注的图像的示例;
图22示出了用实施方案标注的图像的示例;
图23A和图23B示出了实施方案的实验结果的表示;
图24示出了实施方案的实验结果的表示;
图25示出了用实施方案标注的图像的示例;
图26示出了用实施方案标注的图像的示例;
图27示出了根据替代实施方案的本发明的方法;以及
图28示出了根据替代实施方案的本发明的***。
具体实施方式
以下描述和其中描述的实施方案是通过对具有本发明原理的特定实施方案的一个或多个示例进行说明而提供的。提供这些示例是为了解释而非限制这些原理和本发明的目的。在以下描述中,相同部分在整个说明书和附图中使用相同的相应参考数字来标记。附图不一定是按比例绘制的,并且在一些情况下可能会放大比例以便更清楚地描绘本发明的某些特征。
此描述涉及对用于对象识别的多边形表示模型的改进,诸如对D1(L.Castrejon、K.Kundu、R.Urtasun和S.Fidler,用多边形-RNN标注对象实例,在CVPR,2017年)中所公开的多边形-RNN模型的改进,其全部内容以引用的方式并入。特别地,它涉及对神经网络架构的更改、使用强化学习来训练多边形模型的新学习算法、以及使用图神经网络提高多边形的输出分辨率。此描述还涉及多边形模型相对于噪声的稳健性及其对域外影像的泛化能力。
本描述涉及其中标注器不在回路中的全自动模式以及其中标注器在回路中的半自动模式。在全自动模式下,其中标注器不在回路中,本文公开的对现有多边形模型的更改可能会导致改进的“交并比”(Intersection over Union,IoU)。在交互模式下,其中标注器在回路中,对现有多边形模型的更改可以大大减少人类标注者点击。
本描述涉及在线微调以实现更高的标注加速,诸如在域外数据集标注上。
如图1中的1000处所示,多边形对象识别模型可以应用于包括自主驾驶影像、医学影像和航空影像的各种数据集域,并且还可以应用于其他一般场景。从这个意义上讲,图像是作为***输入提供的n维阵列状数据结构。此输入可以以适当的格式被接收为传感器数据,并且可以输入的已知图像类型包括RGB图像、热图像、深度图像以及高光谱图像。
1.当前模型
本申请的实施方案是D1中公开的多边形-RNN模型的改进版本:多边形-RNN++。多边形-RNN++期望标注器在图中的感兴趣对象周围提供边界框。然后,多边形对象识别模型提取由放大框包围的图像裁剪,其中放大框由标注器提供的边界框放大了15%。
在一些实施方案中,多边形模型利用CNN和RNN架构,其中CNN用作图像特征提取器,并且RNN每次解码一个多边形顶点。输出顶点可以表示为网格中的位置。
在图2中以示意图形式描绘的实施方案中,编码器2100生成用于预测第一顶点2200的图像特征。第一顶点2200和图像特征由循环解码器2300使用。这在每个时间步处使用视觉注意力2400来产生多边形,每次一个顶点2600。习得的评估器网络2500从解码器2300提出的候选项中选择最佳多边形。最后,图神经网络2700生成由顶点2800定义的更高分辨率的多边形。
此模型自然地将人类纳入回路中,从而允许标注器校正错误预测的顶点。然后将该顶点反馈回模型,从而帮助模型在下一个时间步处校正其预测。
1.1.具有跳过连接的残差编码器
许多网络在CNN的连续层处执行重复的下采样操作,这会影响诸如图像分割之类的任务中的有效输出分辨率。然而,在一些实施方案中,诸如图3中描绘的架构3000,通过减小网络的步幅并引入扩张因子来修改ResNet-50架构,这可以提高输出特征图的分辨率,而不会减小各个神经元的感受野。也可以移除原始的平均池化和光纤通道(‘FC’)层。
本发明的一些实施方案还包括旨在捕获诸如边缘和拐角之类的低级细节以及高级语义信息的跳过层架构。在一些模型中,在拼接来自不同层的特征之前,在建立在视觉几何组(‘VGG’)顶部上的跳过层架构中执行下采样。然而,在本发明的实施方案中,以最高可能的分辨率拼接跳过层的所有输出,并且使用卷积层和最大池化操作的组合来获得最终特征图。例如,可以采用具有3×3内核大小、批量标准化和ReLU(整流非线性单元)非线性的卷积滤波器。在跳过连接具有不同的空间维数的情况下,可以在拼接之前使用双线性上采样。图3中描绘了代表性架构3000,其中最终特征图被称为跳过特征3200。
1.2.循环解码器
如在D1中,本申请的实施方案使用循环神经网络来为勾勒出对象轮廓的多边形的2D顶点的序列进行建模。在一些实施方案中,卷积长短期记忆(‘LSTM’)也用于保存空间信息并减少要学习的参数数量。
本申请的实施方案使用两层ConvLTSM,其具有3×3内核,分别具有64个和16个通道。批量标准应用于每个时间步,而不会在时间步间共享均值或方差估计。在时间步t处的输出表示为(D×D)+1元素的独热编码,其中D是预测的分辨率。例如,D可以设置为28。最前面的D×D维数表示可能的顶点位置,并且最后的维数对应于序列结束标记,该标记表示多边形是封闭的。
注意力加权特征:在RNN中可以利用类似于注意力的机制。例如,在时间步t处,可以按照等式(1)计算加权特征图,其中○是阿达玛(Hadamard)乘积,x是跳过特征张量,并且h1,t和h2,t是来自两层ConvLSTM的隐藏状态张量。f1和f2使用一个全连接层将h1,t和h2,t映射至RD×D×128。fatt取其输入的总和,并通过全连接层将该总和映射到D×D,从而为每个位置赋予一个“注意力”权重。
在一些实施方案中,先前的RNN隐藏状态用于对图像特征图中的某些位置进行门控,从而允许RNN在下一时间步中仅专注于相关信息。然后,将门控特征图Ft与两个先前顶点yt-1、yt-2和第一顶点y0的独热编码拼接,并在时间步t处传递给RNN。
第一顶点:在一些实施方案中,给定前一顶点和隐式方向,多边形的除第一顶点之外的下一顶点总是被唯一地定义。第一顶点可以被视为特殊情况。在一些实施方案中,可以使用单独训练的附加架构来对其进行预测。在一些实施方案中,可以从跳过层架构中添加另一分支,该分支由两层构成,每一层的维数为D×D,第一层预测边缘,而第二层预测多边形的顶点,其中第一顶点是从此分支的最后一层采样的。
1.3.使用强化学习进行训练
在每个时间步处使用交叉熵损失来训练模型可能有两个局限性:受管理的学习环境(‘MLE’)过度惩罚了该模型(例如,当预测的顶点位于GT多边形的边缘上但不是GT顶点之一时),并且它优化了与最终评估指标(即,IoU)有很大不同的指标。使用其中遵循典型的训练方案对模型进行训练的“教师强制(teacher forcing)”来训练模型,可能会在训练与测试之间造成失配,称为暴露偏差问题,在典型的训练方案中GT顶点被馈送到下一时间步,而不是模型的预测。
尽管在一些实施方案中可以使用这种训练技术,但在其他实施方案中,MLR训练仅可以用作初始化阶段。将多边形预测任务重新表述为强化学习问题,并使用强化学习(‘RL’)对网络进行微调。在此阶段期间,允许网络发现优化所需的、但不可微评估指标(IoU)的策略,同时还在训练期间将其暴露于其自身的预测中。
1.3.1问题表述
在实施方案中,循环解码器被视为顺序决策制定代理。编码器-解码器架构的参数θ定义其选择下一顶点vt的策略pθ。在序列的最后,代理观察到奖励r。奖励r被计算为所生成的多边形所包围的掩模与基准真相掩模之间的IoU。为了使期望的奖励最大化,损失函数变为函数(2)。
其中
并且
是在时间t处从模型采样的顶点。在这里,m是给定对象实例的基准真相掩模,并且r=IoU(mask(v
s),m)。
1.3.2.具有策略梯度的自临界训练
一些实施方案使用REINFORCE方法来计算函数(3)中的期望结果的梯度。
一些实施方案使用具有单个样本的蒙特卡罗采样来计算期望的梯度。在没有适当的上下文相依的标准化的情况下,这种方法可能表现出很高的方差并且可能非常不稳定。在一些实施方案中,可以使用习得的基线,并且可以从奖励中减去习得的基线。在一些实施方案中,可以遵循自临界方法,并且将模型的测试时间推理奖励用作基线。因此,可以将损失函数的梯度重新表述为函数(4)。
为了控制模型探索的顶点中的随机性水平,在一些实施方案中,在softmax运算中引入温度参数τ,得到策略的概率分布。这确保了采样的顶点导致行为良好的多边形。例如,可以将τ设置为0.6。
1.4.评估器网络
当模型没有强大的历史来对要标注的对象进行推理时,精心选择的第一顶点可能很重要,因为它使RNN的初始预测产生偏差。这在遮挡对象的情况下尤其重要。对于第一顶点,远离遮挡边界可能是可取的,以便模型跟随感兴趣的对象。在RNN中,波束搜索可以用于修剪掉不可能的序列(诸如,当模型开始跟随遮挡对象时)。但是,由于经典波束搜索使用对数概率来评估波束,因此它可能无法直接应用于旨在优化IoU的模型。遮挡边界上的点可能会表现出强大的边缘,并且因此在预测期间可能具有高对数概率,从而减少了其被波束搜索修剪的可能性。
解决此问题的方法可能是在推理时使用评估器网络,从而旨在有效地在多个候选多边形间进行选择。评估器网络将跳过特征、ConvLSTM的最后一个状态张量以及预测的多边形作为输入,并尝试通过使用伽玛测试(‘GT’)预测其IoU来评估其质量。该网络可能具有两个3×3卷积层,后跟一个FC层,从而在模型中形成另一个分支。图4中描绘了实施方案评估器网络的架构。虽然可以在RL步骤期间对完整模型进行端到端训练,但是在一些实施方案中,可以在RL微调收敛之后分别训练评估器网络。
在训练期间,可以使函数(5)的均方误差最小化。
其中p是网络的预测IoU,
是采样顶点的掩模并且m是基准真相掩模。为了确保所看到的顶点的多样性,可以用τ=0.3对多边形进行采样。在实施方案中,此网络在RL训练步骤期间不用作基线估计器,因为自临界方法可以产生更好的结果。
推理:在测试时,可以采用K个最高得分的第一顶点预测。对于这些中的每一个,都经由经典的波束搜索(使用对数概率)生成了多边形。这将产生K个不同的多边形,每个候选第一顶点对应一个多边形。评估器网络可以用于选择最佳多边形。例如,可以使用K=5。尽管可以在每个时间步处使用评估器网络而不是波束搜索,但这可能会导致不切实际的长推理时间。例如,可能需要在Titan XP上以每个对象实例36ms的速度运行模型。
标注器在回路中:在标注器在回路中的情况下,标注器可以按顺序校正顶点。然后可以将每个校正反馈回模型,该模型可以重新预测多边形的其余部分。
1.5.用图神经网络进行按比例放大
上面公开的模型可以产生分辨率为D×D的多边形。例如,可以将D设置为28,以满足存储器边界并保持输出空间的基数不变。在其他实施方案中,可以使用门控图神经网络(GGNN),以便以更高的分辨率生成多边形。在训练RNN解码器时,可以以其目标分辨率简化GT多边形(移除共线顶点),以减轻预测任务的歧义。因此,在较高的分辨率下,对象可以具有附加拐角(顶点),从而有效地改变多边形的拓扑。
一些实施方案建立在由RNN解码器生成的多边形顶点序列的顶部上。这些顶点被视为(循环)图中的节点。为了以更高的分辨率说明几何形状的变化,在两个连续节点之间添加了一个节点,其位置位于其对应边缘的中间。最后一个顶点和第一个顶点也连接在一起,从而将序列有效地转换为循环。如图5所示,使用3种不同类型的边缘连接相邻节点。然后,GGNN定义了传播模型,该模型将RNN扩展到任意图,从而在节点之间有效地传播信息,然后在每个节点处产生输出。在此,目的是以较高的分辨率预测每个节点(顶点)的相对偏移量。这样,GGNN可以改进RNN历史对其影响较小的多边形的初始顶点的预测,并且有效地按比例放大新旧顶点。图5中对该模型进行了可视化。
门控图神经网络:为完整起见,对GGNN模型进行了总结。GGNN使用图{V,E},其中V和E分别是节点和边缘的集合。它包括在图中执行消息传递的传播模型,以及用于预测任务的输出模型。节点v的初始状态表示为x
v,并且节点v在时间步t处的隐藏状态表示为
函数(6)中列出了传播模型的基本循环。
其中矩阵A∈R|V|×2N|V|确定图中的节点彼此如何通信,其中N表示不同边缘类型的数量。消息被传播T步。然后在函数(7)中定义节点v的输出。
其中f1和f2是MLP,并且outv是v的期望输出。
利用GGNN的多边形RNN++:为了获得GGNN模型的初始观察结果,可以在跳过层架构的顶部上添加另一个分支,特别是从112×112×256特征图(诸如,图4的拼接特征图)添加。可以利用具有256个大小为15×15的滤波器的卷积层,从而给出大小为112×112×256的特征图。对于图中的每个节点v,可以提取缩放后的(vx,vy)位置周围的S×S曲面片,从而给出观察向量xv。节点v的输出是D′×D′空间网格中的位置。可以相对于位置(vx,vy)制作此网格,从而使预测任务成为相对于其初始位置的相对位移。将此预测视为分类任务,并用交叉熵损失训练模型。特别地,可以采用来自RNN模型的预测,并且如果它与GT顶点的偏离超过阈值,则可以校正错误的预测。然后,训练时的目标是这些顶点中的每一个顶点相对于GT的相对位移。
实现细节:在实施方案中,S设置为1,并且D′设置为112。尽管该模型可以支持更高的输出分辨率,但较大的D′可能无法合理地改进结果。GGNN中GRU的隐藏状态具有256个维数。可以使用T=5个传播步骤。在输出模型中,f1是256×256的FC层,并且f2是256×15×15的MLP。在训练中,采用来自RNN的预测,并且如果顶点偏离3个以上的单元格,则将顶点替换为GT顶点。
1.6.经由在线微调标注新域
为了模拟全新数据集的标注,以在另一个模型上训练的模型为基础,可以使用在线微调方案,该方案利用人在回路中进行标注。其中C是新数据被划分成的块数,CS是块大小,NEV是评估器的训练步骤数,并且NMLE、NRL分别是利用MLE和RL进行的每个块的训练步骤数。算法1中描述了示例在线微调,其中PredictAndCorrect涉及(模拟)标注器在回路中。在对校正的数据进行训练的情况下,则可以通过在距离2处截断的曼哈顿距离变换来使MLE训练的目标平滑化。
2.实验结果
本文提出了上述模型的实施方案的评估。讨论了D2(M.Cordts、M.Omran、S.Ramos、T.Rehfeld、M.Enzweiler、R.Benenson、U.Franke、S.Roth和B.Schiele,用于语义城市场景理解的Cityscapes数据集,在CVPR,2016年)中提出的Cityscapes数据集上的标注结果的自动实例和交互实例,并将其与强大的像素级方法进行比较。然后,模型的泛化能力的特征在于对以下项的评估:D3(A.Geiger、P.Lenz和R.Urtasun,准备好自主驾驶了吗?KITTI视觉基准程序组,在CVPR,2012年)中提出的KITTI数据集和D4(B.Zhou、H.Zhao、X.Puig、S.Fidler、A.Barriuso和A.Torralba,通过ade20k数据集进行场景解析,在CVPR,2017年)中提出的跨越一般场景的四个域外数据集;D5(X.Sun、C.M.Christoudias和P.Fua,自由形状的多边形对象定位,在ECCV,2014年)中提出的航空场景;以及D6(A.H.Kadish、D.Bello、J.P.Finn、R.O.Bonow、A.Schaechter、H.Subacius、C.Albert、J.P.Daubert、C.G.Fonseca和J.J.Goldberger,通过磁共振成像评估(DETERMINE)试验来降低风险的针对除颤器的原理和设计,J Cardiovasc Electrophysiol,20(9):982–7,2009年)和D7(S.Gerhard、J.Funke、J.Martel、A.Cardona和R.Fetter,神经组织的分段各向异性ssTEM数据集,figshare,2013年)中提出的医学影像。最后,对在线微调方案进行评估,从而表明新颖数据集的标注时间显著减少。假定给出了用户在对象周围提供的基准真相框。相对于这些框,进一步分析了模型对噪声的稳健性,从而模仿嘈杂的标注器。
2.1.域内标注
首先在训练和评估中使用同一域对以上模型进行评估。这模仿了取得现有数据集的场景,并使用它来标注来自同一域的新颖图像。目前,Cityscapes数据集是用于实例分割的最全面基准程序之一。它包含具有8个语义类别的2975个训练、500个验证和1525个测试图像。为确保公平比较,遵循与D1提出的相同替代分割。基准真相多边形可以包含实例的遮挡部分,这些部分会使用深度排序从像素级标签中移除。遵循D1,根据深度排序对多边形进行预处理,以获得每个实例的仅可见区域的多边形。
评估指标:使用两个定量测度来评估模型:1)交并比(‘IoU’)指标用于评估所生成的多边形的质量,以及2)对校正由模型做出的预测所需的标注器点击次数进行计数。下面详细描述了校正协议。
基线:遵循D1,将性能与以下各项进行比较:D8(P.O.Pinheiro、R.Collobert和P.Dollar,学习对候选对象进行分割,在NIPS,第1990–1998页,2015年)中公开的DeepMask、D9(P.O.Pinheiro、T.-Y.Lin、R.Collobert和P.Dollár,学习精炼对象分割,2016年)中公开的SharpMask、以及D1中公开的作为最新基线的多边形-RNN。前两种方法是像素级方法,并且标注器可能不容易校正其输出中的错误。比较本文公开的模型的自动模式。在其原始方法中,D8和D9在整个图像上以不同尺度对曲面片进行详尽地采样。在这里,我们通过向其模型提供精确的基准真相框来评估D8和D9。
如在D1中,也使用两个附加的基线,即D1中公开的方形框(SquareBox)和D10(F.Yu和V.Koltun,通过扩张卷积进行多尺度上下文聚合,ICLR,2016年)中公开的Dilation10。方形框将提供的边界框视为其预测。依据在Cityscapes数据集上训练的模型从D10的分割结果中获得Dilation10。
自动模型:将当前模型多边形-RNN++与表1中的基线进行比较,并且将结果显示为一系列子模型,所述子模型中的组分被添加到基本多边形-RNN模型,将GGNN添加到其他组分会形成完整的多边形-RNN++。在这里,残差多边形-RNN是指D1中公开的原始多边形-RNN模型,它具有新颖的图像架构而不是VGG。在残差多边形-RNN的结果下方提供了添加的模型的其他方面的结果。完整的方法的性能比性能最好者(即,D1公开的多边形-RNN)高出将近10%的IoU,并且在每种类别中均达到最佳性能。多边形-RNN++还超过了D1中关于汽车所报告的平均为78.6%IoU的人工一致性。使用关于汽车的人工一致性作为代理,模型还获得了针对卡车和公共汽车类别的人工水平性能。
表1
交互模式:交互模式旨在使标注时间最小化,同时获得高质量的标注。遵循D1中提出的模拟,计算出对来自模型的预测进行校正所需的标注器点击次数。如果预测与对应GT顶点偏离了最小距离T,则标注器对预测进行校正,其中超参数T控制所产生的标注的质量。为了公平比较,使用距离阈值T∈[1,2,3,4]以模型输出分辨率使用曼哈顿距离来计算距离,如在D1中。
另外,引入了第二阈值T2,该阈值被定义为预测的多边形与GT掩模之间的IoU,其中达成以上一致性T2的多边形被认为是不需要标注器干扰的。由于上面的校正模拟有些不尽人意,因此利用此阈值:例如,如果预测的顶点沿GT多边形边缘落下,则此顶点实际上是正确的并且不应被校正。注意,在T2=1的极端情况下,模拟器假定每个预测的多边形都需要校正。在这种情况下,模拟等效于D1中提出的模拟。
在图6中,将以T2的不同值标注Cityscapes验证集(500个图像)上所有类别所需的每个实例的平均点击数与T2=1时D1的多边形-RNN进行比较。使用T2=1,本模型的性能优于D1的模型,从而需要更少的点击就能获得相同的IoU。T2=0.8时,当前模型仍比D1所公开的T2=1.0时的多边形-RNN更准确。T2=0.7时,平均每个对象只有5次点击即可实现80%以上的mIoU,这比D1降低了50%以上。如表3所示,雇用的人类标注者大约需要点击96次才能达到78.6的mIoU,而我们的模型只需点击3.75次就可以达到88.3的mIoU。图7示出了T2=0.8时不同T所需的校正频率。
表3
对边界框噪声的稳健性:为了模拟惰性标注器的效果,分析了提供给模型的bbox中的噪声效果。bbox按其宽度和高度的百分比被随机地扩展。表5中的结果展示,本模型对一定数量的噪声(0-5%)非常稳健。即使存在中度和极端噪声(5-10%、10-15%),它的性能也优于使用完美bbox的以前基线所报告的性能。
表5
2.2.跨域评估
在本节中,在捕获环境(KITTI,如D3中公开)和域(一般场景、航空、医学)中的偏移的不同数据集上评估本模型的性能。在Cityscapes上对所使用的模型进行了训练,而无需对这些数据集进行任何微调。
KITTI:多边形-RNN++用于标注KITTI的741个实例。在表4中报告了自动模式下的结果,并且在图8中展示了人在回路中时的性能。本方法的性能优于所有基线,显示了它在相似域中时对环境变化的稳健性。在标注器在回路中的情况下,本模型需要比D1平均少5次点击即可实现相同的IoU。本模型在标注器平均只有2次点击的情况下实现了如D11(L.-C.Chen、S.Fidler、A.Yuille和R.Urtasun,击败mturkers:来自弱3d监督的自动图像标示,在CVPR,2014年)中报告的85%的人工水平一致性。
表4
2.2.1域外影像
表现出与Cityscapes不同水平的域偏移的数据集被认为可以评估本模型的泛化能力。
ADE20K:D4中公开的ADE20K是一般场景解析数据集,其包含训练集中的20210张图像、验证集中的2000张图像以及测试集中的3000张图像。从验证集中选择以下分类的子集:我们的评估中的电视接收器、公共汽车、汽车、烤箱、人和自行车。
航空影像:D5中公开的航空屋顶数据集由乡村场景的65张航空图像组成,其包含若干建筑物屋顶,其中大多数表现出相当复杂的多边形几何形状。报告此数据集的性能以用于测试集。
医学影像[14,31,10]:使用了两个医学分割数据集;D6和D12(A.Suinesiaputra、B.R.Cowan、A.O.Al-Agamy、M.A.Elattar、N.Ayache、A.S.Fahmy、A.M.Khalifa、P.Medrano-Gracia、M.-P.Jolly、A.H.Kadish、D.C.Lee、J.Margeta、S.K.Warfield和A.A.Young,为心脏磁共振图像的自动左心室分割建立共识的协作资源,Medical Image Analysis,18(1):50–62,2014年)中公开了一个,并且在D7中公开了另一个用于我们的实验。前者(用于D12中公开的左心室分割挑战)将200名患者的数据平均分配到训练和验证集中。在验证集的子集上报告本模型的性能,该子集仅包括分割心外膜的外轮廓。后者提供了两个图像堆栈(训练和测试),每个图像堆栈包含来自腹神经索的连续切片透射电子显微镜(ssTEM)图像的20个切片。从此数据中将线粒体和突触分割用于本模型。由于测试堆栈的基准真相实例无法公开获得,因此对训练集进行评估。
定量结果:对于域外数据集,引入了名为椭圆(Ellipse)的基线,该基线使椭圆刚好放入GT边界框。由于D12中的许多实例都是椭圆,因此在本测试中使用了此方法。针对方形框和椭圆用完美和扩展的边界框(类似于本模型的扩展)显示结果。用完美边界框对DeepMask和SharpMask进行了评估,其中阈值是由作者建议的。表2描绘了一些结果,表明了本模型的高泛化能力。
表2
在线微调:在这些实验中,模拟标注器的参数为T=1和T2=0.8。图9报告了相对于Cityscapes模型和在线微调模型的GT多边形所节省的点击百分比。自适应方法仅用一个数据块(40张Sunnybrook的图像,3张ssTEM的图像,200张ADE的图像和20张航空的图像)即可克服明显的域偏移,从而显示了强大的泛化性。总体而言,所有数据集的点击次数至少总体减少了65%,其中Sunnybrook心脏磁共振数据集的点击次数几乎是100%。这些结果表明标注工具可能能够与标注器一起学习,并显著减少了人力投入。
2.3.定性结果
图10示出了基于Cityscapes以自动模式获得的示例预测。在图11中展示了来自模型的特定部分的改进。如所示,使用RL和评估器可以得出更清晰的预测,而GGNN可以按比例放大,添加点并构建类似于人工标注的多边形。图12展示了来自域外数据集上的多边形RNN++的自动预测。图12所示的标示结果是通过利用GT边界框获得的而无需微调。
图13展示了本模型中的注意力图的可视化,其中T设置为各种级别。
3.方法实施方案
图14中描绘了方法14000的实施方案。方法14000是通过将对象表示为多边形轮廓来标注对象的方法。方法14000包括接收描绘对象的图像的步骤14001。如此接收到的对象然后可以在步骤14002处被CNN编码器处理以生成一个或多个图像特征。然后在步骤14003处,使用一个或多个图像特征来生成一个或多个第一顶点预测,其中第一顶点预测被随后的神经网络用作生成图像对象的多边形表示的基础。
然后在步骤14004处由循环解码器生成一个或多个多边形表示。循环解码器可以采用一个或多个第一顶点预测,并使用每个第一顶点预测来创建多边形表示,这些表示一起可以形成一个可能的多边形表示集。在步骤14005处,评估器网络可以从可能的多边形表示集中选择对象标注选择。
然后,在步骤14006处,将选定的对象标注馈入到所提供的门控图神经网络中,以提高多边形表示的分辨率。GGNN可以通过以下方式产生更高分辨率的多边形:将补充顶点预测集添加到定义选定对象标注的主要顶点预测集,定义一个传播模型,并且应用该模型来调整补充顶点预测集的顶点和主要顶点预测集的顶点的位置。门控图神经网络可以使用来自CNN编码器和循环解码器的输入。
根据实施方案,当模型认为多边形完成时,它就生成序列结束标记,因此顶点的数量由模型本身决定。
然后可以将所得的更高分辨率的多边形对象标注应用于诸如自动化***,诸如用于自动驾驶、地图标注或医学图像标注的***。
4.***实施方案
在一些实施方案中,如图15中所描绘,提供了***15000以标注一个或多个对象,以诸如定位图像中的对象。***15000包括输入单元15010,以用于接收图像或携载用于标注的项的其他对象。***15000包括用于处理输入的***处理器15020。***15000还包括输出或应用单元15030,诸如计算机监测器或其他显示器或用于将所标注的对象发送到***(诸如自动驾驶***、医学成像***或制图***)的输出单元。
在一些实施方案中,应用对象标注来引导自动化***。例如,应用对象标注来引导自主驾驶***的操作或引导驾驶***的自动化方面或特征。
如图15所描绘,***处理器15020可以包括CNN编码器15021,以用于从接收到的图像生成图像特征。图像特征然后可以用于预测对象标注的第一顶点,以供循环解码器15022使用。循环解码器15022可以包括用于视觉注意力的注意力单元15023,以及用于从由循环解码器15022产生的多边形表示中选择优选多边形表示的评估器网络15024。
***处理器15020还可以包括用于产生对象的按比例放大的多边形表示的门控图神经网络15025。GGNN 15025可以包括传播框15026和输出框15027。GGNN 15025可以接收来自CNN编码器15021的输出,诸如边缘信息,并且可以接收来自循环解码器15022的信息,诸如定义多边形的顶点信息,诸如由评估器网络15024选择的优选多边形。
尽管将各种元素、框或单元描绘或描述为是独立的或作为其他元素、框或单元的组分,但是在其他实施方案中,可以采用元素、框或单元的其他布置。
5.其他方法实施方案
如图16所描绘,本发明的另一个实施方案可以是训练对象标注***的方法16000。方法16000包括:在步骤16001处接收训练数据集;在步骤16002处启动用于使用受管理的学习环境训练来设置对象标注***的一个或多个权重矩阵的训练序列;并且在步骤16003处使用强化学习对对象标注***的一个或多个权重矩阵进行微调,以产生经训练的对象标注***。
方法16000还可以包括:在步骤16004处为训练数据集的图像产生对象标注预测;在步骤16005处提交对象标注预测以供人工校正;并且在步骤16006处产生对象标注预测的人工校正并将人工校正反馈回对象标注***中以进一步训练对象标注***。
方法16000还可以包括在步骤16007处使用在线微调来微调对象标注***。在线微调涉及在用户与标注工具或平台交互时训练预测***。当用户进行交互并创建新的标示数据时,可以在其上训练模型以在后续使用中产生更好的标注,从而减少未来的人工交互。
应当理解,尽管已经以特定的顺序描述了方法步骤并且将其描绘为彼此依次相继,但是可以同时执行一个或多个方法步骤,并且在一些实施方案中,可以按照不同于所描述和描绘的顺序执行方法步骤。
所有神经网络(诸如***15000的神经网络),包括CNN编码器15021的CNN和循环解码器15022的RNN,都可以由执行在计算机可读介质上找到的计算机可读指令的一个或多个计算机来实现。
替代实施方案
如上所述,顶点是顺序地预测的,但是,可以经由同时预测所有顶点的实现方式获得附加的速度。
在替代实施方案中,对象标注被表述为回归问题,其中所有顶点的位置被同时预测。对象可以被表示为具有固定拓扑的图,并且使用诸如图卷积网络(GCN)的图神经网络(GNN)来执行预测。模型可以用于交互式标注并且可以被优化。框架还可以允许使用多边形或样条对对象进行参数化,从而为交互式标注过程增加了附加的灵活性和效率。此实施方案在本文中称为曲线-GCN,并且是端到端可微的,并且是实时运行的。
经由曲线-GCN进行对象标注
曲线-GCN的框架用多边形或(闭合的)样条来标注对象实例。为了逼近弯曲的轮廓,可能需要绘制具有大量顶点的多边形,而这可以使用样条通过几个控制点来高效地处理。该框架旨在实现对象轮廓的多边形和样条表示。
遵循了典型的标示场景,其中假定标注器已通过在感兴趣的对象周围放置边界框来选择感兴趣的对象(参见Acuna和Castreion)。围绕此框裁剪了图像并将此裁剪内的对象标注表述为回归问题,以从具有固定拓扑的初始化中同时预测所有控制点(顶点)的位置。首先从表示到推理对模型进行描述,然后讨论训练,最后通过在交互方案下制定推理以及训练方式来对使用针对人在回路中的标注的模型进行分析。
多边形-GCN/样条-GCN
假定可以使用N个控制点很好地表示目标对象的形状,这些控制点连接起来形成一个循环。通过将控制点与直线连接(从而形成多边形)或与更高阶的曲线连接(形成样条)来呈现诱导形状。将每个控制点的位置视为一个连续的随机变量,并经由将图像证据作为输入的图神经网络进行学习来预测这些变量。在Acuna中,作者利用门控图神经网络(GGNN)[Y.Li、D.Tarlow、M.Brockschmidt和R.Zemel,门控图序列神经网络,ICLR,2016年]作为多边形细化步骤,以将RNN输出的顶点按比例放大到更高的分辨率。同样地,Pixel2Mesh[N.Wang、Y.Zhang、Z.Li、Y.Fu、W.Liu和Y.-G.Jiang,Pixel2mesh:从单个rgb图像生成3d网格模型,ECCV,2018年]利用图卷积网络(GCN)来预测3D网格的顶点位置。GGNN与GCN之间的关键差异在于图信息传播;GGNN通过时间来共享传播矩阵,类似于门控循环单元(GRU),而GCN的传播步骤被实现为非共享的“层”,类似于典型的CNN架构。由于GCN具有更高的容量,因此在本模型中采用了GCN。因此,本模型的参考名称为曲线-GCN,包括多边形-GCN或样条-GCN。
表示法:将GCN的节点初始化为位于给定图像裁剪中的静态初始中心位置(图17)。GCN预测每个节点的位置偏移量,旨在将节点正确地移动到对象的边界上。设cpi=[xi,yi]T表示第i个控制点的位置并且V={cp0,cp1,···,cpN-1}是所有控制点的集合。将图定义为G=(V,E),其中V定义节点,并且E定义图中的边缘。通过将V中的每个顶点与其四个相邻顶点相连来形成E。此图结构定义了信息如何在GCN中传播。连接4路可以在图中的节点之间更快地交换信息。
提取特征:给定边界框,裁剪图像的对应区域并使用CNN对其进行编码,具体选择由用户确定。将从应用于图像裁剪上的CNN编码器的最后卷积层获得的特征图表示为F
c。为了帮助模型看到图像边界,在CNN编码器的特征图F
c的顶部上监督两个附加分支,即边缘分支和顶点分支,这两个分支均由一个3×3卷积层和一个全连接层组成。对这些分支进行训练以预测对象边缘/顶点存在于28×28网格上的可能性。用二进制交叉熵损失训练这两个分支。预测的边缘和顶点输出与Fc拼接,以创建增强的特征图F。GCN中节点cp
i的输入特征是节点的当前坐标(x
i,y
i)的拼接,其中裁剪图像的左上角为(0,0),且图像长度为1,并且从F中的对应位置提取特征:
在这里,F(x
i,y
i)是使用双线性插值计算出的。
GCN模型:使用了多层GCN。层l处的节点cpi的图传播步骤被表示为:
其中,N(cp
i)表示连接到图中的cp
i的节点,并且
是权重矩阵。遵循Bronstein[M.M.Bronstein、J.Bruna、Y.LeCun、A.Szlam和P.Van-dergheynst,几何深度学习:超越欧几里得数据,CVPR,2017年]的方法,利用图-ResNet作为残差函数在图中的节点之间传播信息。然后,在层l处的一次完整迭代的传播步骤采用以下形式:
其中
是残差的权重矩阵。在最后一个GCN层的顶部上,应用单个全连接层以取得输出特征并预测每个节点的相对位置偏移(Δx
i,Δy
i),从而将其放置到位置[x′
i,y′
i]=[x
i+Δx
i,y
i+Δy
i]中。还执行与在[
35]中的由粗到精的预测类似的迭代推理。更具体地说,新节点的位置[x
i,y
i]用于重新提取节点的特征,并且另一个GCN使用这些特征预测一组新的偏移量。这模仿了最初的多边形/样条迭代地“走向”对象边界的过程。
样条参数化:样条的选择很重要,特别是对于标注器的体验而言。两种最常见的样条,即三次贝塞尔样条和均匀B-样条[例如,H.Prautzsch、W.Boehm和M.Paluszny,Bézier和B-样条技术,Springer Science&Business Media,2013年],由不在实际曲线上的控制点定义,这些控制点可能会混淆需要进行编辑的标注器。遵循Tan[J.H.Tan和U.R.Acharya,活动样条模型:基于形状的模型交互式分割,Digital Signal Pro-cessing,35:64–74,2014年],使用向心Catmull-Rom样条(CRS)[例如,C.Yuksel、S.Schaefer和J.Keyser,catmull-rom曲线的参数化和应用,Computer-Aided Design,43(7):747–755,2011年],其具有沿着曲线的控制点。通过引用并入本文的Yuksel等人的文献提供了不同类型样条的详细可视化。
对于曲线段Si,其由控制点cpi-1、cpi、cpi+1、cpi+2和结序列ti-1、ti、ti+1、ti+2定义,通过以下方式对CRS进行插值:
其中,
并且
在此,α的范围是从0到1。遵循Tan选择α=0.5,这在理论上会产生没有尖点或自相交的样条[参见Yuskel等人,下文]。为使样条成为闭合的C
1连续曲线,添加三个附加控制点:
cpN=cp0
训练
用两个不同的损失函数来训练模型。首先,用点匹配损失来训练模型,并且然后用可微的精度损失来进行微调。实验数据中提供了更具体的细节和消融。
点匹配损失
典型的点集匹配损失(诸如,倒角损失)假定为无序点集(即,它们是置换不变的)。但是,多边形/样条具有明确定义的排序,理想点集匹配损失可以遵从此排序。假定大小相等且排序相似(顺时针或逆时针)的预测和基准真相点集分别表示为p={p0,p1,···,pK-1}和p′={p′0,p′1,…,p′K-1}(K是点数),将匹配损失定义为:
注意,此损失明确地确保了损失计算中顶点的顺序。用无序点集损失函数进行训练,而保持多边形的拓扑结构可能导致灾难性的自相交,有序损失函数则避免了这种情况。
对大小相等的点集进行采样。由于标注的顶点数量可能有所不同,而模型始终假定N,因此沿基准真相多边形和我们的预测的边界对附加点进行采样。对于多边形-GCN,沿着预测的多边形的边缘均匀地对K个点进行采样,并且对于样条-GCN,通过范围从ti到ti+1对t均匀地变化而沿着样条对K个点进行采样。沿着基准真相多边形的边缘均匀地对相同数量的点进行采样。K=1280用于如下详述的实验中。对更多的点进行采样将具有更高的计算成本,而对更少的点进行采样将使曲线逼近的精确度降低。注意,采样仅涉及对控制点进行插值,从而确保可微性。
可微的精度损失
为了使预测的多边形和基准真相轮廓完美对齐,采用了可微的渲染损失,这鼓励了从预测控制点渲染的掩模与基准真相掩模保持一致。先前已使用它来优化3D网格顶点以正确地渲染到2D图像上[例如,H.Kato、Y.Ushiku和T.Harada,神经3d网格渲染器,ECCV,2018年以及M.M.Loper和M.J.Black,Opendr:近似可微的渲染器,ECCV,第154-169页,2014年,D.Fleet、T.Pajdla、B.Schiele和T.Tuytelaars,编辑人员]。
渲染过程可以描述为函数R;M(θ)=R(p(θ)),其中p是曲线上的采样点序列,并且M是自p渲染的对应掩模。预测掩模和基准真相掩模可以通过计算它们与L1损失的差异来比较:
Lrender(θ)=||M(θ)-Mgt||1
注意,L
render正好是预测掩模M(θ)相对于基准真相M
gt的像素级精度。接下来,详述用于在正向传递中获得M并在反向传递中通过从
到
的渲染过程R往回传播梯度的方法。
正向传递:使用OpenGL将p渲染为掩模。如图18所示,该形状被分解为三角形扇fj,并基于它们的区域的取向为所述区域分配正值或负值。用分配的值渲染每个面,并对所有三角形的渲染求和以得到最终的掩模。注意,这对凸多边形和凹多边形均适用[例如,D.Shreiner和T.K.O.A.W.Group,OpenGL编程指南:OpenGL学习官方指南,版本3.0和3.1,Addison-Wesley Professional,第7版,2009年]。
反向传递:由于光栅化,渲染过程在OpenGL中不可微的,光栅化将所有浮点值都截断为整数。然而,遵循Loper等人的文献,下文,用一阶泰勒展开来计算其梯度。然后根据正向传递中的分解重新利用三角形扇(参见图18),并分别分析每个三角形扇。取扇fj的小偏移,计算相对于第j个三角形的梯度为:
其中,M
j是与扇f
j对应的掩模。此处,Δt可以在x或y方向上。为简单起见,设Δt为1像素偏移,这减轻了渲染两次的需要,并允许通过减去相邻像素来计算梯度。接下来,将梯度
传递到其三个顶点f
j,0、f
j,1和f
j,2:
这对所有像素i进行求和。对于渲染图像M
j中的第i个像素
计算其相对于面f
j的顶点的权重
作为其重心坐标。有关更多细节,参阅Loper等人的文献。
标注器在回路中
多边形-RNN的潜在缺点是,一旦标注器校正了一个点,所有后续点都会由于模型的循环结构而受到影响。这通常是不可取的,因为改变可能会很剧烈。可替代地,期望具有改变任何点的灵活性,并且进一步限制为仅可改变相邻点。与在多边形-RNN中一样,假定校正为点的拖放形式。
为了使模型具有交互性,需要训练另一个GCN,该GCN会消耗标注器的校正并预测其他控制点的相对偏移。此GCN在本文中称为交互式GCN。网络的架构与原始GCN相同,只不过现在已将两个附加维数追加到校正后的节点(例如,节点i)的输入特征上,从而表示标注器的校正:
其中(Δxi,Δyi)是标注器给出的偏移。对于所有其他节点,将(Δxi,Δyi)设置为零。在此不执行迭代推理。交互式GCN允许通过简单地将半径以外的节点的预测掩蔽为0来影响半径。特别是,令节点i两侧上的k个近邻被预测,即,cp(i-k)%N、......、cp(i-1)%N、cp(i+1)%N、......、cp(i+k)%N。在本文描述的实验中设k=2,同时注意,在原则上,标注器在测试时可以改变k。
通过模仿标注器来训练交互式GCN,该标注器将错误的控制点迭代地移动到它们的正确位置上。这假定标注器始终选择校正最差的预测点。这是通过首先将预测的多边形与GT对齐、然后找到我们的点匹配损失的最小值(第3.2.1节)来计算的。然后找到与对应GT点的最大曼哈顿距离最大的点。训练该网络以将相邻点移动到其对应的基准真相位置。然后,在标注器选择最差的预测与进行训练以校正其近邻之间进行迭代。在每次迭代中,GCN首先基于上一个标注器的校正预测近邻的校正,然后标注器校正下一个最差点。然后令梯度反向传播通过迭代过程,从而帮助交互式GCN学习合并可能的许多用户交互。算法1中总结了训练过程,其中c表示迭代次数。
实验结果
针对域内和跨域实例标注对曲线-GCN进行了测试。来自Cordts等人[M.Cordts、M.Omran、S.Ramos、T.Rehfeld、M.Enzweiler、R.Benenson、U.Franke、S.Roth和B.Schiele,用于语义城市场景理解的Cityscapes数据集,CVPR,2016年]的Cityscapes数据集被用作训练和测试曲线-GCN模型的主要基准程序。自动和交互方案都经过分析,并与二者的最新基线进行了比较。对于跨域实验,在以下各项上评估经过Cityscapes训练的模型的泛化能力:来自Geiger等人[A.Geiger、P.Lenz和R.Urtasun,准备好自主驾驶了吗?KITTI视觉基准程序组,CVPR,2012年]的KITTI数据集和来自Zhou等人[B.Zhou、H.Zhao、X.Puig、S.Fidler、A.Barriuso和A.Torralba,通过ade20k数据集进行场景解析,CVPR,2017年]的四个域外数据集ADE20K;来自Sun等人[X.Sun、C.M.Christoudias和P.Fua,自由形状的多边形对象定位,在欧洲计算机视觉国际会议,第317-332页,Springer,2014年]的航空屋顶;来自Suinesiaputra等人[A.Suinesiaputra、B.R.Cowan、A.O.Al-Agamy、M.A.Elat-tar、N.Ayache、A.S.Fahmy、A.M.Khalifa、P.Medrano-Gracia、M.-P.Jolly、A.H.Kadish等人,为心脏磁共振图像的自动左心室分割建立共识的协作资源,Medical image analysis,18(1):50–62,2014年]的心脏磁共振;以及来自Gerhard等人[S.Gerhard、J.Funke、J.Martel、A.Cardona和R.Fetter,神经组织的分割各向异性ssTEM数据集,11 2013年]的ssTEM,此遵循用于如前所述的多边形-RNN++的那些。为了指示模型是使用多边形还是样条,将它们分别命名为多边形-GCN和样条-GCN。
图像编码器:遵循如前所述的多边形-RNN++,ResNet-50骨干架构被用作图像编码器。
训练细节:首先经由匹配损失来训练模型,然后用可微的精度损失来进行微调。匹配损失明显更快,但灵活性较低,即,点被强制沿边界精确地匹配GT点。可微的精度损失提供了一种补救方法,因为它直接优化了精度。但是,由于需要相当多的训练时间,因此仅在微调阶段采用了可微的精度损失。对于速度问题,匹配损失用于训练交互式GCN。使用学习速率3e-5,其每7个周期(epoch)衰减一次。
详细而言,注意,Cityscapes数据集包含大量遮挡的对象,这导致许多对象被分成不连续的组分。由于匹配损失作用于单个多边形,因此该模型首先在单个组分实例上进行训练,然后在所有实例上以可微的精度损失进行微调。
基线:由于曲线-GCN以两种不同的方案操作,因此将其与每种方案中的相关基线进行比较。对于自动模式,将其与多边形-RNN++[1]和PSP-DeepLab[7,38]进行比较。提供的DeepLab-v2模型来自Maninis等人[K.-K.Maninis、S.Caelles、J.Pont-Tuset和L.VanGool,深度极端切割:从极端点到对象分割,在CVPR,2018年],该模型在ImageNet上进行了预训练,并在PASCAL上进行了微调以进行语义分割。金字塔场景解析[如H.Zhao、J.Shi、X.Qi、X.Wang和J.Jia,金字塔场景解析网络,在CVPR,2017年]被堆叠以增强性能。对于交互模式,基准程序是参照多边形-RNN++和DEXTR[Maninijs等人]的。PSP-DeepLab和DEXTR都在Cityscapes数据集上进行了微调。还对决定验证集上的前景/背景的阈值进行了交叉验证。
评估指标:与多边形-RNN一样,性能是通过计算预测掩模和基准真相掩模的交并比(IoU)来评估的。但是,如上所述,IoU专注于整个区域,并且对沿对象边界的不准确性不太敏感。出于对象标注的目的,边界特别重要,即使微小的偏差也可能无法逃脱标注者的眼睛。因此,根据Perazzi等人[Perazzi、J.Pont-Tuset、B.McWilliams、L.V.Gool、M.Gross和A.Sorkine-Hornung,用于视频对象分割的基准程序数据集和评估方法,在IEEE国际计算机视觉与模式识别会议(CVPR),2016年]还计算了边界F得分,这通过允许一些未对齐松弛在预测边界与基准真相边界之间计算精确率/召回率。鉴于已经对Cityscapes进行了精细的标注,因此以1和2像素的严格阈值(松弛)来报告结果。
域内标注
在基于Cityscapes进行训练和推理时,首先评估该模型。此数据集包含2975/500/1525张分别用于训练、验证和测试的图像。为了公平比较,遵循与以上多边形-RNN++相同的分割和数据预处理过程。
自动模式:表6报告了多边形-GCN和样条-GCN的结果,并将它们与基线进行了比较。使用的性能指标是IoU。注意,PSP-DeepLab使用功能更强大的图像编码器,该编码器已在PASCAL上进行了预训练以进行分割。样条-GCN的性能优于多边形-RNN++,并且与PSP-DeepLab相当。它也可以在多边形-GCN上执行,这可能是因为大多数Cityscapes对象是弯曲的。结果还显示了可微的精度损失(diffAcc)的重要性,与单独以匹配损失(表中以MLoss表示)训练的模型相比,它产生了很大的改进。在火车类别上,模型大部分都不及PSP-DeepLab,这被认为是由于Cityscapes中的火车经常被遮挡并分成多个组分的事实所致。由于GCN方法仅预测单个连接的组分,因此在这种情况下可能会遇到困难。
表6
表2相对于F边界指标比较了模型。可以观察到,虽然在IoU指标下,样条-GCN与PSP-DeepLab相当,但在更精确的F得分上却明显更好。这意味着该模型相比于PSP-DeepLab与对象边界更准确地对齐。图20、图21和图22中示出了定性结果。
表7
消融研究:对模型的每个组分都进行了研究,并在表8中提供了针对多边形-GCN和样条-GCN的记录结果。执行迭代推理带来了显著提升,并且将边界分支添加到CNN进一步提高了性能。
模型 |
样条 |
多边形 |
GCN |
68.55 |
67.79 |
+迭代推理 |
70.00 |
70.78 |
+边界预测 |
72.09 |
71.19 |
+DiffAcc |
73.70 |
72.66 |
表8
附加人工输入:在Maninis等人的DEXTR中[K.-K.Maninis、S.Caelles、J.Pont-Tuset和L.VanGool,深度极端切割:从极端点到对象分割,在CVPR,2018年],作者提议使用对象边界上的4个极端点作为标注器提供的有效信息。与仅一个框相比,极端点需要2次附加点击。在这种方案中,将GCN模型与DEXTR进行比较,并在如何将该信息提供给模型方面遵循他们的策略。具体来说,点(以热图的形式)与图像堆叠在一起,并被传递到CNN。为了与DEXTR进行比较,按照Maninis等人的方法使用DeepLab-v2。通过附加EXTR来用此类输入引用模型。
注意,多边形-RNN中使用的图像裁剪是通过在方形框(而不是标注器提供的实际框)内提取图像而获得的。但是,由于Cityscapes中的显著遮挡,这样做会导致歧义,因为多个对象可以很容易地落在同一个框中。通过提供4个极端点,标注器更准确地指向目标对象。为了检验由于两次附加点击而产生的精度,测试了模型的实例化,边界框的四个拐角被作为输入提供给该模型实例。这仍然是用户的两次点击(框)交互,但是,它减少了对要标注的对象的歧义。本文通过附加BOX来引用此模型。
由于DEXTR标示了像素并且因此更容易处理多个组分实例,因此提出了模型的另一个实例化,该实例化仍平均利用4次点击,但以不同的方式收集这些点击。具体地,要求标注器在每个组分周围提供一个框,而不是在整个对象周围仅提供一个框。平均而言,这导致每个对象2.4次点击。使用MBOX来引用此模型。为了匹配4次点击预算,标注器点击每个组分的最差预测边界点,这导致平均每个对象3.6次点击。
表9显示,在极端点方案中,该模型已经比DEXTR更好,而替代策略则更好,总体上提高了0.8%,平均点击次数更少。该方法的边界指标的性能也显著优于DEXTR(图26)。
表9
交互模式:对于交互模式,遵循上面针对多边形-RNN++讨论的协议来模拟标注器校正顶点。特别地,标注器迭代地进行校正,直到IoU大于阈值T,或者模型停止改进其预测为止。达到T之上的一致性的预测曲线被认为是令人满意的标注。
图23A、图23B和图24示出了在不同阈值T下IoU与点击次数的关系。将结果与多边形-RNN++进行比较。结果显示,与基线相比有了显著改进,从而把该模型突出显示为一种更高效的标注工具。进一步分析了当使用40个对20个控制点时的性能。控制点较少的版本在自动模式下稍差,但是在交互模式下几乎相当。这可以表明从粗到细的交互式校正可能是最佳方法。
推理时间:表10中报告了计时。该模型比多边形-RNN++快一个数量级,运行速度为28.4ms,而多边形-RNN++需要298.0ms。在交互模式下,该模型重复使用在正向传递中计算出的所计算图像特征,并且因此只需2.6ms即可合并每次校正。另一方面,多边形-RNN需要在每次校正后运行RNN,因此仍然需要270ms。
表10
跨域评估
对该模型的泛化到新数据集的能力进行评估。为了有效地标注各种不同的影像类型,泛化至关重要。这可以表明,仅对新数据集的一个小集合(10%)进行微调会导致快速适应新域。
遵循多边形-RNN++并使用经过Cityscapes训练的模型,并在KITTI(域内驾驶数据集)、ADE20k(一般场景)、屋顶(航空影像)以及如前所述的两个医学数据集上对其进行了测试。
定量结果。表11提供了结果。采用来自多边形-RNN++的简单基线。使用来自新域的10%的随机采样的训练数据(使用dif-fAcc)对该模型进行进一步微调。注意,ssTEM没有训练分割,因此在此数据集中被省略。结果显示,该模型比PSP-DeepLab具有更好的泛化能力,并且基于极少的所标注数据进行微调使该模型有效地适应新域。图25示出了微调前后的一些定性结果。
表11
因此,曲线-GCN模型既可以提供比先前模型更快的速度,又可以实现仅限于局部生效的交互式校正,从而为标注器提供更多控制。
替代方法实施方案
如图27所示,替代方法27000的实施方案可以包括以下步骤:接收描绘对象的图像,该图像包括n维阵列状结构27001;并且使用在一个或多个计算机上实现的CNN编码器来生成一个或多个图像特征27002;从图像特征集中初始化N个节点的集合,该N个节点的集合沿着以图像为中心的椭圆形成闭合曲线27003;使用图卷积网络(GCN)同时预测每个节点的位置偏移27004;通过GCN对每个节点的预测进行迭代,每次迭代基于来自前次迭代的每个节点的节点位置定义每个节点的新的位置偏移27005;并且基于最终迭代产生对象标注,其中用多边形和样条之一对对象进行参数化27006。
根据实施方案,该方法包括以固定次数的迭代进行训练和测试。该次数可以根据用户的选择任意改变。
替代***实施方案
图28中示出了执行替代方法的***的实施方案。在样本***28000中,输入单元28010接收描绘对象的图像,该图像包括在计算机处的n维阵列状结构,该计算机包括***处理器28020,该***处理器可以包括分布在一个或多个计算机上的处理元件和其他必要元件,以用于处理输入。在***处理器28020处,CNN编码器28021生成一个或多个图像特征,并从图像特征集初始化N个节点的集合,其中该N个节点的集合沿着以图像为中心的椭圆形成闭合曲线,并使用GCN 28023同时预测每个节点的位置偏移。通过GCN对每个节点的预测进行迭代,其中每次迭代是神经网络的一个单独的层集合,并且每次迭代基于来自前次迭代的每个节点的节点位置定义每个节点的新的位置偏移,最终产生由输出选择器28024基于最终迭代选择的对象标注,其中用多边形和样条之一对对象进行参数化,并提供给输出或应用单元28030,诸如计算机监测器或其他显示器或用于将所标注的对象发送到另一个***的输出单元,以用于特定的应用或用途。
此替代方法和***实施方案的潜在用例可以包括从多个视图描绘3D对象以生成粗糙的网格标注。此外,可以标注家用对象或其他指定的相关对象(衣物、人等)以用于机器人感知或其他与人相关的软件。其他应用程序可以包括为照片编辑软件完成部分绘制的标注和对象选择。
尽管将各种元素、框或单元描绘或描述为是独立的或作为其他元素、框或单元的组分,但是在其他实施方案中,可以采用元素、框或单元的其他布置。
已经详细描述了本发明的各种实施方案。由于可以在不脱离本发明的本质、精神或范围的情况下对上述最佳模式进行改变和/或添加,因此本发明不限于这些细节,而仅由所附权利要求来限定。本文的章节标题是作为组织提示提供的。这些标题不应限制或表征所附权利要求中提出的发明。