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

一种基于模板覆盖的栅格地图处理方法及芯片

文献发布时间:2023-06-19 13:49:36


一种基于模板覆盖的栅格地图处理方法及芯片

技术领域

本发明涉及地图构建的技术领域,具体涉及一种基于模板覆盖的栅格地图处理方法及芯片。

背景技术

现有技术中,基于特征匹配的图像匹配方法,在实际中应用越来越广泛,一般需通过模板提取原图像的像素点的特征,再进行匹配,其中,像素点的特征的提取可能对噪声、光源以及图像尺度变化比较敏感。

通常使用栅格地图来设置移动对象(诸如移动机器人)的运动路径。栅格地图作为一种能够及时构建的图像,使用多个栅格来表示移动对象运动的周围区域,并且使用可限定的概率来表现每个栅格中对象存在的可能性。其中,每个像素点可以用一个栅格来表示。

通常,在产生将被移动目标使用的路径期间,一般期望找到从起点到终点的最短路径,因此顺序检测从起点到终点的许多(可能不是全部)可用的路径。当栅格地图不大时,这种路径搜索的计算量对于将被快速产生的适当路径来说不是很大。然而,栅格地图越大,栅格数量越多。因此,需要的存储量和计算量与栅格地图的大小成比例地增加。

为了减少使用栅格地图搜索路径所需的存储容量,专利2010101101054通过对来自栅格地图的不同栅格的信息分别进行抗混叠滤波来执行栅格地图的缩小,对栅格地图的所有栅格都进行分组计算,在实际操作过程中容易出现重复遍历栅格的现象,这在较大运动范围的场景下对于存储和处理能力受限的设备(诸如具有嵌入式系统的设备)仍存在较大的计算量,同时,专利2010101101054在缩小地图以及在缩小的地图内产生近似路径的过程中,对地图图像的角点处的栅格的处理存在随机性。

发明内容

针对上述技术缺陷,本发明公开一种基于模板覆盖的栅格地图处理方法及芯片,可以有效减少栅格地图所需的存储容量及栅格的应用所需的计算量,从而能够使用移动终端(包括移动机器人)内置的芯片对缩小后的栅格地图进行较高精度的必要路径规划操作。具体技术方案如下:

一种基于模板覆盖的栅格地图处理方法,包括以下步骤:S1、读入预设图像模板,再将预设图像模板叠放在待处理地图上;其中,待处理地图是栅格地图,预设图像模板被配置为覆盖到预定的矩形栅格区域;

S2、控制预设图像模板在待处理地图上平移,并不重复地对实时框定的栅格区域作缩小处理;其中,待处理地图的行数是大于预定的矩形栅格区域的任一边长,待处理地图的列数也是大于预定的矩形栅格区域的任一边长;S3、当预设图像模板逐块区域地覆盖过所述待处理地图后,将所有经过缩小处理的栅格区域组成缩小化的栅格地图,以实现缩小待处理地图。

进一步地,所述步骤S2具体包括:以所述预定的矩形栅格区域的其中一个边长为平移步长,控制步骤S1读入的预设图像模板按照平移步长在所述待处理地图上进行平移;每当所述预设图像模板按照平移步长在所述待处理地图上平移一次,则在所述预设图像模板当前覆盖的栅格区域中,将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格执行缩小处理,获得相应概率值的一个栅格,用以组成所述缩小化的栅格地图。

进一步地,所述将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格执行缩小处理的方法包括:在所述预设图像模板当前覆盖的栅格区域中,提取出该栅格区域的左上角的栅格的占用概率值、该栅格区域的右上角的栅格的占用概率值、该栅格区域的左下角的栅格的占用概率值、以及该栅格区域的右下角的栅格的占用概率值,然后对当前提取出的四个占用概率值求平均值,获得对角概率值,同时将该栅格区域当前覆盖到的所有栅格替换为一个预设栅格,并删除该栅格区域当前覆盖到的所有栅格,以确定执行一次缩小处理;其中,该预设栅格的边长是等于组成所述预定的矩形栅格区域的任一个栅格的边长,所述对角概率值被配置为该预设栅格相匹配的占用概率值。

进一步地,将所述预设栅格配置为位于所述预设图像模板当前覆盖的栅格区域的中心位置,再在此中心位置处截取栅格,然后将此中心位置处截取的栅格配置为所述预设栅格,用以组成所述缩小化的栅格地图,也使得所述预设栅格的占用概率值用其相邻区域内的占用概率值的平均值代替。该技术方案将缩小处理出的所述预设栅格设置为所述预设图像模板当前覆盖的九宫格区域的中心,能够让所述预设栅格的占用概率值用其八邻域内的相关占用概率值的平均值代替,而不是传统的最大概率值代替,在一定的噪声干扰程度下更具代表性。也使得所述待处理地图的边长成比例地缩小,进而缩小形成所述缩小化的栅格地图。

进一步地,当所述该预设栅格匹配的对角概率值是大于或等于预设阈值,则将所述该预设栅格的栅格值标记为1以表示相应位置处存在障碍物;当所述该预设栅格匹配的对角概率值是小于预设阈值,则将所述该预设栅格的栅格值标记为0以表示相应位置处不存在障碍物。从而精确地描述所述预设栅格对应的物理位置处存在障碍物的情况。

进一步地,所述步骤S3具体包括:当所述预设图像模板沿着行方向遍历完对应方向上分布的所有栅格区域后,确定所述预设图像模板逐块区域地覆盖过对应方向上分布的所有栅格区域,并按照所述平移步长换行一次,再在未遍历的栅格区域内继续沿着行方向遍历完对应方向上分布的所有栅格区域,如此重复,直到预设图像模板覆盖过所述待处理地图的所有栅格;或者,当所述预设图像模板沿着列方向遍历完对应方向上分布的所有栅格区域后,确定所述预设图像模板逐块区域地覆盖过对应方向上分布的所有栅格区域,并按照所述平移步长换列一次,再在未遍历的栅格区域内继续沿着列方向遍历完对应方向上分布的所有栅格区域,如此重复,直到预设图像模板覆盖过所述待处理地图的所有栅格,并组成所述缩小化的栅格地图。该技术方案利用所述预设图像模板实现逐行或逐列地遍历所述待处理地图,完成对所述待处理地图规则的划分,划分出的每个不重叠的栅格区域经过前述缩小处理后,实现所述待处理地图的线性缩小。也防止出现因随机挑选多个栅格进行平均值运算而带来的精度问题。

进一步地,若所述预设图像模板在所述待处理地图内覆盖的栅格区域的左上角的栅格的横坐标为i,该栅格区域的左上角的栅格的纵坐标为j,所述待处理地图在行方向上占据W个栅格,所述待处理地图在列方向上占据H个栅格,则相应的坐标索引范围包括:i大于或等于1,且i小于或等于W-3;j大于或等于1,且j小于或等于H-3;其中,W是大于3的正整数,H是大于3的正整数;其中,预设图像模板被配置为覆盖到3行3列的栅格区域;其中,前述的栅格都保存有其在待处理地图中的横坐标和纵坐标。

进一步地,所述栅格地图处理方法还包括:当所述预设图像模板按照平移步长在所述待处理地图上平移一次时、或所述预设图像模板从所述待处理地图的边界处开始往所述待处理地图的内部发生第一次平移之前,先读取临时缓存空间的首地址中存储的索引起始地址,再删除临时缓存空间在先缓存的栅格的信息,再从所述待处理地图内将当前需要索引的栅格的信息缓存入临时缓存空间,并刷新临时缓存空间的首地址中存储的索引起始地址,然后对当前需要索引的栅格的信息执行缩小处理,再将缩小处理的结果保存到地图存储器内;其中,当前需要索引的栅格包括左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格;栅格的信息包括栅格的横坐标、纵坐标以及该栅格的占用概率值;其中,所述预设图像模板被配置为向所述临时缓存空间传输当前覆盖的栅格区域内的需要索引的栅格的信息。

进一步地,当所述预设图像模板平移至覆盖完所述待处理地图的所有栅格之后,读取临时缓存空间的首地址中存储的索引起始地址,并从所述临时缓存空间内删除所述预设图像模板覆盖过的栅格区域以外的栅格的信息。从而保留有效的栅格信息,可以作为后续索引的坐标起始地址。

进一步地,所述预设图像模板的形状是矩形,其中,W是3的倍数,H是3的倍数;所述预设图像模板,用于将所述待处理地图等间隔划分为预设数量个子区域,预设数量是W与H的乘积与9的比值,使得缩小化的栅格地图的面积是所述待处理地图的面积的九分之一。实现:所述待处理地图成九分之一的线性缩小,可以成比例地减少栅格地图内路径搜索所需的存储量,其中,每个子区域都用于代表所述缩小化的栅格地图的一个栅格,减少地图导航大场景的约束,尽可能地提升所述缩小化的栅格地图的每个栅格在路径搜索算法中的代表性和稳定性。

一种芯片,该芯片存储有所述的栅格地图处理方法对应的程序代码。该技术方案在保证栅格地图路径规划算法的实时性和覆盖的地图图像的匹配算法的精度的前提下,减少地图的不必要栅格的计算量,按照预设图像模板实现对所述待处理地图的缩小处理,可以减少地图信息所需的存储量,适用于具有有限存储和处理能力的设备(诸如具有嵌入式系统的设备)当中,可以利用所述缩小化的栅格地图快速地找到适当路径,提高路径规划算法的实时性,让必要路径尽可能被实际使用。

进一步地,在所述芯片的内部,设置多个所述预设图像模板;多个所述预设图像模板被配置为同时在待处理地图的不同栅格区域内平移,以实现并行地对每个所述预设图像模板框定的栅格区域作缩小处理;其中,每个所述预设图像模板对应配置一个临时缓存空间,所有的临时缓存空间都与一个地图存储器相连接。发挥并行缓存数据的优势,加快缩小处理的进程。

与现有技术相比,本发明的技术效果在于使用一种预设大小的栅格遍历窗口,以滑动窗口的形式在待处理地图上平移并不重复地对实时框定的栅格区域作缩小处理,减少地图的不必要栅格的计算量,保证栅格地图路径规划算法的实时性和覆盖的地图图像的匹配算法的精度。而且,将缩小处理出的缩小化的栅格地图存入移动终端内,可以减少地图信息所需的存储量,减少所述缩小化的栅格地图的整体构建时间。

附图说明

图1为本发明一种实施例公开的一种基于模板覆盖的栅格地图处理方法的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。应当理解,下面所描述的具体实施例仅用于解释本发明,并不用于限定本发明。在下面的描述中,给出具体细节以提供对实施例的透彻理解。然而,本领域的普通技术人员将理解,可以在没有这些具体细节的情况下实施实施例。例如,电路可以在框图中显示,避免在不必要的细节中使实施例模糊。在其他情况下,为了不混淆实施例,可以不详细显示公知的电路、结构和技术。

需要说明的是,栅格地图包括指示在特定位置或区域存在障碍的概率的信息,可通过例如距离传感器(诸如红外传感器、超声波传感器或激光传感器)来获得对应的位置信息并在此基础上计算出概率信息。在这种栅格地图中,通常不考虑移动对象的大小,因此,在本发明中,无论栅格地图是否发生变化都将移动对象缩小为一点。优选地,具备一定分辨率的栅格地图是由一定数量的激光扫描点组成,具体由5cm*5cm大小的概率栅格{Pmin,Pmax]构造而成,地图在创建完成时,栅格概率小于表示Pmin该栅格位置处无障碍物,在Pmin 与Pmax之间表示未知,大于Pmax表示该栅格位置处存在障碍物。每一帧的激光扫描都会生成一组栅格,每个栅格被赋予占用概率值,如果该栅格在先前已经有概率值,则需要对该栅格的概率值进行更新。现有技术一般把地图中每个栅格的概率用其附近区域内的最大概率值代替,配置为该栅格的占用概率值,从而,直接查对应分辨率地图就可以索引得到栅格的坐标信息及其占用概率值。

针对现有技术通过抗混叠滤波的方式处理栅格地图所存在的技术缺陷,本发明一实施例公开一种基于模板覆盖的栅格地图处理方法,如图1所示,包括以下步骤:

步骤S1、读入预设图像模板,再将预设图像模板叠放在待处理地图上;其中,待处理地图是栅格地图,预设图像模板被配置为覆盖到预定的矩形栅格区域,预设图像模板是预先配置的一种滑动窗口,可以以存储空间的形式存在,比如队列,每当预设图像模板移动至待处理地图上的一个栅格区域,可以将该栅格区域内的栅格的信息入队以索引到需要的栅格,并将队列内的一部分栅格的信息作出队处理以腾出新的空间;需要说明的是,预定的矩形栅格区域在待处理地图内覆盖到A行B列的栅格区域,其中,A是大于1的正整数,B是大于1的正整数,A行B列的的栅格区域同时覆盖连续A行的栅格和连续B列的栅格以累计覆盖到A*B个栅格;当所述预设图像模板作为一种框定3×3个栅格的滑动窗口,在本实施例中作为单位滑动窗口。

步骤S2、控制预设图像模板在待处理地图上平移,并不重复地对实时框定的栅格区域作缩小处理,在本实施例中,所述预设图像模板当前一次平移所覆盖到的栅格区域与在先平移过程中所覆盖到的任意栅格区域都是没有重叠的部分,有利于控制所述待处理地图成线性的缩小;其中,待处理地图的行数是大于预定的矩形栅格区域的任一边长(该边长所代表的栅格的数量),待处理地图的列数是大于预定的矩形栅格区域的任一边长(该边长所代表的栅格的数量),则待处理地图的面积是保持大于所述预设图像模板的面积,这样一来,待处理地图才有被所述预设图像模板这一单位滑动窗口进行缩小处理的意义,避免过大的模板引入新的像素噪声干扰。

步骤S3、当预设图像模板逐块区域地覆盖过所述待处理地图后,将所有经过缩小处理的栅格区域组成缩小化的栅格地图,以实现缩小待处理地图。具体是通过重复步骤S2,控制预设图像模板逐块区域地遍历完所述待处理地图,这里的逐块区域是不出现全部重叠或部分重叠的每个预定的矩形栅格区域,预设图像模板每遍历一个预定的矩形栅格区域,则将该预定的矩形栅格区域处理为更小的栅格区域或更少的栅格,视为对所述待处理地图的一次缩小处理,缩小处理的实施主体可以是所述预设图像模板、所述预设图像模板的配置主体、或CPU;在此基础上,当预设图像模板逐块区域地覆盖过所述待处理地图后,获得多个具备代表性意义的前述更小的栅格区域或更少的栅格,再将这些更小的栅格区域或更少的栅格逐个组合成一个新的栅格地图,即所述缩小化的栅格地图,至此全面实现缩小所述待处理地图,视为所述待处理地图缩小为所述缩小化的栅格地图并保存至对应的存储空间内。

综上,前述步骤S1至步骤S3所述的实施例,使用特定行列大小的预设图像模板作为栅格的遍历窗口,以滑动窗口的形式在待处理地图上平移并不重复地对实时框定的栅格区域作缩小处理,而且,将缩小处理出的缩小化的栅格地图存入移动终端内,可以减少地图信息所需的存储量,在一些实施例中,使用A星算法搜索从相应设置的开始点到设置的目的点的导航路径,相对于在所述待处理地图进行路径规划,在为所述缩小化的栅格地图内只是使用部分的可行路径的细节,包括被划分出的自由区域和障碍区域的特定方位,且相对更加接近移动对象的;因此,通过实施前述步骤S1至步骤S3,减少地图的不必要栅格的计算量,保证栅格地图路径规划算法的实时性和覆盖的地图图像的匹配算法的精度,减少所述缩小化的栅格地图的整体构建时间。

作为一种实施例,所述步骤S2具体包括:以以所述预定的矩形栅格区域的其中一个边长为平移步长,即以所述预设图像模板的对应的栅格边长为平移步长,控制前述步骤S1读入的预设图像模板按照平移步长在所述待处理地图上进行平移;每次执行缩小处理,则控制前述预设图像模板沿着特定方向移动一个平移步长,从而所述预设图像模板每次平移所覆盖到的栅格区域与在先平移过程中所覆盖到的栅格区域是没有重叠的部分,实现不重复的执行效果。每当所述预设图像模板按照所述平移步长在所述待处理地图上平移一次,则在所述预设图像模板当前覆盖的栅格区域中,将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格执行缩小处理,具体将当前覆盖的栅格区域的四个边角处的栅格的占用概率值及坐标信息进行缩小处理,利用这四个边角处的栅格的占用概率值计算获得一个新的概率值,同时从当前覆盖的栅格区域内组合出一个栅格,则将述新的概率值与这个栅格建立匹配关系,即获得相应概率值的一个栅格,用以组成所述缩小化的栅格地图。与现有技术相比,本实施例为了对整个栅格地图执行缩小处理,在一个预设图像模板实时框定的栅格区域内,有选择地将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格这四个对称设置的栅格处理为特定概率值的一个栅格,灵活性较高,但不会存在随机挑选问题,不用逐个栅格地进行分组计算,减少机械分组的次数和计算量,从而克服现有技术对地图图像的角点处的栅格的处理存在随机性的影响。

具体地,所述将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格执行缩小处理的方法包括:在所述预设图像模板当前覆盖的栅格区域中,提取出该栅格区域的左上角的栅格的占用概率值、该栅格区域的右上角的栅格的占用概率值、该栅格区域的左下角的栅格的占用概率值、以及该栅格区域的右下角的栅格的占用概率值,其中,前述的占用概率值及对应位置的坐标信息都是预先存储好,直到被所述预设图像模板覆盖到时才被索引出来以进行计算;然后对当前提取出的四个占用概率值求平均值,获得对角概率值,在一些实施例中,在计算获得一个对角概率值后,会将左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格连同其对应的栅格信息(包括坐标信息和占用概率值)删除掉;同时,将该栅格区域当前覆盖到的所有栅格替换为一个预设栅格,具体理解为使用一个边长与原栅格相等的预设栅格替换掉该栅格区域原先覆盖到的所有栅格,而该预设栅格的边长是等于组成所述预定的矩形栅格区域的栅格的边长,同时将所述对角概率值配置为该预设栅格相匹配的占用概率值,并且删除该栅格区域当前覆盖到的所有栅格,至此确定执行过一次缩小处理,实现将一个所述预定的矩形栅格区域缩小为一个所述预设栅格,其中涉及到栅格区域的边长的线性缩小,此时,该栅格区域当前覆盖到的所有栅格被删除掉,但保留下最新替换出的所述预设栅格及其匹配的对角概率值,既可以减少地图信息所需的存储量(相对于传统的滑动窗口至少减少保存3个栅格的信息,当所述预定的矩形栅格区域是覆盖到2行2列的栅格区域),也更加灵活的控制栅格数目与地图计算精度之间的权衡。与现有技术相比,本实施例通过对所述预设图像模板当前覆盖的栅格区域的左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格对应的占用概率值求平均值,获得所述缩小化的栅格地图的对应一个栅格的占用概率值,本实施例等效于通过局部栅格区域图像内的对称的栅格的信息来实现更加简化的平均滤波处理效果,进而减少后续在所述缩小化的栅格地图组合出导航路径所需的栅格数量或缩短组合出的路径长度。

在上述实施例的基础上,为了克服现有技术对地图图像的角点处的栅格的处理存在随机性的影响,将所述预设栅格配置为位于所述预设图像模板当前覆盖的栅格区域的中心位置,此时,所述预定的矩形栅格区域是覆盖到2N+1行2N+1列的栅格区域,N是正整数;再在此中心位置处截取栅格,然后将此中心位置处截取的栅格配置为所述预设栅格,用以组成所述缩小化的栅格地图,同时也删除所述预设图像模板当前覆盖的所有栅格,只保留最新配置出的一个所述预设栅格,使得所述待处理地图的边长成比例地缩小,进而缩小形成所述缩小化的栅格地图,也减少地图信息所需的存储量。本实施例将缩小处理出的所述预设栅格设置为所述预设图像模板当前覆盖的栅格区域的中心,即前述的左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格在所述预设图像模板当前覆盖的栅格区域的对称中心,能够让所述预设栅格的占用概率值用其八邻域内的相关占用概率值的平均值代替,而不是传统的最大概率值代替,从而在一定的随机噪声干扰程度下更具代表性,因此,克服现有技术对地图图像的角点处的栅格的处理存在随机性的影响。结合前述实施例,本实施例不会随机地遍历地图图像的角点处的栅格,而是在确定所述预设图像模板当前覆盖的栅格区域的中心位置为组成所述缩小化的栅格地图的栅格的同时,按照前述的左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格的布局特征所对应的占用概率值的平均值去设置所述缩小化的栅格地图的相应栅格的占用概率值,使得组成所述缩小化的栅格地图的每个栅格不仅坐标位置特殊,而且坐标位置处配置的占用概率值也是特殊的,在删除所述预设图像模板的中心位置周围的栅格信息的前提下,保证在缩小的地图内搜索的路径的起点、终点、障碍物的定位精度。

优选地,当所述预设栅格匹配的对角概率值是大于或等于预设阈值,则将所述预设栅格的栅格值标记为1以表示相应位置处存在障碍物; 当所述预设栅格匹配的对角概率值是小于预设阈值,则将所述预设栅格的栅格值标记为0以表示相应位置处不存在障碍物。从而精确地描述所述预设栅格对应的物理位置处存在障碍物的情况。为所述缩小化的栅格地图中的预设栅格及其匹配的对角概率值赋予实际地图定位导航功能。

作为一种实施例,针对所述预设图像模板在所述待处理地图中的每次平移操作,所述步骤S3具体包括:

在所述预设图像模板沿着行方向遍历对应方向上分布的所有栅格区域的过程中,所述预设图像模板按照所述平移步长沿着X轴方向进行遍历,每一次平移都对应等效于在所述待处理地图中划分出一个A×B栅格区域,任意两次平移对应划分出的A×B栅格区域都不出现重叠区域,在此基础上,每一次平移都从对应的A×B栅格区域内获取到用于组成所述缩小化的栅格地图的一个预设栅格,从垂直于X轴方向的一条地图边界滑动遍历到垂直于X轴方向的另一条地图边界后,所述预设图像模板沿着行方向遍历对应方向上分布的所有栅格区域,则确定所述预设图像模板逐块区域地覆盖过对应方向上分布的所有栅格区域,再按照所述平移步长换行一次,实现沿着Y轴方向换行,再在未遍历的栅格区域内继续沿着行方向遍历完对应方向上分布的所有栅格区域,即所述预设图像模板按照所述平移步长沿着X轴方向进行遍历,从垂直于X轴方向的一条地图边界滑动遍历到垂直于X轴方向的另一条地图边界,并获取到用于组成所述缩小化的栅格地图的预设栅格;如此重复,直到预设图像模板覆盖过所述待处理地图的所有栅格,此时,在所述缩小化的栅格地图内描述同一环境区域所用到的栅格变少,对应组成的预设栅格所形成地图边长变小。其中,本实施例公开的A×B栅格区域是前述实施例公开的预定的矩形栅格区域在待处理地图内覆盖到A行B列的栅格区域,其中,A是大于1的正整数,B是大于1的正整数。

或者,在所述预设图像模板沿着列方向遍历对应方向上分布的所有栅格区域的过程中,所述预设图像模板按照所述平移步长沿着Y轴方向进行遍历,每一次平移都对应等效于在所述待处理地图中划分出一个A×B栅格区域,任意两次平移对应划分出的A×B栅格区域都不出现重叠区域,在此基础上,每一次平移都从对应的A×B栅格区域内获取到用于组成所述缩小化的栅格地图的一个预设栅格,从垂直于Y轴方向的一条地图边界滑动遍历到垂直于Y轴方向的另一条地图边界后,所述预设图像模板沿着列方向遍历对应方向上分布的所有栅格区域,则确定所述预设图像模板逐块区域地覆盖过对应方向上分布的所有栅格区域,再按照所述平移步长换列一次,实现沿着X轴方向换列,再在未遍历的栅格区域内继续沿着列方向遍历完对应方向上分布的所有栅格区域,即所述预设图像模板按照所述平移步长沿着Y轴方向进行遍历,从垂直于Y轴方向的一条地图边界滑动遍历到垂直于Y轴方向的另一条地图边界,并获取到用于组成所述缩小化的栅格地图的预设栅格;如此重复,直到预设图像模板覆盖过所述待处理地图的所有栅格,此时,在所述缩小化的栅格地图内描述同一环境区域所用到的栅格变少,对应组成的预设栅格所形成地图边长变小。其中,本实施例公开的A×B栅格区域是前述实施例公开的预定的矩形栅格区域在待处理地图内覆盖到A行B列的栅格区域,其中,A是大于1的正整数,B是大于1的正整数。

综上,前述实施例利用所述预设图像模板实现逐行或逐列地遍历所述待处理地图,完成对所述待处理地图规则的划分,划分出的每个不重叠的栅格区域经过前述缩小处理后,实现所述待处理地图的线性缩小。也防止出现因随机挑选多个栅格进行平均值运算而带来的精度问题。

具体实施过程中,所述栅格地图处理方法还包括:当所述预设图像模板按照平移步长在所述待处理地图上平移一次时、或所述预设图像模板在所述待处理地图开始第一次平移之前,先读取临时缓存空间的首地址中存储的索引起始地址以寻找出当前一次在所述待处理地图内索引的栅格的地址位置,其中,所述待处理地图是存储于一个特定的存储器内。然后删除临时缓存空间在先缓存的栅格的信息,若是在开始第一次平移之前删除临时缓存空间在先缓存的栅格的信息,则是进行临时缓存空间的初始化以避免从临时缓存空间内读取到地图边界外部的栅格的信息;若是在按照按照平移步长发生一次平移时删除临时缓存空间在先缓存的栅格的信息,则是避免读取到无效的栅格的信息(包括不组成所述缩小化的栅格地图的栅格)以减少地图信息的存储量。在删除临时缓存空间在先缓存的栅格的信息后,从所述待处理地图内将当前需要索引的栅格的信息缓存入临时缓存空间,并刷新临时缓存空间的首地址中存储的索引起始地址,其中,每当所述待处理地图内将当前需要索引的一个栅格的信息缓存入临时缓存空间,则将该索引的栅格的坐标换算为地址索引值,再将换算出的地址索引值刷新为所述索引起始地址,具体的换算方法涉及到坐标的跨行或跨列计算,是属于本领域技术人员所能掌握的坐标计算方法,一般是通过增加多行多列的坐标偏移量的方式实现,在此不再赘述。然后对当前需要索引的栅格的信息执行前述实施例所述的缩小处理,再将缩小处理的结果保存到地图存储器内;优选地,也将缩小处理的结果备份到所述临时缓存空间。

在本实施例中,地图存储器是为了存储所述缩小化的栅格地图而设置的可擦除的存储器;其中,当前需要索引的栅格包括左上角的栅格、右上角的栅格、左下角的栅格和右下角的栅格;栅格的信息包括栅格的横坐标、纵坐标以及该栅格的占用概率值;其中,所述预设图像模板被配置为向所述临时缓存空间传输当前覆盖的栅格区域内的需要索引的栅格的信息,优选地,所述预设图像模板可以以支持先进先出的存储空间的形式存在,队尾允许需要索引的栅格插入,队头允许需要被读取并计算的栅格删除。综上,本实施例考虑地图边界附近的栅格的信息和在先缓存的栅格的信息的影响,在确定好的相应的索引位置后,采取先删除再缓存新的栅格的信息的技术手段,仅对当前需要索引的栅格的信息进行缩小处理,减少地图信息所需的存储量。

需要说明的是,每个栅格都保存一个相匹配的地址索引值,该地址索引值是对应临时缓存空间的存储地址,也对应其占用概率值。前述缩小处理出的预设栅格(缩小处理的结果)也保存一个相匹配的地址索引值,当传输给地图存储器内时,则配置为地图存储器的地址索引值,并对应预设栅格的占用概率值。

在上述实施例的基础上,当所述预设图像模板已经覆盖过所述待处理地图的所有栅格之后,相当于所述预设图像模板按照平移步长在所述待处理地图上完成最后一次平移后,先读取临时缓存空间的首地址中存储的被实时刷新的索引起始地址以寻找出最后一次在所述待处理地图内索引的栅格的地址位置,然后只是从所述临时缓存空间内删除所述预设图像模板覆盖过的栅格区域以外的栅格的信息。然后按照前述实施例的构思,从所述待处理地图内将当前需要索引的栅格的信息缓存入临时缓存空间,并刷新临时缓存空间的首地址中存储的索引起始地址,然后对当前需要索引的栅格的信息执行缩小处理,再将缩小处理的结果保存到地图存储器内;从而保留下有效的栅格信息,可以作为后续索引的坐标起始地址的依据。

基于上述实施例,若将预设图像模板被配置为覆盖到3行3列的栅格区域,所述预设图像模板在所述待处理地图内覆盖的栅格区域的左上角的栅格的横坐标为i,该栅格区域的左上角的栅格的纵坐标为j,所述待处理地图在行方向上占据W个栅格,所述待处理地图在列方向上占据H个栅格,则相应的坐标索引范围包括:i大于或等于1,且i小于或等于W-3,表示所述预设图像模板的左上角的栅格可以从原点处沿着横坐标轴平移至横坐标为W-3的位置处,当平移至横坐标为W-3的位置处时,所述预设图像模板的右上角的栅格已经到达所述待处理地图的一条边界;j大于或等于1,且j小于或等于H-3,表示所述预设图像模板的左上角的栅格可以从原点处沿着纵坐标轴平移至纵坐标为H-3的位置处,当平移至纵坐标为H-3的位置处时,所述预设图像模板的右上角的栅格已经到达所述待处理地图的一条边界;其中,W是大于3的正整数,H是大于3的正整数;优选地,i和j都是整数,以实现逐个栅格地遍历。需要说明的是,前述的栅格都保存有其在待处理地图中的横坐标和纵坐标。该实施例限定所述预设图像模板在所述待处理地图内的坐标索引范围,具体是将该坐标索引范围限定于所述待处理地图的地图坐标系的原点和边界之间,其中,X轴和Y轴都设置为所述待处理地图的边界;该实施例设置的坐标索引范围,用于控制所述预设图像模板保持在所述待处理地图内平移,防止所述预设图像模板越过所述待处理地图的边界,也实现所述待处理地图的边长线性地缩小至原来的三分之一,即所述预设图像模板当前覆盖的栅格区域内的坐标乘三分之一。

优选地,所述预设图像模板的形状是矩形,其中,W是3的倍数,H是3的倍数;具体地,所述预设图像模板,用于将所述待处理地图等间隔划分为预设数量个子区域,预设数量是W与H的乘积与9的比值,使得所述缩小化的栅格地图的面积是所述待处理地图的面积的九分之一,从而实现:所述待处理地图成九分之一的线性缩小,可以成比例地减少栅格地图内路径搜索所需的存储量,其中,每个子区域都用于代表所述缩小化的栅格地图的一个栅格,减少地图导航大场景的约束,尽可能地提升所述缩小化的栅格地图的每个栅格在路径搜索算法中的代表性和稳定性,进而可以在丢失部分障碍物信息的栅格地图中规划出必要路径,该必要路径在实际使用的过程中能够穿过障碍或障碍区域。

一种芯片,该芯片存储有所述的栅格地图处理方法对应的程序代码。该技术方案在保证栅格地图路径规划算法的实时性和覆盖的地图图像的匹配算法的精度的前提下,减少地图的不必要栅格的计算量,按照预设图像模板实现对所述待处理地图的缩小处理,可以减少地图信息所需的存储量,适用于具有有限存储和处理能力的设备(诸如具有嵌入式系统的设备)当中,可以利用所述缩小化的栅格地图快速地找到适当路径,提高路径规划算法的实时性,让必要路径尽可能被实际使用。

进一步地,在所述芯片的内部,设置多个所述预设图像模板;多个所述预设图像模板被配置为同时在待处理地图的不同栅格区域内平移,以实现并行地对每个所述预设图像模板框定的栅格区域作缩小处理;其中,每个所述预设图像模板对应配置一个临时缓存空间,所有的临时缓存空间都与一个地图存储器相连接。发挥并行缓存数据的优势,加快缩小处理的进程。

上述实施例中所提到的“上(前)”、“下(后)”、“左”和“右”等方向字词,如无特别说明,则是指代附图的上下左右等方向,竖直和水平则是指代附图的竖直方向和水平方向。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。这些程序可以存储于计算机可读取存储介质(比如ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质)中。该程序在执行时,执行包括上述各方法实施例的步骤。最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

相关技术
  • 一种基于模板覆盖的栅格地图处理方法及芯片
  • 一种栅格地图及基于栅格地图的多AGV动态路径规划方法
技术分类

06120113824195