一种用于大规模场景三维重建的纹理贴图生成方法

文档序号:34682419发布日期:2023-07-05 21:13阅读:39来源:国知局
一种用于大规模场景三维重建的纹理贴图生成方法

本发明属于计算机图形学领域,具体涉及一种用于大规模场景三维重建的纹理贴图生成方法。


背景技术:

1、近年来基于序列rgb-d数据的三维重建任务取得较大成功,能够对大规模场景重建出完好的三维模型。但是,对于此类稠密重建算法得到的结果通常为庞大数目的点云,对于单一大规模场景可达千万乃至上亿数量级,对于后续算法以及实时渲染都是无法在有限时间内处理好的。因此需要对大规模的点云或模型数据进行简化,保证模型几何精度的情况下,减少点云数目。而这会导致很大程度上损失纹理分辨率,将不利于语义视觉导航、虚拟现实等应用场景的拓展。一种有效的解决方案是将几何三维重建与纹理恢复解耦,独立生成纹理贴图存储场景中的纹理信息,如openmvs等解决方案中的做法一样。

2、对大规模场景的纹理恢复还存在如下问题:(1)基于序列的三维重建过程数据量庞大,无法直接提取序列整体的纹理信息。(2)拍摄序列的过程得到的大部分rgb图像存在动态模糊,严重影响纹理恢复的清晰度。(3)拍摄过程在序列上由于光照、白平衡不一致等影响导致颜色简单混合会出现严重失真。(4)三维重建过程位姿计算存在误差,导致纹理恢复出现混叠和模糊。

3、现有技术也给出了一些解决方案,中国专利cn108335352a提出一种面向多视图大规模三维重建场景的纹理映射方法,以大规模三维场景的三维模型、重建模型的多角度图像序列和图像相机参数作为输入数据,通过纹理质量计算、遮挡物纹理剔除、纹理组合优化、纹理块颜色调整、边界纹理融合等几个步骤,得到带纹理的大规模三维模型。此外,开源解决方案openmvs同样基于多视角立体技术提出纹理映射与恢复方案。然而,上述方法未考虑基于密集序列的重建过程中存在的动态模糊、光照或白平衡不一致等导致的纹理质量差等问题。同时,上述方法得到的纹理贴图内存利用率不高,不利于大规模场景的贴图存储。


技术实现思路

1、本发明是为了解决上述问题而进行的,目的在于提供一种用于大规模场景三维重建的纹理贴图生成方法。

2、本发明提供了一种用于大规模场景三维重建的纹理贴图生成方法,具有这样的特征,包括以下步骤:

3、步骤1,基于三维重建方法对目标场景进行稠密三维重建并生成三维模型,根据三维重建过程中计算得到的相机位姿划分不同重建区域,在每个重建区域内选取清晰的rgb图像作为关键帧图像;

4、步骤2,将三维模型渲染为三角化网格模型,并基于相机位姿用透视变换对共视点计算纹理映射,逐像素地对多视图的关键帧图像取对应rgb值并混合;

5、步骤3,将三角化网格模型的三角面片以紧致的排布方式存放在连续的内存空间,得到纹理贴图以及纹理映射坐标。

6、在本发明提供的一种用于大规模场景三维重建的纹理贴图生成方法中,还可以具有这样的特征:其中,步骤1中,基于三维重建方法对目标场景进行稠密三维重建并生成三维模型时,将首帧的相机坐标系与地面配准,并使该相机坐标系的xoy平面与地面平行,z轴垂直与地面,并选取首帧为基准作为世界坐标系,输入的相机位姿均转换为相对于首帧的外参。

7、在本发明提供的一种用于大规模场景三维重建的纹理贴图生成方法中,还可以具有这样的特征:其中,步骤1中划分不同重建区域包括以下子步骤:

8、步骤1-1,基于相机位姿,按照相机空间位置,设置半径l划分位置集合;

9、步骤1-2,基于位置集合的划分结果,按照相机朝向,对水平与垂直方向划分个集合;

10、步骤1-3,取个集合中的非空集合作为最终划分结果,得到重建区域,

11、其中,步骤1-2中,f相机视场角,b为调节因子,该调节因子设置为0.3。

12、在本发明提供的一种用于大规模场景三维重建的纹理贴图生成方法中,还可以具有这样的特征:其中,步骤1中在每个重建区域内选取关键帧图像包括以下子步骤:

13、步骤1-4,对三维重建过程中相机扫描得到的所有rgb图像计算拉普拉斯变换,算子为:

14、

15、步骤1-5,对rgb图像i的变换结果l(i),计算方差:

16、σ2=∑(l(i)-μ)2

17、步骤1-6,在每个重建区域内,选取方差最大的rgb图像作为关键帧图像。

18、在本发明提供的一种用于大规模场景三维重建的纹理贴图生成方法中,还可以具有这样的特征:其中,步骤2中包括以下子步骤:

19、步骤2-1,对三维模型使用opengl渲染逐相机位姿的深度图,得到三角化网格模型;

20、步骤2-2,遍历三角化网格模型的三角面片,按照重心坐标公式计算映射点:

21、

22、步骤2-3,遍历所有映射点,根据相机内参{fx,fy,cx,cy}以及相机外参{r,t}逐帧计算透视变换,得到映射点到关键帧图像的映射关系:

23、

24、步骤2-4,根据映射关系逐像素地从多视图的关键帧图像中取对应rgb值并进行颜色混合,多视图颜色混合计算公式为:

25、

26、公式(1)中,axyx,bxyz,cxyz为三角面片的三角形顶点在三维空间中的坐标向量,

27、公式(3)中,wi为混合权重,area为三角面片面积,ni为点法向量,dj为相机的位姿朝向,α为可调系数,设置为0.5。

28、在本发明提供的一种用于大规模场景三维重建的纹理贴图生成方法中,还可以具有这样的特征:其中,步骤3包括以下子步骤:

29、步骤3-1,预设三角面片纹理值的存放区域,将三角面片形变为直角三角形存放到存放区域;

30、步骤3-2,将两个直角三角形拼接为一个正方形,以紧致的排布方式存放在线性的内存空间,生成纹理贴图;

31、步骤3-3,根据三角面片顶点对应的直角三角形在纹理贴图中的坐标,生成纹理映射坐标。

32、发明的作用与效果

33、根据本发明所涉及的一种用于大规模场景三维重建的纹理贴图生成方法,基于三维重建过程中计算的相机位姿划分重建区域,并在重建区域内选取清晰的关键帧图像,利用投影关系计算纹理映射结果来恢复纹理并生成紧致且高质量的纹理贴图。通过本发明的方法能够缓解动态模糊带来的影响,生成更为清晰的纹理贴图;并且,本发明对多视角图像的光照或白平衡不一致使得颜色混合后失真的问题,通过纹理映射以及多视图颜色混合,有效缓解了颜色跳变失真的现象;另外,本发明通过紧致的排布方式生成纹理贴图,大大降低了纹理贴图的内存占用,能够以较小的内存存储,高效地恢复并生成大规模场景三维重建所得模型的高质量纹理贴图,在地图导航、智慧家庭和数字城市等方面具有广泛的应用前景。



技术特征:

1.一种用于大规模场景三维重建的纹理贴图生成方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的用于大规模场景三维重建的纹理贴图生成方法,其特征在于:

3.根据权利要求1所述的用于大规模场景三维重建的纹理贴图生成方法,其特征在于:

4.根据权利要求1所述的用于大规模场景三维重建的纹理贴图生成方法,其特征在于:

5.根据权利要求1所述的用于大规模场景三维重建的纹理贴图生成方法,其特征在于:

6.根据权利要求1所述的用于大规模场景三维重建的纹理贴图生成方法,其特征在于:


技术总结
本发明提供了一种用于大规模场景三维重建的纹理贴图生成方法,包括以下步骤:步骤1,基于三维重建方法对目标场景进行稠密三维重建并生成三维模型,根据三维重建过程中计算得到的相机位姿划分不同重建区域,在每个重建区域内选取清晰的RGB图像作为关键帧图像;步骤2,将三维模型渲染为三角化网格模型,并基于相机位姿用透视变换对共视点计算纹理映射,逐像素地对多视图的关键帧图像取对应RGB值并混合;步骤3,将三角化网格模型的三角面片以紧致的排布方式存放在连续的内存空间,得到纹理贴图以及纹理映射坐标。

技术研发人员:薛向阳,周逸峰,李斌
受保护的技术使用者:复旦大学
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1