陳 然,楊仕教,朱忠華,鄭建禮,張紫晗,胡光球
(1.南華大學(xué)資源環(huán)境與安全工程學(xué)院,湖南 衡陽 421001;2.廣東錫源爆破科技股份有限公司,廣東 惠州 516000)
爆破塊度是露天礦山生產(chǎn)的重要技術(shù)指標(biāo),直接影響后續(xù)鏟裝、運輸、破碎等工序效率和成本[1]。準(zhǔn)確地描述爆堆巖石塊度的分布,有利于優(yōu)化設(shè)計爆破參數(shù)和降低成本。常見的爆堆巖塊測量方法分為人工測量和圖像分析法兩大類[2-4]。當(dāng)前,最為突出且代表爆破塊度測試技術(shù)研究領(lǐng)域趨勢和方向的,是基于現(xiàn)代計算機(jī)圖像分析技術(shù)的爆破塊度圖像分析法[4-5]。
圖像分割技術(shù)的好壞是影響爆堆塊度圖像分析系統(tǒng)結(jié)果輸出的關(guān)鍵因素。不少專家學(xué)者在圖像分割算法上進(jìn)行了改進(jìn),取得了一定的進(jìn)展。Pascal Asmussen等[6]提出了集成邊緣檢測和區(qū)域增長算法的巖石薄片圖像分割方法,提升了巖石圖像的分割效果;王桂芹等[7]提出基于FCM和標(biāo)記分水嶺的粘連圖像分割,該方法對粘連巖石顆粒圖像有較好的實驗效果。這些新理論的分割方法相比于傳統(tǒng)、單一的圖像分割方法在抗干擾性、精度等方面均有所提高。Wand L F等[8]提出一種水平集結(jié)合K均值聚類的圖像分割方法,達(dá)到了多閾值分割的目的,但計算較為復(fù)雜并且應(yīng)對噪聲和異常值時沒有足夠魯棒性。為克服這些缺點,Jiang等[9]在Wand L F研究的基礎(chǔ)上,提出了一種基于局部熵的空間約束模糊c-means聚類算法和FCM_S簡化模型,其在精度和魯棒性方面具有優(yōu)勢,可用于分割表面具有噪聲的圖像。
為解決幾種典型的巖石塊度圖像分割中容易存在的過分割、噪聲、重影、“黑洞”等問題,筆者利用圖像攝影測量方法和計算機(jī)圖像處理技術(shù),對圖像的分割進(jìn)行了深入研究,提出了雙門限閾值技術(shù)來進(jìn)行圖像分割,并和幾種廣泛應(yīng)用的分割技術(shù)進(jìn)行比較,驗證雙門限閾值技術(shù)在爆破塊度圖像分割領(lǐng)域的可行性和優(yōu)勢。
圖像分割就是把圖像分成若干個特定的、具有獨特性質(zhì)的區(qū)域,并提出感興趣目標(biāo)的技術(shù)和過程[10]?,F(xiàn)有的圖像分割方法主要有:基于閾值的分割方法、基于區(qū)域的分割方法、基于邊緣的分割方法以及基于特定理論的分割方法等。其中,基于閾值的分割方法是圖像分割中應(yīng)用數(shù)量最多的一類。閾值分割法實際上是輸入圖像f到輸出圖像g的變換,如:
(1)
式中:T為閾值。通常,用最后二值圖像g(i,j)中值為1的部分表示目標(biāo),值為0的部分表示背景。由此可見,閾值分割算法的關(guān)鍵是確定閾值,如果能確定一個合適的閾值就可準(zhǔn)確地將圖像分割開來[11]。
一般的巖堆圖像[8]有著大小不一、堆疊、紋理復(fù)雜、背景與目標(biāo)灰度相近等問題,而傳統(tǒng)單一的基于閾值分割需滿足一個假設(shè)條件:圖像的直方圖要有明顯的雙峰或多峰,否則基于灰度閾值對圖像進(jìn)行處理,會使部分背景和目標(biāo)混為一談,因此傳統(tǒng)閾值法只有在目標(biāo)和背景反差較大的圖像分割時才有效果。
鑒于此,提出了雙門限閾值圖像分割技術(shù),來對這種復(fù)雜情況下的分割過程進(jìn)行改進(jìn),并在ImagePy平臺上實現(xiàn)雙門限閾值圖像分割算法。其主要包括雙門限閾值算法的基本原理、關(guān)鍵技術(shù)和算法的實現(xiàn)。
結(jié)合形態(tài)學(xué)梯度的雙門限閾值技術(shù)是分水嶺技術(shù)的一種改進(jìn)的用法,通過把高程圖當(dāng)做dem,當(dāng)用高、低閾值分別選取足夠亮和暗的部分進(jìn)行背景與前景的標(biāo)定后,在梯度圖的基礎(chǔ)上進(jìn)行模擬的“漲水”,也就是目標(biāo)區(qū)域與背景“各自生長”,在原始圖像梯度變化最大的位置處形成一個界限,達(dá)到將目標(biāo)區(qū)域分割開的目的。
通過對爆破巖塊圖像的局部梯度模的極大值分析,可得出如下結(jié)論:一方面目標(biāo)邊緣的鏈長遠(yuǎn)大于噪聲邊緣的鏈長;另一方面按邊緣鏈的長度自適應(yīng)分塊以后,目標(biāo)邊緣鏈決定的塊的灰度值應(yīng)該大于噪聲邊緣鏈決定的塊的灰度值。源于這二方面的特性,結(jié)合形態(tài)學(xué)梯度的雙門限閾值分割技術(shù)能使圖像中的灰度躍變急劇增強,再結(jié)合形態(tài)學(xué)開閉運算消除局部極值并保留重要的輪廓極值信息,這樣能夠盡可能地保留圖像邊緣,很大程度上避免了計算機(jī)圖像分割中過分割、欠分割的問題。
爆堆巖塊圖像的雙門限閾值算法的關(guān)鍵技術(shù)主要包括邊緣檢測技術(shù)和分水嶺技術(shù)。利用Sobel算子在4鄰域灰度值上的計算,在邊緣處達(dá)到極值這一手段來檢測爆堆巖塊圖像邊緣。然后在梯度圖的基礎(chǔ)上進(jìn)行分水嶺算法,求得分段圖像的邊緣線。
對于爆堆圖像,每個巖塊邊緣的灰度值一般不同。僅僅根據(jù)二值化圖像內(nèi)部灰度值的差異,憑借計算機(jī)圖像處理軟件來識別巖塊邊緣是可行的,但是誤差往往很大,通過圖像灰度分布的梯度來反映圖像灰度的變化,相較而言能提供更為精確的邊緣方向信息。求梯度圖其本質(zhì)是標(biāo)識數(shù)字圖像中亮度變化明顯的點。Sobel 算子利用像素點上下、左右鄰點的灰度加權(quán)算法,根據(jù)取適當(dāng)門限TH,并作如下判斷,進(jìn)行邊緣的檢測:
s(i,j)>TH
(2)
式中:(i,j)為階躍狀邊緣點;s(i,j)為邊緣圖像。
Sobel算子包含兩組3×3的矩陣,分別為橫向及縱向,將其分別與圖像作平面卷積,即可得出橫向及縱向的亮度差分近似值(見圖1~圖2)。Gx和Gy分別是在橫向及縱向的灰度偏導(dǎo)的近似值。
圖1 爆堆原圖
Fig.1 Original image of rock pile
圖2 邊緣檢測
Fig.2 Edge detection
對于每一個點可以獲得兩個方向的梯度,選擇采用一階微分算子Sobel求梯度,用Sobel求出圖像灰度在兩個方向上的偏導(dǎo)數(shù),并求出梯度(灰度)大小|G|和方向θ,其公式如下:
(3)
(4)
定義一個閾值Gmax,如果G比Gmax大,可以認(rèn)為該點是一個邊界值,則設(shè)置這個像素值為255,表現(xiàn)為白色;否則像素值為0,表現(xiàn)為黑色。這樣就得到原始圖像梯度變化最大的位置(見圖3)。再利用形態(tài)學(xué)開閉運算對通過Sobel算子求得的梯度圖像進(jìn)行濾波處理,這樣能在簡化梯度圖像的同時,保持輪廓分水線的準(zhǔn)確定位,消除產(chǎn)生過分割現(xiàn)象的根源。
圖3 爆堆梯度
Fig.3 Gradient of rock pile
得到爆堆巖塊圖像目標(biāo)區(qū)域與背景的明顯界限后,結(jié)合分水嶺圖像分割算法便能進(jìn)行再分割,分水嶺算法其本質(zhì)是借助地形學(xué)的概念尋找圖像極小值的位置,即邊界位置。對圖像的極小值進(jìn)行標(biāo)定后就可以對梯度圖直接進(jìn)行分水嶺變換,從而實現(xiàn)對爆堆巖體塊度圖像的準(zhǔn)確分割。
1)以邊緣鏈長度和按邊緣鏈長自適應(yīng)分塊的塊灰度作為雙重閾值標(biāo)準(zhǔn),大于某一鏈長度閾值同時大于某一塊的灰度閾值的邊緣鏈認(rèn)為是目標(biāo)邊緣,其被保留;否則,被刪除。
2)對經(jīng)過第1步驟處理的邊緣圖像,進(jìn)一步實施將邊緣的斷點向上一級跟蹤,以此類推,這樣就初步獲取了單像素寬、定位準(zhǔn)確、效果良好的邊緣圖像。
3)結(jié)合濾波器Sobel算子,通過設(shè)置門限的方法,提取邊界點集,再到目標(biāo)圖像上進(jìn)行掩模,最后在梯度圖上采用分水嶺分割算法,并借助地形學(xué)概念尋找圖像極小值的位置,即為準(zhǔn)確的邊界位置。
4)得到目標(biāo)區(qū)域與背景的明顯界限后,結(jié)合圖像分水嶺分割算法處理便能進(jìn)行再分割。對圖像的極小值進(jìn)行標(biāo)定后就可以對梯度圖直接進(jìn)行分水嶺變換,從而實現(xiàn)對爆堆巖體塊度圖像的準(zhǔn)確分割。
算法在ImagePy平臺上進(jìn)行(見圖4)。ImagePy是一個可擴(kuò)展的框架,可以接入圖像處理函數(shù),并對這些函數(shù)進(jìn)行管理,提供交互和圖像的展示功能。針對復(fù)雜露天光照環(huán)境采集的巖塊圖像,還可以基于Python強大的圖像處理庫,編寫需要的圖像處理函數(shù),解決具體的問題[12]。鑒于此,采用ImagePy作為機(jī)器視覺圖像處理工具來進(jìn)行算法的實現(xiàn)和實驗研究。
圖4 雙門限閾值算法實現(xiàn)
Fig.4 Implementation of double threshold algorithm
根據(jù)開發(fā)的算法在ImagePy平臺下,對惠州小徑灣和大亞灣的二類巖石爆堆圖像開展巖塊圖像分割實驗,為了讓實驗結(jié)果更具說服力,對每一類巖石爆堆分別進(jìn)行2次不同部位(見圖5~圖6)的圖像分割實驗。同時又做了小型爆堆手工測量與算法的對比實驗,從定量的角度,探討雙門限閾值技術(shù)在爆堆圖像分割領(lǐng)域的可行性。
圖5 各種算法對小徑灣花崗巖爆堆圖像分割結(jié)果(2個部位)
Fig.5 Segmentation results of Xiaojingwan granite rock pile image by various algorithms(Two parts)
圖6 各種算法對大亞灣紅砂巖爆堆圖像分割結(jié)果(2個部位)
Fig.6 Segmentation results of Dayawan red sandstone rock pile image by various algorithms(Two parts)
小徑灣花崗巖有節(jié)理構(gòu)造(見圖5),由于是近距離采集的圖片,其巖石表面紋理清晰;巖石表層信息豐富,風(fēng)化和斑駁的痕跡非常明顯,同時具有很明顯的結(jié)晶顆粒,質(zhì)地不均一,個別目標(biāo)之間,存在著粘連的情況,整體堆疊現(xiàn)象一般。
由小徑灣花崗巖爆堆分割實驗看出:灰度閾值法分割加重巖石表面噪聲(見圖5a②、圖5b②),由于該方法閾值的確定主要依賴于灰度直方圖,而在許多情況下,物體和背景的對比度在圖像中的各處不是一樣的,這時很難用一個統(tǒng)一的閾值將物體與背景分開,故可以看到目標(biāo)與背景交界處形成大量噪聲;適應(yīng)性閾值法[13-14]加重了巖塊的粘連程度,不適用于該類圖像分割(見圖5a③、圖5b③); Otsu[14-15]大津法由于其原理也是尋求最佳閾值,所以與灰度閾值法一樣,有大量黑斑噪聲(見圖5a④、圖5b④); Sauvola[15]閾值法算法復(fù)雜,處理圖像耗時太久,且?guī)r石與背景區(qū)域二值化效果不好(見圖5a⑤、圖5b⑤);雙門限閾值算法可以大致區(qū)分目標(biāo)與背景,對巖石表面質(zhì)地不均勻、噪聲的平滑處理具有很好的效果,但對粘連部分的分割還做的不夠(見圖5a⑥、圖5b⑥)。
大亞灣紅砂巖,地質(zhì)構(gòu)造較為復(fù)雜,上部為未分化的紅砂巖,中部為節(jié)理裂隙較為發(fā)育的強分化紅砂巖,下部為未分化的紅砂巖(見圖6)。
由大亞灣紅砂巖爆堆分割實驗圖可以看出:灰度閾值法已無法得到良好的背景與目標(biāo)區(qū)域的分割圖像(見圖6a②、圖6b②),圖像中噪聲信號較多且目標(biāo)的灰度值與背景相差不大,部分邊界信息已經(jīng)喪失,然而巖石內(nèi)部過分割現(xiàn)象明顯存在;適應(yīng)性閾值法仍然無法很好地分離出目標(biāo)與背景,分割效果依然較差,同樣不適用該類巖堆的圖像分割(見圖6a③、圖6b③); Otsu大津法只能模糊地將目標(biāo)與背景分開,巖石邊緣界限不清,巖石表面噪聲過多,甚至形成“黑洞”,效果不佳(見圖6a④、圖6b④); Sauvola閾值法在對紅砂巖爆堆的分割上,已不具備優(yōu)勢,反而不能區(qū)分目標(biāo)與背景,實現(xiàn)粘連紅砂巖的分割,造成了許多偽邊界,椒鹽噪聲量很大(見圖6a⑤、圖6b⑤);雙門限閾值算法較好地保護(hù)了巖塊圖像的目標(biāo)區(qū)域,平滑了巖塊圖像的局部噪聲(見圖6a⑥、圖6b⑥)。
為了從定量的角度,進(jìn)一步探究雙門限閾值算法在爆堆圖像分割領(lǐng)域上的誤差或精度問題,對小型礫巖爆堆現(xiàn)場(見圖7)采用米尺進(jìn)行了手工測量。該礫巖爆堆有層理構(gòu)造,且組分中有大小不一的鵝卵石,有典型的沉積巖特征。對約40個礫巖塊測量3次最大弦長[16]并取平均值,所得結(jié)果換算成的等效面積(等效成正方形)作為礫巖塊表面積真值。將爆堆圖像分割效果相對較優(yōu)的Sauvola算法和雙門限閾值算法的識別結(jié)果(當(dāng)量圓的面積[17])分別與人工測量的面積真值對比,隨機(jī)選取其中28組數(shù)據(jù)進(jìn)行統(tǒng)計(見表1)。
圖7 爆堆現(xiàn)場手工測量
Fig.7 On-site manual measurement of rock pile
表1 手工測量與2種算法識別結(jié)果以及相對誤差的比較
Table 1 Comparison of recognition results and relative errors between manual measurement and two algorithms
標(biāo)號S/ cm2手工測量Sauvola算法雙門限閾值算法Sauvola相對誤差/%雙門限閾值相對誤差/%18 2819 120.149 025.4910.19.026 8806 410.176 241.836.99.332 0251 160.102 316.7442.714.543 8442 190.223 481.6543.09.558 1309 015.318 836.5610.91.264 4892 961.144 096.8634.08.877 2259 100.218 880.7926.923.083 9693 165.123 706.4520.26.691 9361 300.121 625.5632.816.01011 50012 652.9812 195.5110.16.1118 1009 251.459 697.6714.219.7123 3642 966.183 844.4611.914.2138 1009 016.059 542.6811.317.9147 5107 790.207 894.083.85.1154 6243 965.464 900.1014.36.0166 0846 110.006 086.560.040.01173 6003 210.223 300.1010.18.4189 02511 452.2011 201.4026.924.1198 8369 390.609 600.296.38.7202 0252 105.652 304.154.013.8214 9004 710.134 489.713.98.3223 6003 564.106 969.621.19.3234 9004 710.104 524.153.97.7246 4007 100.006 710.9311.04.9258 1009 660.159 800.4619.220.1261 6001 442.131 330.649.925.0277 0568 065.858 800.7614.224.0283 5002 494.522 910.1228.816.8
由分割實驗得到:灰度閾值法對巖塊表面椒鹽噪聲處理不夠,為下一步的圖像預(yù)處理帶來難度(見圖8②);適應(yīng)性閾值法仍不能解決粘連巖塊分割問題(見圖8③); Otsu大津法在明暗變化較大的地方,“黑洞”問題[16]過于明顯(見圖8④)。Sauvola閾值法分割效果優(yōu)于前面幾種方法,但巖塊表面噪聲問題仍然存在(見圖8⑤);雙門限閾值法較好地區(qū)分了目標(biāo),解決了巖石表面噪聲問題,二值化分割效果最好,但存在一定程度的欠分割(見圖8⑥)。
圖8 各種算法對礫巖爆堆圖像分割結(jié)果
Fig.8 Image segmentation results of conglomerate rock pile by various algorithms
通過表1可計算出,雙門限閾值算法進(jìn)行圖像分割的平均相對誤差為12.0%,爆破塊度圖像二值化分割效果良好的Sauvola閾值法平均相對誤差為15.4%。同時,還可以發(fā)現(xiàn):基于雙門限閾值分割算法相較于Sauvola閾值算法,對多數(shù)尺寸級的巖塊分割準(zhǔn)確性上更佳。Sauvola閾值分割由于其始終存在巖塊表面噪聲過多的問題,在尺寸[1 000,4 000]cm2區(qū)間范圍的巖塊分割上,存在結(jié)果偏小的問題(如標(biāo)號3、8、9、25等),這是由于后期圖像分水嶺處理時過分割導(dǎo)致;而兩者在尺寸[7 000,10 000]cm2區(qū)間的巖塊分割上,誤差相對較大,存在結(jié)果偏大的問題(如標(biāo)號7、10、17等),這是由于巖塊與巖塊邊緣本身的棱角效應(yīng)和斑點效應(yīng)[2]在圖像分割的時候進(jìn)行了過度融合(見圖9標(biāo)記處)。
圖9 邊緣融合效應(yīng)
Fig.9 Edge fusion effect
1)爆破塊度的雙門限閾值圖像分割技術(shù)相比于常規(guī)的圖像分割技術(shù),對巖石表面噪聲的降噪效果更優(yōu),在巖塊與背景的二值化分割上具有優(yōu)勢。
2)實驗的雙門限閾值技術(shù)對爆堆圖像分割的誤差主要因巖塊的邊緣棱角效應(yīng)所致,這種效應(yīng)使得分割結(jié)果偏大。
3)針對普遍存在的不同巖石類型的爆堆:花崗巖、紅砂巖和礫巖,雙門限閾值算法均可以大致分割出目標(biāo),對于任何巖性的爆堆塊度識別,很可能具有普遍性。提出的雙門限閾值圖像分割技術(shù)和開發(fā)的雙門限閾值圖像分割算法可應(yīng)用于爆堆巖體塊度檢測與評價。