- 博客(45)
- 收藏
- 关注
原创 GS论文阅读--AGS
本文针对3D高斯泼溅SLAM系统的性能瓶颈提出优化方案。在跟踪阶段,通过运动自适应策略减少高共视性帧的训练迭代;在建图阶段,利用高斯贡献感知跳过非贡献计算。同时设计了硬件架构实现工作负载平衡。实验表明,该方法显著提升了系统效率,在保持精度的同时加速了处理流程。
2026-02-15 00:11:26
685
原创 RTAB-Map学习记录(1)--论文阅读
RTAB-Map是一种开源的RGB-D SLAM框架,主要用于机器人导航和3D环境建图。其核心贡献包括在线处理能力、低漂移里程计、鲁棒定位、实际地图生成和多会话建图功能。系统采用基于图的SLAM方法,通过工作记忆和长期记忆机制管理计算负载,支持多种里程计输入(包括视觉和激光雷达)。视觉里程计提供帧到帧(F2F)和帧到地图(F2M)两种模式,通过特征检测、匹配和优化实现精确位姿估计。该系统特别强调在动态环境中的鲁棒性和实用性,支持生成OctoMap、点云和2D占位栅格等多种地图输出,适用于长期在线SLAM任务
2026-02-15 00:02:31
962
原创 GS-SLAM论文阅读--HI-SLAM2
单目三维重建的基本挑战源于缺乏明确的场景几何测量。传统的视觉SLAM方法通常只提供稀疏或半密集的地图表示,不足以实现详细的场景理解和完整的重建。虽然一些密集SLAM方法试图通过逐像素深度估计来解决这一限制,但它们仍然容易受到严重的深度噪声的影响,难以实现完整、准确的重建。神经SLAM方法的出现,特别是基于神经隐式域和三维高斯溅射(3DGS)的方法,已经显示出令人鼓舞的结果。然而,这些方法通常要么优先考虑渲染质量,要么优先考虑几何精度,这造成了不受欢迎的权衡。
2026-02-14 21:03:12
665
原创 Droid-SLAM学习笔记
该论文的主要特点就是一个完全端到端的方法,不像之前只把某个模块替换为深度学习框架,Droid-SLAM不仅使用深度方法优化位姿,还处理了回环和全局优化,使得整个系统很优雅。
2025-11-10 16:20:53
791
原创 Leetcode总结速记
left<=right对应的right=mid-1,对应区间为闭区间[0,n-1].这种写法当left==right还会进行一次循环,此次循环left = mid = right. 通常不需要后处理,通常返回-1.left <right对应right= mid,对应左闭右开区间[0,n).这种写法当left==right就会退出循环,所以我们要在循环外添加一个判断,作为后处理。同时如果循环中出现nums[right],需要考虑数组越界情况。通常情况下数组取n-1,数字直接取x。通常返回left。
2025-09-22 23:09:58
1356
原创 GS论文阅读--Mini-Splatting
高斯的广泛使用也会导致效率低下,高斯中心倾向于聚集在一起。这种次优的空间分布会限制渲染质量和速度。一些优化方法主要针对存储压缩,往往忽略了输入高斯的低效空间分布。
2025-02-05 12:41:55
1550
1
原创 GS论文阅读--Hard Gaussian Splatting
在训练过程中,它严重依赖于视图空间位置梯度的平均幅度来增长高斯以减少渲染损失。然而,这种平均操作平滑了来自不同视点的位置梯度和来自不同像素的渲染误差,阻碍了许多有缺陷的高斯的生长和优化。位置梯度的平均幅度不能反映某些局部图像区域的明显渲染误差,特别是当这些区域仅由少数视点观察时。这导致某些区域出现强烈的虚假伪影。
2025-01-22 20:50:33
1684
3
原创 GS-SLAM论文阅读--SplatMAP
现有的3D高斯溅射(3DGS)方法通常集中于光度一致性,忽略几何精度,并且未能利用SLAM的动态深度和姿态更新来进行场景细化。单目SLAM系统,由于有限的观察,浅三角测量基线,和弱姿态约束,容易产生不准确的点云。这些不准确性传播到下游的映射任务中,导致诸如墙壁和家具上的“重影”之类的伪像,特别是当从未经训练的视点观察时。传统的3DGS致密化管道通常依赖于RGB损失来校正这些错误,从而在补偿初始不准确性时引入额外的计算开销。
2025-01-22 11:14:33
1586
1
原创 GS论文阅读--GeoTexDensifier
3DGS的高质量重建依赖于足够的斑点和这些斑点的合理分布,以适应真实的几何表面和纹理细节,这是一个具有挑战性的问题。3DGS通过对初始高斯点的分裂和克隆,实现了完整的场景重建和纹理细节增强。3DGS模型的高质量重建和渲染依赖于两个条件:第一是具有足够数量的高斯splats来支持外观细节,第二是确保splats被优化到3D空间中的正确位置。目前,很少有研究探讨了高斯溅射致密化策略的改进。
2025-01-22 00:00:23
1828
1
原创 GS-SLAM论文阅读--RGBDS-SLAM
高保真重建是密集SLAM的关键。最近流行的方法利用3D高斯溅射(3D GS)技术进行场景的RGB、深度和语义重建。然而,这些方法忽略了场景不同部分的细节和一致性问题。3D GS技术以其高效的优化框架和实时渲染能力,弥补了NeRF的不足。因此,出现了许多基于3D gis的SLAM解决方案。然而,这些方法通常只使用原始图像特征进行训练,这些特征不足以完全捕获某些场景部分的细粒度细节,导致重建一致性差。而且,这些方法在进行多特征重构时,没有通过合理的约束进行有效的特征融合和优化,无法相互增强。
2024-12-09 15:35:47
1498
1
原创 3DGS论文阅读--CoR-GS
使用稀疏的训练视图,3DGS很容易遭受过拟合,对渲染产生负面影响。随着3DGS技术的进步,最近的研究发现了3DGS在稀疏视图场景下合成不现实的新颖视图的问题。这些方法依赖于预训练深度估计器的预测作为正则化来校正重建的几何形状。然而,外部监督会引入额外的噪音,对重建产生负面影响。
2024-11-06 17:09:36
605
原创 GS-SLAM论文阅读--High-Fidelity SLAM Using Gaussian Splatting
3DGS的连续建图存在“遗忘”问题,即高斯参数倾向于过拟合最新帧,导致前一帧的重建质量下降。
2024-11-04 20:21:57
1499
1
原创 GS-SLAM论文阅读--GSORB-SLAM
3D高斯飞溅(3DGS)的出现最近引发了密集视觉SLAM研究的新浪潮。然而当前的方法面临着诸如对伪影和噪声的敏感性、训练视点的次优选择以及缺乏全局优化等挑战。目前迫切的问题仍然需要解决,例如Bundle Adjustment (BA)问题和对工件的敏感性,这会导致跟踪精度的降低。此外,缺乏多视图约束和强各向异性导致高斯函数对当前视点过拟合。虽然Photo-SLAM和TAMBRIDGE都利用了ORB特征点,但它们并没有充分利用特征点的潜在性能优势。
2024-10-19 20:49:38
1340
1
原创 3DGS论文阅读--AbsGS
由于3D-GS自适应密度控制策略的缺陷,在包含高频细节的复杂场景中经常出现过度重建问题,导致渲染图像模糊。造成这一缺陷的根本原因仍未得到充分研究。在这项工作中,我们全面分析了上述伪影的原因,即梯度碰撞,它可以防止过度重构区域中的大高斯分布分裂。自适应密度控制策略不能有效地识别过度重建区域中的大高斯分布,并将其分割以表示细节。在本文中,我们发现原始策略的不足之处在于它没有考虑到逐像素次梯度方向对过度重构区域中大高斯分布识别的负面影响。为了解决这个问题,我们提出了一种新的同向视空间位置梯度作为致密化的判据。
2024-10-18 22:59:02
623
原创 3DGS论文阅读--pixel-GS
3D高斯飞溅(3DGS)其有效性很大程度上依赖于初始点云的质量,导致初始点不足的区域出现模糊和针状伪影。这一问题主要是由于点云的生长条件,只考虑可观测视图中点的平均梯度大小,从而无法在多个视点可观测的大高斯点上生长,而其中许多点仅覆盖在边界中。从本质上讲,这个问题主要归因于何时分裂或克隆点的条件。3DGS通过检查归一化设备坐标(Normalized Device Coordinates, NDC)中点的平均梯度幅度是否大于阈值来确定。梯度的大小在不同视点上平均,阈值是固定的。
2024-10-17 15:19:25
707
原创 GS-SLAM论文阅读笔记-CG-SLAM
现有的基于nerf的方法遵循差分体渲染管道,这是计算密集型和耗时的。因此,他们只能通过采样有限数量的相机光线来进行跟踪和建图,而忽略了图像中的自然结构信息。在SLAM设置中合理地加入三维高斯场并非易事。作为一种真实感视图合成技术,三维高斯场由于具有较强的各向异性和缺乏明确的多视图约束,容易对输入图像进行过拟合。一方面,三维高斯溅射不能保证三维曲面的精确建模;另一方面,由于高斯可能与环境表面不对齐,这将导致较差的外推能力,进一步降低相机跟踪。此外,建图过程中高斯基元的增加将不可避免地降低跟踪效率。
2024-10-10 16:25:51
1386
1
原创 GS-SLAM论文阅读笔记-MGSO
然而,现有的基于3dgs的SLAM系统难以平衡硬件简洁性、速度和地图质量。大多数系统在上述的一个或两个方面表现出色,但很少能做到全部。一个关键问题是在同时进行SLAM时初始化高斯的困难。传统上,SLAM系统提供语义差的地图表示,对定位和基本导航有效,但缺乏复杂任务所需的细节。解耦的稠密地图SLAM一个关键挑战是SLAM和密集重建组件之间缺乏协同作用。SLAM算法往往不能为高质量的密集重建提供最优数据,从而影响系统的整体性能。
2024-10-04 23:11:51
1566
1
原创 GS-SLAM论文阅读笔记-CaRtGS
Nerf虽然有前景,但将NeRF集成到SLAM系统中遇到了几个障碍,包括高计算需求,长时间的训练,有限的泛化性,过度依赖视觉线索,以及对灾难性遗忘的敏感性。现有的高斯飞溅SLAM (GS-SLAM)方法在处理有限数量的高斯原语时,难以在实时约束下实现卓越的渲染性能。这些问题源于算法的计算需求与可用处理资源之间的不一致,这可能导致训练和优化过程不足。MonoGS和SplaTAM是对耦合GS-SLAM算法的开创性贡献,它们开创了一种通过梯度反向传播同时优化高斯原语和相机姿态估计的方法。
2024-10-04 22:22:59
3028
2
原创 GS-SLAM论文阅读笔记--GEVO
虽然高斯飞溅(GS)允许高保真重建3D场景,但目前基于高斯飞溅的SLAM记忆效率不高,因为大量过去的图像被存储以重新训练高斯函数以减少灾难性遗忘。这些图像通常需要比建图本身高两个数量级的内存,因此占据了总内存使用量。为了减轻遗忘,基于神经辐射场和高斯飞溅(GS)的方法都在当前滑动窗口之外存储了大量的过去图像,以重复重新训练地图。不幸的是,用于存储这些图像的开销内存占总内存的大部分,并且比当前滑动窗口和地图本身都要高几个数量级。
2024-09-26 21:35:48
1478
1
原创 GS-SLAM论文阅读笔记--MM3DGS SLAM
虽然SLAM方法使用稀疏点云来表示操作环境,可以获得最先进的跟踪精度,但由于稀疏性,生成的地图是不相交的,在视觉上不如较新的3D重建方法。虽然视觉质量与导航的唯一目的无关,但创建逼真的地图对于人类消费,语义分割和后期处理是有价值的。3DGS的前置操作是高斯的深度初始化。大多数方法使用来自相对昂贵的传感器(如激光雷达)的深度输入,这些传感器可能不容易在消费者手机等设备上获得。其他方法使用RGB-D相机通过立体深度估计提供深度信息。
2024-09-26 10:50:57
1962
1
原创 GS-SLAM论文阅读笔记--GLC-SLAM
现有的基于3dgs的SLAM方法往往存在累积的跟踪误差和地图漂移,特别是在大规模环境中。Photo-SLAM结合了基于ORB-SLAM的闭环,但其对基于特征的跟踪器的依赖限制了闭环的有效性,因为跟踪器无法利用地图的细化。基于nerf的SLAM方法集成了在线闭环来实现准确和鲁棒的跟踪,但需要存储历史帧和昂贵的重新训练整个隐式建图来更新回环矫正。
2024-09-23 10:30:36
1692
1
原创 GS-SLAM论文阅读笔记--TAMBRIDGE
三维高斯溅射(3DGS)对运动模糊和相机噪声的鲁棒性有限,实时性差,限制了其在机器人SLAM任务中的应用。经过分析,产生这些问题的主要原因是运动模糊视图的密度和基于噪声原始图像和渲染结果计算损失的密集姿态估计累积误差,增加了3DGS渲染收敛的难度。以帧为中心、稀疏和有效的信息可以提高定位精度,但缺乏对整个场景的高层次理解。相反,以地图为中心的、密集的和全局的信息有助于构建全局一致的地图。因此,挑战的实质在于这两个方面的矛盾:高效而稀疏,密集而嘈杂。真实传感器的随机噪声和不断增加的视角重叠。
2024-09-22 11:09:05
1539
2
原创 GS-SLAM论文阅读笔记--MM-Gaussian
传统的SLAM方法往往受到地图表示的限制,如点云,surfel和voxel,它们只能以固定的分辨率重建地图。这一限制阻碍了对场景复杂纹理的捕捉,并阻碍了SLAM实现合成新视点等功能.此外,户外场景由于其无界特性,带来的挑战呈现出特别的复杂性。现存方法通常是基于RGB-D或单目相机。单目相机中深度数据的缺失会导致三维高斯分布的不准确。同时,RGB-D相机捕获的深度信息范围有限,使其在广阔的户外场景中的使用变得复杂。
2024-09-10 15:41:42
1937
1
原创 GS-SLAM论文阅读笔记--LoopSplat
基于3D高斯Splats (3DGS)的SLAM最近显示出更精确、更密集的3D场景地图的前景,现有的基于3dgs的方法无法通过回环或全局BAY优化来解决场景的全局一致性。现有的方法可以分为解耦和耦合两类,其中解耦方法不利用稠密地图进行跟踪任务,而耦合方法使用稠密地图进行帧到模型的跟踪。解耦映射和跟踪通常会在系统中产生不必要的冗余,例如低效的信息共享和增加的计算开销。另一方面,所有耦合的3DGS SLAM方法都缺乏在地图和姿态上实现全局一致性的策略,导致姿态误差的积累和地图的扭曲。
2024-09-06 15:26:28
1874
1
原创 GS-SLAM论文阅读笔记--GSFusion
传统的体积融合算法保留了三维场景的空间结构,这对计算机视觉和机器人技术中的许多任务都是有益的。然而,它们在可视化方面往往缺乏真实感。单纯的颜色融合通常会导致低照片真实感和不完整的地图,因为遮挡,深度图中的洞,以及忽视材料属性,如反射和透明度。新兴的三维高斯飞溅弥补了这一差距,但现有的基于高斯的重建方法经常受到伪影和与底层3D结构不一致的影响,并且难以实时优化,无法为用户提供高质量的即时反馈。
2024-09-04 11:00:04
1967
1
原创 环境配置小结
在上面的文章中,我主要讲了conda环境中cuda的相关问题,以及ubuntu中环境主要的编译配置方法。当我们了解了这些运行的具体过程,文件的安装目录,以及他们都有哪些功能时,就会更快定义到问题所在,不必对了解到的问题进行重复搜索。当然,这篇文章只是环境配置之前,需要了解的基本知识。但是了解了三方包的整个运行过程,很多问题都迎刃而解。对于之后具体常用的安装包,比如Opencv库的各种问题,还是需要不断记录与总结。
2024-06-28 14:36:19
1523
原创 Leetcode刷题笔记--回溯(back_tracking)
回溯是一种算法思想,它采用试错的方法来解决问题。在解决问题的过程中,如果发现当前的选择不正确或者无法达到目标,就会撤销上一步或者上几步的计算,并尝试其他可能的选择。这种方法也被称为探索与回溯法,是一种选优搜索法,通过递归的方式向前搜索,达到目标后再逐步回退,以找到问题的解。之前在学习二叉树的章节中,就对于有些回溯的过程有些模糊,为了对之后的图论打下基础,回溯是必须要好好掌握的。本文就参考代码回想录的回溯章节,循序渐进地进行学习!
2024-06-21 15:41:23
1275
原创 Leetcode刷题笔记--贪心
贪心选择性质就是从局部最优解可以得到全局最优解。它通常比动态规划更简单,但是其背后设计复杂的数学推理,大部分情况下我们不容易证明,只能通过感觉和尝试判断。可以使用「贪心算法」的问题需要满足的条件:1.最优子结构:规模较大的问题的解由规模较小的子问题的解组成,区别于「动态规划」,可以使用「贪心算法」的问题「规模较大的问题的解」只由其中一个「规模较小的子问题的解」决定。2.无后效性:后面阶段的求解不会修改前面阶段已经计算好的结果。直接刷题吧!
2024-06-05 12:02:58
1134
原创 Leetcode刷题笔记--动态规划基础
文章目录前言一、动态规划基础问题二、网格二维dp三、背包类问题3.1 0-1背包0-1背包总结3.2 完全背包遍历顺序总结四、不同的题型3.1打劫问题3.2股票问题3.3子序列问题1.是否连续的子序列2.回文子串和子序列3.编辑距离类最终总结前言动态规划算是很难的一个知识点了,之前我按照代码随想录的教程做了相对应的题目,对动态规划有所入门,现在想把他进行一个总结,顺便复习之前做过的题目。一、动态规划基础问题动态规划(Dynamic Programming,简称DP)是一种解决复杂问题的方法。它通过
2024-05-07 16:53:40
650
4
原创 Leetcode刷题笔记--滑动窗口
滑动窗口也是常考知识点,他算是双指针的一个特殊形式,再复习一下之前做过的习题,顺便将之前刷过的题目分个类,不多废话了!未完待续。。
2024-04-06 13:42:37
1240
1
原创 Leetcode刷题笔记--链表
链表相对于二叉树简单多了,它可以看成只有左子树或者右子树的二叉树。复习一下之前做过的链表题目,放松一下心情。。对于链表的相关习题先写到这,还有很多有关链表的进阶题目,需要不断的练习,才能熟能生巧!
2024-04-03 21:40:50
1129
1
原创 Leetcode刷题笔记--二叉树
二叉树节点通常包含一个值以及指向左子节点和右子节点的指针。定义一个节点结构来表示二叉树的节点。我们可以通过动态分配内存来创建二叉树节点,并将它们连接起来形成一棵树。int val;在我之前写dfs的代码时候,有时候改动一个函数参数是否为引用,代码就能实现了,从而实现不同的结果,当时没太在意,对这个深搜的回溯过程也不是很了解,但是前几天看代码回想录的讲解的时候,幡然醒悟,恍然大悟,终于大概弄明白了整个回溯的过程以及代码的编写。
2024-03-17 23:24:18
1225
1
原创 Leetcode刷题笔记--栈和队列
栈和队列是最常见的数据结构。他们是两个针锋相对却又相互关联的数据结构。栈的特点是后进先出,队列是先进先出。其他的不多说,知道这两点就完事了,直接开始!
2024-03-08 22:52:04
1370
1
原创 Leetcode刷题笔记--哈希表
在力扣习题当中,哈希表是非常常见的知识点。 哈希表通过哈希函数将键映射到索引位置,因此在理想情况下,查找和插入操作的时间复杂度为O(1)。这使得哈希表非常适合于需要快速检索的场景。 因此,在某些场景中有重要的作用。本文中主要介绍哈希表的两种常见形式:unordered_map和unordered_set,这也是做题中最常用的两种类型。unordered_map是一个将key和value关联起来的容器,它可以高效的根据单个key值查找对应的value。key应该是唯一的,key和value的数据类型可以不相同
2024-03-04 18:04:02
1194
1
原创 Leetcode刷题笔记--二分查找
之前刷了一段时间的Leetcode,当时似乎弄明白了一类题目,但是由于做的题目比较繁杂,而且没有进行总结,导致过一段时间之后有需要重新思考,又会花费大量的时间。所以我打算把之前刷过的题目类型进行一些总结与思考,以便我可以更好地掌握这些知识。今天,我打算从二分法开始进行总结。提示:以下是本篇文章正文内容,下面案例可供参考。
2024-02-27 23:07:50
1433
原创 C++学习笔记(四)--new与delete
提示:以下是本篇文章正文内容,下面案例可供参考通常情况下我们只会使用new和delete的基本用法,但是了解他们的实现过程,并且知道定制new和delete之后,我们就会耳目一新,发现一片新的天地。
2023-09-06 10:16:07
554
1
原创 C++学习笔记(三)--引用(reference)
为什么要使用引用?简单来说,引用就是给一个东西起别名,它的底层是由指针常量实现的(编译器内部实现),因此引用占用的空间大小与指针相同。引用的好处在于,它相对于指针操作更为简单,有些情况下相对于值传递效率更高。C++中引入了引用操作,在对引用的使用加了更多限制条件的情况下,保证了引用使用的安全性和便捷性,还可以保持代码的优雅性。在适合的情况使用适合的操作,引用的使用可以一定程度避免“指针满天飞”的情况,对于提升程序稳定性也有一定的积极意义。参考书籍《Effective C++》条款20,21。
2023-08-07 23:24:53
287
原创 C++学习笔记(2)--static
在C++中,static关键字有多种用法,它可以应用于变量、函数和类成员。接下来进行介绍。static的用法比较简单,也比较容易理解。
2023-07-31 09:58:20
484
1
原创 C++学习笔记(一):const的用法
最近在复习C++的相关知识,之前的学习过于零碎,有很多知识有所遗漏,关于const的用法很多,在这里我想做一个总结,希望自己学习的同时也可以帮助到别人。在c++中,一个const不必创建内存空间,是否为const常量分配内存空间依赖于如何使用。一般说来,如果一个const仅仅用来把一个名字用一个值代替(就像使用#define一样),那么该存储局空间就不必创建。如果存储空间没有分配内存的话,在进行完数据类型检查后,为了代码更加有效,值也许会折叠到代码中。下面介绍几种const在C++中的常见用法。
2023-07-31 00:17:11
663
1
原创 我的ROS学习笔记(六)
启动文件roslaunch一.使用启动文件二.启动文件的基本元素(1)插入根元素(2)启动节点(3)请求复位(4)为节点维护独立的窗口三.重映射1.创建重映射方法一方法二ADD1.包含其他文件2.启动参数声明参数参数赋值获取参数值向包括的启动文件中发送参数值一.使用启动文件执行启动文件 想要运行一个启动文件,可以像下面这样使用roslaunch命令 2:roslaunch package-name launch-file-name在启动任意节点之前,roslaunch 首先会判断 roscor
2021-09-11 16:14:56
570
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅