趙祖陽,崔海華,杜坤鵬,曲一鳴,權(quán)冬,穆志國
(1 南京航空航天大學(xué) 機電學(xué)院,南京 210016)(2 中航西安飛機工業(yè)集團股份有限公司,西安 710089)
作為增強現(xiàn)實技術(shù)[1]的一個分支,三維激光投影定位技術(shù)能夠?qū)a(chǎn)品的數(shù)字化三維模型輪廓信息以及部分制造信息準確地呈現(xiàn)在產(chǎn)品裝配現(xiàn)場所需要的地方。這種非接觸式的可視化定位技術(shù)在數(shù)字化設(shè)計與制造之間起到了良好的橋梁作用。
二維振鏡系統(tǒng)是一個能夠精準控制激光束光路的光學(xué)反射系統(tǒng),它已經(jīng)成為三維激光投影系統(tǒng)不可缺少的一部分,二維振鏡的標定技術(shù)是實現(xiàn)高精度的三維激光投影的核心關(guān)鍵技術(shù)。隨著二維掃描振鏡的應(yīng)用從二維平面掃描擴展到三維空間掃描,振鏡系統(tǒng)標定難度也在加大,振鏡系統(tǒng)應(yīng)用的不斷拓展促進了振鏡系統(tǒng)標定技術(shù)地發(fā)展。國外激光投影技術(shù)研究較早,技術(shù)較為嫻熟,F(xiàn)U Y C[2]發(fā)明了一種激光投影顯示系統(tǒng),成功地將輪廓投影到目標上;HAYES M W等[3]通過結(jié)合激光投影系統(tǒng)和光敏感材料,實現(xiàn)了復(fù)雜部件的精密裝配。在國外,激光三維投影定位系統(tǒng)已經(jīng)實現(xiàn)商業(yè)化,如EXTEND3D公司的Werklicht Pro設(shè)備投影空間精度高達0.1 mm/m。而在國內(nèi),激光投影技術(shù)在近十年才迅速發(fā)展,劉邈等[4-6]分別利用近似模型法和查表法標定二維振鏡的內(nèi)外參數(shù),實現(xiàn)了高精度的激光三維標示,但其整個投影系統(tǒng)的實現(xiàn)過程需要使用復(fù)合平面靶標和激光跟蹤儀,使得該系統(tǒng)整體的成本較高,操作比較復(fù)雜;郭麗麗等[7-8]構(gòu)建了智能3D投影系統(tǒng),建立了iGPS(Indoor GPS)測量網(wǎng)絡(luò)不確定度模型,提高了標定的精度,然而,整個投影系統(tǒng)由于需要搭配iGPS這樣的高精度定位設(shè)備,使得該系統(tǒng)實現(xiàn)的門檻較高且標定過程需要花費大量的時間,效率低下;TU Junchao等[9-10]提出一種新的非理想狀態(tài)的振鏡模型參數(shù)標定方法,進一步提高了標定精度,但是該系統(tǒng)采集標定數(shù)據(jù)過程較為復(fù)雜,采集基礎(chǔ)數(shù)據(jù)耗時耗力。即現(xiàn)有的激光投影技術(shù)的標定過程存在過程操作復(fù)雜[11-12]、效率低和需要使用激光跟蹤儀等高成本設(shè)備的問題,導(dǎo)致了三維激光投影無法在裝配制造視場廣泛應(yīng)用。而視覺測量技術(shù)是典型的非接觸式輔助測量技術(shù)之一,測量精度較高。其不僅可以為振鏡的標定采集大量高精度的數(shù)據(jù),還能作為基礎(chǔ)坐標系實現(xiàn)被投影對象坐標系與振鏡坐標系的對齊[13-14]。除此以外,視覺測量具備發(fā)展成熟、對硬件要求低等優(yōu)勢。研究基于視覺輔助的三維激光投影系統(tǒng),能夠降低該技術(shù)的實現(xiàn)門檻,促進三維激光投影的推廣與應(yīng)用。
針對上述問題,本文基于二維圖像間存在的單應(yīng)性變換,提出了一種三維激光投影方法。建立了基于單目視覺的三維激光投影模型,利用相機圖像與投影圖像之間的單應(yīng)性矩陣,推導(dǎo)出針對于平面的快捷標定方法。并在搭建的平臺上進行了標定和投影實驗,驗證了所提方法的有效性,解決了現(xiàn)有技術(shù)中存在的操作復(fù)雜、實現(xiàn)門檻較高等問題。
單目視覺系統(tǒng)在機器人、工業(yè)測量、人工智能等方面有著廣泛的應(yīng)用。結(jié)合單目視覺系統(tǒng),搭建了一種針對于平面的三維激光投影系統(tǒng),圖1為激光投影系統(tǒng)的原理圖。在已知被投影目標的數(shù)模和目標輪廓的情況下,利用計算機控制激光器和振鏡,實現(xiàn)目標輪廓從數(shù)模到實物的1∶1投影。三維激光投影系統(tǒng)包括相機、激光器、二維振鏡、計算機、被投影目標。從數(shù)模坐標系到實物的1∶1輪廓投影具體的實現(xiàn)方式如圖2。圖2所示的三維激光投影系統(tǒng)模型定義了4個坐標系:相機坐標系Oc-XcYcZc,被投影目標坐標系Ow-XwYwZw,數(shù)模坐標系和振鏡坐標系Oz-XzYzZz。
圖1 目標輪廓(三角形)從數(shù)模到實物的1∶1投影Fig.11∶1 projection of target contour(triangle)from digital analog to real object
圖2 三維激光投影定位系統(tǒng)模型Fig.23D laser projection positioning system mode
單應(yīng)性矩陣是投影幾何中一個術(shù)語,本質(zhì)上是一個數(shù)學(xué)概念。其表達的是圖像之間的相互關(guān)系,即一幅圖像中的某一點,可以在另一幅圖像上找到唯一的一個對應(yīng)點。假設(shè)記一張圖像上存在點A,另一張圖像上的對應(yīng)點記為A′,兩點的齊次坐標為A=(x,y,1),A′=(x′,y′,1)。則從點A到點A′間一定存在一個單應(yīng)性矩陣H(H∈R3×3),使得A=HA′,單應(yīng)性矩陣H可以表示圖像成像角度變化的平移旋轉(zhuǎn)等變換。
通過單應(yīng)性矩陣H以及點A=(x,y,1)T和點A′=(x′,y′,1)T可得
同理圖像之間所有的對應(yīng)點都能得到一組方程。已知單應(yīng)性矩陣有9個未知數(shù),由于使用的是齊次坐標,可以通過單應(yīng)性矩陣H的9個未知數(shù)都除以h23將其進行歸一化處理。因而整個單應(yīng)性矩陣只剩下8個未知數(shù),只要圖像間有4個及以上的對應(yīng)點,就可以求解出單應(yīng)性矩陣H。
將單目相機與振鏡關(guān)聯(lián)成一個整體,組成三維激光投影系統(tǒng)。利用振鏡模型與攝像機模型的相似性,將振鏡模型等效成一個相機模型[15]。對于單目相機系統(tǒng),所獲得的二維圖像是使用鏡頭對真實物體的映射,而對于振鏡系統(tǒng),目標圖像的每一個點都是由振鏡伺服旋轉(zhuǎn)所標記的圖像的映射。通過在計算機中創(chuàng)建一個虛擬的主點,相當于單目相機系統(tǒng)的光心,構(gòu)建出振鏡系統(tǒng)的圖像坐標系。利用單目相機系統(tǒng)的圖像坐標系與振鏡系統(tǒng)的圖像坐標系的二維圖之間存在的單應(yīng)性矩陣,解算單目相機系統(tǒng)像素坐標系與振鏡系統(tǒng)二維圖像坐標系的轉(zhuǎn)換關(guān)系,完成三維激光投影系統(tǒng)的標定。
針對被投影目標,控制激光器向被投影平面投影已知坐標的點陣,記錄點陣的坐標。同時控制相機拍攝,記錄相機獲得的圖像,進行濾波去除噪聲后檢測輪廓,并對輪廓進行橢圓擬合,獲得所有光斑的圓心坐標,記錄在相機圖像坐標系中的點陣坐標為。利用圖像二維單應(yīng)性矩陣進行相機與振鏡的標定。即與之間存在單應(yīng)性矩陣Ht(H∈R3×3)滿足:Pty=ΗtPt。利用基于Levenberg-Marquardt優(yōu)化的迭代算法可以求解出圖像坐標系與投影坐標系之間較優(yōu)的單應(yīng)性矩陣:
在已知被投影目標數(shù)模的情況下,為了獲取被投影目標與單目相機的相對位置關(guān)系,需要對被投影目標進行位姿估計[16-17]。計算被投影目標中關(guān)鍵點與圖像中像素點的對應(yīng)關(guān)系,實現(xiàn)目標位姿解算。在數(shù)模與被投影目標比例為1∶1的情況下,將數(shù)模坐標系與世界坐標系重合,通過相機拍攝被投影目標的圖像,進行濾波去除噪聲后檢測輪廓,為了保證位姿解算的正確性,提取的特征盡量均勻的分布占據(jù)整個被投影平面。在采得圖像中利用特征提取算法提取特征點,記錄特征點集坐標,對應(yīng)的在被投影目標的數(shù)模中獲取對應(yīng)的特征,記錄特征點集坐標(k=1,2,…,n)。由于被投影目標是一個平面,因此可以利用單應(yīng)性矩陣進行位姿估計。存在單應(yīng)性矩陣Hw(H∈R3×3),使得Pt=HwPw,可以求得世界坐標系與圖像坐標系之間較優(yōu)的單應(yīng)性矩陣:
在圖2三維激光投影定位模型中,存在兩類單應(yīng)性矩陣:1)被投影平面與相機圖像之間的單應(yīng)性矩陣;2)相機內(nèi)的圖像與振鏡的二維圖像單應(yīng)性矩陣。圖中,將相機與振鏡調(diào)整至合適的視場位置,被投影平面與相機圖像之間的單應(yīng)性矩陣為Hw→t,相機圖像與振鏡圖像之間的單應(yīng)性矩陣為Ht→ty,根據(jù)單應(yīng)性矩陣的傳遞性可以得到整個激光投影標定的轉(zhuǎn)化過程:
為了分析提出的標定方法的性能,接下來從重投影精度、穩(wěn)定性、標定誤差分布三個角度進行討論。
為了量化誤差,計算位姿估計的目標點p1與實際點p2的二范數(shù)作為重投影誤差e1,計算相機圖像的目標點p3與實際投影的圓環(huán)的中心點p4的二范數(shù)作為重投影誤差e2,可表示為
在0.5~3 m的常用投影距離內(nèi),每隔0.5 m做一次標定,標定結(jié)果與重投影誤差如表1。
表1 0.5~3 m單應(yīng)性矩陣H1,H2對應(yīng)的重投影誤差Table 10.5~3 m homography matrix H1,H2 and the corresponding reprojection error
分析可得,第一段重投影像素誤差保持在0.05 pixel左右,第二段重投影像素誤差隨著距離的增加而增大,但是在3 m范圍內(nèi)均小于1 pixel,在短距離的時候接近于0,標定精度較高符合實際應(yīng)用需求。
在0.5~3 m的距離內(nèi),每隔0.5 m做10次重復(fù)性標定,取平均值作為當前距離的重投影誤差,整合成從0.5~3 m的變化曲線,如圖3。
圖3 標定穩(wěn)定性分析Fig.3 Calibration stability analysis
從圖3可知,第一段單應(yīng)性估計的誤差幾乎不隨距離的增加而變化,穩(wěn)定性較高;而第二段單應(yīng)性估計的誤差,隨著距離的增加,重投影像素誤差也相對的每米增加0.1個像素??傮w上看,在短距離范圍內(nèi),整體的誤差波動在0.6個像素以內(nèi),波動性較小,穩(wěn)定性較高。
將前后的重投影誤差繪制成圖4,通過對比分析可以發(fā)現(xiàn),相機與振鏡之間的單應(yīng)性誤差幾乎占據(jù)整個誤差的90%,數(shù)值上第二段單應(yīng)性估計的誤差比第一段單應(yīng)性估計的誤差幾乎高一個數(shù)量級,是本標定算法的主要誤差來源。產(chǎn)生此誤差的原因是振鏡每次的最小偏轉(zhuǎn)是一定的,相應(yīng)形成的二維圖像的分辨率不高。本文采用的相機分辨率為1280×960,而振鏡圖像的分辨率為500×500。振鏡的二維圖像分辨率遠遠低于相機的二維圖像分辨率,因而產(chǎn)生了誤差,這個誤差是不可避免的。
圖4 兩次標定誤差分布Fig.4 Error distribution of two calibrations
為了方便試驗數(shù)據(jù)結(jié)果的分析,選取了圓盤標定板作為被投影部件,模擬三維激光投影實現(xiàn),假設(shè)標定板上的四個大圓(如圖5(a)已用顏色標出)需要進行投影定位。利用本文的標定方法標定三維激光投影系統(tǒng),完成投影。為了盡可能地減少誤差,在實驗時應(yīng)選取光斑較為規(guī)則的激光器;在對圖像進行處理時,對提取的圓環(huán)中心進行編號,與投影坐標系進行一一對應(yīng),避免誤匹配給試驗帶來的誤差;在解算相機與振鏡的關(guān)系時,投影的激光圓環(huán)應(yīng)盡可能均勻地覆蓋被投影平面,再利用優(yōu)化方法對求解出的單應(yīng)性矩陣進行優(yōu)化。
圖5 實驗圓盤標定板Fig.5 Experimental disc calibration plate
綜上所述,結(jié)合單目視覺的三維激光投影標定與投影的實現(xiàn),步驟如下:
1)圖像采集。固定相機與振鏡的位置,拍攝圓盤標定板,采集圖像圖5(b)。再記錄預(yù)投影每個圓環(huán)在投影坐標系下的二維坐標,通過板卡控制振鏡向被投影平面均勻投射多個激光圓環(huán)。在投影激光圓環(huán)的同時,控制相機采集圖像。
2)被投影目標位姿估計。提取圖5(b)中的特征點,與標定板數(shù)模的特征進行匹配,提取特征的像素坐標。再根據(jù)已知的標定板平面的特征的世界坐標,通過單應(yīng)性估計,完成世界坐標系到圖像坐標系的標定。
3)相機與振鏡關(guān)系解算。提取投影了圓環(huán)點陣的圖中的圓環(huán)特征,擬合出圓環(huán)的圓心與振鏡投影坐標系的圓環(huán)特征點作匹配。求解單應(yīng)性變換矩陣,完成圖像坐標系與投影坐標系的標定。
4)三維激光投影實現(xiàn)。在數(shù)模中得到四個目標圓的輪廓坐標,利用已經(jīng)標定的變換將輪廓轉(zhuǎn)換到投影坐標系,實現(xiàn)投影。
5)在0.5~3 m之間重復(fù)試驗。
記錄投影的4個圓環(huán),提取對應(yīng)的坐標。整個三維激光投影系統(tǒng)的標定會存在誤差,圓環(huán)與標定板上的目標圓不可能完全重合。由于相機標定的誤差在0.05個像素左右,遠小于誤差值可以忽略不計。為了更方便地進行數(shù)據(jù)分析,可以把通過相機拍攝標定板提取的四個圓的圓心像素坐標作為真值,把相機拍攝的激光投影的圓環(huán)的圓心作為實驗值進行分析。圖6為在1.5 m處所得的4個圓環(huán)數(shù)據(jù),其中point1為拍攝的標定板圓的圓心坐標,point2為投影的圓環(huán)的圓心坐標。
圖6 目標圓投影Fig.6 Target circle projection
用投影圓環(huán)的圓心p1(x1,y2)和標定板目標圓的圓心p2(x2,y2)的圓心距來表示投影的誤差,即S=。通過計算得到投影圓環(huán)與標定板目標圓圓心的像素誤差,利用已知的像素當量,將像素誤差轉(zhuǎn)換為實際距離誤差。具體數(shù)據(jù)如表2。
表2 投影距離為1.5 m的精度分析Table 2 Accuracy analysis with a projection distance of 1.5 m
利用相似的方法,分析整個試驗中0.5~3 m的實驗數(shù)據(jù),如表3所示。分析可知,隨著距離的增加,投影精度雖然有所下降,但是波動較小。同時由于本文方法僅需要解算投影平面、相機圖像平面和振鏡投影平面之間的關(guān)系,進而標定過程較為簡單,標定時間僅需要5 min,有效地提高了標定的效率。
表3 投影距離為0.5~3 m的實驗數(shù)據(jù)分析Table 3 Analysis of experimental data with a projection distance of 0.5~3 m
對比現(xiàn)有方法及商業(yè)設(shè)備的精度,如表4。表中對比了投影距離為1 m和3 m時,國內(nèi)常用的方法、設(shè)備WerklichtPro以及本文所提方法所能達到的定位投影的精度以及本文方法相比其他方法精度的提升。通過對比分析可以發(fā)現(xiàn),在投影定位精度上,本文提出的基于單應(yīng)性矩陣的投影方法的精度優(yōu)于國內(nèi)常用的方法。在標定的精度上,優(yōu)于國內(nèi)基于視覺的常用方法;在標定的效率上,本文提出的方法不需要進行復(fù)雜的手動標定過程,整個標定過程在5 min左右,而WerklichtPro需要10 min左右的設(shè)置時間[20],有效地提高了標定效率。
表4 精度對比Table 4 Accuracy comparision
提出了一種三維激光投影模型與基于單應(yīng)性矩陣的三維激光投影標定方法,實現(xiàn)了三維激光投影。在實際操作時,首先完成被投影部件坐標系與相機圖像坐標系的單應(yīng)性估計,再進行相機圖像坐標系與投影坐標系的單應(yīng)性估計,進而完成整個三維激光投影定位系統(tǒng)的標定。單應(yīng)矩陣的標定方法受限于平面物體,適用于被投影部件為平面的情況。相比于國內(nèi)常規(guī)的標定方法,本文方法避免了復(fù)雜的前期標定過程,提高了標定的效率,投影定位精度在常規(guī)投影距離3 m范圍內(nèi)精度可達0.3 mm,避免了使用激光跟蹤儀與IGPS這樣的定位設(shè)備,降低了成本,解決了目前整個三維激光投影系統(tǒng)操作過程效率低的問題。