![](../../asset/images/user/BgImg_default.jpg)
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
最近使用了一下ROS中非常经典的导航包navigation。并通过自己的激光雷达以及相机里程计驱动了自己的小车在室内进行简单的定位以及导航。在此记录一下以免后期忘记。1、导航包安装ROS中navigation导航包可以通过GitHub上下载:https://github.com/ros-planning/navigationhttps://github.com/ros-planning/navig
最近在看cartographer算法,其中的闭环优化使用到了branch and bound(分支定界)算法,这里简单记录一下:简单的说,分支定界算法的主要思想是用数的节点表示所有可能的子集,根节点表示所有可能的解,叶节点表示所有的解。...
TebLocalPlannerROS::computeVelocityCommands作为teb算法与move_base算法的接口函数,是作为teb算法的重点部分去分析的,这一节先看该算法的前半部分,也就是局部路径规划前的数据处理部分,这部分算法的基本思路如下:
![文章图片](https://img-blog.csdnimg.cn/img_convert/cf52fbe57e404f30babcdda6f1ef2c08.png)
在最近学习cartographer算法的时候,发现源码中大量的使用了std::shared_ptr与std::make_unique,对于这些东西之前不是很了解,为了更好的理解源代码,因此简单学习了一下这块内容的使用,在这里简单记个笔记。
A*算法最早于1964年在IEEE Transactions on Systems Science and Cybernetics中的论文《A Formal Basis for the Heuristic Determination of Minimum Cost Paths》中首次提出。其属于一种经典的启发式搜索方法,所谓启发式搜索,就在于当前搜索结点往下选择下一步结点时,可以通过一个启发函数来
![文章图片](https://img-blog.csdnimg.cn/99566a11d2c8454d9d08792d902fa459.png)
在写程序的过程中,有时候需要对程序中的一些参数或者变量在本地读取、存储以及修改等,因此掌握一下C++对于本地文件的一些操作还是挺有必要的。
Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(
![文章图片](https://img-blog.csdnimg.cn/8959a6fd0f204d598622646bb0bff970.png)
Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(