CN115761045B - 一种户型图生成方法、装置、设备及存储介质 - Google Patents
一种户型图生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115761045B CN115761045B CN202211457799.8A CN202211457799A CN115761045B CN 115761045 B CN115761045 B CN 115761045B CN 202211457799 A CN202211457799 A CN 202211457799A CN 115761045 B CN115761045 B CN 115761045B
- Authority
- CN
- China
- Prior art keywords
- unit space
- contour
- plane
- point cloud
- mth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Image Analysis (AREA)
Abstract
本申请实施例提供一种户型图生成方法、装置、设备及存储介质。在该方法中,可获取目标物理空间的N个单位空间各自的点云数据和全景图像,并在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓;根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。基于此,依次选中N个单位空间中的每个单位空间并获取N个单位空间的户型结构图后,对N个户型结构图执行拼接得到目标物理空间的户型图。通过这种方式,降低了房屋场景因素的影响,在室内物体遮挡房屋结构的情况下仍可较为准确地生成房屋户型图。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种户型图生成方法、装置、设备及存储介质。
背景技术
户型图是一种平面空间布局图,即对房屋内的各个独立空间的相应位置、布局进行描述的图型。用户可通过户型图,直观的看到房屋的走向布局。
现有技术中,通常可采集房屋的点云数据,并基于这些点云数据生成房屋的户型图。但是,这种方式受房屋的场景因素影响较大,在室内物体遮挡房屋结构的情况下,采集得到的点云数据不准确,进而导致无法准确地生成房屋的户型图。因此,需要一套解决方案较为准确地生成房屋户型图。
发明内容
本申请的多个方面提供一种户型图生成方法、装置、设备及存储介质,用以降低房屋场景因素的影响,在室内物体遮挡房屋结构的情况下较为准确地生成房屋户型图。
本申请实施例提供一种户型图生成方法,其用于生成目标物理空间的户型图,其中所述目标物理空间至少包括N个单位空间,所述方法包括:步骤1、获取所述N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;步骤2、在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;步骤3、根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;步骤4、判断所述第M个单位空间是否是最后一个未被选中的单位空间,若否,执行步骤5、将M赋值为M+1并返回步骤2;若是,执行步骤6、获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N为自然数,且1≤M≤N。
可选地,所述N个单位空间中的未被选中的单位空间各自对应的标识记录在第一列表,所述N个单位空间中的已被选中的单位空间各自对应的标识记录在第二列表;在所述N个单位空间选择第M个单位空间的点云数据和全景图像之后,还包括:在所述第一列表中删除所述第M个单位空间对应的标识,并在所述第二列表中新增所述第M个单位空间对应的标识;判断所述第M个单位空间是否是最后一个未被选中的单位空间,包括:判断所述第一列表中是否存在标识,若不存在标识,则所述第M个单位空间是最后一个未被选中的单位空间;若存在标识,则所述第M个单位空间不是最后一个未被选中的单位空间;或者,判断所述第二列表中的标识个数是否为N,若为N,则所述第M个单位空间是最后一个未被选中的单位空间;若不为N,则所述第M个单位空间不是最后一个未被选中的单位空间。
可选地,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,包括:利用点云区域增长算法对所述第M个单位空间的点云数据进行分割得到所述第M个单位空间的多个点云平面,任一点云平面由处于同一水平面的点云构成;从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面;所述基准点云平面对应所述第M个单位空间中的参考面,所述参考面为天花板或地面;根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓。
可选地,从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面,包括:根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面;从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面。
可选地,根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面,包括:在所述参考面为天花板的情况下,从所述多个点云平面中选择高度值大于第一高度阈值,且法线方向为垂直方向的至少一个候选点云平面;在所述参考面为地面的情况下,从所述多个点云平面中选择高度值小于第二高度阈值,且法线方向为垂直方向的至少一个候选点云平面;其中,所述第二高度阈值小于所述第一高度阈值。
可选地,从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面,包括:在所述候选点云平面的数量为1的情况下,将所述候选点云平面作为所述第M个单位空间的基准点云平面;在所述候选点云平面的数量大于1的情况下,从多个候选点云平面中选择包含的点云数量最多的一个候选点云平面作为一个单位空间的基准点云平面。
可选地,根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓,包括:提取所述第M个单位空间的基准点云平面的外轮廓点云,根据所述外轮廓点云的坐标生成参考轮廓,对所述参考轮廓进行平面化处理,得到所述第M个单位空间的第一平面轮廓。
可选地,根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓,包括:将所述第M个单位空间的全景图输入第二平面轮廓识别模型,所述第二平面轮廓识别模型依次包括墙线识别层和轮廓标注层;在所述墙线识别层中,对所述第M个单位空间的全景图中的墙体和地面进行识别,以得到墙体和地面的交界线的位置特征,并输出至所述轮廓标注层;在所述轮廓标注层中,根据所述交界线的位置特征对所述全景图中墙体和地面的交界线进行标注,根据所述交界线得到所述第M个单位空间的第二平面轮廓。
可选地,所述第一平面轮廓位于世界坐标系下,所述第二平面轮廓位于相机坐标系下,则根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图之前,还包括:对所述第M个单位空间的第二平面轮廓进行球面坐标变换,以将所述第二平面轮廓从所述全景图中投影至所述全景图对应的单位空间中;根据相机坐标系与世界坐标系之间的转换关系,将所述第M个单位空间的第二平面轮廓转换至世界坐标系中,所述转换关系是根据所述单位空间中的拍摄点位在相机坐标系的坐标和在世界坐标系中的坐标建立的。
可选地,根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图,包括:按照与所述目标物理空间满足的几何约束关系适配的第一选择方式,从所述第一平面轮廓和第二平面轮廓中选择目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;或者,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图。
可选地,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,包括:按照与所述目标物理空间满足的几何约束关系适配的第二选择方式,从所述第一平面轮廓和所述第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段;对选取的多个轮廓片段进行组合,得到所述目标轮廓。
可选地,所述第一选择方式按照优先级包括以下至少一种:选择与其他单位空间的轮廓无重叠的轮廓;选择顶点数量较少的轮廓;选择与参考轮廓匹配度较高的轮廓;所述参考轮廓是根据所述第M个单位空间的基准点云平面的外轮廓点云的坐标生成的;所述第二选择方式按照优先级包括以下至少一种:选择完整度较高的轮廓片段;选择清晰度较高的轮廓片段;选择与其他单位空间的轮廓无重叠的轮廓片段;选择顶点数量较少的轮廓片段;选择与所述参考轮廓匹配度较高的轮廓片段。
可选地,获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,包括:获取对所述N个户型结构图的第一拼接指令;响应所述第一拼接指令,对每个单位空间的户型结构图分别进行直角化处理,得到所述N个单位空间的直角化结构图;根据所述N个单位空间之间的相对位置关系,对两两相邻的单位空间的直角化结构图进行拼接,得到初始户型图;对于相邻单位空间的直角化结构图,识别存在缝隙的相邻图像边,调整所述相邻图像边中至少一个图像边的位置,以使所述缝隙的宽度小于设定宽度阈值,得到所述目标物理空间的户型图。
可选地,获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,包括:获取对所述N个户型结构图的第二拼接指令;所述第二拼接指令基于用户的人工拼接操作生成;响应所述第二拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图;或者,获取对所述N个户型结构图的第三拼接指令;响应所述第三拼接指令,将所述N个户型结构图输入到户型图拼接模型,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图。
本申请实施例还提供一种户型图生成装置,包括:信息获取模块,用于:获取目标物理空间中的N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;轮廓生成模块,用于:在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;结构图获取模块,用于:根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;判断模块,用于:判断所述第M个单位空间是否是最后一个未被选中的单位空间;返回模块,用于:若所述第M个单位空间不是最后一个未被选中的单位空间,则将M赋值为M+1并返回步骤2;拼接模块,用于:若所述第M个单位空间是最后一个未被选中的单位空间,则获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N为自然数,且1≤M≤N。
本申请实施例还提供一种电子设备,包括:存储器、处理器;其中,所述存储器用于:存储一条或多条计算机指令;所述处理器用于执行所述一条或多条计算机指令,以用于:执行所述户型图生成方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器能够实现所述户型图生成方法中的步骤。
本申请实施例提供的一种户型图生成方法、装置、设备及存储介质中,可可获取目标物理空间的N个单位空间各自的点云数据和全景图像,并在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓;根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。基于此,依次选中N个单位空间中的每个单位空间并获取N个单位空间的户型结构图后,对N个户型结构图执行拼接得到目标物理空间的户型图。通过这种方式,降低了房屋场景因素的影响,在室内物体遮挡房屋结构的情况下仍可较为准确地生成房屋户型图。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请一示例性实施例提供的户型图生成方法的流程示意图;
图2为本申请一示例性实施例提供的户型图生成方法的示例的示意图;
图3为本申请一示例性实施例提供的候选点云平面分布的示意图;
图4为本申请一示例性实施例提供的户型图生成装置的示意图;
图5为本申请一示例性实施例提供的电子设备的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中,通常可采集房屋的点云数据,并基于这些点云数据生成房屋的户型图。但是,这种方式受房屋的场景因素影响较大,在室内物体遮挡房屋结构的情况下,采集得到的点云数据不准确,进而导致无法准确地生成房屋的户型图。
针对上述现有技术存在的技术问题,在本申请一些实施例中,提供了一种解决方案,以下将结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请一示例性实施例提供的户型图生成方法的流程示意图。本实施例可由电子设备执行,该电子设备可以是智能手机、平板电脑、计算机等终端设备,也可以是服务器设备,本实施例不做限制。
以下将以电子设备为执行主体为例,进行示例性说明。如图1所示,户型图生成方法,包括:
步骤1、获取N个单位空间中每一单位空间的点云数据和全景图像,其中点云数据和全景图像是在每一单位空间内的至少一个采集点获取的。
步骤2、在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓。
步骤3、根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。
步骤4、判断第M个单位空间是否是最后一个未被选中的单位空间,若否,执行步骤5、将M赋值为M+1并返回步骤2;若是,执行步骤6、获取到对N个户型结构图的拼接指令,对N个户型结构图执行拼接以得到目标物理空间的户型图,以用于展示,流程结束,其中,M、N为自然数,且1≤M≤N。
需要说明的是,户型图生成方法可用于生成目标物理空间的户型图,其中,目标物理空间可为现实三维户型场景对应的房屋,可理解为待生成户型图的房屋。其中,目标物理空间至少包括N个单位空间,N为≥1的自然数。其中,单位空间指的是目标物理空间内的各个房间,比如,厨房、客厅、次卧、主卧或储物间等房间,这些房间均可被视为单位空间。
在本实施例中,电子设备可获取N个单位空间中每一单位空间的点云数据和全景图像。举例说明,某房屋由厨房、客厅、卧室和厕所组成,电子设备可获取厨房、客厅、卧室和厕所各自的全景图像和点云数据。
其中,点云数据和全景图像是在每一单位空间内的一个或多个采集点获取的。点云数据可由激光采集设备或者深度图采集设备进行采集。点云数据可由多个采集设备以旋转拍摄的方式来得到,点云数据中可包括每个单位空间中的360°全方位的点云。其中,全景图可由图像采集设备进行采集,全景图可由一个图像采集设备通过旋转拍摄得到,也可由多个图像采集设备进行拍摄并对拍摄到的图像进行合成得到。具体地,在每个单位空间中包括一个或多个采集点,由于目标物理空间中有大量的遮挡物(比如墙体),因此可在每个单位空间的采集点上架设激光采集设备和图像采集设备。对激光采集设备进行旋转来采集单位空间中的不同角度的点云,再将采集到的不同角度的点云按照角度合并起来,从而得到该单位空间的点云数据。对图像采集设备进行旋转来采集单位空间中的不同角度的图像,再将采集到的不同角度的图像进行拼接合并,从而得到该单位空间的全景图。
电子设备获取到N个单位空间中每一单位空间的点云数据和全景图像后,可在N个单位空间选择第M个单位空间的点云数据和全景图像。其中,M、N为自然数,且1≤M≤N。之后,电子设备可根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,并根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓。其中,第一平面轮廓指的是根据点云数据生成的平面轮廓,第二平面轮廓指的是根据全景图像生成的平面轮廓。使用“第一”和“第二”对平面轮廓进行限定,仅用于对根据点云数据生成的平面轮廓和根据全景图像生成的平面轮廓进行区分,并不对这两个平面轮廓的数量、形态和生成顺序等进行限定。关于生成第一平面轮廓和第二平面轮廓的执行顺序不做限定,可以顺序执行,也可以并行执行。
电子设备在生成第M个单位空间的第一平面轮廓和第二平面轮廓之后,可根据第M个单位空间的第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。其中,电子设备对第M个单位空间的第一平面轮廓和第二平面轮廓进行轮廓筛选,从而筛选出质量较好的轮廓,或者,电子设备可对第一平面轮廓和第二平面轮廓进行融合,从而融合得到质量较好的轮廓。其中,质量较好的轮廓,可理解为与单位空间在真实世界中的实际轮廓更加贴近、符合的轮廓。
基于上述步骤,电子设备在获取到第M个单位空间的户型结构图之后,可判断第M个单位空间是否是最后一个未被选中的单位空间。
若第M个单位空间不是最后一个未被选中的单位空间,则说明N个单位空间中仍有单位空间未被选中且未生成对应的户型结构图。因此,电子设备可将M赋值为M+1并在N个单位空间继续选择第M(M=M+1)个单位空间的点云数据和全景图像,并根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓。
基于上述过程,电子设备可通过为M赋新的值,并执行前述“选择第M个单位空间的点云数据和全景图像”以及“根据第一平面轮廓和第二平面轮廓获取第M个单位空间的户型结构图”两个步骤。通过这种方式,电子设备可继续选取N个单位空间中的未被选中的单位空间的点云数据和全景图像,并基于选中的单位空间的点云数据和全景图像,获取该单位空间的户型结构图。
电子设备若判定第M个单位空间是最后一个未被选中的单位空间,则可认为N个单位空间中的每一个单位空间的点云数据和全景图像均已被选中并生成了N个单位空间中每一个单位空间的户型结构图。在这种情况下,电子设备可在获取到对N个户型结构图的拼接指令后,对N个户型结构图执行拼接以得到目标物理空间的户型图,以用于展示。其中,拼接指令用于指示电子设备对N个户型结构图执行拼接。
以下将结合图2进行举例说明。其中,图2下侧的时间坐标轴(t轴)已示出各个步骤之间的时序。如图2所示,假设N=3且M=1,电子设备可在3个单位空间选择第1个单位空间的点云数据和全景图像,根据第1个单位空间的点云数据生成第1个单位空间的第一平面轮廓,以及根据第1个单位空间的全景图像生成第1个单位空间的第二平面轮廓,根据第一平面轮廓和第二平面轮廓,获取第1个单位空间的户型结构图。
若第1个单位空间不是最后一个未被选中的单位空间,则将1赋值为2,并继续在3个单位空间继续选择第2个单位空间的点云数据和全景图像,根据第2个单位空间的点云数据生成第2个单位空间的第一平面轮廓,以及根据第2个单位空间的全景图像生成第2个单位空间的第二平面轮廓,根据第一平面轮廓和第二平面轮廓,获取第2个单位空间的户型结构图。
若第2个单位空间不是最后一个未被选中的单位空间,则将2赋值为3,并在3个单位空间继续选择第3个单位空间的点云数据和全景图像,根据第3个单位空间的点云数据生成第3个单位空间的第一平面轮廓,以及根据第3个单位空间的全景图像生成第3个单位空间的第二平面轮廓,根据第一平面轮廓和第二平面轮廓,获取第3个单位空间的户型结构图。
由于目标物理空间中的3个单位空间均已被选中,第3个单位空间为最后一个未被选中的单位空间,因此,电子设备可在获取到对这3个单位空间各自的户型结构图的拼接指令后,对这3个户型结构图执行拼接以得到目标物理空间的户型图。
在本实施例中,可获取目标物理空间的N个单位空间各自的点云数据和全景图像,并在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓;根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。基于此,依次选中N个单位空间中的每个单位空间并获取N个单位空间的户型结构图后,对N个户型结构图执行拼接得到目标物理空间的户型图。通过这种方式,降低了房屋场景因素的影响,在室内物体遮挡房屋结构的情况下仍可较为准确地生成房屋户型图。
在一些可选的实施例中,N个单位空间中的每个单位空间均可对应一个标识。其中,N个单位空间中的未被选中的单位空间各自对应的标识可记录在第一列表,N个单位空间中的已被选中的单位空间各自对应的标识可记录在第二列表。可选地,第一列表中的多个标识可具有不同的优先级。
电子设备在N个单位空间选择第M个单位空间的点云数据和全景图像时,可在第一列表中的多个标识中,将优先级最高的目标标识对应的单位空间作为第M个单位空间并选择第M个单位空间的点云数据和全景图像。
电子设备在选择第M个单位空间的点云数据和全景图像之后,可在第一列表中删除第M个单位空间对应的标识,并在第二列表中新增第M个单位空间对应的标识。
对应地,电子设备在通过以下两种实施方式,判断第M个单位空间是否是最后一个未被选中的单位空间:
实施方式R1、判断第一列表中是否存在标识,若不存在标识,则说明第M个单位空间是最后一个未被选中的单位空间;若存在标识,则说明第M个单位空间不是最后一个未被选中的单位空间。
实施方式R2、判断第二列表中的标识个数是否为N,若为N,则说明第M个单位空间是最后一个未被选中的单位空间;若不为N,则说明第M个单位空间不是最后一个未被选中的单位空间。
在一些可选的实施例中,电子设备根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓时通过步骤S1-S3来:
步骤S1、电子设备可利用点云区域增长算法对第M个单位空间的点云数据进行分割得到第M个单位空间的多个点云平面。其中,任一点云平面由处于同一水平面的点云构成。
其中,区域生长算法用于将具有相似性的点云集合起来构成区域,电子设备可在每个平面上选取一个点云作为种子点,并将种子点作为生长的起点;从这个起点开始,将种子点周围邻域中,与该种子点有相同或相似的高度信息的点云合并到种子点所在的平面中。合并到种子点所在的平面上的点可作为新的种子继续向四周生长,直到再没有与该种子点有相同或相似的高度信息的点云可以被合并到种子点所在的平面中,进而可得到了多个点云平面,即完成了对点云数据的分割。
步骤S2、从第M个单位空间的多个点云平面中选择第M个单位空间的基准点云平面。
其中,基准点云平面指的是与单位空间的实际户型最贴近的点云平面。其中,第M个单位空间的基准点云平面对应第M个单位空间中的参考面,该参考面为天花板或地面。需要说明的是,天花板或地面均能体现其所属单位空间的轮廓,可以选择天花板作为参考面,也可以选择地面作为参考面。在一些实施例中,选择天花板作为参考面,在另一些实施例中,选择地面作为参考面。当然,在一些实施例中,也可以同时选择天花板和地面作为参考面,在一些单位空间中使用天花板,在另一些单位空间中使用地面,或者,在第M个单位空间中同时结合天花板和地面来确定该单位空间的轮廓。
以天花板作为参考面为例,进行举例说明。电子设备可对第M个单位空间的点云数据进行分割,得到点云平面P1-P15共十五个点云平面,并从这十五个点云平面选择第M个单位空间的基准点云平面,且该基准点云平面对应第M个单位空间中的天花板。
步骤S3、根据第M个单位空间的基准点云平面,生成第M个单位空间的第一平面轮廓。
其中,由于基准点云平面是与单位空间的实际户型最贴近的点云平面,因此,基准点云平面相较于其他的点云平面,可较为准确地反映单位空间的实际户型。基于此,电子设备可根据第M个单位空间的基准点云平面生成第M个单位空间的第一平面轮廓。
承接前述实施例,前述实施例中的步骤S2“从第M个单位空间的多个点云平面中选择第M个单位空间的基准点云平面”可基于以下步骤S21-S22实现:
步骤S21、根据多个点云平面的高度值和法线方向,从多个点云平面中选择高度值和法线方向与参考面适配的至少一个候选点云平面。其中,每个点云平面都有各自的高度值和法线方向,高度值可用来表明点云平面相对于地面的高度,法线方向可用来表明点云平面的方向;参考面对应有高度值和法线方向的预设条件。电子设备可判断每个点云平面的高度值和法线方向是否满足参考面对应的预设条件,若任一点云平面的高度值和法线方向满足参考面对应的预设条件,则可确定该点云平面为与参考面适配的候选点云平面。
以下将就参考面为地面和参考面为天花板两种情况,对步骤121进行进一步说明。其中,天花板对应有第一高度阈值,地面对应有第二高度阈值,第二高度阈值小于第一高度阈值。在参考面为天花板的情况下,从多个点云平面中选择高度值大于第一高度阈值,且法线方向为垂直方向的至少一个候选点云平面;在参考面为地面的情况下,从多个点云平面中选择高度值小于第二高度阈值,且法线方向为垂直方向的至少一个候选点云平面。其中,候选点云平面的法线方向为垂直方向也就意味着候选点云平面平行于水平面。举例说明,以参考面为天花板,第一高度阈值为2.56为例,点云平面P20-点云平面P27的高度分别为2.4m、2.51m、2.52m、2.53m、2.54m、2.57m、2.58m、2.59m,其中,P20和P23-P27这六个点云平面的法线方向为垂直方向,因此,电子设备可从点云平面P20-点云平面P27这八个点云平面中选择高度值大于2.56m,且法线方向为垂直方向的点云平面P25-P27这三个点云平面作为至少一个候选点云平面。
基于步骤S21可选择得到至少一个候选点云平面,进而可通过以下步骤S22从至少一个候选点云平面中进一步选取第M个单位空间的基准点云平面:
步骤S22、从至少一个候选点云平面中选择第M个单位空间的基准点云平面。
需要说明的是,当第M个单位空间中有吊顶或者摆放了衣柜或电视柜等家具时,这些房屋装修或者家具摆放的因素可能会导致形成一些包含点云数量较少的候选平面,且这些错误形成的候选平面可能无法作为基准点云平面,从而导致一个单位空间内可能存在多个候选点云平面,进而可使得候选点云平面的数量大于1。当第M个单位空间中没有房屋装修或者家具摆放的因素干扰时,电子设备可能不会错误形成候选平面,因此,在这种情况下,电子设备可选择得到一个候选点云平面。基于此,选择得到的候选点云平面的数量可能等于1或者大于1。
以下将就候选点云平面的数量等于1或者大于1两种情况,对步骤S22进行进一步说明。
情况1:候选点云平面的数量为1,电子设备可将唯一一个候选点云平面直接作为第M个单位空间的基准点云平面。
情况2:在候选点云平面的数量大于1的情况下,电子设备可从多个候选点云平面中选择包含的点云数量最多的一个候选点云平面作为一个单位空间的基准点云平面,比如,如图3所示,从第M个单位空间(即单位空间H3)的多个点云平面中选择的至少一个候选点云平面分别为候选点云平面P25、候选点云平面P26和候选点云平面P27,在这些候选点云平面中,选择包含的点云数量最多的候选点云平面P25,作为单位空间H3的基准点云平面。通过这种方式,可筛选掉因房屋装修或者家具摆放而错误形成的候选点云平面,从而降低可房屋装修或者家具摆放的因素对选择基准点云平面的影响。
通过上述步骤S21和步骤S22,电子设备可从多个候选点云平面中较为准确地选择第M个单位空间的基准点云平面。
承接前述实施例,前述实施例中的步骤S3“根据第M个单位空间的基准点云平面,生成第M个单位空间的第一平面轮廓”可基于以下方式实现:
电子设备可提取第M个单位空间的基准点云平面中的外轮廓点云,其中,外轮廓点云指的是构成基准点云平面的外缘的点云。电子设备可对基准点云平面上的各个点云执行膨胀操作,使各个点云变大直到与其他相邻点云连成一片,再对经过膨胀操作的各个点云进行腐蚀,从而得到经过腐蚀的外轮廓。通过膨胀和腐蚀操作,电子设备可隐藏除外轮廓之外的其他部分的点云,进而可从包含大量点云的基准点云平面上快速获取基准点云平面中的外轮廓点云。
提取外轮廓点云后,可根据外轮廓点云的坐标生成参考轮廓,其中,参考轮廓是对基准点云平面中的外轮廓点云连线得到的轮廓,可用来表示基准点云平面的外轮廓。电子设备可对生成的参考轮廓进行平面化处理,得到第M个单位空间的第一平面轮廓。其中,平面化处理指的是去除参考轮廓中的高度信息,换言之,平面化处理指的是将参考轮廓从立体形态转变为平面形态。
在一些可选的实施例中,电子设备根据第M个单位空间的全景图生成第M个单位空间的第二平面轮廓,可基于以下步骤实现:
步骤R1、将第M个单位空间的全景图输入轮廓识别模型,轮廓识别模型依次包括墙线识别层和轮廓标注层。其中,轮廓识别模型可为:LayoutNet模型(一种可识别全景图轮廓的模型)、Horizonet模型(一种可识别全景图轮廓的模型)或者其他可识别全景图轮廓的模型,本实施例不做限制。其中,墙线识别层用于对单位空间的全景图中的墙体和地面进行识别;轮廓标注层用于对全景图中墙体和地面的交界线进行标注。
步骤R2、在墙线识别层中,对第M个单位空间的全景图中的墙体和地面进行识别,以得到墙体和地面的交界线的位置特征,并输出至轮廓标注层。其中,墙体和地面的交界线的位置特征可用于描述墙体和地面的交界线在全景图中的位置。
步骤R3、在轮廓标注层中,可根据交界线的位置特征对全景图中墙体和地面的交界线进行标注。在轮廓标注层中,可根据标注的交界线得到第M个单位空间的第二平面轮廓,其中,轮廓标注层可将标注的交界线从全景图中提取出来,从而得到第M个单位空间的第二平面轮廓。
通过这种方式,电子设备可根据第M个单位空间的全景图,较为准确地生成第M个单位空间的第二平面轮廓。
需要说明的是,前述实施例中的第一平面轮廓是根据基准点云平面生成的,基准点云平面包含点云数据,点云数据是通过激光采集设备采集到的,激光采集设备使用世界坐标系,因此,第一平面轮廓位于世界坐标系下;同理,第二平面轮廓是基于全景图生成的,全景图是由图像采集设备采集的,图像采集设备使用的是相机坐标系,因此,第二平面轮廓位于相机坐标系下。考虑到第一平面轮廓和第二平面轮廓所处的坐标系不同,为便于后续较为准确地根据第一平面轮廓和第二平面轮廓获取第M个单位空间的户型结构图,电子设备需要在获取第M个单位空间的户型结构图之前,将第M个单位空间的第二平面轮廓转换至世界坐标系中。
可选地,电子设备将第M个单位空间的第二平面轮廓转换至世界坐标系时,可先对第M个单位空间的第二平面轮廓进行球面坐标变换,以将第二平面轮廓从全景图中投影至全景图对应的单位空间中。其中,单位空间对应的坐标系即点云所处的相机坐标系,换句话说,电子设备可根据球面坐标系与单位空间的点云所处的相机坐标系之间的变换关系,将第二平面轮廓从全景图的球面坐标系转换到点云所处的相机坐标系中。
进行球面坐标变换之后,电子设备可根据相机坐标系与世界坐标系之间的转换关系,将第M个单位空间的第二平面轮廓转换至世界坐标系中,其中,相机坐标系与世界坐标系之间的转换关系是根据第M个单位空间中的拍摄点位在相机坐标系的坐标和在世界坐标系中的坐标建立的。其中,图像采集设备和激光采集设备在同一拍摄点位进行拍摄,该拍摄点位在相机坐标系中具有一个坐标(通常是0,0,0),同时,该拍摄点位在世界坐标系中也具有一个坐标(x,y,z),根据该拍摄点位在两个坐标系中的坐标就可以建立两个坐标系之间的转换关系。
在一些可选的实施例中,前述实施例中的步骤13“根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图”,可基于以下两种实施方式实现:
实施方式一、按照与目标物理空间满足的几何约束关系适配的第一选择方式,从第一平面轮廓和第二平面轮廓中选择目标轮廓,根据目标轮廓生成第M个单位空间的户型结构图。
其中,目标物理空间满足一定的几何约束条件。其中,目标物理空间满足的几何约束关系可以是曼哈顿假设,其中,曼哈顿假设为目标物理空间中的地面、天花板、墙面之间存在垂直或者正交关系,比如,在目标物理空间中,地面和天花板均垂直于各个墙面,各个相邻墙面之间也是垂直的,换句话说,目标物理空间中的第M个单位空间的轮廓的每条边都是直线。基于此,电子设备可按照与几何约束关系适配的第一选择方式,从第M个单位空间的第一平面轮廓和第二平面轮廓中选择质量较好的轮廓作为第M个单位空间的目标轮廓,并根据目标轮廓生成第M个单位空间的户型结构图。其中,质量较好的轮廓,可理解为与第M个单位空间在真实世界中的实际的轮廓更加贴近、符合的轮廓。其中,目标轮廓指的是从第M个单位空间的第一平面轮廓和第二平面轮廓中选择的轮廓。在本实施方式中,目标轮廓可能是第一平面轮廓,也可能是第二平面轮廓。
实施方式二、对第一平面轮廓和第二平面轮廓进行融合,得到目标轮廓,根据目标轮廓生成第M个单位空间的户型结构图。
具体的,电子设备可按照与目标物理空间满足的几何约束关系适配的第二选择方式,从第一平面轮廓和第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段。对选取的多个轮廓片段进行组合,得到目标轮廓。进而,可根据组合得到的目标轮廓生成第M个单位空间的户型结构图。
比如,第一平面轮廓和第二平面轮廓均为矩形,电子设备可从第一平面轮廓左侧的轮廓片段L1和第二平面轮廓左侧的轮廓片段L1'中,选取质量较好的轮廓片段L1;从第一平面轮廓右侧的轮廓片段L2和第二平面轮廓右侧的轮廓片段L2'中,选取质量较好的轮廓片段L2';从第一平面轮廓上侧的轮廓片段L3和第二平面轮廓上侧的轮廓片段L3'中,选取质量较好的轮廓片段L3';从第一平面轮廓下侧的轮廓片段L4和第二平面轮廓下侧的轮廓片段L4'中,选取质量较好的轮廓片段L4。进而,电子设备可对选取的L1、L2'、L3'和L4进行组合,得到目标轮廓,进而,可根据该目标轮廓生成户型结构图。
在上述实施方式一中,第一选择方式按照优先级包括以下至少一种:
选择方式一、选择与其他单位空间的轮廓无重叠的轮廓。在该选择方式中,若第一平面轮廓和第二平面轮廓中的任一轮廓与其他单位空间的轮廓重叠,则说明该任一轮廓在生成过程中出现了较大误差,因此不能较为准确地表示单位空间的实际轮廓。因此,与其他单位空间的轮廓无重叠的轮廓相较于与其他单位空间的轮廓有重叠的轮廓,可更准确地表示单位空间的实际轮廓。
选择方式二、选择顶点数量较少的轮廓。在该选择方式中,一般的房间通常呈矩形状,一般为4个顶点,顶点数量较多说明房间内存在家具或者吊顶遮挡等因素影响了轮廓的生成,换句话说,顶点数量较多的轮廓由于受到家具或者吊顶遮挡等因素的影响,往往不能不能较为准确地描述单位空间的实际轮廓。因此,顶点较少的轮廓可更准确地表示单位空间的实际轮廓。
选择方式三、选择与参考轮廓匹配度较高的轮廓。其中,参考轮廓是根据单位空间的基准点云平面的外轮廓点云的坐标生成的。在该选择方式中,轮廓与参考轮廓匹配度越高,意味着轮廓与单位空间整体的外轮廓更加符合,从而可更准确地表示单位空间的实际轮廓。
可选地,以上三种选择方式可任意组合,且在组合方式中,被组合的选择方式之间的执行顺序可具有优先级,比如,选择方式一的优先级最高,选择方式二的优先级次之,选择方式三的优先级最低,在这种情况下,可按照选择方式一、二、三之间的优先级执行,而且,如果采用高优先级选择方式在第一平面轮廓和第二平面轮廓之间成功选择出一条轮廓作为目标轮廓,则不再执行低优先级选择方式。只有在采用高优先级选择方式无法选择出目标轮廓的情况下,才会继续执行低优先级选择方式。举例说明,首先,采用选择方式一来选择与其他单位空间的轮廓无重叠的轮廓,由于第一平面轮廓和第二平面轮廓均与其他单位空间的轮廓无重叠,故无法从第一平面轮廓和第二平面轮廓之间成功选择目标轮廓,然后采用选择方式二来选择顶点数量较少的轮廓,由于第一平面轮廓和第二平面轮廓的顶点数量相同,故无法从第一平面轮廓和第二平面轮廓之间成功选择目标轮廓,最后采用选择方式三,选择出与参考轮廓匹配度较高的第二平面轮廓作为目标轮廓。
可选地,以上三种选择方式也可按照任意执行顺序进行任意组合,且在组合方式中,被组合的所有选择方式都要被执行,比如,按照选择方式一、二、三进行组合,按照任意执行顺序来执行被组合的选择方式一、二、三,从而在第一平面轮廓和第二平面轮廓中选择出与其他单位空间的轮廓无重叠、顶点数量较少并且与参考轮廓匹配度较高的轮廓作为目标轮廓。
通过这种方式,电子设备可通过多元化地选择方式,更为准确地从第一平面轮廓和第二平面轮廓中选择出目标轮廓。
在上述实施方式二中,第二选择方式按照优先级包括以下至少一种:
选择方式一、选择完整度较高的轮廓片段。其中,轮廓片段的完整度越高,轮廓片段越能准确表示单位空间的实际轮廓。
选择方式二、选择清晰度较高的轮廓片段。其中,轮廓片段的清晰度越高,轮廓片段越能准确表示单位空间的实际轮廓。
选择方式三、选择与其他单位空间的轮廓无重叠的轮廓片段。在该选择方式中,若第一平面轮廓和第二平面轮廓中的任一轮廓片段与其他单位空间的轮廓重叠,则说明该任一轮廓片段在生成过程中出现了较大误差,因此不能较为准确地表示单位空间的实际轮廓。因此,与其他单位空间的轮廓无重叠的轮廓片段相较于与其他单位空间的轮廓有重叠的轮廓片段,可更准确地表示单位空间的实际轮廓。
选择方式四、选择顶点数量较少的轮廓片段。在该选择方式中,一般的房间通常呈矩形状,一般为4个顶点,顶点数量较多说明房间内存在家具或者吊顶遮挡等因素影响了轮廓片段的生成,换句话说,顶点数量较多的轮廓片段由于受到家具或者吊顶遮挡等因素的影响,往往不能不能较为准确地描述单位空间的实际轮廓。因此,顶点较少的轮廓片段可更准确地表示单位空间的实际轮廓。
选择方式五、选择与参考轮廓匹配度较高的轮廓片段。其中,参考轮廓是根据单位空间的基准点云平面的外轮廓点云的坐标生成的。在该选择方式中,轮廓片段与参考轮廓匹配度越高,意味着轮廓片段与单位空间整体的外轮廓更加符合,从而可更准确地表示单位空间的实际轮廓。
可选地,以上五种选择方式可任意组合,且在组合方式中,被组合的选择方式之间的执行顺序可具有优先级,比如,将选择方式三、四、五进行组合,选择方式三的优先级最高,选择方式四的优先级次之,选择方式五的优先级最低,在这种情况下,可按照选择方式三、四、三五之间的优先级执行,而且,如果采用高优先级选择方式在第一平面轮廓左侧的轮廓片段和第二平面轮廓左侧的轮廓片段之间成功选择出质量较好的轮廓片段,则不再执行低优先级选择方式。只有在采用高优先级选择方式无法选择出质量较好的轮廓片段的情况下,才会继续执行低优先级选择方式。举例说明,首先,采用选择方式三来选择与其他单位空间的轮廓无重叠的轮廓片段,由于第一平面轮廓和第二平面轮廓的左侧的轮廓片段均与其他单位空间的轮廓无重叠,故无法从第一平面轮廓左侧的轮廓片段和第二平面轮廓左侧的轮廓片段之间成功选择出质量较好的轮廓片段,然后采用选择方式四来选择顶点数量较少的轮廓片段,由于第一平面轮廓左侧的轮廓片段和第二平面轮廓左侧的轮廓片段的顶点数量相同,故无法从第一平面轮廓左侧的轮廓片段和第二平面轮廓左侧的轮廓片段之间成功选择质量较好的轮廓片段,最后采用选择方式五,选择出与参考轮廓匹配度较高的第一平面轮廓左侧的轮廓片段作为质量较好的轮廓片段。
可选地,以上五种选择方式也可按照任意执行顺序进行任意组合,且在组合方式中,被组合的所有选择方式都要被执行,比如,按照选择方式一、二、三、四、五进行组合,按照任意执行顺序来执行被组合的选择方式一、二、三、四、五,从而在第一平面轮廓和第二平面轮廓的处于同侧的两个轮廓片段中选择出完整度较高、清晰度较高、与其他单位空间的轮廓无重叠、顶点数量较少并且与参考轮廓匹配度较高的轮廓片段。
通过这种方式,电子设备可通过多元化地选择方式,更为准确地从第一平面轮廓和第二平面轮廓中的处于同侧的两个轮廓片段中选取一个质量较好的轮廓片段,进而可更为准确地对第一平面轮廓和第二平面轮廓进行融合。
在前述各个实施例的基础上,电子设备获取到对N个户型结构图的拼接指令,对N个户型结构图执行拼接以得到目标物理空间的户型图,可基于以下实施方式S1、实施方式S2和实施方式S3共三个实施方式实现:
实施方式S1:电子设备可获取对N个户型结构图的第一拼接指令,并响应该第一拼接指令,对多个单位空间的户型结构图分别进行直角化处理,得到多个单位空间的直角化结构图。可选地,电子设备可将户型结构图近似为一个矩形,并将这个矩形作为单位空间的直角化结构图。
之后,电子设备可根据多个单位空间之间的相对位置关系,对两两相邻的单位空间的直角化结构图进行拼接,得到初始户型图。需要说明的是,电子设备可以从多个单位空间各自的点云数据中提取多个单位空间之间的相对位置关系,或者,也可以根据各单位空间的全景图确定多个单位空间之间的相对位置关系。各单位空间的全景图之间存在部分重叠图像,例如在客厅拍摄全景图时可以拍摄到主卧、阳台或厨房等中部分图像,在主卧拍摄全景图时会拍摄到客厅、次卧或卫生间等中部分图像。电子设备可以根据各单位空间中的拍摄点位、拍摄视角以及各单位空间的全景图中的重叠部分,确定多个单位空间之间的相对位置关系。
其中,初始户型图中,两两相邻的单位空间可能存在缝隙,因此,电子设备在拼接得到初始户型图后,对于相邻单位空间的直角化结构图,可识别存在缝隙的相邻图像边,调整相邻图像边中至少一个图像边的位置,以使缝隙的宽度小于设定宽度阈值,得到目标物理空间的户型图。可选地,电子设备可确定相邻单位空间的两个直角化结构图上的每条边的坐标,并对两个直角化结构图上的每条边的坐标进行对比,以在两个直角化结构图上确定相邻的两条边,并将确定的相邻的两条边作为相邻图像边,通过这种方式,电子设备可识别存在缝隙的相邻图像边。
比如,电子设备识别到图像边U1和图像边U2之间存在缝隙,可将图像边U1向图像边U2一侧拉伸,也可将图像边U2向图像边U1一侧拉伸,还可同时相向拉伸图像边U1和图像边U2,以缩小图像边U1和图像边U2之间的缝隙的宽度。其中,对图像边进行拉伸实际上是指调整图像边上各轮廓点的位置坐标,使得相邻图像边上对应轮廓点的位置坐标更加接近直至重合或小于等于设定的宽度阈值。其中,设定宽度阈值可为0、0.1、0.4或者0.5等等,本实施例不做限制。对初始户型图进行调整后,可缩小相邻图像边的缝隙,从而可得到目标物理空间的户型图。
实施方式S2:电子设备可获取对N个户型结构图的第二拼接指令,其中,第二拼接指令基于用户的人工拼接操作生成。换言之,用户对N个户型结构图进行人工拼接时,电子设备可基于用户的人工拼接操作生成第二拼接指令。电子设备可响应第二拼接指令,对N个户型结构图执行拼接以得到目标物理空间的户型图。
实施方式S3、电子设备可获取对N个户型结构图的第三拼接指令,并响应第三拼接指令,将N个户型结构图输入到户型图拼接模型。该户型图拼接模型可对N个户型结构图执行拼接以得到目标物理空间的户型图。
其中,户型图拼接模型可预先通过训练数据训练得到,该训练数据可包括:户型结构图样本数据。在训练户型图拼接模型时,可将户型结构图样本数据输入户型图拼接模型,模型可输出拼接后的户型图。将模型输出的户型图与真实的户型图进行对比,即可确定户型图拼接模型的拼接误差。以不断收敛该拼接误差为目标对户型图拼接模型的参数进行优化,即可得到训练完成的户型图拼接模型。
需要说明的是,在上述实施方式一、二、三中,使用“第一”、“第二”和“第三”对拼接指令进行限定,仅用于对拼接指令进行区分,并不对拼接指令的数量和顺序进行限定。
且,以上实施方式一、二、三可单独执行,也可任意组合执行。比如,将实施方式一、二组合到一起;将实施方式一、三组合到一起;将实施方式二、三组合到一起;将实施方式一、二、三组合到一起。
以下将以实施方式一、三组合为例进行说明:电子设备可分别基于实施方式一和实施方式三得到一个户型图,共两个户型图。进而,电子设备可对这两个户型图进行进一步融合。比如,可针对两个户型图中的处于左侧的两个图像边,计算这两个图像边各自的坐标,并将这两个坐标的平均值作为目标户型图的左侧的图像边的坐标。通过这种方式,依次确定目标户型图的左侧、右侧、上侧和下侧的图像边的坐标;进而,可形成与目标物理空间的实际户型更为契合的目标户型图。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如1、2等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
本申请实施例还提供一种户型图生成装置,如图4所示,该装置包括:信息获取模块401,用于:获取目标物理空间中N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;轮廓生成模块402,用于:在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;结构图获取模块403,用于:根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;判断模块404,用于:判断所述第M个单位空间是否是最后一个未被选中的单位空间;返回模块405,用于:若所述第M个单位空间不是最后一个未被选中的单位空间,则将M赋值为M+1并返回步骤2;拼接模块406,用于:若所述第M个单位空间是最后一个未被选中的单位空间,则获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N为自然数,且1≤M≤N。
进一步可选地,所述N个单位空间中的未被选中的单位空间各自对应的标识记录在第一列表,所述N个单位空间中的已被选中的单位空间各自对应的标识记录在第二列表;轮廓生成模块402在所述N个单位空间选择第M个单位空间的点云数据和全景图像之后,还用于:在所述第一列表中删除所述第M个单位空间对应的标识,并在所述第二列表中新增所述第M个单位空间对应的标识;判断模块404判断所述第M个单位空间是否是最后一个未被选中的单位空间时,具体用于:判断所述第一列表中是否存在标识,若不存在标识,则所述第M个单位空间是最后一个未被选中的单位空间;若存在标识,则所述第M个单位空间不是最后一个未被选中的单位空间;或者,判断所述第二列表中的标识个数是否为N,若为N,则所述第M个单位空间是最后一个未被选中的单位空间;若不为N,则所述第M个单位空间不是最后一个未被选中的单位空间。
进一步可选地,轮廓生成模块402根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓时,具体用于:利用点云区域增长算法对所述第M个单位空间的点云数据进行分割得到所述第M个单位空间的多个点云平面,任一点云平面由处于同一水平面的点云构成;从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面;所述基准点云平面对应所述第M个单位空间中的参考面,所述参考面为天花板或地面;根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓。
进一步可选地,轮廓生成模块402从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面时,具体用于:根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面;从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面。
进一步可选地,轮廓生成模块402根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面时,具体用于:在所述参考面为天花板的情况下,从所述多个点云平面中选择高度值大于第一高度阈值,且法线方向为垂直方向的至少一个候选点云平面;在所述参考面为地面的情况下,从所述多个点云平面中选择高度值小于第二高度阈值,且法线方向为垂直方向的至少一个候选点云平面;其中,所述第二高度阈值小于所述第一高度阈值。
进一步可选地,轮廓生成模块402从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面时,具体用于:在所述候选点云平面的数量为1的情况下,将所述候选点云平面作为所述第M个单位空间的基准点云平面;在所述候选点云平面的数量大于1的情况下,从多个候选点云平面中选择包含的点云数量最多的一个候选点云平面作为一个单位空间的基准点云平面。
进一步可选地,轮廓生成模块402根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓时,具体用于:提取所述第M个单位空间的基准点云平面的外轮廓点云,根据所述外轮廓点云的坐标生成参考轮廓,对所述参考轮廓进行平面化处理,得到所述第M个单位空间的第一平面轮廓。
进一步可选地,轮廓生成模块402根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓时,具体用于:将所述第M个单位空间的全景图输入第二平面轮廓识别模型,所述第二平面轮廓识别模型依次包括墙线识别层和轮廓标注层;在所述墙线识别层中,对所述第M个单位空间的全景图中的墙体和地面进行识别,以得到墙体和地面的交界线的位置特征,并输出至所述轮廓标注层;在所述轮廓标注层中,根据所述交界线的位置特征对所述全景图中墙体和地面的交界线进行标注,根据所述交界线得到所述第M个单位空间的第二平面轮廓。
进一步可选地,所述第一平面轮廓位于世界坐标系下,所述第二平面轮廓位于相机坐标系下,则轮廓生成模块402根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图之前,还用于:对所述第M个单位空间的第二平面轮廓进行球面坐标变换,以将所述第二平面轮廓从所述全景图中投影至所述全景图对应的单位空间中;根据相机坐标系与世界坐标系之间的转换关系,将所述第M个单位空间的第二平面轮廓转换至世界坐标系中,所述转换关系是根据所述单位空间中的拍摄点位在相机坐标系的坐标和在世界坐标系中的坐标建立的。
进一步可选地,结构图获取模块403根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图时,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第一选择方式,从所述第一平面轮廓和第二平面轮廓中选择目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;或者,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图。
进一步可选地,结构图获取模块403对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓时,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第二选择方式,从所述第一平面轮廓和所述第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段;对选取的多个轮廓片段进行组合,得到所述目标轮廓。
进一步可选地,所述第一选择方式按照优先级包括以下至少一种:选择与其他单位空间的轮廓无重叠的轮廓;选择顶点数量较少的轮廓;选择与参考轮廓匹配度较高的轮廓;所述参考轮廓是根据所述第M个单位空间的基准点云平面的外轮廓点云的坐标生成的;所述第二选择方式按照优先级包括以下至少一种:选择完整度较高的轮廓片段;选择清晰度较高的轮廓片段;选择与其他单位空间的轮廓无重叠的轮廓片段;选择顶点数量较少的轮廓片段;选择与所述参考轮廓匹配度较高的轮廓片段。
进一步可选地,拼接模块406获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图时,具体用于:获取对所述N个户型结构图的第一拼接指令;响应所述第一拼接指令,对每个单位空间的户型结构图分别进行直角化处理,得到所述N个单位空间的直角化结构图;根据所述N个单位空间之间的相对位置关系,对两两相邻的单位空间的直角化结构图进行拼接,得到初始户型图;对于相邻单位空间的直角化结构图,识别存在缝隙的相邻图像边,调整所述相邻图像边中至少一个图像边的位置,以使所述缝隙的宽度小于设定宽度阈值,得到所述目标物理空间的户型图。
进一步可选地,拼接模块406获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图时,具体用于:获取对所述N个户型结构图的第二拼接指令;所述第二拼接指令基于用户的人工拼接操作生成;响应所述第二拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图;或者,获取对所述N个户型结构图的第三拼接指令;响应所述第三拼接指令,将所述N个户型结构图输入到户型图拼接模型,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图。
在本实施例中,可获取目标物理空间的N个单位空间各自的点云数据和全景图像,并在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓;根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。基于此,依次选中N个单位空间中的每个单位空间并获取N个单位空间的户型结构图后,对N个户型结构图执行拼接得到目标物理空间的户型图。通过这种方式,降低了房屋场景因素的影响,在室内物体遮挡房屋结构的情况下仍可较为准确地生成房屋户型图。
图5是本申请一示例性实施例提供的电子设备的结构示意图,该电子设备适用于前述实施例提供的户型图生成方法,如图5所示,该电子设备包括:存储器501、处理器502以及电源组件503。
存储器501,用于存储计算机程序,并可被配置为存储其它各种数据以支持在终端设备上的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
处理器502,与存储器501耦合,用于执行存储器501中的计算机程序,以用于:步骤1、获取所述N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;步骤2、在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;步骤3、根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;步骤4、判断所述第M个单位空间是否是最后一个未被选中的单位空间,若否,执行步骤5、将M赋值为M+1并返回步骤2;若是,执行步骤6、获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N为自然数,且1≤M≤N。
进一步可选地,所述N个单位空间中的未被选中的单位空间各自对应的标识记录在第一列表,所述N个单位空间中的已被选中的单位空间各自对应的标识记录在第二列表;处理器502在所述N个单位空间选择第M个单位空间的点云数据和全景图像之后,还用于:在所述第一列表中删除所述第M个单位空间对应的标识,并在所述第二列表中新增所述第M个单位空间对应的标识;处理器502判断所述第M个单位空间是否是最后一个未被选中的单位空间时,具体用于:判断所述第一列表中是否存在标识,若不存在标识,则所述第M个单位空间是最后一个未被选中的单位空间;若存在标识,则所述第M个单位空间不是最后一个未被选中的单位空间;或者,判断所述第二列表中的标识个数是否为N,若为N,则所述第M个单位空间是最后一个未被选中的单位空间;若不为N,则所述第M个单位空间不是最后一个未被选中的单位空间。
进一步可选地,处理器502根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓时,具体用于:利用点云区域增长算法对所述第M个单位空间的点云数据进行分割得到所述第M个单位空间的多个点云平面,任一点云平面由处于同一水平面的点云构成;从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面;所述基准点云平面对应所述第M个单位空间中的参考面,所述参考面为天花板或地面;根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓。
进一步可选地,处理器502从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面时,具体用于:根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面;从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面。
进一步可选地,处理器502根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面时,具体用于:在所述参考面为天花板的情况下,从所述多个点云平面中选择高度值大于第一高度阈值,且法线方向为垂直方向的至少一个候选点云平面;在所述参考面为地面的情况下,从所述多个点云平面中选择高度值小于第二高度阈值,且法线方向为垂直方向的至少一个候选点云平面;其中,所述第二高度阈值小于所述第一高度阈值。
进一步可选地,处理器502从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面时,具体用于:在所述候选点云平面的数量为1的情况下,将所述候选点云平面作为所述第M个单位空间的基准点云平面;在所述候选点云平面的数量大于1的情况下,从多个候选点云平面中选择包含的点云数量最多的一个候选点云平面作为一个单位空间的基准点云平面。
进一步可选地处理器502根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓时,具体用于:提取所述第M个单位空间的基准点云平面的外轮廓点云,根据所述外轮廓点云的坐标生成参考轮廓,对所述参考轮廓进行平面化处理,得到所述第M个单位空间的第一平面轮廓。
进一步可选地,处理器502根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓时,具体用于:将所述第M个单位空间的全景图输入第二平面轮廓识别模型,所述第二平面轮廓识别模型依次包括墙线识别层和轮廓标注层;在所述墙线识别层中,对所述第M个单位空间的全景图中的墙体和地面进行识别,以得到墙体和地面的交界线的位置特征,并输出至所述轮廓标注层;在所述轮廓标注层中,根据所述交界线的位置特征对所述全景图中墙体和地面的交界线进行标注,根据所述交界线得到所述第M个单位空间的第二平面轮廓。
进一步可选地,所述第一平面轮廓位于世界坐标系下,所述第二平面轮廓位于相机坐标系下,则处理器502根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图之前,还用于:对所述第M个单位空间的第二平面轮廓进行球面坐标变换,以将所述第二平面轮廓从所述全景图中投影至所述全景图对应的单位空间中;根据相机坐标系与世界坐标系之间的转换关系,将所述第M个单位空间的第二平面轮廓转换至世界坐标系中,所述转换关系是根据所述单位空间中的拍摄点位在相机坐标系的坐标和在世界坐标系中的坐标建立的。
进一步可选地,处理器502根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图时,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第一选择方式,从所述第一平面轮廓和第二平面轮廓中选择目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;或者,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图。
进一步可选地,处理器502对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓时,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第二选择方式,从所述第一平面轮廓和所述第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段;对选取的多个轮廓片段进行组合,得到所述目标轮廓。
进一步可选地,所述第一选择方式按照优先级包括以下至少一种:选择与其他单位空间的轮廓无重叠的轮廓;选择顶点数量较少的轮廓;选择与参考轮廓匹配度较高的轮廓;所述参考轮廓是根据所述第M个单位空间的基准点云平面的外轮廓点云的坐标生成的;所述第二选择方式按照优先级包括以下至少一种:选择完整度较高的轮廓片段;选择清晰度较高的轮廓片段;选择与其他单位空间的轮廓无重叠的轮廓片段;选择顶点数量较少的轮廓片段;选择与所述参考轮廓匹配度较高的轮廓片段。
进一步可选地,处理器502获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图时,具体用于:获取对所述N个户型结构图的第一拼接指令;响应所述第一拼接指令,对每个单位空间的户型结构图分别进行直角化处理,得到所述N个单位空间的直角化结构图;根据所述N个单位空间之间的相对位置关系,对两两相邻的单位空间的直角化结构图进行拼接,得到初始户型图;对于相邻单位空间的直角化结构图,识别存在缝隙的相邻图像边,调整所述相邻图像边中至少一个图像边的位置,以使所述缝隙的宽度小于设定宽度阈值,得到所述目标物理空间的户型图。
进一步可选地,处理器502获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图时,具体用于:获取对所述N个户型结构图的第二拼接指令;所述第二拼接指令基于用户的人工拼接操作生成;响应所述第二拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图;或者,获取对所述N个户型结构图的第三拼接指令;响应所述第三拼接指令,将所述N个户型结构图输入到户型图拼接模型,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图。
进一步,如图5所示,该电子设备还包括:通信组件504和显示组件505等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
上述图5中的存储器501可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
上述图5中的通信组件504被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G或5G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,通信组件可基于近场通信(NFC)技术、射频识别(RFID)技术、红外数据协会(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术来实现。
上述图5中的电源组件503,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理***,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述图5中的显示组件505包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。该触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与该触摸或滑动操作相关的持续时间和压力。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的各步骤。
在本实施例中,电子设备可获取目标物理空间的N个单位空间各自的点云数据和全景图像,并在N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成第M个单位空间的第一平面轮廓,根据第M个单位空间的全景图像生成第M个单位空间的第二平面轮廓;根据第一平面轮廓和第二平面轮廓,获取第M个单位空间的户型结构图。基于此,依次选中N个单位空间中的每个单位空间并获取N个单位空间的户型结构图后,对N个户型结构图执行拼接得到目标物理空间的户型图。通过这种方式,降低了房屋场景因素的影响,在室内物体遮挡房屋结构的情况下仍可较为准确地生成房屋户型图。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (8)
1.一种户型图生成方法,其特征在于,其用于生成目标物理空间的户型图,其中所述目标物理空间至少包括N个单位空间,所述方法包括:
步骤1、获取所述N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;
步骤2、在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;
步骤3、根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;
步骤4、判断所述第M个单位空间是否是最后一个未被选中的单位空间,
若否,执行步骤5、将M 赋值为 M+1 并返回步骤2;
若是,执行步骤6、获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N 为自然数,且 1≤ M ≤ N;
根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图,包括:按照与所述目标物理空间满足的几何约束关系适配的第一选择方式,从所述第一平面轮廓和第二平面轮廓中选择质量较好的轮廓作为目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;或者,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;
对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,包括:按照与所述目标物理空间满足的几何约束关系适配的第二选择方式,从所述第一平面轮廓和所述第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段;对选取的多个轮廓片段进行组合,得到所述目标轮廓。
2.根据权利要求1所述的方法,其特征在于,所述N个单位空间中的未被选中的单位空间各自对应的标识记录在第一列表,所述N个单位空间中的已被选中的单位空间各自对应的标识记录在第二列表;
在所述N个单位空间选择第M个单位空间的点云数据和全景图像之后,还包括:在所述第一列表中删除所述第M个单位空间对应的标识,并在所述第二列表中新增所述第M个单位空间对应的标识;
判断所述第M个单位空间是否是最后一个未被选中的单位空间,包括:判断所述第一列表中是否存在标识,若不存在标识,则所述第M个单位空间是最后一个未被选中的单位空间;若存在标识,则所述第M个单位空间不是最后一个未被选中的单位空间;或者,判断所述第二列表中的标识个数是否为N,若为N,则所述第M个单位空间是最后一个未被选中的单位空间;若不为N,则所述第M个单位空间不是最后一个未被选中的单位空间。
3.根据权利要求1所述的方法,其特征在于,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,包括:
利用点云区域增长算法对所述第M个单位空间的点云数据进行分割得到所述第M个单位空间的多个点云平面,任一点云平面由处于同一水平面的点云构成;
从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面;所述基准点云平面对应所述第M个单位空间中的参考面,所述参考面为天花板或地面;
根据所述第M个单位空间的基准点云平面,生成所述第M个单位空间的第一平面轮廓。
4.根据权利要求3所述的方法,其特征在于,从所述第M个单位空间的多个点云平面中选择所述第M个单位空间的基准点云平面,包括:
根据所述多个点云平面的高度值和法线方向,从所述多个点云平面中选择高度值和法线方向与所述参考面适配的至少一个候选点云平面;
从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面。
5.根据权利要求4所述的方法,其特征在于,从所述至少一个候选点云平面中选择所述第M个单位空间的基准点云平面,包括:
在所述候选点云平面的数量为1的情况下,将所述候选点云平面作为所述第M个单位空间的基准点云平面;
在所述候选点云平面的数量大于1的情况下,从多个候选点云平面中选择包含的点云数量最多的一个候选点云平面作为一个单位空间的基准点云平面。
6.一种户型图生成装置,其特征在于,包括:
信息获取模块,用于:获取目标物理空间中的N个单位空间中每一单位空间的点云数据和全景图像,其中所述点云数据和所述全景图像是在所述每一单位空间内的至少一个采集点获取的;
轮廓生成模块,用于:在所述N个单位空间选择第M个单位空间的点云数据和全景图像,根据第M个单位空间的点云数据生成所述第M个单位空间的第一平面轮廓,以及根据第M个单位空间的全景图像生成所述第M个单位空间的第二平面轮廓;
结构图获取模块,用于:根据所述第一平面轮廓和所述第二平面轮廓,获取所述第M个单位空间的户型结构图;
判断模块,用于:判断所述第M个单位空间是否是最后一个未被选中的单位空间;
返回模块,用于:若所述第M个单位空间不是最后一个未被选中的单位空间,则将M 赋值为 M+1 并返回步骤2;
拼接模块,用于:若所述第M个单位空间是最后一个未被选中的单位空间,则获取到对N个户型结构图的拼接指令,对所述N个户型结构图执行拼接以得到所述目标物理空间的户型图,以用于展示,流程结束;其中,M、N 为自然数,且 1 ≤ M ≤ N;
所述结构图获取模块,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第一选择方式,从所述第一平面轮廓和第二平面轮廓中选择质量较好的轮廓作为目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;或者,对所述第一平面轮廓和所述第二平面轮廓进行融合,得到目标轮廓,根据所述目标轮廓生成所述第M个单位空间的户型结构图;
所述结构图获取模块,具体用于:按照与所述目标物理空间满足的几何约束关系适配的第二选择方式,从所述第一平面轮廓和所述第二平面轮廓中的处于同侧的两个轮廓片段中,选取一个质量较好的轮廓片段;对选取的多个轮廓片段进行组合,得到所述目标轮廓。
7.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器用于:存储一条或多条计算机指令;所述处理器用于执行所述一条或多条计算机指令,以用于:执行权利要求1-5任一项所述的方法中的步骤。
8.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器能够实现权利要求1-5任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457799.8A CN115761045B (zh) | 2022-11-21 | 2022-11-21 | 一种户型图生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457799.8A CN115761045B (zh) | 2022-11-21 | 2022-11-21 | 一种户型图生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115761045A CN115761045A (zh) | 2023-03-07 |
CN115761045B true CN115761045B (zh) | 2023-08-18 |
Family
ID=85333830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211457799.8A Active CN115761045B (zh) | 2022-11-21 | 2022-11-21 | 一种户型图生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115761045B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111724464A (zh) * | 2020-06-19 | 2020-09-29 | 武汉海达数云技术有限公司 | 一种移动测量点云着色方法及其装置 |
CN111932688A (zh) * | 2020-09-10 | 2020-11-13 | 深圳大学 | 一种基于三维点云的室内平面要素提取方法、***及设备 |
CN113436311A (zh) * | 2020-03-23 | 2021-09-24 | 阿里巴巴集团控股有限公司 | 一种户型图生成方法及其装置 |
CN113838116A (zh) * | 2021-09-29 | 2021-12-24 | 北京有竹居网络技术有限公司 | 确定目标视图的方法、装置、电子设备及存储介质 |
-
2022
- 2022-11-21 CN CN202211457799.8A patent/CN115761045B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113436311A (zh) * | 2020-03-23 | 2021-09-24 | 阿里巴巴集团控股有限公司 | 一种户型图生成方法及其装置 |
CN111724464A (zh) * | 2020-06-19 | 2020-09-29 | 武汉海达数云技术有限公司 | 一种移动测量点云着色方法及其装置 |
CN111932688A (zh) * | 2020-09-10 | 2020-11-13 | 深圳大学 | 一种基于三维点云的室内平面要素提取方法、***及设备 |
CN113838116A (zh) * | 2021-09-29 | 2021-12-24 | 北京有竹居网络技术有限公司 | 确定目标视图的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115761045A (zh) | 2023-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10803659B2 (en) | Automatic three-dimensional solid modeling method and program based on two-dimensional drawing | |
CN109887003B (zh) | 一种用于进行三维跟踪初始化的方法与设备 | |
CN115330966B (zh) | 户型图生成方法、***、设备及存储介质 | |
WO2015178217A1 (ja) | 画像処理装置および方法 | |
JP2014178957A (ja) | 学習データ生成装置、学習データ作成システム、方法およびプログラム | |
CN111436208A (zh) | 一种测绘采样点的规划方法、装置、控制终端及存储介质 | |
CN112270736B (zh) | 增强现实处理方法及装置、存储介质和电子设备 | |
CN105023266A (zh) | 增强现实实现方法、装置和终端设备 | |
CN114494487B (zh) | 基于全景图语义拼接的户型图生成方法、设备及存储介质 | |
CN115330652B (zh) | 点云拼接方法、设备及存储介质 | |
CN113110095A (zh) | 基于扫地机器人的HomeMap构建方法及构建*** | |
KR101875047B1 (ko) | 사진측량을 이용한 3d 모델링 시스템 및 방법 | |
CN110084797A (zh) | 平面检测方法、装置、电子设备和存储介质 | |
CN104217414A (zh) | 用于影像拼接的拼接线提取方法和装置 | |
CN114782646A (zh) | 房屋模型的建模方法、装置、电子设备和可读存储介质 | |
CN111105351B (zh) | 一种视频序列影像拼接方法及装置 | |
CN114529566A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN114529621B (zh) | 户型图生成方法、装置、电子设备及介质 | |
CN115761045B (zh) | 一种户型图生成方法、装置、设备及存储介质 | |
CN115861476B (zh) | 一种户型图生成方法、装置、设备及存储介质 | |
US8861838B2 (en) | Apparatus and method for correcting stereoscopic image using matching information | |
CN109040612B (zh) | 目标对象的图像处理方法、装置、设备及存储介质 | |
CN115222602B (zh) | 图像拼接方法、装置、设备及存储介质 | |
CN114494486B (zh) | 户型图生成方法、设备及存储介质 | |
CN116186842A (zh) | 装修设计还原方法、装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |