移动装置控制方法、装置及终端与流程

文档序号:16753028发布日期:2019-01-29 17:04阅读:151来源:国知局
移动装置控制方法、装置及终端与流程

本发明涉及仿地飞行、图像处理、地块分割、控制及飞行器技术领域,具体而言,本发明涉及一种移动装置控制方法、装置及终端。



背景技术:

一般地,作业的田地地面并非平整,有斜坡或者小土包的存在。现有的无人机安装有对地测距装置,可以对离地的高度进行测量,却不能对前方的地面状况进行预测和分析,仅仅根据对地测距模块测量的数据可能仍然存在误差。而为了实现无人机能够根据地面形状进行有效地作业,现有的植保无人机上安装有避障模块,又有地形模块,避障模块主要通过测量距离的测距传感器获取无人机与障碍物之间的距离,能够有效地避开无人机飞行过程中的障碍物,其中避障模块如,激光雷达、视觉传感器、超声波雷达以及毫米波雷达等。但是,对于地形比较复杂的情况(如有田地地面并非平整的,有斜坡或者小土包的存在),无人机避障模块会将起伏比较大的有斜坡或者小土包地形误认为是障碍物,而现有的无人机,也不具备精准地区别斜坡或者真实障碍物能力,导致无人机不能对被误认为是障碍物的斜坡或者小土包进行仿地飞行实现对斜坡或者小土包的翻越。



技术实现要素:

本发明的目的旨在至少解决上述技术缺陷之一,特别是现有避障算法,不能够精准地区别斜坡或者真实障碍物能力,使得无人机不能够仿地飞行实现对斜坡或者小土包的翻越的问题。

本发明实施例提供了一种移动装置控制方法,包括:

获取移动装置移动方向前方的点云图;

基于所述点云图中点云信息确定移动方向前方的连通区域,由所述连通区域确定地面信息,所述地面信息包括地面坡度信息;

依据所述坡度信息控制所述移动装置仿所述地面移动。

进一步地,在所述依据所述坡度信息控制所述移动装置仿所述地面移动的步骤中,具体包括:

获取距离检测装置采集的移动装置与所述地面之间的距离;

依据所述坡度信息和所述距离控制所述移动装置仿所述地面移动。

进一步地,在所述依据所述坡度信息和所述距离控制移动装置仿所述地面移动的步骤中,具体包括:

依据所述坡度信息调整所述移动装置的移动姿态,以使所述移动装置能够仿所述地面移动移动;

依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

判断所述距离是否在预设距离阈值;

当所述距离不在所述预设距离阈值内时,控制所述移动装置移动至所述预设距离内;

控制所述移动装置以所述移动姿态在所述预设距离阈值内仿所述地面移动。

进一步地,所述距离包括移动装置与地面之间的垂直距离和移动装置与地面之间的水平距离,所述预设距离阈值包括移动装置与地面之间的预设垂直距离和移动装置与地面之间的预设水平距离。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值和所述预设水平距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设水平距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述基于所述点云图中点云信息确定移动方向前方的连通区域的步骤中,具体包括:

对所述点云图做栅格化处理;

获取栅格化后所述点云图中点云对应栅格的结构特征,所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差中的任意多项;

根据所述结构特征确定移动方向前方的连通区域。

进一步地,在所述根据所述结构特征确定移动方向前方的连通区域的步骤中,具体包括:

基于所述栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格;

基于所述地面栅格确定移动方向前方的所述连通区域。

进一步地,在所述基于所述栅格海拔确定地面栅格和非地面栅格的步骤中,具体包括:

将所述栅格海拔差与预设栅格海拔差阈值进行对比,确定非地面栅格和地面栅格;

当所述栅格海拔差大于预设栅格海拔差阈值时,所述栅格确定为所述非地面栅格;

当所述栅格海拔差小于预设栅格海拔差阈值时,所述栅格确定为所述地面栅格。

进一步地,在所述基于所述栅格梯度确定地面栅格和非地面栅格的步骤中,还包括:

将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格。

当当前栅格的所述栅格梯度以及与所述当前栅格相邻的相邻栅格的所述栅格梯度均小于预设栅格梯度阈值时,将所述栅格和与所述栅格相邻的所有栅格确定为连通栅格,且所述连通栅格为所述地面栅格;

将所述地面栅格所在区域确定为所述栅格连通片区,将不能确定为所述连通栅格的所述栅格确定为待定栅格。

进一步地,在所述将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格的步骤之后,包括:

依据栅格分辨率确定所述栅格连通片区的面积;

将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;

当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格。

进一步地,在所述将所述栅格连通片区的栅格确定为基准地面栅格的步骤之后,包括:

依据确定为所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,所述海拔均值为地面海拔;

依据所述待定栅格的所述栅格海拔和所述地面海拔获得待定栅格海拔差;

将所述待定栅格海拔差与预设地面海拔差阈值进行对比;

当所述待定栅格海拔差小于预设地面海拔差阈值时,所述待定栅格确定为地面栅格;

当所述待定栅格海拔差大于或者等于预设地面海拔差阈值时,所述待定栅格确定为非地面栅格。

进一步地,在所述待定栅格确定为非地面栅格的步骤之后,包括:

对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格;

依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;

将所述点云海拔差与所述预设地面海拔差阈值进行对比;

当所述点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云。

进一步地,在所述将所述栅格连通片区确定为基准地面栅格的步骤之后,还包括:

将所述基准地面栅格中的点云确定为地面点云。

进一步地,在所述将所述地面栅格所在区域确定为所述栅格连通片区的步骤之后,包括:

遍历所述地面点云对应的栅格连通片区内的所述栅格;

依据每一个所述当前栅格的所述栅格海拔和每一个所述相邻栅格的所述栅格海拔确定栅格差值绝对值;

对比所述当前栅格和每一个所述相邻栅格之间的所述栅格差值绝对值确定最大的所述栅格差值绝对值;

将最大的所述栅格差值绝对值确定为所述栅格梯度,所述栅格梯度为所述地面坡度信息。

进一步地,在所述获取栅格化后所述点云图中点云对应栅格的结构特征的步骤中,具体包括:

依据同一栅格内点云高度的均值确定所述栅格海拔;

和/或,依据当前栅格和与所述当前栅格相邻的相邻栅格的所述栅格海拔确定所述栅格梯度;

和/或,获取同一栅格内中点云海拔的最大值和最小值,依据所述最大值和所述最小值确定所述栅格海拔差。

本发明实施例还提供了一种移动装置控制装置,包括:

点云图获得模块,用于获取移动装置移动方向前方的点云图;

地面信息确定模块,用于基于所述点云图中点云信息确定移动方向前方的连通区域,用于由所述连通区域确定地面信息,所述地面信息包括地面坡度信息;

控制模块,用于依据所述坡度信息控制所述移动装置仿所述地面移动。

进一步地,在所述控制模块中,具体包括:

距离获取单元,用于获取距离检测装置采集的移动装置与所述地面之间的距离;

第一移动单元,用于依据所述坡度信息和所述距离控制所述移动装置仿所述地面移动。

进一步地,在所述移动单元中,具体包括:

调整单元,用于依据所述坡度信息调整所述移动装置的移动姿态,以使所述移动装置能够仿所述地面移动移动;

第二移动单元,用于依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动移动。

进一步地,在所述第二移动单元中,具体包括:

判断单元,用于判断所述距离是否在预设距离阈值;

第一控制单元,用于当所述距离不在所述预设距离阈值内时,控制所述移动装置移动至所述预设距离内;

第三移动单元,用于控制所述移动装置以所述移动姿态在所述预设距离阈值内仿所述地面移动。

优先地,所述距离包括移动装置与地面之间的垂直距离和移动装置与地面之间的水平距离,所述预设距离阈值包括移动装置与地面之间的预设垂直距离和移动装置与地面之间的预设水平距离。

进一步地,在所述第二移动单元中,具体包括:

第二控制单元,用于当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值和所述预设水平距离阈值内;

第四移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述第二移动单元中,具体包括:

第三控制单元,用于当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值内;

第五移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述第二移动单元中,具体包括:

第四控制单元,用于当所述垂直距离在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设水平距离阈值内;

第六移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述地面信息确定模块中,具体包括:

栅格化单元,用于对所述点云图做栅格化处理;

结构特征获取单元,用于获取栅格化后所述点云图中点云对应栅格的结构特征,所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差中的任意多项;

第一连通区域确定单元,用于根据所述结构特征确定移动方向前方的连通区域。

进一步地,在所述连通区域确定单元中,具体包括:

第一栅格确定单元,用于基于所述栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格;

第二连通区域确定单元,用于基于所述地面栅格确定移动方向前方的所述连通区域。

进一步地,在所述栅格确定单元中,具体包括:

第一海拔差值对比单元,用于将所述栅格海拔差与预设栅格海拔差阈值进行对比,确定非地面栅格和地面栅格;

第一非地面栅格确定单元,用于当所述栅格海拔差大于预设栅格海拔差阈值时,所述栅格确定为所述非地面栅格;

第一地面栅格确定单元,用于当所述栅格海拔差小于预设栅格海拔差阈值时,所述栅格确定为所述地面栅格。

进一步地,在所述栅格确定单元中,还包括:

梯度值对比单元,用于将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格。

连通栅格确定单元,用于当当前栅格的所述栅格梯度以及与所述当前栅格相邻的相邻栅格的所述栅格梯度均小于预设栅格梯度阈值时,将所述栅格和与所述栅格相邻的所有栅格确定为连通栅格,且所述连通栅格为所述地面栅格;

待定栅格确定单元,用于将所述地面栅格所在区域确定为所述栅格连通片区,将不能确定为所述连通栅格的所述栅格确定为待定栅格。

进一步地,还包括:

栅格连通片区面积确定单元,用于依据栅格分辨率确定所述栅格连通片区的面积;

面积值对比单元,用于将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;

基准地面栅格确定单元,用于当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格。

进一步地,还包括:

地面海拔确定单元,用于依据确定为所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,所述海拔均值为地面海拔;

待定栅格海拔差确定单元,用于依据所述待定栅格的所述栅格海拔和所述地面海拔获得待定栅格海拔差;

第二海拔差值对比单元,用于将所述待定栅格海拔差与预设地面海拔差阈值进行对比;

第二地面栅格确定单元,用于当所述待定栅格海拔差小于预设地面海拔差阈值时,所述待定栅格确定为地面栅格;

第二非地面栅格确定单元,用于当所述待定栅格海拔差大于或者等于预设地面海拔差阈值时,所述待定栅格确定为非地面栅格。

进一步地,还包括:

地面栅格距离获取单元,用于对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格;

点云海拔差确定单元,用于依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;

点云海拔差对比单元,用于将所述点云海拔差与所述预设地面海拔差阈值进行对比;

第一地面点云确定单元,用于当所述点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云。

进一步地,还包括:

第二地面点云确定单元,用于将所述基准地面栅格中的点云确定为地面点云。

进一步地,还包括:

遍历单元,用于遍历所述地面点云对应的栅格连通片区内的所述栅格;

栅格差值绝对值确定单元,用于依据每一个所述当前栅格的所述栅格海拔和每一个所述相邻栅格的所述栅格海拔确定栅格差值绝对值;

栅格差值绝对值对比单元,用于对比所述当前栅格和每一个所述相邻栅格之间的所述栅格差值绝对值确定最大的所述栅格差值绝对值;

地面坡度信息确定单元,用于将最大的所述栅格差值绝对值确定为所述栅格梯度,所述栅格梯度为所述地面坡度信息。

进一步地,在所述结构特征获取单元中,具体包括:

栅格海拔确定单元,用于依据同一栅格内点云高度的均值确定所述栅格海拔;

栅格梯度确定单元,用于和/或,依据当前栅格和与所述当前栅格相邻的相邻栅格的所述栅格海拔确定所述栅格梯度;

栅格海拔差确定单元,用于和/或,获取同一栅格内中点云海拔的最大值和最小值,依据所述最大值和所述最小值确定所述栅格海拔差。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序执行时实现任一技术方案所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置控制终端,包括处理器、存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时任一技术方案所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置,包括:所述计算机可读存储介质或所述的移动装置控制终端。

与现有技术相比,本发明具有以下有益效果:

1、通过本发明提供的实施例实现了获取移动装置移动方向前方的点云图;基于所述点云图中点云信息确定移动方向前方的连通区域,由所述连通区域确定地面信息,所述地面信息包括地面坡度信息;依据所述坡度信息控制所述移动装置仿所述地面移动。进一步地,通过确定连通区域确定地面信息,能够更好地保证在植保作业、地块分割、地块测量、航线规划等过程中,能够在精准地定位斜坡,避免移动装置将斜坡视为障碍物,以使得移动装置在具备坡度检测模块的基础上结合实时图像对仿斜坡面进行飞行,实现对斜坡或者小土坡翻越爬坡飞行,以便于移动装置对该斜坡进行作业等。

2、通过本发明提供的实施例实现了对所述点云图做栅格化处理;获取栅格化后所述点云图中所述待识别物的结构特征,所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差中的任意多项;根据所述结构特征确定移动方向前方的连通区域。通过摄像装置拍摄的实时图像,对实时图像进一步进行处理获得深度图像,其中深度图像上每一个像素点与空间中的点相对应,且该像素点具有空间坐标,因此在摄像装置内部参数和外部参数固定时,通过图像坐标系与世界坐标系之间的转换关系确定深度图像上像素点在世界坐标中的坐标值,将深度图像上的所有像素点转换到实际世界空间中,得到在空间坐标中的多个点,且多个点共同称为点云,其构成的图像称为点云图,由于不同点其坐标值不同,因此,基于点云中各个点的坐标值确定图像中各个点之间的结构特征,基于结构特征之间的关系,确定实时图像中的如地面,进而能够根据识别结果精准地区分出地面和障碍物,特别是作业过程中的斜坡,避免无人机将斜坡识别为障碍物。

3、通过本发明提供的实施例实现了对所述点云图栅格化;基于栅格化后的所述点云图获得所述结构特征,通过对点云图的栅格化,进而能够在大量的点云中更为精准地获得结构特征,以便于基于该结构特征能够更为精准地确定划分点云,尽可能地使得同一物体或者同一类型物体的的结构特征相同,实现精准地识别如地面,并将实时图像中的其他物体能够划分出来如障碍物,以便于无人机能够根据识别结果进行高效地作业,避免无人机将作业地带内的斜坡、山丘、沟槽等作为障碍物不对其进行作业。

4、通过本发明提供的实施例实现了依据同一栅格内点云高度的均值确定所述栅格海拔;和/或,依据当前栅格和与所述当前栅格相邻的相邻栅格的所述栅格海拔确定所述栅格梯度;和/或,获取同一栅格内中点云海拔的最大值和最小值,依据所述最大值和所述最小值确定所述栅格海拔差。依据不同物体之间结构特征不一致的特性,能够依据结构特征的栅格海拔、栅格梯度、栅格海拔差实现对点云中不同物体的精准区分。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明一种移动装置控制方法的典型实施例中一种实施方式的流程图;

图2为本发明一种移动装置控制方法的典型实施例中又一种实施方式的流程图;

图3为本发明一种移动装置控制方法的典型实施例中又一种实施方式的流程图;

图4为本发明一种移动装置控制方法的典型实施例中又一种实施方式的流程图;

图5为本发明一种移动装置控制方法的典型实施例中又一种实施方式的流程图;

图6为本发明一种移动装置控制装置的典型实施例中一种实施方式的结构示意图;

图7为本发明一种移动装置控制装置的典型实施例又一种实施方式的结构示意图;

图8为本发明一种移动装置控制装置的典型实施例又一种实施方式的结构示意图;

图9为本发明一种移动装置控制装置的典型实施例又一种实施方式的结构示意图;

图10为本发明一种移动装置控制装置的典型实施例又一种实施方式的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

随着科技和农业的发展,无人机在农业植保方面有着巨大的优势,近年来得到了广泛的应用。但在实际应用中,无人机存在一些迫切需要解决的问题。目前植保无人机广泛应用于新疆等地块比较大的区域,然而,为了使得无人机在农业植保上更好的发展,必不可免地需要将无人机应用于丘陵地带上。常规的无人机上安装有避障模块,该模块主要测量距离的测距传感器获取无人机与障碍物之间的距离,能够有效地避开无人机飞行过程中的障碍物,测距传感器,例如,激光雷达、视觉传感器、超声波雷达以及毫米波雷达等。但是,田地地面并非平整的,有斜坡或者小土包的存在。对于斜坡,并不需要当成障碍物处理,可以使用植保无人机具备的仿地功能进行翻越。而现有无人机,不能够精准地区别斜坡或者真实障碍物能力,使得无人机不能够对斜坡上的地块进行作业,导致田地的部分区域不能够被无人机有效地作业。现有的无人机安装有对地测距装置,可以对离地的高度进行测量,却不能对前方的地面状况进行预测和分析。

现有的田间作业移动装置,例如植保无人机,其作业方法大多都还集中在gps(globalpositioningsystem,全球定位系统)定高飞行,或者人工手动定高飞行,或者利用单个垂直向下的传感器,如激光传感器、声呐传感器、毫米雷达等等,实现简单的仿地飞行。然而,这些方法都只能适应在地势较为平坦的地方,对于丘陵地带,山地,梯田,或者高秆植物等环境都难以适应,更别说是丘陵地带,山地,梯田或者高秆植物等地形组合成的复杂环境了。

因此,本发明实施例提出一种移动装置控制方法、装置及终端,能够解决无人机仿地飞行作业效果较差,作业效率低以及适应性较差等问题,使无人机自主适应山地,丘陵,梯田,平原,高秆植物等环境下的仿地飞行,提高无人机作业效果,作业效率以及适应性,提升无人机的安全性。

需要说明的是,本发明实施例中的移动装置控制方法、装置及终端可以对有斜坡的地块进行移动,避免将斜坡识别为障碍物导致无人机不能对斜坡地块进行作业的问题,进而在高精度地面识别的基础上,进行仿地移动,以便于在此基础上实现对地面农作物的高效作业。进一步地,本发明实施例中的移动装置控制方法还可以应用于建筑作业、物流行业包裹的运输分拣或者对仓库中物品的查询、监控等技术领域。本发明实施例提供了一种移动装置控制方法,在其中一种实施方式中,如图1所示,包括:

s110:获取移动装置移动方向前方的点云图;

需要说明的是本发明实施例中的移动装置上可安装有至少一个能够确定点云的测距装置,测距装置可以安装于与移动装置移动方向相同的一端,或者安装于移动装置移动方向的两侧,在移动装置是无人机时,测距装置安装于无人机面向地面的一侧;在移动装置是车辆时,测距装置可以安装于车辆的前端或者后端,或者旋转式的安装于车辆顶端,其中,测距装置还包括摄像装置,且摄像装置可以拍摄车辆周围包括车辆顶端的图像,所述的测距装置例如摄像机、激光雷达传感器、测距传感器等。

具体地,所述移动装置可以包括无人机、地面机器人、地面作业设备如拖拉机等,可以通过直接输入的方式获取点云图,例如可以通过dsm三维地图确定该区域的点云信息,然后输入到移动装置中;在其他实施例中可以通过移动装置挂载的传感器实现采集移动方向前方的点云图,例如采用激光雷达、激光测距传感器或者图像传感器获取传感数据,然后对传感数据进行处理获取点云图。可以提前获取传感数据处理成点云图,也可以实时的作业过程中,获取传感数据,然后实时处理成点云图。

s120:基于所述点云图中点云信息确定移动方向前方的连通区域,由所述连通区域确定地面信息,所述地面信息包括地面坡度信息。

所述的对点云图进行栅格处理,例如对点云图进行均匀的划分,横向和纵向等距离的将栅格划分成多个矩形区域,又可以根据点云距离测距装置的远近而不等距的划分栅格,所述栅格可以为矩形,也可以为扇形、六边形、三角形等形状。优选地,所述栅格相等大小,且均匀划分。

具体地,可以根据栅格中的点云数据将栅格化后所述点云图中的栅格分类成一个或多个连通区域。如根据相邻栅格的点云海拔平均值划分区域,例如在水平方向的第一栅格、第二栅格、第三栅格、第四栅格的点云海拔平均值分别为3、4、5、12,则第一栅格、第二栅格、第三栅格满足线性关系,其可以被分类成一个连通区域,而第四栅格不满足线性关系,则不被分类到与第一栅格、第二栅格、第三栅格同一个连通区域中。又如在临近栅格的海拔与当前栅格的海拔值小于等于1时,则确认临近栅格与当前栅格属于同一连通区域,如在某平面上的某一栅格的海拔值为5,其八邻域临近栅格分别为4、4、6、5、5、4、6、10,则海拔值为4、4、6、5、5、4、6与当前栅格属于同一连通区域,则海拔值为10的相邻与当前栅格不属于同一连通区域,又如还可以采用四邻域栅格确定连通区域,具体分类方法本发明不做限定。

s130:依据所述坡度信息控制所述移动装置仿所述地面移动。

具体地,可以根据栅格区域中的栅格的海拔差确定坡度,例如第一栅格、第二栅格、第三栅格、第四栅格的点云海拔平均值分别为3、4、5、6,栅格为1*1的栅格,则可以根据勾股定理确定坡度为45度。例如第一栅格、第二栅格、第三栅格、第四栅格、第五栅格的点云海拔平均值分别为3、4、5、4,3,栅格为1*1的栅格,则可以根据确定地面为土丘,坡度值是变化的,上坡坡度为45度,下坡坡度为45度。

根据获得的坡度可以控制移动装置仿着地面移动,而不会撞击到地面上。

进一步地,在其中一种实施方式中,如图2所示,在所述依据所述坡度信息控制所述移动装置仿所述地面移动的步骤中,具体包括:

s121:获取距离检测装置采集的移动装置与所述地面之间的距离;

s122:依据所述坡度信息和所述距离控制所述移动装置仿所述地面移动。

进一步地,在其中一种实施方式中,如图3所示,在所述依据所述坡度信息和所述距离控制移动装置仿所述地面移动的步骤中,具体包括:

s1221:依据所述坡度信息调整所述移动装置的移动姿态,以使所述移动装置能够仿所述地面移动;

s1222:依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

判断所述距离是否在预设距离阈值;

当所述距离不在所述预设距离阈值内时,控制所述移动装置移动至所述预设距离内;

控制所述移动装置以所述移动姿态在所述预设距离阈值内仿所述地面移动。

进一步地,所述距离包括移动装置与地面之间的垂直距离和移动装置与地面之间的水平距离,所述预设距离阈值包括移动装置与地面之间的预设垂直距离和移动装置与地面之间的预设水平距离。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值和所述预设水平距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动的步骤中,具体包括:

当所述垂直距离在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设水平距离阈值内;

控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

基于移动装置上的摄像装置拍摄的实时图像,基于该实时图像确定实时图像中的地面,移动装置上的摄像装置可以为双摄像头也可以为单摄像头,且为安装于移动装置上的辅助避障模块,该模块也可以用于拍摄图像进行定位等,并通过坐标系之间的转换关系确定地面在空间中位置,当然地面的确定方法主要通过后文的步骤实现,在此不做赘述。进一步地,为了移动装置能够更好地进行仿地移动,基于摄像装置拍摄的实时图像检测出地面后,可结合距离检测装置检测出来的距离,当然可以图像直接确定距离,然后控制移动装置仿所述地面移动。结合前文所述,距离检测装置主要检测移动装置与地面在竖直方向的距离以及移动装置与地面水平方向的距离。具体的,在获取到距离之后,调整移动装置仿地面的移动姿态,在移动装置为无人机时,地面时包括平整地面和斜坡的地块时,调整移动无人机仿地飞行的状态。进一步地,将基于无人机与斜坡或者地面的垂直距离以及无人机面向斜坡的水平距离,来综合调整无人机仿地飞行的状态,相对比与只能以恒定的海拔高度的传统无人机飞行方式,本发明实施例的无人机能够完成在各种环境的仿地飞行,提高了无人机作业的效率和可靠性。

进一步地,在确定移动装置与地面之间的水平距离和垂直距离之后,将该水平距离与预设水平距离阈值进行对比,同时将该垂直距离与预设垂直距离阈值进行对比,判断所述移动装置是否在预设水平距离阈值和垂直距离阈值内,如果在水平距离在预设水平距离阈值内,则无人机以当前水平移动速度保持仿地面的飞行,在所述水平距离不在预设水平距离阈值内且小于该预设水平阈值时,控制移动装置倒退飞行,使得无人机远离地面,使得移动装置在预设水平距离阈值内仿地面飞行;在所述水平距离大于预设水平距离阈值时,可以调整无人机加速前进至预设水平距离阈值内,以使得移动装置在预设水平距离阈值内仿地面飞行;当垂直距离在预设垂直距离阈值内,则以当前抬升的速度保持仿地面飞行;由于移动装置在移动过程中除了具有垂直方向的速度之外还有水平方向的速度,因此,当垂直距离小于预设垂直距离阈值时,控制移动装置加速抬升,当垂直距离大于预设垂直距离阈值时,控制移动装置下降或者减速抬升,以使得移动装置在预设垂直距离阈值内仿地面飞行;避免移动装置碰撞到地面,保证移动装置的安全飞行同时实现仿地面飞行。在具体的实施方式中,垂直距离和水平距离时同时判断的过程,根据两则判断结果同时调整移动装置与地面的垂直距离和/或水平距离,或者在水平距离在预设水平距离阈值内,同时垂直距离在预设垂直距离阈值内时,不对水平距离和垂直距离做调整,以当前速度仿地面飞行。通过本发明实施例提供的移动装置控制方法,将本发明用于仿地飞行时,通过避障模块和地形模块结合摄像装置拍摄的图像识别,实现了安全高效地仿地飞行。应用本发明实施例的无人机,能够针对与地面不同的水平距离,控制无人机做出不同的飞行动作,从而使得无人机能够在山地,丘陵,梯田,平原,高秆植物等各种环境实现仿地飞行,不仅提高了无人机的作业效率和无人机适应环境的能力,而且提升了无人机的可靠性和安全性。本发明实施例尤其适用于诸如植保无人机这类需要与地面保持恒定高度,且需要适应各种环境下作业的无人机。

进一步地,在其中一种实施方式中,如图4所示,在所述基于所述点云图中点云信息确定移动方向前方的连通区域的步骤中,具体包括:s100、s200、s300。

s100:对所述点云图做栅格化处理。

本发明的实施例主要对摄像装置拍摄的图像进行处理,并通过转换关系(基于摄像装置的图像坐标系、摄像装置坐标系以及世界坐标系之间的转换关系),确定图像中对应在空间中地面的位置。需要说明的是,虽然未直接示出摄像装置的图像坐标系、摄像装置坐标系以及世界坐标系之间的转换关系,本领域人员应该是可以理解和实施的。如前文所述,获取摄像装置的拍摄的实时图像,即该实时图像为移动装置在移动过程中拍摄的图像,该实时图像可以为深度图像也可以为rgb图像。在该图像为rgb图像时,对该实时图像进行初步处理,将其转换为深度图像,深度图像是包含与视点的场景对象的表面的距离有关的信息的图像或图像通道。其中,深度图像类似于灰度图像,只是它的每个像素值是传感器距离物体的实际距离。通常rgb图像和深度图像是配准的,因而像素点之间具有一对一的对应关系。由于深度图像上每一像素点的像素值为摄像装置与实际点之间的距离(即深度信息),因此,深度图像的基础上,通过前述的坐标系之间的转换关系,可以确定每一个像素点对应空间点的坐标值,即每一个像素点在世界坐标系中的坐标值,由于摄像装置内部参数和外部参数固定,进而每一个像素点转换后的世界坐标系为同一坐标系,基于每个像素点的深度信息和前述的坐标系之间的转换关系,可以确定每个像素点在世界坐标系上的位置,将同一帧图像上的所有像素点均转换到世界坐标系中,得到点在世界坐标系中的集合,其为点云,在图像上表示为点云图,点云中的每一个点均具有在世界坐标系中的坐标值。需要说明的是,在其他的实时方式中,由于是通过测距装置(如激光雷达扫描传感器)获取的移动装置与待识别物之间的距离,则对获取的距离进行处理,以获得点云图。如采用包含了高斯核函数曲线的曲率表达式建立相关数学模型,选用了合适的离散尺度因子。根据离散曲率曲线的局部极值点,确定出截面线特征点集,并进行特征点的融合,进而准确地获取激光扫描点云图;或者基于离散点梯度法和极值法获得点云图。

s200:获取栅格化后所述点云图中点云对应栅格的结构特征,所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差中的任意多项。

在前述点云图的基础上,为了能够更为快速精准地获取结构特征,通过对所述点云图进行栅格化,使得点云能够分布在不同的栅格中。因为点云数目众多,进而不便于后文中点云的分类,特别是单个的点云类别是所以先对点云进行栅格化,以栅格为单位进行分类。结合前文的描述可知,点云图即为世界坐标系下各点的分布图,点云中的各个点为空间中的点具有坐标值,通过前述的方法就可以获取到点云在世界坐标系下的坐标值,点云坐标即为点云中的各个点在世界坐标系下的坐标值,因此在获取到点云坐标后,基于点云坐标和后文的预设栅格分辨率确定所述点云在栅格中的坐标。

使用二维数组对栅格进行存储,设定栅格分辨率为resolution_,则点云的栅格坐标可以用以下式子进行计算:

index_x=floor(x/resolution_);

index_y=floor(y/resolution_);

其中,(index_x,index_y)代表的是栅格的二维编号,(x,y)代表点云的水平坐标,floor()函数代表取整运算。

对点云进行栅格化之后,每个栅格单元里面存放的是落在该栅格区域内的点云。所述结构特征的对象为栅格单元,因此所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差,在具体的实施例汇总,结构特征分别表示为:栅格海拔mean_、栅格梯度gradient_以及栅格海拔差error_。

s300:根据所述结构特征确定移动方向前方的连通区域。

在前述的基础上,对结构特征中的栅格海拔mean_、栅格梯度gradient_以及栅格海拔差error_进行分类,并将栅格的结构特征与预设的阈值进行对比,确定属于地面的栅格,进而能够确定栅格内的点云为地面,结合前文的说明和后续的算法过程,确定实时图像中连通区域,即地面区域。需要说明的是,结合后续的算法过程可知,在本发明的实施例中,不仅仅是确定地面,也可以通过设定具体的阈值确定非地面,或者确定一种或者多种地面,通过后续的分类算法,将多种地面进行分类,进而确定实时图像中的各个物体。

进一步地,在其中一种实施方式中,如图5所示,在所述根据所述结构特征确定移动方向前方的连通区域的步骤中,具体包括:s210、s220。

s210:基于所述栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格;

s220:基于所述地面栅格确定移动方向前方的所述连通区域。

进一步地,在所述获取栅格化后所述点云图中点云对应栅格的结构特征的步骤中,具体包括:

依据同一栅格内点云高度的均值确定所述栅格海拔;

和/或,依据当前栅格和与所述当前栅格相邻的相邻栅格的所述栅格海拔确定所述栅格梯度;

和/或,获取同一栅格内中点云海拔的最大值和最小值,依据所述最大值和所述最小值确定所述栅格海拔差。

结合前文的描述,由于栅格以二维数组的形式进行的存储,因此,栅格在点云所在的坐标系中,以平面二维的形式表现。具体如,以摄像装置拍摄的方向对点云划分栅格。进而在该平面内,每一个栅格中点云都具有摄像装置拍摄方向的坐标值,即一定的高度。需要说明的是,在本发明的实施例中,该高度称为点云的海拔。进而栅格的结构特征均以点云在该方向上的高度作为计算的基准。在本申请的实施方式中,通过具体的栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格,并在确定地面栅格之后,由于常规的移动装置作业过程中,所作业的区域时针对地面的,而地面常是以一大片的区域形式存在,因此在此过程中,在确定地面栅格之后,基于其的连通性,确定连通区域,且该连通即为地面,具体计算过程见后文,在此不做赘述。在对点云图进行栅格化之后,对应的结构特征如前文所述,结构特征的计算方法如:栅格海拔mean_:通过计算栅格单元内部点云的海拔均值,以此均值作为栅格海拔mean_的值。栅格梯度gradient_:在上一步mean_值计算出来之后,将每一个栅格的mean_值与其邻接的所有栅格mean_值做差,得到的最大差值绝对值作为栅格梯度gradient_。栅格海拔差error_:通过计算栅格内部点云中海拔最大值与最小值的差,作为栅格海拔差error_。

进一步地,在所述基于所述栅格海拔确定地面栅格和非地面栅格的步骤中,具体包括:

将所述栅格海拔差与预设栅格海拔差阈值进行对比,确定非地面栅格和地面栅格;

当所述栅格海拔差大于预设栅格海拔差阈值时,所述栅格确定为所述非地面栅格;

当所述栅格海拔差小于预设栅格海拔差阈值时,所述栅格确定为地面栅格。

进一步地,在所述基于所述栅格梯度确定地面栅格和非地面栅格的步骤中,还包括:

将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格

当当前栅格的所述栅格梯度以及与所述当前栅格相邻的所述相邻栅格的所述栅格梯度均小于预设栅格梯度阈值时,将所述栅格和与所述栅格相邻的所有栅格确定为连通栅格,且所述连通栅格为所述地面栅格;

将所述地面连通栅格所在区域确定为所述栅格连通片区,将不能确定为所述连通栅格的所述栅格确定为待定栅格。

在本发明的实施例中,在实现本发明的具体算法中,所述预设栅格海拔差阈值为err_threshold,所述预设栅格梯度阈值为gra_threshold。结合前文描述的内容,在将所述栅格海拔差与预设栅格海拔差阈值进行对比,主要为确定非地面栅格的过程,且在确定栅格连通片区和待定栅格的过程中包括确定栅格连通片区和待定栅格两个过程。在本发明的实施过程中,由于障碍物的面积相对地面的面积较小,因此,先确定障碍物的障碍栅格部分,进而减少地面确定过程的计算量,特别在地面和障碍物分割过程中,可以提高计算效率。具体的,首先,将海拔差error_值大于阈值err_threshold的栅格归类为障碍栅格;然后,将梯度gradient_小于阈值gra_threshold的栅格归类为连通栅格,该连通栅格即为地面栅格对应的连通区域,基于前述的栅格梯度,在区分地面和障碍物时,地面栅格所在区域确定为不同的地面栅格连通片区,即前述的栅格连通片区。将梯度gradient_大于或者等于阈值gra_threshold的栅格归类为不连通栅格,即最后将余下的不连通的栅格归类为未知栅格,即前述的待定栅格。

进一步地,在所述将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格的步骤之后,包括:

依据栅格分辨率确定所述栅格连通片区的面积;

将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;

当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格。

进一步地,在所述将所述栅格连通片区确定为基准地面栅格的步骤之后,还包括:

将所述基准地面栅格中的点云确定为地面点云。

为了能够更完整地确定地面,在本发明的实施例中,还需要更为精确地确定地面信息,即地面对应在实际环境中的位置以及范围。进而结合前述过程,由于栅格的分辨率不同,导致相同的物体在不同的分辨率下具有不同的面积,使得栅格连通片区的面积也就不同,因此,在栅格分辨率确定后,每一个栅格的大小便确定了,即确定了单个栅格的面积,而在同一分辨率下,每一个栅格的面积都是相等的,因此,基于单个栅格的面积和栅格连通片区的数量得到栅格连通片区的面积。具体为,将单个栅格的面积乘以栅格连通片区的数量得到栅格连通片区的面积。结合前文说明,通过结合前文说明多个相邻栅格的梯度便能够栅格连通片区,且该连通片区为地面的栅格连通片区(如地面栅格连通区域),为了确定余下栅格连通片区的属性,在障碍物和地面本身面积的不同基础上,先确定基准地面,即前述基准地面栅格。将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格,如基准地面栅格。预设地面连通片区面积阈值有研发人员设置,非地面/障碍物栅格可以为无人爬坡飞行过程中遇到的树木或者电线杆等,该地面连通片区如山地中的地面斜坡对应的栅格连通片区,以便于无人机能够结合距离检测装置检测出的距离进行仿地地面飞行。由于地面的栅格连通片区的面积相对障碍物对应的面积较大,且地面中的主要部分面积也较大,如包括斜坡的地面。其中连续的平地面积大于斜坡地面面积。因此,当栅格连通片区的面积大于预设地面连通片区面积阈值时,将该栅格连通片区的栅格确定为基准地面栅格,如前述的平地地面作为基准地面。结合前述的点云栅格化可知,基准地面栅格中的点云对应的是地面上的点形成的点云,因此基准地面栅格中的点云则可以确定为地面点云。

进一步地,在所述将所述栅格连通片区的栅格确定为基准地面栅格的步骤之后,包括:

依据确定为所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,所述海拔均值为地面海拔;

依据所述待定栅格的所述栅格海拔和所述地面海拔获得待定栅格海拔差;

将所述待定栅格海拔差与预设地面海拔差阈值进行对比;

当所述待定栅格海拔差小于预设地面海拔差阈值时,所述待定栅格确定为地面栅格;

当所述待定栅格海拔差大于或者等于预设地面海拔差阈值时,所述待定栅格确定为非地面栅格。

为了能够确定待定栅格具体的类型,结合前文所述的计算方法获得所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,且该海拔均值确定为地面海拔,如在地面是地面时,在该海拔均值为地面海拔,在地面是农作物时,该海拔均值为农作物海拔。将待定栅格的栅格海拔依次与地面海拔做差获得待定栅格与地面海拔之间的海拔差,该海拔差如前文的待定栅格海拔差,将待定栅格海拔差与预设地面海拔差阈值进行对比,其中,在具体的实施方式中,所述预设地面海拔差阈值为ground_threshold,当所述待定栅格海拔差小于ground_threshold时,所述待定栅格确定为地面栅格(即地面栅格);当所述待定栅格海拔差大于或者等于ground_threshold时,所述待定栅格确定为非地面栅格(障碍物栅格)。具体的,该方法可以用于无人机分割斜坡和障碍物,使得无人机可以依据分割出来的地面栅格和障碍物栅格进行仿地飞行,进而避免无人机将斜坡当做障碍物,使得无人机不会对障碍物飞行或者作业,实现对仿斜坡的飞行。需要说明的是,在地面可以包括种植有农作物的地面。在其中一种实施方式中,在精准的区分农作物时,进而在无人机基于该方法进行喷洒作业时,可以对斜坡上的农作物进行统一作业,避免无人机对没有作物地面进行喷洒作业,或者避免无人机对不是目标农作物的农作物进行作业,节约被喷洒的水量、药量或者颗粒物等。前述过程主要包括农作物较为茂密的情况,此时非地面/障碍物包括地面,茂密的农作物为地面时,此时连通栅格可以为茂密农作物生成的地面栅格,对应的栅格连通片区则为目标农作物的栅格连通片区,地面则为前述的非地面/障碍物栅格,则在喷洒作业时,便于移动装置对地面栅格对应的农作物进行喷洒作业,对非地面的地面栅格不进行喷洒作业,避免浪费被喷洒物,提高被喷洒物的利用率;在又一种实施方式中,在农作物较为稀疏时,由于农作物之间能够连通的栅格较少,导致不能够形成栅格连通片区时,连通栅格则为地面栅格,且基于其确定的栅格连通片区为地面栅格连通片区,前述的非地面栅格则可以确定基于农作物确定的栅格,进而便于移动装置对非地面的农作物进行喷洒作业,对地面的地面栅格不进行喷洒作业,避免浪费被喷洒物,提高被喷洒物的利用率。

进一步地,在所述待定栅格确定为非地面栅格的步骤之后,包括:

对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格;

依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;

将所述点云海拔差与所述预设地面海拔差阈值进行对比;

当所述点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云。

由于在前述的计算过程中,都是以栅格进行计算的,并没有完全落实到点云上,而点云中的点代表的是空间中物体上一点的,具有基于移动装置所在世界坐标系中的实际坐标,因此,需要明确点云的具体类别,以便于确定空间中点对应的物体是地面或者非地面。然后,通过前文算法确定了栅格为地面栅格时,则该栅格类的点云则确定为地面的点云。为了更精确地确定障碍物是否是地面,通过前述的连通片区的栅格可知,与地面栅格最近的非地面栅格最有可能为地面栅格,因此,对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格,对比非地面栅格内和地面栅格内点云的海拔差,该海拔为点云垂直于栅格二维平面的距离。在对比之前,还需要依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;即依次将障碍物栅格内的点云海拔与地面栅格海拔做差获得点云海拔差,然后将该点云海拔差与将所述点云海拔差与所述预设地面海拔差阈值进行对比;具体的,在分割地面和障碍物时,所述预设地面海拔差阈值可以为前述的ground_threshold,所述地面包括了斜坡。当点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云,如可以确定为地面点云。结合前述点云与世界坐标系的关系以及实时图像与点云的关系可知,在分类出点云中各点的类别后,可知道世界坐标系中,点云对应物体的类别,又由于点云是通过实时图像确定,因此在确定了点云之后,便可再依据坐标系中的关系可以确定实时图像中地面对应实际环境中的地面,进而实现精准分割地面和障碍物(或者分割目标农作物和非目标农作物和/或地面),以使得无人机可以实现在有斜坡的地方仿地飞行和/或对农作物进行精准的喷洒作业。

进一步地,在所述将所述地面栅格所在区域确定为所述栅格连通片区的步骤之后,包括:

遍历所述地面点云对应的栅格连通片区内的所述栅格;

依次依据每一个所述当前栅格的所述栅格海拔和每一个所述相邻栅格的所述栅格海拔确定栅格差值绝对值;

对比所述当前栅格和每一个所述相邻栅格之间的所述栅格差值绝对值确定最大的所述栅格差值绝对值;

将最大的所述栅格差值绝对值确定为所述栅格梯度,所述栅格梯度为所述地面坡度信息。

在确定了地面对应的点云之后,为了能够实现无人机仿地面飞行,特别是能够仿斜坡飞行,还需要确定地面的坡度信息。因此,遍历地面点云对应的栅格连通片区内的所述栅格,基于遍历到的当前栅格和与其相邻栅格之间的海拔结合前述栅格梯度确定方法确定当前栅格的梯度,具体过程在此不做赘述,所述的梯度即为地面的坡度信息。在本发明的实施过程中,基于前述的栅格梯度,遍历连通片区内栅格,依次获取每一个栅格的梯度,且所述栅格梯度为地面的坡度信息,即地面信息,进而在移动装置仿飞行时,基于该坡度信息和前述的距离检测装置采集的距离,控制移动装置在安全的移动距离内以合适的姿态实现仿地面飞行。

为了使得减少后续移动装置在移动过程中计算量,当距离检测装置为摄像装置时,在摄像装置内部参数和外部参数固定时,摄像装置坐标系、图像坐标系、世界坐标系固定,进而依据三个坐标系之间的关系确定地面实际的位置信息,将实际位置信息与坡度关系进行关联存储,使得移动装置前述距离阈值附近时,移动装置可以调整自己的移动姿态,进而实现更好的移动。如在无人机仿地飞行过程中,在无人机遇到斜坡时,无人机可以基于之前其他无人机确定的斜坡位置以及斜坡的坡度和移动装置与斜坡距离调整自己的姿态,使得无人机能够沿着斜坡安全地飞行。

本发明实施例提供的一种移动装置控制装置,在其中一种实施方式中,如图6所示,包括:点云图获得模块110、地面信息确定模块120、控制模块130。

点云图获得模块110,用于获取移动装置移动方向前方的点云图;

需要说明的是本发明实施例中的移动装置上可安装有至少一个能够确定点云的测距装置,测距装置可以安装于与移动装置移动方向相同的一端,或者安装于移动装置移动方向的两侧,在移动装置是无人机时,测距装置安装于无人机面向地面的一侧;在移动装置是车辆时,测距装置可以安装于车辆的前端或者后端,或者旋转式的安装于车辆顶端,其中,测距装置还包括摄像装置,且摄像装置可以拍摄车辆周围包括车辆顶端的图像,所述的测距装置例如摄像机、激光雷达传感器、测距传感器等。

具体地,所述移动装置可以包括无人机、地面机器人、地面作业设备如拖拉机等,可以通过直接输入的方式获取点云图,例如可以通过dsm三维地图确定该区域的点云信息,然后输入到移动装置中;在其他实施例中可以通过移动装置挂载的传感器实现采集移动方向前方的点云图,例如采用激光雷达、激光测距传感器或者图像传感器获取传感数据,然后对传感数据进行处理获取点云图。可以提前获取传感数据处理成点云图,也可以实时的作业过程中,获取传感数据,然后实时处理成点云图。

地面信息确定模块120,用于基于所述点云图中点云信息确定移动方向前方的连通区域,用于由所述连通区域确定地面信息,所述地面信息包括地面坡度信息;

所述的对点云图进行栅格处理,例如对点云图进行均匀的划分,横向和纵向等距离的将栅格划分成多个矩形区域,又可以根据点云距离测距装置的远近而不等距的划分栅格,所述栅格可以为矩形,也可以为扇形、六边形、三角形等形状。优选地,所述栅格相等大小,且均匀划分。

具体地,可以根据栅格中的点云数据将栅格化后所述点云图中的栅格分类成一个或多个连通区域。如根据相邻栅格的点云海拔平均值划分区域,例如在水平方向的第一栅格、第二栅格、第三栅格、第四栅格的点云海拔平均值分别为3、4、5、12,则第一栅格、第二栅格、第三栅格满足线性关系,其可以被分类成一个连通区域,而第四栅格不满足线性关系,则不被分类到与第一栅格、第二栅格、第三栅格同一个连通区域中。又如在临近栅格的海拔与当前栅格的海拔值小于等于1时,则确认临近栅格与当前栅格属于同一连通区域,如在某平面上的某一栅格的海拔值为5,其八邻域临近栅格分别为4、4、6、5、5、4、6、10,则海拔值为4、4、6、5、5、4、6与当前栅格属于同一连通区域,则海拔值为10的相邻与当前栅格不属于同一连通区域,又如还可以采用四邻域栅格确定连通区域,具体分类方法本发明不做限定。

控制模块130,用于依据所述坡度信息控制所述移动装置仿所述地面移动。

具体地,可以根据栅格区域中的栅格的海拔差确定坡度,例如第一栅格、第二栅格、第三栅格、第四栅格的点云海拔平均值分别为3、4、5、6,栅格为1*1的栅格,则可以根据勾股定理确定坡度为45度。例如第一栅格、第二栅格、第三栅格、第四栅格、第五栅格的点云海拔平均值分别为3、4、5、4,3,栅格为1*1的栅格,则可以根据确定地面为土丘,坡度值是变化的,上坡坡度为45度,下坡坡度为45度。

根据获得的坡度可以控制移动装置仿着地面移动,而不会撞击到地面上。

进一步地,在其中一种实施方式中,如图7所示,在所述控制模块中,具体包括:距离获取单元121、第一移动单元122。

距离获取单元121,用于获取距离检测装置采集的移动装置与所述地面之间的距离;

第一移动单元122,用于依据所述坡度信息和所述距离控制所述移动装置仿所述地面移动。

进一步地,在其中一种实施方式中,如图8所示,在所述移动单元中,具体包括:调整单元1221、第二移动单元1222。

调整单元1221,用于依据所述坡度信息调整所述移动装置的移动姿态,以使所述移动装置能够仿所述地面移动移动;

第二移动单元1222,用于依据所述距离控制所述移动装置以所述移动姿态仿所述地面移动移动。

进一步地,在所述第二移动单元中,具体包括:

判断单元,用于判断所述距离是否在预设距离阈值;

第一控制单元,用于当所述距离不在所述预设距离阈值内时,控制所述移动装置移动至所述预设距离内;

第三移动单元,用于控制所述移动装置以所述移动姿态在所述预设距离阈值内仿所述地面移动。

优先地,所述距离包括移动装置与地面之间的垂直距离和移动装置与地面之间的水平距离,所述预设距离阈值包括移动装置与地面之间的预设垂直距离和移动装置与地面之间的预设水平距离。

进一步地,在所述第二移动单元中,具体包括:

第二控制单元,用于当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值和所述预设水平距离阈值内;

第四移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述第二移动单元中,具体包括:

第三控制单元,用于当所述垂直距离不在所述预设垂直距离阈值内且所述水平距离在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设垂直距离阈值内;

第五移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

进一步地,在所述第二移动单元中,具体包括:

第四控制单元,用于当所述垂直距离在所述预设垂直距离阈值内且所述水平距离不在所述预设水平距离阈值内时,控制所述移动装置移动至所述预设水平距离阈值内;

第六移动单元,用于控制所述移动装置以所述移动姿态在所述预设垂直距离阈值和所述预设水平距离阈值内仿所述地面移动。

基于移动装置上的摄像装置拍摄的实时图像,基于该实时图像确定实时图像中的地面,移动装置上的摄像装置可以为双摄像头也可以为单摄像头,且为安装于移动装置上的辅助避障模块,该模块也可以用于拍摄图像进行定位等,并通过坐标系之间的转换关系确定地面在空间中位置,当然地面的确定方法主要通过后文的步骤实现,在此不做赘述。进一步地,为了移动装置能够更好地进行仿地移动,基于摄像装置拍摄的实时图像检测出地面后,可结合距离检测装置检测出来的距离,当然可以图像直接确定距离,然后控制移动装置仿所述地面移动。结合前文所述,距离检测装置主要检测移动装置与地面在竖直方向的距离以及移动装置与地面水平方向的距离。具体的,在获取到距离之后,调整移动装置仿地面的移动姿态,在移动装置为无人机时,地面时包括平整地面和斜坡的地块时,调整移动无人机仿地飞行的状态。进一步地,将基于无人机与斜坡或者地面的垂直距离以及无人机面向斜坡的水平距离,来综合调整无人机仿地飞行的状态,相对比与只能以恒定的海拔高度的传统无人机飞行方式,本发明实施例的无人机能够完成在各种环境的仿地飞行,提高了无人机作业的效率和可靠性。

进一步地,在确定移动装置与地面之间的水平距离和垂直距离之后,将该水平距离与预设水平距离阈值进行对比,同时将该垂直距离与预设垂直距离阈值进行对比,判断所述移动装置是否在预设水平距离阈值和垂直距离阈值内,如果在水平距离在预设水平距离阈值内,则无人机以当前水平移动速度保持仿地面的飞行,在所述水平距离不在预设水平距离阈值内且小于该预设水平阈值时,控制移动装置倒退飞行,使得无人机远离地面,使得移动装置在预设水平距离阈值内仿地面飞行;在所述水平距离大于预设水平距离阈值时,可以调整无人机加速前进至预设水平距离阈值内,以使得移动装置在预设水平距离阈值内仿地面飞行;当垂直距离在预设垂直距离阈值内,则以当前抬升的速度保持仿地面飞行;由于移动装置在移动过程中除了具有垂直方向的速度之外还有水平方向的速度,因此,当垂直距离小于预设垂直距离阈值时,控制移动装置加速抬升,当垂直距离大于预设垂直距离阈值时,控制移动装置下降或者减速抬升,以使得移动装置在预设垂直距离阈值内仿地面飞行;避免移动装置碰撞到地面,保证移动装置的安全飞行同时实现仿地面飞行。在具体的实施方式中,垂直距离和水平距离时同时判断的过程,根据两则判断结果同时调整移动装置与地面的垂直距离和/或水平距离,或者在水平距离在预设水平距离阈值内,同时垂直距离在预设垂直距离阈值内时,不对水平距离和垂直距离做调整,以当前速度仿地面飞行。通过本发明实施例提供的移动装置控制方法,将本发明用于仿地飞行时,通过避障模块和地形模块结合摄像装置拍摄的图像识别,实现了安全高效地仿地飞行。应用本发明实施例的无人机,能够针对与地面不同的水平距离,控制无人机做出不同的飞行动作,从而使得无人机能够在山地,丘陵,梯田,平原,高秆植物等各种环境实现仿地飞行,不仅提高了无人机的作业效率和无人机适应环境的能力,而且提升了无人机的可靠性和安全性。本发明实施例尤其适用于诸如植保无人机这类需要与地面保持恒定高度,且需要适应各种环境下作业的无人机。

进一步地,在其中一种实施方式中,如图9所示,在所述地面信息确定模块中,具体包括:栅格化单元100、结构特征获取单元200、第一连通区域确定单元300。

栅格化单元100,用于对所述点云图做栅格化处理;

本发明的实施例主要对摄像装置拍摄的图像进行处理,并通过转换关系(基于摄像装置的图像坐标系、摄像装置坐标系以及世界坐标系之间的转换关系),确定图像中对应在空间中地面的位置。需要说明的是,虽然未直接示出摄像装置的图像坐标系、摄像装置坐标系以及世界坐标系之间的转换关系,本领域人员应该是可以理解和实施的。如前文所述,获取摄像装置的拍摄的实时图像,即该实时图像为移动装置在移动过程中拍摄的图像,该实时图像可以为深度图像也可以为rgb图像。在该图像为rgb图像时,对该实时图像进行初步处理,将其转换为深度图像,深度图像是包含与视点的场景对象的表面的距离有关的信息的图像或图像通道。其中,深度图像类似于灰度图像,只是它的每个像素值是传感器距离物体的实际距离。通常rgb图像和深度图像是配准的,因而像素点之间具有一对一的对应关系。由于深度图像上每一像素点的像素值为摄像装置与实际点之间的距离(即深度信息),因此,深度图像的基础上,通过前述的坐标系之间的转换关系,可以确定每一个像素点对应空间点的坐标值,即每一个像素点在世界坐标系中的坐标值,由于摄像装置内部参数和外部参数固定,进而每一个像素点转换后的世界坐标系为同一坐标系,基于每个像素点的深度信息和前述的坐标系之间的转换关系,可以确定每个像素点在世界坐标系上的位置,将同一帧图像上的所有像素点均转换到世界坐标系中,得到点在世界坐标系中的集合,其为点云,在图像上表示为点云图,点云中的每一个点均具有在世界坐标系中的坐标值。需要说明的是,在其他的实时方式中,由于是通过测距装置(如激光雷达扫描传感器)获取的移动装置与待识别物之间的距离,则对获取的距离进行处理,以获得点云图。如采用包含了高斯核函数曲线的曲率表达式建立相关数学模型,选用了合适的离散尺度因子。根据离散曲率曲线的局部极值点,确定出截面线特征点集,并进行特征点的融合,进而准确地获取激光扫描点云图;或者基于离散点梯度法和极值法获得点云图。

结构特征获取单元200,用于获取栅格化后所述点云图中点云对应栅格的结构特征,所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差中的任意多项;

在前述点云图的基础上,为了能够更为快速精准地获取结构特征,通过对所述点云图进行栅格化,使得点云能够分布在不同的栅格中。因为点云数目众多,进而不便于后文中点云的分类,特别是单个的点云类别是所以先对点云进行栅格化,以栅格为单位进行分类。结合前文的描述可知,点云图即为世界坐标系下各点的分布图,点云中的各个点为空间中的点具有坐标值,通过前述的方法就可以获取到点云在世界坐标系下的坐标值,点云坐标即为点云中的各个点在世界坐标系下的坐标值,因此在获取到点云坐标后,基于点云坐标和后文的预设栅格分辨率确定所述点云在栅格中的坐标。

使用二维数组对栅格进行存储,设定栅格分辨率为resolution_,则点云的栅格坐标可以用以下式子进行计算:

index_x=floor(x/resolution_);

index_y=floor(y/resolution_);

其中,(index_x,index_y)代表的是栅格的二维编号,(x,y)代表点云的水平坐标,floor()函数代表取整运算。

对点云进行栅格化之后,每个栅格单元里面存放的是落在该栅格区域内的点云。所述结构特征的对象为栅格单元,因此所述结构特征包括:栅格海拔、栅格梯度、栅格海拔差,在具体的实施例汇总,结构特征分别表示为:栅格海拔mean_、栅格梯度gradient_以及栅格海拔差error_。

第一连通区域确定单元300,用于根据所述结构特征确定移动方向前方的连通区域。

在前述的基础上,对结构特征中的栅格海拔mean_、栅格梯度gradient_以及栅格海拔差error_进行分类,并将栅格的结构特征与预设的阈值进行对比,确定属于地面的栅格,进而能够确定栅格内的点云为地面,结合前文的说明和后续的算法过程,确定实时图像中连通区域,即地面区域。需要说明的是,结合后续的算法过程可知,在本发明的实施例中,不仅仅是确定地面,也可以通过设定具体的阈值确定非地面,或者确定一种或者多种地面,通过后续的分类算法,将多种地面进行分类,进而确定实时图像中的各个物体。

进一步地,在其中一种实施方式中,如图10所示,在所述连通区域确定单元中,具体包括:第一栅格确定单元210、第二连通区域确定单元220。

第一栅格确定单元210,用于基于所述栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格;

第二连通区域确定单元220,用于基于所述地面栅格确定移动方向前方的所述连通区域。

进一步地,在所述结构特征获取单元中,具体包括:

栅格海拔确定单元,用于依据同一栅格内点云高度的均值确定所述栅格海拔;

栅格梯度确定单元,用于和/或,依据当前栅格和与所述当前栅格相邻的相邻栅格的所述栅格海拔确定所述栅格梯度;

栅格海拔差确定单元,用于和/或,获取同一栅格内中点云海拔的最大值和最小值,依据所述最大值和所述最小值确定所述栅格海拔差。

结合前文的描述,由于栅格以二维数组的形式进行的存储,因此,栅格在点云所在的坐标系中,以平面二维的形式表现。具体如,以摄像装置拍摄的方向对点云划分栅格。进而在该平面内,每一个栅格中点云都具有摄像装置拍摄方向的坐标值,即一定的高度。需要说明的是,在本发明的实施例中,该高度称为点云的海拔。进而栅格的结构特征均以点云在该方向上的高度作为计算的基准。在本申请的实施方式中,通过具体的栅格海拔、栅格梯度、栅格海拔差中的任意一项或者多项确定地面栅格和非地面栅格,并在确定地面栅格之后,由于常规的移动装置作业过程中,所作业的区域时针对地面的,而地面常是以一大片的区域形式存在,因此在此过程中,在确定地面栅格之后,基于其的连通性,确定连通区域,且该连通即为地面,具体计算过程见后文,在此不做赘述。在对点云图进行栅格化之后,对应的结构特征如前文所述,结构特征的计算方法如:栅格海拔mean_:通过计算栅格单元内部点云的海拔均值,以此均值作为栅格海拔mean_的值。栅格梯度gradient_:在上一步mean_值计算出来之后,将每一个栅格的mean_值与其邻接的所有栅格mean_值做差,得到的最大差值绝对值作为栅格梯度gradient_。栅格海拔差error_:通过计算栅格内部点云中海拔最大值与最小值的差,作为栅格海拔差error_。

进一步地,在所述栅格确定单元中,具体包括:

第一海拔差值对比单元,用于将所述栅格海拔差与预设栅格海拔差阈值进行对比,确定非地面栅格和地面栅格;

第一非地面栅格确定单元,用于当所述栅格海拔差大于预设栅格海拔差阈值时,所述栅格确定为所述非地面栅格;

第一地面栅格确定单元,用于当所述栅格海拔差小于预设栅格海拔差阈值时,所述栅格确定为所述地面栅格。

进一步地,在所述栅格确定单元中,还包括:

梯度值对比单元,用于将所述栅格梯度与预设栅格梯度阈值进行对比,确定栅格连通片区和待定栅格。

连通栅格确定单元,用于当当前栅格的所述栅格梯度以及与所述当前栅格相邻的相邻栅格的所述栅格梯度均小于预设栅格梯度阈值时,将所述栅格和与所述栅格相邻的所有栅格确定为连通栅格,且所述连通栅格为所述地面栅格;

待定栅格确定单元,用于将所述地面栅格所在区域确定为所述栅格连通片区,将不能确定为所述连通栅格的所述栅格确定为待定栅格。

在本发明的实施例中,在实现本发明的具体算法中,所述预设栅格海拔差阈值为err_threshold,所述预设栅格梯度阈值为gra_threshold。结合前文描述的内容,在将所述栅格海拔差与预设栅格海拔差阈值进行对比,主要为确定非地面栅格的过程,且在确定栅格连通片区和待定栅格的过程中包括确定栅格连通片区和待定栅格两个过程。在本发明的实施过程中,由于障碍物的面积相对地面的面积较小,因此,先确定障碍物的障碍栅格部分,进而减少地面确定过程的计算量,特别在地面和障碍物分割过程中,可以提高计算效率。具体的,首先,将海拔差error_值大于阈值err_threshold的栅格归类为障碍栅格;然后,将梯度gradient_小于阈值gra_threshold的栅格归类为连通栅格,该连通栅格即为地面栅格对应的连通区域,基于前述的栅格梯度,在区分地面和障碍物时,地面栅格所在区域确定为不同的地面栅格连通片区,即前述的栅格连通片区。将梯度gradient_大于或者等于阈值gra_threshold的栅格归类为不连通栅格,即最后将余下的不连通的栅格归类为未知栅格,即前述的待定栅格。

进一步地,还包括:

栅格连通片区面积确定单元,用于依据栅格分辨率确定所述栅格连通片区的面积;

面积值对比单元,用于将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;

基准地面栅格确定单元,用于当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格。

进一步地,还包括:

第二地面点云确定单元,用于将所述基准地面栅格中的点云确定为地面点云。

为了能够更完整地确定地面,在本发明的实施例中,还需要更为精确地确定地面信息,即地面对应在实际环境中的位置以及范围。进而结合前述过程,由于栅格的分辨率不同,导致相同的物体在不同的分辨率下具有不同的面积,使得栅格连通片区的面积也就不同,因此,在栅格分辨率确定后,每一个栅格的大小便确定了,即确定了单个栅格的面积,而在同一分辨率下,每一个栅格的面积都是相等的,因此,基于单个栅格的面积和栅格连通片区的数量得到栅格连通片区的面积。具体为,将单个栅格的面积乘以栅格连通片区的数量得到栅格连通片区的面积。结合前文说明,通过结合前文说明多个相邻栅格的梯度便能够栅格连通片区,且该连通片区为地面的栅格连通片区(如地面栅格连通区域),为了确定余下栅格连通片区的属性,在障碍物和地面本身面积的不同基础上,先确定基准地面,即前述基准地面栅格。将所述栅格连通片区的面积与预设地面连通片区面积阈值进行对比;当所述栅格连通片区的面积大于预设地面连通片区面积阈值时,将所述栅格连通片区的栅格确定为基准地面栅格,如基准地面栅格。预设地面连通片区面积阈值有研发人员设置,非地面/障碍物栅格可以为无人爬坡飞行过程中遇到的树木或者电线杆等,该地面连通片区如山地中的地面斜坡对应的栅格连通片区,以便于无人机能够结合距离检测装置检测出的距离进行仿地地面飞行。由于地面的栅格连通片区的面积相对障碍物对应的面积较大,且地面中的主要部分面积也较大,如包括斜坡的地面。其中连续的平地面积大于斜坡地面面积。因此,当栅格连通片区的面积大于预设地面连通片区面积阈值时,将该栅格连通片区的栅格确定为基准地面栅格,如前述的平地地面作为基准地面。结合前述的点云栅格化可知,基准地面栅格中的点云对应的是地面上的点形成的点云,因此基准地面栅格中的点云则可以确定为地面点云。

进一步地,还包括:

地面海拔确定单元,用于依据确定为所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,所述海拔均值为地面海拔;

待定栅格海拔差确定单元,用于依据所述待定栅格的所述栅格海拔和所述地面海拔获得待定栅格海拔差;

第二海拔差值对比单元,用于将所述待定栅格海拔差与预设地面海拔差阈值进行对比;

第二地面栅格确定单元,用于当所述待定栅格海拔差小于预设地面海拔差阈值时,所述待定栅格确定为地面栅格;

第二非地面栅格确定单元,用于当所述待定栅格海拔差大于或者等于预设地面海拔差阈值时,所述待定栅格确定为非地面栅格。

为了能够确定待定栅格具体的类型,结合前文所述的计算方法获得所述基准地面栅格的所述栅格连通片区的栅格海拔获得海拔均值,且该海拔均值确定为地面海拔,如在地面是地面时,在该海拔均值为地面海拔,在地面是农作物时,该海拔均值为农作物海拔。将待定栅格的栅格海拔依次与地面海拔做差获得待定栅格与地面海拔之间的海拔差,该海拔差如前文的待定栅格海拔差,将待定栅格海拔差与预设地面海拔差阈值进行对比,其中,在具体的实施方式中,所述预设地面海拔差阈值为ground_threshold,当所述待定栅格海拔差小于ground_threshold时,所述待定栅格确定为地面栅格(即地面栅格);当所述待定栅格海拔差大于或者等于ground_threshold时,所述待定栅格确定为非地面栅格(障碍物栅格)。具体的,该方法可以用于无人机分割斜坡和障碍物,使得无人机可以依据分割出来的地面栅格和障碍物栅格进行仿地飞行,进而避免无人机将斜坡当做障碍物,使得无人机不会对障碍物飞行或者作业,实现对仿斜坡的飞行。需要说明的是,在地面可以包括种植有农作物的地面。在其中一种实施方式中,在精准的区分农作物时,进而在无人机基于该方法进行喷洒作业时,可以对斜坡上的农作物进行统一作业,避免无人机对没有作物地面进行喷洒作业,或者避免无人机对不是目标农作物的农作物进行作业,节约被喷洒的水量、药量或者颗粒物等。前述过程主要包括农作物较为茂密的情况,此时非地面/障碍物包括地面,茂密的农作物为地面时,此时连通栅格可以为茂密农作物生成的地面栅格,对应的栅格连通片区则为目标农作物的栅格连通片区,地面则为前述的非地面/障碍物栅格,则在喷洒作业时,便于移动装置对地面栅格对应的农作物进行喷洒作业,对非地面的地面栅格不进行喷洒作业,避免浪费被喷洒物,提高被喷洒物的利用率;在又一种实施方式中,在农作物较为稀疏时,由于农作物之间能够连通的栅格较少,导致不能够形成栅格连通片区时,连通栅格则为地面栅格,且基于其确定的栅格连通片区为地面栅格连通片区,前述的非地面栅格则可以确定基于农作物确定的栅格,进而便于移动装置对非地面的农作物进行喷洒作业,对地面的地面栅格不进行喷洒作业,避免浪费被喷洒物,提高被喷洒物的利用率。

进一步地,还包括:

地面栅格距离获取单元,用于对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格;

点云海拔差确定单元,用于依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;

点云海拔差对比单元,用于将所述点云海拔差与所述预设地面海拔差阈值进行对比;

第一地面点云确定单元,用于当所述点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云。

由于在前述的计算过程中,都是以栅格进行计算的,并没有完全落实到点云上,而点云中的点代表的是空间中物体上一点的,具有基于移动装置所在世界坐标系中的实际坐标,因此,需要明确点云的具体类别,以便于确定空间中点对应的物体是地面或者非地面。然后,通过前文算法确定了栅格为地面栅格时,则该栅格类的点云则确定为地面的点云。为了更精确地确定障碍物是否是地面,通过前述的连通片区的栅格可知,与地面栅格最近的非地面栅格最有可能为地面栅格,因此,对每一个所述非地面栅格,依次获取距离所述非地面栅格最近的所述地面栅格,对比非地面栅格内和地面栅格内点云的海拔差,该海拔为点云垂直于栅格二维平面的距离。在对比之前,还需要依据所述非地面栅格中的点云海拔和所述地面栅格的所述栅格海拔确定点云海拔差;即依次将障碍物栅格内的点云海拔与地面栅格海拔做差获得点云海拔差,然后将该点云海拔差与将所述点云海拔差与所述预设地面海拔差阈值进行对比;具体的,在分割地面和障碍物时,所述预设地面海拔差阈值可以为前述的ground_threshold,所述地面包括了斜坡。当点云海拔差小于所述预设地面海拔差阈值时,所述点云确定为地面点云,如可以确定为地面点云。结合前述点云与世界坐标系的关系以及实时图像与点云的关系可知,在分类出点云中各点的类别后,可知道世界坐标系中,点云对应物体的类别,又由于点云是通过实时图像确定,因此在确定了点云之后,便可再依据坐标系中的关系可以确定实时图像中地面对应实际环境中的地面,进而实现精准分割地面和障碍物(或者分割目标农作物和非目标农作物和/或地面),以使得无人机可以实现在有斜坡的地方仿地飞行和/或对农作物进行精准的喷洒作业。

进一步地,还包括:

遍历单元,用于遍历所述地面点云对应的栅格连通片区内的所述栅格;

栅格差值绝对值确定单元,用于依据每一个所述当前栅格的所述栅格海拔和每一个所述相邻栅格的所述栅格海拔确定栅格差值绝对值;

栅格差值绝对值对比单元,用于对比所述当前栅格和每一个所述相邻栅格之间的所述栅格差值绝对值确定最大的所述栅格差值绝对值;

地面坡度信息确定单元,用于将最大的所述栅格差值绝对值确定为所述栅格梯度,所述栅格梯度为所述地面坡度信息。

在确定了地面对应的点云之后,为了能够实现无人机仿地面飞行,特别是能够仿斜坡飞行,还需要确定地面的坡度信息。因此,遍历地面点云对应的栅格连通片区内的所述栅格,基于遍历到的当前栅格和与其相邻栅格之间的海拔结合前述栅格梯度确定方法确定当前栅格的梯度,具体过程在此不做赘述,所述的梯度即为地面的坡度信息。在本发明的实施过程中,基于前述的栅格梯度,遍历连通片区内栅格,依次获取每一个栅格的梯度,且所述栅格梯度为地面的坡度信息,即地面信息,进而在移动装置仿飞行时,基于该坡度信息和前述的距离检测装置采集的距离,控制移动装置在安全的移动距离内以合适的姿态实现仿地面飞行。

为了使得减少后续移动装置在移动过程中计算量,当距离检测装置为摄像装置时,在摄像装置内部参数和外部参数固定时,摄像装置坐标系、图像坐标系、世界坐标系固定,进而依据三个坐标系之间的关系确定地面实际的位置信息,将实际位置信息与坡度关系进行关联存储,使得移动装置前述距离阈值附近时,移动装置可以调整自己的移动姿态,进而实现更好的移动。如在无人机仿地飞行过程中,在无人机遇到斜坡时,无人机可以基于之前其他无人机确定的斜坡位置以及斜坡的坡度和移动装置与斜坡距离调整自己的姿态,使得无人机能够沿着斜坡安全地飞行。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序执行时实现任一技术方案所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置控制终端,包括处理器、存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时任一技术方案所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置,包括:所述计算机可读存储介质或所述的移动装置控制终端。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序执行时实现所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置控制终端,包括处理器、存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时实现所述的移动装置控制方法的步骤。

本发明实施例还提供了一种移动装置,包括:所述计算机可读存储介质或所述的移动装置控制终端。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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