密度图表示经过两个步骤:人群图像标注表示,人群图像标注转换为人群密度图(这里的描述语言是自己编的,为了更易于理解)
1. 人群图像标注表示
如图1所示,19*19大小方格表示人群图像(绿色外层方格表示坐标),该图像包含3个人,以左上角为坐标原点,坐标(3, 6), (12, 9), (17, 15)表示标注的人头中心点位置(在图1中表示为方格对应坐标的值为1)
图1 人群图像标注表示
2. 人群密度图转换表示(人群图像标注转换为人群密度图)
假设在图像中每个人头大小都是3*3像素(当然这只是示例假设,MCNN中用几何自适应高斯核来估计图像中每个人头的大小并转换为密度图,这是后话了,这里我们想讲述的是什么是密度图,以及转换为密度图的方法之一)
图2 人群密度图表示
图2就是我们作为卷积神经网络进行人群计数的Ground Truth,各个人头区域的概率之和为1,得到对完整人群图像的密度图后,对其进行积分(求和)就是人群数目。
图3 Matlab fspecial('gaussian',[3,3],0.3)函数所得二维高斯核,其中[3,3]表示参数二维高斯核大小,0.3表示参数二维高斯核标准差
图4 人群密度图示例
图4是人群图像及其密度图的示例,用热力图来显示人群密度图就是右侧对应的Ground Truth。
MCNN中的标签密度图生成方法
1. 标签密度图生成方法
步骤a. 表示人头中心坐标位置,用
函数表示,对于一张有
个人头标注的人群图像来说可以表示为
函数(其实得到的就是如图1的人群图像标注表示):
步骤b. 转化为连续密度函数,其中所表示的就是高斯核,
为高斯核标准差,
是个定值,论文里取0.3,
表示图像中该人头距离其k邻近人头的欧式距离和的平均,
也是用于表示估计的人头大小(在图2人群密度图表示的时候,使用二维高斯核时,需要设定高斯核大小用以表示估计的人头大小):
若人群分布密集,所计算的值能够相对准确用于估计人头大小;但若人群分布稀疏,其k近邻人头距离过远,
值就会非常大,人头估计误差大,因此将
限制在100像素内。
文章转载自 链接:https://www.jianshu.com/p/a1006c4b6fdc