CN112001278A - 一种基于结构化知识蒸馏的人群计数模型及其方法 - Google Patents
一种基于结构化知识蒸馏的人群计数模型及其方法 Download PDFInfo
- Publication number
- CN112001278A CN112001278A CN202010802656.0A CN202010802656A CN112001278A CN 112001278 A CN112001278 A CN 112001278A CN 202010802656 A CN202010802656 A CN 202010802656A CN 112001278 A CN112001278 A CN 112001278A
- Authority
- CN
- China
- Prior art keywords
- network
- crowd
- knowledge
- density map
- student
- 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.)
- Pending
Links
- 238000013140 knowledge distillation Methods 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012549 training Methods 0.000 claims abstract description 25
- 230000008569 process Effects 0.000 claims abstract description 22
- 238000007781 pre-processing Methods 0.000 claims description 57
- 230000006870 function Effects 0.000 claims description 48
- 239000011159 matrix material Substances 0.000 claims description 45
- 238000004364 calculation method Methods 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 26
- 238000004821 distillation Methods 0.000 claims description 17
- 230000003044 adaptive effect Effects 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000005457 optimization Methods 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 4
- 239000000126 substance Substances 0.000 description 6
- 238000011176 pooling Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
Abstract
本发明公开了一种基于结构化知识蒸馏的人群计数模型及其方法,该方法包括:步骤S1,获取人群图像,利用标注的信息生成对应的真实的人群密度图;步骤S2,多次迭代式将不同的人群图像输入重量级的教师网络进行预训练,提取各层特征,并生成估计的人群密度图;步骤S3,将人群图像输入轻量级的学生网络,提取各层特征,并生成估计的人群密度图;步骤S4,计算对应学生网络与教师网络特征的一元知识相似度和成对知识相关系数;步骤S5,通过一元知识相似度和成对知识相关系数以及各人群密度图,计算损失,更新学生网络的参数;步骤S6,利用不同人群图像多次迭代式地进行S1以及S3‑S5的训练过程,直到符合停止条件。
Description
技术领域
本发明涉及计算机视觉技术领域,特别是涉及一种基于结构化知识蒸馏的人群计数模型及其方法。
背景技术
人群计数是人群分析的重要技术,其目标是自动计算出监视情景中的总人数。随着城镇人口的急剧增加,人群计数在视频监控、拥堵报警和交通管理等方面有着很广泛的应用,这使其成为一个热门的研究课题。
近年来,深度神经网络成为人群计数领域的主流方法,在代表性学习能力方面取得了显著的进展。为了取得更好的进展,一些前沿方法使用了重量级的主干网络(如VGG)来提取特征,例如,Yuhong Li等人在2018年的研究工作“CSRNet:Dilated convolutionalneural networks for understanding the highly congested scenes”(IEEEConference on Computer Vision and Pattern Recognition(CVPR),2018)提出了针对复杂拥挤场景理解的CSRNet网络结构,网络前端采用的是VGG-16的卷积层部分提取二维特征,后端则采用了扩张卷积层扩大特征提取的感受野,在拥挤人群场景取得了显著的效果,然而,该方法效率很低,需要巨大的计算成本,而且运行速度很慢,因此如何通过已有的预训练好但笨重的网络来获取高效的人群计数成为目前需要解决的问题。
对于该问题,目前在压缩和加速卷积神经网络方面已有不少尝试,但这些方法或者需要进行繁琐的超参数调整,或者需要依赖特定的硬件平台。
近来,应用广泛的知识蒸馏(Knowledge Distillation,即KD)方法是一个可取的选择,它通过训练一个简单的轻量级学生网络,模仿一个复杂的重量级教师网络的知识,已有很多工作证明了它在图像分类上的有效性,但在人群计数方面,如何蒸馏现有的重量级模型却是一个未经探索的问题。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种基于结构化知识蒸馏的人群计数模型及其方法,以提高人群计数的效率。
为达上述目的,本发明提出一种基于结构化知识蒸馏的人群计数模型,包括:
预处理单元,用于获取人群图像,对人群图像进行标注,利用标注的信息产生真实的人群密度图;
教师网络处理单元,用于多次迭代式地将所述预处理单元的不同人群图像输入使用结构复杂的重量级网络结构的教师网络进行预训练,产生各层特征,生成估计的第一人群密度图;
学生网络预处理单元,用于将所述预处理单元的人群图像输入使用精简的轻量级网络的学生网络,产生各层特征,生成估计的第二人群密度图;
知识蒸馏单元,用于对所述教师网络处理单元的各层特征进行知识蒸馏,计算所述学生网络预处理单元的各层特征与对应的所述教师网络处理单元的各层特征的一元知识相似度和成对知识相关系数;
学生网络更新单元,用于使用所述知识蒸馏单元计算的一元知识相似度和成对知识相关系数,以及所述学生网络预处理单元生成的估计的人群密度图与所述预处理单元生成的真实人群密度图、所述教师网络处理单元生成的估计的人群密度图,计算所述学生网络的各项损失,更新所述学生网络的参数;
学生网络迭代训练单元,用于多次迭代式地对不同人群图像进行所述预处理单元、学生网络预处理单元、知识蒸馏单元以及学生网络更新单元的训练过程,直到满足设定的停止条件时停止训练。
优选地,所述预处理单元利用标注的人头位置信息通过高斯核生成对应的人群密度图:
当所述人群图像中人群密集时,所述预处理单元通过如下公式生成人群密度图,
当所述人群图像中人群稀疏时,所述预处理单元通过如下公式生成人群密度图,
其中,M代表所述人群图像中的人数,x代表图像中每个像素的位置,xi代表第i个人的标注位置,δ(x-xi)表示激活函数,当x与xi的距离大于设定的阈值时为0,小于等于时为1,表示标准差为σi的高斯核,β为一常数,代表第i个人的标注位置与其周边的m个人的标注位置的平均距离,Gσ表示标准差固定为σ的高斯核。
优选地,所述教师网络处理单元使用结构复杂的重量级网络结构CSRNet或BL的教师网络对人群图像进行预训练,多次迭代式地将所述预处理单元的不同的人群图像输入教师网络,提取各层特征并生成估计的第一人群密度图,最后利用生成的估计的第一人群密度图与所述预处理单元产生的真实人群密度图基于均方误差计算损失,采用自适应矩估计优化算法更新网络参数。
优选地,所述学生网络预处理单元使用精简的轻量级网络结构1/n-CSRNet或1/n-BL的学生网络,精简方式是将CSRNet或BL网络中除了最后的输出层之外的每一层特征的通道数减少为原来的1/n,并使用所述预处理单元的不同的人群图像输入学生网络,提取各层特征,并生成估计的第二人群密度图。
优选地,所述知识蒸馏单元进一步包括:
一元知识相似性蒸馏模块,用于计算所述学生网络中特定层的特征与对应教师网络中特定层的一元知识相似度,以便实现将教师网络的特征传递给学生网络;
成对知识相关性蒸馏模块,用于计算所述学生网络的成对特征相关系数和教师网络的成对特征相关系数,以便实现将教师网络的求解流程传递给学生网络。
优选地,所述一元知识相似性蒸馏模块具体用于:
优选地,所述成对知识相关性蒸馏模块进一步包括:
利用FSP矩阵计算方法,分别计算教师网络的特征组T和学生网络的特征组H中任意一对特征之间的FSP矩阵。
优选地,所述学生网络更新单元具体包括:
利用所述知识蒸馏单元的成对知识相关性蒸馏模块计算的教师网络和学生网络的任意一对特征之间的FSP矩阵,基于平方误差计算成对相关系数损失函数;
利用所述学生网络预处理单元生成的估计的人群密度图与预处理单元产生的真实人群密度图,以及所述教师网络处理单元生成的估计的人群密度图,基于平方误差计算人群密度图损失函数;
学生网络参数更新,将上述损失函数进行求和,计算总损失函数,最后根据总损失函数,采用自适应矩估计优化算法更新所述学生网络的参数。
为达到上述目的,本发明还提供一种基于结构化知识蒸馏的人群计数方法,包括如下步骤:
步骤S1,获取人群图像,对人群图像进行标注,利用标注的信息产生真实的人群密度图;
步骤S2,多次迭代式地将所述预处理单元的不同人群图像输入使用结构复杂的重量级网络结构的教师网络进行预训练,产生各层特征,生成估计的第一人群密度图;
步骤S3,将步骤S1的人群图像输入使用精简的轻量级网络的学生网络,产生各层特征,生成估计的第二人群密度图;
步骤S4,对步骤S2的各层特征进行知识蒸馏,计算步骤S3的各层特征与对应的所述教师网络的各层特征的一元知识相似度和成对知识相关系数;
步骤S5,使用步骤S4计算的一元知识相似度和成对知识相关系数,以及步骤S3生成的估计的第二人群密度图与所述预处理单元生成的真实人群密度图、所述教师网络处理单元生成的估计的第二人群密度图,计算所述学生网络的各项损失函数,更新所述学生网络的参数;
步骤S6,多次迭代式地进行步骤S1、S3-S5的训练过程,直到符合停止的条件。
与现有技术相比,本发明一种基于结构化知识蒸馏的人群计数模型及其方法,通过对人群图像进行预处理并利用标注的信息产生对应的人群密度图,接着多次迭代式将不同的人群图像输入教师网络进行预训练,提取各层特征并生成估计的人群密度图,然后多次迭代式地将不同人群图像输入学生网络,并结合来自教师网络的特征计算一元知识相似度和成对知识相关系数,通过一元知识相似度、成对知识相关系数、估计的人群密度图、真实的人群密度图以及教师网络估计的人群密度图等,计算学生网络的各项损失函数,并更新学生网络的参数,最后得到最终的人群计数模型(学生网络),通过本发明,可有效地提高人群计数的效率。
附图说明
图1为本发明一种基于结构化知识蒸馏的人群计数模型的系统架构图;
图2为本发明具体实施例中教师网络和学生网络的知识蒸馏结构图;
图3为本发明一种基于结构化知识蒸馏的人群计数模型的实现方法的步骤流程图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图1为本发明一种基于结构化知识蒸馏的人群计数模型的系统架构图。如图1所示,本发明一种基于结构化知识蒸馏的人群计数模型,包括:
预处理单元101,用于获取人群图像,并利用标注的信息产生对应的人群密度图,作为标签图像。具体地,预处理单元101首先利用图像获取装置(例如监控摄像头)获取人群图像,对人群图像中的人头位置信息进行标注,然后利用标注的人头位置信息通过高斯核生成对应的相同分辨率的人群密度图,在本发明具体实施例中,人头位置信息可采用人工标注方式。
具体地说,本发明参考Y.Zhang等人的研究工作“Single-Image Crowd Countingvia Multi-Column Convolutional Neural Network”(IEEE Conference on ComputerVision and Pattern Recognition(CVPR),June 2016),对传统的基于高斯核的密度图进行改进,使用基于几何适应高斯核的人群密度图作为模型的标签图像。与人群总数相比,人群密度图给出了在给定图像中人群的空间分布,包含着更多信息,更有利于网络学习,而对密度图求和即可得到人群总数。通过高斯核生成对应的人群密度图具体如下:
当图像中人群密集时,通过如下公式生成人群密度图:
其中,M代表所述人群图像中的人数,x代表图像中每个像素的位置,xi代表第i个人的标注位置,δ(x-xi)表示激活函数,当x与xi的距离大于设定的阈值时为0,小于等于时为1,表示标准差为σi的高斯核,β为一常数,代表第i个人的标注位置与其周边的m个人的标注位置的平均距离,
当图像中人群稀疏时,通过如下公式生成人群密度图:
其中,Gσ表示标准差固定为σ的高斯核,其它标记的意义与上述(1)相同。
教师网络处理单元102,用于多次迭代式地将所述预处理单元101的不同人群图像输入使用结构复杂的重量级网络结构的教师网络进行预训练,产生各层特征,生成估计的人群密度图,并利用生成的估计的人群密度图与真实的人群密度图基于均方误差计算损失,采用自适应矩估计优化算法更新教师网络的参数。在本发明具体实施例中,所述重量级网络结构可采用在人群计数方面表现出色的CSRNet或BL,即教师网络处理单元102采用CSRNet或BL对人群图像进行预训练,多次迭代式地将不同的人群图像输入重量级网络结构的教师网络,提取各层特征并生成估计的人群密度图,最后利用生成的估计的人群密度图与真实的人群密度图基于均方误差计算损失,采用自适应矩估计优化算法更新网络参数。由于CSRNet或BL均为现有的网络结构,其结构在此不予赘述。
学生网络预处理单元103,用于将所述预处理单元101的人群图像输入使用精简的轻量级网络的学生网络,产生各层特征,生成估计的人群密度图。
在本发明具体实施例中,学生网络预处理单元103使用精简的1/n-CSRNet以及1/n-BL等轻量级网络结构,精简方式是将CSRNet以及BL等网络中每一层特征(除了最后的输出层之外)的通道数减少为原来的1/n,以减少网络结构的总参数,在本发明的具体实施例中,选取的通道减少比例为1/16,即取n=16,接着使用不同的人群图像输入使用精简的轻量级网络的学生网络,提取各层特征,并生成估计的人群密度图。
知识蒸馏单元104,用于对所述教师网络处理单元的各层特征进行知识蒸馏,计算所述学生网络预处理单元的各层特征与对应的所述教师网络处理单元的各层特征的一元知识相似度和成对知识相关系数。以下使用CSRNet的网络结构进行说明。
在本发明具体实施例中,所述知识蒸馏单元104对所述教师网络处理单元102的各层特征进行知识蒸馏,计算所述学生网络预处理单元103的各层特征与对应的所述教师网络处理单元102的各层特征的一元知识相似度和成对知识相关系数。具体地,知识蒸馏单元104进一步包括:
一元知识相似性蒸馏模块,用于计算学生网络的特征与对应教师网络特征的一元知识相似度,以便实现将教师网络的特征传递给学生网络,为了降低计算成本,只选择特定的特征组进行计算。
在本发明具体实施例中,所述一元知识相似性蒸馏模块具体用于:
如图2所示,CRSNet网络(教师网络)总共包括5个卷积组,每个卷积组有不同的卷积层层数,其中最后一个卷积组是扩张卷积组;以记CSRNet的第i个卷积组的第j个卷积层,以记1/n-CSRNet(学生网络)的第i个卷积组的第j个卷积层,特定的特征组选取为第1-5个卷积组的第1个卷积层以及第5个卷积组的第4个卷积层,即{Conv1_1,Conv2_1,Conv3_1,Conv4_1Conv5_1,Conv5_4},分别将特征组记为
由于1/n-CSRNet的通道数经过削减而与CSRNet不一致,为了进行相似度计算,先对1/n-CSRNet进行通道数调整,使得对应特征的通道数与CSRNet的一致,本发明直接通过一个1×1的卷积w1×1对特定的特征组S实现通道数调整,将调整后的1/n-CSRNet的特征记为
计算一元知识相似度,使用cosine度量计算2个特征之间的相似度。
如图2所示,将由Cosine度量的一元知识相似度转化为1/n-CSRNet损失函数的一部分,通过最大化一元知识相似度即可让1/n-CSRNet模仿CSRNet学习到的知识,从而实现将教师网络的知识传递给学生网络。
成对知识相关性蒸馏模块,用于计算学生网络的成对特征相关系数和教师网络的成对特征相关系数,以便实现将教师网络的求解流程传递给学生网络。
如图2所示,计算CSRNet的特定特征组H中任意一对特征的求解流程矩阵,以及1/n-CSRNet的特定特征组T中任意一对特征的求解流程矩阵,以此对求解流程进行建模,通过成对知识相关系数可以计算求解流程矩阵。
求解流程矩阵计算,同时也称为FSP矩阵计算,利用成对特征之间的相关系数对求解流程进行建模,对于特征f1∈Rh×w×m,f2∈Rh×w×n,通过在通道内作内积计算它们的FSP矩阵矩阵在位置(c1,c2)处的值的计算公式如下:
其中,h和w是特征f1和f2的高度和宽度,m是特征f1的通道数,n是特征f2的通道数,f1(x,y,c1)是特征f1在位置(x,y)的第c1个通道处的取值,f2(x,y,c2)是特征f2在位置(x,y)的第c2个通道处的取值。
由于上述FSP矩阵计算要求任意一对特征的尺寸一致,先分别对CSRNet和1/n-CSRNet进行特征池化,将特定的特征组T和H统一到相同的尺寸,为了降低计算成本,选取网络中第5个卷积组的第4个卷积层的尺寸作为基准(即和的尺寸),通过最大池化法,将T和H中的特征缩小到尺寸并分别记缩小后的特征为和
然后进行密集的FSP矩阵计算,利用上述FSP矩阵计算方法,分别计算CSRNet的特征组T和1/n-CSRNet的特征组H中任意一对特征之间的FSP矩阵,对T中的任意一对特征和计算FSP矩阵同样地对H中对应的特征和计算FSP矩阵
如图2所示,将由求解流程矩阵度量的成对知识相关系数转化为1/n-CSRNet损失函数的一部分,通过最大化成对知识相关系数即可让1/n-CSRNet模仿CSRNet的求解流程,从而实现将教师网络的求解流程传递给学生网络。
学生网络更新单元105,用于使用所述知识蒸馏单元104计算的一元知识相似度和成对知识相关系数,以及所述学生网络预处理单元103生成的估计的第二人群密度图与所述预处理单元101生成的真实人群密度图、所述教师网络处理单元102生成的估计的第一人群密度图,计算损失,更新学生网络的参数。也就是说,学生网络更新单元105计算1/n-CSRNet(学生网络)的各项损失函数,并更新网络的参数,在本发明具体实施例中,损失函数的计算基于一元知识相似度、成对知识相关系数以及人群密度图。
在本发明具体实施例中,学生网络更新单元105具体用于:
计算一元知识相似度损失,利用所述知识蒸馏单元104的一元知识相似性蒸馏模块计算的教师网络和学生网络的相似度结合在所有位置(x,y)处的相似度,计算一元知识相似度损失函数。具体地,利用上述的CSRNet(教师网络)和1/n-CSRNet(学生网络)在第i个卷积组的第j个卷积层的位置(x,y)处的一元知识相似度设计一元知识相似度损失的计算公式如下:
计算成对相关系数损失,利用所述知识蒸馏单元104的成对知识相关性蒸馏模块计算的教师网络和学生网络的任意一对特征之间的FSP矩阵,基于平方误差计算成对相关系数损失函数。具体地,利用上述CSRNet的特征组T中任意一对特征之间的FSP矩阵和1/n-CSRNet的特征组H中任意一对特征之间的FSP矩阵,设计成对相关系数损失的计算公式如下:
计算人群密度图损失,利用所述学生网络预处理单元生成的估计的第二人群密度图与预处理单元产生的真实人群密度图,以及所述教师网络处理单元生成的估计的第一人群密度图,基于平方误差计算人群密度图损失函数。如图2所示,为了充分利用CSRNet,将CSRNet生成的人群密度图也引入1/n-CSRNet的损失函数,即不仅利用1/n-CSRNet生成的估计的人群密度图Ms与真实的人群密度图M的差距,也利用1/n-CSRNet生成的估计的人群密度图Ms与CSRNet生成的估计的人群密度图Mt的差距,基于平方误差计算损失的公式如下:
其中,||*||2指2-范数。
学生网络(1/n-CSRNet)参数更新,将上述3个损失函数进行求和,计算总损失函数,最后根据总损失函数,采用自适应矩估计优化算法更新学生网络的参数更新。具体地,结合上述3个损失函数,可以得到总体的损失函数如下:
最后根据总损失函数,采用自适应矩估计优化算法更新学生网络的参数。本发明利用1/n-CSRNet和CSRNet的一元知识相似度损失和成对知识相关系数损失,以及2个网络生成的估计的人群密度图的损失,作为1/n-CSRNet的损失函数的一部分,可以使得1/n-CSRNet使用精简的结构模仿学习CSRNet的知识,从而大大提高人群计数网络的效率,与此同时,使用1/n-CSRNet与真实的人群密度图的损失,可以拉近1/n-CSRNet与真实情况的距离,从而提高学习精度。
学生网络迭代训练单元105,用于多次迭代式地进行预处理单元101、学生网络预处理单元103、知识蒸馏单元104以及学生网络更新单元105的训练过程,直到满足设定的停止条件时停止训练。
图3为本发明一种基于结构化知识蒸馏的人群计数方法的步骤流程图。如32所示,本发明一种基于结构化知识蒸馏的人群计数方法,包括如下步骤:
步骤S1,获取人群图像,并利用标注的信息产生对应的人群密度图,作为标签图像。
在本发明具体实施例中,所述人群密度图的生成方式如下:
当图像中人群密集时,通过如下公式生成人群密度图:
其中,M代表所述人群图像中的人数,x代表图像中每个像素的位置,xi代表第i个人的标注位置,δ(x-xi)表示激活函数,当x与xi的距离大于设定的阈值时为0,小于等于时为1,表示标准差为σi的高斯核,β为一常数,代表第i个人的标注位置与其周边的m个人的标注位置的平均距离,
当图像中人群稀疏时,通过如下公式生成人群密度图:
其中,Gσ表示标准差固定为σ的高斯核,其它标记的意义与上述相同。
步骤S2,使用结构复杂的重量级网络结构对人群图像进行预训练,多次迭代式地将不同的人群图像输入教师网络,提取各层特征并生成估计的第一人群密度图,最后利用生成的估计的人群密度图与真实的人群密度图基于均方误差计算损失,采用自适应矩估计优化算法更新网络参数,在本发明具体实施例中,所述重量级网络结构采用的是在人群计数方面表现出色的CSRNet和BL。
步骤S3,将步骤S1得到的人群图像输入使用精简的轻量级网络结构的学生网络,产生各层特征,生成估计的第二人群密度图。在本发明具体实施例中,所述轻量级网络结构采用精简的1/n-CSRNet以及1/n-BL等轻量级网络结构,精简方式是将CSRNet以及BL等网络中每一层特征(除了最后的输出层之外)的通道数减少为原来的1/n,以减少网络结构的总参数,在本发明的具体实施例中,选取的通道减少比例为1/16,即取n=16,接着使用不同的人群图像输入使用精简的轻量级网络的学生网络,提取各层特征,并生成估计的人群密度图。
步骤S4,对所述教师网络处理单元的各层特征进行知识蒸馏,计算所述学生网络预处理单元的各层特征与对应的所述教师网络处理单元的各层特征的一元知识相似度和成对知识相关系数。以下使用CSRNet的网络结构进行说明。
具体地,步骤S4进一步包括:
步骤S401,计算学生网络的特征与对应教师网络特征的一元知识相似度,以便实现将教师网络的特征传递给学生网络,为了降低计算成本,只选择特定的特征组进行计算;
步骤S402,计算学生网络的成对特征相关系数和教师网络的成对特征相关系数,以便实现将教师网络的求解流程传递给学生网络。
在本发明具体实施例中,步骤S401的一元知识相似度的具体计算过程如下:
如图2所示,CRSNet网络(教师网络)总共包括5个卷积组,每个卷积组有不同的卷积层层数,其中最后一个卷积组是扩张卷积组;以记CSRNet的第i个卷积组的第j个卷积层,以记1/n-CSRNet(学生网络)的第i个卷积组的第j个卷积层,特定的特征组选取为第1-5个卷积组的第1个卷积层以及第5个卷积组的第4个卷积层,即{Conv1_1,Conv2_1,Conv3_1,Conv4_1Conv5_1,Conv5_4},分别将特征组记为
由于1/n-CSRNet的通道数经过削减而与CSRNet不一致,为了进行相似度计算,先对1/n-CSRNet进行通道数调整,使得对应特征的通道数与CSRNet的一致,本发明直接通过一个1×1的卷积w1×1对特定的特征组S实现通道数调整,将调整后的1/n-CSRNet的特征记为
如图2所示,将由Cosine度量的一元知识相似度转化为1/n-CSRNet损失函数的一部分,通过最大化一元知识相似度即可让1/n-CSRNet模仿CSRNet学习到的知识,从而实现将教师网络的知识传递给学生网络。
在本发明具体实施例中,步骤S402成对特征相关系数的具体计算过程如下:
如图2所示,计算CSRNet的特定特征组H中任意一对特征的求解流程矩阵,以及1/n-CSRNet的特定特征组T中任意一对特征的求解流程矩阵,以此对求解流程进行建模,通过成对知识相关系数可以计算求解流程矩阵。
求解流程矩阵计算,同时也称为FSP矩阵计算,利用成对特征之间的相关系数对求解流程进行建模,对于特征f1∈Rh×w×m,f2∈Rh×w×n,通过在通道内作内积计算它们的FSP矩阵矩阵在位置(c1,c2)处的值的计算公式如下:
其中,h和w是特征f1和f2的高度和宽度,m是特征f1的通道数,n是特征f2的通道数,f1(x,y,c1)是特征f1在位置(x,y)的第c1个通道处的取值,f2(x,y,c2)是特征f2在位置(x,y)的第c2个通道处的取值。
由于上述FSP矩阵计算要求任意一对特征的尺寸一致,先分别对CSRNet和1/n-CSRNet进行特征池化,将特定的特征组T和H统一到相同的尺寸,为了降低计算成本,选取网络中第5个卷积组的第4个卷积层的尺寸作为基准(即和的尺寸),通过最大池化法,将T和H中的特征缩小到尺寸并分别记缩小后的特征为和
然后进行密集的FSP矩阵计算,利用上述FSP矩阵计算方法,分别计算CSRNet的特征组T和1/n-CSRNet的特征组H中任意一对特征之间的FSP矩阵,对T中的任意一对特征和计算FSP矩阵同样地对H中对应的特征和计算FSP矩阵
如图2所示,将由求解流程矩阵度量的成对知识相关系数转化为1/n-CSRNet损失函数的一部分,通过最大化成对知识相关系数即可让1/n-CSRNet模仿CSRNet的求解流程,从而实现将教师网络的求解流程传递给学生网络。
步骤S5,计算1/n-CSRNet(学生网络)的各项损失函数,并更新网络的参数,在本发明具体实施例中,损失函数的计算基于一元知识相似度、成对知识相关系数以及人群密度图。也就是说,使用步骤S4计算的一元知识相似度和成对知识相关系数,以及步骤S3生成的估计的第二人群密度图与所述预处理单元生成的真实人群密度图、所述教师网络处理单元生成的估计的第二人群密度图,计算学生网络的各项损失函数,更新学生网络的参数
具体地,步骤S5进一步包括:
步骤S501,计算一元知识相似度损失,利用上述步骤S401的一元知识相似度,可以转化为学生网络的损失函数的一部分;
步骤S502,计算成对知识相关系数损失,利用上述步骤S402的成对知识相关系数,可以转化为学生网络的损失函数的一部分;
步骤S503,计算人群密度图损失,利用学生网络生成的估计的人群密度图和真实的人群密度图的差距,以及学生网络生成的估计的人群密度图和教师网络生成的估计的人群密度图的差距,可以转化为学生网络损失函数的一部分。
在本发明具体实施例中,步骤S501计算一元知识相似度损失的具体实现过程如下:
在本发明具体实施例中,步骤S502计算成对知识相关系数损失的具体实现过程如下:
利用上述CSRNet的特征组T中任意一对特征之间的FSP矩阵和1/n-CSRNet的特征组H中任意一对特征之间的FSP矩阵,设计成对相关系数损失的计算公式如下:
在本发明具体实施例中,步骤S503计算人群密度图损失的具体实现过程如下:
如图2所示,为了充分利用CSRNet,将CSRNet生成的人群密度图也引入1/n-CSRNet的损失函数,即不仅利用1/n-CSRNet生成的估计的人群密度图Ms与真实的人群密度图M的差距,也利用1/n-CSRNet生成的估计的人群密度图Ms与CSRNet生成的估计的人群密度图Mt的差距,基于平方误差计算损失的公式如下:
其中,||*||2指2-范数。
1/n-CSRNet参数更新,结合上述3个损失函数,可以得到总体的损失函数如下:
最后根据总损失函数,采用自适应矩估计优化算法更新学生网络的参数。本发明利用1/n-CSRNet和CSRNet的一元知识相似度损失和成对知识相关系数损失,以及2个网络生成的估计的人群密度图的损失,作为1/n-CSRNet的损失函数的一部分,可以使得1/n-CSRNet使用精简的结构模仿学习CSRNet的知识,从而大大提高人群计数网络的效率,与此同时,使用1/n-CSRNet与真实的人群密度图的损失,可以拉近1/n-CSRNet与真实情况的距离,从而提高学习精度。
步骤S6,多次迭代式地进行步骤S1、S3-S5的训练过程,直到符合停止的条件。具体地,交替进行步骤S1、S3、S4、S5,直到满足设定的停止条件时停止第一阶段的训练。
综上所述,本发明一种基于结构化知识蒸馏的人群计数模型及其方法,通过对人群图像进行预处理并利用标注的信息产生对应的人群密度图,接着多次迭代式将不同的人群图像输入教师网络进行预训练,提取各层特征并生成估计的人群密度图,然后多次迭代式地将不同人群图像输入学生网络,并结合来自教师网络的特征计算一元知识相似度和成对知识相关系数,通过一元知识相似度、成对知识相关系数、估计的人群密度图、真实的人群密度图以及教师网络估计的人群密度图等,计算学生网络的各项损失函数,并更新学生网络的参数,最后得到最终的人群计数模型(学生网络),通过本发明,可有效地提高人群计数的效率。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
Claims (10)
1.一种基于结构化知识蒸馏的人群计数模型,包括:
预处理单元,用于获取人群图像,对人群图像进行标注,利用标注的信息产生真实的人群密度图;
教师网络处理单元,用于多次迭代式地将所述预处理单元的不同人群图像输入使用结构复杂的重量级网络结构的教师网络进行预训练,产生各层特征,生成估计的第一人群密度图;
学生网络预处理单元,用于将所述预处理单元的人群图像输入使用精简的轻量级网络的学生网络,产生各层特征,生成估计的第二人群密度图;
知识蒸馏单元,用于对所述教师网络处理单元的各层特征进行知识蒸馏,计算所述学生网络处理单元的各层特征与对应的所述教师网络处理单元的各层特征的一元知识相似度和成对知识相关系数;
学生网络更新单元,用于使用所述知识蒸馏单元计算的一元知识相似度和成对知识相关系数,以及所述学生网络预处理单元生成的估计的人群密度图与所述预处理单元生成的真实人群密度图、所述教师网络处理单元生成的估计的人群密度图,计算所述学生网络的各项损失,更新所述学生网络的参数;
学生网络迭代训练单元,用于多次迭代式地对不同人群图像进行所述预处理单元、学生网络预处理单元、知识蒸馏单元以及学生网络更新单元的训练过程,直到满足设定的停止条件时停止训练。
3.如权利要求2所述的一种基于结构化知识蒸馏的人群计数模型,其特征在于:所述教师网络处理单元使用结构复杂的重量级网络结构CSRNet或BL的教师网络对人群图像进行预训练,多次迭代式地将所述预处理单元的不同的人群图像输入教师网络,提取各层特征并生成估计的第一人群密度图,最后利用生成的估计的第一人群密度图与所述预处理单元产生的真实人群密度图基于均方误差计算损失,采用自适应矩估计优化算法更新网络参数。
4.如权利要求3所述的一种基于结构化知识蒸馏的人群计数模型,其特征在于:所述学生网络预处理单元使用精简的轻量级网络结构1/n-CSRNet或1/n-BL的学生网络,精简方式是将CSRNet或BL网络中除了最后的输出层之外的每一层特征的通道数减少为原来的1/n,并使用所述预处理单元的不同的人群图像输入学生网络,提取各层特征,并生成估计的第二人群密度图。
5.如权利要求4所述的一种基于结构化知识蒸馏的人群计数模型,其特征在于,所述知识蒸馏单元进一步包括:
一元知识相似性蒸馏模块,用于计算所述学生网络中特定层的特征与对应教师网络中特定层的一元知识相似度,以便实现将教师网络的特征传递给学生网络;
成对知识相关性蒸馏模块,用于计算所述学生网络的成对特征相关系数和教师网络的成对特征相关系数,以便实现将教师网络的求解流程传递给学生网络。
9.如权利要求7所述的一种基于结构化知识蒸馏的人群计数模型,其特征在于,所述学生网络更新单元具体包括:
利用所述知识蒸馏单元的成对知识相关性蒸馏模块计算的教师网络和学生网络的任意一对特征之间的FSP矩阵,基于平方误差计算成对相关系数损失函数;
利用所述学生网络预处理单元生成的估计的人群密度图与预处理单元产生的真实人群密度图,以及所述教师网络处理单元生成的估计的人群密度图,基于平方误差计算人群密度图损失函数;
学生网络参数更新,将上述损失函数进行求和,计算总损失函数,最后根据总损失函数,采用自适应矩估计优化算法更新所述学生网络的参数。
10.一种基于结构化知识蒸馏的人群计数方法,包括如下步骤:
步骤S1,获取人群图像,对人群图像进行标注,利用标注的信息产生真实的人群密度图;
步骤S2,多次迭代式地将所述预处理单元的不同人群图像输入使用结构复杂的重量级网络结构的教师网络进行预训练,产生各层特征,生成估计的第一人群密度图;
步骤S3,将步骤S1的人群图像输入使用精简的轻量级网络的学生网络,产生各层特征,生成估计的第二人群密度图;
步骤S4,对步骤S2的各层特征进行知识蒸馏,计算步骤S3的各层特征与对应的所述教师网络的各层特征的一元知识相似度和成对知识相关系数;
步骤S5,使用步骤S4计算的一元知识相似度和成对知识相关系数,以及步骤S3生成的估计的第二人群密度图与所述预处理单元生成的真实人群密度图、所述教师网络处理单元生成的估计的第二人群密度图,计算所述学生网络的各项损失函数,更新所述学生网络的参数;
步骤S6,多次迭代式地进行步骤S1、S3-S5的训练过程,直到符合停止的条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010802656.0A CN112001278A (zh) | 2020-08-11 | 2020-08-11 | 一种基于结构化知识蒸馏的人群计数模型及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010802656.0A CN112001278A (zh) | 2020-08-11 | 2020-08-11 | 一种基于结构化知识蒸馏的人群计数模型及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112001278A true CN112001278A (zh) | 2020-11-27 |
Family
ID=73463807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010802656.0A Pending CN112001278A (zh) | 2020-08-11 | 2020-08-11 | 一种基于结构化知识蒸馏的人群计数模型及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112001278A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560631A (zh) * | 2020-12-09 | 2021-03-26 | 昆明理工大学 | 一种基于知识蒸馏的行人重识别方法 |
CN112861718A (zh) * | 2021-02-08 | 2021-05-28 | 暨南大学 | 一种轻量级特征融合人群计数方法及系统 |
CN113343790A (zh) * | 2021-05-21 | 2021-09-03 | 中车唐山机车车辆有限公司 | 一种交通枢纽的客流统计方法、装置及存储介质 |
CN113642532A (zh) * | 2021-10-13 | 2021-11-12 | 广州虎牙信息科技有限公司 | 视频分类模型处理方法、装置及数据处理设备 |
CN113673254A (zh) * | 2021-08-23 | 2021-11-19 | 东北林业大学 | 基于相似度保持的知识蒸馏的立场检测方法 |
CN113837941A (zh) * | 2021-09-24 | 2021-12-24 | 北京奇艺世纪科技有限公司 | 图像超分模型的训练方法、装置及计算机可读存储介质 |
CN114581946A (zh) * | 2022-02-25 | 2022-06-03 | 江西师范大学 | 人群计数方法、装置、存储介质及电子设备 |
CN117806172A (zh) * | 2024-02-28 | 2024-04-02 | 华中科技大学 | 一种基于云边协同与自适应知识传递的故障诊断方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301387A (zh) * | 2017-06-16 | 2017-10-27 | 华南理工大学 | 一种基于深度学习的图像高密度人群计数方法 |
CN110610143A (zh) * | 2019-08-27 | 2019-12-24 | 汇纳科技股份有限公司 | 多任务联合训练的人群计数网络方法、系统、介质及终端 |
CN110705344A (zh) * | 2019-08-21 | 2020-01-17 | 中山大学 | 一种基于深度学习的人群计数模型及其实现方法 |
-
2020
- 2020-08-11 CN CN202010802656.0A patent/CN112001278A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301387A (zh) * | 2017-06-16 | 2017-10-27 | 华南理工大学 | 一种基于深度学习的图像高密度人群计数方法 |
CN110705344A (zh) * | 2019-08-21 | 2020-01-17 | 中山大学 | 一种基于深度学习的人群计数模型及其实现方法 |
CN110610143A (zh) * | 2019-08-27 | 2019-12-24 | 汇纳科技股份有限公司 | 多任务联合训练的人群计数网络方法、系统、介质及终端 |
Non-Patent Citations (1)
Title |
---|
LINGBO LIU ET AL.: "Efficient Crowd Counting via Structured Knowledge Transfer", 《ARXIV:2003.10120V2》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560631A (zh) * | 2020-12-09 | 2021-03-26 | 昆明理工大学 | 一种基于知识蒸馏的行人重识别方法 |
CN112861718A (zh) * | 2021-02-08 | 2021-05-28 | 暨南大学 | 一种轻量级特征融合人群计数方法及系统 |
CN113343790A (zh) * | 2021-05-21 | 2021-09-03 | 中车唐山机车车辆有限公司 | 一种交通枢纽的客流统计方法、装置及存储介质 |
CN113673254A (zh) * | 2021-08-23 | 2021-11-19 | 东北林业大学 | 基于相似度保持的知识蒸馏的立场检测方法 |
CN113673254B (zh) * | 2021-08-23 | 2022-06-07 | 东北林业大学 | 基于相似度保持的知识蒸馏的立场检测方法 |
CN113837941A (zh) * | 2021-09-24 | 2021-12-24 | 北京奇艺世纪科技有限公司 | 图像超分模型的训练方法、装置及计算机可读存储介质 |
CN113837941B (zh) * | 2021-09-24 | 2023-09-01 | 北京奇艺世纪科技有限公司 | 图像超分模型的训练方法、装置及计算机可读存储介质 |
CN113642532A (zh) * | 2021-10-13 | 2021-11-12 | 广州虎牙信息科技有限公司 | 视频分类模型处理方法、装置及数据处理设备 |
CN113642532B (zh) * | 2021-10-13 | 2022-02-08 | 广州虎牙信息科技有限公司 | 视频分类模型处理方法、装置及数据处理设备 |
CN114581946A (zh) * | 2022-02-25 | 2022-06-03 | 江西师范大学 | 人群计数方法、装置、存储介质及电子设备 |
CN117806172A (zh) * | 2024-02-28 | 2024-04-02 | 华中科技大学 | 一种基于云边协同与自适应知识传递的故障诊断方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112001278A (zh) | 一种基于结构化知识蒸馏的人群计数模型及其方法 | |
CN107506740B (zh) | 一种基于三维卷积神经网络和迁移学习模型的人体行为识别方法 | |
CN111709409B (zh) | 人脸活体检测方法、装置、设备及介质 | |
Zhao et al. | Transfer learning with fully pretrained deep convolution networks for land-use classification | |
EP3968179A1 (en) | Place recognition method and apparatus, model training method and apparatus for place recognition, and electronic device | |
CN111814661B (zh) | 基于残差-循环神经网络的人体行为识别方法 | |
CN109886225A (zh) | 一种基于深度学习的图像手势动作在线检测与识别方法 | |
CN110796057A (zh) | 行人重识别方法、装置及计算机设备 | |
CN111368943B (zh) | 图像中对象的识别方法和装置、存储介质及电子装置 | |
CN111783576A (zh) | 基于改进型YOLOv3网络和特征融合的行人重识别方法 | |
CN107767416B (zh) | 一种低分辨率图像中行人朝向的识别方法 | |
WO2021218671A1 (zh) | 目标跟踪方法及装置、存储介质及计算机程序 | |
CN111639580B (zh) | 一种结合特征分离模型和视角转换模型的步态识别方法 | |
US20230162522A1 (en) | Person re-identification method of integrating global features and ladder-shaped local features and device thereof | |
CN111783748A (zh) | 人脸识别方法、装置、电子设备及存储介质 | |
CN113408343B (zh) | 基于双尺度时空分块互注意力的课堂动作识别方法 | |
CN113610046B (zh) | 一种基于深度视频联动特征的行为识别方法 | |
CN112581540A (zh) | 一种大场景下基于人体姿态估计的相机标定方法 | |
CN109886160B (zh) | 一种非限定条件下的人脸识别方法 | |
CN108009512A (zh) | 一种基于卷积神经网络特征学习的人物再识别方法 | |
CN114882537A (zh) | 一种基于神经辐射场的手指新视角图像生成方法 | |
KR20210040604A (ko) | 행위 인식 방법 및 장치 | |
CN111401113A (zh) | 一种基于人体姿态估计的行人重识别方法 | |
CN114187506A (zh) | 视点意识的动态路由胶囊网络的遥感图像场景分类方法 | |
CN111242003B (zh) | 一种基于多尺度受约束自注意机制的视频显著性物体检测的方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201127 |
|
RJ01 | Rejection of invention patent application after publication |