对象关系预测方法、装置、终端设备及可读存储介质与流程

文档序号:20687789发布日期:2020-05-08 18:58阅读:187来源:国知局
对象关系预测方法、装置、终端设备及可读存储介质与流程

本申请属于图像识别技术领域,尤其涉及一种对象关系预测方法、装置、终端设备及可读存储介质。



背景技术:

随着技术发展,图像识别中,对个体对象的识别和检测已经有了巨大的进步,然而,对于对象之间的关系检测,依然需要进行改进。

现有技术中,将不同对象的关系作为一个主谓宾的三元组,主语和宾语分别为不同的对象,谓词则是这两个对象之间的关系,通过视觉基因组(visualgenome,vg)数据集,对两个对象之间的谓词类别进行预测,其中,vg数据集中包括了固定数量的对象类别和与对象类别搭配的谓词类别。

但是,由于vg数据集中的对象类别和谓词类别数量是固定的,在出现零样本的情况时(即vg数据集中不存在该对象类别和与其搭配的谓词类别),无法准确的预测两个对象之间的关系,得到的预测结果不够准确。



技术实现要素:

本申请实施例提供了一种对象关系预测方法、装置、终端设备及可读存储介质,可以改善零样本时,无法准确的预测两个对象之间的关系,得到的预测结果不够准确的问题。

第一方面,本申请实施例提供了一种对象关系预测方法包括:

通过预设的对象检测器,获取待检测图像中多个对象的特征信息、以及待检测图像的视觉特征向量,其中,特征信息包括对象的类别标签以及对象的边界信息。根据每个对象的特征信息,获取多个对象的非视觉特征向量,其中,非视觉特征向量是由两个对象之间的位置向量以及两个对象的语义嵌入向量串联得到的,语义嵌入向量是根据预设数据库中,每个对象的类别标签映射得到的,用于表示两个对象之间的语义关系。根据任意两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果,其中,谓词用于表示两个对象之间的关系。

一些实施方式中,根据每个对象的特征信息,获取多个对象的非视觉特征向量,包括:获取每个对象对应的掩码图,根据每个对象对应的掩码图,得到每两个对象之间的位置向量,其中,掩码图用于表示每个对象在待检测图像中的位置。将任意两个对象中的第一对象的类别标签映射为主语嵌入向量,将任意两个对象中的第二对象的类别标签映射为宾语嵌入向量。将主语向量和宾语向量串联,得到语义嵌入向量。

一些实施方式中,根据每个对象对应的掩码图,得到每两个对象之间的位置向量,包括:根据每个对象的边界信息,获取每个对象对应的位置掩码图,其中,每个对象对应的位置掩码图用于掩盖待检测图像中,每个对象的边界以外的区域。将每两个对象对应的位置掩码图串联,得到双重位置掩码图。通过预设的位置提取算法,根据双重位置掩码图得到位置向量。

一些实施方式中,根据两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果,包括:将两个对象之间的非视觉特征向量和视觉特征向量根据预设权重串联,并乘以预设的权重矩阵,得到待评分谓词的第一预测向量,其中,待评分谓词是从预设谓词库中获取的。将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量,其中,k为大于1的整数。根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果。

一些实施方式中,根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果,包括:将第一预测向量和k个第二预测向量的平均值,作为待评分谓词的预测得分。将多个待评分谓词的预测得分中,得分大于预设阈值的待评分谓词,作为两个对象之间的谓词预测结果。

一些实施方式中,通过预设的对象检测器,获取待检测图像的视觉特征向量,包括:将待检测图像输入预设的对象检测器,得到待检测图像的特征图。通过预设的对象检测器中的全局池化层处理特征图,得到待检测图像的视觉特征向量。

一些实施方式中,将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量,包括:获取k个与特征图尺寸相同的注意力掩码图,其中,每个注意力掩码图展示了部分特征图,k个注意力掩码图展示的特征图拼接后等于特征图。每次迭代时,根据不同的注意力掩码图,更新视觉特征向量的权重,得到k个视觉特征向量的权重。将非视觉特征向量和视觉特征向量根据k个视觉特征向量的权重串联,并乘以预设的权重矩阵,得到k个第二预测向量。

第二方面,本申请实施例提供了一种对象关系预测装置包括:

获取模块,用于通过预设的对象检测器,获取待检测图像中多个对象的特征信息、以及待检测图像的视觉特征向量,其中,特征信息包括对象的类别标签以及对象的边界信息。获取模块,还用于根据每个对象的特征信息,获取多个对象的非视觉特征向量,其中,非视觉特征向量是由两个对象之间的位置向量以及两个对象的语义嵌入向量串联得到的,语义嵌入向量是根据预设数据库中,每个对象的类别标签映射得到的,用于表示两个对象之间的语义关系。预测模块,用于根据任意两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果,其中,谓词用于表示两个对象之间的关系。

一些实施方式中,获取模块,具体用于获取每个对象对应的掩码图,根据每个对象对应的掩码图,得到每两个对象之间的位置向量,其中,掩码图用于表示每个对象在待检测图像中的位置。将任意两个对象中的第一对象的类别标签映射为主语嵌入向量,将任意两个对象中的第二对象的类别标签映射为宾语嵌入向量。将主语向量和宾语向量串联,得到语义嵌入向量。

一些实施方式中,获取模块,具体用于根据每个对象的边界信息,获取每个对象对应的位置掩码图,其中,每个对象对应的位置掩码图用于掩盖待检测图像中,每个对象的边界以外的区域。将每两个对象对应的位置掩码图串联,得到双重位置掩码图。通过预设的位置提取算法,根据双重位置掩码图得到位置向量。

一些实施方式中,预测模块,具体用于将两个对象之间的非视觉特征向量和视觉特征向量根据预设权重串联,并乘以预设的权重矩阵,得到待评分谓词的第一预测向量,其中,待评分谓词是从预设谓词库中获取的。将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量,其中,k为大于1的整数。根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果。

一些实施方式中,预测模块,具体用于将第一预测向量和k个第二预测向量的平均值,作为待评分谓词的预测得分。将多个待评分谓词的预测得分中,得分大于预设阈值的待评分谓词,作为两个对象之间的谓词预测结果。

一些实施方式中,获取模块,具体用于将待检测图像输入预设的对象检测器,得到待检测图像的特征图。通过预设的对象检测器中的全局池化层处理特征图,得到待检测图像的视觉特征向量。

一些实施方式中,预测模块,具体用于获取k个与特征图尺寸相同的注意力掩码图,其中,每个注意力掩码图展示了部分特征图,k个注意力掩码图展示的特征图拼接后等于特征图。每次迭代时,根据不同的注意力掩码图,更新视觉特征向量的权重,得到k个视觉特征向量的权重。将非视觉特征向量和视觉特征向量根据k个视觉特征向量的权重串联,并乘以预设的权重矩阵,得到k个第二预测向量。

第三方面,本申请实施例提供了一种终端设备,包括:存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如第一方面提供的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如第一方面提供的方法。

第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备实现如第一方面提供的方法。

可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

本申请实施例与现有技术相比存在的有益效果是:

获取待检测图像中多个对象的特征信息、以及待检测图像的视觉特征向量,然后根据每个对象的特征信息,获取多个对象的非视觉特征向量,其中,非视觉特征向量是两个对象之间的位置向量以及两个对象的语义嵌入向量串联得到的,语义嵌入向量用于表示两个对象之间的语义关系。根据两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果。由于在预测谓词时,考虑了两个对象之间的位置向量以及两个对象的语义嵌入向量,使得在出现零样本的对象标签时,可以根据零样本对象的语义嵌入向量、零样本对象的位置,确定零样本对象和现有对象之间的关系,有效的提高了在出现零样本时,两个对象之间关系的预测准确度。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的应用对象关系预测方法的系统的示意图;

图2是本申请一实施例提供的对象关系预测方法的流程示意图;

图3是本申请一实施例提供的对象关系预测方法中待检测图像的示意图;

图4是本申请另一实施例提供的对象关系预测方法的流程示意图;

图5是本申请另一实施例提供的对象关系预测方法的流程示意图;

图6是本申请一实施例提供的对象关系预测方法中位置掩码图的示意图1;

图7是本申请一实施例提供的对象关系预测方法中位置掩码图的示意图2;

图8是本申请一实施例提供的对象关系预测方法中双重位置掩码图的示意图;

图9是本申请另一实施例提供的对象关系预测方法的流程示意图;

图10是本申请另一实施例提供的对象关系预测方法的流程示意图;

图11是本申请另一实施例提供的对象关系预测方法的流程示意图;

图12是本申请另一实施例提供的对象关系预测方法的流程示意图;

图13是本申请实施例提供的对象关系预测装置的结构示意图;

图14是本申请实施例提供的终端设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

图1示出了本申请一实施例提供的应用对象关系预测方法的系统的示意图。

如图1所示,该场景中包括待检测图像11、对象检测器12、谓词预测模型13、谓词预测结果14。

一些实施方式中,对象检测器12和谓词预测模型13可以以软件的形式在终端设备上运行,其中,终端设备可以是台式电脑、笔记本电脑、平板电脑、服务器、智能手机、云端服务器等。

对象检测器12和谓词预测模型13可以运行在同一终端设备上,也可以分别由不同的终端设备运行,在此不做限制。对象检测器12可以是基于较快速区域卷积神经网络(fasterregion-convolutionalneuralnetworks,faster-rcnn)的检测模型,谓词预测模型13则可以是基于门控循环单元(gatedrecurrentunit,gru)的预测模型,其模型类型不做限制。

待检测图像11可以是预先存储在运行对象检测器12的终端设备中的图像,也可以是与该终端设备通信连接的其他终端设备发送的,在此不做限制。

需要说明的是,谓词预测结果14包括待检测图像11中多个对象的谓词预测结果。

图2示出了本申请一实施例提供的对象关系预测方法的流程示意图,作为示例而非限定,该方法可以应用于上述终端设备中。

s21、通过预设的对象检测器,获取待检测图像中多个对象的特征信息、以及待检测图像的视觉特征向量。

其中,特征信息包括对象的类别标签以及对象的边界信息。

图3示出了对象关系预测方法中待检测图像的示意图。

请参考图3,仅作为示例而非限定,待检测图像11中可以包括3个对象,人32、台子33、手机34,其中,“人”“手机”“台子”即为每个对象的类别标签。

如图3所示,每个对象都可以由一个框框住,该框的边界信息即为对象的边界信息。

s22、根据每个对象的特征信息,获取多个对象的非视觉特征向量。

其中,非视觉特征向量是由两个对象之间的位置向量以及两个对象的语义嵌入向量串联得到的,语义嵌入向量是根据预设数据库中,每个对象的类别标签映射得到的,用于表示两个对象之间的语义关系。

需要说明的是,在待检测图像11中,每两个对象之间都存在着关系,例如“人拿手机”、“人站台子”、“手机靠近台子”等,对象之间的关系可以通过对象之间的位置,以及对象所代表的语义来确定,即对象之间的位置向量以及两个对象的语义嵌入向量。

其中,语义嵌入向量可以是一个d维的向量,d代表对象的类别标签数量,在语义嵌入向量中,每个元素代表一种语义,该元素的值为0,则表示对象不存在该语义,反之,该元素的值为1,则代表对象存在该语义。在不确定有多少种类别标签时,可以将d设置为一个预设值,例如300、400或500。但不以此为限。

仅作为示例而非限定,可以通过使用在维基百科语料库上进行预训练的word2vec模型作为嵌入模型来嵌入语义,在嵌入时,维度d可以设置为300。

s23、根据任意两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果。

其中,谓词用于表示两个对象之间的关系。

参考s22中每两个对象之间关系的示例,“人拿手机”则“拿”为“人”和“手机”两个对象之间的关系。两个对象之间的关系可能不止一种,例如,“人拿手机”还可以是“人看手机”、“人玩手机”等,因此,得出的谓词预测结果也可能存在多个。

在本实施例中,由于在预测谓词时,考虑了两个对象之间的位置向量以及两个对象的语义嵌入向量,使得在出现零样本的对象标签时,可以根据零样本对象的语义嵌入向量、零样本对象的位置,确定零样本对象和现有对象之间的关系,有效的提高了在出现零样本时,两个对象之间关系的预测准确度。

图4示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图4所示,根据每个对象的特征信息,获取多个对象的非视觉特征向量,包括:

s221、获取每个对象对应的掩码图,根据每个对象对应的掩码图,得到每两个对象之间的位置向量。

其中,掩码图用于表示每个对象在待检测图像中的位置。

图5示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图5所示,根据每个对象对应的掩码图,得到每两个对象之间的位置向量,包括:

s2211、根据每个对象的边界信息,获取每个对象对应的位置掩码图。

其中,每个对象对应的位置掩码图用于掩盖待检测图像中,每个对象的边界以外的区域。

图6和图7分别示出了两种位置掩码图,第一位置掩码图15中,展示了待检测图像中的一个对象“人”,第二位置掩码图16中,展示了待检测图像中的另一个对象“手机”。根据图6和图7,可以看出,在掩码图中,仅存在遮掩和显示两种情况,因此可以采用二进制掩码图,将需要掩盖的位置的像素值全部置0,将需要展示的位置的像素值全部置1。

需要说明的是,虽然图6和图7中示出的位置掩码图与待检测图像的尺寸相同,不过位置掩码图的尺寸并不做限制,例如,可以将位置掩码图的尺寸设置为32*32,在此不做限制。

s2212、将每两个对象对应的位置掩码图串联,得到双重位置掩码图。通过预设的位置提取算法,根据双重位置掩码图得到位置向量。

图8示出了双重位置掩码图,图8中,将图6和图7串联(即叠加),则展示部分重合,得到了图8中的双重位置掩码图,在一些实施方式中,可以将双重位置掩码图输入到具有3个残差块的小型雷斯网络(resnet)中,提取得到位置向量。

s222、将任意两个对象中的第一对象的类别标签映射为主语嵌入向量,将任意两个对象中的第二对象的类别标签映射为宾语嵌入向量。

一些实施方式中,将两个对象映射为主语嵌入向量和宾语嵌入向量时,选择不同的对象作为主语,预测得到的谓词是不同的,例如,参考图1中的对象,将“人”做主语,“手机”做宾语时,预测得到的谓词可能是“拿”“玩”“看”等,而将“手机”做主语,“人”做宾语时,预测得到的谓词则会发生变化,例如,“手机拍人”“手机靠近人”等。

s223、将主语向量和宾语向量串联,得到语义嵌入向量。

需要说明的是,语义嵌入向量可以捕获到不同类别的对象之间的语义关系,例如,如果预设数据库中出现有“人骑马”,但没有“人骑大象”,则语义嵌入向量可以将“马”和“大象”之间的语义作为语义相似性信息,使得谓词预测网络可以更好地预测他们之间的关系,增强在零样本的预测准确度。

图9示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图9所示,根据两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果,包括:

s231、将两个对象之间的非视觉特征向量和视觉特征向量根据预设权重串联,并乘以预设的权重矩阵,得到待评分谓词的第一预测向量。

其中,待评分谓词是从预设谓词库中获取的。

一些实施方式中,设第一预测向量为s′,则:

s′=ws·[u;v0]

其中,ws为预设的权重矩阵,v0为视觉特征向量,u为非视觉特征向量,[;]则表示按照预设的权重,将视觉特征向量和非视觉特征向量串联。

一些实施方式中,u为两个对象之间的语义嵌入向量与位置向量串联后,输入到多个全连接层中得到的非视觉特征向量。

s232、将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量。

其中,k为大于1的整数。

一些实施方式中,迭代时采用注意力机制,即根据两个对象的语义,查看待检测图像中的k个位置,并计算每个位置的第二预测向量。迭代k次后,得到的k个不同权重的视觉特征向量,每个不同权重的视觉特征向量可以用vk+1来表示,即第二预测向量sk为:

sk=ws·[u;vk+1]

s233、根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果。

图10示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图10所示,根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果,包括:

s2331、将第一预测向量和k个第二预测向量的平均值,作为待评分谓词的预测得分。

一些实施方式中,设待评分谓词的预测得分为s,则s可以通过以下公式计算:

s2332、将多个待评分谓词的预测得分中,得分大于预设阈值的待评分谓词,作为两个对象之间的谓词预测结果。

一些实施方式中,如s23所示的,两个对象之间会有多个谓词预测结果,为了保证谓词的准确性,可以将s大于预设阈值的谓词,作为谓词预测结果,若大于预设阈值的谓词有多个,则将作为主语和宾语的对象分别与每个谓词组合,获得两个对象之间的多个预测关系。

图11示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图11所示,通过预设的对象检测器,获取待检测图像的视觉特征向量,包括:

s211、将待检测图像输入预设的对象检测器,得到待检测图像的特征图。

s212、通过预设的对象检测器中的全局池化层处理特征图,得到待检测图像的视觉特征向量。

一些实施方式中,预设对象检测器通过预设的卷积层对待检测图像进行卷积,得到待检测图像的特征图v,例如,若通过多个预设的卷积层后,待检测图像的每个边缩小16倍,则特征图v的大小为h和w分别为带预测图像的高度和宽度。

其中,待检测图像的特征图用于表示待检测图像的全局视觉特征,由于经过多次卷积提取特征,特征图v反映了高维度的全局特征,因此,将特征图v通过全局池化层转换为视觉特征向量后,视觉特征向量能够表示全局的视觉特征。

图10示出了本申请另一实施例提供的对象关系预测方法的流程示意图,一些实施方式中,如图10所示,将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量,包括:

s2321、获取k个与特征图尺寸相同的注意力掩码图。

其中,每个注意力掩码图展示了部分特征图,k个注意力掩码图展示的特征图拼接后等于特征图。

一些实施方式中,注意力掩码图的形式与s2211中的位置掩码图类似,只是注意力掩码图用于将待检测图像中需要检测的部分依次检测。

其中,需要检测的部分是指根据注意力模块获取的检测位置,例如,若检测“人拿帽子”,则需要检测人手处是否存在帽子,若检测的是人戴帽子,则需要检测人头顶处是否存在帽子。

s2322、每次迭代时,根据不同的注意力掩码图,更新视觉特征向量的权重,得到k个视觉特征向量的权重。

一些实施方式中,可利用gru来进行迭代,在第k次迭代中,将:

fk=wi2·relu(wil·[u;v0])

作为gru的输入,通过gru计算以下隐含变量:

rk=σ(wirfk+bir+whrhk-1+bhr)

zk=σ(wizfk+biz+whzhk-1+bhz)

nk=tanh(winfk+bin+rk(whnhk-1+bhn))

hk=(1-zk)hk-1+zknk

其中,在第k次迭代中,wi1和wi2分别表示对象以第i个谓词作为两者之间的关系时,两次在[u;v0]上进行加权的矩阵,wir、wiz和win分别是以第i个谓词作为对象间的关系时,经过gru模块中重置门、更新门和候选激活门的权重矩阵,bir、biz和bin分别是以第i个谓词作为对象间的关系时,经过gru模块中重置门、更新门和候选激活门的偏置。

whr、whz和whn分别是gru模块中重置门、更新门和候选激活门的内部权重矩阵,bhr、bhz和bhn分别是gru模块中重置门、更新门和候选激活门的内部偏置。

hk-1表示gru模块上一次迭代中的输出状态,nk表示gru模块输出前对重置门信息rk、历史信息hk-1及输入信息fk的过滤,hk即表示gru模块在第k次迭代中的最终输出。

隐藏向量hk+1可以看作是大小为1×1的特征图,其通道数与hk+1的大小相同。然后将hk+1输入到转置卷积层,以生成一张单通道d×d大小的注意力掩码图mk。可根据需要查看的待检测图像的位置信息,对mk进行编码,以得到所需的注意力掩码图。

需要说明的是,对mk进行编码也可采用二进制掩码图的编码方式,在此不再赘述。

一些实施方式中,mk和特征图v的尺寸是不同的,为了提高检测准确率,需要mk的尺寸调整到与v相同,则可以通过双线性插值法将注意力掩码图mk调整为与v相同的尺寸。然后,在两个空间轴上对mk应用softmax函数,得到与v尺寸相同且归一化的蒙版,作为注意力掩码图mk。

s2323、将非视觉特征向量和视觉特征向量根据k个视觉特征向量的权重串联,并乘以预设的权重矩阵,得到k个第二预测向量。

一些实施方式中,vk+1是对特征图v在空间上加权mk得到的,即:

其中,待检测图像可以用图像坐标(i,j)表示,则mk(i,j)是在坐标(i,j)中的标量,而v(i,j)是一个在坐标(i,j)中的向量。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文实施例所述的对象关系预测方法,图13示出了本申请实施例提供的对象关系预测装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。

参照图13,该装置包括:

获取模块41,用于通过预设的对象检测器,获取待检测图像中多个对象的特征信息、以及待检测图像的视觉特征向量,其中,特征信息包括对象的类别标签以及对象的边界信息。获取模块41,还用于根据每个对象的特征信息,获取多个对象的非视觉特征向量,其中,非视觉特征向量是由两个对象之间的位置向量以及两个对象的语义嵌入向量串联得到的,语义嵌入向量是根据预设数据库中,每个对象的类别标签映射得到的,用于表示两个对象之间的语义关系。预测模块42,用于根据任意两个对象之间的非视觉特征向量和视觉特征向量,通过预设的谓词预测模型,获取两个对象之间的谓词预测结果,其中,谓词用于表示两个对象之间的关系。

一些实施方式中,获取模块41,具体用于获取每个对象对应的掩码图,根据每个对象对应的掩码图,得到每两个对象之间的位置向量,其中,掩码图用于表示每个对象在待检测图像中的位置。将任意两个对象中的第一对象的类别标签映射为主语嵌入向量,将任意两个对象中的第二对象的类别标签映射为宾语嵌入向量。将主语向量和宾语向量串联,得到语义嵌入向量。

一些实施方式中,获取模块41,具体用于根据每个对象的边界信息,获取每个对象对应的位置掩码图,其中,每个对象对应的位置掩码图用于掩盖待检测图像中,每个对象的边界以外的区域。将每两个对象对应的位置掩码图串联,得到双重位置掩码图。通过预设的位置提取算法,根据双重位置掩码图得到位置向量。

一些实施方式中,预测模块42,具体用于将两个对象之间的非视觉特征向量和视觉特征向量根据预设权重串联,并乘以预设的权重矩阵,得到待评分谓词的第一预测向量,其中,待评分谓词是从预设谓词库中获取的。将串联的非视觉特征向量和视觉特征向量,输入待训练的谓词预测模型,迭代k次,得到k个待评分谓词的第二预测向量,其中,k为大于1的整数。根据每个待评分谓词的第一预测向量和每个待评分谓词的k个第二预测向量,确定两个对象之间的谓词预测结果。

一些实施方式中,预测模块42,具体用于将第一预测向量和k个第二预测向量的平均值,作为待评分谓词的预测得分。将多个待评分谓词的预测得分中,得分大于预设阈值的待评分谓词,作为两个对象之间的谓词预测结果。

一些实施方式中,获取模块41,具体用于将待检测图像输入预设的对象检测器,得到待检测图像的特征图。通过预设的对象检测器中的全局池化层处理特征图,得到待检测图像的视觉特征向量。

一些实施方式中,预测模块42,具体用于获取k个与特征图尺寸相同的注意力掩码图,其中,每个注意力掩码图展示了部分特征图,k个注意力掩码图展示的特征图拼接后等于特征图。每次迭代时,根据不同的注意力掩码图,更新视觉特征向量的权重,得到k个视觉特征向量的权重。将非视觉特征向量和视觉特征向量根据k个视觉特征向量的权重串联,并乘以预设的权重矩阵,得到k个第二预测向量。

需要说明的是,上述装置的模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本申请实施例还提供了一种终端设备,图14示出了终端设备的结构示意图。

如图14所示,终端设备5包括存储器52、处理器51以及存储在存储器5中并可在处理器51上运行的计算机程序53,处理器51执行计算机程序53时实现上述的对象关系预测方法。

处理器51可以是中央处理单元(centralprocessingunit,cpu),该处理器51还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器52在一些实施例中可以是终端设备5的内部存储单元,例如终端设备5的硬盘、闪存或内存。存储器52在另一些实施例中也可以是终端设备5的外部存储设备,例如终端设备5上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器52还可以既包括终端设备5的内部存储单元也包括外部存储设备。存储器52用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如计算机程序53的程序代码、视频等。存储器52还可以用于暂时地存储已经输出或者将要输出的数据。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

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