Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用RPLider(Python)进行本地化_Python_Localization_Slam - Fatal编程技术网

使用RPLider(Python)进行本地化

使用RPLider(Python)进行本地化,python,localization,slam,Python,Localization,Slam,我们目前正在使用Slamtec RPLidar A1。我们有一个装有激光雷达的机器人。 我们的目标是恢复房间中的x和y位置。(这是一个封闭的房间,可能有4个以上的角落,但整个房间应该被识别一次(无论RPlidar站在哪里) 无论如何,没有给出地板图。 到目前为止,我们通过BreezySLAM获得了x和y位置,但我们认识到,无论RPlidar站在哪里,它总是将自己视为中心,因此我们不知道如何从这些信息中检索正确的x和y 我们对这个话题还不熟悉,也许有人可以给我们一个好的提示或链接来找到一个简单的解

我们目前正在使用Slamtec RPLidar A1。我们有一个装有激光雷达的机器人。 我们的目标是恢复房间中的x和y位置。(这是一个封闭的房间,可能有4个以上的角落,但整个房间应该被识别一次(无论RPlidar站在哪里)

无论如何,没有给出地板图。 到目前为止,我们通过BreezySLAM获得了x和y位置,但我们认识到,无论RPlidar站在哪里,它总是将自己视为中心,因此我们不知道如何从这些信息中检索正确的x和y

我们对这个话题还不熟悉,也许有人可以给我们一个好的提示或链接来找到一个简单的解决方案


PS:我们不打算跟踪机器人的运动。

实现这一点的最简单方法是记录您房间的地图,然后使用蒙特卡罗定位之类的方法来定位您的机器人,或者使用全SLAM算法

如果ROS是您的一个选项,您可以尝试进行全满贯或创建并保存房间地图,然后您可以将该地图输入以在其中执行蒙特卡罗定位


在这两种情况下,机器人的x和y位置相对于房间的原点都是可恢复的,因为它是在地图框和机器人框之间的转换中创建的。

任何传感器都可以看到自己处于环境的中心。如果不可以,记录地图的想法是好的。您可以假设其中一个角可以是你的零点,你的房间不是正方形,你可以测量墙的长度,然后你可以下降到2点。不幸的是,如果你在环境中没有任何额外的标记,或者在实际使用之前你不能创建地图,恐怕机器人没有机会正确理解需要的位置(0,0)重点是