基于单目视觉间接标定方法的自由平面尺寸测量方法
技术领域
本发明涉及视觉检测技术领域,特别是一种基于单目视觉间接标定方法的自由平面尺寸测量方法。
背景技术
生产厂家采用的外观尺寸检测方式大多是人工检验,而人工检验结果往往不确定,产品是否为良品和不良品的判断都完全依赖于工人的工作经验,造成产品品质不稳定。在现代化制造业中,随着机器视觉技术、计算机技术的不断发展,以及图像处理、模式识别等技术的不断进步,视觉检测已逐渐成为零件表面尺寸信息主要的测量手段。
目前的测量方法是采用产品图像中相关的像素数量乘以该像素与实物对应尺寸的比例系数然后计算出产品的尺寸。常见的视觉测量方法主要有单目视觉测量、双目视觉测量、结构光视觉测量等。双目视觉通过对两台相机进行信息融合可以达到较高的精度,但是较单目视觉测量具有结构复杂、测量时间长、成本较高的缺点。结构光测量精度受物理光学的限制,存在遮挡问题,测量系统标定比较困难,测量精度与速度相互矛盾,难以同时得到提高。
发明内容
本发明的目的是提供一种基于单目视觉间接标定方法的自由平面尺寸测量方法,能实现待测平面与相机坐标系之间的外参数的间接标定,而且利用本发明针对一般平面位置的情形,可实现物体的多个自由平面的同时检测。
本发明采用以下方案实现:一种基于单目视觉间接标定方法的自由平面尺寸测量方法,其特征包括以下步骤:
步骤S01:相机依次拍摄标定板处于若干个不同方位的图像,利用这些图像完成相机的标定;
步骤S02:将标定板置于工作平台上,相机拍摄标定板图像,并由此标定相机系与参考平面系之间的外参数;
步骤S03:测量与被测平面相关的尺寸、方位参数,包括:参考点高度,平面倾斜角θ和平面倾斜线的方位角β;
步骤S04:根据步骤S03获得的参数,完成物体坐标系和参考平面坐标系之间的外参数标定;并由步骤S02的标定结果,完成相机系与物体坐标系的间接标定;
步骤S05:利用单目重建原理和标定得到的系统内、外参数,对待测平面的点、线特征进行测量。
在本发明一实施例中,所述步骤S01中具体是将相机置于15个不同位置姿态,并依次由相机拍摄对应的图像,由此标定相机的内参数,得到的标定结果如下所示;
其中Ac为相机内参矩阵,Kc为相机的畸变参数;所采用相机的图像分辨率为1024×768。
在本发明一实施例中,所述步骤S02是通过MATLAB标定工具箱得到相机系oc-xcyczc与参考平面坐标系o’-x’y’z’之间的变换矩阵Rc(3×3)和Tc(3×1),它们满足以下关系:
Xc=RcXr+Tc (1)
其中, 和 分别为某一空间点Q在相机系和参考平面系下的坐标。
在本发明一实施例中,确定参考平面系o’-x’y’z’与物体坐标系o1-x1y1z1之间的坐标变换矩阵Rr、Tr包括以下步骤:
步骤S41:测量参考点O1相对于工作平台的高度h;
步骤S42:测量待测平面相对工作平台的倾斜角θ;
测得待测平面倾斜方向上的两点A、B相对于工作平台的高度h1和h2,并测得两点的距离L,则平面的倾角可由下式计算得到
步骤S43:计算参考点O1相对于参考平面系的x’、y’坐标a、b。
在本发明一实施例中,由单目重建原理计算点O1在参考平面坐标系o’-x’y’z’下的x’、y’坐标a、b;具体解法如下:
步骤S51:求解直线OcO1在o’-x’y’z’系下的方程:
由公式(1),可知点Oc在o’-x’y’z’系下的坐标:
同理,可求解直线OcO1上的另一点M在o’-x’y’z’系下的坐标,可分两步实现:1、由点O1的图像坐标(uo1,vo1)T确定与直线OcO1共线的某点M在相机系下的坐标;2、将点M的相机系坐标转化为参考平面系坐标;
步骤S511:求解点M在oc-xcyczc系下的坐标:
点M满足物体的摄像机坐标与图像坐标之间的透视投影关系,即式(4)
其中(uo1,vo1,1)T为点O1的图像坐标的齐次型,Ac为相机的内参数矩阵, 令比例参数s=100,可得到M点在oc-xcyczc系下的坐标(xMc,yMc,zMc)T;
步骤S512:由公式1,进行坐标变换,得点M在o’-x’y’z’系下的坐标
步骤S52:求直线OcO1与平面z’=h的交点
由已知的直线OcO1上两点Oc和M在o’-x’y’z’坐标下的坐标(xo′,yo′,zo′)T和(x′M,y′M,z′M)T,则直线OcO1的两点式方程可表示为:
结合平面z=h (7)
求解得到的x、y即为待求的参数a、b。
在本发明一实施例中,确定参考平面系o’-x’y’z’与物体坐标系o1-x1y1z1之间的坐标变换矩阵:
对于待测平面朝y’方向倾斜,则参考平面系与物体坐标系之间的坐标变换关系如式8所示;
Xr=RrX+Tr (8)
其中, Tr=(a,b,h)T
对于待测平面没有朝y’方向倾斜的,则参考平面坐标系与物体坐标系之间的变换矩阵Rr、Tr为:
Tr=(a,b,h)T。
在本发明一实施例中,计算相机系oc-xcyczc与物体坐标系o1-x1y1z1之间的R、T矩阵:
由公式(1)和公式(8),可得相机系与物体坐标系之间的变换矩阵R、T为:
其中,R=RcRr,T=RcTr+Tc (10)。
在本发明一实施例中,所述利用单目重建原理是根据R、T矩阵和相机内参数,利用单目视觉原理对待测平面上的点、线特征进行重建:
已知待重建点P的图像坐标的齐次型为(up,vp,1)T,则P点对应的物体坐标系坐标可按以下四个步骤求解:
步骤S81:Oc在物体坐标系下的坐标
(xo,yo,zo)T=-R-1T (11)
步骤S82:由点P的图像坐标确定与直线OcP共线的某点Q在相机系下的坐标
取s=100,得(xQc,yQc,zQc)T为点Q在相机系下的坐标
步骤S83:将Q点由相机系坐标转换至物体坐标系
步骤S84:由直线OcP(即直线OcQ)与平面z=0线面求交
联立
求解得到的x、y即为点P在被测平面的实际二维坐标。
本发明可实现非接触检测,可靠性很高,误差小,消除了人为因素等产生的误差和错误,极大降低了零件的误检率和操作人员的劳动强度。可以实现生产线产品的实时检测,降低企业工人劳动强度和人工成本,提高产品检测效率。在企业经济效益上,该尺寸检测技术的应用,可以使得企业生产走向半自动化或全自动化,提高了合格产品的产量,增加企业的经济效益。
附图说明
图1是间接标定原理示意图。
图2是单目视觉检测原理示意图。
图3是工件平面倾斜角的测量示意图。
图4是一般情形下的参考平面系与物体坐标系的相对位置关系示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
本实施例提供一种基于单目视觉间接标定方法的自由平面尺寸测量方法,其包括以下步骤:
步骤S01:相机依次拍摄标定板处于若干个不同方位的图像,利用这些图像完成相机的标定;
步骤S02:将标定板置于工作平台上,相机拍摄标定板图像,并由此标定相机系与参考平面系之间的外参数;
步骤S03:测量与被测平面相关的尺寸、方位参数,包括:参考点高度,平面倾斜角θ和平面倾斜线的方位角β;
步骤S04:根据步骤S03获得的参数,完成物体坐标系和参考平面坐标系之间的外参数标定;并由步骤S02的标定结果,完成相机系与物体坐标系的间接标定;
步骤S05:利用单目重建原理和标定得到的系统内、外参数,对待测平面的点、线特征进行测量。
请参见图1,本实施例中,采用间接标定方法实现相机系、工作平台对应的参考平面系和物体坐标系之间的转换,整体思路如图1所示。
具体的,下面对每个步骤做进一步说明:
1、相机内参数标定
将相机置于15个不同位置姿态,并依次由相机拍摄对应的图像,由此标定相机的内参数,得到的标定结果如下所示。
其中Ac为相机内参矩阵,Kc为相机的畸变参数。所采用相机的图像分辨率为1024×768。
2、标定参考平面
将标定板置于工作平台上,并由相机获取标定板图像,通过MATLAB标定工具箱得到相机系oc-xcyczc与参考平面坐标系o’-x’y’z’之间的变换矩阵Rc(3×3)和Tc(3×1),它们满足以下关系:
Xc=RcXr+Tc (1)
其中, 和 分别为某一空间点Q在相机系和参考平面系下的坐标。
3、请参见图2,确定参考平面系o’-x’y’z’与物体坐标系o1-x1y1z1之间的坐标变换矩阵Rr、Tr
3-1测量参考点O1相对工作平台的高度h;
3-2测量待测平面相对工作平台的倾斜角θ;
如图3,测得待测平面倾斜方向上的两点A、B相对于工作平台的高度h1和h2,并测得两点的距离L,则平面的倾角可由式2计算得到。
3-3计算参考点O1相对于参考平面系的x’、y’坐标a、b
完成相机系与参考平面系的外参数标定后,可由单目重建原理计算点O1在参考平面坐标系o’-x’y’z’下的x’、y’坐标a、b,如图2和图3所示。具体解法如下:
a、求解直线OcO1在o’-x’y’z’系下的方程
由公式1,可知点Oc在o’-x’y’z’系下的坐标:
同理,可求解直线OcO1上的另一点M在o’-x’y’z’系下的坐标,可分两步实现:1、由点O1的图像坐标(uo1,vo1)T确定与直线OcO1共线的某点M在相机系下的坐标;2、将点M的相机系坐标转化为参考平面系坐标。
a-1求解点M在oc-xcyczc系下的坐标
点M满足物体的摄像机坐标与图像坐标之间的透视投影关系,即式4。
其中(uo1,vo1,1)T为点O1的图像坐标的齐次型,Ac为相机的内参数矩阵,
令比例参数s=100,可得到M点在oc-xcyczc系下的坐标(xMc,yMc,zMc)T。
a-2由公式1,进行坐标变换,得点M在o’-x’y’z’系下的坐标
b、求直线OcO1(即OcM,如图2所示,Oc是相机光心,O1是物体坐标系o1-x1y1z1的原点)与平面z’=h的交点
由已知的直线OcO1上两点Oc和M在o’-x’y’z’坐标下的坐标(xo′,yo′,zo′)T和(x′M,y′M,z′M)T,则直线OcO1的两点式方程可表示为:
结合平面z=h (7)
求解得到的x、y即为待求的参数a、b。
3-4确定参考平面系o’-x’y’z’与物体坐标系o1-x1y1z1之间的坐标变换矩阵
对于简单情形,即待测平面朝y’方向倾斜,则参考平面系与物体坐标系之间的坐标变换关系如式8所示。
Xr=RrX+Tr (8)
其中, Tr=(a,b,h)T
对于一般情形,待测平面与参考平面坐标系的相对位置关系如图4所示,则参考平面坐标系与物体坐标系之间的变换矩阵Rr、Tr为:
Tr=(a,b,h)T
4、计算相机系oc-xcyczc与物体坐标系o1-x1y1z1之间的R、T矩阵
由公式(1)和公式(8),可得相机系与物体坐标系之间的变换矩阵R、T为:
其中,R=RcRr,T=RcTr+Tc (10)
5、实物轮廓重建。
由已知的相机系与物体坐标系之间的变换矩阵R、T,利用单目重建原理进行平面轮廓的检测。
如图3所示,可根据R、T矩阵和相机内参数,利用单目视觉原理对平面上的点、线特征进行重建。
已知待重建点P的图像坐标的齐次型为(up,vp,1)T,则P点对应的物体坐标系坐标可按以下四个步骤求解:
5-1Oc在物体坐标系下的坐标
(xo,yo,zo)T=-R-1T (11)
5-2由点P的图像坐标确定与直线OcP共线的某点Q在相机系下的坐标
取s=100,得(xQc,yQc,zQc)T为点Q在相机系下的坐标
5-3将Q点由相机系坐标转换至物体坐标系
5-4由直线OcP(即直线OcQ)与平面z=0线面求交
联立
求解得到的x、y即为点P在被测平面的实际二维坐标。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。