一种基于概率模型的公寓三维物体布局生成方法与流程

文档序号:15312488发布日期:2018-08-31 22:11阅读:174来源:国知局

本发明涉及计算机视觉领域,尤其是涉及了一种基于概率模型的公寓三维物体布局生成方法。



背景技术:

近年来室内场景的视觉任务受到了极大的关注,其中包括2d/3d的对象检测、语义和实例分割、房间布局估计、立体语义分割、深度预测以及即时定位与地图构建(slam),而所有这些任务的关键是通过推理整个场景3d几何结构和布局,从而对场景有了更好的理解,并极大地减少了2d视觉信号的模糊性。公寓三维物体的布局生成的主要应用是将大量的公寓布局数据转化为计算机数据,从而能够对公寓的房间布局和室内物品进行统计和处理;还能进行智能的公寓设计,通过学习人类设计师的布局习惯设计出更宜居的公寓类型;此外,布局推理的方法还可以通过生成包含人类设计者知识的合成数据,增加用于鉴别方法的训练集。然而,以往的空间布局生成方法都无法生成整个房间的布局,也无法捕捉到物体之间的相互关系。

本发明提出了一种基于概率模型的公寓三维物体布局生成方法,先从数据集中采集房间布局的各项数据,然后建立一个房间布局的有向图模型,并生成房间布局,接着利用狄利克雷过程混合模型从布局中获取常见的模式,最后利用获取到的模式和物体之间的支持关系推理出新的更逼真的布局。本发明解决了以往无法生成整个房间布局以及物体相互关系薄弱的问题,能够捕获物体之间丰富的空间关系,包括支持关系和经常出现的模式,还能生成整个房间的布局并且推理出新的逼真可靠的房间布局。



技术实现要素:

针对以往无法生成整个房间布局以及物体相互关系薄弱的问题,本发明的目的在于提供一种基于概率模型的公寓三维物体布局生成方法,先从数据集中采集房间布局的各项数据,然后建立一个房间布局的有向图模型,并生成房间布局,接着利用狄利克雷过程混合模型从布局中获取常见的模式,最后利用获取到的模式和物体之间的支持关系推理出新的更逼真的布局。

为解决上述问题,本发明提供一种基于概率模型的公寓三维物体布局生成方法,其主要内容包括:

(一)房间建模;

(二)布局生成过程;

(三)模式获取;

(四)布局推理。

其中,所述的房间建模,是通过对一个公寓布局数据集进行讨论,进而解析房间的构成,建立一个有向图模型,然后用模型定义的生成过程来描述这个有向图模型,其中参考的公寓布局数据集包含45000个人类设计的公寓布局,每个布局被人工验证过是合理的,而且平均每套公寓有8.1个房间,大多数都有房间类型的标注,如厨房或浴室;这些公寓是用一个在线工具设计的,每个公寓都包含179个对象类,总共约有2500个计算机辅助设计(cad)模型以及450万个对象实例,每一个对象实例都包含一个参考cad模型以及它在房间中的位置和旋转角度。

进一步地,所述的解析房间的构成,是根据参考的数据集,对房间进行建模,模型具有不同的房间类型(如厨房、浴室、客厅)以及相应的房间大小和里面的物体;每个物体都由cad模型的类型、位置和旋转角度来参数化,并放置在房间里;然后直观地假设房间里的对象都放置在一系列的层面上,并分为五个类别:家具是放置在地板上(如桌子、床)能支持其它物体的大物件;小对象通常是放在家具上的物体(如书籍或笔记本电脑);墙壁物件是挂在或靠在墙上的物体(如图片、货架);天花板物件是吊在天花板上的物体(如灯);地毯一般是平铺在地板上,可能有家具放在上面的物体;最后手动将参考数据集的每个物体分到其中一个类,并在模型中将它们分开处理。

其中,所述的布局生成过程,是先对整个房间进行采样,然后使用完整的参考数据集进行训练,在模型定义的条件分布中,学习由希腊字母命名的所有参数,在所有情况下,条件变量都有已知的值,因此每个条件的参数可以通过极大似然估计独立地学习,这些都是直接用封闭的形式来计算的。

进一步地,所述的对整个房间进行采样,是先对房间类型进行采样,去除不常见的可能性之后,剩下22个房间类型的参考数据,虽然房间通常是几个组合在一起的,例如厨房和餐厅,但实际只有很小一部分可能的组合发生(在222种可能里只占42种),所以简单地用一个分类分布来描述全部的组合t:

t~categorical(τ)(1)

然后对家具进行采样,先对对象总数n进行采样,然后房间类型的条件下分别为对象n=1…n的类别cn进行采样:

n|t~poisson(λt)(2)

在不同房间类型下,为每个对象类c建立了数量分布模型nc,用一个小样本(最多4个实例)的类别分布和一个大样本的泊松分布的混合体来表示这个模型:

为符号的简单起见,写成n=∑cnc,不分种类地用n作为所有对象集的索引,并用cn来表示第n个对象的种类;

为了使物体不发生空间上的重叠,在知道物体的确切尺寸之后才对家具对象的位置和房间大小进行采样,先将每个对象映射到一个单元,该单元是房间的一个空间区域,最初是未知的大小,且被安排在一个有规律的结构中,它有自由的维度d=(di),可以拉伸以容纳不同的对象,在确定对象位置和房间大小后,将对这些维度的值进行采样;根据每个对象的类别决定每个对象实例是否应该靠着墙壁放置(en=1)或者是放置在房间的内部,如果靠墙放置,则任意选择一堵墙

然后,对于每一面墙,把在它附近的对象排序并分配到相应的单元;对于分配给房间内部的对象,再次选择一个排序,但是将对象分配给一个单元格,用kn来表示第n个对象分配到的边界或内部单元格;

接下来,为每个对象实例选择一个cad模型,以及它的旋转角度;它们一起决定了它所占据的空间的大小,cad模型mn是在对象类的条件下根据它是在房间的角落或边缘,还是内部独立选择的:

假定旋转θn只相对于垂直轴,并且用基于cn的一个以π/2为倍数的离散均匀分布和一个在[0,2π]间的连续均匀分布的混合分布来给它建模;

对天花板物件的建模跟对家具一样,先对每个相关对象类的数量和旋转角度采样,其中对每个对象类的cad模型只采样一次;对于空间单元格结构,则使用一个简单的网格,如果它大于家具所需要的空间,在选择房间的大小时,则需要考虑到所需的空间;

地毯的处理方式与天花板上的物体完全相同,但它只占用一个单独的层,并且cad模型对每个实例采样一次;

接着对上面所选对象的精确物理位置和最终的房间大小进行采样,使得所有的对象都不相交,在为每一个对象建立一个cad模型mn和旋转角度θn之后,就可以用一个轴线固定的边界框计算其空间范围,考虑到空间范围和单元分配的kn,可以通过设置单元结构的每个自由维度di,使其尽可能小,计算出使所有的物体都适合的最小房间大小,在实际中,这会使房间过于拥挤,所以用一个四维的对角高斯分布在每个对象周围采样一些填充pn:

其中normal+是受正值限制的各向同性高斯分布,然后再把自由维度di设置为最小,得到最小的房间大小;

紧接着对每个家具上的小对象采样,对于每一件家具n,对放置在它上面的对象类的数量进行采样,这类似于对家具物品数量的采样,但现在是作为支持的家具的种类cn:

其中位置设置为跟支持家具上方的区域一样,cad模型mn和旋转角度θn也跟家具一样,作为所有家具上物体的索引。

其中,所述的模式获取,是通过模式探索、模式表示、对模式实例进行采样三个步骤,在模型中加入了一些模式,即物体之间某些特定的比其它关系更常见的空间关系。

进一步地,所述的模式探索,是搜索相关类元组出现的所有训练集,即从一个房间中获取属于相关类的k对象实例的所有排列,然后将元组的一个元素指定为基对象,并且对于每一个事件,计算从基对象中心到其他对象中心的相对位移,这些位移可以看作是2(k-1)维空间中的点;利用变量推理拟合的狄利克雷过程混合模型和带对角协方差的高斯簇进行聚类;产生的每个集群都是一个候选模式,而最后根据它是否具有足够的空间紧凑性来决定它是不是一个模式,即模式元素的相对位置受到足够严格的约束,具体可以计算2σ轮廓内的区域中模式中的每个元素的位置,如果所有这些都小于一个阈值,那么这个集群就认定为一个模式。

进一步地,所述的模式表示,是用一个模式的非参数表示:在训练集中,直接存储相对位置、相对方向和cad模型。

进一步地,所述的对模式实例进行采样,是对于给定的模式,需要将它们合并到生成过程中,将模式实例作为完整的单元,类似于单例对象,更准确地说,将每种类型的模式与对象类进行相同的处理,并对基于房间类型的实例数量进行采样;然后将每个完整的模式实例分配给房间布局中的单个单元格,对于每个实例,选择一个存储训练集示例来定义模式组成对象的相对位置/方向和cad模型;然后,将所有组成对象作为一个单元进行转换和旋转,将模式实例放在房间中;

而这就要求基于房间类型学习每个模式的基数分布(即每个房间的实例数的分布),还需要相应地调整现有的类基数参数πtc,表明现在有更少的单例。

其中,所述的布局推理,是根据参考数据集,使用模型对每个房间的内容进行了重新采样,但是保持公寓的现有结构不变,更准确地说,基于房间的大小和类型,对家具和小物件进行取样,包括墙壁上的物体和天花板上的物体;

由于模型的条件独立结构,对房间类型和墙壁/天花板物件的调节是很简单的;然而,对房间大小的调节复杂得多,因为这依赖于不同风格中家具对象的类和大小;因此,使用一个近似的方法从符合条件的结果中采集样本,具体地说,只针对房间的类型和墙壁/天花板上生成样品,而不是房间大小,最后,排除那些空间尺寸比要求的尺寸大超过5厘米的样品。

附图说明

图1是本发明一种基于概率模型的公寓三维物体布局生成方法的系统流程图。

图2是本发明一种基于概率模型的公寓三维物体布局生成方法的生成模型图。

图3是本发明一种基于概率模型的公寓三维物体布局生成方法的家具单元划分图。

图4是本发明一种基于概率模型的公寓三维物体布局生成方法的小对象采样图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合,下面结合附图和具体实施例对本发明作进一步详细说明。

图1是本发明一种基于概率模型的公寓三维物体布局生成方法的系统流程图。主要包括房间建模,布局生成,模式获取,布局推理。

房间建模是通过对一个公寓布局数据集进行讨论,进而解析房间的构成,建立一个有向图模型,然后用模型定义的生成过程来描述这个有向图模型,其中参考的公寓布局数据集包含45000个人类设计的公寓布局,每个布局被人工验证过是合理的,而且平均每套公寓有8.1个房间,大多数都有房间类型的标注,如厨房或浴室;这些公寓是用一个在线工具设计的,每个公寓都包含179个对象类,总共约有2500个计算机辅助设计(cad)模型以及450万个对象实例,每一个对象实例都包含一个参考cad模型以及它在房间中的位置和旋转角度。

进一步地,所述的解析房间的构成,是根据参考的数据集,对房间进行建模,模型具有不同的房间类型(如厨房、浴室、客厅)以及相应的房间大小和里面的物体;每个物体都由cad模型的类型、位置和旋转角度来参数化,并放置在房间里;然后直观地假设房间里的对象都放置在一系列的层面上,并分为五个类别:家具是放置在地板上(如桌子、床)能支持其它物体的大物件;小对象通常是放在家具上的物体(如书籍或笔记本电脑);墙壁物件是挂在或靠在墙上的物体(如图片、货架);天花板物件是吊在天花板上的物体(如灯);地毯一般是平铺在地板上,可能有家具放在上面的物体;最后手动将参考数据集的每个物体分到其中一个类,并在模型中将它们分开处理。

而模式获取是通过模式探索、模式表示、对模式实例进行采样三个步骤,在模型中加入了一些模式,即物体之间某些特定的比其它关系更常见的空间关系。

进一步地,所述的模式探索,是搜索相关类元组出现的所有训练集,即从一个房间中获取属于相关类的k对象实例的所有排列,然后将元组的一个元素指定为基对象,并且对于每一个事件,计算从基对象中心到其他对象中心的相对位移,这些位移可以看作是2(k-1)维空间中的点;利用变量推理拟合的狄利克雷过程混合模型和带对角协方差的高斯簇进行聚类;产生的每个集群都是一个候选模式,而最后根据它是否具有足够的空间紧凑性来决定它是不是一个模式,即模式元素的相对位置受到足够严格的约束,具体可以计算2σ轮廓内的区域中模式中的每个元素的位置,如果所有这些都小于一个阈值,那么这个集群就认定为一个模式。

进一步地,所述的模式表示,是用一个模式的非参数表示:在训练集中,直接存储相对位置、相对方向和cad模型。

进一步地,所述的对模式实例进行采样,是对于给定的模式,需要将它们合并到生成过程中,将模式实例作为完整的单元,类似于单例对象,更准确地说,将每种类型的模式与对象类进行相同的处理,并对基于房间类型的实例数量进行采样;然后将每个完整的模式实例分配给房间布局中的单个单元格,对于每个实例,选择一个存储训练集示例来定义模式组成对象的相对位置/方向和cad模型;然后,将所有组成对象作为一个单元进行转换和旋转,将模式实例放在房间中;

而这就要求基于房间类型学习每个模式的基数分布(即每个房间的实例数的分布),还需要相应地调整现有的类基数参数πtc,表明现在有更少的单例。

布局推理是根据参考数据集,使用模型对每个房间的内容进行了重新采样,但是保持公寓的现有结构不变,更准确地说,基于房间的大小和类型,对家具和小物件进行取样,包括墙壁上的物体和天花板上的物体;

由于模型的条件独立结构,对房间类型和墙壁/天花板物件的调节是很简单的;然而,对房间大小的调节复杂得多,因为这依赖于不同风格中家具对象的类和大小;因此,使用一个近似的方法从符合条件的结果中采集样本,具体地说,只针对房间的类型和墙壁/天花板上生成样品,而不是房间大小,最后,排除那些空间尺寸比要求的尺寸大超过5厘米的样品。

图2是本发明一种基于概率模型的公寓三维物体布局生成方法的生成模型图。布局生成模型的具体过程是先对整个房间进行采样,然后使用完整的参考数据集进行训练,在模型定义的条件分布中,学习由希腊字母命名的所有参数,在所有情况下,条件变量都有已知的值,因此每个条件的参数可以通过极大似然估计独立地学习,这些都是直接用封闭的形式来计算的。

其中对整个房间进行采样是先对房间类型进行采样,去除不常见的可能性之后,剩下22个房间类型的参考数据,虽然房间通常是几个组合在一起的,例如厨房和餐厅,但实际只有很小一部分可能的组合发生(在222种可能里只占42种),所以简单地用一个分类分布来描述全部的组合t:

t~categorical(τ)(1)

然后对家具进行采样,先对对象总数n进行采样,然后房间类型的条件下分别为对象n=1…n的类别cn进行采样:

n|t~poisson(λt)(2)

在不同房间类型下,为每个对象类c建立了数量分布模型nc,用一个小样本(最多4个实例)的类别分布和一个大样本的泊松分布的混合体来表示这个模型:

为符号的简单起见,写成n=∑cnc,不分种类地用n作为所有对象集的索引,并用cn来表示第n个对象的种类;

划分好每个对象实例对应的单元后,为每个对象实例选择一个cad模型,以及它的旋转角度;它们一起决定了它所占据的空间的大小,cad模型mn是在对象类的条件下根据它是在房间的角落或边缘,还是内部独立选择的:

假定旋转θn只相对于垂直轴,并且用基于cn的一个以π/2为倍数的离散均匀分布和一个在[0,2π]间的连续均匀分布的混合分布来给它建模;

对天花板物件的建模跟对家具一样,先对每个相关对象类的数量和旋转角度采样,其中对每个对象类的cad模型只采样一次;对于空间单元格结构,则使用一个简单的网格,如果它大于家具所需要的空间,在选择房间的大小时,则需要考虑到所需的空间;

地毯的处理方式与天花板上的物体完全相同,但它只占用一个单独的层,并且cad模型对每个实例采样一次;

接着对上面所选对象的精确物理位置和最终的房间大小进行采样,使得所有的对象都不相交,在为每一个对象建立一个cad模型mn和旋转角度θn之后,就可以用一个轴线固定的边界框计算其空间范围,考虑到空间范围和单元分配的kn,可以通过设置单元结构的每个自由维度di,使其尽可能小,计算出使所有的物体都适合的最小房间大小,在实际中,这会使房间过于拥挤,所以用一个四维的对角高斯分布在每个对象周围采样一些填充pn:

其中normal+是受正值限制的各向同性高斯分布,然后再把自由维度di设置为最小,得到最小的房间大小;

图3是本发明一种基于概率模型的公寓三维物体布局生成方法的家具单元划分图。为了使物体不发生空间上的重叠,在知道物体的确切尺寸之后才对家具对象的位置和房间大小进行采样,先将每个对象映射到一个单元,该单元是房间的一个空间区域,最初是未知的大小,且被安排在一个有规律的结构中,它有自由的维度d=(di),可以拉伸以容纳不同的对象,在确定对象位置和房间大小后,将对这些维度的值进行采样;根据每个对象的类别决定每个对象实例是否应该靠着墙壁放置(en=1)或者是放置在房间的内部,如果靠墙放置,则任意选择一堵墙

然后,对于每一面墙,把在它附近的对象排序并分配到相应的单元;对于分配给房间内部的对象,再次选择一个排序,但是将对象分配给一个单元格,用kn来表示第n个对象分配到的边界或内部单元格;

图4是本发明一种基于概率模型的公寓三维物体布局生成方法的小对象采样图。对放置在每一件家具n上的对象类的数量进行采样,这类似于对家具物品数量的采样,但现在是作为支持的家具的种类cn:

其中位置设置为跟支持家具上方的区域一样,cad模型mn和旋转角度θn也跟家具一样,作为所有家具上物体的索引。

对于本领域技术人员,本发明不限制于上述实施例的细节,在不背离本发明的精神和范围的情况下,能够以其他具体形式实现本发明。此外,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,这些改进和变型也应视为本发明的保护范围。因此,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1