基于墙约束的房间自动分割方法技术

技术编号:33949059 阅读:12 留言:0更新日期:2022-06-29 22:01
本发明专利技术公开了基于墙约束的房间自动分割方法,包括:墙中心线检测、缺失墙推导、初始分割、能量优化四个主要步骤,能够有效地解决现有的房间分割方法存在的一旦点云中包含较多噪声或者存在数据缺失时,出现分割不足的问题。同时,现有方法通常难以得到完整而平滑的房间边界,而采用本方法时即使在处理包含噪声、离群点以及数据缺失等干扰的点云数据时,仍能够获得非常高的分割质量,分割出非常平滑且完整的房间边界,这对于对点云的进一步处理,比如单个房间内的语义分割或者三维重建等工作有十分重大的意义。工作有十分重大的意义。工作有十分重大的意义。

【技术实现步骤摘要】
基于墙约束的房间自动分割方法


[0001]本专利技术属于三维重建与计算机图形学领域,尤其涉及室内点云的房间分割方法。

技术介绍

[0002]如何针对现实世界进行三维描述,实现场景的数字化,目前需求应用越来越广,例如:随着传感器技术的快速发展和大量软件处理工具的出现,点云数据得以普及。点云数据通过大量的三维点集合来实现场景的数字化,能够密集而准确地表示出环境中对象的三维几何形状。
[0003]通常室内空间被定义为由永久性结构元素(如地板、天花板和墙壁)包围的空间,将室内空间细分为有意义的子空间(例如房间、走廊)已经在许多工作中进行了阐述,这些工作应用了多种方法并有不同的目标。由于空间细分提供了更简单的子空间之间的空间关系,因此可以根据这些关系为导航应用生成拓扑表示,详细而准确的拓扑地图可以显著节省获得导航轨迹所需的计算工作量。将平面图恰当地划分成单独的房间单元可能是语义映射或场所分类的一个有价值的部分。同样,人类与机器人的交流也大大受益于关于房间范围的共同概念。另外,房间分割作为室内三维重建任务的关键步骤之一,在AEC(建筑、工程和施工行业)行业中也是一个热烈讨论的话题。
[0004]现有的房间分割方法在处理包含噪声、离群点以及数据缺失等问题的点云时往往难以获得比较理想的分割结果。另外,现有方法分割出来的房间边界存在不平滑和不完整的问题。

技术实现思路

[0005]本专利技术的目的在于提供基于墙约束的房间自动分割方法,以解决上述
技术介绍
中提出的目前现有的房间分割方法在处理包含噪声、离群点以及数据缺失等问题的点云时往往难以获得比较理想的分割结果,以及现有方法分割出来的房间边界存在不平滑和不完整的问题。
[0006]为实现上述目的,本专利技术提供如下技术方案:基于墙约束的房间自动分割方法,包括以下步骤:
[0007]步骤一:检测墙中心线;从原始点云中提取墙约束,用以切断房间之间的连接完成初始分割,同时将结果作为构建图的输入,具体包括:
[0008]A)检测墙线,首先遍历点云中被分类为墙的点云面片并判断其是否与水平面垂直,对于每一个近似垂直于水平面墙面片,使用最小二乘方法将其拟合成平面,然后计算出拟合的墙平面与水平面形成的交线即墙线,该交线即为墙平面在水平面的投影,计算出点云中所有的墙线的集合;
[0009]B)生成双墙中心线,在原始墙线的集合中搜索成对的双墙,首先判断两个墙线是否平行,然后计算它们之间的距离,距离小于给定的墙厚度阈值时即为成对的双墙,计算出成对的双墙之间的中心线将其作为墙中心线;
[0010]C)生成外墙中心线,设定外墙的厚度t,则原始墙线W向两侧扩展t/2距离为候选墙中心线的位置,设为L1、L2,对于两个候选墙中心线,分别计算它们与原始墙线围成的矩形范围内包含点云的栅格(非空栅格)的数量SUM1、 SUM2,则外墙中心线的选择遵循以下规则:
[0011]其中centerline 为外墙中心线;
[0012]步骤二:检测墙中心线;对缺失的墙进行推导,获得鲁棒的墙线集合,具体包括:
[0013]D)将集合中每一条墙中心线的两个端点标记为自由端点和非自由端点,自由端点和非自由端点按照如下规则进行定义:如果在端点的一定范围内不存在其他墙中心线,即不与其他墙段相邻,为自由端点,反之称之为非自由端点;
[0014]E)根据墙中心线之间的邻接关系对集合中的墙中心线进行分组,以剔除房间之外的其他墙线的干扰。检测到的墙中心线集合分为了3组;
[0015]F)对墙中心线数量大于3的组合,按照一定的策略对组合中的自由端点生成虚拟墙线;假设墙线之间都是彼此垂直的,从自由端点出发,生成该自由端点所在墙中心线的垂线,垂线将与其他包含自由端点的墙中心线所在的直线相交,选择与距离最近的包含自由端点的直线构成的交点作为虚拟墙线的终点;如果不存在这样的墙中心线,则不会生成这段虚拟墙线;
[0016]步骤三:利用墙中心线对点云进行初始分割;具体包括:
[0017]G)首先对点云进行栅格化,对包含天花板平面点云的网格标记为已占用,未包含的网格标记为未占用,选取偏移距离范围内的点云作为天花板平面点云,偏移距离设置为低于面积最大的天花板点云面片的高度的0.2m范围;
[0018]H)去除房间与房间之间相连接的部分,使每个房间成为彼此孤立的区域;以墙中心线为中轴,将其两侧等距范围内的占用网格设置成未占用网格,去除范围的宽度应该要不大于对应位置的墙的厚度使得每个房间区域被未占用网格包围,成为彼此孤立的区域;
[0019]I)在得到了点云在二维平面的投影之后,将其进一步识别为不同的房间;在生成的二值图像上执行基于标记的分水岭算法,将二值图像分割成不同的区域,每个区域赋予唯一的编号,将图像分割结果赋值给点云,完成对点云的初始标记,遍历图像的所有像素,建立图像标签与房间编号的映射关系,然后以每个像素对应的栅格为单位,将像素值相同的所有栅格内的点标记为同一房间,直至完成对整个点云的标记;
[0020]步骤4:基于图切的全局最优分割;具体包括:
[0021]J)构建图;从墙中心线的集合构造无限长的线的排列,将水平面上所有墙壁候选中心线的交点,产生平面图,其中,的面F是建筑布局的区域(即房间的一部分或外部区域),边是可能的墙的部分,是墙中心线的交点;定义平面图的对偶图为,这里的每个顶点V对应图的面F,用其中心表示,边E表示中每个面的邻接关系,如果中两个面相邻,则它们之间会有一条边;
[0022]K)定义多标签能量函数;目标函数包括两项:将标签分配给面的一元成本和将标签对分配给相邻面的二元成本,一元成本提供房间(或外部区域)位置的提示,二元成本指导选择适当的边来分隔不同标记的面;对应于对偶图W 中,公式化形式表示如下:令为标签
的集合,这里是初始分割中每个标记区域的标签,为未分割区域的标签,为外部标签。给定一元成本函数产生将分配给顶点的成本,二元成本函数产生将成对标签分配给顶点的成本,最小化标签成本表示如下:
[0023]E(l)=∑U
v
(I
v
)+∑B
v,w
(l
v
,l
w
)

min
[0024]L)定义一元成本函数;首先获得每个栅格内的所有点标签并将其保存到一个有序集合中,然后选择该有序集合的中值作为所在栅格的标签,然后通过计算面内每个标签的栅格数量占面内所有栅格数的比例来获得每个面属于每个房间或外部区域的概率,那么一元损失函数定义为:
[0025][0026]其中,为加权因子,为单元复合形面内标签为的数量,为面内总标签的数量,用来惩罚单元复合形的面积对于标签分配的影响;
[0027]M)定义二元成本函数;对于二元损失函数,假设了一个虚拟外部顶点与房间顶点相连接构成边。那么二元损失函数定义为:为:
[0028]这里β为加权因子,w为墙中心线,e表示边(v,w),len(e)为了惩罚本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于墙约束的房间自动分割方法,其特征在于,包括以下步骤:步骤一:检测墙中心线;从原始点云中提取墙约束,用以切断房间之间的连接完成初始分割,同时将结果作为构建图的输入,具体包括:A)检测墙线,首先遍历点云中被分类为墙的点云面片并判断其是否与水平面垂直,对于每一个近似垂直于水平面墙面片,使用最小二乘方法将其拟合成平面,然后计算出拟合的墙平面与水平面形成的交线即墙线,该交线即为墙平面在水平面的投影,计算出点云中所有的墙线的集合;B)生成双墙中心线,在原始墙线的集合中搜索成对的双墙,首先判断两个墙线是否平行,然后计算它们之间的距离,距离小于给定的墙厚度阈值时即为成对的双墙,计算出成对的双墙之间的中心线将其作为墙中心线;C)生成外墙中心线,设定外墙的厚度t,则原始墙线W向两侧扩展t/2距离为候选墙中心线的位置,设为L1、L2,对于两个候选墙中心线,分别计算它们与原始墙线围成的矩形范围内包含点云的非空栅格的数量SUM1、SUM2,则外墙中心线的选择遵循以下规则:其中centerline为外墙中心线;步骤二:检测墙中心线;对缺失的墙进行推导,获得鲁棒的墙线集合,具体包括:D)将集合中每一条墙中心线的两个端点标记为自由端点和非自由端点,自由端点和非自由端点按照如下规则进行定义:如果在端点的一定范围内不存在其他墙中心线,即不与其他墙段相邻,为自由端点,反之称之为非自由端点;E)根据墙中心线之间的邻接关系对集合中的墙中心线进行分组,以剔除房间之外的其他墙线的干扰,将检测到的墙中心线集合分为了3组;F)对墙中心线数量大于3的组合,按照一定的策略对组合中的自由端点生成虚拟墙线;假设墙线之间都是彼此垂直的,从自由端点出发,生成该自由端点所在墙中心线的垂线,垂线将与其他包含自由端点的墙中心线所在的直线相交,选择与距离最近的包含自由端点的直线构成的交点作为虚拟墙线的终点;如果不存在这样的墙中心线,则不生成这段虚拟墙线;步骤三:利用墙中心线对点云进行初始分割;具体包括:G)对点云进行栅格化,将包含天花板平面点云的网格标记为已占用,未包含的网格标记为未占用,选取偏移距离范围内的点云作为天花板平面点云,偏移距离设置为低于面积最大的天花板点云面片的高度的0.2m范围;H)去除房间与房间之间相连接的部分,使每个房间成为彼此孤立的区域;以墙中心线为中轴,将其两侧等距范围内的占用网格设置成未占用网格,去除范围的宽度不大于对应位置的墙的厚度使得每个房间区域被未占用网格包围,成为彼此孤立的区域;I)在得到了点云在二维平面的投影之后,将其进一步识别为不同的房间;在生成的二值图像上执行基于标记的分水岭算法,将二值图像分割成不同的区域,每个区域赋予唯一的编号,将图像分割结果赋值给点云,完成对点云的初始标记,遍历图像的所有像素,建立图像标签与房间编号的映射关系,然后以每个像素对应的栅格为单位,将像素值相同的所有栅格内的点标记为同一房间,直至完成对整个点云的标记;
步骤4:基于图切的全局最优分割;具体包括:J)构建图;从墙中心线的集合构造无限长的线的排...

【专利技术属性】
技术研发人员:熊彪
申请(专利权)人:武汉称象科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1