发明内容
本发明的目的是提供一种利用单台非量测数码相机进行钣金件三维量测的方法,它能够克服上述现有技术的不足,满足工业制造对测量精度和速度的要求。
本发明提供的技术方案是,一种利用单台非量测数码相机进行钣金件三维量测的方法,包括以下步骤:
一、获取工业钣金件的图像。按照下述图像拍摄方法自动获取工业钣金件的10张以上影像,并将影像传入计算机:
承载转盘上设置一个平面,以该平面上标记的若干坐标已知的特征点(如十字丝的交点、格网点)作为平面控制点场,将待测工业钣金件置放于平面控制点场的平面上,经过标定的非量测数码相机固定于待测工业钣金件上方,数码相机的主光线对准工业钣金件,承载转盘经计算机控制进行旋转的过程中,数码相机按等间隔拍摄待测工业钣金件的图像,每幅影像都实时传入计算机。
二、利用边缘提取和图像匹配技术从图像中提取钣金件影像的直线,并将所有提取出的影像直线段自动保存。
三、利用所有影像中提取的直线段作为输入数据,判断同一条空间直线段对应的影像直线段数目,保存至少有两个对应的影像直线段,然后利用摄影测量原理进行钣金件的高精度三维重建。
四、将三维重建的结果进行可视化显示,并由计算机进行三维量测。
上述钣金件的高精度三维重建可采用下述方法:
利用经过处理后的影像直线段,按照广义点摄影测量方法即可进行三维重建;钣金件的每一条空间直线段都用两个端点表示,影像直线段的方向大于等于45度时,采用下面的第一个公式;而当直线段的方向小于45度时,采用下面的第二个公式;
当|β|≥45°时
当|β|<45°时
其中(X,Y,Z)表示空间直线段的端点坐标,(XS,YS,ZS)表示摄像机所在的位置,(ai bici,i=1,2,3)表示旋转矩阵,f为摄像机的焦距,(x,y)为像点坐标。
本发明的优点是非量测数码相机的价格低廉,量测速度快,精度较高,可以实现工业钣金件的在线量测,从而提高效率,保证零件加工制造的质量。如果硬件全部由计算机控制,则整个流程可以全自动进行,耗时小于3分钟。
具体实施方式
在利用非量测数码相机进行工业钣金件三维量测之前,先对非量测数码相机标定;或直接采用已进行过标定(获取相机内方位元素和畸变参数的过程称为标定)的非量测数码相机。
非量测数码相机标定方法可以是:
1.现有技术中的三维控制场标定方法或其他标定方法。
2.基于二维控制点的标定方法:
a)利用待标定的数码相机按照下述方法获取4张以上控制场的影像;
以其上标记有若干坐标已知的特征点(如图2中十字丝的交点)的平面作为平面控制点场,以垂直于平面控制场的直线作为Z轴,数码相机的主光线与Z轴的夹角不大于30度;沿Z轴与平面控制点场的交点拍照,对于每张像片,数码相机的位置及三个旋转角则互不相同;
b)利用现有技术中的边缘提取和图像匹配技术从图像中提取控制点的影像坐标;
c)利用已知的控制点平面坐标和图像中提取的影像坐标,通过二维直接线性变换和共线方程间的对应关系求出数码相机的内外方位元素初值;
二维直接线性变换表示的是空间平面和像平面间的映射关系
其中H=(h1,h2,h3,h4,h5,h6,h7,h8)T为二维直接线性变换的八个变换参数,X,Y为平面控制点空间坐标,x,y为相应的像坐标。当像片点数大于4个时,可将上式进行适当变换,通过解超定方程AH=0求得二维直接线性变换参数;
摄影测量中最常用的共线方程为:
其中x0,y0,f为摄像机的内方位元素(主点和焦距);(XS,YS,ZS)为摄站坐标;(X,Y,Z)为物方空间坐标;(x,y)为相应的像点坐标;R={ai,bi,ci,i=1,2,3}为摄影测量中常用的旋转角,ω,κ(Y为主轴)构成的旋转矩阵;对于平面场而言,坐标系建立在控制场中心,则X,Y轴在平面内,Z轴与平面垂直,此时所有控制点的Z坐标为零;将共线方程进行变换即可得到与二维直接线性变换相同的表达形式,因而每一项都可由二维直接线性变换参数表示;根据旋转矩阵的性质
和
可得:
对于两张以上像片,利用上式求解主点(x0,y0)的初值;
根据旋转矩阵的性质a1b1+a2b2+a3b3=0即可导出焦距的求解方程:
求出主点及焦距的初值后,进一步求得外方位元素的初值;在Y为主轴的转角***下,
sinω=-b
3,
因而三个旋转角的值都可以唯一确定;解如下线性方程组获得X
S,Y
S,Z
S的初值:
d)利用已知的控制点平面坐标和图像中提取的影像坐标,以及上述求得的数码相机内外方位元素初值,按照下述公式所表达的严密光束法平差原理进行数码相机的高精度标定,从而求得数码相机内外方位元素的精确值;实现非量测数码相机标定
其中镜头畸变差为:
Δx=(x-x0)(K1r2+K2r4)+P1(r2+2(x-x0)2))+2P2(x-x0)·(y-y0)
Δy=(y-y0)(K1r2+K2r4)+P2(r2+2(y-y0)2))+2P1(x-x0)·(y-y0)。
利用单台非量测数码相机进行工业钣金件的三维量测(参见图1):
1.获取工业钣金件的图像。工业钣金件一般可以看作由许多条直线段组合而成,其影像显示出很强的直线段特征。
参见图2,以其上刻有十字丝5的转盘2作为钣金件4的承载设备,十字丝5的交点的坐标已知,用来作为求定像片外方位元素的绝对控制。将待测工业钣金件4置放于承载转盘2上,将经标定过的非量测数码相机1(相机的内方位元素和畸变参数均为已知)固定于待测工业钣金件4上方,数码相机的主光线3对准工业钣金件4,并按等间隔拍摄待测工业钣金件4的图像;按照上述图像拍摄方法获取工业钣金件的10张以上影像(如25张),并将影像传入计算机。
零件承载转盘的旋转可以用数码相机的反旋转来代替,两种方法获取的图像是等价的。而在数码相机保持固定,承载转盘在计算机控制下进行旋转时具有很大优势,设备占用的空间小(所需空间只有相机旋转方式的一半),有可能实现全自动化。
2.利用边缘提取和拟合等图像处理手段以及图像匹配技术从图像中提取钣金件影像的直线,并将所有提取出的影像直线段自动保存。
3.利用所有影像中提取的直线段作为输入数据,采用现有的直线摄影测量方法或广义点摄影测量方法进行钣金件的高精度三维重建。
广义点摄影测量方法如下:
广义点摄影测量模型和传统的点摄影测量模型存在着根本的差别,它不再要求空间点和像点间的严格对应关系,并且可以适用于任何形状物体的三维重建。对于物理点,广义点摄影测量模型与传统的点摄影测量模型(共线方程)相同,每个像点观测值可以列两个误差方程。对于直线段、圆、自由曲线等上的点,空间点与像点间不存在严格对应关系,每个像点只能根据切向量的方向列一个误差方程。如图3所示,×表示空间点在像片上的投影,●表示在x(或y)方向上距离最近的像点,其数学模型就是平差后空间点的投影到像点的距离dx(或dy)等于最小。当影像直线段的方向大于等于45度时,采用x方向的误差方程;而当直线段的方向小于45度时,采用y方向的误差方程。对于圆及其他自由曲线上的点,则根据每个点的切向量(例如图4中的β角)是否大于45度也只有一个误差方程。广义点摄影测量的数学模型可以用下式表示:
当|β|≥45°时
当|β|<45°时
其中(X,Y,Z)表示空间点坐标,(XS,YS,ZS)表示摄像机所在的位置,(ai bi ci,i=1,2,3)表示旋转矩阵,f为摄像机的焦距,(x,y)为像点坐标。
4.将三维重建的结果用OpenGL或DirectX显示,进行半自动或全自动量测。
全自动是指程序根据预先指定的量测内容自动计算,半自动则主要是人机交互利用三维显示界面进行相应的量测。量测内容根据需要可以是点与点之间的距离;线与线之间的距离,夹角;面与面之间的距离,夹角;以及点与线,面的距离;线与面的距离,夹角;圆与圆间的同轴度等。