史智杰,喬建強(qiáng)
(太原重工股份有限公司 礦山采掘裝備及智能制造國家重點(diǎn)實(shí)驗(yàn)室,山西 太原 030024)
電鏟被廣泛應(yīng)用于露天礦的采掘和地表剝離,在整個(gè)采礦系統(tǒng)中起著非常重要的作用[1-2]。但隨著施工精度、效率、能耗等方面要求的不斷提高以及工作環(huán)境帶來的嚴(yán)峻挑戰(zhàn),傳統(tǒng)電鏟已不能滿足今后的工程需求。為了解決傳統(tǒng)電鏟作業(yè)面臨的問題,利用先進(jìn)的人工智能技術(shù)、機(jī)器人技術(shù)、數(shù)字化技術(shù)、遠(yuǎn)程監(jiān)控技術(shù)與高性能計(jì)算技術(shù)等,對傳統(tǒng)電鏟進(jìn)行升級改造,研發(fā)可以實(shí)現(xiàn)智能自主作業(yè)的智能挖掘機(jī)器人,無論是從經(jīng)濟(jì)效益還是社會效益的角度來看,均具有重要的現(xiàn)實(shí)意義[3-5]。自動(dòng)裝載是電鏟實(shí)現(xiàn)智能自主作業(yè)的重要任務(wù),而對礦卡等重要裝載目標(biāo)邊緣的準(zhǔn)確、自動(dòng)識別是實(shí)現(xiàn)智能電鏟自動(dòng)裝載作業(yè)的關(guān)鍵。只有對礦卡邊緣進(jìn)行準(zhǔn)確有效的識別檢測,才能保證電鏟自動(dòng)裝載過程能夠安全可靠、高效地進(jìn)行。
在當(dāng)前存在的邊緣檢測算法中,Canny算子[6]由于其簡單易用的特性,在許多實(shí)際工程領(lǐng)域得到廣泛應(yīng)用,并且它經(jīng)常被作為標(biāo)準(zhǔn)算法來評價(jià)其他邊緣檢測算法的性能。傳統(tǒng)的邊緣檢測算子主要步驟:通過采用高斯濾波來平滑圖像,抑制噪聲;計(jì)算梯度幅值和梯度方向,生成梯度圖;采用非極大值抑制方法來細(xì)化邊緣,使邊緣定位更加準(zhǔn)確;采用滯后連接方法對梯度圖進(jìn)行閾值化處理得到二值化邊緣圖。但是,梯度圖只是利用了相鄰像素之間的強(qiáng)度變化,對圖像信息的利用不充分,這會導(dǎo)致在邊緣檢測過程中無法有效地區(qū)分弱邊緣和噪點(diǎn),會造成弱邊緣丟失的情況。另外,傳統(tǒng)Canny算子滯后連接過程中的雙閾值需要人為設(shè)定,嚴(yán)重影響邊緣檢測的自適應(yīng)能力。
為了解決梯度圖引起的弱邊緣丟失問題,近年來有許多研究人員進(jìn)行了相關(guān)研究,并取得了一定的成果。針對梯度圖信息利用率不高的問題,Molina等[7]基于模糊集理論將梯度圖轉(zhuǎn)化為隸屬度圖,提高了對圖像信息的利用率,有效增強(qiáng)了對弱邊緣的檢測能力,但是該算法過于復(fù)雜,而且引入了更多需要人為設(shè)置的參數(shù),不利于實(shí)際工程應(yīng)用。Sun等[8]基于萬有引力定律將像素強(qiáng)度類比于重力場中的質(zhì)量,從而構(gòu)造新的特征圖,該特征圖有效提高了抗噪能力,但是同樣引入了過多參數(shù)需要人為設(shè)置,降低了算法的自適應(yīng)性。為了解決滯后連接自適應(yīng)問題,Medina等[9]提出了一種準(zhǔn)則用于提供滯后閾值的候選初始值,通過縮小取值范圍來提高滯后連接的自適應(yīng)性。另外,Medina等[10]還提出一種方法,將滯后連接雙閾值問題轉(zhuǎn)化為單閾值問題,然后自適應(yīng)地選取閾值。Han等[11]基于Otsu[12]提出一種自適應(yīng)獲取雙閾值的方法,有效提高了邊緣檢測自適應(yīng)性。
本文構(gòu)造了一種新的邊緣隸屬度圖來代替梯度圖,綜合利用了梯度、局部梯度差和梯度方差等多種圖像信息,有效提高了對弱邊緣的檢測準(zhǔn)確率。并基于Otsu提出一種新的自適應(yīng)獲取雙閾值的方法,有效提高了邊緣檢測的自適應(yīng)性。經(jīng)過實(shí)驗(yàn)檢測,本文提出的基于邊緣隸屬度的邊緣檢測算法相對于其它邊緣檢測算子而言,準(zhǔn)確率更高,能夠有效滿足智能電鏟自動(dòng)裝載作業(yè)需求。
新提出的基于邊緣隸屬度的邊緣檢測算法主要包括四個(gè)步驟:
1)濾波降噪:采用高斯濾波對輸入圖像進(jìn)行濾波降噪,減少噪聲對邊緣檢測的影響。
2)計(jì)算邊緣隸屬度圖:采用Sobel算子計(jì)算梯度圖,綜合利用像素梯度、局部鄰域梯度差和局部梯度方差等圖像信息計(jì)算邊緣隸屬度函數(shù),生成邊緣隸屬度圖。
3)非極大值抑制:采用非極大值抑制方法,沿著梯度方向進(jìn)行細(xì)化邊緣,提高像素的定位準(zhǔn)確率。
4)自適應(yīng)滯后連接:采用Otsu法自適應(yīng)的確定滯后連接高閾值和低閾值,對經(jīng)過非極大值抑制后的邊緣隸屬度圖進(jìn)行閾值化處理,生成最終的二值化邊緣圖。
首先對輸入圖像I進(jìn)行高斯濾波降噪,以減少噪點(diǎn)對邊緣檢測的影響。采用的二維高斯函數(shù)為:
假定D為濾波后的圖像,高斯濾波計(jì)算如下:
作為經(jīng)典的一階微分算子,Sobel算子計(jì)算簡單、效果好,被許多邊緣檢測方法所采用。在此,采用Sobel算子來計(jì)算梯度圖。本文采用一組3×3的卷積掩模分別來計(jì)算x方向和y方向的梯度:
式中:Sx為x方向的卷積掩模,Sy為y方向卷積掩模。對于經(jīng)過高斯濾波的圖像D,x方向的梯度Gx和y方向的梯度Gy分別為:
梯度幅值G為:
梯度方向θ為:
為了更好地區(qū)分弱邊緣和噪點(diǎn),提高邊緣檢測的準(zhǔn)確性,綜合利用梯度、局部梯度差和局部梯度標(biāo)準(zhǔn)差提出一種新的邊緣隸屬度圖。邊緣隸屬度圖M為:
式中:γ=2n-1,n為圖像的位數(shù),對于一般的8位圖像,γ取值為255;Tij(m,n)表示像素G(i,j)局部鄰域內(nèi)的梯度差信息,設(shè)Gmax和Gmin分別為梯度圖中梯度幅值的最大值和最小值,則Tij(m,n)計(jì)算如下:
假定σ(i,j)為梯度圖中像素G(i,j)局部鄰域內(nèi)的方差信息,局部鄰域均值為M(i,j),均值和方差計(jì)算如下:
采用非極大值抑制對邊緣隸屬度圖M中的邊緣進(jìn)行細(xì)化處理,提高邊緣的定位精度。該方法在邊緣隸屬度圖上進(jìn)行遍歷,對于每一個(gè)候選邊緣像素M(i,j),沿著梯度方向比較其邊緣隸屬度值與以該像素為中心的相鄰像素的大小。若該像素的邊緣隸屬度值大于相鄰像素的邊緣隸屬度值,則其為局部極大值點(diǎn),認(rèn)為該像素為邊緣像素,并保留其邊緣隸屬度值。若該像素的邊緣隸屬度值小于任意相鄰像素的邊緣隸屬度值,則其不是局部極大值點(diǎn),認(rèn)為該像素為非邊緣點(diǎn),將其邊緣隸屬度值置為0。通過非極大值抑制,實(shí)現(xiàn)對邊緣的細(xì)化處理,得到候選邊緣圖C。
滯后連接通過設(shè)定高閾值Th和低閾值Tl將圖像分割為真實(shí)邊緣、非邊緣和存疑邊緣三部分。在候選邊緣圖C上,邊緣隸屬度值>高閾值的為真實(shí)邊緣點(diǎn),<低閾值的為非邊緣點(diǎn),位于高閾值和低閾值之間的為存疑邊緣點(diǎn)。為了提高邊緣連續(xù)性,需要對于存疑邊緣點(diǎn)進(jìn)一步進(jìn)行判斷。如果在存疑邊緣點(diǎn)的局部鄰域內(nèi)存在邊緣點(diǎn),則認(rèn)為該點(diǎn)為邊緣點(diǎn),如果在局部鄰域內(nèi)不存在邊緣點(diǎn),則認(rèn)為該點(diǎn)不是邊緣點(diǎn)。
傳統(tǒng)的Canny算子通過人工選取高閾值和低閾值,自適應(yīng)能力差,邊緣檢測結(jié)果容易受到人為因素干擾,不利于邊緣檢測算法的實(shí)際應(yīng)用。對此,本文基于Otsu提出一種自適應(yīng)滯后連接方法,如下頁圖1所示。該方法主要包括四個(gè)步驟:
圖1 自適應(yīng)滯后連接流程圖
1)采用Otsu方法處理候選邊緣圖C,計(jì)算高閾值Th:
2)采用計(jì)算得到的高閾值Th對候選邊緣圖C進(jìn)行閾值化處理,得到剩余邊緣圖R,像素R(i,j)的值計(jì)算如下:
3)采用Otsu方法處理剩余邊緣圖R,計(jì)算低閾值Tl:
4)采用計(jì)算得到的高閾值Th和低閾值Tl對候選邊緣圖C進(jìn)行滯后連接處理,得到最終的邊緣圖。
為了驗(yàn)證改進(jìn)邊緣檢測算法的性能,本文選取電鏟裝載作業(yè)過程中常用的兩款礦卡,以及電鏟實(shí)際裝載作業(yè)圖像作為驗(yàn)證圖進(jìn)行邊緣檢測試驗(yàn)。為了更好地進(jìn)行對比驗(yàn)證,本文選用Canny算子和Han算子作為對照方法。本試驗(yàn)在Visual Studio 2013平臺下進(jìn)行驗(yàn)證,硬件平臺為Intel core i7-8700,16G運(yùn)行內(nèi)存的計(jì)算機(jī)。
兩款常用礦卡的邊緣檢測結(jié)果如圖2所示。對于第一款礦卡,從虛線框里可以看到,由于部分礦卡邊緣和背景非常接近,存在明顯的弱邊緣,Canny的檢測結(jié)果存在邊緣缺失的問題,而Han和本文提出的改進(jìn)算法都能夠有效的檢測出礦卡邊緣。對于第二款礦卡,車斗上邊緣和背景非常接近,屬于明顯的弱邊緣,Canny和Han均無法有效的檢測出車斗的上邊緣,而本文提出的改進(jìn)算法能夠檢測出所有邊緣。這對于自動(dòng)裝載過程中,自動(dòng)識別礦卡車斗的位置,防止鏟斗與礦卡發(fā)生碰撞事故,是非常關(guān)鍵的。
圖2 礦卡邊緣檢測圖
電鏟實(shí)際裝載作業(yè)目標(biāo)邊緣檢測結(jié)果如圖3所示。從虛線框內(nèi)可以看出,對于礦卡車斗的上邊緣,Canny存在邊緣丟失問題,而Han和本文提出的改進(jìn)算法可以較為清晰完整的檢車出車斗邊緣。對于礦卡上的車輛識別號和電鏟上的欄桿,Canny和Han均無法有效的檢測出有效邊緣,存在邊緣丟失問題,而本文提出的改進(jìn)算法可以對車輛識別號和電鏟欄桿進(jìn)行有效的邊緣檢測。
圖3 電鏟裝載作業(yè)目標(biāo)邊緣檢測圖
通過上述兩組實(shí)驗(yàn)對比可以證明,改進(jìn)后的邊緣檢測算法對弱邊緣的檢測能力更強(qiáng),能夠有效提高邊緣檢測的連續(xù)性和完整性,這對電鏟自動(dòng)裝載作業(yè)具有非常重要的作用。
本文針對電鏟自動(dòng)裝載作業(yè)目標(biāo)邊緣檢測需求,以及Canny算子存在的弱邊緣檢測能力不足,自適應(yīng)能力不高等問題,提出一種改進(jìn)邊緣檢測算子用于電鏟自動(dòng)裝載作業(yè)目標(biāo)邊緣檢測。本文提出的改進(jìn)方法綜合利用像素梯度、局部鄰域梯度差、局部梯度方差等圖像信息生成邊緣隸屬度圖來代替?zhèn)鹘y(tǒng)的梯度圖,有效提高了圖像信息利用率和弱邊緣檢測能力,并且提出一種自適應(yīng)滯后連接方法,根據(jù)Otsu自動(dòng)選取高低閾值,有效提高了邊緣檢測的自適應(yīng)性和實(shí)際應(yīng)用能力。實(shí)驗(yàn)證明,本文提出的改進(jìn)算法邊緣檢測效果更好,能夠有效滿足電鏟自動(dòng)裝載作業(yè)目標(biāo)的邊緣檢測需求。