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

基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法

文献发布时间:2023-06-19 11:02:01


基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法

技术领域

本发明涉及人群密度检测方面的技术领域,具体为基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法。

背景技术

近年来随着经济水平发展,人口快速增长,由于人群聚集引起的骚乱已经不止一次的发生,人群监控也变得越来越重要,但是靠人力来实现人群监控容易产生疲劳并且容易受到个人主观因素影响,与此同时,计算机视觉技术日趋成熟,它在工程中的应用范围已经扩展到车牌识别、人脸检测、指纹识别等生活的方方面面,由此更加促进了人群密度自动估计方法的研究。人群密度等级估计和人群流量统计是人群监控的2个重要研究方向。人群密度等级估计将人群按照密集程度划分为不同等级,通过特征分析及分类手段估计人群密度,常应用于人群密度的预警。而人群流量统计侧重于统计人数,要求结果能精确到人数。人群密度估计主要分为特征提取和人群密度分类两步。

人群密度估计与密集人群计数是当前计算机视觉领域的研究热点之一,具有非常广泛的应用。随着国家经济的持续高速发展,城镇化不断推进,城市人口规模越来越大,人群密集行为越来越多,由此带来的恐怖事件、踩踏事件也日趋增多。目前通过监控视频实现人群密度估计和准确人群计数是一个至关重要的任务,其结果对人群检测、人群异常行为分析等有重要的参考作用。深度学习是一种由多个处理层组成的计算模型,它不需要人工标注各种特征,可以通过学习获得数据的多抽象层表示。近年来,深度学习方法的广泛应用显著提高了语音识别、视觉目标识别和检测结果。卷积神经网络是目前深度学习中最为流行的学习算法,其主要优势体现在局部连接和权值共享,不仅降低了网络模型的复杂度,减少了权值数量,而且这种网络结构对平抑、旋转、倾斜、比例缩放等具有高度不变形。

现有的关于人群密度估计算法还存在着很多问题,例如场景中人群过于密集,受遮挡严重以及其他因素导致的结果不是很准确。

发明内容

本发明的目的在于提供基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法,以解决上述背景技术中提出的现有的关于人群密度估计算法还存在着很多问题,例如场景中人群过于密集,受遮挡严重以及其他因素导致的结果不是很准确的问题。

为实现上述目的,本发明提供如下技术方案:基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法,该基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法包括以下步骤:

S1:选取训练集,读取人群密度数据集中的图片,并设置卷积神经网络模型的训练参数;

S2:根据卷积神经网络模型以及其训练参数,以损失函数最小化为目标来训练卷积神经网络模型;

S3:将待处理的图像输入到卷积神经网络模型中进行训练和测试,用Ci表示图像中的人群数量,并输出最终的人群密度图,记作Mi;

S4:输入原始图像I之后,可以对原始图像I进行多尺度的缩放以及旋转或镜像操作,得到新的图像,由此来进行制定的特征提取,将这些新的图像集合记作Ii,并对新的图像集合Ii中的图像的人头位置进行标注,得到新的人群集合C;

S5:训练图像集合Ii的图片时,由图像集合Ii中标注文件生成真实密度图样本;

S6:首先利用VGG-16的前十层来构建卷积神经网络前端;

S7:经过上下文卷积模块,将提取出来的VGG特征值,针对不同的卷积特征图,采用不同的池化尺度来对此进行池化;

S8:接着对生成对抗网络进行训练,生成对抗网络网络包含生成器G和鉴别器D以及回归网络R,生成器G提取图片的语义信息,生成器G解码网络生成人群密度分布图,而鉴别器D则用于判别得到的人群密度分布图是属于S5得到的真实密度图样本还是属于生成器G生成,在不断逼近中得到更真实的人群密度图;

S9:对于整个结构的Loss计算使用的公式如下:

其中,Loss表示损失函数的值,λ

S10:将测试图像作为网络的输入,网络直接输出图像中的人数;

S11:最后的结果用均方误差MSE和平均绝对误差MAE来显示出来,均方误差MSE是最常用的回归损失函数,计算方法是求预测值与真实值之间距离的平方和,平均绝对误差MAE是另一种用于回归模型的损失函数,平均绝对误差MAE是目标值和预测值之差的绝对值之和;

优选的,所述人群密度数据集为ShTech数据集,path_sets中保存的就是part_B中的训练集和测试集,然后依次读取数据集中的每一张图片将其放到列表img_paths中,由于原始图片和其对应的mat文件在两个不同的文件夹下面,文件名和后缀名有一定的区别,所以通过replace()方法将图片的路径img_path转换成mat文件的路径并读取。

优选的,所述S5中标注文件生成真实密度图样本的过程具体为:首先构造一个和原始图片大小相同的矩阵,并将其全部置为0,然后将每个被标记的人头对应的位置为1,这样就得到了一个只有0和1的矩阵,最后通过高斯核函数进行卷积得到一个连续的密度图。

优选的,所述S7中这里选择的三个卷积核大小分别为:1x1,2x2,3x3,6x6,分别可以得到不同大小的kxk的块。

优选的,所述kxk的块与卷积核为1的卷积层进行卷积操作,选用卷积核为1进行卷积的好处是不会改变原始特征图的维度,从而可以确保卷积的过程中会增加冗余信息或是漏掉一些信息,接着将不同尺寸的特征图分别使用通过双线性插值的方法扩大到原始特征大小,最后通过通道拼接法对四个同样尺度的特征图进行特征融合,以形成对比度特征,进一步使用对比功能来学习比例感知功能的权重W,然后将其反馈到后端网络。

与现有技术相比,本发明的有益效果是:

通过深度学习的手段采用更为密集的方式连接一组扩张卷积,在没有显著增加模型大小的情况下提升了人群密度检测的效果,并且也利用注意力机制提高了模型的效率。其次,使用生成对抗学习可以直接进行新样本的采样和推断,提高了新样本的生成效率,对抗训练方法摒弃了直接对真实数据的复制或平均,增加了生成样本的多样性,GAN在生成样本的实践中,生成的样本易于人类理解。例如,能够生成十分锐利清晰的图像,为创造性地生成对人类有意义的数据提供了可能的解决方法。并且由于前面加入使用的注意力机制,也使得GAN可以生产细粒度的高质量图像以进行人群计数。

附图说明

图1:本发明的整个网络的结构流程图;

图2:本发明的上下文卷积网络图;

图3:本发明的基于注意力机制的密集扩张连接模块图;

图4:本发明的对抗学习中的鉴别器结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

实施例:

请参阅图1-4,本发明提供技术方案:基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法,该基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法包括以下步骤:

S1:选取训练集,读取人群密度数据集中的图片,并设置卷积神经网络模型的训练参数;

以ShTech数据集为例,path_sets中保存的就是part_B中的训练集和测试集,然后依次读取数据集中的每一张图片将其放到列表img_paths中,由于原始图片和其对应的mat文件在两个不同的文件夹下面,文件名和后缀名有一定的区别,所以通过replace()方法将图片的路径img_path转换成mat文件的路径并读取;

S2:根据卷积神经网络模型以及其训练参数,以损失函数最小化为目标来训练卷积神经网络模型;

S3:将待处理的图像输入到卷积神经网络中进行训练和测试,用Ci表示图像中的人群数量,并输出最终的人群密度图,记作Mi;

S4:以ShTech数据集图片为例,输入原始图像I之后,以对原始图像I进行多尺度的缩放以及旋转或镜像操作,得到新的图像,由此来进行制定的特征提取,将这些新的图像集合记作Ii,并对新的图像集合Ii中的图像的人头位置进行标注,得到新的人群集合C,这对一些人群集中的地方,能够做到及时分析,避免造成意外;

S5:训练数据集图片时,由图像集合Ii中标注文件生成真实密度图样本,标注文件生成真实密度图样本的过程具体为:首先构造一个和原始图片大小相同的矩阵,并将其全部置为0,然后将每个被标记的人头对应的位置为1,这样就得到了一个只有0和1的矩阵,最后通过高斯核函数进行卷积得到一个连续的密度图;

S6:根据上述步骤的需求,首先利用VGG-16的前十层来构建卷积神经网络前端,主要作用是用来提取网络特征;

S7:如图2所示,经过上下文卷积模块,将提取出来的VGG特征值,针对不同的卷积特征图,采用不同的池化尺度来对此进行池化,这里选择的三个卷积核大小分别为:1x1,2x2,3x3,6x6,分别可以得到不同大小的kxk的块;

将这些kxk的块与卷积核为1的卷积层进行卷积操作,选用卷积核为1进行卷积的好处是不会改变原始特征图的维度,从而可以确保卷积的过程中会增加冗余信息或是漏掉一些信息,接着将不同尺寸的特征图分别使用通过双线性插值的方法扩大到原始特征大小,最后通过通道拼接法对四个同样尺度的特征图进行特征融合,以形成对比度特征,进一步使用对比功能来学习比例感知功能的权重W,然后将其反馈到后端网络;

如图3所示,扩张卷积密集连接模块注意力机制的加入,主要是利用扩张卷积在不增加参数的情况下增大感受野的作用,可以得到更多的信息。堆叠方法可以使无用的卷积层通过跳过连接来共享信息,具有较小膨胀比和较大膨胀比的层相互依存地工作,其中前馈过程不仅构成更密集的特征金字塔,而且提出更大的过滤器以感知更大的环境,在此模块后加入注意力机制则可以对得到的信息进行筛选,选出最需要的信息,提高模型的可行性,此模块主要作用是生成人群计数的注意力图Attention Map;

S8:接着对生成对抗网络进行训练,生成对抗网络网络包含生成器G和鉴别器D以及回归网络R,生成器G提取图片的语义信息,生成器G解码网络生成人群密度分布图,而鉴别器D则用于判别得到的人群密度分布图是属于S5得到的真实密度图样本还是属于生成器G生成,在不断逼近中得到更真实的人群密度图,鉴别器结构如图4所示;

S9:对于整个结构的Loss计算使用的公式如下:

其中,Loss表示损失函数的值,λ

S10:测试过程则是将测试图像作为网络的输入,网络直接输出图像中的人数;

S11:最后的结果用均方误差MSE和平均绝对误差MAE来显示出来,均方误差MSE是最常用的回归损失函数,计算方法是求预测值与真实值之间距离的平方和,平均绝对误差MAE是另一种用于回归模型的损失函数,平均绝对误差MAE是目标值和预测值之差的绝对值之和;

扩张卷积密集连接的建模

神经网络中,池化层通常存在内部数据结构丢失、空间层级化信息丢失以及小物体信息无法重建等问题。为了改善这些问题,本课题采用扩张卷积代替池化层,加入扩展卷积进行训练可以在保持参数个数不变的情况下增大卷积核的感受野,同时它可以保证输出的特征映射(feature map)的大小保持不变。一个扩张率为2的3×3卷积核,感受野与5×5的卷积核相同,但参数数量仅为9个,是5×5卷积参数数量的36%。本课题中,采用更为密集的方式连接一组扩张卷积,在没有显著增加模型大小的情况下获得更大的范围的扩张率。

基于注意力机制的卷积神经网络

注意力机制从字面意思来看和人类的注意力机制类似。人类通过快速扫描全局文本,获得需要重点关注的区域,也就是一般所说的注意力焦点,而后对这一区域投入更多注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无用信息。这一机制的存在,极大提高了人类从大量的信息中筛选出高价值信息的手段,是人类在长期进化中形成的一种生存机制。深度学习中的注意力机制从本质上讲和人类的选择性机制类似,核心目标也是从众多信息中选择出对当前任务目标更关键的信息。

生成对抗学习网络

生成对抗网络GAN简单的想法就是用两个模型,一个生成模型,一个判别模型。判别模型用于判断一个给定的图片是不是真实的图片,生成模型的任务是去创造一个看起来像真的图片一样的图片。由此,两个网络在对抗中进步,在进步后继续对抗,由生成式网络得到的数据也就越来越完美,逼近真实数据,而注意力机制的提出,也使得生成对抗网GAN可以生成细粒度的高质量图像以进行人群计数。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明;因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

相关技术
  • 基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法
  • 一种基于注意力机制的空洞卷积空间金字塔池化上下文学习方法
技术分类

06120112773448