劉明言,杜萬和,楊敬輝,
(1. 上海第二工業(yè)大學(xué)資源與環(huán)境工程學(xué)院,上海 201209;2. 上海第二工業(yè)大學(xué)智能制造與控制工程學(xué)院,上海 201209)
十二線激光投線儀又可稱為激光標(biāo)線儀,可在三維空間內(nèi)提供3組激光平面,共12條線,且水平線和鉛錘線是互成90度夾角的激光投射線[1]。激光投線儀已經(jīng)在土建工程、消防工程和裝潢施工等方面均都有廣泛應(yīng)用[4]。其單個激光頭的工作原理為利用激光發(fā)射器產(chǎn)生的激光光束,經(jīng)過表面為鏡面的錐形的反射,形成360°的激光水平面。其中對單個激光頭發(fā)射出平面上激光線的水平度是否合格是激光標(biāo)線儀組裝前的重要工序,目前該工序使用較為傳統(tǒng)的檢測方法,參照使用目前國內(nèi)校準(zhǔn)方法的行業(yè)標(biāo)準(zhǔn)JB/T11665—2013[2],在同一平面上,激光線透射過4個使用經(jīng)過經(jīng)緯儀校準(zhǔn)過水平的550 mm平行光管,成像在目標(biāo)刻度板上,人工觀察四個方向上內(nèi)置的標(biāo)準(zhǔn)刻度板,通過轉(zhuǎn)動放置激光頭的載物臺上的微調(diào)手輪,調(diào)整3條激光線到刻度線零點(diǎn),使其XY方向上保持水平,并對比第4條激光線在刻度板上偏差的距離是否在標(biāo)準(zhǔn)范圍之內(nèi)。顯然,傳統(tǒng)的人工檢測方法存在人為主觀誤差、檢測效率低、檢測精度低等缺點(diǎn),導(dǎo)致檢測結(jié)果有誤差。
針對傳統(tǒng)的檢測方法的缺點(diǎn)以及現(xiàn)有的生產(chǎn)條件下,謝文靜[3]等提出基于平行光管測角及機(jī)器視覺測量的激光投線儀自動檢測系統(tǒng),使用CMOS工業(yè)相機(jī)采集光管內(nèi)的圖片并運(yùn)用圖像處理的檢測方法,提取激光線中心采用灰度重心法的亞像素定位技術(shù)與基準(zhǔn)線做對比,實現(xiàn)調(diào)整。陳寒松[6]等采用線陣 CCD 實現(xiàn)光線位置的快速檢測,并改進(jìn)激光投線儀的機(jī)芯結(jié)構(gòu),搭建了一套使用PID 控制算法控制伺服電機(jī)的光線校準(zhǔn)系統(tǒng)。劉盼盼[7]等使用由550mm平行光管組成的激光投線儀的多維校準(zhǔn)系統(tǒng),該系統(tǒng)采用高分辨率CMOS工業(yè)相機(jī)采集數(shù)字圖像,通過圖像處理技術(shù)實現(xiàn)對激光線偏移精度的量化,提高了校準(zhǔn)激光水平線和鉛錘線的平均精度。在平面度檢測領(lǐng)域,劉思遠(yuǎn)[8]等利用光學(xué)三角法獲取掃描點(diǎn)的坐標(biāo),使用最小二乘法計算平面度誤差,并在機(jī)械零件制造領(lǐng)域應(yīng)用于測量鑲塊模具的平面度,對比接觸式檢測方法獲得平面度精度誤差小于20 μm的結(jié)果。劉許亮[9]等利用點(diǎn)激光測量的方式,獲取被測件的連續(xù)坐標(biāo)數(shù)據(jù),使用最小二乘法對數(shù)據(jù)點(diǎn)進(jìn)行擬合平面分析,并用非線性誤差補(bǔ)償進(jìn)行優(yōu)化計算出平面度,提高了測量精度,減少了檢測時間,但沒有有效地去除噪聲數(shù)據(jù)。綜上所述,在激光投線儀檢測領(lǐng)域已有使用圖像處理方式,獲取激光線中心點(diǎn),并與其水平相對的CCD相機(jī)所獲取到的圖像進(jìn)行位置對比,計算偏差角度,但此方法并沒有脫離傳統(tǒng)人工檢測的檢測方法,無法測量空間坐標(biāo)系下激光線的整體平面度。在機(jī)械工件檢測領(lǐng)域,多使用最小二乘法擬合平面計算表面的平面度fLSM=d1-d2,其中d1和d2為距離基準(zhǔn)面最遠(yuǎn)點(diǎn)的兩個數(shù)據(jù)點(diǎn)到基準(zhǔn)平面的距離。
針對以上問題,本文提出使用CCD工業(yè)相機(jī)采集光管內(nèi)圖像后,對采集到的空間內(nèi)激光投射線圖像進(jìn)行圖像處理,用圖像濾波剔除干擾噪聲點(diǎn),并且針對有效像素點(diǎn)在空間坐標(biāo)系內(nèi)進(jìn)行坐標(biāo)轉(zhuǎn)換,提出使用總體最小二乘估計方法擬合出最優(yōu)的、無偏的三維空間內(nèi)激光投射基準(zhǔn)平面,與零件表面平面度不同,激光投射線的平面度,由圖像中有效數(shù)據(jù)點(diǎn)的點(diǎn)與基準(zhǔn)平面的方差表示。同時使用線性回歸模型,探究經(jīng)過平行光管入射后,激光投射線的平面度在不同位置上平面度的變化規(guī)律,并按照廠內(nèi)對激光頭的合格標(biāo)準(zhǔn),模擬空間激光平面偏差20''的擬合平面,以此作為評判激光頭投射線的合格標(biāo)準(zhǔn)。本文的研究在現(xiàn)有的檢測裝置的基礎(chǔ)上,可計算激光線的平面度,從三維空間的角度提出一種激光線平面度的合格標(biāo)準(zhǔn),將平面度檢測從機(jī)械零件平面的檢測拓展到激光投射線的平面度檢測。
激光頭是激光投線儀的核心部件,其中激光頭所發(fā)射的激光線的平面度極為關(guān)鍵,結(jié)構(gòu)如圖1所示。內(nèi)部的激光發(fā)射器激發(fā)出的平行的激光光束,經(jīng)過與錐形鏡面的反射,產(chǎn)生與激光光束成夾角的激光投射線,每個經(jīng)過反射的激光線連接成最終的激光投射平面。
圖1 激光頭出射原理示意圖
因為激光頭內(nèi)錐形鏡面的生產(chǎn)加工過程中,無法保證鏡面錐形的平整度,導(dǎo)致某個或幾個方向激光發(fā)射器與棱鏡之間出現(xiàn)微小的角度偏差,經(jīng)過一定距離的傳播,會使光線偏離激光的基準(zhǔn)水平面,最終影響激光投射線整體的平面度,致使激光頭質(zhì)量不合格。
激光頭的激光投射線誤差是指,水平360°激光平面在分劃板上偏離分劃板零點(diǎn)的最大夾角。將待測激光頭放置到檢測臺的中心位置,以激光頭為中心,調(diào)節(jié)激光頭下方的二維角位臺,使其轉(zhuǎn)動X和Y軸方向,使三個平行光管內(nèi)的激光投射線接近分劃板零點(diǎn)位置,待相機(jī)采集到的激光投射線畫面穩(wěn)定后,讀取激光Di。然后將平行光管內(nèi)的焦距L(單位:mm)代入公式,計算得到水平激光投射線的誤差角度θ(單位:s):
檢測臺的結(jié)構(gòu)包括經(jīng)緯儀水平矯正過的4根處于同一水平面的平行光管、放置激光頭的角位臺(可手動調(diào)節(jié)XY方向角度),每根光管的擺放位置相隔90°距離待測激光頭500mm,如圖2所示,其中平行光管焦距為550mm,在焦點(diǎn)處內(nèi)置長2mm的分化刻度板,最小刻度為0.1mm;后置500萬像素的CCD工業(yè)相機(jī)(共4個),通過Gige千兆網(wǎng)口與千兆交換機(jī)連接與電腦主機(jī)進(jìn)行信號傳輸,電腦終端可采集4個平行光管內(nèi)激光投射線投影在分劃板上的圖像。
圖2 激光頭來料入庫檢測臺示意圖
平面度檢測算法流程如圖3所示,首先針對校準(zhǔn)好的平行光管內(nèi)的分化刻度板做骨架提取,識別并記錄分劃板的中心坐標(biāo)。然后將點(diǎn)亮的激光頭發(fā)射的激光線調(diào)整至所有相機(jī)的可視范圍內(nèi);其次,為了避免雜光對其平面度計算的影像,進(jìn)行圖像濾波處理及特征提取,分割出激光線的輪廓及確定主激光線條的所在像素位置,再對其進(jìn)行空間位置內(nèi)的坐標(biāo)轉(zhuǎn)換;最后,根據(jù)最小二乘法計算擬合的基準(zhǔn)平面方程,并計算平面度,從而評判激光線質(zhì)量的好壞。
圖3 平面擬合算法流程圖
對分劃板定標(biāo)時要關(guān)閉激光,并用均勻溫和光線照亮分劃板。其目的是提取分劃板圖像中的刻度線,以便確定每一個平行光管采集的圖像中分劃板線對的間距(像素值表示)及中心線的坐標(biāo)值,標(biāo)定每一根采樣管的初始值。采用了自適應(yīng)二值化、腐蝕、直線霍夫變換等圖像處理方法。
針對獲取到的刻度板圖像,先轉(zhuǎn)化為灰度圖,并且閾值分割將灰度圖轉(zhuǎn)化為二值圖,此處選擇的閾值大小為90,選取最大面積的連通區(qū)域,將二值圖像的形態(tài)學(xué)骨架特征選取特征元素B,此處因為是刻度線,故選用直線lines特征元素,對X進(jìn)行連續(xù)腐蝕和開運(yùn)算來求得。設(shè)S(X)表示X的骨架,Sn(X)為X的第n個骨架子集,則刻度板圖像的骨架表達(dá)式為
式中,Sn(X)是圖像X的第n個子集骨架,表示圖像腐蝕運(yùn)算符號,表示將X連續(xù)腐蝕n次,直到成空集前的最后一次。表示圖像的開運(yùn)算符號,表示用已經(jīng)腐蝕過n次的圖像X與特征元素B進(jìn)行開運(yùn)算。
從Sn(X)中區(qū)分出水平刻度線和豎直刻度線,經(jīng)對其角度進(jìn)行判斷,設(shè)degn為第n個骨架的角度,若degn>a°,則為豎直刻度線,用SVn(X)表示,若degn>a°,則為水平刻度線,用SHn(X)表示。其中,設(shè)定a=15,遍歷所有刻度線,取最長的豎直刻度線SHmax(X)和最長的水平刻度線SVmax(X),記錄交點(diǎn)坐標(biāo)(u0i,v0i)(i為相機(jī)編號)。骨架提取后的分劃板刻度線圖如圖4所示。
圖4 骨架提取后的分劃板刻度線圖
建立空間坐標(biāo)系,以(0,0,0)即相機(jī)視野范圍內(nèi)分劃板中點(diǎn)為對稱中點(diǎn),設(shè)每個方向上的激光線距離到對稱中點(diǎn)的距離設(shè)為D。以每個分劃板中心交點(diǎn)(u0i,v0i)為坐標(biāo)原點(diǎn),對區(qū)域內(nèi)的像素點(diǎn)(uj,vj)進(jìn)行坐標(biāo)轉(zhuǎn)換,引入轉(zhuǎn)為相對與原點(diǎn)的位置坐標(biāo)(xij,yij,zij),以下使用四個方向的像素圖像坐標(biāo)。
方向1坐標(biāo):
方向2坐標(biāo):
方向3坐標(biāo):
方向4坐標(biāo):
通過上述轉(zhuǎn)化,將所有相機(jī)獲取到的有效像素點(diǎn)(xij,yij,zij)變?yōu)辄c(diǎn)云坐標(biāo)。
激光線提取時,得到了每一采樣圖像中激光線的中心線位置坐標(biāo),以此與對應(yīng)的采樣管的初始值做比較便可得到激光線的偏差值。關(guān)閉分劃板上的光源,打開激光頭,在黑暗條件下采集激光投射線圖像,如圖5a所示。對其進(jìn)行RGB三通道分離,因激光投射線為綠色,故選擇G通道的圖像,如圖5b所示,并轉(zhuǎn)化成灰度圖像。由于傳播光光路可能出現(xiàn)噪聲污染,并影響采集到的激光圖像的質(zhì)量,所以選用中值濾波的方法,選取由一個邊長為2×Radius的正方形內(nèi)的像素組成掩碼,除去圖像的噪聲點(diǎn),如圖5c所示。再使用自適應(yīng)二值化,選擇亮區(qū)域即激光線有效區(qū)域,如圖5d所示。由于分劃板上的刻度線陰影會對提取激光線的質(zhì)量造成影響,所以使用最小外接矩形作為激光線的選擇區(qū)域,如圖5e所示。經(jīng)骨架提取后進(jìn)行直線擬合,獲取激光中心線,如圖5f所示。
圖5 圖像處理后的激光線圖
對二值化后的激光線有效區(qū)域內(nèi)的像素點(diǎn)(uj,vj)進(jìn)行坐標(biāo)轉(zhuǎn)換,轉(zhuǎn)為以激光頭位置為原點(diǎn)的點(diǎn)云坐標(biāo)(xij,yij,zij)。并記錄中心線與分劃板原點(diǎn)的距離,以此表示一個方向上激光線與分劃板中心之間的偏差值。
經(jīng)過推導(dǎo),將求解的a,b,c帶入平面方程z=ax-+by+c,從而計算出激光線擬合的最佳平面方程。
先將采集到的所有激光投射線的圖像生成三維坐標(biāo)系下的點(diǎn)云數(shù)據(jù),并使用最小二乘法擬合平面的方法擬合出平面方程z=ax+by+c,圖像內(nèi)激光投射線的每個有效像素點(diǎn)到擬合平面的距(n為有效像素點(diǎn)個數(shù)),分劃板一個最小刻度表示為θmm,最小刻度像素距離為dθ,并計算所有有效像素點(diǎn)到擬合平面的平均距離davg,計算公式為
最終,定義激光投射線平面度σ,表示方法為
在可采集范圍內(nèi),放置合格的標(biāo)準(zhǔn)激光頭,將采集到的4個方向上激光投射線的圖像,經(jīng)過濾波處理剔除噪點(diǎn)后,將有效像素點(diǎn)經(jīng)過空間坐標(biāo)轉(zhuǎn)換后,帶入到三維點(diǎn)云空間內(nèi),得到所有像素點(diǎn)的xyz坐標(biāo),再利用最小二乘法擬合得到激光基準(zhǔn)平面的平面方程z=0.003x-0.026y+455.085,如圖6所示。
圖6 擬合基準(zhǔn)平面的三維圖
通過調(diào)整激光頭擺放角度連續(xù)均勻地改變其X和Y軸方向的角度,記錄每次平移后四個平行光管中激光投射線的中心線在分化板上到零點(diǎn)的總距離,以及經(jīng)計算的擬合平面的平面度σ20,如圖7所示。
圖7 標(biāo)準(zhǔn)平面度與激光中心線距零點(diǎn)距離的關(guān)系圖
最終擬合得到標(biāo)準(zhǔn)平面度與激光中心線距零點(diǎn)距離的關(guān)系方程為
本文使用上述檢測結(jié)構(gòu),每個分劃板的實際視野大小為±1°,放置一個待測激光頭于檢測位置,手動調(diào)節(jié)其角度,使每個平行光管內(nèi)的分劃板都可看到清晰的激光投射線,相機(jī)采集到的圖像經(jīng)過圖像處理后,如圖8所示。
圖8 4個方向采集到的實時畫面
為了驗證測量激光頭平面度檢測的穩(wěn)定性,使用同一個偏差角度小于20''的合格激光頭,在可視范圍內(nèi)體調(diào)節(jié)其擺放角度,將獲取到的有效像素點(diǎn)經(jīng)空間坐標(biāo)轉(zhuǎn)換,使4個方向的激光投射線帶入到點(diǎn)云坐標(biāo)系中,連續(xù)檢測10次,記錄每次檢測計算的實際測量的平面度σ和標(biāo)準(zhǔn)平面度σ20,以及四個平行光管中提取到的激光投射線中心線在分化板上到零點(diǎn)的總距離ΔD,每次的檢測結(jié)果為平面度差值即σ20-σ,結(jié)果為正數(shù)則都判定為合格激光線,若為負(fù)數(shù)則判定為不合格激光線,結(jié)果見表1。
表1 同一個激光頭的平面度檢測實驗數(shù)據(jù)表
為了測試平面度評判標(biāo)準(zhǔn)對激光平面度檢測的準(zhǔn)確性,使用多組不同的經(jīng)過人工檢測后的激光頭,利用上述方法測得的平面度計算結(jié)果與耗時數(shù)據(jù)見表2。
表2 不同激光頭的平面度檢測實驗數(shù)據(jù)表
對照實驗結(jié)果表明,由表1可以看出,使用平面度指標(biāo)針對同一個激光頭進(jìn)行不同位置的檢測,得到的結(jié)果一致,重復(fù)檢測的一致性良好,也驗證本算法實現(xiàn)了在激光投射線不調(diào)整至刻度板零點(diǎn),在視野范圍內(nèi)檢測激光線平面度的可行性。并且通過前5組數(shù)據(jù)可以看出,在相同位置的檢測結(jié)果穩(wěn)定性更強(qiáng),平面度差值浮動更小。
由表2可以看出,通過平面度檢測激光投射線的水平平面度,合格的激光頭的標(biāo)準(zhǔn)差σ20-σ的值大于0,且人工測量實際偏差角度小于20″。不合格的激光頭的標(biāo)準(zhǔn)差σ20-σ,且人工測量實際偏差角度大于等于20″,這些數(shù)據(jù)表明該檢測方法的準(zhǔn)確性良好。由于取得有效像素點(diǎn)的數(shù)量不同,導(dǎo)致耗時會略有不同,平均耗時在1s以內(nèi)。
本研究旨在開發(fā)一種針對具有平面特征對象的檢測算法。采用平行光管的采圖結(jié)構(gòu),結(jié)合骨架提取和濾波算法對獲得的刻度板和激光圖像進(jìn)行處理。隨后,運(yùn)用最小二乘法在點(diǎn)云空間內(nèi)對有效像素點(diǎn)進(jìn)行平面擬合,并求解計算出每次測量的標(biāo)準(zhǔn)平面。通過計算平面度對激光線質(zhì)量進(jìn)行判定,并取得了令人滿意的檢測結(jié)果。
在提取激光有效像素點(diǎn)的過程中,通過濾除偏離激光主線較遠(yuǎn)的點(diǎn),減少生成標(biāo)準(zhǔn)平面的平面度誤差,從而提高了激光平面度檢測的精度。本文提出的基于最小二乘法平面擬合的檢測方法,只需要在保證所有結(jié)構(gòu)經(jīng)過經(jīng)緯儀校準(zhǔn)水平的前提下,每個方向可以采集到激光投射線的圖像,無需將激光投射線全部調(diào)節(jié)至刻度板同一位置即可進(jìn)行檢測。相較于傳統(tǒng)方法,檢測效率得到了極大的提高。
該測量方法提出了一種新的激光投射線質(zhì)量檢測標(biāo)準(zhǔn),從單一觀測對比對向激光線偏差角度擴(kuò)展到將激光投射線擬合成一個平面整體評判出射質(zhì)量。這種方法可用于激光頭來料入庫檢測,也可為激光頭生產(chǎn)廠商提供新的檢測標(biāo)準(zhǔn)。目前采樣結(jié)構(gòu)只能從4個方向采集圖像,如果增加更多方向上的激光線采集圖像,將使得空間平面內(nèi)的有效像素點(diǎn)更加全面,從而更加精細(xì)地評判360°方向上的激光平面,這也是后續(xù)研究的方向。