劉馥寧,李麗娟,林雪竹,郭麗麗,程曉波
(長春理工大學 光電工程學院,長春 130022)
激光3D投影技術是工業制造技術中最先進的技術之一,已廣泛運用在復合材料鋪貼、零部件輔助裝配等領域,其核心功能為雙軸掃描振鏡系統[1-2]。激光3D投影系統的標定精度直接影響后續投影工作的可靠性,即直接影響投影精度。因此,對于激光3D投影系統的精度標定有更高精度要求。為了提高激光3D投影系統的精度,需要對激光3D投影系統外部參數R、T以及振鏡系統內部參數進行高精度標定,從而使得激光線能夠準確地到達掃描范圍內任意點。
早期的振鏡標定技術主要是針對于振鏡系統的“枕形畸變”這一原理性誤差進行校正,常采用透鏡或動態聚焦裝置來進行校正,進而產生桶形失真或離焦誤差等畸變。前者常采用理論推導相應公式或采用對實驗得到的實際數據與理論數據對比進行補償或校正。后者通常采用校正表法、最小二乘法、神經網絡等方法進行補償。韓萬鵬等人[3]根據點坐標與振鏡偏轉角度間的函數關系建立校正模型,采用最小二乘法與分段線性插值相結合的方法進行校正。采用曲面最小二乘擬合的方法來建立坐標點的誤差補償曲面來提高校正精度,分段線性插值校正表的方法提高掃描速率。而對于系統外部參數的標定,郭麗麗等人[4]采用將投影觀測值求解模型與外部參數校準模型相結合來完成激光投影系統的校準,利用Newton與四元數法來求解投影系統的外部參數R、T,完成激光投影系統的外參標定。
近些年來,對于激光振鏡投影系統的精度標定不僅僅局限于原理性誤差和外部參數。李旭東等人[5]提出基于單目視覺輔助標定二維振鏡的方法,利用相機獲得投影系統在標定板上的光斑的位置信息,通過建立振鏡偏轉角度與相機坐標系下光斑位置信息的轉換關系,從而完成振鏡系統參數標定,但其投影系統內部參數只考慮振鏡間軸線間距的影響,因此使得系統標定精度不高。MANAKOV等人[6]在理想模型的基礎上考慮入射光方向以及激光器位置兩個因素,建立了一個更符合實際情況的復雜模型,引入更多振鏡系統內部參數,采用全局優化的方法求解內外共12個參數,大大提高了標定精度。但該方法求解時間長且優化結果容易陷入局部最優解。涂俊超等人[7]建立振鏡偏轉角估計模型,并提出了一種分步標定激光振鏡掃描系統的方法,將振鏡掃描系統的校準參數分為方向參數與位置參數兩部分,有效地解決了求解參數多、耗時長、容易陷入局部最優的情況。
本論文采用Newton迭代算法與PSO算法相結合的優化方法來進行優化求解。利用Newton迭代算法解算振鏡偏轉角、旋轉矩陣R以及入射光方向矢量。在此基礎上,利用PSO算法解算平移矩陣T以及激光器位置參數,該方法有效地解決了位置參數初值無法估計的問題。最后采用神經網絡算法作為相應的補償算法,對振鏡轉動角度偏差進行補償。有效地提高激光3D投影系統標定精度。
激光3D投影系統主要是由激光光源、準直擴束裝置、自動聚焦裝置、雙軸掃描振鏡、光學反饋裝置、合作目標、控制處理系統[8]等組成。如圖1所示。

圖1 激光3D投影系統組成
激光3D投影系統的工作原理:激光器發出的激光束經過擴束及動態聚焦鏡組后,進入雙軸掃描振鏡模塊,經過Y軸振鏡的偏轉實現激光束的水平方向掃描,經過X軸振鏡的偏轉掃描實現俯仰方向掃描,即可將激光束投影到工作面上,在待投影工作面上得到一定范圍內的投影光斑。通過控制系統控制兩振鏡的偏轉角度,可在待投影工件上形成三維激光束輪廓。最終實現在待投影工件上的1∶1精準投影,輔助指導工作人員進行零部件裝配以及復合材料的多層鋪貼等。
激光3D投影系統進行投影定位時,系統內的雙振鏡掃描系統會根據CAD數模實現高精度偏轉,通過X軸振鏡和Y軸振鏡的偏轉將激光器發出的光束進行偏折,從而在待投影表面掃描出數模的輪廓。
激光3D投影系統的理論模型如圖2所示,激光3D投影系統坐標系的建立:(1)以X軸振鏡轉軸為投影系統坐標系的X軸;(2)X軸振鏡與Y軸振鏡轉軸中心連線方向為投影系統坐標系的Y軸;(3)根據右手定則確定Z軸方向,坐標系原點O為Y振鏡轉軸中心。其中θy為Y軸振鏡的偏轉角度,θx為X軸振鏡的偏轉角度,e為X軸振鏡與Y軸振鏡之間的異面距離。激光束偏轉角分別為水平角V、俯仰角H,根據激光束偏轉角與振鏡轉角關系可知水平角V=2θy,俯仰角H=2θx,則投影目標點P在投影坐標系下的坐標可由d、e、V、H表示為:

圖2 簡化模型

將式(1)寫成矩陣形式:

由于雙軸掃描振鏡裝置的驅動特性、電機的步距角等因素使得振鏡偏轉角θx、θy存在著誤差,但X軸、Y軸振鏡每次偏轉引起的誤差值并不固定,對應的投影點的誤差也不固定,所以將其稱之為動態誤差。其各自誤差為 Δθx、Δθy,式(3)給出了包含Δθx、Δθy誤差的P點坐標:

式(4)給出了三維空間內任一點P的動態測量誤差表達式。由式(1)可以看出P點的坐標是由d、θx、θy等參數的三角函數計算得到,三角函數關系的非線性導致掃描系統的掃描軌跡存在非線性誤差。
以往,為了推導簡化的激光3D投影系統的理論模型,進行如下假設:
(1)X軸、Y軸振鏡的轉軸垂直;
(2)入射光照射到Y軸振鏡的轉軸上中心;
(3)經Y軸振鏡反射后的激光照射到X軸振鏡的轉軸上;
(4)與鏡面的尺寸相比較而言,光線足夠細。
但在實際情況中,激光器發出的光線不能嚴格滿足假設(2)和(3),無法保證入射光準確地入射到Y軸振鏡轉軸中心,以及準確地入射到X軸振鏡的轉軸上,因此建立如圖3所示的激光3D投影系統的復雜模型。建立如圖所示的坐標系O-XYZ,假定入射光方向矢量為,Y 軸 振 鏡 的 法 線 方 向 為,X 軸 振 鏡 的 法 線 方 向 為,激 光 器 初 始 位 置 為,X 軸振鏡中心為 O1=[0,e,0]',入射光線經Y軸振鏡偏轉后的方向矢量表示為:

圖3 復雜模型


激光3D投影系統的標定參數可以分為方向參數及位置參數兩部分。方向參數標定指:投影坐標系和立體視覺坐標系之間的旋轉矩陣R、入射光偏差以及驅動振鏡轉動時的角度偏差Δθx、Δθy。位置參數標定值指:投影坐標系與立體視覺坐標系之間的平移矩陣T以及激光器位置。其中,投影坐標系與立體視覺坐標系間的旋轉矩陣R及平移矩陣T稱為系統的外部參數,而入射光偏差、振鏡轉動偏差以及激光器位置偏差又稱為激光3D投影系統的內部參數,這些參數的偏差都會對其定位精度產生影響。因此需對上述所提及的參數進行精確標定。
標定所需用到的設備有:雙相機、標定板、一維高精度平移導軌[9]。標定板置于一維高精度平移導軌上,使標定板垂直于高精度導軌的移動方向,保證標定板始終位于雙相機的視野范圍內。實驗裝置如圖4所示。

圖4 標定裝置
控制系統給定輸入信號,控制X軸、Y軸振鏡轉動,使得振鏡系統在掃描范圍內的標定板上投影出一系列投影點。雙相機拍攝標定板得到光斑圖像,通過立體視覺算法計算得到投影點在立體視覺坐標系下的坐標值Pi(xi,yi,zi)(i=1,2,...,N)。保證雙目立體視覺系統與激光3D投影系統的相對位置不變,移動標定板到k個位置使得Z=Zk(k=1,2,...,N),重復拍攝并得到所有投影點的坐標值,采用最小二乘法對相同轉角下的投影點擬合得到經二維振鏡偏轉后的出射光。出射光的擬合誤差通過最小化式(10)來表示:

2.2.1 方向參數求解模型
激光3D投影系統方向參數求解模型是根據立體視覺坐標系下的出射光方向矢量與經過旋轉矩陣R變換后振鏡出射光方向矢量為同一方向矢量,建立對應關系,利用牛頓迭代法進行參數求解。

根據式(13),選用牛頓迭代法進行方向參數求解,F(x)=[f11,f21,f31,...,f1i,f2i,f3i]為牛頓迭代函數,根據迭代函數進行參數求解得到方程組:


圖5 牛頓迭代法解算方向參數流程圖
牛頓迭代法對迭代初值x0的要求比較嚴格,如果初值選擇離根比較遠,牛頓迭代法不一定能夠收斂,初值選擇不合適,會使得方程組的解不正確或算法不收斂,因此合理的初值選擇對牛頓迭代法至關重要。本次實驗的初值是根據振鏡偏轉角度與出射光夾角的關系來進行估值的,確保了初值的合理性。
2.2.2 位置參數求解模型

圖6為粒子群算法解算位置參數的流程圖,根據經驗粒子群算法的參數選擇如下:

圖6 粒子群算法解算位置參數流程圖
PSO:學習因子 c1=c2=1.5,權重 w=0.8,迭代次數10 000;
BreedPSO:學習因子c1=c2=2.0,權重w=0.7,迭代次數10 000;
為了驗證MATLAB參數求解精度,采用SA軟件進行驗證,將求解所得的數據導入SA中,采用同一目標點在立體視覺坐標系下與振鏡坐標系下的點坐標差值的均方根值來表示,即轉站誤差值,用RMS表示。

整體的標定誤差用所有目標點的均方根值來進行評價,表達式如下:

同時,也對旋轉矩陣誤差ΔR、平移矩陣誤差ΔT進行如下定義,用公式表示為:

BP(back propagation)屬于多層前饋神經網絡,包含數據信息的前向傳播與誤差的反向傳播。即計算誤差從輸入到輸出的方向進行,如果實際輸出與預期結果不符,則神經網絡進入誤差反向傳播過程[11-13]。誤差通過輸出層傳遞,并根據誤差梯度下降的方法逐層返回到隱含層和輸入層,并將誤差分攤到輸入層和隱含層的各節點,進而更新各神經元的權重。重復上述訓練步驟,直到神經網絡的誤差值低于目標。圖7為BP神經網絡模型圖。

圖7 BP神經網絡模型圖
模型精度評價:采用平均絕對誤差(MAE)、平均相對誤差(MRE)、均方根誤差(RMSE)以及擬合優度(R2)對振鏡轉動角度的預測值與實際值進行比較分析。

式中,ya(i)表示第i個振鏡轉動角度的實測值;yp(i)表示第i個振鏡轉動角度的預測值;表示振鏡轉動角的平均值;n為樣本數據個數。
為了驗證本文求解方法的精度和穩定性,以及能夠將解算結果與理論值相比較,從而能夠對標定結果給出評價。根據激光3D投影系統的工作原理及其數學模型進行仿真實驗。設定好激光3D投影系統的模型參數,并給定其與立體視覺坐標系間的轉換關系,即給定二者間的旋轉矩陣R、平移矩陣T。進行多次仿真實驗,來驗證參數求解方法穩定性及精度。
3.1.1 方向參數求解仿真實驗
根據激光3D投影系統的工作原理以及給定的參數仿真得到目標點在立體視覺坐標系下的點坐標,并根據實際工作情況在這些目標點上施加服從正態分布的均值為0,方差分別為0.01 mm、0.02 mm、0.03 mm的噪聲。并根據2.2所提到的最小二乘法進行出射光方向擬合。利用Newton迭代法以及LS法求解出振鏡實際偏轉角度值、入射光偏差值以及旋轉矩陣R。出射光的方向矢量部分數據如表1所示。

表1 部分實驗數據
根據2.2.1的數學模型對擬合得到的出射光利用LS與Newton迭代法求解出振鏡實際轉動角度,圖 8為 varn=0、varn=0.01、varn=0.02、varn=0.03時的實際振鏡轉動角度值與理論轉角的偏差值。

圖8 解算結果
由圖8比較可知LS算法求解轉動角度在未加入噪聲時的求解誤差小于Newton迭代算法,同時可以看出,隨著隨機噪聲加入的增大,對LS算法求解精度影響較大。
根據表2、表3可知LS算法對入射光偏差、旋轉矩陣R的求解精度低于Newton迭代算法,LS算法求解旋轉矩陣誤差數量級在1×10-2°,Newton迭代算法求解旋轉矩陣誤差數量級在1×10-3°,結合上述內容來說,選擇使用Newton迭代算法求解精度更高。對振鏡轉動角度的解算誤差小于 6″。

表2 入射光Z向偏轉0.5°LS、Newton迭代求解結果對比

表3 基于LS、Newton迭代求解旋轉矩陣偏差ΔR對比
3.1.2 位置參數求解仿真實驗
在第一步方向參數求解的基礎上,利用方向參數的求解結果,采用PSO算法以及BreedPSO算法對激光3D投影系統的位置參數進行求解,即求解激光器位置參數S以及平移矩陣T。經過多次仿真實驗,采用PSO算法與BreedPSO算法的平移矩陣求解誤差在一個數量級,PSO的效果相對來說更好。利用PSO算法對激光器位置求解結果如表4所示。

表4 激光器位置參數(y、z)求解結果對比
為了觀察目標點數對平移矩陣求解的影響,根據仿真得到的數據,分別取個數10~90的目標點進行目標點數對平移矩陣求解影響的仿真實驗,對結果進行分析。根據圖9可知,目標點數目在50個以上時,PSO算法收斂快且準確。

圖9 目標點個數不同的PSO算法對平移矩陣的影響
表5為varn=0時的部分仿真數據,其中理論值代表立體視覺坐標系下的點坐標,實際值代表由求解得到的參數根據激光3D投影系統的數學模型求解得到的目標點的點坐標,dMag為兩點的偏差值。根據表5可知單個目標點的解算誤差不超過0.15 mm。

表5 部分仿真數據
在理論點坐標上施加服從正態分布的均值為0方差0.01、0.02、0.03的噪聲來模擬立體視覺系統的實際工作情況,根據圖10可以看出,該激光3D投影系統求解模型誤差的RMS為0.1 mm,證明該求解模型的可行性與精確性。

圖10 噪聲不同的RMS誤差結果比較
本論文運用BP神經網絡模型對振鏡實際轉動角度與理論轉動角度進行建模探究其關系,以振鏡實際轉動角度作為輸入,采用試錯法對隱含層神經元數目進行調整確定,給定初始值,再逐漸增加其個數,通過BP神經網絡訓練結果,比較每次預測的精確度,來確定隱含層神經元個數最佳值。經過多次試驗,得到當隱含層神經元個數為3時,誤差控制在最小,因此本論文模型的最優節點數為3。
將振鏡實際轉動角度與理論轉動角度的測量數據隨機分為2組:三分之二的數據進行BP神經網絡訓練,三分之一的數據進行模型驗證。輸入變量個數為1,訓練時隱含層神經元數從1增加到7,利用測試集中的精度評價及擬合優度來確定最優的隱含層神經元數目為3,如圖11(a)。在此基礎上,利用1-3-1結構的神經網絡模型進行預測,得到預測結果如圖11(b)所示。表明該模型的預測結果較好。表6為15次神經網絡預測精度的平均值。通過計算可知對振鏡轉動角度的預測誤差不超過5″。

圖11 神經網絡預測結果圖

表6 神經網絡模型精度評價
闡述了激光3D投影系統的基本原理及其復雜模型,針對激光3D投影系統的復雜模型,提出了基于Newton迭代算法的方向參數求解以及基于PSO算法的位置參數求解方法。解決了方向參數求解算法初值選取的問題以及避免了位置參數求解的初值選取,同時得出激光3D投影系統中位置參數解算的最佳目標點數為70個。根據實際工作情況,在投影點坐標上施加均值為0,方差分別為 0.01、0.02、0.03的噪聲后,進行仿真,仿真結果表明激光3D投影系統的振鏡轉動角度解算誤差不超過6″,解算模型誤差的RMS為0.1 mm,證明了基于Newton迭代法與PSO算法的優化算法的可行性。針對振鏡存在轉動偏差,提出了一種基于BP神經網絡的誤差補償方法,通過多次仿真實驗得到1-3-1結構的神經網絡模型預測效果最好,其均方根誤差小于5″,為后續激光3D投影系統的研究奠定了基礎。