CN117011883A - 一种基于金字塔卷积和Transformer双分支的行人重识别方法 - Google Patents
一种基于金字塔卷积和Transformer双分支的行人重识别方法 Download PDFInfo
- Publication number
- CN117011883A CN117011883A CN202310551328.1A CN202310551328A CN117011883A CN 117011883 A CN117011883 A CN 117011883A CN 202310551328 A CN202310551328 A CN 202310551328A CN 117011883 A CN117011883 A CN 117011883A
- Authority
- CN
- China
- Prior art keywords
- pedestrian
- branch
- convolution
- transducer
- feature
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000004927 fusion Effects 0.000 claims abstract description 22
- 238000000605 extraction Methods 0.000 claims abstract description 16
- 238000012360 testing method Methods 0.000 claims abstract description 11
- 239000000284 extract Substances 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims abstract description 6
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 3
- 238000012549 training Methods 0.000 claims description 31
- 239000013598 vector Substances 0.000 claims description 18
- 238000009499 grossing Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000011176 pooling Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 230000006872 improvement Effects 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 claims description 2
- 239000012633 leachable Substances 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims description 2
- 238000013527 convolutional neural network Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 17
- 238000013461 design Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 206010034719 Personality change Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
- G06V10/765—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- 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)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
一种基于金字塔卷积和Transformer双分支的行人重识别方法,涉及一种行人重识别方法,本发明同时捕获行人的全局特征和局部细粒度特征。包括:金字塔卷积模块、N个重复的transformerblock组成的Transformer分支以及融合局部特征和全局特征的双方向特征融合架构。金字塔卷积模块更擅长提取行人信息的局部特征,Transformer分支提取行人图像的全局特征,两分支提取的特征在分类器对其进行处理之前,通过全连接层、BN层和ReLu层对其进行处理,完成图像特征提取,在测试时使用两分支融合后的特征对其行人图像进行图库检索。最后利用计算余弦相似度的方法对图像进行相似度排序。本发明得到更加丰富的特征来表征行人,从而提高行人重识别的准确率。
Description
技术领域
本发明涉及一种行人重识别方法,特别是涉及一种基于金字塔卷积和Transformer双分支的行人重识别方法。
背景技术
行人重识别是利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术,即通过从多个监测到的行人图像中识别同一个人。随着大规模高清摄像头的普及以及高速通信网络的发展,行人重识别技术被广泛应用于智能寻人***、智能安防、自动驾驶、公安部门破案、社会安全防护等领域。由于视频监控下行人图像存在的光照差异、姿态变化、视角变化、遮挡、背景噪声等现象给身份识别带来了一定的挑战,因此提取具有鲁棒性的行人特征来判断两张图像特征是否属于同一个体,成为解决行人重识别的关键性问题。
传统的行人重识别技术依靠人工设计特征和距离度量来判断跨设备下是否是同一行人,由于手动提取特征复杂且提取特征能力有限,难以满足复杂监控场景的行人重识别任务。近年来随着深度学习的发展,卷积神经网络表现出强大的特征提取能力,可以自动从原始的图像数据中根据任务需求提取特征,在行人重识别应用中取得了显著效果。
目前,行人重识别技术的研究主要基于表征学习和度量学习两种方式。表征学习方法并没有直接在训练网络的时候考虑图片间的相似度,而是把行人重识别任务当作分类问题或者验证问题。与表征学习不同的是,度量学习旨在通过网络学习出两张图片的相似度。具体为同一行人的不同图片相似度大于不同行人的不同图片。最后网络的损失函数使得相同行人图片(正样本对)的距离尽可能小,不同行人图片(负样本对)的距离尽可能大,常用的度量学习损失方法有对比损失、三元组损失、四元组损失等。表征学习和度量学习都是基于网络模型提取的图像特征进行的学习。
基于深度学习的卷积神经网络(CNN)依靠多层非线性变换的叠加提取图像深层特征,并应用到行人重识别领域,如今主流的行人重识别方法主要以基于全局特征构建一个完整的端到端的行人重识别模型,通过网络模型的深层构建依次提取行人图像的浅层特征、中层特征和深层特征,在一定程度上提高了行人重识别模型的准确率并取得较大进展。但由于CNN模型提取到的特征受到卷积操作的限制,擅长提取局部特征,难以捕获图像的全局特征,同时下采样操作会导致上下文信息的丢失,无法有效挖掘图像特征之间的关联性,并且降低输出特征图的空间分辨率,从而导致在复杂场景下的变现很差。
Transformer网络最初被应用于自然语言处理领域,受强大表示能力的启发,研究人员提出将Transformer扩展到计算机视觉任务中,研究人员提出将Transformer扩展到计算机视觉任务中,并为CV领域的研究带来了新的研究方向。对于首次提出纯Transformer视觉模型,为了将图像转化成Transformer结构可以处理的序列数据,引入了图像块(patch)的概念。有学者提出首个基于纯Transformer网络结构的ReID框架TransReID,该框架借助水平切块思想将图片物理切割成若干个图片小块,每个图片小块经过特征提取模块提取各自的视觉特征,设计了区域拼图模块(Jigsaw Patch Module,JPM)提高了模型的鲁棒性和判别能力,提出辅助信息编码模块(Side Information Embeddings,SIE)对外部信息进行编码,在多个ReID基准数据集上超过了CNN性能。
由于外界因素等问题的影响,行人重识别技术仍然面临着巨大的挑战,真实场景中行人图像因遮挡、姿态和视角变化等因素而导致行人特征判别性不足的问题有待解决。
发明内容
本发明的目的在于提供一种基于金字塔卷积和Transformer双分支的行人重识别方法,本发明Transformer中的多头注意力可以解决长距离依赖问题,使模型更关注人体的不同各部位,同时去掉下采样操作,能保留更多的详细信息,CNN分支中能以较快的推理速度提取行人信息的局部特征,级联的Transformer块因其复杂的空间变换和长距离依赖特性,增强全局信息的表示能力,并发结构的设计在最大程度上保留图像的局部特征和全局表示,提高了行人特征提取能力。获取到目标行人图像全局信息和局部细粒度信息的网络模型,并使用标签平滑正则化改进的交叉熵损失函数训练网络,得到更加丰富的特征来表征行人,从而提高行人重识别的准确率。
本发明的目的是通过以下技术方案实现的:
本发明的优点与效果是:
本发明采用基于CNN与Transformer并行双分支架构的行人重识别方法,在CNN分支中能以较快的推理速度提取行人信息的局部特征,级联的Transformer块因其复杂的空间变换和长距离依赖特性,增强全局信息的表示能力,并发结构的设计可以在最大程度上保留图像的局部特征和全局表示。在分类器对其进行处理之前,添加全连接层、BN层和ReLu层。在训练时使用标签平滑改进的交叉熵损失函数监督CNN分支和Transformer分支,完成图像特征提取,在测试时使用两分支融合后的特征对其行人图像进行图库检索,增强模型的泛化性。本发明设计的行人重识别网络模型,通过在Market1501和DukeMTMC-reID数据集上进行训练和测试的实验结果证明,所提出的行人重识别方法具有更高的准确率。
附图说明
图1是行人重识别功能模块图;
图2是发明设计的金字塔卷积和Transformer双分支网络模型架构图;
图3是金字塔卷积网络结构图;
图4是Transformer模型分支网络结构图;
图5是CFT特征架构图;
图6是TFC特征架构图;
图7是模型训练流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明实施方案做进一步详细描述。
本发明基于金字塔卷积和Transformer双分支架构行人重识别方法,采用以下完成步骤:
1、采用行人重识别数据集中的Market1501和DukeMTMC-reID数据集;
2、实验使用的计算平台是Windows10操作***,使用GPU进行运算加速,软件环境采用Python3.8和Pytorch深度学习框架构建模型,采用SGD优化器优化模型参数,动量设为0.9,在该环境下完成模型构建;
3、在CNN分支中网络模型以ResNet50网络为基础网络,为了捕捉不同行人图像间的细微变化,使用金字塔卷积(PyConv)代替标准卷积提取行人图像的多尺度特征,对于金字塔卷积单元,它的每一层包含不同类型的卷积核,随着卷积核尺寸的增加,它的深度相应减小,正是大小与深度的不同,可以提取不同尺度的细节信息。为适应不同深度的卷积核,通过分组卷积对输入特征图分成若干组,针对每组输入的特征图用不同深度的卷积核进行特征提取,同时使用PyConv即不会提升额外的计算量与参数量;
4、在Transformer分支中,Transformer分支采用ViT模型架构,由N个重复的transformer block组成,每个transformerblock主要由一个多头自注意力模块(Multi-headself attention,MSA)、一个多层感知机(MLP)和两个LayerNorm组成,在每个MSA和MLP前分别应用LayerNorm层来提高模型的收敛速度。
5、为了增强CNN分支中提取局部特征的全局感知力和Transformer分支的全局表示的局部细节,特征融合架构以交互的方式对两分支提取的特征进行融合。
6、将预处理完成的训练数据集作为网络的输入并进行训练,加载网络模型的预训练权重,使用标签平滑改进后的交叉熵损失函数优化网络模型;
7、为衡量算法性能,在Market1501和DukeMTMC-reID两个行人识别数据集上采用首位命中率(Rank-1)和平均准确度(mAP)两个指标衡量网络模型的有效性。
上述步骤1的具体实现步骤为:
Market1501数据集采集自清华大学校园中的6个相机,包含1501个身份的32668张行人图片。其中训练集包含751个身份的12936张图片,测试集包含750个身份的19732张图片,训练集和测试集中包含的人身份不同。DukeMTMC-reID数据集的图像采集于杜克大学校园内8个不同的摄像头,其中训练集包含702个身份的16522张图像,另外702个身份的2228张作为检索图片,1110个身份的17661张图片作为被检索图片集。
数据集中的图片命名格式为:0001_c1s1_000151_00.jpg;
输入的行人图片尺寸为224x224,通道数为3;
上述步骤2的具体实现步骤为:
导入模型所需要的配置环境;
模型中SGD的初始学习率设置为0.005,dropout=0.5,每次抽取行人数据集中的P个身份和K个图像作为训练样本送入网络模型,设置P=16,K=4,批量数B=32,设置epoche=100;
上述步骤3的具体实现步骤为:
本发明设计了基于金字塔卷积和Transformer双分支混合架构的行人重识别网络模型,特征图在被送入双分支之前,首先经过步长为2的7×7的卷积和3×3的最大池化层,用于提取初始浅层局部特征,例如边缘和纹理信息等,计算公式如下:
F(x)=MaxPool(COnv(x)) (1)
其中x为输入网络模型中的特征图,Conv为7×7的卷积层,MaxPool为3×3的最大池化层。CNN分支以ResNet50作为基准网络,提取行人图像的局部特征,为进一步获取行人丰富的多尺度特征,用改进的金字塔卷积单元代替ResNet50中的部分卷积块;
在训练时使用标签平滑改进的交叉熵损失函数监督CNN分支和Transformer分支,完成图像特征提取,在测试时使用两分支融合后的特征对其行人图像进行图库检索。最后利用计算余弦相似度的方法对图像进行相似度排序。
上述步骤4的具体实现步骤为:
对于输入的三维矩阵图[H,W,C],首先通过卷积核将图像x切割为N=H×W/S2个不重叠图像块,同时进行编码为Transformer能接受的序列向量xm={m1,m2,…mn},其中S代表卷积核的大小,在本算法中设置卷积核大小4×4,即S=4。Transformer中为了对后续的输出序列向量进行图像分类,引入一个可学习的嵌入向量class token,训练时classtoken中的embedding被随机初始化并与图像的输入序列向量相加,最终输入Transformer中序列向量为x′m={mclass,m1,m2,…mn},长度为n+1。
由于Multi-head self-attention需要借助序列中的位置信息提取出输入序列中所包含的全局信息和局部信息。中没有包含位置的信息,但是self-attention并没有包含位置信息,这对于序列来说是很重要的一种信息。因此Transformer引入了PositionalEncoding以加入位置信息。
上述步骤5的具体实现步骤为:
CNN中特征图的维度为C×H×W,transformer中patch embedding的形状为(m+1)×N,其中m为图像块的数量,1表示class token类别,N表示embedding维度。受到特征维度的限制,CNN分支中收集的局部特征与transformer中的全局特征不能直接融合,设计双方向的特征融合架构。当CNN分支中的特征图向Transformer分支进行传递时,Transformer特征融合架构(CNN Fuse Transformer,CFT),由于CNN提取的层越深,得到的语义信息越丰富,空间信息却越贫乏,因此先经过空间注意力机制,提取空间位置上的重要信息,采用1×1的卷积来对齐patch embedding的通道数,使用平均池化层完成空间维度的对齐,通过Patch Embedding用于将原始的2维图像转换成一系列的1维patch embeddings,使用LayerNorm对特征进行正则化。
当Transformer分支向CNN分支进行融合时CNN特征融合架构(TransformerFuseCNN,TFC),patch embeddings通过上采样对齐空间尺度,采用1×1的卷积将其与卷积中的特征图维度对齐,并与CNN中的特征图进行融合。
上述步骤6的具体实现步数为:
使用标签平滑正则化下的交叉熵损失函数对CNN分支和Transformer分支分别进行监督训练。交叉熵损失函数作为行人重识别领域中最常用的分类损失函数,计算公式如(2)、(3)所示,其中N为行人身份总数量,pi为行人身份预测概率,y为行人身份真实标签。
在分类任务中的交叉熵损失函数在模型训练过程中容易出现过拟合的现象,因此本文通过标签平滑,对交叉熵损失函数进行改进,计算公式(4)为改进后的交叉熵损失目标one-hot标签:
其中ε为较小的超参数,本文中令ε=0.1,引入标签平滑后的交叉熵损失函数为Lisr。综上所述,本发明构建的损失函数如(5)所示:
Ltotal=Lisr+Lisr (5)
所述步骤7的具体实现步骤为:
将预处理完成的训练集和测试集送入网络分别进行模型的训练和测试;
行人重识别算法目标是在不同的摄像机下拍摄到的行人图像中找到与待查询目标最相似的行人,可以看成是排序问题。Rank-1表示在排序列表中第一张图片与待查询图片属于同一身份的准确率。
mAP是由平均精度求和取平均得到,计算公式为:
其中为类别的平均精度,c为类别总数。
本发明是针对行人重识别中行人姿态变化以及注意力机制引起的全局弱化问题,提出的一种基于残差双通道注意力和多尺度特征融合的行人重识别技术方法。进行一次完整的行人识别任务,需要经过以下步骤:(1)输入行人数据集(2)对输入的数据集图片进行预处理(3)经过网络的特征提取模块进行图像特征的提取(4)将CNN分支和Transformer分支中提取的特征图进行特征融合(5)损失函数优化模型(6)对行人目标图像进行识别,输出结果。行人重识别功能模块如图1所示。下面将基于一次完整的识别任务对各个功能模块中的网络架构进行详细的介绍
数据集输入模块:每次从行人数据集中随机抽取32张行人图像作为训练样本送入训练网络。
图像预处理模块:在进行图像特征提取之前,需要对图片进行预处理操作,即数据增强。包括括归一化、随机水平翻转、随机裁剪和随机擦除等操作。其中设置每幅图像随机水平翻转的概率为0.5,每个图像都被解码为[0,1]中的32位浮点原始像素值,通过分别减去0.485、0.456、0.406并分别除以0.229、0.224、0.225来归一化数据,提升模型的收敛速度。完成数据集的预处理之后需要进行模型的搭建以及配置运行的环境。采用Pycharm作为项目的集成开发环境,Pytorch深度学习框架构建模型,将conda导入到项目中,使用GPU进行加速。环境配置完成之后进行参数的设置和模型的搭建。
特征提取模块:本发明设计的金字塔卷积和Transformer双分支行人重识别网络模型,在CNN分支中用金字塔卷积块代替传统的ResNet50残差块提取行人的多尺度特征,Transformer分支中的多头注意力可以解决长距离依赖问题,使模型更关注人体的不同各部位,同时去掉下采样操作,能保留更多的详细信息。其中网络模型架构图如图2所示。金字塔卷积网络结构图如图3所示。Transformer模型分支网络结构图如图4所示。双方向特征融合架构如图5所示。经过图像预处理模块后的行人图片送入网络模型,依次经过金字塔卷积层、Transformer分支和特征融合架构,提取图像的显著性特征。
特征融合模块:考虑CNN和Transformer提取特征时的优缺点,使用特征融合架构以交互的方式进行特征融合可以大大增强局部特征的全局感知能力和全局表示的局部细节。由于CNN和Transformer之间特征融合的差异性,使用1x1卷积来对其通道尺寸,利用上采样、下采样策略来对齐分辨率,通过LayerNorm和BatchNorm对齐特征值。
计算损失模块:在模型的训练阶段,分类器对其进行处理之前,添加全连接层、BN层和ReLu层。在训练时使用标签平滑改进的交叉熵损失函数监督CNN分支和Transformer分支,在全连接层提取的特征用于计算交叉熵损失。根据损失函数的输出结果判断特征提取模块是否收敛,若收敛,则将特征向量发送至识别模块,若不收敛,则将损失结果进行梯度反向传播,更新注意力机制网络参数,直至收敛,得到符合***的模型权重,模型的训练过程如图6所示。
测试模块:通过上述模块对输入的图像进行模型训练后,需要对训练结果进行测试,在测试模块中,通过计算查询集中指定对象和候选集中的每个对象的欧式距离,接着对所计算得到的距离进行升序排序,获得行人重识别的排序结果。一般使用采用首位命中率(Rank-1)和平均准确度(mAP)等性能指标来判断模型训练的情况。
Claims (6)
1.一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述方法并发的双分支架构提取局部特征的同时建立去全局信息建模,通过特征融合对两分支提取的特征进行特征融合,其特征在于,具体包括以下步骤:
步骤1:针对输入的数据集,利用构建的行人重识别网络模型提取图像特征;
步骤2:金字塔卷积分支和Transformer分支分别提取行人图像的判别性特征;
步骤3:对两分支提取的特征进行特征融合;
步骤4:采用标签平滑改进后的交叉熵损失函数对步骤1中的行人重识别网络模型中的CNN分支和Transformer分支训练,得到行人重识别网络模型的最优参数;
步骤5:针对行人重识别公开数据集中包含的查询集和候选集,计算查询集中指定对象和候选集中的每个对象的欧式距离,接着对所计算得到的距离进行升序排序,获得行人重识别的排序结果。
2.根据权利要求1所述的一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述步骤1具体实现步骤为:
步骤1.1:为了丰富数据的多样性,提高模型的泛化能力,首先对输入模型的图片数据集进行预处理操作,包括归一化、随机水平翻转、随机裁剪和随机擦除等操作;将预处理操作完成的图片数据集送入行人重识别网络模型;
步骤1.2:行人重识别网络模型为金字塔卷积和Transformer双分支网络架构,双分支架构主要由CNN分支和Transformer分支组成;CNN分支以ResNet50作为基准网络,提取行人图像的局部特征,为进一步获取行人丰富的多尺度特征,用改进的金字塔卷积单元代替ResNet50中的部分卷积块;Transformer分支采用典型的ViT结构,由N个重复的transformerblock组成,提取行人的全局特征表示。
3.根据权利要求1所述的一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述步骤2的具体步骤为:
步骤2.1:为了捕捉不同行人图像间的细微变化,使用金字塔卷积(PyConv)代替标准卷积提取行人图像的多尺度特征;PyConv为一个金字塔卷积单元,它的每一层包含不同类型的卷积核,随着卷积核尺寸的增加,它的深度相应减小,正是大小与深度的不同,可以提取不同尺度的细节信息;为适应不同深度的卷积核,通过分组卷积对输入特征图分成若干组,针对每组输入的特征图用不同深度的卷积核进行特征提取;在特征图被送入双分支之前,首先经过步长为2的7×7的卷积和3×3的最大池化层,用于提取初始浅层局部特征;计算公式如下:
F(x)=MaxPool(Conv(x))
其中x为输入网络模型中的特征图,Conv为7×7的卷积层,MaxPool为3×3的最大池化层;
步骤2.2:就金字塔卷积分支来说,分别使用9×9、7×7、5×5、3×3四个不同尺寸的卷积核来代替残差结构中原始尺寸为3×3的卷积核,并将输入特征图依次分为16组、8组、4组和1组,输入特征向量经过金字塔卷积分支提取到的特征为F(M),金字塔卷积分支提取到的特征向量如下:
F(M)=PyConv(F(x))
其中PyConv代表金字塔卷积;
步骤2.3:在Transformer分支中,对于输入的三维矩阵图[H,W,C],首先通过卷积核将图像x切割为N=H×W/S2个不重叠图像块,同时进行编码为Transformer能接受的序列向量xm={m1,m2,…mn},其中S代表卷积核的大小,在本算法中设置卷积核大小4×4,即S=4;Transformer中为了对后续的输出序列向量进行图像分类,引入一个可学习的嵌入向量class token,训练时classtoken中的embedding被随机初始化并与图像的输入序列向量相加,最终输入Transformer中序列向量为x′m={mclass,m1,m2,…mn},长度为n+1;输入特征向量经过Transformer分支提取到的特征为F(N),Transformer分支提取到的特征向量如下:
F(N)=Transformer(F(x))。
4.根据权利要求1所述的一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述步骤3的具体实现步骤为:
步骤3.1:CNN中特征图的维度为C×H×W,transformer中patchembedding的形状为(m+1)×N,其中m为图像块的数量,1表示classtoken类别,N表示embedding维度;受到特征维度的限制,CNN分支中收集的局部特征与transformer中的全局特征不能直接融合,设计双方向的特征融合架构;当CNN分支中的特征图向Transformer分支进行传递时,Transformer特征融合架构(CNNFuseTransformer,CFT),由于CNN提取的层越深,得到的语义信息越丰富,空间信息却越贫乏,因此先经过空间注意力机制,提取空间位置上的重要信息,采用1×1的卷积来对齐patchembedding的通道数,使用平均池化层完成空间维度的对齐,通过PatchEmbedding用于将原始的2维图像转换成一系列的1维patchembeddings,使用LayerNorm对特征进行正则化;当CNN分支向Transformer分支进行特征融合时的公式如下:
F(y)=Concat(F(m),F(n))
其中F(y)为CNN分支向Transformer分支融合后的特征向量,F(m),F(n)分别为CNN分支提取的特征和Transformer分支提取的特征;
步骤3.2:当Transformer分支向CNN分支进行融合时CNN特征融合架构(TransformerFuse CNN,TFC),patch embeddings通过上采样对齐空间尺度,采用1×1的卷积将其与卷积中的特征图维度对齐,并与CNN中的特征图进行融合;当Transformer分支向CNN分支进行特征融合时的公式如下:
F(y′)=Concat(F(m),F(n))
其中F(y′)为Transformer分支向CNN分支融合后的特征向量,F(m),F(n)分别为Transformer分支提取的特征和CNN分支提取的特征;
步骤3.3:在测试时使用两分支融合后的特征对其行人图像进行图库检索;CNN分支与Transformer分支融合后的特征向量为F(Y),表达式如下所示:
F(Y)=F(M)+F(N)。
5.根据权利要求1所述的一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述步骤4的具体实现包括以下内容:
在模型的训练阶段,使用标签平滑正则化下的交叉熵损失函数对CNN分支和Transformer分支分别进行监督训练;交叉熵损失函数作为行人重识别领域中最常用的分类损失函数,计算公式如下所示,其中N为行人身份总数量,pi为行人身份预测概率,y为行人身份真实标签;
在分类任务中的交叉熵损失函数在模型训练过程中容易出现过拟合的现象,因此本文通过标签平滑,对交叉熵损失函数进行改进,计算公式为改进后的交叉熵损失目标one-hot标签:
其中ε为较小的超参数,本实验中令ε=0.1,引入标签平滑后的交叉熵损失函数为Lisr;综上所述,本发明构建的损失函数如(5)所示:
Ltotal=Lisr+Lisr
6.根据权利要求1所述的一种基于金字塔卷积和Transformer双分支的行人重识别方法,其特征在于,所述步骤5的具体实现包括以下内容:
针对行人重识别公开数据集中包含的查询集和候选集,计算查询集中指定对象和候选集中的每个对象的欧式距离,接着对所计算得到的距离进行升序排序,获得行人重识别的排序结果;采用首位命中率(Rank-1)和平均准确度(mAP)性能指标来判断模型训练的情况。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310551328.1A CN117011883A (zh) | 2023-05-16 | 2023-05-16 | 一种基于金字塔卷积和Transformer双分支的行人重识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310551328.1A CN117011883A (zh) | 2023-05-16 | 2023-05-16 | 一种基于金字塔卷积和Transformer双分支的行人重识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117011883A true CN117011883A (zh) | 2023-11-07 |
Family
ID=88566232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310551328.1A Pending CN117011883A (zh) | 2023-05-16 | 2023-05-16 | 一种基于金字塔卷积和Transformer双分支的行人重识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011883A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117253122A (zh) * | 2023-11-17 | 2023-12-19 | 云南大学 | 玉米种子近似品种筛选方法、装置、设备及存储介质 |
CN117635973A (zh) * | 2023-12-06 | 2024-03-01 | 南京信息工程大学 | 一种基于多层动态集中和局部金字塔聚合的换衣行人重识别方法 |
CN118072361A (zh) * | 2024-04-24 | 2024-05-24 | 南京信息工程大学 | 一种基于随机游走的小股行人重识别方法及*** |
-
2023
- 2023-05-16 CN CN202310551328.1A patent/CN117011883A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117253122A (zh) * | 2023-11-17 | 2023-12-19 | 云南大学 | 玉米种子近似品种筛选方法、装置、设备及存储介质 |
CN117253122B (zh) * | 2023-11-17 | 2024-01-23 | 云南大学 | 玉米种子近似品种筛选方法、装置、设备及存储介质 |
CN117635973A (zh) * | 2023-12-06 | 2024-03-01 | 南京信息工程大学 | 一种基于多层动态集中和局部金字塔聚合的换衣行人重识别方法 |
CN117635973B (zh) * | 2023-12-06 | 2024-05-10 | 南京信息工程大学 | 一种基于多层动态集中和局部金字塔聚合的换衣行人重识别方法 |
CN118072361A (zh) * | 2024-04-24 | 2024-05-24 | 南京信息工程大学 | 一种基于随机游走的小股行人重识别方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414432B (zh) | 对象识别模型的训练方法、对象识别方法及相应的装置 | |
CN113936339B (zh) | 基于双通道交叉注意力机制的打架识别方法和装置 | |
CN117011883A (zh) | 一种基于金字塔卷积和Transformer双分支的行人重识别方法 | |
CN112861978A (zh) | 一种基于注意力机制的多分支特征融合遥感场景图像分类方法 | |
CN111507217A (zh) | 一种基于局部分辨特征融合的行人重识别方法 | |
CN111666843A (zh) | 一种基于全局特征和局部特征拼接的行人重识别方法 | |
CN111709311A (zh) | 一种基于多尺度卷积特征融合的行人重识别方法 | |
CN109829414B (zh) | 一种基于标签不确定性和人体组件模型的行人再识别方法 | |
CN110163069A (zh) | 用于辅助驾驶的车道线检测方法 | |
CN113269224A (zh) | 一种场景图像分类方法、***及存储介质 | |
CN115830531A (zh) | 一种基于残差多通道注意力多特征融合的行人重识别方法 | |
CN115115969A (zh) | 视频检测方法、装置、设备、存储介质和程序产品 | |
CN116386102A (zh) | 一种基于改进残差卷积网络inception块结构的人脸情绪识别方法 | |
CN111428650A (zh) | 一种基于sp-pggan风格迁移的行人重识别方法 | |
Shen et al. | MCCG: A ConvNeXt-based multiple-classifier method for cross-view geo-localization | |
CN117576149A (zh) | 一种基于注意力机制的单目标跟踪方法 | |
Huang et al. | Baggage image retrieval with attention-based network for security checks | |
CN113298037A (zh) | 一种基于胶囊网络的车辆重识别方法 | |
CN112966569B (zh) | 一种图像处理方法、装置、计算机设备及存储介质 | |
CN117496131B (zh) | 一种电力作业现场安全行为识别方法及*** | |
Masilang et al. | Connet: Designing a fast, efficient, and robust crowd counting model through composite compression | |
Song et al. | Research on multiscale pedestrian detection algorithm | |
Du et al. | Mask R-CNN based ski pose estimation | |
CN115359537A (zh) | 人脸关键点检测方法、人脸关键点检测装置及电子设备 | |
CN116522271A (zh) | 特征融合模型处理、样本检索方法、装置和计算机设备 |
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 |