“有代码么?”

每每写到某实验室的机器人,解锁了厉害的操作,评论区很容易生出这样的问题。

然而,答案常常略带伤感,不好意思,暂时没有。

最近,有一份机器人Python代码合集登陆GitHub,并受到了用户的热烈标星。

自主导航看这里

来自日本的坂井敦,是一个玩机器人的工程师。

他和小伙伴们,为了能让更多的机器人,在地球上自如地游走,便为广大同行做了一次这样的Python代码汇总,大类如下——· Localization (定位)

· Mapping (地图构建)

· SLAM

· Path Planning (路径规划)

· Path Tracking (路径追踪)

不难看出,这份合集非常在意,机器人的自主导航能力。

第一个登场的,是“定位”分类下的扩展卡尔曼滤波器 (EKF) 。这是一个传感器融合的定位方法。

蓝线是真实轨迹,黑线是用航位推测法 (Dead Reckoning) 推定的轨迹。

绿点是位置数据 (比如GPS) ,红线是EKF估计出的轨迹。

红色椭圆是EKF估计的协方差。

就像这样,每个词条下面都配了一张动图,还有动图的详解。

坂井说,这样观众就可以更加直观地理解,各种方法背后的思路。

果然是温柔的程序猿。

赏心悦目的集合

各种方法的代码都可以免费自取,又有美味的动图,指引前路,还是很幸福吧。

所以,一起来品尝几幅动图——

这是A星算法。

这是势场 (Potential Field) 算法。

这是均匀极性采样 (Uniform Polar Sampling) 。

这是Voronoi路线图法。

以上作品来自路径规划章节,也是最丰盛的一章,有这么长——

里面分15个子类,包括了动态窗口法 (Dynamic Window Approach) ,如基于网格的搜索 (Grid Based Search) 算法等等。

子类还有自己的子类。

帮助机器人定制路线,躲避障碍,当事无巨细。

想必,大家会用餐愉快的。

喝前摇一摇

想要更好地用这份合集,来投喂机器人,你需要以下工具:·

Python 3.6.x
· Numpy
· Scipy
· Matplotlib
· Pandas
· Cvxpy 0.4.x

祝各位的机器人茁壮成长。△ 坂井君所在的小松製作所,是工程机械领域的巨头