譚騰騰 楊長強
摘 要:Petri網(wǎng)是一種用來描述分布式系統(tǒng)的模型,不僅可描述系統(tǒng)結(jié)構(gòu),也能模擬系統(tǒng)運行。為提高計算機仿真水墨擴散真實性,提出基于Petri網(wǎng)的水墨擴散算法,建立水墨擴散仿真模型,并在宣紙模型上模擬水墨擴散動態(tài)效果。首先根據(jù)水墨粒子擴散條件等因素分析水墨擴散的不同情況;然后建立優(yōu)先級函數(shù),為每個托肯添加屬性,根據(jù)托肯屬性判斷其優(yōu)先級序列并映射到水墨擴散模型中,即為水墨粒子擴散優(yōu)先級序列。實驗結(jié)果表明,該算法可增強水墨擴散隨機性,實現(xiàn)水墨在宣紙上真實的暈染效果,且通過模型模擬可提前設計水墨作品布局規(guī)劃,預測作品最終實現(xiàn)效果,有效避免作品繪制過程中可能發(fā)生的問題。
關(guān)鍵詞:水墨粒子;擴散算法;Petri網(wǎng)建模;優(yōu)先級;擴散區(qū)域
DOI:10. 11907/rjdk. 191902 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP312文獻標識碼:A 文章編號:1672-7800(2019)009-0088-05
Design and Implementation of Ink Diffusion Algorithm Based on Petri Nets
TAN Teng-teng,YANG Chang-qiang
(College of Computer Science and Engineering, Shandong University of Science and Technology, Qingdao 266590, China)
Abstract:Petri net is a model used to describe distributed systems. It can not only describe the structure of the system, but also simulate the operation of the system. In order to improve the authenticity of computer simulation of ink diffusion, an algorithm of ink diffusion based on Petri net is proposed. The simulation model of ink diffusion is established and the dynamic effect of ink diffusion is simulated on Xuan Paper model. Firstly, the different results of ink diffusion are analyzed according to the diffusion conditions of water particles and ink particles. Then a priority function is established to add attributes to each token and determine its priority sequence according to its attributes. Then the sequence is mapped to the ink diffusion model and thus becomes the priority sequence of ink particle diffusion. The experimental results show that the proposed algorithm can enhance the randomness of ink diffusion and achieve the halo effect of real ink on rice paper. Moreover, through model simulation, the layout of ink and wash works can be planned and designed well in advance, the final effect of the works can be predicted, and the possible shortcomings in the actual drawing process can be effectively avoided.
Key Words:ink particles; diffusion algorithm; Petri net modeling;priority; diffusion area
0 引言
水墨畫薈萃了中華民族文化精髓,是中國傳統(tǒng)藝術(shù)的精華,屬于中國畫的一個重要分支,長期以來在中國繪畫史上占據(jù)著非常重要的地位。
水墨畫是一種極具中國特色的繪畫藝術(shù),從工具和材料上來看,繪畫需使用毛筆、宣紙和墨,注重虛實結(jié)合,意境優(yōu)美,能將水、墨和宣紙屬性特征很好地體現(xiàn)出來,形成干濕濃淡各不相同的水墨調(diào)和情況與水墨在宣紙上擴散滲透的藝術(shù)效果。中國水墨畫經(jīng)過幾千年歷史長河的洗禮,形成了許多風格迥異的藝術(shù)派系,其技法各不相同,同時在繪制過程中又融合了畫家大量情感因素,使作畫風格變換多樣的中國水墨畫很難與嚴謹規(guī)范的計算機技術(shù)結(jié)合。因此需對水、墨、宣紙等繪畫材料的特征進行分析,確定水墨擴散條件及其相互作用關(guān)系,以此加深水墨畫與計算機技術(shù)之間的聯(lián)系。
隨著經(jīng)濟的飛速發(fā)展,公眾對精神文化的需求越來越強烈,極具中國特色的水墨畫和書法成為豐富公眾精神生活不可或缺的重要內(nèi)容。近年來計算機圖形學技術(shù)飛速發(fā)展,水墨擴散仿真研究的內(nèi)容也愈加廣泛,如焦景山等[1]提出基于淺水流動模型的二維紙纖維結(jié)構(gòu)流體仿真模型,該模型通過一個時間推進引擎,不斷更新、查看紙細胞中水墨粒子是否能與相鄰紙細胞中的水墨粒子發(fā)生流動或轉(zhuǎn)移,將能轉(zhuǎn)移的水墨粒子進行轉(zhuǎn)移,直至紙細胞及其相鄰紙細胞中所有水墨粒子均無法再轉(zhuǎn)移流動。該模型雖能基本實現(xiàn)擴散效果,但由于其擴散效果規(guī)律性太強,無法實現(xiàn)水墨在宣紙上真實的暈染效果;石永鑫等[2]提出基于粒子系統(tǒng)的仿真算法,該方法需先提取邊界,對像素進行邊緣檢測,獲得二值化圖像后再進行邊緣提取,完成粒子初始化后進行偽布朗運動,直至粒子運動全部停止。該方法可增強水墨擴散隨機性,但由于在實際應用過程中會出現(xiàn)許多不同的隨機效果,因此需要提前歸納出許多參數(shù),計算量較大。
本文在實現(xiàn)計算機水墨擴散仿真的基礎上,提出基于Petri網(wǎng)的水墨擴散模型,首先根據(jù)水墨粒子擴散條件等因素分析水墨擴散的不同情況。由于水墨粒子在位于擴散中心區(qū)域和擴散邊緣區(qū)域時,擴散情況有所不同,所以建立Petri網(wǎng)系統(tǒng)描述細節(jié),當水墨粒子超過當前紙細胞最大容量時,多余水墨粒子轉(zhuǎn)移到相鄰紙細胞中,若水墨粒子沒有達到紙細胞最大容量,則水墨粒子不轉(zhuǎn)移;然后再根據(jù)宣紙模型內(nèi)分布的所有紙細胞情況建立系統(tǒng)的Petri網(wǎng)模型,模擬完整的水墨擴散情況。
本文構(gòu)建的Petri網(wǎng)模型可大幅增強水墨擴散動態(tài)性和隨機性,并正確模擬出水墨粒子動態(tài)擴散過程,使水墨動態(tài)擴散無論在形式上還是內(nèi)容上均得到極大豐富。
1 Petri網(wǎng)概述
Petri網(wǎng)是一種用來描述分布式系統(tǒng)的模型,它不僅可描述系統(tǒng)結(jié)構(gòu),也能模擬系統(tǒng)運行[3]。
定義6優(yōu)先級函數(shù)。由于每一個托肯均有屬性,因此根據(jù)托肯屬性判斷其優(yōu)先級,建立優(yōu)先級序列,優(yōu)先級越大,托肯越先執(zhí)行。
2 水墨擴散條件分析
2.1 水粒子擴散條件
當紙細胞中含有水粒子,但紙細胞不飽和時,周圍的水粒子會向該紙細胞中擴散;當紙細胞中含有水粒子,且紙細胞中水粒子飽和時,該紙細胞中的水粒子會向周圍紙細胞擴散,周圍紙細胞中的水粒子也會向該紙細胞中擴散;如此循環(huán)往復,直至水擴散完成后,形成最終的擴散效果[5]。
2.2 墨粒子擴散條件
墨粒子只有在水粒子的帶動作用下才能進行擴散運動,否則在僅有墨粒子的情況下無法擴散,墨粒子擴散僅在紙細胞中有水粒子的情況下發(fā)生。
當紙細胞中含有墨粒子,但紙細胞不飽和時,周圍的墨粒子會向該紙細胞中擴散;當紙細胞中含有墨粒子,且紙細胞中墨粒子飽和,但由于墨粒子的積墨作用,使紙細胞周圍仍然粘附有多余的墨粒子時,該紙細胞粘附的墨粒子會向周圍紙細胞中擴散;當紙細胞中含有墨粒子,且紙細胞中墨粒子正好飽和時,該紙細胞中的墨粒子會向周圍紙細胞中擴散,周圍紙細胞中的墨粒子也會向該紙細胞中擴散[6]。如此循環(huán)往復,直至水墨擴散完成后,形成最終的擴散效果。
2.3 擴散中心區(qū)域水墨粒子變化
假設紙細胞最大水墨粒子容量為n,此時庫所p0內(nèi)標識數(shù)為n+m,比紙細胞最大水墨粒子容量多,將權(quán)值設置為n+1,則表明當庫所p0中標識數(shù)大于紙細胞中最大水墨粒子容量時,多余水墨粒子可被轉(zhuǎn)移至其相鄰紙細胞中,此時t0發(fā)生[7]。
t0發(fā)生使得:①p0中剩余標識m-1加上n-m+1成為n,為紙細胞可容納的最大水墨粒子容量;②p1庫所中的標識數(shù)變?yōu)閙,此時,位于中心位置的水墨粒子全部轉(zhuǎn)移完畢。
如圖3、圖4所示,假設紙細胞內(nèi)最大水墨容量為7,此時庫所p0的標識數(shù)為10,大于紙細胞的最大容量,權(quán)值為8,此時t0可發(fā)生,t0發(fā)生后,庫所p0內(nèi)標識數(shù)變?yōu)?,p1內(nèi)標識數(shù)變?yōu)?。此時說明紙細胞正好達到飽和,多余水墨粒子轉(zhuǎn)移到相鄰紙細胞中[8]。
2.4 擴散邊緣水墨粒子變化
(1)若m>0,則水墨粒子變化如2.3所述。
(2)若m≤0,則t不能發(fā)生,標識留在庫所p0中,即水墨粒子仍留在原紙細胞中,不向外轉(zhuǎn)移[9],如圖5所示。
3 水墨擴散模型構(gòu)建
3.1 系統(tǒng)流程
如圖6所示,當紙細胞中含有水粒子時,首先判斷紙細胞中的水粒子是否飽和,若飽和,則向周圍紙細胞擴散,同時該紙細胞中的水粒子有可能不再飽和,此時周圍紙細胞的水粒子會向當前紙細胞擴散,如此循環(huán)往復,直到所有紙細胞中水粒子均無流動可能;若紙細胞不飽和,則周圍紙細胞中水粒子向當前紙細胞流動,直到紙細胞水粒子飽和,此時,該紙細胞中的水粒子也可能向周圍紙細胞流動,直至所有紙細胞中水粒子都無法再流動,擴散活動結(jié)束。
如圖7所示,當紙細胞中含有墨粒子時,首先判斷紙細胞中的墨粒子是否飽和,若飽和,則向周圍紙細胞擴散,同時該紙細胞中的墨粒子有可能不再飽和,此時周圍紙細胞墨粒子會向當前紙細胞中擴散,如此循環(huán)往復,直到所有紙細胞墨粒子均無流動可能。若紙細胞不飽和,則周圍紙細胞墨粒子向當前紙細胞中流動,直到紙細胞墨粒子飽和,此時,該紙細胞中的墨粒子也可能向周圍紙細胞流動,直至所有紙細胞墨粒子都無法再流動,擴散活動結(jié)束。需注意墨粒子只有依附于水粒子才能進行流動,否則僅有墨粒子無法進行擴散運動。
3.2 Petri網(wǎng)模型
假設有A、B、C 3個紙細胞,p0、p1、p2分別代表這3個紙細胞的狀態(tài)[10],t0、t1、t2表示判斷當前紙細胞是否屬于擴散中心區(qū)域紙細胞,p3、p4、p5表示這3個紙細胞所屬區(qū)域,t3則代表這3個紙細胞中是否含有水墨粒子,p6表示紙細胞中不含有水墨粒子,p7表示紙細胞中含有水墨粒子,t4表示判斷紙細胞中水墨粒子是否飽和,p8表示飽和,p9表示不飽和[11]。無論當前紙細胞水墨粒子是否飽和,均會向四周擴散,且四周的水墨粒子也會向當前紙細胞擴散。因此p10表示當前紙細胞水墨粒子向四周擴散,p11表示四周水墨粒子向當前紙細胞擴散,t6表示擴散,最終p12和p13代表擴散結(jié)果,即擴散完成后紙細胞是否飽和[12]。
3.3 系統(tǒng)可達圖
初始標識M0下,t0、t1、t2發(fā)生得到M1、M2、M3;在標識M1下變遷t1、t2發(fā)生得到M4、M5;在標識M2下變遷t0、t2發(fā)生得到M4、M6 ;在標識M3下變遷t0、t1發(fā)生得到M5、M6;在標識M4、M5、M6下變遷t0、t1、t2發(fā)生得到M7,可判斷當前紙細胞是否屬于擴散中心區(qū)域紙細胞[13];在標識M7下變遷t3發(fā)生得到M8,可判斷這3個紙細胞是否含有水墨粒子;在標識M8下變遷t4發(fā)生得到M9,可判斷紙細胞中水墨粒子是否飽和[14];在標識M9下變遷t5發(fā)生得到M10,水墨粒子向四周擴散,四周的水墨粒子也向當前紙細胞中擴散;在標識M10下變遷t6發(fā)生得到M11,得到最終擴散結(jié)果[15]。
4 實驗結(jié)果
本文方法的實驗結(jié)果與真實水墨擴散對比如圖10、圖11所示,其中,圖10為真實墨滴在宣紙上的擴散效果,圖11為根據(jù)本文方法實現(xiàn)的計算機仿真墨滴擴散效果,對比可知,本文方法實現(xiàn)的水墨擴散效果較為真實。
本文在研究過程中首先根據(jù)水墨粒子擴散條件分析在相鄰紙細胞中水墨粒子擴散情況,并構(gòu)建Petri網(wǎng)模型,然后根據(jù)整個宣紙模型內(nèi)分布的所有紙細胞情況建立系統(tǒng)的Petri網(wǎng)模型以模擬完整的水墨擴散情況。本文研究的水墨擴散方法操作簡單,易于實現(xiàn),能正確模擬出水墨粒子轉(zhuǎn)移情況和邊緣暈染現(xiàn)象,可為后續(xù)計算機模擬水墨作品工作提供有效支持。
5 結(jié)語
本文基于Petri網(wǎng)建立的水墨擴散模型,可正確模擬水墨粒子動態(tài)擴散效果。首先根據(jù)水墨粒子不同的擴散條件,制定系統(tǒng)流程圖,具體分析水墨擴散情況;再根據(jù)墨滴不同的擴散區(qū)域,構(gòu)建Petri網(wǎng)系統(tǒng),描述水墨粒子轉(zhuǎn)移情況;最后建立整體的Petri網(wǎng)模型,并設計系統(tǒng)可達圖,對水墨擴散進行仿真實驗。實驗結(jié)果表明,本文建立的Petri網(wǎng)模型極大增強了水墨擴散動態(tài)性和隨機性,可正確模擬出水墨粒子動態(tài)擴散過程,使水墨動態(tài)擴散無論在形式上還是內(nèi)容上均得到極大的豐富。
在以后的研究工作中,可以建立宣紙模型,并在宣紙模型中增加紋理特征,更加真實地模擬出水墨在宣紙上的擴散效果。同時,在系統(tǒng)建模中添加水墨粒子擴散速度、積墨作用、宣紙暈染速度、墨滴數(shù)量等條件因素,并利用分層建模技術(shù)建立水墨擴散循環(huán)模型,使水墨擴散模型更加完善,操作更加方便。
參考文獻:
[1] 焦景山,孫濟洲. 中國水墨畫效果的圖形仿真[C]. 數(shù)字化藝術(shù)論壇,2002:190-204.
[2] 石永鑫,孫濟州,張海江,等. 基于粒子系統(tǒng)的中國水墨畫仿真算法[J]. 計算機輔助設計與圖形學學報,2003,15(6):667-672.
[3] 吳哲輝. Petri網(wǎng)導論[M]. 北京:機械工業(yè)出版社,2006.
[4] 袁崇義. Petri網(wǎng)原理[M]. 北京:電子工業(yè)出版社,1998.
[5] 陳鋒,張文俊,余穎. 仿真水墨擴散效果的元胞自動機改進模型[J]. 中國圖象圖形學報,2007,12(4):740-745.
[6] 李大錦,白成杰. 水墨畫筆觸的快速渲染算法及其應用[J]. 計算機輔助設計與圖形學學報,2014,26(3):356-363.
[7] 石春玲,杜玉越. 基于邏輯Petri網(wǎng)的物流配送系統(tǒng)建模[J]. 系統(tǒng)仿真學報,2007,19(1):114-123.
[8] 代思婕. 基于Petri網(wǎng)的菜鳥驛站取件流程優(yōu)化[J]. 物流與供應鏈,2018,17(6):163-164.
[9] 王列偉. 基于Petri網(wǎng)的道路交叉口建模方法及比較研究[J]. 計算機工程與應用,2018,54(14):211-216.
[10] 王聘,劉偉,杜玉越. 基于邏輯數(shù)據(jù)Petri網(wǎng)的業(yè)務過程建模與分析[J]. 計算機集成制造系統(tǒng),2017,23(5):921-930.
[11] 許榮斌,石軍,張鵬飛,等. Petri網(wǎng)的映射變遷關(guān)系相似性度量[J]. 浙江大學學報,2017,51(6):1205-1213.
[12] 曹斌,王佳星,范菁,等. 基于Petri網(wǎng)的流程間元素映射方法[J]. 軟件學報,2015,26(3):474-490.
[13] 秦江濤. 基于Petri網(wǎng)的生產(chǎn)系統(tǒng)建模與分析研究[J]. 上海理工大學學報,2017,39(4):358-367.
[14] 齊亞峰,孫濟州,商毅. 中國水墨畫的基本藝術(shù)特征及其計算機仿真實現(xiàn)[J]. 中國圖象圖形學報,2003,8(5):562-566.
[15] 劉曉崇,趙凡,張文俊. 基于真實場景的水墨風格圖像自動生成方法[J]. 電視技術(shù),2014,38(15):249-252.
(責任編輯:江 艷)