一种将位图转换为矢量图像的方法与流程

文档序号:21369306发布日期:2020-07-04 04:45阅读:793来源:国知局
一种将位图转换为矢量图像的方法与流程

本发明属于图像处理领域,尤其涉及一种将位图转换为矢量图的方法。



背景技术:

图像数据的可视化在生活中无处不在,如杂志上的插图、网上的标志、海报的图像等。以海报为例,海报上总是有一些图片,它通常需要许多比例来适应各种场景。这里有两个选项,一个是准备多个比例的位图,以满足不同的需求。另一个是将矢量图像应用于海报。显然,在多个比例中使用位图会消耗存储空间,较大的位图会失真。因此需要一种将位图转换为矢量图的方法。



技术实现要素:

本发明的目的在于针对现有技术的不足,提供一种将位图转换为矢量图的方法。

本发明的目的是通过以下技术方案来实现的:一种将位图转换为矢量图的方法,包括以下步骤:

(1)采用边缘检测算法对输入图像进行特征检测,找到输入图像中的特征像素点;其中构成连续线段的特征像素点属于同一特征。

(2)利用步骤(1)找到的特征像素点构造初始三角形网格,包括以下子步骤:

(2.1)用横线和竖线连接输入图像中的像素点,形成方形网格。

(2.2)基于步骤(2.1)得到的方形网格构造初始三角形网格,具体为:若方形网格包含两个特征像素点且位于一条对角线上,则连接该对角线将方形网格划分为三角形网格;若是其它情况则任意连接方形网格的一条对角线将方形网格划分为三角形网格。

(3)遍历输入图像的像素点,通过合并三角形网格的两个顶点简化步骤(2)得到的初始三角形网格,对简化的结果再进行遍历和进一步简化,重复迭代预设的次数,得到简化三角形网格。

(4)为步骤(3)得到的简化三角形网格的每个三角形选择一种颜色,进行颜色拟合,得到矢量图像。

进一步地,所述步骤(1)中所述边缘检测算法为canny边缘检测算法等。

进一步地,所述步骤(3)中所述合并为将初始三角形网格中与两个顶点连接的像素点均连接到其中一个顶点上,且满足以下条件:

(3.1)输入图像四个顶角上的像素点不与其它像素点合并;

(3.2)输入图像的边上的像素点只与位于同一条边的像素点合并;

(3.3)特征数像素点只与属于同一特征的特征数像素点合并;

(3.4)两个顶点合并后三角形网格的边不能相交;

(3.5)三角形网格的角在设定的角度范围内。

进一步地,所述条件(3.4)的判断方法为:设两个顶点为a、b,以a为中心,将与a连接的像素点根据连接线的角度,按一个方向排序编号,合并后以b为中心,将编号的像素点根据与b的连接线的角度,按相同的方向再次排序编号,如存在像素点的编号改变表示两个顶点合并后三角形网格的边相交,否则不相交。

进一步地,所述条件(3.5)中所述设定的角度范围为角的余弦值在-0.99~0.99之间。

进一步地,所述步骤(3)中所述预设的次数为40次。

进一步地,所述步骤(4)具体为:将目标三角形每条边n等分,每两边互相连接等分点使连接线平行于第三边,将目标三角形等分为多个小三角形,根据下式选择目标三角形的颜色cbest:

其中,ci、cj表示第i、j个目标三角形中的小三角形中心像素点的颜色,n为目标三角形中的小三角形数量,color表示取目标三角形中errori最小的小三角形中心像素点的颜色。

进一步地,所述步骤(4)具体为:(4.1)找到目标三角形的共边三角形,与目标三角形构成采样集合,如公共边的两端点均为特征像素点则从采样集合中除去对应的共边三角形;

(4.2)将步骤(4.1)得到的采样集合中的三角形每条边n等分,每两边互相连接等分点使连接线平行于第三边,将采样集合中三角形均等分为多个小三角形,根据下式选择目标三角形的颜色cbest:

此时,ci、cj表示采样集合中的第i、j个小三角形中心像素点的颜色,n为采样集合中的小三角形数量,color表示取采样集合中errori最小的小三角形中心像素点的颜色。

进一步地,所述将简化三角形网格的三角形每条边n等分中的n=3。

进一步地,所述小三角形中心像素点为小三角形的重心。

本发明的有益效果是:本发明首先查找图像边缘特征,然后将像素点构成的方形网格根据图像边缘特征生成三角形网格,再进一步简化,把三角形作为基元进行颜色拟合,将位图转换为矢量图像进行数据可视化,可以快速进行图像三角剖分,并提供一些参数来调整三角形的密度或合并程度;适用于大多数通用位图。

附图说明

图1为本发明的将位图转换为矢量图方法的流程示意图。

图2为方形网格划分为三角形网格示意图;其中,(a)为方形网格的像素点示意图;(b)为方形网格对角线连接示意图;

图3为图像处理过程示意图;其中,(a)为输入图像示意图;(b)为canny边缘检测结果示意图;(c)为简化三角形网格示意图;

图4为合并过程示意图;(a)为合并前示意图;(b)为合并后示意图;

图5为两个顶点合并后三角形网格的边相交的情况示意图;(a)为合并前示意图;(b)为合并后示意图;

图6为将三角形等分的示意图;

图7目标三角形与其共边三角形构成的采样集合示意图。

具体实施方式

下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,一种将位图转换为矢量图的方法,该方法包括以下步骤:

(1)采用canny边缘检测算法对输入图像(图3a)进行特征检测,找到输入图像中的特征像素点(图3b);其中构成连续的线段的特征像素点属于同一特征。

(2)利用步骤(1)找到的特征像素点构造初始三角形网格,包括以下子步骤:

(2.1)用横线和竖线连接输入图像中的像素点,形成方形网格;

(2.2)如图2所示,图2(a)为方形网格不包含或包含1个、2个、3个特征像素点情况的示意图,其中空心圆表示特征像素点;图2(b)为基于图2(a)的方形网格的连接其对角线划分为三角形网格的示意图;基于步骤(2.1)得到的方形网格构造初始三角形网格;具体为:若方形网格包含两个特征像素点且位于一条对角线上,则连接该对角线将方形网格划分为三角形网格;若是其它情况则任意连接方形网格的一条对角线将方形网格划分为三角形网格。

(3)遍历输入图像的像素点,通过合并三角形网格的两个顶点简化步骤(2)得到的初始三角形网格,对简化的结果再进行遍历和进一步简化,重复迭代40次后得到简化三角形网格(图3c);如图4所示,所述合并为将初始三角形网格中与两个顶点连接的像素点均连接到其中一个顶点上,且满足以下合并条件:

(3.1)输入图像四个顶角上的像素点不与其它像素点合并;

(3.2)输入图像的边上的像素点只与位于同一条边的像素点合并;

(3.3)特征数像素点只与属于同一特征的特征数像素点合并;

(3.4)如图5所示,两个顶点合并后三角形网格的边不能相交;判断方法为:设两个顶点为a、b,以a为中心,将与a连接的像素点根据连接线的角度,按逆时针或顺时针方向排序编号,合并后以b为中心,将编号的像素点根据与b的连接线的角度,按相同的方向再次排序编号,如存在像素点的编号改变表示两个顶点合并后三角形网格的边相交,否则不相交。

(3.5)三角形网格的角在设定的角度范围内,本实施例中设定的角度范围为角的余弦值在-0.99~0.99之间。

(4)为步骤(3)得到的简化三角形网格的每个三角形选择一种颜色,进行颜色拟合,得到svg格式的矢量图像,具体为:如图6所示,将简化三角形网格的三角形(图6a)每条边n等分(本实施例n=3),每两边互相连接等分点使连接线平行于第三边(图6b),将三角形等分为n2个小三角形,根据下式选择颜色cbest:

其中,ci、cj表示第i、j个小三角形中心像素点的颜色,小三角形中心像素点为其重心(图6c),n=n2为小三角形数量,color表示取errori最小的小三角形中心像素点的颜色。

为了防止矢量图像颜色不连续,采用优化的方法进行颜色拟合,具体为:

如图7所示,首先找到目标三角形的共边三角形,与目标三角形构成采样集合,如公共边的两端点均为特征像素点则从采样集合中除去对应的共边三角形;根据下式选择目标三角形的颜色cbest:

此时,ci、cj表示采样集合中第i、j个小三角形中心像素点的颜色,n为采样集合中小三角形数量,color表示取采样集合中errori最小的小三角形中心像素点的颜色。

对于本领域的技术人员来说,可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1