(1分钟)速通ikdtree

news2024/11/17 12:31:51

Ikdtree算法来自fast-lio2 其中i是incremental的缩写,表示增量的kdtree。

Ikdtree算法来自fast-lio2 其中i是incremental的缩写,表示增量的kdtree。

Ikdtree算法来自fast-lio2 其中i是incremental的缩写,表示增量的kdtree。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

其最主要的特点就是支持高效的插入和删除操作,并且使用双线程来对kdtree进行重建。依据我的第一理解,其从算法层面对kdtree进行改进,使其计算效率提升,来解决插入和删除操作的问题。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

没看懂,接下来看一下论文和网上的博客。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

本文提出了一种有效的用于动态空间划分的数据结构ikd-Tree。ikd-Tree只用新的即将到来的点增量地更新k-d树,这导致的计算时间比现有的静态k-d树要低得多。除了点级操作外,ikd-Tree还支持一些特性,如箱形操作和降采样,这些特性在机器人应用中实际有用。与增量操作(即插入、重新插入和删除)并行,ikd-Tree主动监视树结构并部分重新平衡树,这可以在后期阶段实现有效的最近点搜索。ikd-Tree经过精心设计,支持多线程并行计算,以提高整体效率。我们在理论和实际实验中都验证了ikd树的有效性。在理论层面上,提出了一个完整的时间复杂度分析,证明了其有效性。在实验水平上,在激光雷达-惯性测程和映射应用中,在随机数据集和真实世界的激光雷达点数据上对ikd-树进行了测试。在所有测试中,ikd-Tree只消耗了静态k-d树中运行时间的4%。

k维树(K-D树)是一种高效的数据结构,它可以组织多维点数据[1],能够快速搜索最近的邻居,这是各种机器人应用[2]中广泛需要的基本操作。例如,在激光雷达测程法和映射中,基于k-d树的最近点搜索对于匹配新的激光雷达扫描中的一个点与其映射(或之前的扫描)[3]-[8]中的对应点是至关重要的。最近点搜索在点云上快速障碍碰撞检查的运动规划中也很重要,如[9]-[14]。

Introduction第一段介绍了kdtree的重要性,其在激光slam中起着非常重要的作用,常用于搜索近邻点。并且其在游戏领域,其常被用来进行碰撞检测。然后kdtree和八叉树也可以交互使用,首先使用八叉树进行粗定位,然后再用kdtree进行精定位。

在机器人应用程序[15]中,常用的k-d树结构是“静态的”,其中树是使用所有点从头开始构建的。这与数据在实际的机器人应用程序中通常是按顺序获得的事实相矛盾。在这种情况下,通过从头开始重新构建整个树,将一个新的数据框架合并到现有的数据框架中,通常是非常低效和耗时的。因此,k-d树通常在一个低频的[5]-[7]上进行更新,或者简单地只在新的点[11,12]上重新构建。

Introduction第二段,说明静态kdtree是非常慢的,因此本文提出了ikdtree即动态kdtree来进行更高效的运算。

接下来论文讲解了ikdtree的算法结构和复杂度,这里就不提起了,感兴趣的读者可以自行搜索论文进行阅读。

一个疑惑:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)

这些图片都是从实验部分截下来的。。。是我的电脑问题么。。。 我怎么感觉这些图片 好像是p上去的呢???

编辑

添加图片注释,不超过 140 字(可选)

还有ikdtree竟然在NS中输给了KDtree,并且作者说是因为pcl库对kdtree的优化太好了,然后导致了ikdtree没有在此项实验中取得胜利 。。。 我真的很谢。。。 现在的感觉的话 可能这个ikdtree能否真正应用在激光SLAM领域中的话 还得需要一个实际验证。

附赠一篇大佬写的博客:https://zhuanlan.zhihu.com/p/529926254

编辑切换为居中

添加图片注释,不超过 140 字(可选)

其最主要的特点就是支持高效的插入和删除操作,并且使用双线程来对kdtree进行重建。依据我的第一理解,其从算法层面对kdtree进行改进,使其计算效率提升,来解决插入和删除操作的问题。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

没看懂,接下来看一下论文和网上的博客。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

本文提出了一种有效的用于动态空间划分的数据结构ikd-Tree。ikd-Tree只用新的即将到来的点增量地更新k-d树,这导致的计算时间比现有的静态k-d树要低得多。除了点级操作外,ikd-Tree还支持一些特性,如箱形操作和降采样,这些特性在机器人应用中实际有用。与增量操作(即插入、重新插入和删除)并行,ikd-Tree主动监视树结构并部分重新平衡树,这可以在后期阶段实现有效的最近点搜索。ikd-Tree经过精心设计,支持多线程并行计算,以提高整体效率。我们在理论和实际实验中都验证了ikd树的有效性。在理论层面上,提出了一个完整的时间复杂度分析,证明了其有效性。在实验水平上,在激光雷达-惯性测程和映射应用中,在随机数据集和真实世界的激光雷达点数据上对ikd-树进行了测试。在所有测试中,ikd-Tree只消耗了静态k-d树中运行时间的4%。

k维树(K-D树)是一种高效的数据结构,它可以组织多维点数据[1],能够快速搜索最近的邻居,这是各种机器人应用[2]中广泛需要的基本操作。例如,在激光雷达测程法和映射中,基于k-d树的最近点搜索对于匹配新的激光雷达扫描中的一个点与其映射(或之前的扫描)[3]-[8]中的对应点是至关重要的。最近点搜索在点云上快速障碍碰撞检查的运动规划中也很重要,如[9]-[14]。

Introduction第一段介绍了kdtree的重要性,其在激光slam中起着非常重要的作用,常用于搜索近邻点。并且其在游戏领域,其常被用来进行碰撞检测。然后kdtree和八叉树也可以交互使用,首先使用八叉树进行粗定位,然后再用kdtree进行精定位。

在机器人应用程序[15]中,常用的k-d树结构是“静态的”,其中树是使用所有点从头开始构建的。这与数据在实际的机器人应用程序中通常是按顺序获得的事实相矛盾。在这种情况下,通过从头开始重新构建整个树,将一个新的数据框架合并到现有的数据框架中,通常是非常低效和耗时的。因此,k-d树通常在一个低频的[5]-[7]上进行更新,或者简单地只在新的点[11,12]上重新构建。

Introduction第二段,说明静态kdtree是非常慢的,因此本文提出了ikdtree即动态kdtree来进行更高效的运算。

接下来论文讲解了ikdtree的算法结构和复杂度,这里就不提起了,感兴趣的读者可以自行搜索论文进行阅读。

一个疑惑:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)

这些图片都是从实验部分截下来的。。。是我的电脑问题么。。。 我怎么感觉这些图片 好像是p上去的呢???

编辑

添加图片注释,不超过 140 字(可选)

还有ikdtree竟然在NS中输给了KDtree,并且作者说是因为pcl库对kdtree的优化太好了,然后导致了ikdtree没有在此项实验中取得胜利 。。。 我真的很谢。。。 现在的感觉的话 可能这个ikdtree能否真正应用在激光SLAM领域中的话 还得需要一个实际验证。

附赠一篇大佬写的博客:https://zhuanlan.zhihu.com/p/529926254

编辑切换为居中

添加图片注释,不超过 140 字(可选)

其最主要的特点就是支持高效的插入和删除操作,并且使用双线程来对kdtree进行重建。依据我的第一理解,其从算法层面对kdtree进行改进,使其计算效率提升,来解决插入和删除操作的问题。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

没看懂,接下来看一下论文和网上的博客。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

本文提出了一种有效的用于动态空间划分的数据结构ikd-Tree。ikd-Tree只用新的即将到来的点增量地更新k-d树,这导致的计算时间比现有的静态k-d树要低得多。除了点级操作外,ikd-Tree还支持一些特性,如箱形操作和降采样,这些特性在机器人应用中实际有用。与增量操作(即插入、重新插入和删除)并行,ikd-Tree主动监视树结构并部分重新平衡树,这可以在后期阶段实现有效的最近点搜索。ikd-Tree经过精心设计,支持多线程并行计算,以提高整体效率。我们在理论和实际实验中都验证了ikd树的有效性。在理论层面上,提出了一个完整的时间复杂度分析,证明了其有效性。在实验水平上,在激光雷达-惯性测程和映射应用中,在随机数据集和真实世界的激光雷达点数据上对ikd-树进行了测试。在所有测试中,ikd-Tree只消耗了静态k-d树中运行时间的4%。

k维树(K-D树)是一种高效的数据结构,它可以组织多维点数据[1],能够快速搜索最近的邻居,这是各种机器人应用[2]中广泛需要的基本操作。例如,在激光雷达测程法和映射中,基于k-d树的最近点搜索对于匹配新的激光雷达扫描中的一个点与其映射(或之前的扫描)[3]-[8]中的对应点是至关重要的。最近点搜索在点云上快速障碍碰撞检查的运动规划中也很重要,如[9]-[14]。

Introduction第一段介绍了kdtree的重要性,其在激光slam中起着非常重要的作用,常用于搜索近邻点。并且其在游戏领域,其常被用来进行碰撞检测。然后kdtree和八叉树也可以交互使用,首先使用八叉树进行粗定位,然后再用kdtree进行精定位。

在机器人应用程序[15]中,常用的k-d树结构是“静态的”,其中树是使用所有点从头开始构建的。这与数据在实际的机器人应用程序中通常是按顺序获得的事实相矛盾。在这种情况下,通过从头开始重新构建整个树,将一个新的数据框架合并到现有的数据框架中,通常是非常低效和耗时的。因此,k-d树通常在一个低频的[5]-[7]上进行更新,或者简单地只在新的点[11,12]上重新构建。

Introduction第二段,说明静态kdtree是非常慢的,因此本文提出了ikdtree即动态kdtree来进行更高效的运算。

接下来论文讲解了ikdtree的算法结构和复杂度,这里就不提起了,感兴趣的读者可以自行搜索论文进行阅读。

一个疑惑:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)

这些图片都是从实验部分截下来的。。。是我的电脑问题么。。。 我怎么感觉这些图片 好像是p上去的呢???

编辑

添加图片注释,不超过 140 字(可选)

还有ikdtree竟然在NS中输给了KDtree,并且作者说是因为pcl库对kdtree的优化太好了,然后导致了ikdtree没有在此项实验中取得胜利 。。。 我真的很谢。。。 现在的感觉的话 可能这个ikdtree能否真正应用在激光SLAM领域中的话 还得需要一个实际验证。

附赠一篇大佬写的博客:https://zhuanlan.zhihu.com/p/529926254

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136430.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

性能成本难两全?OpenMLDB 实时计算双存储引擎让你不必纠结(附测评报告)

内存和磁盘的双存储引擎架构 1.1 使用场景描述 OpenMLDB 的线上服务部分为了满足不同的性能和成本需求,提供了两种分别基于内存和磁盘的存储引擎。关于这两种存储引擎的使用考量,和推荐匹配场景,见如下表。 [外链图片转存失败,源站可能有防…

使用ES Term query查询时一定要注意的地方

文章目录一、Term query简介二、Term query和Match query对比1. 数据准备2. 使用Match query查询3. 使用Term query查询三、分词器修改字段值的场景1. 删除大多数标点符号2. 英文大写转小写3. 超过max_token_length部分单独拆分一、Term query简介 使用Term query可以根据精确…

【计算机模型机设计】8指令多周期(硬布线)MIPS CPU设计报告

2023年第一篇文章来咯~ 8指令多周期(硬布线)MIPS CPU设计报告一、设计概述(基本类似于上一篇)1.1设计目的1.2设计任务1.3设计要求1.4技术指标二、总体方案设计2.1主要功能部件2.2数据通路设计三、详细设计与实现3.1主要功能部件的…

Cookie 和 Session、实现用户登录逻辑

Cookie 和 Session一、回忆 Cookie二、理解会话机制 (Session)三、Cookie 和 Session 的区别四、核心方法4.1 HttpServletRequest 类中的相关方法4.2 HttpServletResponse 类中的相关方法4.3 HttpSession 类中的相关方法4.4 Cookie 类中的相关方法五、代码示例: 实现用户登陆5.…

转速传感器信号隔离变送模块PCB焊接方波信号输出

特点 转速传感器信号直接输入,方波信号输出正弦波、锯齿波信号输入,方波信号输出200mV峰值微弱信号的放大与整形不改变原波形频率,响应速度快电源、信号:输入/输出 3000VDC三隔离辅助电源:5V、12V、15V或24V直流单电源…

【学Vue就像玩一样】什么是计算属性?什么使监视属性?

目录 1.计算属性 2.监视属性 2.1监视属性 2.2深度监视 3.computed和watch的区别 本栏会细致的将Vue划分为两大模块,基础篇,进阶篇。想要顺利通关vue篇首先要拥有三剑客,当然node ajax法宝也会辅佐你通关的,在学习的途中如果遇…

【回答问题】ChatGPT上线了!给我推荐20个比较流行的自动驾驶算法模型

给我推荐20个比较流行的自动驾驶算法模型 当前比较流行的自动驾驶模型有: 卷积神经网络(CNN) 长短时记忆网络(LSTM) 自适应调和滤波器(ADF) 自适应估计滤波器(AEF) 线性…

Vue组件及组件之间的通信

目录 一、Vue脚手架的使用 1、通过命令行使用vue-cli的指令创建:vue init webpack 项目名称 2、使用webStorm软件:本质仍然使用vue脚手架 3、使用vue ui创建:vue提供的图形化的操作界面 二、Vue的组件和组件之间的通信 1、组件&#xff…

使用线性回归、LGBM对二手车价格进行预测

使用线性回归、LGBM对二手车价格进行预测 目录使用线性回归、LGBM对二手车价格进行预测说明数据导入、查看和清洗数据说明导入训练集导入测试集合并数据查看数据整体情况处理数据检查并处理缺失变量EDA年份和价格地区和价格前任里程和价格燃料类型和价格传动装置类型Mileage与价…

数据库 SQL 高级用法

目录 一、INSERT INTO SELECT 用法 二、逻辑控制语句 三、公式表表达式 四、存储程序 五、触发器 一、INSERT INTO SELECT 用法 INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。 1、从一个表中复制所有的列插入到另一个已存在的表…

React(coderwhy)- 01

React的介绍(技术角度) React是什么?React:用于构建用户界面的 JavaScript 库React的官网文档:https://zh-hans.reactjs.org/React的特点: 声明式编程组件化开发多平台适配Hello React react需要3个依赖&am…

【数字图像处理】骨骼锐化

源码链接:skeleton.cpp 一、实验要求 附件是人体骨骼核扫描图像,我们的目的是通过图像锐化突出骨骼的更多细节来增强图像。图像灰度的动态范围很窄并且有很高的噪声内容。 二、实验内容 按照课本冈萨雷斯的《数字图像处理》上面的思路,整…

【代码题】五道链表面试题

目录 1.移除链表元素 2.反转链表 3.链表的中间结点 4.链表中倒数第k个结点 5.合并两个有序链表 1.移除链表元素 点击进入该题 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回新的头节点 。 思路&am…

CTF-AWD入门手册

引文 AWD赛制是一种网络安全竞赛的赛制。AWD赛制由安全竞赛专家及行业专家凭借十多年实战经验,将真实网络安全防护设备设施加入抽象的网络环境中,模拟政府、企业、院校等单位的典型网络结构和配置,开展的一种人人对抗的竞赛方式,…

语言和文法的形式定义---编译原理

文法的构建问题 * 参考已有的模型 最经典的即是算数表达式的模型,其有多个算术运算符号和优先级别。 文法与正则表达式与有穷自动机的转换 显然是3型文法,也就是正则文法才有相应的性质,因为只有3型文法才是右部至多仅有两个符 号&#xf…

【Vue路由】props配置、replace属性、编程式路由导航、缓存路由组件

文章目录props配置props值为对象props值为布尔值props值为函数总结\<router-link>的replace属性总结编程式路由导航案例实现总结缓存路由组件案例实现总结props配置 我们可以看看我们原来如何使用传递过来的参数的&#xff1a; 我们要写一大长串去从$route身上拿到我们…

传统目标跟踪——光流法

目录 一、光流法 二、LK光流法 2.1 实现原理 2.2 API 三、代码 四、总结 一、光流法 光流&#xff1a;空间运动物体在观察成像平面上像素运动的瞬时速度。 光流法利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧之间存在的对应关系&#xff0c;…

密码学_RSA

RSA是1977年由罗纳德李维斯特&#xff08;Ron Rivest&#xff09;、阿迪萨莫尔&#xff08;Adi Shamir&#xff09;和伦纳德阿德曼&#xff08;Leonard Adleman&#xff09;一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。 RSA是非…

dom截图的几种实现方式

前端要实现dom截图的功能&#xff0c;现在比较常用的是使用以下两个库 dom-to-image 使用svg技术实现html2canvas 使用canvas技术实现 如果想自己写一个dom截图的可以参考 dom-pointer 代码比较简单&#xff0c;非常适合拿来研究rasterizeHTML.js 目前rasterizeHTML.js已经被…

1231. 航班时间(恶心的输入处理 + 简单的数学)

题目如下&#xff1a; 题解 or 思路&#xff1a; 因为题目假设两次飞行时间是相同的&#xff0c;我们可以通过减法将时差消去。那么飞行时间就是: time1time22\frac{time_1 time2}{2}2time1​time2​ 题目的难点是处理输入&#xff0c;我们可以使用 sscanf 来进行处理&#x…