欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2017111204523
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2023-08-24
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种沿顺时针方向提取二值图形轮廓的方法,通过对二值图片进行腐蚀和膨胀及细节修补操作;剔除非轮廓部分;对残差图片执行宽度优先搜索程序,获得闭合曲线列表;回溯算法输出一个曲线队列;最后进行曲线队列调整,得到沿顺时针方向提取的二值图形轮廓,具体包括以下步骤:步骤1)对二值图像P进行腐蚀和膨胀操作,操作完成后,使用所有Qi,j替换所有对应的像素点Pi,j,然后执行后续操作,腐蚀和膨胀操作根据公式(1)和公式(2)进行:其中,Pi,j为二值图片中第i行第j列的像素点的值,Pi+m,j+n为二值图片中i+m行j+n列处的像素值,Qi,j是腐蚀或膨胀处理后的二值图片中的第i行第j列的像素点的值,Pi,j和Qi,j取值为0或1,m和n均为整数,取值均为-1,0,1;

步骤2)对二值图像进行细节修补操作按照公式(3)、公式(4)对二值图片进行特殊结构定位,将特殊结构中值为0的像素点设置为1,即完成修补操作;

Px+i,y+j=1    (4)

其中x、y为二值图像中的特殊结构左上角在二值图像中的行号和列号,i、j为模板中的值的行号和列号,并约定图片及模板的左上角像素点的行号和列号均为0;Px+i,y+j为二值图片中x+i行y+j列处的像素值,Li,j为模板中i行j列的值,S为模板中1的个数;

步骤3)去除二值图像P中的连通部分,仅保留边缘轮廓,二值图像P由步骤1)经过一次腐蚀操作之后得到二值图像Q,由公式(5)计算得到仅保留边缘轮廓的二值图像A;

Ax,y=Px,y-Qx,y    (5)

其中,Ax,y为仅保留边缘轮廓的二值图片A中的第i行第y列的像素点;

步骤4)对步骤3)得到的轮廓图像A执行宽度优先搜索程序,获得闭合曲线列表,曲线列表存储有二值图像中的一条闭合曲线的像素点坐标;

5)采用回溯算法输出一个曲线队列;

6)对曲线队列进行调整,使之以顺时针方向排列,所有曲线列表存在于一个轮廓列表中,该轮廓列表即为本方法输出图形的内外侧轮廓。

2.根据权利要求1所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于二值图像由任意彩色图片经处理后得到的或由软件算法自动生成或是服从某种随机分布的像素点的集合。

3.根据权利要求1所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于闭合曲线为二值图像与一次腐蚀后的二值图像的差,即原二值图像中连通区域的像素值设置为0,保留边沿区域的像素值为1,使得二值图像中所有像素值为1的像素点构成原二值图片中图形的轮廓边界,其中的闭合曲线之间不存在交叉,但闭合曲线合围的区域内能存在其他完整又不相交的闭合曲线。

4.根据权利要求1所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在步骤

2)中采用3乘3的矩形模版按照公式(3)、公式(4)对二值图片进行特殊结构定位。

5.根据权利要求1所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于步骤4)中的宽度优先搜索程序过程如下搜索过程:

1)输入一副二值轮廓图片A,自上而下逐行扫描图A,找到第一个像素值为1的像素点,记为root,并搜索root的四领域,找到四领域中第一个像素值为1的像素点,作为宽度优先搜索算法的起点,并记为start,记录其父像素点为root;

2)添加start到已访问集合和待展开队列尾部,随后进入循环搜索过程,在循环搜索过程中,从待展开队列首部提取一个数据实体,记为temp,取temp的四领域之一,记为child,如果child的像素值为1,且不在已访问集合中,则添加chlid到已访问集合和待展开队列尾部,并记录child的父像素点为temp,temp的孩子数加1;如果发现temp等于root,则说明宽度优先搜索过程结束,已经找到一条闭合曲线,需要使用回溯方法构造曲线队列,并调整曲线队列为顺时针方向排列,最后记录曲线队列并开始下一条闭合曲线的搜索程序。

6.根据权利要求5所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于步骤5)中的采用回溯算法输出一个曲线队列的具体过程如下:将当前所使用的temp,root以及二值轮廓图片输入到回溯程序中,以temp为起点,将temp的像素点横纵坐标点添加到曲线队列的尾部,迭代地将temp设置为temp的父像素点所指向的数据实体,重复上述步骤,同时判断temp与root是否相等,如果相等,则回到了root像素点,将temp的像素点横纵坐标点添加到曲线队列的尾部,输出曲线列表;如果某一个像素点所在实体temp拥有2个以上的孩子数,则在二值轮廓图片中设置该像素点的值为1,否则为0,如此在二值图片中删除当前已找到的闭合曲线又不会破坏与该曲线存在交叉点的其他闭合曲线,输出一个曲线队列,构成一条闭合曲线。

7.根据权利要求5所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于步骤6)中的对曲线队列进行调整的具体过程如下:输入曲线队列,并在队列中随机选取一个像素点记为temp1,并记temp1的纵坐标为row,判断row是否等于曲线纵坐标中的最大或最小值,如果不是,则找到曲线列表中纵坐标等于row且横坐标最小的像素点,记为temp2,且闭合曲线在这个像素点上的切线不能平行于横轴,如果沿着曲线队列的顺序,闭合曲线是自下而上穿过该像素点temp2,则说明曲线队列是按照顺时针方向排列的,否则为逆时针排列的,需要对曲线队列进行逆序操作。

8.根据权利要求7所述的一种沿顺时针方向提取二值图形轮廓的方法,其特征在于逆序操作的过程如下:先获取曲线队列的长度,得到最后一个字符的序列号,然后根据序列号从后往前依次输出队列。