CN102999886A - 图像边缘检测器及标尺光栅栅线精度检测*** - Google Patents

图像边缘检测器及标尺光栅栅线精度检测*** Download PDF

Info

Publication number
CN102999886A
CN102999886A CN2012104274919A CN201210427491A CN102999886A CN 102999886 A CN102999886 A CN 102999886A CN 2012104274919 A CN2012104274919 A CN 2012104274919A CN 201210427491 A CN201210427491 A CN 201210427491A CN 102999886 A CN102999886 A CN 102999886A
Authority
CN
China
Prior art keywords
image
edge
module
value
pixel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012104274919A
Other languages
English (en)
Other versions
CN102999886B (zh
Inventor
李英志
王晓峰
王罡
邹晶
董玲
董建
刘季雨
孙秀梅
邹钺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHANGGUANG DIGITAL DISPLAY TECHNOLOGY Co Ltd
Original Assignee
CHANGGUANG DIGITAL DISPLAY TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHANGGUANG DIGITAL DISPLAY TECHNOLOGY Co Ltd filed Critical CHANGGUANG DIGITAL DISPLAY TECHNOLOGY Co Ltd
Priority to CN201210427491.9A priority Critical patent/CN102999886B/zh
Publication of CN102999886A publication Critical patent/CN102999886A/zh
Application granted granted Critical
Publication of CN102999886B publication Critical patent/CN102999886B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本发明涉及一种图像边缘检测器及包含该检测器的标尺光栅栅线精度检测***,所述检测器的图像滤波模块用于滤除图像噪声得到滤波后的图像,一次边缘提取模块利用双梯形边缘提取算子提取滤波后的图像的边缘得到一幅新图像;阈值分割模块选择一次边缘提取模块得到的新图像的最佳分割阈值T,然后对新图像作二值化处理,二次边缘提取模块利用双梯形边缘提取算子对阈值分割之后的图像再次进行边缘提取,边缘细化模块对二次边缘提取模块提取的边缘进行细化,去除毛刺。本发明可以清晰、准确的提取图像的边缘,且边缘的对比度非常高。

Description

图像边缘检测器及标尺光栅栅线精度检测***
技术领域
本发明属于图像处理技术领域,涉及一种图像边缘检测器及包含该检测器的标尺光栅栅线精度检测***。
背景技术
边缘是图像最基本的特征,边缘检测在计算机视觉、图像分析等应用中起着重要的作用,是图像分析与识别的重要环节,这是因为图像的边缘包含了用于识别的有用信息。所以边缘检测是图像分析和模式识别的主要特征提取手段。
经典的、最简单的边缘检测方法是对原始图像按像素的某邻域构造边缘算子,由于原始图像往往含有噪声,而边缘和噪声在空间域表现为灰度有比较大的起落,在频域则反应为同是高频分量,这就给边缘检测带来困难。
长光栅作为一种新型的计量元件已广泛用于各种测量仪器、机床数显、数控技术中。长光栅的制作精度将直接影响到测试仪器(如三坐标机等)的测量精度,以及工件的加工精度。因此要提高光栅尺的制作精度和长光栅应用的可靠性,必须对光栅尺的精度指标进行检测,分析长光栅制造过程中的误差因素。为保证光栅测量***准确稳定地工作,要求光栅莫尔条纹的电信号幅度要大、正弦性要好、亮暗电平的比值要大(即反差要好),同时要求在测量全长上,光栅信号幅度的变化要小、直流电平的变化和漂移要小、二相信号相位差的变化要小。实际应用表明:光栅信号的好坏主要取决于标尺光栅的质量。为此,通常以全长上光栅信号幅度和直流电平的变化,全长上二相信号相位差的变化以及光栅栅线精度等三项,作为评价光栅尺质量好坏的主要指标。实际应用也表明:光栅测量***的精度主要取决于标尺光栅栅线的精度。检测光栅栅线的精度首先要准确的提取莫尔条纹边缘线,然后通过计算得到光栅的栅距。
发明内容
本发明要解决的一个技术问题是提供一种能够清晰、准确地提取图像边缘的图像边缘检测器。
为了解决上述技术问题,本发明的图像边缘检测器包括:
图像滤波模块:滤除图像噪声得到滤波后的图像;
一次边缘提取模块:利用双梯形边缘提取算子提取图像的边缘,该算子的卷积模板如下所示:
G x = m 7 m 1 m 4 m 2 m 8 m 5 m 3 m 6 m 9   G y = m 1 m 2 m 3 m 7 m 8 m 9 m 4 m 5 m 6
其中:m1~m9都为整数,Gx是水平方向的边缘提取算子,Gy是垂直方向的边缘提取算子,m1=m3=-m4=-m6,m2=-m5,m2≥2×m1,m5≥2×m4,m7=m9<0,m8=-(m7+m9=)=-2×m7=-2×m9,|m7|≤|m1|;设图像中相邻两边缘之间的最小距离为d,则当d<20个像素时,|m1|=1或2,2≤|m2|≤5;当d≥20个像素时,2|m1|≤5≤,5≤|m2|≤10;
将滤波后的图像与卷积模板作卷积运算得到一幅新图像;
阈值分割模块:选择一次边缘提取模块得到的新图像的最佳分割阈值T,然后对新图像作二值化处理,将大于最佳分割阈值T的像素点置最大灰度值Nh,将小于最佳分割阈值T的像素点灰度置0,从而得到一幅二值化图像;
二次边缘提取模块:利用与一次边缘提取模块相同的方法对阈值分割之后的图像再次进行边缘提取;
边缘细化模块:对二次边缘提取模块提取的边缘进行细化,去除毛刺。
图像滤波是图像边缘检测的预处理阶段,主要是滤除图像噪声,为后续的边缘提取做准备。
边缘提取通常是借助空域导数算子通过卷积实现的。实际上这一过程是通过差分方法来近似完成的。梯度对应一阶或二阶导数,目前人们已经提出了许多种不同的算子,如Robert Cross算子、Prewitt算子、Kirsch算子和Sobel算子等。由于这些算子提取的边缘对比度比较低,不利于后续的阈值分割,因此本发明提出了一种新的边缘提取算子—双梯形算子。该算子可以清晰、准确的提取图像的边缘,且边缘的对比度非常高。
对比度公式: C = 1 M &times; N &Sigma; i = 1 M &Sigma; j = 1 N [ f ( i , j ) - f &OverBar; ] 2
平均梯度公式: G = 1 M &times; N &Sigma; i = 1 M &Sigma; j = 1 N [ ( f ( i , j ) - f ( i - 1 , j ) ) 2 + ( f ( i , j ) - f ( i , j - 1 ) ) 2 ]
其中f(i,j)为原始图像的第i行j列像素,
Figure BDA0000233612455
为原始图像的平均灰度值,原始图像大小为M行N列。
利用以上几种边缘提取算子对原始图像进行边缘提取,边缘提取之后的图像对比度及平均梯度对比值,如下表所示:
Robert Cross Prewitt Kirsch Sobel 双梯形算子
对比度 5 16 43 21 65
平均梯度 2 6 18 8 25
平均梯度越大,说明图像的边缘越清晰,对比度越大,说明边缘的对比度越高。从表中可以看出本发明所采用的双梯形算子对比度和平均梯度都大于其他算子,说明该算子可以清晰、准确的提取图像的边缘,且边缘的对比度非常高。
由于一次边缘提取结果仅描述了一幅图像粗略的边缘特性,因此需要对粗略的边缘图像做进一步的后处理。这种后处理包括阈值分割、边缘细化等处理。
阈值分割之后,图像的边缘线较粗,为了细化边缘线,本发明利用双梯形边缘提取算子将阈值分割之后的图像再次进行边缘提取,使边缘线细化为单像素。由于细化后的边缘线同时附带许多“毛刺”。本发明利用边缘细化模块对二次边缘提取模块提取的边缘进行进一步处理去掉这些“毛刺”,由此得到清晰、准确的图像边缘线。
所述图像滤波模块采用高斯滤波方法滤除噪声。
图像滤波是进行光栅栅线精度检测的预处理阶段,主要是滤除图像噪声,为后续的边缘提取做准备。在本发明中,采用高斯滤波方法可以有效的滤除噪声。
所述阈值分割模块计算新图像统计直方图,将统计直方图包络线拟合成一条光滑曲线,然后将找到的光滑曲线的极小值点作为背景与边缘线的最佳分割阈值T。
所述的阈值分割模块采用基于直方图包络线的阈值选取方法。该方法的基本思想是将图像统计直方图的包络线拟合成一条光滑曲线,找到的光滑曲线的极小值点即为背景与边缘线的最佳分割阈值。本发明通过图像统计直方图的分布特点,将图像直方图包络线上代表背景与目标交界处灰度值的极小值作为最佳分割阈值,对图像进行二值化处理,从而能够准确地分割出图像的边缘线。
所述阈值分割模块将新图像统计直方图进行平滑滤波,采用一阶微分法求出滤波之后的统计直方图的局部极大值集合;利用局部极大值集合进行曲线拟合,拟合之后求出曲线极小值点,并将该曲线极小值点对应的灰度值作为最佳分割阈值T。
所述阈值分割模块利用matlab编程进行曲线拟合。
所述图像滤波模块、一次边缘提取模块、阈值分割模块、二次边缘提取模块、边缘细化模块通过VC++与matlab混合编程的COM组件实现。
本发明在进行曲线拟合时,没有直接通过VC++来实现最小二乘拟合过程,这样计算过程非常复杂,计算量非常大。而是采用matlab编程,通过VC++与matlab混合编程的COM组件来实现的,大大减小了计算量。计算非常简单,且对于背景与目标对比度较大的情况求取阈值准确。
所述边缘细化模块存储有多个4×3消除模板,4×3消除模板如下:
P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10 P 11 P 12
消除模板同时满足如下四个条件:
a、P5的八邻域元素中有2~6个元素为1,其余元素为0,即N=P1+P2+P3+P4+P6+P7+P8,2≤N≤6;
b、P2和P8至少有一个为零,即P2 ×P8=0;
c、P5的八邻域元素按顺时针方向循环或按逆时针方向循环只有一个0、1间断点;
d、P4、P6和P8中至少有一个为零,即P4×P×P8=0;或者P8的八邻域元素按顺时针方向循环或按逆时针方向循环没有0、1间断点或者有大于1个0、1间断点;
从二值化图像左上角像素开始搜索,若当前像素灰度值为0,则跳过;若当前像素灰度值为Nh,则使该像素对应于消除模板的元素P5,将该像素周围其他像素与消除模板上对应位置元素进行比对,若与其中一个消除模板相同则将当前像素灰度置0,否则当前像素灰度值不变;重复上述过程,直到二值化图像中没有一个像素灰度值被改变为止,边缘细化结束。
边缘细化方法的种类很多,按照细化的顺序可分为:串行细化、并行细化和混合细化。本发明采用的细化方法属于串行细化,其原理是构造多个消除模板,将二值化图像与消除模板比较,决定是否删除某点。本发明采用的方法不仅可以细化彻底,细化后的单像素线在边缘线的中心线,并且光滑无毛刺,能够保证下一步计算的准确性。
边缘细化是指在不影响边缘线连通性的基础上,删除边缘线的边缘像素,去掉直线上的“毛刺”,使边缘线为单像素宽为止。理想细化后的边缘线骨架应该是原始边缘线的中间位置,并保持边缘线的连接性、拓扑结构和细节特征。一种好的细化算法应该满足下列条件:
(1)收敛性:迭代必须是收敛的
(2)连接性:不破坏边缘线的连接性
(3)拓扑性:不引起边缘线的逐步吞食, 保持原图像的基本结构特性
(4)保持性:保护边缘线的细节特征
(5)细化性:骨架边缘线的宽度为1个像素, 即单像素宽.
(6)中轴性:骨架尽可能接近条纹中心线
(7)快速性:算法简单, 速度快.
本发明采用的边缘细化方法可以同时满足以上7个条件,准确的提取出边缘线的骨架,去掉“毛刺”。
本发明要解决的另一个技术问题是提供一种包含上述图像边缘检测器的标尺光栅栅线精度检测***。
为了解决上述技术问题,本发明的标尺光栅栅线精度检测***还包括垂直升降台1,固定于垂直升降台1上的CCD相机2,连接在CCD相机2上的放大镜头5,安装在放大镜头5上的同轴光源6,图像采集卡3,栅线宽度计算模块;同轴光源6发出的平行光从放大镜头5的镜筒出来照在标尺光栅8的栅线区;CCD相机2采集光栅栅线区域图像并传送给图像采集卡3;图像采集卡3将采集的光栅图像数据传输给图像边缘检测器,图像边缘检测器提取光栅图像的栅线,栅线宽度计算模块将图像边缘检测器检测到的图像中每条栅线均匀分成M份,求得每一份的栅线宽度;然后将M个栅线宽度去掉N个最大值,去掉N个最小值,将中间的M-2N个值求平均得到每一条栅线的宽度;将整幅图像的所有栅线宽度去掉Q个最大值,去掉Q个最小值,然后求平均值,得出该图像的平均光栅栅线宽度;其中M>2N,栅线条数>2Q。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细说明。
图1是本发明的图像边缘检测器功能模块架构图。
图2是本发明的标尺光栅栅线精度检测***结构示意图。
图3是本发明的标尺光栅栅线精度检测***功能模块架构图。
图4是一次边缘模块得到的新图像的统计直方图。
图5是相机采集到的标尺光栅栅线区域的原始图像。
图6是检测出的光栅边缘线图像与原始图像的叠加图像。
具体实施方式
如图1所示,本发明的图像边缘检测器包括图像滤波模块、一次边缘提取模块、阈值分割模块、二次边缘提取模块和边缘细化模块。
图像在采集和传输的过程中,往往会掺杂各种噪声,造成图像的质量下降,这对于图像的边缘提取造成了很大的困难,为了更好的进行边缘提取,必须先进行滤波,本发明中图像滤波模块采用去噪效果较好的高斯滤波。二维零均值离散高斯函数表达式为:
g [ i , j ] = e - ( i 2 + j 2 ) 2 &sigma; 2
采集图像与高斯函数卷积得到滤波后的图像。
一次边缘提取模块采用一种新的双梯形边缘提取算子对滤波之后的图像进行边缘提取,该算子可以清晰、准确的提取图像的边缘,且边缘的对比度非常高,有利于后续的阈值分割。该算子的卷积模板如下所示:
G x = m 7 m 1 m 4 m 2 m 8 m 5 m 3 m 6 m 9   G y = m 1 m 2 m 3 m 7 m 8 m 9 m 4 m 5 m 6
其中:m1~m9都为整数,Gx是水平方向的边缘提取算子,Gy是垂直方向的边缘提取算子。m1=m3=-m4=-m6,m2=-m5,m2≥2×m1,m5≥2×m4,m7=m9<0,m8=-(m7+m9=)=-2×m7=-2×m9,|m7|≤|m1|;设图像中相邻两边缘之间的最小距离为d,则当d<20个像素时,|m1|=1或2,2≤|m2|≤5;当d≥20个像素时,2|m1|≤5≤,5≤|m2|≤10。
将滤波后的图像与卷积模板作卷积运算得到一幅新图像。
阈值分割模块对新图像进行阈值分割。
一次边缘提取模块得到的新图像虽然对比度较高,但背景与边缘线之间存在较大的过渡区域,要想准确的分割出边缘线,使边缘线既不能太粗也不能太细以至于断裂,必须选择合适的阈值。本发明的阈值分割模块采用的方法是基于直方图包络线的阈值选取方法。该方法的基本思想是将图像统计直方图的包络线拟合成一条光滑曲线,找到光滑曲线的极小值点即为背景与边缘线的最佳分割阈值。阈值分割模块首先采用微分的方法求出统计直方图包络线局部极大值,然后将这些局部极大值再拟合成光滑曲线。在进行曲线拟合时,没有直接通过VC++来实现最小二乘拟合过程,这样计算过程非常复杂,计算量非常大。而是采用matlab编程,通过VC++与matlab混合编程的COM组件来实现的,大大减小了计算量。该方法非常简单,且对于背景与目标对比度较大的情况求取阈值准确。具体实现过程如下:
a、首先得出新图像的统计直方图(参见图4),统计直方图中P(i)为图像上灰度级为i的像素点个数;
b、将统计直方图进行平滑滤波,即:
P ( i ) = ( P ( i - u ) + P ( i - u + 1 ) + . . . . . . P ( i - 2 ) + P ( i - 1 ) + P ( i ) + P ( i + 1 ) + P ( i + 2 ) + . . . . . . + P ( i + u ) ) / ( 2 u + 1 )
式中u为自然数,其数值的选择没有严格的规定,数值越大滤波效果越好,但计算量相应增加,一般选择3≤u≤7;
c、采用一阶微分法求出滤波之后的统计直方图的局部极大值集合M(j),其中j为局部极大值点对应的图像灰度值;
d、将局部极大值集合M(j)通过COM组件传递到matlab进行曲线拟合,拟合之后求出曲线极小值点,再传递回VC++,即得出最佳分割阈值T。
得出最佳分割阈值T后,利用二值化处理 f ( i , j ) = N h f ( i , j ) > T 0 f ( i , j ) < T 实现阈值分割,其中Nh一般为图像最大灰度级。
所述阈值分割模块还可以采用最大类间方差法得到最佳分割阈值T。最大类间方差法是在最小二乘原理的基础上推导出来的,其阈值求取过程如下:
a、首先找出图像中的最高灰度级L;
b、然后分别取从0至L的每一灰度级作为阈值th,计算该阈值所分开两类C0、C1的各自的概率w0、w1和平均值μ0、μ1。设图像灰度值为i的像素数为ni,则总像素数为:,各灰度值的概率为:pi=ni/N。
C0组的概率为:
Figure BDA00002336124513
C1组的概率为:
Figure BDA00002336124514
C0组的平均值为:
Figure BDA00002336124515
C1组的平均值为:
Figure BDA00002336124516
c、计算图像总的灰度平均值为:μ=ω0μ01μ1,计算两类间的方差为:σ200-μ)211-μ)2
d、找出两类间的方差为最大值的阈值T , 即σ2(T)=max(σ2(th))。
阈值计算完成后,利用二值化处理 f ( i , j ) = N h f ( i , j ) > T 0 f ( i , j ) < T 实现阈值分割。
阈值分割之后得到图像的边缘线较粗,为了细化边缘线,二次边缘提取模块采用了一种非常简单有效的方法,即与一次边缘提取模块相同的方法对阈值分割之后的图像再次进行边缘提取。
经过二次边缘提取后,虽然得出的图像的边缘几乎是单像素,但同时附带一些“毛刺”。为了除去这些“毛刺”,则采取边缘细化处理。边缘细化算法的种类很多,按照细化的顺序可分为:串行细化、并行细化和混合细化。本发明中边缘细化模块采用的细化方法属于串行细化,其原理是构造多个消除模板,将边缘连接之后的图像与消除模板比较,决定是否删除某点。本发明采用的方法不仅可以细化彻底,细化后的单像素线在光栅栅线边缘线的中心线,并且光滑无毛刺,能够保证下一步计算的准确性。
本发明中边缘细化模块采用多个4×3消除模板,如下所示:
P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10 P 11 P 12
通过将图像与该消除模板比对来决定当前点是否被删除。该消除模板所满足的条件分别是:
a、假设二次边缘提取后的图像中的像素值为0的用0代表,像素值为Nh的用1代表。P5的八邻域中1的个数在2到6之间,即N=P1+P2+P3+P4+P6+P7+P8,2≤N≤6;
b、P2和P8至少有一个为零,即P2 ×P8=0。
c、P5的八邻域元素按顺时针方向循环或逆时针方向循环只有一个0、1间断点。
d、P4、P6和P8中至少有一个为零,即P4×P6 ×P8=0;或者在P4、P5、P6、P9、P12、P11、P10、P7八个元素按顺时针方向循环或逆时针方向循环没有0、1间断点或者有大于1个0、1间断点。
从二值化图像左上角像素开始搜索,若当前像素值为0,则跳过,若当前像素值为Nh,则使该点对应于P5与消除模板比对,若与其中一个消除模板相同则该点删除(即使该点像素值置0),否则保留。重复上述过程,直到没有一个像素值被改变为止,边缘细化结束。
下面结合几个实例对边缘细化作详细说明。
设图像上某一4×3像素点灰度矩阵为:
P 1 &prime; P 2 &prime; P 3 &prime; P 4 &prime; P 5 &prime; P 6 &prime; P 7 &prime; P 8 &prime; P 9 &prime; P 10 &prime; P 11 &prime; P 12 &prime;
其中P'5为当前像素点。
( 1 ) , 1 1 1 0 1 0 0 0 0 1 1 1 ( 2 ) , 1 0 1 1 1 0 1 1 1 0 1 0 ( 3 ) , 1 1 1 1 1 0 1 1 1 0 1 0 ( 5 ) , 1 1 1 0 1 0 0 1 0 0 1 0
( 5 ) , 1 1 1 0 1 0 0 1 0 0 1 0   ( 6 ) , 0 0 0 1 1 1 1 1 1 1 0 1   ( 7 ) , 1 0 0 1 1 1 1 1 1 0 1 0 ( 8 ) , 1 1 1 0 1 0 0 1 0 0 0 0
假设上述八个矩阵中的元素对应于图像上八个部分的像素点。由于消除模板必须要同时满足上述四个条件,因而只要矩阵中的元素同时满足上述四个条件就可以确定该矩阵与其中一个消除模板相同,即对应于P5的像素点为“毛刺”,则将该像素点灰度值置0。
矩阵(1):当前点P5’的八邻域中1的个数为3;P8’为零;
P5’的八邻域元素按顺时针方向循环只有一个0、1间断点;P4’、P6’和P8’都为零,即P4×P6 ×P8=0。同时满足四个条件,P5’为毛刺,故删除。
矩阵(2):P5’的八邻域元素按顺时针方向循环有二个0、1间断点,不满足条件c。P5’点保留。
矩阵(3)不满足条件b,P5’点保留。
矩阵(4):同时满足四个条件,P5’删除。
矩阵(5)中P5’邻域有二个间断点,不满足条件c,P5’点保留。
矩阵(6):P8’邻域只有一个0,1间断点,不满足条件d,P5’点保留。
矩阵(7):P8’邻域有二个0,1间断点,同时满足四个条件,P5’删除。
矩阵(8):P8’邻域没有0,1间断点,同时满足四个条件,P5’删除。
参见图2、图3,本发明的标尺光栅栅线检测***包括垂直升降台1,固定于垂直升降台1上的高清1394接口CCD相机2,连接在CCD相机2后端的设备有图像采集卡3、计算机4,连接在CCD相机2上的高倍放大镜头5,安装在高倍放大镜头5上的同轴光源6;所述计算机4中包含图像边缘检测器及栅线宽度计算模块。同轴光源6发出的平行光从高倍放大镜头5的镜筒出来照在水平定位平台7上的标尺光栅8的栅线区。通过CCD相机采集光栅栅线区域图像,通过图像边缘检测器将栅线的边缘线准确的提取出来,然后由栅线宽度计算模块计算栅线的栅距。
本发明采用栅距为20um,黑白比为11:9的标尺光栅8,选择尺寸为2/3’’(像元尺寸为6.45um*6.45um)的高清CCD相机2,搭配放大倍数为8倍的高倍放大镜头5,其物距为87mm时,视场达到1mm。
如图3所示,本发明的本发明的标尺光栅栅线精度检测***功能模块包括图像滤波模块、一次边缘提取模块、阈值分割模块、二次边缘提取模块和边缘细化模块、栅线宽度计算模块;具体检测过程如下:(1)对采集到的图像进行滤波;(2)对滤波之后的图像进行第一次边缘提取;(3)对第一次边缘提取之后的图像进行阈值分割;(4)对阈值分割之后的图像再次进行边缘提取;(5)对边缘提取之后的图像进行边缘细化;(6)对边缘细化之后的图像进行计算。
每个步骤具体如下:
步骤(1):对采集到的图像进行滤波
CCD相机2采集到的标尺光栅栅线区的原始图像如图5所示。图像在采集和传输的过程中,往往会掺杂各种噪声,造成图像的质量下降,这对于图像的边缘提取造成了很大的困难,为了更好的进行边缘提取,必须先进行滤波,图像滤波模块采用去噪效果较好的高斯滤波。二维零均值离散高斯函数表达式为:
g [ i , j ] = e - ( i 2 + j 2 ) 2 &sigma; 2
采集图像与高斯函数卷积得到滤波后图像。
步骤(2):对滤波之后的图像进行边缘提取
一次边缘提取模块采用一种新的双梯形边缘提取算子。该算子可以清晰、准确的提取图像的边缘,且边缘的对比度非常高,有利于后续的阈值分割。该算子的卷积模板如下所示:
G x = m 7 m 1 m 4 m 2 m 8 m 5 m 3 m 6 m 9   G y = m 1 m 2 m 3 m 7 m 8 m 9 m 4 m 5 m 6
其中:m1~m9都为整数,Gx是水平方向的边缘提取算子,Gy是垂直方向的边缘提取算子。m1=m3=-m4=-m6,m2=-m5,m2≥2×m1,m5≥2×m4,m7=m9<0,m8=-(m7+m9=)=-2×m7=-2×m9,|m7|≤|m1|;设图像中相邻两边缘之间的最小距离为d,则当d<20个像素时,|m1|=1或2,2≤|m2|≤5;当d≥20个像素时,2|m1|≤5≤,5≤|m2|≤10。
在本发明光栅栅线精度检测中,图像边缘检测器的一次边缘提取模块和二次边缘提取模块可以仅采用水平方向的边缘提取算子Gx与滤波后的图像作卷积运算得到一幅新图像。提取光栅图像白条纹左边缘的水平方向边缘提取算子Gxz和提取光栅图像白条纹右边缘的水平方向边缘提取算子Gxy具体选择如下:
G xy = - 1 2 - 2 8 2 - 8 2 - 2 - 1          G xz = - 1 - 2 2 - 8 2 8 - 2 - 2 - 1
步骤(3):对第一次边缘提取之后的图像进行阈值分割
边缘提取之后的图像虽然对比度较高,但背景与边缘线之间存在较大的过渡区域,要想准确的分割出边缘线,使边缘线既不能太粗也不能太细以至于断裂,必须选择合适的阈值。阈值分割模块可以采用基于直方图包络线的阈值选取方法,也可以采用最大类间方差法或其他阈值分割方法。基于直方图包络线的阈值选取方法的基本思想是将图像统计直方图的包络线拟合成一条光滑曲线,找到光滑曲线的极小值点即为背景与边缘线的最佳分割阈值。阈值分割模块首先采用微分的方法求出局部极大值,然后将这些局部极大值再拟合成光滑曲线。在进行曲线拟合时,没有直接通过VC++来实现最小二乘拟合过程,这样计算过程非常复杂,计算量非常大。而是采用matlab编程,通过VC++与matlab混合编程的COM组件来实现的,大大减小了计算量。该方法非常简单,且对于背景与目标对比度较大的情况求取阈值准确。参见图4,具体实现过程如下:
a、首先得出一次边缘提取模块得到的新图像的统计直方图,统计直方图中P(i)为图像上灰度级为i的像素点个数;
b、将统计直方图进行平滑滤波,即:
P ( i ) = ( P ( i - u ) + P ( i - u + 1 ) + . . . . . . P ( i - 2 ) + P ( i - 1 ) + P ( i ) + P ( i + 1 ) + P ( i + 2 ) + . . . . . . + P ( i + u ) ) / ( 2 u + 1 )
其中u为自然数,其数值根据实际需要确定,u越大滤波效果越好,但计算量也相应增加。一般选择1≤u≤(),本发明中选择u=2。
c、采用一阶微分法求出滤波之后的统计直方图的局部极大值集合M(j),其中j为局部极大值点对应的图像灰度值。
d、将局部极大值集合M(j)通过COM组件传递到matlab进行曲线拟合,拟合之后求出曲线极小值点,再传递回VC++,即得出最佳分割阈值T。
阈值计算完成后,利用二值化处理 f ( i , j ) = N h f ( i , j ) > T 0 f ( i , j ) < T 实现阈值分割。其中Nh一般为图像最大灰度级。
步骤(4):对阈值分割之后的图像再次进行边缘提取
阈值分割之后得到图像的边缘线较粗,为了细化边缘线,二次边缘提取模块采用了一种非常简单有效的方法,即再次进行上述步骤(2)的边缘提取处理。
步骤(5):对边缘连接之后的图像进行边缘细化
经过上述步骤之后,虽然得出的图像的边缘几乎是单像素,但同时附带一些“毛刺”。为了除去这些“毛刺”,则采取边缘细化处理。边缘细化算法的种类很多,按照细化的顺序可分为:串行细化、并行细化和混合细化。本发明采用的细化方法属于串行细化,其原理是构造多个消除模板,将边缘连接之后的图像与模板比较,决定是否删除某点。本发明采用的方法不仅可以细化彻底,细化后的单像素线在光栅栅线边缘线的中心线,并且光滑无毛刺,保证了下一步计算的准确性。
该方法采用4*3消除模板,如下所示,将图像与消除模板比对时,消除模板中的P5对应图像中的当前点。该消除模板需满足一定的条件。该模板所满足的条件分别是:
P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10 P 11 P 12
4*3模板结构
a、假设二次边缘提取后的图像中的像素值为0的用0代表,像素值为Nh的用1代表。P5的八邻域中1的个数在2到6之间,即N=P1+P2+P3+P4+P6+P7+P8,2≤N≤6;
b、P2和P8至少有一个为零,即P2 ×P8=0。
c、P5的八邻域元素按顺时针方向循环或逆时针方向循环只有一个0、1间断点。
d、P4、P6和P8中至少有一个为零,即P4×P6×P8=0;或者在P4、P5、P6、P9、P12、P11、P10、P7八个元素按顺时针方向循环或逆时针方向循环没有0、1间断点或者有大于1个0、1间断点。
从二值化图像左上角像素开始搜索,若当前像素值为0,则跳过,若当前像素值为Nh,则将该点对应于P5与消除模板比对,若与其中一个消除模板相同,则该点删除,即将该点像素值置0,否则保留。重复上述过程,直到没有一个像素值被改变为止,边缘细化结束。
步骤(6):对边缘细化之后的图像进行计算
通过上述五个步骤的图像处理方法最终准确的提取出光栅栅线的边缘线,与原图像叠加后的图像如图6所示。本发明采用的CCD相机采集的图像大小为1392像素*1040像素,图像内包括数条光栅栅线,将每条栅线均匀分成20份,求每一份的栅线宽度。然后将20个栅线宽度去掉5个最大值,去掉5个最小值,将中间的10个值求平均即得每一条栅线的宽度。将整幅图像的所有栅线宽度去掉20个最大值,去掉20个最小值,然后求平均值,得出该图像的平均光栅栅线宽度。通过上述计算过程得图5中的标尺光栅平均栅距为19.35um。

Claims (8)

1.一种图像边缘检测器,其特征在于包括:
图像滤波模块:滤除图像噪声得到滤波后的图像;
一次边缘提取模块:利用双梯形边缘提取算子提取图像的边缘,该算子的卷积模板如下所示:
G x = m 7 m 1 m 4 m 2 m 8 m 5 m 3 m 6 m 9   G y = m 1 m 2 m 3 m 7 m 8 m 9 m 4 m 5 m 6
其中:m1~m9都为整数,Gx是水平方向的边缘提取算子,Gy是垂直方向的边缘提取算子,m1=m3=-m4=-m6,m2=-m5,m2≥2×m1,m5≥2×m4,m7=m9<0,m8=-(m7+m9=)=-2×m7=-2×m9,|m7|≤|m1|;设图像中相邻两边缘之间的最小距离为d,则当d<20个像素时,|m1|=1或2,2≤|m2|≤5;当d≥20个像素时,2|m1|≤5≤,5≤|m2|≤10;
将滤波后的图像与卷积模板作卷积运算得到一幅新图像;
阈值分割模块:选择一次边缘提取模块得到的新图像的最佳分割阈值T,然后对新图像作二值化处理,将大于最佳分割阈值T的像素点置最大灰度值Nh,将小于最佳分割阈值T的像素点灰度置0,从而得到一幅二值化图像;
二次边缘提取模块:利用与一次边缘提取模块相同的方法对阈值分割之后的图像再次进行边缘提取;
边缘细化模块:对二次边缘提取模块提取的边缘进行细化,去除毛刺。
2.根据权利要求1所述的图像边缘检测器,其特征在于所述阈值分割模块计算新图像统计直方图,将统计直方图包络线拟合成一条光滑曲线,然后将找到的光滑曲线的极小值点作为背景与边缘线的最佳分割阈值T。
3.根据权利要求2所述的图像边缘检测器,其特征在于所述阈值分割模块将新图像统计直方图进行平滑滤波,采用一阶微分法求出滤波之后的统计直方图的局部极大值集合;利用局部极大值集合进行曲线拟合,拟合之后求出曲线极小值点,并将该曲线极小值点对应的灰度值作为最佳分割阈值T。
4.根据权利要求3所述的图像边缘检测器,其特征在于所述阈值分割模块利用matlab编程进行曲线拟合。
5.根据权利要求1所述的图像边缘检测器,其特征在于所述边缘细化模块存储有多个4×3消除模板,4×3消除模板如下:
P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10 P 11 P 12
消除模板同时满足如下四个条件:
a、P5的八邻域元素中有2~6个元素为1,其余元素为0,即N=P1+P2+P3+P4+P6+P7+P8,2≤N≤6;
b、P2和P8至少有一个为零,即P2 ×P8=0;
c、P5的八邻域元素按顺时针方向循环或按逆时针方向循环只有一个0、1间断点;
d、P4、P6和P8中至少有一个为零,即P4×P×P8=0;或者P8的八邻域元素按顺时针方向循环或按逆时针方向循环没有0、1间断点或者有大于1个0、1间断点;
从二值化图像左上角像素开始搜索,若当前像素灰度值为0,则跳过;若当前像素灰度值为Nh,则使该像素对应于消除模板的元素P5,将该像素周围其他像素与消除模板上对应位置元素进行比对,若与其中一个消除模板相同则将当前像素灰度置0,否则当前像素灰度值不变;重复上述过程,直到二值化图像中没有一个像素灰度值被改变为止,边缘细化结束。
6.一种包含如权利要求1~5任一权利要求所述图像边缘检测器的标尺光栅栅线精度检测***,其特征在于还包括垂直升降台(1),固定于垂直升降台(1)上的CCD相机(2),连接在CCD相机(2)上的放大镜头(5),安装在放大镜头(5)上的同轴光源(6),图像采集卡(3),栅线宽度计算模块;同轴光源(6)发出的平行光从放大镜头(5)的镜筒出来照在标尺光栅(8)的栅线区;CCD相机(2)采集光栅栅线区域图像并传送给图像采集卡(3);图像采集卡(3)将采集的光栅图像数据传输给图像边缘检测器,图像边缘检测器提取光栅图像的栅线,栅线宽度计算模块将图像边缘检测器检测到的图像中每条栅线均匀分成M份,求得每一份的栅线宽度;然后将M个栅线宽度去掉N个最大值,去掉N个最小值,将中间的M-2N个值求平均得到每一条栅线的宽度;将整幅图像的所有栅线宽度去掉Q个最大值,去掉Q个最小值,然后求平均值,得出该图像的平均光栅栅线宽度;其中M>2N,栅线条数>2Q。
7.根据权利要求6所述的标尺光栅栅线精度检测***,其特征在于所述图像边缘检测器的一次边缘提取模块和二次边缘提取模块采用水平方向的边缘提取算子Gx与滤波后的图像作卷积运算得到一幅新图像。
8.根据权利要求7所述的标尺光栅栅线精度检测***,其特征在于提取光栅图像白条纹左边缘的水平方向边缘提取算子Gxz和提取光栅图像白条纹右边缘的水平方向边缘提取算子Gxy如下:
G xz = - 1 - 2 2 - 8 2 8 - 2 - 2 - 1          G xy = - 1 2 - 2 8 2 - 8 2 - 2 - 1
CN201210427491.9A 2012-10-31 2012-10-31 图像边缘检测器及标尺光栅栅线精度检测*** Expired - Fee Related CN102999886B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210427491.9A CN102999886B (zh) 2012-10-31 2012-10-31 图像边缘检测器及标尺光栅栅线精度检测***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210427491.9A CN102999886B (zh) 2012-10-31 2012-10-31 图像边缘检测器及标尺光栅栅线精度检测***

Publications (2)

Publication Number Publication Date
CN102999886A true CN102999886A (zh) 2013-03-27
CN102999886B CN102999886B (zh) 2016-01-13

Family

ID=47928423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210427491.9A Expired - Fee Related CN102999886B (zh) 2012-10-31 2012-10-31 图像边缘检测器及标尺光栅栅线精度检测***

Country Status (1)

Country Link
CN (1) CN102999886B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103389041A (zh) * 2013-07-30 2013-11-13 中节能太阳能科技(镇江)有限公司 一种测量栅线宽度的方法
CN105139391A (zh) * 2015-08-17 2015-12-09 长安大学 一种雾霾天气交通图像边缘检测方法
CN105574816A (zh) * 2014-10-13 2016-05-11 Ge医疗***环球技术有限公司 消除x光图像的滤线栅影的方法、装置及x光机升级套件
CN105913067A (zh) * 2016-04-18 2016-08-31 徐庆 图像轮廓特征的提取方法及其装置
CN106032967A (zh) * 2015-02-11 2016-10-19 贵州景浩科技有限公司 电子瞄准器的自动倍率调整方法
CN106546185A (zh) * 2016-10-18 2017-03-29 福州觉感视觉软件科技有限公司 一种基于机器视觉检测的轮廓质量检测方法
CN107742283A (zh) * 2017-09-16 2018-02-27 河北工业大学 一种电池片外观栅线粗细不均缺陷检测的方法
CN108024026A (zh) * 2017-12-14 2018-05-11 广东金赋科技股份有限公司 一种文档快速扫描方法
CN108674026A (zh) * 2018-05-16 2018-10-19 苏州迈为科技股份有限公司 太阳能电池片印刷品质检测方法和***
CN105844593B (zh) * 2016-01-25 2019-01-18 哈尔滨理工大学 一种单幅干涉圆条纹预处理的自动化处理方法
US10636120B2 (en) 2018-02-01 2020-04-28 Ricoh Company, Ltd. Image scaling with quality control
CN111402283A (zh) * 2020-02-25 2020-07-10 上海航天控制技术研究所 基于灰度方差导数的火星图像边缘特征自适应提取方法
CN111951234A (zh) * 2020-07-27 2020-11-17 上海微亿智造科技有限公司 模型检测方法
CN112414316A (zh) * 2020-10-28 2021-02-26 西北工业大学 一种应变片敏感栅尺寸参数测量方法
CN113592948A (zh) * 2019-12-31 2021-11-02 深圳硅基仿生科技有限公司 条栅视力的检测方法
CN117575886A (zh) * 2024-01-15 2024-02-20 之江实验室 一种图像边缘检测器、检测方法、电子设备、介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080013853A1 (en) * 2006-06-09 2008-01-17 Michael Albiez Method for processing a digital gray value image
CN101289156A (zh) * 2008-05-30 2008-10-22 浙江工业大学 基于全方位视觉传感器的智能集装箱吊具
CN102393964A (zh) * 2011-08-02 2012-03-28 中国科学院长春光学精密机械与物理研究所 一种条纹间隙检测方法
EP2293247B1 (en) * 2009-07-29 2012-09-05 Harman Becker Automotive Systems GmbH Edge detection with adaptive threshold

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080013853A1 (en) * 2006-06-09 2008-01-17 Michael Albiez Method for processing a digital gray value image
CN101289156A (zh) * 2008-05-30 2008-10-22 浙江工业大学 基于全方位视觉传感器的智能集装箱吊具
EP2293247B1 (en) * 2009-07-29 2012-09-05 Harman Becker Automotive Systems GmbH Edge detection with adaptive threshold
CN102393964A (zh) * 2011-08-02 2012-03-28 中国科学院长春光学精密机械与物理研究所 一种条纹间隙检测方法

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103389041B (zh) * 2013-07-30 2016-05-18 中节能太阳能科技(镇江)有限公司 一种测量栅线宽度的方法
CN103389041A (zh) * 2013-07-30 2013-11-13 中节能太阳能科技(镇江)有限公司 一种测量栅线宽度的方法
CN105574816A (zh) * 2014-10-13 2016-05-11 Ge医疗***环球技术有限公司 消除x光图像的滤线栅影的方法、装置及x光机升级套件
CN106032967A (zh) * 2015-02-11 2016-10-19 贵州景浩科技有限公司 电子瞄准器的自动倍率调整方法
CN105139391A (zh) * 2015-08-17 2015-12-09 长安大学 一种雾霾天气交通图像边缘检测方法
CN105139391B (zh) * 2015-08-17 2018-01-30 长安大学 一种雾霾天气交通图像边缘检测方法
CN105844593B (zh) * 2016-01-25 2019-01-18 哈尔滨理工大学 一种单幅干涉圆条纹预处理的自动化处理方法
CN105913067A (zh) * 2016-04-18 2016-08-31 徐庆 图像轮廓特征的提取方法及其装置
CN106546185A (zh) * 2016-10-18 2017-03-29 福州觉感视觉软件科技有限公司 一种基于机器视觉检测的轮廓质量检测方法
CN107742283A (zh) * 2017-09-16 2018-02-27 河北工业大学 一种电池片外观栅线粗细不均缺陷检测的方法
CN108024026A (zh) * 2017-12-14 2018-05-11 广东金赋科技股份有限公司 一种文档快速扫描方法
US10636120B2 (en) 2018-02-01 2020-04-28 Ricoh Company, Ltd. Image scaling with quality control
CN108674026A (zh) * 2018-05-16 2018-10-19 苏州迈为科技股份有限公司 太阳能电池片印刷品质检测方法和***
CN113592948A (zh) * 2019-12-31 2021-11-02 深圳硅基仿生科技有限公司 条栅视力的检测方法
CN111402283A (zh) * 2020-02-25 2020-07-10 上海航天控制技术研究所 基于灰度方差导数的火星图像边缘特征自适应提取方法
CN111402283B (zh) * 2020-02-25 2023-11-10 上海航天控制技术研究所 基于灰度方差导数的火星图像边缘特征自适应提取方法
CN111951234A (zh) * 2020-07-27 2020-11-17 上海微亿智造科技有限公司 模型检测方法
CN112414316A (zh) * 2020-10-28 2021-02-26 西北工业大学 一种应变片敏感栅尺寸参数测量方法
CN117575886A (zh) * 2024-01-15 2024-02-20 之江实验室 一种图像边缘检测器、检测方法、电子设备、介质
CN117575886B (zh) * 2024-01-15 2024-04-05 之江实验室 一种图像边缘检测器、检测方法、电子设备、介质

Also Published As

Publication number Publication date
CN102999886B (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
CN102999886B (zh) 图像边缘检测器及标尺光栅栅线精度检测***
CN103942797B (zh) 基于直方图和超像素的场景图像文字检测方法及***
CN102043950B (zh) 基于canny算子和边缘点统计的车辆轮廓识别方法
CN102184550B (zh) 一种动平台地面运动目标检测方法
CN103034848B (zh) 一种表单类型的识别方法
CN102629322B (zh) 一种基于边界点笔画形状的字符特征提取方法及应用
CN105261017A (zh) 基于路面约束的图像分割法提取行人感兴趣区域的方法
CN106815583B (zh) 一种基于mser和swt相结合的夜间车辆车牌定位方法
CN105160668A (zh) 图像分割方法、***与细胞图像分割方法、***
CN106446952A (zh) 一种乐谱图像识别方法及装置
Paunwala et al. A novel multiple license plate extraction technique for complex background in Indian traffic conditions
CN107633491A (zh) 一种基于目标检测的区域图像增强方法及存储介质
CN108537787B (zh) 一种人脸图像的质量判定方法
CN110163039B (zh) 判定车辆行驶状态的方法、设备、存储介质以及处理器
CN103955949A (zh) 基于Mean-shift算法的运动目标检测方法
CN104463138A (zh) 基于视觉结构属性的文本定位方法及***
CN104700420A (zh) 基于Hough变换的椭圆检测方法、***和虫卵识别方法
CN110335280A (zh) 一种基于移动端的金融单据图像分割与矫正方法
CN103914829B (zh) 一种含噪图像边缘检测方法
CN111489389A (zh) 一种光斑中心检测方法
CN111476804A (zh) 托辊图像高效分割方法、装置、设备及存储介质
CN116052152A (zh) 一种基于轮廓检测和深度神经网络的车牌识别***
CN109543498A (zh) 一种基于多任务网络的车道线检测方法
CN111145197B (zh) 一种精确的基于直方图和局部梯度的道岔转辙机缺口边缘定位方法
CN112084984A (zh) 一种基于改进的Mask RCNN的扶梯动作检测方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160113

Termination date: 20171031

CF01 Termination of patent right due to non-payment of annual fee