本发明专利技术属于路径规划技术领域,涉及一种三维表面上最短路径的计算方法及其用途。该方法包括:(1).提取初始路径γ
The calculation method and application of the shortest path on three-dimensional surface independent of spatial subdivision
【技术实现步骤摘要】
与空间剖分无关的三维表面上最短路径的计算方法及其用途
本专利技术属于路径规划
,涉及一种三维表面上最短路径的计算方法及其用途。
技术介绍
在给定光滑的表面,可以通过使用最小化总长度来计算两个给定点之间的最短路径。目前在模型表面上计算最短路径的方法有很多:精确算法:CH、ICH、VTP;全局近似算法:FMM、Dijkstra;局部近似算法:Martínez等人的算法和Liu等人的算法。对于精确算法来说:虽然能够得到精确的路径,但是计算时间较长,人们想要以较少的时间成本代价来得到较为精确的路径,所以有了之后的全局近似路径,可以得到一点到模型上任意一点的最短路径。后来又有了专门计算两点之间最短路径的局部近似算法。但上述的这些近似算法首先都是基于网格表面的,对于其他形式的三维模型不能解决;其次它们的时间成本还是有点高,而且精度不够。造成这些的问题可能是:三角网格质量的好坏,网格模型的大小、优化目标函数的不同等。
技术实现思路
本专利技术的目的是为了解决三维模型表面两点之间的最短路径问题,提供一种新的算法,该算法把优化的目标函数从路径的总长度改为每一段路径的平方之和,使得可以通过较少地迭代次数得到比较好的结果。本专利技术实现其目的,采用的技术方案是:与空间剖分无关的三维表面上最短路径的计算方法,包括:1.提取初始路径γ0(p,q)中的顶点其中:p=x0,q=xn+1;2.计算目标函数ε=∑i||xi-xi+1||2;3.计算梯度函数:4.设置梯度阈值∈;当则:把投影到表面M上,得到新的点返回步骤(2)进入迭代循环;当时,循环结束;5.把整条路径p→x1→x2…xn→q投影在表面M上,得到最终路径γ*(p,q)。作为本专利技术的一种优选方式,所述梯度阈值∈=10-6。作为本专利技术的一种优选方式,所述的初始路径采用Dijkstra算法计算得到。本专利技术还提供了一种上述方法的应用,即该方法在环编模拟和机器平滑轨迹规划中的应用。本专利技术的方法,具有的有益效果是:相比于精确算法和其他一些近似算法来说:在保证精度的前提下,本专利技术的算法通过较少次数的迭代即可得到近似精确算法的结果,大大缩短算法时间,降低时间成本;该算法不仅仅局限于网格表面,还能扩展到点云和隐式曲面等其他表达形式的三维模型上,如环编模拟和机器人技术的平滑轨迹规划,都能够较好地得到最优的近似路径。附图说明图1是本专利技术实施例中的方法流程示意图;图2是本专利技术实施例中初始路径示意图;图3是采用实施例提供的方法优化迭代5次后得到的路径示意图;图4是采用实施例提供的方法优化迭代11次后得到的路径示意图;图5是采用实施例提供的方法得到的最终路径示意图;图6是本专利技术实施例优化过程中的目标函数值的变化情况和实际路径总长度的变化情况对比;其中(a)为实施例中目标函数值的变化曲线,(b)为实际路径总长度的变化曲线,Groundtruth表示精确路径;图7是本专利技术实施例的方法与其他算法比较示意图;其中,(a)为本专利技术方法与Dijkstra算法和快速行进算法FMM精度误差比较;(b)为三种算法迭代次数比较;图8是本专利技术实施例的方法在其他模型表面的应用示意图;图9是点云上,采用本专利技术实施例的方法与其他方法得到的结果对比;图10是隐式曲面上,采用本专利技术实施例的方法与其他方法得到的结果对比;图11是本专利技术实施例的方法环编应用示意图;图12是本专利技术实施例的方法应用于机器人技术的平滑轨迹规划示意图;其中,(a)和(b)分别为λ=0和λ=5的平滑结果。具体实施方式为了便于理解本专利技术,下面结合附图和具体实施例,对本专利技术进行更详细的说明。附图中给出了本专利技术的较佳的实施例。但是,本专利技术可以以许多不同的形式来实现,并不限于本说明书所描述的实施例。相反地,提供这些实施例的目的是使对本专利技术的公开内容的理解更加透彻全面。实施例本实施例提供的是以pig的模型为例,通过pig模型上最短路径的计算过程来对本专利技术的方法进行详细的说明和介绍,流程如图1所示,具体步骤如下:1、首先给定pig的模型,及初始两点p(-0.257169,0.145227,0.0906147),q(0.0898158,-0.033765,0.100527),利用Dijkstra算法得到一条初始路径(p,x1,x2,x3,x4,x5,x6,x7,x8,x9,q),如图2所示,中间点的坐标分别见表1。表1初始路径中各点的坐标X坐标Y坐标Z坐标x1-0.230310.1243160.0922134x2-0.2006380.1280250.0825575x3-0.1678970.1048750.0850514x4-0.1675770.07859240.0835803x5-0.1268420.04936830.0798716x6-0.06890440.01745790.0743081x70.00501995-0.01560320.0671459x80.0517023-0.02500350.0755871x90.0673058-0.03197450.09464352、计算目标函数ε=∑i||xi-xi+1||2;按照公式代入计算初始目标函数值ε=0.0215367。3、计算梯度函数:初始梯度向量模长为0.176486。4、设置梯度阈值∈=10-6;j=1时,因此,得到一组新的点,把该新点投影到pig的模型表面上;并返回到步骤2往下执行,进入迭代循环,优化迭代5次之后,得到变量点的坐标分别见表2。表2经过5次迭代得到的变量点的坐标X坐标Y坐标Z坐标x1-0.2287880.1267090.0910429x2-0.1997240.1081390.0863118x3-0.1647870.08749530.0843528x4-0.1304220.06721260.0841797x5-0.09290360.04956460.0821085x6-0.0582042
...
【技术保护点】
1.与空间剖分无关的三维表面上最短路径的计算方法,其特征在于,包括:/n(1).初始路径γ
【技术特征摘要】
1.与空间剖分无关的三维表面上最短路径的计算方法,其特征在于,包括:
(1).初始路径γ0(p,q)中的顶点其中:p=x0,q=xn+1;
(2).计算目标函数ε=∑i||xi-xi+1||2;
(3).计算梯度函数:
(4).设置梯度阈值∈;
当时,j=1,2,3,……,j+1;则:
把投影到表面M上,得到新的点返回步骤(2)进入迭代循环;
当时,循环结束;
(5).把整条路径p→x1→x2…xn→q投影在表面上,得到最终路径γ*(p,q)。
【专利技术属性】
技术研发人员:袁娜,王培辉,曹路明,徐剑,辛士庆,陈双敏,贺英,王文平,
申请(专利权)人:山东大学,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。