基于3D高斯泼溅的轻量级三维重建方法
本发明属于计算机视觉、图像处理及三维重建,涉及基于3d高斯泼溅的轻量级三维重建方法。
背景技术:
1、三维场景的高保真重建与新视角合成一直是计算机视觉与计算机图形学领域的核心研究课题。作为一项具有突破性的显式表征技术,3d高斯泼溅(3d gaussiansplatting,简称3dgs)开辟了全新的场景建模范式,该方法以一组携带三维位置、协方差矩阵、不透明度与球谐函数系数的3d高斯基元,对空间几何结构与光度信息进行联合拟合,并结合高度优化的可微光栅化渲染引擎,在实现照片级渲染精度的同时,兼顾了实时交互的帧率表现。
2、然而,现有的3dgs以及其衍生方法在实际应用中仍存在重建清晰度低的问题,模型易在空间边缘与透明区域生成大量浮空伪影与背景噪点,无法精准剔除无实际视觉贡献的冗余结构,严重破坏真实场景形态的干净程度,大幅降低三维重建结果的清晰度与最终观感质量。
技术实现思路
1、本发明的目的是提供一种基于3d高斯泼溅的轻量级三维重建方法,解决现有重建方法清晰度低的问题。
2、本发明所采用的技术方案是,基于3d高斯泼溅的轻量级三维重建方法,具体包括如下步骤:
3、步骤1,数据获取与预处理,得到标准的3dgs数据集;
4、步骤2,将步骤1得到的数据集进行高斯点的初始化,生成一套初始3d高斯点集合;
5、步骤3,将步骤2得到的高斯点初始化后的数据输入迭代训练优化模块,训练完成后得到优化收敛的3d高斯点模型;
6、步骤4,将步骤3训练完成后得到的数据输入三维渲染输出模块,利用可微光栅化器渲染输出得到目标视角下的2d预测图像。
7、本发明的特点还在于:
8、步骤1的具体过程为:
9、步骤1.1,获取开源的官方数据集blendedmvs;
10、步骤1.2,将步骤1.1获得的数据集图像划分为训练集与测试集,将图像集合输入至三维重建开源算法运动恢复结构流水线中进行处理,得到最终的3dgs数据集。
11、步骤2的具体过程为:
12、步骤2.1,提取步骤1得到的训练集中每一帧图像的内参与外参,并统一对齐至全局世界坐标系;
13、步骤2.2,读取步骤1得到的训练数据集,利用开源三维重建工具colmap生成稀疏点云数据,提取该稀疏点云中每一个点的三维空间坐标,将这些坐标直接作为初始3d高斯点集合的空间位置,使得生成的初始高斯数量与稀疏点云的顶点数量保持一致;
14、步骤2.3,提取稀疏点云中每个顶点自带的rgb颜色值,将提取到的颜色值通过逆向数学映射,转换为0阶的球谐函数系数;同时,为每个高斯点分配高阶球谐系数张量,并将球谐系数张量初始值全部设定为零,作为后续网络优化高频反光细节的参数空间;
15、步骤2.4,针对每一个初始高斯点,利用近邻算法获取其到最近的个邻居点的欧氏距离,取这些距离的平均值,作为当前基元所在区域局部稀疏程度的定量评估指标;基于该局部稀疏程度的指标,采用各向同性的方式设定每个高斯点的初始三维缩放尺度;
16、步骤2.5,为高斯点的旋转与透明属性设置基础物理状态;
17、步骤2.6,将步骤2.2到步骤2.5中生成的所有属性集合封装并转换为支持自动求导的可优化张量,输出初始高斯点参数集合。
18、步骤3的具体过程为:
19、步骤3.1,将步骤2得到的初始化完毕的可优化张量集合与对齐后的相机参数输入至多轮迭代训练优化模块中,在每一次迭代的起始阶段,从训练数据集中随机抽取一帧真实图像及其对应的相机位姿,作为当前轮次的前向渲染参考真值与目标视角;
20、步骤3.2,执行前向渲染计算,将全量的张量集合直接送入光栅化引擎,光栅化引擎将接收到的高斯点投影至目标视角的二维屏幕平面,通过基于透明度的前向混合计算累积颜色与不透明度,生成当前视角的预测渲染图像,该像素点的最终预测颜色的计算公式如式(1)所示:
21、(1)
22、其中,为覆盖该像素的可见高斯点总数;为第个高斯点经球谐函数解析出的颜色分量;为第个高斯点的不透明度;表征光线穿透前个高斯基元后的剩余透射率;
23、步骤3.3,将步骤3.2输出的当前视图渲染图像与对应的真实参考图像进行对比,计算图像域的重建损失,计算公式如式(2)所示:
24、(2)
25、其中,为模型渲染图像,为真实采集图像,与为真实图像与渲染图像的绝对值误差,是一个预设的超参数;
26、步骤3.4,在步骤3.3完成后执行反向传播算法,损失函数的梯度经由可微分光栅化算子回传至全量高斯基元的属性参数集合,驱动全体张量执行数值演化与同步优化;
27、步骤3.5,在预设的自适应密度控制周期内,按照预设迭代间隔周期性地监测并提取当前高斯点集的几何属性与渲染状态;
28、步骤3.6,当迭代次数达到预设的最大总轮次时,系统判定当前模型已达到收敛状态并自动停止迭代,随后,将显存中的可优化张量集合从计算图中剥离,转换为静态物理参数集合。
29、步骤3.4的具体过程为:
30、步骤3.4.1,执行基于瓦片的可微分光栅化反向传播,根据步骤3.2的渲染公式,将图像域梯度回传至覆盖该像素的有序高斯基元集,对于像素,预测颜色对第个高斯基元属性参数的梯度传播公式如式(3)所示:
31、(3)
32、其中,损失函数对渲染图像中每个像素位置处预测颜色的偏导,为可微分光栅化算子对第个高斯参数的偏导;
33、步骤3.4.2,收集全量高斯基元的梯度信息,采用adam优化器对参数集合执行梯度下降更新,针对每个属性参量的迭代更新公式如式所示:
34、(4)
35、其中,为当前迭代步数,为学习率,和分别为梯度的指数移动平均一阶矩与二阶矩,为常数。
36、步骤3.5的具体过程为:
37、步骤3.5.1,获取场景中每个高斯点的累积位置梯度向量与不透明度,计算得到每个高斯点的显著性得分,计算公式如式(5)所示:
38、(5)
39、步骤3.5.2,获取当前致密化迭代步数与最大致密化迭代周期,计算得到生命周期进度映射因子,归一化在之间,计算公式如式(6)所示:
40、(6)
41、步骤3.5.3,获取初始场景中的高斯点总数,设判定阈值作为场景尺度先验,将场景分为微小尺度的场景和标准与大尺度场景;
42、步骤3.5.4,针对微小尺度的场景,采用单调渐进缩减约束计算每轮允许的最大新增高斯数量;
43、步骤3.5.6,基于所得的本轮允许新增的最大高斯数量与各高斯点的显著性得分,执行显著性截断操作,切断冗余高斯点的生成路径;
44、步骤3.5.7,筛选出步骤3.5.6计算得到的位置梯度向量不为0的有效高斯点,执行后续的动态致密化操作;
45、步骤3.5.8,执行物理剪枝机制,识别并剔除空间缩放尺度过大或不透明度过低的冗余高斯点。
46、步骤3.5.4的具体过程为:
47、步骤3.5.4.1,基于初始高斯点总数,计算得到渐进缩减约束的理论上限容量,计算公式如式(7)所示:
48、(7)
49、其中,是向下取整函数;
50、步骤3.5.4.2,根据理论上限容量计算得到渐进缩减约束的理论下限容量,计算公式如式(8)所示:
51、(8)
52、步骤3.5.4.3,根据得到的理论上限与下限容量,结合生命周期进度映射因子,计算得到最终的微小尺度场景动态容量,计算公式如式(9)所示:
53、(9)
54、其中,表示本轮允许新增的最大高斯数量。
55、步骤3.5.5的具体过程为:
56、步骤3.5.5.1,基于初始高斯点总数,通过设置绝对保底常数,计算得到尺度感知边界的理论上限容量,计算公式如式(10)所示:
57、(10)
58、其中,表示第一预设保底常数;
59、步骤3.5.5.2,根据理论上限容量计算得到渐进缩减约束的理论下限容量,计算公式如式(11)所示:
60、(11)
61、其中,表示第二预设保底常数;
62、步骤3.5.5.3,在得到尺度感知边界的理论上限容量与下限容量后,结合生命周期进度映射因子计算期望的容量衰减值,计算公式如式(12)所示:
63、(12)
64、步骤3.5.5.4,获取当前迭代轮次的实际高斯点总数,计算相对增量安全约束值,计算公式如式(13)所示:
65、(13)
66、步骤3.5.5.5,根据得到的期望容量衰减值与相对增量安全约束值,进行联合阈值判定,计算得到最终的标准与大尺度场景动态容量,计算公式如式(14)所示:
67、(14)。
68、步骤3.5.6的具体过程为:
69、步骤3.5.6.1,将当前场景中所有高斯点的显著性得分提取为集合;
70、步骤3.5.6.2,对集合中的数值进行降序排列,提取第个数值作为动态截断阈值;
71、步骤3.5.6.3,对所有高斯点的位置梯度向量执行硬截断掩码操作,硬截断掩码操作公式如式(15)所示:
72、(15)。
73、步骤3.5.7的具体过程为:
74、步骤3.5.7.1,提取每个有效高斯点底层可优化参数中的三维缩放向量,,对该向量逐元素应用指数激活函数,计算得到物理缩放尺度向量,计算公式如式(16)所示:
75、(16)
76、步骤 3.5.7.2,提取物理缩放尺度向量中的全局最大值,作为该高斯点的最大缩放分量;
77、步骤 3.5.7.3,设定针对高斯点物理尺寸的缩放判定阈值,逐一判断最大缩放分量与阈值的大小关系;
78、步骤 3.5.7.4,若,表明该高斯点属于存在欠重建现象的细小高频几何结构,执行克隆操作,在显存中复制该高斯点的全部属性,并将新生成的高斯点位置坐标沿当前位置梯度向量的方向偏移一个设定的步长比例;
79、步骤 3.5.7.5,若,表明该高斯点属于过度覆盖几何特征的大尺度过建点,执行分裂操作,销毁该原始高斯点,并在局部空间邻域内基于原高斯点的概率密度分布采样生成两个全新的高斯点,同时将新高斯点的缩放尺度按预设的比例因子进行缩小;
80、步骤3.5.8的具体过程为:
81、步骤 3.5.8.1,设定不透明度剔除下限阈值,遍历当前场景中全体高斯点的不透明度属性,执行基于不透明度的硬截断剔除,判定公式如式(17)所示,对于满足的高斯点,判定为对最终视觉渲染无实质光度贡献的低透明度冗余点,从高斯点集合中物理删除:
82、(17)
83、步骤3.5.8.2,设定三维空间最大物理尺度阈值与当前视角下二维屏幕空间最大投影半径阈值,提取保留高斯点在三维空间的最大缩放分量,以及获取在二维投影屏幕上的最大包围半径;
84、步骤 3.5.8.3,执行基于几何尺度的空间异常点剪枝,若某个高斯点的三维最大缩放分量大于,二维投影屏幕半径大于,则判定为遮挡正常背景几何结构的异常大尺度高斯点,并强制删除,判定公式如式(18)所示:
85、(18);
86、步骤4的具体过程为:
87、步骤4.1,根据第个高斯点的三维缩放尺度张量与旋转四元数,构建在三维世界坐标系下的三维协方差矩阵,计算公式如式(19)所示:
88、(19)
89、步骤4.2,将三维协方差矩阵与三维中心坐标投影至二维屏幕空间,确定二维高斯椭圆的形状与位置,设为由相机外参提取的视图变换矩阵,为透视投影过程在当前高斯点中心坐标处的雅可比矩阵,则投影后的二维协方差矩阵的计算公式如式(20)所示:
90、(20)
91、步骤4.3,利用步骤4.2计算所得的二维中心坐标与二维协方差矩阵,计算第个高斯点在当前像素坐标处的二维空间分布权重,如式(21)所示:
92、(21)
93、其中,为二维协方差矩阵的逆矩阵,是自然指数函数;
94、步骤4.4,将步骤3得到的高斯点的不透明度结合上式得到的二维空间分布权重,计算该点在当前像素上的有效不透明度衰减值,如式(22)所示:
95、(22)
96、步骤4.5,将高斯点的球谐颜色参数结合当前视角的观察方向解析为具体的rgb颜色分量,按照深度排序,沿着光线穿透屏幕的路径执行前向颜色累积,最终渲染并输出目标视角下的高清2d图像,像素坐标处的最终渲染颜色计算公式如式(23)所示:
97、(23)
98、其中,为覆盖该像素的可见高斯点总数,为前面所有高斯点对像素的透射率,表示光线穿过前个高斯后剩余的能量。
99、本发明的有益效果是,本发明构建了显著性得分评估、尺度感知动态容量分配与渐进缩减约束一体化的3d高斯泼溅轻量级三维重建体系。相较于现有重建方法易出现点云规模不受控暴增与显存过度占用,导致单次迭代计算负载急剧增加、整体训练周期极其漫长的问题,本发明通过尺度感知的动态容量分配与相对增量安全约束策略,彻底防范早期指数级算力爆炸、精准把控全局算力预算,有效提升三维场景重建的训练效率并大幅削减计算开销。针对渲染画面易在空间边缘与透明区域生成大量浮空伪影与背景噪点,导致真实空间形态被破坏、清晰度与最终观感质量差的问题,本发明采用不透明度加权的显著性评估结合动态物理截断机制,严格切断低视觉贡献度高斯点的克隆与分裂路径、精准剔除冗余结构,显著改善三维模型的细节保真度与渲染视觉质量。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com