基于几何特征的圆心定位方法研究与应用

2013-08-10 10:21王术彬杨嘉骏王晓波李慧霞
电子设计工程 2013年6期
关键词:中垂线圆心直角三角形

王术彬,杨嘉骏,王晓波,付 聪,李慧霞

(河海大学 计算机与信息学院,江苏省输配电装备技术重点实验室,江苏 常州 213022)

在图像处理中,圆的检测与圆心定位有着举足轻重的作用,在当今诸多行业领域的研发设计里,圆心定位传感器的地位也日显重要。例如在各种灌装设备中依靠视觉定位仪器进行定位操作,大多是对目标物体的圆形加注口进行检测定位。圆心定位的效果直接决定了系统性能的好坏。

在圆的检测定位方面,目前已经有许多较为成熟的设计方法。其中最为常用的Hough变换[1]圆检测(HTCD)的方法,由于受噪声和曲线间断的影响较小,能有效的得到圆的特征信息,因而在智能检测中得到广泛应用[2]。但是该方法也存在明显的缺陷,海量的数据导致占用内存很大,该方法的计算量也非常大,难以满足实时性要求较高的圆检测。David.G.Lowe[3]在总结了现有的不变量特征检测方法基础上提出了SIFT(scale invariant feature transform)算法,它是一种基于尺度空间的对图像缩放 、旋转甚至仿射变换均保持不变性的局部特征点匹配算法。在图像识别、目标跟踪定位中[4]得到了广泛的应用。但SIFT算法本身运算复杂,提取的特征点有很多冗,而这些冗余在进行圆心定位时是没有必要的,因此吴慧兰[5]等人在此基础上做了改进研究,取得了良好的效果。曹建海等人[6]在利用投影变换进行特征提取的基础上,提出了基于矢量和的全局最优的圆心定位方法,并利用卷乘和频域方法实现定位的快速算法 。还有一种较为常用的方法就是先通过Canny[7]边缘提取得到图像的所有边缘信息,再对图像剩余像素点进行定位操作,如张虎等人[8]提出的改进亚像素圆心定位法等。

文中通过对简易图像的仿真验证,得出了基于几何特征的圆心定位方法,并将其应用到实际过程中,以工业生产中的偏心灌装桶为例,实际采样图像进行仿真验证,实现了偏心桶加注口的准确定位

1 圆心定位方法研究

首先针对一幅理想的圆心定位图像(一幅图像中除了圆周像素点含有有效信息外,不存在其他噪声点,并且圆周像素点保持完整,如图1所示)进行圆心定位。由于此类图像特征突出,二值化以后所得到的图像所有的像素值被置为0和1,在图像中分别展示为黑色和白色。圆周部分像素点为黑色,这样以来整幅图像中所有的信息点都是可以利用的点,所以可以根据圆的几何特性来找出图像中圆的圆心。文中采用了3种比较常见的计算方法进行了仿真研究,主要包括:直角三角形法、中垂线法、等距法。

图1 标准圆及其残缺圆Fig.1 Standard circle image and it’s fragmentary form

1.1 直角三角形法

所谓直角三角形法就是构造一个圆的内接直角三角形,其原理是根据过圆上一点的一条非切线的直线与圆相交有且仅有两个交点,据此来对图像中的点沿着某一直线扫描,得到直角三角形的顶点,从而构造出直角三角形,然后求得直角三角形斜边的中点坐标即为圆的圆心坐标,圆的半径就是直角三角形斜边长度的一半。该方法的具体实现步骤如下:

Step1:扫描图像,提取整幅图像中所有像素值为0的点,并将这些点的横纵坐标值保存在两个一维数组P[n]和Q[n]中。

Step2:取点,随机选取一个点的作为直角三角形的第一个点B(x1,y1),该点一般选择step1所建立数组中的三分之一处的第整数i个点,可以通过高斯函数求得该点位置,如公式(2)、(3)所示,以免选择的点为垂直或水平方向上的唯一有效点,而不能找到第二个点。

Step3:纵向扫描,从B点沿Y轴方向垂直扫描图像,找到在该方向上异于B点的另一个像素值为0的点,即为A(x2,y2)点。如果没有找到相应的点返回step1重新选取B点。

Step4:横向扫描,从A点沿X轴方向水平扫描图像,找到该方向上异于A点的另外一个像素值为0的点,即为C(x3,y3)点。如果没有找到相应的点返回step1重新选取B点。

Step5:输出,根据公式(4),(5)计算圆周的圆心坐标 R(X0,Y0)和半径 R0:

该方法主要依靠逐次扫描图像中的像素点得到所需要的像素点,然后计算圆的参数,计算量少,实现方便,对于像素较低的图像比较方便,定位效果如图2所示。如果图像的像素矩阵较大,遍历图像中的像素点比较多的情况下该方法的实时性就会下降,另外如果对于图像中的圆周是不完整的如图3所示,这种情况下难以寻找内接直角三角形的各个顶点,因此该方法不能实现圆心的定位工作。

1.2 中垂线法

中垂线法是随机选取圆周上的任意3个点构造出两条弦,进而得到两条弦的垂直平分线方程,圆的两条弦的中垂线所构成的交点即为圆心位置所在。具体实现步骤如下所示:

图2 直角三角形法仿真结果Fig.2 Simulation result after using the method of right triangle

Step1:同 1.1 节中 step1。

Step2:取点:以任意方式随机选取数组 P[n],Q[n]中的 3个点的坐标。 例如:A(p1,q1),B(pi,qi)(其中 i=[n/3]),C(pn,qn)。(大论文中可以考虑分开公式形式标出)

Step3:构造中垂线方程:以AB和BC两条弦分别建立中垂线方程

step4:通过计算中垂线矩阵方程得出交点坐标,即为圆心坐标。

中垂线法主要根据圆中弦的中垂线性质建立数学模型,最终求得圆心坐标值,达到圆心定位的目的,该方法中计算量相对直角三角形法而言要大很多,但是该方法的性能稳定,当采集的图像样本像素值较大时也不会对实时性造成太大影响。并且当圆心定位图像出现如图2的情况时本方法依然有效,增强了算法的健壮性和鲁棒性。其定位仿真图像如图 4、5所示。

图3 中垂线法仿真结果Fig.3 Simulation result after using the method of perpendicular bisector

1.3 等距离法

等距离法的主要理论依据是圆心到圆周上的每个点的距离相等,而圆周上随机选取3个像素点即可确定出唯一一个到3个点距离相等的点,这个点就是圆心所在位置。该方法的基本实现过程如下:

Step1:同 1.1 节中 Step1。

step2:同 1.2节中 Step2。

Step3:分别求出圆心 R(X0,Y0)到 A(p1,q1),B(pi,qi)(其中 i=[n/3]),C(pn,qn)3 点的距离,利用简历两个相等关系式可以得到该方法的数学模型:

等距离法在效果上与中垂线法相差不多,但是计算量上略显复杂,在定位时间上也略长于中垂线法,但是在定位精度和算法的鲁棒性上都是比较出色的。该方法的定位仿真效果如图4所示。

图4 等距离法仿真结果Fig.4 Simulation result after using the method of equidistance

1.4 定位结果分析

上述章节中是针对人为设计的标准圆形图像和标准圆形图像的残缺图,利用3种方法分别对其进行仿真分析,验证方法的有效性,为将这些方法有效的应用到实际生产过程中提供良好的理论依据。针对标准圆及其残缺圆的仿真定位结果和消耗时间如表1所示。

表1 标准圆及其残缺圆定位结果Tab.1 Test result of standard circle image and it’s fragmentary form

从表1可以看出,直角三角形法的定位结果最为精确,所需时间也是3种方法中最少的,可见其在标准圆定位中的高效性,但是它无法完成对残缺圆的定位,使得该方法的鲁棒性不高,相对而言中垂线法和等距离法虽然定位的精度稍微有些偏差,所耗时间也比较长,但是他们都能完成对残缺圆的定位工作,使得算法的鲁棒性较高。同时可以看出中垂线法对残缺圆的定位结果偏差较大,而等距离法表现的会更加出色。

2 采样图像实验

由于在实际生产的视觉控制过程中进行图像采集时会受到各种不同因素(例如:光照因素,湿度因素,传输信道噪声因素,环境中其它不可预测因素等)的影响,增加了图像的复杂程度,这就加大了圆心定位工作的难度,采用基于几何参数的圆心定位方法对图像的处理速度快,实现也比较容易,但是它对所要定位的图像也提出了较高的要求,要求将图像中的噪声等不利于定位的因素的影响降到最低,这就对图像的预处理过程提出了较高的要求,本文选择偏心桶加注口的圆心定位作为处理对象通过大量实验得出了一个合理的解决方案,该方案的流程图如图所示。

图5 采样图像定位流程图Fig.5 Flow chart of the location for sampling image

对计算机进行初始化之后,读入采集的样本图像,接收到图像数据后先对图像进行一系列的预处理操作,以便排除周围环境(光照强度等)因素的影响,并得到比较理想的定位图像。预处理过程中首先将读入的彩色图像(24位图)进行灰度化处理得到数据量较小的灰度图像(8位图),再对灰度图像利用中值滤波进行去噪处理,将图像的无关因素影响降到最低,接下来根据图像的灰度直方图判断图像的二值化阈值并对灰度图像进行二值化得到二值图像(像素值只含0、1的2位图像)。这样便达到了对图像进行分割的目的,可以将偏心桶的加注口图像分割出来。此时得到的是一个圆形的实心区域,再利用canny算子进行边缘提取操作,得到一个离散的圆周图像,此时便可以在次图像的基础上进行圆心定位。采用中垂线法或者等距离法进行圆心的定位。

在该过程中为了保证圆心定位的准确,采用了误差判断的方法,即第一次选择点定位后的结果存放在一个变量A中,第二次重新选择一组点进行定位运算,结果保存在变量B中,对A和B中的结果进行误差判断,如果二者之差的绝对值能够小于事先设定的阈值则A、B中的值都可以作为最终定位结果,否则需要选取另外的点进行定位计算,直到误差符合要求为止。

图6是对现场采集的偏心桶图像进行加注口圆心定位的结果图。其中(a)图是原始采样图像,(b)图是经过算法处理后的定位图像,(c)图是采用等距离法进行圆心定位的结果,其中红十字标注的位置即为加注口的圆心。

图6 采样图像定位仿真结果Fig.6 Simulation result of the location for sampling image

3 结束语

本文通过对数字图像中圆周信息点分布的规律和圆周几何特性的分析研究,总结出三种基于几何特性的圆心定位方法,这些方法各有利弊,可适用于不同的场合,在上述章节中也借助简单的圆周曲线做了详细的描述和对比。最后将所研究的方法应用到具体实践中,取得了良好的效果。基于几何特性的圆心定位方法具有运算简单,实现方便的特性,这对方法的普及会有很大的帮助。

[1]HOUGH PVC.Method and means for recognizing complex patterns 3069654[P].1962.

[2]YING X H,ZHA H B.An efficient method for the detection ofprojected concentric circle [C]//IEEE International Conference on Information Processing,San Antonio,2007(5):560-563.

[3]David G.Lowe.Distinctive image features from scale-invariant key-points[J].Int Journal of Computer Vision,2004,60(2):91-110.

[4]Mikolajczyk K,Cordela S A.Performance evaluation of local descriptors[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2005,27(10):1615-1630.

[5]吴慧兰,刘国栋,刘炳国,等.基于SIFT算法的圆心快速精确定位技术研究[J].光电子·激光,2008,19(11):1512-1515.WU Hui-lan,LIU Guo-dong,LIU Bing-guo,et al.Study on the circle center fast accurate-locating technique based on the SIFT[J].Journal of Optoelectronics·Lase,2008,19(11):1512-1515.

[6]曹建海,路长厚.基于灰度图像和矢量的圆心定位[J].光电子·激光,2004,15(6):714-718.CAO Jian-hai,LU Chang-hou.Locating a center-point of the circular projection based on a Gray—scale image and vector sum[J].Journal of Optoelectronics·Lase,2004,15(6):714-718.

[7]Canny J.A computational approach to edge detection[J],IEEE Trans.Pattern Anal.Mach.Intell,1986,8 (6):679-698.

[8]张虎,达飞鹏,邢德奎.一种改进的亚像素圆心定位算法[C]//2008年全国模式识别学术会议:79-84.

猜你喜欢
中垂线圆心直角三角形
含30°角直角三角形在生活中的应用
圆锥曲线弦中垂线有关性质的一点探究
论两个等量同种点电荷电场线的连线及其中垂线上的电场线画法
以圆周上一点为圆心作圆的图的性质及应用
5.2 图形的相似与解直角三角形
拼搭直角三角形
参考答案
数学问题与解答
四种方法确定圆心和半径
圆心仍对应圆心吗