一种检测图像灰度变化的方法技术

技术编号:2948882 阅读:438 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种检测图像灰度变化的方法,预先设置计算水平差分值的第一检测范围和计算竖直差分值的第二检测范围,其过程为:A.获取图像的各个像素数据;B.遍历整副图像,对每个像素执行;B1、为像素选择一个水平参考像素和一个竖直参考像素;B2、用像素第一检测范围内所有像素的灰度值的和以及水平参考像素第一检测范围内所有像素的灰度值的和,求出水平差分值;B3、用像素第二检测范围内所有像素的灰度值的和以及竖直参考像素第二检测范围内所有像素的灰度值的和,求出竖直差分值;B4、用计算出的水平差分值和竖直差分值,计算该像素的梯度值;C.根据计算出的梯度值,获得图像灰度变化情况。用本发明专利技术能检测出灰度缓慢变化的情况。

【技术实现步骤摘要】

本专利技术涉及图像处理中的图像检测技术,特别涉及。
技术介绍
在图像检测技术中,对图像的灰度变化进行检测是一个重要的步骤,例如边缘检测、纹理检测中,都是基于灰度变化的检测结果进行处理,从而最终检测出图像的边缘或图像的纹理。目前,检测图像灰度变化的方法是通过差分操作获得像素的梯度值来实现的,其基本原理就是计算出相邻像素灰度的差值,由差值计算出像素的梯度值,梯度值越大就表示灰度变化率越大,因此用梯度值来体现图像灰度变化的情况。参见图1,图1为现有技术检测图像灰度变化的原理示意图。其中,像素点P点与像素点P1、像素点P2点分别相邻。P点的梯度值是通过分别与P1点和与P2点计算出水平差分值和竖直差分值来获得的。其具体的处理过程参见图2,图2为现有技术检测图像灰度变化的流程图。该流程包括以下步骤步骤201,读取图像各个像素的坐标值和灰度值数据,存储到函数f(x,y)中,其中存储了各个像素的横纵坐标,用x、y表示,还存储了各个像素的灰度值(通常也称为像素值),由f(x,y)的值表示。步骤202,遍历整副图像,用公式(1)、(2)、(3)计算出每一个像素的梯度值,并存储。首先,用公式(1)、(2)计算出水平差分值Δxf(x,y)和竖直差分值Δyf(x,y)Δxf(x,y)=f(x,y)-f(x+1,y) (1)Δyf(x,y)=f(x,y)-f(x,y-1) (2)然后,用公式(3)计算出梯度值f。▿f=(Δxf)2+(Δyf)2----------(2)]]>其中,梯度值还可以用公式(4)计算获得。|f|=|Δxf|+|Δyf|(4)步骤203,根据存储的各个像素的梯度值,获得图像灰度变化情况。这样就可以按照一般图像的边缘或图像的纹理灰度变化较大的原理,根据获得的图像灰度变化情况,最终检测出图像的边缘或图像的纹理,通常的做法是通过预定的阈值来判断是否为边缘或纹理,如果,则判断为边缘或纹理,否则不是边缘或纹理。但实际上,很多图像没有明显的边缘,其边缘的灰度值是渐变的,有的图像边缘处灰度变化剧烈,例如图3所示情况,图3为图像边缘水平方向上像素灰度值第一曲线图,其中相邻像素P点和P2点的灰度值相差较大。有的图像边缘处灰度变化缓慢,例如图4所示情况,图4为图像边缘水平方向上像素灰度值第二曲线图,其中相邻像素P点和P2点的灰度值相差较小。对于图3所示的情况,用上述方法获得的梯度值较大,所以能够检测出边缘;而对于图4所示情况,人眼可以分辨出来灰度变化而确定边缘,但在上述方法中,由于只用各个像素相邻的像素的灰度值计算差值,然后获得梯度值,这样在灰度渐变情况下获得的梯度值就会比较小。如果梯度值小于阈值,则无法判断出是边缘。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供,该方法能够在灰度缓慢变化的情况下,检测出灰度变化,有利于准确地检测出图像的边缘或图像的纹理。为达到上述目的,本专利技术的技术方案具体是这样实现的,该方法预先设置计算水平差分值的第一检测范围和计算竖直差分值的第二检测范围,检测图像灰度变化的过程包括A、获取图像的各个像素数据;B、遍历整副图像,对每个像素执行B1、为像素选择一个水平参考像素和一个竖直参考像素;B2、用像素第一检测范围内所有像素的灰度值的和以及水平参考像素第一检测范围内所有像素的灰度值的和,求出水平差分值;B3、用像素第二检测范围内所有像素的灰度值的和以及竖直参考像素第二检测范围内所有像素的灰度值的和,求出竖直差分值;B4、用计算出的水平差分值和竖直差分值,计算该像素的梯度值;C、根据计算出的梯度值,获得图像灰度变化情况。其中,可以设置所述第一检测范围的值与第二检测范围的值相等或不等。步骤B1所述选择水平参考像素和竖直参考像素的方法可以为将与该像素水平相隔第一检测范围的像素设置为水平参考像素;将与该像素竖直相隔第二检测范围的像素设置为竖直参考像素。步骤B2所述求出水平差分值的方法可以为将水平参考像素第一检测范围内所有像素的灰度值的和与像素第一检测范围内所有像素的灰度值的和求差,获得水平差分值。步骤B3所述求出竖直差分值的方法可以为将竖直参考像素第二检测范围内所有像素的灰度值的和与像素第二检测范围内所有像素的灰度值的和求差,获得竖直差分值。所述计算该像素的梯度值的方法可以为将像素的水平差分值和竖直差分值分别平方后相加,对相加的结果进行开方,获得该像素的梯度值。所述计算该像素的梯度值的方法也可以为将像素的水平差分值和竖直差分值分别取绝对值后相加,获得该像素的梯度值。由上述的技术方案可见,本专利技术的这种检测图像灰度变化的方法,拓宽检测的范围,用各个像素周围一段区域的统计数据来计算梯度值,也就是从点与点的对比拓展到局部区域间的对比,这样就使灰度差被拉大了,获得的梯度值也加大了,因此能够在灰度缓慢变化的情况下,检测出灰度变化,有利于准确地检测出图像的边缘或图像的纹理。附图说明图1为现有技术检测图像灰度变化的原理示意图;图2为现有技术检测图像灰度变化的流程图;图3为图像边缘水平方向上像素灰度值第一曲线图;图4为图像边缘水平方向上像素灰度值第二曲线图;图5为本专利技术检测图像灰度变化的较佳实施例原理示意图;图6为图5所示实施例的流程图;图7为图像边缘水平方向上像素灰度值第三曲线图。具体实施例方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本专利技术进一步详细说明。本专利技术检测图像灰度变化的方法的主要思想是拓宽检测的范围,用各个像素周围一段区域的统计数据来计算梯度值,也就是从点与点的对比拓展到局部区域间的对比,这样就使灰度差被拉大了,获得的梯度值也加大了,因此能够在灰度缓慢变化的情况下,检测出灰度变化,有利于准确地检测出图像的边缘或图像的纹理。参见图5,图5为本专利技术检测图像灰度变化的较佳实施例原理示意图。本实施例中预先设置了计算水平差分值的第一检测范围值n和计算竖直差分值的第二检测范围值m,为了处理简便,本实施例中n=m,实际应用中也可以不相等。图5中,P点为被检测的像素点,P2点为P点的水平参考像素点;P1点为P点的竖直参考像素点。P1点与P点竖直相隔n、P2点与P点水平相隔n,A点、P点、B点、P2点、C点间分别相隔n/2。D点、P点、E点、P1点、F点间分别相隔n/2。参见图6,图6为图5所示实施例的流程图。该流程包括以下步骤步骤601,读取图像各个像素的灰度值、坐标值等数据并存储。本步骤中,存储的方法可以与现有技术相同,即存储到函数f(x,y)中。当然可以采用其他方式存储,只要能将各个像素的灰度值和坐标值对应存储即可。步骤602,选择一个像素。步骤603,计算选择像素水平方向在n范围内所有相邻像素的灰度值的和1。步骤604,将与选择像素水平相隔n的像素设置为水平参考像素,求出水平参考像素水平方向在n范围内相邻的所有像素的灰度值的和2。步骤605,将步骤604获得的灰度值的和2与步骤603获得的灰度值的和1进行求差计算,获得水平差分值Δxf(x,y)。步骤603~步骤605可以由公式(5)表示Δxf(x,y)=Σi=(a+n/2)a+3*n/2f(i,j)-Σi本文档来自技高网
...

【技术保护点】
一种检测图像灰度变化的方法,其特征在于:该方法预先设置计算水平差分值的第一检测范围和计算竖直差分值的第二检测范围,检测图像灰度变化的过程包括:A、获取图像的各个像素数据;B、遍历整副图像,对每个像素执行:B1、为像素 选择一个水平参考像素和一个竖直参考像素;B2、用像素第一检测范围内所有像素的灰度值的和以及水平参考像素第一检测范围内所有像素的灰度值的和,求出水平差分值;B3、用像素第二检测范围内所有像素的灰度值的和以及竖直参考像素第二检测 范围内所有像素的灰度值的和,求出竖直差分值; B4、用计算出的水平差分值和竖直差分值,计算该像素的梯度值;C、根据计算出的梯度值,获得图像灰度变化情况。

【技术特征摘要】

【专利技术属性】
技术研发人员:孙丰强赵原刘世伟
申请(专利权)人:北京中星微电子有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1