一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于多等级特征融合的人群计数方法及装置

2022-04-16 12:54:06 来源:中国专利 TAG:


1.本发明涉及人群计数领域,尤其涉及一种基于多等级特征融合的人群计数方法及装置。


背景技术:

2.人群计数主要用于估计人群数量以及人群分布情况,通常可以分为传统的人群计数方法以及基于卷积神经网络的方法。传统的人群计数方法又可细分为基于检测的人群计数方法和基于回归的人群计数方法。在基于检测的人群计数方法中,主要做法是先通过人群图像提取到行人的特征,之后用提取到的特征去训练分类器,从而可以识别出人群图像中的行人,之后对其进行统计,便可以估算出人群图像中的人群数量。该方法在人群极为稀疏的场景下会有较好的效果,但一旦场景中行人增多,行人身体部位存在遮挡时,计数效果就会急剧下降。在基于回归的人群计数中,通过回归模型的学习,直接将图像特征与人群数量进行映射来得到图像的人群数量。基于卷积神经网络的人群计数方法是目前人群计数的主流方法。虽然目前基于卷积神经网络的人群计数方法取得了不错的成绩,但是仍然存在背景干扰的问题。zhang等人提出的mcnn中,使用三列卷积核去提取大、中、小三种不同尺度大小的行人特征,之后将它们融合得到最终的人群特征去生成人群密度图。sam等人提出的switch-cnn中先将人群图像分割为3*3的9个部分,然后通过一个switch网络将这些图像块根据密度大小分为三类,并分别放入对应的网络中进行训练学习。但是上述方法由于多次使用卷积操作,丢失了很多的细节特征,使得网络对小目标的识别准确度比较低。


技术实现要素:

3.为了克服已有技术存在的缺点,本发明提供了一种基于多等级特征融合的人群计数方法及装置,本发明将不同等级的细节特征融合到不同等级的语义特征的优点,有效的提高人群计数的准确性。
4.为了达到上述目的,本发明采用以下技术方案:
5.根据本发明的第一方面,提供一种基于多等级特征融合的人群计数方法,包括以下步骤:
6.数据预处理:根据用于人群计数的公开数据集中图像以及其对应的人头中心点二维坐标标记生成真实人群密度图,所述真实人群密度图用于网络训练;
7.构建多等级特征融合网络,将需要进行行人数量估计的人群图像输入到所述多等级特征融合网络中,输出预测人群密度图;
8.所述多等级特征融合网络分为前端和后端两部分,所述前端部分用于提取细节特征,并根据网络深度将前端分为三个不同等级细节特征提取层去提取不同等级的细节特征,所述后端部分用于提取语义特征,并根据网络深度将后端分为三个不同等级语义特征提取层去提取不同等级的语义特征,将不同等级的细节特征不同程度地融合到不同等级的语义特征中,最终通过卷积操作得到预测人群密度图;
9.所述前端部分基于vgg16网络,并且根据网络深度分为三个不同等级细节特征提取层,第一等级细节特征提取层为vgg16网络的1到4层,提取得到第一等级细节特征a1,第二等级细节特征提取层为vgg16网络的1到7层,提取得到第二等级细节特征a2,第三等级细节特征提取层为vgg16网络的1到10层,提取得到第三等级细节特征a3;
10.所述后端部分由3个融合层和6个残差块(residual block,rb)组成,并且根据网络深度分为三个不同等级语义特征提取层,第一等级语义特征提取层是前端网络后接一个残差块构成,提取得到第一等级语义特征b1,之后通过第一个融合层将第一等级细节特征提取层提取的第一等级细节特征a1与第一等级语义特征提取层提取的第一等级语义特征b1进行融合,得到融合特征h1,所述融合层为通道拼接操作,h1过程如下:
11.h1=c
cat
(a1,b1)
12.其中c
cat
表示通道拼接操作;第二等级语义特征提取层是第一个融合层后接两个残差块构成,提取得到第二等级语义特征,之后通过第二个融合层将第二等级语义特征、第二等级细节特征、第三等级细节特征进行融合,得到融合特征h2,h2过程如下:
13.h2=c
cat
(a2,a3,c
rb
(h1))
14.其中c
rb
表示残差块特征映射关系;第三等级语义特征提取层是第二个融合层后接三个残差块构成,提取得到第三等级语义特征,之后通过第三个融合层将第三等级语义特征、第一等级细节特征、第二等级细节特征进行融合,得到融合特征h3,h3过程如下:
15.h3=c
cat
(a1,a2,c
rb
(h2))
16.将融合特征h3通过1
×
1的卷积层操作后生成预测人群密度图;
17.通过欧几里得损失函数将所述预测人群密度图和所述真实人群密度图进行比较得到网络损失大小,使用反向传播对网络参数进行不断更新,直到得到合适的网络参数,训练得到最终的网络模型;
18.将需要估计行人数量的人群图像输入训练好的网络模型中,得到人群密度图,对该图进行逐像素积分,即将该图中所有像素点的数值进行加和,得到图像中行人数量的估计值,即预测的人群总数。
19.进一步地,所述真实人群密度图表示为:
[0020][0021]
其中,n代表人群图像中标记人数,xi代表第i个人的人头中心点二维坐标标记位置,x代表人群图像中除人头之外的其他像素的位置,δ(x-xi)表示冲击函数,表示标准差为σi的自适应高斯核,其中β是权重参数,表示xi与其近邻的几个人头之间的平均距离。
[0022]
进一步地,所述方法还包括数据增强步骤,具体为:首先将数据集中的图像进行灰度化处理,然后在每一张灰度图随机裁剪出9张四分之一原图大小的子样本图像,并将它们进行随机旋转和翻转后作为训练集。
[0023]
进一步地,所述使用反向传播对网络参数进行不断更新,训练得到最终的网络模型,具体步骤包括:
[0024]
基于pytorch深度学习框架训练,使用欧几里得损失函数得到网络训练误差,欧几
里得损失函数定义为:
[0025][0026]
其中,m表示所用训练集的大小,θ表示网络参数,xk表示输入的第k张图片,dk,d(xk;θ)分别表示图像xk的真实人群密度图和通过网络训练后生成的预测人群密度图;
[0027]
通过反向传播以及梯度下降对网络模型参数进行更新;
[0028]
设置适当大小的训练轮次,当训练轮次达到设定大小时,训练结束,获得最终的网络模型参数。
[0029]
根据本发明的第二方面,提供一种基于多等级特征融合的人群计数装置,包括数据处理模块、多等级特征融合网络构建模块、网络训练模块和行人数量统计模块;
[0030]
所述数据处理模块用于进行数据处理:根据用于人群计数的公开数据集中图像以及其对应的人头中心点二维坐标标记生成真实人群密度图,所述真实人群密度图用于网络训练;
[0031]
所述多等级特征融合网络构建模块用于构建多等级特征融合网络,将需要进行行人数量估计的人群图像输入到所述多等级特征融合网络中,输出预测人群密度图;
[0032]
所述多等级特征融合网络分为前端和后端两部分,所述前端部分用于提取细节特征,并根据网络深度将前端分为三个不同等级细节特征提取层去提取不同等级的细节特征,所述后端部分用于提取语义特征,并根据网络深度将后端分为三个不同等级语义特征提取层去提取不同等级的语义特征,将不同等级的细节特征不同程度地融合到不同等级的语义特征中,最终通过卷积操作得到预测人群密度图;
[0033]
所述网络训练模块用于将所述真实人群密度图和预测人群密度图通过欧几里得损失函数得到网络误差,然后通过反向传播进行网络参数的更新,训练得到最终的网络模型;
[0034]
所述行人数量统计模块用于将需要进行行人数数量估计的人群图像输入到最终的网络模型中,输出得到人群密度图,然后对该图进行逐像素积分,即把该图中所有像素点的数值进行加和,得到图像中行人数量的估计值,即预测的人群总数。
[0035]
进一步地,所述多等级特征融合网络的前端部分基于vgg16网络,并且根据网络深度分为三个不同等级细节特征提取层,第一等级细节特征提取层为vgg16网络的1到4层,提取得到第一等级细节特征a1,第二等级细节特征提取层为vgg16网络的1到7层,提取得到第二等级细节特征a2,第三等级细节特征提取层为vgg16网络的1到10层,提取得到第三等级细节特征a3;
[0036]
所述后端部分由3个融合层和6个残差块(residual block,rb)组成,并且根据网络深度分为三个不同等级语义特征提取层,第一等级语义特征提取层是前端网络后接一个残差块构成,提取得到第一等级语义特征b1,之后通过第一个融合层将第一等级细节特征提取层提取的第一等级细节特征a1与第一等级语义特征提取层提取的第一等级语义特征b1进行融合,得到融合特征h1,所述融合层为通道拼接操作,h1过程如下:
[0037]
h1=c
cat
(a1,b1)
[0038]
其中c
cat
表示通道拼接操作;第二等级语义特征提取层是第一个融合层后接两个
残差块构成,提取得到第二等级语义特征,之后通过第二个融合层将第二等级语义特征、第二等级细节特征、第三等级细节特征进行融合,得到融合特征h2,h2过程如下:
[0039]
h2=c
cat
(a2,a3,c
rb
(h1))
[0040]
其中c
rb
表示残差块特征映射关系;第三等级语义特征提取层是第二个融合层后接三个残差块构成,提取得到第三等级语义特征,之后通过第三个融合层将第三等级语义特征、第一等级细节特征、第二等级细节特征进行融合,得到融合特征h3,h3过程如下:
[0041]
h3=c
cat
(a1,a2,c
rb
(h2))
[0042]
将融合特征h3通过1
×
1的卷积层操作后生成预测人群密度图。
[0043]
根据本发明的第三方面,提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述基于多等级特征融合的人群计数方法的步骤。
[0044]
根据本发明的第四方面,提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述基于多等级特征融合的人群计数方法的步骤。
[0045]
本发明的有益效果是:由于浅层网络的细节特征利于识别小尺度的行人特征,所以本发明将前端网络根据网络深度分为不同的等级去提取得到不同程度的细节特征,从而更好的识别小尺度的行人;由于深层网络的语义特征利于识别大尺度的行人信息,所以本发明将后端网络根据网络深度分为不同的等级去提取得到不同程度的语义特征,然后将不同等级的细节特征与不同等级的语义特征进行融合,使网络兼顾利于小尺度行人识别的细节特征和利于大尺度行人识别的语义特征,从而能更好的识别大、小尺度的行人,由此提高网络计数性能。
附图说明
[0046]
图1为本发明实施例提供的多等级特征融合网络构结构示意图;
[0047]
图2为本发明网络训练流程图。
具体实施方式
[0048]
下面结合附图与实施例对本公开作进一步说明。
[0049]
实施例1
[0050]
本实施例提供一种基于多等级特征融合的人群计数方法,包括下述步骤:
[0051]
s1:数据预处理
[0052]
下载公开的人群计数所用的人群数据集,该人群数据集中图像均为rgb三通道的彩色图像,并且每张图像中所包含的人头都进行了二维坐标标注,通过图像以及人头标注信息为数据集中的每张图生成相对应的真实人群密度图,该图用于网络的训练;
[0053]
真实人群密度图的生成表达式为:
[0054][0055]
其中,n代表人群图像中标记人数,xi代表第i个人的人头中心点二维坐标标记位
置,x代表人群图像中除人头之外的其他像素的位置,δ(x-xi)表示冲击函数,表示标准差为σi的自适应高斯核,其中β是权重参数,通常情况下β=0.3,表示xi与其近邻的几个人头之间的平均距离。
[0056]
在本实施例中,通过以下方式进行数据增强:
[0057]
首先将数据集中的图像进行灰度化处理,然后在每一张灰度图随机裁剪出9张四分之一原图大小的子样本图像,并将它们进行随机旋转和翻转后作为训练集。
[0058]
s2:构建多等级特征融合网络,将需要进行行人数量估计的人群图像输入到所述多等级特征融合网络中,输出预测人群密度图;
[0059]
如图1所示,多等级特征融合网络的构造过程如下:
[0060]
多等级特征融合网络将网络分为前端和后端两部分,前端部分用于提取细节特征,并根据网络深度将前端分为三个不同等级细节特征提取层去提取不同等级的细节特征,后端部分用于提取语义特征,并根据网络深度将后端分为三个不同等级语义特征提取层去提取不同等级的语义特征,将不同等级的细节特征不同程度地融合到不同等级的语义特征中,最终通过卷积操作得到预测人群密度图。
[0061]
前端部分基于vgg16网络,并且根据网络深度分为三个不同等级细节特征提取层,第一等级细节特征提取层为vgg16网络的1到4层,提取得到第一等级细节特征a1,第二等级细节特征提取层为vgg16网络的1到7层,提取得到第二等级细节特征a2,第三等级细节特征提取层为vgg16网络的1到10层,提取得到第三等级细节特征a3;
[0062]
后端部分由3个融合层和6个残差块(residual block,rb)组成,并且根据网络深度分为三个不同等级语义特征提取层,第一等级语义特征提取层是前端网络后接一个残差块构成,提取得到第一等级语义特征b1,之后通过第一个融合层将第一等级细节特征提取层提取的第一等级细节特征a1与第一等级语义特征提取层提取的第一等级语义特征b1进行融合,得到融合特征h1,所述融合层为通道拼接操作,h1过程如下:
[0063]
h1=c
cat
(a1,b1)
[0064]
其中c
cat
表示通道拼接操作;第二等级语义特征提取层是第一个融合层后接两个残差块构成,提取得到第二等级语义特征,之后通过第二个融合层将第二等级语义特征、第二等级细节特征、第三等级细节特征进行融合,得到融合特征h2,h2过程如下:
[0065]
h2=c
cat
(a2,a3,c
rr
(h1))
[0066]
其中c
rb
表示残差块特征映射关系;第三等级语义特征提取层是第二个融合层后接三个残差块构成,提取得到第三等级语义特征,之后通过第三个融合层将第三等级语义特征、第一等级细节特征、第二等级细节特征进行融合,得到融合特征h3,h3过程如下:
[0067]
h3=c
cat
(a1,a2,c
rb
(h2))
[0068]
将融合特征h3通过1
×
1的卷积层操作后生成预测人群密度图;
[0069]
通过欧几里得损失函数将所述预测人群密度图和所述真实人群密度图进行比较得到网络损失大小,使用反向传播对网络参数进行不断更新,直到得到合适的网络参数,训练得到最终的网络模型;
[0070]
s3:通过欧几里得损失函数将预测人群密度图和真实人群密度图进行比较得到网
络损失大小,使用反向传播对网络参数进行不断更新,直到得到合适的网络参数,训练得到最终的网络模型;在本实施例中,网络训练过程如下:
[0071]
基于pytorch深度学习框架训练,训练使用的优化器为adam,使用欧几里得损失函数得到网络训练误差,欧几里得损失函数定义为:
[0072][0073]
其中,m表示所用训练集的大小,θ表示网络参数,xk表示输入的第k张图片,dk,d(xk;θ)分别表示图像xk的真实人群密度图和通过网络训练后生成的预测人群密度图;
[0074]
通过反向传播以及梯度下降对网络模型参数进行更新;
[0075]
将训练轮次设置为2000,batch size设置为2,当训练轮次达到设定值时,网络训练结束,获得本次训练中网络模型的最佳参数,图2为训练流程。
[0076]
s4:将需要估计行人数量的人群图像输入训练好的网络模型中,得到人群密度图,对该图进行逐像素积分,即将该图中所有像素点的数值进行加和,得到图像中行人数量的估计值,即预测的人群总数。
[0077]
同时采用平均绝对误差(mean absolute error,mae)和均方根误差(root mean squared error,mse)对网络效果进行评估。其计算公式如下:
[0078][0079][0080]
其中,s表示一个训练批次中的图像数量,表示第y张图图像中行人数量的真实值,cy表示表示第y张图像通过网络作用后得到的图像中行人数量的估计值。mae或mse值越小,则表明网络效果越好。
[0081]
结合表1可知,本发明通过将不同等级的细节特征不同程度的融合到不同语义特征中,有效提高了人群计数的准确度。
[0082]
表1网络效果评估表
[0083][0084]
实施例2
[0085]
本实施例提供一种基于多等级特征融合的人群计数装置,该装置包括数据处理模块、多等级特征融合网络构建模块、网络训练模块和行人数量统计模块;
[0086]
数据处理模块用于进行数据处理:根据用于人群计数的公开数据集中图像以及其
对应的人头中心点二维坐标标记生成真实人群密度图,真实人群密度图用于网络训练;
[0087]
多等级特征融合网络构建模块用于构建多等级特征融合网络,将需要进行行人数量估计的人群图像输入到多等级特征融合网络中,输出预测人群密度图;
[0088]
多等级特征融合网络分为前端和后端两部分,前端部分用于提取细节特征,并根据网络深度将前端分为三个不同等级细节特征提取层去提取不同等级的细节特征,后端部分用于提取语义特征,并根据网络深度将后端分为三个不同等级语义特征提取层去提取不同等级的语义特征,将不同等级的细节特征不同程度地融合到不同等级的语义特征中,最终通过卷积操作得到预测人群密度图;
[0089]
网络训练模块用于将所述真实人群密度图和预测人群密度图通过欧几里得损失函数得到网络误差,然后通过反向传播进行网络参数的更新,训练得到最终的网络模型;
[0090]
行人数量统计模块用于将需要进行行人数数量估计的人群图像输入到最终的网络模型中,输出得到人群密度图,然后对该图进行逐像素积分,即把该图中所有像素点的数值进行加和,得到图像中行人数量的估计值,即预测的人群总数。
[0091]
本实施例中,多等级特征融合网络的前端部分基于vgg16网络,并且根据网络深度分为三个不同等级细节特征提取层,第一等级细节特征提取层为vgg16网络的1到4层,提取得到第一等级细节特征a1,第二等级细节特征提取层为vgg16网络的1到7层,提取得到第二等级细节特征a2,第三等级细节特征提取层为vgg16网络的1到10层,提取得到第三等级细节特征a3;
[0092]
后端部分由3个融合层和6个残差块(residual block,rb)组成,并且根据网络深度分为三个不同等级语义特征提取层,第一等级语义特征提取层是前端网络后接一个残差块构成,提取得到第一等级语义特征b1,之后通过第一个融合层将第一等级细节特征提取层提取的第一等级细节特征a1与第一等级语义特征提取层提取的第一等级语义特征b1进行融合,得到融合特征h1,所述融合层为通道拼接操作,h1过程如下:
[0093]
h1=c
cat
(a1,b1)
[0094]
其中c
cat
表示通道拼接操作;第二等级语义特征提取层是第一个融合层后接两个残差块构成,提取得到第二等级语义特征,之后通过第二个融合层将第二等级语义特征、第二等级细节特征、第三等级细节特征进行融合,得到融合特征h2,h2过程如下:
[0095]
h2=c
cat
(a2,a3,c
rb
(h1))
[0096]
其中c
rb
表示残差块特征映射关系;第三等级语义特征提取层是第二个融合层后接三个残差块构成,提取得到第三等级语义特征,之后通过第三个融合层将第三等级语义特征、第一等级细节特征、第二等级细节特征进行融合,得到融合特征h3,h3过程如下:
[0097]
h3=c
cat
(a1,a2,c
rb
(h2))
[0098]
将融合特征h3通过1
×
1的卷积层操作后生成预测人群密度图。
[0099]
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中基于多等级特征融合的人群计数方法中的步骤。
[0100]
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中基于多等级特征融合的人群计数方法中的步骤。其中,存储介质可以为非易失性存储介质。
[0101]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,read only memory)、随机存取存储器(ram,random access memory)、磁盘或光盘等。
[0102]
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献