地面特征提取方法及装置
技术领域
本发明实施例涉及激光雷达技术领域,尤其涉及一种地面特征提取方法及装置。
背景技术
单帧地面特征提取是一种常用于激光雷达的技术。该技术中,获取激光雷达对周围环境进行扫描,得到的点云数据。对于每一帧点云数据,在该点云数据中提取用于表征地面的点,进而判断地面在该帧点云数据表征的环境中的空间位置。单帧地面特征提取可以与SLAM等结合,应用于移动机器人、自动驾驶、高精地图创建等环境感知领域。
单帧地面特征提取过程中,首先,设置激光雷达的安装参数,如高度、角度等;然后,根据激光雷达的安装参数,对一帧点云数据进行预处理,从一帧点云数据中截取出一部分点云数据;最后,采用随机抽样一致性(random sample consensus,RANSAC)算法,对截取出的部分点云数据进行平面拟合,从而判断地面在该帧点云数据表征的环境中的空间位置。
上述地面特征提取过程中,需要事先确定激光雷达的安装参数。然而,当通过众包或开源数据集设置激光雷达的参数时,将难以确定激光雷达的安装参数,进而难以对点云数据进行预处理,导致需要对单帧全部点云数据进行平面拟合,复杂度高、效率低。
发明内容
本发明实施例提供一种地面特征提取方法及装置,通过扫描线判断与分组拟合,实现快速提取单帧点云数据中地面特征的目的。
第一方面,本发明实施例提供一种地面特征提取方法,包括:
确定点云数据中每个点对应的扫描线的角度;
根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合,所述至少一个集合中,同一个集合中的点对应的扫描线的角度相同;
确定所述至少一个集合中每个集合中的点所在平面的平面参数;
根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述确定所述至少一个集合中每个集合中的点所在平面的平面参数,包括:
确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段;
确定所述至少一个集合中每个集合对应的最长线段所在平面的平面参数。
一种可行的设计中,所述确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段,包括:
确定目标集合中相邻的两个点之间的距离是否小于预设距离阈值,所述目标集合是所述至少一个集合中的任意一个集合;
若相邻两个点之间的距离小于预设阈值,则确定所述相邻的两个点连续,将连续的、数量最多的点形成的线段作为所述目标集合的最长线段。
一种可行的设计中,所述根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合之后,还包括:
按照所述至少一个集合中每个集合中对应的扫描线的角度从小到大的次序,对所述至少一个集合排序,得到集合队列。
一种可行的设计中,所述集合队列中包含N个集合,所述N个集合包含第X个集合和第X+1集合,X+1≤N,且X和N均为整数,所述根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取用于表征地面特征的点,包括:
确定所述第X集合对应的平面参数和所述第X+1集合对应的平面参数的差值;
确定所述差值是否超出预设阈值;
若所述差值超出预设阈值,则确定第1集合至第X集合中各集合对应的平面参数的平均值;
根据所述平均值,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述确定所述至少一个集合中每个集合对应的最长线段所在平面的平面参数,包括:
确定目标集合对应的最长线段所在的扫描线的三维空间方程,所述目标集合是所述至少一个集合中的任意一个集合;
根据最小二乘法和所述三维空间方程,确定所述目标集合对应的最长线段所在平面的平面参数。
第二方面,本申请实施例提供一种地面特征提取装置,包括:
第一确定模块,用于确定点云数据中每个点对应的扫描线的角度;
划分模块,用于根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合,所述至少一个集合中,同一个集合中的点对应的扫描线的角度相同;
第二确定模块,用于确定所述至少一个集合中每个集合中的点所在平面的平面参数;
第三确定模块,用于根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述第二确定模块,用于确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段;确定所述至少一个集合中每个集合对应的最长线段所在平面的平面参数。
一种可行的设计中,所述第二确定模块,在确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段时,用于确定目标集合中相邻的两个点之间的距离是否小于预设距离阈值,所述目标集合是所述至少一个集合中的任意一个集合;若相邻两个点之间的距离小于预设阈值,则确定所述相邻的两个点连续,将连续的、数量最多的点形成的线段作为所述目标集合的最长线段。
一种可行的设计中,上述的装置,还包括:
排序模块,用于在所述划分模块根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合之后,按照所述至少一个集合中每个集合中对应的扫描线的角度从小到大的次序,对所述至少一个集合排序,得到集合队列。
一种可行的设计中,所述集合队列中包含N个集合,所述N个集合包含第X个集合和第X+1集合,X+1≤N,且X和N均为整数,所述第三确定模块,用于确定所述第X集合对应的平面参数和所述第X+1集合对应的平面参数的差值;确定所述差值是否超出预设阈值;若所述差值超出预设阈值,则确定第1集合至第X集合中各集合对应的平面参数的平均值;根据所述平均值,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述第二确定模块,用于确定目标集合对应的最长线段所在的扫描线的三维空间方程,所述目标集合是所述至少一个集合中的任意一个集合;根据最小二乘法和所述三维空间方程,确定所述目标集合对应的最长线段所在平面的平面参数。
第三方面,本发明实施例提供一种地面特征提取装置,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上第一方面或第一方面的各种可行的实现方式所述的方法。
第四方面,本发明实施例提供一种存储介质,所述存储介质中存储有指令,当其在电子设备上运行时,使得电子设备执行如上第一方面或第一方面的各种可行的实现方式所述的方法。
第五方面,本发明实施例提供一种计算机程序产品,所述计算机程序产品在电子设备上运行时,使得电子设备执行如上第一方面或第一方面的各种可行的实现方式所述的方法。
本实施例提供的地面特征提取方法及装置,对于一帧点云数据,电子设备确定该点云数据中每个点对应的扫描线的角度,根据每个点对应的扫描线的角度,将点云数据中的点分成至少一个集合,至少一个集合中,同一个集合中的点对应的扫描线的角度相同;之后,确定至少一个集合中每个集合中的点所在平面的平面参数,进而根据至少一个集合中每个集合对应的平面参数,从点云数据中提取出用于表征地面特征的点。该过程中,无需获取激光雷达的安装参数,通过扫描线判断与分组拟合,实现快速提取单帧点云数据中地面特征的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种特征提取方法的应用环境图;
图2为本发明实施例提供的一种特征提取方法的流程图;
图3是本发明实施例提供的地面特征提取方法中的扫描线的示意图;
图4是本发明实施例提供的另一种地面特征提取方法的流程图;
图5是本发明实施例中平装激光雷达的单帧点云数据的俯视图;
图6是本发明实施例中斜装激光雷达的单帧点云数据的俯视图;
图7为本发明实施例提供的一种地面特征提取装置的结构示意图;
图8为本发明实施例提供的另一种地面特征提取装置的结构示意图;
图9为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
点云数据是指采用激光扫描的方式,获取到的数据。获取点云数据的过程中,利用激光雷达,如多线激光雷达等对环境进行扫描,当多线激光雷达的一束激光照射到环境中的物体表面时,该束激光会发生反射,所反射的激光会携带方位、距离等信息。若将激光束按照某种轨迹进行扫描,便会边扫描边记录到反射的激光点信息,由于扫描极为精细,则能够得到大量的激光点,因而就可形成点云数据。由于一个环境中包含的对象很多,如地面、大树、建筑物、移动的车辆等,因此,对环境进行扫描得到的点云数据包含多个对象的点云数据。得到点云数据后,若需要对某个对象,如地面进行分析,则需要从点云数据中提取出表征地面的点,进而根据该些点确定地面在点云数据中的空间位置。
由于点云数据是激光雷达等对环境一帧一帧扫描得到的,对于每一帧点云数据,需要从该帧中提取出表征地面的点,进而根据该些点确定地面在点云数据中的空间位置。该过程称之为单帧地面特征提取。因此,以下若未做特殊说明,则点云数据指一帧点云数据。
通常,单帧地面特征提取过程中,首先,设置激光雷达的安装参数,如激光雷达相对于采集车等硬件设备的高度、角度等;然后,根据激光雷达的安装参数,对一帧点云数据进行预处理,即从一帧点云数据中截取出一部分点云数据;最后,采用随机抽样一致性(random sample consensus,RANSAC)算法,对截取出的部分点云数据进行平面拟合,从而判断地面在该帧点云数据表征的环境中的空间位置。
上述地面特征提取过程中,需要事先确定激光雷达的安装参数。然而,当通过众包或开源数据集设置激光雷达的参数时,将难以确定激光雷达的安装参数,进而难以对点云数据进行预处理,导致需要从单帧点云数据中的全部离散的点中确定出表征地面的点,进而对表征地面的点进行平面拟合,复杂度高、效率低。
有鉴于此,本发明实施例提供一种特征提取方法及装置,通过扫描线判断与分组拟合,实现快速提取单帧点云数据中地面特征的目的。
图1是本发明实施例提供的一种特征提取方法的应用环境图。请参照图1,电子设备与服务器之间建立网络连接,激光雷达与服务器建立网络连接,服务器用于存储激光雷达对环境进行扫描得到的点云数据。电子设备可以通过服务器获取到点云数据等。
请参照图1,本发明实施例所述的特征提取方法应用于电子设备上的特征提取装置。电子设备通过服务器获取点云数据,从点云数据中提取出地面特征,并在电子设备上显示地面在点云数据中的空间位置,或者,通过电子设备语音播报地面在点云数据中的空间位置。其中,电子设备具体可以是电脑、笔记本等,本发明实施例并不限制。下面,对本发明实施例所述的特征提取方法进行详细说明。示例性的,可参见图2。
图2为本发明实施例提供的一种特征提取方法的流程图。本实施例的执行主体是特征提取装置,该装置可以通过软件、硬件或者软硬件结合的方式实现,该装置可以是电子设备的部分或者全部。本实施以该特征提取方法应用于上述图1中的电子设备为例进行说明,本实施例包括:
101、确定点云数据中每个点对应的扫描线的角度。
示例性的,多线激光雷达例如采用多个激光发射器,一个发射器对应一个扫描线数。因此,当多线激光雷达通过某个发射器发射激光时,相当于发射一束激光,该束激光中的每条光线可以理解为一条扫描线。多线激光雷达对周围环境进行扫描得到点云数据,点云数据中每一个离散的点对应一条扫描线。
电子设备从服务器获取到一帧点云数据后,对该帧点云数据中包含的离散的点中的每一个点,确定该点所在的扫描线的角度。其中,扫描线的角度可以理解为扫描线与雷达中线的角度。示例性的,可参见图3,图3是本发明实施例提供的地面特征提取方法中的扫描线的示意图。
请参照图3,多线激光雷达的发射器发出的激光束类似于手电筒发出的光束,雷达中线即为激光束中最中心的一条线,如图中粗黑实线所示,各扫描线与雷达中线互不相交,而且,各扫描线与雷达中线所成的角度互不相同。例如,扫描线包括扫描线1、扫描线3、扫描线5、扫描线7……扫描线15,以及扫描线0、扫描线2、扫描线4、扫描线6……扫描线14,则各条扫描线与雷达中线的角度不同。而且,扫描线1、扫描线3、扫描线5、扫描线7……扫描线15与雷达中线的角度呈正角度,扫描线0、扫描线2、扫描线4、扫描线6……扫描线14与雷达中线的角度呈负角度。
102、根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合,所述至少一个集合中,同一个集合中的点对应的扫描线的角度相同。
根据图3可知:点云数据中,位于同一条扫描线上的点对应的扫描线的角度相同。因此,电子设备可以将扫描线角度相同的点,即同一天扫描线上的点划分到一个集合内,从而将点云数据包含的离散的点划分成多个点集。
103、确定所述至少一个集合中每个集合中的点所在平面的平面参数。
本发明实施例中,每个集合包含若干个点,一个集合中的所有点在同一条扫描线上。本步骤中,确定每个集合中的点所在平面的平面参数,即确定每个集合对应的扫描线所在平面的平面参数。例如,将一个集合中的所有的点依次相连,得到一条线段,确定该线段所在平面的平面参数。
104、根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取用于表征地面特征的点。
示例性的,根据至少一个集合中每个集合对应的平面参数,利用最小二乘法等拟合出地面对应的平面,即从点云数据中提取出用于表征地面特征的点。
本发明实施例提供的地面特征提取方法,对于一帧点云数据,电子设备确定该点云数据中每个点对应的扫描线的角度,根据每个点对应的扫描线的角度,将点云数据中的点分成至少一个集合,至少一个集合中,同一个集合中的点对应的扫描线的角度相同;之后,确定至少一个集合中每个集合中的点所在平面的平面参数,进而根据至少一个集合中每个集合对应的平面参数,从点云数据中提取出用于表征地面特征的点。该过程中,无需获取激光雷达的安装参数,通过扫描线判断与分组拟合,实现快速提取单帧点云数据中地面特征的目的。
图4是本发明实施例提供的另一种地面特征提取方法的流程图,本实施以该特征提取方法应用于上述图1中的电子设备为例进行说明,本实施例包括:
201、确定点云数据中每个点对应的扫描线的角度。
示例性的,可参见上述图2中关于步骤101的描述,此处不再赘述。
202、根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合,所述至少一个集合中,同一个集合中的点对应的扫描线的角度相同。
示例性的,可参见上述步骤图2中关于步骤102的描述,此处不再赘述。
203、按照所述至少一个集合中每个集合中对应的扫描线的角度从小到大的次序,对所述至少一个集合排序,得到集合队列。
本步骤中,对各集合进行排序,得到集合队列。该集合队列中,越靠前的集合对应的扫描线的角度越小。例如,再请参照图3,每个集合实质上对应一条扫描线,由于扫描线1、扫描线3、扫描线5、扫描线7……扫描线15与雷达中线的角度呈正角度,扫描线0、扫描线2、扫描线4、扫描线6……扫描线14与雷达中线的角度呈负角度。因此,最终的排序为:扫描线0、扫描线2、扫描线4、扫描线6、扫描线8、扫描线10、扫描线12、扫描线14、扫描线1、扫描线3……扫描线15。
204、确定至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段。
本发明实施例中,无论激光雷达的姿态如何,扫描在地面上的扫描线所成点云都会是连续排列成圆锥形曲线形态。示例性的,可参见图5和图6,图5是本发明实施例中平装激光雷达的单帧点云数据的俯视图,图6是本发明实施例中斜装激光雷达的单帧点云数据的俯视图。根据图5和图6可知:无论激光雷达平装还是斜装,激光雷达扫描在地面上的扫描线所成点云都会是连续排列成圆锥形曲线形态。因此,可以依次计算扫描线中相邻两点的距离,距离小于阈值即认为连续,从而得出每条扫描线的最长连续线段。
根据上述可知:本发明实施例中,一个集合包含若干个点,由于该些点位于同一条扫描线上,因此,任意相邻的两个点之间的距离相同或不同,因此,可以通过判断该些点中,每两个相邻点之间的距离的方式,确定该集合中的点的连续性,进而得到最长线段。以任意一个集合,以下称之为目标集合为例,确定目标集合中的点的连续性时,确定目标集合中相邻的两个点之间的距离是否小于预设距离阈值,所述目标集合是所述至少一个集合中的任意一个集合;若相邻两个点之间的距离小于预设阈值,则确定所述相邻的两个点连续,将连续的、数量最多的点形成的线段作为所述目标集合的最长线段。
假设目标集合包含15个离散的点,即为点1~点15,则点1和点2是相邻的点,点2和点3是相邻的点,点3和点4是相邻的点……。确定连续性的过程中,电子设备计算每相邻两个点之间的距离,若该相邻的两个点之间的距离小于预设阈值,则认为该两个点连续,可以练成一条线段;否则,认为该两个点不连续,舍弃其中的一个点,最后,将连续的点形成的线段中,最长的线段作为目标集合的最长线段,该最长线段也可以立即为连续的点最多的线段。继续沿用上述的例子,假设15个离散的点中,点1~点6中,任意两个相邻的点之间的距离小于预设阈值,但是点6和点7之间的距离大于预设阈值,则舍弃点7,点1~点6中的点依次相连,得到线段1,线段1包含6个点。点7~点15中,任意两个相邻的点之间的距离小于预设阈值,将点7~点15中的点依次相连,得到线段2,则线段2包含9个点,由于线段2中的点的个数大于线段1中的点的个数,因此,目标集合对应的最长线段为线段2。
需要说明的是,虽然上述是以15个点为例本如何确定目标集合的最长线段进行说明的,然而,本发明实施例并不限制。
205、确定所述至少一个集合中每个集合对应的最长线段所在平面的平面参数。
本步骤中,电子设备采用最小二乘法等集合平面,从而确定至少一个集合中每个集合对应的最长线段所在平面的平面参数。示例性的,使用步骤204中的最长线段,确定一个集合对应的扫描线所在平面的三维空间方程。该三维空间方程为:
ex+fy+gz+h=0 (1)
其中,e、f、g分别为系数,h为常数,x、y、z为所述目标集合中任意一个点的坐标。
根据三维空间方程,即公式(1)可有确定出z方程,该z方程为:
z=ax+by+c (2)
其中,a=-e/g,b=-f/g,c=-h/g;
将目标集合对应的最长线段中的每个点的坐标带入z方程,即带入公式(2),根据最小二乘法得:
S(X)=||AX-B||2; (4)
X=(ATA)-1ATB;T为矩阵转置,所述X为所述目标集合对应的平面参数,采用同样的方法,可以得到集合队列中每一个集对应的平面参数。
206、根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取出用于表征地面特征的点。
上述实施例中,电子设备根据所述至少一个集合中每个集合对应的平面参数,确定所述点云数据中用于表征地面的点在所述点云数据中的空间位置时,电子设备确定集合队列中每相邻两个集合的平面参数的差值,若该两个集合的平面参数的差值大于预设阈值,则说明该两个集合中,后面一个集合的平面参数出现突变。因此,电子设备对突变前的各集合的平面参数求一个平均值,该平均值对应的平面即为地面所在的平面。例如,按照扫描线的角度从小到大的次序,对该至少一个集合排序,得到集合队列,假设集合队列中包含N个集合,该N个集合包含第X个集合和第X+1集合,X+1≤N,且X和N均为整数,电子设备确定第X集合对应的平面参数和该第X+1集合对应的平面参数的差值,确定该差值是否超出预设阈值;若该差值超出预设阈值,则电子设备确定第1集合至第X集合中各集合对应的平面参数的平均值;根据该平均值,从所述点云数据中提取用于表征地面特征的点,进而提取出用于表征地面特征的点在点云数据中的空间位置。
图7为本发明实施例提供的一种地面特征提取装置的结构示意图,该地面特征提取装置可以通过软件和/或硬件的方式实现。如图7所示,该地面特征提取装置100包括:
第一确定模块11,用于确定点云数据中每个点对应的扫描线的角度;
划分模块12,用于根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合,所述至少一个集合中,同一个集合中的点对应的扫描线的角度相同;
第二确定模块13,用于确定所述至少一个集合中每个集合中的点所在平面的平面参数;
第三确定模块14,用于根据所述至少一个集合中每个集合对应的平面参数,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述第二确定模块13,用于确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段;确定所述至少一个集合中每个集合对应的最长线段所在平面的平面参数。
一种可行的设计中,所述第二确定模块13,在确定所述至少一个集合中每个集合中的点的连续性,得到所述至少一个集合中每个集合中连续的点形成的最长线段时,用于确定目标集合中相邻的两个点之间的距离是否小于预设距离阈值,所述目标集合是所述至少一个集合中的任意一个集合;若相邻两个点之间的距离小于预设阈值,则确定所述相邻的两个点连续,将连续的、数量最多的点形成的线段作为所述目标集合的最长线段。
图8为本发明实施例提供的另一种地面特征提取装置的结构示意图,一种可行的设计中,所地面特征提取述装置100,还包括:
排序模块15,用于在所述划分模块12根据每个点对应的扫描线的角度,将所述点云数据中的点分成至少一个集合之后,按照所述至少一个集合中每个集合中对应的扫描线的角度从小到大的次序,对所述至少一个集合排序,得到集合队列。
一种可行的设计中,所述集合队列中包含N个集合,所述N个集合包含第X个集合和第X+1集合,X+1≤N,且X和N均为整数,所述第三确定模块14,用于确定所述第X集合对应的平面参数和所述第X+1集合对应的平面参数的差值;确定所述差值是否超出预设阈值;若所述差值超出预设阈值,则确定第1集合至第X集合中各集合对应的平面参数的平均值;根据所述平均值,从所述点云数据中提取用于表征地面特征的点。
一种可行的设计中,所述第二确定模块13,用于确定目标集合对应的最长线段所在的扫描线的三维空间方程,所述目标集合是所述至少一个集合中的任意一个集合;根据最小二乘法和所述三维空间方程,确定所述目标集合对应的最长线段所在平面的平面参数。
图9为本发明实施例提供的一种电子设备的结构示意图。如图9所示,该电子设备200包括:
至少一个处理器21和存储器22;
所述存储器22存储计算机执行指令;
所述至少一个处理器21执行所述存储器22存储的计算机执行指令,使得所述至少一个处理器21执行如上所述的地面特征提取方法。
可选地,该电子设备200还包括通信部件23。其中,处理器21、存储器22以及通信部件23可以通过总线24连接。
本发明实施例还提供一种存储介质,所述存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的地面特征提取方法。
本发明实施例还提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得电子设备执行如上述地面特征提取方法。
在上述的实施例中,应该理解到,所描述的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component,PCI)总线或扩展工业标准体系结构(extendedIndustry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本发明附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuits,ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于终端或服务器中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本文中的术语“多个”是指两个或两个以上。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。