当前位置:网站首页>【路径规划】使用垂距限值法与贝塞尔优化A星路径
【路径规划】使用垂距限值法与贝塞尔优化A星路径
2022-07-07 21:52:00 【龙猫略略略】
在之前使用通用的A*算法来规划出路径之后,可以发现路径上其实是有许多的冗余点的,如下图所示:
上图中可以明显看出有一些折弯点是冗余的,因此本节内容就介绍使用垂距限值法来优化冗余点。
垂距限值法
垂距限值法的思想也是比较简单的,概括一下就是:计算当前节点到上节点与下节点连线的距离,超过一定的阈值就从总集合中删除当前点。总体思想就如它的名字一样。
这里我写成了一个函数Vertical_distance_limit:
当然,此函数中我又封装了一个函数,即计算垂距的函数compute_vertical_distance
垂距计算
关于垂距计算,我们可以使用向量法,如下图所示:
使用向量法计算垂距的步骤可以按照如下来进行:
1) 先计算向量last_to_next的单位向量u_last_to_next
2) 计算向量last_to_pos,之后计算last_to_pos与向量u_last_to_next的点乘,即为last_to_pos到向量u_last_to_next上的投影长度L
3) 使用向量u_last_to_next乘以L即为向量last_to_closest
4) 使用last的坐标加上last_to_closest即可求出closest的坐标
5) 之后就可以求出pos与closest的距离
使用垂距限值法的效果
在增加了垂距优化后就可以得到如下的效果:
上图中红色连线点为初始的A*算法路径点,绿色连线点为优化后的路径点
使用五阶贝塞尔优化路径
在优化了路径后,我们可以进一步使用贝塞尔曲线规划出一条更平滑的曲线:
增加运动轨迹模型
之后我们可以按照之前做RRT那样,增加速度S曲线的运动轨迹模型,最后的效果就是这样的:
A*算法+垂距限值法+贝塞尔+运动模型轨迹
边栏推荐
- SAP HR reward and punishment information export
- B_QuRT_User_Guide(36)
- Progress broadcast | all 29 shield machines of Guangzhou Metro Line 7 have been launched
- 【7.5】15. Sum of three numbers
- Interface
- SRM supplier cloud collaborative management platform solution for building materials industry to realize business application scalability and configuration
- Anxin vb01 offline voice module access intelligent curtain guidance
- Svn relocation
- ESP at installation esp8266 and esp32 versions
- Windows set redis to start automatically
猜你喜欢
Svn relocation
Three questions TDM
进度播报|广州地铁七号线全线29台盾构机全部完成始发
Anxinco esp32-a1s development board is adapted to Baidu dueros routine to realize online voice function
2021icpc Shanghai h.life is a game Kruskal reconstruction tree
B_QuRT_User_Guide(38)
Idea automatically generates serialVersionUID
SAP HR奖罚信息导出
[stm32+esp8266 connects to Tencent cloud IOT development platform 3] stm32+esp8266-01s dynamically registers devices on Tencent cloud (at instruction mode) -- with source code
ASP. Net core middleware request processing pipeline
随机推荐
Anxin can internally test offline voice module vb-01 to communicate with esp-c3-12f
Caip2021 preliminary VP
IDEA 2021.3. X cracking
B_QuRT_User_Guide(40)
Three questions TDM
Windows set redis to start automatically
Explain
B_QuRT_User_Guide(36)
Have all the fresh students of 2022 found jobs? Is it OK to be we media?
Access database query all tables SQL
Interface
UE4_ Ue5 panoramic camera
UE4_ Use of ue5 blueprint command node (turn on / off screen response log publish full screen display)
SQL database execution problems
Senior programmers must know and master. This article explains in detail the principle of MySQL master-slave synchronization, and recommends collecting
2022注册测绘师备考开始 还在不知所措?手把手教你怎么考?
C inheritance and interface design polymorphism
LM12丨Rolling Heikin Ashi二重K线滤波器
The file format and extension of XLS do not match
欢聚时代一面