百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 文章教程 > 正文

机器人实用Python代码合集,帮你搞定自主导航

yund56 2025-02-25 01:17 4 浏览

点击上方 "码农真经" 关注,星标或者置顶

22点24分准时推送,第一时间送达

来源:量子位 出品 | 公众号 QbitAI | 编辑:真经君

码农真经(ID:coder_experience)第 131 次推文 来源:百度


上一篇:首款 Jupyter 官方可视化 Debug 工具,JupyterLab 未来可默认支持 Debug


正文


“有代码么?”

?

?

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

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

最近,有一份机器人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

祝各位的机器人茁壮成长。

?

△ 坂井君所在的小松製作所,是工程机械领域的巨头?

并在此献上传送门:

github.com/AtsushiSakai/PythonRobotics

--END--


往日热文:

一份来自亚马逊工程师的Google面试指南,GitHub收获9.8万星,已翻译成中文

有人说Julia比Python好,还给出了5个理由

如何防止被换脸?担心自己照片被Deepfake利用?试试波士顿大学这项新研究!

GitHub移动App上线:四大特性,手机端无缝完成git任务

突发!Github出现大规模网络劫持情况!

GitHub标星8000+!Python带你实践机器学习圣经PRML


喜欢本文的朋友们,欢迎长按下图关注订阅号码农真经

收看更多精彩内容


你在看吗?一起成长


相关推荐

了解计算机网络90个常见概念

计算机网络系列篇第一篇:90个常见概念定义如下:主机:计算机网络上任何一种能够连接网络的设备都被称为主机或者说端系统,比如手机、平板电脑、电视、游戏机、汽车等,随着5G的到来,将会有越来越多的终...

数控技巧:数控常用工艺术语(英文名称)

1工艺基本概念1.1一般概念1.1.1数控加工:numericalcontrolmachining根据被加工零件图样和工艺要求,编制成以数码表示的程序输入到机床的数控装置或控制计算机中,以...

常用模具零件广东术语,不会怎么混天下?

广东属最早引进模具工业地方之一,在工业界模具被称为永不衰败的行业,由于各师各法,广东各地对模具称呼的术语很多,有些不知怎译!!!为方便大家对模具术语交流,小编给大家整理了模具零件在广东的常用术语。深圳...

开发人员自我提升 - 软件开发技术术语表

开发工具与环境IDE(集成开发环境)VisualStudioCodeIntelliJIDEAEclipsePyCharmVersionControl(版本控制)GitSVNMercuria...

程序员术语趣味解释(1)

1.hotfixhotfix通常指的是一种紧急修复措施,用于解决已知的、严重的问题,比如安全漏洞、程序崩溃等。hotfix并不会包含任何新的功能或升级,它只是一个小型的程序补丁,能够快速而且有针对性地...

挑战 50 年霸主 C 语言:新语言 Hare,“异端”中的保守派

Hare原意为野兔,它的开发者希望这种编程语言能够如野兔般拥有顽强的生命力。本周,软件开发者DrewDeVault公布了一种名为Hare的全新系统编程语言,并用“简单、稳定和健壮”作为核心...

Python必须掌握的核心术语和概念,涵盖语法、编程范式和常用工具

以下是学习**Python**必须掌握的核心术语和概念,涵盖语法、编程范式和常用工具:---###**一、基础语法**1.**变量(Variable)**-存储数据的容器,无需声明类型,如...

编程中最难的事:如何命名

如何命名,其实是编程中最难的事。乔治·奥威尔的命名规范如何命名?简言之,根据语意来选择词汇,别无它法……然而,有时我们会不知用什么词汇更合适。当你想到某个抽象的东西,你更倾向于最先想到的词语,除非你故...

计算机网络的 166 个核心概念,你知道吗?

上回我整理了一下计算机网络中所有的关键概念,很多小伙伴觉得很有帮助,但是有一个需要优化的点就是这些概念不知道出自哪里,所以理解起来像是在云里穿梭,一会儿在聊应用层的概念,一会儿又跑到网络层协议了。针对...

黑客主要术语?什么是木马?什么是肉鸡?

本节将对常见的一些黑客术语进行简单的介绍1.肉鸡所谓肉鸡是一种很形象的比喻,比喻那些可以随意被控制的电脑,对方可以是各种电脑包括但不限于个人电脑,服务器等,在某种情况黑客进攻时会用他们干扰敌人。对直接...

计算机网络的 89 个核心概念

计算机网络中的概念也是非常庞杂,理解起来比较困难,所以这里,我给大家汇总了计算机网络中89个常见的概念,希望对你有所帮助。主机:计算机网络上任何一种能够连接网络的设备都被称为主机或者说端系统,比如...

开发人员自我提升 - 软件开发专业术语表

AAbstractClass(抽象类)-一种不能被实例化的类,用作其他类的模板Agile(敏捷开发)-一种迭代的软件开发方法论Algorithm(算法)-解决特定问题的一系列明确的...

Python编程术语词汇表(一)

这是一个非官方的Python编程术语表,是日常编程实践以及网络收藏所得的内容集合。Iteration迭代Loopingoveraniterableobject.遍历可迭代对象。Afor...

计算机领域有哪些高大上的术语描述的是很简单的事物?

云计算说白了就是服务器租赁,服务器在网线另一头,你也不用知道具体在哪,如远在天边的云。好比你想打网页小游戏,只想玩一次。你不会为此买个电脑、耳麦,再开通个宽带。你可能会去网吧,按时付费。网吧有按小时...

AI能代替你阅读吗

来源:科技日报原标题:AI能代替你阅读吗信息爆炸的当下,高校学生的阅读场景正经历着颠覆性变革——借助AI工具,他们不仅可以快速拓展通识阅读知识面,还可以轻松完成课堂上的深度思考作业,不用翻开书页就能...