一种躲避障碍物寻找道路的方法与流程

文档序号:15378148发布日期:2018-09-07 23:42阅读:2364来源:国知局

本发明涉及一种寻找道路的方法,尤其涉及一种躲避障碍物寻找道路的方法。



背景技术:

目前,随着导航技术的普及,人们可借助手机、电脑等便携式设备设置出发点和目的地,从而进行路径规划。现有的技术方法是,利用空间位置,寻找距离目的地附近的道路,包括用于车辆通行和行人通行的道路。当目的地和附近道路之间存在障碍物以至于无法直接到达时,该道路无效并且可能存在安全隐患。例如,目的地和附近的道路之间存在的墙壁、栅栏或者河流等不可跨越的障碍物,导致导航至该道路以后,可能无法安全顺利的到达目的地点。

针对现有技术中存在的问题,提供一种躲避障碍物寻找道路的方法具有重要意义。



技术实现要素:

为解决上述问题,本发明提供一种躲避障碍物寻找道路的方法。

为实现上述目的,本发明的躲避障碍物寻找道路的方法,包括以下步骤:步骤一,确定目地的的位置,并以所述目地的为圆心,构造一个圆;步骤二,判断所述圆是否与道路或障碍物相交,若所述圆与道路或障碍物均不相交,则扩大所述圆的半径,直到所述圆与任意道路或障碍物相交;步骤三,若所述圆只与道路相交,则构造所述目地的到所述道路的最短距离的直线,所述道路为目标道路,寻找道路结束;若所述圆只与障碍物相交,则继续扩大所述圆的半径,直到所述圆同时与障碍物和道路相交;步骤四,构造所述目地的到所述道路的最短距离的直线,若所述直线与所述障碍物没有交集,则所述道路为目标道路,寻找道路结束;若所述直线与所述障碍物存在交集,则构造所述目地的与所述障碍物的两条切线;步骤五,若所述两条切线的切点到目的地的距离均大于所述圆的半径,则放弃所述道路和所述障碍物,重新执行步骤二;若所述两条切线的切点中存在到目的地的距离小于所述圆的半径的切点,则构造该切点到所述道路的最短距离的直线,并记录所有所述直线;步骤六,判断所述直线与所述障碍物之间是否有交集,若不存在交集,则将所述道路标记为一条可能的目标道路;若存在交集,则所述直线被所述障碍物打断为多条线段,分别包括障碍物内线段和障碍物外线段;步骤七,计算所述障碍物外线段的长度并记录;步骤八,计算所述障碍物内线段中所述障碍物与所述障碍物内线段相交的交点之间障碍物部分障碍物轮廓的曲线的长度,并以最小长度作为所述障碍物轮廓的曲线的长度;步骤九,计算所有所述直线的长度,所述直线的长度为所述障碍物外线段的长度和所述障碍物内线段的长度的和,并将所述道路标记为可能的目标道路;步骤十,比较所有到达所述可能的目标道路的所述直线的长度,选择长度最小的一条作为目标道路,寻找道路结束;

进一步地,所述步骤五中,放弃所述道路和所述障碍物具体为仅将所述圆内部分的所述道路和所述障碍物的排除;

进一步地,所述步骤十中,若存在两条或两条以上长度相等且最小的所述可能的目标道路,则将所述两条或两条以上所述可能的目标道路皆作为目标道路。

本发明所述的躲避障碍物寻找道路的方法的路径规划的第一步是为起始点和目的地寻找最近的道路。本发明所述方法不仅与道路之间存在拓扑关系,还与障碍物之间存在关联关系。现实中起点到道路、道路到终点之间可能存在河流、绿化带、墙壁、栅栏等不可通行的障碍物,本发明可以有效规避因为遇到障碍物而导致最后几十米甚至更短的距离无法到达的情况。提高路径规划的质量。本设计在最基本的电子地图模型的基础上,依靠算法提高路径规划质量,降低潜在风险。

附图说明

图1为本发明所述方法的流程图;

图2为本发明所述实施例1的示意图。

具体实施方式

下面,结合附图,对本发明的结构以及工作原理等作进一步的说明。

如图1所示,图1为本发明所述方法的流程图,本发明所述方法是以目的地为起点寻找道路,并在寻找道路的过程中根据躲避目的地附近的障碍物来确定到目的地最合适的道路。所述方法具体包括以下步骤:

步骤一s1,确定目地的的位置,并以所述目地的为圆心,构造一个圆;

步骤二s2,判断所述圆是否与道路或障碍物相交,若所述圆与道路或障碍物均不相交,则扩大所述圆的半径,直到所述圆与任意道路或障碍物相交;

步骤三s3,若所述圆只与道路相交,则构造所述目地的到所述道路的最短距离的直线,所述直线为目标道路,寻找道路结束;若所述圆只与障碍物相交,则继续扩大所述圆的半径,直到所述圆同时与障碍物和道路相交;

步骤四s4,构造所述目地的到所述道路的最短距离的直线,若所述直线与所述障碍物没有交集,则所述直线为目标道路,寻找道路结束;若所述直线与所述障碍物存在交集,则构造所述目地的与所述障碍物的两条切线;

步骤五s5,若所述两条切线的切点到目的地的距离均大于所述圆的半径,则放弃所述道路和所述障碍物,重新执行步骤二;若所述两条切线的切点中存在到目的地的距离小于所述圆的半径的切点,则构造该切点到所述道路的最短距离的直线,并记录所有所述直线;所述放弃所述道路和所述障碍物具体为仅将所述圆内部分的所述道路和所述障碍物的排除;

步骤六s6,判断所述直线与所述障碍物之间是否有交集,若不存在交集,则将所述直线标记为一条可能的目标道路;若存在交集,则所述直线被所述障碍物打断为多条线段,分别包括障碍物内线段和障碍物外线段;

步骤七s7,计算所述障碍物外线段的长度并记录;

步骤八s8,计算所述障碍物内线段中所述障碍物与所述障碍物内线段相交的交点之间障碍物部分障碍物轮廓的曲线的长度,并以最小长度作为所述障碍物轮廓的曲线的长度;

步骤九s9,计算所有所述直线的长度,所述直线的长度为所述障碍物外线段的长度和所述障碍物内线段的长度的和,并将所述道路标记为可能的目标道路;

步骤十s10,比较所有到达所述可能的目标道路的所述直线的长度,选择长度最小的一条作为目标道路,寻找道路结束,若存在两条或两条以上长度相等且最小的所述可能的目标道路,则将所述两条或两条以上所述可能的目标道路皆作为目标道路。

如图2所示,图2为本发明所述实施例1的示意图,在本发明优选的实施例1中,所述目地的位置为o所在位置,具体通过所述目地的o的位置躲避障碍物寻找道路的方法的步骤如下:步骤一,确定目地的o的位置,并以所述目地的o为圆心构造一个圆;

步骤二及步骤三,判断所述圆是否与道路或障碍物相交,若所述圆与道路或障碍物均不相交,则扩大所述圆的半径,直到所述圆与任意道路或障碍物相交,当所述圆的半径与障碍物湖泊相交时,因为所述圆只与障碍物湖泊相交,并未与道路相交,则继续扩大所述圆的半径;当圆的半径长度达到圆1的半径长度时,所述圆1同时与障碍物河流,障碍物湖泊及道路1相交,则进入步骤四;

步骤四,构造所述目地的o到所述道路3的最短距离的直线,因为所述直线与所述障碍物河流之间存在交集,则构造所述目地的o与所述障碍物河流的两条切线od和oe,经计算可知,所述两条切线od和oe的长度均大于所述圆1的半径,则放弃所述圆1内的道路1和所述障碍物河流,进一步扩大所述圆的半径;

步骤五,当所述圆的半径长度达到圆2的半径长度时,发现了另一条道路2,构造所述目地的o与所述障碍物湖泊的两条切线oa和ob,经计算,所述两条切线oa和ob的长度均小于所述圆2的半径,则构造该切点到所述道路的最短距离的直线af和bg,并记录和计算af和bg的长度及与障碍物湖泊的关系;同时,还发现所述障碍物河流延伸段的切线oe的长度也小于所述圆2的半径,则同时构造该切点到所述道路的最短距离的直线eh,并记录和计算eh的长度及与障碍物河流的关系;

步骤六,因为所述直线af和bg均与障碍物湖泊有交集,所以所述直线af和bg均被障碍物湖泊打断成多条直线,所述直线af由直线af’和直线f’f组成,所述直线af’为障碍物内线段,所述直线f’f为障碍物外线段,所述直线bg由直线bg’和直线g’g组成,所述直线bg’为障碍物内线段,所述直线g’g为障碍物外线段;同时,所述直线eh与障碍物可流有交集,则所述直线eh由障碍物内线段eh’和障碍物外线段h’h组成;

步骤七和步骤八,计算直线af中,直线f’f的距离及直线af’两个端点a和f’相连接的所述障碍物湖泊的轮廓的曲线af’的长度,并以最小长度作为所述障碍物湖泊的轮廓的曲线af’的长度;同理计算得直线bg中,直线g’g和所述障碍物湖泊的轮廓的曲线bg’的长度;同理计算直线eh中,直线h’h和所述障碍物河流的轮廓的曲线eh’的长度;

步骤九,计算所述曲线af’、直线f’f和切线oa的距离和1、所述曲线bg’、直线g’g和切线ob的距离和2、所述曲线eh’、直线h’h和切线oe的距离和3;

步骤十,在道路2中,比较距离和1、距离和2和距离和3的长度,得出f点到目的地o的距离最短,由此,选择道路2作为目标道路,并且细化选择道路2中的f点为目标道路中剧目的地o最短距离点,寻路结束。

以上,仅为本发明的示意性描述,本领域技术人员应该知道,在不偏离本发明的工作原理的基础上,可以对本发明作出多种改进,这均属于本发明的保护范围。

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