CN112990144A - 一种用于行人重识别的数据增强方法及*** - Google Patents

一种用于行人重识别的数据增强方法及*** Download PDF

Info

Publication number
CN112990144A
CN112990144A CN202110484373.0A CN202110484373A CN112990144A CN 112990144 A CN112990144 A CN 112990144A CN 202110484373 A CN202110484373 A CN 202110484373A CN 112990144 A CN112990144 A CN 112990144A
Authority
CN
China
Prior art keywords
image
limb part
template
images
human body
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
Application number
CN202110484373.0A
Other languages
English (en)
Other versions
CN112990144B (zh
Inventor
李学生
刘炜
徐奇伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Delu Power Technology Chengdu Co Ltd
Original Assignee
Delu Power Technology Chengdu Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Delu Power Technology Chengdu Co Ltd filed Critical Delu Power Technology Chengdu Co Ltd
Priority to CN202110484373.0A priority Critical patent/CN112990144B/zh
Publication of CN112990144A publication Critical patent/CN112990144A/zh
Application granted granted Critical
Publication of CN112990144B publication Critical patent/CN112990144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种用于行人重识别的数据增强方法及***,经过数据增强后得到的输入图像,经过神经网络处理,能够得到一个图像的特征向量。该特征向量随后通过损失函数处理,得到整体的算法误差。根据误差,进行反向传播,完成一轮训练。本发明通过对人体指定部位进行Drop,增强了神经网络对于形态各异、遮挡程度各异的行人图像的重识别能力。其中,人体关键点检测用于在图像中检测到人体关键点的坐标。随后按照某种策略对人体进行基于关键点的拆分。再随后,在每一轮训练中,对所有图都丢弃相同的某一部分人体图像,以此达到数据增强的效果。

Description

一种用于行人重识别的数据增强方法及***
技术领域
本发明涉及深度学习领域,尤其涉及一种用于行人重识别的数据增强方法及***。
背景技术
在基于深度学习的计算机视觉算法中,Drop被定义为“丢弃”,即在神经网络的一次训练(包括前向传播与反向传播)中,对某些对象进行“丢弃”,使其在一次训练中不发挥作用。Drop传统上是一种用来缓解神经网络训练中过拟合的有效途径。
一个Batch,是指一次训练中,输入神经网络的图像数量。
行人重识别,英文为Person Re-Identification,是一种横跨图像分类与图像检索之间的、利用人的外观特征(尤其强调不利用人脸信息)对人身份进行识别的研究方向。
人体关键点,是指通过深度学习的方法,将一张图像中人身上的某些关键点标注出来。常用的开源算法有Openpose或AlphaPose。
现有的行人重识别技术方案,在Drop角度来看,有传统的Dropout以及RandomDrop,或者是前两年新出现的Patch Drop,以及Batch Dropout方案。在基于人体关键点的研究方向上,主流的都是将人体基于关键点进行拆分,然后进行对应部位的匹配校正,并在此基础上再进行识别。
现有的Drop方案,或者是对神经元进行Dropout,或者是对输入图像进行RandomDrop,或者是进行Patch Drop,或者是Batch DropBlock。这些方案都是对图像进行随机丢弃。这能增加神经网络一定的鲁棒性,但是:
因为是随机丢弃的,而且行人重识别的输入图像中是同时存在前景(人),以及背景(非人)内容的,因而随机丢弃并不能保证能够丢弃到对描述人体特征非常有帮助的部位。因而算法的稳定性并不好,且更容易受到极端样本的影响。
现有的基于人体关键点的研究方向上,都是需要进行基于人体关键点的拆分与人体图像校正,并基于此通过加权的方式来衡量身体各部位对整体识别的影响大小。但是,因为行人的姿态是多种多样的,因而送入神经网络以供识别的图像,其姿态也是多种多样。当从侧面拍摄人的图像时,在图像中,人的左右肩及左右胯,在图像中会重叠到一起。且人体的胳膊、大腿等肢体部位,都会受到不同程度的遮挡。在这种情况下,人体关键点检测算法检测到的,左右肩和左右胯的关键点很容易重合在一起,无法区分。而原本存在于大腿及胳膊上的关键点,也会因为遮挡的原因部分或全部丢失。这一方面是人体关键点检测算法的局限性所致,另一方面也是人体姿态的多样性所致。在目前的技术水平下,这种叠加与丢失,总会导致输入的人体图像样本在分布上存在不均衡的情况,进而会影响神经网络整体上的性能,即使检测到了也是叠加到其他部位上。在这个过程中,受限于人体关键点检测算法性能的局限,以及复杂人体姿态的限制,会使得缺少不同身体部位的输入图像样本不均衡,会影响神经网络整体上的性能。
发明内容
针对上述问题,本发明提供一种用于行人重识别的数据增强方法及***,用于解决现有的随机丢弃导致的训练效率不高、结果不好的问题,并解决人体姿态多样性导致的各种姿态、各种遮挡下带来的训练样本不均衡的问题。
本发明通过以下技术方案实现:
一种用于行人重识别的数据增强方法,包括以下步骤:
S1. 创建图像预设模板;
S2. 输入图像,并根据Openpose提取图像中的人体关键点;
S3. 根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到十张肢体部分子图;
S4. 对十张肢体部分子图进行处理,并将处理后的十张肢体部分子图与输入的图像送入神经网络进行训练,分别提取其特征,得到十一张特征图;
S5. 将十一张特征图进行Pooling压缩后,做concatenate,连接为一个长向量;该长向量通过FC层计算权重,得到最后的特征向量;
其中,所述神经网络的训练过程为:在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
进一步的,所述图像预设模板包括4个矩形块模板,包括:上臂下臂模板、大腿小腿模板、头部模板和躯干模板。
进一步的,所述步骤S3具体包括以下子步骤:
S301. 根据人体关键点对人体拆分为:头、躯干、左上臂、左下臂、右上臂、右下臂、左大腿、左小腿、右大腿,右小腿10部分,并得到相应肢体部位的拆分字典;
S302. 根据每个肢体部位的拆分字典选择两个点作为参考点,得到参考点字典;
S303. 计算两个参考点之间的间距和宽,得到肢体部位的矩形模板,并将矩形模板进行变换,计算矩形模板坐标;
S304. 通过OpenCV的仿射变换将人像上的变换后的矩形模板填充到图像中,得到拆分的肢体部分子图。
进一步的,所述步骤S303具体包括以下子步骤:
S3031. 以图像左上点为原点建立坐标轴,向右方为
Figure 68798DEST_PATH_IMAGE002
轴,向下方为
Figure 563102DEST_PATH_IMAGE004
轴;选择某一肢体部位的参考点字典,则参考点A坐标为
Figure 405156DEST_PATH_IMAGE006
,参考点B坐标为
Figure 3628DEST_PATH_IMAGE008
S3032. 计算两点之间间距,具体计算公式如下:
Figure DEST_PATH_IMAGE010AA
S3033. 计算线段
Figure 4951DEST_PATH_IMAGE012
的斜率,具体计算公式如下:
Figure DEST_PATH_IMAGE014AA
S3034. 计算线段
Figure 30676DEST_PATH_IMAGE012
Figure 880732DEST_PATH_IMAGE016
的比例,所述
Figure 407528DEST_PATH_IMAGE016
为表示矩形模板的高,具体计算公式如下:
Figure DEST_PATH_IMAGE018AA
S3035. 等比例变换下,计算变换后的矩形模板的宽,具体计算公式如下:
Figure DEST_PATH_IMAGE020AA
其中,所述
Figure 528937DEST_PATH_IMAGE022
表示矩形模板的宽;
S3036. 根据斜边长
Figure 600929DEST_PATH_IMAGE024
和斜率
Figure 683155DEST_PATH_IMAGE026
,计算变换后的矩形模板CDEF的坐标;
Figure DEST_PATH_IMAGE028AA
其中,
Figure 607117DEST_PATH_IMAGE030
表示
Figure 458399DEST_PATH_IMAGE032
Figure 91505DEST_PATH_IMAGE034
变换的距离;
Figure DEST_PATH_IMAGE036AA
其中,
Figure 520082DEST_PATH_IMAGE038
表示
Figure 123101DEST_PATH_IMAGE040
Figure 337876DEST_PATH_IMAGE042
变换的距离;
则矩形模板CDEF的坐标如下:
C点坐标:
Figure 939DEST_PATH_IMAGE044
D点坐标:
Figure 933123DEST_PATH_IMAGE046
E点坐标:
Figure 90566DEST_PATH_IMAGE048
F点坐标:
Figure 650860DEST_PATH_IMAGE050
进一步的,所述对十张肢体部分子图进行处理具体为:通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
一种用于行人重识别的数据增强***,包括:
图像预设模板模块,创建图像预设模板;
图像采集模块,采集并输入图像;
图像拆分模块,根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到肢体部分子图;
图像处理模块,对肢体部分子图进行处理,得到处理后的肢体部分子图;
神经网络训练模块,对图像处理模块得到的处理后的肢体部分子图进行训练,得到特征图像;
权重计算模块,将神经网络训练模块训练的图像进行权重计算,得到特征向量;
重识别模块,通过权重计算模块得到的特征向量进行重识别;
其中,所述神经网络训练模块在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
进一步的,所述权重计算模块将得到的特征图在进行Pooling压缩后,做concatenate,连接为一个长向量,该长向量通过FC层计算权重,得到最后的特征向量。
进一步的,所述图像处理模块通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
本发明的有益效果:
本发明经过数据增强后得到的输入图像,经过神经网络处理,能够得到一个图像的特征向量。该特征向量随后通过损失函数处理,得到整体的算法误差。根据误差,进行反向传播,完成一轮训练。通过对人体指定部位进行Drop,增强了神经网络对于形态各异、遮挡程度各异的行人图像的重识别能力。其中,人体关键点检测用于在图像中检测到人体关键点的坐标。随后按照某种策略对人体进行基于关键点的拆分。再随后,在每一轮训练中,对所有图都丢弃相同的某一部分人体图像,以此达到数据增强的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提出的第一子图生成模块中图像生成的方法流程示意图;
图2为本发明实施例提出的神经网络的方法流程示意图;
图3为本发明实施例提出的Openpose 关键点标注示意图;
图4为本发明实施例提出的模板示意图;
图5为本发明实施例提出的人像提取肢体部分示意图;
图6为本发明实施例提出的第二子图生成模块中图像生成的方法流程示意图;
图7为本发明实施例提出的基于Drop的神经网络方法的数据增强法流程示意图;
图8为本发明实施例提出的***结构示意图;
图9为本发明实施例提出的终端设备结构示意图;
图10为本发明实施例提出的计算机可读存储介质结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例1
如图1,图2,本实施例提出一种用于行人重识别的数据增强方法,包括以下步骤:
S1. 创建图像预设模板;
S2. 输入图像,并根据Openpose提取图像中的人体关键点;
S3. 根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到十张肢体部分子图;
S4. 通过第一子图生成模块对十张肢体部分子图进行处理,并将处理后的十张肢体部分子图与输入的图像送入神经网络进行训练,分别提取其特征,得到十一张特征图;
S5. 将十一张特征图进行Pooling压缩后,做concatenate,连接为一个长向量;该长向量通过FC层计算权重,得到最后的特征向量;
其中,所述神经网络的训练过程为:在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
进一步的,所述图像预设模板包括4个矩形块模板,包括:上臂下臂模板、大腿小腿模板、头部模板和躯干模板。
进一步的,所述步骤S3具体包括以下子步骤:
S301. 根据人体关键点对人体拆分为:头、躯干、左上臂、左下臂、右上臂、右下臂、左大腿、左小腿、右大腿,右小腿10部分,并得到相应肢体部位的拆分字典;
S302. 根据每个肢体部位的拆分字典选择两个点作为参考点,得到参考点字典;
S303. 计算两个参考点之间的间距和宽,得到肢体部位的矩形模板,并将矩形模板进行变换,计算矩形模板坐标;
S304. 通过OpenCV的仿射变换将人像上的变换后的矩形模板填充到图像中,得到拆分的肢体部分子图。
进一步的,所述步骤S303具体包括以下子步骤:
S3031. 以图像左上点为原点建立坐标轴,向右方为
Figure 265250DEST_PATH_IMAGE002
轴,向下方为
Figure 419151DEST_PATH_IMAGE004
轴;选择某一肢体部位的参考点字典,则参考点A坐标为
Figure 629552DEST_PATH_IMAGE006
,参考点B坐标为
Figure 529506DEST_PATH_IMAGE008
S3032. 计算两点之间间距,具体计算公式如下:
Figure DEST_PATH_IMAGE010AAA
S3033. 计算线段
Figure 721322DEST_PATH_IMAGE012
的斜率,具体计算公式如下:
Figure DEST_PATH_IMAGE014AAA
S3034. 计算线段
Figure 267579DEST_PATH_IMAGE012
Figure 5640DEST_PATH_IMAGE016
的比例,所述
Figure 274947DEST_PATH_IMAGE016
为表示矩形模板的高,具体计算公式如下:
Figure DEST_PATH_IMAGE018AAA
S3035. 等比例变换下,计算变换后的矩形模板的宽,具体计算公式如下:
Figure DEST_PATH_IMAGE020AAA
其中,所述
Figure 824615DEST_PATH_IMAGE022
表示矩形模板的宽;
S3036. 根据斜边长
Figure 546583DEST_PATH_IMAGE024
和斜率
Figure 583941DEST_PATH_IMAGE026
,计算变换后的矩形模板CDEF的坐标;
Figure DEST_PATH_IMAGE028AAA
其中,
Figure 629126DEST_PATH_IMAGE030
表示
Figure 975793DEST_PATH_IMAGE032
Figure 576537DEST_PATH_IMAGE034
变换的距离;
Figure DEST_PATH_IMAGE036AAA
其中,
Figure 588225DEST_PATH_IMAGE038
表示
Figure 51698DEST_PATH_IMAGE040
Figure 303688DEST_PATH_IMAGE042
变换的距离;
则矩形模板CDEF的坐标如下:
C点坐标:
Figure 780675DEST_PATH_IMAGE044
D点坐标:
Figure 409102DEST_PATH_IMAGE046
E点坐标:
Figure 523820DEST_PATH_IMAGE048
F点坐标:
Figure 946711DEST_PATH_IMAGE050
进一步的,所述第一子图生成模块对十张肢体部分子图进行处理具体为:通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
实施例2
在实施例1的基础上,本实施例提出一种用于行人重识别的数据增强方法,其具体原理流程与实施例1的原理流程一致,不再赘述。
具体的,基于人体关键点检测,以Openpose人体关键点检测算法为例,如图3,可以得到25个人体关键点,且其分布如图3所示;图3为人体关键点检测算法Openpose的检测示意图。图中每一个原点,表示标准人体上的一个关键点,a0,a1…a24表示对关键点进行的数字标示。该序号只有“标识”的作用,并无重要性等其他的含义。
将人体拆分为:头,躯干,左上臂,左下臂,右上臂,右下臂,左大腿,左小腿,右大腿,右小腿10部分。各部分的拆分方法对应的列表字典如下所示:
拆分字典 = {
‘头’:[a0,a1],
‘躯干’:[a1,a2,a5,a8,a9,a12],
‘左上臂’:[a5,a6],
‘左下臂’:[a6,a7],
‘右上臂’:[a2,a3],
‘右下臂’:[a3,a4],
‘左大腿’:[a12,a13],
‘左小腿’:[a13,a14,a19,a20,a21],
‘右大腿’:[a9,a10],
‘右小腿’:[a10,a11,a22,a23,a24],
}。
预定义4个矩形块模板,分别是:
上臂下臂:宽8个像素,高为16个像素;
大腿小腿:宽16个像素,高32个像素;
头部:高宽均为32个像素;
躯干:高40个像素,宽40个像素。
对应的列表字典为:
模板字典 = {
‘上臂下臂’:[a8,a16];
‘大腿小腿’:[a16,a32];
‘头部’:[a32,a32];
‘躯干’:[a40,a40];
}。
在每个肢体部分的拆分列表中都选择两个点做参考点,对应的字典列表为:
参考点字典 = {
‘头’:[a0,a1];
‘躯干’:[a1,a8];
‘左上臂’:[a5,a6];
‘左下臂’:[a6,a7];
‘右上臂’:[a2,a3];
‘右下臂’:[a3,a4];
‘左大腿’:[a12,a13];
‘左小腿’:[a13,a14];
‘右大腿’:[a9,a10];
‘右小腿’:[a10,a11];
}。
设图像坐标系为:以图像左上点为原点,向右方为
Figure 910993DEST_PATH_IMAGE002
轴,向下方为
Figure 608691DEST_PATH_IMAGE004
轴。则,端点列表中每个肢体部分的第一个点坐标设为
Figure 312336DEST_PATH_IMAGE006
,第二个点坐标设为
Figure 171708DEST_PATH_IMAGE052
,则可计算两点间的间距:
Figure 983806DEST_PATH_IMAGE054
以及线段
Figure 474742DEST_PATH_IMAGE012
的斜率:
Figure 813319DEST_PATH_IMAGE056
。模板如图4,图中b1,b2,b3和b4,是该矩形模板四个角的数字标号。这四个标号只有“标识”作用,并无重要性等其他含义。模板的高用
Figure 594325DEST_PATH_IMAGE058
表示,宽用
Figure 752774DEST_PATH_IMAGE022
表示。则我们可求得线段
Figure 41541DEST_PATH_IMAGE012
Figure 969046DEST_PATH_IMAGE058
的比例
Figure 186532DEST_PATH_IMAGE060
,进一步求得等比例变换下,在图像上应取得的宽:
Figure 832277DEST_PATH_IMAGE062
则可通过以下方法计算计算点C,D,E,F的坐标:
设:
Figure 285255DEST_PATH_IMAGE064
Figure 582113DEST_PATH_IMAGE066
则有C点坐标:
Figure 219768DEST_PATH_IMAGE068
D点坐标:
Figure 103541DEST_PATH_IMAGE070
E点坐标:
Figure 484844DEST_PATH_IMAGE072
F点坐标:
Figure 636208DEST_PATH_IMAGE074
通过OpenCV的仿射变换可以将人像上的矩形CDEF填充到模板中,得到拆分的肢体部分,如图5,图中表识A、B、C、D、E、F对应上述坐标值。
将人体进行拆分后,可以得到由10部分和原本未拆分的人体,共11张图。在每一轮训练中,我们会保证未拆分的原图一定会被送入神经网络进行训练。而其余10部分,在每一轮训练中会随机丢弃一部分,且保证每一张图都丢弃同样的部分。这样就能使,输入图像总是缺少头部图像,或是缺少躯干、缺少某个手臂、腿,等等。这样我们就可以增强神经网络在缺少相对应身体部位时的识别能力。
实施例3
在实施例1和2的基础上,本实施例提出基于拆分下的身体部分,还可用来生成新图像。示例图像如图6、图7所示,所述图6表示的为图7中第二子图生成模块的具体方法流程;其中,所述图中Softmax+KL表示概率化函数+KL散度计算损失函数;Hard Triplet Loss表示挖掘困难样本的Triplet Loss。
其中,本实施例的具体实施原理流程如下:
1.设训练所用的数据集中一共有500人的照片2000张。每人4张照片。从数据集中取图像image1,记录下image1的行人标号label1。
2.Image经过Openpose提取image1的人体关键点。
3.根据预定义的模板与人体关键点将肢体部分拆分,得到10张子图。
4.第二子图生成模块通过随机数生成器生成一个长度为10的二进制向量。该向量中只有一个数是1,其余都是0。该随机数向量用于从10个子图中随机选择一个子图。该随机数生成法为:设离散型随机变量X遵从集合{x|0,1,2,3,4,5,6,7,8,9}上的均匀分布,则每次生成向量时都生成一个该随机变量X,令向量中X位为1,其余为0。这里假设,生成的随机数取了1,即这里取出了“躯干”部分。
5.将该子图通过仿射变化,变到标号为label2的行人的image2上。从行人重识别的角度讲,人的外貌发生了剧烈变化,则人的身份就已经发生了变化。因此,给这个新合成的人一个新标签,为label501。
6.依照此法,从label1的4张照片中取出躯干部分的子图,与label2的图像通过仿射变换做融合,生成4张label501的图像。将label501的图像放回元数据集中。该数据集现在就有501个行人的照片共2004张。每人4张。
7.依照此法继续生成新的行人图像,直到满足需求为止。
8.用新生成的数据集进行行人重识别模型训练。
实施例4
在实施例1的基础上,本实施例提出一种用于行人重识别的数据增强***,如图8,包括:
图像预设模板模块,创建图像预设模板;
图像采集模块,采集并输入图像;
图像拆分模块,根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到肢体部分子图;
图像处理模块,对肢体部分子图进行处理,得到处理后的肢体部分子图;
神经网络训练模块,对图像处理模块得到的处理后的肢体部分子图进行训练,得到特征图像;
权重计算模块,将神经网络训练模块训练的图像进行权重计算,得到特征向量;
重识别模块,通过权重计算模块得到的特征向量进行重识别;
其中,所述神经网络训练模块在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
进一步的,所述权重计算模块将得到的特征图在进行Pooling压缩后,做concatenate,连接为一个长向量,该长向量通过FC层计算权重,得到最后的特征向量。
进一步的,所述图像处理模块通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
实施例5
如图9,在实施例1的基础上,本实施例提出一种用于行人重识别的数据增强的终端设备,终端设备200包括至少一个存储器210、至少一个处理器220以及连接不同平台***的总线230。
存储器210可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)211和/或高速缓存存储器212,还可以进一步包括只读存储器(ROM)213。
其中,存储器210还存储有计算机程序,计算机程序可以被处理器220执行,使得处理器220执行本申请实施例中上述任一项一种用于行人重识别的数据增强方法,其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。存储器210还可以包括具有一组(至少一个)程序模块215的程序/实用工具214,这样的程序模块包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
相应的,处理器220可以执行上述计算机程序,以及可以执行程序/实用工具214。
总线230可以为表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、***总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
终端设备200也可以与一个或多个外部设备240例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个能够与该终端设备200交互的设备通信,和/或与使得该终端设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过I/O接口250进行。并且,终端设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与终端设备200的其它模块通信。应当明白,尽管图中未示出,可以结合终端设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储平台等。
实施例6
在实施例1的基础上,本实施例提出一种用于行人重识别的数据增强的计算机可读存储介质,所述计算机可读存储介质上存储有指令,该指令被处理器执行时实现上述任一的一种用于行人重识别的数据增强方法。其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
图10示出了本实施例提供的用于实现上述方法的程序产品300,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品300不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。程序产品300可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言诸如Java、C++等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (8)

1.一种用于行人重识别的数据增强方法,其特征在于,包括以下步骤:
S1. 创建图像预设模板;
S2. 输入图像,并根据Openpose提取图像中的人体关键点;
S3. 根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到十张肢体部分子图;
S4. 对十张肢体部分子图进行处理,并将处理后的十张肢体部分子图与输入的图像送入神经网络进行训练,分别提取其特征,得到十一张特征图;
S5. 将十一张特征图进行Pooling压缩后,做concatenate,连接为一个长向量;该长向量通过FC层计算权重,得到最后的特征向量;
其中,所述神经网络的训练过程为:在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
2.根据权利要求1所述的一种用于行人重识别的数据增强方法,其特征在于,所述图像预设模板包括4个矩形块模板,包括:上臂下臂模板、大腿小腿模板、头部模板和躯干模板。
3.根据权利要求1所述的一种用于行人重识别的数据增强方法,其特征在于,所述步骤S3具体包括以下子步骤:
S301. 根据人体关键点对人体拆分为:头、躯干、左上臂、左下臂、右上臂、右下臂、左大腿、左小腿、右大腿,右小腿10部分,并得到相应肢体部位的拆分字典;
S302. 根据每个肢体部位的拆分字典选择两个点作为参考点,得到参考点字典;
S303. 计算两个参考点之间的间距和宽,得到肢体部位的矩形模板,并将矩形模板进行变换,计算矩形模板坐标;
S304. 通过OpenCV的仿射变换将人像上的变换后的矩形模板填充到图像中,得到拆分的肢体部分子图。
4.根据权利要求3所述的一种用于行人重识别的数据增强方法,其特征在于,所述步骤S303具体包括以下子步骤:
S3031. 以图像左上点为原点建立坐标轴,向右方为
Figure DEST_PATH_IMAGE002
轴,向下方为
Figure DEST_PATH_IMAGE004
轴;选择某一肢体部位的参考点字典,则参考点A坐标为
Figure DEST_PATH_IMAGE006
,参考点B坐标为
Figure DEST_PATH_IMAGE008
S3032. 计算两点之间间距,具体计算公式如下:
Figure DEST_PATH_IMAGE010
S3033. 计算线段
Figure DEST_PATH_IMAGE012
的斜率,具体计算公式如下:
Figure DEST_PATH_IMAGE014
S3034. 计算线段
Figure 604443DEST_PATH_IMAGE012
Figure DEST_PATH_IMAGE016
的比例,所述
Figure 115059DEST_PATH_IMAGE016
为表示矩形模板的高,具体计算公式如下:
Figure DEST_PATH_IMAGE018
S3035. 等比例变换下,计算变换后的矩形模板的宽,具体计算公式如下:
Figure DEST_PATH_IMAGE020
其中,所述
Figure DEST_PATH_IMAGE022
表示矩形模板的宽;
S3036. 根据斜边长
Figure DEST_PATH_IMAGE024
和斜率
Figure DEST_PATH_IMAGE026
,计算变换后的矩形模板CDEF的坐标;
Figure DEST_PATH_IMAGE028
其中,
Figure DEST_PATH_IMAGE030
表示
Figure DEST_PATH_IMAGE032
Figure DEST_PATH_IMAGE034
变换的距离;
Figure DEST_PATH_IMAGE036
其中,
Figure DEST_PATH_IMAGE038
表示
Figure DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE042
变换的距离;
则矩形模板CDEF的坐标如下:
C点坐标:
Figure DEST_PATH_IMAGE044
D点坐标:
Figure DEST_PATH_IMAGE046
E点坐标:
Figure DEST_PATH_IMAGE048
F点坐标:
Figure DEST_PATH_IMAGE050
5.根据权利要求1所述的一种用于行人重识别的数据增强方法,其特征在于,所述对十张肢体部分子图进行处理具体为:通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
6.一种用于行人重识别的数据增强***,其特征在于,包括:
图像预设模板模块,创建图像预设模板;
图像采集模块,采集并输入图像;
图像拆分模块,根据图像预设模板与人体关键点对图像肢体部位进行拆分,得到肢体部分子图;
图像处理模块,对肢体部分子图进行处理,得到处理后的肢体部分子图;
神经网络训练模块,对图像处理模块得到的处理后的肢体部分子图进行训练,得到特征图像;
权重计算模块,将神经网络训练模块训练的图像进行权重计算,得到特征向量;
重识别模块,通过权重计算模块得到的特征向量进行重识别;
其中,所述神经网络训练模块在每一轮训练中,将输入的图像送入神经网络进行训练,将处理后的十张肢体部分子图进行肢体部位随机丢弃,且每一张图都丢弃相同肢体部位的人体图像。
7.根据权利要求6所述的一种用于行人重识别的数据增强***,其特征在于,所述权重计算模块将得到的特征图在进行Pooling压缩后,做concatenate,连接为一个长向量,该长向量通过FC层计算权重,得到最后的特征向量。
8.根据权利要求6所述的一种用于行人重识别的数据增强***,其特征在于,所述图像处理模块通过随机数生成器生成一个长度为10的二进制向量,所述二进制向量中只有一个数是0,其余都是1;并将10张子图与二进制向量对应位做乘法,得到处理后的肢体部分子图。
CN202110484373.0A 2021-04-30 2021-04-30 一种用于行人重识别的数据增强方法及*** Active CN112990144B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110484373.0A CN112990144B (zh) 2021-04-30 2021-04-30 一种用于行人重识别的数据增强方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110484373.0A CN112990144B (zh) 2021-04-30 2021-04-30 一种用于行人重识别的数据增强方法及***

Publications (2)

Publication Number Publication Date
CN112990144A true CN112990144A (zh) 2021-06-18
CN112990144B CN112990144B (zh) 2021-08-17

Family

ID=76336941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110484373.0A Active CN112990144B (zh) 2021-04-30 2021-04-30 一种用于行人重识别的数据增强方法及***

Country Status (1)

Country Link
CN (1) CN112990144B (zh)

Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102509083A (zh) * 2011-11-19 2012-06-20 广州大学 一种肢体冲突事件的检测方法
CN102609683A (zh) * 2012-01-13 2012-07-25 北京邮电大学 一种基于单目视频的人体关节自动标注方法
JP2013074461A (ja) * 2011-09-28 2013-04-22 Casio Comput Co Ltd 画像処理装置、画像処理方法及びプログラム
CN104794449A (zh) * 2015-04-27 2015-07-22 青岛科技大学 基于人体hog特征的步态能量图获取及身份识别方法
CN106803083A (zh) * 2017-02-04 2017-06-06 北京旷视科技有限公司 行人检测的方法及装置
CN107622497A (zh) * 2017-09-29 2018-01-23 广东欧珀移动通信有限公司 图像裁剪方法、装置、计算机可读存储介质和计算机设备
CN107729805A (zh) * 2017-09-01 2018-02-23 北京大学 用于行人再识别的神经网络和基于深度学习的行人再识别算法
CN108122001A (zh) * 2017-12-13 2018-06-05 北京小米移动软件有限公司 图像识别方法及装置
CN108830157A (zh) * 2018-05-15 2018-11-16 华北电力大学(保定) 基于注意力机制和3d卷积神经网络的人体行为识别方法
CN109344695A (zh) * 2018-08-14 2019-02-15 中山大学 一种基于特征选择卷积神经网络的目标重识别方法和装置
CN109583379A (zh) * 2018-11-30 2019-04-05 常州大学 一种基于随机擦除行人对齐网络的行人重识别方法
CN109766868A (zh) * 2019-01-23 2019-05-17 哈尔滨工业大学 一种基于身体关键点检测的真实场景遮挡行人检测网络及其检测方法
CN109784130A (zh) * 2017-11-15 2019-05-21 株式会社日立制作所 行人重识别方法及其装置和设备
CN110135243A (zh) * 2019-04-02 2019-08-16 上海交通大学 一种基于两级注意力机制的行人检测方法及***
CN110163110A (zh) * 2019-04-23 2019-08-23 中电科大数据研究院有限公司 一种基于迁移学习和深度特征融合的行人重识别方法
US20190304076A1 (en) * 2019-06-20 2019-10-03 Fanny Nina Paravecino Pose synthesis in unseen human poses
CN110543817A (zh) * 2019-07-25 2019-12-06 北京大学 基于姿势指导特征学习的行人再识别方法
CN110751027A (zh) * 2019-09-09 2020-02-04 华中科技大学 一种基于深度多示例学习的行人重识别方法
CN111401113A (zh) * 2019-01-02 2020-07-10 南京大学 一种基于人体姿态估计的行人重识别方法
US20200226421A1 (en) * 2019-01-15 2020-07-16 Naver Corporation Training and using a convolutional neural network for person re-identification
CN111783948A (zh) * 2020-06-24 2020-10-16 北京百度网讯科技有限公司 模型训练方法、装置、电子设备以及存储介质
CN111931641A (zh) * 2020-08-07 2020-11-13 华南理工大学 基于权重多样性正则化的行人重识别方法及其应用
CN112132865A (zh) * 2020-09-21 2020-12-25 德鲁动力科技(海南)有限公司 人员识别方法及***
CN112396036A (zh) * 2020-12-09 2021-02-23 中山大学 一种结合空间变换网络和多尺度特征提取的遮挡行人重识别方法
CN112613474A (zh) * 2020-12-30 2021-04-06 珠海大横琴科技发展有限公司 一种行人重识别的方法和装置

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013074461A (ja) * 2011-09-28 2013-04-22 Casio Comput Co Ltd 画像処理装置、画像処理方法及びプログラム
CN102509083A (zh) * 2011-11-19 2012-06-20 广州大学 一种肢体冲突事件的检测方法
CN102609683A (zh) * 2012-01-13 2012-07-25 北京邮电大学 一种基于单目视频的人体关节自动标注方法
CN104794449A (zh) * 2015-04-27 2015-07-22 青岛科技大学 基于人体hog特征的步态能量图获取及身份识别方法
CN106803083A (zh) * 2017-02-04 2017-06-06 北京旷视科技有限公司 行人检测的方法及装置
CN107729805A (zh) * 2017-09-01 2018-02-23 北京大学 用于行人再识别的神经网络和基于深度学习的行人再识别算法
CN107622497A (zh) * 2017-09-29 2018-01-23 广东欧珀移动通信有限公司 图像裁剪方法、装置、计算机可读存储介质和计算机设备
CN109784130A (zh) * 2017-11-15 2019-05-21 株式会社日立制作所 行人重识别方法及其装置和设备
CN108122001A (zh) * 2017-12-13 2018-06-05 北京小米移动软件有限公司 图像识别方法及装置
CN108830157A (zh) * 2018-05-15 2018-11-16 华北电力大学(保定) 基于注意力机制和3d卷积神经网络的人体行为识别方法
CN109344695A (zh) * 2018-08-14 2019-02-15 中山大学 一种基于特征选择卷积神经网络的目标重识别方法和装置
CN109583379A (zh) * 2018-11-30 2019-04-05 常州大学 一种基于随机擦除行人对齐网络的行人重识别方法
CN111401113A (zh) * 2019-01-02 2020-07-10 南京大学 一种基于人体姿态估计的行人重识别方法
US20200226421A1 (en) * 2019-01-15 2020-07-16 Naver Corporation Training and using a convolutional neural network for person re-identification
CN109766868A (zh) * 2019-01-23 2019-05-17 哈尔滨工业大学 一种基于身体关键点检测的真实场景遮挡行人检测网络及其检测方法
CN110135243A (zh) * 2019-04-02 2019-08-16 上海交通大学 一种基于两级注意力机制的行人检测方法及***
CN110163110A (zh) * 2019-04-23 2019-08-23 中电科大数据研究院有限公司 一种基于迁移学习和深度特征融合的行人重识别方法
US20190304076A1 (en) * 2019-06-20 2019-10-03 Fanny Nina Paravecino Pose synthesis in unseen human poses
CN110543817A (zh) * 2019-07-25 2019-12-06 北京大学 基于姿势指导特征学习的行人再识别方法
CN110751027A (zh) * 2019-09-09 2020-02-04 华中科技大学 一种基于深度多示例学习的行人重识别方法
CN111783948A (zh) * 2020-06-24 2020-10-16 北京百度网讯科技有限公司 模型训练方法、装置、电子设备以及存储介质
CN111931641A (zh) * 2020-08-07 2020-11-13 华南理工大学 基于权重多样性正则化的行人重识别方法及其应用
CN112132865A (zh) * 2020-09-21 2020-12-25 德鲁动力科技(海南)有限公司 人员识别方法及***
CN112396036A (zh) * 2020-12-09 2021-02-23 中山大学 一种结合空间变换网络和多尺度特征提取的遮挡行人重识别方法
CN112613474A (zh) * 2020-12-30 2021-04-06 珠海大横琴科技发展有限公司 一种行人重识别的方法和装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHI SU等: "Pose-driven Deep Convolutional Model for Person Re-identification", 《ARXIV:1709.08325V1》 *
ZUOZHUO DAI等: "Batch DropBlock Network for Person Re-identification and Beyond", 《ARXIV:1811.07130V2》 *
徐清华 等: "基于模板库的自动图像对象分割方法研究", 《舰船电子工程》 *
李聪 等: "基于多尺度注意力机制的多分支行人重识别算法", 《激光与光电子学进展》 *

Also Published As

Publication number Publication date
CN112990144B (zh) 2021-08-17

Similar Documents

Publication Publication Date Title
Wang et al. SaliencyGAN: Deep learning semisupervised salient object detection in the fog of IoT
WO2021103648A1 (zh) 手部关键点检测方法、手势识别方法及相关装置
CN108764048B (zh) 人脸关键点检测方法及装置
US10936911B2 (en) Logo detection
CN109325398B (zh) 一种基于迁移学习的人脸属性分析方法
JP7373554B2 (ja) クロスドメイン画像変換
WO2020107847A1 (zh) 基于骨骼点的跌倒检测方法及其跌倒检测装置
WO2015139574A1 (zh) 一种静态物体重建方法和***
CN109816769A (zh) 基于深度相机的场景地图生成方法、装置及设备
CN113378580B (zh) 文档版面分析方法、模型训练方法、装置和设备
CN110363817B (zh) 目标位姿估计方法、电子设备和介质
Tang et al. Facial landmark detection by semi-supervised deep learning
WO2023151237A1 (zh) 人脸位姿估计方法、装置、电子设备及存储介质
JP2009211177A (ja) 特徴点位置決定方法及び装置
WO2020233427A1 (zh) 目标的特征的确定方法和装置
CN109712108B (zh) 一种基于多样鉴别性候选框生成网络的针对视觉定位方法
CN111680550B (zh) 情感信息识别方法、装置、存储介质及计算机设备
CN112036260A (zh) 一种自然环境下多尺度子块聚合的表情识别方法及***
CN113420690A (zh) 基于感兴趣区域的静脉识别方法、装置、设备及存储介质
Wu et al. Context-aware deep spatiotemporal network for hand pose estimation from depth images
CN110598647B (zh) 一种基于图像识别的头部姿态识别方法
CN115018999A (zh) 一种多机器人协作的稠密点云地图构建方法及装置
CN112949576A (zh) 姿态估计方法、装置、设备及存储介质
CN112990144B (zh) 一种用于行人重识别的数据增强方法及***
Xu et al. Face recognition using spatially constrained earth mover's distance

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