视觉关系检测方法和装置及视觉关系检测训练方法和装置与流程

文档序号:14796925发布日期:2018-06-29 19:27阅读:178来源:国知局

本申请涉及计算机视觉(CV)领域,具体涉及视觉关系检测方法和装置以及视觉关系检测训练方法和装置。



背景技术:

视觉关系检测是用于检测图像中的物体以及它们之间的关系的方法,其中视觉关系可通过“主语-谓语-宾语”的短语来表示。例如,图像中显示了一个人在放风筝,那么该图像的视觉关系可表示为“人放风筝”的短语,其中“人”、“放”和“风筝”分别为视觉关系中的主语、谓语和宾语。与物体检测相比,视觉关系检测具有更大的语义空间和更强的描述能力,并能更好地理解图像内容。

常规的视觉关系检测方法将物体检测和谓语关系识别分割开来,通常是先检测物体,然后识别出物体之间的关系。而且在对谓语关系进行识别时,仅利用了主语和宾语物体的类别和位置信息,并没有利用主语特征与宾语特征之间的联系。



技术实现要素:

为了解决以上问题中的至少一种,本申请提供了视觉关系检测方法和装置。

本申请的实施方式提供了一种视觉关系检测方法。该方法可包括:从图像提取用于物体检测的多个候选区域;基于多个候选区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;以及分别基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,确定主语物体、宾语物体及谓语关系。

根据本申请的实施方式,确定主语物体、宾语物体及谓语关系包括:基于主语检测区域、宾语检测区域及谓语检测区域,分别获取主语物体、宾语物体以及谓语关系的类别和位置;以及基于获取的类别确定与主语物体、宾语物体以及谓语关系相对应的语义,由此生成视觉关系短语。

根据本申请的实施方式,该方法还包括:获取各个主语物体、宾语物体以及谓语关系分别对应的分值;以及基于获取的分值,确定一个或多个视觉关系短语作为目标视觉关系短语。

根据本申请的实施方式,分别获取主语物体、宾语物体以及谓语关系的类别和位置包括:通过主语卷积神经网络从主语检测区域获取主语物体的类别和位置;通过谓语卷积神经网络从谓语检测区域获取谓语关系的类别和位置;以及通过宾语卷积神经网络从宾语检测区域获取宾语物体的类别和位置。

根据本申请的实施方式,分别获取主语物体、宾语物体以及谓语关系的类别和位置可包括:将主语卷积神经网络的主语特征信息及宾语卷积神经网络的宾语特征信息传输至谓语卷积神经网络,并基于主语特征信息及宾语特征信息更新谓语卷积神经网络的谓语特征信息;将谓语卷积神经网络的谓语特征信息传输至主语卷积神经网络及谓语卷积神经网络,并基于谓语特征信息更新主语卷积神经网络的主语特征信息及谓语卷积神经网络的谓语特征信息;以及根据更新后的主语特征信息、谓语特征信息和宾语特征信息,分别确定主语物体、谓语关系和宾语物体的类别和位置。

根据本申请的实施方式,主语卷积神经网络与谓语卷积神经网络之间通过卷积层或全连接层传输信息,宾语卷积神经网络与谓语卷积神经网络之间通过卷积层或全连接层传输信息。

根据本申请的实施方式,在卷积层通过并行方式传输信息,在全连接层通过串行方式传输信息。

根据本申请的实施方式,卷积层包括第一子卷积层和第二子卷积层,在卷积层通过并行方式传输信息包括:将主语卷积神经网络的主语特征信息和宾语卷积神经网络的宾语特征信息通过第一子卷积层传输至谓语卷积神经网络;以及将谓语卷积神经网络的谓语特征信息通过第二子卷积层传输至主语卷积神经网络和宾语卷积神经网络。

根据本申请的实施方式,在全连接层通过串行方式传输信息包括:将主语卷积神经网络的主语特征信息传输到谓语卷积神经网络,以及将宾语卷积神经网络的宾语特征信息传输到谓语卷积神经网络;以及将谓语卷积神经网络的谓语特征信息分别传输到主语卷积神经网络和宾语卷积神经网络。

根据本申请的实施方式,谓语检测区域包括覆盖主语检测区域和宾语检测区域的最小的区域框。

根据本申请的实施方式,主语检测区域和宾语检测区域分别具有相应的置信分数,主语检测区域和宾语检测区域两两组合成对以构成主宾对检测区域,针对多个主宾对检测区域中的任两个,方法还包括:确定任两个主宾对检测区域的交并比和每个主宾对检测区域的置信分数;以及当两个主宾对检测区域的交并比大于预定阈值时,删除两个主宾对检测区域中置信分数低的主宾对检测区域对应的视觉关系检测区域集。

本申请的实施方式还提供了一种视觉关系检测的训练方法。该方法可包括:从已标注训练图像提取用于物体检测的多个训练区域;基于多个训练区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络,预测主语物体、宾语物体及谓语关系;以及根据已标注训练图像中的标注信息,与预测得到的主语物体、宾语物体及谓语关系之间的差异,分别训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络。

根据本申请的实施方式,分别训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络包括:单独训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络;或者整体训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络。

根据本申请的实施方式,单独训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络包括:将主语检测区域和真实区域之间的交并比、谓语检测区域和真实区域之间的交并比以及宾语检测区域和真实区域之间的交并比分别与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域以及宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络直至训练结果满足预定收敛条件。

根据本申请的实施方式,整体训练主语卷积神经网络、宾语卷积神经网络、以及谓语卷积神经网络包括:将主语检测区域和真实区域之间的交并比、宾语检测区域和真实区域之间的交并比均与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域、宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络直至训练结果满足预定收敛条件。

根据本申请的实施方式,训练误差可包括区域位置误差和分类误差。

本申请的实施方式还提供了一种视觉关系检测装置。该装置可包括:候选区域提取模块,从图像提取用于物体检测的多个候选区域;检测区域获取模块,基于多个候选区域得到多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;以及确定模块,分别基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,确定主语物体、宾语物体及谓语关系。

根据本申请的实施方式,确定模块包括:第一获取子模块,用于基于主语检测区域、宾语检测区域及谓语检测区域,分别获取主语物体、宾语物体以及谓语关系的类别和位置;以及第一生成子模块,用于基于获取的类别确定与主语物体、宾语物体以及谓语关系相对应的语义,由此生成视觉关系短语。

根据本申请的实施方式,确定模块还包括:第二获取子模块,用于获取各个主语物体、宾语物体以及谓语关系分别对应的分值;以及第二生成子模块,用于基于获取的分值,确定一个或多个视觉关系短语作为目标视觉关系短语。

根据本申请的实施方式,第一获取子模块进一步通过主语卷积神经网络从主语检测区域获取主语物体的类别和位置;通过谓语卷积神经网络从谓语检测区域获取谓语关系的类别和位置;以及通过宾语卷积神经网络从宾语检测区域获取宾语物体的类别和位置。

根据本申请的实施方式,确定模块还包括:信息传输子模块,用于将主语卷积神经网络的主语特征信息及宾语卷积神经网络的宾语特征信息传输至谓语卷积神经网络,并基于主语特征信息及宾语特征信息更新谓语卷积神经网络的谓语特征信息;将谓语卷积神经网络的谓语特征信息传输至主语卷积神经网络及谓语卷积神经网络,并基于谓语特征信息更新主语卷积神经网络的主语特征信息及谓语卷积神经网络的谓语特征信息;以及确定子模块,用于根据更新后的主语特征信息、谓语特征信息和宾语特征信息,分别确定主语物体、谓语关系和宾语物体的类别。

根据本申请的实施方式,信息传输子模块还用于在主语卷积神经网络与谓语卷积神经网络之间通过卷积层或全连接层传输信息,以及在宾语卷积神经网络与谓语卷积神经网络之间通过卷积层或全连接层传输信息。

根据本申请的实施方式,信息传输子模块包括:第一传输子模块,用于在卷积层通过并行方式传输信息;以及第二传输子模块,用于在全连接层通过串行方式传输信息。

根据本申请的实施方式,卷积层包括第一子卷积层和第二子卷积层,第一传输子模块,还用于将主语卷积神经网络的主语特征信息和宾语卷积神经网络的宾语特征信息通过第一子卷积层传输至谓语卷积神经网络;以及,将谓语卷积神经网络的谓语特征信息通过第二子卷积层传输至主语卷积神经网络和宾语卷积神经网络。

根据本申请的实施方式,第二传输子模块,还用于将主语卷积神经网络的主语特征信息传输到谓语卷积神经网络,以及将宾语卷积神经网络的宾语特征信息传输到谓语卷积神经网络;将谓语卷积神经网络的谓语特征信息分别传输到主语卷积神经网络和宾语卷积神经网络。

根据本申请的实施方式,谓语检测区域包括覆盖主语检测区域和宾语检测区域的最小的区域框。

根据本申请的实施方式,主语检测区域和宾语检测区域分别具有相应的置信分数,主语检测区域和宾语检测区域两两组合成对以构成主宾对检测区域,针对多个主宾对检测区域中的任两个,其中,装置还包括:置信分数确定模块,用于确定任两个主宾对检测区域的交并比和每个主宾对检测区域的置信分数;以及删除模块,用于当两个主宾对检测区域的交并比大于预定阈值时,删除两个主宾对检测区域中置信分数低的主宾对检测区域对应的视觉关系检测区域集。

本申请的实施方式还提供了一种视觉关系检测训练装置。该训练装置可包括:训练区域提取模块,从已标注训练图像提取用于物体检测的多个训练区域;检测区域获取模块,基于多个训练区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;预测模块,基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络,预测主语物体、宾语物体及谓语关系;以及训练模块,根据已标注训练图像中的标注信息,与预测得到的主语物体、宾语物体及谓语关系之间的差异,分别训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络。

根据本申请的实施方式,训练模块包括:第一训练子模块,用于单独训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络;或者第二训练子模块,用于整体训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络。

根据本申请的实施方式,第一训练子模块还用于将主语检测区域和真实区域之间的交并比、谓语检测区域和真实区域之间的交并比以及宾语检测区域和真实区域之间的交并比分别与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域以及宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络直至训练结果满足预定收敛条件。

根据本申请的实施方式,第二训练子模块用于将主语检测区域和真实区域之间的交并比、宾语检测区域和真实区域之间的交并比均与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域、宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及,分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络直至训练结果满足预定收敛条件。

根据本申请的实施方式,训练误差可包括区域位置误差和分类误差。

本申请的实施方式还提供了一种视觉关系检测装置。该装置可包括:存储器,存储可执行指令;一个或多个处理器,与存储器通信以执行可执行指令从而完成以下操作:从图像提取用于物体检测的多个候选区域;基于多个候选区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;以及分别基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,确定主语物体、宾语物体及谓语关系。

本申请的实施方式还提供了一种视觉关系检测训练装置。该装置可包括:存储器,存储可执行指令;一个或多个处理器,与存储器通信以执行可执行指令从而完成以下操作:从已标注训练图像提取用于物体检测的多个训练区域;基于多个训练区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到;基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别通过主语卷积神经网络、谓语卷积神经网络和宾语卷积神经网络,预测主语物体、宾语物体及谓语关系;以及根据已标注训练图像中的标注信息,与预测得到的主语物体、宾语物体及谓语关系之间的差异,分别训练主语卷积神经网络、宾语卷积神经网络及谓语卷积神经网络。

与现有技术中将物体检测过程和谓语关系识别过程分割开来进行不同,通过本申请提供的方法和装置,能够将视觉关系中的主语、谓语和宾语三个部分作为整体来考虑并利用主语、谓语和宾语之间的联系,同时预测并识别出这三个部分,提高了视觉关系检测的准确率。此外,通过本申请提供的方法和装置,能够在检测物体的同时更好地利用目标物体周边的信息,从而获得更好的物体检测结果。

附图说明

通过阅读参照附图所作出的以下详细描述,本申请的其它特征、目的和有益效果将会变得更明显,在附图中:

图1是示出根据本申请示例性实施方式的视觉关系检测方法的流程图;

图2是示出根据本申请示例性实施方式的视觉关系检测的架构的示意图;

图3是示出根据本申请示例性实施方式的估计主语物体、宾语物体以及谓语关系的类别和位置的步骤的示意图;

图4(a)和4(b)是示出根据本申请示例性实施方式的用于传输信息的两种方式的示意图;

图5是示出根据本申请示例性实施方式的视觉关系检测训练方法的流程图;

图6是示出根据本申请示例性实施方式的视觉关系检测装置的框图;

图7是示出根据本申请示例性实施方式的视觉关系检测训练装置的框图;以及

图8是示出适合实施本申请示例性实施方式的计算机装置的结构示意图。

具体实施方式

下面结合附图和示例性实施方式对本申请作进一步的详细说明。可以理解的是,在本文中所描述的具体示例性实施方式仅仅用于解释本申请,而非对本申请进行限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分。下面将参照附图并结合示例性实施方式来详细说明本申请。

根据本申请示例性实施方式提供的视觉关系检测方法和装置,能够共同考虑主语物体、谓语关系和宾语物体的特征,同时检测出主语物体、谓语关系和宾语物体,由此生成图像中物体的一个或多个视觉关系短语。通过本申请提供的视觉关系检测方法和装置可将图像转换为一系列相互作用的节点,在节点之间通过谓语关系相连,由此形成与图像对应的“场景图”。

本申请提供的视觉关系检测方法和装置可应用于图片搜索。当用户输入句子后,只需将句子转化为相应的“场景图”,然后将其与图片生成的“场景图”进行匹配,由此进行图片搜索。此外,通过利用上述方法生成的主谓宾短语,可以进一步生成用于描述相应区域的句子,从而帮助进行图片标注。另外,该方法和装置还可适用于监控应用,例如通过检测被监控场景内的物体及物体之间的相互作用,从而更智能地分析监控场景内发生的事件。

图1是示出根据本申请示例性实施方式的视觉关系检测方法1000的流程图。图2是示出根据本申请示例性实施方式的用于视觉关系检测的架构2000的示意图。

请参见图1,首先在步骤S1010中,从图像提取用于物体检测的多个候选区域。通过该步骤可从图像中提取出多个可能存在物体的候选区域。这里,图像可以是静态图像,例如为普通的RGB彩色图片,也可以为视频中的某一帧图像。候选区域可以为物体所在的区域框(例如为矩形形状)。步骤S1010可以采用神经网络物体检测框架来实现,例如,包括但不限于Faster-RCNN。

在步骤S1020中,基于从步骤S1010中提取的多个候选区域,可获得多个视觉关系检测区域集。视觉关系检测区域集可包括主语检测区域、宾语检测区域及谓语检测区域。主语检测区域可包括多个候选区域中的任意一个。宾语检测区域可包括多个候选区域中的任意一个。谓语检测区域可通过主语检测区域及宾语检测区域得到。例如,可将主语检测区域和宾语检测区域的并集作为谓语检测区域。例如,在主语检测区域和宾语检测区域为矩形框形状的区域的情况下,可将完全覆盖主语检测区域和宾语检测区域的最小的大矩形框确定为谓语检测区域。

最后在步骤S1030中,分别基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,确定主语物体、宾语物体及谓语关系。在一个实施方式中,可基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别获取主语物体、宾语物体以及谓语关系的类别和位置,并且基于获取的类别来确定与主语物体、宾语物体以及谓语关系相对应的语义,由此生成视觉关系短语。例如,从图2中示出的图像可确定出主语物体、谓语关系和宾语物体的相应语义分别为“人”、“靠近”和“狗”,由此构成视觉关系短语“人靠近狗”。

在一个实施方式中,方法1000还可包括获取各个主语物体、宾语物体和谓语关系分别具有对应的分值,并且基于获取的分值来确定一个或多个视觉关系短语作为目标视觉关系短语并输出。例如,可将主语物体的分值、宾语物体的分值以及谓语关系的分值之积作为视觉关系短语的分值,从生成的视觉关系短语中选择短语类别分数大于预定分数阈值的一个或多个视觉关系短语作为目标视觉关系短语。

在一个示例性实施方式中,获取主语物体、宾语物体以及谓语关系的类别和位置可通过利用三个卷积神经网络(Convolutional Neural Network;CNN)来进行:主语CNN、谓语CNN和宾语CNN。具体地,可通过主语CNN从主语检测区域获取主语物体的类别和位置,可通过谓语CNN从谓语检测区域获取谓语关系的类别和位置,以及可通过宾语CNN从宾语检测区域获取宾语物体的类别和位置。本领域技术人员应理解,这三个获取的步骤之间没有必然的前后顺序,可以同时执行,由此能够获得更高的检测准确率。

在一个实施方式中,这三个CNN可为具有不同的视觉属性和关系的不同的卷积神经网络。在另一实施方式中,主语CNN和宾语CNN可为相同的卷积神经网络。以下将参照图3和4具体地描述步骤S1030的实现过程。

虽然上文描述的视觉关系检测方法中的一个步骤(例如步骤S1030)通过三个不同的卷积神经网络实现,但是应理解,本申请的视觉关系检测方法也可通过一个卷积神经网络(CNN)实现,其中步骤S1030以三个不同的子CNN(即,主语子CNN、谓语子CNN和宾语子CNN)实现,而步骤S1020以另一个子CNN实现。在这种实现方式中,主语子CNN、谓语子CNN和宾语子CNN可在底层共享参数。

通过方法1000的步骤S1010可获得数量较大的候选区域,主语检测区域和宾语检测区域分别具有相应的置信分数,可将主语检测区域和宾语检测区域两两组合成对以构成主宾对检测区域。例如,可基于每个检测区域的置信分数进行排序,从所有的检测区域中选出分数最高的多个检测区域(例如N个),然后通过排列组合的方法将这些检测区域中的任两个组合作为主宾对检测区域。针对多个主宾对检测区域中的任两个,可确定任两个主宾对检测区域的交并比和每个主宾对检测区域的置信分数;以及当两个主宾对检测区域的交并比大于预定阈值时,删除两个主宾对检测区域中置信分数低的主宾对检测区域对应的视觉关系检测区域集。

在一个实施例中,可采用非极大值抑制(NMS)的方法去除冗余的主宾对,以减少待处理检测区域的数量。这里,两个区域的交并比(IOU,Intersection Over Union)是指两个区域的交集与两个区域的并集的面积之比。

例如,选出的N个检测区域记为bi(i=1...N),通过排列组合获得N2个主宾对检测区域为ti(i=1...N2),ti=<bs,i,bp,i,bo,i>,其中bs,i、bp,i和bo,i分别表示用于主语检测区域、谓语检测区域和宾语检测区域。对于当两个主宾对检测区域ti和tj,交并比IOU和置信分数(score)分别以以下公式(1)和(2)来计算:

IOU(ti,tj)=IOU(bi,s,bj,s)·IOU(bi,o,bi,o) 公式(1)

score(ti)=score(bi,s)·score(bi,o) 公式(2)

当两个主宾对检测区域的交并比大于一定阈值时,则删除置信分数较低的主宾对检测区域。在一个实施例中(例如阈值设为0.25),从图像中提取出250个检测区域,由此获得了62500个主宾对检测区域,通过上述NMS方法可将主宾对检测区域的数量减少为1600。

再请参见图2,其中示出了示出根据本申请示例性实施方式的用于视觉关系检测的架构2000。架构2000可以以卷积神经网络的形式实现,也可以实现在任何级联的深度学习网络中。为了清晰起见,图2中省略了一些公知结构,包括但不限于,激活层、池化层和部分卷积层等。如本领域技术人员所理解的,架构2000的结构不限于图2所示的具体结构。在不背离本申请的发明构思的前提下,架构2000可具有任意具体结构,包括但不限于,层的数目、层的功能以及层的连接关系等。

如图2所示,从图像2010提取多个候选区域,并基干提取的候选区域获得视觉关系检测区域集2020。视觉关系检测区域集2020中的任一个可为主语检测区域或宾语检测区域。基于主语和宾语检测区域可确定谓语检测区域。针对每个视觉关系检测区域集,主语检测区域、谓语检测区域以及宾语检测区域连同图像2010被输入到三个卷积神经网络,即主语CNN 2030、谓语CNN 2040以及宾语CNN 2050中。通过在主语CNN 2030与谓语CNN 2040之间以及在宾语CNN 2050与谓语CNN 2040之间以卷积层或全连接层传输信息,来获取主语物体、谓语关系和宾语物体的类别和位置,由此确定出它们的相应语义,生成视觉关系短语。例如,图像2010中有一个人坐在船上,旁边有一只狗。通过在三个不同的CNN之间传输信息,确定出主语物体、谓语关系和宾语物体分别为“人”、“靠近”和“狗”,由此得出的视觉关系短语为“人靠近狗”。

在上述架构2000中示出了三个不同的卷积神经网络来估计主语物体、谓语关系和宾语物体的类别和位置,但是应理解,该架构也可通过一个卷积神经网络(CNN)来实现,该神经网络中包括四个不同的子神经网络分支,其中一个子神经网络分支用于从图像2010提取候选区域,而另外三个子神经网络用于估计主语物体、谓语关系和宾语物体的类别和位置。

图3是示出根据本申请示例性实施方式的获取主语物体、宾语物体以及谓语关系的类别和位置的步骤的示意图;以及图4是示出根据本申请示例性实施方式的用于传输信息的两种方式的示意图。

请参见图3,来自主语CNN 3010的主语特征信息被传输至谓语CNN 3020(如箭头A所示),并且来自宾语CNN 3030的宾语特征信息被传输至谓语CNN 3020(如箭头A1所示),由此基于主语特征信息及宾语特征信息更新谓语CNN的谓语特征信息。为方便描述,这种传输信息的方式在下文中被称为会聚模式。另一方面,来自谓语CNN 3020的谓语特征信息分别被传输至主语CNN 3010(如箭头B所示)和宾语CNN 3030(如箭头B1所示),由此基于谓语特征信息来更新主语CNN的主语特征信息和谓语CNN的谓语特征信息。为方便描述,这种传输信息的方式在下文中被称为分发模式。这样,可根据更新后的主语CNN、谓语CNN和宾语CNN分别确定出主语物体、谓语关系和宾语物体的类别和位置。这里,主语CNN、谓语CNN和宾语CNN的特征可包括表示物体的大小、颜色、细节等特征中的一个或多个信息。

在另一个实施方式中,主语CNN与谓语CNN之间可通过卷积层或全连接层传输信息,宾语CNN与谓语CNN之间也可通过卷积层或全连接层传输信息。例如,通过将主语CNN的特征进行一次或多次卷积或全连接然后加到谓语CNN的特征上,在两个CNN之间传输信息。

在卷积层中可通过并行方式传输信息,在全连接层可通过串行方式传输信息。图4中进一步描绘了通过并行和串行的方式实施的信息传输。请参见图4,其中(a)和(b)分别表示以并行方式和串行方式进行的信息传输,其中和分别表示在会聚和分发模式下传输的信息,其中l表示各个CNN的层数。

例如,和分别表示主语CNN、谓语CNN和宾语CNN中在任一层l处的特征。在会聚模式中,主语CNN的信息传输到谓语CNN,以及将宾语CNN的信息传输到谓语CNN,谓语CNN中的特征可通过以下公式(3)获得:

其中,和分别表示用于将来自主语CNN的主语特征信息传输到谓语CNN的参数和用于将来自宾语CNN的宾语特征信息传输到谓语CNN的参数;在卷积层进行信息传输的情况下表示为卷积(convolution product)或者在全连接层进行信息传输的情况下表示为矩阵向量积(matrix-vector product);以及表示谓语CNN中的参数。

在分发模式中,将谓语CNN的谓语特征信息分别传输到主语CNN和宾语CNN,主语CNN和宾语CNN中的特征可通过以下公式(4)获得:

其中,和分别表示用于将来自谓语CNN的谓语特征信息分别传输到主语CNN和宾语CNN的参数。

参见图3和图4,卷积层可包括第一子卷积层和第二子卷积层,在卷积层通过并行方式传输信息可将主语CNN的主语特征信息和宾语CNN的宾语特征信息通过第一子卷积层传输至谓语CNN;以及将谓语CNN的谓语特征信息通过第二子卷积层传输至主语CNN和宾语CNN。在全连接层通过串行方式传输信息,可将主语CNN的主语特征信息传输到谓语CNN,以及将宾语CNN的宾语特征信息传输到谓语CNN;以及将谓语CNN的谓语特征信息分别传输到主语CNN和宾语CNN。

图5是示出根据本申请示例性实施方式的视觉关系检测训练方法5000的流程图。

在步骤5000中,首先在步骤S5010中,从已标注训练图像提取用于物体检测的多个训练区域。接着,在步骤S5020中,基于多个训练区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到。接下来,在步骤S5030中,基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别通过主语卷积神经网络(CNN)、谓语CNN和宾语CNN,预测主语物体、宾语物体及谓语关系。最后,在步骤S5040中,根据已标注训练图像中的标注信息,与预测得到的主语物体、宾语物体及谓语关系之间的差异,分别训练主语CNN、宾语CNN及谓语CNN。

步骤S5040可包括单独训练或者整体训练主语CNN、宾语CNN和谓语CNN。在单独训练主语CNN、宾语CNN和谓语CNN的过程中,将主语检测区域和真实区域之间的交并比、谓语检测区域和真实区域之间的交并比以及宾语检测区域和真实区域之间的交并比分别与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域以及宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语CNN、谓语CNN和宾语CNN将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语CNN、谓语CNN和宾语CNN直至训练结果满足预定收敛条件。这里,训练误差可包括区域位置误差和分类误差。在这个过程中,对主语CNN、谓语CNN和宾语CNN这三个卷积神经网络的训练相互之间没有影响,并且每个CNN的训练目标相互之间也没有影响。例如,对于人放风筝的图像而言,当主语检测区域成功定位为“人”,但是宾语检测区域没有成功定位为“风筝”,那么主语检测区域被视为正样本,训练目标则为识别出“人”。但是宾语检测区域则被视为负样本,训练目标则为识别出“None”(即没有需要识别的物体)。

在整体地训练主语CNN、宾语CNN和谓语CNN的过程中,将主语检测区域和真实区域之间的交并比、宾语检测区域和真实区域之间的交并比均与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域、宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语CNN、谓语CNN和宾语CNN将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语CNN、谓语CNN和宾语CNN直至训练结果满足预定收敛条件。在这个过程中,主语CNN、谓语CNN和宾语CNN看做一个整体,三个CNN的训练目标相互影响。只有当主语和宾语检测区域均与真实区域之间的交并比大于一定阈值时,主语检测区域、谓语检测区域和宾语检测区域才看作是正样本。否则,均视为负样本。例如,对于人放风筝的图像而言,如果主语检测区域成功定位为“人”,但是宾语检测区域没有成功定位为“风筝”,则由于宾语检测区域识别错误,主语检测区域同样被确定为负样本。也即,在整体训练中,需要检测的不仅仅是主语物体(例如“人”),而是要与其他物体发生关系的主语物体(人)。因此,当主语检测区域不变时,由于宾语检测区域发生改变,训练目标也发生改变,由此促使三个CNN之间的训练误差的传输。在训练过程中,训练误差以反向传播的方式用以更新三个CNN中的特征,训练过程持续进行直至训练误差在一段时间内不再下降为止。

参照图1至图5描述的视觉关系检测方法和视觉关系检测训练可通过计算机装置来实施。该计算机装置包括存储有可执行指令的存储器以及处理器。处理器与存储器通信以执行可执行指令从而实施参照图1至图5描述的方法。可替代地或附加地,参照图1至图5描述的视觉关系检测方法和视觉关系检测训练可通过非暂时性计算机存储介质来实施。该介质存储计算机可读指令,当这些指令被执行时使处理器执行参照图1至图5描述的方法。

图6示例性地示出了根据本申请示例性实施方式的视觉关系检测装置6000的示意图。参见图6,装置6000包括候选区域提取模块6010、检测区域获取模块6020和确定模块6030。

在装置6000中,候选区域提取模块6010可从图像提取用于物体检测的多个候选区域。检测区域获取模块6020可基于多个候选区域得到多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到。确定模块6030可分别基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,确定主语物体、宾语物体及谓语关系。确定模块6030可包括第一获取子模块。第一获取子模块可基于主语检测区域、宾语检测区域及谓语检测区域,分别获取主语物体、宾语物体和谓语关系的类别和位置。确定模块6030还包括第一生成子模块。第一生成子模块可基于获取的类别确定与主语物体、宾语物体以及谓语关系相对应的语义,由此生成视觉关系短语。在一个实施方式中,第一获取子模块可通过主语卷积神经网络(CNN)从主语检测区域获取主语物体的类别和位置;可通过谓语CNN从谓语检测区域获取谓语关系的类别和位置;以及可通过宾语CNN从宾语检测区域获取宾语物体的类别和位置。

在一个实施方式中,确定模块6030还可包括第二获取子模块和第二生成子模块。第二获取子模块可获取各个主语物体、宾语物体和谓语关系分别对应的分值。第二生成子模块可基于第二获取子模块获取的分值,确定一个或多个视觉关系短语作为目标视觉关系短语。

确定模块6030还可包括信息传输子模块6040。信息传输子模块6040可将主语CNN的主语特征信息及宾语CNN的宾语特征信息传输至谓语CNN,并基于主语特征信息及宾语特征信息更新谓语CNN的谓语特征信息;将谓语CNN的谓语特征信息传输至主语CNN及谓语CNN,并基于谓语特征信息更新主语CNN的主语特征信息及谓语CNN的谓语特征信息。确定模块6030还可包括确定子模块。确定子模块可根据更新后的主语特征信息、谓语特征信息和宾语特征信息,分别确定主语物体、谓语关系和宾语物体的类别。信息传输子模块还可用于在主语CNN与谓语CNN之间通过卷积层或全连接层传输信息,以及在宾语CNN与谓语CNN之间通过卷积层或全连接层传输信息。

在一个实施方式中,信息传输子模块可包括第一传输子模块和第二传输子模块。第一传输子模块可用于在卷积层通过并行方式传输信息,第二传输子模块可用于在全连接层通过串行方式传输信息。在一个实施方式中,卷积层包括第一子卷积层和第二子卷积层,第一传输子模块还可将主语CNN的主语特征信息和宾语CNN的宾语特征信息通过第一子卷积层传输至谓语CNN,以及将谓语CNN的谓语特征信息通过第二子卷积层传输至主语CNN和宾语CNN。在另一实施方式中,第二传输子模块还可将主语CNN的主语特征信息传输到谓语CNN,以及将宾语CNN的宾语特征信息传输到谓语CNN;,将谓语CNN的谓语特征信息分别传输到主语CNN和宾语CNN。

在一个实施方式中,主语检测区域和宾语检测区域分别具有相应的置信分数,主语检测区域和宾语检测区域两两组合成对以构成主宾对检测区域,针对多个主宾对检测区域中的任两个。装置6000还可包括置信分数确定模块和删除模块。置信分数确定模块可确定任两个主宾对检测区域的交并比和每个主宾对检测区域的置信分数。当两个主宾对检测区域的交并比大于预定阈值时,删除模块可删除两个主宾对检测区域中置信分数低的主宾对检测区域对应的视觉关系检测区域集。

图7是示出根据本申请示例性实施方式的视觉关系检测训练装置7000的框图。

装置7000可包括训练区域提取模块7010、检测区域获取模块7020、预测模块7030和训练模块7040、训练区域提取模块7010可从已标注训练图像提取用于物体检测的多个训练区域。检测区域获取模块7020可基于多个训练区域获得多个视觉关系检测区域集,其中,视觉关系检测区域集包括主语检测区域、宾语检测区域及谓语检测区域,主语检测区域包括多个候选区域中的任意一个,宾语检测区域包括多个候选区域中的任意一个,谓语检测区域由主语检测区域及宾语检测区域得到。

预测模块7030可基于每个视觉关系检测区域集中的主语检测区域、宾语检测区域及谓语检测区域,分别通过主语CNN、谓语CNN和宾语CNN,预测主语物体、宾语物体及谓语关系。训练模块7040可根据已标注训练图像中的标注信息,与预测得到的主语物体、宾语物体及谓语关系之间的差异,分别训练主语CNN、宾语CNN及谓语CNN。

训练模块7040可包括第一训练子模块和第二训练子模块。第一训练子模块单独训练主语CNN、宾语CNN和谓语CNN。第二训练子模块可整体训练主语CNN、宾语CNN和谓语CNN。在一个实施方式中,第一训练子模块可将主语检测区域和真实区域之间的交并比、谓语检测区域和真实区域之间的交并比以及宾语检测区域和真实区域之间的交并比分别与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域以及宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语CNN、谓语CNN和宾语CNN将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语CNN、谓语CNN和宾语CNN直至训练结果满足预定收敛条件。这里,训练误差可包括区域位置误差和分类误差。在这个过程中,对主语CNN、谓语CNN和宾语CNN这三个CNN的训练相互之间没有影响,并且每个CNN的训练目标相互之间也没有影响。

第二训练子模块可将主语检测区域和真实区域之间的交并比、宾语检测区域和真实区域之间的交并比均与预定阈值进行比较,并根据比较结果确定主语检测区域、谓语检测区域、宾语检测区域的样本状态及训练误差,样本状态包括正样本及负样本;以及分别通过主语CNN、谓语CNN和宾语CNN将主语检测区域、谓语检测区域以及宾语检测区域相应的训练误差反向传播,以迭代训练主语CNN、谓语CNN和宾语CNN直至训练结果满足预定收敛条件。在这个过程中,主语CNN、谓语CNN和宾语CNN看做一个整体,三个CNN的训练目标相互影响。只有当主语和宾语检测区域均与真实区域之间的交并比大于一定阈值时,主语候选区域、谓语候选区域和宾语候选区域才看作是正样本。否则,均视为负样本。通过这种训练方式能够整体地训练三个神经网络的参数,并促使信息传输单元学习发挥相应的信息传输作用。在一个实施方式中,在三个CNN之间传输训练误差可通过信息传输单元来进行。

参照图6和7描述的视觉关系检测装置和视觉关系检测训练装置可通过计算机装置来实施。该计算机装置可包括存储有可执行指令的存储器以及处理器。处理器与存储器通信以执行可执行指令从而实施参照图6和7描述的视觉关系检测装置和视觉关系检测训练装置。可替代地或附加地,参照图6和7描述的装置可通过非暂时性计算机存储介质来实施。该介质存储计算机可读指令,当这些指令被执行时使处理器实施参照图6和7描述的装置。

现参照图8,该图示出了适合实施本申请示例性实施方式的计算机装置8000的结构示意图。

如图8所示,计算机装置8000包括处理单元(如中央处理单元(CPU)8001、或图像处理单元GPU等),其可根据存储在只读存储器(ROM)8002中的程序或从存储部分8008加载至随机存取存储器(RAM)8003中的程序而执行各种适当的动作和过程。在RAM 8003中,还存储有装置8000操作所需要的各种程序和数据。CPU 8001、ROM 8002和RAM 8003通过总线8004彼此连接。输入/输出I/O接口8005也与总线8004连接。

以下为与I/O接口8005连接的部件:包括键盘、鼠标等的输入部分8006;包括阴极射线管CRT、液晶显示设备LCD和扬声器等的输出部分8007;包括硬盘等的存储部分8008;以及包括网络接口卡(如LAN卡和调制解调器等)的通信部分8009。通信部分8009通过诸如因特网等网络执行通信处理。根据需要,驱动器8010也与I/O接口8005连接。如磁盘、光盘、磁光盘、半导体存储器等的可拆卸介质8011可安装在驱动器8010上,以便于从其上读出的计算机程序根据需要被安装入存储部分8008。

具体地,根据本公开的示例性实施方式,以上参照图1至图4描述的方法可实施为计算机软件程序。例如,本公开的示例性实施方式包括计算机程序产品,该产品包括有形地体现在机器可读介质中的计算机程序。该计算机程序包括用于执行图1至图4的方法的程序代码。在这种示例性实施方式中,计算机程序可通过通信部分8009从网络上下载并进行安装,和/或可从可拆卸介质8011安装。

附图中的流程图和框图,图示了按照本发明各种示例性实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。

本申请的示例性实施方式所涉及的单元或模块可通过软件或硬件实施。所描述的单元或模块也可设置在处理器中。这些单元或模块的名称不应被视为限制这些单元或模块。

在另一方面,本申请还提供计算机可读存储介质。计算机可读存储介质可以是包括在上述示例性实施方式的装置中的计算机可读存储介质,其也可以是未装配在上述装置中的计算机可读存储介质。计算机可读存储介质存储一个或多个程序,一个或多个处理器使用上述程序来执行本申请中所描述的估计方法。

上文仅仅是对本申请的优选示例性实施方式以及所应用的技术原理的描述。本领域的技术人员应理解,本申请的发明范围并不限于由上述技术特征的特定组合构成的技术方案。在不脱离本发明的构思的情况下,本发明的范围还应覆盖由上述技术特征及其等同特征的任意组合构成的其他技术方案。例如,通过将以上公开的特征替换为具有相似功能的技术特征而构成的技术方案也落入本发明的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1