HTML
-
为验证本算法的基本性能,对分辨率为2464pixel×2056pixel的局部图像进行算法分析。
-
本文中对同一幅图片分别使用霍夫变换和最小二乘法拟合圆检测盲孔,识别效果如图 8所示,检测出的盲孔使用圆圈标注。由图可知,霍夫变换与最小二乘法相比对边缘缺损盲孔的圆心识别精度更高,但是对整体盲孔圆心的识别精度不如最小二乘法。除此之外,霍夫变换对盲孔的识别率低于最小二乘法,会出现部分完整盲孔识别不出的现象,如图 8c所示。最后,使用霍夫变换检测盲孔,如果更换待检测图片就需要手动调参,而最小二乘法不存在这种问题。
两种方法识别出盲孔的数量和耗费时间如表 1所示,检测同一幅图片,最小二乘法检测出的盲孔数量更多,是因为边缘缺损盲孔使用最小二乘法更容易检测出来,但圆心精度不高,而且霍夫变换会漏检一些盲孔。两种算法相比,使用最小二乘法的检测速度也更快,效率更高。因此,检测局部图像中的盲孔时,只要设定条件剔除图像边缘的盲孔,同时对图像预处理防止盲孔缺损过大影响识别结果,就可以使用最小二乘法获得最优结果。
test 1 test 2 amount time/ms amount time/ms Hough transform 243 424 363 669 least squares 251 115 369 122 Table 1. Comparison of Hough transform and least squares
由于网点中盲孔在平台坐标的理论位置无法获取,本实验中通过使用激光打标机在平面标刻一个圆,然后将单个圆在平台中移至相机中心,采集图像并使用最小二乘法拟合出其圆心像素坐标,和相机幅面中心坐标(1232, 1028)比较的方式计算整个系统的误差。实验结果得到的系统测量坐标如表 2所示。以系统测量坐标和实际中心坐标(1232,1028)的差值的绝对值作为误差,可计算得到整体平均误差为(0.41,0.34),即圆心位置误差为0.53pixel。依据图 7b对应的实际几何尺寸,计算得到像素尺寸和实际几何尺寸的对应关系是0.016mm/pixel,则系统整体误差为0.008mm。
number measurement/pixel error/pixel 1 (1232.52, 1027.08) (0.52, 0.92) 2 (1232.26, 1027.76) (0.26, 0.24) 3 (1232.85, 1028.81) (0.85, 0.81) 4 (1232.32, 1028.15) (0.32, 0.15) 5 (1231.60, 1027.67) (0.40, 0.33) 6 (1232.33, 1028.40) (0.33, 0.40) 7 (1231.49, 1027.99) (0.51, 0.01) 8 (1231.90, 1027.81) (0.10, 0.19) 9 (1232.31, 1028.36) (0.31, 0.36) 10 (1231.55, 1028.03) (0.45, 0.03) Table 2. System measurement and error
-
依照上述小节邻域特征法的描述,进行实际匹配的结果如图 9所示。采集部分的盲孔使用圆圈标注。邻域特征法依据局部图和整体图的边缘点特征,将两者精确地匹配到一起,匹配时间不超过0.05s。从局部图和理论图中选出两对对应的特征点,可以计算出偏移量和旋转角,据此就可以通过理论图中盲孔的坐标求得盲孔在平台坐标系中的位置。
采集一张局部图进行匹配时,定位误差会随着相对特征点的距离增大而线性增加,导致计算得到的另一端盲孔圆心位置与实际位置偏差极大。因此,本文中选取两个局部采集图像,在两张局部图中分别选择一个特征点进行计算,求出偏移量、旋转角以及比例系数,使得定位精度得到极大提高,最大误差不超过0.02mm,能够满足实验要求。而使用原始的人工定位方法,定位精度只能达到0.32mm。