基于混合编码的相机追踪建图方法、装置及存储介质
- 国知局
- 2024-10-21 14:44:03
本发明属于混合编码领域,尤其涉基于混合编码的相机追踪建图方法、装置及存储介质。
背景技术:
1、近年来,将三维几何图形和场景在神经网络内进行编码的神经隐式表示方法因其表达和紧凑性受到广泛关注。其中目前最主流的算法是神经辐射场(neural radiancefields,nerf)[13],它是基于坐标的神经场景表示,将输入点坐标映射到高维空间中,通过正弦编码使得它能捕获高频细节,这对逼真的几何重建至关重要。结合多层感知机(multilayerperceptron,mlp)平滑性和一致性先验的特点,为相机追踪和建图提供了良好的选择。然而,由于基于坐标编码的方法需要长时间的训练,许多后续的工作[14-16]提出了参数编码,虽然增加了参数大小,但提高了训练速度。虽然这些方法专注于新视角合成,但仍然无法在未观测的区域进行合理的空洞填补。
2、同时定位与建图技术slam(simultaneous location andmapping)是一种机器人感知技术,用于在位置环境中同时确定机器人的位置并构建地图,其应用包括自动驾驶、机器人、混合现实等。大多数现代的视觉slam方法都遵循klein等人引入的总体架构,即将slam任务分解为建图和追踪。地图表示通常可以分成两类:以视角为中心的和以世界为中心的。第一种是将三维几何图形锁定在特定的关键帧上,通常表现为深度图。这一类别的早期例子之一是dtam[2],该方法因其简易性已被广泛应用于许多最近的基于学习的slam系统。例如,demon[3]和deeptam[4]同时回归深度和位姿更新,deepv2d类似地在回归深度和位姿估计之间交替,ba-net和deepfactors通过使用一组基础深度图简化了优化问题。另一方面,以世界为中心的地图表达方式将三维几何体锁定在统一的世界坐标系中,并可以进一步划分为面元和体素网格,通常储存占用率或者tsdf值。而体素网格被广泛应用于rgb-dslam中,kinectfusion利用商用深度传感器,通过投影迭代最近点(iterativeclosestpoint,icp)执行帧到模型的相机追踪,并通过tsdf-fusion增量更新场景几何。随后的工作集中在通过采用更有效的数据结构来解决可伸缩性问题,如面元(surfel)、体素哈希(voxel hash)和八叉树(octree)。最近的一些研究利用深度学习来提高传统slam的准确性和鲁棒性,虽然这方法引入了一些学习组件,但场景表达和整体流程仍然遵循传统的slam方法,对于生成逼真的三维场景比较困难。
3、当前现有算法的射线采样策略还是采用重要点采样,经过实验验证发现该策略没有对建图展示出显著的改进,反而降低了相机追踪和建图的速度。
技术实现思路
1、本发明的目的是提出基于混合编码的相机追踪建图方法、装置及存储介质,通过联合坐标和参数编码的小型mlp来表示整个场景,同时加入更为合理的采样优化策略,加快了训练速度,提高了重建质量,且在相机未观测到的区域进行合理的空洞填补,更好地满足三维重建对建图精度的需求。
2、为了达到上述目的,在本发明的第一方面提供了基于混合编码的相机追踪建图方法,所述方法包括:
3、s1、获取相机内参数进行射线采样,初始化一个匀速运动模型,对射线进行采样并将样本储存至关键帧数据库,然后在关键帧数据库中随机抽取一部分像素进行全局束调整以实现建图迭代,得到优化后的场景表示和相机位姿;
4、s2、构建坐标编码和参数编码,将坐标编码和参数编码作为场景表示,通过编解码器输出预测的sdf值,根据sdf值计算颜色mlp输出的预测rgb值;其中,所述坐标编码采用one-blob编码,所述参数编码采用多分辨率哈希编码;
5、s3、将rgb值和sdf值的预测值沿着采样射线进行积分来渲染深度和颜色,得到预测图像;
6、s4、设计损失函数结合真实图像和预测图像对相机追踪和束调整,更新相机位姿进行建图优化。
7、进一步地,所述s1具体包括:
8、输入为给定已经相机内参数的rgb-d数据流使用隐式表达将数据流世界坐标系下的位置x映射为tsdf值s和颜色值c,表示如下:
9、fθ(x)→(s,c)
10、其中,fθ表示神经场景表示。
11、进一步地,所述多分辨率哈希编码采用16个不同尺度的网格,每个网格相互独立,并且赋予不同尺度的哈希表。
12、进一步地,所述多分辨率哈希编码首先选取采样点周围的网格格点,目标位置周围的体素位置被送入哈希函数中得到哈希值,表示格点对应的特征向量在哈希表的位置,按照哈希值进行索引,其中,哈希表的每一行都是特征向量,所述特征向量被选取后,通过插值得到目标位置的特征向量,最后将目标位置的特征向量与one-blob编码拼接起来送入神经网络进行优化。
13、进一步地,所述s2,包括:将one-blob编码γ(x)和多分辨率哈希编码作为场景表示,其中,l表示多分辨率哈希网格的尺度,α表示学习参数,l表示从第1个尺度的哈希表格,通过fsdf编解码器输出预测的sdf值s'和特征向量e',表示如下:
14、fsdf(γ(x),va(x))→(e',s')
15、其中,fsdf表示预测的sdf值的几何解码器;
16、然后,利用颜色mlp预测相机图像的rgb值,表示如下:
17、frgb(γ(x),e')→α
18、其中,frgb表示预测的rgb值的几何解码器。
19、进一步地,所述s3,具体包括:
20、假设相机原点o和光线方向r,然后对n个点xi=o+tir,i∈{1,...,n}进行均匀采样,其中,ti表示在光线方向r上第i个点,xi表示该采样射线上的第i个采样点,深度值为di={d1,...,dn}和预测颜色ci={c1,...,cn},渲染深度和颜色表示如下:
21、
22、其中,wi表示沿射线计算的权重;
23、利用两个sigmoid函数乘积σ(·)计算权重wi,表示如下:
24、
25、其中,tr表示截断距离,si表示第i个点的sdf值。
26、进一步地,所述s4,具体包括:
27、对于对截断区域内的所有点,深度损失函数ld和颜色损失函数lrgb为深度和颜色的两个损失函数为渲染结果和观察结果之间的l2误差,计算如下:
28、
29、其中,rd表示具有有效深度测量的光线集合,[u,v]是成像平面上的相应像素,d[u,v]表示的sdf值,表示射线r的渲染深度;
30、定义具有真实值深度的射线为r,则自由空间损失定义lfs为:
31、
32、其中,表示射线r上位于相机中心和深度传感器测量的表面截断区域之间的一组点,该损失函数使得tsdfφg在自由空间中的值归一化为1;p表示射线r上位于相机中心和深度传感器测量的表面截断区域之间的一组点的其中一个点,φg表示截断距离外的点集合;
33、对于接近表面和截断区域内的采样点,使用如下损失函数利用深度传感器测量来近似符号距离场,表示如下:
34、
35、其中,z(p)表示点p关于相机的平面深度,tr为表示截断距离,d(r)表示传感器测得的射线深度,表示处于射线r截断距离内的一组点,即|z(p)-d(r)|<tr,lt表示针对符号距离场的损失函数;
36、在截断区域内最接近表面的一组点和在截断区域内尾部的一组点将定义为|z(p)-d(r)|<0.4tr的一组点,并定义t表示截断距离内物体表面相对远的距离,m表示在截断距离tr内的像素点距离物体表面的距离,计算如下:
37、
38、
39、其中,ltr-m表示对于截断距离内最靠近表面的点集合的损失函数,ltr-t表示对于截断距离内尾部的点集合的损失函数;
40、得到全局损失函数l为:
41、l=wfslfs+wtr-mltr-m+wtr-tltr-t+wdld+wrgblrgb
42、其中,{wfs,wtr-m,wtr-t,wd,wrgb}表示加权系数。
43、进一步地,所述s4,还包括:
44、在每一帧处获取相机坐标系到世界坐标系的变换矩阵twc=exp(ξt)∈se(3);当有新帧到来时,首先使用匀速运动模型初始化当前帧i的位姿,表示如下:
45、
46、其中,其中,ti表示当前帧i的位姿矩阵,表示i-1帧位姿矩阵的逆矩阵,表示i-2帧位姿矩阵的逆矩阵;
47、然后在当前帧内选择nt个像素点,针对相机参数ξt通过最小化全局损失函数l数迭代优化位姿。
48、在本发明的第二方面提供了基于混合编码的相机追踪建图装置,包括:
49、至少一个处理器;
50、至少一个存储器,用于存储至少一个程序;
51、当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述任一项所述方法。
52、在本发明的第三方面提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,,所述处理器可执行的程序在由处理器执行时用于执行上述任一项所述方法;
53、当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述任一项所述方法。
54、本发明的有益技术效果至少在于以下:
55、(1)本发明,本发明并非采用原版nerf将空间坐标映射到多维空间的频率编码方案,而是使用one-blob编码作为坐标编码。为了让场景变得更平滑和具备空洞填补能力,需要使不同的位置产生关联,这样才能把学习对象从单个像素变成一个区域,才能学习区域的预测能力。one-blob编码是one-hot编码的变体。one-hot编码能够对不同的类别作出明显的区分,它用0和1区分了各个输入值,即1的周围全是0;而one-blob编码采用高斯和,让输入值和相邻值之间产生关联,使得1的周围不为0,而是有一定的数值,符合高斯分布。这样使得不同的位置编码之间产生了关联,不再是学习单个采样点的信息,而是采样点附近区域内的信息。本发明采用多分辨率哈希编码。一共采用16个不同尺度的网格,每个网格相互独立,并且赋予不同尺度的哈希表,首先选取采样点周围的网格格点,目标位置周围的体素位置被送入哈希函数中得到哈希值,表示这些格点对应的特征向量在哈希表的位置,按照哈希值进行索引。哈希表的每一行都是特征向量,它们被选取后,通过插值得到目标位置的特征向量。最后与one-blob编码拼接起来一同送入神经网络进行优化。在基于哈希的多分辨率特征网格中拼接one-blob编码,可以在快速收敛、高效内存使用的同时,提升未观察区域的空洞填补能力和一致性。
56、(2)本发明通过将预测值沿着采样射线进行积分来渲染深度和颜色,使得几何图形表面重建更加精细。
57、(3)本发明最小化损失函数的可学习参和相机参数实现相机追踪和束调整(bundle adjustment,ba),过降低损失函数在建图中的重要性,从而获得更小的有效截断距离,减少遮挡区域的瑕疵,在相机追踪中利用整个截断距离以实现更高的重建精度。
58、(4)本发明随机储存一个像素子集(大约5%)来表示每个关键帧,不再需要储存完整的关键帧图像或关键帧选择。这使得本发明可以更频繁地加入关键帧,并且维护一个更大的关键帧数据库。为了进行联合优化,本发明从全局关键帧列表中随机抽取射线的总数,以优化场景表达和相机位姿。首先本发明对步长的场景表示进行优化,然后通过相机参数的累计梯度更新相机位姿。由于每个相机位姿为6自由度,该方法可以提高相机位姿优化的鲁棒性。
59、(5)本发明通过联合坐标和参数编码的小型mlp来表示整个场景,同时加入更为合理的采样优化策略,加快了训练速度,提高了重建质量,且在相机未观测到的区域进行合理的空洞填补,更好地满足三维重建对建图精度的需求。
本文地址:https://www.jishuxx.com/zhuanli/20241021/319105.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表