陳向陽,朱國力,黃海,彭丹丹
(華中科技大學(xué)機(jī)械科學(xué)與工程學(xué)院,湖北武漢430074)
巖石隧道掘進(jìn)機(jī)(Tunnel Boring Machine,TBM)是指在常壓情況下全斷面開挖巖石的高度機(jī)械化刀盤式機(jī)頭掘進(jìn)機(jī)。在使用TBM進(jìn)行隧道施工中,當(dāng)隧道的圍巖條件較差時(shí),一般增設(shè)鋼拱架以加強(qiáng)支護(hù)強(qiáng)度,防止塌落。國內(nèi)隧道修建安裝拱架普遍由人工進(jìn)行,勞動強(qiáng)度大、安全性差、勞動時(shí)間長。人工操作機(jī)械作業(yè)引起的支護(hù)不及時(shí)或質(zhì)量不穩(wěn)定是造成塌方事故的主要原因,因此實(shí)現(xiàn)鋼拱架拼裝由人工操作向自動化轉(zhuǎn)型,是提高TBM 施工安全和效率的重要途徑。
鋼拱架拼接工作環(huán)境惡劣,機(jī)器視覺對環(huán)境的適應(yīng)性強(qiáng),能始終如一地觀測,可廣泛地和長時(shí)間地用于各種復(fù)雜的工作環(huán)境。陳躍英將機(jī)器視覺應(yīng)用于地鐵盾構(gòu)混凝土管片測量的惡劣工作環(huán)境下;熊曉松和周凱基于LabVIEW建立了工件識別的機(jī)器視覺系統(tǒng);MONTAGUE等研究了一種在熱軋帶鋼機(jī)上在線測量板坯預(yù)拱度的機(jī)器視覺方法。機(jī)器視覺已經(jīng)被廣泛應(yīng)用于各個(gè)行業(yè),但目前對于自動化拼裝鋼拱架中使用的機(jī)器視覺技術(shù)卻鮮有研究。
目前,在進(jìn)行類似于鋼拱架鉸接孔的圓形結(jié)構(gòu)檢測的過程中,主要的方法是利用現(xiàn)有的邊緣檢測算子提取輪廓,再通過傳統(tǒng)Hough變換、改進(jìn)Hough變換或最小二乘法等算法擬合橢圓。邊緣檢測是利用這類方法進(jìn)行擬合的必要的預(yù)處理,而邊緣檢測和Hough變換圓形擬合計(jì)算量較大,實(shí)時(shí)性較差。
本文作者為實(shí)現(xiàn)鋼拱架的自動化拼裝,提出一種基于機(jī)器視覺對鋼拱架鉸接孔進(jìn)行檢測定位的方法。使用NCC模板匹配確定感興趣區(qū)域,基于一維像素序列上的灰度梯度確定橢圓邊緣點(diǎn),采用隨機(jī)抽樣一致性(Random Sample Consensus,RANSAC)算法擬合橢圓確定圓心,為自動化拼裝機(jī)器人提供鋼拱架位姿信息。
鋼拱架拼接是將若干弧形拱架拼接成圓,機(jī)械臂抓取鋼拱架及拼接段(見圖1),拼接時(shí)需對鋼拱架的位姿進(jìn)行測量定位,將其位姿信息傳給拼裝機(jī)械臂,機(jī)械臂將兩個(gè)鋼拱架上的鉸接孔對準(zhǔn),并插入銷進(jìn)行固定。由于鋼拱架在拼接過程中會頻繁移動,選擇非接觸的機(jī)器視覺測量方法。根據(jù)鋼拱架拼接段結(jié)構(gòu)特征,選取鉸接孔圓心作為鋼拱架位姿的特征點(diǎn)。由于鋼拱架在同一平面內(nèi)移動,對深度信息不敏感,可使用單目視覺進(jìn)行位姿測量。
圖1 機(jī)械臂抓取鋼拱及拼接段實(shí)物
美國國家儀器有限公司NI針對自動化系統(tǒng)開發(fā)定做的虛擬儀器開發(fā)平臺LabVIEW與自動檢測視覺生成器(Vision Builder for Automation Inspection,VBAI),支持多個(gè)廠商的工業(yè)相機(jī),包含了大量內(nèi)置和擴(kuò)展的圖形化編程語言函數(shù)庫,方便開發(fā)者快速構(gòu)建自動化系統(tǒng)。因此,本文作者基于NI機(jī)器視覺開發(fā)平臺構(gòu)建機(jī)器視覺系統(tǒng),其檢測流程如圖2所示。
圖2 檢測流程
根據(jù)檢測需求,選用大恒圖像MER-1220-9GM型相機(jī),分辨率為4 024像素×3 036像素;選用日本Computar公司V1628-MPY型鏡頭,焦距為16 mm;選用光源為兩個(gè)白色漫反射條形光源。將相機(jī)、光源固定在支架上,并將其安裝固定在鉸接孔拼接段前650 mm處,保證視場覆蓋拼接段。圖像采集現(xiàn)場如圖3所示。
圖3 圖像采集系統(tǒng)現(xiàn)場
圖像模板匹配是指通過分析模板圖像和目標(biāo)圖像中灰度、邊緣、外形結(jié)構(gòu)以及對應(yīng)關(guān)系等特征的相似性和一致性,從目標(biāo)圖像中尋找與模板圖像相同或相似區(qū)域的過程。為確保圖像的灰度信息能被充分利用,通過計(jì)算模板圖像與目標(biāo)圖像區(qū)域之間歸一化的互相關(guān)值(Normalized Cross-Correlation,NCC)來確定匹配區(qū)域。
(1)
(2)
(3)
為獲取模板,在采集的圖像中截取一個(gè)標(biāo)準(zhǔn)的鉸接孔作為模板圖像,所選取模板如圖4所示。紅色區(qū)域?yàn)檠谀^(qū)域,屏蔽該區(qū)域,使它不參與模板匹配處理,可去除圓孔處背景的干擾。
圖4 模板
由于鋼拱架在移動過程中鉸接孔可能會有小角度旋轉(zhuǎn),為使模板匹配具備旋轉(zhuǎn)不變性,需對模板進(jìn)行多次旋轉(zhuǎn),每次旋轉(zhuǎn)后的模板需重復(fù)進(jìn)行一次匹配,所旋轉(zhuǎn)的角度范圍為±5°、步長為1°,以模板中心為旋轉(zhuǎn)中心按公式(4)進(jìn)行旋轉(zhuǎn),旋轉(zhuǎn)坐標(biāo)計(jì)算結(jié)果非整數(shù)時(shí)使用雙線性插值法進(jìn)行插值。
(4)
支持旋轉(zhuǎn)不變性會提高匹配計(jì)算量,為將圖像匹配過程的實(shí)時(shí)性提高到工業(yè)現(xiàn)場應(yīng)用可接受的范圍,使用圖像金字塔算法。在學(xué)習(xí)和匹配階段,均先對模板和目標(biāo)圖像同時(shí)進(jìn)行多次隔行隔列的2進(jìn)下采樣,生成多幅尺寸以1/4倍(分辨率以1/2倍)遞減的高斯圖像金字塔,以減少后續(xù)計(jì)算量。使用上述模板匹配算法對現(xiàn)場采集圖像進(jìn)行處理,匹配的結(jié)果如圖5所示。
圖5 模板匹配結(jié)果
由以上處理方法實(shí)現(xiàn)了對鉸接孔的初定位,在橢圓檢測過程中可通過限定搜索區(qū)域和搜索數(shù)量來提高檢測的實(shí)時(shí)性,所以提出一種基于一維像素序列上的灰度梯度確定邊緣點(diǎn)的方法。該方法不需找出所有的邊緣進(jìn)行擬合,而是沿指定方向?qū)ふ疫吘夵c(diǎn)并進(jìn)行橢圓擬合。為檢測橢圓使用一種環(huán)形ROI工具,如圖6所示,其搜索線是一組從外部邊緣到圓心(或由內(nèi)向外)的輻射狀線條,沿搜索線計(jì)算邊緣強(qiáng)度,將邊緣強(qiáng)度的極大值作為邊緣點(diǎn)進(jìn)行后續(xù)的曲線擬合。
圖6 環(huán)形ROI工具示意
計(jì)算邊緣強(qiáng)度使用的一維模板是一階梯度傅里葉變換的局部近似,其內(nèi)核長度可以根據(jù)邊緣粗細(xì)來選擇,文中取[-2,-1,0,1,2]。為消除噪聲的干擾,需要對垂直于搜索方向進(jìn)行去噪處理,以提高抗噪性能。在計(jì)算每個(gè)點(diǎn)的邊緣強(qiáng)度前先沿著垂直于搜索方向上指定寬度計(jì)算該范圍內(nèi)的均值,基于該均值沿搜索方向使用上述模板計(jì)算模板中心對應(yīng)像素點(diǎn)的邊緣強(qiáng)度。具體流程如下:
(1)設(shè)置環(huán)形ROI區(qū)域,環(huán)形中心為模板匹配結(jié)果所得中心,設(shè)置內(nèi)徑和外徑穩(wěn)定包裹所提取邊緣;
(2)設(shè)定搜索線條數(shù),一般情況下,搜索線數(shù)目越多所提取邊緣點(diǎn)越多,擬合橢圓越精確,但速度會降低;
(3)沿著垂直于搜索方向上指定寬度計(jì)算該范圍內(nèi)的均值;
(4)使用模板[-2,-1,0,1,2]沿搜索線計(jì)算邊緣強(qiáng)度,將邊緣強(qiáng)度絕對值最大點(diǎn)設(shè)為邊緣點(diǎn)。
所提取的鉸接孔內(nèi)圓邊緣點(diǎn)結(jié)果如圖7所示。
圖7 邊緣點(diǎn)提取
上述方法可實(shí)現(xiàn)快速提取鉸接孔邊緣點(diǎn),但由于鉸接孔表面較粗糙會提取到少量離群點(diǎn)。使用最小二乘法擬合橢圓會將離群點(diǎn)疊加到最終的計(jì)算結(jié)果上,導(dǎo)致計(jì)算產(chǎn)生偏差。RANSAC算法即隨機(jī)抽樣一致算法,是由FISCHLER和BOLLES在1981年最先提出的對于從若干數(shù)據(jù)點(diǎn)集中擬合一條直線的方法,它能應(yīng)對大比例的野值,是一種效果優(yōu)良的魯棒估計(jì)算法。為剔除離群點(diǎn)對橢圓擬合算法進(jìn)行優(yōu)化。基于RANSAC算法,設(shè)計(jì)橢圓擬合方法具體步驟如下:
(1)將已得到的橢圓邊緣點(diǎn)坐標(biāo)記為數(shù)據(jù)集,設(shè)定合適的像素半徑閾值為、最低擬合值為或循環(huán)次數(shù)為;
(2)隨機(jī)從中選擇5個(gè)點(diǎn),3個(gè)不共線的點(diǎn)和另外兩個(gè)點(diǎn)可確定一個(gè)橢圓;
(3)根據(jù)像素半徑閾值,沿著橢圓兩邊所劃定的有效像素范圍剔除范圍外的點(diǎn);
(4)基于保留下的擬合橢圓,并計(jì)算橢圓的擬合值:
(5)
其中為平均平方距離:
(6)
(5)重復(fù)步驟2—4,連續(xù)剔除外點(diǎn),直到擬合值達(dá)到或循環(huán)次數(shù)達(dá)到?;谑O碌膬?nèi)點(diǎn)使用最小二乘法擬合橢圓,得到最終橢圓擬合方程:
+++++=0
(7)
擬合結(jié)果如圖8所示。
圖8 橢圓擬合結(jié)果
該方法可準(zhǔn)確擬合出鉸接孔內(nèi)圓,從而得出鉸接孔圓心的像素坐標(biāo),根據(jù)相機(jī)標(biāo)定結(jié)果可將像素坐標(biāo)轉(zhuǎn)換為實(shí)際坐標(biāo),實(shí)現(xiàn)鋼拱架鉸接孔定位。
為驗(yàn)證檢測算法的穩(wěn)定性和精度,需要對檢測結(jié)果進(jìn)行驗(yàn)證。機(jī)械臂抓取鋼拱架進(jìn)行拼接時(shí),其中一個(gè)鋼拱架位置固定,抓取另一個(gè)鋼拱架移動靠近完成拼接,所以需要對鋼拱架移動距離進(jìn)行測量。故將鋼拱架置于高精度移動平臺上(如圖9所示),使鉸接孔移動已知的固定距離,模擬機(jī)械臂抓取鋼拱架移動過程,由檢測算法測量出移動前后的坐標(biāo)并計(jì)算出移動距離,同時(shí)與實(shí)際移動距離比較。
圖9 高精度移動平臺
具體實(shí)驗(yàn)步驟如下:
(1)對相機(jī)進(jìn)行標(biāo)定,將圓點(diǎn)標(biāo)定板置于鉸接孔表面的同一平面內(nèi),使用LabVIEW的標(biāo)定助手來進(jìn)行點(diǎn)距標(biāo)定;由標(biāo)定助手可得出相機(jī)參數(shù)、畸變參數(shù)以及像素當(dāng)量,根據(jù)標(biāo)定結(jié)果可以得出像素坐標(biāo)與世界坐標(biāo)之間的轉(zhuǎn)換關(guān)系;
(2)運(yùn)行程序采集圖像,檢測出兩個(gè)鉸接孔圓心的世界坐標(biāo);利用兩軸移動平臺,將鉸接孔橫向移動4 mm,檢測移動后的圓心世界坐標(biāo),從而計(jì)算出移動距離,繼續(xù)移動10次計(jì)算移動距離;重復(fù)步驟2,分別移動8、12、16 mm。
按照以上實(shí)驗(yàn)步驟操作,測量結(jié)果如圖10、圖11所示。
圖10 左鉸接孔圓心移動 圖11 右鉸接孔圓心移動
同時(shí),對誤差進(jìn)行分析,可得表1、表2。
表1 左鉸接孔移動距離測量誤差
表2 右鉸接孔移動距離測量誤差
由以上實(shí)驗(yàn)結(jié)果可知,當(dāng)鋼拱架鉸接孔位于視場范圍內(nèi)時(shí),各個(gè)位置均可穩(wěn)定高效檢測,移動距離的測量誤差在±0.2 mm內(nèi),相對誤差在1.1%以內(nèi),可以實(shí)現(xiàn)鋼拱架鉸接孔的精確定位。
針對鋼拱架拼接過程中位姿測量問題,采用了基于機(jī)器視覺的定位測量技術(shù)。首先,通過圖像采集系統(tǒng)獲得高品質(zhì)的圖像,減少特征點(diǎn)提取過程中圖像處理步驟,減少后續(xù)處理的復(fù)雜度;然后,通過模板匹配算法確定感興趣區(qū)域,并通過一維灰度梯度變化提取邊緣點(diǎn),使用RANSAC算法擬合橢圓,確定鉸接孔圓心的像素坐標(biāo);最后,通過相機(jī)標(biāo)定結(jié)果獲得鉸接孔中心的世界坐標(biāo),實(shí)現(xiàn)了對鋼拱架位姿的非接觸實(shí)時(shí)檢測,測量移動距離相對誤差在1.1%以內(nèi),檢測效率可滿足工業(yè)實(shí)時(shí)定位的需求。所提出的方法為其他領(lǐng)域的圓形結(jié)構(gòu)檢測提供了參考,可以用于工業(yè)現(xiàn)場的在線檢測。