python机器人算法_日本机器人工程师: Python 必备 50 种算法(附解析)

武松上山打了虎2020-04-29 22:18:46

本文是一些机器人算法(特别是自动导航算法)的Python代码合集。

其主要特点有以下三点:选择了在实践中广泛应用的算法;依赖最少;容易阅读,容易理解每个算法的基本思想。希望阅读本文后能对你有所帮助。

前排友情提示,文章较长,建议收藏后再看,项目地址在文末,记得点个“好看”哦。目录

一、环境需求

二、怎样使用

三、本地化

3.1扩展卡尔曼滤波本地化

3.2 无损卡尔曼滤波本地化

3.3粒子滤波本地化

3.4直方图滤波本地化

四、映射

4.1高斯网格映射

4.2光线投射网格映射

4.3 k均值物体聚类

4.4圆形拟合物体形状识别

五、SLAM

5.1 迭代最近点匹配

5.2 EKF SLAM

5.3 FastSLAM 1.0

5.4FastSLAM 2.0

5.5基于图的SLAM

六、路径规划

6.1 动态窗口方式

6.2基于网格的搜索迪杰斯特拉算法

A*算法

势场算法

6.3模型预测路径生成路径优化示例

查找表生成示例

6.4 状态晶格规划均匀极性采样(Uniform polar sampling)

偏差极性采样(Biased polar sampling)

路线采样(Lane sampling)

6.5随机路径图(PRM)规划

6.6Voronoi路径图规划

6.7快速搜索随机树(RRT)基本RRT

RRT*

基于Dubins路径的RRT

基于Dubins路径的RRT*

基于reeds-shepp路径的RRT*

Informed RRT*

批量Informed RRT*

闭合回路RRT*

LQR-RRT*

6.8三次样条规划

6.9B样条规划

6.10 Eta^3样条路径规划

6.11贝济埃路径规划

6.12 五次多项式规划

6.13Dubins路径规划

6.14Reeds Shepp路径规划

6.15基于LQR的路径规划

6.16 Frenet Frame中的最优路径

七、路径跟踪

7.1 姿势控制跟踪

7.2 纯追迹跟踪

7.3 史坦利控制

7.4后轮反馈控制

7.5 线性二次regulator(LQR)转向控制

7.6 线性二次regulator(LQR)转向和速度控制

7.7 模型预测速度和转向控制

八、项目支持一、环境需求Python 3.6.x

numpy

scipy

matplotlib

pandas

cvxpy 0.4.x二、怎样使用安装必要的库;

克隆本代码仓库;

执行每个目录下的python脚本;

如果你喜欢,则收藏本代码库:)三、本地化

3.1 扩展卡尔曼滤波本地化

该算法利用扩展卡尔曼滤波器(Extended Kalman Filter, EKF)实现传感器混合本地化。

蓝线为真实路径,黑线为导航推测路径(dead reckoning trajectory),绿点为位置观测(如GPS),红线为EKF估算的路径。

红色椭圆为EKF估算的协方差。

相关阅读:

概率机器人学

http://www.probabilistic-robotics.org/

3.2 无损卡尔曼滤波本地化

该算法利用无损卡尔曼滤波器(Unscented Kalman Filter, UKF)实现传感器混合本地化。

线和点的含义与EKF模拟的例子相同。

相关阅读:

利用无差别训练过的无损卡尔曼滤波进行机器人移动本地化

https://www.researchgate.net/publication/267963417_Discriminatively_Trained_Unscented_Kalman_Filter_for_Mobile_Robot_Localization

3.3 粒子滤波本地化

该算法利用粒子滤波器(Particle Filter, PF)实现传感器混合本地化。

蓝线为真实路径,黑线为导航推测路径(dead reckoning trajectory),绿点为位置观测(如GPS),红线为PF估算的路径。

该算法假设机器人能够测量与地标(RFID)之间的距离。

PF本地化会用到该测量结果。

相关阅读:

概率机器人学

http://www.probabilistic-robotics.org/

3.4 直方图滤波本地化

该算法是利用直方图滤波器(Histogram filter)实现二维本地化的例子。

红十字是实际位置,黑点是RFID的位置。

蓝色格子是直方图滤波器的概率位置。

在该模拟中,x,y是未知数

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值