基于分形的树木生长建模方法.docx
- 文档编号:15968625
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:7
- 大小:21.03KB
基于分形的树木生长建模方法.docx
《基于分形的树木生长建模方法.docx》由会员分享,可在线阅读,更多相关《基于分形的树木生长建模方法.docx(7页珍藏版)》请在冰点文库上搜索。
基于分形的树木生长建模方法
基于分形的树木生长建模方法
摘要:
针对树木生长建模的复杂性和挑战性,采用分形的方法对树木的生长过程进行建模。
根据树木枝干和叶片的自然生长特点,模拟叶片的生长过程,采用分形的算法生成树木的主要枝干,并采用Logistic模型模拟树木的生长过程。
通过改变树叶的大小、树的深度、弯曲度以及树的大小等参数实现交互式动态生长模型,能够较为逼真地展现树的生长过程。
关键词:
植物建模;分形;交互式;生长预测
0引言
虚拟自然场景是计算机图形学研究领域中一个富有挑战性的课题。
树木是自然场景的重要组成部分,目前针对植物形态结构的建模在很多方面得到了应用,例如在园林设计、影视艺术造型、计算机游戏等领域。
植物的生长模型是通过预测算法对植物的生长过程进行模拟,可以比较真实地展现植物的生长变化过程。
由于植物形态结构变化的复杂性,对其进行模拟困难较大,也是植物建模领域的研究热点之一。
本文采用分形算法对树木的生长进行模拟。
1植物建模相关工作
随着计算机图形学技术的不断发展,植物形态发生模型得到越来越多的关注,成为图形学研究的热点方向之一。
目前最常用的方法是分形和L系统以及近几年出现的交互式建模方法。
1.1分形方法
分形理论是近年来飞速发展的数学分支,它的研究对象是自然界和非线性系统中出现的不光滑和不规则的几何形体,实现的方法主要有迭代函数系统(IFS)、分枝矩阵、粒子系统、A系统等。
分形树是分形中的一个重要分支,是一个典型的具有自相似特点的分形问题。
由于受气候、土质、日照等客观因素的影响,每个树枝的倾斜角度和长度千差万别,所以自然界中树木具有的自相似不是绝对的自相似,在建模过程中需要增加相关的控制参数。
1.2L系统方法
L系统是由美国生物学家ARISTIDLINDENMAYER在1968年提出的并行重写系统。
它是一种描述植物形态和生长的有效方法。
用符号空间中的一个字符序列来解析、模拟植物的自组织、自增殖的行为,类似于自动机理论,是一种重写系统,应用初始条件和替换规则,经过有限次迭代生成字符串序列,对字符串序列进行解释就可以形成复杂的图形。
事实上它就是简单地让计算机制作海龟图,所谓的海龟图指的是只有几条简单的命令:
直线、向左转、向右转等。
植物的基本生长过程体现在某些分枝逐渐复杂化,这一过程可以通过在轴向树上以并行方式运行图形重写机制来模拟。
该重写过程用一个重写规则,通常是一棵轴向树代替前驱边。
这样,前驱边的开始节点与后继轴向树的根重合,前驱的终止节点与后继树的顶端重合。
用三元素(X,Y,Z)表示树状表达式的L系统,X表示字母表,是边标号的集合;Y表示X中标号构成的初始轴向树;Z表示树形的产生式。
若对于边标号X,在Z中有且仅有一个可用的产生式,则该系统成为确定的L系统。
为了在图形上实现该过程,可以引入括号字符串结构,上述字母表扩充为X并{[,]},符号{[,]}表示当前状态进栈和出栈。
如图1所示的轴向树可以表示为以下字符串:
AB[C][D[EF[G[H[I]]]]]。
1.3交互式方法
BERNDLINTERMANN等人在植物建模中提出了图形化的交互界面,使得用户能直观地设计树木的L系统模型。
为了实现植物模型的交互性,可以采用图形化、交互式的植物参数输入方式。
在开发的Xfrog系统中提供一些图符,表示植物的分生组织、分枝结构、叶片、节间等具体属性,例如针对节间,可以用图符表示节间的粗细、长短、弯曲形状等属性。
用户只需通过鼠标点击图形,就可以输入植物参数。
2树木建模算法
2.1基于分形的整体建模算法
递归算法是分形几何中的经典算法,在计算机程序中也普遍使用,在研究图形方面时,常用来构造分形模型。
本文采用递归算法特定的形式生成分形树,其基本原理是:
先规定基本的生成元,然后将这个基本的生成元在计算机上按照生成规则在每一个层次上不断重绘,直至达到预设定的递归结束条件。
规定不同的生成元可以生成不同的分形树。
基本思想是先画树干,接着在树干顶端按照已设定好的夹角画出树枝,有时夹角是一个设定了范围的随机角度,并且树枝的长度应为树干的K(0 设A点坐标为(x,y),B点坐标为(x0,y0),C点坐标为(x1,y1),D点坐标为(x2,y2),E点坐标为(x3,y3),L为树干的长度,α为枝干与主干的夹角,生成结果如图2所示,具体迭代过程如下: ①绘制主干AB,即(x,y)-(x0,y0)直线,AB=L;②计算C点坐标,x1=(x+x0)/2,y1=(y+y0)/2;③计算D点坐标,x2=cosα×L+x,y2=sinα×L+y;④计算E点坐标,x3=cos(-α)×L+x,y3=sin(-α)×L+y;⑤将步骤②中的x1→x,y1→y,步骤③中的x2→x0,y2→y0,再绘制(x,y)-(x0,y0)直线,即画分枝CD;⑥将步骤①中x0→x,y0→y,将步骤④中的x3→x0,y3→y0,再绘制(x,y)-(x0,y0)直线,即画分枝BE;⑦重复执行②~⑤,直至达到递归条件终止。 树木主干的建模采用递归算法,而枝条建模采用L-系统,调用递归算法模拟主干时,记录主干上每个分枝的生长点,在生长点处调用L-系统生成树木枝条,也就是在递归算法中嵌入L-系统。 生成枝条时,根据树木的特点,在每个生长点处生成两个相对方向偏摆的枝条,这样就使得生成的分形树更加具有自然形态。 2.2真实感渲染 系统采用VC++和OpenGL作为开发平台,OpenGL实质是一个状态机,它将一直处于指定的各种状态中,直到修改这些状态为止。 而大多数OpenGL实现都使用相似的操作顺序,这些处理步骤被称为OpenGL渲染流水。 2.2.1树干纹理生成 在绘制较粗的树木枝干时,为了形象逼真,一般需要贴加纹理。 通常把真实植物的一段枝干的纹理处理成数字图片,在绘制植物图形时,进行纹理映射。 为了加速图形显示,也可以用数学方法生成枝干纹理。 如OPPENHEIMER根据分形噪音产生的锯齿波作为纹理上任意一点的值,通过指定隆起部分的数目及纹理的粗糙度,就产生了凸凹不平的树皮状纹理。 2.2.2阴影的生成 本文采用阴影贴图技术,其绘制过程如下: ①生成一个深度纹理。 首先将观察点移动到光源位置,而后绘制场景,将得到的场景帧缓存中的深度值写入纹理中;②绘制场景的时候使用纹理生成方式得到4个坐标(s,t,r,q),这4个坐标分别代表视觉坐标系中该顶点的坐标,而后使用纹理矩阵,将这4个坐标自动变换为以光源为原点的坐标系的坐标,r表示深度值。 此时乘以光源坐标系的投影矩阵,将其坐标范围限制为[-1,1],然后经过缩放平移,使得其范围为[0.0,1.0];③使用纹理的深度比较函数。 纹理坐标的r值小于深度纹理的则得到纹理颜色[0.0,0.0,0.0,0.0],否则为[1.0,1.0,1.0,1.0]。 使用修正纹理模式,用顶点颜色乘以纹理颜色得到该顶点的最终颜色。 在绘制模型时,模型上的一点生成纹理坐标(s,t,r,q)。 该纹理坐标也对应于场景空间的坐标,经过转换为(s′,t′,r′,q′),为光源观察点的裁剪坐标。 系统调用了GL_COMPARE_R_TO_TEXTURE比较模式,将r′和深度阴影纹理值D进行比较,默认比较模式为GL_LEQUAL。 由于r′也是场景空间中该点在光源观察点的深度值。 当r′ 3植物模型生长预测算法 3.1树叶生长预测 在限制性的条件下,叶子生长具有以下特点: 在培养初期生长受抑制,生长速度较慢,之后生长加快,当生长速率达到最大值之后会逐渐降低以至停止生长,即μ由小变大,再由大变小,呈现一个“钟”形曲线。 描述μ随时间变化的规律如公式 (1): μ=μmax×e(t-tmax)2-2×t2L (1)其中,μmax为最大比生长速率,tmax为μ达到μmax的时间,tL为延迟期的时间。 植物叶片的大小会随着时间的变化而改变,而同一株植物的叶片会因为光照的原因有不同生长结果。 一般来说,根据树叶的颜色就可以判断树叶朝向,树叶的密度可以判断地理位置的关系,如树枝生长比较繁茂的朝向是阳光充足的方向,或是说植物的向阳性,树叶的预测分析就是根据阳光的多少设置不同的生长参数,使得不同的叶片具有不同的生长因子。 预测树叶的大小时,让它每次生长一个较理想的值,通过专家系统评测取值为0.5,其算法如公式 (2): i=0.5; Target=(i)*1000-iSlider1000+CurMin (2) 其中,目标值Target求的是树叶大小,目前结果,iSlider是前面树叶大小影响度,CurMin是当前树叶大小值。 树叶的深度预测需要考虑到树木的变化,要根据外部条件的变化让其智能地适应,而预测重绘时要考虑这一点,所以树叶深度测试也有树木本身的变化,其中部分代码的实现要修改其变化的深度值,这里取值为2,对其进行迭代生长,其算法如公式 (2): i=2;其中,目标值Target求的是树叶深度。 目前结果: iSlider是前面树叶深度影响度,CurMin是当前树叶深度值。 树叶生长。 3.2整体形态生长预测 植物的生长发育是一项十分复杂的过程。 这表现为: 控制变量及影响因素众多;各变量与生长结果之间可能具有较强的动态耦合变化过程;植物的生长过程有一定的随机性。 建立一个完整的生长模型,并全面反映以上特征是十分困难的。 因此,任何一个植物生长模型,总是建立在一定的假设条件之下,并根据某些特定研究内容,对植物生长过程进行简化数学处理。 本文采用Logistic模型对生长进行预测,如公式(3)所示: y1(t)=α[1+βexp(-δt)] (3)公式(3)为参数模型,均为大于零的参数,其中参数与曲线的渐近线有关。 首先,对树叶的大小、树叶的深度、树的弯曲度、树的大小4个方面进行交互式预测。 而这4个预测初值分别设置为0.1,4.0,0.0,0.1。 树木的弯曲度根据自适应的特性,随机地改变其参数,取值设为增长值为5。 其算法如公式 (2): i=5;其中,目标值Target求的是弯曲度目前结果,iSlider是前面弯曲度影响度,CurMin是当前弯曲度值。 树木的生长预测根据分形的原则,树枝也跟着动态变化,其变化值取值为0.1。 算法如公式 (2): i=0.1;其中,目标值Target求的是树枝目前结果,iSlider是前面树枝影响度,CurMin是当前树枝值。 综合以上预测,可以得到树木生长的变化过程。 4交互式对话过程 为了实现树木模型的交互性,可以采用图形化、交互式的植物参数输入方式,在用户仅有少量的植物学知识或不需要任何植物学知识的情况下也能快速构造出栩栩如生的植物图形。 本文综合考虑以上因素进行简化,主要从树叶大小、深度、树木的弯曲度和大小进行局部调整,根据用户输入的不同参数值给出不同的生长预测结果。 5结语 以计算机模拟为手段对植物的生长形态进行建模和仿真,生成视觉上形象逼真的“虚拟植物”,将为探索植物生命的奥秘和生长规律,以及改善人类生存环境质量带来新的契机。 本文根据L系统,利用计算机进行了树的建模,通过交互接口改变相关参数实现了树的大小、深度以及树叶大小的变化,对树的生长进行了预测,展现了植物的生长过程。 参考文献: [1]刘骥,朱庆生,曾令秋,等.基于虚拟器官的植物可视化[J].系统仿真学报,2010(10). [2]OkabeM,OwadaS,IgarashiT.Interaetivedesignofbotanicaltreesusingfreehandsketchesandexamplebasedediting[C].InProceedingsofEUROGRAPHICS,2005. [3]IjiriT,OwadaS,OkabeM,etal.Floraldiagramsandinflorescences: interactiveflowermodelingusingbotanicalStructuralconstraints[C].ComputerGraphicsProceedings,AnnualConferenceSeries,ACMSIGGRAPH,LosAngeles,2005. [4]胡包钢,赵星,严红平,等.植物生长建模与可视化——回顾与展望[J].自动化学报,2001(6). [5]Lindenmayer,A.Mathematicalmodelsforcellularinteractionindevelopment,PartsIandII[J].JournalofTheoreticalBiology,2008(3). [6]LindenmayerA.Developmentalsystemswithoutcellularinteractions,theirlanguagesandgrammars[J].JournalofTheoreticalBiology,1971(3). [7]DeussenO,LintermannB.Amodellingmethodanduserinterfaceforcreatingplants[J].ComputerGraphicForum,1998 (1). [8]LintermannB,DeussenO.Interactivemodelingofplants[J].IEEEComputerGraphicsApplication,1999 (1). [9]ChenSGCeulemansR,ImpensI.Afractalbasedpopulouscanopystructuremodelforthecalculationoflightinterception[J].Ecol.Manage,1994(69). [10]曾兰玲.树木花卉形态建模研究[D].杭州: 浙江大学,2009. [11]OppenheimerPE.Realtimedesignandanimationoffractalplantsandtrees[J].ComputerGraphics,1986(4). [12]WilliamsL.Castingcurvedshadowsoncurvedsurfaces[J].ComputerGraphics,1978(12). [13]沈潇.三维场景实时阴影算法的研究与实现[D].重庆: 重庆大学,2006. [14]盛玲,姜晓彤.基于Cg高级着色器语言的阴影贴图算法研究[J].中国科技信息,2009(15).
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 树木 生长 建模 方法