自由曲面棱镜及其形状的确定方法及其光学成像方法与流程

文档序号:12360059阅读:883来源:国知局
自由曲面棱镜及其形状的确定方法及其光学成像方法与流程
本发明属于光学测量
技术领域
,具体涉及一种自由曲面棱镜及其形状的确定方法及其光学成像方法。
背景技术
:视觉测量技术利用视觉传感器(例如CCD相机)采集目标图像,通过视觉图像处理算法,以非接触形式测量目标位置、形状等参数。在三维空间中获得一个物体多个角度上的图像便可以对其进行三维重建。在测量系统中加入棱镜可以使单目相机在一个方位上获取物体多角度图像。基于棱镜的单目立体视觉测量方法将一个具有多个视角的平面棱镜放置于CCD摄像机前,利用棱镜的“折射分光”作用来实现传统多摄像机立体视觉系统的功能,解决传统多摄像机立体视觉系统在高集成度上的需求与在空间上收到的限制问题。但是,根据光学成像原理,光线经棱镜的两次折射后,在空间中所成的像并未汇聚到一点,因此无法形成一个完整的虚像,而摄像机通过棱镜捕获到的图像仅是由摄像机镜头在固定位置捕获到的不完整的虚像。该问题会影响图像的清晰度,同样也会导致图像产生非线性畸变。因此,采用自由曲面棱镜代替平面棱镜,将系统所捕获到的图像畸变和极线偏移限制在单位像素,简化基于棱镜立体视觉测量方法的图像处理流程成为发展趋势,如果确定自由曲面棱镜的形状为亟待解决的问题。技术实现要素:针对现有技术的不足,本发明提出一种自由曲面棱镜及其形状的确定方法及其光学成像方法。本发明的技术方案是:一种自由曲面棱镜,包括位于底面的入射光平面、位于左侧的第一自由光学曲面、位于右侧的第二自由光学曲面;所述入射光学平面,用于实现光源进入自由曲面棱镜;所述第一自由光学曲面和第二自由光学曲面具有对称的自由曲面结构,用于实现光源光线经过自由曲面棱镜后折射出折射光线;所述第一自由光学曲面和第二自由光学曲面的自由曲面结构相同,其自由曲面结构的形状根据光源与自由曲面棱镜的入射光平面的距离d,以同一点的入射光入射到自由曲面棱镜的出射光线的反向延长线汇聚到同一点为约束条件,通过对自由曲面棱镜的自由光学曲面位置进行迭代确定。一种自由曲面棱镜的形状的确定方法,包括以下步骤:步骤1:根据待成像的物体实际尺寸和成像大小,确定光源与自由曲面棱镜的入射光平面的距离d;步骤2:建立构造自由曲面棱镜的自由光学曲面的坐标系,设定自由曲面棱镜的入射光平面中点下方的光源为坐标原点O;步骤3:选取光源O的第一束光线经入射光平面的入射角α0,根据令光源O的第一束光线经自由曲面棱镜的第一自由光学曲面的出射光线平行于Z轴的约束条件,得到光源O的第一束光线在第一自由光学曲面的出射小曲面与入射光平面的夹角θ0;步骤4:根据光源O的第一束光线经入射光平面的入射角α0、光源与自由曲面棱镜的入射光平面的距离d、夹角θ0,利用三角函数确定第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标、第一束光线的出射点B(0)的法向量步骤5:设定自由曲面的函数表达式为设定自由曲面在X轴的迭代步长ΔX和Y轴的迭代步长ΔY,对自由曲面的函数表达式进行泰勒展开,得到自由曲面函数的泰勒展开公式;所述自由曲面函数的泰勒展开公式如下所示:ZB(k)≈ZB(k-1)+ΔX∂f∂XB(k-1)+ΔY∂f∂YB(k-1);]]>其中,为自由曲面上第k+1束光线的出射点B(k)的Z轴坐标,为自由曲面上第k束光线的出射点B(k)的Z轴坐标,为自由曲面上第k+1束光线的出射点B(k)的X轴坐标,为自由曲面上第k+1束光线的出射点B(k)的Y轴坐标,f为自由曲面的代数表达式,k≥0,和为函数f的偏导。步骤6:根据自由曲面在X轴的迭代步长ΔX、Y轴的迭代步长ΔY、自由曲面函数的泰勒展开公式、第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标确定第二束光线的出射点B(1)的坐标;步骤7:根据令光源O的第二束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点V的约束条件,利用三角函数和折射定律确定第二束光线的入射点A(1)的坐标和第二束光线的出射点B(1)的法向量步骤8:将第k+1束光线的出射点B(k)的法向量第k+1束光线的出射点B(k)的坐标、X轴的迭代步长ΔX、Y轴的迭代步长ΔY代入自由曲面函数的泰勒展开公式得到第k+2束光线的出射点B(k+1)的坐标;步骤9:根据令光源O的第k+2束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点V的约束条件,利用三角函数和折射定律确定第k+2束光线的入射点A(k+1)的坐标和第k+2束光线的出射点B(k+1)的法向量步骤10:重复步骤8-步骤9,直至得到自由曲面棱镜的第一自由光学曲面的所有点的坐标,从而确定第一自由光学曲面的形状;步骤11:根据第一自由光学曲面与第二自由光学曲面的自由曲面结构相同,确定自由曲面棱镜的形状。所述根据X轴的迭代步长ΔX、Y轴的迭代步长ΔY、自由曲面函数的泰勒展开公式、第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标确定第二束光线的出射点B(1)的坐标的公式如下:(XB(1),YB(1),ZB(1))=(XB(0)+ΔX,YB(0)+ΔY,ZB(1));]]>其中,和为函数f的偏导,所述根据令光源O的第k+2束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点的约束条件具体为:sinαk+1=nsinα′k+1;N→1A(k+1)·(L→OA(k+1)×L→A(k+1)B(k+1))=0;]]>cosαk+1=L→OA(k+1)·N→1A(k+1)|L→OA(k+1)|·|N→1A(k+1)|;]]>cosα′k+1=L→AB(k+1)·N→1A(k+1)|L→AB(k+1)|·|N→1A(k+1)|;]]>nsinβk+1=sinβ′k+1;N→2B(k+1)·(L→A(k+1)B(k+1)×L→V(k+1)B(k+1))=0;]]>cosβk+1=L→AB(k+1)·N→2A(k+1)|L→AB(k+1)|·|N→2A(k+1)|;]]>cosβ′k+1=L→VB(k+1)·N→2A(k+1)|L→VB(k+1)|·|N→2A(k+1)|;]]>其中,αk+1为第k+2束光线经入射光平面的入射角,α′k+1为第k+2束光线经入射光平面的出射角,n为自由曲面棱镜的折射率,βk+1为第k+2束光线经第一自由光学曲面的入射角,β′k+1为第k+2束光线经第一自由光学曲面的出射角,为第k+2束光线在入射光平面的法向量,为第k+2束光线经入射光平面的入射光线的向量,为第k+2束光线在自由曲面棱镜内部传播的光线的向量,为第k+2束光线经第一自由光学曲面的出射点B(k+1)的法向量,为第k+2束光线经自由曲面棱镜折射的反向延长线的向量。采用所述的自由曲面棱镜进行光学成像的方法,包括以下步骤:S1:在所述自由曲面棱镜的第一自由光学曲面和第二自由光学曲面上方设置相机镜头,在相机镜头上方设置视觉传感器;S2:待成像物体的入射光通过自由曲面棱镜的入射光平面进入自由曲面棱镜中,从第一自由光学曲面和第二自由光学曲面出射;S3:经由自由曲面棱镜的出射光通过相机镜头传送至视觉传感器;S4:视觉传感器采集自由光学曲面棱镜折射的光线,并成像。本发明的有益效果:本发明提出一种自由曲面棱镜及其形状的确定方法及其光学成像方法,该自由曲面棱镜采用两个自由曲面,在理论上解决了平面棱镜虚像点不能很好的汇聚于一点而产生的图像畸变问题。克服了传统基于平面棱镜的视觉测量系统在成像质量和测量精度上的不足,具有结构简单,测量速度快、精度高等优点。附图说明图1为本发明具体实施方式中自由曲面棱镜示意图;其中,1-自由曲面棱镜的入射光学平面,2-自由曲面棱镜的第一自由光学曲面,3-自由曲面棱镜的第二自由光学曲面;图2为本发明具体实施方式中自由曲面棱镜的形状的确定方法的流程图;图3为本发明具体实施方式中光源O的第一束光线的经自由曲面棱镜的传播路径示意图;图4为本发明具体实施方式中光源O的第一束光线经入射光平面后形成偏移角δ0的示意图;图5为本发明具体实施方式中第k+1束光线经由入射光平面和第一自由光学曲面的三维示意图;图6为本发明具体实施方式中基于自由曲面棱镜的光学成像的方法的流程图;图7为本发明具体实施方式中基于自由曲面棱镜的光学成像系统的示意图;其中,4-相机镜头,5-CCD相机。具体实施方式下面结合附图对本发明具体实施方式加以详细的说明。一种自由曲面棱镜,如图1所示,包括位于底面的入射光平面1、位于左侧的第一自由光学曲面2、位于右侧的第二自由光学曲面3;所述入射光学平面1,用于实现光源进入自由曲面棱镜;所述第一自由光学曲面2和第二自由光学曲面3具有对称的自由曲面结构,用于实现光源光线经过自由曲面棱镜后折射出折射光线;所述第一自由光学曲面2和第二自由光学曲面3的自由曲面结构相同,其自由曲面结构的形状根据光源与自由曲面棱镜的入射光平面的距离d,以同一点的入射光入射到自由曲面棱镜的出射光线的反向延长线汇聚到同一点为约束条件,通过对自由曲面棱镜的自由光学曲面位置进行迭代确定。一种自由曲面棱镜的形状的确定方法,如图2所示,包括以下步骤:步骤1:根据待成像的物体实际尺寸和成像大小,确定光源与自由曲面棱镜的入射光平面的距离d。步骤2:建立构造自由曲面棱镜的自由光学曲面的坐标系,设定自由曲面棱镜的入射光平面中点下方的光源为坐标原点O。本实施方式中,如图3所示,光源O的第一束光线的经自由曲面棱镜的传播路径示意图,其中,坐标原点O位于自由曲面棱镜的入射光平面中点下方,距离为d的光源处。步骤3:选取光源O的第一束光线经入射光平面的入射角α0,根据令光源O的第一束光线经自由曲面棱镜的第一自由光学曲面的出射光线平行于Z轴的约束条件,得到光源O的第一束光线在第一自由光学曲面的出射小曲面与入射光平面的夹角θ0。本实施方式中,由图3可知,选取光源O的第一束光线经入射光平面的入射角α0=20°,第一束光线经入射光平面的出射角为α′0,第一束光线经第一自由光学曲面的入射角为β0,第一束光线经第一自由光学曲面的出射角为β′0。光源O的第一束光线经入射光平面后形成偏移角δ0的示意图如图4所示。由图4可知,根据三角函数得到第一束光线经自由曲面棱镜后与出射光线形成的偏移角δ0如式(1)所示:δ0=α0-α′0+β′0-β0=α0+β′0-θ0(1)由光源O的第一束光线经自由曲面棱镜的第一自由光学曲面的出射光线平行于Z轴的约束条件,可以得出公式(2)、(3)、(4)如下所示:θ0=α′0+β0(2)β′0=θ0(3)δ0=α0(4)根据公式(1)、(2)、(3)、(4)可以得出公式(5)如下所示:θ0=α′0+β0=sin-1(1nsinα0)+sin-1(1nsinθ0)---(5)]]>其中,n为自由曲面棱镜的折射率,本实施方式中,得到的θ0=-37.1363°。步骤4:根据光源O的第一束光线经入射光平面的入射角α0、光源与自由曲面棱镜的入射光平面的距离d、夹角θ0,利用三角函数确定第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标、第一束光线的出射点B(0)的法向量本实施方式中,根据光源O的第一束光线经入射光平面的入射角α0、光源与自由曲面棱镜的入射光平面的距离d、夹角θ0,利用三角函数确定第一束光线的入射点A(0)的坐标由于第一束光线的入射点A(0)所在的入射光平面与XOY平面平行,第一束光线的入射点A(0)的法向量由折射定律可知,根据自由曲面棱镜的折射率n与第一束光线经入射光平面的入射角α0可以算出第一束光线经入射光平面的出射角α′0如式(6)所示:sinα0=nsinα′0(6)结合自由曲面棱镜底长的一半L可以算出三角形A0CB0以CA0为底的高所以为同样根据其三角关系可以算出第一束光线的出射点B(0)的X轴方向分量又因为第一束光线的出射点B(0)的在XOZ平面上,因此第一束光线的出射点B(0)的Z轴方向分量为0,第一束光线的出射点B(0)的法向量步骤5:设定自由曲面的函数表达式为设定自由曲面在X轴的迭代步长ΔX和Y轴的迭代步长ΔY,对自由曲面的函数表达式进行泰勒展开,得到自由曲面函数的泰勒展开公式。本实施方式中,对自由曲面的函数表达式进行泰勒展开如式(7)所示:ZB(k)≈ZB(k-1)+ΔX∂f∂XB(k-1)+ΔY∂f∂YB(k-1)+12![ΔX2∂2f∂XB(k-1)∂XB(k-1)+2ΔXΔY∂2f∂XB(k-1)∂YB(k-1)+ΔY2∂2f∂YB(k-1)∂YB(k-1)]+...---(7)]]>因为迭代步长ΔX,ΔY<<1非常小,因此不需要取式(7)中二阶和以上的部分,因此得到的自由曲面函数的泰勒展开公式如式(8)所示:ZB(k)≈ZB(k-1)+ΔX∂f∂XB(k-1)+ΔY∂f∂YB(k-1)---(8)]]>其中,为自由曲面上第k+1束光线的出射点B(k)的Z轴坐标,为自由曲面上第k束光线的出射点B(k)的Z轴坐标,为自由曲面上第k+1束光线的出射点B(k)的X轴坐标,为自由曲面上第k+1束光线的出射点B(k)的Y轴坐标,f为自由曲面的代数表达式,k≥0,和为函数f的偏导。步骤6:根据自由曲面在X轴的迭代步长ΔX、Y轴的迭代步长ΔY、自由曲面函数的泰勒展开公式、第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标确定第二束光线的出射点B(1)的坐标。本实施方式中,根据X轴的迭代步长ΔX、Y轴的迭代步长ΔY、自由曲面函数的泰勒展开公式、第一束光线的入射点A(0)的坐标、第一束光线的出射点B(0)的坐标确定第二束光线的出射点B(1)的坐标的公式如式(9)所示:(XB(1),YB(1),ZB(1))=(XB(0)+ΔX,YB(0)+ΔY,ZB(1))---(9)]]>其中,和为函数f的偏导,步骤7:根据令光源O的第二束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点V的约束条件,利用三角函数和折射定律确定第二束光线的入射点A(1)的坐标和第二束光线的出射点B(1)的法向量本实施方式中,根据第二束光线的出射点B(1)的坐标及第二束光线的折射关系确定第二束光线的入射点A(1)的坐标为步骤8:将第k+1束光线的出射点B(k)的法向量第k+1束光线的出射点B(k)的坐标、X轴的迭代步长ΔX、Y轴的迭代步长ΔY代入自由曲面函数的泰勒展开公式得到第k+2束光线的出射点B(k+1)的坐标。本实施方式中,得到第k+2束光线的出射点B(k+1)的坐标如式(10)所示:(XB(k+1),YB(k+1),ZB(k+1))=(XB(k)+ΔX,YB(k)+ΔY,ZB(k+1))---(10)]]>其中,此时k可以从1开始取值,通过将第二束光线的出射点B(1)的法向量第二束光线的出射点B(1)的坐标、X轴的迭代步长ΔX、Y轴的迭代步长ΔY代入公式(8)得到可以计算得出从而确定第三束光线的出射点B(2)的坐标,依次得到各束光线的出射点坐标。步骤9:根据令光源O的第k+2束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点V的约束条件,利用三角函数和折射定律确定第k+2束光线的入射点A(k+1)的坐标和第k+2束光线的出射点B(k+1)的法向量本实施方式中,第k+1束光线经由入射光平面和第一自由光学曲面的三维示意图如图5所示,由图5可知,根据令光源O的第k+2束光线经自由曲面棱镜的第一自由光学曲面的出射光线的反向延长线与第一束光线经自由曲面棱镜的出射光线的反向延长线汇聚为一点V的约束条件如式(11)-(18)所示:sinαk+1=nsinα′k+1(11)N→1A(k+1)·(L→OA(k+1)×L→A(k+1)B(k+1))=0---(12)]]>cosαk+1=L→OA(k+1)·N→1A(k+1)|L→OA(k+1)|·|N→1A(k+1)|---(13)]]>cosα′k+1=L→AB(k+1)·N→1A(k+1)|L→AB(k+1)|·|N→1A(k+1)|---(14)]]>nsinβk+1=sinβ′k+1(15)N→2B(k+1)·(L→A(k+1)B(k+1)×L→V(k+1)B(k+1))=0---(16)]]>cosβk+1=L→AB(k+1)·N→2A(k+1)|L→AB(k+1)|·|N→2A(k+1)|---(17)]]>cosβ′k+1=L→VB(k+1)·N→2A(k+1)|L→VB(k+1)|·|N→2A(k+1)|---(18)]]>其中,αk+1为第k+2束光线经入射光平面的入射角,α′k+1为第k+2束光线经入射光平面的出射角,n为自由曲面棱镜的折射率,βk+1为第k+2束光线经第一自由光学曲面的入射角,β′k+1为第k+2束光线经第一自由光学曲面的出射角,为第k+2束光线在入射光平面的法向量,为第k+2束光线经入射光平面的入射光线的向量,为第k+2束光线在自由曲面棱镜内部传播的光线的向量,为第k+2束光线经第一自由光学曲面的出射点B(k+1)的法向量,为第k+2束光线经自由曲面棱镜折射的反向延长线的向量。根据公式(11)、(12)、(13)、(14)可以得到第k+2束光线的入射点A(k+1)的坐标,同样,根据公式(15)、(16)、(17)、(18)可以得到第k+2束光线的出射点B(k+1)的法向量步骤10:重复步骤8-步骤9,直至得到自由曲面棱镜的第一自由光学曲面的所有点的坐标,从而确定第一自由光学曲面的形状。步骤11:根据第一自由光学曲面与第二自由光学曲面的自由曲面结构相同,确定自由曲面棱镜的形状。采用权利要求1所述的自由曲面棱镜进行光学成像的方法,如图6所示,包括以下步骤:S1:在所述自由曲面棱镜的第一自由光学曲面和第二自由光学曲面上方设置相机镜头,在相机镜头上方设置视觉传感器,如图7所示。本实施方式中,视觉传感器选用CCD相机实现,型号为ProsilicaGT1910AVTCCD,相机镜头的型号ComputarM2518-MPW。S2:待成像物体的入射光通过自由曲面棱镜的入射光平面进入自由曲面棱镜中,从第一自由光学曲面和第二自由光学曲面出射。S3:经由自由曲面棱镜的出射光通过相机镜头传送至视觉传感器。S4:视觉传感器采集自由光学曲面棱镜折射的光线,并成像。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1