掌桥专利:专业的专利平台
掌桥专利
首页

模型训练方法、行人检测方法、电子设备及可读存储介质

文献发布时间:2023-06-19 11:22:42


模型训练方法、行人检测方法、电子设备及可读存储介质

技术领域

本发明涉及计算机视觉技术领域,尤其涉及一种模型训练方法、行人检测方法、电子设备及可读存储介质。

背景技术

行人检测是利用计算机视觉算法判断图像或视频序列中是否存在行人,并精确定位行人在图像中的位置以及大小的技术。行人检测技术可与行人跟踪、行人重识别等技术结合,应用于人工智能系统、自动驾驶、智能视频监控和直播短视频等领域。

由于行人是非刚性物体,而有时又具有刚性物体的特性,其外观易受光照、视角、姿势、穿着、尺度和遮挡等影响,而现有的行人检测算法难以对行人遮挡场景中的行人进行准确检测,存在误检或漏检的问题,检测准确率比较低。

发明内容

本发明提供一种模型训练方法、行人检测方法、电子设备及可读存储介质,解决了现有技术中行人遮挡场景中的行人检测易发生误检或漏检而导致的检测准确率不高的问题。

为解决上述技术问题,第一方面,本发明提供一种模型训练方法,包括:

采集行人图像数据,并利用所述行人图像数据构建训练数据集;

使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型;

其中,所述目标检测模型包括特征提取网络和多尺度特征融合的网络,所述多尺度特征融合的网络利用高斯可形变卷积网络形成。

可选地,所述使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型,包括:

对所述训练数据集进行数据均衡处理,得到目标训练数据集;

将所述目标训练数据集输入到所述特征提取网络中,得到所述目标训练数据集的行人特征;

将所述行人特征输入到所述多尺度特征融合的网络中,得到行人预测结果;

将所述行人预测结果和预设结果进行匹配,得到匹配结果;

基于所述匹配结果,得到所述行人检测模型。

可选地,所述将所述目标训练数据集输入到所述特征提取网络中,得到所述目标训练数据集的行人特征,包括:

采取边卷积边向上采样的方式,将所述目标训练数据集中的目标训练图像分为52×52、26×26和13×13三个尺度的特征图;

其中,所述目标训练图像为所述目标训练数据集中的任一图像;所述特征提取网络为利用弱语义分割网络形成的darknet-53网络。

可选地,所述将所述行人特征输入到所述多尺度特征融合的网络中,得到行人预测结果,包括:

利用所述多尺度特征融合的网络,分别将所述三个尺度的特征图进行处理,得到处理结果,所述处理包括:特征融合、分类和回归;

利用先验框,对所述处理结果进行目标预测,获得三种尺度的预测图;

其中,所述预测图中的预测框包括类别、位置和尺寸;

所述先验框为采用k-means算法对所述目标训练数据集进行聚类处理得到的。

可选地,所述将所述行人预测结果和预设结果进行匹配,得到匹配结果,包括:

将所述预测图中的预测框与预设结果进行匹配;

根据匹配结果,将所述预测框中与所述预设结果的IOU(intersection overunion,交并比)最大的预测框确定为第一预测框,将所述预测框中除第一预测框之外的预测框确定为第二预测框;

其中,所述第一预测框用于目标训练;所述第二预测框用于背景类别的训练;所述预设结果为根据所述训练数据集中的行人图像数据标定的52×52的弱语义分割数据。

可选地,在得到所述行人检测模型之后,所述模型训练方法还包括:

修正所述行人检测模型的权重参数。

可选地,所述修正所述行人检测模型的权重参数,包括:

根据所述匹配结果,计算所述行人检测模型的损失值;

根据所述损失值,通过反向传播,采用批量随机梯度下降(Batch StochasticGradient Descent,BSGD)算法优化损失函数,并修正所述行人检测模型的权重参数。

可选地,所述对所述训练数据集进行数据均衡处理,包括:

对所述训练数据集进行预处理;

根据预处理结果,对人体的部位进行遮挡处理;其中,所述人体的部位不包括头部。

可选地,所述对所述训练数据集进行预处理,包括采用以下一种或者多种方式对所述训练数据集中的行人图像数据进行处理:

随机剪切、随机翻转、色度调整和对比度调整。

第二方面,本发明还提供一种行人检测方法,包括:

采集待检测的图像;

对所述待检测的图像进行预处理,得到目标检测图像;

提取所述目标检测图像中的行人特征;

根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果;

其中,所述多尺度特征融合的网络利用高斯可形变卷积形成。

可选地,所述根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果,包括:

利用多尺度特征融合的网络,对所述行人特征进行特征处理,得到处理结果,所述处理包括:特征融合、分类和回归;

基于所述处理结果,利用先验框进行行人预测,获得预测框;

在所述预测框的置信度大于置信度阈值的情况下,保留所述预测框;在预测框的置信度小于或等于置信度阈值的情况下,删除所述预测框;

根据所述预测框,获得预测结果。

可选地,所述根据所述预测框,获得预测结果,包括:

采用非极大值抑制(non-maximum suppression,NMS)算法,删除所述预测框中定位不符合预设要求的预测框,将剩余的预测框确定为目标预测框;

根据所述目标预测框,获得预测结果;其中,所述预测结果包括所述目标预测框对应的类别、位置和尺寸。

可选地,所述对所述待检测的图像进行预处理,包括采用以下一种或者多种方式对所述待检测的图像进行处理:

随机剪切、随机翻转、色度调整、对比度调整和缩放。

第三方面,本发明还提供一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一种模型训练方法中的步骤,或者实现上述任一种行人检测方法中的步骤。

第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种模型训练方法的步骤,或者实现上述任一种行人检测方法的步骤。

本发明的上述技术方案的有益效果如下:

本发明的实施例,利用高斯可形变卷积网络对模型进行训练,能够得到具有较强泛化能力和鲁棒性的行人检测模型,从而避免了行人检测模型在行人遮挡场景中的行人检测发生误检或漏检,提高了行人检测模型检测的准确性。

附图说明

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

图1表示本发明实施例的模型训练方法的流程示意图之一;

图2表示本发明实施例的52×52弱语义分割网络;

图3表示本发明实施例的26×26弱语义分割网络;

图4表示本发明实施例的13×13弱语义分割网络;

图5表示本发明实施例的可形变卷积网络结构;

图6表示本发明实施例的高斯可形变卷积网络结构;

图7表示本发明实施例的基于YOLOV3神经网络的目标检测模型;

图8表示本发明实施例的模型训练方法的流程示意图之二;

图9表示本发明实施例的行人检测方法的流程示意图之一;

图10表示本发明实施例的行人检测方法的流程示意图之二;

图11表示本发明实施例的模型训练装置的结构示意图;

图12表示本发明实施例的行人检测装置的结构示意图;

图13表示本发明实施例的电子设备的结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本发明的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本发明的范围和精神。另外,为了清楚和简洁,省略了对已知功能和构造的描述。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。

在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。另外,本文中术语“系统”和“网络”在本文中常可互换使用。

在本申请所提供的实施例中,应理解,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。

本发明实施例中,用户终端可以是移动电话(或手机),或者其他能够发送或接收无线信号的设备,包括用户设备、个人数字助理(PDA)、无线调制解调器、无线通信装置、手持装置、膝上型计算机、无绳电话、无线本地回路(WLL)站、能够将移动信号转换为WiFi信号的CPE(Customer Premise Equipment,客户终端)或移动智能热点、智能家电、或其他不通过人的操作就能自发与移动通信网络通信的设备等。

传统机器学习方法采用特征和分类器的方法,需要人工精确设计特征,而且所采用的分类器分类效果较差,原因在于表达行人所用的参数太少,导致所采用的特征不能精确描述一个行人,导致分类器在使用过程中容易“做出错误的选择”。

随着互联网飞速发展,产生海量数据,加上计算资源的快速更新迭代,深度学习技术横空出世,检测或分类性能“惊艳”全场,完全碾压传统机器学习方法。其中,将CNN网络用于目标检测的最经典的算法是R-CNN(region with CNN feature,带有CNN特征的区域)。

CNN目标检测算法大致分为两类,一类是两步目标检测算法,如R-CNN、Fast-RCNN、Faster-RCNN等;另一类是单步目标检测算法,如YOLO(You Only Look Once)系列的目标检测算法(包括YOLO1/2/3)、SSD(Single Shot MultiBox Detector)、FCOS(FullyConvolutional One-Stage Object Detection)等。两步目标检测算法虽然检测率很高,但速度慢,不适合在移动端应用,而单步目标检测算法效果与两步目标检测算法的相差不多,而且速度更明显。

单步目标检测算法,也称为端到端目标检测算法,也就是在训练过程中,输入端输入数据,在CNN尾部直接输出目标的位置、大小和类别等。

行人也是目标的一种,可以采用通用目标检测算法进行检测,但它又异于通用目标(即非刚性物体),所以需要特殊对待。

在评价目标检测算法性能时,通用都会在测试集上计算mAP(meanAveragePrecision,平均精度均值),指标高就意味着该算法更优越,但是算法在工程应用过程中,在保证一定检测率的基础上,算法人员需要严格控制误检率。比如,在智能视频监控领域,某个摄像头架设在一个较偏僻的地方,平时几乎无人出现,但如果每天该摄像头都会送出几十张误检,这会导致该系统失效,本来该系统的出发点是为了监控违法侵入人员,在保证检测率的基础上需要尽量压低误检率,对整个视频进行分析。由于摄像头架设角度、高度的差异和人的随机性,导致人在图像中经常处于一种遮挡的状态,再加上遮挡程度的不同,在图像呈现的特征也不同,有些情况下可能与其他物体相似,比如一个人只露一条腿时,抛开人的常识,单单从一张图像上进行分析,连人眼都很难区分出是人腿还是其他物体,所以如果我们想检测出这样的人,进而将类似的数据丢进算法上进行训练,这样会出现一个问题,连聪明的人脑都分不清是什么物体,算法几乎也是分不清,进而这些“脏数据”会“教坏”算法的学习,导致在使用过程中会出现很多误判。

现有技术中有部分方案在YOLOV2的基础上做出了改进,其目的是将浅层特征与深层特征融合所得到的特征增强,更能凸显行人特征,但这类方案只是对通用目标做出的改进,而并没有对行人的特殊性做出一些专门改进。反应在检测结果上的问题体现在两方面:一是一些明显是行人的区域算法检测不到,虽然可以不断增加该场景的数据,但这是不明智的,而且成本较为高昂;二是模型鲁棒性不够好,由于行人的随机性和摄像头架设角度和高度的影响,导致行人在图像中所呈现的现象是尺度多样、姿态多样、角度多样、穿着和光线多样等,比如我们手上只有某些角度和距离的训练数据,自然用kmeans聚类出来的anchor box也是在这些场景效果更好,但是我们没法全面预估算法使用的场景,如果用户将算法用在一个训练集中没有或者少数的场景中,比如应用在行人遮挡场景中时,可能会导致算法性能表现差,以致于容易发生误检或漏检,测准确率不高。

如图1所示,本发明的实施例提供了一种模型训练方法,包括以下步骤:

步骤101:采集行人图像数据,并利用所述行人图像数据构建训练数据集。

本步骤中,可以利用监控摄像头等拍摄设备,采集行人在拍摄设备拍摄下的不同角度、姿势、光线和不同地点的行人图像,用于构建训练数据集。其中,行人图像数据包括行走、蹲、弯腰、站立等不同姿势的行人图像,以及与拍摄设备之间存在不同距离和不同遮挡情况的行人图像。

也就是说,可以在数据采集阶段采集不同参数的行人图像数据,所述参数包括姿态、光照、角度、距离和地点。然后对行人图像数据进行标定,利用这些行人图像数据构建训练数据集。

需要说明的是,进行标定工作时,除了标定人体外,还需要标定头肩部分,为后期对训练数据集中的数据扩充做准备。在构建训练数据集时,可以对数据进行均衡扩充处理,具体的,可以在数据扩充阶段采用人体部位随机遮挡技术,增加数据的多样性,均衡数据种类,从而提升行人检测模型在遮挡场景的性能。

步骤102:使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型;其中,所述目标检测模型包括特征提取网络和多尺度特征融合的网络,所述多尺度特征融合的网络利用高斯可形变卷积(Gaussian Deformal Conv,GDC)网络形成。

该实施例中,在YOLOV3的基础上做出了改进,YOLOV3采用更深的网络提取更丰富的特征,而FPN(Feature Pyramid Networks,特征图金字塔网络)是一种结合多层级特征来解决多尺度问题的特征金字塔模型,其主要解决的是物体检测中的多尺度问题,通过简单的网络连接改变,在基本不增加原有模型计算量的情况下,大幅度提升了小物体检测的性能。

本发明实施例中,基于YOLOV3神经网络的目标检测模型,在训练阶段增加具有训练辅助作用的处理,可以使用类似FPN进行多尺度特征融合,训练过程中在FPN网络中引入高斯可形变卷积,可以提升行人检测模型对遮挡场景的鲁棒性和对非目标的抗干扰性,提高了行人检测模型的mAP。

可选地,所述使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型,包括:

(1)对所述训练数据集进行数据均衡处理,得到目标训练数据集。

该步骤中,在训练阶段图像引入人体部位随机遮挡技术,通过对训练数据集进行数据均衡处理,在保留人体关键特征的基础上,增强训练数据集的多样性和类别的均衡性。这样,可以扩充训练数据集中的数据,丰富训练数据,增强行人检测模型对遮挡场景的泛化能力和鲁棒性。

(2)将所述目标训练数据集输入到所述特征提取网络中,得到所述目标训练数据集的行人特征。

该步骤中,将目标训练数据集中的训练数据集放入到以弱语义分割为辅助的darknet-53网络中提取行人特征。通过这种方式,能够使得通过主干网络darknet-53学习到的特征集中在人体区域,凸显人体特征,提高了行人检测模型的检测率。

可选地,在此步骤中,采取边卷积边向上采样的方式,将所述目标训练数据集中的目标训练图像分为52×52、26×26和13×13三个尺度的特征图;其中,所述目标训练图像为所述目标训练数据集中的任一图像;所述特征提取网络为利用弱语义分割网络形成的darknet-53网络。

(3)将所述行人特征输入到所述多尺度特征融合的网络中,得到行人预测结果。

可选地,在此步骤中,包括:利用所述多尺度特征融合的网络,分别将所述三个尺度的特征图进行处理,得到处理结果,所述处理包括:特征融合、分类和回归;利用先验框,对所述处理结果进行目标预测,获得三种尺度的预测图;其中,所述预测图中的预测框包括类别、位置和尺寸;所述先验框为采用k-means算法对所述目标训练数据集进行聚类处理得到的。

这里,针对目标训练数据集,采用k-means算法可以聚类出所参加训练的目标尺寸大致数值(即预测端所需要的先验框anchor box)。也就是说,在训练阶段,以该anchor box为基准,回归出目标的尺寸与该anchor box的缩放系数,可以加快网络收敛的速度,增强网络的回归精度。

在本发明实施例中,anchor box的数量可设为9。

(4)将所述行人预测结果和预设结果进行匹配,得到匹配结果。

可选地,在此步骤中,包括:将所述预测图中的预测框与预设结果进行匹配;根据匹配结果,将所述预测框中与所述预设结果的IOU(intersection over union,交并比)最大的预测框确定为第一预测框,将所述预测框中除第一预测框之外的预测框确定为第二预测框;其中,所述第一预测框用于目标训练;所述第二预测框用于背景类别的训练;所述预设结果为根据所述训练数据集中的行人图像数据标定的52×52的弱语义分割数据。

该实施例中,将预测结果(即行人预测结果)与预设结果(即标定的ground box)进行匹配,选择与ground box的IOU最大的预测框参与目标训练,包括目标类别、位置和尺寸,其余没有选中的预测框参与背景类别的训练。

(5)基于所述匹配结果,得到所述行人检测模型。

该实施例中,将上半身检测(即保留人体关键特征头部的基础上对人体部位随机遮挡后进行检测)加入到行人检测中进行联合训练,能提升行人检测的性能。因此,本发明实施例可以针对遮挡场景下的行人检测,采用弱语义分割与可形变卷积改进YOLOV3神经网络并进行训练,得到的行人检测模型可以有效避免误检或漏检,提高检测准确率。

需要说明的是,语义分割是将一个物体在像素级上与背景区分出来,所以要求参加训练的数据需要精确到像素级的标定,这是一个相当耗时耗力的工作。为了充分利用现有检测数据的标定信息,本发明实施例中,利用弱语义分割网络形成的darknet-53网络作为特征提取网络,用于在训练时提取行人特征。

具体的,针对三个不同尺度特征层,采用3个差异较小的弱语义分割网络用于辅助主干网络darknet-53的三个不同尺度特征图的训练,分别对应网络结构中的resx8、resx8和resx4,分别对应的尺度为52×52、26×26和13×13。目的是在训练过程中使主干网络提取的特征更能凸显出行人区域的特征,就像在黑夜用一束光打在行人上,使网络学习更具有目标性,收敛速度更快。具体操作如下:

关于制作训练数据集:将训练数据集上的box区域内的灰度值设为255作为前景,其余区域的灰度值全设为0作为背景,然后用这些训练数据集里的数据参与弱语义分割训练。

其中,在制作弱语义分割数据的过程中,在原图上对行人区域进行擦除,也就是将行人区域内的灰度值设为255,其他背景区域的灰度值设为0。这种处理方式,如果将图像不断地缩小,则人体实际所占像素的差距越来越小,因此,当缩到一定程度时与目标实际区域很接近时,如果进一步缩小,在训练过程中误差带有随机性,也就是训练不稳定,所以参与训练的弱语义分割数据需要选定一个合适的缩放系数,才能使得训练效果达到最优。本发明实施例中,将弱语义分割训练数据统一缩放到52×52的尺寸。

由于弱语义分割网络的输入特征来自主干网络中三个不同尺度的特征层,所以三个弱语义分割网络的网络结构有细微的差别。其中,如图2所示的52×52弱语义分割网络、如图3所示的26×26弱语义分割网络以及如图4所示的13×13弱语义分割网络,其分别对应的输入特征的尺寸为52×52、26×26、13×13。

需要说明的是,如图2至图4所示,输入res是来自主干网络中三个尺度特征层,输入deform conv是来自后面FPN中改进的可形变卷积输出;DECONV为反卷积操作,实质是上采样,为了将输出特征图的尺寸恢复到52×52;由于前景像素在整个图像像素中占有比重很小,容易导致正负样本不均衡,故采用focal loss损失函数计算预测类别与真值(groundtruth)之间的误差,与检测网络联合训练并用BSGD优化方法优化行人检测模型的参数。

该实施例中,在主干网络三个尺度特征层上引入弱语义分割辅助任务,而且不同尺度特征层上对应的弱语义分割网络不同,能够使得主干网络学习到的特征集中在人体区域,凸显人体特征。

可选地,在得到所述行人检测模型之后,所述模型训练方法还包括:修正所述行人检测模型的权重参数。

可选地,所述修正所述行人检测模型的权重参数,包括:

根据所述匹配结果,计算所述行人检测模型的损失值。

该步骤中,针对所述匹配结果中选中的参与目标训练的第一预测框和参与背景训练的第二预测框,计算与ground boxes的损失值LOSS。

根据所述损失值,通过反向传播,采用批量随机梯度下降BSGD算法优化损失函数,并修正所述行人检测模型的权重参数。

需要说明的是,为了评估模型拟合的好坏,通常用损失函数来度量拟合的程度。损失函数用来评价模型的预测值和真实值不一样的程度,而损失函数越好,通常模型的性能越好。因此,本发明实施例在训练过程中,采用批量随机梯度下降算法优化损失函数,反向传播更新行人检测模型中的权重,使得行人检测模型的拟合能力越来越强,对目标的类别分类和位置信息回归更为准确。

具体的,本发明实施例中,在检测任务的基础上加入弱语义分割任务,监督检测任务的学习,从而提升检测算法的性能。

在检测任务的基础上加入弱语义分割,然后进行联合训练时,联合任务损失函数Loss的计算方式如下:

Loss=λ

其中,Loss

由于弱语义分割只是用来辅助训练目标检测网络的,所以权重Loss

上述各个误差的具体定义如下:

其中,S

批量的行人图像数据先经过预处理阶段进行数据均衡处理(即进行数据扩充并缩放到固定尺寸),然后流入主干网络darknet-53提取特征,再经过类似FPN多尺度特征融合的网络和预测网络预测行人的类别、位置、大小和弱语义分割中前景置信度,再将预测值(即行人预测结果)与标定数据(即预设结果)输入到联合损失函数Loss中计算整个学习任务的损失值,最后采用批量随机梯度下降(BSGD)优化该损失函数并更新行人检测模型中的权重,最后使损失函数收敛在一个很小的范围内,从而整个行人检测模型到达一个最优的性能。

可选地,所述对所述训练数据集进行数据均衡处理,包括:对所述训练数据集进行预处理;根据预处理结果,对人体的部位进行遮挡处理;其中,所述人体的部位不包括头部。

这里,遮挡分为目标遮挡和非目标遮挡,目标遮挡就是指人与人之间存在相互遮挡,非目标遮挡是指背景遮挡人体的某一部分。由于遮挡在实际场景中属于异常现象,图像不容易采集,因此遮挡情况的图像数据在整个数据集中占有比重非常小。为了增强模型在遮挡场景的行人检测性能,必须平衡遮挡数据与非遮挡数据的数量。

本发明实施例中,在训练数据扩充过程中,采用人体部位随机遮挡方法,着重对遮挡数据的处理,扩充遮挡类型的数据,使遮挡与非遮挡类型数据均衡。

这里需要说明的是,在人体检测中,头部是人体最关键而且有别于其他物体的特征,在拥挤场景,人与人之间存在相互遮挡;而在监控领域,摄像头都架设的通常比人高,头部被遮挡的概率很低,而人体其他部位则较容易被遮挡,比如脚。所以在进行遮挡(bodyparts randomly covered)处理时,需要保留头部信息。也就是说,可以随机选择除头部以外的人体部位进行遮挡处理,例如,可以随机从行人之外的图像区域提取一个图像块来遮挡人体某个部位,比如左手、右腿之类的部位,其目的是在保留人体关键特征的基础上,丰富训练数据,使训练数据集更贴近应用场景,增强行人检测模型对遮挡场景的泛化能力和鲁棒性。

可选地,所述对所述训练数据集进行预处理,包括采用以下一种或者多种方式对所述训练数据集中的行人图像数据进行处理:随机剪切、随机翻转、色度调整和对比度调整。

该实施例中,通过对训练数据集进行预处理,可以扩充训练集,增加用于模型数据训练的数据的多样性。预处理采用的方式包括图片缩放、翻转、拉伸、亮度或颜色调整、对比度调整等,在此不再一一列举。

本申请一可选实施方式中,对基于YOLOV3神经网络的目标检测模型进行训练时,该目标检测模型的结构如图7所示:

其中,res表示残差结构,res后面的数字表示残差结构的个数。在该目标检测模型中,是在yolov3 darknet-53网络结构基础上加了两个网络结构,即弱语义分割网络和3x3高斯可形变卷积(GDConv)网络。该目标检测模型中,弱语义分割网络只在训练阶段起作用,用于辅助目标检测模型训练,使该目标检测模型相应的特征层更加关注行人区域特征,这样,既改进网络性能又不增加计算量。高斯形变卷积用于类似于行人非刚性物体检测,可以增强模型的泛化能力和鲁棒性。

综上所述,本发明实施例是基于YOLOV3算法,针对行人遮挡场景中误检率较高而导致的检测准确率不高的问题进行改进,主要通过添加一些辅助网络参与训练,从而提升行人检测模型的性能。具体实现方案主要包括:

在训练阶段,构建训练数据集时,为了均衡不同种类的行人图像数据,采用对人体部位进行遮挡处理等预处理的方式,对采集的行人图像数据进行均衡处理,更好地模拟了行人遮挡应用场景;

在用于特征提取的特征提取网络中,采用在主干网络darknet-53上加入辅助网络弱语义分割形成该特征提取网络,这样,可以凸显行人图像数据行人区域内的特征。而由于弱语义分割只在训练阶段参与计算并影响整个网络的权重更新,因此不会增加测试阶段的计算量;

对于多尺度特征融合的网络,采用在FPN网络中将标准卷积替换为带有弱语义分割的可形变卷积,其目的是在增加少量计算量的情况下能够更好地将参与训练的特征聚集在人体区域,提高行人检测模型对极端场景的鲁棒性,相应地减少了误检情况。

本申请适用于智能视频监控领域、自动驾驶领域和短视频领域等,可行有效。本发明实施例中,对网络的改造只给测试阶段增加少量的计算量,既提高了检测任务的性能,又增加少量的计算量,“性价比”高。增加一个弱语义分割任务,增加了网络结构,最终使得参与训练的损失函数也会增加弱语义分割对应的损失函数。

如图8所示,为本发明实施例的模型训练方法的流程示意图。该方法可包括:

步骤801:进行数据采集,采集行人图像数据。

本步骤中,可以利用监控摄像头等拍摄设备,采集行人在拍摄设备拍摄下的不同角度、姿势、光线和不同地点的行人图像。

步骤802:进行图像预处理,即对行人图像数据进行均衡扩充,利用所述行人图像数据构建训练数据集。

该步骤中,通过人体部位随机遮挡技术,通过对行人图像数据进行数据均衡处理,从而丰富训练数据,增强行人检测模型对遮挡场景的泛化能力和鲁棒性。

步骤803:采用k-means算法对所述目标训练数据集进行聚类处理得到anchorbox;

步骤804:使用改进的darknet-53网络提取行人特征,该darknet-53网络利用弱语义分割网络形成。这样,可以使网络学习更具有目标性,收敛速度更快。

步骤805:利用改进的多尺度融合联合预测,即利用多尺度特征融合的网络进行行人预测,得到行人预测结果。

在此步骤中,包括:利用所述多尺度特征融合的网络,将行人特征进行处理,得到处理结果,所述处理包括:特征融合、分类和回归;利用先验框,对处理结果进行目标预测,获得三种尺度的预测图;其中,所述预测图中的预测框包括类别、位置和尺寸。

步骤806:将所述行人预测结果和预设结果进行匹配,即预测框与ground box进行匹配。

该实施例中,将预测结果(即行人预测结果)与预设结果(即标定的ground box)进行匹配,选择与ground box的IOU最大的预测框参与目标训练,包括目标类别、位置和尺寸,其余没有选中的预测框参与背景类别的训练。

步骤807:根据匹配结果,计算所述行人检测模型的损失值LOSS;

步骤808:优化损失函数,反向传播修正行人检测模型的权重参数。

本发明实施例在训练过程中,采用批量随机梯度下降算法优化损失函数,反向传播更新行人检测模型中的权重,使得行人检测模型的拟合能力越来越强,对目标的类别分类和位置信息回归更为准确。

本发明实施例中,在数据扩充阶段采用人体部位随机遮挡技术,增加数据的多样性,均衡数据种类,使行人检测模型在遮挡场景的性能有明显的提升,能够使得行人检测算法的主要评估指标mAP大概提高2%;通过引入弱语义分割辅助分支,使行人检测模型的检测率提高3%以上;在检测中引入高斯可形变卷积,使mAP提高了5%;在与训练集完全不一样的场景,算法的鲁棒性有明显的提升,经工程应用测试mAP可提升10%。

如图9所示,本发明实施例还提供了一种行人检测方法,包括以下步骤:

步骤901:采集待检测的图像。

本步骤中,可以利用监控摄像头等拍摄设备,采集行人在拍摄设备拍摄下的不同角度、姿势、光照、距离和不同地点的行人图像作为待检测的图像。其中,待检测的图像包括行走、蹲、弯腰、站立等不同姿势的行人图像,以及与拍摄设备之间存在不同距离和不同遮挡情况的行人图像。

步骤902:对所述待检测的图像进行预处理,得到目标检测图像。

可选地,所述对所述待检测的图像进行预处理,包括采用以下一种或者多种方式对所述待检测的图像进行处理:随机剪切、随机翻转、色度调整、对比度调整和缩放。其中,待检测的图像需要缩放到网络所需要的图像尺寸。

步骤903:提取所述目标检测图像中的行人特征。

本步骤中,将步骤902中得到的目标检测图像输入到darknet-53网络提取行人特征。

步骤904:根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果;其中,所述多尺度特征融合的网络利用高斯可形变卷积形成。

可选地,所述根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果,包括:

利用多尺度特征融合的网络,对所述行人特征进行特征处理,得到处理结果,所述处理包括:特征融合、分类和回归;

基于所述处理结果,利用先验框进行行人预测,获得预测框;

在所述预测框的置信度大于置信度阈值的情况下,保留所述预测框;在预测框的置信度小于或等于置信度阈值的情况下,删除所述预测框;

根据所述预测框,获得预测结果。

该实施例中,使用在训练阶段通过聚类所获得的anchor box、类似FPN多尺度特征融合的网络和可形变卷积网络预测是否是目标(即置信度)、目标类型以及目标的位置和尺寸信息。

其中,置信度阈值可根据具体情况进行标定,例如,置信度阈值为0.5时,则是否是目标的置信度为0.5,将置信度大于0.5的预测框保留,删除其余的预测框(即置信度小于或等于0.5的预测框)。

本发明实施例中,多尺度特征融合的网络利用高斯可形变卷积网络形成。对CNN来说,不同尺度的物体在同一图像中具有相同的感受野,尤其两个尺寸相同的非刚性物体所占像素数量差别很大。为了减少这些因素的影响,通用的做法是增加训练数据集的丰富度,但并不能涵盖物体所有空间形变的可能,同时增加了训练时间。本申请采用一个改进的可形变卷积结构,其作用是将参与卷积运算的特征聚集在目标区域,但在目标区域内的特征的置信度并不是一样的,离目标中心越远的特征点置信度越低,呈现一个高斯分布,所以我们只需要找到反映该分布的特征,而我们在训练弱语义分割网络的时候输出的特征就呈现高斯分布,离目标中心越近的特征点是目标的置信度更高。

如图5所示,为可形变卷积的网络结构,可形变卷积的计算公式如下:

需要说明的是,可形变卷积针对非刚性物体检测性能有很大的提升,经实验验证,串联两个可形变卷积结构会取得性价比高的效果,但是在CPU上可形变卷积操作会很慢。因此,本发明实施例中,对可形变卷积结构进行改进,这样,既能减少计算量,又能提升检测效果,提高模型的鲁棒性。

高斯可形变卷积计算公式如下:

对于3*3卷积核来说,R={(-1,-1),(-1,0),(-1,1),(0,-1),(0,0),(0,1),(1,-1),(1,0),(1,1)},P

如图6所示,为高斯可形变卷积的网络结构。其中,1x1CONV输出的就是公式中的ΔP

这里,1x1CONV的作用是将特征图上参加训练的特征点尽量聚集在目标区域;3x3CONV通过弱语义分割辅助,进一步“关注”目标区域,通过弱语义分割辅助训练,3x3CONV特征图上在目标区域的概率分布呈现高斯分布,也就是离目标中心越远的点,权重越小;sigmoid的作用是归一化权重,限定学习范围,使得收敛更快。

在本发明的基础上,可以将可形变卷积替换成性能更优越的一些层。

可选地,所述根据所述预测框,获得预测结果,包括:采用非极大值抑制NMS算法,删除所述预测框中定位不符合预设要求的预测框,将剩余的预测框确定为目标预测框;根据所述目标预测框,获得预测结果;其中,所述预测结果包括所述目标预测框对应的类别、位置和尺寸。

需要说明的是,由于测试中anchor box数量的选择等问题,同一个目标可能会输出多个相似的预测边界框,这样不仅不简洁,而且会增加计算量。为了解决这个问题,本发明实施例中采用非极大值抑制NMS方法,删除一些不符合预设要求的预测框,最后输出目标的预测框。其中,不符合预设要求的预测框,可能是定位不准确或者重叠的预测框;所述预测结果包括所述目标预测框对应的类别(confidence)、位置(xy)和尺寸(wh)。

如图10所示,为本发明实施例的行人训练方法的流程示意图,该方法包括:

步骤1001:进行数据采集,得到待检测的图像。

该步骤中,可以利用监控摄像头等拍摄设备,采集行人在拍摄设备拍摄下的不同角度、姿势、光照、距离和不同地点的行人图像作为待检测的图像。

步骤1002:进行图像预处理,可以得到目标检测图像。

该步骤中,进行图像预处理包括采用以下一种或者多种方式对所述待检测的图像进行处理:随机剪切、随机翻转、色度调整、对比度调整和缩放。

步骤1003:采用darknet-53网络提取行人特征;

步骤1004:利用改进的多尺度融合联合预测,即利用多尺度特征融合的网络进行行人预测,并输出预测结果;这里,所述多尺度特征融合的网络利用高斯可形变卷积形成。

该步骤包括:利用多尺度特征融合的网络,对行人特征进行特征处理,得到处理结果,进行特征处理包括:特征融合、分类和回归;基于所述处理结果,利用先验框进行行人预测,获得预测框;在预测框的置信度对预测框进行保留或删除,最终获得预测结果。

步骤1005:采用非极大值抑制NMS算法,删除预测框中定位不符合预设要求的预测框,获得检测结果,输出检测结果。其中,不符合预设要求的预测框,包括定位不准确或者重叠的预测框等。

本发明实施例中,通过引入高斯可形变卷积,提高了行人检测模型的mAP,提升了行人检测模型的鲁棒性。

如图11所示,本发明实施例还提供了一种模型训练装置,包括:

数据采集模块1101,用于采集行人图像数据,并利用所述行人图像数据构建训练数据集;

数据训练模块1102,用于使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型;其中,所述目标检测模型包括特征提取网络和多尺度特征融合的网络,所述多尺度特征融合的网络利用高斯可形变卷积网络形成。

可选地,所述数据训练模块1102包括:

数据均衡子模块,用于对所述训练数据集进行数据均衡处理,得到目标训练数据集;

特征提取子模块,用于将所述目标训练数据集输入到所述特征提取网络中,得到所述目标训练数据集的行人特征;

图像预测子模块,用于将所述行人特征输入到所述多尺度特征融合的网络中,得到行人预测结果;

数据匹配子模块,用于将所述行人预测结果和预设结果进行匹配,得到匹配结果;

检测模型子模块,用于基于所述匹配结果,得到所述行人检测模型。

可选地,所述特征提取子模块包括:

特征图单元,用于采取边卷积边向上采样的方式,将所述目标训练数据集中的目标训练图像分为52×52、26×26和13×13三个尺度的特征图;

其中,所述目标训练图像为所述目标训练数据集中的任一图像;所述特征提取网络为利用弱语义分割网络形成的darknet-53网络。

可选地,所述图像预测子模块包括:

处理单元,用于利用所述多尺度特征融合的网络,分别将所述三个尺度的特征图进行处理,得到处理结果,所述处理包括:特征融合、分类和回归;

预测单元,用于利用先验框,对所述处理结果进行目标预测,获得三种尺度的预测图;其中,所述预测图中的预测框包括类别、位置和尺寸;所述先验框为采用k-means算法对所述目标训练数据集进行聚类处理得到的。

可选地,所述数据匹配子模块包括:

匹配单元,用于将所述预测图中的预测框与预设结果进行匹配;

确定单元,用于根据匹配结果,将所述预测框中与所述预设结果的交并比IOU最大的预测框确定为第一预测框,将所述预测框中除第一预测框之外的预测框确定为第二预测框;其中,所述第一预测框用于目标训练;所述第二预测框用于背景类别的训练;所述预设结果为根据所述训练数据集中的行人图像数据标定的52×52的弱语义分割数据。

可选地,在得到所述行人检测模型之后,所述模型训练装置还包括:

修正模块,用于修正所述行人检测模型的权重参数。

可选地,所述修正模块包括:

计算子模块,用于根据所述匹配结果,计算所述行人检测模型的损失值;

修正子模块,用于根据所述损失值,通过反向传播,采用批量随机梯度下降BSGD算法优化损失函数,并修正所述行人检测模型的权重参数。

可选地,所述数据均衡子模块包括:

预处理单元,用于对所述训练数据集进行预处理;

遮挡处理单元,用于根据预处理结果,对人体的部位进行遮挡处理;其中,所述人体的部位不包括头部。

可选地,所述对所述训练数据集进行预处理,包括采用以下一种或者多种方式对所述训练数据集中的行人图像数据进行处理:

随机剪切、随机翻转、色度调整和对比度调整。

本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。

如图12所示,本发明实施例还提供了一种行人检测装置,包括:

图像采集模块1201,用于采集待检测的图像;

图像处理模块1202,用于对所述待检测的图像进行预处理,得到目标检测图像;

特征提取模块1203,用于提取所述目标检测图像中的行人特征;

行人检测模块1204,用于根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果;其中,所述多尺度特征融合的网络利用高斯可形变卷积形成。

可选地,所述行人检测模块1204包括:

特征处理子模块,用于利用多尺度特征融合的网络,对所述行人特征进行特征处理,得到处理结果,所述处理包括:特征融合、分类和回归;

行人预测子模块,用于基于所述处理结果,利用先验框进行行人预测,获得预测框;

预测框处理子模块,用于在所述预测框的置信度大于置信度阈值的情况下,保留所述预测框;在预测框的置信度小于或等于置信度阈值的情况下,删除所述预测框;

结果预测子模块,用于根据所述预测框,获得预测结果。

可选地,所述结果预测子模块包括:

第一处理单元,用于采用非极大值抑制NMS算法,删除所述预测框中定位不符合预设要求的预测框,将剩余的预测框确定为目标预测框;

第二处理单元,用于根据所述目标预测框,获得预测结果;其中,所述预测结果包括所述目标预测框对应的类别、位置和尺寸。

可选地,所述对所述待检测的图像进行预处理,包括采用以下一种或者多种方式对所述待检测的图像进行处理:

随机剪切、随机翻转、色度调整、对比度调整和缩放。

本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。

如图13所示,本发明实施例还提供一种电子设备,所述电子设备包括收发机1303、处理器1301、存储器1302及存储在所述存储器1302上并可在所述处理器1301上运行的计算机程序,所述处理器1301读取存储器1302中的程序,执行下列过程:

采集行人图像数据,并利用所述行人图像数据构建训练数据集;

使用所述训练数据集,对基于YOLOV3神经网络的目标检测模型进行训练,得到行人检测模型;

其中,所述目标检测模型包括特征提取网络和多尺度特征融合的网络,所述多尺度特征融合的网络利用高斯可形变卷积网络形成。

处理器1301还用于读取所述计算机程序,执行如下步骤:

对所述训练数据集进行数据均衡处理,得到目标训练数据集;

将所述目标训练数据集输入到所述特征提取网络中,得到所述目标训练数据集的行人特征;

将所述行人特征输入到所述多尺度特征融合的网络中,得到行人预测结果;

将所述行人预测结果和预设结果进行匹配,得到匹配结果;

基于所述匹配结果,得到所述行人检测模型。

处理器1301还用于读取所述计算机程序,执行如下步骤:

采取边卷积边向上采样的方式,将所述目标训练数据集中的目标训练图像分为52×52、26×26和13×13三个尺度的特征图;

其中,所述目标训练图像为所述目标训练数据集中的任一图像;所述特征提取网络为利用弱语义分割网络形成的darknet-53网络。

处理器1301还用于读取所述计算机程序,执行如下步骤:

利用所述多尺度特征融合的网络,分别将所述三个尺度的特征图进行处理,得到处理结果,所述处理包括:特征融合、分类和回归;

利用先验框,对所述处理结果进行目标预测,获得三种尺度的预测图;

其中,所述预测图中的预测框包括类别、位置和尺寸;

所述先验框为采用k-means算法对所述目标训练数据集进行聚类处理得到的。

处理器1301还用于读取所述计算机程序,执行如下步骤:

将所述预测图中的预测框与预设结果进行匹配;

根据匹配结果,将所述预测框中与所述预设结果的交并比IOU最大的预测框确定为第一预测框,将所述预测框中除第一预测框之外的预测框确定为第二预测框;

其中,所述第一预测框用于目标训练;所述第二预测框用于背景类别的训练;所述预设结果为根据所述训练数据集中的行人图像数据标定的52×52的弱语义分割数据。

处理器1301还用于读取所述计算机程序,执行如下步骤:

修正所述行人检测模型的权重参数。

处理器1301还用于读取所述计算机程序,执行如下步骤:

根据所述匹配结果,计算所述行人检测模型的损失值;

根据所述损失值,通过反向传播,采用批量随机梯度下降BSGD算法优化损失函数,并修正所述行人检测模型的权重参数。

处理器1301还用于读取所述计算机程序,执行如下步骤:

对所述训练数据集进行预处理;

根据预处理结果,对人体的部位进行遮挡处理;其中,所述人体的部位不包括头部。

处理器1301还用于读取所述计算机程序,执行如下步骤:

随机剪切、随机翻转、色度调整和对比度调整。

再次参照图13,在本申请的一个实施例中,所述电子设备包括收发机1303、处理器1301、存储器1302及存储在所述存储器1302上并可在所述处理器1301上运行的计算机程序,所述处理器1301读取存储器1302中的程序,执行下列过程:

采集待检测的图像;

对所述待检测的图像进行预处理,得到目标检测图像;

提取所述目标检测图像中的行人特征;

根据所述行人特征,利用多尺度特征融合的网络进行行人预测,并输出预测结果;

其中,所述多尺度特征融合的网络利用高斯可形变卷积形成。

处理器1301还用于读取所述计算机程序,执行如下步骤:

利用多尺度特征融合的网络,对所述行人特征进行特征处理,得到处理结果,所述处理包括:特征融合、分类和回归;

基于所述处理结果,利用先验框进行行人预测,获得预测框;

在所述预测框的置信度大于置信度阈值的情况下,保留所述预测框;在预测框的置信度小于或等于置信度阈值的情况下,删除所述预测框;

根据所述预测框,获得预测结果。

处理器1301还用于读取所述计算机程序,执行如下步骤:

采用非极大值抑制NMS算法,删除所述预测框中定位不符合预设要求的预测框,将剩余的预测框确定为目标预测框;

根据所述目标预测框,获得预测结果;其中,所述预测结果包括所述目标预测框对应的类别、位置和尺寸。

处理器1301还用于读取所述计算机程序,执行如下步骤:

随机剪切、随机翻转、色度调整、对比度调整和缩放。

其中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器1301代表的一个或多个处理器1301和存储器1302代表的存储器1302的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机1303可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器1301负责管理总线架构和通常的处理,存储器1302可以存储处理器在执行操作时所使用的数据。

本领域技术人员可以理解,实现上述实施例的全部或者部分步骤可以通过硬件来完成,也可以通过计算机程序来指示相关的硬件来完成,所述计算机程序包括执行上述方法的部分或者全部步骤的指令;且该计算机程序可以存储于一可读存储介质中,存储介质可以是任何形式的存储介质。

另外,本发明具体实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一种模型训练方法的步骤,或者实现上述任一种行人检测方法的步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。

相关技术
  • 模型训练方法、行人检测方法、电子设备及可读存储介质
  • 模型训练方法、目标检测方法、装置、电子设备及可读存储介质
技术分类

06120112900106