50

人工智能「 建筑师 」之 由手绘生成3D模型

 6 years ago
source link: http://mp.weixin.qq.com/s/MZJGa9qEnz32UQVDl1o9RQ
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

人工智能「 建筑师 」之 由手绘生成3D模型

Original shadow 无界社区mixlab 2018-01-29

这是论文《 Interactive Sketching of Urban Procedural Models 》的解读,主要以解读实现思路为主。

640?wx_fmt=gif

*

使用流程:

640?wx_fmt=png

根据用户勾画的草图,系统自动生成3D的建筑模型。

 a)用户简单勾画建筑物某个组件的轮廓

 b)基于深度学习,系统找到匹配预定义的组件集(论文称为 Snippet Grammar 

 c)用户从匹配到的组件集中挑选合适的组件 (系统转化为 Snippet Grammar 的形式)

 d)系统合成用户的选项(组装 Snippet Grammar ),生成建筑 3D 模型

*

基于参数的描述性语言:

论文提出的 Snippet Grammar ,是基于参数描述性语言,非常容易转化为机器学习训练所需要的数据形式。按照建筑物的构成划分为 Building mass 、Roof 、Window 、Ledge 等几类组件集,Snippet Grammar  则描述了 3D 模型所属的组件集及其参数集合。

例如,建筑物 3D 模型的描述:

<!— 某个Building mass的3D模型 —>

<param building_height=“20” />
<rule name=“Start”>
  <extrude height=“building_height” />
  <comp>
       <top name=“TopFace” />
       <!- -roof  - - >
       <side name=“Facade” />
       <!- - facade - - >
       <bottom name=“Base” />
  </comp>
</rule>


<!— 某个Roof的3D模型—>

<param roof_slope=“50” />
<rule name=“TopFace”>
   <roofGable slope=“roof_slope” />
</rule>

Snippet Grammar 非常像 HTML 标签语言,也类似于 RDF/RDFS ,资源描述框架( RDF )是用于描述网络资源的 W3C 标准,比如网页的标题、作者、修改日期、内容以及版权信息。

我们可以把设计的规则转化为 Snippet Grammar,然后再转化为图片与 Gi 作为 CNNs 的输入数据。

*

实现思路:

640?wx_fmt=png

1 分类标签

640?wx_fmt=png

图为分类标签示例

按照建筑物的构成划分为 Building mass、Roof、Window、Ledge 等几类组件集;

2  3D 模型参数化

每一个建筑物组件 3D 模型使用 Snippet Grammar 描述;

3 生成训练数据

每一类组件集参数随机变化形成许多的 3D 模型;把生成的每一个 3D 模型对应的图片(草图),及 Snippet Grammar 保存下来。

4 训练数据处理

共2组训练数据,分别为:

(草图,分类标签),用于判断草图属于哪一个标签(分类问题);

(草图, Snippet Grammar ) ,定义为 Gi = { α, τ, η, ρ } ,用于估计草图的参数组合;

5 CNNs训练标签分类模型:

使用(草图,分类标签) 作为输入,基于 CNNs 训练分类模型,建立(草图,分类标签)之间的映射关系。相当于告诉机器哪张图属于建筑物的哪个组件(属于 window 还是 roof 等)。

6 CNNs训练各个标签下的参数分类模型:

640?wx_fmt=png

图为building mass的示例

使用(草图,Gi )作为输入,建立某一标签下草图对应的参数之间的映射关系。相当于,告诉机器,在 building mass 标签(或其他标签)下,这张草图属于那一组参数。

7 应用:

当用户输入新的草图图片时,模型判断属于哪个分类标签,并返回最可能的 Gi 集合给用户,最后再根据用户选择的Gi 对应的 Snippet Grammar ,生成 3D 模型。

相关文章推荐:

        聊聊人工智能建筑师

知识星球

论文原文可在知识星球下载,关于本文的一些深入性探讨,我们都会记录于知识星球。还包括:

1 看到一些好案例,关键技术解决方案,写出文章又不成体系,发星球;

2 我会在知识星球发一些非常机密的研究心得;

3 一些非常有技巧的知识,给付费用户;

4 公众号的迭代版本,针对文章发更为升级、核心的内容。

5 当然,还有资深的专家在星球里。

关于公众号:

本公众号定期更新人工智能&设计&科技内容。谈点设计,敲点代码,偶尔创作点人工智能实验产品

码字不易,开启新的打赏方式:

640?wx_fmt=jpeg

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK