自动构建路网的室内地图生成的方法
技术领域
本发明涉及图像识别领域,具体涉及一种自动构建路网的室内地图生成的方法。
背景技术
各类电子地图应用的出现,为人们的生产、生活带来了极大的便利。当前地图生成技术,往往使用SHP格式数据进行地图绘制。SHP文件一般由存储地理要素几何图形的主文件*.shp、存储图形要素与属性信息索引的索引文件*.shx和存储要素信息属性的 dBase表文件*.dbf构成。SHP文件通常以(x,y)方式标定地理坐标,一般X对应经度,Y对应纬度。
在室内导航地图领域,路网的准确构建尤为重要。现有的路网构建方法分为两种:一种是直接人工利用GPS定位或其他测绘设备采集一连串的点,连接起来成为一个路网,这类方法精度取决于设备的好坏,能取得较高精度的设备往往价格高昂,且人力投入较大;另一种是在SHP文件提供的数据上构建路网,因为SHP文件往往无法直接表达完整的路网信息,所以借助外部工具手工绘制路网,标定关键点,这类方法要确保路网的精准,往往需要专业人员进行绘制,实现繁琐。而且两类方法都不利于地图的动态修改。
发明内容
为解决现有技术的地图路网构建技术存在投入较大、实现繁琐、不便于动态修改等技术问题,本发明提供一种解决上述问题的自动构建路网的室内地图生成的方法。
一种自动构建路网的室内地图生成的方法,包括以下步骤:
步骤一:提供一可行区域地图;
步骤二:选择所述可行区域地图内任一边界,取一个距离所述边界的长度为M的点,作为起始点P1;
步骤三:从所述起始点P1开始,沿平行于所述可行区域地图的边界的方向,以长度N为间隔,连续取点,直至回到所述起始点P1;
从而获得一组闭环点集P=(P1,P2,……Pi);
步骤四:从所述起始点P1开始,对所述闭环点集P内所有点,依次求相邻二个点之间的斜率;
同时,对所述闭环点集P内所有点,依次判定周围N范围内其他点的数量;
步骤五:若Pi和Pi+1之间的斜率,与Pi+1和Pi+2之间的斜率相比,产生了变化,则判定Pi+1为关键点;
若Pi周围N范围内仅一个其他点,则判定Pi为关键点;
步骤六:将相邻的所述关键点及之间的点作为一条路径,从而获得一组路径集合R=(R1,R2,……Ri);
步骤七:对所述路径集合R中的每一路径,分别进行求拟合曲线的操作,获得多条相互连接的路线,即为可用于机器人导航的路网。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,设运行于所述可行区域地图中的机器人的宽度为d,运行时应保持的安全距离为l;
M=(l+d/2),N=(k+d/2),k>l。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,所述步骤三中,每取一个点,同时判定所取点周围M范围内是否存在其他点;
若不存在,则继续取下一个点;
若存在,则调整当前坐标值以及M范围内另一点的坐标值为二者的中值,后再取下一个点。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,所述步骤五及所述步骤六中,若多项斜率呈连续变化,则直接将连续变化的多项斜率所对应的点作为一条路径。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,所述步骤二至所述步骤四中,还对所述可行区域地图内的独立障碍物分别进行取点操作:
针对每一独立障碍物,以同步骤二的方式,分别取起始点P11、起始点P21、……起始点Pn1;
从所述起始点P11、所述起始点P21等位置开始,分别沿平行于对应的独立障碍物的边界的方向,以长度N为间隔,连续取点,直至回到所述起始点P11、所述起始点P21等位置;
最终获得闭环点集P1=(P11,P12,……P1i)、闭环点集P2=(P21,P22,……P2i)、……闭环点集Pn=(Pn1,Pn2,……Pni)。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,所述步骤五至所述步骤六中,同理对所述闭环点集P1、所述闭环点集P2等,分别进行求斜率、关键点判定的操作;
最终获得路径集合R1=(R11,R12,……R1i)、路径集合R2=(R21,R22,……R2i)、……路径集合Rn=(Rn1,Rn2,……Rni)。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,所述步骤七中,还对所述路径集合R1、所述路径集合R2等中的每一路径,分别进行求拟合曲线的操作,从而获得多项相互断开的路网,每一所述路网均包含多条相互连接的路线。
在本发明提供的自动构建路网的室内地图生成的方法的一种较佳实施例中,对于所述路径集合R1、所述路径集合R2等出自独立障碍物的路径,取计算斜率时所获得关键点,将关键点分别与所述闭环点集P中最近的点相连,从而获得连接多项路网的整体路网。
相较于现有技术,本发明提供的所述自动构建路网的室内地图生成的方法具有以下有益效果:
一、所述自动构建路网的室内地图生成的方法直接利用矢量模型,自动构建出了含有与通行物体大小相关的路网的室内地图。在保证较好的绘制精度的情况下,大大降低了制图的投入。
二、所述自动构建路网的室内地图生成的方法直接利用矢量模型,自动构建出了含有与通行物体大小相关的路网的室内地图。便于直接通过修改参数实现目标路网的进行动态修改。
三、所述自动构建路网的室内地图生成的方法在足够宽阔的区域会生成两条并行的通路,使之能有效用于多目标室内导航和路径规划领域。
附图说明
图1是本发明提供的自动构建路网的室内地图生成的方法中进行取点及关键点判定的操作的结构示意图;
图2是图1的局部放大图;
图3是本发明提供的自动构建路网的室内地图生成的方法中进行路网构建的操作的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。
所述自动构建路网的室内地图生成的方法包括以下步骤:
请同时参阅图1和图2,其中图1是本发明提供的自动构建路网的室内地图生成的方法中进行取点及关键点判定的操作的结构示意图;图2是图1的局部放大图。
步骤一:提供一可行区域地图1,以及于所述可行区域地图1内运行的导航机器人2。
所述可行区域地图1包括一矩形的室内地图11,还包括二个矩形的障碍物12。一所述障碍物12设于所述室内地图一角,与所述室内地图11的边界抵接,另一所述障碍物12设于所述室内地图11中部,不与边界接触。
所述导航机器人2的宽度d为20 cm,运行时应与墙面保持的安全距离l为20 cm。
步骤二:选择所述室内地图11内的一条边界,取一个距离所述边界的长度为M=30cm的点,作为起始点P1。
选择所述室内地图11内的不与边界接触的所述障碍物12的一条边外缘,取一个距离所述外缘的长度为M=30 cm的点,作为起始点P11。
步骤三:从所述起始点P1开始,沿顺时针,以平行于所述室内地图11的边界的方向,以长度N=40 cm为间隔,连续取点,直至回到所述起始点P1。
从所述起始点P11开始,沿顺时针,以平行于所述障碍物12的外缘的方向,以长度N=40 cm为间隔,连续取点,直至回到所述起始点P1。
在取点的同时,判定所取点周围30 cm范围内是否存在其他点。
如取至点P29时,周围M=30 cm范围内存在P28,说明通道宽度不足,无需设置来回两条路径。
则调整P29的坐标为与P28的坐标的中值,即P29’。后再取下一个点。
最终获得闭环点集P=(P1,P2,……P33);
闭环点集P1=(P11,P12,……P120)。
步骤四:从所述起始点P1开始,对所述闭环点集P内所有点,依次求相邻二个点之间的斜率。同时,对所述闭环点集P内所有点,依次判定周围40 cm范围内其他点的数量。
从所述起始点P11开始,对所述闭环点集P1内所有点,依次求相邻二个点之间的斜率。同时,对所述闭环点集P1内所有点,依次判定周围40 cm范围内其他点的数量。
步骤五:经处理得,P6、P12、P20、P31’处的斜率产生变化,P29’周围40 cm范围内仅一个其他点,因此均判定为关键点。
P13、P17、P113、P117处的斜率产生变化,判定为关键点。
请参阅图3,是本发明提供的自动构建路网的室内地图生成的方法中进行路网构建的操作的结构示意图。
步骤六:由此获得路径集合R=(R1,R2,……R5)。
其中R1为P6至P12;R2为P12至P20;R3为P20至P31’;R4为P31’至P29’;R5为P31’至P6。
路径集合R1=(R11,R12,……R14)。
其中R11为P13至P17;R12为P17至P113;R13为P113至P117;R14为P117至P13。
步骤七:对所述路径集合R和所述路径集合R1中的每一路径,分别进行求拟合曲线的操作,从而获得多条路线。
其中从所述路径集合R中获取的各条路线相互连接,形成路网W。
从所述路径集合R1中获取的各条路线相互连接,形成路网W1。
对于所述路网W1,取所述步骤五中获取的关键点P13、P17、P113、P117,分别计算于所述闭环点集P中,距离上述关键点最近的点,并分别将二者连接。
从而获得一项完整的,可用于机器人导航的整体路网。
相较于现有技术,本发明提供的所述自动构建路网的室内地图生成的方法具有以下有益效果:
一、所述自动构建路网的室内地图生成的方法直接利用矢量模型,自动构建出了含有与通行物体大小相关的路网的室内地图。在保证较好的绘制精度的情况下,大大降低了制图的投入。
二、所述自动构建路网的室内地图生成的方法直接利用矢量模型,自动构建出了含有与通行物体大小相关的路网的室内地图。便于直接通过修改参数实现目标路网的进行动态修改。
三、所述自动构建路网的室内地图生成的方法在足够宽阔的区域会生成两条并行的通路,使之能有效用于多目标室内导航和路径规划领域。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围之内。