户型图生成方法、装置、电子设备及介质转让专利

申请号 : CN202111653592.3

文献号 : CN114529621B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 不公告发明人

申请人 : 北京城市网邻信息技术有限公司

摘要 :

本申请实施例提供一种户型图生成方法、装置、电子设备及介质。在本申请实施例中,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系;根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成平面户型图。

权利要求 :

1.一种户型图生成方法,其特征在于,包括:

获取目标房屋对象对应的全景视频,所述全景视频是利用全景相机依次对所述目标房屋对象包含的多个空间对象进行视频拍摄得到的;

获取所述全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,所述拍摄点是指设置在所述多个空间对象中的拍摄位置,所述全景视频还包括位于相邻目标全景图之间的其它全景图;

对所述多张目标全景图分别进行特定交界线的检测,得到所述多个空间对象中包含的特定交界线的位置信息;

对所述全景视频进行位姿跟踪,得到所述全景视频中相邻全景图之间的相对位姿关系,所述相对位姿关系表示所述全景相机在拍摄相邻全景图时的位姿变化;

对于任意相邻的两张目标全景图,根据位于所述两张目标全景图之间的相邻全景图之间的相对位姿关系,生成所述两张目标全景图对应的两个空间对象之间的第一相对位置关系;在所述两张目标全景图中包含同一门体对象的情况下,根据所述同一门体对象在所述两张目标全景图中的位置信息,生成所述两张目标全景图对应的两个空间对象之间的第二相对位置关系;根据所述第一相对位置关系和所述第二相对位置关系,生成所述两个空间对象之间的目标相对位置关系;

根据所述多个空间对象之间的目标相对位置关系,对所述多个空间对象中包含的特定交界线的位置信息进行拼接,得到所述目标房屋对象的平面户型图;

上述方法还包括:对于任意相邻的两张目标全景图,检测所述两张目标全景图中是否包含门体对象;在检测到所述两张目标全景图包含门体对象的情况下,根据所述两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在所述两张目标全景图中;

其中,所述两张目标全景图中包含的门体对象的特征信息确定方式包括:针对两张目标全景图中的第一全景图和第二全景图像,若第一全景图中包括至少一个第一门体对象,第二全景图中包括至少一个第二门体对象,利用门体对象匹配模型中的特征提取层分别对第一门体对象的图像和第二门体对象的图像进行特征提取,以得到第一门体对象的特征信息和第二门体对象的特征信息;利用门体对象匹配模型中的通道注意力层分别对第一门体对象的特征信息和第二门体对象的特征信息进行注意力机制处理,得到处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息;以及利用门体对象匹配模型中的相似度计算层计算处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息之间特征距离,以及将特征距离作为第一门体对象和第二门体对象之间的特征信息的相似度,其中,所述门体对象匹配模型的训练数据经过了全景拉伸、绕图像坐标系的纵轴旋转以及图像亮度调整中至少一种图像处理操作的数据增强。

2.根据权利要求1所述的方法,其特征在于,获取所述全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,包括:从所述全景视频中获取带有标记信息的多张全景图作为所述多张目标全景图,所述标记信息是在所述拍摄点上拍摄到对应全景图时为该全景图添加的;

或者

获取所述全景相机所在电子终端发送的所述多张目标全景图,所述目标全景图是所述电子终端利用所述全景相机在所述拍摄点上拍摄到对应全景图时对该全景图进行保存得到的。

3.根据权利要求1所述的方法,其特征在于,对于任意相邻的两张目标全景图,根据位于所述两张目标全景图之间的相邻全景图之间的相对位姿关系,生成所述两张目标全景图对应的两个空间对象之间的相对位置关系,包括:根据每张目标全景图在所述全景视频中的帧索引,确定任意相邻的目标全景图,以及位于所述任意相邻的两张目标全景图之间的多个其它全景图;

针对任意相邻的两张目标全景图,根据所述两张目标全景图与其相邻的其它全景图之间以及所述多个其它全景图之间的相对位姿关系,生成所述两张目标全景图对应的两个空间对象之间的相对位置关系。

4.根据权利要求1所述的方法,其特征在于,还包括:

在所述两张目标全景图中未包含同一门体对象或未包含门体对象的情况下,直接将所述第一相对位置关系作为所述两个空间对象之间的目标相对位置关系。

5.根据权利要求1所述的方法,其特征在于,还包括:

按照预设帧间隔对所述全景视频进行帧抽取,得到抽取出的多张待处理全景图;

对于所述多张待处理全景图中任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图,将所述第一全景图和所述第二全景图进行匹配;

若匹配成功,确定所述第二全景图所属的空间对象与所述第一全景图所属的空间对象相同,其中,所述第一全景图所属的空间对象为已知;

若匹配失败,根据所述第二全景图的帧索引,从所述多张目标全景图中确定与所述第二全景图对应的目标全景图,并将与所述第二全景图对应的目标全景图所属的空间对象作为所述第二全景图所属的空间对象;

基于多个待处理全景图所属的空间对象,确定所述多个空间对象之间的相邻信息;

根据所述多个空间对象之间的相邻信息,对所述多个空间对象中包含的特定交界线的位置信息进行拼接,得到所述目标房屋对象的平面户型图。

6.根据权利要求5所述的方法,其特征在于,根据多个空间对象之间的相邻信息,对所述多个空间对象中包含的特定交界线的位置信息进行拼接,得到所述目标房屋对象的平面户型图包括:针对相邻的每两个空间对象,以连通该两个空间对象的门体对象为参考,对该两个空间对象中包含的特定交界线的位置信息进行拼接,得到所述目标房屋对象的平面户型图。

7.一种户型图生成装置,其特征在于,包括:

获取模块,用于获取目标房屋对象对应的全景视频,所述全景视频是利用全景相机依次对所述目标房屋对象包含的多个空间对象进行视频拍摄得到的;

所述获取模块,还用于获取所述全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,所述拍摄点是指设置在所述多个空间对象中的拍摄位置,所述全景视频还包括位于相邻目标全景图之间的其它全景图;

检测模块,用于对所述多张目标全景图分别进行特定交界线的检测,得到所述多个空间对象中包含的特定交界线的位置信息;

跟踪模块,用于对所述全景视频进行位姿跟踪,得到所述全景视频中相邻全景图之间的相对位姿关系,所述相对位姿关系表示所述全景相机在拍摄相邻全景图时的位姿变化;

生成模块,用于对于任意相邻的两张目标全景图,根据位于所述两张目标全景图之间的相邻全景图之间的相对位姿关系,生成所述两张目标全景图对应的两个空间对象之间的第一相对位置关系;在所述两张目标全景图中包含同一门体对象的情况下,根据所述同一门体对象在所述两张目标全景图中的位置信息,生成所述两张目标全景图对应的两个空间对象之间的第二相对位置关系;根据所述第一相对位置关系和所述第二相对位置关系,生成所述两个空间对象之间的目标相对位置关系;对于任意相邻的两张目标全景图,检测所述两张目标全景图中是否包含门体对象;在检测到所述两张目标全景图包含门体对象的情况下,根据所述两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在所述两张目标全景图中;其中,所述两张目标全景图中包含的门体对象的特征信息确定方式包括:针对两张目标全景图中的第一全景图和第二全景图像,若第一全景图中包括至少一个第一门体对象,第二全景图中包括至少一个第二门体对象,利用门体对象匹配模型中的特征提取层分别对第一门体对象的图像和第二门体对象的图像进行特征提取,以得到第一门体对象的特征信息和第二门体对象的特征信息;利用门体对象匹配模型中的通道注意力层分别对第一门体对象的特征信息和第二门体对象的特征信息进行注意力机制处理,得到处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息;以及利用门体对象匹配模型中的相似度计算层计算处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息之间特征距离,以及将特征距离作为第一门体对象和第二门体对象之间的特征信息的相似度,其中,所述门体对象匹配模型的训练数据经过了全景拉伸、绕图像坐标系的纵轴旋转以及图像亮度调整中至少一种图像处理操作的数据增强;

拼接模块,用于根据所述多个空间对象之间的目标相对位置关系,对所述多个空间对象中包含的特定交界线的位置信息进行拼接,得到所述目标房屋对象的平面户型图。

8.一种电子设备,其特征在于,包括:全景相机、存储器和处理器;

所述全景相机,用于图像采集;

所述存储器,用于存储计算机程序;

所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求1‑6任一项所述方法中的步骤。

9.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器实现权利要求1‑6中任一项所述的方法。

说明书 :

户型图生成方法、装置、电子设备及介质

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种户型图生成方法、装置、电子设备及介质。

背景技术

[0002] 户型图是指能够展示房屋结构的图形,通过户型图能够对房屋内各个空间的功能、位置、大小等房屋空间布局信息有更为直观地了解。目前,主要是依靠人工现场量房,并基于量房数据手动绘制户型图。然而,人工手动绘制的户型图不够准确,且效率较低。

发明内容

[0003] 本申请的多个方面提供一种户型图生成方法、装置、电子设备及介质,用以自动、快速、准确地生成更加符合真实房屋结构的平面户型图。
[0004] 本申请实施例提供一种户型图生成方法,包括:获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的;获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图;对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化;对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0005] 本申请实施例还提供一种户型图生成装置,包括:获取模块,用于获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的;获取模块,还用于获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图;检测模块,用于对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;跟踪模块,用于对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化;生成模块,用于对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;拼接模块,用于根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0006] 本申请实施例还提供一种电子设备,包括:全景相机、存储器和处理器;全景相机,用于图像采集;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行户型图生成方法。
[0007] 本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现户型图生成方法。
[0008] 在本申请实施例中,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系;根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成更加符合真实房屋结构的平面户型图。

附图说明

[0009] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0010] 图1为本申请实施例提供的一种户型图生成方法的流程示意图;
[0011] 图2为一种示例性的户型图;
[0012] 图3为本申请实施例提供的另一种户型图生成方法的流程示意图;
[0013] 图4为示例性的视角范围;
[0014] 图5为本申请实施例提供的另一种户型图生成方法的流程示意图;
[0015] 图6为本申请实施例提供的另一种户型图生成方法的流程示意图;
[0016] 图7为本申请实施例提供的一种户型图生成装置的结构示意图;
[0017] 图8为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

[0018] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0019] 针对现有的人工手动绘制的户型图不够准确,且效率较低的技术问题,本申请实施例提供一种户型图生成方法、装置、电子设备及介质。在本申请实施例中,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系;根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成更加符合真实房屋结构的平面户型图。
[0020] 以下结合附图,详细说明本申请各实施例提供的技术方案。
[0021] 图1为本申请实施例提供的一种户型图生成方法的流程示意图。该方法可由户型图生成装置执行,该装置可以由软件和/或硬件的方式实现,并一般可以集成在电子终端或服务器中。
[0022] 参见图1,该方法可以包括以下步骤:
[0023] 101、获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的。
[0024] 102、获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图。
[0025] 103、对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息。
[0026] 104、对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化。
[0027] 105、对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系。
[0028] 106、根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0029] 在本申请实施例中,目标房屋对象是指任意具有户型图生成需求的房屋对象。该目标房屋对象中包括至少一个空间对象,至少一个空间对象例如包括但不限于客厅、餐厅、厨房、卧室、阳台、卫生间、玄关,如图2所示;当然,目标房屋对象划分成多少个空间对象可以根据需求进行自定义设置。在实际应用中,不同房屋对象内部的空间对象规划可以有所不同,不同空间对象之间的连接方式也可以有所不同,例如部分空间对象(卧室和客厅)之间存在墙体且通过门进行连接,例如图2中的卧室和客厅之间存在墙体且通过门进行连接;而部分空间对象(客厅、餐厅)之间不存在墙体且通过开放空间连接,例如图2中的客厅和餐厅之间不存在墙体且通过开放空间进行连接。其中,对于通过墙体隔断同时通过门体对象连接的两个空间对象而言,可以通过墙体将其识别为两个空间对象,对于之间不存在墙体的两个空间对象而言,则还可以通过识别其中的矩形区域等任何可用方式识别其中包含的空间对象,当然在本申请实施例中,根据需求也可以不对不存在墙体而通过开放空间连接的空间进行进一步识别,对此本申请实施例不加以限定。例如,对于通过开放空间连接的客厅和餐厅而言,可以通过识别矩形区域等方式将其拆分为客厅和餐厅两个部分,或者也可以直接识别为一个整体,作为客餐厅,等等。
[0030] 在本实施例中,利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄,得到目标房屋对象的全景视频。在拍摄全景视频的过程中,若全景相机位于指定的每个空间对象的拍摄位置(也即拍摄点)上时,在拍摄点上需要拍摄空间对象的全景图。以图2为例,用户携带全景相机在目标房屋对象中边移动边进行视频拍摄,在移动到目标房屋对象中任一空间对象中的指定的拍摄点时,在该拍摄点上进行全景拍摄得到该空间对象的全景图。图2中的虚线表示全景相机的移动轨迹,黑点表示在客厅、餐厅、厨房、卧室、阳台、卫生间、玄关等空间对象中设置的拍摄点。
[0031] 在获取到目标房屋对象的全景视频后,从全景视频中获取在多个拍摄点上拍摄到的多张目标全景图。为了便于理解和区分,目标全景图是指在空间对象中设置的拍摄点上拍摄到的全景图,全景视频中除了目标全景图还包括其他全景图,其他全景图是指不在拍摄点上拍摄到的全景图。
[0032] 本实施例对获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图的方式不做限制。实际应用中,可以采用但不限于以下方式获取目标全景图:
[0033] 方式1:从全景视频中获取带有标记信息的多张全景图作为多张目标全景图,标记信息是在拍摄点上拍摄到对应全景图时为该全景图添加的。
[0034] 具体应用时,每当全景相机移动到空间对象中的拍摄点进行视频拍摄时,对拍摄到的全景图添加标记信息,标记信息可以包括但不限于:拍摄点所在的空间对象的标识、标识拍摄点的特定标识或者标识目标全景图的特定标识等等。例如,假设空间对象的标识分别厨房、卧室、客厅等,则携带有厨房、卧室、客厅等标识信息的全景图为目标全景图。例如,假设标识拍摄点的特定标识为P,则携带有P标记的全景图即为目标全景图。例如,假设标识目标全景图的特定标识为T,则携带有T标记的全景图即为目标全景图。
[0035] 方式2:获取全景相机所在电子终端发送的多张目标全景图,目标全景图是电子终端利用全景相机在拍摄点上拍摄到对应全景图时对该全景图进行保存得到的。
[0036] 在方式2中,每当全景相机移动到空间对象中的拍摄点进行视频拍摄时,将在拍摄点上拍摄到的全景图作为目标全景图进行保存,并将保存的目标全景图发送给电子终端,由电子终端发送给户型图生成装置。当然,全景相机也可以直接将目标全景图发送给户型图生成装置,本实施例不做限制。
[0037] 在本实施例中,特定交界线可以是指空间对象中墙体与地面之间的交界线(也可以称之为墙角线),也可以是指空间对象中墙体与天花板之间的交界线,但并不以此为限。进一步可选的,可以利用特定交界线检测模型对多张目标全景图分别进行特定交界线的检测,以得到多个空间对象包含的特定交界线的位置信息。特定交界线检测模型是能够进行特定交界线检测的神经网络模型。其中,在训练特定交界线检测模型之前,准备大量的样本全景图,以及标注样本全景图中空间对象包含的特定交界线的位置信息,基于样本全景图及其标注结果进行对神经网络模型进行模型训练,得到特定交界线检测模型。其中,神经网络模型包括但并限于卷积神经网络(Convolutional Neural Networks,CNN)模型、循环神经网络(Recurrent Neural Networks,RNN)模型、长短期记忆网络(Long Short‑Term Memory,LSTM)模型。
[0038] 进一步可选的,若特定交界线为墙角线,则在对目标全景图进行特定交界线的检测时,还可以利用机器学习方式自动识别目标全景图中的天花板区域、墙壁区域和地板区域,并将目标全景图中的地板区域投影至全景相机所在高度上的平面上,获取地板投影图像;对地板投影图像进行轮廓提取处理,得到轮廓线,并对轮廓线进行直角化处理,将直角化处理后的轮廓线作为房屋对象的墙角线。
[0039] 在本申请实施例中,对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化。进一步可选的,可以采用SLAM(simultaneous localization and mapping,即时定位与地图构建)算法对全景视频进行位姿跟踪。其中,SLAM算法在对全景视频进行位姿跟踪时,依次提取相邻两帧全景图的特征点,并对相邻两帧全景图的特征点进行匹配,根据匹配成功的特征点在各自的全景图中的位姿信息,计算相邻全景图之间的相对位姿关系。
[0040] 在得到全景视频中相邻全景图之间的相对位姿关系之后,对于任意相邻的两张目标全景图,可以根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系。
[0041] 具体而言,在生成两张目标全景图对应的两个空间对象之间的目标相对位置关系时,可以根据每张目标全景图在全景视频中的帧索引,确定任意相邻的目标全景图,以及位于任意相邻的两张目标全景图之间的多个其它全景图;针对任意相邻的两张目标全景图,根据两张目标全景图与其相邻的其它全景图之间以及多个其它全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的相对位置关系。其中,帧索引表征的是全景图在全景视频中的顺序,也即对应的全景图时全景图中的第几帧。
[0042] 例如,在确定餐厅全景图和主卧全景图之间的相对位姿关系时,根据餐厅全景图的帧索引和主卧全景图的帧索引可以确定全景视频中从餐厅拍摄点到主卧拍摄点之间的拍摄到的全部全景图,全部全景图中除去餐厅全景图和主卧全景图之外的全景图是其他全景图。依次将全部全景图中的两两相邻全景图之间的相对位姿关系进行累加,得到餐厅全景图和主卧全景图之间的相对位姿关系,也即餐厅和主卧之间的目标相对位置关系。
[0043] 在根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。进一步可选的,为了获取更加准确的平面户型图,可以从拍摄多张目标全景图对应的相机坐标系中选择一个基准相机坐标系;根据基准相机坐标系和世界坐标系的变换矩阵,结合多个空间对象之间的目标相对位置关系,将多个空间对象包含的特定交界线的位置信息转换到世界坐标系下;根据在世界坐标系下多个空间对象包含的特定交界线的位置信息,将多个空间对象包含的特定交界线进行拼接,得到平面户型图。
[0044] 值得注意是,全景相机在不同拍摄点对应不同的相机坐标系,相机坐标系和世界坐标系的变换矩阵可以根据全景相机在拍摄点的位置信息、全景相机的相机内参、相机外参等计算得到。应理解,在统一的世界坐标系下对多个空间对象包含的特定交界线进行拼接,可以得到更加能够反映真实情况的户型图。
[0045] 本申请实施例提供的户型图生成方法,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系;根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成更加符合真实房屋结构的平面户型图。
[0046] 图3为本申请实施例提供的另一种户型图生成方法的流程示意图。该方法可由户型图生成装置执行,该装置可以由软件和/或硬件的方式实现,并一般可以集成在电子终端或服务器中。
[0047] 参见图3,该方法可以包括以下步骤:
[0048] 301、获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的。
[0049] 关于步骤301的实施方式可以参见前述步骤101的实施方式,在此不再赘述。
[0050] 302、获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图。
[0051] 关于步骤302的实施方式可以参见前述步骤102的实施方式,在此不再赘述。
[0052] 303、对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息。
[0053] 关于步骤303的实施方式可以参见前述步骤103的实施方式,在此不再赘述。
[0054] 304、对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化。
[0055] 关于步骤304的实施方式可以参见前述步骤104的实施方式,在此不再赘述。
[0056] 305、对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的第一相对位置关系。
[0057] 关于步骤305的实施方式可以参见前述步骤105的实施方式,在此不再赘述。
[0058] 306、在两张目标全景图中包含同一门体对象的情况下,根据同一门体对象在两张目标全景图中的位置信息,生成两张目标全景图对应的两个空间对象之间的第二相对位置关系。
[0059] 307、根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系。
[0060] 308、根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0061] 关于步骤309的实施方式可以参见前述步骤106的实施方式,在此不再赘述。
[0062] 在本实施例中,在生成两个空间对象之间的目标相对位置关系时,一方面基于根据位于相邻的两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的第一相对位置关系。另一方面还可以在两张目标全景图中包含同一门体对象的情况下,根据同一门体对象在两张目标全景图中的位置信息,生成两张目标全景图对应的两个空间对象之间的第二相对位置关系,最后利用根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系。在两张目标全景图中未包含同一门体对象或未包含门体对象的情况下,直接将第一相对位置关系作为两个空间对象之间的目标相对位置关系。
[0063] 值得注意的是,本实施例对步骤305和步骤306的执行顺序不做限制,例如,步骤305和步骤306可以同时执行,也可以先执行步骤305再执行步骤306,还可以先执行步骤306再执行步骤305。
[0064] 在本申请实施例中,在执行步骤306之前,对于任意相邻的两张目标全景图,检测两张目标全景图中是否包含门体对象;在检测到两张目标全景图包含门体对象的情况下,根据两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在两张目标全景图中,若是,执行步骤306。在两张目标全景图中未包含同一门体对象或未包含门体对象的情况下,直接将第一相对位置关系作为两个空间对象之间的目标相对位置关系。
[0065] 值得注意的是,在根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系时,可以仅仅根据第二相对位置关系,生成两个空间对象之间的目标相对位置关系。或者,对第一相对位置关系和第二相对位置关系进行加权求和,得到两个空间对象之间的目标相对位置关系。其中,在加权求和时,第二相对位置关系的权重大于第一相对位置关系。
[0066] 在本实施例中,可以利用门体对象检测模型检测两张目标全景图中是否包含门体对象。门体对象检测模型是利用大量的包括门体对象的样本图像训练得到的神经网络模型,能够识别全景图中是否包括门体对象。
[0067] 在检测出两张目标全景图中包含门体对象时,还可以检测两张目标全景图中包含是否为同一门体对象,根据同一门体对象分别在两张目标全景图中的位置信息,便可确定两张目标全景图对应的两个空间对象之间的第二相对位置关系。
[0068] 在本申请的一些实施例中,根据两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在两张目标全景图中的一种实施方式是:根据两张目标全景图包含的门体对象的特征信息,识别包含同一门体对象且拍摄点位于同一门体对象同侧的同侧全景图;根据两张目标全景图包含的门体对象的特征信息和拍摄每张目标全景图时的全景相机的视角范围,识别包含同一门体对象且拍摄点位于同一门体对象两侧的异侧全景图。
[0069] 以图2为例,在拍摄客厅和主卧的全景图时,均能拍摄到主卧的门体对象,则客厅的全景图和主卧的全景图为包含同一门体对象的全景图。在拍摄客厅和次卧的全景图时,均能拍摄到次卧的门体对象,则客厅的全景图和次卧的全景图为包含同一门体对象的全景图。在拍摄客厅和餐厅的全景图时,均能拍摄到主卧或次卧的门体对象,则客厅的全景图和餐厅的全景图为包含同一门体对象的全景图。
[0070] 进一步可选的,根据两张目标全景图包含的门体对象的特征信息,识别包含同一门体对象且拍摄点位于同一门体对象同侧的同侧全景图的一种实施过程是:计算两张目标全景图中包含的门体对象的特征信息的相似度,若该两张目标全景图中存在相似度大于第一相似度阈值的门体对象,则将两张目标全景图识别为包含同一门体对象且拍摄点在同一门体对象同侧的同侧全景图。
[0071] 具体而言,第一相似度阈值根据实际情形进行设置,例如为0.98。若两张目标全景图中包含的门体对象中存在特征信息的相似度大于第一相似度阈值的门体对象,说明两张目标全景图为包含同一门体对象的同侧全景图。若两张目标全景图中包含的全部门体对象的特征信息的相似度均小于或等于第一相似度阈值,也就是说,两张目标全景图中不包含特征信息的相似度大于第一相似度阈值的门体对象,这说明两张目标全景图不是包含同一门体对象的同侧全景图。
[0072] 值得说明的是,针对两张目标全景图中第一全景图和第二全景图,若第一全景图中包括多个门体对象,可以依次遍历第一全景图中的多个门体对象,并计算当前遍历到的第一全景图中的门体对象的特征信息分别与第二全景图中各个门体对象的特征信息之间的相似度。若当前遍历到的第一全景图中的门体对象的特征信息与第二全景图中的一个门体对象的特征信息之间相似度大于第一相似度阈值,则可以停止遍历第一全景图中的多个门体对象,并确定第一全景图和第二全景图为包含同一门体对象的同侧全景图。若当前遍历到的第一全景图中的门体对象的特征信息与第二全景图中全部的门体对象的特征信息之间相似度小于或等于第一相似度阈值,则继续遍历第一全景图中的多个门体对象以及执行后续步骤。
[0073] 或者,针对每两张全景图中第一全景图和第二全景图,也可以依次遍历第二全景图中的多个门体对象,并计算当前遍历到的第二全景图中的门体对象的特征信息分别与第一全景图中各个门体对象的特征信息之间的相似度。若当前遍历到的第二全景图中的门体对象的特征信息与第一全景图中的一个门体对象的特征信息之间相似度大于第一相似度阈值,则可以停止遍历第二全景图中的多个门体对象,并确定第一全景图和第二全景图为包含同一门体对象的同侧全景图。若当前遍历到的第二全景图中的门体对象的特征信息与第一全景图中全部的门体对象的特征信息之间相似度小于或等于第一相似度阈值,则继续遍历第二全景图中的多个门体对象以及执行后续步骤。
[0074] 进一步可选的,为了提高两张目标全景图中包含的门体对象的特征信息的相似度的计算准确度,可以预先训练一个门体对象匹配模型,利用该门体对象匹配模型来计算两张目标全景图中包含的门体对象的特征信息的相似度。
[0075] 进一步可选的,为了提高门体对象匹配模型的性能,可以首先获取训练数据集,训练数据集中包括多张样本门体对象图像;对多张样本门体对象图像分别进行全景拉伸、绕图像坐标系的纵轴旋转以及图像亮度调整中至少一种图像处理操作,得到图像处理后的多张样本门体对象图像,并将图像处理后的多张样本门体对象图像添加至训练数据集;利用添加后的训练数据集进行模型训练,得到门体对象匹配模型。
[0076] 在本申请的一些实施例中,计算两张目标全景图中包含的门体对象的特征信息的相似度的一种实施过程是:针对两张目标全景图中的第一全景图和第二全景图像,若第一全景图中包括至少一个第一门体对象,第二全景图中包括至少一个第二门体对象,则计算每个第一门体对象的特征信息与每个第二门体对象的特征信息之间的相似度;其中,在计算每个第一门体对象的特征信息与每个第二门体对象的特征信息之间的相似度时,将第一门体对象的图像和第二门体对象的图像输入至门体对象匹配模型中,以得到第一门体对象和第二门体对象之间的特征信息的相似度。
[0077] 在本申请的一些实施例中,门体对象匹配模型包括特征提取层、通道注意力层和相似度计算层,将第一门体对象的图像和第二门体对象的图像输入至门体对象匹配模型中,以得到第一门体对象和第二门体对象之间的特征信息的相似度包括:利用特征提取层分别对第一门体对象的图像和第二门体对象的图像进行特征提取,以得到第一门体对象的特征信息和第二门体对象的特征信息;利用通道注意力层分别对第一门体对象的特征信息和第二门体对象的特征信息进行注意力机制处理,得到处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息;以及利用相似度计算层计算处理后的第一门体对象的特征信息和处理后的第二门体对象的特征信息之间特征距离,以及将特征距离作为第一门体对象和第二门体对象之间的特征信息的相似度。
[0078] 值得注意的是,门体对象匹配模型中增设了能够注意力机制处理的通道注意力层,且门体对象匹配模型的训练数据经过了全景拉伸、绕图像坐标系的纵轴旋转以及图像亮度调整中至少一种图像处理操作的数据增强,使得门体对象匹配模型更加关注门体对象中重要的细节特征,抑制门体对象中不重要的细节特征,进而可以更加准确地计算门体对象之间的特征信息的相似度。
[0079] 在本申请的一些实施例中,根据两张目标全景图包含的门体对象的特征信息和拍摄每张目标全景图时的全景相机的视角范围,识别包含同一门体对象且拍摄点位于同一门体对象两侧的异侧全景图的一种实施过程是:针对两张目标全景图中的第一全景图和第二全景图,设置拍摄第一全景图的第一相机点的初始位置,根据第一全景图中包含的门体对象的位置信息和初始位置,确定第一全景图对应的第一相机坐标系下的第一视角范围;在假定第一全景图和第二全景图包含同一门体对象的条件下,根据第一全景图中包含的门体对象的位置信息以及第二全景图中包含的门体对象的位置信息,将第一视角范围映射成第二相机坐标系下得到目标视角范围;第二相机坐标系是第二全景图的对应相机坐标系;从第二全景图中截取位于目标视角范围内的目标图像,第二全景图中包含的门体对象至少部分出现在目标图像中;计算第一全景图中包含的门体对象的特征信息与目标图像的特征信息之间的相似度,若相似度大于第二相似度阈值,确定第一全景图和第二全景图属于包含同一门体对象且拍摄点位于同一门体对象两侧的异侧全景图。
[0080] 值得注意的是,全景相机在拍摄第一全景图所在的相机坐标系为第一相机坐标系,全景相机在拍摄第二全景图所在的相机坐标系为第二相机坐标系。
[0081] 进一步可选的,根据第一全景图中包含的门体对象的位置信息以及第二全景图中包含的门体对象的位置信息,将第一视角范围映射成第二相机坐标系下得到目标视角范围的一种实现方式为:根据第一全景图中包含的门体对象的位置信息以及第二全景图中包含的门体对象的位置信息,确定第一相机坐标系和第二相机坐标系之间的变换矩阵;利用变换矩阵对第一视角范围进行变换,得到第一视角范围在第二相机坐标系下的目标视角范围。
[0082] 为了便于理解,针对每两张目标全景图中的第一全景图和第二全景图,将拍摄第一全景图的拍摄点称之为第一拍摄点,将拍摄第二全景图的拍摄点称之为第二拍摄点。在特定交界线为墙角线的情况下,将门体对象靠近地面侧的下边沿上的两个端点分别称作为门点。或者,在特定交界线为墙体与天花板之间的交界线的情况下,将门体对象靠近天花板侧的上边沿上的两个端点分别称作为门点。
[0083] 参见图4,假设第一拍摄点记为O1,第一拍摄点记为第一相机坐标系的原点,以及设置第一拍摄点的初始位置为(0,0,0);将第一全景图包含的门体对象记为第一门体对象,第一门体对象的两个门点分别记为D1和D2,根据第一门体对象的门点D1和门点D2分别在第一全景图中的图像坐标并基于球面几何投影可以计算出门点D1和门点D2分别在第一相机坐标系下的坐标,假设门点D1在第一相机坐标系下的坐标为(x1,y1,z1),门点D2在第一相机坐标系下的坐标为(x2,y2,z2)。根据第一拍摄点O1的初始位置(0,0,0)、门点D1的坐标(x1,y1,z1)可以确定射线O1D1的位置,根据第一拍摄点O1的初始位置(0,0,0)、门点D2的坐标(x2,y2,z2)可以确定射线O1D2的位置,进而根据射线O1D1的位置和射线O1D2的位置所界定出的区域范围即为第一相机在第一相机坐标系下的第一视角范围。
[0084] 同样地,假设第二拍摄点记为O2,第二拍摄点记为第二相机坐标系的原点,以及设置第二拍摄点的初始位置为(0,0,0);将第二全景图包含的门体对象记为第二门体对象,第二门体对象的两个门点分别记为D3和D4,根据第二门体对象的门点D3和门点D4分别在第二全景图中的图像坐标并基于球面几何投影可以计算出门点D3和门点D4分别在第二相机坐标系下的坐标,假设门点D3在第二相机坐标系下的坐标为(x3,y3,z3),门点D4在第二相机坐标系下的坐标为(x4,y4,z4)。根据射线O2D3的位置和射线O2D4的位置所界定出的区域范围即为第二相机在第二相机坐标系下的视角范围。
[0085] 在假定第一门体对象与第二门体对象为同一门体对象的情况下,第一门体对象上的门点在第一相机坐标系下的坐标以及第二门体对象上的对应门点在第二相机坐标系下的坐标理论上应该位置重合,但由于第一拍摄点与第二拍摄点的位置不重合,导致第一门体对象上的门点在第一相机坐标系下的坐标以及第二门体对象上的对应门点在第二相机坐标系下的坐标的位置不重合。基于此,根据第一门体对象上的门点在第一相机坐标系下的坐标以及第二门体对象上的对应门点在第二相机坐标系下的坐标可以计算出第一相机坐标系和第二相机坐标系之间的变换矩阵,利用该变换矩阵对第一门体对象上的门点的坐标进行变换,变换后的第一门体对象上的门点的坐标与第二门体对象上的对应门点的坐标的位置重合。
[0086] 在计算出第一相机坐标系和第二相机坐标系之间的变换矩阵,利用变换矩阵对第一视角范围进行变换,得到第一视角范围在第二相机坐标系下的目标视角范围。具体而言,利用变换矩阵将射线O1D1在第一相机坐标系下的位置和射线O1D2在第一相机坐标系下的位置分别变换至射线O1D1在第二相机坐标系下的位置和射线O1D1在第二相机坐标系下的位置,射线O1D1在第二相机坐标系下的位置和射线O1D2在第二相机坐标系下的位置所界定出的区域范围即为第一视角范围在第二相机坐标系下的目标视角范围。
[0087] 根据球面几何反投影原理,将射线O1D1在第二相机坐标系下的位置和射线O1D2在第二相机坐标系下的位置投影至第二全景图上,分别在第二全景图上形成与射线O1D1对应的曲线1和与射线O1D2对应的曲线2。对曲线1和曲线2界定的区域范围进行截图,得到目标视角范围内的目标图像。进一步可选的,在对曲线1和曲线2界定的区域范围进行截图时,确定包围曲线1和曲线2界定的区域范围的最小矩形框,将最小矩形框包围的图像作为目标视角范围内的目标图像。
[0088] 对第一全景图中第一门体对象进行图像特征提取,得到第一门体对象的特征信息,并对目标图像进行图像特征提取,得到目标图像的特征信息;计算第一门体对象的特征信息和目标图像的特征信息之间的相似度,若第一门体对象的特征信息和目标图像的特征信息之间的相似度大于第二相似度阈值,则说明第一门体对象和第二门体对象同一门体对象,且第一全景图和第二全景图属于包含同一门体对象且拍摄点位于同一门体对象两侧的异侧全景图;若第一门体对象的特征信息和目标图像的特征信息之间的相似度小于或等于第二相似度阈值,则说明第一门体对象和第二门体对象不是同一门体对象,则继续遍历第一全景图中的第一门体对象与第二全景图中的其他第二门体对象是否为同一门体对象,直至遍历完毕。值得说明的是,在第一全景图中包括多个门体对象和第二全景图中包括多个门体对象的情况下,需要依次遍历第一全景图中的门体对象是否与第二全景图中的门体对象是否相似,直至遍历到第一全景图中存在与第二全景图中的门体对象相似的门体对象,或者全部遍历完毕。
[0089] 进一步可选的,若第一全景图中包括多个门体对象,在计算第一全景图中包含的门体对象的特征信息与目标图像的特征信息之间的相似度时,依次计算第一全景图中每个门体对象的特征信息与目标图像的特征信息之间的相似度。相应地,只有存在一个门体对象的特征信息与目标图像的特征信息之间的相似度大于第二相似度阈值,便可以确定第一全景图和第二全景图属于包含同一门体对象且拍摄点位于同一门体对象两侧的异侧全景图。
[0090] 进一步可选的,在计算第一全景图中每个门体对象的特征信息与目标图像的特征信息之间的相似度时,可以利用门体对象匹配模型进行计算。具体而言,门体对象匹配模型包括特征提取层、通道注意力层和相似度计算层,将第一全景图中每个门体对象的图像和目标图像输入至门体对象匹配模型中,利用特征提取层分别对该门体对象的图像和目标图像进行特征提取,以得到该门体对象的特征信息和目标图像的特征信息;利用通道注意力层分别对门体对象的特征信息和目标图像的特征信息进行注意力机制处理,得到处理后的门体对象的特征信息和处理后的目标图像的特征信息;以及利用相似度计算层计算处理后的门体对象的特征信息和处理后的目标图像的特征信息之间特征距离,以及将特征距离作为第一门体对象和目标图像之间的特征信息的相似度。
[0091] 本申请实施例提供的户型图生成方法,一方面基于根据位于相邻的两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的第一相对位置关系。另一方面还可以判断两张目标全景图是否包括同一门体对象,在两张目标全景图中包含同一门体对象的情况下,根据同一门体对象在两张目标全景图中的位置信息,生成两张目标全景图对应的两个空间对象之间的第二相对位置关系,最后利用根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系。由此,可以获取到更加准确的两个空间对象之间的目标相对位置关系,进而构建出更加准确的平面户型图。
[0092] 图5为本申请实施例提供的另一种户型图生成方法的流程示意图。该方法可由户型图生成装置执行,该装置可以由软件和/或硬件的方式实现,并一般可以集成在电子终端或服务器中。
[0093] 参见图5,该方法可以包括以下步骤:
[0094] 501、获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的。
[0095] 关于步骤501的实施方式可以参见前述步骤101的实施方式,在此不再赘述。
[0096] 502、获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图。
[0097] 关于步骤502的实施方式可以参见前述步骤102的实施方式,在此不再赘述。
[0098] 503、对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息。
[0099] 关于步骤503的实施方式可以参见前述步骤103的实施方式,在此不再赘述。
[0100] 504、按照预设帧间隔对全景视频进行帧抽取,得到抽取出的多张待处理全景图。
[0101] 505、对于多张待处理全景图中任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图,将第一全景图和第二全景图进行匹配。
[0102] 506、若匹配成功,确定第二全景图所属的空间对象与第一全景图所属的空间对象相同,其中,第一全景图所属的空间对象为已知。
[0103] 507、若匹配失败,根据第二全景图的帧索引,从多张目标全景图中确定与第二全景图对应的目标全景图,并将与第二全景图对应的目标全景图所属的空间对象作为第二全景图所属的空间对象;
[0104] 508、基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息。
[0105] 509、根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0106] 在本实施例中,预设帧间隔根据实际情况设置,例如为5帧。在对全景视频进行帧抽取时,可以将帧索引最小的目标全景图作为起始帧,并从起始帧开始依次间隔数帧(例如5帧)从全景视频中抽取多张全景图,抽取出的全景图称作为待处理全景图。
[0107] 针对任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图;将第一全景图和第二全景图进行匹配,根据匹配结果确定第二全景图所属的空间对象。其中,将第一全景图和第二全景图进行匹配时,可以分别提取第一全景图和和第二全景图的图像特征,并利用图像特征匹配算法计算第一全景图和第二全景图的图像特征之间的相似度,若第一全景图和第二全景图的图像特征之间的相似度大于预设的相似度阈值,则第一全景图和第二全景图匹配成功;若第一全景图和第二全景图的图像特征之间的相似度不大于预设的相似度阈值,则第一全景图和第二全景图匹配失败。
[0108] 在根据匹配结果确定第二全景图所属的空间对象时,若第一全景图和第二全景图匹配成功,确定第二全景图所属的空间对象与第一全景图所属的空间对象相同,其中,第一全景图所属的空间对象为已知。若匹配失败,根据第二全景图的帧索引,从多张目标全景图中确定与第二全景图对应的目标全景图,并将与第二全景图对应的目标全景图所属的空间对象作为第二全景图所属的空间对象。
[0109] 举例来说,在各个空间对象指定的拍摄点上拍摄的目标全景图时,建立了所拍摄的目标全景图与所属空间对象的对应关系,也即目标全景图属于哪个空间对象是已知信息。
[0110] 假设多张待处理全景图分别为全景图1、全景图2、全景图3、全景图4、全景图5、全景图6等等。全景图1是帧索引最小的目标全景图,且帧索引最小的目标全景图属于哪个空间对象是已知的,例如,全景图1的空间对象是玄关。首先,将全景图1、全景图2进行匹配,且匹配成功,则全景图2的空间对象是玄关。接着,将全景图2、全景图3进行匹配,且匹配失败,全景图3的空间对象不是玄关,根据全景图3在全景视频中帧索引,确定全景图3的帧索引与餐厅的全景图的帧索引相同或者相邻,则确定全景图3的空间对象是餐厅。依次类推,将全景图3、全景图4进行匹配,若匹配成功,全景图4的空间对象是餐厅,若匹配失败,全景图4的空间对象是帧索引相同或相邻的目标全景图所属的空间对象。
[0111] 由于多个待处理全景图是按照帧索引从小到大的顺序连续抽取出来的,若是任意相邻两张待处理全景图所属的空间对象不同,则对应的两个空间对象在空间位置关系上是相邻的,基于此,可以基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息。
[0112] 在本实施例中,在确定多个空间对象之间的相邻信息后,根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0113] 进一步可选的,为了获得更加准确的平面户型图,根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图时,可以针对相邻的每两个空间对象,以连通该两个空间对象的门体对象为参考,对该两个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0114] 具体而言,针对相邻的两个空间对象中任一空间对象,首先,对该空间对象的目标全景图进行门体对象检测,门体对象检测包括空间对象中是否包括门体对象,以及在包括门体对象的情况下门体对象的位置信息。接着,判断两个空间对象包含的门体对象是否为同一个门体对象,若是,则针对每个空间对象,根据门体对象的位置信息和特定交界线的位置信息,确定门体对象落在特定边界线上的线段。最后,以使同一门体对象落在特定边界线上的线段重合为目标,将相邻的空间对象中包含的特定交界线的位置信息进行拼接。以图2为例,主卧和餐厅之间有门,在拼接主卧墙角线和餐厅墙角线时,需要将门所在的线段重合在一起。
[0115] 本申请实施例提供的户型图生成方法,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;从全景视频中抽取多张待处理全景图,并对任意相邻两张待处理全景图进行匹配,在已知相邻两张待处理全景图中帧索引较小的待处理全景图所属空间对象的情况下,根据匹配结果确定相邻两张待处理全景图中帧索引较大的待处理全景图所属空间对象;基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息;根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成更加符合真实房屋结构的平面户型图。
[0116] 进一步,在上述实施例中,对全景视频进行帧抽取的实施方式不做限定,可以是预先全部抽取多张全景图像,然后统一对多张全景图像进行上述匹配以及其它操作。也可以是动态抽取全景图像,并边抽取边执行匹配以及其它操作。下面以后者为例,对其详细实施过程进行说明。
[0117] 图6为本申请实施例提供的另一种户型图生成方法的流程示意图。该方法可由户型图生成装置执行,该装置可以由软件和/或硬件的方式实现,并一般可以集成在电子终端或服务器中。
[0118] 参见图6,该方法可以包括以下步骤:
[0119] 601、获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的。
[0120] 关于步骤601的实施方式可以参见前述步骤101的实施方式,在此不再赘述。
[0121] 602、获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图。
[0122] 关于步骤602的实施方式可以参见前述步骤102的实施方式,在此不再赘述。
[0123] 603、对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息。
[0124] 关于步骤603的实施方式可以参见前述步骤103的实施方式,在此不再赘述。
[0125] 604、根据多张目标全景图分别在全景视频中的帧索引,从多张目标全景图选择帧索引最小的目标全景图,并将帧索引最小的目标全景图作为第一全景图。
[0126] 605、从全景视频中抽取与第一全景图间隔预设帧数的全景图作为第二全景图。
[0127] 其中,预设帧数根据实际情形设置,例如为5帧。
[0128] 606、将第一全景图与第二全景图进行匹配,若匹配失败,则执行步骤607,若匹配成功,则执行步骤611。
[0129] 607、根据第二全景图在全景视频中的帧索引,从多张目标全景图选择第二全景图对应的目标全景图,并确定第一全景图对应的目标全景图所属空间对象与第二全景图对应的目标全景图所属空间对象在空间位置关系上相邻。
[0130] 608、判断第二全景图是否为全景视频的最后一帧图像,若是,执行步骤609;若否,执行步骤610。
[0131] 609、根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0132] 关于步骤609的实施方式可以参见前述步骤509的实施方式,在此不再赘述。
[0133] 610、将与第二全景图对应的目标全景图作为新的第一全景图,并返回执行步骤605。
[0134] 611、判断第二全景图是否为全景视频的最后一帧图像,若是,执行步骤609;若否,执行步骤612。
[0135] 612、将第二全景图作为新的第一全景图,并返回执行步骤605。
[0136] 本申请实施例提供的户型图生成方法,从目标房屋对象对应的全景视频中获取在多个拍摄点上拍摄到的多张目标全景图,以及对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;根据多张目标全景图分别在全景视频中的帧索引,从多张目标全景图选择帧索引最小的目标全景图,并将帧索引最小的目标全景图作为第一全景图;从全景视频中抽取与第一全景图间隔预设帧数的全景图作为第二全景图;将第一全景图与第二全景图进行匹配;若第一全景图与第二全景图匹配失败,则根据第二全景图在全景视频中的帧索引,从多张目标全景图选择第二全景图对应的目标全景图,并确定第一全景图对应的目标全景图所属空间对象与第二全景图对应的目标全景图所属空间对象在空间位置关系上相邻;若第一全景图与第二全景图匹配成功,且第二全景图不是全景视频的最后一帧图像,将第二全景图作为新的第一全景图,并返回执行从全景视频中抽取与第一全景图间隔预设帧数的全景图作为第二全景图的步骤以及后续步骤直至第二全景图是全景视频的最后一帧图像,或者,若第一全景图与第二全景图匹配失败,且第二全景图不是全景视频的最后一帧图像,则将与第二全景图对应的目标全景图作为新的第一全景图,并返回执行从全景视频中抽取与第一全景图间隔预设帧数的全景图作为第二全景图的步骤以及后续步骤,直至第二全景图是全景视频的最后一帧图像;在第二全景图是全景视频的最后一帧图像的情况下,根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。由此,自动、快速、准确地生成更加符合真实房屋结构的平面户型图。
[0137] 需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤101至步骤106的执行主体可以为设备A;又比如,步骤101至105的执行主体可以为设备A,步骤106的执行主体可以为设备B;等等。
[0138] 另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0139] 图7为本申请实施例提供的一种户型图生成装置的结构示意图。如图7所示,该装置包括:获取模块71、检测模块72、跟踪模块73、生成模块74以及拼接模块75。
[0140] 其中,获取模块71,用于获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的;
[0141] 获取模块71,还用于获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图;
[0142] 检测模块72,用于对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;
[0143] 跟踪模块73,用于对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化;
[0144] 生成模块74,用于对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;
[0145] 拼接模块75,用于根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0146] 进一步可选的,获取模块71获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图时,具体用于:从全景视频中获取带有标记信息的多张全景图作为多张目标全景图,标记信息是在拍摄点上拍摄到对应全景图时为该全景图添加的;或者,获取全景相机所在电子终端发送的多张目标全景图,目标全景图是电子终端利用全景相机在拍摄点上拍摄到对应全景图时对该全景图进行保存得到的。
[0147] 进一步可选的,生成模块74对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的相对位置关系时,具体用于:根据每张目标全景图在全景视频中的帧索引,确定任意相邻的目标全景图,以及位于任意相邻的两张目标全景图之间的多个其它全景图;针对任意相邻的两张目标全景图,根据两张目标全景图与其相邻的其它全景图之间以及多个其它全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的相对位置关系。
[0148] 进一步可选的,生成模块74对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系时,具体用于:对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的第一相对位置关系;在两张目标全景图中包含同一门体对象的情况下,根据同一门体对象在两张目标全景图中的位置信息,生成两张目标全景图对应的两个空间对象之间的第二相对位置关系;根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系。
[0149] 进一步可选的,生成模块74还用于:在两张目标全景图中未包含同一门体对象或未包含门体对象的情况下,直接将第一相对位置关系作为两个空间对象之间的目标相对位置关系。
[0150] 进一步可选的,检测模块72还用于:对于任意相邻的两张目标全景图,检测两张目标全景图中是否包含门体对象;在检测到两张目标全景图包含门体对象的情况下,根据两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在两张目标全景图中。
[0151] 进一步可选的,上述装置还包括处理模块,处理模块用于:按照预设帧间隔对全景视频进行帧抽取,得到抽取出的多张待处理全景图;对于多张待处理全景图中任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图,将第一全景图和第二全景图进行匹配;若匹配成功,确定第二全景图所属的空间对象与第一全景图所属的空间对象相同,其中,第一全景图所属的空间对象为已知;若匹配失败,根据第二全景图的帧索引,从多张目标全景图中确定与第二全景图对应的目标全景图,并将与第二全景图对应的目标全景图所属的空间对象作为第二全景图所属的空间对象;基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息;
[0152] 相应的,拼接模块75,还用于根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0153] 进一步可选的,拼接模块75根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图时,具体用于:针对相邻的每两个空间对象,以连通该两个空间对象的门体对象为参考,对该两个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0154] 图8为本申请实施例提供的一种电子设备的结构示意图。如图8所示,该电子设备包括:全景相机80、存储器81和处理器82。
[0155] 全景相机80,用于图像采集;
[0156] 存储器81,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算平台上的操作。这些数据的示例包括用于在计算平台上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
[0157] 存储器81可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0158] 处理器82,与存储器81耦合,用于执行存储器81中的计算机程序,以用于:获取目标房屋对象对应的全景视频,全景视频是利用全景相机依次对目标房屋对象包含的多个空间对象进行视频拍摄得到的;获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图,拍摄点是指设置在多个空间对象中的拍摄位置,全景视频还包括位于相邻目标全景图之间的其它全景图;对多张目标全景图分别进行特定交界线的检测,得到多个空间对象中包含的特定交界线的位置信息;对全景视频进行位姿跟踪,得到全景视频中相邻全景图之间的相对位姿关系,相对位姿关系表示全景相机在拍摄相邻全景图时的位姿变化;对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系;根据多个空间对象之间的目标相对位置关系,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0159] 进一步可选的,处理器82获取全景视频中包含的在多个拍摄点上拍摄到的多张目标全景图时,具体用于:从全景视频中获取带有标记信息的多张全景图作为多张目标全景图,标记信息是在拍摄点上拍摄到对应全景图时为该全景图添加的;或者获取全景相机所在电子终端发送的多张目标全景图,目标全景图是电子终端利用全景相机在拍摄点上拍摄到对应全景图时对该全景图进行保存得到的。
[0160] 进一步可选的,处理器82对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的相对位置关系时,具体用于:根据每张目标全景图在全景视频中的帧索引,确定任意相邻的目标全景图,以及位于任意相邻的两张目标全景图之间的多个其它全景图;针对任意相邻的两张目标全景图,根据两张目标全景图与其相邻的其它全景图之间以及多个其它全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的相对位置关系。
[0161] 进一步可选的,处理器82对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的目标相对位置关系时,具体用于:对于任意相邻的两张目标全景图,根据位于两张目标全景图之间的相邻全景图之间的相对位姿关系,生成两张目标全景图对应的两个空间对象之间的第一相对位置关系;在两张目标全景图中包含同一门体对象的情况下,根据同一门体对象在两张目标全景图中的位置信息,生成两张目标全景图对应的两个空间对象之间的第二相对位置关系;根据第一相对位置关系和第二相对位置关系,生成两个空间对象之间的目标相对位置关系。
[0162] 进一步可选的,处理器82还用于:在两张目标全景图中未包含同一门体对象或未包含门体对象的情况下,直接将第一相对位置关系作为两个空间对象之间的目标相对位置关系。
[0163] 进一步可选的,处理器82还用于:对于任意相邻的两张目标全景图,检测两张目标全景图中是否包含门体对象;在检测到两张目标全景图包含门体对象的情况下,根据两张目标全景图中包含的门体对象的特征信息,识别同一门体对象是否出现在两张目标全景图中。
[0164] 进一步可选的,处理器82还用于:按照预设帧间隔对全景视频进行帧抽取,得到抽取出的多张待处理全景图;对于多张待处理全景图中任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图,将第一全景图和第二全景图进行匹配;若匹配成功,确定第二全景图所属的空间对象与第一全景图所属的空间对象相同,其中,第一全景图所属的空间对象为已知;若匹配失败,根据第二全景图的帧索引,从多张目标全景图中确定与第二全景图对应的目标全景图,并将与第二全景图对应的目标全景图所属的空间对象作为第二全景图所属的空间对象;基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息;根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0165] 进一步可选的,处理器82根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图时,具体用于:针对相邻的每两个空间对象,以连通该两个空间对象的门体对象为参考,对该两个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0166] 进一步可选的,处理器82还用于:按照预设帧间隔对全景视频进行帧抽取,得到抽取出的多张待处理全景图;对于多张待处理全景图中任意相邻两张待处理全景图,将其中帧索引较小的待处理全景图作为第一全景图,将帧索引较大的待处理全景图作为第二全景图,将第一全景图和第二全景图进行匹配;若匹配成功,确定第二全景图所属的空间对象与第一全景图所属的空间对象相同,其中,第一全景图所属的空间对象为已知;若匹配失败,根据第二全景图的帧索引,从多张目标全景图中确定与第二全景图对应的目标全景图,并将与第二全景图对应的目标全景图所属的空间对象作为第二全景图所属的空间对象;基于多个待处理全景图所属的空间对象,确定多个空间对象之间的相邻信息;根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0167] 进一步可选的,处理器82根据多个空间对象之间的相邻信息,对多个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图时,具体用于:针对相邻的每两个空间对象,以连通该两个空间对象的门体对象为参考,对该两个空间对象中包含的特定交界线的位置信息进行拼接,得到目标房屋对象的平面户型图。
[0168] 进一步可选的,如图8所示,该电子设备还包括:通信组件83、显示器84、电源组件85、音频组件86等其它组件。图8中仅示意性给出部分组件,并不意味着电子设备只包括图8所示组件。
[0169] 相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的各步骤。
[0170] 上述通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0171] 上述显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
[0172] 上述电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
[0173] 上述音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
[0174] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0175] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0176] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0177] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0178] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0179] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0180] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0181] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0182] 以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。