专利名称:利用单台非量测数码相机进行钣金件三维量测的方法
技术领域:
本发明涉及一种利用单台非量测数码相机进行工业钣金件三维量测的方法,主要应用于工业近景摄影测量领域。
背景技术:
随着工业制造技术的不断提高和加工工艺的不断改进,对检测手段也提出了越来越高的要求,例如对工业领域中广泛使用的钣金件的几何尺寸进行测量时,要求速度快且精度高。现有的各类主要三维测量方法中,大型三维坐标量测设备测量精度很高,但价格昂贵且工作效率较低。莫尔纹法的精度与光栅间距有关,且仅适应表面起伏不明显的平缓目标。牛顿环常用于检验光学元件的表面加工质量,该方法精度很高,设备简易,但仅适用于纵深不大的光学元件。结构光法对于缺乏纹理的物体是较为有效的一种量测手段,不过达到很高的精度非常困难,还有其他检测手段如卡尺、显微镜等,均难以兼顾速度与精度两者之间的矛盾。基于计算机视觉的三维测量系统往往利用多台专用摄像机及结构光投影器等,大大增加了系统成本,并且多台摄像机的标定误差等也会影响三维量测的精度。因而目前的现状是即使在制造业非常发达的日本等国,工业钣金件的几何尺寸测量也几乎靠纯人工方法进行,工作效率低,成本很高,只能采用抽样检测的方法,难免存在漏测及误测。可以说,成本低廉,精度较高(例如高于0.1mm)的工业钣金件自动量测系统是国内甚至国际上急待解决的问题。
发明内容
本发明的目的是提供一种利用单台非量测数码相机进行钣金件三维量测的方法,它能够克服上述现有技术的不足,满足工业制造对测量精度和速度的要求。
本发明提供的技术方案是,一种利用单台非量测数码相机进行钣金件三维量测的方法,包括以下步骤一、获取工业钣金件的图像。按照下述图像拍摄方法自动获取工业钣金件的10张以上影像,并将影像传入计算机承载转盘上设置一个平面,以该平面上标记的若干坐标已知的特征点(如十字丝的交点、格网点)作为平面控制点场,将待测工业钣金件置放于平面控制点场的平面上,经过标定的非量测数码相机固定于待测工业钣金件上方,数码相机的主光线对准工业钣金件,承载转盘经计算机控制进行旋转的过程中,数码相机按等间隔拍摄待测工业钣金件的图像,每幅影像都实时传入计算机。
二、利用边缘提取和图像匹配技术从图像中提取钣金件影像的直线,并将所有提取出的影像直线段自动保存。
三、利用所有影像中提取的直线段作为输入数据,判断同一条空间直线段对应的影像直线段数目,保存至少有两个对应的影像直线段,然后利用摄影测量原理进行钣金件的高精度三维重建。
四、将三维重建的结果进行可视化显示,并由计算机进行三维量测。
上述钣金件的高精度三维重建可采用下述方法利用经过处理后的影像直线段,按照广义点摄影测量方法即可进行三维重建;钣金件的每一条空间直线段都用两个端点表示,影像直线段的方向大于等于45度时,采用下面的第一个公式;而当直线段的方向小于45度时,采用下面的第二个公式;x=-fa1(X-XS)+b1(Y-YS)+c1(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|≥45°时y=-fa2(X-XS)+b2(Y-YS)+c2(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|<45°时其中(X,Y,Z)表示空间直线段的端点坐标,(XS,YS,ZS)表示摄像机所在的位置,(aibici,i=1,2,3)表示旋转矩阵,f为摄像机的焦距,(x,y)为像点坐标。
本发明的优点是非量测数码相机的价格低廉,量测速度快,精度较高,可以实现工业钣金件的在线量测,从而提高效率,保证零件加工制造的质量。如果硬件全部由计算机控制,则整个流程可以全自动进行,耗时小于3分钟。
图1为本发明的流程示意图;图2为本发明数码相机相对于工业零件和平面控制场位置视图;图3为本发明直线段的广义点摄影测量示意图;图4为本发明圆的广义点摄影测量示意图。
具体实施例方式
在利用非量测数码相机进行工业钣金件三维量测之前,先对非量测数码相机标定;或直接采用已进行过标定(获取相机内方位元素和畸变参数的过程称为标定)的非量测数码相机。
非量测数码相机标定方法可以是1.现有技术中的三维控制场标定方法或其他标定方法。
2.基于二维控制点的标定方法a)利用待标定的数码相机按照下述方法获取4张以上控制场的影像;以其上标记有若干坐标已知的特征点(如图2中十字丝的交点)的平面作为平面控制点场,以垂直于平面控制场的直线作为Z轴,数码相机的主光线与Z轴的夹角不大于30度;沿Z轴与平面控制点场的交点拍照,对于每张像片,数码相机的位置及三个旋转角则互不相同;b)利用现有技术中的边缘提取和图像匹配技术从图像中提取控制点的影像坐标;c)利用已知的控制点平面坐标和图像中提取的影像坐标,通过二维直接线性变换和共线方程间的对应关系求出数码相机的内外方位元素初值;二维直接线性变换表示的是空间平面和像平面间的映射关系x=h1X+h2Y+h3h7X+h8Y+1]]>y=h4X+h5Y+h6h7X+h8Y+1]]>其中H=(h1,h2,h3,h4,h5,h6,h7,h8)T为二维直接线性变换的八个变换参数,X,Y为平面控制点空间坐标,x,y为相应的像坐标。当像片点数大于4个时,可将上式进行适当变换,通过解超定方程AH=0求得二维直接线性变换参数;摄影测量中最常用的共线方程为x-x0=-fa1(X-XS)+b1(Y-YS)+c1(Z-ZS)a3(X-XS)+b3(Y-YS)+c3(Z-ZS)]]>y-y0=-fa2(X-Xs)+b2(Y-Ys)+c2(Z-Zs)a3(X-Xs)+b3(Y-Ys)+c3(Z-Zs)]]>其中x0,y0,f为摄像机的内方位元素(主点和焦距);(XS,YS,ZS)为摄站坐标;(X,Y,Z)为物方空间坐标;(x,y)为相应的像点坐标;R={ai,bi,ci,i=1,2,3}为摄影测量中常用的旋转角,ω,κ(Y为主轴)构成的旋转矩阵;对于平面场而言,坐标系建立在控制场中心,则X,Y轴在平面内,Z轴与平面垂直,此时所有控制点的Z坐标为零;将共线方程进行变换即可得到与二维直接线性变换相同的表达形式,因而每一项都可由二维直接线性变换参数表示;根据旋转矩阵的性质a12+a22+a32=1]]>和b12+b22+b32=1]]>可得(h1h8-h2h7)(h1h7-h72x0+h2h8-h82x0)+(h4h8-h5h7)(h4h7-h72y0+h5h8-h82y0)=0]]>对于两张以上像片,利用上式求解主点(x0,y0)的初值;根据旋转矩阵的性质a1b1+a2b2+a3b3=0即可导出焦距的求解方程f=-(h1h7x0)·(h2-h8x0)-(h4-h7y0)·(h5-h8y0)h7h8]]>求出主点及焦距的初值后,进一步求得外方位元素的初值;在Y为主轴的转角系统下,tanκ=b1b2=h2-h8x0h5-h8y0,]]>sinω=-b3, 因而三个旋转角的值都可以唯一确定;解如下线性方程组获得XS,YS,ZS的初值h3=x0-f(a1Xs+b1Ys+c1Zs)/λh6=y0-f(a2Xs+b2Ys+c2Zs)/λλ=(a3Xs+b3Ys+c3Zs)]]>d)利用已知的控制点平面坐标和图像中提取的影像坐标,以及上述求得的数码相机内外方位元素初值,按照下述公式所表达的严密光束法平差原理进行数码相机的高精度标定,从而求得数码相机内外方位元素的精确值;实现非量测数码相机标定x-x0-Δx=-fxa1(X-Xs)+b1(Y-Ys)+c1(Z-Zs)a3(X-Xs)+b3(Y-Ys)+c3(Z-Zs)=-fxX__Z__]]>y-y0-Δy=-fya2(X-Xs)+b2(Y-Ys)+c2(Z-Zs)a3(X-Xs)+b3(Y-Ys)+c3(Z-Zs)=-fyY__Z__]]>其中镜头畸变差为Δ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度也只有一个误差方程。广义点摄影测量的数学模型可以用下式表示x=-fa1(X-XS)+b1(Y-YS)+c1(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|≥45°时y=-fa2(X-XS)+b2(Y-YS)+c2(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|<45°时其中(X,Y,Z)表示空间点坐标,(XS,YS,ZS)表示摄像机所在的位置,(aibici,i=1,2,3)表示旋转矩阵,f为摄像机的焦距,(x,y)为像点坐标。
4.将三维重建的结果用OpenGL或DirectX显示,进行半自动或全自动量测。
全自动是指程序根据预先指定的量测内容自动计算,半自动则主要是人机交互利用三维显示界面进行相应的量测。量测内容根据需要可以是点与点之间的距离;线与线之间的距离,夹角;面与面之间的距离,夹角;以及点与线,面的距离;线与面的距离,夹角;圆与圆间的同轴度等。
权利要求
1.一种利用单台非量测数码相机进行钣金件三维量测的方法,其特征是包括以下步骤一、获取工业钣金件的图像;按照下述图像拍摄方法获取工业钣金件的10张或以上影像,并将影像传入计算机承载转盘上设置一个平面,以该平面上标记的若干坐标已知的特征点作为平面控制点场,将待测工业钣金件置放于平面控制点场的平面上,经过标定的非量测数码相机固定于待测工业钣金件上方,数码相机的主光线对准工业钣金件,承载转盘经计算机控制进行旋转的过程中,数码相机按等间隔拍摄待测工业钣金件的图像,每幅影像都实时传入计算机;二、利用边缘提取和图像匹配技术从图像中提取钣金件影像的直线,并将所有提取出的影像直线段自动保存;三、利用所有影像中提取的直线段作为输入数据,判断同一条空间直线段对应的影像直线段数目,保存至少有两个对应的影像直线段,然后利用摄影测量原理进行钣金件的高精度三维重建;四、将三维重建的结果进行可视化显示,并由计算机进行三维量测。
2.根据权利要求1所述的方法,其特征是钣金件的高精度三维重建方法为利用经过处理后的影像直线段,按照广义点摄影测量方法即可进行三维重建;钣金件的每一条空间直线段都用两个端点表示,影像直线段的方向大于等于45度时,采用下面的第一个公式;而当直线段的方向小于45度时,采用下面的第二个公式;x=-fa1(X-XS)+b1(Y-YS)+c1(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|≥45°时y=-fa2(X-XS)+b2(Y-YS)+c2(Z-ZS)a2(X-XS)+b2(Y-YS)+c2(Z-ZS)]]>当|β|<45°时其中(X,Y,Z)表示空间直线段的端点坐标,(Xs,Ys,Zs)表示摄像机所在的位置,(aibici,i=1,2,3)表示旋转矩阵,f为摄像机的焦距,(x,y)为像点坐标。
3.根据权利要求1或2所述的方法,其特征是非量测数码相机的标定方法为a)利用待标定的数码相机按照下述方法获取4张以上控制场的影像;以其上标记有若干坐标已知的特征点的平面作为平面控制点场,以垂直于平面控制场的直线作为Z轴,数码相机的主光线与Z轴的夹角不大于30度;沿Z轴与平面控制点场的交点拍照,对于每张像片,数码相机的位置及三个旋转角则互不相同;b)利用现有技术中的边缘提取和图像匹配技术从图像中提取控制点的影像坐标;c)利用已知的控制点平面坐标和图像中提取的影像坐标,通过二维直接线性变换和共线方程间的对应关系求出数码相机的内外方位元素初值;二维直接线性变换表示的是空间平面和像平面间的映射关系x=h1X+h2Y+h3h7X+h8Y+1]]>y=h4X+h5Y+h6h7X+h8Y+1]]>其中H=(H1,H2,H3,H4,h5,H6,H7,H8)T为二维直接线性变换的八个变换参数,X,Y为平面控制点空间坐标,x,y为相应的像坐标。当像片点数大于4个时,可将上式进行适当变换,通过解超定方程AH=0求得二维直接线性变换参数;摄影测量中最常用的共线方程为x-x0=-fa1(X-Xs)+b1(Y-Ys)+c1(Z-Zs)a3(X-Xs)+b3(Y-Ys)+c3(Z-Zs)]]>y-y0=-fa2(X-Xs)+b2(Y-Ys)+c2(Z-Zs)a3(X-Xs)+b3(Y-Ys)+c3(Z-Zs)]]>其中X0,y0,f为摄像机的内方位元素(主点和焦距);(Xs,Yx,Zs)为摄站坐标;(X,Y,Z)为物方空间坐标;(x,y)为相应的像点坐标;R={ai,bi,ci,i=1,2,3}为摄影测量中常用的旋转角,ω,κ(Y为主轴)构成的旋转矩阵;对于平面场而言,坐标系建立在控制场中心,则X,Y轴在平面内,Z轴与平面垂直,此时所有平面点的Z坐标为零;将共线方程进行变换即可得到与二维直接线性变换相同的表达形式,因而每一项都可由二维直接线性变换参数表示;根据旋转矩阵的性质a12+a22+a32=1]]>和b12+b22+b32=1]]>可得(h1h8-h2h7)(h1h7-h72x0+h2h8-h82x0)+(h4h8-h5h7)(h4h7-h72y0+h5h8-h82y0)=0]]>对于两张以上像片,利用上式求解主点(x0,y0)的初值;根据旋转矩阵的性质a1b1+a2b2+a3b3=0即可导出焦距的求解方程f=-(h1-h7x0)·(h2-h8x0)-(h4-h7y0)·(h5-h8y0)h7h8---(1)]]>求出主点及焦距的初值后,进一步求得外方位元素的初值;在Y为主轴的转角系统下,tanκ=b1b2=h2-h8x0h5-h8y0,]]>sinω=-b3, 因而三个旋转角的值都可以唯一确定;解如下线性方程组获得Xs,Ys,Zs的初值h3=x0-f(a1Xs+b1Ys+c1Zs)/λh6=y0-f(a2Xs+b2Ys+c2Zs)/λλ=(a3Xs+b3Ys+c3Zs)]]>d)利用已知的控制点平面坐标和图像中提取的影像坐标,以及上述求得的数码相机内外方位元素初值,按照摄影测量中的严密光束法平差原理进行数码相机的高精度标定,从而求得数码相机内外方位元素的精确值;实现非量测数码相机标定。
全文摘要
利用单台非量测数码相机进行工业钣金件三维量测的方法,包括以下步骤获取工业钣金件的图像;利用边缘提取和图像匹配技术从图像中提取钣金件影像的直线,并将所有提取出的影像直线段自动保存;利用所有影像中提取的直线段作为输入数据,判断同一条空间直线段对应的影像直线段数目,保存至少有两个对应的影像直线段,然后利用摄影测量原理进行钣金件的高精度三维重建;将三维重建的结果进行可视化显示,并由计算机进行三维量测。本发明的优点是不需要昂贵的量测型数码相机,利用普通的非量测型数码相机进行工业制造领域应用非常广泛的钣金件的高精度三维量测。
文档编号G01B21/02GK1648600SQ200410061308
公开日2005年8月3日 申请日期2004年12月9日 优先权日2004年12月9日
发明者张永军, 张剑清, 张祖勋, 吴百川 申请人:武汉大学