陈奇作者

CVPR 2020 | 家居自动设计有多远?针对语言描述的自动三维场景设计算法

本文是对论文《Intelligent Home 3D: Automatic 3D-House Design from Linguistic Descriptions Only》的解读。该论文由华南理工大学、澳洲阿德莱德大学和酷家乐合作完成。


论文链接:https://arxiv.org/pdf/2003.00397.pdf
代码链接:https://github.com/chenqi008/HPGM

近日,计算机视觉顶会CVPR 2020接收论文结果公布,从6656篇有效投稿中录取了1470篇论文,录取率约为22%。在《Intelligent Home 3D: Automatic 3D-House Design from Linguistic Descriptions Only》(已开源)这篇由华南理工大学、澳洲阿德莱德大学和酷家乐合作完成的论文中,作者设计了一套能够针对人类语言描述自动生成室内三维场景的算法模型。 

p语言描述到三维场景生成样例  

1、动机

房屋场景设计是一项十分复杂、繁琐且重人工的工作,通常由专业的建筑设计师来完成。然而,一个专业的建筑设计师必须接受数年的设计、规划和设计工具的培训,并且在实际进行房屋设计时,通常需要花费大量时间收集客户需求,然后根据其专业知识与过往经验来进行平面图的设计,这一般需要几天到几周的时间。另一方面,即使花费了大量时间,设计师绘制的设计图纸也不一定能让客户感到满意。因此,如何快速的绘制出符合要求的设计样例就显得十分关键。

一个可行的思路是让客户自助描绘出想要的设计样例,然而由于专业知识的局限性,大部分普通人没有设计相关的知识储备,并且也不知道如何使用那些复杂的专业设计工具,但是每个人都有使用语言表达想法的能力。因此,为了节省时间并且允许没有专业知识的人参与设计,作者考虑设计一套能够针对人类语言描述生成室内三维场景的算法模型(HPGM模型),该模型会自主应用专业的设计常识,通过用户的语言描述进行户型和家装设计。此外,作者还收集了一个新的数据集用以检验语言信息生成三维场景的模型效果。

2、方法框架

HPGM模型框架包含五个主要部分,分别是:1)文本表达模块(Text Representation);2)基于图的布局预测网络(Graph Conditioned Layout Prediction Network,GC-LPN);3)平面图后处理模块(Floor Plan Post-processing);4)基于语言的纹理生成网络(Language Conditioned Texture GAN,LCT-GAN);5)三维场景生成与渲染模块(3D Scene Generation and Rendering)。

算法总体框架图  首先,为了能够清晰的提取出客户描述中的关键属性信息,作者使用斯坦福提出的文本解析器(Sandford Scene Graph Parser)拆解输入的文本描述语句,生成半结构化的语义数据。具体可分为:1)针对每间房子的场景图:其中包含每间房屋的具体类型、方向位置、期望大小以及墙面和地板的材质与颜色等等;2)房子之间关系的场景图:通过场景图中节点(房屋)之间是否有直接连接来表示房屋之间相邻情况。 

每间房子的场景图  

房子之间关系的场景图  其次,基于提取出的文本信息,作者构建了一个布局预测网络(GC-LPN)用以生成房间布局图。网络输入为场景图,图中节点表示每间房屋的特征,包括房屋的类型、方位和大小;边则表示房屋之间的连接情况,有连接为1,反之为0。为保证生成布局图空间信息与描述中所包含的语义一致,并且能够进行端到端的训练,作者引入图结构并用图卷积网络(Graph Convolutional Network)进行更新。图卷积网络更新后的节点即包含自身的特征,也包含邻接节点的信息。紧接着,用一个边框回归网络(Bounding Box Regression)分别根据每个节点特征预测相应的房屋边框,最后组合成房屋的布局图。

然后,为了将所预测的房间布局图转换成真实世界中的平面图(Floor Plan),作者提出一个平面图后处理模块,该模块分为五步:(a)提取出图像中所有线段;(b)将相近的线段合并;(c)没有封闭的多边形封闭;(d)判断并标记每个多边形属于的房间类型;(e)根据特定规则加上门和窗。

后处理步骤 

 纹理生成模型 

另一方面,为了生成不同的房间风格,作者提出一个纹理生成网络(LCT-GAN),该网络能根据输入的语义信息生成地板和墙面的纹理图案。基于生成对抗网络的原理,纹理生成网络包含一个纹理生成器G和一个判别器D,除了生成对抗网络中基础的对抗损失函数 外,文章针对纹理图案的材质和颜色,提出两种不同的对抗损失辅助生成器的优化,分别是材质感知损失 (Material-aware Loss)和颜色感知损失  (Colour-aware Loss),用以评估生成纹理图像中材质样式和颜色是否与描述中的一致。值得注意的是,作者使用全卷积网络(Fully Convolutional Network, FCN)来构造纹理生成器G,该网络能够通过调节输入的大小来得到任意大小的输出纹理图像。

最后,作者提出了一个三维场景生成与渲染模块(3D Scene Generation and Rendering),该模块可以根据上述模型生成的房屋二维平面图和对应的纹理图案,合成相应的三维场景模型。

三维渲染图合成 

3、实验结果

1、数据集

为验证所提出模型的有效性,文章收集了一个新的数据集(Text-to-3D House Model dataset),其中包含完整的语言描述和对应的二维平面图以及纹理图案,数据集总共包含2000个平面图信息,共13478间房屋信息,另外有873张纹理图片,每段语言描述平均长度为173.73,全部描述共包含193个不同的单词。值得注意的是,由于某一些房间具有相同的纹理图案,因此纹理图片的数目小于房间的总数。

数据集样例 

数据集样例 

2、平面图生成

为测试GC-LPN算法生成二维平面图的效果,作者使用目标检测中普遍用到检测评价函数Intersection-over-Union(IoU)作为量化对比指标,并且展示可视化效果,其中Text1和Text2表示输入的描述。由于二维平面图生成是一个全新的任务,没有现成的已有算法,因此作者构建了几种所提出算法的变种来进行对比,其中包括:(1)MLG:针对输入文本中的房屋大小与位置信息,根据随机抽取的长宽比生成平面图;(2)C-LPN:将提出的网络模型中图卷积部分去掉,使用剩余模型来进行平面图生成;(3)RC-LPN:将图卷积部分换成LSTM模型来生成平面图。

pGC-LPN与不同模型结果对比 

由不同模型的数值结果与可视化结果对比表明,相较于其他网络模型,GC-LPN网络能生成更加合理且接近真实世界数据的平面图结构,同时也很好地契合了输入文本中关于房间相关位置以及各种属性的需求。

3、纹理图片生成

其次,测试LCT-GAN纹理图案生成效果时,作者使用生成对抗网络中常用的FID和MS-SSIM指标进行量化比较,并展示可视化效果。文章对比经典的生成对抗网络算法ACGAN和StackGAN-v2,此外还考虑了专门生成纹理图像的PSGAN算法。无论从指标还是视觉结果,LCT-GAN都能达到令人满意的效果。

LCT-GAN与不同模型结果对比 

除此之外,为了讨论LCT-GAN的泛化能力,作者设计了一个差值图像生成实验和一个新纹理图像生成实验。差值实验对两个不同属性之间的输入特征进行线性差值,并把中间的差值特征输入到LCT-GAN网络中去。实验结果显示,不同属性间差值生成的图像能平滑过度,有效证明了LCT-GAN的泛化能力。而生成新纹理图像的实验中,作者尝试让LCT-GAN生成现实中不可能存在的属性组合,例如“花岗岩”+“粉红色”,结果表明,针对这类组合属性,LCT-GAN仍然能很好的生成相应的纹理。 

差值结果 

构造新纹理 

4、三维场景结果

最后,基于上述生成的平面图以及纹理图像,构建最终的三维场景图,并将其与真实世界中的场景图相比较,为验证生成场景图的合理程度,作者考虑使用类似“图灵测试”的方法,让人类来分辨生成的场景图与真实的场景图。结果显示,测试者将HPGM生成的设计场景判断为人类设计师绘制的概率为39.41%,并且还有12.65%的样例测试者不能明确的区分出来。这些结果表明,在一定程度上人类并不能分辨出生成的场景图是人工设计的还是HPGM算法设计的。

HPGM v.s 人类(“Tie”表示不确定) 

此外,文章最后还提供了一些完整的从输入到中间结果平面图,再生成最终三维场景的样例。从样例中可以看到,HPGM能较好的根据输入文本的语义信息生成相应的二维平面图和三维场景图,并且与人类设计师绘制的真实平面图和场景图也十分相似。 

从语言到三维场景生成完整例子展示 

4、总结和展望

文章中,作者尝试用人工智能算法模型解决真实世界应用需求,根据人类语言描述生成对应的户型与室内场景,将学术研究与实际产品落地相结合,通过解决一个新颖的、实际的问题,探索算法的可用性及可行性,希望能借此推动深度学习模型在多模态、图像生成等领域的发展进步。同时,构建自动三维场景生成模型能更好的缓解家居版块中复杂、繁琐的任务流程,减轻人工成本的消耗,有助于实际过程中的降本增效。

酷家乐KooLab
酷家乐KooLab

酷家乐前沿技术实验室 (KooLab) 专注于自主知识产权高性能渲染引擎,及家居行业智能 AI 领域工作,致力于将最前沿的科技应用到大家居设计,推动大家居产业变革。我们一起迎接,并感受「所见即所得」的终极家居体验。

理论数据集计算机视觉CVPR
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

全卷积网络技术

全卷积网络最开始在论文 Fully Convolutional Networks for Semantic Segmentation(2015)中提出,它将传统卷积神经网络最后几个全连接层替换为卷积层。引入全卷积的意义在于它能实现密集型的预测,即在二维卷积下对图像实现像素级的分类,在一维卷积下对序列实现元素级的预测。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

规划技术

人工智能领域的「规划」通常是指智能体执行的任务/动作的自动规划和调度,其目的是进行资源的优化。常见的规划方法包括经典规划(Classical Planning)、分层任务网络(HTN)和 logistics 规划。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

图像生成技术

图像生成(合成)是从现有数据集生成新图像的任务。

图灵测试技术

图灵测试(英语:Turing test,又译图灵试验)是图灵于1950年提出的一个关于判断机器是否能够思考的著名试验,测试某机器是否能表现出与人等价或无法区分的智能。测试的谈话仅限于使用唯一的文本管道,例如计算机键盘和屏幕,这样的结果是不依赖于计算机把单词转换为音频的能力。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

目标检测技术

一般目标检测(generic object detection)的目标是根据大量预定义的类别在自然图像中确定目标实例的位置,这是计算机视觉领域最基本和最有挑战性的问题之一。近些年兴起的深度学习技术是一种可从数据中直接学习特征表示的强大方法,并已经为一般目标检测领域带来了显著的突破性进展。

图卷积网络技术

假设有一张图,要做分类,传统方法需要手动提取一些特征,比如纹理啊,颜色啊,或者一些更高级的特征。然后再把这些特征放到像随机森林等分类器,给到一个输出标签,告诉它是哪个类别。而深度学习是输入一张图,经过神经网络,直接输出一个标签。特征提取和分类一步到位,避免了手工提取特征或者人工规则,从原始数据中自动化地去提取特征,是一种端到端(end-to-end)的学习。相较于传统的方法,深度学习能够学习到更高效的特征与模式。

图生成技术

根据给定信息信息生成图表。

生成对抗技术

生成对抗是训练生成对抗网络时,两个神经网络相互博弈的过程。两个网络相互对抗、不断调整参数,最终目的是使判别网络无法判断生成网络的输出结果是否真实。

量化技术

深度学习中的量化是指,用低位宽数字的神经网络近似使用了浮点数的神经网络的过程。

推荐文章
暂无评论
暂无评论~