摘要:針對傳統(tǒng)新疆維吾爾族手工地毯圖案手繪設(shè)計工序繁瑣、耗時多等問題,以及現(xiàn)有矢量化軟件的局限性,提出了一種交互式的彩色圖案矢量化方法。首先根據(jù)顏色差異進行圖案基元分割以及輪廓提取,然后選取基元輪廓上可以記錄其特征的角點,最后運用三次參數(shù)樣條曲線對角點進行擬合。實驗測試表明,該方法在保持維吾爾族手工地毯傳統(tǒng)圖案紋樣的基礎(chǔ)上,提高了設(shè)計效率,增加了地毯圖案設(shè)計的多樣性。
關(guān)鍵詞:矢量化;基元分割;輪廓提取;角點檢測;曲線擬合
DOIDOI:10.11907/rjdk.161022
中圖分類號:TP319
文獻標識碼:A 文章編號:1672-7800(2016)005-0163-03
0 引言
圖像矢量化是指將點陣圖像轉(zhuǎn)換為矢量圖像的過程,其原理是從組成點陣圖像的像素點中識別出點、線、圓、弧、多邊形等,通過數(shù)學(xué)公式計算獲得這些識別出來的幾何圖形以實現(xiàn)圖像格式的轉(zhuǎn)換。矢量化技術(shù)日趨成熟,特別是工程圖紙矢量化技術(shù)已經(jīng)廣泛應(yīng)用,如Acme TraeART.v3.5矢量化軟件,可以快速將各種類型的工程圖紙矢量化。Algolab photo vector是一款功能強大的矢量化軟件,可以快速而精確地將點陣圖像轉(zhuǎn)換為矢量圖像[1-2]。以上為比較成熟的矢量化軟件,主要應(yīng)用于地理信息系統(tǒng)、氣象預(yù)報系統(tǒng)以及各種工程圖紙圖像的矢量化,而在彩色地毯圖案的矢量化應(yīng)用方面,這些軟件所達到的效果均不理想。受構(gòu)圖、色彩等因素的影響,會出現(xiàn)線條數(shù)據(jù)或色彩信息丟失的問題。因此,有必要針對新疆維吾爾族手工地毯圖案改進矢量化技術(shù),以適應(yīng)特殊要求。
新疆手工地毯圖案精美、做工細致、工藝獨特,是新疆歷史悠久的傳統(tǒng)手工藝品,在世界工藝美術(shù)史上具有獨特地位和藝術(shù)價值,是我國優(yōu)秀文化遺產(chǎn)的重要組成部分。以維吾爾族手工地毯為例,其圖案紋樣多采用植物花卉幾何圖案、建筑物造型圖案等,整體布局均齊平衡、對稱呼應(yīng),色調(diào)主次分明、相互襯托、協(xié)調(diào)統(tǒng)一,深受各界人士喜愛[3]。但傳統(tǒng)的圖案設(shè)計仍沿襲手工作坊式的生產(chǎn)方式,圖案繪制過程耗時長、效率低,對藝匠的技術(shù)水平要求很高。
基于上述問題,提出了一種針對新疆維吾爾族手工地毯圖案的交互式矢量化方法:將手工地毯圖案紋樣的點陣圖像經(jīng)過基元分割、輪廓提取、角點檢測、曲線擬合等一系列過程,轉(zhuǎn)換為可以自由放縮、變形、重組等操作的矢量圖形。經(jīng)實驗驗證,該方法具有較高的實用性,在傳承維吾爾族傳統(tǒng)地毯民族元素的基礎(chǔ)上,增加了基元的使用率及圖案的多樣性,提高了工作效率。
1 矢量化方法
目前,國內(nèi)外矢量化技術(shù)種類繁多,最常用的是基于細化的矢量化方法和基于非細化的矢量化方法。矢量化過程一般分為圖像預(yù)處理、輪廓及特征提取、圖元分割以及圖元識別幾個步驟[4-6]。其中,圖像的預(yù)處理是通過濾波算法消除噪聲(主要是高斯噪聲及椒鹽噪聲)、形態(tài)學(xué)運算(主要是腐蝕Erosion、膨脹Dilation算法及開Opening、合Closing運算)等改善輸入圖像的質(zhì)量。輪廓及特征提取的過程是采用折線逼近的方式,將增強后的圖像處理為單像素骨架圖或輪廓圖。圖元分割過程是將圖像上嵌套的復(fù)雜圖形剝離成獨立的具有完整結(jié)構(gòu)的簡單圖元。圖元識別則是對每個分割后的圖元依據(jù)其尺度、相對位置等關(guān)系進行幾何圖形的判別。本文結(jié)合現(xiàn)有的矢量化技術(shù),針對新疆維吾爾族手工地毯圖案的特點,提出了一種交互式的彩色手工地毯圖案矢量化方法,矢量化流程如圖1所示。
2 預(yù)處理
實驗收集整理了近百幅維吾爾族手工地毯圖案圖像,以目前最流行的恰其曼式地毯圖案為例進行矢量化方法驗證。地毯圖案(這里指新疆維吾爾族手工地毯圖案,下文均使用此簡稱)一般由大小相同、位置對稱的“散花”紋樣均勻分布在井字格、米字格、田字格等布局內(nèi)。這些圖案紋樣色彩協(xié)調(diào)并具有一定的象征意義,每個紋樣又由色彩各異、對比鮮明的圖案基元構(gòu)成。圖2展示了兩種經(jīng)典的新疆手工地毯圖案紋樣。
為了進一步研究,對圖案基元概念進行精確定義:把在圖案紋樣中具有獨立色彩、結(jié)構(gòu)完整的圖元稱為圖案基元,簡稱基元。
實驗對各類圖案基元分步進行矢量化以達到整個紋樣圖案的矢量化目的。預(yù)處理部分分為圖像增強、顏色聚類和輪廓提取3個步驟。其中圖像增強采用以-8為中心掩模的拉普拉斯算子進行。顏色聚類采用K-means[8-9]方法?;喞崛∵\用經(jīng)典的Canny算法。由于預(yù)處理各部分均借鑒經(jīng)典算法,實現(xiàn)過程在此不再贅述。經(jīng)過預(yù)處理后,基元輪廓提取結(jié)果如圖3所示。
圖4(a)顯示的是圖3中第二個圖案基元輪廓中的部分像素點坐標。圖4(b)截取了圖4(a)中的一部分,觀察發(fā)現(xiàn)圖4(b)中的像素點坐標是呈連續(xù)、線性排列的,由此可以判定這些像素點在圖案基元輪廓中呈直線形態(tài)。計算機中,直線輪廓的表示只需要由起始坐標和終止坐標進行計算就可實現(xiàn),那么,圖4(b)中的像素點坐標序列只要記錄坐標(136,129)和坐標(123,142)就可以表示其所在的輪廓形狀。基元輪廓像素點的排列方式除了以上提到的有規(guī)律分布外,還存在無明顯規(guī)律的像素點分布情況,如圖4(c)和圖4(d)所示,像素點坐標序列不存在線性關(guān)系,它們在圖案基元輪廓中以自由曲線形態(tài)呈現(xiàn)。計算機中,自由曲線的表示方法相對復(fù)雜,需要通過角點檢測以及曲線擬合等過程來實現(xiàn)。
3.1 角點檢測
角點是圖像中的重要局部特征,通過角點來表征整個圖像的輪廓形態(tài)可以在降低運算量的同時保留圖像的重要灰度信息。可以說角點就是表征圖像輪廓特征的關(guān)鍵點。角點檢測方法最經(jīng)典的是C. Harris, M. Stephens[10]提出的Harris角點檢測方法。1994年Shi 和 C.Tomasi[11]對Harris算法進行了改進,提出了Shi-Tomasi算法。Shi-Tomas算法的主要思想是:若兩個特征值中較小的一個大于最小閾值,則會得到強角點,通過尋找最小特征值的最大值來尋找好的特征點。
函數(shù)CornerDetection( )采用Shi-Tomasi方法檢測角點。實現(xiàn)原理:首先計算原始圖像的所有像素點的最小特征值,然后通過排除最小特征值小于qltLevel的點進行非最大抑制,最后控制所有檢測到的角點距離均大于minDistance定義的值。函數(shù)原型如下:
CornerDetection (const CvArr* eigImage, CvArr * tmpImage, CvPoint2D32f * corners, int *conNumber, double qltLevel, double minDistance, const CvArr * mask=NULL);
定義image為輸入圖像,8位灰度值圖像,單通道;eigImage、tmpImge為臨時圖像,尺寸和格式與輸入圖像一致;corners存放檢測到的角點;conNumber標記角點總數(shù);qltLevel是最大最小特征值的乘法因子,定義可接受圖像角點的最小質(zhì)量因子;minDistance定義角點最小距離;mask是感興趣區(qū)域,若為NULL則選擇整個圖像。經(jīng)反復(fù)實驗驗證,取最大最小特征值的乘法因子為0.01、角點最小距離為1得到的角點提取效果最為理想。
圖5中用紅色小點標記檢測出的角點。定義結(jié)構(gòu)體數(shù)組corner_Points[100],將檢測出的角點按在輪廓中的對應(yīng)位置依次存儲到數(shù)組中。通過檢測,圖3中兩個圖案基元的角點總數(shù)分別為397個和265個。通過觀察,每個圖案基元中的角點均較好地標記了基元輪廓的形狀特征,并且相對于原圖像素點記錄個數(shù)明顯減少。
3.2 曲線擬合
曲線擬合指的是用不間斷的曲線平滑地趨近同一平面上離散點坐標存在的函數(shù)關(guān)系圖的一種數(shù)據(jù)處理方法。實驗中采用三次參數(shù)樣條[13]進行角點的曲線擬合。三次參數(shù)樣條曲線來源于早期的手工繪圖,操作者使用一根富有韌性的細木條,通過施加適當?shù)牧α?,使木條彎曲地通過每一個數(shù)據(jù)點,木條變形后的形態(tài)就是三次參數(shù)樣條曲線。曲線擬合過程如圖6所示。
三次參數(shù)樣條曲線的特點是“點點通過”,可以精確地趨近以角點為特征點的曲線形狀。在角點檢測過程中,每個可以標記輪廓走向的強角點都被標記下來,通過三次參數(shù)樣條曲線的擬合,可以較真實地還原原圖案基元,實驗效果較為理想,如圖7所示。
經(jīng)過以上幾個步驟,地毯圖案基元的矢量化完成。文中展示了對采集的圖案紋樣中的部分基元進行矢量化的過程,實際操作中可以對紋樣中的基元分步進行矢量化,最后對各個基元矢量圖進行組合或變形,實現(xiàn)整個圖案紋樣的矢量化。
4 結(jié)語
通過對現(xiàn)有矢量化方法及新疆維吾爾族手工地毯圖案特點的分析,提出了新疆維吾爾族手工地毯彩色圖案矢量化方法,即利用地毯圖案基元的顏色特征進行分類,分步進行矢量化。對地毯紋樣進行矢量化處理,可以使地毯圖案的設(shè)計既保持傳統(tǒng)民族紋樣特點,又靈活設(shè)計圖案,提高了生產(chǎn)效率。采用本文提出的矢量化方法對數(shù)十種地毯紋樣圖案進行矢量化實驗測試,處理效果均達到要求。不足之處:矢量化效果不僅取決于矢量化方法的優(yōu)劣,還受原始點陣圖像質(zhì)量的影響。如果采集到的地毯紋樣圖像不是原始的手繪圖案而是成品地毯圖案,受毯面厚度、光線等因素的影響可能產(chǎn)生一定的噪聲,加之紋樣圖案加工到織物上,特別是厚度達2~3cm的手工地毯上之后,與稿紙上的原圖必然存在一定的差異,這將直接影響矢量化效果,造成程序處理后的基元形狀誤差。另外,由于程序中存在多個處理環(huán)節(jié),還可能出現(xiàn)丟失輪廓信息等問題。在今后的研究中應(yīng)該重點考慮這些問題,使矢量化過程更為完善。
參考文獻:
[1]劉瀅瀅. 柵格圖像矢量化研究與實現(xiàn)[D].青島:山東科技大學(xué),2008.
[2]洪深. 少數(shù)民族地毯圖案庫開發(fā)及系統(tǒng)應(yīng)用[D].成都:電子科技大學(xué),2011.
[3]斐明. 新疆地毯的特點與圖案風格[J].大陸橋視野,2012(6):77-79.
[4]FILIPSKI,ALAN J,F(xiàn)LANDRENA,et al.Automated conversion of engineering drawings to CAD form[J]. Proceedings of IEEE,1992,80(7):1195-1209.
[5]M T MUSAVI. A vision based method to automate map processing[J].Pattern Recognition,1987(19):319-325.
[6]施月玲.印花圖案矢量化線細化的研究及應(yīng)用[J]. 計算機與數(shù)字工程,2012,35(5):188-190.
[7]安亞敏,阿里甫.庫爾班.彩色地毯圖案邊緣提取方法[J].計算機工程與應(yīng)用,2012, 763(24):176-180.
[8]CHEN T.Fast image segmentation based on K-means clustering with histograms in HSV color space[J].MMSP 2008: Image Video Processing and Coding,IEEE, 2008(S1):322 -325.
[9]S Z SELIM,M A ISMAIL.K-Means-type algorithms:a generalized convergence theorem and characterization of local optimality[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1984,6(1):81-86.
[10]C HARRIS,M STEPHENS.A combined corner and edge detector[C].In:Proceedings of the Fourth Alvey Vision Conference,Manchester,England,1988:147-151.
[11]SHI,C TOMASI.Good features to track[C].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,1994:593-600.
[12]GARY BRADSKI,ADRIAN KAEHLER.學(xué)習(xí)OpenCV[M].于仕琪,劉瑞禎,譯.北京:清華大學(xué)出版社,2009.
[13]魏海濤.計算機圖形學(xué)[M].第2版.北京:電子工業(yè)出版社,2007.
(責任編輯:杜能鋼)