问题标签 [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.
opencv - 使用solvepnp时模型坐标和图像坐标可以相同吗?
目前,我正在尝试实现一个相机姿势跟踪系统。我有一组前一帧的模型坐标点(3D)和当前帧的图像坐标(2D)。
我还设置了一个单位矩阵(4x4)作为相机的初始姿势。对于每个新计算的 rvec 和 tvec,我使用 rodrigues 将 rvec 转换为 3x3 Rotaton Matrix,然后创建一个 4x4 同质变换矩阵并将其与之前的姿势相乘。
旋转似乎工作正常,但来自矩阵的平移向量似乎只在旋转时移动,而不是在平移时移动,即它表示旋转。
难道我的模型坐标和图像坐标系都相同?
编辑:我正在尝试使用带有 RGBD 相机的 3D-2D 对应(视觉里程计)来跟踪相机位置。
更新:解决了这个问题。我似乎取错了变换矩阵的列
r - R 版本 3.6.1 (2019-07-05) 中的 tm 包安装错误 -- “Action of the Toes”
我正在尝试在 macOS High Sierra 版本 10.13.6 下运行的 Macbook Pro(2011 年末)上使用 R 中的 tm 包。tm 包已安装,但当我加载它时,我收到以下错误消息
然后我尝试安装 slam 并得到了这个:
computer-vision - 视觉里程计,相机参数
我正在研究视觉里程计,并观看了 Cyrill Stachniss 教授的视频录制,这些视频可作为 YouTube 2015/16 Playlist about Photogrammetry I & II 获得。
首先,如果我想创建自己的数据集(如 VO 的 KITTI 数据集或牛津校园数据集),我用相机拍摄的图像的属性应该是什么。它们只是图像吗?或者,它们是否有一些特殊的属性?也就是说,如何使用单目或立体相机创建自己的数据集。
谢谢你。
mesh - 如何从观察对象顶部的点云生成线框
我试图在生成点云后在对象顶部生成线框。如何获得与图像中生成的线框相似的线框?
我能够运行 ORB SLAM2 并生成点云并保存它们。我甚至能够从点云库中的 .pcd 文件生成线框。但是,我正在寻找如图所示的结果。我该如何解决这个问题?
c++ - 在 pi 上使用 RPLIDAR A2 在 catkin_make 命令上出现错误 HectorSLAM
对于我正在从事的机器人项目。我们正在建造一辆自动驾驶的遥控车。所以我们使用 ROS 来管理带有 RPLIDAR SDK 和 HECTOR SLAM 的 raspberryPi 3B+ 上的所有这些。
catkin_make 命令仅适用于 RPLIDAR,并且在运行 catkin_make 时将 hector slam 克隆到同一个 src 文件夹(src/hector_slam 和 src/rplidar_ros)时,因为引入了 HECTOR_SLAM,我得到了这些错误,我不知道如何解决
python - 使用 RPLider (Python) 进行本地化
我们目前正在使用 Slamtec RPLidar A1。我们有一个安装了激光雷达的机器人。我们的目标是检索房间中的 ax 和 y 位置。(这是一个封闭的房间,可能有超过 4 个角落,但整个房间应该被识别一次(RPlidar 站在哪里并不重要)。
无论如何,没有给出平面图。我们用 BreezySLAM 得到了到目前为止的 ax 和 y 位置,但我们认识到,无论 RPlidar 站在哪里,它总是将自己视为中心,所以我们真的不知道如何从这些信息中检索正确的 x 和 y。
我们是这个主题的新手,也许有人可以给我们一个很好的提示或链接来找到一个简单的解决方案。
PS:我们不打算跟踪机器人的运动。
ros - 加载共享库时出错:libpangolin.so:无法打开共享对象文件:没有这样的文件或目录
我对 ROS 还很陌生,正在尝试实现 ORB_SLAM2 示例。我收到其他一些与库类似的错误,我可以解决它们。但是,在这种情况下,我不知道libpangolin
.so 是什么。
有人可以帮我解决这个问题。
我正在运行以下命令;
$ rosrun ORB_SLAM2 Mono /Path/To/ORB_SLAM2/Vocabulary/ORBvoc.bin /Path/To/ORB_SLAM2/Examples/Monocular/TUM1.yaml
c++ - 如何使用 g2o 优化多约束函数
我目前正在尝试为 SLAM 优化多约束功能。经典优化功能可以最大限度地减少 g2o 的重投影错误,如https://fzheng.me/2016/03/15/g2o-demo/中提出的。
我的问题是我不知道如何修改这个 g2o 示例代码来联合优化两个约束(例如:1 个约束用于重投影误差和 1 个约束用于惯性误差)。
问候,
gps - 使用 VectorNav VN100 IMU 的路径映射来映射两个 GPS 坐标之间的路线
我正在尝试使用 VectorNav VN100 IMU 来绘制通过地下隧道(GPS 拒绝环境)的路径,并且想知道执行此操作的最佳方法是什么。我从 VN100 获得了很多数据点,其中包括:方向/姿势(欧拉角、四元数)以及三个维度的加速度和陀螺仪值。加速度和陀螺仪值以原始和过滤格式给出,其中过滤后的输出已使用板载卡尔曼滤波器进行过滤。除了 IMU 测量,我还在隧道的起点和终点测量了三个维度的 GPS-RTK 坐标。我应该如何处理这个映射问题?我对这个领域很陌生,不知道如何从加速度和方向数据中提取位置。
math - 在给定起点、方向四元数和行进距离的情况下找到下一个 3D 点
我需要使用什么公式来找到给定的第二个 3D 点 (P1):
- 第一个点 P0 = [x0, y0, z0]
- 方向四元数 Q0 = [q0, q1, q2, q3]
- 行驶距离 S
我猜想经过的距离 S 需要分成它的 X、Y 和 Z 分量。有没有一种简单的方法可以使用四元数来做到这一点?