[发明专利]一种基于Canny算法的边缘检测方法在审
申请号: | 202010492863.0 | 申请日: | 2020-06-03 |
公开(公告)号: | CN111833366A | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 张宁;张彩霞 | 申请(专利权)人: | 佛山科学技术学院 |
主分类号: | G06T7/13 | 分类号: | G06T7/13;G06T7/136;G06T5/00 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 蔡伟杰 |
地址: | 528000 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 canny 算法 边缘 检测 方法 | ||
1.一种基于Canny算法的边缘检测方法,其特征在于,所述方法包括以下步骤:
步骤1,将原始图像灰度化后转变为灰度图像;
步骤2,对灰度图像进行降噪处理得到平滑图像;
步骤3,计算平滑图像的梯度幅值和梯度方向;
步骤4,对平滑图像的梯度幅值进行非极大值抑制得到初始边缘图像;
步骤5,通过最大类间方差法确定初始边缘图像的阈值;
步骤6,利用阈值通过局部自适应阈值分割算法检测初始边缘图像,并得到最终边缘图像。
2.根据权利要求1所述的一种基于Canny算法的边缘检测方法,其特征在于,在步骤2中,对灰度图像进行降噪处理得到平滑图像的方法的具体步骤如下:
步骤2.1:设置一个初始的滤波半径为1的滤波窗口,灰度图像大小为M×N,M和N为灰度图像的像素矩阵的长和宽,将滤波窗口中的像素作为待处理像素;通过滤波窗口对灰度图像进行降噪处理;
步骤2.2:计算滤波窗口中的待处理像素的灰度值:
如果所有待处理像素的灰度值在(0,255)范围内,则判断所有待处理像素都不是椒盐噪声并保持原值输出,移动滤波窗口到下一个位置,重复步骤2.2;
如果所有待处理像素的灰度值都等于0或者所有待处理像素的灰度值都等于255,则判断所有待处理像素都是椒盐噪声并转到步骤2.3;
如果不是所有待处理像素的灰度值都在(0,255)范围内,则去掉灰度值等于0与灰度值等于255的待处理像素,计算滤波窗口中其余待处理像素的灰度中值,输出灰度中值,同时将滤波窗口的滤波半径增加1并转到步骤2.3,所述其余待处理像素为待处理像素除去椒盐噪声以外的所有像素;
步骤2.3:使用滤波窗口重复步骤2.2,当遍历完全部灰度图像的像素时得到平滑图像。
3.根据权利要求1所述的一种基于Canny算法的边缘检测方法,其特征在于,在步骤4中,对平滑图像的梯度幅值进行非极大值抑制得到初始边缘图像的方法的步骤为:
步骤4.1:检测平滑图像中每一个像素点的梯度幅值和梯度方向;
步骤4.2:保留相同梯度方向具有最大梯度幅值的像素点的梯度幅值,并将相同梯度方向的其它像素点的梯度幅值置0,最后得到初始边缘图像。
4.根据权利要求1所述的一种基于Canny算法的边缘检测方法,其特征在于,在步骤6中,利用阈值通过局部自适应阈值分割算法检测初始边缘图像,并得到最终边缘图像的方法为:
步骤6.1:设定步骤5中得到的初始边缘图像的阈值为T;
步骤6.2:设置一个局部自适应阈值分割算法的移动小窗口;
步骤6.3:计算局部自适应阈值分割算法的移动小窗口中所有像素点的像素值之和,比较像素值之和与初始边缘图像的阈值的大小:
如果像素之和大于或等于初始边缘图像的阈值,则设置局部自适应阈值分割算法的移动小窗口中间的像素点的像素值为1;
如果像素之和小于初始边缘图像的阈值,则设置局部自适应阈值分割算法的移动小窗口中间的像素点的像素值为0;
步骤6.4:使用局部自适应阈值分隔算法的移动小窗口遍历初始边缘图像,得到最终边缘图像。
5.根据权利要求1所述的一种基于Canny算法的边缘检测方法,其特征在于,在步骤3中,计算平滑图像的梯度幅值和梯度方向的方法为:采用梯度幅值算子Hx和梯度方向算子Hy计算平滑图像的梯度幅值和梯度方向,所述梯度幅值算子Hx为式(1)、梯度方向算子Hx为式(2):
6.根据权利要求2所述的一种基于Canny算法的边缘检测方法,其特征在于,所述滤波窗口的半径最小值为1,最大值为M和N中的较小值,且滤波窗口的半径为整数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于佛山科学技术学院,未经佛山科学技术学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010492863.0/1.html,转载请声明来源钻瓜专利网。