matlab如何提取亚像素边缘点,棋盘格图像角点坐标亚像素提取方法

基于视觉测量的物体位姿测量系统通常要求定位系统的标定精度在mm级或以上,达到这个标定级别的关键步骤就在于摄像机标定精度的提高[1].在摄像机标定过程中黑白棋盘格模板图像内部角点的提取精度是非常重要的,因为标定的精度依赖于角点提取的精度[1-2].由于黑白棋盘格角点的特殊性,通用的算法在精确性和鲁棒性方面都存在一些问题,如SUSAN算法采用的判别标准决定其对难以区分边缘上和角点处的点,Harris算法在某些特定部位的精度有限[1-3].同时在此基础上也出现了许多检点检测的工具.其中使用最广泛的是Matlab相机标定工具箱,但它须要手动指定棋盘格标定模板的4个外角点,才能对内角点进行准确地识别和定位,自动化程度不高.所以寻求一种角点检测和定位精度较高的稳定性较好的算法是实现摄像机全自动精确标定的关键.本研究提出了一种自动识别和亚像素提取黑白平面棋盘格模板图像内部角点的方法,该方法在详细分析了棋盘格图像的局部特性基础上,建立了准确高效的改进的SUSAN角点检测算法和精确的亚像素级提取角点坐标的方法,并通过实验验证了该算法的可行性和有效性.1棋盘格图像角点特性分析角点作为一幅图像中非常的重要特征信息,在三维场景重建、运动估计、目标跟踪以及图像配准与匹配等计算机视觉领域发挥着重要的作用[2,5].通常把一幅图像当中亮度变化最为剧烈的点或者是图像边缘上曲率为极大值的点称为角点[6-7].如图1所示为原始的平面棋盘格模板图像,包括外角点和内部角点,内部角点如图2所示的圆圈区域.从图2可见:内部的角点是2个黑色和白色正方形在坐标格子处的交点,同时也是黑白格交界处的边缘点,这一特性为后续的角点提取方法的建立提供了新的思路.图1黑白棋盘格标定模板图像图图2内角点标注图像2改进的角点检测算法2.1SUSAN算法及不足SUSAN算法的原理用图3表示[8-10],在一小块黑白棋盘格图像中,假定图中所有的模板面积均为S,A点和B点处于既不是边缘也不是角点的平坦区域,USAN区域面积等于模板的面积S;D点和F点是处于边缘附近的点,但不同的是D点处USAN区域面积大于S/2但不等于S,F点的USAN区域面积小于S/2,也不等于S;E点处于外角点上,USAN区域面积是S/4;C点和G点的面积均为S/2,但C点是黑白棋盘格图像的内角点,而G点是边缘点,因此对于棋盘格图像的内角点检测来说,原始的SUSAN算法并不完全适用.图3不同位置的USAN区域面积表示2.2改进的SUSAN算法在分析黑白棋盘格图像特性以及SUSAN算法不足的基础上,从灰度阈值的选择、边缘点的检测和计算USAN区域内灰度的跳变频率三个方面来对原始的SUSAN算法进行改进.按照理论来讲,对于对比度较好的图像,要选择较大的灰度阈值,但灰度阈值选取过大,检测到的角点数目也会增加,就有可能造成误检;如果图像的对比度较小,那么选择的灰度阈值也相应变小,但较小的灰度阈值检测到的角点也较少,还有可能会漏检,所以改进的SUSAN算法先从灰度阈值的选择入手,将黑白棋盘格图像的灰度均值,即平均灰度(theaveragegrayTAG)作为阈值选择的参考,并在大量黑白棋盘格图像角点提取试验中证实1/4的TAG值将获得较大的角点提取准确度.SUSAN算法在进行黑白棋盘格内部角点检测时须要对图像中的每个像素点进行判断USAN是不是局部最小值,运算量很大,速度较慢,因此为提高效率,且通过对黑白棋盘格内部角点的特性分析发现角点一定是边缘点.所以本文先对原始的灰度图像进行边缘检测,在确定边缘之后,仅对边缘用SUSAN算法来检测黑白棋盘格图像的内部

你可能感兴趣的:(matlab如何提取亚像素边缘点,棋盘格图像角点坐标亚像素提取方法)