实践操作
文章平均质量分 88
琉璃轻纱
丹青不知老将至,贫贱于我如浮云
展开
-
ORB-SLAM3复现过程中遇到的问题及解决办法
因为环境比较干净,所以遇到的问题相对少一些,不过每一个问题都进行了完善的解决我的环境是刚装完Ubuntu20.04之后,并进行了的操作之后的一个环境。原创 2023-09-03 17:45:01 · 1109 阅读 · 0 评论 -
ORB-SLAM3复现的详细过程——配置安装及ROS和脚本运行---Ubuntu20.04
所提供的图像具有高动态范围,事先进行了光度标定,用20Hz的帧率采集,分辨率为1024像素*1024像素;需要下载数据集dataset-room1_512_16和rgbd_dataset_freiburg1_desk。在一键安装ROS后,只需要再安装Pangolin即可,其他所有的需要都已经存在。用微型飞行器采集的视觉惯性数据集,包含双目相机和IMU同步测量数据及位姿的真值。第二条命令中的${ROS_PACKAGE_PATH}是自己文件的路径。其采用的相机和IMU传感器,在硬件上进行了时间同步。原创 2023-09-03 16:31:44 · 8331 阅读 · 33 评论 -
Ubuntu搭建CT_ICP里程计的环境暨CT-ICP部署
整个大体的步骤大体就有以下几个过程。下载viz3d并执行pip install . 进行安装gitcd执行超级构建对cmake进行手动升级执行构建slam库执行构建ros库独立建立工作空间,与git的地址不同进行节点创立完成然后进行运行。原创 2023-08-21 17:31:52 · 1321 阅读 · 6 评论 -
视觉SLAM十四讲——ch13代码祥读(设计SLAM系统)
接着我们可以看到第22行的初始化,直接转到visual_odometry.cpp文件,也就是本文的目录4。从上向下阅读,第39行,可以跳转到frontend.cpp文件,参考本文目录5.我们从开头开始阅读,可以看到第10行我们需要用的配置文件,可以参考3中的内容。同样,第40行,可以跳至backend.cpp文件,参考本目录的6.然后可以看到第18行,我们可以看到自己定义的一个类,可以在头文件。原创 2023-06-20 20:22:57 · 1548 阅读 · 1 评论 -
视觉SLAM十四讲——ch13实践(设计SLAM系统)
这个编译错误是因为您在使用 OpenCV 库时,使用了在较早版本中定义的已弃用的常量 CV_FILLED。第三段视频是在第二段视频的运行代码上,将后端优化的部分给注释掉后,通过轨迹可以看出来效果比较好,可能因为优化时矫正过度的原因。第二段视频是经过更改可视化的代码,将相机的运动轨迹绘画出来,但是根据视频可以看出来,轨迹效果并不好。第一段视频是ch13中原本的代码,经过更改一些错误之后,能够正常运行程序。本文章仅仅是代码实践过程中,没有进行代码详读,代码祥读在后面的文章会有。原创 2023-06-20 18:47:59 · 1550 阅读 · 3 评论 -
视觉SLAM十四讲——ch12实践(建图)
make -j” 是一个 Linux 命令,它使用所有可用的 CPU 核心来并行编译程序。通常在不指定进程数量时,使用这个命令可以最大化地利用 CPU 资源以加快编译速度。这个命令会启动尽可能多的进程来同时编译程序,以便快速生成可执行文件。此命令将自动检测计算机上可用的 CPU 核心数量,并在所有可用的核心上启动相应数目的编译任务。需要注意的是,由于多个进程同时在运行,因此使用 “make -j” 命令时可能会出现输出混乱的情况,但这不影响编译结果的正确性。原创 2023-06-19 19:28:51 · 1870 阅读 · 5 评论 -
视觉SLAM十四讲——ch11实践(回环检测)
可以看到分支数k为10,深度L为5,单词数量为4938,没有达到最大容量。这里只需要在CMakeLists.txt文件中更改其版本就可以。的链接问题,因为我们是建立的动态链接,所以后缀改为.so。代码中的opencv版本与自己用的版本不同;原创 2023-06-16 20:37:29 · 789 阅读 · 1 评论 -
视觉SLAM十四讲——ch10实践(后端2)
视觉SLAM(Simultaneous Localization and Mapping)后端是一种用于处理视觉SLAM问题的算法。视觉SLAM是指机器在未知环境中同时实现自身的定位和地图构建的技术。视觉SLAM后端的任务是在视觉SLAM中负责维护一个优化后的地图和机器人的轨迹。常见的视觉SLAM后端算法包括基于图优化的方法,如G2O、ceres等,以及基于滤波器的方法,如卡尔曼滤波器、扩展卡尔曼滤波器等。视觉SLAM后端算法需要处理传感器数据的噪声和不确定性,并通过优化算法来减小误差和提高精度。原创 2023-06-16 19:29:04 · 2443 阅读 · 0 评论 -
视觉SLAM十四讲——ch9实践(后端1)
Ceres BA使用的是BAL数据集。在本例中,使用problem-16-22106-pre.txt文件。BAL的数据集自身存在的特殊BAL的相机内参模型由焦距f和畸变参数k1,k2给出。因为BAL数据在投影时假设投影平面在相机光心之后,所以按照我们之前用的模型计算,需要在投影之后乘以系数-1。原创 2023-06-15 17:44:45 · 2503 阅读 · 0 评论 -
视觉SLAM十四讲——ch8实践(视觉里程计2)
里程计的历史渊源是什么?里程计是一种用来测量车辆或机器人行驶距离的装置,它通常通过检测车辆轮子或机器人轮子的旋转来进行测量。里程计的历史可以追溯到17世纪早期,当时人们开始使用机械装置来测量车辆行驶的距离。这些装置通常使用一个机械计数器,它们可以在车轮旋转的过程中记录里程数。18世纪末期,发明家托马斯·戈德史密斯发明了一种称为“奥多米特”的装置,它使用一个机械计数器来记录马车或自行车行驶的里程。这个装置被认为是现代里程计的早期形式。随着时间的推移,里程计逐渐发展成为电子化和计算机化的设备。原创 2023-06-15 15:02:41 · 870 阅读 · 0 评论 -
视觉SLAM十四讲——ch7实践(视觉里程计1)
视觉SLAM十四讲——ch7原创 2023-06-14 18:21:53 · 1048 阅读 · 1 评论 -
视觉SLAM十四讲——ch6实践(非线性优化)
它是一个基于图优化的库(图优化是一种将非线性优化与图论结合起来的理论)。为了使用g2o,首先要将曲线拟合问题抽象成图优化——节点为优化变量、边为误差。但,这个过程中值得注意的是,书中所带的源码并没有可视化的过程,所以如果想出来可视化图像,需要自己进行更改。在Ceres库中,最为用户,一定要按照步骤定义待解的优化问题,然后交给求解器计算。在执行make -j8的时候会抛出一些警告,这些警告不用关心。是一个广泛使用的最小二乘问题求解库。我在对此章节进行操作的时候没有出现问题,如果有问题可以评论。原创 2023-06-10 19:22:35 · 1141 阅读 · 0 评论 -
视觉SLAM十四讲——ch5实践(相机与图像)
在build中进入 stereo,注意更改stereoVision.cpp中图片文件的路径。注意:路径需要改成自己的!(3)SGBM的视差图(因为有一部分左眼看到了但是右眼没看到,所以对应的视察是空的)在build中进入 stereo,注意更改joinMap.cpp中图片文件的路径。OpenCV提供了大量的开源图像算法,是计算机视觉中使用极广的图像处理算法库。首先弹出第一个图片,按任意键弹出第二个图片,接着按任意键,同时出现3和4。不同的OpenCV版本可能有不同的语句,到时候进行更改即可。原创 2023-06-10 18:08:41 · 1407 阅读 · 1 评论 -
SLAM十四讲——ch4实践(李群李代数)
Sophus库支持SO(3)、SE(3)、SO(2)、SE(2)及变换Sim(3);时在Eigen基础上开发的,不需要安装额外的依赖库。原因:主要是因为找不到文件导致,这里为了避免更多的问题和麻烦出现,建议直接改为绝对路径。记得改完之后需要重新在build中执行make进行编译。同时终端会输出:RMSE = 2.20728。原创 2023-06-10 17:06:22 · 1192 阅读 · 3 评论 -
SLAM十四讲——ch3实践
视觉SLAM的ch3实践原创 2023-06-10 16:34:14 · 1440 阅读 · 1 评论