梁瀟
(延安大學 魯迅藝術學院,陜西 延安 716000)
基于分段Bezier曲線的手繪雕刻圖案矢量化
梁瀟
(延安大學 魯迅藝術學院,陜西 延安 716000)
手繪雕刻圖案有著復雜性的特點,傳統(tǒng)的矢量化方法有著一定的局限性,基于以上,本文提出了一種基于分段Bezier曲線的手繪雕刻圖案矢量化方法,探討圖像邊界提取、圖像輪廓分析及矢量化的各個過程和技術要點,旨在為相關研究和實踐提供參考.
分段Bezier曲線;角點;曲線擬合;矢量化技術
在圖像處理和模式識別領域,圖像矢量化技術是重點和難點,國內(nèi)對工程圖紙矢量化研究較多,但對手繪雕刻圖案矢量化的研究相對較少,尤其對于曲線不光滑、易受噪聲干擾的復雜手繪雕刻圖案來說,其曲線擬合計算量較大,擬合精度的控制難度較大,這就給其矢量化技術提出了更高的要求.解決手繪雕刻圖案矢量化問題對于傳統(tǒng)雕刻藝術的傳承和藝術雕刻數(shù)字化的實現(xiàn)等方面有著積極的意義,傳統(tǒng)的矢量化方法有著計算量大、算法不適合的局限性.基于以上,本文以分段Bezier曲線為基礎,探討了手繪雕刻圖案矢量化的實現(xiàn)過程,旨在為相關研究和實踐提供參考.
以手繪雕刻圖案的特點為基礎,將手繪雕刻圖案分為兩類信息,分別是區(qū)域圖案信息和線條圖案信息.對圖案進行預處理,以自適應方法來提取二值圖像區(qū)域和粗線條的邊界,設定5×5的矩陣算子S如下:
利用該算子對二值圖像進行區(qū)域搜索匹配,設搜索到的相應的大小區(qū)域為S,,則其中心點為0,可以得到以下關系式:
在式中,T0代表設定的閾值,則可以認為搜索到的該區(qū)域為區(qū)域圖案.
將區(qū)域中心點作為種子,以八連通算法為基礎,確定與之相關聯(lián)的整個區(qū)域圖案,找出邊界點并置0,找出非邊界點并置1,這樣就可以得到區(qū)域圖案輪廓.從種子點出發(fā)進行搜索和匹配不斷進行圖像處理,從而獲得整個區(qū)域圖案的輪廓.如果區(qū)域不滿足上述關系式,則將此區(qū)域看作為線條圖案,對算子S和閾值T0大小進行調整,這樣就能夠獲得不同屬性的區(qū)域輪廓圖案以及線條圖案[1].
在完成上述操作步驟之后,進行圖像的細化處理工作,可以獲取整個圖像的輪廓邊界,這種圖像邊界提取方法能夠很好地暴露原圖像區(qū)域信息、邊界信息及線條信息,同時為后續(xù)矢量化處理奠定了基礎.
以像素連續(xù)性為依據(jù)劃分圖案輪廓,分為多條獨立邊界,進行邊界逐點跟蹤,提取數(shù)據(jù)點坐標,之后以角點檢測算法為基礎,結合數(shù)據(jù)點坐標,檢測出每一條邊界的角點.之后將邊界劃分為若干條線段,輪廓分段算法主要包括以下幾個步驟:
(1)對圖案二值圖像數(shù)據(jù)矩陣進行處理之后,按照行列進行逐點掃描,看像素值和背景像素是否相同,如果不同則轉到(2),如果相同則判斷下一個像素點,在所有像素點都掃描判斷完成之后,轉到(4).
(2)以方向鏈碼為依據(jù),從得到的點開始來尋找下一個點,如果該點在八鄰域中有≥兩個的目標點,即像素值和背景像素不一致的點,則在數(shù)組中保存這個點,如果只有一個鄰接目標點,則抹去該點,并按照順時針或逆時針順序選取第一個目標點作為下一個檢測點進行檢測,進入到(3).
(3)檢測得到的數(shù)據(jù)沒有鄰接點,在數(shù)組中保存該點之后抹去,插入分隔符.
(4)得到若干條獨立線段,所有的輪廓信息都保存在這些線段中.相較于直接曲線擬合方式,這種分段擬合方法能夠有效降低時間維度的復雜度.
3.1 Bezier曲線控制點的定位
以三次Bezier曲線對數(shù)據(jù)點集合進行表述,數(shù)據(jù)點集合設為P0,P1,P2……Pn,希望曲線與數(shù)據(jù)點之間的距離最小,三次Bezier曲線方程如下:
但是生活總是變化多端。原以為這樣的日子云淡風輕,平淡到無人搭理,穩(wěn)定便是必然。卻不料平淡中也有風云突起。
在公式中,Vk代表控制點集合,k的取值范圍為(0,1,2,3),假定P0和Pn是曲線通過的兩個點,則可以得到P0=V0,PN=VN.對數(shù)據(jù)點到曲線的偏移量進行定義,表示出一段曲線的總偏移量.將一個點集擬合為三次Bezier曲線Q(t,V),為了保證曲線與數(shù)據(jù)點之間的距離最小,求出D(t,V)的極小值,則可以計算出控制點V1和V2的值[2].
3.2 分段擬合與光滑連接
一般來說,利用一條Bezier曲線對一條復雜線段擬合的過程中,其數(shù)據(jù)點數(shù)量是達不到要求的,而在增加曲線控制點的過程中,則會導致Bezier曲線的階次提升,這就大大增加了計算量,提升了計算難度[3].對于手繪雕刻圖案來說,其大多有著復雜的線段,基于以上,本文決定采用三次Bezier樣條曲線來進行描述,擬合曲線的過程中,通過設定的閾值來對曲線擬合精度進行控制,具體算法步驟如下:
(1)以圖像大小和分辨率為基礎,結合經(jīng)驗來獲取總偏移量閾值T1,對T1進行初始化,則可以將第一條線段數(shù)據(jù)點集合提取出來.
(2)根據(jù)一段曲線總偏移量公式計算出每一段曲線的總偏移量D(t,V),將D(t,V)與T1進行對比,如果D(t,V)較大,則根據(jù)數(shù)據(jù)點到曲線偏移量定義公式來對該段每個數(shù)據(jù)點與曲線的偏移量di進行計算,求出di的最大值對應的數(shù)據(jù)點,將其作為新的連接點,以新的連接點為基礎將線段細分,分為兩端線段,對數(shù)據(jù)點集進行保存,對新的連接點進行記錄,之后轉到(2)中,進一步細分,并記錄數(shù)據(jù).如果D(t, V)較小,則不需要再進行細分步驟,直接轉到(3)中.
(3)對此線段控制點進行計算之后可以得到一條擬合曲線,轉到(4).
(4)對下一條數(shù)據(jù)點集進行提取,轉到(2)中,如果擬合完畢圖像中的所有線段,則轉入到(5)的結束環(huán)節(jié).
(5)結束環(huán)節(jié)中,利用分段三次Berzier曲線進行擬合,曲線段Qi-1(t)連接點Pj處切線矢量為Qi-1(1)=Vi-1,2-Pj.曲線段Qi(t)連接點Pj處的切線矢量為Qi90)=Vi,1-Pj[4].要保證兩個曲線段在Pj點實現(xiàn)C1連續(xù)光滑連接,則需要調整控制點Vk-1,2和Vk,1,以此來保證Vk-1,2和Vk,1與Pj在同一條直線之上,本文以相對Pj點旋轉控制點為基礎,獲取調整后的點V'k-1,2和V'k,1.
本文對手繪雕刻圖案矢量化的實驗在Matlab6.5中實現(xiàn),以一個由1156個點的曲線為例,其圖像大小為289×244,利用坐標跟蹤和角點提取算法,能夠得到20個角點,并將曲線進行分割,分割為20條線段進行上述分段擬合算法,實現(xiàn)各個線段擬合,可以得到84個曲線連接點,之后以調整算法為基礎,保證曲線的光滑,在分段擬合和調整完成之后,將總偏移量閾值設為10,經(jīng)過擬合之后的曲線能夠對原線段的信息進行真實、全面、有效的反映,視覺誤差符合要求[5].
綜上所述,手繪雕刻圖案有著復雜多變、曲線眾多的特點,本文以分段三次Bezier曲線來進行擬合,利用自適應邊界提取方法來提取區(qū)域圖案和線條圖案的邊界,得到的圖像輪廓能夠充分反映出原圖像的幾何特征.在圖案矢量化的過程中,保證曲線段與最小偏移量擬合的光滑連接,實驗證明,基于分段Bezier曲線的矢量化方法能夠較好的實現(xiàn)中國傳統(tǒng)手繪雕刻圖案的矢量化,矢量化速度和效果都符合要求,能夠實現(xiàn)復雜手繪雕刻圖案的數(shù)字化加工,對后續(xù)3D建模也有著積極的意義.
〔1〕陳宇拓,韋冰,邱自華,丁燦劍.基于分段Bezier曲線的手繪雕刻圖案矢量化[J].計算機工程,2008(09):208-210.
〔2〕韋冰.手繪復雜雕刻圖案的矢量化研究[D].中南林業(yè)科技大學,2007.
〔3〕沈惠芬.圖像區(qū)域的曲線描述及應用研究[D].江南大學, 2014.
〔4〕苗江波.基于圖像矢量化的機械手繪圖的研究[D].哈爾濱工業(yè)大學,2008.
〔5〕安亞敏.新疆維吾爾族手工地毯圖案矢量化技術研究[D].新疆大學,2013.
TP391.41
A
1673-260X(2017)02-0045-02
2016-12-11
省級課題2015年福建省高校藝術設計繁榮計劃類項目(4CX14108G)