用于生成图像识别模型的方法和装置与流程

文档序号:19286082发布日期:2019-11-29 23:34阅读:289来源:国知局
用于生成图像识别模型的方法和装置与流程

本公开涉及计算机技术领域,尤其是一种用于生成图像识别模型的方法和装置。



背景技术:

目前对图像检索领域(例如行人重识别)的研究主要集中在视觉特征提取和相似性度量方面。在视觉特征提取方面,例如可以将整张行人照片作为输入,提取整体特征;也可以将行人图片划分成不同的组件,对组件间的语义关系建模,并结合局部特征和全局特征进行训练;还可以结合其它额外信息(属性信息、图片语义描述等)来表征行人特征。

为了提高图像识别模型的识别准确性,需要从众多的训练样本中挖掘难样本(即距离较近的异类样本及距离较远的同类样本),从而使训练的模型能够更准确地提取图像的特征。



技术实现要素:

本公开的实施例提供了一种用于生成图像识别模型的方法和装置,以及用于识别图像的方法和装置。

本公开的实施例提供了一种用于生成图像识别模型的方法,该方法包括:基于预设的第一样本图像集合和第二样本图像集合,构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵;基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵;从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对;从匹配矩阵中,确定样本图像对对应的匹配值;基于样本图像对和匹配值,更新初始模型的权重参数,在初始模型符合预设条件时,将符合预设条件的初始模型确定为图像识别模型。

根据本公开实施例的另一个方面,提供了一种用于生成图像识别模型的装置,该装置包括:根据本公开实施例的另一个方面,提供了一种用于生成图像识别模型的装置,该装置包括:构建模块,用于基于预设的第一样本图像集合和第二样本图像集合,构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵;第一确定模块,用于基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵;选择模块,用于从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对;第二确定模块,用于从匹配矩阵中,确定样本图像对对应的匹配值;更新模块,用于基于样本图像对和匹配值,更新初始模型的权重参数,以使初始模型符合预设条件,并将符合预设条件的初始模型确定为图像识别模型。

根据本公开实施例的另一个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序用于执行上述用于生成图像识别模型的方法或用于识别图像的方法。

根据本公开实施例的另一个方面,提供了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行指令以实现上述用于生成图像识别模型的方法或用于识别图像的方法。

基于本公开上述实施例提供的用于生成图像识别模型的方法和装置,通过构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵,再基于边权矩阵确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵,基于匹配矩阵中的匹配值和样本图像对,对初始模型进行训练,得到图像识别模型,从而实现了基于边权矩阵从样本图像集合中提取难样本对,提高了训练得到的图像识别模型的识别准确性。

下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。

附图说明

通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1是本公开所适用的系统图。

图2是本公开一示例性实施例提供的用于生成图像识别模型的方法的流程示意图。

图3是本公开的实施例的数据处理方法的基于最大权值完美匹配得到的加权二分图的示意图。

图4是本公开另一示例性实施例提供的用于生成图像识别模型的方法的流程示意图。

图5是本公开的实施例的确定第一匹配矩阵和第二匹配矩阵的示例性示意图。

图6是本公开一示例性实施例提供的用于识别图像的方法的流程示意图。

图7是本公开一示例性实施例提供的用于生成图像识别模型的装置的结构示意图。

图8是本公开另一示例性实施例提供的用于生成图像识别模型的装置的结构示意图。

图9是本公开一示例性实施例提供的用于识别图像的装置的结构示意图。

图10是本公开一示例性实施例提供的电子设备的结构图。

具体实施方式

下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。

应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。

还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。

还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。

另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。

还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

申请概述

在检索问题的测试中,通常需要测量样本之间的相似性距离(欧氏距离,余弦距离等),即要求同类样本靠近,而异类样本远离。而id损失只考虑每类之间的类间距离尽量大,但没有考虑类内距离,这样在类别边缘的样本会被误检索。属性损失需要在数据集中对人的外貌、性别等属性进行标记,加大了工作量。

而目前广泛使用的对比损失或三元组损失,输入一个批量的样本,最初的做法是随机取出一对或一个三元组,这样忽略了一个样本与其余样本之间的信息;第二个做法是将所有对(三元组)样本间的距离求平均,这种做法在深度网络优化过程中没有对难样本有足够的重视,这样会造成网络收敛速度较慢并且性能较差;第三个做法是在批量中,取距离最大的样本对(三元组),即取最难的样本,这样会造成如果一批中存在一个离群(噪声)样本,这个离群(噪声)样本会跟多个样本进行匹配,这样会造成学习到的特征空间及度量空间失准和变形。

示例性系统

图1示出了可以应用本公开的实施例的用于生成图像识别模型的方法或用于生成图像识别模型的装置,以及用于识别图像的方法或用于识别图像的装置的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101,网络102和服务器103。网络102用以在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101通过网络102与服务器103交互,以接收或发送消息等。终端设备101上可以安装有各种通讯客户端应用,例如图像处理类应用、搜索类应用、网页浏览器应用、购物类应用、即时通信工具等。

终端设备101可以是各种电子设备,包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。

服务器103可以是提供各种服务的服务器,例如对终端设备101上传的图像进行处理的后台图像服务器。后台图像服务器可以利用接收到的图像进行模型训练,得到图像识别模型。或者利用图像识别模型识别输入的图像。

需要说明的是,本公开的实施例所提供的用于生成图像识别模型的方法或用于识别图像的方法可以由服务器103执行,也可以由终端设备101执行,相应地,用于生成图像识别模型的装置或用于识别图像的装置可以设置于服务器103中,也可以设置于终端设备101中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。在样本图像集合或待识别的图像不需要远程获取的情况下,上述系统架构可以不包括网络,只包括服务器或终端设备。

示例性方法

图2是本公开一示例性实施例提供的用于生成图像识别模型的方法的流程示意图。本实施例可应用在电子设备(如图1所示的服务器或终端设备)上,如图2所示,包括如下步骤:

步骤201,基于预设的第一样本图像集合和第二样本图像集合,构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵。

在本实施例中,边权矩阵的行和列可以分别表征第一样本图像集合和第二样本图像集合中包括的样本图像,相应的,边权矩阵中的元素(这里称为边权值)可以表征对应的两个样本图像的距离。距离的种类可以包括但不限于以下至少一种:欧式距离、余弦距离等。

作为示例,电子设备可以基于构建二分图的方法,将第一样本图像集合和第二样本图像集合中的样本作为顶点,基于第一样本图像集合中的样本图像和第二样本图像集合中的样本图像之间的距离确定边权值,构建二分图,该二分图可以用边权矩阵表示。具体地,同类样本图像(即正样本对)对应的边权值可以基于下式确定:

其中,i,j用于表征样本图像对的序号,α用于表征正样本对之间的最小距离。

异类样本图像(即负样本对)对应的边权值可以基于下式确定:

其中,β用于表征负样本对之间的最大距离。从上述式(1)和式(2)可以看出,对于正样本对,边权值越大,表示样本图像间的距离越大。对于负样本对,边权值越大,表示样本图像间的距离越小。

步骤202,基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵。

在本实施例中,电子设备可以基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵。其中,匹配矩阵的行和列分别表征第一样本图像集合和第二样本图像集合中的样本图像。匹配矩阵中的元素为匹配值,用于表征对应的两个样本图像的对应关系。例如,匹配矩阵可以包括正样本匹配矩阵和负样本匹配矩阵,正样本匹配矩阵中的匹配值为1,表示对应的两个样本图像为同类图像,负样本匹配矩阵中的匹配值为1,表示对应的两个样本图像为异类图像,匹配值为0表示对应的两个样本图像不具有对应关系。

作为示例,电子设备可以利用ka(kuhn-munkresassignment)算法确定匹配矩阵。如图3所示,顶点x1-x6用于表征第一样本图像集合中的样本图像,顶点y1-y6用于表征第二样本图像集合中的样本图像。图3(a)为构建的完全二分图,图3(b)为基于ka算法进行最大权值完美匹配(mvpmatching,maximum-valueperfectmatching)得到的一对一映射的加权二分图,可以用匹配矩阵表征。从图中可以看出,加权二分图中的各个顶点间是一对一匹配的,即每个顶点对应于一个表征同类样本图像的顶点(例如用实线表征同类样本图像,即正样本对),以及对应于一个表征异类样本图像的顶点(例如用虚线表征异类样本图像,即负样本对)。图中的白色顶点和灰色顶点分别表征不同的图像类别。

使用ka算法,可以使得边权和最大。其中,边权和如下式所示:

其中,i,j为样本对的序号,tij为匹配矩阵中的匹配值,mij为边权矩阵中的边权值。边权和越大,表示确定出的正样本对之间的距离越大,以及负样本对之间的距离越小,从而可以更准确地挖掘出难样本,有助于提高训练出的图像识别模型的准确性。

步骤203,从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对。

在本实施例中,电子设备可以从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对。具体地,电子设备可以按照各种方式选择样本图像,例如,可以按照第一样本图像集合中的样本图像的编号顺序和第二样本图像集合中的样本图像的编号顺序,依次选择样本图像组成样本图像对。

步骤204,从匹配矩阵中,确定样本图像对对应的匹配值。

在本实施例中,电子设备可以从匹配矩阵中,确定样本图像对对应的匹配值。具体地,电子设备可以根据样本图像对的编号,从匹配矩阵中确定匹配值。例如样本图像对为xi和yj,则可以从匹配矩阵中确定xi对应的行(或列)和yj对应的列(或行)指示的匹配值。

步骤205,基于样本图像对和匹配值,更新初始模型的权重参数,在初始模型符合预设条件时,将符合预设条件的初始模型确定为图像识别模型。

在本实施例中,电子设备可以基于样本图像对和匹配值,更新初始模型的权重参数,直至初始模型符合预设条件。具体地,作为示例,电子设备可以根据匹配值,确定样本图像对是否为正样本对或负样本对。如果为正样本对或负样本对,则可以基于度量学习方法,对初始模型进行训练,从而更新初始模型的权重参数。上述预设条件可以包括但不限于以下至少一种:训练次数达到预设次数、训练时长达到预设时长、基于预设的损失函数确定的损失值收敛。最后,电子设备将符合预设条件的初始模型确定为图像识别模型。通常,图像识别模型可以是用于提取图像的特征的模型,例如卷积神经网络,将图像输入图像识别模型,可以得到输入的图像的特征。

由于本实施例基于边权矩阵确定匹配矩阵,可以挖掘出样本图像集合中的难样本对,从而使得训练得到的图像识别模型可以更准确地提取图像的特征。

本公开的上述实施例提供的方法,通过构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵,再基于边权矩阵确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵,基于匹配矩阵中的匹配值和样本图像对,对初始模型进行训练,得到图像识别模型,从而实现了基于边权矩阵从样本图像集合中提取难样本对,提高了训练得到的图像识别模型的识别准确性。

进一步参考图4,示出了用于生成图像识别模型的方法的又一个实施例的流程示意图。如图4所示,在上述图2所示实施例的基础上,步骤201可包括如下步骤:

步骤2011,确定第一样本图像集合中的样本图像和第二样本图像集合中的样本图像之间的距离。

在本实施例中,距离可以包括但不限于以下至少一种:欧氏距离、余弦距离等。

作为示例,可以采用下式确定样本图像之间的距离:

其中,xi表征第一样本图像集合中的样本图像,xj表征第二样本图像集合中的样本图像。

步骤2012,基于距离,构建第一边权矩阵和第二边权矩阵。

在本实施例中,电子设备可以基于步骤2011确定的各个距离,构建第一边权矩阵和第二边权矩阵。其中,第一边权矩阵用于表征第一样本图像集合和第二样本图像集合中的同类样本图像之间的第一距离,第二边权矩阵用于表征第一样本图像集合和第二样本图像集合中的非同类样本图像之间的第二距离。

作为示例,第一距离可以根据上述图2对应实施例中描述的公式(1)确定,第二距离可以根据上述图2对应实施例中描述的公式(2)确定。

如图5所示,其示出了基于第一边权矩阵m+和第二边权矩阵m-确定第一匹配矩阵t+和第二匹配矩阵t-的示例性示意图。其中,矩阵的行编号x1-x6表示第一样本图像集合(即图中的集合u)中的样本图像,矩阵的列编号y1-y6表示第二样本图像集合(即图中的集合v)中的样本图像。图中的白色顶点和灰色顶点分别表示两种不同的图像类别。第一边权矩阵可以用表示正样本对的完全二分图gp表示,顶点间的实线表示可能的正样本对。第二边权矩阵可以用表示负样本对的完全二分图gn表示,顶点间的虚线表示可能的负样本对。

本实施例构建的第一边权矩阵和第二边权矩阵,可以分别用于提取正样本对和负样本对,可以更全面地从样本图像集合中提取各种样本对,从而有助于提高训练图像识别模型的准确性。

在一些可选的实现方式中,基于上述步骤2012构建的构建第一边权矩阵和第二边权矩阵,电子设备可以按照如下步骤确定匹配矩阵:

利用第一边权矩阵和第二边权矩阵,进行边权和最大值匹配,得到第一匹配矩阵和第二匹配矩阵。其中,第一匹配矩阵用于表征同类样本图像之间的对应关系,第二匹配矩阵用于表征非同类样本图像之间的对应关系。

边权和最大值匹配可以按照如下公式表征:

其中,i,j为样本对的序号,为第一匹配矩阵中的匹配值,为第二匹配矩阵中的匹配值,为第一边权矩阵中的边权值,为第二边权矩阵中的边权值。

电子设备可以利用各种方法进行边权和最大值匹配。例如,可以基于ka算法,进行边权和最大值匹配,从而确定第一匹配矩阵和第二匹配矩阵。

如图5所示,其示出了通过边权和最大值匹配确定第一匹配矩阵t+和第二匹配矩阵t-的示意图。第一匹配矩阵和第二匹配矩阵中的各行和各列均只包括一个非零元素,第一匹配矩阵中的非零元素表示对应的样本图像为正样本对,第二匹配矩阵中的非零元素表示对应的样本图像为负样本对。第一匹配矩阵可以用图中的二分图gt+表示,其中的顶点表示样本图像,顶点间的实线表示正样本对。第二匹配矩阵可以用图中的二分图gt-表示,其中的顶点表示样本图像,顶点间的虚线表示负样本对。

本实现方式通过边权和最大值匹配,可以使得边权和最大,即可以表示确定出的正样本对之间的距离最大,以及负样本对之间的距离最小,从而可以更准确地挖掘出难样本,有助于提高训练出的图像识别模型的准确性。

在一些可选的实现方式中,基于可选的实现方式中的第一匹配矩阵和第二匹配矩阵,电子设备可以按照如下步骤一和步骤二从匹配矩阵中,确定样本图像对对应的匹配值:

步骤一,响应于确定样本图像对包括的图像为同类图像,从第一匹配矩阵中确定匹配值。通常,每个样本图像具有对应的类别标注,如果样本图像对包括的图像的类别标注相同,则为同类图像,从上述第一匹配矩阵(即t+)中确定相应的匹配值。

步骤二,响应于确定样本图像对包括的图像为非同类图像,从第二匹配矩阵(即t-)中确定匹配值。

通过从第一匹配矩阵和第二匹配矩阵中分别确定匹配值,可以实现准确地从样本图像集合中选择难正样本对和难负样本对,从而有助于提高训练得到的图像识别模型的识别准确性。

在一些可选的实现方式中,电子设备可以按照如下步骤更新初始模型的权重参数:

利用预先构建的损失函数,基于样本图像对包括的样本图像之间的距离和对应的匹配值,调整初始模型的权重参数,当基于所述损失函数确定的损失值符合预设的收敛条件时,确定更新权重参数后的初始模型为图像识别模型。

作为示例,上述损失函数可以如下式所示:

其中,xi,xj表示样本对,yij用于表征样本对是否为同类样本,当样本对为同类样本时,yij为1,当样本对为同类样本时,yij为0。表示第一匹配矩阵的匹配值,表示第二匹配矩阵的匹配值,可以由上述公式(1)确定,可以由上述公式(2)确定。

通常,可以在对初始模型进行训练时,通过反向传播方法和梯度下降方法,反复更新初始模型的权重参数,使损失函数的损失值最小,当损失值收敛时,确定训练完成,将更新参数后的初始模型确定为图像识别模型。通过使用上述损失函数进行优化模型,可以实现利用匹配矩阵挖掘的难样本对模型进行训练,从而提高图像识别模型的识别准确性。

图6是本公开一示例性实施例提供的用于识别图像的方法的流程示意图。本实施例可应用在电子设备(如图1所示的服务器或终端设备)上,如图7所示,包括如下步骤:

步骤601,获取目标图像和待匹配图像集合。

在本实施例中,电子设备可以从本地或从远程获取目标图像和待匹配图像集合。其中,目标图像可以是待利用其进行图像检索的图像。例如,目标图像可以是预设的摄像头对行人拍摄的图像,待匹配图像集合可以是预先存储的行人图像集合。

步骤602,将目标图像和待匹配图像集合中的待匹配图像分别输入预先训练的图像识别模型,得到待识别图像的特征数据和待匹配图像的特征数据。

在本实施例中,电子设备可以将目标图像和待匹配图像集合中的待匹配图像分别输入预先训练的图像识别模型,得到待识别图像的特征数据和待匹配图像的特征数据。其中,图像识别模型可以是如上述图2对应实施例中描述的方法得到的图像识别模型。

步骤603,基于所得到的特征数据,确定目标图像分别与待匹配图像集合中的图像的相似度。

在本实施例中,电子设备可以基于所得到的特征数据,确定目标图像分别与待匹配图像集合中的图像的相似度。其中,相似度可以用特征数据之间的距离表征。例如,当距离为欧式距离时,距离越大,相似度越小。当距离为余弦距离时,距离越大,相似度越大。

步骤604,将符合预设条件的相似度对应的待匹配图像,确定为与目标图像匹配的图像。

在本实施例中,电子设备可以将符合预设条件的相似度对应的待匹配图像,确定为与目标图像匹配的图像。作为示例,本实施例的预设条件可以为目标图像的特征数据和待匹配图像的特征数据之间的相似度大于或等于预设的相似度阈值。

本公开的上述实施例提供的方法用于识别图像的方法,通过使用上述图2对应实施例中的方法训练得到的图像识别模型,可以准确地提取输入的图像的特征数据,从而可以提高图像匹配的准确性,将该图像识别模型应用到行人重识别领域中,可以提高行人重识别的准确性。

本公开实施例提供的任一种用于生成图像识别模型的方法或用于识别图像的方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:终端设备和服务器等。或者,本公开实施例提供的任一种用于生成图像识别模型的方法或用于识别图像的方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本公开实施例提及的任一种用于生成图像识别模型的方法或用于识别图像的方法。下文不再赘述。

示例性装置

图7是本公开一示例性实施例提供的用于生成图像识别模型的装置的结构示意图。本实施例可应用在电子设备上,如图7所示,用于生成图像识别模型的装置包括:构建模块701,用于基于预设的第一样本图像集合和第二样本图像集合,构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵;第一确定模块702,用于基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵;选择模块703,用于从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对;第二确定模块704,用于从匹配矩阵中,确定样本图像对对应的匹配值;更新模块705,用于基于样本图像对和匹配值,更新初始模型的权重参数,在初始模型符合预设条件时,将符合预设条件的初始模型确定为图像识别模型。

在本实施例中,构建模块701可以基于预设的第一样本图像集合和第二样本图像集合,构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵。

其中,边权矩阵的行和列可以分别表征第一样本图像集合和第二样本图像集合中包括的样本图像,相应的,边权矩阵中的元素(这里称为边权值)可以表征对应的两个样本图像的距离。距离的种类可以包括但不限于以下至少一种:欧式距离、余弦距离等。

作为示例,构建模块701可以基于构建二分图的方法,将第一样本图像集合和第二样本图像集合中的样本作为顶点,基于第一样本图像集合中的样本图像和第二样本图像集合中的样本图像之间的距离确定边权值,构建二分图,该二分图可以用边权矩阵表示。

在本实施例中,第一确定模块702可以基于边权矩阵,确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵。其中,匹配矩阵的行和列分别表征第一样本图像集合和第二样本图像集合中的样本图像。匹配矩阵中的元素为匹配值,用于表征对应的两个样本图像的对应关系。例如,匹配矩阵可以包括正样本匹配矩阵和负样本匹配矩阵,正样本匹配矩阵中的匹配值为1,表示对应的两个样本图像为同类图像,负样本匹配矩阵中的匹配值为1,表示对应的两个样本图像为异类图像,匹配值为0表示对应的两个样本图像不具有对应关系。

在本实施例中,选择模块703可以从第一样本图像集合和第二样本图像集合中分别选择样本图像组成样本图像对。具体地,选择模块703可以按照各种方式选择样本图像,例如,可以按照第一样本图像集合中的样本图像的编号顺序和第二样本图像集合中的样本图像的编号顺序,依次选择样本图像组成样本图像对。

在本实施例中,第二确定模块704可以从匹配矩阵中,确定样本图像对对应的匹配值。具体地,第二确定模块704可以根据样本图像对的编号,从匹配矩阵中确定匹配值。例如样本图像对为xi和yj,则可以从匹配矩阵中确定xi对应的行(或列)和yj对应的列(或行)指示的匹配值。

在本实施例中,更新模块705可以基于样本图像对和匹配值,更新初始模型的权重参数,在初始模型符合预设条件时,将符合预设条件的初始模型确定为图像识别模型。具体地,作为示例,更新模块705可以根据匹配值,确定样本图像对是否为正样本对或负样本对。如果为正样本对或负样本对,则可以基于度量学习方法,对初始模型进行训练,从而更新初始模型的权重参数。上述预设条件可以包括但不限于以下至少一种:训练次数达到预设次数、训练时长达到预设时长、基于预设的损失函数确定的损失值收敛。最后,更新模块705将符合预设条件的初始模型确定为图像识别模型。图像识别模型可以提取输入的图像的特征。

由于本实施例基于边权矩阵确定匹配矩阵,可以挖掘出样本图像集合中的难样本对,从而使得训练得到的图像识别模型可以更准确地提取图像的特征。

参照图8,图8是本公开另一示例性实施例提供的用于生成图像识别模型的装置的结构示意图。

在一些可选的实现方式中,构建模块701包括:第一确定单元7011,用于确定第一样本图像集合中的样本图像和第二样本图像集合中的样本图像之间的距离;构建单元7012,用于基于距离,构建第一边权矩阵和第二边权矩阵,其中,第一边权矩阵用于表征第一样本图像集合和第二样本图像集合中的同类样本图像之间的第一距离,第二边权矩阵用于表征第一样本图像集合和第二样本图像集合中的非同类样本图像之间的第二距离。

在一些可选的实现方式中,第一确定模块702进一步用于:利用第一边权矩阵和第二边权矩阵,进行边权和最大值匹配,得到第一匹配矩阵和第二匹配矩阵,其中,第一匹配矩阵用于表征同类样本图像之间的对应关系,第二匹配矩阵用于表征非同类样本图像之间的对应关系。

在一些可选的实现方式中,第二确定模块704包括:第二确定单元7041,用于响应于确定样本图像对包括的图像为同类图像,从第一匹配矩阵中确定匹配值;第三确定单元7042,用于响应于确定样本图像对包括的图像为非同类图像,从第二匹配矩阵中确定匹配值。

在一些可选的实现方式中,更新模块705进一步用于:利用预先构建的损失函数,基于样本图像对包括的样本图像之间的距离和对应的匹配值,调整初始模型的权重参数,当基于损失函数确定的损失值符合预设的收敛条件时,确定更新权重参数后的初始模型为图像识别模型。

本公开上述实施例提供的用于生成图像识别模型的装置,通过构建用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的距离的边权矩阵,再基于边权矩阵确定用于表征第一样本图像集合中的样本图像与第二样本图像集合中的样本图像之间的对应关系的匹配矩阵,基于匹配矩阵中的匹配值和样本图像对,对初始模型进行训练,得到图像识别模型,从而实现了基于边权矩阵从样本图像集合中提取难样本对,提高了训练得到的图像识别模型的识别准确性。

图9是本公开一示例性实施例提供的用于识别图像的装置的结构示意图。本实施例可应用在电子设备上,如图9所示,用于识别图像的装置包括:获取模块901,用于获取目标图像和待匹配图像集合;识别模块902,用于将目标图像和待匹配图像集合中的待匹配图像分别输入预先训练的图像识别模型,得到待识别图像的特征数据和待匹配图像的特征数据;第三确定模块903,用于基于所得到的特征数据,确定目标图像分别与待匹配图像集合中的图像的相似度;第四确定模块904,用于将符合预设条件的相似度对应的待匹配图像,确定为与目标图像匹配的图像。

在本实施例中,获取模块901可以从本地或从远程获取目标图像和待匹配图像集合。其中,目标图像可以是待利用其进行图像检索的图像。例如,目标图像可以是预设的摄像头对行人拍摄的图像,待匹配图像集合可以是预先存储的行人图像集合。

在本实施例中,识别模块902可以将目标图像和待匹配图像集合中的待匹配图像分别输入预先训练的图像识别模型,得到待识别图像的特征数据和待匹配图像的特征数据。其中,图像识别模型可以是如上述图2对应实施例中描述的方法得到的图像识别模型。

在本实施例中,第三确定模块903可以基于所得到的特征数据,确定目标图像分别与待匹配图像集合中的图像的相似度。其中,相似度可以用特征数据之间的距离表征。例如,当距离为欧式距离时,距离越大,相似度越小。当距离为余弦距离时,距离越大,相似度越大。

在本实施例中,第四确定模块904可以将符合预设条件的相似度对应的待匹配图像,确定为与目标图像匹配的图像。作为示例,预设条件可以为目标图像的特征数据和待匹配图像的特征数据之间的相似度大于或等于预设的相似度阈值。

本公开上述实施例提供的用于识别图像的装置,通过使用上述图2对应实施例中的方法训练得到的图像识别模型,可以准确地提取输入的图像的特征数据,从而可以提高图像匹配的准确性,将该图像识别模型应用到行人重识别领域中,可以提高行人重识别的准确性。

示例性电子设备

下面,参考图10来描述根据本公开实施例的电子设备。该电子设备可以是如图1所示的终端设备101和服务器103中的任一个或两者、或与它们独立的单机设备,该单机设备可以与终端设备101和服务器103进行通信,以从它们接收所采集到的输入信号。

图10图示了根据本公开实施例的电子设备的框图。

如图10所示,电子设备1000包括一个或多个处理器1001和存储器1002。

处理器1001可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备1000中的其他组件以执行期望的功能。

存储器1002可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器1001可以运行程序指令,以实现上文的本公开的各个实施例的用于生成图像识别模型的方法或用于识别图像的方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。

在一个示例中,电子设备1000还可以包括:输入装置1003和输出装置1004,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。

例如,在该电子设备是终端设备101或服务器103时,该输入装置1003可以是鼠标、键盘、摄像头等设备,用于输入图像。在该电子设备是单机设备时,该输入装置703可以是通信网络连接器,用于从终端设备101和服务器103接收所输入的图像。

该输出装置1004可以向外部输出各种信息,包括确定出的相似的图像。该输出设备1004可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。

当然,为了简化,图10中仅示出了该电子设备1000中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备1000还可以包括任何其他适当的组件。

示例性计算机程序产品和计算机可读存储介质

除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于生成图像识别模型的方法或用于识别图像的方法中的步骤。

所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。

此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于生成图像识别模型的方法或用于识别图像的方法中的步骤。

所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。

还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。

为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

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