一种基于大量真实人群运动视频的人群运动仿真方法转让专利

申请号 : CN202110735986.7

文献号 : CN113536996B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 贾鹏王宗尧匡海波赵宇哲仝淑芳姚晋玮杨彦博万民

申请人 : 大连海事大学

摘要 :

本发明公开了一种基于大量真实人群运动视频的人群运动仿真方法,包括五个步骤,将视频分帧并保存成连续高清图像,生成每张图像的人群密度图,对每张密度图中的每个个体精准定位,得到每个个体的精确位置;将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据;量化运动轨迹数据,定义训练数据、数据标签,计算数据相关性;搭建深度卷积神经网络,输入运动轨迹数据进行训练,以学习人群运动行为;在二维空间随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹。本发明能够实时计算人群的位置,进而模拟出人群运动轨迹,具有较高的仿真精准度和普适性。

权利要求 :

1.一种基于大量真实人群运动视频的人群运动仿真方法,包括如下步骤:步骤1、拍摄真实人群运动视频,将视频分帧并保存成连续高清图像,生成每张图像对应的人群密度图,并对每张密度图中的每个个体进行精准定位,得到每个个体在图像中的精确位置;

步骤2、将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据;

步骤3、对运动轨迹数据进行量化,计算数据相关性,选择训练数据、数据标签;

步骤4、搭建深度卷积神经网络,输入步骤3处理后的运动轨迹数据进行训练,以学习人群运动行为;

步骤5、以图像大小设置二维空间,在二维空间中随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹;

所述步骤3对运动轨迹数据进行量化包括,步骤3a:获取个体g、个体邻居Ng,个体运动速度矢量为[ug,vg]、个体邻居运动矢量为[uj,vj],j∈Ng,j=1,2,…,n,步骤3b:计算个体g到其邻居的相对位置矢量,公式为(7)、(8),dxj=xj‑xg   (7)

dyj=yj‑yg   (8)

其中,个体g的位置坐标定义为[xg,yg],其邻居坐标定义为[xj,yj],j∈Ng,个体g到其邻居的相对位置矢量为[dxj,dyj],j∈Ng,个体g的邻居集合为Ng,步骤3c:计算个体到其邻居的相对位置矢量的矢量和,公式为(9)、(10),其中,个体g到其邻居的相对位置矢量的矢量和为[drxg,dryg],j∈Ng。

2.根据权利要求1所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,所述步骤1拍摄真实人群运动视频,将视频分帧并保存成连续高清图像,生成每张图像对应的人群密度图,并对每张密度图中的每个个体进行精准定位,得到每个个体在图像中的精确位置,其步骤包括:

步骤1a、用鸟瞰的俯视角度拍摄真实人群视频,将视频的每一帧抽取出来并保存成高清图像;

步骤1b、通过CSRnet卷积神经网络提取每张图像的人群密度图,根据人群密度图中的人群密度取值进行划分,当密度取值低于阈值时,采用脉冲函数卷积高斯核的方式来定义密度图,当人群密度高于阈值时,通过精准估计群体密度函数来定义密度图;

步骤1c、对密度图进行降噪处理,用OpenCV以像素循环的方式来计算密度图中每个点的轮廓,并计算轮廓的质心;

步骤1d、用DBSCAN算法对质心进行聚类,并通过对聚类的质心点的平均值计算,得到每个个体在图像中的精确位置。

3.根据权利要求2所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,步骤1b所述的CSRnet卷积神经网络包括VGG‑16卷积神经网络和空洞卷积层,卷积核大小为3,池化层是2×2,所述脉冲函数卷积高斯核的计算公式为(1),其中,xi为假设标注点的位置,N为图像中头的数量,δ(x‑xi)为冲击函数。

4.根据权利要求2所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,步骤1b所述精准估计群体密度函数的计算公式为(2)、(3)、(4),其中,G(x)为高斯核函数,δi可变且与 成比例,m为与第i个人头近邻人头的数量,表示第i个人头与近邻第j个人头的距离, 为与m个近邻人头的平均距离,β为常量。

5.根据权利要求2所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,步骤1c所述计算轮廓的质心,计算公式为(5)、(6),其中,xi,yi为图像上某一个像素点在x方向和y方向上的坐标,pi为图像上某一个像素点的像素值,n为图像中像素点的个数。

6.根据权利要求1所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,所述步骤2将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据,其步骤包括:

步骤2a、采用DBSCAN聚类算法对个体位置进行图像间聚类,得到每个个体的聚类轨迹;

步骤2b、利用Kalman滤波器对聚类轨迹进行平滑处理,得到光滑连续的运动轨迹数据。

7.根据权利要求1所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,所述深度卷积神经网络由输入层、输出层和隐藏层三部分组成,所述输入层包含n个神经元,n为训练数据集的维度值,所述输入层的数据再经过BatchNorm归一化和Reshape数据格式转换传入所述隐藏层,所述输入层和所述输出层之间是所述隐藏层,所述隐藏层包括二维卷积层、LeakyReLU激活层、MaxPooling池化层和Flatten层,所述输出层是全连接层。

8.根据权利要求1所述的一种基于大量真实人群运动视频的人群运动仿真方法,其特征在于,所述步骤4在二维空间随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹,其步骤包括:步骤4a、将模拟个体随机放置在二维空间中,用深度神经网络来预测个体的运动轨迹;

步骤4b、在深度神经网络进行t次连续预测计算,并模拟出人群在虚拟实验平台中的运动轨迹。

说明书 :

一种基于大量真实人群运动视频的人群运动仿真方法

技术领域

[0001] 本发明涉及计算机仿真领域,尤其涉及一种基于大量真实人群运动视频的人群运动仿真方法。

背景技术

[0002] 人群运动轨迹仿真是人群运动仿真技术中十分重要的一部分。作为一种分析工具,人群运动轨迹仿真可以应用于公共安全领域,如船舶、飞机等大型交通工具的设计,体
育场馆、地铁站等大型公共设施的设计等等。
[0003] 以体育场馆为例,通过人群运动轨迹仿真,可以根据体育场馆的设计规模,模拟球迷退场等常规情景下的人群运动轨迹,辅助分析场馆的走廊宽度、出口数目和出口位置等
设计是否合理;可以模拟球迷发生冲突、火灾、恐怖袭击等非常规情景下的人群运动轨迹,
辅助建立紧急情况下人员的疏散方案、合理布置消防器材、分配警力;还可以作为场馆管理
人员进行消防、反恐等安全方案预演及培训的辅助工具。与传统方法相比,人群运动轨迹仿
真具有直观、灵活、高效、经济和无人员安全风险等诸多优点。因此,人群运动轨迹仿真的研
究受到了广大学者的关注。
[0004] 现阶段人群运动轨迹仿真主要基于人群运动仿真模型实现。人群运动仿真研究始于上世纪80年代。1987年,Reynolds提出了Boid鸟群仿真模型,该模型也是最早的群体行为
模型之一。该模型采用了分离性、方向性和凝聚性三套简单的规则,建立群体运动仿真模
型。Boids模型采用预定义的规则来实现避免碰撞。但在特定场景中,人类群体不一定需要
避免碰撞,甚至有可能是相互紧密耦合。因此boids模型无法准确模拟人群的分离性。
[0005] 2007年,Varasa和Cornejoa提出了基于元胞自动机的人群运动模型。该模型通过少量规则近似模拟人群运动现象。与复杂的行为模型相比,其计算过程简单且高效。但由于
人群运动的复杂性和不确定性,其模拟难度远远高于按照预定规则的群体运动,无法准确
模拟人群之间的堆挤和碰撞行为。
[0006] 2009年,J.Filler从社会心理学的角度提出了一个基于社会力学的人群动力学模型。通过研究恐慌状态下人群的特征,作者提出影响人群运动三个因素,并建立了基于牛顿
力和人类心理的混合模型。由于该模型有较多的作用力参数,使各种作用力之间较难平衡,
计算的复杂度高,因此难以得到较平滑的运动轨迹。
[0007] 除了元胞自动机和社会力学,Muti‑agent模型也被用来建立人群动力学模型。Muti‑Agent模型是由多个智能Agent组成。多个Agent通过协同工作,可以完成单个Agent无
法解决的复杂任务。基于Muti‑Agent的人群模型中,每个Agent都可以看作具有自主性、社
会性和主动性的智能体,而且每个智能体可以自主感知其周围环境。但这种模型很难设计
针对不同情况的规则,将这类规则与人类行为联系起来是很难的。
[0008] 传统的人群运动轨迹仿真方法通常以影响行人运动的各种因素为基础。通过预先定义的一系列运动规则来控制人群行为。这些规则虽然考虑了影响行人运动的多种因素,
但忽略了因素之间的相互影响。而且人类行为的复杂性较高,无法用简单的规则或数学公
式进行描述。因此,在此基础上进行仿真,无法准确模拟人群运动轨迹。

发明内容

[0009] 本发明提供一种基于大量真实人群运动视频的人群运动仿真方法,以克服上述技术问题。
[0010] 一种基于大量真实人群运动视频的人群运动仿真方法,包括如下步骤:
[0011] 步骤1、拍摄真实人群运动视频,将视频分帧并保存成连续高清图像,生成每张图像对应的人群密度图,并对每张密度图中的每个个体进行精准定位,得到每个个体在图像
中的精确位置;
[0012] 步骤2、将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据;
[0013] 步骤3、对运动轨迹数据进行量化,计算数据相关性,选择训练数据、数据标签;
[0014] 步骤4、搭建深度卷积神经网络,输入步骤3处理后的运动轨迹数据进行训练,以学习人群运动行为;
[0015] 步骤5、以图像大小设置二维空间,在二维空间中随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹。
[0016] 优选地,步骤1拍摄真实人群运动视频,将视频分帧并保存成连续高清图像,生成每张图像对应的人群密度图,并对每张密度图中的每个个体进行精准定位,得到每个个体
在图像中的精确位置,其步骤包括:
[0017] 步骤1a、用鸟瞰的俯视角度拍摄真实人群视频,将视频的每一帧抽取出来并保存成高清图像;
[0018] 步骤1b、通过CSRnet卷积神经网络提取每张图像的人群密度图,根据人群密度图中的人群密度取值进行划分,当密度取值低于阈值时,采用脉冲函数卷积高斯核的方式来
定义密度图,当人群密度高于阈值时,通过精准估计群体密度函数来定义密度图;
[0019] 步骤1c、对密度图进行降噪处理,用OpenCV以像素循环的方式来计算密度图中每个点的轮廓,并计算轮廓的质心;
[0020] 步骤1d、用DBSCAN算法对质心进行聚类,并通过对聚类的质心点的平均值计算,得到每个个体在图像中的精确位置。
[0021] 优选地,步骤1b所述的CSRnet卷积神经网络包括VGG‑16卷积神经网络和空洞卷积层,卷积核大小为3,池化层是2×2,所述脉冲函数卷积高斯核的计算公式为(1),
[0022]
[0023] 其中,xi为假设标注点的位置,N为图像中头的数量,δ(x‑xi)为冲击函数。
[0024] 优选地,步骤1b所述精准估计群体密度函数的计算公式为(2)、(3)、(4),
[0025]
[0026]
[0027]
[0028] 其中,G(x)为高斯核函数,δi可变且与 成比例,m为与第i个人头近邻人头的数量, 表示第i个人头与近邻第j个人头的距离, 为与m个近邻人头的平均距离,β为常量。
[0029] 优选地,步骤1c所述计算轮廓的质心,计算公式为(5)、(6),
[0030]
[0031]
[0032] 其中,xi,yi为图像上某一个像素点在x方向和y方向上的坐标,pi为图像上某一个像素点的像素值,n为图像中像素点的个数。
[0033] 优选地,步骤2将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据,其步骤包括:
[0034] 步骤2a、采用DBSCAN聚类算法对个体位置进行图像间聚类,得到每个个体的聚类轨迹;
[0035] 步骤2b、利用Kalman滤波器对聚类轨迹进行平滑处理,得到光滑连续的运动轨迹数据。
[0036] 优选地,步骤3对运动轨迹数据进行量化包括,
[0037] 步骤3a:获取个体g、个体邻居Ng,个体运动速度矢量为[ug,vg]、个体邻居运动矢量为[uj,vj](j∈Ng,j=1,2,…,n),
[0038] 步骤3b:计算个体g到其邻居的相对位置矢量,公式为(7)、(8),
[0039] dxj=xj‑xg                        (7)
[0040] dyj=yj‑yg                        (8)
[0041] 其中,个体g的位置坐标定义为[xg,yg],其邻居坐标定义为[xj,yj](j∈Ng),个体g到其邻居的相对位置矢量为[dxj,dyj](j∈Ng),个体g的邻居集合为Ng,
[0042] 步骤3c:计算个体到其邻居的相对位置矢量的矢量和,公式为(9)、(10),
[0043]
[0044]
[0045] 其中,个体g到其邻居的相对位置矢量的矢量和为[drxg,dryg](j∈Ng),
[0046] 优选地,深度卷积神经网络由输入层、输出层和隐藏层三部分组成,所述输入层包含n个神经元,n为训练数据集的维度值,所述输入层的数据再经过BatchNorm归一化和
Reshape数据格式转换传入所述隐藏层,所述输入层和所述输出层之间是所述隐藏层,所述
隐藏层包括二维卷积层、LeakyReLU激活层、MaxPooling池化层和Flatten层,所述输出层是
全连接层。
[0047] 优选地,步骤4在二维空间随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹,其步骤包括:
[0048] 步骤4a、将模拟个体随机放置在二维空间中,用所述深度神经网络来预测个体的运动轨迹;
[0049] 步骤4b、在所述深度神经网络进行t次连续预测计算,并模拟出人群在虚拟实验平台中的运动轨迹。
[0050] 本发明提供了一种基于大量真实人群运动视频的人群运动仿真方法,能够生成高质量的人群分布密度图,自动化精准识别图像中的个体位置,通过DBSCAN算法获取人群运
动轨迹数据,采用深度卷积神经网络对人群行为进行学习,提高了仿真的精准度。

附图说明

[0051] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以
根据这些附图获得其他的附图。
[0052] 图1是本发明的方法流程图;
[0053] 图2是本发明真实人群运动轨迹高清图;
[0054] 图3是本发明高质量的人群分布密度图;
[0055] 图4是本发明降噪后的人群分布密度图;
[0056] 图5是本发明的区域放大后的部分个体多个质心图;
[0057] 图6是本发明的个体精准定位图;
[0058] 图7是本发明的个体位置在三维空间中的散点图;
[0059] 图8是本发明的从40个连续帧中提取的人群轨迹数据;
[0060] 图9是本发明的数据相关性矩阵图;
[0061] 图10是本发明的深度卷积神经网络结构图;
[0062] 图11是本发明神经网络在训练过程中的训练误差与测试误差图;
[0063] 图12是本发明系统在训练过程中的训练准确率与测试准确率;
[0064] 图13是本发明t=0时初始的人群状态图;
[0065] 图14是本发明t=50时人群状态图;
[0066] 图15是本发明t=200时人群状态图;
[0067] 图16是本发明t=500时人群状态图。

具体实施方式

[0068] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0069] 图1为本发明的方法流程图,如图1所示,本实施例的方法可以包括:
[0070] 本发明主要目的是提出一种基于大量真实人群运动视频的人群运动仿真方法,是一种区别于以往传统模式的创新型方法。既考虑了传统方法中影响人群运动轨迹的各种因
素,又结合了各因素之间的相互影响,提高了仿真的精准度。该方法是通过真实监控视频采
集到的人群运动轨迹数据,对建立的卷积神经网络进行训练。通过深度学习的训练,可以使
深度卷积神经网络学习人群的行为规律。并利用神经网络的预测功能,实时计算人群的位
置,进而模拟出人群运动轨迹。
[0071] 首先,将视频分帧并保存成连续高清图像,生成每张图像对应的人群密度图,并对每张密度图中的每个个体进行精准定位,得到每个个体在图像中的精确位置,包括以下步
骤,
[0072] (1)视频拍摄。通过拍摄视频获取本发明所需的真实数据,本发明从真实的人群运动视频中提取人群运动轨迹数据,将视频分帧并保存成连续的高清图像。本发明中视频取
景地是大连某商业广场,取景时间是2020年1月1日至1月3日,节假日是人流量高峰期,便于
研究人群的互动行为,取景方式是用鸟瞰的俯视角度拍摄人群视频。将视频的每一帧抽取
出来并保存成高清图像。通过分帧操作可以获取832张连续的高清人群图像,每一帧图像的
分辨率为1280×720,如图2所示。
[0073] (2)人群密度度获取。要对图像中的人群个体进行准确识别定位,由于图像数量较多,人群密度较大,人工识别的方法是不切实际的,因此采用自动化的个体位置识别是唯一
的可行方法。通过CSRnet卷积神经网络提取每张图像的人群密度图。CSRnet网络的前端是
VGG‑16卷积神经网络。由于卷积层会导致输出的图像变小,因此CSRnet网络的输出是原始
图像1/8的人群密度图。为了获取高分辨率的人群密度图,CSRnet网络的后端采用空洞卷积
层。空洞卷积层在保持高分辨率的同时扩大感知域,可生成高质量的人群分布密度图,如图
3所示。
[0074] 采用脉冲函数卷积高斯核的方式来定义密度图,那么具有N个头的标签可以被表示为公式(1):
[0075]
[0076] 其中,xi为假设标注点的位置,N为图像中头的数量,δ(x‑xi)为冲击函数。用此函数生成的密度图并不适用于人群密度很大的情况,当人群密度很大时,精准估计群体密度函
数需要考虑透视变换。假设每个人头周围的人群是均匀分布的,那么计算与其最近的m个邻
居之间的平均距离可以给出几何失真的合理估计,密度函数公式如下:
[0077]
[0078]
[0079]
[0080] 其中,G(x)为高斯核函数,δi可变且与 成比例,m为与第i个人头近邻人头的数量, 表示第i个人头与近邻第j个人头的距离, 为与m个近邻人头的平均距离,当人群密
度较大时,β=0.3能更好地表征人头大小的特征。
[0081] 本发明中CSRnet卷积神经网络的卷积核大小为3,池化层是2×2,步长为1,密度图是由delta脉冲函数与一个高斯函数卷积得来,这里先卷积再求和。为了精准定位,还需对
密度图进行降噪处理,如图4所示。
[0082] (3)人群个体精准定位。采用OpenCV以像素循环的方式来计算每个点的轮廓,并计算轮廓的质心。图像的质心,也称为图像的重心。扩展到图像上面,其每一点的像素值可以
理解成此点处的质量。考虑到图像是二维的,需在x方向和y方向上分别独立地找出质心,即
在x方向上,图像在质心左右两边像素和相等,在y方向上,图像在质心的上下两边像素和相
等。计算公式如下:
[0083]
[0084]
[0085] 可改写为:
[0086]
[0087]
[0088] 其中,xi,yi为图像上某一个像素点在x方向和y方向上的坐标,pi为图像上某一个像素点的像素值,n为图像中像素点的个数。
[0089] 由于噪声及误差的影响,部分个体可能由多个质心组成,如图5所示,通过区域放大,可以看到部分个体的多个质心。为了获取个体的准确位置,本发明采用DBSCAN算法对这
些质心进行聚类,并通过对聚类的质心点的平均值计算,得到每个个体在图像中的精确位
置,如图6所示。
[0090] DBSCAN算法中有两个重要参数:Eps和MinPtS,Eps是定义密度时的邻域半径,MinPts为定义核心点时的阈值。在DBSCAN算法中,将数据点分为核心点、边界点和噪声点三
类,如果一个对象在其半径Eps内含有超过MmPts数目的点,则该对象为核心点。通俗地讲,
核心点对应稠密区域内部的点,边界点对应稠密区域边缘的点,而噪音点对应稀疏区域中
的点。
[0091] 同一帧中并肩行走的两个人之间的最近距离为20个像素点,因此Eps取较小一些的值,有利于在空间上区分不同的个体,此处Eps取为15。
[0092] 关于MinPts值的确定,首先计算所有数据点的k最近点平均距离,然后计算所有数据点的(k+1)最近点平均距离,求出所有数据点的(k+1)最近点平均距离与k最近点平均距
离的差值即密度变化,再将这些差值求和,即计算所有点的密度变化之和,找出其中密度变
化之和的最小值,此时,对应的(k+1)最近点平均距离最能反映各点的密度层次,所以取此
时的k+1的值作为k的值,即MinPts的值,此处为3。
[0093] 然后,将每个个体在不同图像中的位置关联起来,形成一条完整的运动轨迹,并提取运动轨迹数据。为了进行神经网络的深度学习,需要提取人群的轨迹数据。人群的轨迹数
据是由每个个体的运动轨迹组成。虽然每个个体的位置可以按照图像的顺序逐个定位,但
是将每个人在不同图像中的位置关联起来,并形成一条完整的轨迹难度很大。因此,本发明
中使用DBSCAN聚类算法对个体位置进行图像间聚类,此时,以时间概念为出发点,将MinPts
定为2,从而获取人群的轨迹数据。
[0094] 如图7所示,个体位置在时间域中的位置可以表示为三维空间中的散点。由于每一个图像大小为1280×720,所以三维空间的Width轴方向数值取值范围是0~1280,Hight轴
方向取值范围是0~720。Frame轴作为时间轴,代表每一个图像的人群定位数据。群体中的
个体在图像间的运动幅度较小,通常会小于10像素。而在同一图像中人与人之间的距离较
大,通常在20‑100像素之间。因此可以再一次利用DBSCAN算法来聚类人群个体的轨迹。图7
即DBSCAN的聚类结果。
[0095] 由于数据处理误差,DBSCAN获取的的聚类轨迹具有较大的波动性。因此本发明利用Kalman滤波器对聚类轨迹进行了一次平滑处理。图8显示了从40个连续图像中提取的人
群轨迹数据。由图可知DBSCAN算法可以有效地提取人群轨迹数据。通过Kalman滤波可以获
取光滑连续的人群轨迹数据。
[0096] 为了建立人群运动仿真模型,需要利用大数据训练出一个深度神经网络。经过训练的深度神经网络可以模拟出人群的互动行为。为了达到这一目的,需要从获得的轨迹数
据中生成并选取合适的训练数据。通过对人群轨迹聚类处理,本实施例共获取24000条人群
个体的轨迹数据。通过对轨迹数据的数据相关性分析,提取数据中相关性最大的数据属性,
并利用选取的数据进行深度学习。
[0097] 为了分析数据的相关性,需要建立数据之间的相关性矩阵。相关性矩阵是由数据属性之间的相关系数构成的。相关矩阵中第i行、第j列的元素,是数据中第i个属性和第j个
属性的相关系数。相关系数越高,说明对应数据属性之间的相关性越高。
[0098] 在数据相关性分析之前,需要对人群轨迹数据进行量化。如果把个体定义为g,则个体g的邻居集合可以定义为Ng。个体g的运动速度矢量定义为[ug,vg]、个体g的邻居运动矢
量定义为[uj,vj](j∈Ng,j=1,2,…,n)。个体g到其邻居的相对位置矢量为[dxj,dyj](j∈
Ng)。如果把个体g的位置坐标定义为[xg,yg],其邻居坐标定义为[xj,yj](j∈Ng),则[dxj,
dyj]的计算公式如下:
[0099] dxj=xj‑xg                       (9)
[0100] dyj=yj‑yg                      (10)
[0101] 如果个体g到其邻居的相对位置矢量的矢量和定义为[drxg,dryg](j∈Ng)。则[drxg,dryg]的计算公式如下:
[0102]
[0103]
[0104] 表1列出了选取的量化数据及其数据属性描述。本发明提出的深度学习方法属于有监督学习,因此需要定义训练数据和与其对应的数据标签。表1中(ug,vg)被定义为数据标
签,(uj,vj)以及(drxg,dryg)定义为训练数据。这一定义的目的是使深度神经网络可以通过
给定的(uj,vj)以及(drxg,dryg)推测出每个个体的运动速度,进而模拟出人群的互动行为。
[0105] 表1数据属性及描述
[0106]数据属性 数据描述
ug,vg 个体运动速度矢量(数据标签)
uj,vj(j∈Ng) 个体邻居运动速度矢量
drxg,dryg(j∈Ng) 邻居相对距离矢量和
[0107] 图9中描绘出选取数据的相关性矩阵。如图可知,个体的速度矢量(ug,vg)与四个最近邻居的速度(u1,u2,u3,u4,v1,v2,v3,v4)具有较高的相关性,最高的相关系数可以达到
0.31。另外,个体的速度与邻居相对距离矢量和(drxg,dryg)呈现弱相关性,相关系数可以达
到0.16,因此,这10个数据属性将作为神经网络训练数据集对神经网络进行深度学习。个体
的速度矢量(ug,vg)作为标签数据实现神经网络的监督学习。
[0108] 其次,搭建深度卷积神经网络,输入运动轨迹数据进行训练,以学习人群运动行为,包括以下步骤,
[0109] 本发明构建的深度卷积神经网络由输入层、输出层和隐藏层三部分组成。其中输入层包含10个神经元,其个数与选定的训练数据集的维度一致(10个相关属性)。输入的数
据再经过BatchNorm归一化和Reshape数据格式转换传入隐藏层。深度神经网络所预测的结
果是个体的在X轴和Y轴的速度(ug,vg),因此神经网络的输出层是包含2个神经元的全连接
层。输入层和输出层之间是隐藏层,隐藏层包括6个二维卷积层、6个LeakyReLU激活层、3个
MaxPooling池化层和一个Flatten层。其网络结构如图10所示。
[0110] 本发明中的深度神经网络训练是在python‑keras平台中实现的,所采用的操作系统是deepin‑linux15.11。采用CUDA9.0和cudnn7.1实现深度学习的训练加速,使用的加速
硬件是Nvidia‑1080Ti,深度学习的训练次数为100epochs,batch‑size设为100,训练数据
集和测试数据集从选取的人群轨迹数据中获取。
[0111] 所选数据中80%为训练数据集,20%为测试数据集。即训练数据集的数据量为24000×80%=19200,试验数据集的数据量为24000×20%=4800。图11中描绘的是神经网
络在训练过程中的训练误差(实线)与测试误差(虚线)。采用的误差计算方法是Mean‑
Absolute‑Error。图12中描述的是系统在训练过程中的训练准确率(实线)与测试准确率
(虚线),准确率的计算方法是神经网络预测值的准确率均值。
[0112] 最后,以图像大小设置二维空间,在二维空间随机放置多个模拟个体,测试深度卷积神经网络的预测效果,调整参数进行仿真,并绘制人群运动轨迹,包括以下步骤,
[0113] 本发明利用两个神经网络分别进行个体精准定位和人群运动轨迹预测,因此需要构建两个神经网络。深度卷积神经网络是一种使用计算机模拟人脑神经网络结构的软件程
序。本发明所使用的两个卷积神经网络都是采用MaskRCNN的结构。Mask R‑CNN是一个图像
分割算法,可以完成图像物体分类、图像物体检测、图像物体轮廓识别等多种任务,灵活而
强大。除此之外,一些图像处理的步骤也是不可或缺的重要部分。
[0114] 根据图像的像素取值设置二维空间的横轴和纵轴,将60个模拟个体随机放置在二维空间中,用训练好的深度神经网络用来预测这些个体的运动轨迹,将其运动轨迹绘制在
图中。
[0115] 在实验过程中神经网络进行了t=1000次连续预测计算,并模拟出了人群在虚拟实验平台中的运动轨迹。
[0116] 图13是t=0时初始的人群状态,在初始状态下,人群随机的分布在二维空间中,个体的初始速度为0cm/s~100cm/s之间的随机数。图14是当t=50时,人群在随机速度和邻居
的共同影响下开始向不同方向移动。图15是当进行了t=200轮预测后,邻近的个体开始呈
现出群体行为,整个人群形成两个子群体,并向两个相反方向移动。这一群体行为与真实视
频中人群的移动方式相似。图16是在t=500时,两组人群以相似的速度和相似的轨迹向两
个方向继续移动,人群也达到了一种平衡状态。
[0117] 所有轨迹呈现出与真实世界中相似的人群行为。个体能够与邻居保持稳定的距离,并以稳定的速度跟随邻居。群体的路径选择受人群密集程度、初始速度、周边行人速度
和距离等因素的影响。仿真结果表明,神经网络的预测结果符合真实情况下的人群运动行
为,即本发明提出的仿真方法真实有效。
[0118] 整体有的有益效果:
[0119] (1)采用CSRnet卷积神经网络提取每张视频帧的人群密度图,为了解决卷积层导致输出图像变小的问题,本发明中的CSRnet网络后端采用空洞卷积层。在保持高分辨率的
同时扩大感知域,生成高质量的人群分布密度图。
[0120] (2)采用OpenCV和DBSCAN算法确定每张视频帧中的个体精准位置,实现自动化个体位置识别,省时省力。
[0121] (3)采用DBSCAN聚类算法对个体位置进行帧间聚类,从而获取视频中每个个体的完整的运动轨迹,以获得人群运动轨迹数据。
[0122] (4)采用深度卷积神经网络对人群行为进行学习,区别于传统方法中预先定义的一系列运动规则来控制人群行为的方式,本发明考虑了影响人群运动的各因素之间的相互
影响,提高了仿真的精准度。
[0123] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依
然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术
方案的范围。