家具布局确定方法、装置、电子设备及存储介质
文献发布时间:2023-06-19 11:22:42
技术领域
本公开涉及计算机技术领域,具体涉及一种家具布局确定方法、装置、电子设备及存储介质。
背景技术
全屋软装是在给定空户型和样板间内家具的基础上,根据户型的空间特征和家具的几何尺寸信息将各个家具摆放到空户型中。所有这些新摆放好的家具及房间本身一起构成了全屋软装的场景,并可以通过3D形式展现出来。当前见诸于市场上的软装主要是靠设计师使用设计工具手动设计,而设计一套软装场景动辄需要1~2天,这极大地制约了软装产出的效率。因此,如何自动化生成软装布局是相关领域如VR漫游或场景家具导购等需要解决的主要问题之一。
发明内容
本公开实施例提供一种家具布局确定方法、装置、电子设备及计算机可读存储介质。
第一方面,本公开实施例中提供了一种家具布局确定方法,包括:
确定待摆放的预置家具组合在目标房间内的多个候选位置;
在预置家具组合摆放在候选位置处时,确定预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集;其中,支撑区域为目标房间内靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
根据交集从多个候选位置中确定预置家具组合的目标摆放位置。
进一步地,确定待摆放的预置家具组合在目标房间内的多个候选位置,包括:
将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
进一步地,在预置家具组合为多个时,确定待摆放的预置家具组合在目标房间内的多个候选位置,包括:
确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
进一步地,确定多个预置家具组合在目标房间内的可选位置形成的多种组合,包括:
在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
进一步地,还包括:
在包括目标房间的平面户型图内,通过将目标房间的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
确定目标房间内的点的最近投影点;
将最近投影点位于目标房间内的墙上的点形成的区域确定为对应的墙的支撑区域。
进一步地,根据交集从多个候选位置中确定预置家具组合的目标摆放位置,包括:
根据交集的第一面积与预置家具组合所在区域的第二面积之比从候选位置中确定目标摆放位置。
进一步地,还包括:
获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
第二方面,本公开实施例中提供了一种家具布局确定方法,包括:
确定待摆放的预置家具组合在目标房间内的多个候选位置;
在预置家具组合被摆放在候选位置处时,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度;其中,适应度与预置家具组合摆放在候选位置时所在区域和支撑区域之间的交集正相关,且支撑区域为目标房间内部靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
根据适应度从多个候选位置中确定预置家具组合的目标摆放位置。
进一步地,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度,包括:
确定支撑区域和预置家具组合摆放在候选位置时所在区域之间的交集;
根据交集的第一面积与预置家具组合所在区域的第二面积之比确定适应度。
进一步地,根据适应度从多个候选位置中确定预置家具组合的目标摆放位置,包括:
将对应于最大的适应度的候选位置确定为目标摆放位置。
进一步地,确定待摆放的预置家具组合在目标房间内的多个候选位置,包括:
将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
进一步地,在预置家具组合为多个时,确定待摆放的预置家具组合在目标房间内的多个候选位置,包括:
确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
进一步地,确定多个预置家具组合在目标房间内的可选位置形成的多种组合,包括:
在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
进一步地,还包括:
在包括目标房间的平面户型图内,通过将目标房间的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
确定目标房间内的点的最近投影点;
将最近投影点位于目标房间内的墙上的点形成的区域确定为靠近墙摆放预置家具组合的支撑区域。
进一步地,还包括:
获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
第三方面,本公开实施例中提供了一种家具布局方法,包括:
确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;其中,目标摆放位置利用第一方面和/或第二方面的方法确定;
根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
输出家具布局展示图。
第四方面,本公开实施例中提供了一种家具布局方法,包括:
从客户端接收包括目标房间的平面户型图以及家具信息;其中,家具信息包括待摆放在目标房间内的家具以及家具的尺寸信息;
根据家具的预设固定搭配方式以及尺寸信息对家具进行分组搭配,并得到至少一个预置家具组合;
确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;
根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
向客户端返回家具布局展示图。
进一步地,确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置,包括:
利用第一方面和/或第二方面的方法确定目标摆放位置。
第五方面,本公开实施例中提供了一种家具布局确定装置,包括:
第一确定模块,被配置为确定待摆放的预置家具组合在目标房间内的多个候选位置;
第二确定模块,被配置在预置家具组合摆放在候选位置处时,确定预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集;其中,支撑区域为目标房间内靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
第三确定模块,被配置为根据交集从多个候选位置中确定预置家具组合的目标摆放位置。
进一步地,第一确定模块,包括:
位置确定子模块,被配置为将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
进一步地,在预置家具组合为多个时,第一确定模块,包括:
第一确定子模块,被配置为确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
第二确定子模块,被配置为从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
进一步地,第一确定子模块,包括:
第三确定子模块,被配置为在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
进一步地,还包括:
第一移动模块,被配置为在包括目标房间的平面户型图内,通过将目标房间的墙上的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
第四确定模块,被配置为确定目标房间内的点的最近投影点;
第五确定模块,被配置为将最近投影点位于目标房间内的墙上的点形成的区域确定为对应的墙的支撑区域。
进一步地,第三确定模块,包括:
第四确定子模块,被配置为根据交集的第一面积与预置家具组合所在区域的第二面积之比从候选位置中确定目标摆放位置。
进一步地,还包括:
第一获取模块,被配置为获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
第一分组模块,被配置为根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
第六方面,本公开实施例中提供了一种家具布局确定装置,包括:
第六确定模块,被配置为确定待摆放的预置家具组合在目标房间内的多个候选位置;
第七确定模块,被配置为在预置家具组合被摆放在候选位置处时,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度;其中,适应度与预置家具组合摆放在候选位置时所在区域和支撑区域之间的交集正相关,且支撑区域为目标房间内部靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
第八确定模块,被配置为根据适应度从多个候选位置中确定预置家具组合的目标摆放位置。
进一步地,第七确定模块,包括:
第五确定子模块,被配置为确定支撑区域和预置家具组合摆放在候选位置时所在区域之间的交集;
第六确定子模块,被配置为根据交集的第一面积与预置家具组合所在区域的第二面积之比确定适应度。
进一步地,第八确定模块,包括:
第七确定子模块,被配置为将对应于最大的适应度的候选位置确定为目标摆放位置。
进一步地,第六确定模块,包括:
第八确定子模块,被配置为将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
进一步地,在预置家具组合为多个时,第六确定模块,包括:
第九确定子模块,被配置为确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
第十确定子模块,被配置为从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
进一步地,第九确定子模块,包括:
第十一确定子模块,被配置为在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
进一步地,还包括:
第二移动模块,被配置为在包括目标房间的平面户型图内,通过将目标房间的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
第九确定模块,被配置为确定目标房间内的点的最近投影点;
第十确定模块,被配置为将最近投影点位于目标房间内的墙上的点形成的区域确定为靠近墙摆放预置家具组合的支撑区域。
进一步地,还包括:
第二获取模块,被配置为获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
第二分组模块,被配置为根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
第七方面,本公开实施例中提供了一种家具布局装置,包括:
第十一确定模块,被配置为确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;其中,目标摆放位置利用权利要求第五方面和/或第六方面的装置确定;
第三获取模块,被配置为根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
输出模块,被配置为输出家具布局展示图。
第八方面,本公开实施例中提供了一种家具布局装置,包括:
接收模块,被配置为从客户端接收包括目标房间的平面户型图以及家具信息;其中,家具信息包括待摆放在目标房间内的家具以及家具的尺寸信息;
第三分组模块,被配置为根据家具的预设固定搭配方式以及尺寸信息对家具进行分组搭配,并得到至少一个预置家具组合;
第十二确定模块,被配置为确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;
第四获取模块,被配置为根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
返回模块,被配置为向客户端返回家具布局展示图。
进一步地,第十二确定模块,包括:
第十二确定子模块,被配置为利用第五方面和/或第六方面的装置确定目标摆放位置。
功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,家具布局确定装置的结构中包括存储器和处理器,存储器用于存储一条或多条支持家具布局确定装置执行上述任一方法的计算机指令,处理器被配置为用于执行存储器中存储的计算机指令。家具布局确定装置还可以包括通信接口,用于家具布局确定装置与其他设备或通信网络通信。
第九方面,本公开实施例提供了一种电子设备,包括存储器和处理器;其中,存储器用于存储一条或多条计算机指令,其中,一条或多条计算机指令被处理器执行以实现上述任一方法。
第十方面,本公开实施例提供了一种计算机可读存储介质,用于存储上述任一装置所用的计算机指令,其包含用于执行上述任一方法所涉及的计算机指令。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开实施例在确定家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集,并根据交集从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内靠近墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以将目标房间内地面上的点在墙上的最近投影点构成的区域确定为墙的支撑区域,进而可以根据该支撑区域与预置家具组合被摆放在候选位置后所在区域的交集从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的最佳位置。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
结合附图,通过以下非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加明显。在附图中:
图1示出根据本公开一实施方式的家具布局确定方法的流程图;
图2示出根据本公开一实施例的样板房的空户型平面矢量图;
图3示出根据图1所示实施方式确定最近投影点的示意图;
图4示出根据图1所示实施方式的步骤S101的流程图;
图5示出根据本公开一实施例的确定墙的支撑区域的流程图;
图6(a)和6(b)分别示出了图2所示的矢量平面户型图中客餐厅的原始效果以及将门向房间内移动一段距离后的效果示意图;
图7示出了图6(b)所示的目标房间内各面墙、门的支撑区域的示意图;
图8示出根据图1所示实施方式确定预置家具组合部分的方法流程图;
图9示出根据本公开另一实施方式的家具布局确定方法的流程图;
图10示出根据图9所示实施方式的步骤S902的流程图;
图11示出根据图9所示实施方式的步骤S901的流程图;
图12示出根据图9所示实施方式确定墙的支撑区域的流程图;
图13示出根据图9所示实施方式确定预置家具组合部分的方法流程图;
图14示出根据本公开一实施方式的家具布局方法的流程图;
图15示出根据本公开另一实施方式的家具布局方法的流程图;
图16示出根据本公开实施方式的用户与家具布局系统的交互示意图;
图17示出根据本公开实施方式的家具布局系统的应用场景示意图;
图18示出根据本公开实施方式在图2所示的平面户型图中摆放了家具的立体效果展示图;
图19示出根据本公开一实施方式的家具布局确定装置的结构框图;
图20示出根据本公开另一实施方式的家具布局确定装置的结构框图;
图21示出根据本公开一实施方式的家具布局装置的结构框图;
图22示出根据本公开另一实施方式的家具布局装置的结构框图;
图23是适于用来实现根据本公开一实施方式的家具布局确定方法和/或家具布局方法的电子设备的结构示意图。
具体实施方式
下文中,将参考附图详细描述本公开的示例性实施方式,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施方式无关的部分。
在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。
另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
全屋软装过程包括在给定房间的空户型和样板间内家具的基础上,根据户型的空间特征和家具的几何尺寸信息将各个家具摆放到空户型中。相关技术中,用户可以通过客户端提供的功能以类似“一键点击”的方式使得待摆放在给定房间内的主要家具自动摆放到空户型图中的相应位置处,进而得到给定房间的软装方案。但是这种方式得到的软装方案中由于家具的摆放位置不合理,而导致家具中如沙发、电视、餐桌等出现挡门、挡窗、挡道等现象,使得通过相关技术得到的软装方案无法应用到实际软装过程中。
因此,本公开实施例提出了一种家具布局确定方法。该方法在进行家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集,并根据交集从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内部地面上靠近墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以通过目标房间内地面上的点在墙上的最近投影点确定预置家具组合靠近摆放的墙的支撑区域、以及根据该支撑区域与预置家具组合所在区域的交集从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的最佳位置。
图1示出根据本公开一实施方式的家具布局确定方法的流程图。如图1所示,家具布局确定方法包括以下步骤:
在步骤S101中,确定待摆放的预置家具组合在目标房间内的多个候选位置;
在步骤S102中,在预置家具组合摆放在候选位置处时,确定预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集;其中,支撑区域为目标房间内部靠近墙的区域,且支撑区域内的点的最近投影点均位于对应的墙上;
在步骤S103中,根据交集从多个候选位置中确定预置家具组合的目标摆放位置。
本实施例,家具布局确定方法可以在家具布局系统的服务器端执行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。待摆放的家具可以是系统根据样板房的户型特点等从已有家具列表中自动匹配得到的,也可以是由用户根据自身需求配置的,例如通过家具布局系统的客户端提供的接口选择家具类型、并输入家具尺寸等方式进行配置,具体可以根据实际情况也即进行房间软装的具体场景而定,在此不做限制。
本实施例在家具布局的确定过程中,用户通过客户端输入至家具布局系统服务器端的可以是样板房的矢量平面户型图,也即本实施例中在进行家具布局时,所需的样板房的平面户型图为计算机软件能够识别、具有几何特征的二维矢量图,计算机软件可以通过该矢量平面户型图识别样板房中的几何特征,例如形状、面积、长度等。该矢量平面户型图中可以包括该样板房内每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以依附墙而设置。
图2示出根据本公开一实施例的样板房的空户型平面矢量图。如图2所示,粗线条表示该样板房内各房间的多边形轮廓,细线条表示门的轮廓,虚线表示窗的轮廓。
样板房的空户型可以如下表示:
其中,H表示空户型,空户型H包括n个房间,R
预置家具组合可以包括固定摆放在一个房间内的同一区域的一个或者一组家具,例如沙发和茶几构成的一组家具组合。用户在配置待摆放在目标房间内的预置家具组合时,可以输入每个待摆放在房间内的家具信息,家具信息包括但不限于家具名称、类别、尺寸信息等。
家具布局系统的服务器端可以根据家具的功能将用户所输入的家具信息划分成多种预置家具组合,并且针对每种预置家具组合确定摆放该预置家具组合的区域的形状、尺寸等区域信息,例如区域为矩形,尺寸包括长和宽等。
例如,针对客餐厅内的家具,可以依照座谈、视听、就餐等不同功能分为沙发、电视和餐桌三种预置家具组合。沙发组合可以包括但不限于双人沙发、贵妃榻、茶几、角几、边几及摆放在这些家具上的家具摆饰等;电视组合可以包括但不限于电视、电视柜等;餐桌组合可以包括但不限于餐桌、餐椅等。针对卧室内的家具可以划分成床、电视、衣柜等三种预置家具组合。床组合可以包括但不限于双人床、床头柜及摆饰等;电视组合可以包括但不限于电视、电视柜及摆饰等;衣柜组合包括衣柜及衣柜内的家具等。可以理解的是,预置家具组合也可以仅包括一个家具,例如餐边柜、鞋柜、绿植、壁画等。
在确定预置家具组合在目标房间内的目标摆放位置时,针对包括目标房间的矢量平面户型图,可以先确定可以摆放预置家具组合的候选位置,之后从候选位置挑选出最适合的目标摆放位置。预置家具组合的候选位置可以是该预置家具组合上某个点的候选位置,也可以是该预置家具组合整个所占用的候选位置区域。预置家具组合的目标摆放位置为从候选位置中最终选定的最适合摆放该预置家具组合的位置,预置家具组合摆放在该目标摆放位置时,可以最大程度的靠近墙且不会遮挡除墙之外的如窗户、门之类的房间内设施。
在本公开一可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是待摆放的预置家具组合的中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
目标房间内的墙可以是矢量平面户型图中将目标房间轮廓中设置有门和窗的部分除去之后的部分。目标房间内的每个墙都有对应的支撑区域。本公开实施例针对墙、门、窗等对目标房间内的地面进行划分,使得墙、门、窗等均对应目标房间内部地面的一部分支撑区域。目标房间的墙的支撑区域为位于目标房间内且靠近墙的区域,该墙的支撑区域可以通过目标房间内的点在墙上的最近投影点来确定。目标房间内的一个墙的支撑区域包括最近投影点在该墙上的目标房间内的点形成的区域,也就是说一个墙的支撑区域中的所有点的最近投影点均在该墙上,而最近投影点在该墙上的所有点构成了该墙的支撑区域。
目标房间内的点在墙上的最近投影点可以通过矢量平面户型图中,将目标房间内的点向其周围的墙进行投影得到,投影距离最近的点为最近投影点。
如图3所示,假如点A为目标房间内的一点,直线ab、bc、cd和da分别表示目标房间内的四面墙,那么通过将点A向该四面墙进行垂直投影,可以得到点A到ad对应的墙上的投影距离最短,也即点A到ad对应的墙上的投影点A1为最近投影点。
目标房间内的各个墙的支撑区域可以根据上述方法预先确定。
在进行家具布局时,针对包括目标房间的矢量平面户型图,可以通过将预置家具组合的区域中心点设置在当前的候选位置上之后,确定该预置家具组合靠近摆放的墙的支撑区域与此时摆放该预置家具组合的区域之间的交集。本公开实施例中目标摆放位置的选择标准是在不遮挡门、窗等房间内设施的情况下使得预置家具组合最大限定的靠近墙摆放。由于墙的支撑区域是通过目标房间内部的点的最近投影点是否在该墙上来确定,因此上述支撑区域与预置家具组合所在区域之间的交集大小可以衡量该预置家具组合在候选位置处时不遮挡门、窗等房间内设施的情况下靠近墙的程度。该交集越大表示该候选位置越接近上述选择标准,也即预置家具组合被摆放在候选位置处时在不遮挡门、窗等房间内设施的情况下更靠近墙。
本实施例中,预置家具组合被摆放在候选位置处之后,该预置家具组合靠近摆放的墙可以是对应的支撑区域与该预置家具组合所在区域之间交集最大的墙,也即可以先通过确定目标房间内各个墙的支撑区域与预置家具组合所在区域之间的交集,将该交集最大的墙作为该预置家具组合靠近摆放的墙。
在根据多个候选位置确定对应的上述交集之后,可以根据该交集确定目标摆放位置,以便在最终确定的家具布局方案中该预置家具组合被摆放在该目标摆放位置处。最合理的目标摆放位置是使得预置家具组合尽量靠墙,且预置家具组合被摆放在该目标摆放位置后不会遮挡目标房间内的门、窗户等设施,并且不会干扰其他预置家具组合的摆放。为了达到这一目的,本公开实施例通过预置家具组合所在区域与其所要依靠的墙的支撑区域之间的交集,从多个候选位置中选出符合上述目标的目标摆放位置。
由于目标房间内墙的支撑区域通常是从该墙出发向外扩展形成的一块区域,支撑区域与预置家具组合所在区域之间的交集越大,可以说明该预置家具组合所在区域越靠近该支撑区域对应的墙,鉴于预置家具组合通常都是靠墙摆放,因此可以通过这种方式选择该交集最大的区域(也即将交集最大的情况下的候选位置确定为目标摆放位置)摆放该预置家具组合,这样可以使得该预置家具组合摆放在最靠近其中一个墙的位置,且该预置家具组合挡窗挡门的几率较小(因为交集最大的情况通常是预置家具组合贴近的部位全部是墙,而不存在门和窗等其他设施)。
本公开实施例在确定家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集,并根据交集从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内靠近墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以将目标房间内地面上的点在墙上的最近投影点构成的区域确定为墙的支撑区域,进而可以根据该支撑区域与预置家具组合被摆放在候选位置后所在区域的交集从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的最佳位置。
在本实施例的一个可选实现方式中,步骤S101,即确定待摆放的预置家具组合在目标房间内的多个候选位置的步骤,进一步包括以下步骤:
将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
该可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是预置家具组合的可选摆放区域的区域中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
在本实施例的一个可选实现方式中,如图4所示,在预置家具组合为多个时,步骤S101,即确定待摆放的预置家具组合在目标房间内的多个候选位置的步骤,进一步包括以下步骤:
在步骤S401中,确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
在步骤S402中,从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
该可选的实现方式中,目标房间内需布置多个预置家具组合时,例如客餐厅中需布置沙发组合、电视组合以及餐桌组合,可以先在目标房间内遍历所有的点,每一次遍历均为每个预置家具组合确定一个区域中心点的候选位置,这些候选位置构成一个组合,每个组合包括多个预置家具组合各自的候选位置,且每个组合中这些候选位置不同。通过这种方式,可以快速而准确地遍历得到目标房间内多个预置家具组合的区域中心点的所有可能的组合。
由于多个预置家具组合在实际摆放时,不能重叠摆放,因此可以从得到的多种组合中去除会使得其中至少两个预置家具组合重叠摆放的组合,也即将多个预置家具组合的区域中心点设置在每个组合中对应的候选位置处之后,如果其中两个预置家具组合所在的区域有重叠,则将这个组合从多种组合中去除。通过这种方式,最终剩下的组合可以确定为候选位置组合,且每个候选位置组合中均包括多个预置家具组合对应的候选位置,也即每个候选位置组合对应于多个预置家具组合的一种位置摆放方式。
在本实施例的一个可选实现方式中,步骤S401,即确定多个预置家具组合在目标房间内的可选位置形成的多种组合的步骤,进一步包括以下步骤:
在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
该可选的实现方式中,两个预置家具组合之间的相对位置关系可以是根据预置家具组合的功能预先设定的,例如电视组合与沙发组合之间具有相对位置关系,也即电视组合需要摆放在沙发组合对面。因此,在确定多个预置家具组合的区域中心点对应的候选位置组合时,还可以考虑目标房间内待摆放的多个预置家具组合之间是否存在相对位置关系。
每个预置家具组合的区域中心点在目标房间内的可选位置可以为目标房间内的任意点,但是每种摆放场景下,多个预置家具组合不能重叠。此外,其中至少两个预置家具组合之间具有相对位置关系时,可以在遍历目标房间内的所有点确定各个预置家具组合的区域中心点的可选位置形成的组合的过程中,先确定该至少两个预置家具组合的其中一个的区域中心点的候选位置,然后再根据该相对位置关系以及目标房间内的可选位置确定另一个的区域中心点的候选位置。通过这种方式,可以将相对位置关系不符合的组合排除出去,从而能够使得最终得到的组合更加合理。
在本实施例的一个可选实现方式中,如图5所示,方法进一步还包括以下步骤:
在步骤S501中,在包括目标房间的平面户型图内,通过将目标房间的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
在步骤S502中,确定目标房间内的点的最近投影点;
在步骤S503中,将最近投影点位于目标房间内的墙上的点形成的区域确定为对应的墙的支撑区域。
该可选的实现方式中,可以针对输入的空户型的矢量平面户型图中的每个房间的门和窗户进行预处理。在预处理过程中,可以将目标房间内四面墙上的门和窗户向该房间内移动一段距离,使得移动后的门和窗户相对该墙凸出。图6(a)和图6(b)分别示出了图2所示的矢量平面户型图中客餐厅的原始效果以及将门向房间内移动一段距离后的效果示意图。经过预处理之后的目标房间相对于原目标房间而言,门和窗的轮廓向目标房间内突出。
针对经过上述预处理后的目标房间,可以确定目标房间内各个点的最近投影点。可以理解的是目标房间内各个点的投影点有的在墙上,有的在门上,也有的可能在窗户上。在确定了目标房间内各个点的最近投影点之后,可以根据最近投影点确定目标房间内各个墙的支撑区域。对于目标房间内的各面墙而言,最近投影点在墙上的点形成的区域为该墙的支撑区域,图7示出了图6(b)所示的目标房间内各面墙、门的支撑区域,其中灰色区域为墙对应的支撑区域,白色区域为门对应的支撑区域。
从图7可以看出,经过预处理之后,由于门向房间内凸出,因此墙的支撑区域以墙所在的边为长边呈正梯形状,而门的支撑区域以门所在边为短边呈倒梯形状,因此可以看出,经过上述预处理之后,预置家具组合越靠近墙,其与墙的支撑区域的交集就越大;而预置家具组合越靠近门或窗,则其与墙的支撑区域的交集就会越小。因此,通过这种方式,可以进一步降低预置家具组合挡门或挡窗的几率。
在本实施例的一个可选实现方式中,步骤S103,即根据交集从多个候选位置中确定预置家具组合的目标摆放位置的步骤,进一步包括以下步骤:
根据交集的第一面积与预置家具组合所在区域的第二面积之比从候选位置中确定目标摆放位置。
该可选的实现方式中,在家具的布局过程中,预置家具组合越靠近墙、且越远离门和窗则越符合家具合理布局的要求。由于预置家具组合在目标房间内的候选位置较多,而且一个房间内各面墙的大小不一样,因此可以通过预置家具组合与候选位置所在支撑区域之间的交集的第一面积与该预置家具组合所占第二面积之比来确定目标摆放位置。
在一些实施例中,可以选择比值最大的候选位置作为该预置家具组合的目标摆放位置。在多个预置家具组合的情况下,可以先根据上述比值大小来确定不存在相对位置关系的一个或多个预置家具组合以及存在相对位置关系的多个预置家具组合之一的目标摆放位置,之后可以再针对相对位置关系确定其他预置家具组合的目标摆放位置。通过这种方式,可以使得最终得到的目标摆放位置处的预置家具组合最大限度的靠近墙,且不会遮挡门、窗等房间内的设施。
在本实施例的一个可选实现方式中,如图8所示,方法进一步还包括以下步骤:
在步骤S801中,获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
在步骤S802中,根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
该可选的实现方式中,用户可以输入待摆放在目标房间内的多个家具信息。该家具信息包括但不限于家具标识、细分类别、尺寸信息等。预设固定搭配方式可以包括但不限于需固定搭配在一起进行摆放的多个家具、该多个家具之间的相对位置、该多个家具之间的间距等。例如沙发与茶几需搭配摆放在同一区域等。预设固定搭配方式可以由用户指定,也可以是在家具布局系统中预先设置的,具体可以根据实际情况而定,在此不做限制。在一些实施例中,预设固定搭配方式还可以考虑loT(internet of things)设备的布局,loT设备的布局可以从不同loT的功能考虑,进而预先设置选取摆放loT设备的最佳位置的原则,例如wifi路由器适于摆放在房间内较为中间的位置,以便wifi路由器的无线路由范围能够覆盖房间的各个角落;智能音箱适于摆放在靠近用户休闲时所在的位置,比如由于电视柜与沙发通常会组成预置固定家具组合而摆放在一起,因此智能音箱可以摆放在客厅的电视柜上,使得用户能够较为方便的与智能音箱进行交互。
在获得了家具信息以及预设固定搭配方式之后,家具布局系统的服务器端可以对待摆放在目标房间内的家具进行分组搭配,例如,可以将客餐厅中沙发、茶几等分成一组,将电视和电视柜等分成一组,而将餐桌以及餐椅分成一组。此外,还可以根据预设固定搭配方式中指定的家具之间的相对位置以及间距等最终搭配得到预置家具组合。通过这种方式,可以按照预设的固定搭配方式得到预置家具组合,进而能够通过预置家具组合为单位确定目标摆放位置,能够提高家具布局的效率以及提升家具布局的合理性。
图9示出根据本公开另一实施方式的家具布局确定方法的流程图。如图9所示,该家具布局确定方法包括以下步骤:
在步骤S901中,确定待摆放的预置家具组合在目标房间内的多个候选位置;
在步骤S902中,在该预置家具组合被摆放在该候选位置处时,根据该预置家具组合靠近摆放的墙的支撑区域确定该预置家具组合与该候选位置之间的适应度;其中,该适应度与该预置家具组合摆放在该候选位置时所在区域和该支撑区域之间的交集正相关,且该支撑区域为该目标房间内部靠近该墙的区域,且该支撑区域内的点的最近投影点均位于该墙上;
在步骤S903中,根据该适应度从多个该候选位置中确定该预置家具组合的目标摆放位置。
本实施例,家具布局确定方法可以在家具布局系统的服务器端执行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。待摆放的家具可以是系统根据样板房的户型特点等从已有家具列表中自动匹配得到的,也可以是由用户根据自身需求配置的,例如通过家具布局系统的客户端提供的接口选择家具类型、并输入家具尺寸等方式进行配置,具体可以根据实际情况也即进行房间软装的具体场景而定,在此不做限制。
本实施例在家具布局的确定过程中,用户通过客户端输入至家具布局系统服务器端的可以是样板房的矢量平面户型图,也即本实施例中在进行家具布局时,所需的样板房的矢量平面户型图为计算机软件能够识别、具有几何特征的二维矢量图,计算机软件可以通过该矢量平面户型图识别该样板房中的几何特征,例如形状、面积、长度等。该矢量平面户型图中可以包括该样板房内每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以依附墙而设置。
预置家具组合可以包括固定摆放在一个房间内的同一区域的一个或者一组家具,例如沙发和茶几构成的一组家具组合。用户在配置待摆放在目标房间内的预置家具组合时,可以输入每个待摆放在房间内的家具信息,家具信息包括但不限于家具名称、类别、尺寸信息等。
家具布局系统的服务器端可以根据家具的功能将用户所输入的家具信息划分成多种预置家具组合,并且针对每种预置家具组合确定摆放该预置家具组合的区域的形状、尺寸等区域信息,例如区域为矩形,尺寸包括长和宽等。
例如,针对客餐厅内的家具,可以依照座谈、视听、就餐等不同功能分为沙发、电视和餐桌三种预置家具组合。沙发组合可以包括但不限于双人沙发、贵妃榻、茶几、角几、边几及摆放在这些家具上的家具摆饰等;电视组合可以包括但不限于电视、电视柜等;餐桌组合可以包括但不限于餐桌、餐椅等。针对卧室内的家具可以划分成床、电视、衣柜等三种预置家具组合。床组合可以包括但不限于双人床、床头柜及摆饰等;电视组合可以包括但不限于电视、电视柜及摆饰等;衣柜组合包括衣柜及衣柜内的家具等。可以理解的是,预置家具组合也可以仅包括一个家具,例如餐边柜、鞋柜、绿植、壁画等。
在确定预置家具组合在目标房间内的目标摆放位置时,针对包括目标房间的矢量平面户型图,可以先确定可以摆放预置家具组合的候选位置,之后从候选位置挑选出最适合的目标摆放位置。预置家具组合的候选位置可以是该预置家具组合上某个点的候选位置,也可以是该预置家具组合整个所占用的候选位置区域。预置家具组合的目标摆放位置为从候选位置中最终选定的最适合摆放该预置家具组合的位置,预置家具组合摆放在该目标摆放位置时,可以最大程度的靠近墙且不会遮挡除墙之外的如窗户、门之类的房间内设施。
在本公开一可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是待摆放的预置家具组合的中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
目标房间内的墙可以是矢量平面户型图中将房间轮廓中设置有门和窗的部分除去之后的部分。目标房间内的每个墙都有对应的支撑区域。本公开实施例针对墙、门、窗等对目标房间内的地面进行划分,使得墙、门、窗等均对应目标房间内部地面的一部分支撑区域。目标房间的墙的支撑区域为位于目标房间内且靠近墙的区域,该墙的支撑区域可以通过目标房间内的点在墙上的最近投影点来确定。目标房间内的一个墙的支撑区域包括最近投影点在该墙上的目标房间内的点形成的区域,也就是说一个墙的支撑区域中的所有点的最近投影点均在该墙上,而最近投影点在该墙上的所有点构成了该墙的支撑区域。
目标房间内的点在墙上的最近投影点可以通过矢量平面户型图中,将目标房间内的点向其周围的墙进行投影得到,投影距离最近的点为最近投影点。
目标房间内的各个墙的支撑区域可以根据上述方法预先确定。
在进行家具布局时,针对包括目标房间的矢量平面户型图,可以通过将预置家具组合的区域中心点设置在当前的候选位置上的方式预置家具组合摆放在候选位置处。在将预设家具组合摆放在候选位置处之后,可以通过目标房间内墙的支撑区域确定该预置家具组合与该候选位置之间的适应度。该适应度可以理解为用于表征预置家具组合摆放在该候选位置处时的合适程度。本公开实施例中目标摆放位置的选择标准是在不遮挡门、窗等房间内设施的情况下使得预置家具组合最大限定的靠近墙摆放。因此,由于墙的支撑区域是通过目标房间内部的点的最近投影点是否在该墙上来确定,因此该适应度也可以理解为表征预置家具组合在候选位置处时遮挡门、窗等房间内设施以及靠近墙的程度的综合指标。该适应度越大表示该候选位置越接近上述选择标准,也即预置家具组合被摆放在候选位置处时在不遮挡门、窗等房间内设施的情况下更靠近墙。
本实施例中,预置家具组合被摆放在候选位置处之后,该预置家具组合靠近摆放的墙可以是对应的支撑区域与该预置家具组合所在区域之间交集最大的墙,也即可以先通过确定目标房间内各个墙的支撑区域与预置家具组合所在区域之间的交集,将该交集最大的墙作为该预置家具组合靠近摆放的墙。
在根据多个候选位置确定预置家具组合对应的上述适应度之后,可以根据该适应度确定目标摆放位置,以便在最终确定的家具布局方案中该预置家具组合被摆放在该目标摆放位置处。最合理的目标摆放位置是使得预置家具组合尽量靠墙,且预置家具组合被摆放在该目标摆放位置后不会遮挡目标房间内的门、窗户等设施,并且不会干扰其他预置家具组合的摆放。为了达到这一目的,本公开实施例通过预置家具组合所在区域与候选位置之间的适应度,从多个候选位置中选出符合上述目标的目标摆放位置。
本公开实施例在确定家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度,并根据该适应度从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内靠近该墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以通过目标房间内地面上的点在墙上的最近投影点确定的墙的支撑区域确定预置家具组合与候选位置之间适应度,从而根据该适应度从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的目标摆放位置。
在本实施例的一个可选实现方式中,如图10所示,该步骤S902,即根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度的步骤,进一步包括以下步骤:
在步骤S1001中,确定支撑区域和预置家具组合摆放在候选位置时所在区域之间的交集;
在步骤S1002中,根据交集的第一面积与预置家具组合所在区域的第二面积之比确定适应度。
该可选的实现方式中,预置家具组合被摆放在候选位置后与候选位置之间的适应度与预置家具组合所在区域与预置家具组合所靠近摆放的墙的支撑区域之间的交集正相关。而由于墙的支撑区域是通过目标房间内点的最近投影点是否在该墙上确定的,该墙的支撑区域的面积大小与墙的面积大小相关,因此适应度可以通过该交集的第一面积与预置家具组合所在区域的第二面积之比来确定。该比值越大则可以认为适应度越大,进而该适应度对应的候选位置越有可能成为目标摆放位置。
在一些实施例中,可以选择该比值最大的候选位置作为该预置家具组合的目标摆放位置。在多个预置家具组合的情况下,可以先根据上述比值大小来确定不存在相对位置关系的一个或多个预置家具组合以及存在相对位置关系的多个预置家具组合之一的目标摆放位置,之后可以再针对相对位置关系确定其他预置家具组合的目标摆放位置。通过这种方式,可以使得最终得到的目标摆放位置处的预置家具组合最大限度的靠近墙,且不会遮挡门、窗等房间内的设施。
在本实施例的一个可选实现方式中,该步骤根据适应度从多个候选位置中确定预置家具组合的目标摆放位置的步骤,进一步包括以下步骤:
将对应于最大的适应度的候选位置确定为目标摆放位置。
该可选的实现方式中,由于墙的支撑区域是通过目标房间内部的点的最近投影点是否在该墙上来确定的,而预置家具组合与候选位置之间的适应度是通过该该预置家具组合靠近摆放的墙的支撑区域确定的,因此该适应度可以理解为表征预置家具组合在候选位置处时遮挡门、窗等房间内设施以及靠近墙的程度的综合指标。该适应度越大表示该候选位置越接近上述选择标准,也即预置家具组合被摆放在候选位置处时在不遮挡门、窗等房间内设施的情况下更靠近墙。因此,通过将最大适应度对应的候选位置确定为目标摆放位置,并将预置家具组合被摆放在该目标摆放位置后,在不会遮挡门、窗等设施的情况能够使得该预置家具组合最大程度的靠近墙,这种方式能够使得预置家具组合的摆放方式达到最大合理化。
在本实施例的一个可选实现方式中,该步骤S901,即确定待摆放的预置家具组合在目标房间内的多个候选位置的步骤,进一步包括以下步骤:
将该预置家具组合的可选摆放区域的区域中心点确定为该候选位置。
该可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是预置家具组合的可选摆放区域的区域中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
在本实施例的一个可选实现方式中,如图11所示,在该预置家具组合为多个时,该步骤S901,即确定待摆放的预置家具组合在目标房间内的多个候选位置的步骤,进一步包括以下步骤:
在步骤S1101中,确定多个该预置家具组合在目标房间内的可选位置形成的多种组合;
在步骤S1102中,从该多种组合中去除使得至少两个该预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,该候选位置组合中包括多个该预置家具组合各自的候选位置。
该可选的实现方式中,目标房间内需布置多个预置家具组合时,例如客餐厅中需布置沙发组合、电视组合以及餐桌组合,可以先在目标房间内遍历所有的点,每一次遍历均为每个预置家具组合确定一个区域中心点的候选位置,这些候选位置构成一个组合,每个组合包括多个预置家具组合各自的候选位置,且每个组合中这些候选位置不同。通过这种方式,可以快速而准确地遍历得到目标房间内多个预置家具组合的区域中心点的所有可能的组合。
由于多个预置家具组合在实际摆放时,不能重叠摆放,因此可以从得到的多种组合中去除会使得其中至少两个预置家具组合重叠摆放的组合,也即将多个预置家具组合的区域中心点设置在每个组合中对应的候选位置处之后,如果其中两个预置家具组合所在的区域有重叠,则将这个组合从多种组合中去除。通过这种方式,最终剩下的组合可以确定为候选位置组合,且每个候选位置组合中均包括多个预置家具组合对应的候选位置,也即每个候选位置组合对应于多个预置家具组合的一种位置摆放方式。
在本实施例的一个可选实现方式中,该步骤S1101,即确定多个该预置家具组合在目标房间内的可选位置形成的多种组合的步骤,进一步包括以下步骤:
在多个该预置家具组合中至少两个之间具有相对位置关系时,根据该相对位置关系以及多个该预置家具组合在该目标房间内的可选位置确定该多种组合。
该可选的实现方式中,两个预置家具组合之间的相对位置关系可以是根据预置家具组合的功能预先设定的,例如电视组合与沙发组合之间具有相对位置关系,也即电视组合需要摆放在沙发组合对面。因此,在确定多个预置家具组合的区域中心点对应的候选位置组合时,还可以考虑目标房间内待摆放的多个预置家具组合之间是否存在相对位置关系。
每个预置家具组合的区域中心点在目标房间内的可选位置可以为目标房间内的任意点,但是每种摆放场景下,多个预置家具组合不能重叠。此外,其中至少两个预置家具组合之间具有相对位置关系时,可以在遍历目标房间内的所有点确定各个预置家具组合的区域中心点的可选位置形成的组合的过程中,先确定该至少两个预置家具组合的其中一个的区域中心点的候选位置,然后再根据该相对位置关系以及目标房间内的可选位置确定另一个的区域中心点的候选位置。通过这种方式,可以将相对位置关系不符合的组合排除出去,从而能够使得最终得到的组合更加合理。
在本实施例的一个可选实现方式中,如图12所示,该方法进一步还包括以下步骤:
在步骤S1201中,在包括该目标房间的平面户型图内,通过将该目标房间的门和/或窗从原始位置向房间内移动,使得移动后的该门和/或窗相对墙向该目标房间内延伸出预设距离;
在步骤S1202中,确定该目标房间内的点的最近投影点;
在步骤S1203中,将最近投影点位于该目标房间内的墙上的点形成的区域确定为对应的墙的支撑区域。
该可选的实现方式中,可以针对输入的矢量平面户型图中的每个房间的门和窗户进行预处理。在预处理过程中,可以将目标房间内四面墙上的门和窗户向该房间内移动一段距离,使得移动后的门和窗户相对该墙凸出。图6(a)和图6(b)分别示出了图2所示的矢量平面户型图中客餐厅的原始效果以及将门向房间内移动一段距离后的效果示意图。经过预处理之后的目标房间相对于原目标房间而言,门和窗位置处的轮廓向目标房间内突出。
针对经过上述预处理后的目标房间,可以确定目标房间内各个点的最近投影点。可以理解的是目标房间内各个点的投影点有的在墙上,有的在门上,也有的可能在窗户上。在确定了目标房间内各个点的最近投影点之后,可以根据最近投影点确定目标房间内各个墙的支撑区域。对于目标房间内的各面墙而言,最近投影点在墙上的点形成的区域为该墙的支撑区域,图7示出了图6(b)所示的目标房间内各面墙、门的支撑区域,其中灰色区域为墙对应的支撑区域,白色区域为门对应的支撑区域。
从图7可以看出,经过预处理之后,由于门向房间内凸出,因此墙的支撑区域以墙所在的边为长边呈正梯形状,而门的支撑区域以门所在边为短边呈倒梯形状,因此可以看出,经过上述预处理之后,预置家具组合越靠近墙,其与墙的支撑区域的交集就越大;而预置家具组合越靠近门或窗,则其与墙的支撑区域的交集就会越小。因此,通过这种方式,可以进一步降低预置家具组合挡门或挡窗的几率。
在本实施例的一个可选实现方式中,如图13所示,该方法进一步还包括以下步骤:
在步骤S1301中,获取待摆放在该目标房间内的家具信息以及预设固定搭配方式;
在步骤S1302中,根据预设固定搭配方式以及该家具信息对家具进行分组搭配,得到该预置家具组合。
该可选的实现方式中,用户可以输入待摆放在目标房间内的多个家具信息。该家具信息包括但不限于家具标识、细分类别、尺寸信息等。预设固定搭配方式可以包括但不限于需固定搭配在一起进行摆放的多个家具、该多个家具之间的相对位置、该多个家具之间的间距等。例如沙发与茶几需搭配摆放在同一区域等。预设固定搭配方式可以由用户指定,也可以是在家具布局系统中预先设置的,具体可以根据实际情况而定,在此不做限制。
在获得了家具信息以及预设固定搭配方式之后,家具布局系统的服务器端可以对待摆放在目标房间内的家具进行分组搭配,例如,可以将客餐厅中沙发、茶几等分成一组,将电视和电视柜等分成一组,而将餐桌以及餐椅分成一组。此外,还可以根据预设固定搭配方式中指定的家具之间的相对位置以及间距等最终搭配得到预置家具组合。通过这种方式,可以按照预设的固定搭配方式得到预置家具组合,进而能够通过预置家具组合为单位确定目标摆放位置,能够提高家具布局的效率以及提升家具布局的合理性。
图14示出根据本公开一实施方式的家具布局方法的流程图。如图14所示,该家具布局方法包括以下步骤:
在步骤S1401中,确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;其中,目标摆放位置利用上述家具布局确定方法确定;
在步骤S1402中,根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
在步骤S1403中,输出家具布局展示图。
本实施例中,家具布局方法可以在家具布局系统的服务器端执行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。
目标摆放位置的确定细节可以参见上述图1所示实施例及相关实施例、图9所示实施例及相关实施例中对家具布局确定方法的描述,在此不再赘述。
在确定预置家具组合的目标摆放位置之后,可以通过包括目标房间的平面户型图以及该预置家具组合对应的图形获得在目标房间内的目标摆放位置摆放有对应预置家具组合的家具布局展示图,并将该家具布局展示图输出至用户的客户端,以便展示给用户。该家具布局展示图可以是在包括目标房间的平面户型图的基础上,在目标摆放位置处设置预置家具组合的图形的方式得到,也可以是在包括目标房间的三维立体立体户型图中在对应的目标摆放位置处摆放具有三维立体效果的预置家具组合的图形之后,形成的家具布局展示图,具体可以根据实际需要设定,在此不做限制。通过本公开实施例的上述方式,能够根据用户的需求将待摆放在目标房间内的家具自动摆放在合适的位置,并且最终将摆放后的效果示意图展示给用户,使得用户能够根据该效果展示图直观地判断这种家具布局方式是否符合用户的需求,在该家具布局过程中,用户只需要提供包括目标房间的平面户型图,以及需要摆放在目标房间中的家具信息,家具布局系统会自动生成家具布局方案供用户参考。
图15示出根据本公开另一实施方式的家具布局方法的流程图。如图15所示,该家具布局方法包括以下步骤:
在步骤S1501中,从客户端接收包括目标房间的平面户型图以及家具信息;其中,家具信息包括待摆放在目标房间内的家具以及家具的尺寸信息;
在步骤S1502中,根据家具的预设固定搭配方式以及尺寸信息对家具进行分组搭配,并得到至少一个预置家具组合;
在步骤S1503中,确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;
在步骤S1504中,根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
在步骤S1505中,向客户端返回家具布局展示图。
本实施例中,家具布局方法可以在家具布局系统的服务器端执行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。
用户可以通过家具布局系统在客户端上提供的接口上传或者生成需要摆放家具的空户型矢量平面图。该空户型矢量平面图可以是包括摆放家具的目标房间的平面图。该矢量平面户型图中可以包括每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以依附墙而设置。
用户还可以通过家具布局系统在客户端提供的接口提供摆放在目标房间内的家具信息。该家具信息可以包括但不限于家具以及家具的尺寸信息,例如家具标识、类型、尺寸大小等信息。客户端可以将用户提供的空户型矢量平面图以及家具信息上传至服务器端,服务器端首先可以根据预设的一些固定搭配方式将待摆放在各个目标房间内的家具进行分组搭配,并得到预置家具组合。例如,可以将客餐厅中沙发、茶几等分成一组,将电视和电视柜等分成一组,而将餐桌以及餐椅分成一组。此外,还可以根据预设固定搭配方式中指定的家具之间的相对位置以及间距等最终搭配得到预置家具组合。通过这种方式,可以按照预设的固定搭配方式得到预置家具组合,进而能够通过预置家具组合为单位确定目标摆放位置,能够提高家具布局的效率以及提升家具布局的合理性。
预设固定搭配方式可以包括但不限于需固定搭配在一起进行摆放的多个家具、该多个家具之间的相对位置、该多个家具之间的间距等。例如沙发与茶几需搭配摆放在同一区域等。预设固定搭配方式可以由用户指定,也可以是在家具布局系统中预先设置的,具体可以根据实际情况而定,在此不做限制。
在确定了预置家具组合之后,可以根据用户提供的平面户型图确定各个预置家具组合在目标房间内的目标摆放位置。
在确定预置家具组合的目标摆放位置之后,可以通过包括目标房间的平面户型图以及该预置家具组合对应的图形获得在目标房间内的目标摆放位置摆放有对应预置家具组合的家具布局展示图,并将该家具布局展示图输出至用户的客户端,以便展示给用户。该家具布局展示图可以是在包括目标房间的平面户型图的基础上,在目标摆放位置处设置预置家具组合的图形的方式得到,也可以是在包括目标房间的三维立体户型图中在对应的目标摆放位置处摆放具有三维立体效果的预置家具组合的图形之后,形成的家具布局展示图,具体可以根据实际需要设定,在此不做限制。通过本公开实施例的上述方式,能够根据用户的需求将待摆放在目标房间内的家具自动摆放在合适的位置,并且最终将摆放后的效果示意图展示给用户,使得用户能够根据该效果展示图直观地判断这种家具布局方式是否符合用户的需求,在该家具布局过程中,用户只需要提供目标房间的空户型平面图,以及需要摆放在目标房间中的家具信息,家具布局系统会自动生成家具布局方案供用户参考。
在本实施例的一个可选实现方式中,该步骤S1503,即确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置的步骤,进一步包括以下步骤:
利用上述家具布局确定方法确定目标摆放位置。
该可选的实现方式中,目标摆放位置的确定细节可以参见上述图1所示实施例及相关实施例、图9所示实施例及相关实施例中对家具布局确定方法的描述,在此不再赘述。
图16示出根据本公开实施方式的用户与家具布局系统的交互示意图。如图16所示,用户1601可以通过手机等用户设备1602登录家具布局系统的客户端,通过客户端上传或者在线生成进行家具布局的平面户型图,用户1601还可以通过客户端配置待摆放在该平面户型图中的家具;并且用户1601通过一键点击的方式获得将家具摆放在该平面户型图中的立体效果示意图1603。
图17示出根据本公开实施方式的家具布局系统的应用场景示意图。如图17所示,该家具布局系统包括客户端1701和服务器端1702;客户端1701可以提供用户接口,用户通过该用户接口可以上传或者在线生成进行家具布局的平面户型图,该平面户型图可以是空户型矢量图,用户可以设置该平面户型图中各个部分的尺寸等信息,例如房间内的长宽高、面积等信息。
用户还可以通过该用户接口配置待摆放在平面户型图中各个房间内的家具信息。家具信息的配置过程可以是用户通过从家具布局系统提供的已有家具信息中通过选择家具类别如沙发、家具的具体类型如转角沙发、尺寸大小等方式配置。家具布局系统内部可以预设家具的一些固定搭配方式,例如沙发和茶几之间的固定搭配方式、餐桌餐椅之间的固定搭配方式等。可以理解的是,这些预设固定搭配方式也可以根据用户的实际需求由用户进行调整。
用户通过客户端1701提供了平面户型图和家具信息之后,客户端1701可以将用户提供的平面户型图以及家具信息上传至服务器端1702,服务器端1702根据家具信息以及预设固定搭配方式对家具进行分组搭配,获得预设家具组合,例如沙发和茶几组合、电视机和电视柜组合、餐桌和餐椅组合等。服务器端1702还会针对平面户型图对各个房间进行预处理,预处理过程中将平面户型图内门、窗等从原始位置向房间内部延伸一段距离,例如几十厘米,并得到预处理之后的平面户型图。该平面户型图内门、窗等与墙的轮廓不在一条直线上,门、窗等的轮廓相对于墙向房间内部凸出。
平面户型图经过预处理之后,服务器端1702可以确定房间内墙、门、窗等的支撑区域。支撑区域的确定过程可以理解为对房间内部区域的划分过程,并且是通过房间内部的点的最近投影点来划分,房间内部的点的最近投影点在墙上,则该点位于该墙的支撑区域内,点的最近投影点在门或窗上,则该点位于门或窗的支撑区域内。
服务器端1702通过房间内各个墙的支撑区域确定据预置家具组合在各个候选位置的适应度,并根据该适应度从各个候选位置选出目标摆放位置,从各个候选位置选择目标摆放位置的标准是在不遮挡门、窗等设施的情况下最大程度的靠近墙摆放预置家具组合。服务器端1702选定目标摆放位置之后,可以在根据平面户型图以及预置家具组合的目标摆放位置自动生成在房间内的目标摆放位置摆放有预置家具组合的家具布局展示图。该家具布局展示图可以是立体示意图。服务器端1702在生成家具布局展示图之后,将其推送至客户端1701,并在客户端1701上展示给用户。图18示出根据本公开实施方式在图2所示的平面户型图中摆放了沙发、茶几、餐桌、餐椅、电视、电视柜、床、衣柜、床头柜等家具的立体效果展示图。通过本公开实施例上述方法能够使得用户通过客户端实现一键快速家具布局的应用场景。
下述为本公开装置实施例,可以用于执行本公开方法实施例。
图19示出根据本公开一实施方式的家具布局确定装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图19所示,家具布局确定装置包括:
第一确定模块1901,被配置为确定待摆放的预置家具组合在目标房间内的多个候选位置;
第二确定模块1902,被配置为在预置家具组合摆放在候选位置处时,确定预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集;其中,支撑区域为目标房间内靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
第三确定模块1903,被配置为根据交集从多个候选位置中确定预置家具组合的目标摆放位置。
本实施例,家具布局确定装置可以在家具布局系统的服务器端运行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。待摆放的家具可以是系统根据样板房的户型特点等从已有家具列表中自动匹配得到的,也可以是由用户根据自身需求配置的,例如通过家具布局系统的客户端提供的接口选择家具类型、并输入家具尺寸等方式进行配置,具体可以根据实际情况也即进行房间软装的具体场景而定,在此不做限制。
本实施例在家具布局的确定过程中,用户通过客户端输入至家具布局系统服务器端的可以是样板房的矢量平面户型图,也即本实施例中在进行家具布局时,所需的样板房的平面户型图为计算机软件能够识别、具有几何特征的二维矢量图,计算机软件可以通过该矢量平面户型图识别样板房中的几何特征,例如形状、面积、长度等。该矢量平面户型图中可以包括该样板房内每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以依附墙而设置。
图2示出根据本公开一实施例的样板房的空户型平面矢量图。如图2所示,粗线条表示该样板房内各房间的多边形轮廓,细线条表示门的轮廓,虚线表示窗的轮廓。
样板房的空户型可以如下表示:
其中,H表示空户型,空户型H包括n个房间,R
预置家具组合可以包括固定摆放在一个房间内的同一区域的一个或者一组家具,例如沙发和茶几构成的一组家具组合。用户在配置待摆放在目标房间内的预置家具组合时,可以输入每个待摆放在房间内的家具信息,家具信息包括但不限于家具名称、类别、尺寸信息等。
家具布局系统的服务器端可以根据家具的功能将用户所输入的家具信息划分成多种预置家具组合,并且针对每种预置家具组合确定摆放该预置家具组合的区域的形状、尺寸等区域信息,例如区域为矩形,尺寸包括长和宽等。
例如,针对客餐厅内的家具,可以依照座谈、视听、就餐等不同功能分为沙发、电视和餐桌三种预置家具组合。沙发组合可以包括但不限于双人沙发、贵妃榻、茶几、角几、边几及摆放在这些家具上的家具摆饰等;电视组合可以包括但不限于电视、电视柜等;餐桌组合可以包括但不限于餐桌、餐椅等。针对卧室内的家具可以划分成床、电视、衣柜等三种预置家具组合。床组合可以包括但不限于双人床、床头柜及摆饰等;电视组合可以包括但不限于电视、电视柜及摆饰等;衣柜组合包括衣柜及衣柜内的家具等。可以理解的是,预置家具组合也可以仅包括一个家具,例如餐边柜、鞋柜、绿植、壁画等。
在确定预置家具组合在目标房间内的目标摆放位置时,针对包括目标房间的矢量平面户型图,可以先确定可以摆放预置家具组合的候选位置,之后从候选位置挑选出最适合的目标摆放位置。预置家具组合的候选位置可以是该预置家具组合上某个点的候选位置,也可以是该预置家具组合整个所占用的候选位置区域。预置家具组合的目标摆放位置为从候选位置中最终选定的最适合摆放该预置家具组合的位置,预置家具组合摆放在该目标摆放位置时,可以最大程度的靠近墙且不会遮挡除墙之外的如窗户、门之类的房间内设施。
在本公开一可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是待摆放的预置家具组合的中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
目标房间内的墙可以是矢量平面户型图中将目标房间轮廓中设置有门和窗的部分除去之后的部分。目标房间内的每个墙都有对应的支撑区域。本公开实施例针对墙、门、窗等对目标房间内的地面进行划分,使得墙、门、窗等均对应目标房间内部地面的一部分支撑区域。目标房间的墙的支撑区域为位于目标房间内且靠近墙的区域,该墙的支撑区域可以通过目标房间内的点在墙上的最近投影点来确定。目标房间内的一个墙的支撑区域包括最近投影点在该墙上的目标房间内的点形成的区域,也就是说一个墙的支撑区域中的所有点的最近投影点均在该墙上,而最近投影点在该墙上的所有点构成了该墙的支撑区域。
目标房间内的点在墙上的最近投影点可以通过矢量平面户型图中,将目标房间内的点向其周围的墙进行投影得到,投影距离最近的点为最近投影点。
如图3所示,假如点A为目标房间内的一点,直线ab、bc、cd和da分别表示目标房间内的四面墙,那么通过将点A向该四面墙进行垂直投影,可以得到点A到ad对应的墙上的投影距离最短,也即点A到ad对应的墙上的投影点A1为最近投影点。
目标房间内的各个墙的支撑区域可以根据上述方法预先确定。
在进行家具布局时,针对包括目标房间的矢量平面户型图,可以通过将预置家具组合的区域中心点设置在当前的候选位置上之后,确定该预置家具组合靠近摆放的墙的支撑区域与此时摆放该预置家具组合的区域之间的交集。本公开实施例中目标摆放位置的选择标准是在不遮挡门、窗等房间内设施的情况下使得预置家具组合最大限定的靠近墙摆放。由于墙的支撑区域是通过目标房间内部的点的最近投影点是否在该墙上来确定,因此上述支撑区域与预置家具组合所在区域之间的交集大小可以衡量该预置家具组合在候选位置处时不遮挡门、窗等房间内设施的情况下靠近墙的程度。该交集越大表示该候选位置越接近上述选择标准,也即预置家具组合被摆放在候选位置处时在不遮挡门、窗等房间内设施的情况下更靠近墙。
本实施例中,预置家具组合被摆放在候选位置处之后,该预置家具组合靠近摆放的墙可以是对应的支撑区域与该预置家具组合所在区域之间交集最大的墙,也即可以先通过确定目标房间内各个墙的支撑区域与预置家具组合所在区域之间的交集,将该交集最大的墙作为该预置家具组合靠近摆放的墙。
在根据多个候选位置确定对应的上述交集之后,可以根据该交集确定目标摆放位置,以便在最终确定的家具布局方案中该预置家具组合被摆放在该目标摆放位置处。最合理的目标摆放位置是使得预置家具组合尽量靠墙,且预置家具组合被摆放在该目标摆放位置后不会遮挡目标房间内的门、窗户等设施,并且不会干扰其他预置家具组合的摆放。为了达到这一目的,本公开实施例通过预置家具组合所在区域与其所要依靠的墙的支撑区域之间的交集,从多个候选位置中选出符合上述目标的目标摆放位置。
由于目标房间内墙的支撑区域通常是从该墙出发向外扩展形成的一块区域,支撑区域与预置家具组合所在区域之间的交集越大,可以说明该预置家具组合所在区域越靠近该支撑区域对应的墙,鉴于预置家具组合通常都是靠墙摆放,因此可以通过这种方式选择该交集最大的区域(也即将交集最大的情况下的候选位置确定为目标摆放位置)摆放该预置家具组合,这样可以使得该预置家具组合摆放在最靠近其中一个墙的位置,且该预置家具组合挡窗挡门的几率较小(因为交集最大的情况通常是预置家具组合贴近的部位全部是墙,而不存在门和窗等其他设施)。
本公开实施例在确定家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,预置家具组合靠近摆放的墙的支撑区域与预置家具组合所在区域的交集,并根据交集从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内靠近墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以将目标房间内地面上的点在墙上的最近投影点构成的区域确定为墙的支撑区域,进而可以根据该支撑区域与预置家具组合被摆放在候选位置后所在区域的交集从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的最佳位置。
在本实施例的一个可选实现方式中,第一确定模块,包括:
位置确定子模块,被配置为将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
在本实施例的一个可选实现方式中,在预置家具组合为多个时,第一确定模块,包括:
第一确定子模块,被配置为确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
第二确定子模块,被配置为从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
在本实施例的一个可选实现方式中,第一确定子模块,包括:
第三确定子模块,被配置为在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
在本实施例的一个可选实现方式中,还包括:
第一移动模块,被配置为在包括目标房间的平面户型图内,通过将目标房间的墙上的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
第四确定模块,被配置为确定目标房间内的点的最近投影点;
第五确定模块,被配置为将最近投影点位于目标房间内的墙上的点形成的区域确定为对应的墙的支撑区域。
在本实施例的一个可选实现方式中,第三确定模块,包括:
第四确定子模块,被配置为根据交集的第一面积与预置家具组合所在区域的第二面积之比从候选位置中确定目标摆放位置。
在本实施例的一个可选实现方式中,还包括:
第一获取模块,被配置为获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
第一分组模块,被配置为根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
本实施例中的家具布局确定装置与上述图1所示实施例及相关实施例中的家具布局确定方法对应一致,具体细节可参见上述对图1所示实施例及相关实施例中家具布局确定方法的描述,在此不做限制。
图20示出根据本公开另一实施方式的家具布局确定装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图20所示,家具布局确定装置包括:
第六确定模块2001,被配置为确定待摆放的预置家具组合在目标房间内的多个候选位置;
第七确定模块2002,被配置为在预置家具组合被摆放在候选位置处时,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度;其中,适应度与预置家具组合摆放在候选位置时所在区域和支撑区域之间的交集正相关,且支撑区域为目标房间内部靠近墙的区域,且支撑区域内的点的最近投影点均位于墙上;
第八确定模块2003,被配置为根据适应度从多个候选位置中确定预置家具组合的目标摆放位置。
本实施例,家具布局确定装置可以在家具布局系统的服务器端运行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。待摆放的家具可以是系统根据样板房的户型特点等从已有家具列表中自动匹配得到的,也可以是由用户根据自身需求配置的,例如通过家具布局系统的客户端提供的接口选择家具类型、并输入家具尺寸等方式进行配置,具体可以根据实际情况也即进行房间软装的具体场景而定,在此不做限制。
本实施例在家具布局的确定过程中,用户通过客户端输入至家具布局系统服务器端的可以是样板房的矢量平面户型图,也即本实施例中在进行家具布局时,所需的样板房的矢量平面户型图为计算机软件能够识别、具有几何特征的二维矢量图,计算机软件可以通过该矢量平面户型图识别该样板房中的几何特征,例如形状、面积、长度等。该矢量平面户型图中可以包括该样板房内每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以依附墙而设置。
预置家具组合可以包括固定摆放在一个房间内的同一区域的一个或者一组家具,例如沙发和茶几构成的一组家具组合。用户在配置待摆放在目标房间内的预置家具组合时,可以输入每个待摆放在房间内的家具信息,家具信息包括但不限于家具名称、类别、尺寸信息等。
家具布局系统的服务器端可以根据家具的功能将用户所输入的家具信息划分成多种预置家具组合,并且针对每种预置家具组合确定摆放该预置家具组合的区域的形状、尺寸等区域信息,例如区域为矩形,尺寸包括长和宽等。
例如,针对客餐厅内的家具,可以依照座谈、视听、就餐等不同功能分为沙发、电视和餐桌三种预置家具组合。沙发组合可以包括但不限于双人沙发、贵妃榻、茶几、角几、边几及摆放在这些家具上的家具摆饰等;电视组合可以包括但不限于电视、电视柜等;餐桌组合可以包括但不限于餐桌、餐椅等。针对卧室内的家具可以划分成床、电视、衣柜等三种预置家具组合。床组合可以包括但不限于双人床、床头柜及摆饰等;电视组合可以包括但不限于电视、电视柜及摆饰等;衣柜组合包括衣柜及衣柜内的家具等。可以理解的是,预置家具组合也可以仅包括一个家具,例如餐边柜、鞋柜、绿植、壁画等。
在确定预置家具组合在目标房间内的目标摆放位置时,针对包括目标房间的矢量平面户型图,可以先确定可以摆放预置家具组合的候选位置,之后从候选位置挑选出最适合的目标摆放位置。预置家具组合的候选位置可以是该预置家具组合上某个点的候选位置,也可以是该预置家具组合整个所占用的候选位置区域。预置家具组合的目标摆放位置为从候选位置中最终选定的最适合摆放该预置家具组合的位置,预置家具组合摆放在该目标摆放位置时,可以最大程度的靠近墙且不会遮挡除墙之外的如窗户、门之类的房间内设施。
在本公开一可选的实现方式中,为了计算方便,候选位置可以是预置家具组合的区域中心点的候选位置。区域中心点可以是待摆放的预置家具组合的中心所在位置。在一些实施例中,区域中心点可以是包围预置家具组合中各个家具的外接矩形区域的中心点。区域中心点的候选位置可以是目标房间内的任意一个位置,也可以是预先划分出来的部分区域中的一个位置。例如,对于客餐厅,可以预先划分出客厅区域和餐厅区域,沙发组合的区域中心点的候选位置在客体区域中选取,而餐桌组合的区域中心点的候选位置在餐厅区域选取,具体可以根据实际需要设定,在此不做限制。
目标房间内的墙可以是矢量平面户型图中将房间轮廓中设置有门和窗的部分除去之后的部分。目标房间内的每个墙都有对应的支撑区域。本公开实施例针对墙、门、窗等对目标房间内的地面进行划分,使得墙、门、窗等均对应目标房间内部地面的一部分支撑区域。目标房间的墙的支撑区域为位于目标房间内且靠近墙的区域,该墙的支撑区域可以通过目标房间内的点在墙上的最近投影点来确定。目标房间内的一个墙的支撑区域包括最近投影点在该墙上的目标房间内的点形成的区域,也就是说一个墙的支撑区域中的所有点的最近投影点均在该墙上,而最近投影点在该墙上的所有点构成了该墙的支撑区域。
目标房间内的点在墙上的最近投影点可以通过矢量平面户型图中,将目标房间内的点向其周围的墙进行投影得到,投影距离最近的点为最近投影点。
目标房间内的各个墙的支撑区域可以根据上述方法预先确定。
在进行家具布局时,针对包括目标房间的矢量平面户型图,可以通过将预置家具组合的区域中心点设置在当前的候选位置上的方式预置家具组合摆放在候选位置处。在将预设家具组合摆放在候选位置处之后,可以通过目标房间内墙的支撑区域确定该预置家具组合与该候选位置之间的适应度。该适应度可以理解为用于表征预置家具组合摆放在该候选位置处时的合适程度。本公开实施例中目标摆放位置的选择标准是在不遮挡门、窗等房间内设施的情况下使得预置家具组合最大限定的靠近墙摆放。因此,由于墙的支撑区域是通过目标房间内部的点的最近投影点是否在该墙上来确定,因此该适应度也可以理解为表征预置家具组合在候选位置处时遮挡门、窗等房间内设施以及靠近墙的程度的综合指标。该适应度越大表示该候选位置越接近上述选择标准,也即预置家具组合被摆放在候选位置处时在不遮挡门、窗等房间内设施的情况下更靠近墙。
本实施例中,预置家具组合被摆放在候选位置处之后,该预置家具组合靠近摆放的墙可以是对应的支撑区域与该预置家具组合所在区域之间交集最大的墙,也即可以先通过确定目标房间内各个墙的支撑区域与预置家具组合所在区域之间的交集,将该交集最大的墙作为该预置家具组合靠近摆放的墙。
在根据多个候选位置确定预置家具组合对应的上述适应度之后,可以根据该适应度确定目标摆放位置,以便在最终确定的家具布局方案中该预置家具组合被摆放在该目标摆放位置处。最合理的目标摆放位置是使得预置家具组合尽量靠墙,且预置家具组合被摆放在该目标摆放位置后不会遮挡目标房间内的门、窗户等设施,并且不会干扰其他预置家具组合的摆放。为了达到这一目的,本公开实施例通过预置家具组合所在区域与候选位置之间的适应度,从多个候选位置中选出符合上述目标的目标摆放位置。
本公开实施例在确定家具布局时,确定预置家具组合在目标房间内的多个候选位置,之后再确定预置家具组合摆放在候选位置处时,根据预置家具组合靠近摆放的墙的支撑区域确定预置家具组合与候选位置之间的适应度,并根据该适应度从多个候选位置中选出目标摆放位置,用以摆放预置家具组合;其中,预置家具组合靠近摆放的墙的支撑区域为目标房间内靠近该墙的区域,且该支撑区域包括最近投影点在该目标墙上的点形成的区域。通过这种方式,可以通过目标房间内地面上的点在墙上的最近投影点确定的墙的支撑区域确定预置家具组合与候选位置之间适应度,从而根据该适应度从多个候选位置中选出使得预置家具组合最大程度靠近墙、并且不会遮挡除墙之外的如窗户、门之类的设施的目标摆放位置。
在本实施例的一个可选实现方式中,第七确定模块,包括:
第五确定子模块,被配置为确定支撑区域和预置家具组合摆放在候选位置时所在区域之间的交集;
第六确定子模块,被配置为根据交集的第一面积与预置家具组合所在区域的第二面积之比确定适应度。
在本实施例的一个可选实现方式中,第八确定模块,包括:
第七确定子模块,被配置为将对应于最大的适应度的候选位置确定为目标摆放位置。
在本实施例的一个可选实现方式中,第六确定模块,包括:
第八确定子模块,被配置为将预置家具组合的可选摆放区域的区域中心点确定为候选位置。
在本实施例的一个可选实现方式中,在预置家具组合为多个时,第六确定模块,包括:
第九确定子模块,被配置为确定多个预置家具组合在目标房间内的可选位置形成的多种组合;
第十确定子模块,被配置为从多种组合中去除使得至少两个预置家具组合重叠摆放的组合,并将剩余组合确定为候选位置组合;其中,候选位置组合中包括多个预置家具组合各自的候选位置。
在本实施例的一个可选实现方式中,第九确定子模块,包括:
第十一确定子模块,被配置为在多个预置家具组合中至少两个之间具有相对位置关系时,根据相对位置关系以及多个预置家具组合在目标房间内的可选位置确定多种组合。
在本实施例的一个可选实现方式中,还包括:
第二移动模块,被配置为在包括目标房间的平面户型图内,通过将目标房间的门和/或窗从原始位置向房间内移动,使得移动后的门和/或窗相对墙向目标房间内延伸出预设距离;
第九确定模块,被配置为确定目标房间内的点的最近投影点;
第十确定模块,被配置为将最近投影点位于目标房间内的墙上的点形成的区域确定为靠近墙摆放预置家具组合的支撑区域。
在本实施例的一个可选实现方式中,还包括:
第二获取模块,被配置为获取待摆放在目标房间内的家具信息以及预设固定搭配方式;
第二分组模块,被配置为根据预设固定搭配方式以及家具信息对家具进行分组搭配,得到预置家具组合。
本实施例中的家具布局确定装置与上述图9所示实施例及相关实施例中的家具布局确定方法对应一致,具体细节可参见上述对图9所示实施例及相关实施例中家具布局确定方法的描述,在此不做限制。
图21示出根据本公开一实施方式的家具布局装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图21所示,家具布局装置包括:
第十一确定模块2101,被配置为确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;其中,目标摆放位置利用上述任一家具布局确定装置确定;
第三获取模块2102,被配置为根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
输出模块2103,被配置为输出家具布局展示图。
本实施例中,家具布局方法可以在家具布局系统的服务器端执行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。
目标摆放位置的确定细节可以参见上述图19所示实施例及相关实施例、图20所示实施例及相关实施例中对家具布局确定装置的描述,在此不再赘述。
在确定预置家具组合的目标摆放位置之后,可以通过包括目标房间的平面户型图以及该预置家具组合对应的图形获得在目标房间内的目标摆放位置摆放有对应预置家具组合的家具布局展示图,并将该家具布局展示图输出至用户的客户端,以便展示给用户。该家具布局展示图可以是在包括目标房间的平面户型图的基础上,在目标摆放位置处设置预置家具组合的图形的方式得到,也可以是在包括目标房间的三维立体立体户型图中在对应的目标摆放位置处摆放具有三维立体效果的预置家具组合的图形之后,形成的家具布局展示图,具体可以根据实际需要设定,在此不做限制。通过本公开实施例的上述方式,能够根据用户的需求将待摆放在目标房间内的家具自动摆放在合适的位置,并且最终将摆放后的效果示意图展示给用户,使得用户能够根据该效果展示图直观地判断这种家具布局方式是否符合用户的需求,在该家具布局过程中,用户只需要提供包括目标房间的平面户型图,以及需要摆放在目标房间中的家具信息,家具布局系统会自动生成家具布局方案供用户参考。
图22示出根据本公开另一实施方式的家具布局装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图22所示,家具布局装置包括:
接收模块2201,被配置为从客户端接收包括目标房间的平面户型图以及家具信息;其中,家具信息包括待摆放在目标房间内的家具以及家具的尺寸信息;
第三分组模块2202,被配置为根据家具的预设固定搭配方式以及尺寸信息对家具进行分组搭配,并得到至少一个预置家具组合;
第十二确定模块2203,被配置为确定预置家具组合在包括目标房间的平面户型图内的目标摆放位置;
第四获取模块2204,被配置为根据平面户型图以及目标摆放位置获得在目标摆放位置处摆放有预置家具组合的家具布局展示图;
返回模块2205,被配置为向客户端返回家具布局展示图。
本实施例中,家具布局装置可以在家具布局系统的服务器端运行,该家具布局系统可以针对待进行软装饰的样板房进行家具布局。
用户可以通过家具布局系统在客户端上提供的接口上传或者生成需要摆放家具的空户型矢量平面图。该空户型矢量平面图可以是包括摆放家具的目标房间的平面图。该矢量平面户型图中可以包括每个房间的房间轮廓、门、窗等信息,房间轮廓由首尾相连的点构成的多边形表示,门、窗由四个首尾相连的点构成,墙、门、窗在矢量平面户型图中的展示形式相似,都是由点和线构成。其中,房间轮廓对应于房间的墙,门、窗可以d依附墙而设置。
用户还可以通过家具布局系统在客户端提供的接口提供摆放在目标房间内的家具信息。该家具信息可以包括但不限于家具以及家具的尺寸信息,例如家具标识、类型、尺寸大小等信息。客户端可以将用户提供的空户型矢量平面图以及家具信息上传至服务器端,服务器端首先可以根据预设的一些固定搭配方式将待摆放在各个目标房间内的家具进行分组搭配,并得到预置家具组合。例如,可以将客餐厅中沙发、茶几等分成一组,将电视和电视柜等分成一组,而将餐桌以及餐椅分成一组。此外,还可以根据预设固定搭配方式中指定的家具之间的相对位置以及间距等最终搭配得到预置家具组合。通过这种方式,可以按照预设的固定搭配方式得到预置家具组合,进而能够通过预置家具组合为单位确定目标摆放位置,能够提高家具布局的效率以及提升家具布局的合理性。
预设固定搭配方式可以包括但不限于需固定搭配在一起进行摆放的多个家具、该多个家具之间的相对位置、该多个家具之间的间距等。例如沙发与茶几需搭配摆放在同一区域等。预设固定搭配方式可以由用户指定,也可以是在家具布局系统中预先设置的,具体可以根据实际情况而定,在此不做限制。
在确定了预置家具组合之后,可以根据用户提供的平面户型图确定各个预置家具组合在目标房间内的目标摆放位置。
在确定预置家具组合的目标摆放位置之后,可以通过包括目标房间的平面户型图以及该预置家具组合对应的图形获得在目标房间内的目标摆放位置摆放有对应预置家具组合的家具布局展示图,并将该家具布局展示图输出至用户的客户端,以便展示给用户。该家具布局展示图可以是在包括目标房间的平面户型图的基础上,在目标摆放位置处设置预置家具组合的图形的方式得到,也可以是在包括目标房间的三维立体户型图中在对应的目标摆放位置处摆放具有三维立体效果的预置家具组合的图形之后,形成的家具布局展示图,具体可以根据实际需要设定,在此不做限制。通过本公开实施例的上述方式,能够根据用户的需求将待摆放在目标房间内的家具自动摆放在合适的位置,并且最终将摆放后的效果示意图展示给用户,使得用户能够根据该效果展示图直观地判断这种家具布局方式是否符合用户的需求,在该家具布局过程中,用户只需要提供目标房间的空户型平面图,以及需要摆放在目标房间中的家具信息,家具布局系统会自动生成家具布局方案供用户参考。
在本实施例的一个可选实现方式中,第十二确定模块,包括:
第十二确定子模块,被配置为利用上述任一家具布局确定装置确定目标摆放位置。
本实施例中的家具布局装置与上述图15所示实施例及相关实施例中的家具布局方法对应一致,具体细节可参见上述对图15所示实施例及相关实施例中家具布局方法的描述,在此不做限制。
图23是适于用来实现根据本公开实施方式的家具布局确定方法和/或家具布局方法的电子设备的结构示意图。
如图23所示,电子设备2300包括中央处理单元(CPU)2301,其可以根据存储在只读存储器(ROM)2302中的程序或者从存储部分2308加载到随机访问存储器(RAM)2303中的程序而执行本公开上述方法的实施方式中的各种处理。在RAM2303中,还存储有电子设备2300操作所需的各种程序和数据。CPU2301、ROM2302以及RAM2303通过总线2304彼此相连。输入/输出(I/O)接口2305也连接至总线2304。
以下部件连接至I/O接口2305:包括键盘、鼠标等的输入部分2306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分2307;包括硬盘等的存储部分2308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分2309。通信部分2309经由诸如因特网的网络执行通信处理。驱动器2310也根据需要连接至I/O接口2305。可拆卸介质2311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器2310上,以便于从其上读出的计算机程序根据需要被安装入存储部分2308。
特别地,根据本公开的实施方式,上文参考本公开实施方式中的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,计算机程序包含用于执行本公开实施方式中方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分2309从网络上被下载和安装,和/或从可拆卸介质2311被安装。
附图中的流程图和框图,图示了按照本公开各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
- 家具布局确定方法、装置、电子设备及存储介质
- 家具自动布局方法、装置、存储介质与电子设备