一种基于平面约束的室内场景模型补全方法

文档序号:27058692发布日期:2021-10-24 08:36阅读:157来源:国知局
一种基于平面约束的室内场景模型补全方法

1.本专利属于计算机图形学中的三维模型重建、三维模型补全领域,是一种充分利用人造室内空间中平面约束条件的室内三维场景模型补全方法,可以进一步的完善实时稠密重建的重建效果,未来可应用于ar和vr领域。


背景技术:

2.在虚拟现实(vr)、增强现实(ar)或者混合现实(mr)领域中,往往需要将虚拟的数字化场景、物体或者其他数字化信息和真实环境进行互动,三维重建技术将作为一种将真实场景或者物体转换成虚拟场景或物体的接口,在真实环境与虚拟物体进行交互过程中起着至关重要的作用。
3.现有的三维重建技术虽然能够将完成的稠密三维模型重建出来,但是这个重建过程往往需要拿着传感器缓慢的对整个室内环境中的所有物体以及整个场景进行全方位无死角的扫描,最终才能生成完整的室内稠密模型,这个过程往往十分耗费时间,且稍有不慎就会使得模型中出现一些孔洞。在用户实际使用vr等设备进行现实三维环境稠密重建时,生成的三维模型中不可避免的存在孔洞,此时在孔洞的干扰下,真实场景和虚拟物体进行交互的过程中就会出现错误的互动,影响用户的体验。本专利针对重建后的三维模型中存在孔洞的问题,提出了一种在重建的三维模型上进行全场景的孔洞补全技术。
4.现有的三维模型孔洞补全方法分为两种。一种是基于三维点云数据的模型补全,如pcn算法能够将有缺失的点云补全,但点云模型对三维模型的细节和纹理部分描述能力较差,往往无法在vr等领域中应用。第二种是基于稠密三维mesh模型的孔洞补全,但是现有的基于稠密mesh模型的补全算法只针对单个物体模型有效,在进行多物体乃至场景模型孔洞补全时,不同物体上的孔洞会产生互相干扰,使得最终的补全效果十分不理想,所以该方法无法解决整个室内全场景环境模型的孔洞补全任务。
5.在人造的室内空间中,往往平面是最主要的组成图元,同时各种不同的物品也都分别放置在室内的平面结构之上,所以对于绝大部分不相关的物体我们不需经过深度学习的训练就可以在平面的约束下从空间中彼此分割。
6.本专利发明了一种在平面结构信息约束下的室内全场景环境模型补全的方法。


技术实现要素:

7.针对现有技术中存在的不足,本发明提供一种基于平面约束的室内场景模型补全方法。
8.本发明方法在稠密室内三维重建的基础上使用循环使用ransac方法进行三维平面的检测,通过平面检测结果,将室内环境分割为不同的平面区域和物体区域,然后利用物体区域中各mesh顶点的邻接关系将空间上彼此分离的物体分割开,然后分别在不同的平面区域和不同的物体模型上进行孔洞检测,分别完成孔洞补全任务,然后将逐个补全的结果放在同一个三维空间中,最终完成室内全场景的三维模型孔洞补全任务。
9.一种基于平面约束的室内场景模型补全方法,包括以下步骤:
10.步骤(1)、基于ransac的三维模型平面检测;
11.在通过稠密三维重建算法得到的室内三维模型中,循环使用ransac平面检测算法,检测三维模型中的平面,将三维空间中的不同平面分割出来,同时将整个模型分割为平面部分和非平面的物体部分,完成预分割。
12.步骤(2)、非邻接物体的分割;
13.利用各个物体上mesh顶点的邻接关系,遍历所有mesh,分别将空间中不邻接的各个物体进行分割,从而针对不同的物体分别检测空洞和补全空洞,以免不同物体的孔洞补全的过程中形成干扰。
14.步骤(3)、孔洞检测;
15.分别检测每个不同平面和不同物体上的孔洞。
16.步骤(4)、孔洞补全;
17.在室内三维模型中每个物体上孔洞的周围都建立一个三维边界框b
h
,该三维边界框b
h
为每个孔洞在每个坐标方向像外扩展20%来建立的,然后在每个扩展的三维边界框b
h
内求解双调和方程,最终求该边界框内的零等值面,在孔洞边界处沿零等值面不断生成mesh,完成每个物体的孔洞补全。在对该场景模型中的每个平面模型进行补全时,在平面方程的约束下,将求解的双调和方程与平面检测得到的平面方程进行加权融合,进而得到一个更加鲁棒的平面补全结果。最终完成室内场景模型孔洞的补全。
18.本发明有益效果如下:
19.(1)本发明能够在室内场景级模型中进行mesh孔洞补全,相比于原来的方法,该方法能够辅助稠密重建系统,得到更好的室内重建模型,方便与后续的在vr或ar中使用。
20.(2)本发明在对场景中的物体进行补全时,消除了不同物体上孔洞之间的干扰,极大的提高了物体模型的补全精度,提高了补全效果。
21.(3)本发明在对场景中的平面模型进行补全时,能够在平面方程的约束下,实现更加鲁棒的平面补全效果。
22.(4)本发明采用了基于mesh的补全方法,相比于在点云上的补全方法,该补全方法具有更好的模型纹理信息。
附图说明
23.图1为本发明实施例室内场景模型补全流程图;
24.图2为本发明实施例带有孔洞的室内三维场景模型;
25.图3为本发明实施例三维模型孔洞示意图;
26.图4为本发明实施例通过双调和方程求解得到的孔洞等值面示意图;
27.图5为本发明实施例补全后得到的室内三维场景模型。
具体实施方式
28.下面结合本专利的附图来对发明专利的具体实施进行详细描述。
29.结合图1.基于平面约束的室内场景模型补全的流程图,本发明主要包含以下步骤:
30.步骤(1)、基于ransac的三维模型平面检测;
31.如图2所示,在通过稠密三维重建算法得到的室内三维模型中,循环使用ransac平面检测算法,检测三维模型中的平面并将其从三维空间中分割出来,当循环到平面面积为设定的最小阈值时,终止循环ransac平面检测算法,即提取出该三维场景中全部平面,其余部分为三维空间中的物体部分,将整个模型分割为平面部分和非平面的物体部分,完成预分割,为接下来孔洞补全任务提供平面约束。
32.步骤(2)、非邻接物体的分割;
33.首先在物体部分mesh模型中撒入种子点,然后利用各个物体上mesh顶点的邻接关系,遍历所有mesh,分别将空间中不邻接的各个物体分割开来,确保空间上接触的物体之间彼此分离开的,从而针对不同的物体分别检测空洞和补全空洞,以免不同物体的孔洞补全的过程中形成干扰。
34.步骤(3)、孔洞检测;
35.分别检测每个不同平面和不同物体上的孔洞。首先检测所有边界边,边界边为只属于一个mesh的边,而不属于其他mesh的边,将边界边构成的闭合回环当作需要补全的模型孔洞。
36.步骤(4)、孔洞补全;
37.在完成孔洞检测后,将在每个孔洞的周围都建立一个三维边界框b
h
,该三维边界框b
h
用过每个孔洞在每个坐标方向像外扩展20%建立,然后在每个扩展的三维边界框b
h
内使用基于体素的修补方案。
38.首先在该三维边界框内b
h
定义一个分辨率一致的网格g
h
,该分辨率要确保每个三角面片的边界边都不会大于三维边界框b
h
边的大小,其分辨率的设置会根据第二节中超体素的分辨率变化而进行变化。在每一个网格g
h
中要计算两个距离,一个是到b
h
中mesh的无符号距离,一个是计算到孔洞边界边的无符号距离。通过这两个距离的计算,我们将边界框b
h
内的网格g
h
分为了两种不区域r
d
和r
b
,其中r
d
区域是靠近mesh附近可以鲁棒的计算出无符号距离值的区域,而r
b
区域是相对来说更靠近孔洞附近的区域,在该区域中我们希望通过r
d
区域中数值的帮助下,能够进一步在r
b
区域中平滑的扩展r
d
中的数值。在r
d
区域中,我们通过计算到mesh的距离来构建一个无符号距离场(sdf),然后在r
b
区域中,我们通过求解约束优化问题来计算得到一个离散的双调和场,进而在r
b
区域中得到零等值面,该算法还可以通过多重网格求解器来对求解过程进行加速,在求解的过程中,我们将无符号距离场r
d
来作为求解双调和场的边界约束条件,从而更鲁棒的再r
b
中计算出零等值面,然后再将该零等值面和步骤(1)中求出的平面方程进行加权融合,进而得到一个在平面约束下的更加鲁棒的零等值面。最后将b
h
中的零等值面和孔洞的边界边附近的mesh进行缝合,完成每个孔洞的修补任务。当每个物体或平面上的孔洞都补全成功后,就完成了该室内场景的补全。
39.图3为本发明实施例三维模型孔洞示意图;
40.图4为本发明实施例通过双调和方程求解得到的孔洞等值面示意图;
41.图5为本发明实施例补全后得到的室内三维场景模型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1