美章网 资料文库 数控雕刻的图像角点检测范文

数控雕刻的图像角点检测范文

本站小编为你精心准备了数控雕刻的图像角点检测参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

数控雕刻的图像角点检测

《中国测试杂志》2014年第三期

1基于三点链码和与差的角点检测算法

1.1基本概念八邻域链码的定义如图1所示。其中,P表示轮廓中的某个像素点,0~7为该像素点在不同方向的链码值。运用轮廓跟踪算法[7-9]可将轮廓用链码表示。图2所示的轮廓(黑色方框代表轮廓中的像素点),从点A开始按顺时针方向移动时,轮廓的边界链码表示为L=1701765554322。相对链码为当前点与前一点的链码值之差,当前点与前一点的链码差大于4时,相对链码值为其差值减8。绝对链码为相对链码从起始点开始的累加值,设起始点的绝对链码值为0。当绝对链码从起始点绕轮廓一周后,由于相对链码的累加,其值将增加8,即:

1.2三点链码和与三点链码差计算三点链码和是指当前点与前两点的绝对链码之和,在轮廓边界的局部可以将其近似看作一条直线,表示该点的斜率,其计算如式(3):对封闭轮廓,计算起始两点的三点链码和时,部分绝对链码值要从末端取,而末端的绝对值比起始点的大8,具体计算如式(4):根据式(4)得到起始点的三点链码和不一定等于0,为了统一,在计算每个边界点的三点链码和时,将所有点的三点链码和均减去起始点的三点链码和,得到从0开始的三点链码和序列。三点链码差是指当前点邻域内的三点链码和之差,即:同理,对封闭轮廓,在计算起始点和末端两点的三点链码和之差时,部分数据要在末端和起始点取,即图3为五角星轮廓,图4(a)和图4(b)为五角星轮廓对应的三点链码和与三点链码差曲线图。三点链码和将轮廓分成24等分,而链码只将轮廓分成8等分。因此,用三点链码和可以更好地表示边界的轮廓特征。在链码和曲线上,直线段的部分对应边界上的直线,倾斜的直线对应边界上的斜线或圆弧,当链码和曲线对应的是圆弧时,曲线上的倾角越小,圆弧的半径就越大,反之则越小。三点链码差表示两个切线方向的差值,是一个与曲率成正比的量[10]。三点链码差为1,表示两切线方向的夹角为15°[11]。三点链码差曲线中的极值点即为图像轮廓的角点。当边界轮廓沿着逆时针走向时,差值为正的点为凸角点,差值为负的点为凹角点。

1.3基于邻域最大值和斜率差值的伪角点辨别方法角点检测中,图像中一些非真实的角点会被误检测为角点,称为伪角点。本文对伪角点的产生原因进行了研究,根据分析结果进行了如下处理。(1)伪角点出现在真实角点的邻域。对这类伪点,在检测到某点为角点时,检测其邻域内N个像素点(N一般取3~8)是否还有其他角点,若存在其他角点,则取这N+1个像素中三点链码差的绝对值最大的那一点为真实角点,然后删除其他角点;否则保留该点为真实角点并进行下一角点的检测。(2)伪角点出现在近似直线的轮廓线段中。对这类伪角点,只需计算相邻两角点与该点的斜率,然后根据斜率差值的绝对值判定该点是否为角点,若斜率差值较小,则该点为伪角点并删除,否则保留该点为真实角点。计算过程如下:在封闭轮廓中,对起始和末端角点进行伪角点检测时,其坐标值应分别从末端和起始点取。设(x1、y1)、(xm、ym)分别为某轮廓角点序列的起始和末端坐标值,则起始角点的斜率计算如式(9):1.4角点检测算法角点判定方法为Diff(i)≤u或Diff(i)≥ν(11)其中u和ν分别代表上下阈值,u值为负,ν值为正。u和ν的大小对角点检测的效果有直接影响。u、ν的值越大,表示对角点的判定越严格,检测到的角点越少;反之,u、ν的值越小,检测到的角点越多,甚至有一些不是角点的点也会被检测为角点。因此,对于u和ν的值一般要根据具体情况进行调整。通常情况下,u、ν的绝对值以1~3为宜。综合分析,角点检测算法的总流程如图5所示。

2仿真与分析

本研究以某个剪纸图像轮廓(实际角点数为144个)为例。取角点检测的阈值u=-2,ν=2,N=5,δ=0.1,将其与harris(取harris算法中矩阵的两特征值的比为0.09)、Freeman链码算法比较,检测结果如图6。仿真结果对比如表1所示。从表1可以看出,Harris算法检测的角点数为288个,其中真实角点占123个,伪角点数165个;Freeman链码算法检测的角点数为664个,伪角点数多达534个;本算法检测的角点数为189个,其中真实角点126个,占检测角点的66.7%,真实角点的检测率达87.5%,检测效果明显优于传统两个角点检测算法。

3结束语

针对具有图像处理的数控雕刻系统中的角点检测问题,研究了运用三点链码和与三点链码差检测图像轮廓的角点,并首次应用邻域最大值和斜率差值法去除伪角点。仿真结果表明,本算法计算简单,稳定可靠,可以更有效地检测出图像的真实角点。

作者:翟敬梅唐会华邹焱飚单位:华南理工大学机械与汽车工程学院