• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于分形L系統(tǒng)的樹(shù)木建模方法研究

    2017-08-08 06:27:10張權(quán)義
    關(guān)鍵詞:字符串白楊樹(shù)分形

    張權(quán)義

    (山西農(nóng)業(yè)大學(xué) 文理學(xué)院,山西 太谷 030801)

    ?

    基于分形L系統(tǒng)的樹(shù)木建模方法研究

    張權(quán)義

    (山西農(nóng)業(yè)大學(xué) 文理學(xué)院,山西 太谷 030801)

    [目的]虛擬樹(shù)木是場(chǎng)景可視化的重要組成部分。為建立真實(shí)感的樹(shù)木模型,本文提出了基于分形L系統(tǒng)的樹(shù)木可視化方法,建立包含枝干,分叉角度等信息的樹(shù)木拓?fù)浣Y(jié)構(gòu)模型。[方法]首先根據(jù)現(xiàn)實(shí)生活中樹(shù)木的結(jié)構(gòu)解析出分形L系統(tǒng)的生產(chǎn)式和初始串,產(chǎn)生字符串,然后使用MATLAB軟件根據(jù)字符串中的字符解釋成幾何圖形,實(shí)現(xiàn)對(duì)樹(shù)木的建模。[結(jié)果]使用該方法逼真地模擬了白楊樹(shù)的拓?fù)浣Y(jié)構(gòu),并且該方法具有一定的可移植性。[結(jié)論]使用MATLAB軟件基于分形L系統(tǒng)的樹(shù)木建模方法具有一定的應(yīng)用性和推廣性。

    樹(shù)木建模; 分形L系統(tǒng); MATLAB

    樹(shù)木是現(xiàn)實(shí)場(chǎng)景中常見(jiàn)的景物之一,所以在虛擬場(chǎng)景中常常需要將樹(shù)木可視化,即樹(shù)木建模是虛擬場(chǎng)景中不可或缺的一部分,同時(shí)也為園林設(shè)計(jì)提供一定的理論基礎(chǔ)。由于自然界中許多植物的形狀具有自相似特征,而分形也具有自相似性。因此,近年來(lái)分形理論在植物模擬領(lǐng)域得到了廣泛的應(yīng)用[1~6],已成為虛擬農(nóng)業(yè)研究的重要組成部分。

    L系統(tǒng)是分形理論的一個(gè)重要分支,由美國(guó)生物學(xué)家LindenMayer在19世紀(jì)70年代提出,廣泛應(yīng)用于模擬植物生長(zhǎng)過(guò)程的研究中。該系統(tǒng)借助計(jì)算機(jī)生成許多具有無(wú)窮細(xì)節(jié)、有規(guī)則的分形圖形,特別是在樹(shù)木形態(tài)模擬方面,分形L系統(tǒng)可以有效地描述樹(shù)木的生長(zhǎng)和拓?fù)浣Y(jié)構(gòu),并能很好地表達(dá)植物的結(jié)構(gòu)特征,具有高度簡(jiǎn)潔性和多級(jí)結(jié)構(gòu)的特點(diǎn)。

    近年來(lái),相關(guān)學(xué)者開(kāi)始關(guān)注分形L系統(tǒng)并對(duì)其做各種改進(jìn)[7~13],分形L系統(tǒng)已成為研究植物可視化的一種主要方法。Kunii和Aono[14]將分形L系統(tǒng)應(yīng)用于樹(shù)形植物的模擬;胡秀珍等[15]用參數(shù)L系統(tǒng)將梨樹(shù)枝干模型可視化;劉閣等[16]討論了開(kāi)心形蘋(píng)果樹(shù)枝干模型;Mitch等[17]使用L系統(tǒng)對(duì)桃樹(shù)枝進(jìn)行了建模。但這些學(xué)者是借助OpenGL圖形庫(kù)來(lái)繪制的,雖然OpenGL具有強(qiáng)大的圖形渲染功能,但保存步驟繁瑣。

    MATLAB語(yǔ)法結(jié)構(gòu)簡(jiǎn)單,具有高質(zhì)量的可視化效果與強(qiáng)大的界面設(shè)計(jì)能力,在圖形圖像處理方面具有其他語(yǔ)言無(wú)法比擬的優(yōu)勢(shì),已成為國(guó)內(nèi)外處理圖形圖像最廣泛的軟件之一,本文使用MATLAB2012a對(duì)白楊樹(shù)進(jìn)行分形L系統(tǒng)的樹(shù)木建模。

    1 抽象樹(shù)木模型

    L系統(tǒng)認(rèn)為每棵樹(shù)木都是由一系列離散的組件組成,為了研究樹(shù)木的結(jié)構(gòu)以及樹(shù)干與樹(shù)枝之間的拓?fù)浣Y(jié)構(gòu),對(duì)樹(shù)木抽象建模——建立軸型樹(shù)[13],如圖1所示。

    圖1 抽象樹(shù)模型Fig.1 Abstract Tree Model

    在軸型樹(shù)中,樹(shù)木從根節(jié)點(diǎn)開(kāi)始。從樹(shù)木的根節(jié)點(diǎn)到樹(shù)木頂端分為直枝和側(cè)枝。直枝是樹(shù)木的主干,稱為樹(shù)干;側(cè)枝是其分支,稱為樹(shù)枝。樹(shù)木的軸型模型有利于分析樹(shù)木枝干之間的拓?fù)浣Y(jié)構(gòu),同時(shí)為樹(shù)木建模提供一定的理論基礎(chǔ)。

    2 分形L系統(tǒng)

    確定型L系統(tǒng)為一個(gè)三元組,其中V表示系統(tǒng)字母表,V*表示V上所有單詞的集合,ω∈V*是一個(gè)非空單詞,稱作公理,P?V*,V*是生產(chǎn)式,或生成規(guī)則的有限集。生產(chǎn)式(a,x)∈P寫(xiě)作a→x,字母a和單詞x分別稱為生產(chǎn)式的前驅(qū)和后繼。若對(duì)于任意字母a∈V,至少存在一個(gè)單詞x∈V*,使得a→x,如果給定的前驅(qū)a∈V無(wú)顯示說(shuō)明的生產(chǎn)式,則規(guī)定自反規(guī)則a→a屬于生產(chǎn)式集合P。對(duì)于每個(gè)a∈V,當(dāng)且僅當(dāng)唯一的x∈V*使得a→x,則說(shuō)明L系統(tǒng)是確定的[18]。

    L系統(tǒng)是一種符號(hào)重寫(xiě)系統(tǒng),其本質(zhì)是字符串的替換,替換原理基本如下:

    b→a,a→ab。

    則演繹變化規(guī)律為:

    b→a→ab→aba→abaab→abaababa……

    替換規(guī)則產(chǎn)生一系列字符串。具體步驟描述如下:

    第一步,生成字符串:

    (1)聲明并設(shè)置生產(chǎn)式規(guī)則;

    (2)聲明并設(shè)置起始點(diǎn)、初始角、迭代步長(zhǎng)以及迭代上限等控制參數(shù);

    (3)循環(huán)用字符串替換種子。

    第二步,讀取字符串:按照“龜標(biāo)記的字符串圖形解釋[18]”方法執(zhí)行不同的動(dòng)作:

    (1)依次讀取字符串中的每個(gè)字符;

    (2)根據(jù)讀取的字符解釋為幾何語(yǔ)言,例如讀取‘F’時(shí)畫(huà)樹(shù)枝線段,讀取‘h’時(shí)畫(huà)樹(shù)桿線段,讀取‘+’時(shí),逆時(shí)針旋轉(zhuǎn)θ角度,讀取‘-’順時(shí)針旋轉(zhuǎn)θ角度,讀取‘[’時(shí)進(jìn)棧,記錄當(dāng)前狀態(tài)。讀取‘]’時(shí),出棧。

    3 樹(shù)木建模方法

    對(duì)于一株給定的樹(shù)木,其幾何形狀主要由樹(shù)干和樹(shù)枝組成,而樹(shù)干與樹(shù)枝存在自相似性。因此,采用L系統(tǒng)對(duì)一棵樹(shù)木建模,首先應(yīng)根據(jù)現(xiàn)實(shí)場(chǎng)景中樹(shù)木的形態(tài)結(jié)構(gòu)找出分形L系統(tǒng)的生產(chǎn)式和初始串。根據(jù)初始串與生產(chǎn)式迭代產(chǎn)生字符串。最終根據(jù)字符串生成樹(shù)木圖形。

    3.1 算法設(shè)計(jì)

    (1)數(shù)據(jù)初始化,初始化樹(shù)干與樹(shù)枝的夾角,樹(shù)枝的生長(zhǎng)比例系數(shù)。

    (2)判斷循環(huán)結(jié)束條件是否成立,若不成立,進(jìn)入下一步;若成立,循環(huán)結(jié)束。

    (3)根據(jù)字符串中的字符,計(jì)算新枝點(diǎn)的坐標(biāo),設(shè)原枝點(diǎn)的狀態(tài)為(x,y,α),向前移動(dòng)一個(gè)步長(zhǎng)s,旋轉(zhuǎn)角度為δ,則新枝點(diǎn)的狀態(tài)變?yōu)?x′,y′,α′),其中x′=x+s·cos(δ),y′=y+s·sin(δ),α′=α±δ。

    (4)畫(huà)出原枝點(diǎn)與新枝點(diǎn)間的線段。

    (5)將新枝作為母枝,并返回到(2)。

    3.2 算法流程圖

    算法流程如圖2所示。

    圖2 流程圖Fig.2 Flow chart

    3.3 模型結(jié)果與應(yīng)用

    北方白楊樹(shù)在防風(fēng)固沙,保持水土以及美化環(huán)境等方面起著重要作用。因此在虛擬場(chǎng)景中常常需要對(duì)白楊樹(shù)進(jìn)行可視化。通過(guò)分析白楊樹(shù)的形態(tài),提取白楊樹(shù)枝干的特征信息,結(jié)合李姝敏[19]的描述,可將白楊樹(shù)形態(tài)特征總結(jié)如下:

    (1)白楊樹(shù)樹(shù)干

    作為整棵樹(shù)的重要組成部分,相對(duì)于側(cè)枝,樹(shù)干具有直而粗的特點(diǎn),樹(shù)干隨著樹(shù)齡的增加而逐漸增粗,一般直徑為10~100cm之間,高度為2~17m。

    (2)白楊樹(shù)側(cè)枝

    樹(shù)冠蓋主要由側(cè)枝構(gòu)成,根據(jù)側(cè)枝生長(zhǎng)的位置,可歸納為兩種:一種是生長(zhǎng)在樹(shù)干較低的位置,易被人工修剪,相對(duì)樹(shù)齡較長(zhǎng),側(cè)枝較大,在末端生長(zhǎng)出更多細(xì)小的分枝。另一種是生長(zhǎng)在樹(shù)干較高的位置,屬于新生枝,側(cè)枝較小。

    本文將分形L系統(tǒng)應(yīng)用于北方白楊樹(shù)的建模,根據(jù)觀測(cè)現(xiàn)實(shí)場(chǎng)景中年幼的白楊樹(shù)樹(shù)干、樹(shù)枝以及分叉角度等數(shù)據(jù),擬合到分形L系統(tǒng)中,得出白楊樹(shù)的分形L系統(tǒng)生產(chǎn)式為:

    ′h[-F][+F]h[-F][+F]hF′

    (1)

    ′hh′

    (2)

    其中,h代表樹(shù)干的生長(zhǎng),F(xiàn)代表樹(shù)枝的生長(zhǎng)。模擬結(jié)果如圖3和圖4所示。

    圖3 n=5的白楊樹(shù)Fig.3 Aspen tree of n=5

    圖4 n=6的白楊樹(shù)Fig.4 Aspen tree of n=6

    圖3和圖4為使用MATLAB軟件在迭代次數(shù)分別為n=5和n=6時(shí)的白楊樹(shù)模型,該樹(shù)較低矮,不符合生活中白楊樹(shù)的特征,因此把分形L系統(tǒng)的生產(chǎn)式作進(jìn)一步修改,將樹(shù)木的樹(shù)干頂端部分生長(zhǎng)加倍。改進(jìn)后的分形L系統(tǒng)的生產(chǎn)式為:

    ′h[-F][+F]h[-F][+F]hhF′

    (3)

    其中h代表樹(shù)干的生長(zhǎng),F(xiàn)代表樹(shù)枝的生長(zhǎng),分枝角度θ為15°,結(jié)果如圖5和圖6所示。

    圖5和圖6分別為迭代次數(shù)n=5和n=6時(shí)改進(jìn)的白楊樹(shù)模型,該樹(shù)型顯得比較高,向上生長(zhǎng),

    圖5 n=5的改進(jìn)白楊樹(shù)Fig.5 Mended aspen tree of n=5

    圖6 n=6的改進(jìn)白楊樹(shù)Fig.6 Mended aspen tree of n=6

    符合現(xiàn)實(shí)生活中白楊樹(shù)的特征,比改進(jìn)前的白楊樹(shù)模型更加逼真,實(shí)現(xiàn)了白楊樹(shù)的可視化。該方法具有一定的應(yīng)用性與推廣性,可以用于構(gòu)建其他類(lèi)似樹(shù)木的可視化模型。

    4 結(jié)論與展望

    在詳細(xì)觀測(cè)北方白楊樹(shù)的形態(tài)結(jié)構(gòu)以及查閱相關(guān)文獻(xiàn)的基礎(chǔ)上,提煉出白楊樹(shù)的結(jié)構(gòu)特征,并將其融入到分形L系統(tǒng)的生產(chǎn)式中,建立白楊樹(shù)的生產(chǎn)式,然后應(yīng)用MATLAB軟件對(duì)白楊樹(shù)的生產(chǎn)式規(guī)則進(jìn)行解析,最終在計(jì)算機(jī)上模擬得到白楊樹(shù)模型。通過(guò)模擬發(fā)現(xiàn),使用MATLAB對(duì)分形L系統(tǒng)構(gòu)建白楊樹(shù)模型可以取得良好的可視化效果,為虛擬樹(shù)木建模提供一定的理論基礎(chǔ)。但該模型仍然有一定的不足,今后可以從以下兩個(gè)方面做進(jìn)一步完善:

    (1)將二維平面的樹(shù)木建模轉(zhuǎn)變?yōu)槿S空間中樹(shù)木的建模。

    (2)增加白楊樹(shù)枝干粗度的信息,顏色的信息,以及樹(shù)葉信息,使建立的樹(shù)木模型更加形象逼真。

    [1]石銀濤,程效軍,張鴻飛.基于參數(shù)L—系統(tǒng)的三維樹(shù)木仿真[J]. 同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,39(12):1871-1876.

    [2]韓金姝.分形L系統(tǒng)及其在植物形態(tài)模擬中的應(yīng)用[J]. 德州學(xué)院學(xué)報(bào),2006,22(3):84-87.

    [3]尤鴻霞.使用MATLAB實(shí)現(xiàn)隨機(jī)分形樹(shù)模擬[J]. 南通紡織職業(yè)技術(shù)學(xué)院學(xué)報(bào)(綜合版),2010,10(4):18-20.

    [4]張寶云,黃敏.一種新的分形樹(shù)遞歸算法的研究[J]. 微計(jì)算機(jī)信息(管控一體化),2010,26(15):216-217,228.

    [5]馮莉,王力.基于L—系統(tǒng)的三維分形植物的算法及實(shí)現(xiàn)[J]. 計(jì)算機(jī)仿真,2005,22(11):205-208.

    [6]張樹(shù)兵,王建中.基于L系統(tǒng)的植物建模方法改進(jìn)[J]. 中國(guó)圖像圖形學(xué)報(bào),2002,7(5):457-460.

    [7]高揚(yáng),黎展榮,魏為,等.基于參數(shù)L系統(tǒng)的小葉榕樹(shù)建模方法研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2016,26(7):156-159.

    [8]廖桂平,李錦衛(wèi),歐忠斌,等.基于參數(shù)L—系統(tǒng)的油菜花朵與花序生長(zhǎng)可視化研究[J]. 農(nóng)業(yè)工程學(xué)報(bào),2009,25(4):150-156.

    [9]譚云蘭,賈金原,張晨,等.3D樹(shù)木建模技術(shù)研究進(jìn)展[J]. 中國(guó)圖象圖形學(xué)報(bào),2013,18(11):1520-1528.

    [10]辛龍嬌,徐立鴻,李大威,等.基于參數(shù)L—系統(tǒng)的溫室番茄植株的三維重建[J]. 現(xiàn)代農(nóng)業(yè)科技,2014(3):340-343.

    [11]吳瑞嬌,陳崇成,馬亨冰,等.基于形態(tài)特征的芒果樹(shù)L系統(tǒng)建模及其可視化[J]. 系統(tǒng)仿真學(xué)報(bào),2008,20(S1):344-347,351.

    [12]張權(quán)義,周敏,鄭紅嬋.對(duì)復(fù)平面上Julia集的控制與同步[J].紡織高?;A(chǔ)科學(xué)學(xué)報(bào),2014,27(3): 342-346.

    [13]孔令麒,黎展榮,韋婷,等.基于L系統(tǒng)的樹(shù)木建模與仿真[J]. 科學(xué)技術(shù)與工程,2013,13(32):9536-9540,9548.

    [14]AonoM,KuniiTL.BotanicalTreeImageGeneration[J].IEEEComputerGraphicsandApplications, 1984,4(5):10-34.

    [15]胡秀珍,張建,李淼,等.基于參數(shù)L系統(tǒng)的梨樹(shù)枝干模型三維可視化[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,20(8):86-90.

    [16]劉閣,周?chē)?guó)民,胡林.基于L系統(tǒng)的開(kāi)心形蘋(píng)果樹(shù)枝干模型[J]. 安徽農(nóng)業(yè)科學(xué),2009,37(16):7795-7796,7804.

    [17]AllenMT,PrusinkiewiczP,DejongTM.UsingL-systemsformodelingsource-sinkinteractions,architectureandphysiologyofgrowingtrees:theL-PEACHmodel.[J].NewPhytologist, 2005, 166(3):869-880.

    [18]朱華,姬翠翠.分形理論及其應(yīng)用[M].北京:科學(xué)出版社,2011:54-79.

    [19]李姝敏.常微分方程描述白楊樹(shù)成長(zhǎng)的過(guò)程[J].黑龍江科技信息,2016(32):150.

    (編輯:李曉斌)

    Modeling method of trees based on fractal L system

    Zhang Quanyi

    (CollegeofArtsandSciences,ShanxiAgriculturalUniversity,Taigu030801,China)

    [Objective]Virtual tree plays an important role in the scene visualization. To establish a realistic tree topology models, a tree visualization method based on fractal L system was proposed in this paper, which contained the information of branches and bifurcation angle of the trees.[Methods]First, find the production of fractal L system and initial character string according to the tree structure in real life and produced character string. Second, used the MATLAB software to interpret the character according to the character string to establish geometric of the trees.[Results]Thismethod was used to vividly simulate the topology of the aspen tree and this method had certain portability.[Conclusion]The method of establishing tree modeling based on fractal L system using MATLAB software had certain application and popularization.

    Tree Modeling, Fractal L System, MATLAB

    2017-04-20

    2017-05-20

    張權(quán)義(1987-),男(漢),山西陽(yáng)曲人,助教,碩士,研究方向:計(jì)算機(jī)輔助幾何設(shè)計(jì)

    山西農(nóng)業(yè)大學(xué)青年科技創(chuàng)新基金資助項(xiàng)目(2016018)

    TP391.9

    A

    1671-8151(2017)08-0605-04

    猜你喜歡
    字符串白楊樹(shù)分形
    聽(tīng)故事
    白楊樹(shù)染綠了夏天
    感受分形
    分形之美
    分形空間上廣義凸函數(shù)的新Simpson型不等式及應(yīng)用
    校園里的白楊樹(shù)
    一種新的基于對(duì)稱性的字符串相似性處理算法
    白楊樹(shù)和馬斑草
    基于分形理論的一種新的機(jī)器學(xué)習(xí)方法:分形學(xué)習(xí)
    依據(jù)字符串匹配的中文分詞模型研究
    翁牛特旗| 吉水县| 白玉县| 邢台县| 尖扎县| 潜江市| 黄梅县| 双牌县| 宁化县| 沧州市| 贵州省| 南京市| 甘泉县| 鄱阳县| 长武县| 浦江县| 石首市| 德令哈市| 正镶白旗| 博兴县| 麦盖提县| 洪洞县| 新郑市| 丰都县| 天水市| 大连市| 澄江县| 沙湾县| 天祝| 湘乡市| 绍兴县| 通河县| 穆棱市| 龙泉市| 睢宁县| 呼玛县| 屯留县| 景谷| 金山区| 金寨县| 长治县|