极坐标梯度公式_一种基于极坐标系梯度变化的类圆环边缘检测方法与流程

本发明涉及图形处理技术领域,具体地说是一种基于极坐标系梯度变化的类圆环边缘检测方法。

背景技术:

边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点。图像属性中的显著变化通常反映了属性的重要事件和变化,包括(i)深度上的不连续、(ii)表面方向不连续、(iii)物质属性变化和(iv)场景照明变化。边缘检测是图像处理和计算机视觉中,尤其是特征提取中的一个研究领域。

边缘提取其实也是一种滤波,不同的算子有不同的提取效果,比较常用的方法有三种,sobel算子、canny算子、laplacian算子。

sobel算子检测方法对灰度渐变和噪声较多的图像处理效果较好,sobel算子对边缘定位不是很准确,图像的边缘不止一个像素;当对精度要求不是很高时,是一种较为常用的边缘检测方法。

canny算子检测方法不容易受噪声干扰,能够检测到真正的弱边缘;优点在于,使用两种不同的阈值分别检测强边缘和弱边缘,并且当弱边缘和强边缘相连时,才将弱边缘包含在输出图像中。

laplacian算子检测方法对噪声比较敏感,所以很少用该算子检测边缘,而是用来判断边缘像素视为与图像的明区还是暗区;拉普拉斯高斯算子是一种二阶导数算子,将在边缘处产生一个陡峭的零交叉,laplacian算子是各向同性的,能对任何走向的界线和线条进行锐化,无方向性,这是拉普拉斯算子区别于其他算法的最大优点。

但是以上多种算法都是基于笛卡尔坐标系数据计算的,当源数据的笛卡尔坐标系方向上的梯度变化不明显时,比如圆的检测,以上算法的效果往往不理想。

如中国专利cn104715491a公开了一种基于一维灰度矩的亚像素边缘检测方法,包括以下步骤:s1:采用中值滤波方式对待处理图像进行去噪处理;s2:采用canny边缘检测算子方法对待处理图像进行像素级边缘检测;s3:采用一维灰度矩方法对图像的像素进行边缘检测,完成该图像的亚像素边缘检测。该发明在空间域的笛卡尔坐标下利用一维灰度矩进行像素边缘检测,但对于圆环类的边缘检测效果并不理想。

因此,如何提供一种类圆环边缘检测方法,以实现弧线边缘、圆形边缘及球形边缘等类圆环的检测效果,是目前本领域技术人员亟待解决的技术问题。

技术实现要素:

有鉴于此,本申请的目的在于提供一种类圆环边缘检测方法,以实现弧线边缘、圆形边缘及球形边缘等类圆环的检测效果。

为了达到上述目的,本申请提供如下技术方案。

一种基于极坐标系梯度变化的类圆环边缘检测方法,利用极坐标系转换来计算梯度,包括以下步骤:

101、将原始笛卡尔系数据体使用canny或sobel算子,提取到可靠的极坐标系参照物,或者指定一个可靠的极坐标系中心,建立极坐标系;

102、将笛卡尔系数据体转换为极坐标系数据体;

103、计算极坐标系数据体沿极坐标方向的梯度数据体;

104、对步骤103生成的梯度数据体使用canny或sobel算子进行边缘检测。

优选地,所述步骤101中将原始笛卡尔系数据体使用sobel算子,提取到可靠的极坐标系参照物,公式如下:

优选地,所述步骤102中将笛卡尔系数据体转换为极坐标系数据体是对笛卡尔系数据体中的每个数据点根据其笛卡尔系坐标转换为极坐标系的坐标,公式如下:

θ=tan-1y/x

式中,x,y为点的笛卡尔系坐标;r,θ为转换后的点的极坐标。

优选地,所述步骤103中计算极坐标系数据体沿极坐标方向的梯度数据体是对极坐标系数据体中的每个数据点沿极坐标方向计算梯度,沿极坐标系的半径方向及角度方向分别计算梯度,公式如下:

δxf(i,j)=f(i+1,j)-f(i,j)

δyf(i,j)=f(i,j+1)-f(i,j)

式中,f(i,j)为相应图像上(i,j)处的灰度值。

优选地,所述步骤103中计算得到的梯度数据体作为新的通道添加到极坐标系数据体中。

优选地,所述步骤104中对梯度数据体使用sobel算子进行边缘检测是先对图像进行两次卷积运算并相加,进行边缘检测,得到极坐标数据体的边缘信息,再根据公式将极坐标系数据体检测出的边缘恢复成笛卡尔坐标系数据,重新绘制到原始数据中,具体步骤如下:

201、使用sobel算子进行边缘检测,公式如下:

202、根据公式将边缘恢复成笛卡尔坐标系数据,公式如下:

x=rcosθ

y=rsinθ

式中,x,y为点的笛卡尔系坐标;r,θ为转换后的点的极坐标。

本发明所获得的有益技术效果:

1)本发明解决了传统边缘检测算法沿笛卡尔坐标系方向计算梯度导致在圆形边缘及球形边缘上检测效果较差的问题,本发明采用极坐标系转换,通过计算半径方向上的梯度,提高弧线边缘检测的成功率;

2)本发明通过使用计算梯度来增加原始数据的信息量,在使用少量性能的情况下,增加数据的丰富程度;

3)本发明通过使用增加通道的方法,在保留原始信息的情况下,增加数据的维度。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,从而可依照说明书的内容予以实施,并且为了让本申请的上述和其他目的、特征和优点能够更明显易懂,以下以本申请的较佳实施例并配合附图详细说明如后。

根据下文结合附图对本申请具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述及其他目的、优点和特征。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。

图1是本实施例公开的一种基于极坐标系梯度变化的类圆环边缘检测方法的流程图;

图2是本实施例公开的原始数据;

图3是本实施例公开的原始数据进行转换后的结果;

图4是本实施例公开的最终的识别结果。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本申请的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本申请的范围和精神。另外,为了清楚和简洁,实施例中省略了对已知功能和构造的描述。

应该理解,说明书通篇中提到的“一个实施例”或“本实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“一个实施例”或“本实施例”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。

此外,本申请可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身并不指示所讨论各种实施例和/或设置之间的关系。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b三种情况,本文中术语“/和”是描述另一种关联对象关系,表示可以存在两种关系,例如,a/和b,可以表示:单独存在a,单独存在a和b两种情况,另外,本文中字符“/”,一般表示前后关联对象是一种“或”关系。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含。

实施例1

如附图1所示,一种基于极坐标系梯度变化的类圆环边缘检测方法,利用极坐标系转换来计算梯度,包括以下步骤:

101、将原始笛卡尔系数据体使用sobel算子,提取到可靠的极坐标系参照物,公式如下:

对图像进行两次卷积运算并相加,进行边缘检测,提取到可靠的极坐标系参照物,如完整的圆或球形,建立极坐标系。

其中,原始笛卡尔系数据体如附图2所示。

在一个实施例中,指定一个可靠的极坐标系中心,建立极坐标系,以二维数据为例,需要在其中找到一个居中的圆或者指定极坐标系中心,基于极坐标系中心建立极坐标系。

在一个实施例中,将原始笛卡尔系数据体使用canny算子,提取到可靠的极坐标系参照物,或者指定一个可靠的极坐标系中心,建立极坐标系。

102、将笛卡尔系数据体转换为极坐标系数据体,将笛卡尔系数据体中的每个数据点根据其笛卡尔系坐标转换为极坐标系的坐标,公式如下:

θ=tan-1y/x(4)

式中,x,y为点的笛卡尔系坐标;r,θ为转换后的点的极坐标。

转换后的结果如附图3所示。

103、计算极坐标系数据体沿极坐标方向的梯度数据体,将极坐标系数据体中的每个数据点沿极坐标方向计算梯度,以二维数据为例,需要沿极坐标系的半径方向及角度方向分别计算梯度,公式如下:

δxf(i,j)=f(i+1,j)-f(i,j)(5)

δyf(i,j)=f(i,j+1)-f(i,j)(6)

式中,f(i,j)为相应图像上(i,j)处的灰度值。

计算得到的梯度数据体作为新的通道添加到极坐标系数据体中。

104、对步骤103生成的梯度数据体使用sobel算子进行边缘检测,先对图像进行两次卷积运算并相加,进行边缘检测,得到极坐标数据体的边缘信息,再根据公式将极坐标系数据体检测出的边缘恢复成笛卡尔坐标系数据,重新绘制到原始数据中,具体步骤如下:

201、使用sobel算子进行边缘检测,公式如下:

对图像进行两次卷积运算并相加,进行边缘检测,得到极坐标数据体的边缘信息。

202、根据公式将边缘恢复成笛卡尔坐标系数据,公式如下:

x=rcosθ(9)

y=rsinθ(10)

式中,x,y为点的笛卡尔系坐标;r,θ为转换后的点的极坐标。

将上述公式得到的笛卡尔坐标系数据重新绘制到原始数据中,得到结果如附图4所示,由附图4可知,边缘提取的信息较准确,弧线边缘检测的效果较好,弧线边缘检测的成功率较高。

在一个实施例中,对步骤103生成的梯度数据体使用canny算子进行边缘检测。

以上所述仅为本发明的优选实施例而已,其并非因此限制本发明的保护范围,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,通过常规的替代或者能够实现相同的功能在不脱离本发明的原理和精神的情况下对这些实施例进行变化、修改、替换、整合和参数变更均落入本发明的保护范围内。

你可能感兴趣的:(极坐标梯度公式)