一种室内三维布局重建的方法及系统与流程

文档序号:18556613发布日期:2019-08-30 22:41阅读:274来源:国知局
一种室内三维布局重建的方法及系统与流程

本发明涉及三维重建技术领域,具体地说,涉及一种室内三维布局重建的方法及系统。



背景技术:

随着信息技术的发展,三维世界的数字化建模技术成为越来越多的应用的关键技术。虚拟现实、增强现实、机器人导航、建筑资产数字化等应用需求日益强烈。基于激光雷达设备、深度相机设备的三维重建方法在成本和鲁棒性方面都存在一定的问题,因此开发者迫切希望能通过一种低成本、高效率的方法和系统取代传统的三维重建方法。

现有基于激光雷达设备的三维重建方法由于其高精度的特点,被成功应用到一些场景当中,但激光雷达设备高昂的成本限制了它的应用范围。现有基于深度相机设备的方法由于其同时获取彩色图像和深度图像的特点,也被成功应用到一些场景当中,但深度相机设备能获取的有效深度信息范围狭窄、噪声较大、受环境光影响大,同时硬件成本较高,影响了它的实用性和使用范围。

公布号为cn108447116a的中国专利文献公开了一种基于视觉slam的三维场景重建方法和装置,其中方法包括如下步骤:视觉信息获取:使得移动机器人在三维场景中自由移动以采集图像,并利用slam算法来估计所述移动机器人的位姿信息;点云重建:利用sift算法提取采集到的图像中的特征点并进行匹配,并将匹配后的特征点和对应的所述移动机器人的位姿信息利用sfm算法进行稀疏点云重建,然后对重建的所述稀疏点云进行稠密点云重建;以及表面重建:对重建的稠密点云进行表面重建,从而完成对三维场景的重建。

该三维重建方法及系统实现了使用视觉相机设备的三维重建,即使用视觉相机设备获取环境的三维点云。但该三维重建方法一方面所使用的slam算法在室内环境效率低下、稳定性不足,另一方面该方法和系统只能获取环境三维点云,无法得到更进一步的三维布局信息。



技术实现要素:

本发明的目的为提供一种室内三维布局重建的方法,本发明的另一目的为提供一种室内三维布局重建的系统,该系统用于实现上述,以低成本视觉惯性模组设备作为数据采集装置,在传统视觉方法难以处理的室内场景中,可以提高三维点云重建的效率和质量,同时得到场景的三维布局。

第一方面,本发明提供的室内三维布局重建的方法包括以下步骤:

1)采集室内场景的图像序列数据及惯性测量数据,同时对室内场景进行实时三维重建,得到关键帧图像序列及其实时重建的位置与姿态;

2)利用所述关键帧图像序列及其对应的实时重建的位置与姿态,进行离线三维重建,得到室内场景的稠密三维点云;

3)从所述室内场景的稠密三维点云中抽取平面结构,对平面结构进行筛选和分类,得到房顶平面、地面平面和候选墙面平面,同时得到楼层高度;

4)根据所述房顶平面、地面平面、候选墙面平面及楼层高度,构造所述室内场景的三维布局;

5)输出三维布局重建结果。

作为优选,步骤1)中,所述的实时三维重建包括:

持握视觉惯性模组设备在空间中平移和旋转,扫描所述室内场景;

在执行扫描的同时,运行视觉惯性里程计算法,对所述室内场景进行实时重建,得到关键帧图像序列和相应的位置姿态。

作为优选,步骤2)中,所述的离线三维重建包括:

2-1)根据实时三维重建得到的关键帧图像序列及其位置与姿态,基于空间近邻原则,进行图像之间的特征匹配;

2-2)在图像特征匹配的结果之上,以关键帧图像序列及其位置与姿态作为初始值计算和优化所述关键帧图像的位置与姿态,得到所述关键帧图像精确的位置与姿态;

2-3)根据所述关键帧图像精确的位置与姿态计算室内场景的稠密三维点云。

作为优选,步骤3)中,从所述室内场景的稠密三维点云中抽取平面结构的方法包括:

如果所述稠密三维点云的质量好,噪声小,则使用区域生长算法从中抽取平面结构;

如果所述稠密三维点云的质量差,噪声大,则使用带约束的采样一致性算法从中抽取平面结构。

作为优选,步骤3)中,对平面结构进行筛选和分类的方法包括:

从所述关键帧图像序列及其实时重建的位置与姿态中得到重力方向信息;从抽取的平面结构中筛选法向量与重力方向夹角小于5度的平面结构作为水平面,将其中点云数量最大的平面结构作为房顶平面或地面平面;

从抽取的平面结构中筛选法向量与地面平面法向量方向夹角小于95度且大于85度的平面结构作为竖直面,计算竖直面的点云在竖直方向上的分布范围的高度,筛选高度大于0.2倍层高的竖直面作为候选墙面平面。

作为优选,步骤3)中,得到楼层高度的步骤为:

3-1)将所述稠密三维点云空间范围在水平方向上划分为若干层,并在每一层上统计处于该层之内的稠密三维点云的数量;

3-2)根据每一层的稠密三维点云数量以及其相邻层的稠密三维点云数量计算每一层的点云数量变化度;

3-3)所述点云数量变化度最大的两层,判定为房顶位置和地面位置;

3-4)根据所述房顶位置和地面位置,得到楼层高度。

作为优选,步骤4)中,构造所述室内场景的三维布局的方法包括:

4-1)定义一个能量函数,包括围成面积项和缺失补偿项,变量为候选墙面平面及其连接关系;

4-2)使用优化算法求解使所述能量函数最大的墙面平面及其连接关系;

4-3)根据所述楼层高度、所述墙面平面及其连接关系,还原所述场景的三维布局;

4-4)输出所述场景的三维布局的三维面片模型。

第二方面,本发明提供的室内三维布局重建的系统包括:

图像序列数据和惯性测量数据采集模块,用于在手持视觉惯性模组设备扫描室内场景时,记录扫描得到的图像序列数据和惯性测量数据;

实时三维重建模块,用于从所述图像序列数据和惯性测量数据中实时三维重建得到关键帧图像序列及其对应的空间位置和姿态;

离线三维重建模块,用于从所述关键帧图像序列及其对应的空位置和姿态中离线三维重建得到场景的稠密三维点云;

三维布局重建模块,用于从所述离线三维重建得到的稠密三维点云中计算得到所述场景的三维布局;

输出模块,用于输出三维布局重建结果。

与现有技术相比,本发明的有益效果为:

(1)本发明使用低成本视觉惯性模组对传统视觉三维重建方法难以处理的室内场景进行了成功的三维重建,得到了良好的稠密三维点云。

(2)本发明可以从带噪声的三维点云中抽取有效的平面结构信息,并对其进行基本的语义性分类,即分为房顶平面、地面平面、候选墙面平面。

(3)本发明不仅可以重建场景的稠密三维点云,还可以重建场景的三维布局,具有更强的应用性。

附图说明

图1为本发明实施例中室内三维布局重建的方法的流程示意图;

图2为本发明实施例中视觉惯性模组设备中相机坐标系的示意图;

图3为本发明实施例中视觉惯性模组设备中惯性测量单元坐标系的示意图;

图4为本发明实施例中参考图像进行特征匹配的图像序列范围示意图;

图5为本发明实施例中相接墙面对应端点之间的曼哈顿距离的示意图;

图6为本发明实施例中室内三维布局重建的系统的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,以下结合实施例及其附图对本发明作进一步说明。需要注意的是,以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透切理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

实施例

参见图1,本实施例的室内三维布局重建的方法包括以下步骤:

步骤s101,手持视觉惯性模组设备采集室内场景的图像序列数据及惯性测量数据,同时运行视觉惯性里程计对场景进行实时三维重建,得到关键帧图像序列及其对应的实时重建位置与姿态结果。

在本实施例中,视觉惯性模组设备是由双目相机(stereocamera)与惯性测量单元(imu,inertialmeasurementunit)组成的一体化传感器模组设备。视觉惯性模组设备不限制特定的生产或制造厂商,且具有以下特征:1.采集50hz以上的全局曝光的双目图像序列;2.采集250hz以上的六轴惯性测量数据;3.双目图像之间、图像与惯性测量数据之间由硬件和软件保证毫秒级时间同步。

在本实施例中,使用视觉惯性模组设备之前,需要对双目相机以及惯性测量单元进行标定。标定结果包括相机内参、左右相机之间的相对位置关系、惯性测量单元的内参、惯性测量单元与左相机之间的位置关系。相机坐标系如图2所示,惯性测量单元坐标系如图3所示。

在本实施例中,采用人工手持视觉惯性模组设备的方式进行数据采集,数据包括场景的双目图像序列及惯性测量数据。还可以使用机器人搭载视觉惯性模组设备对场景进行有规划地扫描并采集数据。

在本实施例中,在上述扫描场景和采集数据的同时进行实时三维重建。实时三维重建使用视觉惯性里程计算法,视觉惯性里程计算法联合优化图像数据和惯性测量数据,比现有技术中使用的slam算法更加稳定高效。在对场景的实时三维重建完成后,算法将保存关键帧图像序列及其对应的空间位置姿态。关键帧图像是指对场景的重建具有关键性作用的图像帧。

步骤s102,以关键帧图像序列及其对应的实时重建位置与姿态结果作为输入,运行运动恢复结构方法进行离线三维重建,得到场景的稠密三维点云。

在本实施例中,首先根据实时三维重建得到的关键帧图像序列及其空间位置和姿态,将与参考图像进行特征匹配的图像序列范围限制在空间上最近邻的n个图像的集合中,得到图像之间的特征匹配关系。与参考图像进行特征匹配的图像序列范围限制方法如图4所示,其中x1,x2,...,xn所示节点表示关键帧图像序列及其空间位置示意(俯视),实线连接线表示了进行特征匹配的候选图像对(基于空间近邻限制)。

在本实施例中,将在特征匹配范围限定方法基础之上,使用运动恢复结构算法,对场景进行更加精确的离线三维重建。具体地,首先选择匹配关系最为良好的一对初始图像对,使用对应的实时重建得到的空间位置和姿态作为初始值,初始化场景并进行光束平差优化。接下来迭代地添加与已有场景中的图像有良好匹配关系的新的图像并以其实时重建得到的空间位置和姿态作为初始值进行光束平差优化,直到无法添加新的与已有场景中的图像有良好匹配关系的图像为止。最后再进行一次全局光束平差优化得到若干图像及其空间位置和姿态,以及场景的稀疏三维点云。离线三维重建方法得到的图像及其空间位置和姿态会更加精确,由于采用了所述特征匹配范围限定方法,离线三维重建方法比传统的由运动到结构算法在室内环境中更加鲁棒和高效。

在本实施例中,将离线三维重建的结果输入多视角立体几何算法,最终得到场景的稠密三维点云。

步骤s103,从室内场景的稠密三维点云中抽取平面结构,对其进行筛选和分类,得到房顶平面、地面平面和候选墙面平面,同时得到楼层高度。

在本实施例中,从室内场景的稠密三维点云中抽取平面结构的方法有两种。第一种是基于区域生长算法的方法,区域生长算法的原理是以曲率大的点作为边界寻找在空间上连续平滑的点云区域,该算法可得到若干连续平滑的点集,每个点集可以被看作一个平面结构。基于区域生长算法的平面抽取方法适用于噪声较小的稠密三维点云数据。第二种是基于带约束的采样一致性算法的方法,采样一致性算法的原理是通过多次采样寻找最合适当前点云数据的平面结构模型,其中约束来自两方面,一方面是三维点局部法向量与平面结构法向量的一致性约束,二方面是平面结构之间关于曼哈顿世界假设的约束,即平面结构的法向量要么互相平行要么互相垂直。基于带约束的采样一致性算法的平面抽取方法适用于噪声较大的稠密三维点云数据。

在本实施例中,由于视觉惯性里程计算法具有可以观测重力方向的特性,在稠密三维点云中重力方向必然沿z轴负方向,因此通过两个条件可以筛选得到房顶平面和地面平面,一是法向量与z轴夹角在0度到5度之间,二是构成平面结构的三维点云数量应当比其他非房顶平面或地面平面的平面结构多。在筛选得到房顶平面和地面平面之后,将法向量与地面法向量夹角在85度到95度之间的平面结构分类为候选墙面平面。

在本实施例中,楼层高度通过房顶平面与地面平面之间的位置关系容易得到。

步骤s104,根据房顶平面、地面平面、候选墙面平面及楼层高度,构造室内场景的三维布局。

在本实施例中,从候选墙面平面中选取真正的墙面平面并确定它们的连接关系,从而确定场景的布局。该三维布局重建问题可以形式化表达为,已知候选墙面平面集合求解墙面平面子集及墙面平面之间的连接关系

在本实施例中,定义了一个由墙面平面及它们的连接关系决定的目标函数,通过最大化这一函数可得到最优解,即场景的布局。优化问题的公式表达如下:

s.t.

假定必然存在闭合墙面连接

优化目标中的即表示闭合连接墙面所围成的面积,最大化该项可避免内部非墙面平面的干扰。优化目标中的ec(wi,wj)=|o(wi),o(wj)|表示相接墙面对应端点之间的曼哈顿距离,如图5所示,其中a3,d2表示相接墙面对应端点,最小化该项可避免忽略布局中的非凸结构。

在本实施例中,设计了一种模拟退火算法,用于求得优化问题的近似最优解。可以使用遗传算法、蚁群算法等求解该问题。

在本实施例中,在得到优化问题的解,即场景中的墙面平面及其连接关系后,由房顶平面和地面平面容易得到场景的三维布局。

步骤s105,输出三维布局重建结果。

在本实施例中,为了对三维布局进行自动优化,进一步提高布局的合理性,本发明在得到墙面及其连接关系后,根据曼哈顿世界假设对其进行了垂直性调整,即约束墙面平面之间是成90度角的。

最终输出场景布局的三维面片模型作为三维布局重建的最终结果。

参见图6,为本实施例的三维布局重建的系统的组成结构示意图。为了便于说明,仅示出了与本发明实施例相关的部分。

三维布局重建系统可以是内置于终端设备(例如个人计算机、手机、平板电脑等)中的软件单元、硬件单元或者是软硬件结合的单元。

三维布局重建的系统包括:图像序列数据和惯性测量数据采集模块61、实时三维重建模块62、离线三维重建模块63、三维布局重建模块64及输出模块65,各模块具体功能如下:

图像序列数据和惯性测量数据采集模块61,用于在扫描场景时,实时采集图像序列数据和惯性测量数据;

实时三维重建模块62,用于接收图像序列数据和惯性测量数据,同时运行视觉惯性里程计算法对所述场景进行实时三维重建,得到关键帧图像序列及其空间位置与姿态;

离线三维重建模块63,用于通过实时三维重建得到的关键帧图像序列及其空间位置与姿态,运行运动恢复结构算法对场景进行离线三维重建,得到场景的稠密三维点云;

三维布局重建模块64,用于从离线三维重建得到的稠密点云中抽取平面结构,并基于平面结构和曼哈顿世界假设求解场景的三维布局;

输出模块65,用于对的三维布局结果进行调整,最终输出能表示场景的三维布局的三维面片模型。

进一步的,离线三维重建模块63包括:

特征匹配单元631,用于对与参考图像进行特征匹配的图像序列的空间范围进行限定,并得到范围限定后的图像特征匹配结果;

场景重建单元632,用于在特征匹配的结果基础上使用增量式运动恢复结构算法对所述场景进行重建,得到图像及其精确的空间位置和姿态;

稠密点云重建单元633,用于从图像及其精确的空间位置和姿态中使用多视角几何算法恢复所述场景的稠密三维点云。

进一步的,三维布局重建模块64包括:

平面抽取单元641,用于从稠密三维点云中抽取基本的平面结构;

平面筛选分类单元642,用于从平面结构中筛选、分类得到房顶平面、地面平面及候选墙面平面;

布局求解单元643,用于从房顶平面、地面平面及候选墙面平面中求解得到真正的墙面平面及其连接关系,即场景的三维布局。

进一步的,输出模块65包括:

布局调整单元651,用于将场景的三维布局调整为符合曼哈顿世界假设的结果,即相连接平面结构之间互相垂直;

模型生成单元652,用于从三维布局结果中生成可以表达该结果的三维面片模型并输出。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1