人流密度预测方法及装置、计算机设备及可读介质与流程

文档序号:18705499发布日期:2019-09-17 23:38阅读:516来源:国知局
人流密度预测方法及装置、计算机设备及可读介质与流程

本发明涉及计算机应用技术领域,尤其涉及一种人流密度预测方法及装置、计算机设备及可读介质。



背景技术:

随着互联网和人工智能(artificialintelligence;ai)技术的不断发展,越来越多的领域开始涉及自动化计算与分析,其中监控安防领域是最为重要的场景之一。

例如,对于一些人流密度大的区域,如机场、车站、广场、公园等,常因为人群过于密集而存在发生踩踏事件的隐患,对这些区域都需要进行重点监控,进行实时人流密度估计,以避免此类事件发生。现有人流密度估计方法,可以包括有肉眼计数、基于检测的计数方法、基于回归的计数方法、以及基于密度图的计数等多种方法。其中基于密度图的计数方法是一种最智能的方法。在该方法中,回归出与原图相同尺寸的一个高斯分布的人群密度分布图,对此密度图中标注的打点人头求和,即得到人流密度的估计值。

现有的人流密度估计方法中,未考虑同一张图中远近不同的人头的尺寸区别,人头无论远近均只有单点标注,在画面中人头尺寸变化幅度较大时,易造成估算的人流密度的误差较大。



技术实现要素:

本发明提供了一种人流密度预测方法及装置、计算机设备及可读介质,用于减小人流密度预测的误差,提高人流密度预测的准确性。

本发明提供一种人流密度预测方法,所述方法包括:

获取待预测的图片;

采用预先训练的人流密度估计模型,预测所述待预测的图片中包括的人头数量,所述人流密度估计模型在训练时,融合有多个尺度的特征一起进行训练。

本发明提供一种人流密度预测装置,所述装置包括:

获取模块,用于获取待预测的图片;

预测模块,用于采用预先训练的人流密度估计模型,预测所述待预测的图片中包括的人头数量,所述人流密度估计模型在训练时,融合有多个尺度的特征一起进行训练。

本发明还提供一种计算机设备,所述设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的人流密度预测方法。

本发明还提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的人流密度预测方法。

本发明的人流密度预测方法及装置、计算机设备及计算机可读介质,通过采用融合有多个尺度的特征一起进行训练的人流密度估计模型,可以对待预测的图片中不同尺寸的人头进行准确识别和统计,从而能够有效地减小人流密度预测误差,提高人流密度预测的准确性。

【附图说明】

图1为本发明的人流密度预测方法实施例一的流程图。

图2为本发明的人流密度预测方法实施例二的流程图。

图3为本发明的人流密度预测方法实施例三的流程图。

图4为本发明提供的一种人流密度估计模型的结构示意图。

图5为本发明的人流密度预测装置实施例一的结构图。

图6为本发明的人流密度预测装置实施例二的结构图。

图7为本发明的人流密度预测装置实施例三的结构图。

图8为本发明的计算机设备实施例的结构图。

图9为本发明提供的一种计算机设备的示例图。

【具体实施方式】

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。

图1为本发明的人流密度预测方法实施例一的流程图。如图1所示,本实施例的人流密度预测方法,具体可以包括如下步骤:

s100、获取待预测的图片;

s101、采用预先训练的人流密度估计模型,预测待预测的图片中包括的人头数量,该人流密度估计模型在训练时,融合有多个尺度的特征一起进行训练。

本实施例的人流密度预测方法的执行主体为人流密度预测装置,该人流密度预测装置可以为一独立的电子实体,或者也可以为一个软件集成的应用,使用时将该应用运行在计算机设备上,便可以实现对待预测的图片中的人流密度进行预测。

本实施例中,首先获取待预测的图片,输入至人流密度预测装置,人流密度预测装置中设置有预先训练的人流密度估计模型,然后采用预先训练的人流密度估计模型,预测待预测的图片中包括的人头数量。本实施例中的人流密度估计模型,在训练时,融合有多个尺度的特征一起进行训练,这样,可以使得训练后的人流密度估计模型能够准确地对各个尺度的人头进行准确识别,并统计。例如,采用本实施例的人流密度估计模型预测待预测的图片中的人流密度时,不仅可以识别待检测的图片中距离镜头较近、尺寸较大的人头,同时也能准确识别距离镜头较远、尺寸较小的人头,从而能够准确地预测出图片中的人流密度。

本实施例的人流密度预测方法,通过采用融合有多个尺度的特征一起进行训练的人流密度估计模型,可以对待预测的图片中不同尺寸的人头进行准确识别和统计,从而能够有效地减小人流密度预测误差,提高人流密度预测的准确性。

图2为本发明的人流密度预测方法实施例二的流程图。如图2所示,本实施例的人流密度预测方法,在上述图1所示实施例的技术方案的基础上,进一步更加详细地介绍本发明的技术方案。如图2所示,本实施例的人流密度预测方法,具体可以包括如下步骤:

s200、获取待预测的图片;

s201、将待预测的图片的尺寸调整到预设尺寸;

为了提高预测的准确性,可以在预测之前,将待预测的图片都统一调整到一个预设尺寸。例如,该预设尺寸可以为960*540,或者根据实际需求,也可以设置为其他尺寸,在此不做限定。

s202、将待预测的图片中的各像素点的rgb值减去相应的均值;

本实施例中,对于任一待预测的图片,均可以获取到该图片的每一个像素点的rgb值。为了提高预测的灵敏度,本实施例中,可以将每一个像素点的rgb值减去rgb的均值。其中rgb的均值可以对大规模的通用图像数据集的整体数据求平均得到,例如,在某个通用图像数据集中,所求得的rgb的均值可以为[104,117,123],即r的均值为104,g的均值为117,b的均值为123。实际应用中,所采用的通用数据集不同,所得到的rgb数值也可以为不同。

本实施例中,将待预测的图片中的各像素点的rgb值减去相应的均值,可以使得得到的rgb值均被拉到0附近,从而可以提高人流密度估计模型在预测人头数量时对人头识别的灵敏度,进而能够提高预测的人头数量的准确性。

需要说明的是,为了提高预测的准确性,本实施例中以同时包括步骤s201和s202为例,实际应用中,该步骤s201和s202可以择一存在。

s203、将步骤s202处理后的待预测的图片输入至预先训练的人流密度估计模型中,由该人流密度估计模型预测并输出该待预测的图片中包括的人头数量和该待预测的图片的热力图;该人流密度估计模型在训练时,融合有多个尺度的特征一起进行训练。

经过上述步骤s201和步骤s202的处理,可以将待预测的图片调整到统一的尺寸下,且还将待预测的图片中的rgb值拉到0附近,这样可以进一步提高人流密度估计模型对待预测的图片中包括的人头识别的灵敏度,进而提高对该待预测的图片中包括的人头数量进行预测的准确性。同时,也能够提高所预测的热力图的准确性,有助于用户基于热力图准确统计该待预测的图片中包括的人头数量。

与上述图1所示实施例相比,本实施例中,采用人流密度估计模型,还可以预测待预测的图片的热力图,实现以可视化的方式提供人流密度预测结果。具体地,在该热力图中能够清晰地标识出人头位置,这样,用户根据预测的热力图,便可以自行准确地统计出该待预测的图片中包括的人头的数量。

本实施例的人流密度预测方法,通过采用融合有多个尺度的特征一起进行训练的人流密度估计模型,可以对待预测的图片中不同尺寸的人头进行识别和统计,能够有效地减小人流密度预测误差,提高人流密度预测的准确性;同时还能够预测出图片的热力图,以可视化的方式提供人流密度预测结果,不仅有助于准确地统计人头的数量,还能够有效地增强用户的使用体验。

图3为本发明的人流密度预测方法实施例三的流程图。如图3所示,本实施例的人流密度预测方法,在上述图1或者图2所示实施例的技术方案的基础上,进一步更加详细地介绍本发明的技术方案。如图3所示,本实施例的人流密度预测方法,具体可以包括如下步骤:

s300、采集数张包含人头图像的训练图片,且标注每张训练图片的已知人头总数;

为了保证训练的人流密度估计模型的精度,本实施例中,训练时所采集的训练图片可以包括各种场景的训练图片。例如可以选择包含人头数较少的训练图片,如1个或者2个人头;也可以选择包含人头数较多的训练图片,如包括3个以上的人头。另外,本实施例中,不仅要选择包括同等尺度大小的人头的训练图片,即训练照片中各人头距离镜头的距离相近,在训练图片中尺度相近;同时,还必须选择包括不同尺度的人头的训练图片,即训练照片中各人头距离镜头的距离不相同,在训练图片中大小不等。

本实施例中,还需要标注每张训练图片的已知人头总数,其中每张训练图片的已知人头总数必须是真实的,可以都是经过人工审核确认的。

s301、生成每张训练图片的真实热力图;

热力图能够直观地显示训练图片中的人头及位置,进而有助于用户准确统计训练图片中包括的人头的数量。

例如,具体地,可以采用如下步骤来生成每张训练图片的真实热力图:

(a1)对于每张训练图片,对图片中的每个人头进行打点标注,并记录每个打点位置的坐标;

(b1)建立与训练图片等尺寸的矩阵,将矩阵中所有元素初始化为0;

(c1)根据训练图片中每个打点位置的坐标,将矩阵中对应位置的元素的数值更新为1;

(d1)以每个打点位置为中心,进行高斯模糊处理,函数高斯模糊处理后对应的矩阵中每个位置的跳变函数值;

本实施例中,高斯模糊处理的公式可以表示为如下:

其中x表示训练图片中的一个位置;i表示打点的id,n为训练图片中包括的总的人头数量,xi表示对应打点id为i的打点的位置;δ表示跳变函数,即只在x等于xi处为1,其他所有位置都为0;σi表示对应于当前打点的高斯核参数;β,di表示另两个参数,其中di表示根据k-最近邻法(k-nearestneighbor;knn),计算出的当前打点位置xi距离最近的k个近邻其他打点位置的最近距离。例如,参考实验结果,根据经验可以取β=0.3,k=3,当然,实际应用中也可以取其他数值,在此不再举例。gσi(x)表示应用了高斯核σi的二维高斯函数;f(x)表示经过基于该高斯核的高斯模糊处理后、位置x处的δ函数(groundtruthmask)的值。

(e1)在以所有的打点位置为中心进行高斯模糊处理后,将每个位置的跳变函数值累加,作为矩阵中对应位置的元素的数值;

若训练图片中包括n个打点位置,对于每个打点位置,分别按照上述步骤(d1)的方式,以该打点位置为中心,都可以进行一次高斯模糊处理,对应可以获取到训练图片对应的矩阵中每个位置的跳变函数的值。这样,以n个打点位置的每个打点位置为中心,完成n次高斯模糊处理后,每个位置可以得到n个高斯模糊处理后的跳变函数(groundtruthmask)的值,将这n个高斯模糊处理后的跳变函数的值累加在一起,作为矩阵中该位置的元素的值。

本实施例的高斯模糊处理是对原始的delta函数(δ函数)即跳变函数进行模糊处理。换句话说,模糊处理前的矩阵中的原始数据是一个只有对应中心点为1,其余全零的稀疏矩阵。高斯模糊处理则是以唯一的1的位置为中心,进行模糊处理;经过模糊处理后,原来的中心点的值会从1变为小于1的其他值,而其他为0的位置的数值可能变成其他数值,总体效果是整个矩阵的数值之和和原来一样,仍为1;但各个值更加分散了,整个矩阵数值更加平滑,更符合实际应用,不像原来的稀疏矩阵那样那么极端了。

分别以n个打点位置中每个打点位置为中心,进行一次高斯模糊处理,相当于分别得到模糊处理后的n个稀疏矩阵。将n个稀疏矩阵叠加在一起,合并为一个矩阵,合并后的该矩阵中每个位置的元素的值为高斯模糊处理后的n个稀疏矩阵对应位置的跳变函数的值之和。

(f1)根据矩阵中各位置的元素的数值,生成训练图片的真实热力图。

按照上述步骤,可以得到矩阵中每个位置的元素的数值,将矩阵中每个位置的元素的数值作为对应的同等大小的训练图片的真实热力图中对应位置的数值,可以生成该训练图片对应的真实热力图。

s302、根据数张训练图片、以及每张训练图片的已知人头总数和真实热力图,训练人流密度估计模型;

本实施例中的人流密度估计模型,在训练时,包括用于预测人头数量的主干网络单元和用于预测热力图的至少一个分支网络单元。其中,每一个分支网络单元的输入特征,从主干网络单元的中间特征中抽取。具体地,主干网络单元能够对训练图片进行多级卷积(convolution)处理,依次得到不同维度的中间特征,并最终预测出该训练图片中包括的人头总数。每一层分支网络单元对应一种尺寸粒度的热力图的预测。具体地,每一层分支网络单元均从主干网络单元中获取部分中间特征,并基于获取的中间特征进行卷积处理以及特征连接处理,最终预测出一个相应维度的预估热力图。

例如,该步骤s302,具体可以包括如下步骤:

(a2)对于每张训练图片,将训练图片、对应的已知人头总数以及对应的真实热力图输入至人流密度估计模型中,由人流密度模型的主干网络单元输出预测人头总数以及各分支网络单元分别输出不同尺寸粒度下的预估热力图;

需要说明的是,本实施例中将每张训练图片输入至人流密度估计模型之前,也可以分别进行如上图2所示实施例的步骤s201和步骤s202的预处理。

(b2)根据已知人头总数、预测人头总数、真实热力图以及不同尺寸粒度下的预估热力图,计算主干网络单元的损失函数和各尺寸粒度下的分支网络单元的损失函数;

本实施例中构建的主干网络单元的损失函数能够表征已知人头总数与预测人头总数之间的差值。构建的各尺寸粒度下的分支网络单元的损失函数也能够表征对应的尺寸力度下,真实热力图与预估热力图的差值。

(c2)对得到所有损失函数累加得到总损失函数的值;

(d2)判断总损失函数的值是否大于或者等于预设阈值,若是,执行步骤(e2);否则,若不是,执行步骤(f2);

(e2)、调整人流密度模型中的主干网络单元和各分支网络单元的所有参数,使得总损失函数趋向于小于预设阈值;

(f2)、重复采用数张训练图片按照上述步骤(a2)-(e2)方式对人流密度模型进行训练,直到人流密度模型预测的人头总数与已知人头总数始终一致、且预估热力图与真实热力图始终一致,确定人流密度模型的参数,人流密度模型训练结束。

本实施例中,若连续预设轮数的训练中,人流密度模型预测的人头总数与已知人头总数一致、且预估热力图与真实热力图一致,此时可以认为人流密度模型预测的人头总数与已知人头总数始终一致、且预估热力图与真实热力图始终一致。其中连续预设轮数可以为连续100轮、200轮或者其他整数轮,在此不做限定。

本实施例的人流密度预测方法的执行主体可以与上述图1和图2一致,由人流密度预测装置一起来实现。即由人流密度预测装置先对人流密度估计模型进行训练,然后由人流密度预测装置基于训练好的人流密度估计模型,采用上述图1或者图2所示实施例的技术方案,实现人流密度预测。

或者本实施例的人流密度预测方法的执行主体,也可以不同于上述图1和图2所示实施例的执行主体,为一个独立于人流密度预测装置的人流密度估计模型的训练装置。具体使用时,由人流密度估计模型的训练装置先训练该人流密度估计模型,然后人流密度预测装置在进行人流密度预测时,直接调用训练好的人流密度估计模型,采用上述图1或者图2所示实施例的技术方案,实现人流密度预测。

例如,图4为本发明提供的一种人流密度估计模型的结构示意图。如图4所示,本实施例中的人流密度估计模型以包括一个主干网络单元和6层分支网络单元为例。图4中实线框表示进行卷积(convolution)处理,虚线框表示进行特征连接处理。其中主干网络单元中包括12个模块,其中模块1对于输入的训练图片,基于convolution处理的方式,用vgg16的1~10层初始化对应层,并获取对应层的特征,此时对应层的特征的维度为48*64*512;模块2继续对模块1得到的对应层的特征进行convolution处理,获取的对应的特征的维度为48*64*256,依次类推,模块3到模块11均采用convolution处理的方式,获取对应维度的特征。模块12基于模块1-11的处理,预测该训练图片中包括的人头总数p.count。

如图4所示,在第一级分支网络单元中,模块1从主干网络单元的模块11获取维度为1*1*1024的中间特征,并进行convolution处理,得到维度为3*4*256的特征。第一级分支网络单元中的模块2将模块1输出的维度3*4*256的特征和主干网络单元的模块10输出的维度为3*4*256的特征进行特征连接,输出维度为3*4*512的特征,以此类推,第一级分支网络单元中的模块3到模块11也分别进行convolution处理或者特征连接处理,最终由模块11输出维度为48-64*1的特征,该特征能够标识对应维度的热力图。同理,参考第一级分支网络单元的处理,第2-5级的分支网络单元,最终也能够分别得到维度为24*32*1、12*16*1、6*8*1、3*4*1的特征,来标识对应维度的热力图。第6级分支网络单元直接根据主干网络单元的模块11输出的维度为1*1*1024的中间特征,预测该训练图片中包括的人头总数p.count。

图4所示的热力图为训练图片的已知热力图,获取方式参考上述实施例的记载。其中从上向下的第一个热力图的维度与第一层分支网络单元的输出特征同一个维度;训练时,根据第一个热力图的特征和第一层分支网络单元的输出特征,可以获取到第一层分支网络单元对应的损失函数。

从上向下的第二个热力图可以基于第一个热力图进行池化求和操作,以降低维度,缩小粒度,对应地与第二层分支网络单元的输出特征同一个维度;同理,训练时,根据第二个热力图的特征和第二层分支网络单元的输出特征,可以获取到第二层分支网络单元对应的损失函数。同理,训练时,按照上述方式,可以分别获取其他各层分支网络单元对应的损失函数。其中,对最后一层的最小维度的热力图中的人头进行求和统计,可以得到已知的人头总数gt.count。对应地,主干网络单元的损失函数基于预测的人头总数p.count和已知的人头总数gt.count来获取。然后将主干网络单元的损失函数和各层分支网络单元对应的损失函数相累加作为该人流密度估计模型最终的损失函数。并基于获取的到损失函数,参考上述实施例的训练方法对主干网络单元和各层分支网络单元中的参数进行调整,直到最终确定主干网络单元和各层分支网络单元的参数,确定主干网络单元和各层分支网络单元,进而确定该人流密度估计模型。

基于以上所述,可以知道,本实施例的人流密度估计模型在训练时,融合了不同维度即不同尺度的特征,从而能够对同一图片中的不同尺度的人头能够准确识别。而且本实施例的分支网络单元还可以预测图片的热力图,提供一种直观的人流密度预测结果。

训练结束后,采用训练后的人流密度估计模型进行人流密度预测时,可以控制该人流密度估计模型仅主干网络单元输出结果,或者在训练好后,直接删除各分支网络单元,以精简网络模型。此时如图1的实施例所示,人流密度估计模型仅输出主干网络单元预测的图片中包括的人头的数量。而若进一步丰富人流密度的预测结果,此时还可以进一步控制该人流密度估计模型的第一层分支网络单元输出热力图的预测结果。此时为了精简网络模型,也可以仅保留训练好的第一层分支网络单元,而直接删除其他层的分支网络单元。当然实际应用中,也可以保留其他层的分支网络单元,但是相比于其它层的分支网络单元,第一层分支网络单元中融合的特征信息更丰富,预测的热力图更准确。

需要说明的是,图4中的分支网络单元的层数以及所有的维度尺寸仅为本实施例中提供的一种实现方式,实际应用中,还可以按照上述实施例的记载,选择其他分支网络单元的层数,以及采用其他维度尺寸的特征进行模型的训练,在此不再一一举例赘述。

本实施例的人流密度预测方法,通过采用上述技术方案,融合多个不同维度即不同尺度的特征对人流密度估计模型进行训练,使得训练后的人流密度估计模型可以对同一图片中不同尺度的人头进行准确预测,能够有效地减小人流密度预测误差,提高人流密度估计模型的预测精度和准确性。另外,采用本实施例的方案,训练的人流密度估计模型还可以准确地预测出图片的热力图,以丰富人流密度预测结果,同时也能够增强用户的使用体验。

图5为本发明的人流密度预测装置实施例一的结构图。如图5所示,本实施例的人流密度预测装置,具体可以包括:

获取模块10用于获取待预测的图片;

预测模块11用于采用预先训练的人流密度估计模型,预测获取模块10获取的待预测的图片中包括的人头数量,人流密度估计模型在训练时,融合有多个尺度的特征一起进行训练。

本实施例的人流密度预测装置,通过采用上述模块实现人流密度预测的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图6为本发明的人流密度预测装置实施例二的结构图。如图6所示,本实施例的人流密度预测装置,在上述图5所示实施例的技术方案的基础上,进一步更加详细地描述本发明的技术方案。

本实施例的人流密度预测装置中,预测模块11还用于采用人流密度估计模型,预测获取模块10获取的待预测的图片的热力图。

进一步可选地,如图6所示,本实施例的人流密度预测装置中,还包括:

尺寸调整模块12用于将获取模块10获取的待预测的图片的尺寸调整到预设尺寸;

像素调整模块13用于将尺寸调整模块12处理后的待预测的图片中的各像素点的rgb值减去相应的均值。

对应地,预测模块11用于采用预先训练的人流密度估计模型,预测像素调整模块13处理后的待预测的图片中包括的人头数量。

另外,可选地,人流密度预测装置也可以仅包括尺寸调整模块12或者像素调整模块13。

本实施例的人流密度预测装置中人流密度估计模型可以包括用于预测人头数量的主干网络单元和用于预测热力图的至少一个分支网络单元。

本实施例的人流密度预测装置,通过采用上述模块实现人流密度预测的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图7为本发明的人流密度预测装置实施例三的结构图。如图7所示,本实施例的人流密度预测装置,包括:

采集模块20用于采集数张包含人头图像的训练图片,且标注每张训练图片的已知人头总数;

生成模块21用于生成采集模块20采集的每张训练图片的真实热力图;

训练模块22用于根据采集模块20采集的数张训练图片、以及每张训练图片的已知人头总数和生成模块21生成的真实热力图,训练人流密度估计模型。

例如,可选地,训练模块22,具体用于:

对于每张训练图片,将训练图片、对应的已知人头总数以及对应的真实热力图输入至人流密度估计模型中,由人流密度模型的主干网络单元输出预测人头总数、各分支网络单元分别输出不同尺寸粒度下的预估热力图;

根据已知人头总数、预测人头总数、真实热力图以及不同尺寸粒度下的预估热力图,计算主干网络单元的损失函数和各尺寸粒度下的分支网络单元的损失函数的值;

对得到所有损失函数的值累加得到总损失函数的值;

判断总损失函数的值是否大于或者等于预设阈值,若是,调整人流密度模型中的主干网络单元和各分支网络单元的所有参数,使得总损失函数的值小于预设阈值;

重复采用数张训练图片按照上述方式对人流密度模型进行训练,直到人流密度模型预测的人头总数与已知人头总数始终一致、且预估热力图与真实热力图始终一致,确定人流密度模型的参数,进而确定人流密度模型。

进一步可选地,本实施例的人流密度预测装置中,生成模块21具体用于:

对于每张训练图片,对训练图片中的每个人头进行打点标注,并记录每个打点位置的坐标;

建立与训练图片等尺寸的矩阵,将矩阵中所有元素初始化为0;根据训练图片中每个打点位置的坐标,将矩阵中对应位置的元素的数值更新为1;以每个打点位置为中心,进行高斯模糊处理,获取高斯模糊处理后对应的所述矩阵中每个位置的跳变函数值;在以所有的所述打点位置为中心进行高斯模糊处理后,将每个位置的跳变函数值累加,作为矩阵中对应位置的元素的数值;根据矩阵中各位置的元素的数值,生成训练图片的真实热力图。

需要说明的是,本实施例的人流密度预测装置,可以独立实施,以训练人流密度模型。也可以分别与上述图5和/或图6组合,形成本发明的可选实施例。

本实施例的人流密度预测装置,通过采用上述模块实现人流密度预测的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图8为本发明的计算机设备实施例的结构图。如图8所示,本实施例的计算机设备,包括:一个或多个处理器30,以及存储器40,存储器40用于存储一个或多个程序,当存储器40中存储的一个或多个程序被一个或多个处理器30执行,使得一个或多个处理器30实现如上图1-图3所示实施例的人流密度预测方法。图8所示实施例中以包括多个处理器30为例。

例如,图9为本发明提供的一种计算机设备的示例图。图9示出了适于用来实现本发明实施方式的示例性计算机设备12a的框图。图9显示的计算机设备12a仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图9所示,计算机设备12a以通用计算设备的形式表现。计算机设备12a的组件可以包括但不限于:一个或者多个处理器16a,系统存储器28a,连接不同系统组件(包括系统存储器28a和处理器16a)的总线18a。

总线18a表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

计算机设备12a典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12a访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28a可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30a和/或高速缓存存储器32a。计算机设备12a可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34a可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18a相连。系统存储器28a可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明上述图1-图6各实施例的功能。

具有一组(至少一个)程序模块42a的程序/实用工具40a,可以存储在例如系统存储器28a中,这样的程序模块42a包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42a通常执行本发明所描述的上述图1-图6各实施例中的功能和/或方法。

计算机设备12a也可以与一个或多个外部设备14a(例如键盘、指向设备、显示器24a等)通信,还可与一个或者多个使得用户能与该计算机设备12a交互的设备通信,和/或与使得该计算机设备12a能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22a进行。并且,计算机设备12a还可以通过网络适配器20a与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20a通过总线18a与计算机设备12a的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12a使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理器16a通过运行存储在系统存储器28a中的程序,从而执行各种功能应用以及数据处理,例如实现上述实施例所示的人流密度预测方法。

本发明还提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所示的人流密度预测方法。

本实施例的计算机可读介质可以包括上述图9所示实施例中的系统存储器28a中的ram30a、和/或高速缓存存储器32a、和/或存储系统34a。

随着科技的发展,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载,或者采用其他方式获取。因此,本实施例中的计算机可读介质不仅可以包括有形的介质,还可以包括无形的介质。

本实施例的计算机可读介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1