徐建雙,楊 平,鄭際豪
(廈門大學航空航天學院, 福建 廈門 361102)
航空發(fā)動機葉片是發(fā)動機的重要零部件之一,航空發(fā)動機葉片制造工藝包含幾十道的檢測工序,其過程繁瑣但必不可少.發(fā)動機的每個葉片涉及數(shù)百個三維幾何尺寸,必須嚴格檢查和控制,以確保發(fā)動機的效率和安全.在葉片加工過程中,需要配合適當?shù)娜~片測量技術才能制造出具有精確尺寸和嚴格表面完整性的航空發(fā)動機.近年來,國內(nèi)外專家學者們對發(fā)動機葉片檢測做了大量的研究工作.常用的發(fā)動機葉片檢測方法有三坐標測量、激光測量、結構光法等.Chang等[1]利用3+2三坐標測量完成發(fā)動機渦輪葉片的測量,其精度優(yōu)于±0.03 mm;Guo 等[2]提出一種基于優(yōu)勢特征點的自適應采樣算法,改進三坐標在葉片檢測中的采樣策略,提高測量的可靠性;Li等[3]提出一種基于等高輪廓測量的算法模型,合理地規(guī)劃三坐標的測量路徑,解決葉片前緣和尾緣測量點少導致測量數(shù)據(jù)失真的問題.雖然三坐標測量精度比較高,但是測量速度較慢,并且由于測頭裝有探針,可能會由于碰撞和干擾而引入誤差.激光測量法則在保持高精度的同時,提高測量的效率.華中科技大學李文龍教授課題組[4-5]通過向葉片表面投射線激光以獲取葉片模型三維數(shù)據(jù),其精度可以達到±0.05 mm;Kurazume等[6]將激光測距儀安裝在多個機器人上,實現(xiàn)了復雜結構發(fā)動機葉片的三維測量;Sun等[7]通過引入誤差模型,有效減小激光位移傳感器的入射角對測量精度的影響,該方法比三坐標測量具有更高的效率.激光測量技術精度高,但是采集的數(shù)據(jù)往往是海量的,給數(shù)據(jù)處理帶來難度,并且設備價格不菲,因此激光測量并沒有得到普遍的應用.近年來,結構光測量技術因為可實現(xiàn)動態(tài)和非接觸測量,且適應性強,在工業(yè)領域被廣泛應用.Fu等[8]提出一種格雷碼與相移法結合的光學三角測量法,可實現(xiàn)的測量精度為0.05 mm;馬龍等[9]利用組合結構光對葉片進行測量,有效解決葉片表面特征提取不足的問題,最終實現(xiàn)對葉片表面進行快速準確的三維重建;Guan等[10]使用多個模式的結構光組合成單個復合模式進行投影,根據(jù)反射和捕獲到的圖像獲得物體的三維信息,然而結構光測量技術容易受到工件表面反光的影響,從而限制它的應用.
由于三坐標測量、激光測量、結構光法存在測量成本高、設備復雜和易受工作環(huán)境影響等缺點,本文提出基于增強特征信息的航空發(fā)動機葉片雙目視覺測量方法.通過張貼圓形標記來增強葉片表面的特征信息,利用雙目相機拍攝獲取不同角度的葉片三維輪廓信息,最后利用多角度的葉片三維輪廓信息重構出發(fā)動機葉片的完整三維輪廓,與白光掃描數(shù)據(jù)進行對比以驗證本文提出方法的有效性.本文視覺測量方法簡單易行,能夠快速地對粗加工后的葉片進行測量,可為下一步的精加工提供理論指導.
本文首先設計了搭載雙目相機的硬件系統(tǒng),如圖1所示,包括EPSON六軸機器人、兩個Basler相機、相機支架和光源.其中兩個相機固定在相機支架上的兩個固定板上,可通過調(diào)整固定板的角度來調(diào)整兩個相機的位姿關系,確定最優(yōu)的雙目相機結構參數(shù).相機支架與機器人第五軸緊固連接,機器人可帶動相機支架進行運動,從而可使相機拍到最佳的葉片形貌.光源模塊由背光板與環(huán)形光源組成,其中背光照明的方形板保證強化特征的高均勻、高信噪比成像,環(huán)形光源則以不同照射角度直接照射在被測物體上時,可避免陰影現(xiàn)象.
圖1 視覺檢測硬件示意圖 Fig.1 The diagram of visual inspection hardware
根據(jù)成像原理,設世界坐標系下某點A(xW,yW,zW)在相機成像平面上的投影點為p(u,v),則有[11]
(1)
其中:z為尺度因子;Min為相機內(nèi)參矩陣,由相機成像平面上每個像素在x、y方向的物理尺寸Δx和Δy(單位為mm)、相機焦距f(單位為mm)、像主點坐標v0和u0構成,可通過單目標定得到;Mout為相機坐標系到世界坐標系的變換矩陣,由旋轉(zhuǎn)矩陣R1和平移矩陣T1構成,可通過雙目標定得到.Min·Mout又稱為相機的投影矩陣M.
設A點在左右相機成像平面上的成像點(匹配特征點)分別為AL(u1,v1)和AR(u1,v2).由于AL(u1,v1)和AR(u1,v2)為已知量,左右相機的投影矩陣分別為ML和MR也可以通過視覺標定得到,將AL(u1,v1)、AR(u1,v2)、ML和MR帶入式(1),可得到一個超定方程.利用最小二乘法求解該超定方程即可求得點A在世界坐標系下的坐標(xW,yW,zW).因此,通過相機拍攝和視覺標定可得到空間中任意物體的坐標信息.
由于單次拍攝無法覆蓋葉片全貌,因此本文采用多角度拍攝獲取葉片全貌的點云數(shù)據(jù).考慮到多次拍攝需要改變機器人的位姿,機器人位姿可從機器人控制器上讀出,為了簡化問題,可以將3次拍攝的數(shù)據(jù)統(tǒng)一到機器人基座坐標系OROXROYROZRO下.
設A點在機器人基座坐標系下的坐標為(xRO,yRO,zRO),根據(jù)圖2的世界坐標系(本文中將世界坐標系建立在左相機上)與機器人坐標系的轉(zhuǎn)換原理圖,有如下關系式:
[xRO,yRO,zRO]T=
(2)
其中:Ro為機器人控制器上讀數(shù),即機器人位姿;X為左相機坐標系OLXLYLZL與機器人末端坐標系坐標系OaXaYaZa的轉(zhuǎn)換關系,可通過機器人手眼標定求取.Shui等[12]把手眼標定問題歸納為求解方程AX=XB,其中A為相機在移動前后的相對關系,B為機器人末端坐標系移動前后的轉(zhuǎn)換關系.在歐式空間中,變換矩陣X可看成由旋轉(zhuǎn)矩陣RX和平移向量TX組成,AX=XB可轉(zhuǎn)換為
RARX=RXRB,
(3)
(RA-I)TX=RXtB-tA.
(4)
其中:RA、RB、RX為A、B、X的旋轉(zhuǎn)矩陣,tA、tB、TX分別為A、B、X的平移向量.RA、RB、tA和tB可以根據(jù)相機標定和機器人控制器上的讀數(shù)分別求出,再根據(jù)式(3)和(4),求出RX和TX.
圖2 世界坐標系與機器人坐標系的關系示意圖Fig.2 The diagram of relationship between world coordinate system and robot coordinate system
利用式(2)得到葉片在機器人基座坐標系下的多角度點云數(shù)據(jù)后,根據(jù)1.4節(jié)的特征點識別得到每個拍攝角度下的葉片點云數(shù)據(jù),再根據(jù)1.5節(jié)將相同的特征點重疊并重構出葉片的稀疏點云數(shù)據(jù).
發(fā)動機葉片如圖3所示,由于發(fā)動機葉片顏色為銀灰色,表面特征信息少,并不能進行有效的特征點識別與匹配.為增強發(fā)動機葉片的表面信息,本文在葉片表面張貼圓形標記以增強發(fā)動機葉片表面特征.在物體表面張貼標志點是一種常見的解決特征點不足的方法[13],并且圓形在攝影幾何中具有旋轉(zhuǎn)和仿射不變性,可以較穩(wěn)定地進行識別.
圖3 發(fā)動機葉片圖片F(xiàn)ig.3 The picture of engine blade
特征點匹配的效果將影響三維重建所獲取的目標實際深度信息和尺寸信息[14].常用的特征點匹配方法有SURF(speeded up robust features)、SIFT(scale-invariant feature transform)、ORB(oriented fast and rotated brief)等算法[15-17],但用這些算法處理本文中的發(fā)動機葉片時,會出現(xiàn)匹配錯誤和匹配點太少等問題.考慮到絕大多數(shù)情況下,粘貼在自由曲面上的圓形標記點在相機成像平面上的成像呈橢圓,因此可通過如下步驟進行識別:
1) 首先對預處理后的圖片進行邊緣測量(Canny邊緣檢測),得到二值化后的邊緣輪廓圖,將每個區(qū)域內(nèi)的邊緣輪廓圖上的點存入二維數(shù)組Z中.取邊緣輪廓縱橫坐標的最大和最小值xmin、xmax、ymin和ymax,組合得到4個頂點坐標,圍成邊緣輪廓的外接矩形.
3) 如圖4所示,設橢圓長半軸與X軸的夾角為θ,短半軸為b,則橢圓方程可表示為
(5)
其中,θ∈[0°,180°),每隔1°取一次值.對于每個θ取值,將數(shù)組Z中的點帶入式(5)中,計算b,并向下取整.基于霍夫變換原理,在(b,θ)參數(shù)空間進行投票計數(shù),由累加空間里局部最大值對應的(b,θ)作為橢圓的參數(shù)[18].若數(shù)組Z中的點有51%以上滿足這組參數(shù),則認為該輪廓為橢圓輪廓,并標記出該橢圓輪廓的圓心點(p,q),標記為1,2,3…;否則認為不是橢圓輪廓,刪除該輪廓對應的數(shù)組(以上算法的代碼參考網(wǎng)址http:∥download.csdn.net/download/u012507022/9405763).
圖4 橢圓示意圖Fig.4 The schematic diagram of the ellipse
根據(jù)特征點識別得到的是一些稀疏的點云,并不能重建出光滑的曲面,因此可對這些稀疏點云數(shù)據(jù)進行稠密化處理,其具體處理步驟如下:
1) 首先對這些稀疏點云數(shù)據(jù)重建網(wǎng)格表面;
2) 對1)中的網(wǎng)格表面進行網(wǎng)格細分,本文采用Catmull-Clark[19]細分方法.點云數(shù)據(jù)采用Catmull-Clark細分后其數(shù)目將進一步增多,并且不會影響原始點云數(shù)據(jù)的拓撲結構信息;
3) 在得到足夠多的點云數(shù)據(jù)后,采用ball-pivoting算法[20]對這些點云數(shù)據(jù)進行表面重建.
總結以上實驗步驟,本節(jié)整個實驗的流程圖如圖5所示.
圖5 測量實驗流程圖Fig.5 The flow chart of measurement experiment
根據(jù)單目視覺標定可以分別求出左、右相機的焦距和主點,具體如表1所示.
表1 左、右相機內(nèi)、外參數(shù)Tab.1 The inside and outside parameters of left and right camera
此時左側(cè)和右側(cè)相機的內(nèi)參分別為:
再根據(jù)手眼標定計算,得到左相機坐標系OLXLYLZL與機器人末端坐標系坐標系OaXaYaZa的變換矩陣X中的旋轉(zhuǎn)和平移矩陣:
圖6 不同拍攝角度下發(fā)動機葉片圖Fig.6 Pictures of engine blades from different shooting angles
為完成所搭建雙目視覺成像系統(tǒng),本節(jié)首先對單一發(fā)動機葉片進行測量實驗.先在發(fā)動機葉片上張貼半徑為3 mm的圓形標記,為讓相機采集到最佳的葉片形貌,用環(huán)形光源與方形發(fā)光板配合盡量使圖片光照均勻,使每一個圓形標記都能拍到.由于葉片背面曲率過大,而雙目相機的共同視場有限,只能拍攝到葉片背面一半的區(qū)域,對葉片進行3次拍攝,如圖6所示.表2為機器人運動3次時,機器人末端位姿數(shù)據(jù).為了得到清晰的輪廓,對拍攝得到的圖片先后進行畸變矯正、濾波處理和二值化的預處理.圖7給出了一次拍攝圖片的預處理結果和圓心識別效果.
表2 機器人位姿數(shù)據(jù)Tab.2 Robot pose data
圖7 圖片預處理和圓心特征點識別結果Fig.7 The results of image preprocessing and circle center feature point recognition
檢測出左圖像與右圖像的圓心坐標后,從左到右從上到下給圓形標記編號,并將編號表示在圓心左上方.求出每次拍攝的左右圖像中特征點在成像平面的坐標,由式(1)得到其在左相機坐標系下的坐標,再由式(2)計算出多次拍攝在機器人基座坐標系下的稀疏點云數(shù)據(jù).由于圓形標記約有0.02 mm的厚度,因此對所有的點云數(shù)據(jù)進行補償,最終所有圖片處理后的數(shù)據(jù)如圖8所示.
圖8 三維重建點云數(shù)據(jù)Fig.8 The point cloud data of 3D reconstruction
對上述點云數(shù)據(jù)進行網(wǎng)格化處理,如圖9(a)所示,此時表面擬合后較粗糙,因此要對網(wǎng)格重新劃分,通過平滑、降噪和對齊等數(shù)據(jù)處理方式,最終點云數(shù)據(jù)的效果如圖9(b)所示,得到重建數(shù)據(jù)結果如圖10(a)所示.用EinScan-Pro白光掃描儀對單葉片掃描可得到掃描數(shù)據(jù),此掃描設備掃描精度為0.05 mm,圖10(b)所示為掃描數(shù)據(jù)結果,用本文中三維重建數(shù)據(jù)與白光掃描數(shù)據(jù)進行對比可驗證視覺測量的精度.
圖9 點云數(shù)據(jù)網(wǎng)格化處理(a)和最終效果圖(b)Fig.9 The grid processing (a) and final rendering (b) of point cloud data
為驗證視覺測量的精度,將白光掃描數(shù)據(jù)與三維
圖10 三維重建數(shù)據(jù)(a)和白光掃描數(shù)據(jù)(b)Fig.10 3D reconstruction data (a) and white light scan data (b)
重建數(shù)據(jù)進行對比分析.先用ICP(iterative closest point)[21]算法對兩數(shù)據(jù)集進行匹配對齊,使兩數(shù)據(jù)集之間的匹配轉(zhuǎn)換矩陣達到最優(yōu).由于發(fā)動機單葉片表面點云數(shù)據(jù)不能用方程一次性擬合,將白光掃描數(shù)據(jù)分為葉盆和葉背兩個面.先對葉背面進行曲面多項式擬合,葉背面數(shù)據(jù)的擬合方程設為二元四次曲面方程:
f(x,y)=z=a00+a10x+a01y+a20x2+a11xy+
a02y2+a30x3+a21x2y+a12xy2+a03y3+
a40x4+a31x3y+a22x2y2+a13xy3+a04y4.
(6)
此時擬合曲線誤差平方和達到最小為7.159×10-3,并且二元四次曲面方程的系數(shù)如表3所示.
表3 葉背系數(shù)表Tab.3 The coefficient table of blade back
把ICP匹配對齊后的三維重建的葉背面點云數(shù)據(jù)(xn,yn,zn),(n=1,2,…,N)代入下式中:
(7)
其中,Δ為求取的偏差值,最后利用Matlab可表示偏差值的分布示意圖,如圖11所示.對所有的偏差值求取平均值和標準偏差,分別為0.103 2和0.096 6 mm.
對白光掃描數(shù)據(jù)的葉盆面進行二元四次曲面擬合,擬合曲線得到的最小誤差平方和為4.663×10-3,且曲面方程系數(shù)如表4所示.
把ICP匹配對齊后的三維重建的葉盆面點云數(shù)據(jù)(xn,yn,zn),(n=1,2,…,N)代到式(9)中.求取偏差值后,最后利用Matlab可表示偏差值的分布示意圖,如圖12所示.對所有的偏差值求取平均值和標準偏差,分別為-0.101 4和0.057 1 mm.
綜上可知,葉背、葉盆的偏差平均值分別為0.103 2 和-0.101 4 mm,標準偏差分別為0.096 6和0.057 1 mm.對比兩種面形數(shù)據(jù),葉背測量標準偏差比葉盆面誤差大約1倍,這是由于葉片的葉背面區(qū)域曲率相對葉片的葉盆面區(qū)域曲率大,葉背面測量數(shù)據(jù)是通過兩次拍攝后數(shù)據(jù)的疊加取得而造成的.本文中的視覺測量方法簡單易行,測量設備成本較低,能夠?qū)Υ旨庸ず蟮娜~片進行快速測量,獲取零件的加工誤差數(shù)據(jù),從而及時發(fā)現(xiàn)問題,為下一步的精加工提供數(shù)據(jù)支持.
表4 葉盆系數(shù)表Tab.4 The coefficient table of blade basin
圖12 葉盆面偏差值分布圖 Fig.12 The deviation value distribution map of blade basin
針對發(fā)動機葉片的三維重建,本文中提出了基于增強特征信息的航空發(fā)動機葉片雙目視覺測量方法.具體如下:
1) 設計基于雙目視覺成像的硬件系統(tǒng),保證圖像的高質(zhì)量采集.
2) 針對發(fā)動機葉片表面特征不明顯的情況,通過在葉片表面張貼圓形標記來增強葉片表面特征信息,并提出基于圓心特征匹配方法,實現(xiàn)左右圖片對應的特征點的提取.
3) 完成葉片的整體三維重建,通過與掃描所得的模型數(shù)據(jù)進行誤差對比,得出葉背、葉盆的偏差平均值分別為0.103 2和-0.101 4 mm,標準偏差分別為0.096 6和0.057 1 mm.