鄧學雄, 李 牧, 章 文, 王脘卿
(華南理工大學設計學院,廣東 廣州 510006)
在計算機藝術中引入國畫的計算機仿真已有不少研究,如水墨畫仿真,美國麻省理工學院媒體實驗室的 S.Strassmann[1]基于平面筆刷的模擬方式,提出由筆劃、筆刷、蘸墨和紙張4個基本部分組成的虛擬毛筆模型。Guo和Kuii[2]上嘗試加上了墨擴散效果的模擬。J.Lee[3]認為水墨畫模擬研究應既能看到生成的結果,又能感受到實際作畫的過程中毛筆的運動和筆毛的形變。香港科技大學的Chu和Tai[4-5]提出的一種三維毛筆模型,使用者就像握著真實的毛筆進行書畫創作。
張志堯等人在“一筆多色”仿真方面進行了研究[6-7],提出了CIE-Lhs混合算法等多種色彩混合算法的計算思路,可以較真實地模擬出現實顏料混合的結果。但該研究只局限于“中鋒”筆法,還未建立較為完善的筆法模型。
在國畫技法中,筆鋒的運用可分為中、側、逆、拖、散等數種,一般以中鋒為主,輔以側逆散拖。本研究是在“中鋒”筆法仿真[7]的基礎上,就“側鋒”、“智能筆法”方面作了進一步的探討。
當一根毛筆同時沾有不同的墨水和顏料,墨水和顏料將會在筆尖至筆腹形成一定的分布規律。當毛筆在紙上畫過留下痕跡,該筆跡也會受顏料在毛筆中分布的影響,顏色有一定的分布規律。因而我們將毛筆的筆鋒模型抽象成由若干特性組成的數據結構。
本研究的模擬輸入設備是數位板 Intuos3 PTZ-431W,配有壓感筆,如圖 1所示。筆法模擬的基本思想是:從采集壓感設備定時傳輸給電腦的離散信息開始,首先生成單個筆跡的特征點數組,并確定筆跡的各項參數;再通過MFC GDI(函數庫)完成初始筆道的繪制;然后根據用戶采用的筆法,在ShapeSwitch算法中計算子筆道的參數,疊加在初始筆道上。

圖1 筆法的模擬
1)特征點:特征點的屬性有坐標值、粗細值、壓力值和角度值等參數。子筆道的生成是通過按照特征點集合中的特征點依次連接實現的,分別是特征點1、2、3 … n,如圖2所示。
2)子筆道 若筆尖和筆腹的顏色不同,筆跡會出現一筆多色的效果。通過若干個子筆道按一定順序疊加來實現筆跡色階的變化。子筆道的屬性有:特征點集合、序數、筆道樣式和筆道顏色。
3)毛筆的規格 為了模擬筆毛的壓力變化,本系統采用圓錐模擬筆毛在靜止狀態下的幾何形狀,同時用圓形來模擬筆尖與紙張接觸時的筆毛剖面。毛筆規格的屬性有:筆毛根部平面半徑、筆毛長度。
4)筆跡的顏色 為了模擬筆跡中的色階變化,設定一個筆跡的顏色的數據結構。筆跡顏色的屬性有:筆腹顏色、筆尖顏色、筆腹顏色占筆跡的百分比、筆尖顏色占筆跡的百分比,這4個參數都是通過對話框進行設定的。

圖2 特征點連線
1)輸入信息的讀取和記錄
通過Wintab1.1讀取和記錄壓感筆在觸到數位板時的信息Packet。Packet消息為一系列離散特征點,存放在筆鋒模型數據結構的特征點集合中,除了記錄坐標信息外,還包括壓力參數和角度參數。
2)筆跡粗細的計算
為了保持系統運算的速度,采用基于中鋒筆法的筆跡寬度計算公式來表達側鋒筆法的筆跡寬度,通過對話框直接設定數值。
3)筆跡的顯示
筆跡的顯示是根據特征點集合中,特征點的位置和力度值(壓力)畫出粗細漸變、位置連續的小線段。只要小線段的長度足夠短,粗細變化足夠緩慢,就可以根據用戶壓感板輸入的位置和力度(壓力)繪制出靈動而平滑的筆跡。
將多個粗細和顏色漸變的筆道按一定位置疊加,實現一筆多色效果。
2.2.1 疊加筆道數目的確定
筆跡顏色變量:筆腹所占的百分比midPercent,用來記錄筆腹筆道(疊加的最上層筆道)的粗細占整個筆道(疊加最底層筆道)的百分比,該參數由用戶選定。那么最上層筆道中每點的畫筆大小即等于初始筆跡中每點的畫筆大小乘以midPercent。
假設strokeFirst筆道中最粗的地方筆畫大小為 maxWeight,則在該點 strokeLast的筆畫大小為maxWeight* midPercent,兩個筆畫大小的差值為maxWeight*(1- midPercent),達到最大值。為了使一筆多色筆道的顏色過渡達到平滑效果且計算效率達到最優,在 strokeFirst與 strokeLast之間添加maxWeight*(1- midPercent)-1個筆道,這使得在多色筆道最粗的位置,順序疊加的筆道之間差值接近1,達到最高的分辨率。
2.2.2 疊加子筆道的參數設定
在筆鋒模型中,筆跡都是由形狀顏色相似的若干個子筆道按照一定方式疊加。一個一筆多色筆道共由n個子筆道組成,則最上層筆道的index值為 n-1。最外層筆道的顏色為筆尖顏色,最內層筆道的顏色為筆腹顏色。基于色彩混合模型[6],假設每一個子筆道的顏色由筆腹顏色和筆尖顏色混合得到。子筆道中的特征點集合主要是用于表示子筆道的位置以及形狀。
1)中鋒運筆時筆尖始終保持在繪制線條的中間,筆尖和筆腹處在完全一致的運筆路徑上,顏色是沿著運筆路徑向筆觸兩邊均勻擴散,所以不存在筆尖和筆腹所含色料濃度的不同而導致筆觸的顏色色階變化。因此,中鋒筆法的一筆多色模擬,是按規律漸進地改變子筆道的粗細,然后依照父筆道的特征點位置依次疊加來實現色階由中間向兩邊漸變,如圖3所示。

圖3 中鋒筆法的子筆道疊加
2)側鋒運筆時筆尖和筆腹不在一個運行路徑上,由于筆尖和筆腹所含色料濃度不同,所以側鋒畫出的筆觸就有色階層次的區別。各個子筆道的疊加位置逐漸向筆尖部分偏移,以實現顏色由筆尖向筆腹的過渡。側鋒筆法所產生的一筆多色效果,色階是由筆跡的一側向另外一側變化的。因此,我們要通過ShapeSwitch算法改變各個子筆道的特征點集合,將子筆道的特征點坐標沿著父筆道特征點的法向量方向偏移,使各個子筆道一側的邊緣重合在一起,實現色階的漸變,如圖4所示。

圖4 側鋒筆法的子筆道疊加
子筆道的生成是通過特征點依次連接實現的,由于子筆道是按筆跡的邊緣重合,則各個子筆道的都要向重合邊緣的一側偏移。但無論采用何種疊加方式,子筆道的起點、終點的坐標與父筆道是相同的。下面討論第2點到第n-1點的情況,計算子筆道各個特征點的偏移方向。
(1)沿斜線方向行筆
沿斜線4個不同方向行筆時,會產生點、提、勾、撇、短撇、捺等筆劃。最典型的特征就是相鄰特征點之間會存在著位移變化,特征點之間的x坐標和y坐標不相同。
設映射 f :I→R2,t | → X ( t) = {x1( t),x2(t )}是由父筆道特征點連接而成的曲線參數。
angle - n ormalk是第k個特征點偏移方向的弧度值,但不反映過Line1所在的象限,如圖5所示。所以還應該討論Line1所在的象限,然后對算出的 a ngle - n ormalk值作出修正。修正后,可以算出第k個特征點的偏移向量Nk為Nk={cos(a ngle - normalk) ,sin(a ngle - normalk)}

圖5 側鋒筆道疊加示意圖
(2)沿水平或豎直方向行筆
沿水平或豎直方向行筆時,會產生橫、豎兩種筆劃。最典型的特征就是相鄰特征點之間會存在著位移變化,沿水平方向行筆時,特征點之間的x坐標不相同、y坐標相同;沿豎直方向運筆時,特征點之間的x坐標相同、y坐標不相同。
angle - n ormalk值經過修正后,我們可以算出第k個特征點的偏移向量Nk為

(3)無偏移
這是一種特殊情況,即壓感筆沒有移動,通常在頓筆時發生。這種情況下,相鄰特征點之間沒有位移。
本系統的模擬輸入設備是數位板和壓感筆,如圖1所示。利用壓感筆的壓力參數(pressure)和角度參數(Angle_plane)來模擬毛筆筆跡粗細、顏色的滲透與擴散。通過感應壓感筆與數位板之間傾斜角度的變化,實現“中鋒”和“側鋒”的實時切換。從而真實自然地實現國畫技法的模擬效果。
1)中鋒:“筆”與“紙”垂直接觸,如圖1(a)所示。筆尖彎曲部分的長度與壓力成正比,此時所產生的筆跡寬度為筆毛彎曲部分的寬度在紙面上的投影。而跟據投影原理可知,該時刻筆毛在紙平面的投影是沒有失真的。所以,當中鋒運筆時,采用的圓形的半徑的變化范圍應該在Rstroke之內。中鋒運筆所產生的筆跡的粗細,可以通過壓力參數控制筆毛與紙張接觸面的圓形半徑大小來實現。圖6為中鋒筆法的一筆多色的模擬效果圖。

圖6 中鋒筆法的一筆多色效果
2)側鋒:“筆”與“紙”接觸時保持一定的夾角,如圖1(b)所示。筆毛彎曲部分的尺寸與壓力成正比,該時刻筆毛彎曲形變部分的長度在起作用。而由于筆桿與紙平面存在一定夾角,彎曲形變了的筆毛也不會與紙平面完全接觸,只存在部分接觸。該時刻筆毛彎曲部分的長度在紙平面上的投影無法真實的反映筆跡的寬度,存在失真。所以,當側鋒運筆時,采用的圓形的半徑的變化范圍應該在筆毛長度Hstroke之內。側鋒運筆所產生的筆跡的粗細,可以通過特征點中的壓力值、夾角值和筆毛彎曲長度在紙平面的投影值來改變。圖 7為側鋒筆法的一筆多色效果圖。

圖7 側鋒筆法的一筆多色效果
3)智能筆法:運筆時既有“中鋒”,又有“側鋒”,系統通過壓感筆與數位板之間傾斜角度的變化,自動實現“中鋒”和“側鋒”的實時切換。圖8中部分筆法即為智能筆法的一筆多色效果。

圖8 筆法效果圖
圖9是應用本研究的筆法系統書寫具有一筆多色效果的“秋實圖”。從圖 8的筆法效果分析圖可以見,在“秋”字中的撇,執筆時采用的是中鋒筆法;在“圖”字的豎,執筆時筆桿與紙面之間存在一定的傾斜角,即側鋒筆法;在“秋”字右側的撇、“圖”字右側的橫折鉤等筆劃中采用了智能筆法(一筆中包含中鋒和側鋒筆法)。圖10中各個花瓣通過運用不同的筆法而顯得姿態各異,再加上蘸色的濃度不同從而使顏色深淺漸變,自然地體現在花瓣上。圖11通過采用不同的筆法,表達出葉片和琵琶的多種色彩狀態。

圖9 一筆多色效果圖(1)

圖10 一筆多色效果圖(2)

圖11 一筆多色效果圖(3)
本課題主要研究側鋒筆法和智能筆法的一筆多色效果的計算機模擬,力求實現多色筆跡的顏色根據筆法的變化真實自然過渡。運用筆鋒模型,將多個子筆道進行疊加,避免了逐點計算筆道中的顏色的復雜過程,提高了運算速度。針對國畫筆法多變以至于色彩變化豐富的問題,提出了智能筆法的概念和實現方法。應用基于中鋒筆法和側鋒筆法相組合的智能筆法模型,實現了中鋒和側鋒筆法的實時“自動”切換,進一步豐富了中鋒一筆多色的模擬研究[7]。然而國畫繪畫是一個復雜而主觀的創作過程,以上關于國畫技法的計算機模擬技術只是初步的探討,還有不少方面需要進一步的研究和改進。
[1] Strassmann. Hairy brushes [C]//Proceedings of SIGGRAPH’86,1986: 225-232.
[2] Guo Qinglian,Tosiyasu L K. Modeling the diffuse painting of ‘sumie’ [C]//Proceedings of the IFIP WG5.10 Working Conference,Tokyo,1991: 329-338.
[3] Lee J. Simulating oriental black-ink painting [J]. IEEE Computer Graphics & Application,1999,19(3):74-81.
[4] Chu N S H,Tai C L. An efficient brush model for physical-based 3D painting [C]//Proceedings of the 10thPacific Conference on Computer Graphics and Applications (PG’02),2002: 413-421.
[5] Chu N S H,Tai C L. Real-time painting with an expressive virtual Chinese brush [J]. IEEE Computer Graphics and Applications,2004,24(5): 76-85 .
[6] Deng Xuexiong,Wen Zhang,Zhang Zhiyao.Computer simulation of CIE-Lhs color model in multi-color effect [C]//Proceedings 2009 IEEE International Conference on Computer-Aided Industrial Design & Conceptual Design,Wenzhou CHINA,2009:1321-1324.
[7] 鄧學雄,章 文,張志堯,等. 國畫一筆多色的計算機模擬[J]. 工程圖學學報,2010,31(2): 134-138.