掌桥专利:专业的专利平台
掌桥专利
首页

覆盖路径生成方法、装置、电子设备和存储介质

文献发布时间:2024-04-18 19:58:30


覆盖路径生成方法、装置、电子设备和存储介质

技术领域

本申请涉及机器人技术领域,特别是涉及一种覆盖路径生成方法、装置、电子设备和存储介质。

背景技术

随着机器人技术的发展,出现了清洁机器人,清洁机器人具备覆盖路径规划功能,传统的覆盖路径规划通常适用于二维平面,这就使得清洁机器人无法在三维曲面上实现较好的覆盖效果。

现有技术中,可以预先获取待清洁物体的CAD模型,通过三维建模软件对CAD模型进行点、线、面,或者轮廓曲线的拾取,根据拾取结果规划清洁机器人的覆盖路径。然而,在实际应用场景下,待清洁物体多种多样,可能无法获取到待清洁物体的CAD模型,而且,先基于CAD模型进行特征拾取,再根据拾取结果生成覆盖路径,操作过程繁琐,对输入模型信息要求高,不适用于日常服务场景。

发明内容

基于此,有必要针对上述技术问题,提供一种实用性较强的覆盖路径生成方法、装置、电子设备和计算机可读存储介质。

第一方面,本申请提供了一种覆盖路径生成方法。所述方法包括:

获取待清洁对象的空间点云;

确定所述空间点云所在点云区域的切割平面;所述切割平面与所述空间点云相交;

将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

确定所述投影点在所述切割平面上的平面覆盖路径;

根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

第二方面,本申请还提供了一种覆盖路径生成装置。所述装置包括:

点云获取模块,用于获取待清洁对象的空间点云;

平面确定模块,用于确定所述空间点云所在点云区域的切割平面;所述切割平面与所述空间点云相交;

点云投影模块,用于将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

平面路径模块,用于确定所述投影点在所述切割平面上的平面覆盖路径;

空间路径模块,用于根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

第三方面,本申请还提供了一种电子设备,其特征在于,包括:存储器、一个或多个处理器;

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

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如下操作:

获取待清洁对象的空间点云;

确定所述空间点云所在点云区域的切割平面;所述切割平面与所述空间点云相交;

将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

确定所述投影点在所述切割平面上的平面覆盖路径;

根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取待清洁对象的空间点云;

确定所述空间点云所在点云区域的切割平面;所述切割平面与所述空间点云相交;

将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

确定所述投影点在所述切割平面上的平面覆盖路径;

根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

上述覆盖路径生成方法、装置、电子设备和存储介质,通过先获取待清洁对象的空间点云,再确定空间点云所在点云区域的切割平面,然后将空间点云投影至切割平面,得到空间点云在切割平面上的投影点,最后确定投影点在切割平面上的平面覆盖路径,根据平面覆盖路径确定清洁机器人对于待清洁对象的空间覆盖路径;可以在待清洁对象为曲面的情况下,通过将待清洁对象的空间点云投影到切割平面,对切割平面上的投影点进行覆盖路径规划,将三维曲面的覆盖路径规划问题转化为二维平面的覆盖路径规划问题,无需基于CAD模型生成覆盖路径,降低了覆盖路径规划的复杂度,具备较强的实用性,适于日常服务场景下的应用。

附图说明

图1是传统清洁机器人的覆盖路径生成方法的示意图;

图2是本申请实施例一提供的一种覆盖路径生成方法的流程示意图;

图3是本申请实施例一提供的切割平面构建的示意图;

图4是本申请实施例一提供的投影点获取的示意图;

图5是本申请实施例一提供的投影点聚类及排序的示意图;

图6是本申请实施例一提供的插值及姿态确定的示意图;

图7是本申请实施例二提供的一种覆盖路径生成方法的流程示意图;

图8是本申请实施例二提供的覆盖路径生成的示意图;

图9是本申请实施例二提供的一种用于服务场景下的机器人三维覆盖路径生成方法的流程示意图;

图10是本申请实施例三提供的一种覆盖路径生成装置的结构框图;

图11是本申请实施例四提供的一种电子设备的结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

传统清洁机器人通常针对商业公共区域或者家庭地面进行清洁。图1提供了传统清洁机器人的覆盖路径生成方法的示意图,根据图1,覆盖路径生成方法可以包括牛耕法和梯形分解法。牛耕法和梯形分解法存在两方面特点,一方面,处理的工作面是二维平面,工作区域和内部障碍物通常被处理成多边形的形式;另一方面,为了得到覆盖路径,只需要知道工作空间或者障碍物的边界轮廓,通过在轮廓内部进行分区,在每个区域生成均匀分布的覆盖路径。然而,对于工作面是三维曲面的清洁场景,例如,对汽车挡风玻璃的清洁,仅仅知道清洁对象的轮廓是不够的,还需要知道曲面的形状。因此,牛耕法和梯形分解法并不适用。

三维空间曲面的清洁与传统工业场景的喷涂或者打磨等应用类似,可以借鉴喷涂或者打磨的覆盖路径生成方法。工业应用中,喷涂或者打磨零件的CAD模型通常已知,可以通过3D建模软件,对已知的CAD模型进行点、线、面或者轮廓曲线的拾取,然后在特定的面上生成覆盖路径,最后通过离线示教机器人的位姿,完成喷涂或打磨任务。然而,在清洁场景下,清洁对象多种多样,通常无法获得清洁对象的CAD模型,而且,基于CAD模型拾取特征曲线,对特征曲线进行编辑,进而生成覆盖路径的方法,需要耗费计算资源,操作繁琐,不适用于复杂多变的日常清洁服务场景。因此,针对清洁服务场景下三维空间曲面的覆盖路径生成问题,尚无有效的解决方法。

本申请实施例提供的覆盖路径生成方法,可以应用于终端或者服务器。其中,终端可以但不限于是各种清洁机器人、个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

实施例一

图2是本申请实施例一提供的一种覆盖路径生成方法的流程示意图。具体的,参考图2,本申请实施例一的覆盖路径生成方法,具体包括:

步骤S110,获取待清洁对象的空间点云。

其中,待清洁对象可以为待清洁的曲面对象,包括但不限于弧形洗手池表面、弧形建筑表面和汽车挡风玻璃。

其中,空间点云可以为空间采样点三维坐标的集合。

具体实现中,清洁机器人可以携带有深度传感器,深度传感器可以采集待清洁对象的空间点云,并将采集到的空间点云传输至清洁机器人。深度传感器还可以针对包含待清洁对象的一块目标区域,采集目标区域的空间点云,并将采集到的目标区域的空间点云传输至清洁机器人,清洁机器人可以从目标区域的空间点云中提取出待清洁对象的空间点云。为克服目标区域空间点云存在的噪音、信息不完整等问题,清洁机器人还可以获取目标区域的多帧空间点云,对多帧空间点云进行三维重建,得到目标区域重建后的空间点云,并从重建后的空间点云中提取出待清洁对象的空间点云。

例如,当需要清洁汽车挡风玻璃时,清洁机器人通过深度传感器可以直接获取挡风玻璃外表面的点云,还可以获取汽车外表面的点云,通过背景去除和/或利用法向量信息等方法,从汽车外表面的点云中分割出挡风玻璃外表面的点云。在深度传感器所采集到的点云中存在噪音、信息不完整等问题的情况下,可以对点云进行三维重建,三维重建可以将多帧点云信息进行融合,得到精确性更高的点云,并且可以对点云中的噪音进行滤波和平滑,进一步提高点云的精确性。

步骤S120,确定空间点云所在点云区域的切割平面。

其中,点云区域可以为包含全部空间点云的空间区域。

具体实现中,可以选取包含全部空间点云的空间区域作为点云区域,还可以选取包含全部空间点云的最小空间区域作为点云区域。清洁机器人可以在点云区域构建一个或多个二维的切割平面。当构建多个切割平面时,多个切割平面之间可以相互平行,相邻切割平面之间的距离可以为固定值。

图3提供了一个切割平面构建的示意图。根据图3,切割平面可以用一个固连在切割平面上的坐标系来描述,坐标系可以用于表征切割平面的位置和姿态。可以将世界坐标系Y轴的方向作为切割平面法向量的方向,构造法向量

各切割平面的原点可以为

其中,i表示第i个切割平面。根据原点C

步骤S130,将空间点云投影至切割平面,得到空间点云在切割平面上的投影点。

具体实现中,针对每一个空间点云,清洁机器人可以统计其与各切割平面之间的距离,在空间点云与切割平面之间的距离不超过预设的距离阈值的情况下,可以判定为该切割平面附近的空间点云,将该空间点云投影到该切割平面上,得到该空间点云在该切割平面上的投影点。清洁机器人还可以针对每一个切割平面,选取距离该切割平面预设距离范围内的空间点云,将选取到的空间点云投影到该切割平面上。

图4提供了一个投影点获取的示意图。根据图4,可以将点云中距离切割平面δ范围内的点投影至切割平面。已知切割平面的法向量为

步骤S140,确定投影点在切割平面上的平面覆盖路径。

具体实现中,对于每一个切割平面,由于感知的点云信息不全,或者本来清洁物体上有孔洞,导致投影点不连续,清洁机器人可以对切割平面上的投影点进行聚类,得到切割平面上的至少一个聚类簇,每个聚类簇内包含若干个离散的投影点。对于切割平面上的每一个聚类簇,清洁机器人可以对聚类簇内的离散投影点进行排序,得到离散投影点在切割平面上的平面覆盖路径。

步骤S150,根据平面覆盖路径,确定待清洁对象的空间覆盖路径。

具体实现中,可以将平面覆盖路径上各个离散投影点的二维坐标变换到世界坐标系中,得到三维离散路径,三维离散路径上各个离散投影点的坐标均用三维坐标表示。利用离散点的三维坐标,对三维离散路径进行拟合,可以得到三维坐标与三维离散路径之间的映射关系,根据该映射关系对三维离散路径进行插值,可以得到平滑的三维离散路径,可以将该平滑的三维离散路径作为清洁机器人在待清洁对象上的空间覆盖路径。

需要说明的是,在确定空间覆盖路径后,还可以进一步确定清洁机器人在待清洁对象上依照空间覆盖路径进行运动时的运动姿态,具体的,当需要确定清洁机器人在覆盖路径上P点的运动姿态时,可以先通过最小二乘法确定覆盖路径上P点的法向量,将法向量作为Z轴,再将P点的切线作为X轴,最后将Z轴与X轴进行叉乘,可以得到Y轴,根据P点的坐标系X、Y、Z,可以确定清洁机器人在P点的运动姿态,例如,在确定坐标轴方向后,可以将清洁机器人的姿态设置为顶面朝向与Z轴方向相同,正面朝向与X轴方向相同,左侧面朝向与Y轴方向相同。

还需要说明的是,清洁机器人可以针对每一个切割平面上的每一个聚类簇,分别单独进行覆盖路径规划,若在相邻聚类簇之间,出现覆盖路径的断点,清洁机器人可以生成报警消息,提示用户给以指示信息,或者生成请求指令发送给服务器,请求服务器给以指示信息,清洁机器人在接收到指示信息后,可以根据指示信息执行相应的操作。其中,指示信息可以为指示清洁机器人运动至相邻聚类簇的信息,清洁机器人在相邻聚类簇规划空间覆盖路径,并将之前的空间覆盖路径和当前空间覆盖路径相连接,得到完整的清洁路径;指示信息还可以为指示清洁机器人运动至相邻切割平面的信息,清洁机器人在相邻切割平面规划空间覆盖路径,并将之前平面上的空间覆盖路径与当前平面上的空间覆盖路径相连接,得到完整的清洁路径。

图5提供了一个投影点聚类及排序的示意图。根据图5,受反光、视角受限等因素印象,深度传感器所采集到的点云可能会出现局部缺失的情况,投影到切割平面上,则会出现切割平面上投影点云带的截断现象。由于无法预估此种截断是由数据缺失导致,还是用户不希望截断区域被清洁,因此可以采取保守策略,对切割平面上的投影点集进行分段处理。具体的,可以采用基于密度的聚类算法(Density-Based Spatial Clustering ofApplications with Noise,DBSCAN),对投影点进行聚类。聚类处理后,可以对各聚类簇的投影点进行排序,获得各聚类簇所对应的离散路径。具体的,可以对包含投影点的切割平面进行网格化,还可以调节网格尺寸,使每一个网格最多包含一个投影点,对于包含投影点的网格,将投影点坐标作为网格坐标,对于不包含投影点的网格,将网格坐标设置为预设值(∞,∞),每次搜索的搜索区域可以为当前网格邻域3×3的网格区域(8邻域)。在搜索过程中,可以将所有网格中横坐标最小或者纵坐标最小的网格作为起始网格,并在起始网格的8邻域搜索距离起始网格最近的投影点,若未搜索到投影点,则可以扩大搜索区域,或者判定出现投影点截断现象,终止当前聚类簇投影点的排序,继续下一聚类簇投影点的排序,否则,若搜索到投影点,则可以将包含该投影点的网格作为第二网格,计算起始网格与第二网格之间的第一方向向量,然后在第二网格的8邻域内搜索投影点,若未搜索到投影点,则可以扩大搜索区域,或者判定出现投影点截断现象,终止当前聚类簇投影点的排序,继续下一聚类簇投影点的排序,否则,若寻找到投影点,则可以将包含该投影点的网格作为第三网格,若寻找到两个或两个以上投影点,则可以计算各投影点所在网格与第二网格之间的第二方向向量,得到第二方向向量与第一方向向量之间的夹角,从中选取最小夹角,将包含最小夹角所对应的投影点的网格作为第三网格,之后,可以标记第二网格已经被访问,并继续在第三网格的8邻域内寻找投影点,重复上述过程,直到所有网格均被访问。连接起始网格、第一网格、第二网格……所对应的投影点,可以得到当前切割平面上的一条离散路径。

为了得到曲面上的覆盖路径,还可以将投影点的二维坐标变换到世界坐标系,得到投影点的三维坐标。具体的,可以先确定投影点Q相对于切割平面原点C

则投影点Q的三维坐标为

图6提供了一个插值及姿态确定的示意图。根据图6,在得到切割平面上的一条二维离散路径后,将离散路径上各投影点的二维坐标变换为三维坐标,可以得到一条三维离散路径,为了便于清洁机器人执行该路径,可以对三维离散路径进行拟合和插值,得到光滑的机器人覆盖路径。具体的,可以使用B样条拟合或者其他回归方法。以B样条拟合为例,为了保证拟合的曲线是二阶连续的,可以采用3阶样条曲线,具体模型可以为

其中,N是样条基函数,P是样条控制点,C是拟合点,即图5中得到的离散路径上的点。给定拟合点样本集合和样条基函数,在N和C已知的情况下,构造方程组,可以求解出P,将求解出的P代入公式

进一步的,在清洁机器人工作过程中,不但需要知道位置信息,还需要知道姿态信息,可以在各插值点处计算机器人的姿态。具体的,可以利用最小二乘法确定插值点的法向量

上述覆盖路径生成方法,通过先获取待清洁对象的空间点云,再确定空间点云所在点云区域的切割平面,然后将空间点云投影至切割平面,得到空间点云在切割平面上的投影点,最后确定投影点在切割平面上的平面覆盖路径,根据平面覆盖路径确定清洁机器人对于待清洁对象的空间覆盖路径;可以在待清洁对象为曲面的情况下,通过将待清洁对象的空间点云投影到切割平面,对切割平面上的投影点进行覆盖路径规划,将三维曲面的覆盖路径规划问题转化为二维平面的覆盖路径规划问题,无需基于CAD模型生成覆盖路径,降低了覆盖路径规划的复杂度,具备较强的实用性,适于日常服务场景下的应用。

实施例二

图7是本申请实施例二提供的一种覆盖路径生成方法的流程示意图。具体的,参考图7,本申请实施例二的覆盖路径生成方法,具体包括:

步骤S201,获取待清洁对象的空间点云。

具体实现中,清洁机器人可以获取深度传感器采集到的空间点云,并将深度传感器所采集到的空间点云作为待清洁对象的空间点云。

本实施例中,通过获取待清洁对象的空间点云,可以供清洁机器人根据空间点云对待清洁对象进行建模,进而确定覆盖路径。

可选地,所述步骤S201,包括:

获取目标区域的原始深度点云信息;目标区域包含待清洁对象;基于原始深度点云信息进行三维重建,得到原始深度点云信息对应的目标空间点云;对目标空间点云进行分割,得到待清洁对象的空间点云。

其中,目标区域可以为包含待清洁对象,且比待清洁对象所在区域更大的空间区域。

其中,原始深度点云信息可以为深度传感器采集到的原始点云。目标空间点云可以为对原始点云进行三维重建后的点云。

具体实现中,深度传感器可以针对包含待清洁对象的一块目标区域,采集原始深度点云信息,并将采集到的原始深度点云信息传输至清洁机器人,清洁机器人可以基于目标区域的原始深度点云信息进行三维重建,得到目标空间点云,其中,三维重建可以包括对原始深度点云信息进行去噪、滤波和/或平滑操作,还可以为对多帧原始深度点云信息进行融合。获取到目标空间点云后,清洁机器人可以通过背景去除和/或利用空间法向量信息等方法,对目标空间点云进行分割,从中得到待清洁对象的空间点云。

本实施例中,通过获取目标区域的原始深度点云信息,基于原始深度点云信息进行三维重建,得到原始深度点云信息对应的目标空间点云,可以解决原始深度点云信息存在的噪音、信息不完整等问题,使得到的目标空间点云更加符合待清洁对象的实际形状,对目标空间点云进行分割,得到待清洁对象的空间点云,可以使得到的待清洁对象的空间点云更为精确。

步骤S202,确定空间点云所在点云区域的切割平面。

具体实现中,可以在点云区域确定一个或多个二维的切割平面,当构建多个切割平面时,多个切割平面之间可以相互平行,相邻切割平面之间的距离还可以为固定值。

本实施例中,通过确定空间点云所在点云区域的切割平面,可以将三维点云投影到切割平面上,得到二维投影点,进而对二维投影点进行路径规划,降低了覆盖路径规划的复杂度。

可选地,所述步骤S202,包括:

确定切割平面的原点,以及与原点相关联的第一坐标轴;将第一坐标轴与辅助向量进行叉乘,得到第二坐标轴;辅助向量与第一坐标轴之间的夹角符合第一预设条件;将第一坐标轴与第二坐标轴进行叉乘,得到第三坐标轴;根据原点、第一坐标轴、第二坐标轴和第三坐标轴,确定切割平面。

其中,第一坐标轴可以为切割平面坐标系的Z轴,第二坐标轴可以为切割平面坐标系的Y轴,第三坐标轴可以为切割平面坐标系的X轴。

其中,第一预设条件可以为辅助向量与第一坐标轴之间的夹角为锐角。

需要说明的是,在切割平面为多个的情况下,可以分别确定每一个切割平面的原点、第一坐标轴、第二坐标轴和第三坐标轴,根据确定的原点、第一坐标轴、第二坐标轴和第三坐标轴建立坐标系,根据建立的坐标系,确定各切割平面。

具体实现中,根据图3,切割平面可以用一个固连在切割平面上的坐标系来描述,坐标系可以用于表征切割平面的位置和姿态。可以将世界坐标系Y轴的方向作为切割平面法向量的方向,构造法向量

各切割平面的原点可以为

其中,i表示第i个切割平面。根据原点C

本实施例中,通过确定切割平面的原点,以及与原点相关联的第一坐标轴,将第一坐标轴与辅助向量进行叉乘,得到第二坐标轴,将第一坐标轴与第二坐标轴进行叉乘,得到第三坐标轴,根据原点、第一坐标轴、第二坐标轴和第三坐标轴,确定切割平面,可以建立切割平面的坐标系,进而根据所建立的坐标系来确定切割平面,从而自动确定切割平面,提高切割平面确定的效率。

可选地,所述确定切割平面的原点,包括:

确定空间点云中的第一点云坐标和第二点云坐标;第一点云坐标符合第二预设条件,第二点云坐标符合第三预设条件;确定点云坐标向量;点云坐标向量与第一点云坐标和第二点云坐标相对应;将点云坐标向量与预设的切割步长进行相除,得到切割平面的个数;根据第一点云坐标、切割步长和切割平面的个数,确定切割平面的原点。

其中,第一点云坐标可以为一个空间点云的坐标,第二点云坐标可以为另一个空间点云的坐标。

其中,第二预设条件可以为第一点云坐标在各坐标维度上的值为全体点云相应坐标维度上坐标值中的最小值。第三预设条件可以为第二点云坐标在各坐标维度上的值为全体点云相应坐标维度上坐标值中的最大值。

具体实现中,可以获取空间点云中的第一点云坐标P

根据P

其中,i表示第i个切割平面。

本实施例中,通过确定空间点云中的第一点云坐标和第二点云坐标,确定点云坐标向量,将点云坐标向量与预设的切割步长进行相除,得到切割平面的个数,根据第一点云坐标、切割步长和切割平面的个数,确定切割平面的原点,可以使得切割平面能够均匀覆盖所有空间点云,进而使得各空间点云均能够投影到至少一个切割平面上。

步骤S203,将空间点云投影至切割平面,得到空间点云在切割平面上的投影点。

具体实现中,针对每一个空间点云,可以统计其与各切割平面之间的距离,在空间点云与切割平面之间的距离不超过预设的距离阈值的情况下,可以将空间点云投影到该切割平面上,得到空间点云在该切割平面上的投影点。还可以针对每一个切割平面,选取距离该切割平面预设距离范围内的空间点云,将选取到的空间点云投影到该切割平面上。

本实施例中,通过将空间点云投影至切割平面,得到空间点云在切割平面上的投影点,可以将三维的空间点云变换到二维的投影点,降低覆盖路径规划的复杂度。

可选地,所述步骤S203,包括:

在空间点云与切割平面之间的距离不超过预设的距离阈值的情况下,将空间点云投影至切割平面,得到投影点。

具体实现中,可以统计空间点云与切割平面之间的距离,在空间点云与切割平面之间的距离不超过预设的距离阈值的情况下,将空间点云投影到切割平面上,得到空间点云在切割平面上的投影点。

本实施例中,通过在空间点云与切割平面之间的距离不超过预设的距离阈值的情况下,将空间点云投影至切割平面,得到投影点,可以将三维的空间点云变换到二维的投影点,降低覆盖路径规划的复杂度。

步骤S204,对切割平面上的投影点进行聚类,得到投影点的聚类簇;

步骤S205,对聚类簇内的投影点进行排序,得到投影点在切割平面上的平面覆盖路径。

具体实现中,根据图5,可以采用基于密度的聚类算法,对切割平面上的投影点进行聚类,并在聚类处理后,对各聚类簇的投影点进行排序,获得各聚类簇所对应的离散路径。具体的,可以对包含投影点的切割平面进行网格化,还可以调节网格尺寸,使每一个网格最多包含一个投影点,对于包含投影点的网格,将投影点坐标作为网格坐标,对于不包含投影点的网格,将网格坐标设置为预设值(∞,∞),每次搜索的搜索区域可以为当前网格邻域3×3的网格区域(8邻域)。在搜索过程中,可以将所有网格中横坐标最小或者纵坐标最小的网格作为起始网格,并在起始网格的8邻域搜索距离起始网格最近的投影点,若未搜索到投影点,则可以扩大搜索区域,或者判定出现投影点截断现象,终止当前聚类簇投影点的排序,继续下一聚类簇投影点的排序,否则,若搜索到投影点,则可以将包含该投影点的网格作为第二网格,计算起始网格与第二网格之间的第一方向向量,然后在第二网格的8邻域内搜索投影点,若未搜索到投影点,则可以扩大搜索区域,或者判定出现投影点截断现象,终止当前聚类簇投影点的排序,继续下一聚类簇投影点的排序,否则,若寻找到投影点,则可以将包含该投影点的网格作为第三网格,若寻找到两个或两个以上投影点,则可以计算各投影点所在网格与第二网格之间的第二方向向量,得到第二方向向量与第一方向向量之间的夹角,从中选取最小夹角,将包含最小夹角所对应的投影点的网格作为第三网格,之后,可以标记第二网格已经被访问,并继续在第三网格的8邻域内寻找投影点,重复上述过程,直到所有网格均被访问。连接起始网格、第一网格、第二网格……所对应的投影点,可以得到当前切割平面上的一条离散路径。

本实施例中,通过对切割平面上的投影点进行聚类,得到投影点的聚类簇,可以在空间点云出现局部缺失的情况下,对缺失的部分不进行自动处理,避免发生错误操作,对聚类簇内的投影点进行排序,得到投影点在切割平面上的覆盖路径,可以针对聚类簇内的投影点规划覆盖路径,进而实现对清洁机器人的覆盖路径规划。

可选地,所述步骤S205,包括:

根据切割平面上的搜索网格,在聚类簇内的投影点中确定第一投影点、第二投影点和第一方向向量;第二投影点与第一投影点之间的距离符合第四预设条件;第一方向向量为第一投影点与第二投影点之间的方向向量;根据第二投影点邻域的搜索网格,确定第三投影点和第二方向向量;第二方向向量为第二投影点与第三投影点之间的方向向量;第二方向向量与第一方向向量之间的夹角符合第五预设条件;确定搜索网格中待搜索网格的个数,将第三投影点作为新的第二投影点,将第二方向向量作为新的第一方向向量,并返回至根据第二投影点邻域的搜索网格,确定第三投影点和第二方向向量的步骤,直到待搜索网格的个数符合第六预设条件。

其中,第四预设条件可以为在所有投影点中,第二投影点最接近第一投影点。

其中,第五预设条件可以为在与第二投影点相关联的所有方向向量中,第二方向向量与第一方向向量之间的夹角最小。

其中,第六预设条件可以为待搜索网格的个数为0。

具体实现中,可以对切割平面进行网格化,得到搜索网格。在搜索过程中,可以将所有投影点中横坐标最小或者纵坐标最小的点作为第一投影点,并在第一投影点所在网格的邻域搜索距离第一投影点最近的投影点,得到第二投影点,将第一投影点与第二投影点之间的方向向量作为第一方向向量,并为第一投影点和第二投影点所在的网格添加已搜索标识。

然后在第二投影点所在网格的邻域搜索投影点,若搜索到两个或两个以上投影点,可以分别计算各投影点与第二投影点之间的方向向量,并计算该方向向量与第一方向向量之间的夹角,从中选取最小夹角,将最小夹角所对应的投影点确定为第三投影点,最小夹角所对应的方向向量确定为第二方向向量,并为第三投影点所在的网格添加已搜索标识。

通过在搜索网格中去除具有已搜索标识的网格,计算待搜索网格的个数,若待搜索网格的个数不为0,则可以将第三投影点作为新的第二投影点,将第二方向向量作为新的第一方向向量,重复上述过程,直至搜索网格中待搜索网格的个数为0,结束循环。

按照所确定的投影点的先后顺序,对聚类簇内的所有投影点进行排序,可以得到投影点在聚类簇内的一条平面覆盖路径。对切割平面上的所有聚类聚进行排序,可以得到切割平面上的所有平面覆盖路径。

本实施例中,根据切割平面上的搜索网格,在聚类簇内的投影点中确定第一投影点、第二投影点和第一方向向量,根据第二投影点邻域的搜索网格,确定第三投影点和第二方向向量,确定搜索网格中待搜索网格的个数,将第三投影点作为新的第二投影点,将第二方向向量作为新的第一方向向量,并返回至根据第二投影点邻域的搜索网格,确定第三投影点和第二方向向量的步骤,直到待搜索网格的个数符合第六预设条件;可以对切割平面上的投影点进行全面搜索,避免遗漏清洁点,通过使第二投影点与第一投影点之间的距离符合第四预设条件,第二方向向量与第一方向向量之间的夹角符合第五预设条件,以及循环迭代,可以使得当清洁机器人在所规划的路径上行驶,从前一清洁点移动到后一清洁点时,所行驶的距离最短,且所需要进行的转向最小,节约机器人能耗。

步骤S206,对平面覆盖路径上的投影点进行坐标变换,得到坐标变换后的投影点;

步骤S207,对坐标变换后的投影点进行拟合,得到待清洁对象的空间覆盖路径;

步骤S208,在待清洁对象的空间覆盖路径上确定目标位置;分别根据目标位置的法向量和切线方向向量,确定清洁机器人在目标位置的第一坐标轴和第二坐标轴;将第一坐标轴和第二坐标轴进行叉乘,得到清洁机器人在目标位置的第三坐标轴;根据第一坐标轴、第二坐标轴和第三坐标轴,确定清洁机器人在所述目标位置的姿态。

其中,目标位置可以为拟合得到的待清洁对象空间覆盖路径上的任一点。

其中,第一坐标轴可以为清洁机器人的Z坐标轴,第二坐标轴可以为清洁机器人的X坐标轴,第三坐标轴可以为清洁机器人的Y坐标轴。

具体实现中,可以先确定平面覆盖路径上投影点Q相对于切割平面原点C

根据方向向量

其中,N是样条基函数,P是样条控制点,C是拟合点。给定拟合点样本集合和样条基函数,在N和C已知的情况下,构造方程组,可以求解出P,将求解出的P代入公式

之后,可以确定清洁机器人的姿态。具体的,可以利用最小二乘法确定各个插值点的法向量

本实施例中,通过对平面覆盖路径上的投影点进行坐标变换,得到坐标变换后的投影点,可以将二维投影点变换到三维坐标中,得到三维的投影点;对坐标变换后的投影点进行拟合,得到待清洁对象的空间覆盖路径,可以使待清洁对象的空间覆盖路径更加平滑,便于机器人执行;在待清洁对象的空间覆盖路径上确定目标位置,根据目标位置的法向量和切线方向向量,确定清洁机器人在目标位置的姿态,进而得到清洁机器人在空间覆盖路径上的所有姿态,可以指导清洁机器人在覆盖路径上的姿态,便于更准确地指导清洁机器人进行作业。

为了便于本领域技术人员深入理解本申请实施例,以下将结合一个具体示例进行说明。

图8提供了一个覆盖路径生成的示意图。根据图8,在曲面上为清洁机器人规划覆盖路径时,可以先获得清洁对象的一个点云表征模型,然后通过切割对象模型,并将切割面附近的点投影到切割面,获得一系列二维的投影点,对投影点进行聚类、排序以及插值拟合,最后可以得到覆盖路径。该方法只依赖于点云输入,可以通过在机器人的深度相机上增加重建算法等后处理得到,具有较强的实用性;而且,该方法应用了聚类、排序、B样条拟合等技术,可以有效弥补局部点云缺失等问题,生成的路径更加平滑,有利于机器人执行。

图9是本申请实施例二提供的一种用于服务场景下的机器人三维覆盖路径生成方法的流程示意图。具体的,参考图9,本申请实施例二的用于服务场景下的机器人三维覆盖路径生成方法,具体包括:

步骤S310,获得清洁对象的点云模型。服务场景和工业场景的不同之处在于没有提前已知的CAD模型,但是机器人却可以通过自身的深度传感器获得对象的点云模型。原始的点云存在噪音、信息不完整等问题,因此需要通过三维重建算法处理。三维重建算法可以将多帧点云信息融合成一个完整的场景点云模型,并且会对原始噪音进行一些滤波和平滑操作,使得获得点云更精确。得到完整点云后,需要提取出清洁对象的点云,可以通过背景去除、法向量信息等方法分割出目标对象。最终获得目标对象一个完整精确的点云模型。

步骤S320,构建切割平面,平面可以用一个固连在平面上的坐标系来描述它的位置和姿态,也就是要确定切割面的原点、法向量以及平面上的一个向量。本发明中假设切割平面的法向量是人为给定的,比如沿着世界坐标系Y轴的方向,即向量

步骤S330,获得投影点。将距离切割面δ范围内的点云模型中的点向切割面投影。已知切割面的法向量为

步骤S340,聚类和排序。由于反光、视角受限等因素,获得点云模型经常会出现局部点云缺失的情况,投影到切割面就会出现2D点云带出现截断的现象。因为无法预估这种截断是由于数据缺失还是本来就不希望该区域被清洁,所以保守的策略是对投影点云分段处理,而不是主观的将他们拼接起来。要分段,首先需要决定2D投影点云应该分成几段,并且每个投影点归属的段。为了实现这个目的,本发明采用DBSCAN基于密度聚类的方法对投影点聚类,使用DBSCAN的好处是不需要提前指定需要将覆盖路径处理成几段,其次DBSCAN对于异常点具有较好的鲁棒作用。经过聚类处理后,需要对每个类的投影点进行排序,排序的目的是为了获得一条单调有序的离散路径点,以便后续机器人能以正确的次序执行清洁路径。

为了获得这些覆盖路径的离散点,首先将2D投影面网格化,如果网格内有投影点,则以该网格中投影点的中心代表该网格坐标。每次搜索当前网格周围3×3的网格区域。首次以投影点中坐标最小的点作为起始搜索点,第一次搜索以邻域内最近的点作为下一个目标,计算这两个点的方向向量,然后搜索当前点邻域的8个网格,如果网格有投影点,则计算当前点和网格点的方向向量。依次比较相邻两个方向向量的夹角,选择夹角最小的网格作为下一个目标,并标记当前网格已经访问。依次迭代,直到网格周围没有未被访问的值,则停止迭代,最终得到一条投影点的离散路径。

为了得到最终的覆盖路径,还需要将投影点2D坐标重新变换到世界坐标系,得到3D坐标。首先得到投影点相对于切割面原点的方向向量g和向量长度d。遵循前面的符号,投影点坐标是(p,q),坐标系X轴Y轴向量是

步骤S350,通过步骤S340得到了覆盖路径上的一系列离散点,为了获得光滑的机器人可执行的路径,需要进一步对离散点进行拟合。可以使用B样条拟合,或者其他回归方法。以B样条拟合为例,为了保证拟合的曲线是二阶连续的,采用3阶样条曲线,其模型为

步骤S360,获得了拟合模型C,就能通过给定插值位置u得到对应的插值点P。因为机器人清洁中,不仅有位置要求,还需要给定机器人的姿态,因此在点P处需要计算对应的姿态o。为了确定o,可以通过P点附近的点云模型,利用最小二乘法得到该点的法向量

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

实施例三

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的覆盖路径生成方法的覆盖路径生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个覆盖路径生成装置实施例中的具体限定可以参见上文中对于覆盖路径生成方法的限定,在此不再赘述。

在一个实施例中,如图10所示,提供了一种覆盖路径生成装置,包括:点云获取模块410、平面确定模块420、点云投影模块430、平面路径模块440和空间路径模块450,其中:

点云获取模块410,用于获取待清洁对象的空间点云;

平面确定模块420,用于确定所述空间点云所在点云区域的切割平面;

点云投影模块430,用于将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

平面路径模块440,用于确定所述投影点在所述切割平面上的平面覆盖路径;

空间路径模块450,用于根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

在另一个实施例中,上述点云获取模块410,还用于:获取目标区域的原始深度点云信息;所述目标区域包含所述待清洁对象;基于所述原始深度点云信息进行三维重建,得到所述原始深度点云信息对应的目标空间点云;对所述目标空间点云进行分割,得到所述待清洁对象的空间点云。

在另一个实施例中,上述平面确定模块420,还包括:

原点确定模块,用于确定所述切割平面的原点,以及与所述原点相关联的第一坐标轴;

第一叉乘模块,用于将所述第一坐标轴与辅助向量进行叉乘,得到第二坐标轴;所述辅助向量与所述第一坐标轴之间的夹角符合第一预设条件;

第二叉乘模块,用于将所述第一坐标轴与所述第二坐标轴进行叉乘,得到第三坐标轴;

切割平面确定模块,用于根据所述原点、所述第一坐标轴、所述第二坐标轴和所述第三坐标轴,确定所述切割平面。

在另一个实施例中,上述原点确定模块,还用于:确定所述空间点云中的第一点云坐标和第二点云坐标;所述第一点云坐标符合第二预设条件,所述第二点云坐标符合第三预设条件;确定点云坐标向量;所述点云坐标向量与所述第一点云坐标和第二点云坐标相对应;将所述点云坐标向量与预设的切割步长进行相除,得到所述切割平面的个数;根据所述第一点云坐标、所述切割步长和所述切割平面的个数,确定所述切割平面的原点。

在另一个实施例中,上述点云投影模块430,还用于:在所述空间点云与所述切割平面之间的距离不超过预设的距离阈值的情况下,将所述空间点云投影至所述切割平面,得到所述投影点。

在另一个实施例中,上述平面路径模块440,还包括:

聚类模块,用于对所述切割平面上的所述投影点进行聚类,得到所述投影点的聚类簇;

排序模块,用于对所述聚类簇内的投影点进行排序,得到所述投影点在所述切割平面上的平面覆盖路径。

在另一个实施例中,上述排序模块,还用于:根据所述切割平面上的搜索网格,在所述聚类簇内的投影点中确定第一投影点、第二投影点和第一方向向量;所述第二投影点与所述第一投影点之间的距离符合第四预设条件;所述第一方向向量为所述第一投影点与所述第二投影点之间的方向向量;根据所述第二投影点邻域的搜索网格,确定第三投影点和第二方向向量;所述第二方向向量为所述第二投影点与所述第三投影点之间的方向向量;所述第二方向向量与所述第一方向向量之间的夹角符合第五预设条件;确定所述搜索网格中待搜索网格的个数,将所述第三投影点作为新的第二投影点,将所述第二方向向量作为新的第一方向向量,并返回至所述根据所述第二投影点邻域的搜索网格,确定第三投影点和第二方向向量的步骤,直到所述待搜索网格的个数符合第六预设条件。

在另一个实施例中,上述空间路径模块450,还包括:

坐标变换模块,用于对所述平面覆盖路径上的投影点进行坐标变换,得到坐标变换后的投影点;

路径拟合模块,用于对所述坐标变换后的投影点进行拟合,得到所述待清洁对象的空间覆盖路径。

在另一个实施例中,上述覆盖路径生成装置,还包括:

目标位置确定模块,用于在所述待清洁对象的空间覆盖路径上确定目标位置;

第一姿态确定模块,用于分别根据所述目标位置的法向量和切线方向向量,确定清洁机器人在所述目标位置的第一坐标轴和第二坐标轴;

第二姿态确定模块,用于将所述第一坐标轴和第二坐标轴进行叉乘,得到所述清洁机器人在所述目标位置的第三坐标轴;

目标姿态确定模块,用于根据所述第一坐标轴、所述第二坐标轴和所述第三坐标轴,确定所述清洁机器人在所述目标位置的姿态。

上述覆盖路径生成装置可用于执行上述任意实施例提供的覆盖路径生成方法,具备相应的功能和有益效果。

上述覆盖路径生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

实施例四

图11是本申请实施例四提供的一种电子设备的结构示意图。如图中所示,该电子设备包括:处理器50、存储器51、具有触摸功能的显示屏52、输入装置53、输出装置54以及通信装置55。该电子设备中处理器50的数量可以是一个或者多个,图中以一个处理器50为例。该电子设备中存储器51的数量可以是一个或者多个,图中以一个存储器51为例。该电子设备的处理器50、存储器51、显示屏52、输入装置53、输出装置54以及通信装置55可以通过总线或者其他方式连接,图中以通过总线连接为例。实施例中,电子设备可以是电脑,手机,平板,投影仪或交互智能平板等。实施例中,以电子设备为交互智能平板为例,进行描述。

存储器51作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的覆盖路径生成方法对应的程序指令/模块。存储器51可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器51可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器51可进一步包括相对于处理器50远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

显示屏52为具有触摸功能的显示屏52,其可以是电容屏、电磁屏或者红外屏。一般而言,显示屏52用于根据处理器50的指示显示数据,还用于接收作用于显示屏52的触摸操作,并将相应的信号发送至处理器50或其他装置。可选的,当显示屏52为红外屏时,其还包括红外触摸框,该红外触摸框设置在显示屏52的四周,其还可以用于接收红外信号,并将该红外信号发送至处理器50或者其他设备。

通信装置55,用于与其他设备建立通信连接,其可以是有线通信装置和/或无线通信装置。

输入装置53可用于接收输入的数字或者字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。输出装置54可以包括扬声器等音频设备。需要说明的是,输入装置53和输出装置54的具体组成可以根据实际情况设定。

处理器50通过运行存储在存储器51中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的覆盖路径生成方法。

具体的,实施例中,处理器50执行存储器51中存储的一个或多个程序时,具体实现如下操作:

获取待清洁对象的空间点云;

确定所述空间点云所在点云区域的切割平面;

将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

确定所述投影点在所述切割平面上的平面覆盖路径;

根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

获取目标区域的原始深度点云信息;所述目标区域包含所述待清洁对象;

基于所述原始深度点云信息进行三维重建,得到所述原始深度点云信息对应的目标空间点云;

对所述目标空间点云进行分割,得到所述待清洁对象的空间点云。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

确定所述切割平面的原点,以及与所述原点相关联的第一坐标轴;

将所述第一坐标轴与辅助向量进行叉乘,得到第二坐标轴;所述辅助向量与所述第一坐标轴之间的夹角符合第一预设条件;

将所述第一坐标轴与所述第二坐标轴进行叉乘,得到第三坐标轴;

根据所述原点、所述第一坐标轴、所述第二坐标轴和所述第三坐标轴,确定所述切割平面。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

确定所述空间点云中的第一点云坐标和第二点云坐标;所述第一点云坐标符合第二预设条件,所述第二点云坐标符合第三预设条件;

确定点云坐标向量;所述点云坐标向量与所述第一点云坐标和第二点云坐标相对应;

将所述点云坐标向量与预设的切割步长进行相除,得到所述切割平面的个数;

根据所述第一点云坐标、所述切割步长和所述切割平面的个数,确定所述切割平面的原点。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

在所述空间点云与所述切割平面之间的距离不超过预设的距离阈值的情况下,将所述空间点云投影至所述切割平面,得到所述投影点。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

对所述切割平面上的所述投影点进行聚类,得到所述投影点的聚类簇;

对所述聚类簇内的投影点进行排序,得到所述投影点在所述切割平面上的平面覆盖路径。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

根据所述切割平面上的搜索网格,在所述聚类簇内的投影点中确定第一投影点、第二投影点和第一方向向量;所述第二投影点与所述第一投影点之间的距离符合第四预设条件;所述第一方向向量为所述第一投影点与所述第二投影点之间的方向向量;

根据所述第二投影点邻域的搜索网格,确定第三投影点和第二方向向量;所述第二方向向量为所述第二投影点与所述第三投影点之间的方向向量;所述第二方向向量与所述第一方向向量之间的夹角符合第五预设条件;

确定所述搜索网格中待搜索网格的个数,将所述第三投影点作为新的第二投影点,将所述第二方向向量作为新的第一方向向量,并返回至所述根据所述第二投影点邻域的搜索网格,确定第三投影点和第二方向向量的步骤,直到所述待搜索网格的个数符合第六预设条件。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

对所述平面覆盖路径上的投影点进行坐标变换,得到坐标变换后的投影点;

对所述坐标变换后的投影点进行拟合,得到所述待清洁对象的空间覆盖路径。

在上述实施例的基础上,一个或多个处理器50还实现如下操作:

在所述待清洁对象的空间覆盖路径上确定目标位置;

分别根据所述目标位置的法向量和切线方向向量,确定清洁机器人在所述目标位置的第一坐标轴和第二坐标轴;

将所述第一坐标轴和第二坐标轴进行叉乘,得到所述清洁机器人在所述目标位置的第三坐标轴;

根据所述第一坐标轴、所述第二坐标轴和所述第三坐标轴,确定所述清洁机器人在所述目标位置的姿态。

实施例五

本申请实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种覆盖路径生成方法,包括:

获取待清洁对象的空间点云;

确定所述空间点云所在点云区域的切割平面;

将所述空间点云投影至所述切割平面,得到所述空间点云在所述切割平面上的投影点;

确定所述投影点在所述切割平面上的平面覆盖路径;

根据所述平面覆盖路径,确定所述待清洁对象的空间覆盖路径。

当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的覆盖路径生成方法的操作,还可以执行本申请任意实施例所提供的覆盖路径生成方法中的相关操作,且具备相应的功能和有益效果。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

技术分类

06120116501455