CN115063831A - 一种高性能行人检索与重识别方法及装置 - Google Patents
一种高性能行人检索与重识别方法及装置 Download PDFInfo
- Publication number
- CN115063831A CN115063831A CN202210409679.4A CN202210409679A CN115063831A CN 115063831 A CN115063831 A CN 115063831A CN 202210409679 A CN202210409679 A CN 202210409679A CN 115063831 A CN115063831 A CN 115063831A
- Authority
- CN
- China
- Prior art keywords
- pedestrian
- identification
- network
- model
- module
- 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
Images
Classifications
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种高性能行人检索与重识别方法及装置,该方法包括:分别获取单视角和多视角现实监控场景下的行人数据,对行人数据进行数据标注,其中单视角行人数据与COCO数据集中的行人部分,共同构建行人检测数据集,多视角行人数据构建行人重识别数据集;利用行人检测数据集基于Ghost轻量化模型改进的YOLOv5行人检测算法训练网络模型;利用行人重识别数据集训练得到行人重识别模型;搭建行人搜索***。本发明通过深度模型压缩和算法算力的协同优化,从算法到硬件的自上而下的方法来优化深度学习的效率,实现低代价高性能的行人重识别***。
Description
技术领域
本发明属于行人检测和行人重识别技术领域,具体涉及一种高性能行人检索与重识别方法及装置。
背景技术
目标检测技术主要用于在给定图像中找到图像或视频中特定类别的对象,同时检测出目标的类标签及坐标。基于深度卷积神经网络算法成为目标检测领域的主流算法,根据不同的分类标准,目前可分为Two-stage算法和One-stage 算法。R-CNN系这类Two-stage算法,先生成候选框,然后对候选框分类并微调其位置。One-stage算法例如Yolo,SSD,则不需要预先生成候选框,直接对图像各个位置进行回归和分类。Two-stage算法精度较高,但速度较慢,算法改进伴随速度提升,One-stage算法速度快,算法改进伴随精度提升。
行人重识别技术是长时、跨域多目标跟踪的核心技术,主要目标是对同一个行人进行跨摄像头的再识别。现有的视频分析***是多种任务算法的集合,对计算芯片的要求极高。行人搜索包含了查找(目标检测)和匹配(行人重识别)的过程。行人重识别模型,都是基于对监控视频进行预处理得到的行人图像,这需要大量的准备工作,针对现实场景,并且单独的行人重识别模型并不能满足应用要求。
不同于学术数据集单一场景,由于行人搜索算法将行人检测算法的结果图片输入到行人重识别模块,所以行人检测模型的检测效果,是识别正确行人的关键步骤。对于大型的视频监控***,往往需要高性能、低功耗硬件的智能设备平台。行人重识别任务中,基于深度学习的方法是目前最好的算法。然而,复杂的深度学习模型通常具有较好的检测效果和重识别能力,难以在确保准确性和实时性的同时,部署在硬件资源有限且功率预算紧张的设备上。
发明内容
针对上述现有技术的不足,本发明提供一种高性能行人检索与重识别方法;模型在部署过程中主要面对模型大小,运行占用内存,计算效率等难点,因此本发明的核心就是对检测模型***Ghost轻量化模块,并采取通道级稀疏化剪枝方法,从而使原有搜索网络模型大小缩小,准确度基准相当。并将训练后的模型于算丰SC5和计算卡上实施量化操作,轻量且快速地部署到硬件上,满足大型的视频监控***需要高性能、低功耗硬件的智能设备平台的需求,确保准确性和实时性的同时,部署在硬件资源有限且功率预算紧张的设备上。
本发明的目的是通过以下技术方案实现的:
根据本说明书的第一方面,提供一种高性能行人检索与重识别方法,包括以下步骤:
S1,分别获取现实监控场景下的单视角行人数据和多视角行人数据,其中,采用单视角行人数据和COCO数据集中的行人部分数据共同构建行人检测数据集,多视角行人数据构建行人重识别数据集;
S2,利用S1中的行人检测数据集,基于Ghost轻量化模型改进的YOLOv5 行人检测算法训练行人检测模型;
S3,利用S1中的行人重识别数据集训练通道级稀疏化剪枝后的行人重识别网络,得到行人重识别模型;
S4,利用S2中训练好的行人检测模型和S3中的行人重识别模型基于算丰 SC5和云端AI计算加速卡进行量化部署,搭建行人搜索***。
进一步地,步骤S2中的行人检测模型包括四种模块,分别为输入端模块、主干网络模块、颈部网络模块和输出端模块,输入为行人检测数据集中一张图片;
图片首先通过输入端模块输入主干网络模块,提取行人特征图像,将行人特征图像送入颈部网络模块,颈部网络模块会增强行人检测模型对于不同缩放尺度行人特征图像的检测,将增强后的行人特征图像送入输出端,输出端对行人特征图像进行预测,生成边界框和预测行人特征图像中的类别。
进一步地,所述主干网络模块包括三种模块,分别为Focus子模块,CBL 子模块,GhostCSP子模块;
所述Focus子模块对输入图片进行切片操作,隔像素进行下采样操作,所述 CBL子模块对输入图像进行卷积操作,所述GhostCSP子模块是使用Ghost网络进行替换而生成的,其中步长为1的Ghost网络替换CSP结构中的残差组件,步长为2的Ghost网络替换CSP结构中的卷积层,起到下采样的作用。
进一步地,所述颈部网络模块对所述主干网络模块提取的行人特征图像进行多次特征提取,生成8,16,32尺度的行人特征图像,基于8,16,32尺度的行人特征图像进行损失计算,得到损失值,行人检测模型根据损失值训练更新,得到训练好的增强行人检测模型。
进一步地,所述步骤S3中的行人重识别网络包括ResNet50网络和BNNeck 模块,输入为行人重识别数据集中一张图片;
对输入图片,采用随机裁剪为不同的大小和宽高比,缩放为同一大小,并采用随机擦除,使用一个布满随机值的矩形框对图片进行遮挡,以此来得到增强图像;
将增强图像输入到ResNet50网络中,ResNet50网络以ImageNet数据集进行模型预训练,提取行人图像特征,对提取特征进行全局池化,得到行人全局特征Fglobal;
所述BNNeck模块将行人重识别损失分离到两个不同的特征空间中优化,完成一次学习。
进一步地,所述步骤S3中的行人重识别网络的损失函数Loss为:
其中:n为样本数量,xi是输入图像,yi是其类别标签,o(yi|xi)表示经过 softmax分类,xi被识别为yi的预测概率;dp是同类图像和输入图像的距离,dn是不同类图像和输入图像的距离,α和β是平衡损失的超参数,max(*)为取最大距离;表示全连接层之前的特征,表示第yi个类别的特征中心,为L2范数。
进一步地,所述ResNet50网络采用通道级稀疏化剪枝方法进行处理,对每个通道引入缩放因子α,先通过正常的网络训练学习连通性,训练过程中稀疏化正则化这些比例因子,自动识别通道的重要性,最终对训练得到的缩放因子较低的通道进行修剪。
进一步地,所述行人重识别模型剪枝的目标函数如下:
其中(x,y)是训练输入和目标,第一项整体表示为未修剪网络的原始损失函数,第二项是缩放因子上的惩罚项,A代表网络中可训练的参数,α是缩放因子,β是两项的平衡因子,|·|为L1范数。
进一步地,所述步骤S4具体为:
S41,选取步骤S1中构建的行人检测训练集3000张图片,以及步骤S1中构建的行人重识别训练集1500张图片,分别转换成lmdb数据集,供后续校准量化使用;
S42,使用BMNNSDK2 SDK工具,将S2和S3中训练完成的行人检测模型和行人重识别模型,转换成fp32umodel文件和对应的prototxt文件,其中 fp32umodel是比特平台私有的格式;
S43,使用calibration_use_pb量化工具将步骤S42中转换后的fp32umodel 转换成比特私有的中间临时模型int8umodel,以S41中的lmdb数据集作为量化校准,其中int8umodel是量化生成的int8格式的网络系数文件;
S44,使用calibration可视化分析工具,检查S43转换后的int8umodel网络误差,使用平均绝对百分比误差和余弦函数作为误差评价标准,定义如下:
其中,Actuali代表真实值,Forecasti代表预测值,n为样本个数;
S45,通过误差评价标准确认量化精度正常之后,使用BMNNSDK2 SDK提供的BMNETU工具,使用步骤S43的int8umdel模型作为输入,编译为 BMRuntime所需要的文件,并且在编译同时,计算每一层NPU模型结果与CPU 的计算结果进行对比,得到行人检测和行人重识别的int8bmodel模型;
S46,基于步骤S45量化完成的int8bmodel模型,输入多路监控视频流,将每帧视频创建到指定芯片上,使用步骤S45中量化完成的行人检测的int8bmodel 模型,对每路视频流中的每帧视频帧进行行人检测得到行人边界框和置信度;
S47,使用生成的行人边界框和置信度经过DIoU-NMS方法进行过滤,若最终的行人置信度小于置信度阈值则进行抑制,得到筛选后的视频监控行人图像,公式如下:
其中ε是NMS阈值,Ni是分类置信度,M为最高置信度检测框,Bi是边界框,RDIoU是两个边界框之间的中心距离;
S48,将步骤S47中筛选出的每帧行人,在视频帧中裁剪,作为行人库图片,等达到设定的批处理数量时,将每批次待识别行人库送入步骤S45中的量化完成的行人重识别的int8bmodel模型提取行人图片特征,得到候选集特征,输入一张待查询的行人图像,得到查询集特征;
S49,对S48中的候选集特征与查询集特征进行欧式距离特征计算,从而得到行人相似度值,判断行人相似度值是否大于预先设定的行人阈值,得到对给定目标行人的重识别结果。
根据本说明书的第二方面,提供一种高性能行人检索与重识别装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现如第一方面所述的高性能行人检索与重识别方法。
本发明的有益效果是:本发明构建了一个改进型Yolov5行人检测网络,对原有CSP结构使用Ghost模块替换,降低网络计算量,提高检测效率。同时在推理阶段引入了DIoU-NMS,减少漏检情况,提高检测精度。构建残差网络 ResNet50对行人图像特征提取全局特征,并结合三元组损失,中心损失,Identity 损失,进行训练,有效降低模型过拟合程度,提高模型泛化能力。采用通道级稀疏化剪枝方法,对行人重识别网络卷积网络进行剪枝,减少模型的大小和参数量,降低模型运行时的内存占用和耗时。搭建行人搜索***,结合SophonSC5 和云端AI计算加速卡实现模型的量化,进一步缩小模型大小,加快推理速度。使用SC5+特定接口,部署模型,快速高精度地针对监控视频中的特定行人检索,通过从算法到硬件的自上而下的方法来优化深度学习的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中的yolov5-ghost网络框架示意图;
图2是本发明一实施例中的ghost bottleneck框架示意图;
图3是本发明一实施例中的行人重识别网络框架示意图;
图4是本发明一实施例中模型量化的实现流程图;
图5是本发明一实施例中的行人搜索***实现流程图;
图6为本发明一实施例中高性能行人检索与重识别装置的结构图。
具体实施方式
为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
本发明提供一种高性能行人检索与重识别方法,包括以下步骤:
S1,分别获取现实监控场景下的单视角行人数据和多视角行人数据,其中,采用单视角行人数据和COCO数据集中的行人部分数据共同构建行人检测数据集,多视角行人数据构建行人重识别数据集;
在一实施例中,提取COCO数据集标签为person类别的行人图像64115张;
固定架设的若干不同角度摄像头采集视频监控图像,为图像标注行人标签和坐标7537张;将采集的行人图像与MS COCO数据集按照4:1的比例构建行人检测数据集。
采集至少50000张像素不低于64*128的图像,图像必须至少有两个摄像头捕捉,必须包含行人图像。按照4:1的比例,构建行人重识别数据集。
S2,利用S1中的行人检测数据集,基于Ghost轻量化模型改进的YOLOv5 行人检测算法训练行人检测模型;
如图1所示,在一实施例中,步骤S2中的行人检测模型包括四种模块,分别为输入端模块、主干网络模块、颈部网络模块和输出端模块,输入为行人检测数据集中一张图片;
图片首先通过输入端模块输入主干网络模块,提取行人特征图像,将行人特征图像送入颈部网络模块,颈部网络模块会增强行人检测模型对于不同缩放尺度行人特征图像的检测,将增强后的行人特征图像送入输出端,输出端对行人特征图像进行预测,生成边界框和预测行人特征图像中的类别。
在一实施例中,主干网络模块包括三种模块,分别为Focus子模块,CBL 子模块,GhostCSP子模块;
主干网络模块中输入的图片通过Focus子模块自我复制并进行切片操作,隔像素进行下采样操作,以此减少网络计算量,加快对候选区域特征提取的速度。切片图像经过CBL子模块卷积归一化,进行特征提取。提取过程中GhostCSP 子模块优化网络梯度信息,加快网络计算速度,减少计算量。最后SPP模块将不同尺寸输入转变为相同大小的输出,解决输入图像尺寸不统一问题。GhostCSP 子模块是使用Ghost网络进行替换而生成的,其中步长为1的Ghost网络替换 CSP结构中的残差组件,步长为2的Ghost网络替换CSP结构中的卷积层,起到下采样的作用
GhostCSP模块包括CBL处理,步长为1和2的Ghost网络,批量归一化处理以及修正线性单元处理。
图2是本实例使用的Ghost网络,其具有两种瓶颈结构,对于步长为1的情况,由两个Ghost模块构成,第一个Ghost模块是做扩展处理,增加输入特征图的通道数。第二个Ghost模块用于减少特征图的通道数使其和网络中的直径结构体匹配,并根据直径结构连接两个模块的信息传递。第一个Ghost模块后使用 ReLU激活函数,第二个Ghost模块只使用归一化处理,这样的结构使得模型可以有效减少参数量和计算量,优化特征图。对于步长为2的情况,两个Ghost 模块之间通过一个步长为2的深度卷积进行连接,并在直径连接路径使用下采样层来减半特征图大小,进一步降低计算量。
Ghost网络是通过n组k*k卷积核与输入特征图大小为c*h*w卷积,生成通道数为n,尺寸为h′*w′大小的本征特征图,再应用线性变换(Φa)进一步生成新的相似特征图ghost,最后将两组特征信息组合,得到全部特征信息,具体如下:
Y′=X*f′+b
其中Y′∈Rh′*w′*n表示输出本征特征图,X′∈Rh*w*c表示输入特征图, f′∈Rc*k*k*n表示该卷积的卷积核。y′i(1≤i≤m)为Y′的n个特征图,每个特征图都要经过轻量级线性操作Φi,j(1≤j≤s),得到s个相似特征图ghost。
颈部网络模块采用FPN和PAN网络结构,通过上采样和融合不同层的特征,利用底层特征的高分辨率和高层特征的语义信息,输出三种不同的检测尺度特征图。
基于上述三个特征图进行损失计算得到损失值,行人检测模型根据损失值训练更新从而得到训练好的模型,
其中,损失函数包括边界框回归损失,类别预测损失,置信度损失,将这些损失依特定权重相加得到总目标检测损失。
边界框回归表示如下:
其中IOU是预测框和真实框的交并比,Distance_C是对角线距离,Distance_2 是两框中心点的欧式距离,v是衡量长宽比一致性的参数。
类别预测损失和置信度损失采用二元交叉熵损失表示如下:
在一实施例中,颈部网络模块对主干网络模块提取的行人特征图像进行多次特征提取,生成8,16,32尺度的行人特征图像,基于8,16,32尺度的行人特征图像进行损失计算,得到损失值,行人检测模型根据损失值训练更新,得到训练好的增强行人检测模型。
S3,利用S1中的行人重识别数据集训练通道级稀疏化剪枝后的行人重识别网络,得到行人重识别模型;
在一实施例中,步骤S3中的行人重识别网络包括ResNet50网络和BNNeck 模块,输入为行人重识别数据集中一张图片;
对输入图片,采用随机裁剪为不同的大小和宽高比,缩放为同一大小,并采用随机擦除,使用一个布满随机值的矩形框对图片进行遮挡,以此来得到增强图像;
将增强图像输入到ResNet50网络中,ResNet50网络以ImageNet数据集进行模型预训练,提取行人图像特征,对提取特征进行全局池化,得到行人全局特征Fglobal;
BNNeck模块将行人重识别损失分离到两个不同的特征空间中优化,完成一次学习。
如图3所示,本步骤搭建的50层残差网络ResNet50,可以分为七个部分,第一部分不包含残差模块,主要对输入进行卷积,正则化,最大池化的计算。第二部分,第三部分,第四部分,第五部分都包含残差模块,每个残差模块都有三个卷积,经过五部分的卷积计算,池化层会将其转换为特征向量,最后由分类器进行计算并输出类别概率。
其中第六部分将得到的特征向量经过BN层的归一化。平衡每个特征的维度,减少ID损失对特征的约束。
在一实施例中,ResNet50网络采用通道级稀疏化剪枝方法进行处理,对每个通道引入缩放因子α,先通过正常的网络训练学习连通性,训练过程中稀疏化正则化这些比例因子,自动识别通道的重要性,最终对训练得到的缩放因子较低的通道进行修剪。
例如,采用通道级稀疏化剪枝方法,对行人重识别模型的网络中部分批量归一化层进行剪枝。BN执行如下转换:
nout=αN+β
其中ub表示最小批量中某特征图的均值,nin和nout分别是批量归一化层的输入和输出,α是缩放因子,δ和β为调节超参数,通过正常的网络训练学习连通性,训练过程中稀疏化正则化这些比例因子,自动识别通道的重要性,设置网络层全局阈值,对缩放因子较低的通道进行修剪。
在一实施例中,行人重识别模型剪枝的目标函数如下:
其中(x,y)是训练输入和目标,第一项整体表示为未修剪网络的原始损失函数,第二项是缩放因子上的惩罚项,A代表网络中可训练的参数,α是缩放因子,β是两项的平衡因子,|·|为L1范数。
在一实施例中,训练行人重识别网络的损失函数采用三元组损失,中心损失,身份损失,将这三种损失依照特定权重相加,得到总重识别损失,步骤S3 中的行人重识别网络的损失函数Loss为:
其中:n为样本数量,xi是输入图像,yi是其类别标签,p(yi|xi)表示经过 softmax分类,xi被识别为yi的预测概率;dp是同类图像和输入图像的距离,dn是不同类图像和输入图像的距离,α和β是平衡损失的超参数,max(·)为取最大距离;表示全连接层之前的特征,表示第yi个类别的特征中心,为L2范数。
S4,利用S2中训练好的行人检测模型和S3中的行人重识别模型基于算丰 SC5和云端AI计算加速卡进行量化部署,搭建行人搜索***。
图4是本发明模型量化的实现流程图,步骤S4具体为:
S41,选取步骤S1中构建的行人检测训练集3000张图片,以及步骤S1中构建的行人重识别训练集1500张图片,使用BMNNSDK工具中的 convert_imageset接口,分别转换成lmdb数据集,其中设置行人检测图片大小640*640,行人重识别图片大小256*128,设置shuffle参数,随机打扰图片和标签顺序,供后续校准量化使用;
S42,使用BMNNSDK2 SDK工具,将S2和S3中训练完成的行人检测模型和行人重识别模型,转换成fp32umodel文件和对应的prototxt文件,其中 fp32umodel是比特平台私有的格式;对S42生成的prototxt,根据S2和S3中对图像相应的预处理操作,在数据层中添加对应的预处理参数,保证送给网络的数据和原始框架一致;
S43,使用calibration_use_pb量化工具将步骤S42中转换后的fp32umodel 转换成比特私有的中间临时模型int8umodel,以S41中的lmdb数据集作为量化校准,S43中的prototxt文件作为网络层,其中int8umodel是量化生成的int8格式的网络系数文件;
S44,使用calibration可视化分析工具,检查S43转换后的int8umodel网络误差,使用平均绝对百分比误差和余弦函数作为误差评价标准,定义如下:
其中,Actuali代表真实值,Forecasti代表预测值,n为样本个数;
S45,通过误差评价标准确认量化精度正常之后,使用BMNNSDK2 SDK提供的BMNETU工具,即通过比特大陆自主开发的网络模型量化工具 Qantization-Tool中的bmnetu接口,使用步骤S43的int8umdel模型作为输入,编译为BMRuntime所需要的文件,并且在编译同时,计算每一层NPU模型结果与CPU的计算结果进行对比,得到行人检测和行人重识别的int8bmodel模型;
如果误差在指定范围内,则可以生成最后的模型。如果误差不在指定范围内,检查哪一层前后量化误差较大,对该层前后设置fpfwd_outputs参数,运行这些层保持浮点计算,不被量化,不对网络的量化精度造成影响;
S46,基于步骤S45量化完成的int8bmodel模型,输入多路监控视频流,将每帧视频创建到指定芯片上,使用步骤S45中量化完成的行人检测的int8bmodel 模型,对每路视频流中的每帧视频帧进行行人检测得到行人边界框和置信度;
S47,使用生成的行人边界框和置信度经过DIoU-NMS方法进行过滤,若最终的行人置信度小于置信度阈值则进行抑制,得到筛选后的视频监控行人图像,公式如下:
其中ε是NMS阈值,Ni是分类置信度,M为最高置信度检测框,Bi是边界框,RDIoU是两个边界框之间的中心距离;
S48,将步骤S47中筛选出的每帧行人,在视频帧中裁剪,作为行人库图片,等达到设定的批处理数量时,将每批次待识别行人库送入步骤S45中的量化完成的行人重识别的int8bmodel模型提取行人图片特征,得到候选集特征,输入一张待查询的行人图像,得到查询集特征;例如,图5是本发明实施例的行人搜索方法的流程图,输入待检索行人图片和每路行人视频流,利用量化后的行人重识别模型对待检索行人图片进行特征提取,得到查询集特征。
S49,对S48中的候选集特征与查询集特征进行欧式距离特征计算,从而得到行人相似度值,判断行人相似度值是否大于预先设定的行人阈值,得到对给定目标行人的重识别结果。
具体地,利用量化后的行人检测模型对每路视频流进行行人检测,判断检测到的行人score是否大于设定阈值,若是,则判断为行人,并将该行人从对应视频帧中裁剪存储到行人库中。
存储每达到一定的批量数时,利用行人重识别模型对这批行人库图片提取特征,得到候选集特征。
查询集特征与候选集特征利用余弦相似度进行行人相似度判定,表示如下:
xi,yi分别是两张图片的特征向量,n是向量维度。
判断计算所得的行人相似度是否大于设定的行人阈值,若是,则行人库中待识别行人为特定行人,将待识别行人对应的视频流的帧数进行保存。若为否,则对下一张行人库图片进行行人相似度计算,重复本步骤。
本发明的有益效果是:本发明构建了一个改进型Yolov5行人检测网络,对原有CSP结构使用Ghost模块替换,降低网络计算量,提高检测效率。同时在推理阶段引入了DIoU-NMS,减少漏检情况,提高检测精度。构建残差网络 ResNet50对行人图像特征提取全局特征,并结合三元组损失,中心损失,Identity 损失,进行训练,有效降低模型过拟合程度,提高模型泛化能力。采用通道级稀疏化剪枝方法,对行人重识别网络卷积网络进行剪枝,减少模型的大小和参数量,降低模型运行时的内存占用和耗时。搭建行人搜索***,结合SophonSC5 和云端AI计算加速卡实现模型的量化,进一步缩小模型大小,加快推理速度。使用SC5+特定接口,部署模型,快速高精度地针对监控视频中的特定行人检索,通过从算法到硬件的自上而下的方法来优化深度学习的效率。
与前述高性能行人检索与重识别方法的实施例相对应,本发明还提供了高性能行人检索与重识别装置的实施例。
参见图6,本发明实施例提供的一种高性能行人检索与重识别装置,包括存储器和一个或多个处理器,存储器中存储有可执行代码,处理器执行可执行代码时,用于实现上述实施例中的高性能行人检索与重识别方法。
本发明高性能行人检索与重识别装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本发明高性能行人检索与重识别装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图6 所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的高性能行人检索与重识别方法。
计算机可读存储介质可以是前述任一实施例的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。计算机可读存储介质用于存储计算机程序以及任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (10)
1.一种高性能行人检索与重识别方法,其特征在于,包括以下步骤:
S1,分别获取现实监控场景下的单视角行人数据和多视角行人数据,其中,采用单视角行人数据和COCO数据集中的行人部分数据共同构建行人检测数据集,多视角行人数据构建行人重识别数据集;
S2,利用S1中的行人检测数据集,基于Ghost轻量化模型改进的YOLOv5行人检测算法训练行人检测模型;
S3,利用S1中的行人重识别数据集训练通道级稀疏化剪枝后的行人重识别网络,得到行人重识别模型;
S4,利用S2中训练好的行人检测模型和S3中的行人重识别模型基于算丰SC5和云端AI计算加速卡进行量化部署,搭建行人搜索***。
2.根据权利要求1所述的高性能行人检索与重识别方法,其特征在于,步骤S2中的行人检测模型包括四种模块,分别为输入端模块、主干网络模块、颈部网络模块和输出端模块,输入为行人检测数据集中一张图片;
图片首先通过输入端模块输入主干网络模块,提取行人特征图像,将行人特征图像送入颈部网络模块,颈部网络模块会增强行人检测模型对于不同缩放尺度行人特征图像的检测,将增强后的行人特征图像送入输出端,输出端对行人特征图像进行预测,生成边界框和预测行人特征图像中的类别。
3.根据权利要求2所述的高性能行人检索与重识别方法,其特征在于,所述主干网络模块包括三种模块,分别为Focus子模块,CBL子模块,GhostCSP子模块;
所述Focus子模块对输入图片进行切片操作,隔像素进行下采样操作,所述CBL子模块对输入图像进行卷积操作,所述GhostCSP子模块是使用Ghost网络进行替换而生成的,其中步长为1的Ghost网络替换CSP结构中的残差组件,步长为2的Ghost网络替换CSP结构中的卷积层,起到下采样的作用。
4.根据权利要求3所述的高性能行人检索与重识别方法,其特征在于,所述颈部网络模块对所述主干网络模块提取的行人特征图像进行多次特征提取,生成8,16,32尺度的行人特征图像,基于8,16,32尺度的行人特征图像进行损失计算,得到损失值,行人检测模型根据损失值训练更新,得到训练好的增强行人检测模型。
5.根据权利要求1所述的高性能行人检索与重识别方法,其特征在于,所述步骤S3中的行人重识别网络包括ResNet50网络和BNNeck模块,输入为行人重识别数据集中一张图片;
对输入图片,采用随机裁剪为不同的大小和宽高比,缩放为同一大小,并采用随机擦除,使用一个布满随机值的矩形框对图片进行遮挡,以此来得到增强图像;
将增强图像输入到ResNet50网络中,ResNet50网络以ImageNet数据集进行模型预训练,提取行人图像特征,对提取特征进行全局池化,得到行人全局特征Fglobal;
所述BNNeck模块将行人重识别损失分离到两个不同的特征空间中优化,完成一次学习。
7.根据权利要求5所述的高性能行人检索与重识别方法,其特征在于,所述ResNet50网络采用通道级稀疏化剪枝方法进行处理,对每个通道引入缩放因子α,先通过正常的网络训练学习连通性,训练过程中稀疏化正则化这些比例因子,自动识别通道的重要性,最终对训练得到的缩放因子较低的通道进行修剪。
9.根据权利要求1所述的高性能行人检索与重识别方法,其特征在于,所述步骤S4具体为:
S41,选取步骤S1中构建的行人检测训练集3000张图片,以及步骤S1中构建的行人重识别训练集1500张图片,分别转换成lmdb数据集,供后续校准量化使用;
S42,使用BMNNSDK2 SDK工具,将S2和S3中训练完成的行人检测模型和行人重识别模型,转换成fp32umodel文件和对应的prototxt文件,其中fp32umodel是比特平台私有的格式;
S43,使用calibration_use_pb量化工具将步骤S42中转换后的fp32umodel转换成比特私有的中间临时模型int8umodel,以S41中的lmdb数据集作为量化校准,其中int8umodel是量化生成的int8格式的网络系数文件;
S44,使用calibration可视化分析工具,检查S43转换后的int8umodel网络误差,使用平均绝对百分比误差和余弦函数作为误差评价标准,定义如下:
其中,Actuali代表真实值,Forecasti代表预测值,n为样本个数;
S45,通过误差评价标准确认量化精度正常之后,使用BMNNSDK2 SDK提供的BMNETU工具,使用步骤S43的int8umdel模型作为输入,编译为BMRuntime所需要的文件,并且在编译同时,计算每一层NPU模型结果与CPU的计算结果进行对比,得到行人检测和行人重识别的int8bmodel模型;
S46,基于步骤S45量化完成的int8bmodel模型,输入多路监控视频流,将每帧视频创建到指定芯片上,使用步骤S45中量化完成的行人检测的intSbmodel模型,对每路视频流中的每帧视频帧进行行人检测得到行人边界框和置信度;
S47,使用生成的行人边界框和置信度经过DIoU-NMS方法进行过滤,若最终的行人置信度小于置信度阈值则进行抑制,得到筛选后的视频监控行人图像,公式如下:
其中ε是NMS阈值,Ni是分类置信度,M为最高置信度检测框,Bi是边界框,RDIoU是两个边界框之间的中心距离;
S48,将步骤S47中筛选出的每帧行人,在视频帧中裁剪,作为行人库图片,等达到设定的批处理数量时,将每批次待识别行人库送入步骤S45中的量化完成的行人重识别的int8bmodel模型提取行人图片特征,得到候选集特征,输入一张待查询的行人图像,得到查询集特征;
S49,对S48中的候选集特征与查询集特征进行欧式距离特征计算,从而得到行人相似度值,判断行人相似度值是否大于预先设定的行人阈值,得到对给定目标行人的重识别结果。
10.一种高性能行人检索与重识别装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,其特征在于,所述处理器执行所述可执行代码时,用于实现如权利要求1-9中任一项所述的高性能行人检索与重识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409679.4A CN115063831A (zh) | 2022-04-19 | 2022-04-19 | 一种高性能行人检索与重识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409679.4A CN115063831A (zh) | 2022-04-19 | 2022-04-19 | 一种高性能行人检索与重识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115063831A true CN115063831A (zh) | 2022-09-16 |
Family
ID=83196926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210409679.4A Pending CN115063831A (zh) | 2022-04-19 | 2022-04-19 | 一种高性能行人检索与重识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115063831A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116883916A (zh) * | 2023-09-08 | 2023-10-13 | 深圳市国硕宏电子有限公司 | 一种基于深度学习的会议异常行为检测方法及*** |
-
2022
- 2022-04-19 CN CN202210409679.4A patent/CN115063831A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116883916A (zh) * | 2023-09-08 | 2023-10-13 | 深圳市国硕宏电子有限公司 | 一种基于深度学习的会议异常行为检测方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pal et al. | Deep learning in multi-object detection and tracking: state of the art | |
CN111259786B (zh) | 一种基于视频的外观和运动信息同步增强的行人重识别方法 | |
CN107679250B (zh) | 一种基于深度自编码卷积神经网络的多任务分层图像检索方法 | |
Zhang et al. | Self-supervised visual representation learning from hierarchical grouping | |
CN109711463B (zh) | 基于注意力的重要对象检测方法 | |
CN114202672A (zh) | 一种基于注意力机制的小目标检测方法 | |
CN111178251A (zh) | 一种行人属性识别方法及***、存储介质及终端 | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN111368636B (zh) | 目标分类方法、装置、计算机设备和存储介质 | |
Chen et al. | Corse-to-fine road extraction based on local Dirichlet mixture models and multiscale-high-order deep learning | |
CN115171165A (zh) | 全局特征与阶梯型局部特征融合的行人重识别方法及装置 | |
CN111738074B (zh) | 基于弱监督学习的行人属性识别方法、***及装置 | |
CN114037640A (zh) | 图像生成方法及装置 | |
CN111125397A (zh) | 一种基于卷积神经网络的布料图像检索方法 | |
CN114241250A (zh) | 一种级联回归目标检测方法、装置及计算机可读存储介质 | |
CN116091946A (zh) | 一种基于YOLOv5的无人机航拍图像目标检测方法 | |
Fu et al. | A case study of utilizing YOLOT based quantitative detection algorithm for marine benthos | |
CN115063831A (zh) | 一种高性能行人检索与重识别方法及装置 | |
Nebili et al. | Augmented convolutional neural network models with relative multi-head attention for target recognition in infrared images | |
Sharma et al. | Performance Analysis of Object Detection Algorithms on YouTube Video Object Dataset. | |
CN116994024A (zh) | 集装箱图像中的部件识别方法、装置、设备、介质及产品 | |
CN115410131A (zh) | 一种用于短视频智能分类的方法 | |
CN114332509A (zh) | 图像处理方法、模型训练方法、电子设备及自动驾驶车辆 | |
CN114170625A (zh) | 一种上下文感知、噪声鲁棒的行人搜索方法 | |
CN113192018A (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 |