摘要:针对传统新疆维吾尔族手工地毯图案手绘设计工序繁琐、耗时多等问题,以及现有矢量化软件的局限性,提出了一种交互式的彩色图案矢量化方法。首先根据颜色差异进行图案基元分割以及轮廓提取,然后选取基元轮廓上可以记录其特征的角点,最后运用三次参数样条曲线对角点进行拟合。实验测试表明,该方法在保持维吾尔族手工地毯传统图案纹样的基础上,提高了设计效率,增加了地毯图案设计的多样性。
关键词:矢量化;基元分割;轮廓提取;角点检测;曲线拟合
DOIDOI:10.11907/rjdk.161022
中图分类号:TP319
文献标识码:A 文章编号:1672-7800(2016)005-0163-03
0 引言
图像矢量化是指将点阵图像转换为矢量图像的过程,其原理是从组成点阵图像的像素点中识别出点、线、圆、弧、多边形等,通过数学公式计算获得这些识别出来的几何图形以实现图像格式的转换。矢量化技术日趋成熟,特别是工程图纸矢量化技术已经广泛应用,如Acme TraeART.v3.5矢量化软件,可以快速将各种类型的工程图纸矢量化。Algolab photo vector是一款功能强大的矢量化软件,可以快速而精确地将点阵图像转换为矢量图像[1-2]。以上为比较成熟的矢量化软件,主要应用于地理信息系统、气象预报系统以及各种工程图纸图像的矢量化,而在彩色地毯图案的矢量化应用方面,这些软件所达到的效果均不理想。受构图、色彩等因素的影响,会出现线条数据或色彩信息丢失的问题。因此,有必要针对新疆维吾尔族手工地毯图案改进矢量化技术,以适应特殊要求。
新疆手工地毯图案精美、做工细致、工艺独特,是新疆历史悠久的传统手工艺品,在世界工艺美术史上具有独特地位和艺术价值,是我国优秀文化遗产的重要组成部分。以维吾尔族手工地毯为例,其图案纹样多采用植物花卉几何图案、建筑物造型图案等,整体布局均齐平衡、对称呼应,色调主次分明、相互衬托、协调统一,深受各界人士喜爱[3]。但传统的图案设计仍沿袭手工作坊式的生产方式,图案绘制过程耗时长、效率低,对艺匠的技术水平要求很高。
基于上述问题,提出了一种针对新疆维吾尔族手工地毯图案的交互式矢量化方法:将手工地毯图案纹样的点阵图像经过基元分割、轮廓提取、角点检测、曲线拟合等一系列过程,转换为可以自由放缩、变形、重组等操作的矢量图形。经实验验证,该方法具有较高的实用性,在传承维吾尔族传统地毯民族元素的基础上,增加了基元的使用率及图案的多样性,提高了工作效率。
1 矢量化方法
目前,国内外矢量化技术种类繁多,最常用的是基于细化的矢量化方法和基于非细化的矢量化方法。矢量化过程一般分为图像预处理、轮廓及特征提取、图元分割以及图元识别几个步骤[4-6]。其中,图像的预处理是通过滤波算法消除噪声(主要是高斯噪声及椒盐噪声)、形态学运算(主要是腐蚀Erosion、膨胀Dilation算法及开Opening、合Closing运算)等改善输入图像的质量。轮廓及特征提取的过程是采用折线逼近的方式,将增强后的图像处理为单像素骨架图或轮廓图。图元分割过程是将图像上嵌套的复杂图形剥离成独立的具有完整结构的简单图元。图元识别则是对每个分割后的图元依据其尺度、相对位置等关系进行几何图形的判别。本文结合现有的矢量化技术,针对新疆维吾尔族手工地毯图案的特点,提出了一种交互式的彩色手工地毯图案矢量化方法,矢量化流程如图1所示。
2 预处理
实验收集整理了近百幅维吾尔族手工地毯图案图像,以目前最流行的恰其曼式地毯图案为例进行矢量化方法验证。地毯图案(这里指新疆维吾尔族手工地毯图案,下文均使用此简称)一般由大小相同、位置对称的“散花”纹样均匀分布在井字格、米字格、田字格等布局内。这些图案纹样色彩协调并具有一定的象征意义,每个纹样又由色彩各异、对比鲜明的图案基元构成。图2展示了两种经典的新疆手工地毯图案纹样。
为了进一步研究,对图案基元概念进行精确定义:把在图案纹样中具有独立色彩、结构完整的图元称为图案基元,简称基元。
实验对各类图案基元分步进行矢量化以达到整个纹样图案的矢量化目的。预处理部分分为图像增强、颜色聚类和轮廓提取3个步骤。其中图像增强采用以-8为中心掩模的拉普拉斯算子进行。颜色聚类采用K-means[8-9]方法。基元轮廓提取运用经典的Canny算法。由于预处理各部分均借鉴经典算法,实现过程在此不再赘述。经过预处理后,基元轮廓提取结果如图3所示。
图4(a)显示的是图3中第二个图案基元轮廓中的部分像素点坐标。图4(b)截取了图4(a)中的一部分,观察发现图4(b)中的像素点坐标是呈连续、线性排列的,由此可以判定这些像素点在图案基元轮廓中呈直线形态。计算机中,直线轮廓的表示只需要由起始坐标和终止坐标进行计算就可实现,那么,图4(b)中的像素点坐标序列只要记录坐标(136,129)和坐标(123,142)就可以表示其所在的轮廓形状。基元轮廓像素点的排列方式除了以上提到的有规律分布外,还存在无明显规律的像素点分布情况,如图4(c)和图4(d)所示,像素点坐标序列不存在线性关系,它们在图案基元轮廓中以自由曲线形态呈现。计算机中,自由曲线的表示方法相对复杂,需要通过角点检测以及曲线拟合等过程来实现。
3.1 角点检测
角点是图像中的重要局部特征,通过角点来表征整个图像的轮廓形态可以在降低运算量的同时保留图像的重要灰度信息。可以说角点就是表征图像轮廓特征的关键点。角点检测方法最经典的是C. Harris, M. Stephens[10]提出的Harris角点检测方法。1994年Shi 和 C.Tomasi[11]对Harris算法进行了改进,提出了Shi-Tomasi算法。Shi-Tomas算法的主要思想是:若两个特征值中较小的一个大于最小阈值,则会得到强角点,通过寻找最小特征值的最大值来寻找好的特征点。
函数CornerDetection( )采用Shi-Tomasi方法检测角点。实现原理:首先计算原始图像的所有像素点的最小特征值,然后通过排除最小特征值小于qltLevel的点进行非最大抑制,最后控制所有检测到的角点距离均大于minDistance定义的值。函数原型如下:
CornerDetection (const CvArr* eigImage, CvArr * tmpImage, CvPoint2D32f * corners, int *conNumber, double qltLevel, double minDistance, const CvArr * mask=NULL);
定义image为输入图像,8位灰度值图像,单通道;eigImage、tmpImge为临时图像,尺寸和格式与输入图像一致;corners存放检测到的角点;conNumber标记角点总数;qltLevel是最大最小特征值的乘法因子,定义可接受图像角点的最小质量因子;minDistance定义角点最小距离;mask是感兴趣区域,若为NULL则选择整个图像。经反复实验验证,取最大最小特征值的乘法因子为0.01、角点最小距离为1得到的角点提取效果最为理想。
图5中用红色小点标记检测出的角点。定义结构体数组corner_Points[100],将检测出的角点按在轮廓中的对应位置依次存储到数组中。通过检测,图3中两个图案基元的角点总数分别为397个和265个。通过观察,每个图案基元中的角点均较好地标记了基元轮廓的形状特征,并且相对于原图像素点记录个数明显减少。
3.2 曲线拟合
曲线拟合指的是用不间断的曲线平滑地趋近同一平面上离散点坐标存在的函数关系图的一种数据处理方法。实验中采用三次参数样条[13]进行角点的曲线拟合。三次参数样条曲线来源于早期的手工绘图,操作者使用一根富有韧性的细木条,通过施加适当的力量,使木条弯曲地通过每一个数据点,木条变形后的形态就是三次参数样条曲线。曲线拟合过程如图6所示。
三次参数样条曲线的特点是“点点通过”,可以精确地趋近以角点为特征点的曲线形状。在角点检测过程中,每个可以标记轮廓走向的强角点都被标记下来,通过三次参数样条曲线的拟合,可以较真实地还原原图案基元,实验效果较为理想,如图7所示。
经过以上几个步骤,地毯图案基元的矢量化完成。文中展示了对采集的图案纹样中的部分基元进行矢量化的过程,实际操作中可以对纹样中的基元分步进行矢量化,最后对各个基元矢量图进行组合或变形,实现整个图案纹样的矢量化。
4 结语
通过对现有矢量化方法及新疆维吾尔族手工地毯图案特点的分析,提出了新疆维吾尔族手工地毯彩色图案矢量化方法,即利用地毯图案基元的颜色特征进行分类,分步进行矢量化。对地毯纹样进行矢量化处理,可以使地毯图案的设计既保持传统民族纹样特点,又灵活设计图案,提高了生产效率。采用本文提出的矢量化方法对数十种地毯纹样图案进行矢量化实验测试,处理效果均达到要求。不足之处:矢量化效果不仅取决于矢量化方法的优劣,还受原始点阵图像质量的影响。如果采集到的地毯纹样图像不是原始的手绘图案而是成品地毯图案,受毯面厚度、光线等因素的影响可能产生一定的噪声,加之纹样图案加工到织物上,特别是厚度达2~3cm的手工地毯上之后,与稿纸上的原图必然存在一定的差异,这将直接影响矢量化效果,造成程序处理后的基元形状误差。另外,由于程序中存在多个处理环节,还可能出现丢失轮廓信息等问题。在今后的研究中应该重点考虑这些问题,使矢量化过程更为完善。
参考文献:
[1]刘滢滢. 栅格图像矢量化研究与实现[D].青岛:山东科技大学,2008.
[2]洪深. 少数民族地毯图案库开发及系统应用[D].成都:电子科技大学,2011.
[3]斐明. 新疆地毯的特点与图案风格[J].大陆桥视野,2012(6):77-79.
[4]FILIPSKI,ALAN J,FLANDRENA,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]施月玲.印花图案矢量化线细化的研究及应用[J]. 计算机与数字工程,2012,35(5):188-190.
[7]安亚敏,阿里甫.库尔班.彩色地毯图案边缘提取方法[J].计算机工程与应用,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.学习OpenCV[M].于仕琪,刘瑞祯,译.北京:清华大学出版社,2009.
[13]魏海涛.计算机图形学[M].第2版.北京:电子工业出版社,2007.
(责任编辑:杜能钢)