基于特征对抗学习和自相似性聚类的跨域目标重识别方法转让专利

申请号 : CN202010592282.4

文献号 : CN111738172B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭海云王金桥唐明刘松岩

申请人 : 中国科学院自动化研究所

摘要 :

本发明属于计算机视觉、模式识别领域,具体涉及一种基于特征对抗学习和自相似性聚类的跨域目标重识别方法、系统、装置,旨在解决现有的目标重识别方法由于聚类中心个数不固定,限制特征表达的判别力,导致识别结果鲁棒性较差的问题。本系统方法包括:获取待识别的图像,作为输入图像;对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出。本发明提高了跨域目标重识别的鲁棒性。

权利要求 :

1.一种基于特征对抗学习和自相似性聚类的跨域目标重识别方法,其特征在于,该方法包括:步骤S100,获取待识别的图像,作为输入图像;

步骤S200,对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;

计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;

所述特征提取网络其训练方法为:

步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;

步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;

步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;

步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;

步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;

步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。

2.根据权利要求1所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,其特征在于,所述特征提取网络其在利用源域训练数据集进行训练时,其对应损失函数为:其中, 表示特征提取网络对应的损失值, 表示源域训练数据集中的各

训练样本, 表示源域训练数据集中的各训练样本对应的真实标签, 表示源域训练数据集中训练样本的数量, 表示源域训练数据集, 表示交叉熵损失, 表示三元组损失, 表示中心损失, 、 表示各损失函数对应的权值。

3.根据权利要求2所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,其特征在于,所述自相似性聚类为K均值聚类算法。

4.根据权利要求1所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,其特征在于,所述伪标签对齐算法,其方法为:步骤B10,将第K-1次聚类的各簇与第K次聚类具有相同伪标签数量最多的簇建立对应关系;其中,K为正整数;

步骤B20,对各对应关系,若其为多对一的关系,则保留第K-1次聚类中相同伪标签数量最多的簇的对应关系,将其他的对应关系删除;

步骤B30,对第K-1次聚类删除对应关系的簇,将其与第K次聚类具有相同伪标签数量最多且没有对应关系的簇建立对应关系,并跳转步骤B20,直至第K-1次聚类各簇与第K次聚类各簇建立一对一的关系。

5.根据权利要求2所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,其特征在于,所述对抗损失其构建方法为:其中, 表示目标域训练数据集中各训练样本,表示梯度惩罚项的平衡权重, 表示领域判别网络对应的一个映射函数,它可以将一个输入的d维的特征向量映射为一个实数,表示提取的源域特征, 表示提取的目标域特征, 表示目标域训练数据集中训练样本的数量, 表示目标域训练数据集, 表示梯度惩罚项,表示源域特征、目标域特征以及源域特征与目标域特征确定直线上面的随机一点, 、 分别表示特征提取网络、领域判别网络的学习参数。

6.根据权利要求5所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,所述梯度惩罚项其获取方法为:。

7.一种基于特征对抗学习和自相似性聚类的跨域目标重识别系统,其特征在于,该系统包括:获取模块、识别模块;

所述获取模块,配置为获取待识别的图像,作为输入图像;

所述识别模块,配置为对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;

所述特征提取网络其训练方法为:

步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;

步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;

步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;

步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;

步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;

步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。

8.一种存储装置,其中存储有多条程序,其特征在于,所述程序应用由处理器加载并执行以实现权利要求1-6任一项所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。

9.一种处理装置,包括处理器、存储装置;处理器,适用于执行各条程序;存储装置,适用于存储多条程序;其特征在于,所述程序适用于由处理器加载并执行以实现权利要求1-6任一项所述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。

说明书 :

基于特征对抗学习和自相似性聚类的跨域目标重识别方法

技术领域

[0001] 本发明属于计算机视觉、模式识别领域,具体涉及一种基于特征对抗学习和自相似性聚类的跨域目标重识别方法、系统、装置。

背景技术

[0002] 目标重识别属于图像检索领域的子问题。给定一个目标的图像,通常为行人图像或车辆图像,目标重识别任务旨在找到其他场景下的该目标图像。近年来,车辆重识别和行人重识别已经成为计算机视觉领域的研究的重点,并且很多基于深度学习的方法已经取得了良好的成果。然而,这些基于深度学习的方法大多需要大量有标注的训练数据,而且由于领域差异的存在,在一个数据集上面训练的模型用另一个数据集测试,性能会大幅下降。由于在大型目标数据集上标注大量的样本十分费时费力,所以使用领域自适应方法就成为了一个更经济的选择。
[0003] 无监督领域自适应的目标是将从一个完全标注的数据域(源域)中学习到的判别信息迁移到另一个无标注的数据域(目标域)上。常规的无监督领域自适应方法将样本映射到一个领域无关且保留判别力的特征表达上,从而将在源域上学习到的判别信息迁移到目标域上。很多方法从不同角度限制特征表达的领域无关性,例如基于统计量或者基于对抗学习的方法。前人认为在目标重识别任务中,源域和目标域的身份信息完全不同,也就是标签没有任何重叠,因此上面提到的方法无法应用到重识别任务中。但是本发明认为,使用这些领域无关的方法并不一定需要严格要求源域和目标域的标签空间完全一致。
[0004] 现有的跨域目标重识别方法主要集中于利用对抗学习进行从源域到目标域的图像翻译,然后使用翻译之后的图像训练重识别模型,例如Image-Image Domain Adaptation with Preserved Self-Similarity and Domain-Dissimilarity for Person Re-Identification和Person Transfer GAN to Bridge Domain Gap for Person Re-Identification这两篇文章分别从不同的角度改进经典的图像翻译算法CycleGAN。此外,Self-similarity Grouping:A Simple Unsupervised Cross Domain Adaptation Approach for Person Re-identification一文使用在源域上预训练的模型提取目标域样本的特征,然后使用聚类生成伪标签用来训练重识别模型。然而,在该方法中,聚类中心的个数是变化的,这导致其无法使用其他需要类别数固定的目标函数,例如交叉熵损失和中心损失。

发明内容

[0005] 为了解决现有技术中的上述问题,即为了解决现有的目标重识别方法由于聚类中心个数不固定、限制特征表达的判别力,导致识别结果鲁棒性较差的问题,本发明第一方面,提出了一种基于特征对抗学习和自相似性聚类的跨域目标重识别方法,该方法包括:
[0006] 步骤S100,获取待识别的图像,作为输入图像;
[0007] 步骤S200,对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;
[0008] 所述特征提取网络其训练方法为;
[0009] 步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;
[0010] 步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;
[0011] 步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;
[0012] 步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;
[0013] 步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;
[0014] 步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。
[0015] 在一些优选的实施方式中,所述特征提取网络其在利用源域训练数据集进行训练时,其对应损失函数为:
[0016]
[0017] 其中, 表示特征提取网络对应的损失值,xs表示源域训练数据集中的各训练样本,ys表示源域训练数据集中的各训练样本对应的真实标签,ns表示源域训练数据s集中训练样本的数量,X 表示源域训练数据集, 表示交叉熵损失, 表示三元组损失, 表示中心损失,λtri、λcen表示各损失函数对应的权值。
[0018] 在一些优选的实施方式中,所述自相似性聚类为K均值聚类算法。
[0019] 在一些优选的实施方式中,所述伪标签对齐算法,其方法为。
[0020] 步骤B10,将第K-1次聚类的各簇与第K次聚类具有相同伪标签数量最多的簇建立对应关系;其中,K为正整数;
[0021] 步骤B20,对各对应关系,若其为多对一的关系,则保留第K-1次聚类中相同伪标签数量最多的簇的对应关系,将其中其他的对应关系删除;
[0022] 步骤B30,对第K-1次聚类删除对应关系的簇,将其与第K次聚类具有相同伪标签数量最多且没有对应关系的簇建立对应关系,并跳转步骤B20,直至第K-1次聚类各簇与第K次聚类各簇建立一对一的关系。
[0023] 在一些优选的实施例中,所述对抗损失其构建方法为:
[0024]
[0025]
[0026] 其中,xt表示目标域训练数据集中各训练样本,γ表示梯度惩罚项的平衡权重,fw表示领域判别网络对应的一个映射函数,它可以将一个输入的d维的特征向量映射为一个实数,fg(xs)表示提取的源域特征,fg(xt)表示提取的目标域特征,nt表示目标域训练数据集中训练样本的数量,Xt表示目标域训练数据集, 表示梯度惩罚项,表示源域特征、目标域特征以及源域特征与目标域特征确定直线上面的随机一点,θg、θw分别表示特征提取网络、领域判别网络的学习参数。
[0027] 在一些优选的实施例中,所述梯度惩罚项其获取方法为:
[0028]
[0029] 本发明的第二方面,提出了一种基于特征对抗学习和自相似性聚类的跨域目标重识别系统,该系统包括获取模块、识别模块;
[0030] 所述获取模块,配置为获取待识别的图像,作为输入图像;
[0031] 所述识别模块,配置为对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;
[0032] 所述特征提取网络其训练方法为;
[0033] 步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;
[0034] 步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;
[0035] 步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;
[0036] 步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;
[0037] 步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;
[0038] 步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。
[0039] 本发明的第三方面,提出了一种存储装置,其中存储有多条程序,所述程序应用由处理器加载并执行以实现上述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。
[0040] 本发明的第四方面,提出了一种处理装置,包括处理器、存储装置;处理器,适用于执行各条程序;存储装置,适用于存储多条程序;所述程序适用于由处理器加载并执行以实现上述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。
[0041] 本发明的有益效果:
[0042] 本发明提高了跨域目标重识别的鲁棒性。本发明将特征对抗学习引入跨域目标重识别问题中,通过对抗学习减小源域和目标域特征分布的距离以将其映射到一个领域无关的特征表达空间,消除了特征表达的判别力的限制。其次,本发明设计了一个自相似性聚类模块,通过挖掘无标签目标域样本的内在关系,生成伪标签,并固定了聚类中心个数,进行伪标签对齐,从而和源域数据一起训练,以适用于更有效的监督损失函数。最后,将上述对抗学习和自相似聚类融入一个统一的框架用于跨域目标重识别任务中。
[0043] 同时,本发明引导特征提取网络从输入目标图像中提取与领域无关并且具有判别力的特征,提升目标检索的性能。

附图说明

[0044] 通过阅读参照以下附图所做的对非限制性实施例所做的详细描述,本申请的其他特征、目的和优点将会变得更明显。
[0045] 图1是本发明一种实施例的基于特征对抗学习和自相似性聚类的跨域目标重识别方法的流程示意图;
[0046] 图2是本发明一种实施例的基于特征对抗学习和自相似性聚类的跨域目标重识别系统的框架示意图;
[0047] 图3是本发明一种实施例的基于特征对抗学习和自相似性聚类的跨域目标重识别方法的训练过程的结构示意图;
[0048] 图4是本发明一种实施例的伪标签对齐算法的流程示意图;
[0049] 图5是适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。

具体实施方式

[0050] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
[0052] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0053] 本发明的基于特征对抗学习和自相似性聚类的跨域目标重识别方法,包括以下步骤:
[0054] 步骤S100,获取待识别的图像,作为输入图像;
[0055] 步骤S200,对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;
[0056] 所述特征提取网络其训练方法为;
[0057] 步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;
[0058] 步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;
[0059] 步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;
[0060] 步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;
[0061] 步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;
[0062] 步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。
[0063] 为了更清晰地对本发明基于特征对抗学习和自相似性聚类的跨域目标重识别方法进行说明,下面结合附图对本发明方法一种实施例中各步骤进行展开详述。
[0064] 下文优选实施例中,先对特征提取网络的训练过程进行详述,再对基于特征对抗学习和自相似性聚类的跨域目标重识别方法获取识别结果进行详述。
[0065] 1、特征提取网络的训练过程
[0066] 步骤A100,获取源域训练数据集、目标域训练数据集;并基于所述源域训练数据集中的训练样本预训练特征提取网络;
[0067] 针对跨域目标重识别问题,在本实施例中定义如下:有两个数据集,一个数据集包含ns个来自于源域 的样本,其中所有数据都是有标注的: 称为源域训练数据集, 表示训练样本, 表示训练样本对应的真实标签;另一个数据集包含nt个来自于目标域 的样本,其中所有数据都没有标注: 称为目标域训练数
据集, 表示训练样本。假设这两个图像域有相同的特征空间但是服从不同的数据分布和 而跨域目标重识别问题的目的是学习一个在目标域上有判别力的特征表达空间。
[0068] 首先在源域数据上预训练特征提取网络,特征提取网络基于卷积神经网络构建。令 为源域上的一个样本,特征提取网络的目的是学习一个参数为θg的函数其可以将这个样本映射到一个d维的特征表达上。在训练过程中,网络总体识别损失函数是交叉熵损失、三元组损失、以及中心损失的加权和。如公式(1)所示:
[0069]
[0070] 其中, 表示特征提取网络对应的损失值,xs表示源域训练数据集中的各训练样本,ys表示源域训练数据集中的各训练样本对应的标签,ns表示源域训练数据集中训练样本的数量,Xs表示源域训练数据集, 表示交叉熵损失, 表示三元组损失,表示中心损失,λtri、λcen表示各损失函数对应的权值。
[0071] 步骤A200,对所述目标域训练数据集中各训练样本,通过训练好的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;
[0072] 在本实施例中,为了挖掘目标域中的无标签样本间的隐含语义关系,本发明提出了自相似性聚类模块。通过将这些样本使用特征提取网络提取出的特征聚类到几个簇中,可以得到伪身份标签,这使得目标域的无标签样本可以和源域中的有标签样本一起训练。本发明固定聚类中心的数量,使得可以应用更有判别力的损失函数,例如交叉熵损失,三元组损失,和中心损失,这相比于只使用三元组损失不仅更具判别力,而且收敛更快。
[0073] 如图3所示,对于目标域中的所有训练样本,提取其在全局汇聚层(global average pooling)之后的特征,然后使用K均值算法对特征进行聚类。由于K均值聚类可以固定聚类中心数量,因此生成的伪身份标签可以直接计算识别损失。此时,对目标域中的任一样本 通过聚类都可以得到一个伪身份标签 这个聚类过程可以在每代(epoch)训练开始的时候进行,然后目标域中每个样本的伪身份标签都会被更新。
[0074] 步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述目标域训练数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;
[0075] 因K均值聚类中的初值选择不同,在两次相邻的聚类操作中,同一个类别可能被分配不同的伪身份标签,这对于交叉熵损失和中心损失的计算是有害的。为了解决这个问题,必须在两次聚类结果上构建一个一对一的匹配,因此本发明提出了伪标签对齐算法,具体如下:
[0076] 给出一个无标注的目标域数据集 自相似性聚类可以在每代训练开始时将其聚类到若干个不同的簇中。定义第k次聚类的结果为 其中 为在
第q个簇中所有样本构成的列表,N为簇的个数。第k-1次聚类的结果为
伪标签对齐算法的目的是构建一个从Ck-1到Ck的一对一匹配图 使得两次聚类间标签不变的样本尽可能多,其中 为Ck中与 对应的簇的序号。
[0077] 伪标签对齐算法如图4所示,其中每一个圆代表聚类中的一个簇,其中的数字代表k-1 k这个簇中包含的样本数量。首先,建立C 中的每一个簇到C中的与其相同样本最多的簇的对应关系,如图4(a)所示。接着,如果有超过一个Ck-1中的簇与Ck中的某一个簇建立了对应关系(即多对一的关系),只保留那个样本数最多的簇,也就是图4(a)中的虚线(间隔较大的虚线),而舍弃掉其他对应关系,也就是图4(a)中的间隔较小的虚线。然后为这些舍弃掉对k
应关系的簇在C 中寻找相同样本数目最多的但是目前没有对应关系的簇,并建立对应关系,如图4(b)所示。最后,重复这个过程直到整个匹配图变为一对一,如图4(c)所示。
[0078] 分别计算目标域训练数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失。
[0079] 步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;
[0080] 在本实施例中,基于源域和目标域的特征,通过特征提取网络和领域判别网络计算对抗损失,进行对抗学习。领域判别网络基于卷积神经网络构建,其作用与判别器类似。对抗损失的计算,具体如下:
[0081] 本发明的对抗学习类似于Wasserstein Distance Guided Representation Learning for Domain Adaptation一文提出的WDGRL算法来实现特征对抗学习,目的是减小源域和目标域特征分布的差异。本发明使用一个领域判别网络,其目的是估计源域和目标域特征表达的Wasserstein距离。给出一个特征提取网络输出的特征表达h=fg(x),领域判别网络学习一个参数为θw的函数 其将一个d维的特征表达映射到一个实数上,源域和目标域特征对应输出的差值可以用来表达Wasserstein距离。如果领域判别网络的所有参数都满足Lipschitz条件,那么Wasserstein距离就可以由最大化的领域判别损失得到,如公式(2)所示:
[0082]
[0083] 其中,xt表示目标域训练数据集中各训练样本,γ表示,fw表示领域判别网络对应的一个映射函数,它可以将一个输入的d维的特征向量映射为一个实数,fg(xs)表示提取的t t t源域特征,fg(x)表示提取的目标域特征,n 表示目标域训练数据集中训练样本的数量,X表示目标域训练数据集。
[0084] 为了保证Lipschitz条件,本发明中加入梯度惩罚项,如公式(3)所示:
[0085]
[0086] 其中, 表示梯度惩罚项,表示源域特征、目标域特征以及源域特征与目标域特征确定直线上面的随机一点。
[0087] 特征对抗学习模块的目标是求解如下的极大极小问题,如公式(4)所示:
[0088]
[0089] 其中,γ表示梯度惩罚项的平衡权重。
[0090] 将对抗损失作为第二损失,并计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失(即识别损失)。
[0091] 步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;
[0092] 在本实施例中,本发明提出的整个无监督跨域重识别框架由特征对抗学习,自相似性聚类,以及伪标签对齐算法组成。整体的目标函数如式(5)所示:
[0093]
[0094] 其中, 为经过自相似性聚类和伪标签对齐之后得到的伪身份标签,其在每代训练开始时都会更新,λcri为领域对抗损失的权重。 与公式(1)的计算方法一致,仅在于参数不同。
[0095] 基于上述整体损失目标函数对特征提取网络进行参数更新。
[0096] 步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。
[0097] 综上所述,整个网络的训练分为两个阶段,第一个阶段是在源域样本上预训练特征提取网络,然后第二阶段是在源域和目标域样本上使用自相似性聚类和特征对抗学习模块联合优化特征提取网络和领域判别网络,目的是为了联合使用源域样本和目标域样本训练得到一个更好的特征提取网络,学到一个领域无关且判别力强的特征空间,使得目标域上的目标重识别性能改善。
[0098] 2、基于特征对抗学习和自相似性聚类的跨域目标重识别方法,如图1所示[0099] 步骤S100,获取待识别的图像,作为输入图像;
[0100] 在本实施例中,获取待识别的图像,一般为目标域的图像。
[0101] 步骤S200,对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出。
[0102] 在本实施例中,基于训练后的特征提取网络提取特征,计算待识别图像和检索库(即图像库)中每一个目标特征之间的欧氏距离。最后,将计算出的距离进行升序排列,Rank-1(排名第一)和排序靠前的匹配率越高,表明所学习的深度特征对目标重识别任务的效果越好。
[0103] 本发明第二实施例的一种基于特征对抗学习和自相似性聚类的跨域目标重识别系统,如图2所示,包括:获取模块100、识别模块200;
[0104] 所述获取模块100,配置为获取待识别的图像,作为输入图;;像;
[0105] 所述识别模块200,配置为对所述输入图像,通过预训练的特征提取网络提取其特征,作为第一特征;计算所述第一特征与图像库中各图像对应特征的欧式距离并进行排序,将排序结果进行输出;
[0106] 所述特征提取网络其训练方法为;
[0107] 步骤A100,获取第一数据集、第二数据集;并基于所述第一数据集对特征提取网络进行预训练;所述第一数据集为源域训练数据集,其包括训练样本及其对应的真实标签;所述第二数据集为目标域训练数据集;
[0108] 步骤A200,对所述第二数据集中各训练样本,通过预训练的特征提取网络提取其特征,并通过自相似性聚类获取其对应的伪标签;
[0109] 步骤A300,通过预设的伪标签对齐算法对各伪标签进行对齐,将对齐后的标签作为第一标签;并分别计算所述第二数据集中各训练样本提取的特征与其对应的第一标签的损失,作为第一损失;
[0110] 步骤A400,通过预构建的领域判别网络计算第一数据集、第二数据集中各训练样本提取的特征分布之间的Wasserstein距离,并基于该距离构建对抗损失,作为第二损失;计算第一数据集中各训练样本提取的特征与其对应的真实标签的损失,作为第三损失;所述领域判别网络基于卷积神经网络构建;
[0111] 步骤A500,基于所述第一损失、所述第二损失、所述第三损失对所述特征提取网络进行参数更新;
[0112] 步骤A600,循环步骤A200-步骤A500,直至得到训练好的特征提取网络。
[0113] 所述技术领域的技术人员可以清楚的了解到,为描述的方便和简洁,上述描述的系统的具体的工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0114] 需要说明的是,上述实施例提供的基于特征对抗学习和自相似性聚类的跨域目标重识别系统,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块来完成,即将本发明实施例中的模块或者步骤再分解或者组合,例如,上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块,以完成以上描述的全部或者部分功能。对于本发明实施例中涉及的模块、步骤的名称,仅仅是为了区分各个模块或者步骤,不视为对本发明的不当限定。
[0115] 本发明第三实施例的一种存储装置,其中存储有多条程序,所述程序适用于由处理器加载并实现上述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。
[0116] 本发明第四实施例的一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的基于特征对抗学习和自相似性聚类的跨域目标重识别方法。
[0117] 所述技术领域的技术人员可以清楚的了解到,为描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考前述方法实例中的对应过程,在此不再赘述。
[0118] 下面参考图5其示出了适于用来实现本申请方法、系统、装置实施例的服务器的计算机系统的结构示意图。图5出的服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0119] 如图5所示,计算机系统包括中央处理单元(CPU,Central Processing Unit)501,其可以根据存储在只读存储器(ROM,Read Only Memory)502中的程序或者从存储部分508加载到随机访问存储器(RAM,Random Access Memory)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有系统操作所需的各种程序和数据。CPU 501、ROM502以及RAM 503通过总线504彼此相连。输入/输出(I/O,Input/Output)接口505也连接至总线504。
[0120] 以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT,Cathode Ray Tube)、液晶显示器(LCD,Liquid Crystal Display)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN(局域网,Local Area Network)卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
[0121] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。
计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0122] 可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0123] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0124] 术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。
[0125] 术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
[0126] 至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。