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

人群计数网络的训练方法与流程

2022-03-09 05:55:24 来源:中国专利 TAG:


1.本发明涉及一种人群计数网络的训练方法。


背景技术:

2.人群计数和人群定位是当前计算机视觉的一项重要的任务。但是在实际情况中,由于拍摄角度多变造成图片中的人头大小不统一,并且在高密度场景下存在着严重的遮挡、人群分布不均,这些都会增加人群计数和人群定位任务的困难。卷积神经网络的出现为这两项任务的实现提供了一个更好的方法,通常我们希望网络的深度尽可能的深来更好地映射输入与输出的关系,但是随着网络深度的增加,参数量会增大,造成网络训练困难,甚至会造成梯度爆炸或者梯度消失。


技术实现要素:

3.本发明的目的在于提供一种人群计数网络的训练方法。
4.为解决上述问题,本发明提供一种人群计数网络的训练方法,包括:
5.步骤一,进行人群计数时,包括以下步骤:
6.步骤s1-1,网络的编码器前端采用vgg16_bn的前十层,将样本图片输入到编码器的前端,提取图片的特征信息;
7.步骤s1-2,将编码器前端的提取出来的图片的特征信息送到编码器的后端,编码器的后端采用五个带有多尺度空洞金字塔卷积聚合模块的残差网络结构,用于增加网络的深度,提取多尺度特征信息;
8.步骤s1-3,将提取到的多尺度特征信息送到人群计数的解码器中进行三次上采样,最终输出一个通道的估计密度图;
9.步骤s1-4,根据一个通道的估计密度图计算第一损失函数,根据第一损失函数对网络进行优化,计算人群计数的评估指标。
10.进一步的,在上述方法中,步骤s1-3之前,还包括生成人群计数的解码器,包括:
11.人群计数的解码器首先采用一个1
×
1的卷积核输出密度图,然后进行三次转置卷积,输出与输入图片大小一样的估计密度图。
12.进一步的,在上述方法中,步骤s1-4中的第一损失函数,采用l2损失,表示为:
[0013][0014]
其中,n指的是用于批次训练的图片数量,mi是网络的真实密度图,是网络的估计密度图。
[0015]
进一步的,在上述方法中,还包括步骤二,进行人群定位时,包括以下步骤:
[0016]
步骤s2-1,网络的编码器前端采用vgg16_bn的前十层,将样本图片输入到的前端,提取图片的特征信息;
[0017]
步骤s2-2,将提取出来的图片的特征信息送到编码器的后端,码器的后端采用五
个带有多尺度空洞金字塔卷积聚合模块的残差网络结构,用于增加网络的深度,提取多尺度特征信息;
[0018]
步骤s2-3,将提取到的多尺度特征信息送到人群定位的解码器,输出一张人头像素图和一张背景图,通道数为2;
[0019]
步骤s2-4,根据一张人头像素图和一张背景图计算第二损失函数,根据第二损失函数对网络进行优化,计算人群定位的评估指标。
[0020]
进一步的,在上述方法中,步骤s2-4中的第二损失函数,采用交叉熵损失,表示为:
[0021][0022]
其中,j指的是批次输入的第j张图片,n指的是批次输入的图片数量,p指的是每张图片的第p个像素,m
×
n是每张图片的像素大小,γ用来增加人头点处的权重,y(x
p
)指第j张图片的第p个像素通过人群定位网络生成的预测标签,取值为0、1,ψ(x
p
)是指数据集的真值图。
[0023]
进一步的,在上述方法中,步骤s2-3之前,还包括生成人群定位的解码器,包括:
[0024]
人群定位的解码器先经过一个转置卷积调整输出的大小为输入图像的1/4,然后通过一个1
×
1的卷积核输出一个人头像素图和一个背景图,最后通过两次双线性插值调整,输出与输入图像大小一样的定位图。
[0025]
进一步的,在上述方法中,所述步骤s1-2或s2-2,将提取出来的图片的特征信息送到编码器的后端,码器的后端采用五个带有多尺度空洞金字塔卷积聚合模块的残差网络结构,用于增加网络的深度,提取多尺度特征信息,包括:
[0026]
首先将上一步提取的图片的特征信息输入到多尺度空洞金字塔卷积聚合模块,多尺度空洞金字塔卷积聚合模块先对对特征图进行分组,每组采用空洞率不同的3
×
3的卷积核提取多尺度信息,每一组的通道数为128;空洞卷积在不增加参数量的情况下扩大感受野,不同空洞率的卷积核等效为一个新的卷积核,等效卷积核的大小表示为:
[0027]
k=k (k-1)
×
(d-1),
[0028]
其中,k为等效卷积核大小,k为空洞卷积核大小,d为空洞卷积核的空洞率,通过计算得到,d=2的3
×
3卷积相当于一个5
×
5的卷积核,d=3的3*3卷积核相当于一个7
×
7的卷积核,d=4的3
×
3卷积核相当于一个9
×
9的卷积核;
[0029]
然后将不同组的卷积核提取到的多尺度上下文信息聚合,再通过批量归一化对特征信息进行处理,最后送到relu激活函数,表示为:
[0030][0031]
其中,代表第i个多尺度空洞金字塔卷积聚合模块的第n组卷积核的输出特征图,表示将提取的多尺度信息进行聚合,f
bn
表示进行批量归一化,r
relu
表示将特征信息送到relu激活函数。
[0032]
进一步的,在上述方法中,步骤s1-2或s2-2的5个多尺度空洞金字塔卷积聚合模块中,
[0033]
前三个多尺度空洞金字塔卷积聚合模块将输入的图片的特征信息分成了四组,分别与空洞率d=1,2,3,4的3
×
3卷积核进行卷积,输出通道数为512;
[0034]
第四个多尺度空洞金字塔卷积聚合模块将输入特征图分成了两组,空洞率d=1,2,输出通道数为256;
[0035]
第五个多尺度空洞金字塔卷积聚合模块只采用一组空洞率为1的3
×
3卷积核,输出通道数为128。
[0036]
进一步的,在上述方法中,步骤s1-2或s2-2之前,还包括生成带有多尺度空洞金字塔卷积聚合模块的残差网络结构,包括:
[0037]
首先为了增加网络深度,在空洞金字塔空洞卷积模块的两端分别加入一个1
×
1的卷积层,并进行批量归一化,输入到rule激活函数;将该结构命名为堆叠层,则堆叠层的输出映射表示为:
[0038]
f(x)=δ2(φ(δ1(x))),
[0039]
其中,x表示以上一层的输出作为该残差网络的输入,δi(
·
)表示输入经过1
×
1卷积核、批量归一化和relu激活函数的输出映射,φ(δ1(x))表示以δ1(x)作为输入通过多尺度空洞金字塔卷积聚合模块得到的输出映射;
[0040]
然后根据堆叠层的输出通道数和输入的通道数关系,采用一个类似开关的形式来选择残差网络的结构。
[0041]
进一步的,在上述方法中,根据堆叠层的输出通道数和输入的通道数关系,采用一个类似开关的形式来选择残差网络的结构,包括:
[0042]
对于前三个多尺度空洞金字塔卷积聚合模块,输入与输出通道数相等,网络直接将堆叠层的输出与输入相加得到输出,定义为:
[0043]
y=f(x) x,
[0044]
y表示残差网络的输出;
[0045]
对于第四和第五个多尺度空洞金字塔卷积聚合模块,输入通道数与输出通道数不相等,网络先将输入送到一个1
×
1的卷积核来改变通道数,再与堆叠层的输出相加,其定义为:
[0046]
y=f(x) δ3(x),
[0047]
其中,y表示残差网络的输出,δ3(x)表示将输入特征图通过一个1
×
1的卷积核、批量归一化和relu激活函数的输出映射。
[0048]
与现有技术相比,本发明提供的具有金字塔空洞卷积的规模感知人群计数网络,用于增加网络深度,提取多尺度信息。本发明用于人群计数的具体步骤如下:输入一张图片,首先经过编码器的前端vgg16_bn提取图片的特征信息,然后将提取的特征图依次输入到五个带有空洞金字塔卷积的残差网络中提取多尺度信息。该网络结构首先经过一个1
×
1的卷积核,并进行批量归一化,输入到激活函数。然后将提取到的特征图分成多组,分别用多尺度空洞金字塔卷积聚合模块里面的多组空洞率不同的金字塔卷积提取多尺度信息,然后将这些特征信息进行聚合,并进行批量归一化,输入到激活函数中。其中前三个模块将输入特征图分成了四组,空洞率d=1,2,3,4,第四个模块将输入特征图分成了两组,空洞率d=1,2,第五个模块只采用了一组空洞率为1的3
×
3卷积核。模块输出特征信息后,通过残差连接将输入与输出相加,得到残差网络的输出映射。最后将提取的多尺度信息输入到解码器中进行上采样,输出估计密度图。本发明用于人群定位的具体步骤如下:首先将图片输入到网络的编码器,其编码器的网络结构与人群计数的网络结构相同。然后解码器先经过一
个转置卷积调整输出的大小为输入图像的1/4,然后通过一个1
×
1的卷积核输出一个人头像素图和一个背景图,最后通过两次双线性插值调整,输出与输入图像大小一样的定位图。
[0049]
本发明提供的方法通过多组空洞率不同的金字塔卷积核有效地提取了多尺度信息,解决了人头大小不统一的问题。通过在每一层输出都加上批量归一化,解决了网络深度增加造成难以训练的问题,同时通过残差结构在不增加参数量的情况下进一步提高了网络的深度,具有较高的鲁棒性。
附图说明
[0050]
图1本发明一实施例的人群计数的网络结构图;
[0051]
图2本发明一实施例的人群定位的网络结构图;
[0052]
图3本发明一实施例的多尺度空洞金字塔卷积聚合模块;
[0053]
图4本发明一实施例的多尺度空洞金字塔卷积聚合模块的残差网络结构。
具体实施方式
[0054]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0055]
面对当前存在的网络深度不深、以及尺度多变化的问题,本发明的目的是设计一种能够提取多尺度信息,并增加网络深度的方法。
[0056]
本发明提供一种人群计数网络的训练方法,包括:s1、进行人群计数时,网络框架见图1,包括以下步骤:
[0057]
s1-1网络的编码器前端采用vgg16_bn的前十层,将样本图片输入到编码器的前端,提取图片的特征信息。
[0058]
s1-2通过前端提取出来的特征图被送到编码器的后端,其采用五个带有多尺度空洞金字塔卷积聚合模块的残差网络结构,用来增加网络的深度,提取多尺度信息;
[0059]
s1-3将提取到的多尺度特征信息送到解码器中进行三次上采样,最终输出一个通道的估计密度图。;
[0060]
s1-4根据估计密度图计算损失函数,对网络进行优化。
[0061]
s2、进行人群定位时,网络框架见图2,包括以下步骤:
[0062]
s2-1将样本图片输入到与人群计数结构一样的编码器的前端,提取图片的特征信息;
[0063]
s2-2将提取出来的特征图送到编码器的后端,提取多尺度特征信息;
[0064]
s2-3将提取到的特征信息送到解码器,输出一张人头像素图和一张背景图,通道数为2;
[0065]
s2-4根据损失函数对网络进行优化。
[0066]
人群计数和人群定位的步骤s1-2和s2-2中的多尺度空洞金字塔卷积聚合模块,具体操作为:
[0067]
首先将上一步提取的特征图输入到多尺度空洞卷积聚合模块,如图3,c表示聚合,br表示批量归一化和relu,mdc表示多尺度空洞金子塔卷积聚合模块。该模块先对对特征图进行分组,每组采用空洞率不同的3
×
3的卷积核提取多尺度信息,每一组的通道数为128。
空洞卷积可以在不增加参数量的情况下扩大感受野,不同空洞率的卷积核可以等效为一个新的卷积核,等效卷积核的大小可表示为:
[0068]
k=k (k-1)
×
(d-1)
ꢀꢀꢀꢀꢀꢀ
(1)
[0069]
其中k为等效卷积核大小,k为空洞卷积核大小,d为空洞卷积核的空洞率。通过计算得到,d=2的3
×
3卷积相当于一个5
×
5的卷积核,d=3的3*3卷积核相当于一个7
×
7的卷积核,d=4的3
×
3卷积核相当于一个9
×
9的卷积核。
[0070]
然后将不同组的卷积核提取到的多尺度上下文信息聚合,再通过批量归一化对特征信息进行处理,最后送到relu激活函数,可以表示为:
[0071][0072]
其中代表第i个多尺度空洞金字塔卷积聚合模块的第n组卷积核的输出特征图,表示将提取的多尺度信息进行聚合,f
bn
表示进行批量归一化,r
relu
表示将特征信息送到relu激活函数。
[0073]
具有金字塔空洞卷积的规模感知人群计数网络,网络结构一共采用了5个多尺度空洞金字塔卷积聚合模块。前三个模块将输入特征图分成了四组,分别与空洞率d=1,2,3,4的3
×
3卷积核进行卷积,输出通道数为512。第四个模块将输入特征图分成了两组,空洞率d=1,2,输出通道数为256。第五个模块只采用了一组空洞率为1的3
×
3卷积核,输出通道数为128。
[0074]
进一步说,步骤s1-2和s2-2中的带有多尺度空洞金字塔卷积聚合模块的残差网络结构,如图4,具体操作为:
[0075]
首先为了增加网络深度,在空洞金字塔空洞卷积模块的两端分别加入了一个1
×
1的卷积层,并进行批量归一化,输入到rule激活函数。本发明将该结构命名为堆叠层,则堆叠层的输出映射可以表示为:
[0076]
f(x)=δ2(φ(δ1(x)))
ꢀꢀꢀꢀꢀ
(3)
[0077]
x表示以上一层的输出作为该残差网络的输入,δi(
·
)表示输入经过1
×
1卷积核、批量归一化和relu激活函数的输出映射,φ(δ1(x))表示以δ1(x)作为输入通过多尺度空洞金字塔卷积聚合模块得到的输出映射(具体见公式(2))。
[0078]
然后根据堆叠层的输出通道数和输入的通道数关系,采用一个类似开关的形式来选择残差网络的结构,具体操作如下:
[0079]
对于前三个金字塔空洞卷积模块,输入与输出通道数相等,网络直接将堆叠层的输出与输入相加得到输出,其定义为:
[0080]
y=f(x) x
ꢀꢀꢀꢀꢀꢀꢀ
(4)
[0081]
y表示残差网络的输出。
[0082]
对于第四和第五个金字塔空洞卷积模块,输入通道数与输出通道数不相等,网络先将输入送到一个1
×
1的卷积核来改变通道数,再与堆叠层的输出相加,其定义为:
[0083]
y=f(x) δ3(x)
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0084]
其中y表示残差网络的输出,δ3(x)表示将输入特征图通过一个1
×
1的卷积核、批量归一化和relu激活函数的输出映射。
[0085]
进一步说,具有金字塔空洞卷积的规模感知人群计数网络中的解码器上采样方式
不同。人群计数的解码器首先采用一个1
×
1的卷积核输出密度图,然后进行三次转置卷积,输出与输入图片大小一样的估计密度图。人群定位的解码器先经过一个转置卷积调整输出的大小为输入图像的1/4,然后通过一个1
×
1的卷积核输出一个人头像素图和一个背景图,最后通过两次双线性插值调整,输出与输入图像大小一样的定位图。
[0086]
进一步说,人群计数的网络中s1-4的损失函数采用l2损失,可表示为:
[0087][0088]
其中n指的是用于批次训练的图片数量,mi是网络的真实密度图,是网络的估计密度图。
[0089]
进一步说,人群定位的网络中s2-4的损失函数采用交叉熵损失,可表示为:
[0090][0091]
其中j指的是批次输入的第j张图片,n指的是批次输入的图片数量,p指的是每张图片的第p个像素,m
×
n是每张图片的像素大小,γ用来增加人头点处的权重,y(x
p
)指第j张图片的第p个像素通过人群定位网络生成的预测标签,取值为0,1(人头点处)。ψ(x
p
)是指数据集的真值图。
[0092]
同时由于图像中的多尺度变化,采用单一的卷积核不能提取多尺度信息,但是空洞金字塔卷积可以在不增加参数量的情况下提取多尺度信息,提高网络的性能。
[0093]
本发明需要估计一张图片中的总人数,预测图片中人头点的位置,生成定位图,具体细节如下:
[0094]
一、估计一张图片中的总人数
[0095]
已知一张图片的像素值和标签,将图片输入到网络编码器的前端,通过vgg16_bn的前十层提取图片的特征信息。
[0096]
将提取的特征信息送到第一个带有空洞金字塔卷积的残差网络中,具体实施细节如下:
[0097]
1)提取的特征信息首先被送到第一个带有空洞金子塔卷积模块的残差网络中。特征信息先通过一个1*1的卷积核进行卷积,再进行批量归一化和relu激活函数。
[0098]
2)将特征信息分成4组,每组特征图被送到空洞率不同的金字塔卷积,卷积核大小为3*3,空洞率分别为d=1,2,3,4。然后将不同组的卷积核提取到的多尺度上下文信息聚合,再通过批量归一化对特征信息进行处理,最后送到relu激活函数,可以表示为:
[0099][0100]
其中代表第1个多尺度空洞金字塔卷积聚合模块的第n组卷积核的输出特征图,表示将提取的多尺度信息进行聚合,f
bn
表示进行批量归一化,r
relu
表示将特征信息送到relu激活函数。
[0101]
3)将提取的多尺度信息再通过一个1
×
1的卷积核进行卷积,并进行批量归一化和激活函数,第一个堆叠的输出映射课表示为:
[0102]
f(x)=δ2(φ(δ1(x)))
ꢀꢀꢀꢀꢀꢀ
(2)
[0103]
4)将输入特征图与多尺度空洞金字塔卷积聚合模块的输出直接相加,得第一个带有多尺度空洞金字塔卷积聚合模块的残差网络的输出映射,可表示为:
[0104]
y=f(x) x
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0105]
将第一个残差网络提取的多尺度信息继续输入到第二个残差网络中提取特征信息,依次类推直到第五个残差网络提取出多尺度特征信息。
[0106]
最后将提取的多尺度信息输入到解码器,其采用一个1
×
1的卷积核输出密度图,通过三次转置卷积,输出与输入图片大小一样的估计密度图,并通过积分求和得到预测的人数。
[0107]
二、估计图片中的人头位置
[0108]
已知一张图片的像素值和真值图,将图片输入到网络编码器,提取图片的多尺度信息,这部分与人群计数网络的编码器实施细节相同,最终输出多尺度信息。
[0109]
然后将提取的特征信息输入到人群定位的解码器,其先经过一个转置卷积调整输出的大小为输入图像的1/4,然后通过一个1
×
1的卷积核输出一个人头像素图和一个背景图,最后通过两次双线性插值调整,输出与输入图像大小一样的定位图。
[0110]
综上所述,本发明提供的具有金字塔空洞卷积的规模感知人群计数网络,用于增加网络深度,提取多尺度信息。本发明用于人群计数的具体步骤如下:输入一张图片,首先经过编码器的前端vgg16_bn提取图片的特征信息,然后将提取的特征图依次输入到五个带有空洞金字塔卷积的残差网络中提取多尺度信息。该网络结构首先经过一个1
×
1的卷积核,并进行批量归一化,输入到激活函数。然后将提取到的特征图分成多组,分别用多尺度空洞金字塔卷积聚合模块里面的多组空洞率不同的金字塔卷积提取多尺度信息,然后将这些特征信息进行聚合,并进行批量归一化,输入到激活函数中。其中前三个模块将输入特征图分成了四组,空洞率d=1,2,3,4,第四个模块将输入特征图分成了两组,空洞率d=1,2,第五个模块只采用了一组空洞率为1的3
×
3卷积核。模块输出特征信息后,通过残差连接将输入与输出相加,得到残差网络的输出映射。最后将提取的多尺度信息输入到解码器中进行上采样,输出估计密度图。本发明用于人群定位的具体步骤如下:首先将图片输入到网络的编码器,其编码器的网络结构与人群计数的网络结构相同。然后解码器先经过一个转置卷积调整输出的大小为输入图像的1/4,然后通过一个1
×
1的卷积核输出一个人头像素图和一个背景图,最后通过两次双线性插值调整,输出与输入图像大小一样的定位图。
[0111]
本发明提供的方法通过多组空洞率不同的金字塔卷积核有效地提取了多尺度信息,解决了人头大小不统一的问题。通过在每一层输出都加上批量归一化,解决了网络深度增加造成难以训练的问题,同时通过残差结构在不增加参数量的情况下进一步提高了网络的深度,具有较高的鲁棒性。
[0112]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0113]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0114]
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之
内,则本发明也意图包括这些改动和变型在内。
再多了解一些

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

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

相关文献