宗圣康,程建鵬,張西良
(江蘇大學 機械工程學院,江蘇 鎮(zhèn)江 212013)
起重機在當今工業(yè)經(jīng)濟中扮演重要角色,但由于大型設(shè)備的特殊性,起重機必須具有足夠的安全性才能夠被應(yīng)用于工業(yè)生產(chǎn)中[1]。隨著起重機軌道參數(shù)的不斷擴大,實際應(yīng)用中對起重機的安裝和定期檢測提出了更高的要求[2]。特種設(shè)備安全監(jiān)督檢驗機構(gòu)必須對起重機的安裝改造和重大修理進行定期檢驗,以保證起重機安全運行[3]。
目前軌道檢測技術(shù)主要包含計算機技術(shù)、激光光電技術(shù)和圖象處理技術(shù)[4]。在工業(yè)生產(chǎn)中,軌道檢測的平順度參數(shù)測量主要使用圖像處理技術(shù)[5]。將計算機技術(shù)與傳感器和模擬處理系統(tǒng)相結(jié)合,可用于進行軌道相關(guān)數(shù)據(jù)檢測與處理[6]。目前起重機軌道參數(shù)檢測方法主要包括:(1)利用激光測距儀檢測跨度。使用激光測距儀檢測軌道跨度,具有成本低、便于移動與攜帶的優(yōu)勢。但是檢測人員要手持激光測距儀在起重機軌道上前行,危險性高[7];(2)基于機器視覺技術(shù)的軌道自動檢測。文獻[8]提出利用機器視覺檢測軌道距離參數(shù)的架構(gòu)式檢測系統(tǒng)。該方法檢測精度和自動化程度較高,但僅適用于軌道跨度較小的檢測環(huán)境[9]。
目前,光斑圖像位置識別方法主要分為兩類:(1)基于光斑形狀擬合。對圖像進行二值化處理,使用Canny、Sobel等算子提取光斑邊緣[10-13],對提取的光斑邊緣進行形狀擬合,擬合曲線中心坐標即為光斑中心位置。2018年,文獻[14]提出一種高精度光斑中心位置識別方法。該方法使用小波變換對圖像進行多層分解與去噪,計算光斑圖像中像素點的理想灰度值,建立查找表,通過FPGA硬件查表方法校正光斑圖像。該方法有效校正了光斑圖像中的畸變,但使用硬件校正使算法耗時增長,難以滿足起重機軌道檢測實時性要求;(2)基于光斑能量中心或質(zhì)心的擬合方法。該方法利用激光能量分布理論或光電傳感器識別光斑中心,利用灰度分布求取灰度質(zhì)心[15-18]。文獻[19]提出基于互相關(guān)和改進高斯擬合的光斑中心位置提取方法。該方法使用CCD相機采集光斑圖像,提取光斑能量分布輪廓,對輪廓曲線進行高斯擬合計算光斑中心。該方法對噪聲十分敏感,圖像采集時混入的連續(xù)噪聲會嚴重影響光斑能量分布輪廓形狀,進而影響高斯擬合與中心識別精度。
通過對國內(nèi)外起重機軌道參數(shù)檢測方法的調(diào)研和相關(guān)文獻的分析,發(fā)現(xiàn)目前起重機軌道檢測主要停留在人工檢測水平,自動化程度較低,且光斑圖像位置識別存在實時性差、精度低等缺陷。
本文通過對起重機軌道高度差檢測方法和長距離激光光斑中心位置識別方法的研究,對光斑圖像的修整方法和二值化分割方法進行改進,提高了光斑位置起重機軌道高度差檢測準確性。最后,通過試驗證明了光斑位置起重機軌道高度差檢測方法的可行性。
如圖1和圖2所示,將激光發(fā)射器與成像板分別放置在兩側(cè)軌道。調(diào)整發(fā)射器與成像板,使其處于某一測量點1,打開激光發(fā)射器,成像板上呈現(xiàn)測量點1的光斑圖像。該光斑圖像的縱向坐標作為高度差檢測時的基準坐標。
圖1 軌道高度差檢測結(jié)構(gòu)示意圖Figure 1. Schematic diagram of track altitude difference detection structure
將發(fā)射器與成像板移動至測量點2,打開激光發(fā)射器,在成像板上呈現(xiàn)測量點2的光斑圖像。
若起重機軌道兩測量點之間存在高度差,則成像板豎直方向上光斑位置會發(fā)生偏移,其偏移量反映了測量點1與測量點2之間軌道高度差變化量。
設(shè)經(jīng)過圖像采集得到測量點1與測量點2的縱向位置坐標分別為H1、H2,則測量點1與測量點2之間軌道高度差如式(1)所示。
ΔH=H1-H2
(1)
圖2 軌道測量點1和測量點2光斑位置坐標示意圖Figure 2. Schematic diagram of spot position coordinates of track measurement point 1 and measurement point 2
光束在空氣或者其他介質(zhì)中傳輸會產(chǎn)生發(fā)散現(xiàn)象,導致光斑圖像周圍存在強烈噪聲。當噪聲灰度值與光斑灰度值接近時,對光斑圖像有效區(qū)域與背景區(qū)域灰度的分辨較為困難。此時,若直接進行圖像分割則會造成較大誤差。因此,對光斑圖像進行修整,降低散射噪聲,提高光斑區(qū)域與背景區(qū)域灰度差異,是保證光斑位置識別準確性的關(guān)鍵所在。
光斑圖像修整過程分為兩步:
步驟1計算光斑圖像初步中心位置?;诠馐行?,光斑圖像背景為純色背景,光斑圖像灰度分布均勻。因此,采集的光斑圖像灰度分布相對集中,可利用灰度重心法初步計算光斑中心。設(shè)采集到的圖像尺寸大小為M×N,f(i,j)是光斑圖像中像素點(i,j)處的灰度值,圖像灰度重心為(x,y),則有
(2)
(3)
其中,L(i,j)是灰度權(quán)重,設(shè)L(i,j)=f(i,j);
步驟2修整光斑圖像。如圖3所示,通過灰度權(quán)重法得到光斑粗略中心O,灰度值為F。O作為圖像出發(fā)點,沿x軸方向?qū)ふ一叶戎迪陆禐镕-T的點,得像素點序列xn。設(shè)x1與O距離最近,距離記為r1。光斑中區(qū)域灰度值為240以上,優(yōu)選T為30。遍歷圖像各個方向重復(fù)之前步驟,得r2,…,rn。如圖3所示,連接所有r1,…,rn,得到閉合區(qū)域。對閉合區(qū)域邊緣位置進行修正,使光斑像素盡可能包含在該區(qū)域內(nèi)。沿閉合區(qū)域的外圍8個像素點范圍內(nèi),以圓心O為中心向外輻射的方向取行,計算行內(nèi)像素點平均灰度值。若計算所得灰度均值與光斑邊緣點灰度值的差不超過10,則將該行中的閉合區(qū)域向外移動8個像素點。該閉合區(qū)域可認為含有大部分光斑有效區(qū)域,但并非準確光斑形狀。對閉合區(qū)域外輻射方向距離10像素點范圍外的區(qū)域進行灰度降低處理,使光斑圖像中背景色與有效區(qū)域之間存在明顯差異。
圖3 激光光斑圖像修整方法示意圖Figure 3. Schematic diagram of laser spot image trimming method
光斑圖像修整前后效果對比如圖4所示。
修整后光斑圖像辨識度明顯提高。由圖5和圖6可得圖像灰度分布在修整前后情況。
圖5 修整前灰度分布Figure 5. Gray distribution before trimming
圖6 修整后灰度分布Figure 6. Gray distribution after trimming
結(jié)果表明,修整后的光斑圖像可有效識別圖像近似有效區(qū)域,抑制光斑外圍復(fù)雜噪聲,降低噪聲灰度值,增加圖像閾值分割的準確性。
Otsu算法常用于圖像分割的聚類,其核心原理是將圖像中背景區(qū)域與光斑有效區(qū)域的像素分為兩類[19-20]。然后,計算閾值,使兩類區(qū)域所包含的像素區(qū)分度最大,此時的閾值為圖像最佳閾值。傳統(tǒng)Otsu算法過程為:
步驟1定義Otsu算法變量,統(tǒng)計圖像灰度分布;
步驟2計算圖像各個灰度等級占圖像整體百分比和圖像的平均灰度;
步驟3計算激光光斑圖像像素分離指標的最大值,得到最佳閾值。
當處理激光光斑圖像表現(xiàn)出明顯雙峰特性時,使用Otsu算法可取得良好的分割效果[21]。但在起重機軌道參數(shù)檢測過程中,光斑圖像面積比較小,直接使用Otsu算法會影響光斑圖像的閾值分割精度。因此,需要多維度計算光斑圖像的分割閾值。
二維Otsu算法原理[12]是在激光光斑圖像中取一定大小的窗口,例如3×3,取中心灰度與鄰域均值灰度,組成二維灰度直方圖,然后使用Outs算法計算最大類方差,確定最佳閾值。
設(shè)圖像f尺寸為M×N,圖像像素點有L個灰度等級, 分別為0,1,2,…,L-1,則其窗口g灰度均值的灰度等級也為L個,將像素點灰度記為i,窗口g灰度均值記為j,構(gòu)成閾值分割算法的兩個維度。統(tǒng)計像素點灰度為i且窗口灰度均值為j的像素點數(shù)量,記為fij,若激光光斑像素點總數(shù)為N,則激光光斑圖像中fij出現(xiàn)的概率如式(4)所示。
(4)
如圖7所示,設(shè)灰度閾值為s,窗口均值閾值為t,激光光斑圖像可分為4個灰度等級。
圖7 灰度分塊示意圖Figure 7. Schematic diagram of grayscale block
由圖7可知,I是光斑圖像背景區(qū)域,II是圖像邊緣區(qū)域,III為圖像前景,IV是噪聲區(qū)域,則光斑和背景區(qū)域的概率為
(5)
均值向量為
(6)
光斑有效區(qū)域與背景區(qū)域離散程度如式(7)所示。
(7)
圖8所示為圖像二值化分割后效果圖。當矩陣Sb秩最大時,即可求得最佳分割閾值。
圖8 分割后的激光光斑圖像Figure 8. Aser spot image after segmentation
通過二維Otsu算法對激光光斑圖像進行閾值分割,可較為準確地提取激光光斑的有效區(qū)域,取得良好的分割效果。
1.5.1 常用邊緣提取算子
光斑圖像邊緣提取的核心思想是通過求取像素窗口導數(shù),檢測像素窗口內(nèi)圖像灰度值變化,并計算激光光斑圖像像素點窗口極大值,進而判斷邊緣像素點。一階導數(shù)表示像素點灰度變化規(guī)律,二階導數(shù)表示激光光斑圖像邊緣類型。常用的邊緣檢測算子有:Roberts算子、Sobel算子、Prewitt算子、Canny算子。
Sobel算子的核心方法為:構(gòu)造一定大小(例如3×3)的橫向模板和縱向模板Gx和Gy,以圖像像素點為中心獲取相應(yīng)大小的窗口,然后分別利用兩模板計算窗口卷積,記為Gix和Giy。計算Gi,若Gi小于某閾值則認為該點是噪聲像素。但Sobel算子在檢測過程中不能有效區(qū)分光斑圖像前景區(qū)域與背景區(qū)域,會造成邊緣提取誤差。
(8)
(9)
Roberts算子構(gòu)造2×2模板,記為g1和g2。通過計算圖像在該模板內(nèi)對角線方向兩像素點之差進行邊緣檢測。該算子對斜向邊緣具有較高檢測精度。
(10)
Prewitt算子與Sobel算子的區(qū)別在于在橫向模板與縱向模板的構(gòu)建方式不同。如式(11)所示,Prewitt算子核心原理是計算光斑圖像的像素灰度平均值,進而提取圖像邊緣,對圖像的噪聲抑制有良好的效果。
(11)
Canny算子為邊緣檢測中常用算子,提取結(jié)果比較準確。計算過程如下:
設(shè)高斯函數(shù)如下所示,其中x和y是坐標點,σ是標準差。
(12)
(13)
(14)
設(shè)高閾值Th和低閾值Tl,對待選光斑邊緣進行分類。像素點灰度值高于Th的邊緣點集合為N1,像素點灰度值在Th和Tl之間的邊緣點集合記為N2。N1包含的邊緣點質(zhì)量較高但存在間斷,使用N2對N1的間斷點進行補齊,完成邊緣檢測。
1.5.2 邊緣檢測算子效果分析
圖9所示為4種算子的邊緣檢測效果對比。
對激光光斑圖像進行閾值分割后,邊緣區(qū)域仍存在一定的毛刺噪聲。對4種不同算子的光斑邊緣提取效果進行對比可知,Canny算子提取得到的激光光斑邊緣最為準確平滑,噪聲抑制效果較好。因此,采用Canny算子提取光斑邊緣可使擬合結(jié)果最具準確性。
提取光斑邊緣形狀后,進行邊緣擬合即可計算光斑中心位置。采用最小二乘圓擬合方法,構(gòu)造光斑邊緣與擬合圓殘差平方和并令其最小,可解出擬合圓中心坐標。該方法令擬合誤差最小,使邊緣擬合結(jié)果具有一定抗干擾性[23]。圓的計算式為
(x-a)2+(y-b)2=r2
(15)
其殘差為
εi=(xi-a)2+(yi-b)2-r2
(16)
式中,i∈E,E是激光光斑圖像擬合圓的邊界集合;激光光斑圖像的邊界坐標是(xi,yi)。
取殘差平方和為
(17)
由最小二乘法可得
(18)
即
(19)
上式通過整理合并可得
(20)
式中的各個參數(shù)可表示為
(21)
通過圓方程得a和b為
(22)
如圖10所示,擬合圓基本貼合光斑邊緣,較為完整地反應(yīng)了光斑邊緣形狀。
圖10 激光光斑圖像邊緣擬合圓Figure 10. The edge fitting circle of the laser spot image
試驗所需主要器件為650 nm波長激光器、JSH300f工業(yè)相機、工業(yè)相機支架、50分度游標卡尺、PC機,試驗原理如圖11所示。
圖11 光斑圖像位置識別試驗原理示意圖Figure 11. Schematic diagram of light spot image position recognition test principle
試驗內(nèi)容及步驟:
步驟1將工業(yè)相機在垂直方向移動不同的距離(例如3 mm、6 mm、10 mm)進行重復(fù)試驗,利用游標卡尺測量移動量精確值。光斑在相機視場中的位置也將發(fā)生相應(yīng)移動,使用工業(yè)相機采集工業(yè)相機移動前后的光斑圖像,將上述步驟重復(fù)5次;
步驟2利用光斑圖像修整擬合方法及現(xiàn)有方法中基于亮度閾值的光斑中心定位算法來識別光斑移動量,并對識別結(jié)果進行對比,結(jié)果如表1所示。
表1 移動距離識別結(jié)果
試驗結(jié)果表明,采用修整擬合方法進行光斑位置識別的平均誤差約為±0.22 mm,最大誤差不超過±0.4 mm;傳統(tǒng)亮度閾值方法進行光斑圖像位置識別的平均誤差約為±0.32 mm,即本文所提方法的識別精度提高了約0.10 mm。
試驗所需主要器件為兩根長度為4 m的軌道(型號QU-70)、650 nm波長激光器、成像板、PC機、JSH300f工業(yè)相機、相機支架、全站儀與塔尺。
試驗內(nèi)容及步驟:
步驟1將軌道A與軌道B并排平行放置,兩根軌道間距為30 m;
步驟2在軌道A取測量點3、測量點4,在軌道B相應(yīng)位置取測量點5、測量點6,如圖12所示;
圖12 軌道高度差檢測試驗原理示意圖Figure 12. Schematic diagram of experimental principle of track altitude difference detection
步驟3將全站儀置于軌道A附近,塔尺被分別置于測量點3~測量點6。設(shè)全站儀讀取的塔尺刻度分別為m、n、p、q,計算測量點3相對測量點5的高度差Δh1,以及測量點4相對測量點5的高度差Δh2。
(23)
重復(fù)該步驟5次,取平均值作為軌道相同位置截面高度差的真值;
步驟4將激光發(fā)射器與成像板分別置于兩軌道起始端,采集光斑圖像,識別光斑位置,作為光斑參考位置;
步驟7重復(fù)步驟4 ~步驟6共5次,將檢測數(shù)據(jù)與全站儀檢測數(shù)據(jù)對比,并分析軌道高度差檢測性能。試驗結(jié)果如表2所示。
表2 高度差檢測結(jié)果
綜上所述,當檢測距離為30 m時,利用該軌道檢測試驗系統(tǒng)進行起重機軌道高度差檢測,檢測的平均誤差數(shù)值為±0.8 mm,誤差范圍為-1.2~1.8 mm,其精度滿足軌道檢測要求,且具有良好的重復(fù)性。多次重復(fù)試驗結(jié)果表明檢測誤差波動較小,因此可利用該檢測系統(tǒng)代替人工手段進行軌道自動檢測。
本文提出一種基于光斑位置的起重機軌道高度差自動檢測方法。搭建了基于光斑位置的起重機軌道高度差自動檢測系統(tǒng),設(shè)計光斑圖像灰度分布修整方法,并改進二維Otsu算法,準確地分割了光斑圖像。此外,該方法使用Canny算子提取光斑邊緣,通過最小二乘方法對光斑邊緣進行圓擬合,計算邊緣擬合圓中心坐標,完成光斑圖像位置識別,并計算了光斑在豎直方向上的位置偏差,得到起重機軌道兩檢測點之間的高度差。試驗結(jié)果表明,使用本文光斑圖像位置識別檢測方法進行光斑圖像位置識別的平均誤差值約為±0.22 mm,最大誤差值不超過±0.4 mm,軌道高度差試驗系統(tǒng)對軌道高度差檢測的平均誤差約為±0.8 mm,檢測誤差為±1.8 mm,檢測準確性滿足起重機軌道高度差自動檢測要求。