1、1.2.1 树木三维可视化模拟技术目前,用于构造植物形态结构的计算机模型很多,大致可分为 3 大类:第 1 类模拟用于生成仅从视觉上近似于植物的计算机图形,注重视觉效果的逼真性,而不是植物学理论的真实性;第 2 类模型称为静态结构模型,是利用三维数字化方法测定具体植物的形态结构后直接应用这些数据构造特定植物的形态模型;第 3 类模型是动态结构模型,能模拟植物的动态生长过程(郭焱等,2001;刘兴龙等,2008) 。有关树木形态生长可视化模拟的建模方法主要有以下几种:分形法(L 系统、IFS 法、DLA 模型法)、几何结构法、粒子系统法、随机过程法和特征综合推理法。(1)分形法理论生物学家 Li
2、ndenmayer 提出了著名的基于文法、侧重于植物拓扑结构的 L 系统(Lindenmayer ,1968) ;Mech 与 Prusinkiewicz 提出了所谓的“开放式(open) L 系统” ; 为了模拟植物的连续生长过程,Prusinkiewicz 等还提出了时变 L 系统。为了能够进一步应用微分方程表示植物的连续变化过程,Prusinkiewicz 等又提出了微分 L 系统。加拿大Calgary 大学的 Prusinkiewiez 等人,以 L 系统为植物形态结构的描述框架,开发了 Vlab 虚拟植物系统(Prusinkiewiez, 1975) 。李大锦、徐盛、袁震东等人应用
3、L 系统算法来模拟树木在不同环境下的生长状况(李大锦,2007) 。L 系统经过不断的发展,已经成为一种应用广泛、功能强大的植物模拟方法,它强调计算机图形学与植物生长机理的结合。但是,这种方法也存在着一些缺陷。一方面,L系统生成一个字符发展序列是一个并行迭代过程,这和植物并行生长的特征相吻合。基于这个特点,用 L 系统模拟植物的生长,提取其生长规则是关键,由于高大植物的生长规则不易提取,所以 L 系统不能很好的模拟高大植物;另一方面,在 L 系统具体编程实现时,形式语言的表示方法比较复杂,而且由于在产生式中同时描述植物的几何结构信息和拓扑信息,理解和使用也比较困难。迭代函数系统 IFS(Ite
4、rated Function System)是分形几何中的重要研究内容之一。Barnsley 和 Demko 用 IFS 方法生成了具有极强自相似特征的蕨类植物叶片(Barnsley,1985 ) 。马石安、陈传波对基于迭代函数的树木模拟方法进行了探索。李庆忠、韩金姝探讨几种基于 IFS 的彩色树木模拟技术,以及随机因素和迭代概率对树木形态的影响(李庆忠,2004) 。祁燕等采用 IFS 方法和随机参数化方法,构造出三维桃树和枫树的模型(祁燕,2005) 。仲兰芬等生成了单轴分枝和合轴分枝两类树木的 IFS 码(仲兰芬,2005) 。刘文进从交互式获取自然景物 IFS 码的角度对任意自然景物的
5、信息提取问题进行了全面讨论(刘文进,2005) 。(2)几何结构法Aono 与 Knnii 提出了树木的三维几何模型,以植物特定分枝模式为基础,使用分枝角、开度角、分枝长度比例等几何参量,实施对植物几何结构的控制和修改。Weber 等提出了一种适合实时绘制的树木可视化模型表达方法以及相应的模型简化算法。Lintermann 等通过模块化交互建模方法用图来描述树的结构。韩玉阁、宜益民和汤瑞峰利用随机生成方法提出了树木及丛林的随机生成模型,其中包括不同类型树木的单棵树木几何构形生成模型和由相同或不相同树木类型构成的丛林随机生成模型。(3) 粒子系统法Reeves 提出了注重于模拟花、草、树整体环境
6、的粒子系统( Reeves,1983) 。Reeves等人提出的粒子系统所绘制的森林是早期计算机生成虚拟自然景物最有说服力的例子之一。王小铭、林拉以树木的静态造型为背景,提出一种基于骨架定制和粒子系统模型的树木模拟方法(王小铭,2003) 。用许多形状简单的微小粒子作为基本元素来表示自然界不规则的模糊景物。由于自然景物中的大多数物体是随机的、模糊的、无规则的,因此可以把它们看作是粒子系统。它们不是静止的,而是随着时间的变化处在不断运动中的粒子集合,随着新粒子的不断产生和运动以及旧粒子的消亡,将引起其外形及内部结构的不断变化。因此粒子系统能较好地反映自然界的真实情况,可用于自然景物及各种自然现象
7、的模拟显示。适用于模拟森林、草丛等复杂模糊的自然场景。(4) 随机过程法法国农业国际合作研究发展中心(CIRAD)的 Philippe de Reffye 等人建立的虚拟植物模型 AMAP,也称为随机过程模型,是一个针对植物结构特征的专用方法(Philippe de Reffye, 2008) 。近年来,我国在此领域也取得很大的进展,以中国科学院自动化研究所 中法实验室(LIAMA)为代表,他们与中国农业大学等单位合作,在 AMAP 的基础上建立了 GreenLab(青园)模型,它以数学公式表示,弥补了 AMAPsim 在模拟植株的生理生态功能的欠缺,又克服了 AMAPhydro 只能模拟简单
8、形态结构的不足,而且具有计算时间短的优点。(5) 特征综合推理法特征综合生成模型可分为两类:基于定义性特征综合的植物生成模型和基于描述性特征综合的植物生成模型。毛卫强,耿卫东,潘云鹤等用这种方法模拟了树木生长季节形态变化。随着数学模型和计算机模拟技术在植物学领域中的应用,近年已有一些学者开展了植物构筑型动态模拟技术的研究(Fisher,1992; Kurth,1994 ; Guoyan,2001) ,使植物构筑型的研究逐渐向定量化和科学化发展。热带地区对树木地上部分构筑型的研究相对应,在温带和寒温带地区欧美植物学者开展了大量的有关草本植物,特别是无性系植物(clonal plant)地下茎构筑
9、型的研究,并成功进行了计算机模拟(Clausnitzer,1994; Godin, 1996; Lynch,1997) ,大大提高了人们对植物的构件的关系及其变化规律的认识。陈敏智等探讨了利用参数化 L 系统生成植物结构模型的方法以及基于这些模型的植物形态可视化模拟,给出了模拟这些结构模型所需的 L 系统的迭代公理和若干产生式参数(陈敏智,2007) 。1.2.2 树木形态结构模型研究Barnsley 提出了迭代函数系统 IFS (Barnsley,1985) ,此后,又不少学者对此算法研究和改进。Oppenheimer 提出了基于分形,利用基本参数控制,同时在植物生长新的子枝结点处对树枝生长
10、参数进行随机扰动实现实时动画制作(Oppenheimer,1986) 。祁燕等采用随机参数化方法,基于 IFS 分形算构造出真实感较强的三维枫树和桃树的模型。李庆忠、韩金姝探讨彩色树木自然着色的方法、自然光照状态下各种树影的绘制方法等几种基于IFS 的彩色树木模拟技术,并研究了随机因素和迭代概率对树木形态的影响(李庆忠,2005) 。仲兰芬等提出基于全局到局部的树木计算机建模方法,用户通过设定树冠形状来确定枝条的生长范围,采用最短距离和分形方法控制枝条的生成(仲兰芬,2007) 。迭代函数系统在模拟植物自相似时的效果良好,但是对于一些拓扑结构过于复杂的植物则显得过于单一,不能表现自然植物的丰富
11、多彩的形态。树木枝条空间格局及其生长变化是决定树木结构和树冠形状的主要因素。由于枝条其自身的复杂性和多样性,所以枝条的模拟也是树木模拟的难点。20 世纪 70 年代,人们开始对树木的冠形和枝系结构有了进一步的研究,比较系统的有树木构筑型理论。Halle 等将热带树木划分为 23 个基本的构筑模式,并编制了检索表(Halle ,1978) 。树木构筑型主要是由树木的总体冠形、分枝角度、分枝方式和生长节律等构成(臧润国,1998) 。蒋有绪,臧润国等对海南岛尖峰岭树木园热带树木基本构筑型的初步分析(蒋有绪,1999) 。而树木的冠形主要是由主干及其上着生的一级枝的属性(枝长,分枝角度)来决定。对于
12、主干,可以用林学上常用的树高,胸径和削度方程来描述;对于枝条,也有不少学者对其进行了研究。宋会兴基于 J.L.Harper 的构件理论,对 1-20 a 的人工马尾松林苗木的分枝率动态进行了研究(宋会兴,2001) 。何明珠等根据各级分枝角度、各级分枝长度、枝茎比、逐步分枝率和总体分枝率、分枝分维数和计盒维数等 16 个指标将荒漠植物分为 4 个类型(何明珠,2005) 。赵相健对不同生长环境下太白红杉分枝格局的可塑性做了研究,探讨其树冠构型可塑性、分枝格局与环境的关系(赵相健,2005) 。可以看出以上学者分别从树木的整体构筑型模式和及其构筑型的分类,总体冠形、分枝角度、分枝方式和生长节律等
13、组成。肖锐,李凤日等对 30 株樟子松样木枝解析调查数据,通过分析不同林分、不同大小林木 1 级枝和 2 级枝的分枝概率、分枝格局和分枝角度,揭示了樟子松人工林树冠的分枝结构特点(肖锐,2006) 。刘兆刚,李凤日等建立樟子松人工林树冠内一级枝条个数的预估模型,并对一级枝条在树冠内的垂直分布和水平分布规律进行了研究(刘兆刚,2007) 。廖彩霞,李凤日等通过樟子松人工林 6 块固定标准地 30 株枝解析数据,在分析树冠表面积和树冠体积与林分变量和林木变量的基础上,利用幂函数建立了树冠表面积(CSA)和树冠体积(CV )的预估模型,同时还对林木材积生长量与 CSA 和 CV 进行了相关分析(廖彩
14、霞,2007) 。林勇明等采用 Strahler 法对福建省石峰寨风景区内的不同生长发育阶段桂花的枝系构型进行了统计分析(林勇明,2007) 。1.2.3 树木三维可视化模拟软件国内外已有很多成熟的植物三维可视化软件,其对植物模拟的侧重点也各有不同,主要的植物模拟软件有:(1)AMAP法国 CIRAD 开发的 AMAP 系列软件具有描述植物生长、死亡、枝条分布情况的植物模型和实现三维可视化植物生长过程的功能。AMAP 软件将植物结构归类为二十多种基本模型,并且可以调节有关树干、树叶、四季色相变化等各种参数,还可以通过制作地形,生成完整的自然景观动画。由于植物生长过程的复杂性,数据的收集及其不同
15、生长阶段的参数化是非常耗时的一件事情。因此,AMAP 软件目前的主要应用领域仍在景观设计方面。(2)Geenlab中国科学院自动化研究所中法实验室(LIAMA)为代表,他们与中国农业大学等单位合作,在 AMAP 的基础上建立了 GreenLab(青园)模型,它以数学公式表示,弥补了AMAPsim(Barczi et al.,2008)在模拟植物的生理生态功能的欠缺,又克服了AMAPhydro( De Reffye et al.,1996)只能模拟简单形态结构的不足,而且具有计算时间短的优点。GreenLab 模型结构模型部分主要以双尺度自动机模型(赵星,2006)为主,它是在 AMAP 模型基
16、础上开发的,该方法从植物学的角度出发用微状态表示叶元的生长,用宏状态(由相同生理年龄的微状态组成的)描述生长单元的生长,并用半马尔可夫链描述微状态和宏状态之间的关系,用属性表描述各状态的具体属性,精炼的表达植物的拓扑结构,并用这两种状态的组合和循环模拟描述植物的动态生长。由于使用属性表描述各状态的具体属性、结构条理,并且与植物学概念结合紧密,生成植物拓扑结构的过程与实际植物生长的过程相同,所以容易与生理生态模型相结合。(3)SpeedTreeSpeedtree 是一款专门的三维树木建模软件,支持大片的树木的快速建立和渲染,而且它本身还带有强大的树木库,软件是由美国 IDV 公司研发制作的。不仅
17、可以通过插件将树木导入到其他的三维建模软件中使用,也可以为游戏引擎提供强大的树形库支持,目前已经成为著名游戏引擎 Unreal 的御用树木生成软件。SpeedTree 是一个专门的植被引擎。其技术最大的特征就是可以在使用极少多边形的情况下创造出高度逼真的树木和植物,并且可以调整风速效果,使得这些植物随着风的吹动而真实地摇动。游戏开发者就可以直接在特定地形上生成整个森林,无需将树一棵一棵地设置在相应地点上,大大提高了工作效率。并且通过 SpeedTree 的代码优化技术,画面上数量繁多的枝叶不会对画面帧数造成太大影响。SpeedTree 主要应用在游戏制作,其主要变现美轮美奂的植物景观和逼真的动
18、画效果,没有考虑树木的真实形态结构和生长变化,但是其成熟的渲染优化技术值得借鉴。(4)Onyx TreeMakerOnyx Treemaker 是一套功能强大的树木的三维造型软件,应用它来解决单棵林木模型的生成。在 Onyx Treemaker 系统中拥有 4 个大类(针叶树、阔叶树、竹和棕榈) ,16 个小类,超过 700 种树木的原型,能满足绝大多数场景建模以及林业研究的需要,这个原型库在同类产品中是有很大优势的。Onyx Treemaker 中的所有可用参数都通过数值或者数值与滚动条并存的方式来控制,在提供直观的交互界面的同时满足精确性的要求。Onyx Treemaker 在图形学的基础
19、上实现三维的原理,在系统中体现清晰的层次性。该软件能够与市场上所用的绝大多数三维建模新产品实现文件级的兼容,系统生成的模型具有很大的灵活性,能够最大程度上适应平面设计与三维场景设计。除了 Onyx Treemaker 在造型方面的优势以外,该系统也存在着一些不足,三维的输出模型完全依赖图形学,其在生成的实时性上还稍显不足,在大面积场景中重复调用时所占用的渲染时间过长,从而影响了整体场景生成的实时性。(5)xfrog德国的 Greenworks Gbr 公司开发了 Xfrog 园林软件包,可用交互式方法快速制作各种树木和植物模型。该软件提供超过 600 种植物的模型库,所有的树叶、树干、花朵等都采用实物扫描,更为真实。系统中植物建模是以整个枝条为单位构造的,虽然这不符合植物的实际生长特点,但作为一个纯图形学意义上的植物模拟软件,该参数输入方法结构条理,容易操作。李大锦。用面向对象的 L 系统模拟树的生长 计算机仿真2007 年 第 2 期 183-186