CloudCompare安装
CloudComparez=这个软件是一个跨平台的软件,windows,mac,linux都可以使用,官网下载地址如下:
http://www.cloudcompare.org/
如果你的系统是Ubuntu16.04,那么恭喜你,安装非常简单,只需要输入:
snap install cloudcompare
其他版本的Ubuntu或者linux发行版见官网教程。
使用CloudCompare评估
我们这里主要是对我们重建的三维的点云进行评估,我的程序里面生成的重建点云是.ply格式的,ICL-NUIM提供的真值则是.obj格式的(真值是.ply格式的也可以),我们下面具体讲一下如何将自己生成的估计点云和真值进行对齐,计算他们之间的距离然后生成热图。
注:这个过程我是在
https://www.doc.ic.ac.uk/~ahanda/VaFRIC/living_room.html
这个网页里跟着学习的,基本本文的内容和该视频里的一样,但是如果原视频是来自youtube的,所以你懂的。
1、首先将ground truth的obj文件加载进来,然后把自己生成的ply文件加载进来,如下图:
这里会发现真值的外表面的mesh都是黑色的,这个和上面视频里面现实的就不一样,视频里包括我使用meshlab打开都是灰色的,但是我这里打开都是纯黑色的(不知道能不能修改,但是没有影响)。
如上图,这里的living-room.obj是提供的真值,下面的room0.klg.ply则是我估计的三维点云模型。
2、(可选)将输入的图像做一个变换,如果是ICL-NUIM数据集就要做这个变换,首先转中左边的估计的ply文件,然后选择edit-apply transformation,弹出下面的界面,我们把第二行的1前面加一个负号,然后点ok:
之所以做这个变换是因为生成的估计的点云文件和真值之间是镜像对称的,所以我这里必须先做这个变换,这个操作非必须。
然后就是进行对齐操作,因为对其我们只需要使用真值的vertices顶点,所以我们先把所有的mesh取消显示(就是把obj的所有的mesh前面的钩钩取消掉),只保留最后的vertices,最后如下:
此时,真值的obj里面就只剩下了vertices,变成了下面的样子:
然后按住ctrl,选中两个文件(注意是obj里面的vertices和你的ply文件)如下图:
之后点击下面的“红圈”的按钮,这个按钮表示align two cloud by picking up(at least 4) equivalent point pairs,也就是至少使用4对点来将两个点云进行对齐:
点击按钮之后出现,表示要选择一个被对齐的实体,这里我们选择room0-Cloud,因为vertices是真值,我们要把room0-Cloud对齐到vertices上:
点击OK之后会出现:
我们就开始在两个点云上面选点了,这里我们至少要选择四组点才行,也就是“红色”和“黄色”部分各自至少选四个点,并且序号相同的点必须是一一对应的,选完点之后,点击align,然后就会发现两个点云几乎就重合了,然后点击右下角那个钩子确定。
4、计算距离,生成热图
然后再选中这两个:
然后点击下面画“红圈”的图标:
出现下面的页面,把 signed distances取消,点击compute,ok即可:
然后这个一开始的热图的结果就会显示出来了,并且可以在下面的properties里面调整显示的颜色,以及把右边的柱装图显示出来,只要选中visible即可:
如果想将页面的视图进行保存,可以选择display页面的render to file,保存成bmp图片。如果想不显示3d框的话,只需要不选中任何一个选项,3d框就会消失,此时就可以执行保存图片的操作。
如果想修改一下背景颜色,可以点击左边的工具栏的第一个电脑图标:最好还是把背景色化成黑色的:
注意把下面的display gradient background取消掉:
以上就是本文的全部内容, 如果对你有帮助的话,请给我的文章点个赞,谢谢!!!
ICL-NUIM数据集是一个RGBD数据集,数据格式和TUM数据集是“兼容”(类似)的,可以用于评估RGBD slam,此外,该数据集还提供了三维环境的真值,因此可以用于对RGBD三维重建结果进行评估,本文主要讲述如何对ICL-NUIM数据集使用CloudCompare这个软件,将三维重建的结果和提供的真值进行比较评估,最终生成一个类似下面这样的热图:CloudCompare安装CloudComparez=这个软件是一个跨平台的软件,windows,mac,linux都可以使用,官网下载地.
针对ORB-
SLAM
2 (Oriented FAST Rotated BRIEF
SLAM
2)系统中相机位姿求解精度不高,只能生成稀疏地图的问题,提出了一种在ORB-
SLAM
2系统框架上将稠密的直接法和原系统采用的稀疏特征法结合在一起求解相机位姿,并生成稠密地图的方法。该方法改进之处包括:在原系统
使用
的第三方图优化库g2o(General Graph Optimization)中创建一条新的稠密约束一元边,将稠密直接法的光度误差约束加入到图优化库g2o中;跟踪相机时先通过稠密直接法计算相邻两帧图像之间相机的旋转变换,再利用改进后的图优化库g2o同时最小化特征法的重投影误差和直接法的光度误差,优化求解6 DOF(Degree of Freedom)相机位姿;在ORB-
SLAM
2系统框架上添加稠密重建线程,将周围场景的重建结果实时反馈给用户。在TUM RGB-D和
ICL
-
NUIM
数据集
上的测试结果表明,本文方法在一定程度上提高了ORB-
SLAM
2系统中相机位姿的求解精度,不仅可生成稀疏地图,还可重建更高精度的稠密地图。
https://blog.csdn.net/zzu_seu/art
icl
e/details/84999472
常用的
数据集
有:KITTI
数据集
、EuRoC
数据集
、TUM
数据集
、Oxford
数据集
、
ICL
-
NUIM
数据集
、RGBD Object
数据集
等等。
KITTI
数据集
KITTI
数据集
由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测
数据集
。该
数据集
用于评测立体图像(stereo),光流
1. Tum
数据集
这个大家用的人都知道,RGB-D
数据集
,有很多个sequence,自带Ground-truth轨迹与测量误差的脚本(python写的,还有一些有用的函数)。
有一些很简单(xyz, 360系列),但也有的很难(各个
slam
场景)。
下面列举几个视觉
SLAM
常用的
数据集
。
常用的
数据集
有:KITTI
数据集
、EuRoC
数据集
、TUM
数据集
、Oxford
数据集
、
ICL
-
NUIM
数据集
、RGBD Object
数据集
等等。
KITTI
数据集
KITTI
数据集
由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测
数据集
。该
数据集
用于评测立体图像(stereo),光流(optica...
1. Tum
数据集
这个大家用的人都知道,RGB-D
数据集
,有很多个sequence,自带Ground-truth轨迹与测量误差的脚本(python写的,还有一些有用的函数)。
有一些很简单(xyz, 360系列),但也有的很难(各个
slam
场景)。
由于它的目标场景是机
文章目录安装支持的
数据集
格式3种误差
评估
方式、4种工具参数转换数据格式evo其他常用命令evo_config
https://github.com/MichaelGrupp/evo/wiki
pip install evo --upgrade --no-binary evo
支持的
数据集
格式
TUM,KITTI,euroc(四元数顺序不一样,所以待比较的数据文件之间的格式要一致)
evo_ape kitti/euroc/tum a.txt b.txt # 比较kitti、euroc、tum
数据集
[1] A benchmark for RGB-D visual odometry, 3D reconstruction and
SLAM
[2]ElasticFusion: Dense
SLAM
without a pose graph
[3]Bun..
ICL
7107是一种精确度高、性能稳定的模拟数字转换芯片。仿真模型是指用计算机技术将
ICL
7107的功能进行模拟和测试的模型。
ICL
7107的仿真模型通常是通过软件工具进行搭建的,例如
使用
SPICE(Simulation Program with Integrated Circuit Emphasis)软件。在仿真模型中,会根据
ICL
7107的功能和特性设置相关的电路参数和输入信号,然后通过仿真软件对电路进行模拟运行,并观察测试结果。
通过
ICL
7107的仿真模型,可以对其在不同输入条件下的输出情况进行测试和分析。可以模拟
ICL
7107的输入电压范围、增益、精度等特性,并观察输出结果是否符合预期。同时,还可以对
ICL
7107在不同工作频率、温度等条件下的性能进行
评估
。
通过
ICL
7107的仿真模型,还可以进行电路优化和参数调整。可以通过改变电路元件的值、调整放大倍数、增加滤波电路等优化操作,以使
ICL
7107的输出更加准确和稳定。
总之,
ICL
7107的仿真模型是一个用于模拟和测试该芯片功能和特性的工具,它可以帮助工程师们在设计和应用过程中更好地了解
ICL
7107的性能,并进行必要的调整和优化。
阿里笔试:对于一个01字符串,每次只能任意交换两个元素,或者把0变成1,或者把1变成0,或者反转整个字符串。那么从A串变成B串至少需要多少步。
征途黯然.:
使用libtorch读取预训练权重,完成语义分割
欧文米哦:
catkin_make出现 “Cannot find source file:”
wll711:
JVM方法区和class文件之间的对应关系
莫得灵魂的程序员: