System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及人群密度估计,尤其涉及一种基于深度学习的人群密度估计方法。
技术介绍
1、随着城市化进程的加快和人群规模的快速增长,人群密度估计成为了重要的分析工具。准确估计人群密度可以帮助城市规划者和安防部门更好地理解人群流动情况,有效管理人流,提升城市的安全性和便利性。
2、公开号为cn108563975b的专利公开了一种基于深度学习的高密度人群人数估计方法,通过用混合高斯模型的方法提取视频的前景和背景图像,并进行预处理操作;采集热成像图,使用热成像仪获取该前景图像所对应的rgb热力图像。然后提取该热力图像中所有r通道的值,生成一个热力矩阵;采集灰度图像;训练一个卷积神经网络模型;用训练之后的人群估算模型对步骤4中的人口热力矩阵进行测试,得出模型反馈的结果,最终得出估算的人群数量。
3、由此可见,所述基于深度学习的高密度人群人数估计方法存在以下问题:
4、由于在高密度人群中行人之间存在遮挡和重叠导致估计密度的误差较大的问题。
技术实现思路
1、为此,本专利技术提供一种基于深度学习的人群密度估计方法,用以克服现有技术中由于在高密度人群中行人之间存在遮挡和重叠导致估计密度的误差较大的问题。
2、为实现上述目的,本专利技术提供一种基于深度学习的人群密度估计方法,包括以下步骤:
3、s1、收集图像数据集,对图像数据集中的若干待处理图像进行预处理操作,每个所述待处理图像均包含人群;
4、s2、使用resnet网络模型从
5、s3、使用u-net结构生成网络将所述特征图转换为人群密度图;
6、s4、设计损失函数,以得到均方误差损失函数;
7、s5、使用70%的所述人群密度图作为训练数据集和所述均方误差损失函数对第一acscp模型进行训练,以得到第二acscp模型;
8、s6、将新的待处理图像经过所述s2和所述s3的步骤,得到新的待处理图像对应的人群密度图;
9、s7、将所述新的待处理图像对应的人群密度图输入所述第二acscp模型中,所述第二acscp模型输出第三密度图;
10、s8、使用均方根误差对所述第三密度图进行评估。
11、进一步地,所述s1步骤包括以下步骤:
12、s11、将所述若干待处理图像的尺寸调整到预设尺寸值,使用opencv中的函数最近邻插值实现图像缩放操作,以形成缩放图像;
13、s12、将所述缩放图像按预设裁剪值进行裁剪,以形成裁剪图像;
14、s13、使用均值滤波对所述裁剪图像去噪,以形成预处理图像。
15、进一步地,所述s2步骤包括以下步骤:
16、s21、使用pytorch中的torchvision库来加载所述resnet模型;
17、s22、将所述预处理图像输入所述resnet模型,通过前向传播计算得到图像的特征向量;
18、s23、对特征向量进行reshape操作,将特征向量重新调整为二维矩阵的特征图形式。
19、进一步地,所述s3步骤包括以下步骤:
20、s31、准备一组带有标注人群密度图的训练样本,每个训练样本包括一个所述特征图和对应的所述人群密度图;
21、s32、构建一个包含编码器和解码器的u-net结构生成网络;
22、s33、定义一个均方误差损失函数;
23、s34、使用准备好的训练数据和定义的损失函数,通过反向传播算法,优化网络参数对所述u-net结构生成网络进行训练;
24、s35、在训练完成后,使用训练好的所述u-net结构生成网络,将特征图输入所述u-net结构生成网络,通过前向传播计算得到人群密度图。
25、进一步地,所述s4步骤包括以下步骤:
26、s41、计算预测值和真实值之间差值的平方,以获得误差;
27、s42、对所有样本的误差进行求平均,以获得平均误差;
28、s43、将平均误差作为损失函数的值,均方误差损失函数表示为:l(y,y’)=1/n×σ(y-y’)2,其中,l表示损失函数,y表示真实值,y’表示模型的预测值,n表示样本数量,σ表示求和运算。
29、进一步地,所述s5步骤包括以下步骤:
30、s51、从所述人群密度图中选择70%的样本作为训练数据,并进行归一化、平衡样本分数据预处理;
31、s52、对resnet网络模型和u-net结构生成网络进行权重和偏置的初始化;
32、s53、选择adam优化器并使用随机初始化的学习率、动量和权重衰减超参数;
33、s54、使用训练数据集中的图像对所述第一acscp模型进行迭代训练,并使用最小化均方误差损失函数来调整所述学习率、动量和权重衰减超参数,以得到第二acscp模型;
34、s57、重复执行步骤s54到步骤s56,直到达到最大迭代次数。
35、进一步地,所述s54步骤中包括以下步骤:
36、s541、将所述训练数据集中的图像通过resnet网络模型获取特征图,然后使用u-net结构生成网络将所述特征图转换为人群密度图;
37、s542、根据包含所述待处理图像中的人头数量和二维坐标的标注文件中的人头位置信息,在图像上将对应位置的像素点置为1,其余像素点置为0,以得到二值图像,使用高斯核函数对二值图像进行卷积,以得到真实密度图,通过对比所述人群密度图和所述真实密度图,计算均方误差损失函数的值;
38、s543、根据损失函数的值,使用反向传播算法计算梯度,并更新模型的参数;
39、s544、根据梯度信息,使用所述adam优化器更新学习率、动量和权重衰减超参数的值;
40、s545、重复执行步骤s541到s544,直到达到预定的迭代次数为止。
41、进一步地,所述s6步骤包括以下步骤:
42、s61、输入所述特征图通过所述编码器部分进行多次的卷积操作,利用不同尺度的卷积核提取图像特征;
43、s62、在编码器部分的每个卷积层后,进行下采样操作以增加感受野和减少特征图的尺寸;
44、s63、将编码器的最后一层得到的特征图传递给解码器部分;
45、s64、解码器部分逐步进行上采样操作,将特征图的尺寸恢复到原始输入图像的尺寸;
46、s65、在上采样的过程中,将编码器中的特征图与解码器中的特征图进行融合,结合不同尺度的信息;
47、s66、通过一层卷积层将解码器的输出转换为与输入图像尺寸相同的表示图像中不同区域的人群密度图。
48、进一步地,所述s7步骤包括以下步骤:
49、s71、将生成的新的待处理图像对应的人群密度图输入所述第二acscp模型中进行前向传播,以获取第二密度图;本文档来自技高网...
【技术保护点】
1.一种基于深度学习的人群密度估计方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于深度学习的人群密度估计方法,其特征在于,所述S1步骤包括以下步骤:
3.根据权利要求2所述的基于深度学习的人群密度估计方法,其特征在于,所述S2步骤包括以下步骤:
4.根据权利要求3所述的基于深度学习的人群密度估计方法,其特征在于,所述S3步骤包括以下步骤:
5.根据权利要求4所述的基于深度学习的人群密度估计方法,其特征在于,所述S4步骤包括以下步骤:
6.根据权利要求5所述的基于深度学习的人群密度估计方法,其特征在于,所述S5步骤包括以下步骤:
7.根据权利要求6所述的基于深度学习的人群密度估计方法,其特征在于,
8.根据权利要求7所述的基于深度学习的人群密度估计方法,其特征在于,所述S6步骤包括以下步骤:
9.根据权利要求8所述的基于深度学习的人群密度估计方法,其特征在于,所述S7步骤包括以下步骤:
10.根据权利要求9所述的基于深度学习的人群密度估计方法,其特征在于,所述S
...【技术特征摘要】
1.一种基于深度学习的人群密度估计方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于深度学习的人群密度估计方法,其特征在于,所述s1步骤包括以下步骤:
3.根据权利要求2所述的基于深度学习的人群密度估计方法,其特征在于,所述s2步骤包括以下步骤:
4.根据权利要求3所述的基于深度学习的人群密度估计方法,其特征在于,所述s3步骤包括以下步骤:
5.根据权利要求4所述的基于深度学习的人群密度估计方法,其特征在于,所述s4步骤包括以下步骤:
<...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。