问题标签 [slam]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 高效的杰卡德相似度 DocumentTermMatrix
我想要一种有效计算tm::DocumentTermMatrix
. 我可以通过slam包对余弦相似度做类似的事情,如this answer所示。我在 CrossValidated 上遇到了另一个问题和回应,它是 R 特定的,但关于矩阵代数不一定是最有效的路线。我尝试使用更有效的slam函数来实现该解决方案,但没有得到与使用效率较低的方法将 DTM 强制为矩阵并使用proxy::dist
.
如何有效地计算 R 中大型 DocumentTermMatrix 的文档之间的 Jaccard 相似度?
#数据和包裹
#低效计算(预期输出)
#我的尝试
输出不匹配。
仅供参考,原文如下:
如解决方案中所示,我希望元素 1 和 2 的距离为 0,元素 3 比元素 1 和 4 更接近元素 1(我希望距离最远,因为没有共享单词)proxy::dist
。
编辑
请注意,即使在中型 DTM 上,矩阵也会变得很大。这是vegan包的示例。注意 4 分钟来解决余弦相似度约为 5 秒的问题。
labview - labview中的机器人里程计
我目前正在从事一个(学校)项目,该项目涉及一个必须在玉米地中导航的机器人。
我们需要在NI Labview中制作完整的软件。
由于机器人必须能够执行的任务,机器人必须知道它的位置。
作为传感器,我们有一个 6-DOF IMU、一些不可靠的车轮编码器和一个 2D 激光扫描仪 (SICK TIM351)。
到目前为止,我无法弄清楚任何算法或教程,因此真的陷入了这个问题。
我想知道是否有人曾尝试在 labview 中使 SLAM 工作,如果是,是否有任何示例或解释可以做到这一点?
或者是否有包含此函数/算法的 LabVIEW 工具包?
亲切的问候, Jesse Bax 机电一体化三年级学生
mapping - 基于实时相机/图像的大规模 Slam 算法
我想使用已经实现的SLAM 算法来映射我的大学校园。
我在 OpenSLAM.org 上找到了一些算法和一些其他独立的算法,例如LSD-SLAM和Hector SLAM,它们显示了一些承诺,但它们有局限性,例如它们使用 LIDAR,或者不扩展到大型数据集等。
SLAM 多年来一直是一个活跃的话题,一些团体还绘制了整个城镇的地图。有人能指出我这么有效的算法吗?
我的要求是:
- 它必须使用 RGB 相机/相机。
- 最好制作(有点)密集的区域地图。
- 它应该能够映射大区域(我见过一些只能映射到桌子或房间的算法,但是如果相机运动中出现抖动(在 LSD SLAM 中观察到)或拍摄很少的地标,它们通常会丢失轨道仅用于学习目的)。
- 最好是 ROS 实现。
point-clouds - 循环闭合 3d 点云
我希望了解如何实现一个简单的闭环算法。
这是我的情况:我有 x 个点云,并且我在 3d 中使用了配准算法,它给了我所有这些点云的姿势。
最后,我或多或少地在我的地图上的同一点结束,但有漂移。我可以使用我的配准算法来查看我的实际最终点云相对于我的初始点云的位置。
知道了这一点,我想根据我计算的“漂移”对我的其余点云进行全局优化,一直到我的初始点云。
我已经设法快速编写了一些关于翻译的代码,这似乎是正确的,但是旋转是有问题的,因为特征(墙壁等)的准确性/叠加降低了。
我一直在看:g2o、GTSAM、ISAM 库,都在寻求优化,但我觉得实现这些有很大的开销,它们都需要多个约束,设置大量参数等。
我什至不希望自动检测循环(我稍后会这样做),我只想这样做:这两个点云代表一个循环,在它们之间传播(正确)平移和旋转的漂移(我计算)到两者之间的所有点云。
提前致谢,
c++ - Reading external 2D Laser Scan Data in mrpt
I'm trying to read laser scan data and then use that for building a map of the environment.
My problem is, that I don't understand in what format the data has to be provided to the CObservation2DRangeScan object.
I've tried:
I write the data into a rawlog file and then look at it in the rawlog viewer. I used [1,1] and the point appears at X=-1 and Y=0. Why is that?
Here is the data from the rawlog viewer
Here is the code that I'm using:
c++ - 在 mrpt 中使用 xSense
我是 mrpt 库的新用户!我的项目是关于使用 IMU 数据(xSense 第 4 代)。
但是,我猜一些 xSense 数据已经通过 AHRS 过滤器(文档中的嵌入式卡尔曼过滤器)进行了处理。而且我无法在 mrpt 库中找到从传感器准确检索到的数据?你能帮我找出这些信息的来源吗?
ios - Kudan - 使用虚拟点进行对象遮挡
我想和Kudan一起开发类似Woold的游戏。所以我需要做两件事:
- 从 SLAM 框架中获取虚拟点标记。
- 基于虚拟点,为对象遮挡构建多边形。
我知道如何做 2,但我不知道如何从框架中获取虚拟点。
有没有办法从框架中获取虚拟点?或者有没有其他方法可以解决这个问题?
python - 哪些 SLAM 实现支持 pcap 输入?
我有一个.pcap
使用 Velodyne VLP16 LIDAR 装置收集的文件。我一直在研究 SLAM 的不同实现,并且大多数使用相机或立体相机输入。我想知道是否有支持 pcap LIDAR 数据的实现。
opencv - 在 Ubuntu Xenial 16.04 上安装 ORB_SLAM
是否可以在没有黑魔法的情况下在最新版本的 Ubuntu(Xenial 16.04)上安装 ORB_SLAM/ORB_SLAM2?我知道建议是根据https://github.com/raulmur/ORB_SLAM2使用 Ubuntu 14.04 ,但我目前有最新版本,我真的不想更改它或将 14 与 16 一起安装。我使用 OpenCV 2.4.8 和 ROS/catkin 构建系统并得到下一个错误:
它出什么问题了?谢谢。
unity3d - Unity 中的 Kudan:如何停止或重置无标记跟踪?
我正在使用 Kudan 创建一个应用程序,其中通过无标记跟踪显示照片(2D 精灵)。基于示例项目,我成功地进行了调整,使 2D 平面始终垂直于相机并放置在屏幕上我想要的位置。真的很棒!
但我无法弄清楚如何通过脚本重新启动/重置跟踪。我总是可以通过遮挡摄像头或摇晃手机来强制重新启动跟踪,但我想通过一个按钮来完成——这与我在 Android 和 iOS 的“ArbiTrack Basics”指南中描述的行为完全相同,但我无法在 Unity 中重现它。我应该向哪个脚本发送停止跟踪命令以使跟踪实例重新启动(与在无标记模式下运行示例 Unity 项目之一时阻止相机的效果完全相同)。
此处描述了 Android 编码的情况:https ://wiki.kudan.eu/ArbiTrack_Basics#Stopping_ArbiTrack
它说要调用这三件事:
// 停止 ArbiTrack arbiTrack.stop();
// 显示目标节点 arbiTrack.getTargetNode().setVisible(true);
//更改枚举和标签以反映 ArbiTrack 状态 arbitrack_state = ARBITRACK_STATE.ARBI_PLACEMENT;