APP下载

基于先验知识的矢量图轮廓优化

2021-06-23洪庆飞李亚娟邓重阳

关键词:样条先验轮廓

洪庆飞,李亚娟,邓重阳

(杭州电子科技大学理学院,浙江 杭州 310018)

0 引 言

图像矢量化是将位图转化为矢量图的过程。位图色彩丰富,占据大量的存储空间,放大时产生锯齿。矢量图主要通过直线和曲线来描述图形,具有易于编辑、放大时不变形和占据存储空间小等优点,广泛应用于logos、卡通人物等剪贴画领域,具有巨大的市场需求。据调查,美国每年花费在图像矢量化上的工时超过700万小时[1]。在商业领域中,针对图像矢量化也有大量研究,并开发出实用的商业软件,比较著名的有Adobe Illustrator,Corel CorelDRAW和Vector Magic等。这些软件大多只是针对某一特定领域,且存在一些缺点,如抗噪音效果比较差和精度不够等。在典型的矢量化过程中,轮廓拟合引入特定的先验知识,结合这些先验知识来解决模糊问题,且通过进一步约束解空间来获得更好的矢量化结果。但是,先验知识方面的学术研究较少,文献[1]中提出的曲线先验知识既不能直接应用于轮廓拟合,也不能专门应用于矢量化。文献[2]采用哈尔小波和先验能量优化贝塞尔拟合曲线的轮廓,得到很好的效果。图像矢量化研究中比较常见的方法是提取图像的轮廓数据点后使用样条函数进行拟合。B样条曲线具有高阶可导和优良的局部性质,在轮廓拟合中应用广泛。齐东旭等[3]研究了非均匀3次B样条曲线,Deng等[4]提出了最小二乘渐进迭代逼近(Least Square Progressive and Iterative Approximation,LSPIA),对规则的轮廓数据点进行拟合,得到较好的矢量图轮廓。李莎莎等[5]提出数据点加权的最小二乘渐进迭代逼近算法(Data-Weighted Least Square Progressive and Iterative Approximation,DW-LSPIA),使得矢量图轮廓具有保形性。常清俊等[6]提出分块高斯-赛德尔迭代曲线拟合方法,节省了大量计算时间。在LSPIA的基础上,本文引入长度优先、避免自相交和避免对尖角光滑处理这3种先验知识,通过优化非均匀B样条控制顶点消除不合理现象并确保由此产生的轮廓是合理和美观的。

1 先验能量的构造

LSPIA将拟合曲线上数据点和对应点之间的误差定义为控制点的误差向量,通过最小二乘算法调整非均匀B样条控制顶点来构造拟合曲线。LSPIA算法应用非均匀B样条拟合低分辨率图像轮廓时,可能会出现以下不合理轮廓结果,分别为曲线扭曲、自相交、光滑角。这3种结果在合理的矢量图中很少出现,以自相交为例,剪贴画库[7]的矢量图中的轮廓很少有自相交现象。从美学方面来讲,这些结果都被认为是不合理的。本文在LSPIA算法基础上引入长度优先(本文简称LPT)、避免自相交(本文简称SPT)和避免对尖角光滑处理3种先验知识,构造了ELPT,ESPT能量函数和分段拟合来调整LSPIA中非均匀B样条控制顶点,进而获得合理矢量图轮廓。

1.1 先验能量的几何参数

(1)

(2)

式中,j∈[1,m],m为B样条曲线的数量。(xi,yi)为LSPIA方法获得的控制顶点坐标,k为B样条基函数的次数,取k=3,Ni,3(u)(i=0,…,n)为k次规范B样条基函数。非递减的参数u的序列U∶u0≤u1≤…≤un+k+1为节点矢量。

1.2 曲线长度优先

根据经验可知,除非有强有力的证据表明曲线应该收缩或扭曲,矢量图的轮廓曲线应尽可能伸展[2]。当矢量图的轮廓出现高度扭曲时,如果没有证据支持这种扭曲,就需要消除这种扭曲现象。使用这种先验知识,定义ELPT能量函数,通过非线性优化矢量图轮廓长度,保证曲线尽可能伸展。

(3)

1.3 自相交

图1展示发生自相交的矢量图轮廓。图1中,交点为自相交点,每个这样的交点把轮廓分为2个部分。较短部分为自相交部分,通过计算这部分长度来获得自相交发生的程度。

图1 自相交图[7]

一种直观的避免自相交的方法是通过强化一组高度耦合的非线性不等式约束,使用原对偶内点法[8]进行优化,这种方法需要花费大量的计算时间,并不适合矢量图轮廓的优化。本文通过对自相交程度进行分析估量,采用一种有效的正则化方法来避免产生自相交的矢量图轮廓,本文方法的主要优点是消除了自相交现象并节省了计算时间。

定义ESPT为能量函数,通过最小化自相交部分长度占矢量图轮廓长度的比例来消除自相交现象。

(4)

式中,M={(d1,d2)|d1

(5)

自相交部分的长度越接近矢量图轮廓其他部分的长度,自相交现象越严重,能量函数越大。当没有自相交时,ESPT为0。

1.4 避免光滑角

由于B样条曲线具有高阶可导性质,使用LSPIA方法拟合矢量图的轮廓时,图像原本存在的尖角会被非均匀三次B样条拟合成光滑角。可以采用以下方法来解决这个问题。

(6)

然后,满足条件(6)的3个数据点在原始矢量图轮廓中组成的角是尖角,B样条曲线具有高阶可导性,非均匀B样条进行拟合时自动进行光滑处理。选取尖角处数据点作为分段拟合的起始点。最后,使用LSPIA方法对轮廓进行分段拟合从而得到图像原本存在的尖角。

2 实验结果与分析

图像矢量化过程中,提取的轮廓点列是规则的,但在曲线拟合过程中出现不合理轮廓,如图2(a)所示。输入的光栅图嘈杂或者低分辨率,提取的轮廓数据点不规则,导致出现不合理轮廓,如图3(a)圆圈标记部分所示。

本文选取文献[9]提出的非线性优化算法L-BFGS对能量函数进行非线性优化,得到新的B样条曲线控制顶点,最终消除矢量图轮廓曲线扭曲和自相交现象,结果如图2(b)和图3(c)所示。

图2(a)是LSPA方法拟合结果,曲线拟合过程中出现扭曲,对能量函数进行非线性优化,把优化后得到的控制顶点作为LSPIA方法的初始控制顶点进行二次拟合得到图2(b)。图3(b)是使用LSPIA方法对图3(a)阴影部分不规则轮廓数据点的拟合,出现明显扭曲现象。对能量函数进行非线性优化得到图3(c)。通过图2和图3可以看出,与LSPIA方法相比,经过能量函数优化处理后,矢量图轮廓扭曲部分变成了光滑曲线。

图2 ELPT先验能量处理效果

图3 Elpt先验能量处理效果

对发生自相交的矢量图轮廓的非线性优化结果如图4所示。图4(c)是对图4(a)阴影部分不规则轮廓数据点的拟合。使用L-BFGS算法对能量函数进行非线性优化,得到新的B样条控制顶点,优化后的矢量图轮廓没有自相交现象,如图4(c)所示。

图4 先验能量对自相交处理效果图

图5 光滑角处理效果图

3 结束语

在LSPIA方法的基础之上,本文引入基于先验知识的能量优化算法,用于处理一些不能被自动化方法精确矢量化的剪贴画图像,很好地解决了使用B样条曲线进行矢量图轮廓拟合时出现的曲线扭曲、自相交等缺陷。下一步将探索更多的先验知识,更好地解决矢量化过程中产生的各种问题,以获得效果更好的矢量图。

猜你喜欢

样条先验轮廓
基于数值积分的最佳平方逼近样条函数
康德定言命令的演绎是一种先验演绎吗?——论纯粹知性与实践理性在先天原则证成方面之异同
基于暗通道先验的单幅图像去雾算法研究与实现
先验想象力在范畴先验演绎中的定位研究
跟踪导练(三)
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
三次样条函数的构造
先验的风
用B—样条函数进行近似和建模
儿童筒笔画