本发明涉及户型平面图三维重建方法领域,具体是一种基于户型平面图的三维户型网格模型重建方法。
背景技术:
1、近些年来,随着房地产市场的火热,购房者对房屋户型的需求逐渐多样化,而市场上的户型展示形式却极为单一,满足不了用户的需求。建筑微缩模型、渲染效果图、三维动画是传统的建筑表现方式,但是,建筑微缩模型只能获得建筑鸟瞰模型,无法以人的视角感受建筑空间;渲染效果图只能提供静态局部的视觉体验;三维动画虽有较强的动态表现力,但不具备实时的交互性。
2、与之相比三维户型重建,是一种更为优秀的建筑表现方式,使用虚拟现实技术,能够为用户创建一种多源信息融合的、交互式的三维动态视景和实体行为的系统仿真,使用户沉浸其中,如同身临其境。虚拟现实技术也逐渐完善,也使得这项技术的前景更为明亮。
3、常规的三维户型重建,往往要考察房屋的基本信息,使用cad、3dmax等软件对户型墙体、窗户、门等建筑元素进行绘制、编辑,在此基础上再对室内布局进行优化,其中会包括多次修改与调整。三维户型重建的过程中,往往需要进行大量的人工干预,自动化程度不高,对于人力、资源都会产生较大的消耗。
4、三维户型重建的也存在两种相对简单的方法。一种根据ocr识别进行三维户型重构的方法,但这种方法在精度上存在着一定的问题,可能会造成墙段重叠断裂等现象进而导致最终的呈现效果不佳。另一种,则是根据网络上的既定模板进行调整设计,这种方法虽然操作简单但往往受到的约束较大,户型的表现风格较为单调。
5、对给定户型平面图,我们通过智能算法对平面图进行解析和识别。此处方法的优势在于,通过迭代使用基于深度神经网络的语义分割模型,不断优化墙体识别结果,提高了墙体等建筑元素的识别精度,使得被识别的建筑结构更为完整。
6、在此基础上,我们进一步从平面图的识别结果中提取户型图的结构和语义数据,基于提取的户型平面图信息,通过构造三维网格实现三维户型的重建,这种方法对于不同布局的户型都能有较好的适应性,能够为设计者或用户提供更为可靠合理的三维户型参考模型。
7、最后,我们基于unity 3d开发了基于户型平面图的三维户型虚拟漫游系统。该系统集成了上述户型平面图智能识别、户型图数据提取、三维户型重建等算法。用户可以通过鼠标或者键盘交互以第一人称的方式漫游三维户型,也可以通过接入虚拟现实穿戴设备进行沉浸式的虚拟漫游。
8、用户能够在虚拟的三维环境中,以动态交互的方式对未来的房屋作身临其境的全方位审视:可从任意角度、距离和细致程度观察场景。将虚拟现实技术引入户型远程展示,为房产公司、装修公司等相关企业开辟了一种新的产品展示方法。
技术实现思路
1、本发明提供了一种基于户型平面图的三维户型网格模型重建方法,以解决现有技术存在的三维模型重构过程自动化程度低、户型图中建筑结构信息识别精度低和设计约束较大的问题。
2、为了达到上述目的,本发明所采用的技术方案为:
3、一种基于户型平面图的三维户型网格模型重建方法,包括以下步骤:
4、步骤1、获取户型平面图,对户型平面图进行归一化处理得到归一化的平面图i;
5、步骤2、采用基于深度神经网络的语义分割模型,以步骤1得到的归一化的平面图i作为语义分割模型的输入,由语义分割模型识别平面图i中的墙体,得到关于墙体的初始语义分割图;然后以归一化的平面图i和初始语义分割图作为输入,由语义分割模型识别得到关于墙体的当前语义分割图;
6、接着迭代使用基于深度神经网络的语义分割模型进行识别,每次识别时以归一化的平面图i和上一次得到的语义分割图作为语义分割模型的输入,通过语义分割模型不断优化墙体识别结果,得到关于墙体的最终语义分割图o;
7、步骤3、在步骤2得到的墙体的最终语义分割图o中,通过墙体将空间划分为单独的房间区域,并进行房间区域的提取,得到不同的房间区域掩码r={r1,r2,…,rn},其中r1,r2,…,rn表示n个不同的房间区域;
8、步骤4、以归一化的平面图i和每个房间的区域掩码作为输入,由基于深度神经网络的多分类模型预测房间的语义,得到房间r={r1,r2,…,rn}对应的语义标签t={t1,t2,…,tn},其中t1,t2,…,tn表示n个房间区域对应的房间类型,如客厅,卧室等;然后将墙体的最终语义分割图o和房间的语义标签t结合起来,得到最终的平面图识别结果f;
9、步骤5、以步骤4得到的平面图识别结果f作为坐标提取程序的输入,以提取出所有墙壁的角点坐标。坐标提取程序如下:首先将平面图识别结果f中墙体的像素值设置为1,其他像素值设置为0,由此得到二值图像;
10、然后找出该二值图像中的所有轮廓,并对每条轮廓使用规整的多边形进行逼近,并获取逼近多边形的顶点坐标;接着将距离小于一定阈值的顶点合并,得到墙体的角点坐标vi=(xi,yi),则相邻的两个角点构成墙段;
11、对于每个房间,若有墙段位于户型边界上,则在该墙段上选取一段作为窗户;若有墙段与客厅相邻,则在最长的相邻墙段上选取一段作为房门;最后,将墙段、窗户、房门都统一表示为线段lij=(vi,vj,lij),其中lij表示墙段或窗户或房门或房间类型,vi表示墙段的左端点或下端点,vj表示墙段右端点或上端点;
12、步骤6、基于步骤5确定的墙段、房间信息生成一个与输入的户型平面图相同大小的栅格图,用于存储户型平面图中每个像素点的信息,所述栅格图中的每个栅格均记录对应栅格的类型以及房间类型。
13、步骤7、基于步骤6得到的栅格图,根据栅格的类型生成相应的三维网格,由此得到三维户型的网格模型m,过程如下:
14、若栅格类型是墙体,则从墙体的一个顶点出发,根据栅格图中储存的该顶点对应的栅格信息生成两个三角形面片,形成该顶点的上底面网格和下底面网格;然后根据该顶点周围的栅格信息,依次生成水平面的网格,直到墙体的另一个端点为止;若墙体栅格与地板栅格相邻,则还需要根据指定高度生成墙体的垂直面网格;
15、若栅格类型是房门,则获得房门的端点,生成两个垂直面网格,分别表示房门和房门上方的墙体;
16、若栅格类型是窗户,则获得窗户的端点,生成三个垂直面网格,分别表示窗户、窗户上方和下方的墙体。
17、进一步的步骤3中,采用种子填充算法实现房间区域的提取。
18、进一步的步骤5中,墙段上的窗户、房门位置均由随机函数指定。
19、进一步的,步骤6中生成栅格图的过程如下:首先,依次遍历每面墙的两个角点所构成的线段,根据线段的位置和类型,在栅格图中将栅格的类型设置为对应的墙壁线段的类型并记录对应的线段信息,从而将线段离散为栅格;然后,在栅格图中设置墙体两侧房间的类型;最后,在栅格图中将步骤5中提取的房间区域转化为栅格,其类型为地板。
20、与现有技术相比,本发明优点为:
21、本发明根据给定户型平面图,可以自动识别户型平面图并重建三维户型图,可用于虚拟漫游展示。本发明方法简单、易于部署于计算机,自动化程度高,减少繁琐的人工设计,基于深度神经网络的模型有充分可靠理论支撑。
1.一种基于户型平面图的三维户型网格模型重建方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于户型平面图的三维户型网格模型重建方法,其特征在于,步骤3中,采用种子填充算法实现房间区域的提取。
3.根据权利要求2所述的一种基于户型平面图的三维户型网格模型重建方法,其特征在于,步骤5中,墙段上的窗户、房门位置均由随机函数指定。
4.根据权利要求1所述的一种基于户型平面图的三维户型网格模型重建方法,其特征在于,步骤6中生成栅格图的过程如下:首先,依次遍历每面墙的两个角点所构成的线段,根据线段的位置和类型,在栅格图中将栅格的类型设置为对应的墙壁线段的类型并记录对应的线段信息,从而将线段离散为栅格;然后,在栅格图中设置墙体两侧房间的类型;最后,在栅格图中将步骤5中提取的房间区域转化为栅格,其类型为地板。