劉源泂,薛海浪,岳澤宇,湯 勃
(1.武漢科技大學(xué)冶金裝備及其控制教育部重點實驗室,湖北 武漢 430081;2.武漢科技大學(xué)機械傳動與制造工程湖北省重點實驗室,湖北 武漢 430081;3.江蘇鴻光桿塔有限公司設(shè)計部,江蘇 宜興 214200)
鋼結(jié)構(gòu)桿塔是電網(wǎng)輸電線路架設(shè)的重要部件,其中鋼管塔結(jié)構(gòu)以其外形美觀,體形系數(shù)小,易安裝等特點而應(yīng)用廣泛[1]。目前我國鋼管桿塔多段連接時一般采用有頸法蘭連接方式[2],生產(chǎn)制造時需將法蘭及其肋板焊接到塔身。鋼管塔尺寸規(guī)格多樣,塔身分為圓筒形、多邊形,沿法蘭圓周肋板數(shù)量多,支撐塔身轉(zhuǎn)動的定位托輪旋轉(zhuǎn)定位誤差較大,故目前仍采用人工焊接,存在勞動強度大,效率低等問題。因此焊縫的實時定位是實現(xiàn)桿塔法蘭肋板自動化焊接的首要問題。
針對船身表面、大型管道、空間多類型焊縫等復(fù)雜自動焊接場合,定制開發(fā)對應(yīng)視覺焊縫三維信息檢測方法,能有效得引導(dǎo)焊接機器人規(guī)劃焊接路徑[3]。一般視覺三維測量方法包括單目視覺、雙目立體視覺及結(jié)構(gòu)光視覺[4~5]等,其中結(jié)構(gòu)光視覺因其靈活、高效高精等特點在焊縫引導(dǎo)中應(yīng)用廣泛[6]。其研究重點主要集中于適應(yīng)具體任務(wù)的焊縫圖像獲取方法、特征提取算法及系統(tǒng)方法可靠性等方面,如采用分步定位光切法[7],對結(jié)構(gòu)光中心進行直線擬合得到交點作為焊縫點,實現(xiàn)單條筆直角焊縫的三維檢測;針對船艙底部狹小空間焊縫設(shè)計基于旋轉(zhuǎn)電弧和激光視覺雙傳感方法[8],對平面不連續(xù)角焊縫和流水孔特征識別;光切法對三面體結(jié)構(gòu)的角焊縫掃描[9],運用漸進霍夫變換法確定圖片角點信息,坐標(biāo)轉(zhuǎn)換后反饋給焊接機器人;針對不同形狀的角焊縫設(shè)計自適應(yīng)線增長算法[10],以增強三維識別的魯棒性等。
常用的結(jié)構(gòu)光方法硬件結(jié)構(gòu)緊湊,便于靈活布置,但多用于提取單條或連續(xù)焊縫;三維信息提取常用的雙目、多結(jié)構(gòu)光等視覺系統(tǒng)硬件結(jié)構(gòu)空間尺寸大、算法處理時間長(受目標(biāo)結(jié)構(gòu)復(fù)雜性和精度影響)。而電力桿塔法蘭肋板數(shù)量多、空間小,焊縫識別需兼顧精度和效率,即同時識別多條焊縫信息,因此常規(guī)方法存在局限性。這里提出一種光切面掃描和基于三維點云處理的焊縫三維特征信息識別方法,首先標(biāo)定光切平面及測量模型,掃描目標(biāo)后反求得到空間點云集合,設(shè)計點云圖的面、線分割算法提取焊縫邊緣,實現(xiàn)同時多條焊縫的三維識別。
光切面三維測量模型采用激光三角法原理[11],將相機內(nèi)參與結(jié)構(gòu)光平面結(jié)構(gòu)參數(shù)相結(jié)合,如圖1 所示。其中相機坐標(biāo)系為Oc-XcYcZc,圖像坐標(biāo)系為O-xy,像素坐標(biāo)系為O-uv,世界坐標(biāo)系為Ow-XwYwZw。
圖1 光切面三維測量模型Fig.1 3D Measurement Model of Optical Section
由相機投影模型可知,對激光線上的任意一點P進行三維重構(gòu),能獲得一條過點P及光心的一條射線OP,即該射線在相機坐標(biāo)系下的方程。若結(jié)構(gòu)光平面在相機坐標(biāo)系下的方程已知,則可聯(lián)立射線方程及結(jié)構(gòu)光平面方程,獲得該點在相機坐標(biāo)系下的唯一確定的三維坐標(biāo)。
由投影變換關(guān)系,相機坐標(biāo)系與像素坐標(biāo)系轉(zhuǎn)換關(guān)系為:
式中:dx—單位像素在X軸方向上物理尺寸;dy—單位像素在Y軸方向上物理尺寸;f—相機焦距;ZC—相機坐標(biāo)系下P點在Z軸上的坐標(biāo);(u0,v0)—圖像中心。
設(shè)在相機坐標(biāo)系下光平面方程為:
光平面上任意一點P在相機坐標(biāo)系下的坐標(biāo)為PC(xc,yc,zc),其在圖像坐標(biāo)系上的投影點為P(u,v),聯(lián)立相機投影模型與光平面方程:
由式(3)可得相機坐標(biāo)系下結(jié)構(gòu)光平面上任意一點的三維坐標(biāo)為:
其中,fx=f/dx、fy=f/dy。
通過相機坐標(biāo)系和世界坐標(biāo)系的轉(zhuǎn)換關(guān)系,可得世界坐標(biāo)系下的三維坐標(biāo),其轉(zhuǎn)換關(guān)系為:
式中:R—旋轉(zhuǎn)矩陣;T—平移矩陣。
由式(3)可知,已知圖像內(nèi)任意一點的坐標(biāo)時,可通過射線方程和結(jié)構(gòu)光平面聯(lián)立得到相機坐標(biāo)系下坐標(biāo),由式(4)可得空間點實際坐標(biāo)。因此需要首先標(biāo)定求解結(jié)構(gòu)光平面方程、相機內(nèi)部和外部參數(shù)。
測量模型標(biāo)定求解兩個目的:(1)對相機進行標(biāo)定,求解相機的內(nèi)外參;(2)對結(jié)構(gòu)光平面進行標(biāo)定,求解光平面的方程。
2.2.1 標(biāo)定求解算法流程
常用的光平面標(biāo)定方法有拉絲法、鋸齒標(biāo)定法、基于交比不變法標(biāo)定等,其標(biāo)定重點在于獲取結(jié)構(gòu)光平面上多個非共線特征點,通過投影模型轉(zhuǎn)換關(guān)系,將坐標(biāo)信息轉(zhuǎn)換到相機坐標(biāo)系進行平面擬合。這里采用張友正標(biāo)定法和光平面求解的集成標(biāo)定[12],基于二維棋盤標(biāo)定板標(biāo)靶同時對相機及結(jié)構(gòu)光平面進行標(biāo)定,即在標(biāo)定靶的同一位姿下采集不帶激光線的圖像和帶激光線的圖像,在完成相機內(nèi)外參標(biāo)定后,繼續(xù)對結(jié)構(gòu)光平面進行標(biāo)定,實現(xiàn)了相機及光平面的集成標(biāo)定。
標(biāo)定步驟可簡述為:
(1)基于張友正標(biāo)定法[13]求解相機內(nèi)參,獲得每幅圖像的外參信息;
(2)對每幅有激光條紋的棋盤標(biāo)定板圖像進行角點提取,利用基于骨架細(xì)化的改進灰度重心法[14~15]對結(jié)構(gòu)光中心的提?。?/p>
(3)計算圖像坐標(biāo)系下激光線與角點所成直線的交點坐標(biāo),根據(jù)交比不變原理,計算在棋盤格坐標(biāo)系下交點坐標(biāo);
(4)根據(jù)外參進行特征點坐標(biāo)轉(zhuǎn)換,結(jié)合多幅圖像的交點信息,基于RANSAC(隨機抽樣一致)對結(jié)構(gòu)光平面進行標(biāo)定。
2.2.2 標(biāo)定求解結(jié)果
搭建標(biāo)定實驗平臺,采用氧化鋁棋盤格標(biāo)定板(尺寸(120×90)mm,數(shù)目12×9,每格邊長10mm),獲取20幅棋盤標(biāo)定板圖像,如圖2(a)所示。7幅有激光條紋的棋盤標(biāo)定板圖像,如圖2(b)所示。進行標(biāo)定求解。
圖2 實驗圖片F(xiàn)ig.2 Experimental Pictures
求得相機內(nèi)參A及畸變系數(shù)結(jié)果為:
光平面擬合結(jié)果,如圖3所示,按式(2)形式表示可得光平面的方程為:
圖3 光平面標(biāo)定結(jié)果Fig.3 The Result of Light Plane Calibration
通過高精度位移平臺將目標(biāo)平面提升不同高度,再利用標(biāo)定求解的測量模型測量,各平面間的誤差分析對比,如表1所示。
表1 誤差分析對比Tab.1 Error Analysis and Comparison
針對不同實際升高,對比測量模型得到的提升值,絕對誤差最大為+0.102mm,相對誤差最大1.46%,滿足焊縫識別精度要求。
搭建的實驗平臺,如圖4所示。主要包括工業(yè)相機、線激光、計算機及高精度位移平臺等,設(shè)備的具體參數(shù),如表2所示。
表2 實驗設(shè)備參數(shù)Tab.2 Experimental Equipment Parameters
圖4 實驗臺Fig.4 The Experimental Station
以亞克力板制作三維結(jié)構(gòu)實驗板模擬電力桿塔法蘭肋板作為測量目標(biāo),進行焊縫I、II的三維信息提取實驗,實驗板的尺寸,如圖5所示。
圖5 實驗板尺寸圖Fig.5 Dimension Image of Experimental Board
沿掃描方向?qū)σ苿悠脚_步長進行標(biāo)定,設(shè)計基于平移矩陣的步長標(biāo)定方法,其思路為:
(1)標(biāo)定板固定在移動平臺上移動;
(2)相機按一定幀率采集圖像;
(3)標(biāo)定求解每幅圖像對應(yīng)的外部參數(shù),即外參矩陣中的平移矩陣為Ti(i=1~n,n為圖像數(shù))。
(4)取標(biāo)定靶坐標(biāo)原點為參考點,計算n幅圖像間各方向位移的平均值(式6)為重構(gòu)步長。
結(jié)合移動速度,相機幀率取1,連續(xù)拍攝52張圖像進行標(biāo)定,計算結(jié)果為:
將實驗板放于實驗臺,控制實驗臺移動,設(shè)置相機采集幀率為1,對表面進行光切面掃描并成像(共145幅)。
對每幅圖像結(jié)構(gòu)光中心提取,求解三維坐標(biāo),以求得步長重構(gòu),得到實驗板表面三維點云,導(dǎo)入MATLAB 中顯示,如圖6所示。點云數(shù)共26286個,可看到三維結(jié)構(gòu)信息完整。
圖6 三維點云圖Fig.6 3D Point Cloud
實驗板表面主要由三個平面組成,要識別出兩條焊縫,可先分割三個平面,然后進行去噪及邊緣提取,以此獲得肋板表面的邊緣特征,最后設(shè)計點云篩選算法分離出焊縫點,具體算法流程,如圖7所示。
圖7 焊縫特征提取流程Fig.7 Weld Feature Extraction Process
處理流程算法主要包括面分割、邊緣提取、焊縫提取三個部分:
(1)面分割
采用基于隨機采樣一致性判定迭代(RANSAC)的點云分割方法[16]對點云進行分割:
①從總點云中隨機取部分點進行平面擬合;
②計算其他點與擬合平面的距離,設(shè)定閾值判定是否為局內(nèi)點;
③循環(huán)判定得到局內(nèi)點,數(shù)量達(dá)到設(shè)定閾值時則輸出擬合平面參數(shù)。
(2)邊緣提取
針對面點云圖像特點,采用基于法線及k鄰域搜索結(jié)合的點云邊緣提取算法[17]進行點云的邊緣提?。?/p>
①選取k鄰域點作為小基準(zhǔn)平面,用最小二乘法擬合該基準(zhǔn)平面,設(shè)該基準(zhǔn)面方程為:
計算其殘差S最小時的各參數(shù):
分別對a1,a2,a3求偏導(dǎo),并令其等于0:
求得a1,a2,a3即為平面的參數(shù),法向量為(a1,a2,a3),各點形成的k鄰域的法線為n0,n1,…,nk-1,其中n0表示該點本身。
②各點法線量與k領(lǐng)域法向量的點積和模長乘積分別為:
其中,i=1,2,…,k,則夾角可表示為:
對夾角從1到k排序,計算夾角均值及標(biāo)準(zhǔn)差:
③將標(biāo)準(zhǔn)差與閾值T作比較,偏差越大,說明鄰域法線與該點法線偏差大,若大于閾值,則說明該點在尖銳區(qū)域,認(rèn)定其為邊緣點。
(3)焊縫提取
針對焊縫點云集提取,這里提出一種基于統(tǒng)計濾波的點云篩選判定方法:假設(shè)肋板邊緣任意點云的坐標(biāo)為P(Xa,Ya,Za),已知焊縫所在位置為肋板與桿塔面與法蘭面的交線,則可求得邊緣各點到各面的距離為:
式中:i=1,2,…,n,n—邊緣點云總數(shù);am,bm,cm,dm—平面參數(shù)。則該點的k鄰域點到指定平面的平均歐式距離為:
距離的標(biāo)準(zhǔn)差為:
若一個k領(lǐng)域點距指定面的平均距離大于m個標(biāo)準(zhǔn)差,則認(rèn)為該點不是焊縫特征點,被剔除,遍歷完所有點后,便可得到焊縫特征點。
對原始點云進行平面分割得到三個平面的點云圖及平面參數(shù),分割結(jié)果,如圖8所示。
圖8 點云平面分割效果圖Fig.8 The Result Images of Point Cloud Plane Segmentation
擬合后各平面方程參數(shù),如表3所示。
表3 平面方程參數(shù)Tab.3 Parameters of Plane Equation
平面分割后對平面Ⅲ(肋板面)進行去噪及邊緣提取,取k=7、T=90°進行去噪及邊緣提取,提取結(jié)果,如圖9所示。
圖9 平面Ⅲ去噪和邊緣提取效果Fig.9 The Effect of Plane ⅢDenoising and Edge Extraction
根據(jù)式(15),取k=7、m=2對兩條焊縫進行特征提取結(jié)果,如圖10所示。
圖10 焊縫提取效果Fig.10 Weld Extraction Effect
其中焊縫I 上有效點的最小距離(0.73×10-3)mm,最大距離1.86mm,點數(shù)158個;焊縫Ii上有效點的最小距離0.0234mm,最大距離1.91mm,點數(shù)108個,且焊縫信息連續(xù),考慮到焊槍尺寸,提取結(jié)果滿足焊接要求。
用前文所述方法流程對實驗板進行掃描提取,實驗圖片,如圖11所示。
圖11 光切實驗圖像Fig.11 Experimental Image of Light Cutting
提取的焊縫點云圖像,如圖10所示。具體的數(shù)據(jù),如表4所示。
表4 點云統(tǒng)計數(shù)據(jù)Tab.4 Weld Point Cloud Statistics
由表4 可知,兩條焊縫在相機坐標(biāo)系下擬合長度分別為74.03mm和62.20mm,實際長度分別為75mm及63mm,絕對誤差均小于2mm,相對誤差均小于5%,滿足實際焊接±2mm 的精度要求。
這里針對電力鋼管塔法蘭肋板焊接的特點,提出了基于光切面法的肋板焊縫三維重構(gòu)方法。采用集成標(biāo)定法對相機及結(jié)構(gòu)光平面進行求解,運用改進的灰度重心法提高結(jié)構(gòu)光中心提取精度,并進行三維測量及重構(gòu)實驗,基于點云處理方法得到被測焊縫的坐標(biāo)。
實驗結(jié)果表明:這里方法可一次性提取兩條焊,兩條焊縫識別絕對誤差均小于2mm,相對誤差均小于5%,具有定位精度高,成本低、高效靈活等特點,滿足實際焊接±2mm的精度要求。