行人重识别方法和装置与流程

文档序号:17725608发布日期:2019-05-22 02:29阅读:250来源:国知局
行人重识别方法和装置与流程

本发明实施例涉及计算机技术领域,尤其涉及一种行人重识别方法和装置。



背景技术:

行人重识别(personre-identification,简称reid)也称行人再识别,是利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术。广泛被认为是一个图像检索的子问题。给定一个监控行人图像,检索跨设备下的该行人图像。旨在弥补目前固定的摄像头的视觉局限,并可与行人检测/行人跟踪技术相结合,可广泛应用于智能视频监控、智能安保等领域。

由于行人图像的分辨率变化大、拍摄角度不统一、光照条件差、环境变化大、行人姿态不断变化等原因,导致同一行人不同图片之间差距大,对行人进行浅层特征的提取很难实现行人重识别的判断。

为了提高行人重识别的准确率,传统的行人重识别从特征提取和距离度量学习两个方面进行研究。对于特征提取方面,采用提取局部特征的方式,采用局部关键特征尺度不变特征变换(scale-invariantfeaturetransform,简称sift)来表示图像,但由于局部关键点经常会落在背景上,导致识别精度的下降;并且,目前大多数方法在提取图像特征的过程中,都忽略了无关背景信息的影响,使得提取好的图像特征带有较多的噪声,影响识别准确率。对于距离度量学习方面,为了解决拍摄角度不一以及行人姿态的变化问题,大多数方法采取了非精确匹配的策略,使用特定的方式将不同图像块之间的特征进行融合,效果颇为显著,但同时也损失了一部分图像内部的空间信息,使得在分辨一些具有相对位置差异的图像上,能力大大降低。综上,现有行人重识别技术的识别准确率较低,亟待提高。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的行人重识别方法和装置。

第一方面,本发明实施例提供一种行人重识别方法,包括:

将待识别图像输入至训练好的孪生网络模型,输出所述待识别图像的特征向量;

根据所述待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果;

其中,所述孪生网络模型是基于样本行人图像进行训练后得到的;所述特征向量由类型特征和图像特征组成;

所述孪生网络模型包括第一卷积神经网络和第二卷积神经网络;所述第一卷积神经网络与所述第二卷积神经网络的结构相同;所述第一卷积神经网络包括第一分类学习子网络和第一度量学习子网络;所述第二卷积神经网络包括第二分类学习子网络和第二度量学习子网络;

所述第一分类学习子网络和所述第二分类学习子网络,均用于获取所述待识别图像的类型特征;

所述第一度量学习子网络和所述第二度量学习子网络,均用于获取所述待识别图像的图像特征。

第二方面,本发明实施例提供一种行人重识别装置,包括:

特征提取模块,用于将待识别图像输入至孪生网络模型,输出所述待识别图像的特征向量;

行人识别模块,用于根据所述待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果;

其中,所述孪生网络模型是基于样本行人图像进行训练后得到的;所述特征向量由类型特征和图像特征组成;

所述孪生网络模型包括第一卷积神经网络和第二卷积神经网络;所述第一卷积神经网络与所述第二卷积神经网络的结构相同;所述第一卷积神经网络包括第一分类学习子网络和第一度量学习子网络;所述第二卷积神经网络包括第二分类学习子网络和第二度量学习子网络;

所述第一分类学习子网络和所述第二分类学习子网络,均用于获取所述待识别图像的类型特征;

所述第一度量学习子网络和所述第二度量学习子网络,均用于获取所述待识别图像的图像特征。

第三方面,本发明实施例提供一种电子设备,包括:

至少一个处理器;以及

与所述处理器通信连接的至少一个存储器,其中:

所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的行人重识别方法。

第四方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的行人重识别方法。

本发明实施例提供的行人重识别方法和装置,通过孪生网络模型获取待识别图像的特征向量,由于孪生网络可以同时学得具有辨别力的卷积神经网络特征和相似性度量,因而能提高特征提取的准确率,进而能提高行人重识别的准确率。

附图说明

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

图1为根据本发明实施例提供的行人重识别方法的流程示意图;

图2为根据本发明实施例提供的行人重识别装置的功能框图;

图3为根据本发明实施例提供的电子设备的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了克服现有技术的上述问题,本发明实施例提供一种行人重识别方法和装置,其发明构思是,使用孪生网络提取行人图像的特征,通过孪生网络中的两个网络在训练时互相学习,使得获取的行人图像的特征对行人图像的描述性更强,从而提高行人重识别的准确率。

图1为根据本发明实施例提供的行人重识别方法的流程示意图。如图1所示,一种行人重识别方法包括:步骤s101、将待识别图像输入至训练好的孪生网络模型,输出待识别图像的特征向量;其中,孪生网络模型是基于样本行人图像进行训练后得到的;特征向量由类型特征和图像特征组成;孪生网络模型包括第一卷积神经网络和第二卷积神经网络;第一卷积神经网络与第二卷积神经网络的结构相同;第一卷积神经网络包括第一分类学习子网络和第一度量学习子网络;第二卷积神经网络包括第二分类学习子网络和第二度量学习子网络;第一分类学习子网络和第二分类学习子网络,均用于获取待识别图像的类型特征;第一度量学习子网络和第二度量学习子网络,均用于获取待识别图像的图像特征。

为了便于对本发明各实施例的理解,先对孪生网络模型的结构进行描述。

孪生网络模型包括两个结构相同的卷积神经网络(convolutionalneuralnetworks,简称cnn):第一卷积神经网络和第二卷积神经网络。结构相同,指卷积神经网络包含的各层以及各层的神经元的个数均相同。由于两个网络的结构相同,因而被称为孪生网络。孪生网络有两个卷积神经网络共同学习,每个卷积神经网络所学习的内容并不相同,能形成互补,通过相互学习、相互监督,在共同学习的过程中更能提高提取特征的准确率,进而提高行人重识别的准确率。

第一卷积神经网络包括两个子网络:第一分类学习子网络和第一度量学习子网络。第一分类学习子网络和第一度量学习子网络为并列的子网络,即将行人图像输入第一卷积神经网络的具体步骤包括:将该行人图像分别输入第一分类学习子网络和第一度量学习子网络。将该行人图像输入至第一分类学习子网络,第一分类学习子网络输出该行人图像的类型特征;将该行人图像输入至第一度量学习子网络,第一度量学习子网络输出该行人图像的图像特征。

类型特征,指行人图像中的行人的身份(即对应样本行人图像中的哪一身份)。

图像特征,指行人图像自身的特征。图像自身的特征一般可分为全局图像特征和局部图像特征。全局图像特征,是指能表示整幅图像上的特征。全局图像特征是相对于图像局部特征而言的,用于描述图像或目标的颜色和形状等整体特征。全局图像特征可以包括线特征、纹理特征、结构特征等。局部图像特征是图像特征的局部表达,它反映了图像上具有的局部特性。局部图像特征可以包括sift特征、加速鲁棒特征(speeduprobustfeatures,简称surf特征)、daisy特征、二元鲁棒独立元特征(binaryrobustindependentelementfeature,简称brief特征)等。

虽然类型特征已经可以对应行人身份标签,为了降低第一分类学习子网络的分类误差,通过第一度量学习子网络提取图像特征,综合类型特征和图像特征获得输入图像的特征向量,能更好地描述输入图像的特征,从而能提高行人重识别的准确率。

每一行人身份标签,可以表示一个特定行人;可以将一个特定行人,作为一个类型的行人;因此,一个行人身份标签,对应一个类型的行人。

由于第二卷积神经网络的结构与第一卷积神经网络的结构相同,可以理解的是,第二卷积神经网络包括两个子网络:第二分类学习子网络和第二度量学习子网络。第二分类学习子网络和第二度量学习子网络为并列的子网络,即将行人图像输入第二卷积神经网络的具体步骤包括:将该行人图像分别输入第二分类学习子网络和第二度量学习子网络。将该行人图像输入至第二分类学习子网络,第二分类学习子网络输出该行人图像的类型特征;将该行人图像输入至第二度量学习子网络,第二度量学习子网络输出该行人图像的图像特征。

样本行人图像,为多幅预先采集不同身份的行人的图像。在训练过程中,将样本行人图像输入至孪生网络模型,根据第一卷积神经网络和第二卷积神经网络的输出,分别调整第一卷积神经网络和第二卷积神经网络的参数,直至获得训练好的孪生网络模型。对于孪生网络模型的训练,还需要根据样本行人图像对应的行人身份标签。

需要说明的是,待识别图像,是将摄像头等图像设备采集的原始行人图像进行预处理后获得的。

预处理的具体步骤可以包括:将原始行人图像进行归一化后,再进行减均值预处理。

归一化,指将图像的尺寸调整为预设的尺寸(例如256×128像素)后。

减均值,指将图像每个像素的各个通道值,减去各像素对应通道值的平均值。

可以理解的是,样本行人图像也是采用上述方法对原始样本行人图像进行预处理后获得的。

将待识别图像输入至训练好的孪生网络模型后,训练好的孪生网络模型中的第一卷积神经网络和第二卷积神经网络分别输出第一特征向量和第二特征向量,根据第一特征向量和第二特征向量,可以获得待识别图像的特征向量。

第一特征向量,根据第一分类学习子网络的输出和第一度量学习子网络的输出获得;第二特征向量,根据第二分类学习子网络的输出和第二度量学习子网络的输出获得。

根据第一特征向量和第二特征向量,获得待识别图像的特征向量的具体步骤,本发明实施例不作具体限制。

例如,可以比较第一特征向量和第二特征向量,将其中较大的一个确定为待识别图像的特征向量;或者,将第一特征向量和第二特征向量的平均向量,确定为待识别图像的特征向量;或者,比较第一特征向量和第二特征向量中每个元素的值,将其中较大的值确定为待识别图像的特征向量中该元素的值。

步骤s102、根据待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果。

可以理解的是,行人图像库由各样本行人图像组成。行人图像库中,同一行人身份标签对应的样本行人图像可以为多幅。也就是说,对于同一行人,从不同摄像头下获取该行人的图像,并为多幅该行人的图像分配相同的行人身份标签。

获得待识别图像的特征向量后,计算待识别图像与行人图像库中每一样本行人图像的特征向量之间的相似性,按照相似性对样本行人图像的特征向量进行降序排列,确定相似性最大的若干个样本行人图像的特征向量,并根据上述相似性最大的若干个样本行人图像的特征向量所对应的行人身份标签,确定待识别图像对应的行人身份标签,作为识别结果。

识别结果,指待识别图像中行人的重识别结果。

计算待识别图像与行人图像库中每一样本行人图像的特征向量之间的相似性,可以采用现有的任何一种度量向量之间相似性的算法,本发明实施例对此不作具体限制。

例如,可以通过计算待识别图像与行人图像库中每一样本行人图像的特征向量之间的欧氏距离确定二者之间的相似性,欧氏距离越大,说明二者越不相似;因此,可以按照欧氏距离对样本行人图像的特征向量进行升序排列,确定欧氏距离最小的若干个样本行人图像的特征向量,并根据上述欧氏距离最小的若干个样本行人图像的特征向量所对应的行人身份标签,确定待识别图像对应的行人身份标签,作为识别结果。

本发明实施例通过孪生网络模型获取待识别图像的特征向量,由于孪生网络可以同时学得具有辨别力的卷积神经网络特征和相似性度量,因而能提高特征提取的准确率,进而能提高行人重识别的准确率。

基于上述各实施例的内容,第一度量学习子网络包括第一提取分支和第二提取分支;第二度量学习子网络包括第三提取分支和第四提取分支;第一提取分支和第三提取分支,均用于获取待识别图像的全局图像特征;第二提取分支和第四提取分支,均用于获取待识别图像的局部图像特征;相应地,第一度量学习子网络,用于根据第一提取分支获取的待识别图像的全局图像特征和第二提取分支获取的待识别图像的局部图像特征,获取待识别图像的图像特征;第二度量学习子网络,用于根据第三提取分支获取的待识别图像的全局图像特征和第四提取分支获取的待识别图像的局部图像特征,获取待识别图像的图像特征。

具体地,第一度量学习子网络包括两个分支第一提取分支和第二提取分支,分别用于获取待识别图像的全局图像特征和局部图像特征。第一提取分支和第二提取分支为并列结构,即将待识别图像输入第一度量学习子网络的具体步骤为将待识别图像分别输入第一提取分支和第二提取分支。

由于第二卷积神经网络的结构与第一卷积神经网络的结构相同,可以理解的是,第二度量学习子网络包括两个分支第三提取分支和第四提取分支,分别用于获取待识别图像的全局图像特征和局部图像特征。

对于第一度量学习子网络,根据第一提取分支获取的待识别图像的全局图像特征和第二提取分支获取的待识别图像的局部图像特征,可以获取待识别图像的图像特征并输出。

例如,可以预先对全局图像特征和局部图像特征赋予不同的权重,第一度量学习子网络将第一提取分支获取的待识别图像的全局图像特征和第二提取分支获取的待识别图像的局部图像特征进行加权求和,从而获得待识别图像的图像特征。

第二度量学习子网络,根据第三提取分支获取的待识别图像的全局图像特征和第四提取分支获取的待识别图像的局部图像特征,获取待识别图像的图像特征的过程,与上述第一度量学习子网络获取待识别图像的图像特征的过程类似,此处不再赘述。

本发明实施例通过提取全局图像特征和局部图像特征,并根据全局图像特征和局部图像特征获得待识别图像的图像特征,兼顾了待识别图像的全局特征和局部特征,获得的图像特征能更好地描述待识别图像,进而能进一步提高行人重识别的准确率。

基于上述各实施例的内容,获取训练好的孪生网络模型的具体步骤包括:对于每轮训练,根据总损失函数和孪生网络模型的输出,获取孪生网络模型的总损失值;根据每轮训练孪生网络模型的损失值,调整孪生网络模型的参数,直至孪生网络模型的总损失值达到最小值,获得训练好的孪生网络模型。

具体地,对孪生网络模型进行多轮训练,不断地迭代以寻找最优结果,以获得训练好的孪生网络模型。在不断迭代的过程中,评判标准便是使总损失函数对应的损失值最小。

每轮训练,向孪生网络模型输入n幅样本行人图像,根据孪生网络模型的输出和预设的总损失函数,确定该轮训练孪生网络模型的总损失值。

需要说明的是,由于孪生网络模型包括两个cnn,每个cnn包括两个子网络,每个度量学习子网络包括两个分支,孪生网络模型的每个子网络或分支均有损失,因此,总损失函数用于反映孪生网络模型包括的各部分的整体损失。

根据每轮训练孪生网络模型的损失值,调整孪生网络模型的参数,使得孪生网络模型的总损失值随着训练轮数增加呈下降趋势,直至总损失值达到最小值,孪生网络模型达到最优。将总损失值达到最小值时的孪生网络模型,确定为训练好的孪生网络模型。

本发明实施例通过总损失函数反映孪生网络模型包括的各部分的整体损失,通过使得总损失值不断下降,获得训练好的孪生网络模型,使得训练好的孪生网络模型的识别误差更小,能提高行人重识别的准确率。

基于上述各实施例的内容,总损失函数是根据预设的权重对第一类损失函数、第二类损失函数、第三类损失函数和第四类损失函数进行加权求和获得的;第一类损失函数,包括第一分类学习子网络的损失函数和第二分类学习子网络的损失函数;第二类损失函数,包括第一度量学习子网络的损失函数和第二度量学习子网络的损失函数;第三类损失函数,为第一分类学习子网络与第二分类学习子网络之间的损失函数;第四类损失函数,为第一度量学习子网络与第二度量学习子网络之间的损失函数。

具体地,对于第一分类学习子网络和第二分类学习子网络,二者的结构相同,可以使用相同的损失函数。第一分类学习子网络的损失函数和第二分类学习子网络的损失函数,为第一类损失函数。

第一类损失函数,可以采用归一化损失函数(softmaxloss),以实现不同类型的行人图像的类型特征的分离。

对于第一度量学习子网络和第二度量学习子网络,均包括两个分支,这四个分支(第一提取分支至第四提取分支)可以使用相同的损失函数。上述四个分支的损失函数,为第二类损失函数。

由于采用了孪生网络,可以是两个卷积神经网络(指第一卷积神经网络和第二卷积神经网络)进行协同学习。两个卷积神经网络相互影响、相互促进,两个卷积神经网络都进行了监督学习,从而能降低识别误差。

协同学习,又称协作学习(collaborativelearning),是一种通过小组或团队的形式进行学习的一种策略。小组中任一成员的学习结果,可以与小组中的其他成员共享。可以将两个卷积神经网络作为一个小组,实现二者学习结果的共享,从而实现相互影响、相互促进。

第一分类学习子网络与第二分类学习子网络之间,可以采用协同学习方法进行训练。第一分类学习子网络与第二分类学习子网络之间进行协同学习的损失,为分类协同损失。第三类损失函数,用于描述分类协同损失。

第一度量学习子网络与第二度量学习子网络之间,可以采用协同学习方法进行训练。具体地,第一提取分支与第三提取分支络之间,可以采用协同学习方法进行训练;第二提取分支与第四提取分支络之间,可以采用协同学习方法进行训练。

第一提取分支与第三提取分支络之间协同学习的损失,第二提取分支与第四提取分支络之间协同学习的损失,均为度量协同损失。上述两个度量协同损失,均可以通过第四类损失函数描述。

由于孪生网络模型的损失来自上述四种类型,由于上述四种类型的损失对特征提取结果的影响不同,因此,可以预先对上述四类损失函数赋予不同的权重,根据权重对四类损失函数进行加权求和得到的函数作为总损失函数。

本发明实施例通过孪生网络模型中两个卷积神经网络的各自学习和协同学习进行训练,根据预设的权重对四类损失函数进行加权求和获得总损失函数,能获得更优的总损失函数,从而能通过训练得到更优的训练好的孪生网络模型,提高行人重识别的准确率。

基于上述各实施例的内容,第二类损失函数为三元组损失函数。

具体地,对于第一提取分支至第四提取分支,采用度量学习方式进行训练。

度量学习,是指通过距离测度学习来衡量样本之间的相近程度,可以使同类样本之间的距离尽可能小,不同类样本之间的距离尽可能大。度量学习的目的是便是使相似图像的图像特征尽可能靠近,非相似图像的图像特征尽可能背离。

度量学习通常采用三元组方式,相应的损失函数为三元组损失函数。通过定义新的距离度量空间,使得同一行人不同样本行人图像的图像特征之间的距离小于与不同行人的样本行人图像的图像特征之间的距离。

以第一提取分支为例,每一轮的训练随机从样本图像库中选取3种行人类型a,p,n,并满足a=p,a≠n。即a与p取自同一个行人身份标签,与n取自不同的行人身份标签。对于三种行人类型a,p,n,均随机抽取n幅行人样本图像。

三元组损失函数的具体公式为

其中,ltriplet表示损失值;i表示第i幅样本行人图像,i=1,2,…,n;||*||表示欧氏距离;分别表示将来自行人类型a,p,n的第i幅样本行人图像输入至第一提取分支的输出结果;上标中的2表示平方;下标中的2表示2范数;δ表示预设的阈值。δ表示来自同一身份类型a,p的样本行人图像的图像特征之间的欧式距离与不同身份类型a,n的样本行人图像的图像特征之间的欧式距离差值的阈值,其作用不仅是使得不同行人的样本行人图像的图像特征之间的欧式距离大于相同行人的样本行人图像的图像特征之间的欧式距离,还要使得上述两个欧氏距离的差值大于一个阈值(正数),从而使训练更加具有难度,行人重识别结果更准确。

对于第二提取分支、第三提取分支和第四提取分支,也可以采用上述三元组损失函数的具体公式。

本发明实施例通过三元组损失函数度量图像特征之间的距离,使得相似图像的图像特征尽可能靠近,非相似图像的图像特征尽可能背离,从而能提高度量学习的效果,提取的图像特征对图像的描述更准确,能提高行人重识别的准确率。

基于上述各实施例的内容,第三类损失函数,为第一分类学习子网络的输出与第二分类学习子网络的输出之间的相对熵。

具体地,考虑两个卷积神经网络互相转换知识促进学习的过程,对于第一分类学习子网络的输出与第二分类学习子网络的输出,通过二者之间的相对熵,反映二者之间的损失值。

因此,可以采用分类概率kl的距离即kldivergence作为第三类损失函数。

相对熵,又称kl散度(kullback–leiblerdivergence,简称kldivergence或kld),是描述两个概率分布之间的差异的一种方法。

本发明实施例通过采用相对熵作为第三类损失函数,加速损失值的收敛,能提高行人重识别的准确率。

基于上述各实施例的内容,第四类损失函数的公式为

其中,lm表示根据第四类损失函数获取的损失值;θ1表示第一卷积神经网络;θ2表示第二卷积神经网络;zg表示零梯度函数符号;n表示本轮训练使用的样本行人图像的数量;表示第一度量学习子网络获取的本轮训练中第i幅样本行人图像的图像特征,与本轮训练中第j幅样本行人图像的图像特征之间的距离;表示第二度量学习子网络获取的本轮训练中第i幅样本行人图像的图像特征,与本轮训练中第j幅样本行人图像的图像特征之间的距离。

具体地,对于第一提取分支和第三提取分支,每轮训练采用的n幅样本行人图像,第一提取分支和第三提取分支分别获取上述n幅样本行人图像的全局图像特征。第一提取分支和第三提取分支分别获取上述n幅样本行人图像的全局图像特征,计算第一提取分支获取的上述n幅样本行人图像的全局图像特征中每一样本行人图像的全局图像特征,与第三提取分支获取的上述n幅样本行人图像的全局图像特征中每一样本行人图像的全局图像特征之间的距离,获得两个n×n的距离矩阵。分别为上述两个距离矩阵中中(i,j)处的元素。可以理解的是,上述两个距离矩阵互为转置。

对于零梯度函数,当计算梯度时可以把变量当成一个常数,这样可以在学习阶段停止后向传递。

应用零梯度函数时,二阶阶梯度满足

由于零梯度函数的引用,减少了后向传递过程的时间消耗,加速了损失值的收敛,提高了准确率。

对于第二提取分支和第四提取分支之间的协同学习,也可以采用上述第四类损失函数的具体公式,此处不再赘述。

本发明实施例基于零梯度函数构造第四类损失函数,加速损失值的收敛,能提高行人重识别的准确率。

为了便于对本发明各实施例的理解,下面通过一个实例对本发明实施例提供的行人重识别方法的技术效果进行说明。

采用三种公开的行人数据集market、cuhk、duke,分别作为三个数据来源。对于每个数据来源,将该来源的数据集分为train、val、test三个集合。每个数据集的行人类型为2220种。将行人数据集中的图像进行预处理使之归一化。从test集合中随机选择每一行人类型的一副图片,组成测试集;将test集合中未被选择的图像,组成样本图像库。

采用在imagenet上与训练的resnet18作为基础网络(训练前的第一卷积神经网络和第二卷积神经网络),经过卷积层的学习后共同提取样本图像库中各图像的局部特征和全局特征,再通过随机梯度下降使总损失函数值不断降低,以最终达到要求,获得训练好的孪生网络模型。由此,完成样本图像库中各图像的特征提取,获得各样本行人图像的特征向量。

对测试集中的任一图像进行行人重识别(即预测阶段)时,考虑到互相学习(协同学习)的作用,可以发现提取的全局特征在局部特征的影响下,已经可以准确的描述图片,全局特征和局部特征的描述效果并无明显区别,由于全局特征提取速度快,一致性描述强,所以在预测阶段可以不考虑局部特征的影响,使图像特征中局部图像特征的权重为0。

计算测试集中每一图像的特征向量和样本图像库中每一行人样本图像的特征向量之间的欧氏距离,利用重排序使得距离最小放在位于顶部,同时使用得到的距离值计算map(平均精度均值,meanaverageprecision)和cmc1、cmc5和cmc10作为衡量模型准确率的评价指标。其中,cmc为累积匹配曲线(cumulativematchcharacteristic)的缩写;cmc1、cmc5和cmc10分别表示取欧氏距离最小的1、5、10幅样本图像时模型的误差。

采用控制变量法,对单一网络模型和本发明提供的孪生网络模型分别测试,测试结果如表1所示。

表1测试结果对比表

从表1可以看出,本发明提供的行人重识别方法的识别准确率更高。

图2为根据本发明实施例提供的行人重识别装置的功能框图。基于上述各实施例的内容,如图2所示,该行人重识别装置包括特征提取模块201、和行人识别模块202,其中:

特征提取模块201,用于将待识别图像输入至孪生网络模型,输出待识别图像的特征向量;

行人识别模块202,用于根据待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果;

其中,孪生网络模型是基于样本行人图像进行训练后得到的;特征向量由类型特征和图像特征组成;

孪生网络模型包括第一卷积神经网络和第二卷积神经网络;第一卷积神经网络与第二卷积神经网络的结构相同;第一卷积神经网络包括第一分类学习子网络和第一度量学习子网络;第二卷积神经网络包括第二分类学习子网络和第二度量学习子网络;

第一分类学习子网络和第二分类学习子网络,均用于获取待识别图像的类型特征;

第一度量学习子网络和第二度量学习子网络,均用于获取待识别图像的图像特征。

具体地,特征提取模块201将待识别图像输入至训练好的孪生网络模型后,训练好的孪生网络模型中的第一卷积神经网络和第二卷积神经网络分别输出第一特征向量和第二特征向量,根据第一特征向量和第二特征向量,可以获得待识别图像的特征向量。

第一特征向量,根据第一分类学习子网络的输出和第一度量学习子网络的输出获得;第二特征向量,根据第二分类学习子网络的输出和第二度量学习子网络的输出获得。

行人识别模块202,获得待识别图像的特征向量后,计算待识别图像与行人图像库中每一样本行人图像的特征向量之间的相似性,按照相似性对样本行人图像的特征向量进行降序排列,确定相似性最大的若干个样本行人图像的特征向量,并根据上述相似性最大的若干个样本行人图像的特征向量所对应的行人身份标签,确定待识别图像对应的行人身份标签,作为识别结果。

本发明实施例提供的行人重识别装置,用于执行本发明实施例提供的行人重识别方法,该行人重识别装置包括的各模块实现相应功能的具体方法和流程详见上述行人重识别方法的实施例,此处不再赘述。

该行人重识别装置用于前述各实施例的行人重识别方法。因此,在前述各实施例中的行人重识别方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。

通过孪生网络模型获取待识别图像的特征向量,由于孪生网络可以同时学得具有辨别力的卷积神经网络特征和相似性度量,因而能提高特征提取的准确率,进而能提高行人重识别的准确率。

图3为根据本发明实施例提供的电子设备的结构框图。基于上述实施例的内容,如图3所示,该电子设备可以包括:处理器(processor)301、存储器(memory)302和总线303;其中,处理器301和存储器302通过总线303完成相互间的通信;处理器301用于调用存储在存储器302中并可在处理器301上运行的计算机程序指令,以执行上述各方法实施例所提供的方法,例如包括:将待识别图像输入至训练好的孪生网络模型,输出待识别图像的特征向量;根据待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果。

本发明另一实施例公开一种计算机程序产品,计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:将待识别图像输入至训练好的孪生网络模型,输出待识别图像的特征向量;根据待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果。

此外,上述的存储器302中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明另一实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:将待识别图像输入至训练好的孪生网络模型,输出待识别图像的特征向量;根据待识别图像的特征向量和行人图像库中各样本行人图像的特征向量,获取识别结果。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行上述各个实施例或者实施例的某些部分的方法。

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

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