CN113569657A - 一种行人重识别方法、装置、设备及存储介质 - Google Patents
一种行人重识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113569657A CN113569657A CN202110755315.7A CN202110755315A CN113569657A CN 113569657 A CN113569657 A CN 113569657A CN 202110755315 A CN202110755315 A CN 202110755315A CN 113569657 A CN113569657 A CN 113569657A
- Authority
- CN
- China
- Prior art keywords
- sample
- pedestrian
- training
- similarity
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000012549 training Methods 0.000 claims abstract description 312
- 230000008569 process Effects 0.000 claims abstract description 42
- 239000013598 vector Substances 0.000 claims description 81
- 238000012544 monitoring process Methods 0.000 claims description 50
- 238000000605 extraction Methods 0.000 claims description 34
- 230000015654 memory Effects 0.000 claims description 29
- 238000005070 sampling Methods 0.000 claims description 18
- 125000004122 cyclic group Chemical group 0.000 claims description 13
- 238000011176 pooling Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 39
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 4
- 238000005065 mining Methods 0.000 description 4
- 230000036544 posture Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种行人重识别方法、装置、设备及存储介质,涉及智能安防技术领域,用于提升行人重识别的准确性。在该方法中,在进行行人重识别模型的训练时,将训练过程划分为2个训练阶段,即历史迭代次数不大于设定的迭代次数阈值的前期阶段,和大于设定的迭代次数阈值的后期阶段,并在不同训练阶段采用不同的损失值计算方式来调整行人重识别模型,使得在不同训练阶段均能够采用更为合适的损失值计算方式,使得模型调整更为精确,进而提升训练得到的行人重识别模型的准确性,相应也就提高了行人重识别的准确性。
Description
技术领域
本申请涉及智能安防技术领域,提供一种行人重识别方法、装置、设备及存储介质。
背景技术
行人重识别也称行人再识别,是指利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术。由于行人的姿态变化、摄像机的拍摄视角以及视线遮挡等问题,使得行人特征的提取非常具有挑战性,目前主流的识别方法是用大规模的行人数据来训练深度神经网络模型,以通过从训练数据中提取具有判别性的行人特征,并计算各个行人特征之间的相似度,来实现对行人身份的识别。
因此,所训练的深度神经网络模型的识别准确程度直接决定了行人重识别是否准确,进而如何提升深度神经网络模型的识别准确程度是值得思考的问题。
发明内容
本申请实施例提供一种行人重识别方法、装置、设备及存储介质,用于提升行人重识别的准确性。
一方面,提供一种行人重识别方法,所述方法包括:
将包括待识别检测目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,获得所述行人重识别模型输出的行人重识别结果,所述行人重识别结果用于指示所述至少一个监控图像中是否存在所述待识别目标;
其中,所述行人重识别模型是采用循环迭代的方式训练得到的,每一轮迭代训练过程包括如下步骤:
基于本轮输入的各个训练样本,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与所述一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,一个训练样本包括一个目标对应的监控图像;
在历史迭代次数不大于设定的迭代次数阈值时,基于所述多个第一类三元组,确定所述行人重识别模型的总损失值;
在所述历史迭代次数大于所述迭代次数阈值时,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,确定所述行人重识别模型的总损失值;其中,每个第二类三元组包括一个训练样本、与所述一个训练样本相似度最小的正样本,以及与所述一个训练样本相似度最大的负样本;
基于所述总损失值对所述行人重识别模型进行调整。
一方面,提供一种行人重识别装置,所述装置包括:
行人重识别单元,用于将包括待识别目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,获得所述行人重识别模型输出的行人重识别结果,所述行人重识别结果用于指示所述至少一个监控图像中是否存在所述待识别目标;
其中,所述行人重识别模型是采用循环迭代的方式训练得到的,每一轮迭代训练过程包括如下步骤:
基于本轮输入的各个训练样本,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与所述一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,一个训练样本包括一个目标对应的监控图像;
在历史迭代次数不大于设定的迭代次数阈值时,基于所述多个第一类三元组,确定所述行人重识别模型的总损失值;
在所述历史迭代次数大于设定的迭代次数阈值时,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,确定所述行人重识别模型的总损失值;其中,每个第二类三元组包括一个训练样本、与所述一个训练样本相似度最小的正样本,以及与所述一个训练样本相似度最大的负样本;
基于所述总损失值对所述行人重识别模型进行调整。
可选的,所述装置还包括特征提取单元和三元组构造单元;
所述特征提取单元,用于采用所述行人重识别模型包括的特征提取模块,对所述各个训练样本分别进行特征提取,相应获得多个图像特征向量;
所述三元组构造单元,用于基于获得的所述多个特征向量,构造所述多个第一类三元组;其中,每个第一类三元组包括一个训练样本对应的特征向量,相应的各个正样本各自对应的特征向量,以及相应的各个负样本各自对应的特征向量。
可选的,所述特征提取单元,具体还用于:
通过所述特征提取模块中包括的采样层对所述各个训练样本进行采样,获得多个第一特征向量;
通过所述特征提取模块中包括的池化层对所述多个第一特征向量进行池化处理,获得多个第二特征向量;
通过所述特征提取模块中包括的标准化层对所述多个第二特征向量进行标准化处理,获得所述多个图像特征向量。
可选的,所述装置还包括确定单元,用于:
针对所述多个第一类三元组,分别执行如下操作:
针对一个第一类三元组,根据所述一个第一类三元组包括的训练样本分别与各个正样本的相似度,以及所述一个第一类三元组包括的训练样本与各个负样本的相似度,确定所述一个第一类三元组对应的三元组损失值;
基于所述行人重识别模型包括的分类模块,分别根据各个训练样本所对应的多个正样本对相应的相似度和多个负样本对相应的相似度,确定所述各个训练样本各自对应的分类损失值;其中,每个正样本对包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的一个正样本;每个负样本对包括一个训练样本,与所述一个训练样本的相似度不大于设定相似度阈值的一个负样本;
基于所述各个第一类三元组各自对应的三元组损失值,以及所述各个训练样本各自对应的分类损失值,获得所述行人重识别模型的总损失值。
可选的,所述确定单元,具体还用于:
根据所述各个正样本各自对应的相似度,相应确定每个正样本对应的第一权重值;
根据所述各个负样本各自对应的相似度,相应确定每个负样本对应的第二权重值;
根据各个正样本各自对应的相似度和第一权重值,以及所述各个负样本各自对应的相似度和第二权重值,确定所述一个第一类三元组对应的三元组损失值。
可选的,所述装置还包括更新单元,用于:
针对所述多个训练样本,分别执行如下操作:
针对一个训练样本,分别确定所述一个训练样本与所述多个训练样本中其余训练样本之间的相似度;
根据相似度取值最小的正样本,以及相似度取值最大的负样本,构造所述一个训练样本对应的第二类三元组;
以设定的更新概率,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组。
一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种方法的步骤。
一方面,提供一种计算机存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述任一种方法的步骤。
本申请实施例中,在进行行人重识别模型的训练时,将训练过程划分为2 个训练阶段,即历史迭代次数不大于设定的迭代次数阈值的前期阶段,和大于设定的迭代次数阈值的后期阶段,并在不同训练阶段采用不同的损失值计算方式来调整行人重识别模型,使得在不同训练阶段均能够采用更为合适的损失值计算方式,使得模型调整更为精确,进而提升训练得到的行人重识别模型的准确性,相应也就提高行人重识别的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的行人重识别模型的一种框架示意图;
图3为本申请实施例提供的行人重识别模型训练流程示意图;
图4为本申请实施例提供的获取图像特征向量的一种流程示意图,;
图5为确定总损失值的一种流程示意图;
图6为构造第二类三元组的一种流程示意图;
图7为确定总损失值的另一种流程示意图;
图8为本申请实施例提供的行人重识别装置的一种结构示意图;
图9为本申请实施例提供的计算机设备的一种结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
(1)简单样本:训练样本中有很大概率被正确分类的样本。
(2)难样本:训练样本中有很大概率被错误分类的样本。
(3)间隔(margin):为正、负样本之间的距离。其中,常规的三元损失函数只对正、负样本之间的距离在margin以内的样本进行优化。
(4)行人重识别:也称行人再识别,是利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术,即,给定一个监控行人图像,检索跨设备下的该行人图像。
(5)损失函数:用于评价模型的预测值与真实值之间的差异程度。
(6)三元组损失函数:是一种直接距离度量学习方法,可以把每个训练样本作为锚点(anchor)样本,通过计算各个训练样本之间的相似度,找到与其最相似的负样本和最不相似的正样本,然后通过与所设定的间隔进行比较,来计算结合了难样本挖掘的三元组损失,以使网络模型在训练过程中注意到对难样本的学习。
具体的,设某个训练样本作为锚点样本,记为xa,其对应的正样本记为 xp∈P(a),对应的负样本xn∈N(a),一般而言,三元组损失函数可用如下公式进行表述:
其中,m为正负样本相似度的固定差值边界margin,该三元组损失函数表示通过每个anchor选择一个距离最大正样本和一个距离最小的负样本,以确定出距离最大正样本与距离最小的负样本之间距离差值,该距离d(·)可以为欧式距离。
(7)循环损失(Circle Loss)函数:属于一种代理学习模式,即分别对正样本对和负样本对施加不同间隔margin,在代理学习模式下引入了成对 (pairwise)的距离度量范式。
具体的,循环损失函数可用如下公式进行表述:
其中,L是负样本对的集合,K是正样本对的集合,γ是尺度因子,和都是非负的权重因子,sn和sp分别表示余弦距离测度的负样本对的相似度和正样本对的相似度,Δn是负样本对的间隔margin,Δp是正样本对的间隔margin。
为了提升对行人特征的判别性,目前主要采用交叉熵损失函数和三元组损失函数进行多损失函数联合训练来实现这一目的,但是,这种识别方法的效果是有限的,一方面,由于三元组损失函数中设置的间隔为固定值,其并没有考虑到不同样本对之间匹配难度不一样的特性,且由于该参数需要人工调节,操作繁琐;另一方面,在网络训练的后期,其对应采样到的一个批次的数据往往大部分为简单样本,使得网络学习难样本的反传梯度值被稀释,进而使网络不能很有效的学习和区分难样本。
考虑到在训练前期阶段中,由于行人重识别模型的行人重识别能力较弱,所以,对于此时的行人重识别模型来说,输入的大部分训练样本都非常容易检测错误,即,在此阶段中,大部分训练样本为难样本,少部分训练样本为简单样本。那么,通过常规的难样本采样方式就能获取大量的难样本,以进一步构造出多个第一类三元组,从而确定出行人重识别模型的总损失值,进而达到有效学习和区分难样本的目的。
而在训练后期阶段中,此时行人重识别模型的行人重识别能力已经趋于完善,对输入的大部分训练样本都非常容易检测正确,即,在此阶段中,大部分训练样本为简单样本,少部分训练样本为难样本,这会使得网络学习难样本的反传梯度值被稀释,进而使网络模型不能很有效的学习和区分难样本。那么,就应该在这个阶段中增加难样本的数量,因此,可以通过从行人重识别模型对应的所有训练样本中,与所述一个训练样本相似度最小的正样本,以及与所述一个训练样本相似度最大的负样本,来构造第二类三元组,从而确定出行人重识别模型的总损失值,以实现对所有的训练样本进行挖掘。
基于此,本申请实施例提供了一种行人重识别方法,在该方法中,在进行行人重识别模型的训练时,将训练过程划分为2个训练阶段,即历史迭代次数不大于设定的迭代次数阈值的阶段,和大于设定的迭代次数阈值的阶段,并在不同训练阶段采用不同的损失函数来调整行人重识别模型,使得在不同训练阶段均能够采用更为合适的损失值计算方式,使得模型调整更为精确,进而提升训练得到的行人重识别模型的准确性,相应也就提高行人重识别的准确性。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
如图1所示,为本申请实施例提供的一种应用场景示意图。该行人重识别的应用场景可以包括图像采集设备10和行人重识别设备11。
图像采集设备10可以为具有视频摄像功能的设备,图像采集设备10可以设置于各个被监控区域,例如商超门口或者红绿灯路口等。
行人重识别设备11是具有一定处理能力的计算机设备,例如可以为个人计算机(personal computer,PC)、笔记本电脑或者服务器等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
具体的,行人重识别设备11可以包括一个或多个处理器111、存储器112 以及与其他设备交互的I/O接口113等。此外,行人重识别设备11还可以包括数据库114,该数据库114可以用于存储本申请实施例提供的方案中涉及到的输入的待检测图像、监控设备采集的至少一个监控图像以及行人重识别结果等。其中,行人重识别设备11的存储器112中可以存储本申请实施例提供的行人重识别方法的程序指令,这些程序指令被处理器111执行时能够用以实现本申请实施例提供的行人重识别方法的步骤。
在一种可能的使用场景中,安保人员想要确定在某段时间内小明是否在其监控范围内出现过,那么安保人员可以将至少一个图像采集设备10在该某段时间内采集的图像输入行人重识别设备11中,同时,还将含有小明表观特征的待检测图像一起输入该行人重识别设备11中,进而,行人重识别设备11可以快速对输入的监控图像进行检测,以确定该输入的监控图像中是否具有与小明表观特征相匹配的图像,从而达到确定出在某段时间内小明是否出现在其监控范围内的目的。这相对于传统寻人方式,大大提升了工作效率,使其在交通管理和智慧零售等场景都能够广泛应用。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其他可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
在对本申请实施例的方法进行介绍之前,首先对本申请实施例提供的网络模型框架进行介绍,如图2所示,为本申请实施例提供的行人重识别模型的一种框架示意图,该行人重识别模型的框架依次包括输入层、特征提取模块、分类模块、损失层以及输出层。其中,该特征提取模块用于对输入的训练样本和待检测样本进行特征提取,该分类模块用于对输入的训练样本进行分类处理。
在行人重识别模型投入实际的使用之前,需要对行人重识别模型进行训练,该行人重识别模型是采用分阶段训练的方式训练得到的,且每一训练阶段中均采用循环迭代的方式训练得到的,其中,训练阶段包括前期阶段和后期阶段,后续将对不同阶段的过程进行介绍,这里先不赘述。
如图3所示,为本申请实施例提供的行人重识别模型训练流程示意图,由于每一轮迭代过程类似,因此这里以其中一轮迭代过程为例进行介绍,每一轮迭代训练过程可以包括如下步骤。
步骤301:基于本轮输入的各个训练样本,构造每一个训练样本对应的第一类三元组。
在本申请实施例中,每个第一类三元组包括各个训练样本中的一个训练样本,与一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,且一个训练样本包括一个目标对应的监控图像。
例如,获取的1000张监控图像,每个监控图像为一个训练样本,且每个监控图像中包含一个被标记了身份的行人,将该1000张监控图像均匀划分为 10个批次,每个批次包含有100张监控图像,行人重识别模型在训练时,每一轮迭代训练过程依次输入一个批次的监控图像进行训练,即10个批次会依次输入该行人重识别模型中。
具体的,相似度可以通过余弦相似度法或者欧氏距离来进行确定,当然,也可以采用其它任何适用的相似度度量方法。
那么,在其中一轮迭代训练过程中,基于输入的100张监控图像,即输入的100个训练样本,可对这100个训练样本进行相似度确定,以确定出这100 个训练样本中任意两个训练样本之间的相似度,从而确定出每一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,进而,通过该每一个训练样本、至少一个正样本以及至少一个负样本,构造出该每一个训练样本对应的第一类三元组。例如,可以将相似度阈值设定为0.5,对于监控图像1来说,相似度大于0.5的监控图像共有30张,相似度不大于0.5的监控图像共有69张,那么,该监控图像1便对应有30个正样本,69个负样本,进而,监控图像1对应的第一类三元组便为(监控图像1,30个正样本,69个负样本)。
步骤302:确定历史迭代次数是否不大于设定的迭代次数阈值。
在本申请实施例中,在网络模型训练的前期阶段,由于行人重识别模型的行人重识别能力较弱,所以,对于此时的行人重识别模型来说,输入的大部分训练样本都非常容易检测错误,即,在此阶段中,大部分训练样本为难样本,少部分训练样本为简单样本。那么在前期阶段中对难样本的学习能力较强。
而在网络模型训练的后期阶段,此时行人重识别模型的行人重识别能力已经趋于完善,对输入的大部分训练样本都非常容易检测正确,即,在此阶段中,大部分训练样本为简单样本,少部分训练样本为难样本,这会使得网络学习难样本的反传梯度值被稀释,即反向传递的梯度值多为简单样本的反传梯度值,进而使得在后期阶段中,网络模型不能很有效的学习和区分难样本。
可见在不同的训练阶段,行人重识别模型对难样本的学习能力不同。
因此,基于此,可以通过将网络模型训练过程划分为2个阶段,即前述的前期阶段和后期阶段,并在不同训练阶段采用不同的损失值计算方法来对行人重识别模型进行调整。
具体的,可以以历史迭代次数进行训练阶段的划分,在历史迭代次数不大于设定的迭代次数阈值时,网络模型训练过程处于前期阶段,而当历史迭代次数大于设定的迭代次数阈值时,网络模型训练过程处于后期阶段。
步骤303:在历史迭代次数不大于设定的迭代次数阈值时,基于多个第一类三元组,确定行人重识别模型的总损失值。
本申请实施例中,在历史迭代次数不大于设定的迭代次数阈值时,即为训练过程的前期阶段时,前期阶段为均衡采样阶段,即采用的每个训练样本的所有正负样本一并进行训练,进而,在前期阶段,可以基于多个第一类三元组,来确定出该行人重识别模型的总损失值,后续将对损失计算的过程详细进行介绍,在此先不过多赘述。
步骤304:在历史迭代次数大于设定的迭代次数阈值时,对多个第一类三元组中至少一个三元组进行更新处理,并基于更新后的多个三元组,确定行人重识别模型的总损失值。
本申请实施例中,后期阶段为全局难样本挖掘阶段,即采用的每个训练样本的难样本进行训练的过程,进而,在后期阶段,可以对上述获得第一类三元组进行更新替换,从而基于剩余的第一类三元组和更新后的第二类三元组,来确定出该行人重识别模型的总损失值。其中,每个第二类三元组包括一个训练样本,以及该训练样本的难样本,即与该训练样本之间相似度最小的正样本,以及与该训练样本相似度最大的负样本。
由于在网络模型训练的后期阶段,行人重识别模型的行人重识别能力已经趋于完善,对输入的大部分训练样本都非常容易检测正确,所以,在此阶段中,对于行人重识别模型来说,大部分训练样本为简单样本,少部分训练样本为难样本,这会使得网络学习难样本的反传梯度值被稀释,即反向传递的梯度值多为简单样本的反传梯度值,进而使得在后期阶段中,网络模型不能很有效的学习和区分难样本。那么为了在后期阶段能够有效的学习和区分难样本,就应该在后期阶段中增加难样本的比例,从而能够基于更多的难样本进行模型训练,即能够重点针对难样本进行模型学习,提升模型对于难样本的学习能力。
因此,在历史迭代次数大于设定的迭代次数阈值时,即网络模型训练过程处于后期阶段时,可以将多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,从而确定出行人重识别模型的总损失值。
本申请实施例中,每个第二类三元组包括一个训练样本、与一个训练样本相似度最小的正样本,以及与一个训练样本相似度最大的负样本。针对每一训练样本来说,都会从所有训练样本中来确定其对应的第二类三元组,即由其难样本组成的三元组,这样后续通过对第一类三元组进行更新,可以使得参与训练的难样本比例大幅提升,进而缓解训练中难样本反传梯度信息被简单样本稀释的问题,从而提升网络对难样本的识别能力,使行人重识别模型能够有效地进行学习和区分难样本。
步骤305:基于总损失值对行人重识别模型进行调整。
在本申请实施例中,在确定出行人重识别模型的总损失值时,会根据该总损失值对行人重识别模型中的各个网络参数(例如,各个网络层之间的权重值) 进行调整,以增强行人重识别模型对难样本的学习力度,提升对行人特征的判别性。
在一种可能的实施方式中,通常情况下,为了使训练的神经网络具有鉴别性且不易被难样本干扰,常使用的方法是在图像层面将训练图像与对应的难样本图像进行加权融合,以得到新的训练样本图像,且该新的训练样本图像中带有对应的难样本图像的部分信息。这样虽然增加了特征的多样性,但是新增加的难样本特征都是虚假不真实存在的特征,所以,这样训练出来的模型可能会降低对行人特征的判别性。
而在本申请实施例中,则采用真实监控图像来获取训练样本,且可以从各个训练样本的特征层面来确定三元组,其能够简化训练过程,并加快收敛。具体的,可以采用行人重识别模型包括的特征提取模块,来对各个训练样本分别进行特征提取,以相应获得多个图像特征向量,并基于获得的多个特征向量,构造多个第一类三元组。其中,每个第一类三元组包括一个训练样本对应的特征向量,相应的各个正样本各自对应的特征向量,以及相应的各个负样本各自对应的特征向量。
在一种可能的实施方式中,特征提取模块可以包括采样层、池化层和标准化层,那么,如图4所示,为本申请实施例提供的获取图像特征向量的一种流程示意图,其中,采样层可以为自适应采样层,标准化层可以为批量标准化 (Batch-normalized,BN)层,该流程介绍如下。
步骤401:通过特征提取模块中包括的采样层对各个训练样本进行采样,获得多个第一特征向量。
例如,对每一轮迭代训练过程来说,该轮迭代训练过程中输入的各个训练样本是,对P个不同身份(标签)的行人进行监控图像采集,且每个行人随机采样K张监控图像得到的,即,该轮迭代训练过程中输入的训练样本数量 B=P*K张监控图像。
那么,将该B张监控图像输入至特征提取模块中包括的采样层之后,可以对该对B张监控图像进行采样,以获得多个第一特征向量,即B个第一特征向量。
步骤402:通过特征提取模块中包括的池化层对多个第一特征向量进行池化处理,获得多个第二特征向量。
为了降低模型训练过程中的计算量,通常会将采样得到的特征向量进行维度缩减,因此,在通过采样层获取到多个第一特征向量之后,可以通过特征提取模块中包括的池化层来对多个第一特征向量进行池化处理,以获得多个第二特征向量。例如,经过采样层得到了B个1024维度的第一特征向量,在经过池化层之后,可以得到B个256维度的第二特征向量。
步骤403:通过特征提取模块中包括的标准化层对多个第二特征向量进行标准化处理,获得多个图像特征向量。
在本申请实施例中,为了保证在采用的联合损失函数来计算损失值时,各个损失函数所对应的学习特征空间的一致性,因此,在对第一特征向量缩减维度之后,还会通过特征提取模块中包括的标准化层来对多个第二特征向量进行标准化处理,以获得多个图像特征向量,并可加快多损失联合训练下的网络参数的收敛速度。
在一种可能的实施方式中,在历史迭代次数不大于设定的迭代次数阈值时,即网络模型训练过程处于前中期阶段时,如图5所示,为确定总损失值的一种流程示意图,具体针对多个第一类三元组,可以分别执行如下步骤,来确定出该行人重识别模型的总损失值。
步骤501:针对每一个第一类三元组,根据该第一类三元组包括的训练样本分别与各个正样本的相似度,以及一个第一类三元组包括的训练样本与各个负样本的相似度,确定该第一类三元组对应的三元组损失值。
在本申请实施例中,在确定了每一个训练样本对应的第一类三元组之后,可以根据每个第一类三元组包括的训练样本分别与各个正样本之间的相似度,以相应确定每个正样本对应的第一权重值;并根据该第一类三元组包括的训练样本与各个负样本的相似度,以相应确定每个负样本对应的第二权重值。
具体的,第一权重值wp可用如下公式求得:
其中,xa表示一个第一类三元组中的训练样本,该训练样本其对应的正样本为xp∈P(a),P(a)为正样本集合,该距离d(·)可以为欧式距离。
第二权重值wn可用如下公式求得:
其中,训练样本对应的负样本为xn∈N(a),N(a)为负样本集合。
进而,可以根据各个正样本各自对应的相似度和第一权重值,以及各个负样本各自对应的相似度和第二权重值,来确定一个第一类三元组对应的三元组损失值。
具体的,每一个第一类三元组对应的三元组损失值Ladaptive可用如下公式求得:
在该三元损失函数中,考虑到了一个训练样本与对应的所有正样本之间的距离,以及对应的所有负样本之间的距离,并通过对各个正样本和各个负样本施加相应的权重值,来提升对难样本的学习能力,以缓解大规模数据集的域方差问题。此外,针对不同训练样本来说,正负样本之间的相似度的间隔并不一定相同,即不为固定值,实现了软间隔,使得正样本距离训练样本更近,而负样本距离训练样本更远。
步骤502:基于行人重识别模型包括的分类模块,分别根据各个训练样本所对应的多个正样本对相应的相似度和多个负样本对相应的相似度,确定各个训练样本各自对应的分类损失值。
在本申请实施例中,分类模块可以包括分类层。每一个训练样本对应多个正样本对和多个负样本对,每个正样本对包含一个训练样本,与该训练样本的相似度大于设定相似度阈值的一个正样本;每个负样本对包括一个训练样本,与该训练样本的相似度不大于设定相似度阈值的一个负样本。
由于循环损失函数是通过对分类层的输出来计算损失值,进而监督网络模型进行训练,这种方式对难样本的学习效果有待加强,因此,为了提升网络模型的学习效果,并使特征向量更具有判别性,在本申请实施例中,在循环损失函数中引入“成对(pairwise)”的距离度量范式,同时,考虑到优化相对距离存在优化边界不明确的问题,所以,在循环损失函数中还设置了权重因子和以分别对正样本对和负样本对的度量空间根据各自的状态进行优化与学习,进而提升网络模型的收敛效果和特征之间的判别性。
具体可以采用如下循环损失函数公式来确定每个训练样本,这里以训练样本A为例,针对训练样本A,可以构建得到多个正样本对以及多个负样本对,从而训练样本A对应的分类损失值Lcircleloss为:
在分类层中,首先会对输入的行人特征向量进行L2正则化处理,以使所有特征向量中包含的元素值缩小,且特征向量所对应的权重变得平滑,进而防止过拟合现象产生。然后可以经过256*N维度的分类参数矩阵,以变换得到含有N个维度的图像特征向量,进而可以采用该图像特征向量通过上述式子Lcircleloss来确定出训练样本A的分类损失值。进而,基于相同的计算方式便可以确定出基于分类层的各个训练样本各自对应的分类损失值。
步骤503:基于各个第一类三元组各自对应的三元组损失值,以及各个训练样本各自对应的分类损失值,获得行人重识别模型的总损失值。
在本申请实施例中,为了提升行人重识别模型的训练效果,采用多种损失函数来联合进行训练。因此,在获取了各个第一类三元组各自对应的三元组损失值,以及各个训练样本各自对应的分类损失值之后,便可以根据各个第一类三元组各自对应的三元组损失值,以及各个训练样本各自对应的分类损失值,来获得行人重识别模型的总损失值了。
例如,可以采用基于分类模块(分类层)的循环损失函数Lcircleloss和改进的三元组损失函数Ladaptive进行联合训练,采用循环损失函数进行模型训练属于一种代理学习模式,可以对分类层的输出计算损失来监督网络模型的训练,采用三元组损失函数进行模型训练属于一种直接距离度量学习方法,其常常会结合难样本采样策略,提升网络优化效果,这样,既可以监督网络模型的进行训练,又可以使网络模型在训练过程中注意到对难样本的学习,使得最终训练出来的行人重识别模型能够尽快收敛,且适用于大多数场景,具体可以通过如下式子来确定联合损失函数,以训练样本A为例,那么训练样本A所对应的联合损失值为:
Ltotal=αLcircleloss+βLadaptive
其中,Lcircleloss为训练样本A的分类损失值,Ladaptive为训练样本A的分类损失值三元损失值,α为分类损失值Lcircleloss所对应的权重,β为三元组损失值Ladaptive所对应的权重,在网络模型具有多个网络分支时,α和β的具体取值,可以按照用户需求来进行设置。例如,针对一个8*8的全局网络来说,假设分类层需要采用2个分类损失函数,损失层需要采用3个三元组损失函数,那么可以将α设置为2,β设置为3,当然也可对权重值进行归一化处理,即α设置为0.4,β设置为0.6。
或者对于2个4*8的子网络来说,针对一个4*8的子网络1,假设子网络的分类层需要采用2个分类损失函数,损失层需要采用3个三元组损失函数,针对一个4*8的子网络2,假设子网络的分类层需要采用3个分类损失函数,损失层需要采用2个三元组损失函数,那么,最终共采用了5个分类损失函数和5个三元组损失函数,所以可以将α设置为5,β设置为5,当然也可对权重值进行归一化处理,即α设置为0.5,β设置为0.5。
进而,在确定出每一个训练样本所对应的联合损失值之后,可将所有训练样本所对应的联合损失值相加,便可以得到行人重识别模型的总损失值。
在一种可能的实施方式中,在历史迭代次数大于设定的迭代次数阈值时,即网络模型训练过程处于后期阶段时,如图6所示,为构造第二类三元组的一种流程示意图,具体针对多个训练样本,可以分别执行如下步骤,来具体该如何进行更新处理。
步骤601:针对每一个训练样本,分别确定该训练样本与多个训练样本中其余训练样本之间的相似度。
由于在网络模型训练的后期阶段,其对应采样到的一个批次的数据往往大部分为简单样本,使得网络学习难样本的反传梯度值被稀释,进而使网络不能很有效的学习和区分难样本。那么为了在后期阶段能够有效的学习和区分难样本,就应该在后期阶段中增加难样本的数量,即需要挖掘出更多的难样本。
因此,在历史迭代次数大于设定的迭代次数阈值时,即网络模型训练过程处于后期阶段时,可以从行人重识别模型对应的所有训练样本中来寻找三元组,这样通过对全部(全局)的训练样本进行挖掘,可以获得更多的难样本。
具体的,针对每一个训练样本,可以分别确定该训练样本与多个训练样本中其余训练样本之间的相似度。即,对训练样本进行两两进行组合,并获取组合后两个训练样本之间的相似度。
步骤602:确定与该训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与该训练样本的相似度不大于设定相似度阈值的至少一个负样本。
例如,在分别确定1个图像特征向量与剩余的999个之间图像特征向量的相似度之后,根据相似度是否大于设定相似度阈值,来将这剩余的999个之间图像特征向量划分为正样本和负样本,例如,相似度阈值被设定为0.5,对于该1个图像特征向量来说,相似度大于0.5的图像特征向量可以有500个,相似度不大于0.5的图像特征向量可以有499个。
步骤603:根据一个训练样本,相似度取值最小的正样本,以及相似度取值最大的负样本,构造一个训练样本对应的第二类三元组;
继续沿用上述例子,在划分好该1个图像特征向量的500个正样本和499 个负样本之后,可以确定出该500个正样本中相似度最小的图像特征向量p,以及该499个负样本中相似度最大的图像特征向量n,那么,根据该1个图像特征向量、图像特征向量p和图像特征向量n,便可以构造出该1个图像特征向量对应的第二类三元组(1个图像特征向量,图像特征向量p,图像特征向量n)。
进而,针对每一轮迭代训练过程,可以以设定的更新概率,例如,更新概率为0.5,将多个第一类三元组中至少一个第一类三元组更新为相应的第二类三元组。此时,便可采用如下损失函数来确定各个第二类三元组各自对应的三元组损失值:
Ladaptive=max(0,m+d(xa,xb)-d(xa,xc))
其中,m为正负样本相似度的间隔,xa为锚点样本anchor,xb为全局图像特征向量中相似度最小的正样本,xc为全局图像特征向量中相似度最大的负样本,该距离d(·)可以为欧式距离。进而,同样可以基于各个第二类三元组各自对应的三元组损失值,以及各个训练样本各自对应的分类损失值,来获得行人重识别模型的总损失值。
在本申请实施例中,在将行人重识别模型训练成功之后,可以将包括待识别目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,以获得行人重识别模型输出的行人重识别结果,进而通过行人重识别结果所指示的内容来确定至少一个监控图像中是否存在待识别目标。
例如,在智慧零售场景下,安保人员想要确定在某段时间内小红是否在商场内出现过,那么安保人员可以将含有小红表观信息的图像,以及在该某段时间内对商场内的行人进行采集的监控图像一起输入已训练的行人重识别模型中,进而,已训练的行人重识别模型便会输出的行人重识别结果,安保人员可以根据该检测结果确定出在某段时间内小红是否出现在其监控范围内的目的。从而大大提升了对行人特征的判别性。
又或者,在交通管理场景下,小兰驾驶轿车在一十字路口闯红灯之后扬长而去,交警想要确定小兰开车经过了哪些地方,那么交警可以将含有小兰表观信息的图像,以及在闯红灯之后的一段时间内,该十字路口周围监控摄像机采集的多张监控图像一起输入已训练的行人重识别模型中,进而,已训练的行人重识别模型便会输出的行人重识别结果,该检测结果包括多张拍摄有小兰表观信息的监控图像,根据该多张监控图像,便可以确定出小兰驾车行驶的路径,与以往需要通过人工肉眼去对多个监控视频进行一一排查相比,通过本申请的行人重识别模型来确定驾车行驶的路径,大大降低了交警的工作量,且缩短了获取结果的时间。
如图7所示,为确定总损失值的一种流程示意图,具体可以包括如下步骤。
步骤701:根据采集的多个监控图像,确定训练样本集。
在本申请实施中,为了提升行人重识别模型的泛化性,可以在线大规模的采集监控图像,该监控图像包括对不同行人的在不同穿着(例如穿短裤、长裤、长裙等)、不同姿态(例如坐姿、站姿、行走等)、不同时间(例如早上、中午、晚上、春天、夏天等)、不同地理位置(例如室内、室外、北京、上海等)情况下的多张监控图像,每一张监控图像可以作为一个训练样本,那么根据这多张监控图像便可以确定出用于进行行人重识别的训练样本集。这样确定出的训练样本集包含有大量的信息,可以使训练出的行人重识别模型更具有泛化性。
步骤702:对训练样本集中的多个训练样本进行行人特征提取,获得多个图像特征向量。
在本申请实施例中,可以依次通过自适应采样层、池化层以及标准化层来对多个训练样本进行行人特征提取,以对应获得多个图像特征向量。
步骤703:确定行人重识别模型的历史迭代次数是否不大于设定的迭代次数阈值。
步骤704:在确定历史迭代次数不大于设定的迭代次数阈值,基于多个图像特征向量,构建多个第一类三元组,并确定各个第一类三元组各自对应的三元组损失值。
步骤705:在确定历史迭代次数大于设定的迭代次数阈值,基于全局难样本挖掘,以设定的更新概率,将多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并确定各个第二类三元组各自对应的三元组损失值。
步骤706:基于行人重识别模型包括的分类层,分别根据多个正样本对相应的相似度和多个负样本对相应的相似度,确定各个训练样本各自对应的分类损失值。
步骤707:基于三元组损失值,以及各个训练样本各自对应的分类损失值,获得行人重识别模型的总损失值。
综上所述,在本申请实施例中,在进行行人重识别模型的训练时,将训练过程划分为2个训练阶段,即历史迭代次数不大于设定的迭代次数阈值的前期阶段,和大于设定的迭代次数阈值的后期阶段,并在不同训练阶段采用不同的损失值计算方式来调整行人重识别模型,使得在不同训练阶段均能够采用更为合适的损失值计算方式,使得模型调整更为精确,进而提升训练得到的行人重识别模型的准确性,相应也就提高行人重识别的准确性。
如图8所示,基于同一发明构思,本申请实施例提供一种信息处理装置80,该装置包括:
行人重识别单元801,用于将包括待识别目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,获得行人重识别模型输出的行人重识别结果,行人重识别结果用于指示至少一个监控图像中是否存在待识别目标;
其中,行人重识别模型是采用循环迭代的方式训练得到的,每一轮迭代训练过程包括如下步骤:
基于本轮输入的各个训练样本,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本,与一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,一个训练样本包括一个目标对应的监控图像;
在历史迭代次数不大于设定的迭代次数阈值时,基于多个第一类三元组,确定行人重识别模型的总损失值;
在历史迭代次数大于设定的迭代次数阈值时,将多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,确定行人重识别模型的总损失值;其中,每个第二类三元组包括一个训练样本、与一个训练样本相似度最小的正样本,以及与一个训练样本相似度最大的负样本;
基于总损失值对行人重识别模型进行调整。
可选的,该装置还包括特征提取单元802和三元组构造单元803;
特征提取单元,用于采用行人重识别模型包括的特征提取模块,对各个训练样本分别进行特征提取,相应获得多个图像特征向量;
三元组构造单元,用于基于获得的多个特征向量,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本对应的特征向量,相应的各个正样本各自对应的特征向量,以及相应的各个负样本各自对应的特征向量。
可选的,该特征提取单元802,具体还用于:
通过特征提取模块中包括的采样层对各个训练样本进行采样,获得多个第一特征向量;
通过特征提取模块中包括的池化层对多个第一特征向量进行池化处理,获得多个第二特征向量;
通过特征提取模块中包括的标准化层对多个第二特征向量进行标准化处理,获得多个图像特征向量。
可选的,该装置还包括确定单元804,用于:
针对多个第一类三元组,分别执行如下操作:
针对一个第一类三元组,根据一个第一类三元组包括的训练样本分别与各个正样本的相似度,以及一个第一类三元组包括的训练样本与各个负样本的相似度,确定一个第一类三元组对应的三元组损失值;
基于行人重识别模型包括的分类模块,分别根据各个训练样本所对应的多个正样本对相应的相似度和多个负样本对相应的相似度,确定各个训练样本各自对应的分类损失值;其中,每个正样本对包括一个训练样本,与一个训练样本的相似度大于设定相似度阈值的一个正样本;每个负样本对包括一个训练样本,与一个训练样本的相似度不大于设定相似度阈值的一个负样本;
基于各个第一类三元组各自对应的三元组损失值,以及各个训练样本各自对应的分类损失值,获得行人重识别模型的总损失值。
可选的,该确定单元804,具体还用于:
根据各个正样本各自对应的相似度,相应确定每个正样本对应的第一权重值;
根据各个负样本各自对应的相似度,相应确定每个负样本对应的第二权重值;
根据各个正样本各自对应的相似度和第一权重值,以及各个负样本各自对应的相似度和第二权重值,确定一个第一类三元组对应的三元组损失值。
可选的,该装置还包括更新单元805,用于:
针对多个训练样本,分别执行如下操作:
针对一个训练样本,分别确定一个训练样本与多个训练样本中其余训练样本之间的相似度;
根据相似度取值最小的正样本,以及相似度取值最大的负样本,构造一个训练样本对应的第二类三元组;
以设定的更新概率,将多个第一类三元组中至少一个三元组更新为相应的第二类三元组。
该装置可以用于执行图2-图7所示的实施例中所示的方法,因此,对于该装置的各功能模块所能够实现的功能等可参考图2-图7所示的实施例的描述,其中,图8中虚线框表示的单元为行人重识别装置中的可选单元。
请参见图9,基于同一技术构思,本申请实施例还提供了一种计算机设备 90,可以包括存储器901和处理器902。
所述存储器901,用于存储处理器902执行的计算机程序。存储器901可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据计算机设备的使用所创建的数据等。处理器902,可以是一个中央处理单元(central processing unit,CPU),或者为数字处理单元等等。本申请实施例中不限定上述存储器901和处理器 902之间的具体连接介质。本申请实施例在图9中以存储器901和处理器902 之间通过总线903连接,总线903在图9中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线903可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器901可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器901也可以是非易失性存储器 (non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘 (hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器901 是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器901可以是上述存储器的组合。
处理器902,用于调用所述存储器901中存储的计算机程序时执行如图2- 图7所示的实施例中设备所执行的方法。
在一些可能的实施方式中,本申请提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的方法中的步骤,例如,所述计算机设备可以执行如图2- 图7所示的实施例中设备所执行的方法。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器 (CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种行人重识别方法,其特征在于,所述方法包括:
将包括待识别目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,获得所述行人重识别模型输出的行人重识别结果,所述行人重识别结果用于指示所述至少一个监控图像中是否存在所述待识别目标;
其中,所述行人重识别模型是采用循环迭代的方式训练得到的,每一轮迭代训练过程包括如下步骤:
基于本轮输入的各个训练样本,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与所述一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,一个训练样本包括一个目标对应的监控图像;
在历史迭代次数不大于设定的迭代次数阈值时,基于所述多个第一类三元组,确定所述行人重识别模型的总损失值;
在所述历史迭代次数大于所述迭代次数阈值时,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,确定所述行人重识别模型的总损失值;其中,每个第二类三元组包括一个训练样本、与所述一个训练样本相似度最小的正样本,以及与所述一个训练样本相似度最大的负样本;
基于所述总损失值对所述行人重识别模型进行调整。
2.如权利要求1所述的方法,其特征在于,基于本轮输入的各个训练样本,构造多个第一类三元组,包括:
采用所述行人重识别模型包括的特征提取模块,对所述各个训练样本分别进行特征提取,相应获得多个图像特征向量;
基于获得的所述多个特征向量,构造所述多个第一类三元组;其中,每个第一类三元组包括一个训练样本对应的特征向量,相应的各个正样本各自对应的特征向量,以及相应的各个负样本各自对应的特征向量。
3.如权利要求2所述的方法,其特征在于,所述采用所述行人重识别模型包括的特征提取模块,对所述各个训练样本分别进行特征提取,相应获得多个图像特征向量,包括:
通过所述特征提取模块中包括的采样层对所述各个训练样本进行采样,获得多个第一特征向量;
通过所述特征提取模块中包括的池化层对所述多个第一特征向量进行池化处理,获得多个第二特征向量;
通过所述特征提取模块中包括的标准化层对所述多个第二特征向量进行标准化处理,获得所述多个图像特征向量。
4.如权利要求1所述的方法,其特征在于,基于所述多个第一类三元组,确定所述行人重识别模型的总损失值,包括:
针对所述多个第一类三元组,分别执行如下操作:
针对一个第一类三元组,根据所述一个第一类三元组包括的训练样本分别与各个正样本的相似度,以及所述一个第一类三元组包括的训练样本与各个负样本的相似度,确定所述一个第一类三元组对应的三元组损失值;
基于所述行人重识别模型包括的分类模块,分别根据各个训练样本所对应的多个正样本对相应的相似度和多个负样本对相应的相似度,确定所述各个训练样本各自对应的分类损失值;其中,每个正样本对包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的一个正样本;每个负样本对包括一个训练样本,与所述一个训练样本的相似度不大于设定相似度阈值的一个负样本;
基于所述各个第一类三元组各自对应的三元组损失值,以及所述各个训练样本各自对应的分类损失值,获得所述行人重识别模型的总损失值。
5.如权利要求4所述的方法,其特征在于,根据所述一个第一类三元组包括的训练样本分别与各个正样本的相似度,以及所述一个第一类三元组包括的训练样本与各个负样本的相似度,确定所述一个第一类三元组对应的三元组损失值,包括:
根据所述各个正样本各自对应的相似度,相应确定每个正样本对应的第一权重值;
根据所述各个负样本各自对应的相似度,相应确定每个负样本对应的第二权重值;
根据各个正样本各自对应的相似度和第一权重值,以及所述各个负样本各自对应的相似度和第二权重值,确定所述一个第一类三元组对应的三元组损失值。
6.如权利要求1所述的方法,其特征在于,在将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组之前,所述方法还包括:
针对所述多个训练样本,分别执行如下操作:
针对一个训练样本,分别确定所述一个训练样本与所述多个训练样本中其余训练样本之间的相似度;
根据相似度取值最小的正样本,以及相似度取值最大的负样本,构造所述一个训练样本对应的第二类三元组;
则将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,包括:
以设定的更新概率,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组。
7.一种行人重识别装置,其特征在于,所述装置包括:
行人重识别单元,用于将包括待识别目标的目标图像,以及监控设备采集的至少一个监控图像输入已训练的行人重识别模型,获得所述行人重识别模型输出的行人重识别结果,所述行人重识别结果用于指示所述至少一个监控图像中是否存在所述待识别目标;
其中,所述行人重识别模型是采用循环迭代的方式训练得到的,每一轮迭代训练过程包括如下步骤:
基于本轮输入的各个训练样本,构造多个第一类三元组;其中,每个第一类三元组包括一个训练样本,与所述一个训练样本的相似度大于设定相似度阈值的至少一个正样本,以及与所述一个训练样本的相似度不大于设定相似度阈值的至少一个负样本,一个训练样本包括一个目标对应的监控图像;
在历史迭代次数不大于设定的迭代次数阈值时,基于所述多个第一类三元组,确定所述行人重识别模型的总损失值;
在所述历史迭代次数大于设定的迭代次数阈值时,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,并基于未进行更新的多个第一类三元组以及更新后的至少一个第二类三元组,确定所述行人重识别模型的总损失值;其中,每个第二类三元组包括一个训练样本、与所述一个训练样本相似度最小的正样本,以及与所述一个训练样本相似度最大的负样本;
基于所述总损失值对所述行人重识别模型进行调整。
8.如权利要求7所述的装置,其特征在于,所述装置还包括确定单元,用于:
针对所述多个第一类三元组,分别执行如下操作:
针对一个第一类三元组,根据所述一个第一类三元组包括的训练样本分别与各个正样本的相似度,以及所述一个第一类三元组包括的训练样本与各个负样本的相似度,确定所述一个第一类三元组对应的三元组损失值;
基于所述行人重识别模型包括的分类模块,分别根据多个正样本对相应的相似度和多个负样本对相应的相似度,确定所述各个训练样本各自对应的分类损失值;
基于所述各个第一类三元组各自对应的三元组损失值,以及所述各个训练样本各自对应的分类损失值,获得所述行人重识别模型的总损失值。
9.如权利要求7所述的装置,其特征在于,所述装置还包括更新单元,用于:
针对所述多个训练样本,分别执行如下操作:
针对一个训练样本,分别确定所述一个训练样本与所述多个训练样本中其余训练样本之间的相似度;
根据相似度取值最小的正样本,以及相似度取值最大的负样本,构造所述一个训练样本对应的第二类三元组;
则将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组,包括:
以设定的更新概率,将所述多个第一类三元组中至少一个三元组更新为相应的第二类三元组。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至6任一项所述方法的步骤。
11.一种计算机存储介质,其上存储有计算机程序指令,其特征在于,
该计算机程序指令被处理器执行时实现权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110755315.7A CN113569657B (zh) | 2021-07-05 | 2021-07-05 | 一种行人重识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110755315.7A CN113569657B (zh) | 2021-07-05 | 2021-07-05 | 一种行人重识别方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113569657A true CN113569657A (zh) | 2021-10-29 |
CN113569657B CN113569657B (zh) | 2024-08-20 |
Family
ID=78163579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110755315.7A Active CN113569657B (zh) | 2021-07-05 | 2021-07-05 | 一种行人重识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113569657B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114120367A (zh) * | 2021-11-29 | 2022-03-01 | 中国人民解放军战略支援部队信息工程大学 | 元学习框架下基于圆损失度量的行人重识别方法及系统 |
CN114580533A (zh) * | 2022-03-04 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 特征提取模型的训练方法、装置、设备、介质及程序产品 |
CN114764942A (zh) * | 2022-05-20 | 2022-07-19 | 清华大学深圳国际研究生院 | 一种难正负样本在线挖掘方法和人脸识别方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647577A (zh) * | 2018-04-10 | 2018-10-12 | 华中科技大学 | 一种自适应难例挖掘的行人重识别模型、方法与系统 |
CN110084215A (zh) * | 2019-05-05 | 2019-08-02 | 上海海事大学 | 一种二值化三元组孪生网络模型的行人重识别方法及系统 |
CN110321813A (zh) * | 2019-06-18 | 2019-10-11 | 南京信息工程大学 | 基于行人分割的跨域行人重识别方法 |
CN111476168A (zh) * | 2020-04-08 | 2020-07-31 | 山东师范大学 | 一种基于三阶段的跨域行人重识别方法和系统 |
CN111967294A (zh) * | 2020-06-23 | 2020-11-20 | 南昌大学 | 一种无监督域自适应的行人重识别方法 |
US20200372350A1 (en) * | 2019-05-22 | 2020-11-26 | Electronics And Telecommunications Research Institute | Method of training image deep learning model and device thereof |
CN112183338A (zh) * | 2020-09-28 | 2021-01-05 | 广东石油化工学院 | 一种基于视频的烟雾场景下人的再识别方法、系统及终端 |
CN112257553A (zh) * | 2020-10-20 | 2021-01-22 | 大连理工大学 | 一种基于循环矩阵的行人重识别方法 |
CN112766237A (zh) * | 2021-03-12 | 2021-05-07 | 东北林业大学 | 一种基于簇特征点聚类的无监督行人重识别方法 |
-
2021
- 2021-07-05 CN CN202110755315.7A patent/CN113569657B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647577A (zh) * | 2018-04-10 | 2018-10-12 | 华中科技大学 | 一种自适应难例挖掘的行人重识别模型、方法与系统 |
CN110084215A (zh) * | 2019-05-05 | 2019-08-02 | 上海海事大学 | 一种二值化三元组孪生网络模型的行人重识别方法及系统 |
US20200372350A1 (en) * | 2019-05-22 | 2020-11-26 | Electronics And Telecommunications Research Institute | Method of training image deep learning model and device thereof |
CN110321813A (zh) * | 2019-06-18 | 2019-10-11 | 南京信息工程大学 | 基于行人分割的跨域行人重识别方法 |
CN111476168A (zh) * | 2020-04-08 | 2020-07-31 | 山东师范大学 | 一种基于三阶段的跨域行人重识别方法和系统 |
CN111967294A (zh) * | 2020-06-23 | 2020-11-20 | 南昌大学 | 一种无监督域自适应的行人重识别方法 |
CN112183338A (zh) * | 2020-09-28 | 2021-01-05 | 广东石油化工学院 | 一种基于视频的烟雾场景下人的再识别方法、系统及终端 |
CN112257553A (zh) * | 2020-10-20 | 2021-01-22 | 大连理工大学 | 一种基于循环矩阵的行人重识别方法 |
CN112766237A (zh) * | 2021-03-12 | 2021-05-07 | 东北林业大学 | 一种基于簇特征点聚类的无监督行人重识别方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114120367A (zh) * | 2021-11-29 | 2022-03-01 | 中国人民解放军战略支援部队信息工程大学 | 元学习框架下基于圆损失度量的行人重识别方法及系统 |
CN114580533A (zh) * | 2022-03-04 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 特征提取模型的训练方法、装置、设备、介质及程序产品 |
CN114764942A (zh) * | 2022-05-20 | 2022-07-19 | 清华大学深圳国际研究生院 | 一种难正负样本在线挖掘方法和人脸识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113569657B (zh) | 2024-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111523621B (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
Xu et al. | Deep learning for multiple object tracking: a survey | |
CN108447080B (zh) | 基于分层数据关联和卷积神经网络的目标跟踪方法、系统和存储介质 | |
CN111460968B (zh) | 基于视频的无人机识别与跟踪方法及装置 | |
EP4075395A2 (en) | Method and apparatus of training anti-spoofing model, method and apparatus of performing anti-spoofing, and device | |
CN113569657A (zh) | 一种行人重识别方法、装置、设备及存储介质 | |
CN109101602A (zh) | 图像检索模型训练方法、图像检索方法、设备及存储介质 | |
CN112132119A (zh) | 客流统计方法、装置、电子设备和存储介质 | |
CN113807399A (zh) | 一种神经网络训练方法、检测方法以及装置 | |
CN114241511B (zh) | 一种弱监督行人检测方法、系统、介质、设备及处理终端 | |
CN113283368B (zh) | 一种模型训练方法、人脸属性分析方法、装置及介质 | |
CN117235559B (zh) | 一种基于边缘计算的物联网数据采集方法及系统 | |
WO2023143498A1 (zh) | 火焰检测方法、装置、设备和存储介质 | |
CN118115927B (zh) | 目标追踪方法、装置、计算机设备、存储介质及程序产品 | |
Ji et al. | A hybrid model of convolutional neural networks and deep regression forests for crowd counting | |
CN111291785A (zh) | 目标检测的方法、装置、设备及存储介质 | |
CN115062709A (zh) | 模型优化方法、装置、设备、存储介质及程序产品 | |
Chen et al. | Single‐Object Tracking Algorithm Based on Two‐Step Spatiotemporal Deep Feature Fusion in a Complex Surveillance Scenario | |
Pang et al. | Federated learning for crowd counting in smart surveillance systems | |
CN114677611B (zh) | 数据识别方法、存储介质及设备 | |
CN114169425A (zh) | 训练目标跟踪模型和目标跟踪的方法和装置 | |
Lu et al. | Hybrid deep learning based moving object detection via motion prediction | |
Duan | [Retracted] Deep Learning‐Based Multitarget Motion Shadow Rejection and Accurate Tracking for Sports Video | |
CN113704276A (zh) | 地图更新方法、装置、电子设备及计算机可读存储介质 | |
Charef-Khodja et al. | A novel visual tracking method using stochastic fractal search algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |