预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN109801242A(43)申请公布日2019.05.24(21)申请号201910064027.X(22)申请日2019.01.23(71)申请人西南交通大学地址610031四川省成都市二环路北一段(72)发明人黄进郑思宇朱明仓李剑波王敏刘怡(74)专利代理机构成都环泰知识产权代理事务所(特殊普通合伙)51242代理人赵红欣李斌(51)Int.Cl.G06T5/00(2006.01)G06T5/20(2006.01)G06T7/11(2017.01)G06T7/13(2017.01)权利要求书2页说明书5页附图8页(54)发明名称一种基于改进漫水填充算法的栅格图像矢量化方法(57)摘要本发明涉及一种基于改进漫水填充算法的栅格图像矢量化方法,包括以下步骤:步骤S10:取原始图像,对其进行图像锐化,得到包含边缘信息的图像;步骤S20:点击原始图像,以步骤S10得到的图像作为掩模,通过漫水填充算法,对相应图块进行填充;步骤S30:利用空洞填充算法对步骤S20得到的图块进行修补;步骤S40:根据步骤S30得到的图像,利用Freeman链码轮廓跟踪算法,找到图块轮廓的坐标点集合;步骤S50:根据步骤S40得到的坐标点集合,利用多边形拟合算法,对坐标点数目抽稀,得到关键坐标点集合,并将其之间的连线有序绘制出来,形成轮廓,得到最终的矢量化图像。本发明具有良好的栅格图像矢量化的效果,且相比于人工多处描点的栅格矢量化过程。CN109801242ACN109801242A权利要求书1/2页1.一种基于改进漫水填充算法的栅格图像矢量化方法,其特征在于:包括以下步骤,步骤S10:取原始图像,对其进行图像锐化,得到包含边缘信息的图像;步骤S20:点击原始图像,以步骤S10得到的图像作为掩模,通过漫水填充算法,对相应图块进行填充;步骤S30:利用空洞填充算法对步骤S20得到的图块进行修补;步骤S40:根据步骤S30得到的图像,利用Freeman链码轮廓跟踪算法,找到图块轮廓的坐标点集合;步骤S50:根据步骤S40得到的坐标点集合,利用多边形拟合算法,对坐标点数目抽稀,得到关键坐标点集合,并将其之间的连线有序绘制出来,形成轮廓,得到最终的矢量化图像。本发明具有良好的栅格图像矢量化的效果,且相比于人工多处描点的栅格矢量化过程,结合了改进的漫水填充方法与其他多种图像处理算法,实现了自动的栅格图像矢量化。其总体模型的算法步骤为:第(1)步:读取原始图像记作origin.并且读出图像高度记作h,图像宽度记作w.第(2)步:将origin转为灰度图像gray.计算公式为gray(y,x)=w1·origin(y,x,0)+w2·origin(y,x,1)+w3·origin(y,x,2),第(3)步:对gray进行高斯模糊,得到的图像记作guass.计算公式为第(4)步:利用索贝尔算子,对guass进行运算,获取边缘信息,得到的图像记作sobel.计算公式为第(5)步:将sobel作为掩模,对origin进行漫水填充,得到的图像记作rawBlock;第(6)步:对rawBlock进行空洞填充,得到的图像记作processedBlock;第(7)步:利用Freeman链码轮廓跟踪算法,找到processedBlock轮廓的坐标点集合,记作rawCoords;第(8)步:利用多边形拟合算法,对rawCoords数目抽稀,得到关键坐标点集合,记作processedCoords,并将其之间的连线有序绘制出来,形成轮廓,得到最终的矢量化图像。以上表达式中各参数和算符的意义为:gray(y,x)表示灰度图像gray第y行第x列的像素值。origin(y,x,0)表示真彩图像origin第y行第x列第0通道像素值。origin(y,x,1)、origin(y,x,2)以此类推。w1、w2、w3是利用大量图片计算出得出的经验值。表示图像的卷积运算。2CN109801242A权利要求书2/2页2.根据权利要求1所述的一种基于改进漫水填充算法的栅格图像矢量化方法,其特征在于:第(5)步与第(6)步相结合构成了一种改进的漫水填充算法。该算法利用空洞填充的办法,能够对漫水填充后不理想的结果,进行二次填充,达到图像修补的作用。该算法漫水填充部分的详细步骤为:第(1)步:设值val等于15;第(2)步:将sobel作为掩模图像,并获取点击原始图像origin后的起始坐标点,记作(seedX,seedY);第(3)步:建立一张空白图像rawBlock;第(4)步:建立空栈stack,并将(seedX,seedY)压入栈中;第(5)步:如果stack为空栈,则转到第(13)步;否则,转到第(6)步;第(6)步:从sta