CN115393469A - 房屋户型图生成方法、装置、设备及介质 - Google Patents
房屋户型图生成方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115393469A CN115393469A CN202211003231.9A CN202211003231A CN115393469A CN 115393469 A CN115393469 A CN 115393469A CN 202211003231 A CN202211003231 A CN 202211003231A CN 115393469 A CN115393469 A CN 115393469A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- space
- house
- panoramic
- target
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例提供一种房屋户型图生成方法、装置、设备及介质。通过获取目标房屋中各空间对象对应的全景图和点云平面图,可以确定各空间对象中的门体和/或窗体对应的位置信息以及各空间对象的墙体对应的轮廓线;进一步,根据拍摄全景图和点云平面图的设备之间的相对位姿关系,结合全景图中各空间对象之间的相对位置关系,对点云平面图中不符合要求的轮廓线进行校正,将全景图中各空间对象的门体和/或窗体映射到点云平面图中。通过这种方式,不仅可以自动生成户型图,提升户型图生成的效率,还能将房屋中的门体、窗体等细节信息映射到户型图中,使得生成的户型图信息更丰富、完整,有利于通过户型图快速、准确的了解房屋信息。
Description
技术领域
本申请涉及虚拟现实技术领域,尤其涉及一种房屋户型图生成方法、装置、设备及介质。
背景技术
在现有的户型图生成方案中,通常会采集房屋中各房间对应的三维点云数据和全景图,并根据房屋的全景图对各房间对应的三维点云数据进行融合,即将相邻房间对应的点云数据进行拼接,以根据拼接后的点云数据得到整个房屋对应的三维点云模型。进一步,对得到的三维点云模型做横向截面切割,即可得到整个房屋对应的二维平面户型图。
然而,现有方案生成的户型图并不能很好的体现房屋内的细节信息,因此,有必要对现有的户型图生成方案进行改进。
发明内容
本申请的多个方面提供一种屋户型图生成方法、装置、设备及介质,用以在自动生成户型图的同时,将房屋中各空间对象的门体、窗体等细节信息映射到户型图中,以得到内容更为丰富、完整的户型图。
本申请实施例提供一种房屋户型图生成方法,包括:获取目标房屋中各空间对象对应的全景图和点云平面图,所述全景图中包括各空间对象的墙体、门体和/或窗体,所述点云平面图中包括各空间对象的墙体对应的轮廓线;根据所述各空间对象对应的全景图,确定所述各空间对象之间的相对位置关系;根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置;根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;对映射到所述点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
在一可选实施例中,获取目标房屋中各空间对象对应的全景图和点云平面图,包括:获取目标房屋中各空间对象对应的全景数据和点云数据;对所述全景数据进行三维实景空间渲染,得到所述各空间对象对应的全景图;以及根据所述点云数据,生成所述目标房屋对应的三维点云模型;对所述三维点云模型进行平面投影,得到所述各空间对象对应的点云平面图。
在一可选实施例中,在对所述三维点云模型进行平面投影之前,还包括:根据所述全景数据,确定所述各空间对象中的墙体对应的第一全景像素坐标;根据所述全景像素坐标与所述三维点云坐标的映射关系,确定在所述三维点云模型中与所述第一全景像素坐标对应的第一三维点云坐标;若所述三维点云模型中对应所述第一三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在所述第一空间位置处补充点云数据。
在一可选实施例中,对所述三维点云模型进行平面投影,包括:根据所述全景像素坐标与所述三维点云坐标的映射关系,确定所述三维点云模型中与所述各空间对象中墙体对应的目标三维点云坐标;确定所述目标三维点云坐标在所述点云平面图上的投影轮廓,将所述投影轮廓作为所述各空间对象的墙体在所述点云平面图上对应的轮廓线。
在一可选实施例中,根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置,包括:根据所述相对位置关系,确定所述各空间对象的轮廓线在所述点云平面图上对应的目标位置;将所述点云平面图上对应各空间对象的轮廓线调整到所述目标位置,以使所述各空间对象的轮廓线与所述各空间对象的墙体位置对应。
在一可选实施例中,根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,包括:根据全景像素坐标与球坐标的对应关系,将所述全景图中各空间对象的门体和/或窗体对应的全景像素坐标映射到球体空间中,得到对应的球坐标;根据分别获取全景图和点云平面图的设备之间的相对位姿关系,结合球坐标与三维点云坐标的映射关系,将所述门体和/或窗体对应的球坐标映射为对应的三维点云坐标;对所述门体和/或窗体对应的三维点云坐标进行平面投影,将所述门体和/或窗体的轮廓映射到所述点云平面图中对应的轮廓线上。
在一可选实施例中,所述目标房屋中包括开放空间,所述方法还包括:根据所述全景图,确定开放空间对应的目标位置信息;根据所述目标位置信息,在所述点云平面图上生成对应的轮廓线。
本申请实施例还提供一种房屋户型图生成装置,包括:获取模块,用于获取目标房屋中各空间对象对应的全景图和点云平面图,所述全景图中包括各空间对象的墙体、门体和/或窗体,所述点云平面图中包括各空间对象的墙体对应的轮廓线;确定模块,用于根据所述各空间对象对应的全景图,确定所述各空间对象之间的相对位置关系;校正模块,用于根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置;映射模块,用于根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;标记模块,用于对映射到所述点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
本申请实施例还提供一种计算机端设备,包括:处理器和存储器,在所述处理器执行所述计算机程序时,用于实现所述方法中的任一步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器实现所述方法中的各步骤。
在本申请实施例中,通过获取目标房屋中各空间对象对应的全景图和点云平面图,可以从全景图中确定各空间对象中的门体和/或窗体对应的位置信息、各空间对象之间的相对位置关系,以及从点云平面图中确定各空间对象的墙体对应的轮廓线;进一步,根据对各空间对象的拍摄全景图和点云平面图时,拍摄设备之间的相对位姿关系,以及结合全景图中各空间对象之间的相对位置关系,对点云平面图中不符合要求的轮廓线进行校正,以及将全景图中各空间对象的门体和/或窗体映射到点云平面图中对应的轮廓线上,并对映射后的门体轮廓线和窗体轮廓线进行标记,得到目标房屋对应的户型图。通过这种方式,不仅可以自动生成户型图,提升户型图生成的效率,还能将房屋中的门体、窗体等细节信息映射到户型图中,使得生成的户型图信息更丰富、完整,有利于通过户型图快速、准确的了解房屋信息。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种房屋户型图生成方法的流程图;
图2a为本申请实施例提供的一种目标房屋对应的三维点云模型示意图;
图2b为本申请实施例提供的一种缺少点云数据的点云平面图;
图2c为本申请实施例提供的一种补充点云数据之后的点云平面图;
图2d为本申请实施例提供的一种带有轮廓线的点云平面图;
图2e为本申请实施例提供的另一种带有轮廓线的点云平面图;
图2f为本申请实施例提供的一种支持编辑功能的部分全景图;
图3为本申请实施例提供的一种房屋户型图生成装置的结构示意图;
图4为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了解决现有的户型图生成方案中,生成的户型图信息不够丰富的问题,本申请实施例提供一种房屋户型图生成方法,图1为本申请实施例提供的房屋户型图生成方法的流程图,如图1所示,方法包括:
S1、获取目标房屋中各空间对象对应的全景图和点云平面图,全景图中包括各空间对象的墙体、门体和/或窗体,点云平面图中包括各空间对象的墙体对应的轮廓线;
S2、根据各空间对象对应的全景图,确定各空间对象之间的相对位置关系;
S3、根据相对位置关系,校正点云平面图中对应墙体的轮廓线位置;
S4、根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;
S5、对映射到点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
在本申请实施例中,不限定获取目标房屋的全景图和点云平面图的具体方式,在一可选实例中,可以依次采用全景相机对目标房屋进行拍摄,得到目标房屋对应的全景图,以及采用激光扫描设备对目标房屋进行激光扫描,获取目标房屋对应的点云平面图;在另一可选实施例中,也可以同时采用全景相机和激光扫描设备对目标房屋进行全景拍摄和激光扫描,获取目标房屋对应的全景图和点云平面图;进一步可选地,在同时采用全景相机和激光扫描设备对目标房屋进行全景拍摄和激光扫描时,全景相机和激光扫描设备之间可以按照预设的相对位姿关系对目标房屋进行全景拍摄和激光扫描,对于预设的相对位姿关系对应的具体数据,本申请实施例不做限定。
在本申请实施例中,获取到的全景图中包括各空间对象的墙体、门体和/或窗体,获取到的点云平面图中包括各空间对象的墙体对应的轮廓线。基于此,在获取到目标房屋中各空间对象的全景图和点云平面图的情况下,可以从全景图中确定各空间对象的墙体、门体和/或窗体,以及从点云平面图中确定各空间对象的墙体对应的轮廓线。由于激光扫描设备在对各空间对象进行扫描时,可能存在遗漏点云、错误识别等情况,因此,在点云平面图中可能存在与墙体不符的轮廓线。在这种情况下,还可以根据各空间对象对应的全景图,确定各空间对象之间的相对位置关系,以及根据各空间对象的相对位置关系,校正点云平面图中对应墙体的轮廓线位置,以使各空间对象在点云平面图上的轮廓线与目标房屋的墙体位置对应。例如,在目标房屋中存在同样大小的两个卧室,且这两个卧室相邻,但是这两个卧室的墙体在点云平面图上对应的轮廓线并不对齐;或者,点云平面图上存在对应墙角的轮廓线不是直角的情况。针对类似的问题,在校正点云平面图中对应墙体的轮廓线位置时,还可以根据全景图中各空间对象的相对位置关系,确定各空间对象的轮廓线在点云平面图上对应的目标位置;进而,将点云平面图上对应各空间对象的轮廓线调整到目标位置,以使各空间对象的轮廓线与目标房屋的墙体位置对应。
进一步,为了得到信息更为丰富的户型图,还可以根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线上,以得到包含门体轮廓和窗体轮廓的点云平面图;以及对映射到点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为目标房屋对应的户型图。通过这种方式,不仅可以自动生成户型图,提升户型图生成的效率,还能将房屋中的门体、窗体等细节信息映射到户型图中,使得生成的户型图信息更丰富、完整,有利于通过户型图快速、准确的了解房屋信息。
下面对房屋户型图生成方法各步骤的具体细节进行详细说明。
在本申请实施例中,不限定生成各空间对象的全景图和点云平面图的具体方式,可选地,全景设备和激光扫描设备在对各空间对象进行拍摄及扫描过程中,可以直接生成各空间对象对应的全景图和点云平面图。在另一可选实施例中,还可以先获取各空间对象对应的全景数据和点云数据,进而对全景数据进行三维实景空间渲染,得到各空间对象对应的全景图;以及根据点云数据,生成目标房屋对应的三维点云模型;进一步,对三维点云模型进行平面投影,得到各空间对象对应的点云平面图。进一步可选地,在生成各空间对象对应的点云平面图时,还可以根据与各空间对象的墙体对应的点云数据,生成各空间对象在点云平面图上的轮廓线,该轮廓线用于标识目标房屋对应的户型。
由于目标房屋中可能包括家具等物体,激光扫描设备在对各空间对象进行激光扫描时,可能存在无法扫描到墙体的点云数据盲区,或者存在误识别的点云数据。因此,在对三维点云模型进行平面投影之前,还可以结合各空间对象对应的全景图对错误的点云数据进行修正。
下面结合附图,对点云数据可能存在的错误情况进行示例性说明。
图2a为激光扫描设备对各空间对象进行扫描得到的三维点云模型,如图2a所示,通过三维点云模型能够识别出各空间对象的墙体对应的整体轮廓,但各空间对象中的真实信息并不一定能完整的体现到三维点云模型中,即通过激光扫描设备获取到的点云数据可能不完整。例如,激光扫描设备在各对空间对象进行扫描时,可能无法扫描到各空间对象中被桌子、椅子、衣柜、床等家具遮挡住的部分墙体,则在基于点云数据生成三维点云模型时,与这部分墙体对应的空间位置处可能没有对应的点云数据,或者将扫描到的桌子、椅子、衣柜、床等家具对应的点云数据确定为这部分墙体对应的点云数据,进而导致点云数据有误差,生成的三维点云模型也不准确。因此,基于三维点云模型投影得到的点云平面图也可能与各空间对象对应的真是户型结构不相符。例如,三维点云模型中应该投影到点云平面图上的点云数据没有投影到点云平面图上;又例如,三维点云模型中没有点云数据的空间位置在点云平面图上却有对应的投影区域;又例如,点云平面图上的轮廓线与三维点云空间中的点云数据对应的空间位置在点云平面图上的投影轮廓不相符,等等。针对可能存在的误差情况,在下述实施例中,结合附图进行详细说明。
情况1:点云平面图上“缺失”点云数据的投影信息。
图2b为对三维点云模型做平面投影得到的点云平面图,如图2b所示,该点云平面图中存在至少一个空缺部分,这不符合房屋的户型、格局要求,图2b中的空缺部分有可能是被其他物体挡住的墙体没有被激光扫描设备扫描到对应的点云数据所造成的。因此,在根据扫描获取的点云数据生成三维点云模型时,会出现“空缺”的现象,进而基于该三维点云模型投影得到的点云平面图同样出现“空缺”。针对这种情况,本申请实施例在根据与各空间对象的墙体对应的点云数据,生成各空间对象在点云平面图上的轮廓线之前,还可以根据各空间对象对应全景图,确定各空间对象的墙体对应的第一全景像素坐标,以及根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第一全景像素坐标对应的第一三维点云坐标,进而判断第一三维点云坐标对应的空间位置是否有对应的点云数据。若三维点云模型中对应第一三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在三维点云模型中对应第一空间位置处补充点云数据,并将补充的点云数据投影到点云平面图上,以对点云平面图中的墙体轮廓进行修正。
基于上述,还可以对三维点云模型中对应各空间对象的墙体的其他“空缺”部分进行修正,并在对三维点云模型中对应各空间对象的墙体的点云数据进行补充之后,根据与各空间对象的墙体对应的点云数据,生成中各空间对象在点云平面图上的轮廓线。可选地,在生成中各空间对象在点云平面图上的轮廓线时,可以根据三维点云模型中各点云数据对应的三维点云坐标,确定符合墙体形态的点云数据,即与各空间对象的墙体对应的第一点云数据;进而,根据第一点云数据在点云平面图上的投影轮廓,生成中各空间对象在点云平面图上的轮廓线。
图2c为根据补充点云数据之后的三维点云模型投影得到的点云平面图,如图2c所示,在对三维点云模型中补充点云数据之后,三维点云模型投影得到的点云平面图形符合实际户型要求。基于此,可以在该点云平面图上生成各空间对象的墙体对应的轮廓线,如图2d所示,根据各空间对象的墙体对应墙体的轮廓线,清楚体现了目标房屋的户型效果。然而,根据图2d所示的点云平面图可以看出,目标房屋包括三个空间对象,分别为图2d中上部分的矩形对应的空间对象,以及下部分左右两侧的矩形分别对应的空间对象。由于激光扫描设备在进行激光扫描时,会在不同的点位对不同的空间对象进行激光扫描,并且,激光扫描设备获取的点云数据也存在细微误差,这可能导致相邻空间对象之间的墙体对应的点云数据在点云平面图上投影得到的轮廓线不准确。例如,如图2d所示,上部分的矩形空间对象与下部分两个矩形空间对象彼此之间是相邻的空间对象,他们之间应该仅有一面墙体分隔。
但是,在图2d所示的点云平面图像上可以看出,用于分隔上部分矩形空间对象与下部分两个矩形空间对象之间的存在条轮廓线,上部分矩形空间对象与下部分两个矩形空间对象之间是分离的,这与实际要求并不相符。因此,在根据各空间对象的墙体对应的第一点云数据在点云平面图上的投影轮廓,生成各空间对象在点云平面图上的轮廓线之前,还可以确定第一点云数据在点云平面图上对应各空间对象的目标投影轮廓,若各空间对象的目标投影轮廓与墙体的位置对应,则根据各空间对象的相对位置关系,调整各目标投影轮廓的位置,使各目标投影轮廓对齐,进而根据对齐后的各目标投影轮廓,生成各空间对象在点云平面图上的轮廓线。
在本申请实施例中,不限定根据各空间对象的相对位置关系,校正点云平面图中对应墙体的轮廓线位置的具体方式,可选地,可以在对三维点云模型进行投影时自动根据各空间对象的相对位置关系,调整各目标投影轮廓的位置;在另一可选实施例中,本申请实施例提供的点云平面图支持编辑功能,对于点云平面图中与墙体位置不对应的目标轮廓线,工作人员可以根据实际要求对目标轮廓线的形态和/或位置进行微调,以使调整后的目标轮廓线与各空间对象的墙体的位置对应。基于此,在响应到工作人员在点云平面图上对目标轮廓线的调整操作的情况下,可以调整目标轮廓线的形态和/或位置,以使目标轮廓线与墙体位置对应。进而,根据调整后的各空间对象对应的投影轮廓位置对应的点云数据,生成与各空间对象的墙体位置对应的轮廓线。图2e为根据调整后的各空间对象对应的点云数据生成的轮廓线示意图,如图2e所示,调整之后,用于分隔上部分矩形空间对象与下部分两个矩形空间对象之间的墙体只对应一两条轮廓线,符合实际要求。
情况2:点云平面图上有“多余”的点云数据投影信息。
根据上述可知,由于激光扫描设备在对各空间对象进行激光扫描并获取各空间对象对应的点云数据时可能存在误差,因此,在根据获取的点云数据生成对应的三维点云模型时,可能存在将各空间对象中不是墙体的空间位置被识别为墙体的情况,即生成的三维点云模型中可能存在“多余”的部分点云数据。因此,在对三维点云模型中的点云数据进行修正时,除了上述实施例中对各空间对象中真正存在的墙体的空间位置没有获取到对应的点云数据,采用点云数据补充的方式进行修正之外,本申请实施例还提供了对各空间对象中不是墙体的空间位置被激光扫描设备识别为墙体的情况,采用点云数据删除的方式进行修正。
可选地,针对不是墙体的空间位置被识别为墙体的情况进行点云数据的修正时,可以根据全景图,确定各空间对象中不是墙体的第二全景像素坐标,以及根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第二全景像素坐标对应的第二三维点云坐标,以确定三维点云模型中对应第二三维点云坐标的空间位置中是否存在对应墙体形态的点云数据。若三维点云模型中对应第二三维点云坐标的空间位置中存在墙体形态的点云数据,则在该墙体形态的点云数据对应的第二空间位置处调整点云形态,并在点云平面图上删除该墙体形态的点云数据投影得到的轮廓线。
在本申请实施例中,不限定在第二空间位置处调整点云形态的具体方式,可选地,可以直接调整第二空间位置处对应的三维点云坐标,例如,将第二空间位置处原本对应墙体形态的三维点云坐标调整为对应地面形态的三维点云坐标,即删除了第二空间位置处原本对应墙体形态的点云数据,以对点云数据进行修正。在另一可选实施例中,工作人员也可以根据全景图中对应墙体的空间位置,确定三维点云模型中与墙体的空间位置对应的第二空间位置是否应该存在墙体形态的点云数据,并在确定不应该存在的情况下,直接将点云平面图上对应第二空间位置投影处的轮廓线删除。
进一步,在响应到工作人员对点云平面图上对应第二空间位置投影处的轮廓线执行删除操作的情况下,可以基于删除的轮廓线对应的二维坐标与三维点云坐标的投影关系,将对应的点云数据的三维点云坐标调整为对应地面形态的三维点云坐标,即删除了第二空间位置处原本对应墙体形态的点云数据,以对点云数据进行修正。
情况3:点云平面图上有“错误”的点云数据投影信息。
在本申请实施例中,对三维点云模型中的点云数据的修正,除了上述实施例中对“空缺”部分的补充,以及对“多余”部分的删除,本申请实施例还提供对“错误”部分的调整,该“错误”部分是指在三维点云模型中对应的空间位置处有对应的点云数据,但是该空间位置处的点云数据不符合实际要求。例如,空间对象中的墙体是直的,但在三维点云模型中对应墙体的点云形态却是曲面的,则对应墙体的点云数据是错误的;又例如,三维点云模型中对应墙体的点云形态是直的,但是与该点云形态对应的轮廓线却是弯曲的,则对应墙体轮廓的点云数据是错误的。针对这种情况,需要对“错误”部分对应的点云数据进行修正,以点云平面图上存在与各空间对象的墙体位置不对应的目标轮廓线的情况为例,工作人员可以在点云平面图上对目标轮廓线进行调整。
在一可选实施例中,工作人员可以从点云平面图上选择与墙体轮廓位置不对应的目标轮廓线并对其进行移动操作,则在响应到点云平面图上的目标轮廓线被选择的情况下,可以确定被选择的目标轮廓线在点云平面图上对应的初始位置;进一步,在响应到对被选择的目标轮廓线执行的移动操作的情况下,可以获取移动操作终止时对应的目标位置,并将被选择的目标轮廓线从初始位置移动到目标位置,以调整目标轮廓线的位置;其中,移动操作是指轮廓线的至少一端对应的点云数据以及两端之间的点云数据从初始位置移动到目标位置。
在另一可选实施例中,工作人员还可以对点云形态与墙体形态不对应的目标轮廓线进行形态调整,则在响应到对被选择的目标轮廓线中的任一部分执行形态调整操作的情况下,可以获取被调整部分的目标轮廓线对应的初始形态,以及获取调整操作结束时被调整部分的目标轮廓线对应的目标形态,将被调整部分的目标轮廓线由初始形态调整为目标形态,并将被选择的目标轮廓线调整后的整体形态作为被选择的目标轮廓线对应的形态;其中,形态调整操作是指轮廓线的两端对应的点云数据不移动,而对轮廓线两端之间的点云数据进行移动,例如,将原本弯曲的轮廓线调整为直的轮廓线,当然并不限于此。
在另一可选实施例中,若点云平面图中基于三维点云模型中对应墙体的点云数据生成的轮廓线中有“缺失”,即三维点云模型中对应墙体的空间位置在点云平面图上对应的投影位置没有轮廓线,则工作人员还可以在点云平面图上针对缺失轮廓线的位置添加轮廓线。可选地,工作人员可以选择目标房屋中的墙体在点云平面图上没有对应的轮廓线的位置作为目标位置,并针对目标位置执行轮廓线添加操作;进一步,在响应到针对目标位置执行的轮廓线添加操作的情况下,在点云平面图上对应目标位置处添加轮廓线。在本申请实施例中,不限定在目标位置处添加轮廓线的具体方式,可选地,在获取到工作人员选择的目标位置并响应到对目标位置执行添加轮廓线操作的情况下,可以直接在点云平面图上显示轮廓线,以补充缺失的轮廓线;或者,工作人员也可以从用于对点云平面图进行编辑的工具栏中选择轮廓线组件,将轮廓线组件拖动到点云平面图上,以补充缺失的轮廓线。
进一步可选地,在点云平面图上自动显示新轮廓线的情况下,本申请实施例并不限定新轮廓线的初始位置,显示的初始位置可以是与目标位置预设范围内的任一位置,也可以直接显示在目标位置处;进一步可选地,在直接显示在目标位置处的情况下,新添加的轮廓线两端可自动与点云平面图上已有轮廓线的端部连接。在工作人员主动在点云平面图上添加轮廓线组件的情况下,也不限定轮廓线组件的添加方式,可选地,工作人员可以将选择的轮廓线组件先拖动到点云平面图上的任一位置,再对拖动到点云平面图上的轮廓线组件进行移动和/或形态的调整,以将其添加到目标位置处;在另一可选实施例中,轮廓线组件的两端可具有吸附功能,即在工作人员将轮廓线移动至点云平面图上,并在已有轮廓线的预设范围内的情况下,轮廓线组件靠近已有轮廓线端部的一端可以自动与点已有轮廓线的端部连接,这样,有助于提升轮廓线添加时的准确度。
基于上述,在对点云数据进行修改正之后,可以对三维点云模型进行平面投影,得对应的点云平面图,其上包括各空间对象的墙体对应的轮廓线。可选地,可以根据各空间对象对应的全景图,确定各空间对象的墙体对应的全景像素坐标;进而,根据全景像素坐标与述三维点云坐标的映射关系,确定三维点云模型中与各空间对象中墙体对应的目标三维点云坐标,以及确定目标三维点云坐标在点云平面图上的投影轮廓,以将投影轮廓作为各空间对象的墙体在所述点云平面图上对应的轮廓线。然而,由于各空间对象中的门体、窗体等物体安装在墙体中,在将各空间对象的墙体对应的点云数据进行平面投影时,各空间对象的门体、窗体会随着墙体一同被投影到点云平面图上。因此,根据各空间对象的墙体得到的轮廓线,并不能对门体、窗体的轮廓进行区分,因此,在得到各空间对象的墙体对应的轮廓线的情况下,还需要在点云平面图上对各空间对象的门体和/或窗体对应的轮廓进行标记。
在本申请实施例中,不限定在点云平面图上对各空间对象的门体和/或窗体对应的轮廓进行标记的具体方式。可选地,可以根据各空间对象对应的全景图,确定各空间对象的门体和/或窗体对应的位置信息,进而在点云平面图上确定各空间对象的门体和/或窗体所属的墙体对应的轮廓线,并在确定的轮廓线上标记各空间对象的门体和/或窗体对应的轮廓。然而,由于全景图也可能存在与各空间对象的实际尺寸不一致的情况,例如,空间对象中的墙线、门框、窗框等都是直线,但是在全景图中被渲染成了曲线。为了解决这种问题,本申请实施例提供的全景图支持对各空间对象的墙线、门框、窗框的轮廓进行校正的功能。
在本申请实施例中,不限定对墙线、门框、窗框的轮廓进行校正的具体方式,可选地,在生成全景图时,可以根据在不同点位拍摄到同一墙线、门框、窗框对应的全景数据,校正墙线、门框、窗框的轮廓。在另一可选实施例中,全景图支持编辑功能,工作人员可以在全景图中选择不符合要求的墙线、门框、窗框并对其进行调整,以得到符合要求的全景图。基于此,若全景图中存在水平宽度不符合要求的目标门体和/或目标窗体,工作人员可以在全景图中选择目标门体和/或目标窗体,并对目标门体和/或目标窗体执行水平宽度调整操作。进一步,在响应到工作人员在全景图中对目标门体和/或目标窗体的水平宽度调整操作的情况下,可以调整目标门体和/或目标窗体的水平宽度,以根据调整后的水平宽度,将目标门体和/或目标窗体对应的位置信息,映射到点云平面图中对应的轮廓线上。
可选地,在将目标门体和/或目标窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上时,可以从各空间对象对应的全景图中识别各空间对象的门体和/或窗体对应的全景像素坐标;进而,根据全景像素坐标与球坐标的对应关系,将全景图中各空间对象的门体和/或窗体对应的全景像素坐标映射到球体空间中,得到对应的球坐标;以及根据分别获取全景图和点云平面图的设备之间的相对位姿关系,结合球坐标与三维点云坐标的映射关系,将各空间对象的门体和/或窗体对应的球坐标映射为对应的三维点云坐标;进一步,对各空间对象的门体和/或窗体对应的三维点坐标进行平面投影,以将各空间对象的门体和/或窗体的轮廓映射到点云平面图中对应的轮廓线上。
下面,对将门体、窗体对应的位置信息,映射到点云平面图中对应的轮廓线上的详细过程进行说明。
在本申请实施例中,以全景像素坐标左上角的像素坐标为原点,假设全景图的长度和宽度分别为H和W,每个像素点对应的像素坐标为Pixel(x,y),则每个全景像素坐标经过映射后的球坐标对应的经度Lon和纬度Lat分别为:
Lon=(x/W-0.5)*360;
Lat=(0.5–y/H)*180;
进一步,建立球坐标系的原点O1(0,0,0),假设球坐标系的半径为R,则每个全景像素坐标经过映射后的球坐标(X,Y,Z)分别为:
X=R*cos(Lon)*cos(Lat);
Y=R*sin(Lat);
Z=R*sin(Lon)*cos(Lat);
进一步,在从球坐标系映射到三维点云坐标系时,可以通过激光扫描设备在对门体、窗体进行扫描时,经旋转和移动变换后对应的球坐标P=Q*(X+x0,Y+y0,Z+z0)这一映射关系进行映射;其中,x0,y0,z0分别为三维点云坐标系的原点O2(x0,y0,z0),RotationY为激光扫描设备绕世界坐标系Y轴的旋转角,Q为通过系统函数Quaternion.AngleAxis(RotationY,Y)获取到的四元数,用以表示激光扫描设备的旋转和位移。
可选地,在确定门体轮廓或窗体轮廓对应的三维点云坐标时,可以将三维点云模型中对应墙体轮廓的三维点云坐标映射后的球坐标组作为参照坐标组,并确定球坐标系下原点O1到点P的射线与参照坐标组中任一球坐标的焦点,将该焦点对应的三维点云坐标作为门体轮廓或窗体轮廓对应的三维点云坐标。当然,也可以将各空间对象中已知物体对应的球坐标作为参照坐标组,例如,将地面对应的球坐标作为参照坐标组,则可以确定原点O1到点P的射线与参照坐标组中任一球坐标的焦点,即与地面所在平面的焦点,并将该焦点对应的三维点云坐标作为门体轮廓或窗体轮廓对应的三维点云坐标。
通过上述映射过程,可对将各空间对象中的门体轮廓、窗体轮廓对应的全景像素坐标映射到三维点云模型中。然而,全景相机和激光扫描相机在对各空间对象进行拍摄和扫描时,会在不同的空间对象中进行多次拍摄和扫描,或者,可能在不同点位针对同一位置进行拍摄和扫描。因此,在从全景像素坐标到三维点云坐标转换过程中,针对同一个位置例如同一门体轮廓可能得到不同的映射结果。所以,本申请实施例还提供从三维点云坐标到全景像素坐标的反向映射,以对之前正向映射的结果进行校验,保证映射结果的准确性。
基于上述,在从三维点云坐标到球坐标的映射时,可以利用如下公式,确定三维点云坐标(x0,y0,z0)对应的球坐标P(X,Y,Z):
P=-Q(X-x0,Y-y0,Z-z0);
进一步,可通过如下公式,确定球坐标P(X,Y,Z)对应的全景像素坐标(W,H):
Lon=Atan2(Z,X);
Lat=Asin(Y/R);
X=(Lon/360+0.5)*W;
Y=(0.5–Lat/180)*H;
需要说明的是,本申请实施例在确定各空间对象中门体轮廓、窗体轮廓的位置时,并不限于上述方式,由于门体、窗体均安装在各空间对象的墙体上,因此,在同一坐标系下,任一墙体对应的空间位置包含其上安装的门体和/或窗体对应的空间位置。基于此,本申请实施例也可以分别将各空间对象的门体轮廓、窗体轮廓对应的全景像素坐标映射球坐标,以及将三维点云模型中对应墙体的三维点云坐标同样映射为球坐标,基于在球坐标系下对上述两种映射结果进行比较,可以确定具有相同映射结果的目标空间位置。进而,根据与目标空间位置对应的墙体以及门体或窗体,可以确定对应的三维点云坐标。
进一步可选地,若全景图中存在门体轮廓、窗体轮廓不符合实际要求的情况,如图2f所示,工作人员还可以对门体轮廓、窗体轮廓进行手动调整;由于门体轮廓、窗体轮廓在投影后在点云平面图上对应的是门体、窗体的水平宽度对应的线段,因此,在全景图中对门体轮廓、窗体轮廓执行的手动调整操作是对门体、窗体的水平宽度调整操作。进一步,在响应到对全景图中的门体轮廓、窗体轮廓进行调整操作的情况下,还可以根据调整后的门体、窗体的水平宽度对应的全景像素坐标,同步更新对应的三维点云坐标,以在对三维点云模型作二维平面投影之后,得到包含门体和/或窗体轮廓的点云平面图。
在本申请实施例中,目标房屋还包括开放空间,除了将全景图中对应门体轮廓、窗体轮廓的全景像素坐标映射到三维点云模型中,本申请实施例还支持将目标房屋中开放空间的轮廓对应的全景像素坐标映射到三维点云模型中,以在对三维点云模型进行平面投影得到的点云平面图上,生成用于标记开放空间轮廓的轮廓线。
可选地,在确定开放空间的轮廓对应的三维点云坐标时,可以根据全景图,确定目标房屋中的开放空间对应的第三全景像素坐标;进而,根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第三全景像素坐标对应的第三三维点云坐标,以及在对第三三维点云坐标作平面投影的情况下,确定第三三维点云坐标在点云平面图上对应的第一投影区域;当然,并不限于此,工作人员也可以根据全景图确定开放空间对应的空间位置,进而基于投影关系,直接在点云平面图上选择与开放空间对应的第一投影区域。基于此,工作人员可对第一区域执行第一标记操作,以标记开放空间在点云平面图上对应的轮廓;进一步,在响应到对第一投影区域的第一标记操作的情况下,可以根据执行第一标记操作对应的位置,在点云平面图上生成开放空间对应的轮廓线。
在本申请实施例中,在生成房屋户型图之前,为了清楚、直观的从房屋户型图中了解目标房屋的格局以及各空间对象的功能,本申请实施例还支持在点云平面图上对各空间对象的类型进行标记操作,以获得信息更完整、丰富的房屋户型图。可选地,在将各空间对象的类型映射到点云平面图中,可以根据全景图,确定各空间对象对应的第第四全景像素坐标;进而,根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第第四全景像素坐标对应的第四三维点云坐标,以及确定第四三维点云坐标在点云平面图上对应的第二投影区域。基于此,工作人员可对第二区域执行第二标记操作,以标记各空间对象在点云平面图上对应的类型;进一步,在响应到对第二投影区域的第二标记操作的情况下,可用在点云平面图上标记各空间对象对应的类型。
基于上述,在得到修正及标记的点云平面图的情况下,还可以更新修改正及标记的点云平面图对应的点云数据,以及将更新后的点云数据输出模型制作设备,以供模型制作设备根据更新后的点云数据,制作目标房屋对应的三维模型和房屋户型图模型,以应用到线上的房屋租赁、买卖、家装等场景中。
在本申请实施例中,通过获取目标房屋中各空间对象对应的全景图和点云平面图,可以从全景图中确定各空间对象中的门体和/或窗体对应的位置信息、各空间对象之间的相对位置关系,以及从点云平面图中确定各空间对象的墙体对应的轮廓线;进一步,根据对各空间对象的拍摄全景图和点云平面图时,拍摄设备之间的相对位姿关系,以及结合全景图中各空间对象之间的相对位置关系,对点云平面图中不符合要求的轮廓线进行校正,以及将全景图中各空间对象的门体和/或窗体映射到点云平面图中对应的轮廓线上,并对映射后的门体轮廓线和窗体轮廓线进行标记,得到目标房屋对应的户型图。通过这种方式,不仅可以自动生成户型图,提升户型图生成的效率,还能将房屋中的门体、窗体等细节信息映射到户型图中,使得生成的户型图信息更丰富、完整,有利于通过户型图快速、准确的了解房屋信息。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S1至步骤S5的执行主体可以为设备A;又比如,步骤S1的执行主体可以为设备A,步骤S2步骤S5的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如S1、S2等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
基于上述,本申请实施例还提供一种房屋户型图生成装置,例如房屋户型图生成装置可实现为通信控制器(Communication Control Unit,CCU)中的虚拟装置,例如应用程序。如图3所示,房屋户型图生成装置包括:获取模块301、确定模块302、校正模块303、映射模块304和标记模块305;其中,获取模块301用于获取目标房屋中各空间对象对应的全景图和点云平面图,全景图中包括各空间对象的墙体、门体和/或窗体,点云平面图中包括各空间对象的墙体对应的轮廓线;确定模块302用于根据各空间对象对应的全景图,确定各空间对象之间的相对位置关系;校正模块303用于根据相对位置关系,校正点云平面图中对应墙体的轮廓线位置;映射模块304用于根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;标记模块305用于对映射到点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
在一可选实施例中,获取模块301在获取目标房屋中各空间对象对应的全景图和点云平面图时,用于:获取目标房屋中各空间对象对应的全景数据和点云数据;对全景数据进行三维实景空间渲染,得到各空间对象对应的全景图;以及根据点云数据,生成目标房屋对应的三维点云模型;确定模块302用于对三维点云模型进行平面投影,得到各空间对象对应的点云平面图。
在一可选实施例中,确定模块302在对三维点云模型进行平面投影之前,还用于:根据全景数据,确定各空间对象中的墙体对应的第一全景像素坐标;根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第一全景像素坐标对应的第一三维点云坐标;若三维点云模型中对应第一三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在第一空间位置处补充点云数据。
在一可选实施例中,确定模块302在对三维点云模型进行平面投影时,用于:根据全景像素坐标与三维点云坐标的映射关系,确定三维点云模型中与各空间对象中墙体对应的目标三维点云坐标;确定目标三维点云坐标在点云平面图上的投影轮廓,将投影轮廓作为各空间对象的墙体在点云平面图上对应的轮廓线。
在一可选实施例中,校正模块303在根据相对位置关系,校正点云平面图中对应墙体的轮廓线位置时,用于:根据相对位置关系,确定各空间对象的轮廓线在点云平面图上对应的目标位置;将点云平面图上对应各空间对象的轮廓线调整到目标位置,以使各空间对象的轮廓线与各空间对象的墙体位置对应。
在一可选实施例中,映射模块304在根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线时,用于:根据全景像素坐标与球坐标的对应关系,将全景图中各空间对象的门体和/或窗体对应的全景像素坐标映射到球体空间中,得到对应的球坐标;根据分别获取全景图和点云平面图的设备之间的相对位姿关系,结合球坐标与三维点云坐标的映射关系,将门体和/或窗体对应的球坐标映射为对应的三维点云坐标;对门体和/或窗体对应的三维点云坐标进行平面投影,将门体和/或窗体的轮廓映射到点云平面图中对应的轮廓线上。
在一可选实施例中,目标房屋中包括开放空间,映射模块304还用于:根据全景图,确定开放空间对应的目标位置信息;根据目标位置信息,在点云平面图上生成对应的轮廓线。
需要说明的是,关于上述装置中各模块的具体功能和实现过程,可参见上述方法实施例,在此不再赘述。
本申请实施例还提供一种计算机设备,图4为计算机设备的结构示意图,如图4所示,计算机设备包括:处理器41以及存储有计算机程序的存储器42;其中,处理器41和存储器42可以是一个或多个。
存储器42,主要用于存储计算机程序,这些计算机程序可被处理器41执行,致使处理器41控制计算机设备实现相应功能、完成相应动作或任务。除了存储计算机程序之外,存储器42还可被配置为存储其它各种数据以支持在计算机设备上的操作。这些数据的示例包括用于在计算机设备上操作的任何应用程序或方法的指令。
存储器42,可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
在本申请实施例中,并不限定处理器41的实现形态,例如可以是但不限于CPU、GPU或MCU等。处理器41可以看作是计算机设备的控制系统,可用于执行存储器42中存储的计算机程序,以控制计算机设备实现相应功能、完成相应动作或任务。值得说明的是,根据计算机设备实现形态以及所处于场景的不同,其所需实现的功能、完成的动作或任务会有所不同;相应地,存储器42中存储的计算机程序也会有所不同,而处理器41执行不同计算机程序可控制计算机设备实现不同的功能、完成不同的动作或任务。
在一些可选实施例中,如图4所示,计算机设备还可包括:显示器43、电源组件44以及通信组件45等其它组件。图4中仅示意性给出部分组件,并不意味着计算机设备只包括图4所示组件,针对不同的应用需求,计算机设备还可以包括其他组件,例如,在存在语音交互需求的情况下,如图4所示,计算机设备还可以包括音频组件46。关于计算机设备可包含的组件,具体可视计算机设备的产品形态而定,在此不做限定。
在本申请实施例中,显示器43用于显示图形用户界面,该图形用户界面上展示有多楼层房屋对应的三维实景空间;三维实景空间中包括各楼层空间中的至少一个空间对象,相邻楼层空间之间互相连通。
在本申请实施例中,当处理器41执行存储器42中的计算机程序时,以用于:获取目标房屋中各空间对象对应的全景图和点云平面图,全景图中包括各空间对象的墙体、门体和/或窗体,点云平面图中包括各空间对象的墙体对应的轮廓线;根据各空间对象对应的全景图,确定各空间对象之间的相对位置关系;根据相对位置关系,校正点云平面图中对应墙体的轮廓线位置;根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;对映射到点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
在一可选实施例中,处理器41在获取目标房屋中各空间对象对应的全景图和点云平面图时,用于:获取目标房屋中各空间对象对应的全景数据和点云数据;对全景数据进行三维实景空间渲染,得到各空间对象对应的全景图;以及根据点云数据,生成目标房屋对应的三维点云模型;对三维点云模型进行平面投影,得到各空间对象对应的点云平面图。
在一可选实施例中,处理器41在对三维点云模型进行平面投影之前,还用于:根据全景数据,确定各空间对象中的墙体对应的第一全景像素坐标;根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中与第一全景像素坐标对应的第一三维点云坐标;若三维点云模型中对应第一三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在第一空间位置处补充点云数据。
在一可选实施例中,处理器41在对三维点云模型进行平面投影时,用于:根据全景像素坐标与三维点云坐标的映射关系,确定三维点云模型中与各空间对象中墙体对应的目标三维点云坐标;确定目标三维点云坐标在点云平面图上的投影轮廓,将投影轮廓作为各空间对象的墙体在点云平面图上对应的轮廓线。
在一可选实施例中,处理器41在根据相对位置关系,校正点云平面图中对应墙体的轮廓线位置时,用于:根据相对位置关系,确定各空间对象的轮廓线在点云平面图上对应的目标位置;将点云平面图上对应各空间对象的轮廓线调整到目标位置,以使各空间对象的轮廓线与各空间对象的墙体位置对应。
在一可选实施例中,处理器41根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将全景图中各空间对象的门体和/或窗体对应的位置信息,映射到点云平面图中对应的轮廓线上时,用于:根据全景像素坐标与球坐标的对应关系,将全景图中各空间对象的门体和/或窗体对应的全景像素坐标映射到球体空间中,得到对应的球坐标;根据分别获取全景图和点云平面图的设备之间的相对位姿关系,结合球坐标与三维点云坐标的映射关系,将门体和/或窗体对应的球坐标映射为对应的三维点云坐标;对门体和/或窗体对应的三维点云坐标进行平面投影,将门体和/或窗体的轮廓映射到点云平面图中对应的轮廓线上。
在一可选实施例中,目标房屋中包括开放空间,处理器41还用于:根据全景图,确定开放空间对应的目标位置信息;根据目标位置信息,在点云平面图上生成对应的轮廓线。
需要说明的是,关于上述计算机设备中处理器的具体功能,可参见上述方法实施例,在此不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由计算机设备执行的各步骤。
上述实施例中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
上述实施例中的显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
上述实施例中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述图实施例中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种房屋户型图生成方法,其特征在于,包括:
获取目标房屋中各空间对象对应的全景图和点云平面图,所述全景图中包括各空间对象的墙体、门体和/或窗体,所述点云平面图中包括各空间对象的墙体对应的轮廓线;
根据所述各空间对象对应的全景图,确定所述各空间对象之间的相对位置关系;
根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置;
根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;
对映射到所述点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
2.根据权利要求1所述的方法,其特征在于,获取目标房屋中各空间对象对应的全景图和点云平面图,包括:
获取目标房屋中各空间对象对应的全景数据和点云数据;
对所述全景数据进行三维实景空间渲染,得到所述各空间对象对应的全景图;以及
根据所述点云数据,生成所述目标房屋对应的三维点云模型;
对所述三维点云模型进行平面投影,得到所述各空间对象对应的点云平面图。
3.根据权利要求2所述的方法,其特征在于,在对所述三维点云模型进行平面投影之前,还包括:
根据所述全景数据,确定所述各空间对象中的墙体对应的第一全景像素坐标;
根据所述全景像素坐标与所述三维点云坐标的映射关系,确定在所述三维点云模型中与所述第一全景像素坐标对应的第一三维点云坐标;
若所述三维点云模型中对应所述第一三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在所述第一空间位置处补充点云数据。
4.根据权利要求2所述的方法,其特征在于,对所述三维点云模型进行平面投影,包括:
根据所述全景像素坐标与所述三维点云坐标的映射关系,确定所述三维点云模型中与所述各空间对象中墙体对应的目标三维点云坐标;
确定所述目标三维点云坐标在所述点云平面图上的投影轮廓,将所述投影轮廓作为所述各空间对象的墙体在所述点云平面图上对应的轮廓线。
5.根据权利要求1所述的方法,其特征在于,根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置,包括:
根据所述相对位置关系,确定所述各空间对象的轮廓线在所述点云平面图上对应的目标位置;
将所述点云平面图上对应各空间对象的轮廓线调整到所述目标位置,以使所述各空间对象的轮廓线与所述各空间对象的墙体位置对应。
6.根据权利要求1所述的方法,其特征在于,根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,包括:
根据全景像素坐标与球坐标的对应关系,将所述全景图中各空间对象的门体和/或窗体对应的全景像素坐标映射到球体空间中,得到对应的球坐标;
根据分别获取全景图和点云平面图的设备之间的相对位姿关系,结合球坐标与三维点云坐标的映射关系,将所述门体和/或窗体对应的球坐标映射为对应的三维点云坐标;
对所述门体和/或窗体对应的三维点云坐标进行平面投影,将所述门体和/或窗体的轮廓映射到所述点云平面图中对应的轮廓线上。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述目标房屋中包括开放空间,所述方法还包括:
根据所述全景图,确定开放空间对应的目标位置信息;
根据所述目标位置信息,在所述点云平面图上生成对应的轮廓线。
8.一种房屋户型图生成装置,其特征在于,包括:
获取模块,用于获取目标房屋中各空间对象对应的全景图和点云平面图,所述全景图中包括各空间对象的墙体、门体和/或窗体,所述点云平面图中包括各空间对象的墙体对应的轮廓线;
确定模块,用于根据所述各空间对象对应的全景图,确定所述各空间对象之间的相对位置关系;
校正模块,用于根据所述相对位置关系,校正所述点云平面图中对应墙体的轮廓线位置;
映射模块,用于根据分别获取全景图和点云平面图的设备之间的相对位姿关系,将所述全景图中各空间对象的门体和/或窗体对应的位置信息,映射到所述点云平面图中对应的轮廓线上,得到包含门体轮廓和窗体轮廓的点云平面图;
标记模块,用于对映射到所述点云平面图上的门体轮廓和窗体轮廓进行标记,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
9.一种计算机设备,其特征在于,包括:处理器和存储器,在所述处理器执行计算机程序时,用于实现如权利要求1-7中任一项所述方法中的步骤。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子终端设备的处理器执行时,使得电子终端设备能够执行如权利要求1-7中任一项所述方法中的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211003231.9A CN115393469A (zh) | 2022-08-19 | 2022-08-19 | 房屋户型图生成方法、装置、设备及介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211003231.9A CN115393469A (zh) | 2022-08-19 | 2022-08-19 | 房屋户型图生成方法、装置、设备及介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN115393469A true CN115393469A (zh) | 2022-11-25 |
Family
ID=84120648
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211003231.9A Pending CN115393469A (zh) | 2022-08-19 | 2022-08-19 | 房屋户型图生成方法、装置、设备及介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN115393469A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117496181A (zh) * | 2023-11-17 | 2024-02-02 | 杭州中房信息科技有限公司 | 基于OpenCV的户型图识别方法、存储介质及设备 |
-
2022
- 2022-08-19 CN CN202211003231.9A patent/CN115393469A/zh active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117496181A (zh) * | 2023-11-17 | 2024-02-02 | 杭州中房信息科技有限公司 | 基于OpenCV的户型图识别方法、存储介质及设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6951595B2 (ja) | 住宅のデータ収集およびモデル生成方法 | |
| US11704833B2 (en) | Monocular vision tracking method, apparatus and non-transitory computer-readable storage medium | |
| CN115393467A (zh) | 房屋户型图生成方法、装置、设备及介质 | |
| US9495802B2 (en) | Position identification method and system | |
| US9710971B2 (en) | Information processing device, position designation method and storage medium | |
| JP6879891B2 (ja) | 平面セグメントを用いて点群を完成させる方法およびシステム | |
| CN114663618B (zh) | 三维重建及校正方法、装置、设备及存储介质 | |
| CN111436208B (zh) | 一种测绘采样点的规划方法、装置、控制终端及存储介质 | |
| US8023727B2 (en) | Environment map generating apparatus, environment map generating method, and environment map generating program | |
| US20190378330A1 (en) | Method for data collection and model generation of house | |
| US20160247269A1 (en) | Guiding method and information processing apparatus | |
| JP2025062124A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
| CN115439576B (zh) | 用于终端设备的户型图生成方法、装置、设备及介质 | |
| JP6500355B2 (ja) | 表示装置、表示プログラム、および表示方法 | |
| CN115330652B (zh) | 点云拼接方法、设备及存储介质 | |
| US20220130064A1 (en) | Feature Determination, Measurement, and Virtualization From 2-D Image Capture | |
| US20150029219A1 (en) | Information processing apparatus, displaying method and storage medium | |
| US9996947B2 (en) | Monitoring apparatus and monitoring method | |
| CN115375860B (zh) | 点云拼接方法、装置、设备及存储介质 | |
| CN114494487B (zh) | 基于全景图语义拼接的户型图生成方法、设备及存储介质 | |
| CN106485772A (zh) | 全景切换方法及系统 | |
| CN114972579B (zh) | 户型图构建方法、装置、设备及存储介质 | |
| CN113450414A (zh) | 一种摄像机标定方法、设备、系统及存储介质 | |
| JP2022507714A (ja) | 測量用サンプリング点の計画方法、装置、制御端末及び記憶媒体 | |
| CN115393469A (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 |