The invention discloses a canny edge detection algorithm based on local threshold, the main steps are as follows: 1) smooth the image and remove the noise with Gaussian filter; 2) calculate the image gradient amplitude and direction based on the smoothed image; 3) perform non maximum suppression calculation on the gradient direction to obtain the edge points, if the current pixel gradient amplitude is greater than the positive and negative direction of the gradient For the gradient amplitude of two adjacent pixels, the point is considered as an edge point, and its corresponding position is marked as 1, otherwise the point is suppressed as a non edge point, and its corresponding position is marked as 0; 4) obtain the global scale value; 5) calculate the local high and low threshold matrix by using the acceleration algorithm according to the global scale value; 6) detect the edge according to the double threshold matrix, and obtain the final edge image. The Canny algorithm of the invention can not only adaptively detect the local significant edge in the image, but also has good acceleration calculation performance.
【技术实现步骤摘要】
一种基于局部阈值的Canny边缘检测算法
本专利技术属于数字图像处理
,具体涉及到一种基于局部阈值的Canny边缘检测算法。
技术介绍
边缘是图像最基本的特征,它能在保留物体形状信息的前提下大大减少所要处理的信息,因此边缘检测是图像处理领域最基本的问题,它的解决对于特征提取、描述以及目标识别等后续研究都有重要影响。灰度图像边缘是指图像局部区域灰度变化最显著的部分,图像的灰度变化可以用梯度来表示,常用一阶微分算子和二阶微分算子来描述梯度。这些算子算法简单,具有较好的实时性,但比较容易受到噪声的影响而产生虚假边缘和边缘断开的现象,从而影响边缘定位的精度。因此对图像边缘检测的研究依然具有非常重要的意义。传统Canny算法主要存在以下问题:1)阈值凭经验设置,自适应能力较差;2)基于全局阈值,没有考虑局部阈值存在不同,检测不到局部明显的边缘。针对问题1,研究者提出各种方法来自动计算自适应高低阈值,如采用最大类间方差法,根据图像的灰度均值与方差均值设计自动计算公式,根据梯度差分直方图自动计算高低阈值;针对问题2,王植、贺赛先的一种基于Canny理论的自适应边缘检测方法 ...
【技术保护点】
1.一种基于局部阈值的Canny边缘检测算法,其特征在于:包括以下步骤:1)对图像进行平滑滤波处理,用高斯滤波去除噪声;2)基于平滑后的图像计算图像梯度幅值和方向;3)对梯度方向进行非极大值抑制计算获取边缘点,若当前像素点梯度的幅值大于梯度正负方向上相邻两个像素点的梯度幅值,则认为该点是边缘点,将其对应位置标记为1,否则该点被抑制为非边缘点,将其对应位置标记为0;4)获取全局比例值;5)根据全局比例值,利用加速算法计算局部高低阈值矩阵;6)根据双阈值矩阵检测边缘,得到最终边缘图像。
【技术特征摘要】
1.一种基于局部阈值的Canny边缘检测算法,其特征在于:包括以下步骤:1)对图像进行平滑滤波处理,用高斯滤波去除噪声;2)基于平滑后的图像计算图像梯度幅值和方向;3)对梯度方向进行非极大值抑制计算获取边缘点,若当前像素点梯度的幅值大于梯度正负方向上相邻两个像素点的梯度幅值,则认为该点是边缘点,将其对应位置标记为1,否则该点被抑制为非边缘点,将其对应位置标记为0;4)获取全局比例值;5)根据全局比例值,利用加速算法计算局部高低阈值矩阵;6)根据双阈值矩阵检测边缘,得到最终边缘图像。2.根据权利要求1所述的一种基于局部阈值的Canny边缘检测算法,其特征在于:所述步骤1)的具体方法如下:选用二维高斯函数对图像进行平滑滤波处理,高斯函数和滤波去噪计算分别为公式(1)和公式(2)G(x,y)=H(x,y,σ)*I(x,y)(2)其中,H(x,y,σ)是二维高斯函数,I(x,y)是原灰度图像,G(x,y)是滤波去噪后的图像,*表示卷积;σ表示平滑程度。3.根据权利要求1所述的一种基于局部阈值的Canny边缘检测算法,其特征在于:所述步骤2)的具体方法如下:采用一维高斯函数的一阶导数计算平滑后图像G(x,y),得到水平和垂直方向的梯度,Gx(x,y)=ΔHx(x,σ)*G(x,y)(3c)Gy(x,y)=ΔHy(y,σ)*G(x,y)(4c)梯度幅值图M(x,y)和梯度方向角θ(x,y)计算分别为公式(5)和公式(6)其中,Hx(x,σ)和Hy(y,σ)分别表示行向量和列向量;ΔHx(x,σ)和ΔHy(y,σ)分别表示高斯函数一阶导数构成的行向量和列向量;Gx(x,y)和Gy(x,y)分别是通过卷积得到的行方向和列方向的梯度图像。4.根据权利要求1所述的一种基于局部阈值的Canny边缘检测算法,其特征在于:所述步骤4)的具体如下:首先利用最大类间方差法求梯度幅值图M(x,y)的分割阈值T,再采用公式(7)计算M(x,y)中灰度值大于等于T的像素点数占图像比例值,其中,m、n分别是梯度幅值图的行数和列数。5.根据权利要求1所述的一种基于局部阈值的Canny边缘检测算法,其特征在于:所述步骤5)的具体方法如下:设梯度幅值图M的大小为m×n,计算局部阈值的图像块S的大小为w×w,对于M的任意点(x,y)∈[v+1,m-v]×[v+1,n-v],依照下面步骤计算:1、以点(x,y)为中心,提取大小为w×w的局部图像块S;2、计算图像块S的局部阈值t作为点(x,y)的阈...
【专利技术属性】
技术研发人员:郑伯川,张征,杨泽静,何育欣,
申请(专利权)人:西华师范大学,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。