CN108764085A - 基于生成对抗网络的人群计数方法 - Google Patents
基于生成对抗网络的人群计数方法 Download PDFInfo
- Publication number
- CN108764085A CN108764085A CN201810476256.8A CN201810476256A CN108764085A CN 108764085 A CN108764085 A CN 108764085A CN 201810476256 A CN201810476256 A CN 201810476256A CN 108764085 A CN108764085 A CN 108764085A
- Authority
- CN
- China
- Prior art keywords
- image
- crowd
- network
- cbl
- confrontation network
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
- G06V20/53—Recognition of crowd images, e.g. recognition of crowd congestion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30242—Counting objects in image
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种基于生成对抗网络的人群计数方法,包括:构建生成对抗网络,所述生成对抗网络包括:生成器和判别器;所述生成器用于根据输入的人群图像生成对应的人群密度图像;所述判别器用于在所述生成对抗网络的训练阶段,判别所述生成器生成的人群密度图像的真伪;对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络;将待统计的人群图像作为所述训练后的生成对抗网络的输入,得到目标人群密度图像,并统计所述目标人群密度图像中的人数。本发明中的方法对于监控场景的人群数量统计很有效,对复杂多变的背景以及高密度的人群都具有很好的鲁棒性。
Description
技术领域
本发明涉及计算机视觉技术领域,具体地,涉及基于生成对抗网络的人群计数方法。
背景技术
随着科技、金融和文化的发展,人类的活动内容及范围也在不断的扩大,呈现出人群数量多,密集程度大的趋势。而人群作为人类活动的主体,以一种有别于个体的形式存在,人与人之间的交互产生了更多的未知性,因此,出现了大量跟人群活动相关的安全事故,传统的事故防范方式已经无法满足人类的需求。随着技术的发展和硬件水平的提升,视频监控在安全领域渐渐进入了人类的视线。人们希望能够利用视频监控,提高对人群密集场景的事故防范能力,而人群计数作为人群分析当中最重要的一项基本指标,它的精确性将直接影响对潜在事故的检测能力。依靠人力去计算如此多的监控画面中的人数显然是不可能的,因此,如何利用计算机通过高效的算法,实时地对每一个监控画面中的人群进行计数,从而达到对事故的警报甚至预警的作用,成为了一个亟待解决的问题。
经过对现有的计数的文献检索发现,目前的人群计数算法主要原理有三类:
第一类基于行人检测,这种方法比较直接,在人群较稀疏的场景中,通过检测视频中的每一个行人,进而得到人群计数的结果,一般使用基于外观和运动特征的boosting,贝叶斯模型为基础的分割,或集成的自顶向下和自底向上的处理,这种方法在人群拥挤的情况下效果不甚理想,需要运用到基于部件模型(如DPM)的检测器来克服人群拥挤遮挡的问题。
第二类基于视觉特征轨迹聚类,对于视频监控,一般用KLT跟踪器和聚类的方法,通过轨迹聚类得到的数目来估计人数。该方法不适用于单张图像的情况,而同样在人群拥挤的情况下效果不理想,其他运动物体也会带来误差。
第三类是基于特征的回归,建立图像特征和图像人数的回归模型,通过提取图像特征从而回归场景中的人数。其中包括人工设计特征和利用深度神经网络的方法学习特征,而由深度神经网络的方法学得的特征相比于人工设计特征具有更好的表征性。
近阶段提出的人群计数的方法大多是第三类中基于深度学习的算法,Zhang Cong等人在2015年《IEEE Conference on Computer Vision and Pattern Recognition》(IEEE机器视觉和模式识别国际会议)发表的“Cross-scene crowd counting via deepconvolutional neural networks”一文中提出了一个简单的卷积神经网络结构,他利用先验的图像景深信息对不同位置的图像块进行缩放到同一尺度以作为网络的输入,从而避免了由远近带来的人像尺度不同的问题,并且最后能回归得到人数以及对应人群位置的人群密度图像。该算法的缺点在于将其应用于某一个场景时,必须先获取该场景的景深信息。Zhang Yingying等人在2016年《IEEE Conference on Computer Vision and PatternRecognition》发表的“Single-image crowd counting via multi-column convolutionalneural network”一文提出利用三个卷积子各不相同的卷积通道来获取图像在不同尺度上的特征然后融合到一起,从而减少尺度变化带来的计数误差。该算法网络较浅,使得背景和前景(人群)不易分清,且网络中的池化层使得最终得到的人群密度图像尺寸相比原图小并存在模糊。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于生成对抗网络的人群计数方法。
根据本发明提供的一种基于生成对抗网络的人群计数方法,包括:
构建生成对抗网络,所述生成对抗网络包括:生成器和判别器;所述生成器用于根据输入的人群图像生成对应的人群密度图像;所述判别器用于在所述生成对抗网络的训练阶段,判别所述生成器生成的人群密度图像的真伪;
对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络;
将待统计的人群图像作为所述训练后的生成对抗网络的输入,得到目标人群密度图像,并统计所述目标人群密度图像中的人数。
可选地,在所述对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络,包括:
获取人群图像和所述人群图像进行N等分后的N个子图像块;其中N为大于等于2的自然数;
将所述人群图像输入生成对抗网络,得到第一人群密度图像;
将所述人群图像对应的N个子图像块依次输入生成对抗网络,得到N个人群密度子图;将N个人群密度子图进行合成后,得到第二人群密度图像;
分别统计第一人群密度图像和第二人群密度图像中的人数;
当所述第一人群密度图像和第二人群密度图像中的人数不一致时,对所述生成对抗网络的生成器进行调整,直到所述第一人群密度图像和第二人群密度图像中的人数一致;
保存对生成器的调整结果,得到训练后的生成对抗网络。
可选地,在所述对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络之前,还包括:
获取训练数据库中的人群图像;
构建第一图像对和第二图像对,所述第一图像对包括:人群图像,以及该人群图像对应的人群密度标注图像;所述第二图像对包括:人群图像,以及该人群图像通过生成器得到的人群密度图像;
将第一图像对和第二图像对分别通过判别器判断真伪;
当所述判别器判断人群密度标注图像或者人群密度图不是真实图像时,对所述判别器进行调整后,继续通过训练数据库中的人群图像对所述生成器进行训练;
当所述判别器判断人群密度标注图像和人群密度图均为真实图像时,保存对所述生成器的调整结果。
可选地,所述生成对抗网络中的生成器中采用U-net网络结构作为识别人群图像中人群特征的编码器和解码器,所述U-net网络结构中包含有跳跃式传递层,以使得所述生成器输出与输入人群图像尺寸相同的人群密度图像。
可选地,所述生成对抗网络中的生成器包括:第一网络结构和第二网络结构;所述第一网络结构和第二网络结构为对称关系;
第一网络结构为:CBL(64,6)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBLO(64,4)-DBLO(64,4)-DBLO(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,6)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
第二网络结构为:CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,4)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
LReLU:
Tanh为:
式中:x表示输入,LReLU(x)为激活函数,tanh(z)为激活函数,z表示输入。
可选地,所述生成对抗网络中的判别器包括:第一判别器和第二判别器;且所述第一判别器和第二判别器具有相同的网络结构;所述网络结构为:CB(48)-CBL(96)-CBL(192)-CBL(384)-C(1)–Sigmoid;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,Sigmoid是指Sigmoid层,括号中的数表示卷积的通道数;
所述Sigmoid为:
式中:x表示输入,Sigmoid(x)为激活函数。
与现有技术相比,本发明具有如下的有益效果:
本发明提供的基于生成对抗网络的人群计数方法,对于监控场景的人群数量统计很有效,对复杂多变的背景以及高密度的人群都具有很好的鲁棒性,在得到人群数目的同时能给出图像中人群的具体分布,并且能保证运算的实时性。其中,生成对抗网络可以有效提高生成的人群密度图像的质量。通过约束两种尺度间的计数结果一致性来训练生成对抗网络对尺寸的适应性。因此,可以适应实例场景复杂多变、人群密集、尺度变化大的情况,从根本上解决了现有人群计数方法难以解决尺度变化和人群遮挡带来的误差,以及生成密度图质量差等问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施例提供的一种基于生成对抗网络的人群计数方法流程图;
图2为本发明实施例提供的基于生成对抗网络的人群计数方法的原理示意图;
图3为不同方法生成的人群密度图效果的对比示意图;其中,第二列为标注的人群图像,第三列为本发明生成的人群密度图像,第四列为采用MCNN(Single-Image CrowdCounting via Multi-Column Convolutional Neural Network通过多列卷积神经网络预测单张图的人群计数)方法的人群密度图像结果;
图4为本发明中的方法在ShanghaiTech数据库上的测试结果示意图;
图5为本发明中的方法在WorldExpo’10数据库上的测试结果示意图,S1,S2,…,S5分别表示五个不同的场景;
图6为本发明中的方法在UCF_CC_50数据库上的测试结果示意图;
图7为本发明中的方法在UCSD数据库上的测试结果示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
图1为本发明实施例提供的一种基于生成对抗网络的人群计数方法流程图,如图1所示,本实施例中的方法可以包括:
S101、构建生成对抗网络。
本实施例中的生成对抗网络包括:生成器和判别器;所述生成器用于根据输入的人群图像生成对应的人群密度图像;所述判别器用于在所述生成对抗网络的训练阶段,判别所述生成器生成的人群密度图像的真伪。生成对抗网络中的生成器中采用U-net网络结构作为识别人群图像中人群特征的编码器和解码器,所述U-net网络结构中包含有跳跃式传递层,以使得所述生成器输出与输入人群图像尺寸相同的人群密度图像。
本实施例中,所述生成对抗网络中的生成器包括:第一网络结构和第二网络结构;所述第一网络结构和第二网络结构为对称关系;
第一网络结构为:CBL(64,6)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBLO(64,4)-DBLO(64,4)-DBLO(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,6)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
第二网络结构为:CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,4)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
LReLU:
Tanh为:
式中:x表示输入,LReLU(x)为激活函数,tanh(z)为激活函数,z表示输入。
本实施例中,所述生成对抗网络中的判别器包括:第一判别器和第二判别器;且所述第一判别器和第二判别器具有相同的网络结构;所述网络结构为:CB(48)-CBL(96)-CBL(192)-CBL(384)-C(1)–Sigmoid;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,Sigmoid是指Sigmoid层,括号中的数表示卷积的通道数;
所述Sigmoid为:
式中:x表示输入,Sigmoid(x)为激活函数。
构建生成对抗网络之后,还需要对所述生成对抗网络进行训练,具体训练步骤如下:
获取训练数据库中的人群图像;构建第一图像对和第二图像对,所述第一图像对包括:人群图像,以及该人群图像对应的人群密度标注图像;所述第二图像对包括:人群图像,以及该人群图像通过生成器得到的人群密度图像;将第一图像对和第二图像对分别通过判别器判断真伪;当所述判别器判断人群密度标注图像或者人群密度图不是真实图像时,对所述判别器进行调整后,继续通过训练数据库中的人群图像对所述生成器进行训练;当所述判别器判断人群密度标注图像和人群密度图均为真实图像时,保存对所述生成器的调整结果。
S102、对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络。
本实施例中,首先获取人群图像和所述人群图像进行N等分后的N个子图像块;其中N为大于等于2的自然数;将所述人群图像输入生成对抗网络,得到第一人群密度图像;将所述人群图像对应的N个子图像块依次输入生成对抗网络,得到N个人群密度子图;将N个人群密度子图进行合成后,得到第二人群密度图像;分别统计第一人群密度图像和第二人群密度图像中的人数;当所述第一人群密度图像和第二人群密度图像中的人数不一致时,对所述生成对抗网络的生成器进行调整,直到所述第一人群密度图像和第二人群密度图像中的人数一致;保存对生成器的调整结果,得到训练后的生成对抗网络。
S103、将待统计的人群图像作为所述训练后的生成对抗网络的输入,得到目标人群密度图像,并统计所述目标人群密度图像中的人数。
本实施例,对于监控场景的人群数量统计很有效,对复杂多变的背景以及高密度的人群都具有很好的鲁棒性,在得到人群数目的同时能给出图像中人群的具体分布,并且能保证运算的实时性。其中,生成对抗网络可以有效提高生成的人群密度图像的质量。通过约束两种尺度间的计数结果一致性来训练生成对抗网络对尺寸的适应性。因此,可以适应实例场景复杂多变、人群密集、尺度变化大的情况,从根本上解决了现有人群计数方法难以解决尺度变化和人群遮挡带来的误差,以及生成密度图质量差等问题。
具体地,构建生成对抗网络之后,还要建立人群图像训练集,产检的人群图像数据库包括:UCSD、UCF_CC_50、ShanghaiTech、WorldExpo’10。训练集本身提供的标注为每个人的人头在图像中所处的二维坐标(x,y),根据这个人头的坐标点,利用归一化的高斯核来拟合目标人头所占的范围,通过高斯核化的处理后得到最终的人群密度(热度)图标注。同时,出于丰富数据样本以及选择最佳的模型输入尺寸,所有的图像都会放缩到同一大小720×720,然后再从每张图中划分成多个240×240的图像块作为网络的输入。
然后,将随机采样的人群图像块与对应的由高斯核生成的人群密度图拼成一个图像对作为生成对抗网络的输入,再将该输入图像分割成4等分依次作为生成对抗网络的输入。需要说明的是,本实施例中以4等分为例进行说明,但是不限定等分次数。
图2为本发明实施例提供的基于生成对抗网络的人群计数方法的原理示意图,如图2所示,生成对抗网络主要包括两个子网络:生成器(图中G-large表示未分割人群图像的生成器,G-small表示等分后人群图像块的生成器)和判别器(图中D-large表示未分割人群图像的判别器,D-small表示等分后人群图像块的判别器)。通过生成器和判别器的互相对抗来训练生成对抗网络,从而提高生成的人群密度图像的质量。具体地,生成器的输入是随机生成的向量z,通过学习训练集的数据分布可生成与真实图片同类型的图片,而判别器用于判断输入图片是由生成器生成的图片还是真实图片,如果判断概率都是0.5,则说明区分不出来,则生成器已经训练成功。保持生成器不变,训练判别器。保持判别器不变,训练生成器。这样的训练过程交替进行。最终生成器可以生成一堆很真的假图片。
下面介绍生成对抗网络的具体构建方法:
假设,已知真实人群图像集的分布为Pdata,x是一真实人群图像,因此可以将真实人群图像集看做一个向量,这个向量集合的分布就是Pdata。假设需要生成一些也在这个分布内的图片,如果直接就是这个分布的话,怕是做不到的。现有的生成器生成的分布可以假设为Pz(z;θ),这是一个由θ控制的分布,θ是这个分布的参数(如果是高斯混合模型,那么θ就是每个高斯分布的平均值和方差)。假设真实分布中取出一些数据,{x1,x2,……,xm},然后计算一个似然Pz(xi;θ)。对于这些数据,在生成模型中的似然就是想要最大化这个似然,等价于让生成器生成那些真实图片的概率最大。因此,就可以转化为最大似然估计的问题。具体地,定义一个θ来最大化这个似然。
所以最大化似然,让生成器最大概率的生成真实图片,也就是要找一个θ让Pz更接近于Pdata。神经网络只要有非线性激活函数,就可以去拟合任意的函数,分布也是一样,可以用正态分布,或者高斯分布,取样去训练一个神经网络,学习到一个很复杂的分布。而生成对抗网络就是用来寻找更接近的分布。首先随机一个向量z,通过G(z)=x这个网络,生成图片x。生成对抗网络的公式如下:
这个式子的好处在于,固定D,V(G,D)表示Pz和Pdata之间的差异,然后要找一个最好的G,让这个值最小,也就是两个分布之间的差异最小,即:
D要让上式尽可能的大,也就是对于来自真实分布的x,D(x)要接近与1,对于来自于生成的分布的G(z),D(G(z))要接近于0;然后G要让上式尽可能的小,让来自于生成分布中的G(z),D(G(z))尽可能的接近1。
本实施例中,生成器即U-net结构密度图生成网络是用来实现在某尺度上从人群图像到人群密度图像的非线性映射,其生成出来的人群密度图像需要能够欺骗判别器。而判别器是被训练为可分辨输入图片是由生成器生成的人群密度图像还是真实的人群密度图像。在生成对抗网络中,生成器的输入是随机噪声,为了添加人群图像作为输入,用条件生成对抗网络取代生成对抗网络。相比生成对抗网络而言,条件生成对抗网络添加了人群图像作为输入,从而可以实现人群图像到人群密度图像的映射。条件生成对抗网络的误差公式为:
在该误差公式中,z为随机噪声,x为输入的人群图像,y为目标的人群密度图像。修改后的误差函数为:在以上的条件生成对抗网络的误差公式的基础上,添加了均方误差(MSE:mean square error):感知误差函数和尺度一致性误差函数:(其中N是指y中像素点的个数,是生成器生成的图片,y是训练集中的标注密度图片,φ是将图片转换到感知特征空间的函数,是第一生成器生成的图片,是第二生成器生成的图片。)
生成器的目标是生成对应人群分布的密度图,与此同时避免生成的密度图模糊。所以主要关键在于生成器和判别器有好的网络结构。
目前的人群计数的方法,其整体结构都包含降采样的层,因此得到的人群密度图的大小相比于原图缩小了2的n次方。在本发明中,生成器采用了对称的网络结构,即先降采样再升采样。前半部分是一系列的卷积层(结合了批归一化和LReLU激活函数层)。其作用是提取图像的有效特征,并将这些有效特征结合起来。生成器的后半部分是一系列的反卷积层(同样结合了批归一化和LReLU激活函数层)。反卷积层可以视为是卷积层的反向操作。此外,为了时弥补因降采样丢失的细节,生成器采用了对称的跳跃式传递层从而让训练更加有效,即比如:第一层卷积网络会和倒数第一层的反卷积网络相加起来。最后一层为Tanh层。为了约束跨尺度间计数的一致性,我们的网络拥有两个生成器。生成器1的网络结构为:CBL(64,6)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBLO(64,4)-DBLO(64,4)-DBLO(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,6)–Tanh;生成器2的网络结构为:CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,4)–Tanh
其中,C是指卷积层(Convolutional layer),B是指批归一化(Batchnormalization),L是指激活层(LReLU),D是指反卷积层(Deconvolutional layer),O是指流失层(dropout layer),括号中的第一个数是指卷积的通道数,第二个数指卷积核的尺寸。
所述的LReLU层定义为:
所述的Tanh层定义为:
判别器是由一系列的卷积层(结合了批归一化和LReLU激活函数层)所构成的。这些卷积层能有效地提取图像的特征,以此判别器可根据这些特征将图像进行很好地分类。判别器最后一层是Sigmoid层,用以将输出映射成概率值。对应于两个生成器,判别器也有两个。
两个判别器具有相同的网络结构为:CB(48)-CBL(96)-CBL(192)-CBL(384)-C(1)–Sigmoid。其中,C是指卷积层(Convolutional layer),B是指批归一化(Batchnormalization),L是指激活层(LReLU),Sigmoid是指Sigmoid层,括号中的数是指卷积的通道数。
所述的Sigmoid层定义为:
具体地,先对GAN1和GAN2分别预训练,再将两者连接起来,用跨尺度一致性算子进行联合训练。训练过程是基于Torch的。所有输入图像大小为240×240像素,并归一化到-1到1。网络的学习率被固定为0.0001,优化器选用Adam。
在构建好生成对抗网络之后,分别在数据库ShanghaiTech、WorldExpo’10、UCF_CC_50、UCSD中进行测试。其中ShanghaiTech有两类数据集,一类是从网上爬取的人群图片partA,一类是拍摄于城市的各类街道partB;WorldExpo’10是由世博会的监控视频包括105个场景中获取的数据;UCF_CC_50由50张人数差异大的人群图像组成;UCSD为同一街道的视频截取得到。在测试集上,用MAE、MSE作为误差的量化指标,MAE表示平均绝对误差,MSE表示平均均方误差。图4为本发明中的方法在ShanghaiTech数据库上的测试结果示意图;图5为本发明中的方法在WorldExpo’10数据库上的测试结果示意图;图6为本发明中的方法在UCF_CC_50数据库上的测试结果示意图;图7为本发明中的方法在UCSD数据库上的测试结果示意图。具体地:
在ShanghaiTech数据库上测试时,partA:MAE:75.7,MSE:102.7;partB:MAE:17.2,MSE:27.4;
在WorldExpo’10数据库上测试时,MAE:7.5;
在UCF_CC_50数据库上测试时,MAE:291.0,MSE:404.6;
在UCSD数据库上测试时,MAE:1.04,MSE:1.35;
可见,本发明中的方法相比于现有方法取得了很大的提升。
本发明还提供了一种基于生成对抗网络的人群计数系统,用以执行上述的基于生成对抗网络的人群计数方法。
需要说明的是,本发明提供的所述基于生成对抗网络的人群计数方法中的步骤,可以利用所述基于生成对抗网络的人群计数系统中对应的模块、装置、单元等予以实现,本领域技术人员可以参照所述系统的技术方案实现所述方法的步骤流程,即,所述系统中的实施例可理解为实现所述方法的优选例,在此不予赘述。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (6)
1.一种基于生成对抗网络的人群计数方法,其特征在于,包括:
构建生成对抗网络,所述生成对抗网络包括:生成器和判别器;所述生成器用于根据输入的人群图像生成对应的人群密度图像;所述判别器用于在所述生成对抗网络的训练阶段,判别所述生成器生成的人群密度图像的真伪;
对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络;
将待统计的人群图像作为所述训练后的生成对抗网络的输入,得到目标人群密度图像,并统计所述目标人群密度图像中的人数。
2.根据权利要求1所述的基于生成对抗网络的人群计数方法,其特征在于,在所述对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络,包括:
获取人群图像和所述人群图像进行N等分后的N个子图像块;其中N为大于等于2的自然数;
将所述人群图像输入生成对抗网络,得到第一人群密度图像;
将所述人群图像对应的N个子图像块依次输入生成对抗网络,得到N个人群密度子图;将N个人群密度子图进行合成后,得到第二人群密度图像;
分别统计第一人群密度图像和第二人群密度图像中的人数;
当所述第一人群密度图像和第二人群密度图像中的人数不一致时,对所述生成对抗网络的生成器进行调整,直到所述第一人群密度图像和第二人群密度图像中的人数一致;
保存对生成器的调整结果,得到训练后的生成对抗网络。
3.根据权利要求1所述的基于生成对抗网络的人群计数方法,其特征在于,在所述对所述生成对抗网络进行跨尺度一致性训练,得到训练后的生成对抗网络之前,还包括:
获取训练数据库中的人群图像;
构建第一图像对和第二图像对,所述第一图像对包括:人群图像,以及该人群图像对应的人群密度标注图像;所述第二图像对包括:人群图像,以及该人群图像通过生成器得到的人群密度图像;
将第一图像对和第二图像对分别通过判别器判断真伪;
当所述判别器判断人群密度标注图像或者人群密度图不是真实图像时,对所述判别器进行调整后,继续通过训练数据库中的人群图像对所述生成器进行训练;
当所述判别器判断人群密度标注图像和人群密度图均为真实图像时,保存对所述生成器的调整结果。
4.根据权利要求1-3中任一项所述的基于生成对抗网络的人群计数方法,其特征在于,所述生成对抗网络中的生成器中采用U-net网络结构作为识别人群图像中人群特征的编码器和解码器,所述U-net网络结构中包含有跳跃式传递层,以使得所述生成器输出与输入人群图像尺寸相同的人群密度图像。
5.根据权利要求1-3中任一项所述的基于生成对抗网络的人群计数方法,其特征在于,所述生成对抗网络中的生成器包括:第一网络结构和第二网络结构;所述第一网络结构和第二网络结构为对称关系;
第一网络结构为:CBL(64,6)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBLO(64,4)-DBLO(64,4)-DBLO(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,6)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
第二网络结构为:CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-CBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(64,4)-DBL(3,4)–Tanh;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,D是指反卷积层,O是指流失层,且括号中的第一个数表示卷积的通道数,第二个数表示卷积核的尺寸;
LReLU:
Tanh为:
式中:x表示输入,LReLU(x)为激活函数,tanh(z)为激活函数,z表示输入。
6.根据权利要求1-3中任一项所述的基于生成对抗网络的人群计数方法,其特征在于,所述生成对抗网络中的判别器包括:第一判别器和第二判别器;且所述第一判别器和第二判别器具有相同的网络结构;所述网络结构为:CB(48)-CBL(96)-CBL(192)-CBL(384)-C(1)–Sigmoid;其中:C是指卷积层,B是指批归一化,L是指激活层LReLU,Sigmoid是指Sigmoid层,括号中的数表示卷积的通道数;
所述Sigmoid为:
式中:x表示输入,Sigmoid(x)为激活函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810476256.8A CN108764085B (zh) | 2018-05-17 | 2018-05-17 | 基于生成对抗网络的人群计数方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810476256.8A CN108764085B (zh) | 2018-05-17 | 2018-05-17 | 基于生成对抗网络的人群计数方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108764085A true CN108764085A (zh) | 2018-11-06 |
CN108764085B CN108764085B (zh) | 2022-02-25 |
Family
ID=64007001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810476256.8A Active CN108764085B (zh) | 2018-05-17 | 2018-05-17 | 基于生成对抗网络的人群计数方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108764085B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109523538A (zh) * | 2018-11-21 | 2019-03-26 | 上海七牛信息技术有限公司 | 一种基于生成对抗神经网络的人群计数方法以及系统 |
CN109522857A (zh) * | 2018-11-26 | 2019-03-26 | 山东大学 | 一种基于生成式对抗网络模型的人数估计方法 |
CN110189362A (zh) * | 2019-05-28 | 2019-08-30 | 厦门大学 | 基于多分支自编码对抗网络的高效目标跟踪方法 |
CN110188597A (zh) * | 2019-01-04 | 2019-08-30 | 北京大学 | 一种基于注意力机制循环缩放的密集人群计数与精确定位方法和系统 |
CN110503049A (zh) * | 2019-08-26 | 2019-11-26 | 重庆邮电大学 | 基于生成对抗网络的卫星视频车辆数目估计方法 |
CN110647986A (zh) * | 2019-08-13 | 2020-01-03 | 杭州电子科技大学 | 一种基于对抗式生成网络的道路破损图像生成方法 |
CN110852172A (zh) * | 2019-10-15 | 2020-02-28 | 华东师范大学 | 一种基于Cycle Gan图片拼贴并增强的扩充人群计数数据集的方法 |
CN111027387A (zh) * | 2019-11-11 | 2020-04-17 | 北京百度网讯科技有限公司 | 人数评估及评估模型获取方法、装置及存储介质 |
CN111091068A (zh) * | 2019-11-26 | 2020-05-01 | 重庆紫光华山智安科技有限公司 | 一种密度估计模型训练方法、装置、存储介质及电子设备 |
CN111126177A (zh) * | 2019-12-05 | 2020-05-08 | 杭州飞步科技有限公司 | 人数统计的方法及装置 |
CN111191667A (zh) * | 2018-11-15 | 2020-05-22 | 天津大学青岛海洋技术研究院 | 基于多尺度生成对抗网络的人群计数方法 |
CN111898578A (zh) * | 2020-08-10 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 人群密度的获取方法、装置、电子设备及计算机程序 |
CN112818945A (zh) * | 2021-03-08 | 2021-05-18 | 北方工业大学 | 适用于地铁车站人群计数的卷积网络构建方法 |
CN113255526A (zh) * | 2021-05-28 | 2021-08-13 | 华中科技大学 | 基于动量的对人群计数模型的对抗样本生成方法及系统 |
CN113392779A (zh) * | 2021-06-17 | 2021-09-14 | 中国工商银行股份有限公司 | 基于生成对抗网络的人群监控方法、装置、设备及介质 |
CN114972111A (zh) * | 2022-06-16 | 2022-08-30 | 慧之安信息技术股份有限公司 | 一种基于gan图像修复的密集人群计数方法 |
CN111311702B (zh) * | 2020-01-15 | 2023-04-28 | 浙江传媒学院 | 一种基于BlockGAN的图像生成和识别模块及方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156983A (zh) * | 2011-03-31 | 2011-08-17 | 上海交通大学 | 基于模式识别与目标跟踪的异常行人位置检测方法 |
CN104715481A (zh) * | 2015-03-17 | 2015-06-17 | 西安交通大学 | 基于随机森林的多尺度印刷品缺陷检测方法 |
CN106778502A (zh) * | 2016-11-21 | 2017-05-31 | 华南理工大学 | 一种基于深度残差网络的人群计数方法 |
US20170161811A1 (en) * | 2012-07-30 | 2017-06-08 | Robert D. Fish | Electronic personal companion |
CN107194418A (zh) * | 2017-05-10 | 2017-09-22 | 中国科学院合肥物质科学研究院 | 一种基于对抗特征学习的水稻蚜虫检测方法 |
CN107239762A (zh) * | 2017-06-06 | 2017-10-10 | 电子科技大学 | 一种基于视觉的公交车内乘客人数统计方法 |
CN107330364A (zh) * | 2017-05-27 | 2017-11-07 | 上海交通大学 | 一种基于cGAN网络的人群计数方法及系统 |
CN107563274A (zh) * | 2017-07-10 | 2018-01-09 | 安徽四创电子股份有限公司 | 一种基于对抗网络学习的视频的车辆检测方法和计数方法 |
CN107679503A (zh) * | 2017-10-12 | 2018-02-09 | 中科视拓(北京)科技有限公司 | 一种基于深度学习的人群计数算法 |
CN107958246A (zh) * | 2018-01-17 | 2018-04-24 | 深圳市唯特视科技有限公司 | 一种基于新型端到端人脸超分辨率网络的图像对齐方法 |
CN107967451A (zh) * | 2017-11-23 | 2018-04-27 | 常州大学 | 一种利用多尺度多任务卷积神经网络对静止图像进行人群计数的方法 |
CN107992944A (zh) * | 2017-11-14 | 2018-05-04 | 华南理工大学 | 一种基于原始生成对抗网络模型的多尺度卷积方法 |
-
2018
- 2018-05-17 CN CN201810476256.8A patent/CN108764085B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156983A (zh) * | 2011-03-31 | 2011-08-17 | 上海交通大学 | 基于模式识别与目标跟踪的异常行人位置检测方法 |
US20170161811A1 (en) * | 2012-07-30 | 2017-06-08 | Robert D. Fish | Electronic personal companion |
CN104715481A (zh) * | 2015-03-17 | 2015-06-17 | 西安交通大学 | 基于随机森林的多尺度印刷品缺陷检测方法 |
CN106778502A (zh) * | 2016-11-21 | 2017-05-31 | 华南理工大学 | 一种基于深度残差网络的人群计数方法 |
CN107194418A (zh) * | 2017-05-10 | 2017-09-22 | 中国科学院合肥物质科学研究院 | 一种基于对抗特征学习的水稻蚜虫检测方法 |
CN107330364A (zh) * | 2017-05-27 | 2017-11-07 | 上海交通大学 | 一种基于cGAN网络的人群计数方法及系统 |
CN107239762A (zh) * | 2017-06-06 | 2017-10-10 | 电子科技大学 | 一种基于视觉的公交车内乘客人数统计方法 |
CN107563274A (zh) * | 2017-07-10 | 2018-01-09 | 安徽四创电子股份有限公司 | 一种基于对抗网络学习的视频的车辆检测方法和计数方法 |
CN107679503A (zh) * | 2017-10-12 | 2018-02-09 | 中科视拓(北京)科技有限公司 | 一种基于深度学习的人群计数算法 |
CN107992944A (zh) * | 2017-11-14 | 2018-05-04 | 华南理工大学 | 一种基于原始生成对抗网络模型的多尺度卷积方法 |
CN107967451A (zh) * | 2017-11-23 | 2018-04-27 | 常州大学 | 一种利用多尺度多任务卷积神经网络对静止图像进行人群计数的方法 |
CN107958246A (zh) * | 2018-01-17 | 2018-04-24 | 深圳市唯特视科技有限公司 | 一种基于新型端到端人脸超分辨率网络的图像对齐方法 |
Non-Patent Citations (5)
Title |
---|
C. ZHANG 等: "Cross-scene crowd counting via deep convolutional neural networks", 《2015 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION(CVPR)》 * |
GREG OLMSCHENK 等: "Crowd Counting With Minimal Data Using Generative Adversarial Networks For Multiple Target Regression", 《2018 IEEE WINTER CONFERENCE ON APPLICATIONS OF COMPUTER VISION (WACV)》 * |
KANG HAN 等: "Image Crowd Counting Using Convolutional Neural Network and Markov Random Field", 《ARXIV:1706.03686V3》 * |
时增林 等: "基于序的空间金字塔池化网络的人群计数方法", 《自动化学报》 * |
袁烨 等: "基于卷积神经网络的人群计数研究", 《信息化技术》 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191667A (zh) * | 2018-11-15 | 2020-05-22 | 天津大学青岛海洋技术研究院 | 基于多尺度生成对抗网络的人群计数方法 |
CN111191667B (zh) * | 2018-11-15 | 2023-08-18 | 天津大学青岛海洋技术研究院 | 基于多尺度生成对抗网络的人群计数方法 |
CN109523538A (zh) * | 2018-11-21 | 2019-03-26 | 上海七牛信息技术有限公司 | 一种基于生成对抗神经网络的人群计数方法以及系统 |
CN109522857A (zh) * | 2018-11-26 | 2019-03-26 | 山东大学 | 一种基于生成式对抗网络模型的人数估计方法 |
CN109522857B (zh) * | 2018-11-26 | 2021-04-23 | 山东大学 | 一种基于生成式对抗网络模型的人数估计方法 |
CN110188597A (zh) * | 2019-01-04 | 2019-08-30 | 北京大学 | 一种基于注意力机制循环缩放的密集人群计数与精确定位方法和系统 |
CN110189362B (zh) * | 2019-05-28 | 2020-12-25 | 厦门大学 | 基于多分支自编码对抗网络的高效目标跟踪方法 |
CN110189362A (zh) * | 2019-05-28 | 2019-08-30 | 厦门大学 | 基于多分支自编码对抗网络的高效目标跟踪方法 |
CN110647986A (zh) * | 2019-08-13 | 2020-01-03 | 杭州电子科技大学 | 一种基于对抗式生成网络的道路破损图像生成方法 |
CN110503049B (zh) * | 2019-08-26 | 2022-05-03 | 重庆邮电大学 | 基于生成对抗网络的卫星视频车辆数目估计方法 |
CN110503049A (zh) * | 2019-08-26 | 2019-11-26 | 重庆邮电大学 | 基于生成对抗网络的卫星视频车辆数目估计方法 |
CN110852172A (zh) * | 2019-10-15 | 2020-02-28 | 华东师范大学 | 一种基于Cycle Gan图片拼贴并增强的扩充人群计数数据集的方法 |
CN110852172B (zh) * | 2019-10-15 | 2020-09-22 | 华东师范大学 | 一种基于Cycle Gan图片拼贴并增强的扩充人群计数数据集的方法 |
CN111027387A (zh) * | 2019-11-11 | 2020-04-17 | 北京百度网讯科技有限公司 | 人数评估及评估模型获取方法、装置及存储介质 |
CN111027387B (zh) * | 2019-11-11 | 2023-09-26 | 北京百度网讯科技有限公司 | 人数评估及评估模型获取方法、装置及存储介质 |
CN111091068B (zh) * | 2019-11-26 | 2021-07-20 | 重庆紫光华山智安科技有限公司 | 一种密度估计模型训练方法、装置、存储介质及电子设备 |
CN111091068A (zh) * | 2019-11-26 | 2020-05-01 | 重庆紫光华山智安科技有限公司 | 一种密度估计模型训练方法、装置、存储介质及电子设备 |
CN111126177A (zh) * | 2019-12-05 | 2020-05-08 | 杭州飞步科技有限公司 | 人数统计的方法及装置 |
CN111126177B (zh) * | 2019-12-05 | 2023-05-09 | 杭州飞步科技有限公司 | 人数统计的方法及装置 |
CN111311702B (zh) * | 2020-01-15 | 2023-04-28 | 浙江传媒学院 | 一种基于BlockGAN的图像生成和识别模块及方法 |
CN111898578A (zh) * | 2020-08-10 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 人群密度的获取方法、装置、电子设备及计算机程序 |
CN111898578B (zh) * | 2020-08-10 | 2023-09-19 | 腾讯科技(深圳)有限公司 | 人群密度的获取方法、装置、电子设备 |
CN112818945A (zh) * | 2021-03-08 | 2021-05-18 | 北方工业大学 | 适用于地铁车站人群计数的卷积网络构建方法 |
CN113255526B (zh) * | 2021-05-28 | 2021-09-21 | 华中科技大学 | 基于动量的对人群计数模型的对抗样本生成方法及系统 |
CN113255526A (zh) * | 2021-05-28 | 2021-08-13 | 华中科技大学 | 基于动量的对人群计数模型的对抗样本生成方法及系统 |
CN113392779A (zh) * | 2021-06-17 | 2021-09-14 | 中国工商银行股份有限公司 | 基于生成对抗网络的人群监控方法、装置、设备及介质 |
CN114972111A (zh) * | 2022-06-16 | 2022-08-30 | 慧之安信息技术股份有限公司 | 一种基于gan图像修复的密集人群计数方法 |
CN114972111B (zh) * | 2022-06-16 | 2023-01-10 | 慧之安信息技术股份有限公司 | 一种基于gan图像修复的密集人群计数方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108764085B (zh) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108764085A (zh) | 基于生成对抗网络的人群计数方法 | |
CN106951867B (zh) | 基于卷积神经网络的人脸识别方法、装置、系统及设备 | |
CN104063719B (zh) | 基于深度卷积网络的行人检测方法及装置 | |
CN111898406B (zh) | 基于焦点损失和多任务级联的人脸检测方法 | |
CN107330364A (zh) | 一种基于cGAN网络的人群计数方法及系统 | |
CN110210276A (zh) | 一种移动轨迹获取方法及其设备、存储介质、终端 | |
CN109670446A (zh) | 基于线性动态系统和深度网络的异常行为检测方法 | |
CN107133569A (zh) | 基于泛化多标记学习的监控视频多粒度标注方法 | |
CN110378997A (zh) | 一种基于orb-slam2的动态场景建图与定位方法 | |
CN105426820B (zh) | 基于安防监控视频数据的多人异常行为检测方法 | |
CN109101865A (zh) | 一种基于深度学习的行人重识别方法 | |
CN106683091A (zh) | 一种基于深度卷积神经网络的目标分类及姿态检测方法 | |
CN108416250A (zh) | 人数统计方法及装置 | |
Li et al. | Sign language recognition based on computer vision | |
CN109376637A (zh) | 基于视频监控图像处理的人数统计系统 | |
CN107016357A (zh) | 一种基于时间域卷积神经网络的视频行人检测方法 | |
CN110321873A (zh) | 基于深度学习卷积神经网络的敏感图片识别方法及系统 | |
Shuai et al. | Object detection system based on SSD algorithm | |
CN107657244A (zh) | 一种基于多摄像机的人体跌倒行为检测系统及其检测方法 | |
CN105095867A (zh) | 基于深度学习的快速动态人脸提取、识别方法 | |
CN113762009B (zh) | 一种基于多尺度特征融合及双注意力机制的人群计数方法 | |
CN111401132A (zh) | 监控场景下高层语义指导的行人属性识别方法 | |
JP2022082493A (ja) | ノイズチャネルに基づくランダム遮蔽回復の歩行者再識別方法 | |
CN109063643A (zh) | 一种用于脸部信息部分隐藏条件下的面部表情痛苦度识别方法 | |
CN109241814A (zh) | 基于yolo神经网络的行人检测方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |