(河南理工大學(xué) 電氣工程與自動(dòng)化學(xué)院,焦作 454000)
目前全球創(chuàng)新格局如火如荼,一個(gè)龐大而嶄新的行業(yè)——無(wú)人系統(tǒng),已經(jīng)誕生。這些年,以無(wú)人車、無(wú)人機(jī)、無(wú)人商店為代表的無(wú)人系統(tǒng)技術(shù)得到發(fā)展,無(wú)人系統(tǒng)行業(yè)將成為一個(gè)萬(wàn)億級(jí)的大市場(chǎng)[1]。
2017年12月13日,“2017全球無(wú)人系統(tǒng)大會(huì)暨中國(guó)(珠海)國(guó)際無(wú)人系統(tǒng)博覽會(huì)”在珠海舉行[1]。2017年7月8日,在杭州的街頭,阿里巴巴的第一家無(wú)人超市開業(yè)[2]。2017年11月07日,在“武漢交警政務(wù)服務(wù)邁入AI 時(shí)代”發(fā)布會(huì)上,騰訊與武漢市公安局交通管理局將攜手打造全國(guó)第一個(gè)無(wú)人警局,在不久的將來(lái)就能投入使用[3]。2016年3月10日,中石油已經(jīng)和阿里巴巴簽署戰(zhàn)略合作協(xié)議,未來(lái)將在全國(guó)開展10萬(wàn)家無(wú)人加油站,阿里巴巴將會(huì)分兩個(gè)階段建設(shè)完善智慧加油站,1.0版本將在2017年10月開建,主要是基于對(duì)傳統(tǒng)加油站的改造;2018年將會(huì)實(shí)現(xiàn)車牌、車主、油品自動(dòng)識(shí)別、離場(chǎng)自動(dòng)扣款和加油鏈路全自動(dòng)化的2.0版本。油箱蓋的識(shí)別不僅在無(wú)人智能加油站中有著較好的應(yīng)用前景,在未來(lái)電動(dòng)汽車的智能充電系統(tǒng)中也有著潛在應(yīng)用價(jià)值[4,5]。
中國(guó)大陸的油箱蓋主要有一下特點(diǎn):
1)一般油箱蓋與車體顏色、紋理趨同;
2)常見油箱蓋一般是類圓形和類四邊形;
3)對(duì)于不同車體,油箱蓋顏色多種多樣。
另外,車體材料及車窗易反光、形成鏡面成像,這些特點(diǎn)給油箱蓋識(shí)別工作帶來(lái)很大困難。同時(shí),不同天氣、照度、角度偏差等因素都會(huì)給油箱蓋識(shí)別工作帶來(lái)干擾。
數(shù)學(xué)形態(tài)學(xué)理論在近些年不斷的發(fā)展與優(yōu)化,為圖像處理領(lǐng)域研究與應(yīng)用開辟了新篇章,是現(xiàn)代數(shù)字圖像處理的重要研究方向[6]。文獻(xiàn)[7]將圖像形態(tài)學(xué)應(yīng)用于紅外圖像分析,文獻(xiàn)[8]將圖像形態(tài)學(xué)與NSCT結(jié)合應(yīng)用于路面裂縫的檢測(cè),文獻(xiàn)[9]將數(shù)學(xué)形態(tài)學(xué)與GG(Gath-Geva)模糊聚類相結(jié)合對(duì)旋轉(zhuǎn)機(jī)械故障進(jìn)行診斷。文中提出一種基于圖像形態(tài)學(xué)運(yùn)算、Hough變換的油箱蓋識(shí)別技術(shù)。實(shí)驗(yàn)結(jié)果表明,文中算法有很強(qiáng)的抗噪性能,能夠有效的提高目標(biāo)識(shí)別率。
本文的算法是以O(shè)penCV為平臺(tái)。OpenCV由Intel開發(fā),用于圖像、視頻處理的開源庫(kù),由C語(yǔ)言函數(shù)和C++類構(gòu)成[10,11]。
數(shù)學(xué)形態(tài)學(xué)[12,13]是一種以嚴(yán)格數(shù)學(xué)理論為基礎(chǔ)的用于非線性圖像處理和分析的理論[14]。其主要思想是利用一個(gè)結(jié)構(gòu)元素(SE,Structure Element)來(lái)探測(cè)圖像,通過對(duì)圖像的形態(tài)變換達(dá)到處理圖像的目的。本質(zhì)則是利用圖像集合與結(jié)構(gòu)元素間的相互作用以便獲得有價(jià)值的圖像信息,結(jié)構(gòu)元素不同提取的圖像信息就不同[15]。最初的數(shù)學(xué)形態(tài)學(xué)理論僅用在二值圖像,主要用于研究圖像的幾何結(jié)構(gòu),后來(lái)由Sternberg、Nakagawa和Rosenfeld等人推廣到灰度圖像領(lǐng)域。利用數(shù)學(xué)形態(tài)學(xué)方法進(jìn)行圖像處理具有簡(jiǎn)化圖像數(shù)據(jù)、保持圖像的基本形態(tài)特征、除去不相干結(jié)構(gòu)、易于硬件實(shí)現(xiàn)等優(yōu)點(diǎn)[16]。
數(shù)學(xué)形態(tài)學(xué)算子的性能通常以幾何方式進(jìn)行描述,而幾何描述的特點(diǎn)比較符合視覺信息的處理和分析,其基本思想如圖1所示。
圖1 圖像形態(tài)學(xué)基本思想
定義1:由g對(duì)f進(jìn)行灰度膨脹,記為f⊕g,如下式:
其中g(shù)和f分別為定義在域D[g]和D[f]上的兩個(gè)信號(hào)。
上述定義為灰度膨脹提供了一種相當(dāng)重要的幾何描述,即灰度膨脹可以通過將結(jié)構(gòu)元素的中心平移到與信號(hào)重合,接著計(jì)算信號(hào)上的所以點(diǎn)與結(jié)構(gòu)元素相對(duì)應(yīng)點(diǎn)和的最大值得到??捎珊?jiǎn)單的一維函數(shù)說(shuō)明式(2)的表示法和運(yùn)算原理。對(duì)單變量函數(shù)來(lái)說(shuō),膨脹的定義可以簡(jiǎn)化為:
可以利用結(jié)構(gòu)元素的反射,計(jì)算使信號(hào)限制在結(jié)構(gòu)元素的定義域內(nèi)時(shí),上推結(jié)構(gòu)元素并超過信號(hào)時(shí)的最小值來(lái)說(shuō)明灰度圖像膨脹。如圖2所示,f為信號(hào),g為結(jié)構(gòu)元素。
圖2 膨脹示意圖
定義2:由g對(duì)f進(jìn)行灰度腐蝕,記為fΘg,如式(3)所示:
假如所有結(jié)構(gòu)元素的值為正,那么輸出圖像相對(duì)于輸入圖像更暗,若輸入圖像中亮的細(xì)節(jié)的面積比結(jié)構(gòu)元素小,那么亮的細(xì)節(jié)就被削弱。削弱的程度決定于亮細(xì)節(jié)周圍的灰度值和結(jié)構(gòu)元素的形狀和幅度。
可由簡(jiǎn)單的一維函數(shù)說(shuō)明式(3)的表示法和運(yùn)算原理,腐蝕的定義如下式:
依幾何角度看,為了獲得信號(hào)被結(jié)構(gòu)元素在點(diǎn)x腐蝕的效果,我們需要在空間移動(dòng)結(jié)構(gòu)元素,讓其原點(diǎn)與點(diǎn)x重合。接著向上推結(jié)構(gòu)元素,保持其仍處在信號(hào)下方所能達(dá)到的最大值,就是該點(diǎn)的腐蝕結(jié)果。因?yàn)榻Y(jié)構(gòu)元素一定要在信號(hào)下方,所以空間移動(dòng)結(jié)構(gòu)元素的定義域一定是信號(hào)定義域的子集。否則在這一點(diǎn)的腐蝕就沒有實(shí)際意義。
圖3 腐蝕示意圖
由圖3可知,其效果可看作半圓形結(jié)構(gòu)元素在信號(hào)的下方“移動(dòng)”時(shí),其圓心畫出的軌跡。不過這里有一個(gè)限制條件,那就是結(jié)構(gòu)元素需要在信號(hào)曲線的下面平移。由圖不難看出,半圓形結(jié)構(gòu)元素在信號(hào)的下方對(duì)信號(hào)產(chǎn)生濾波作用,其與圓盤從內(nèi)部對(duì)二值圖像濾波的效果是一致的。
膨脹、腐蝕是形態(tài)學(xué)最基本的運(yùn)算,對(duì)其進(jìn)行組合可得到開運(yùn)算、閉運(yùn)算,以及更高級(jí)的圖像形態(tài)學(xué)梯度算子。
定義3:由結(jié)構(gòu)元素g對(duì)圖像f進(jìn)行開運(yùn)算,記為f?g,如下式:
定義4:由結(jié)構(gòu)元素g對(duì)圖像f進(jìn)行閉操作,記為f.g,如下式:
定義5:形態(tài)學(xué)梯度算子定義如下:
攀西釩鈦磁鐵礦是自然界賜予攀枝花市的獨(dú)有資源,其中鈦的儲(chǔ)量占全國(guó)鈦總儲(chǔ)量的95%左右。然而,截至上世紀(jì)90年代,從釩鈦磁鐵礦中回收鈦鐵礦的工藝僅有重選-電選或重選-磁選工藝流程,且只能回收大于0.074 mm的鈦鐵礦,回收率極低,僅僅10%左右,鈦鐵礦資源浪費(fèi)十分嚴(yán)重,攀枝花全市鈦精礦的年產(chǎn)量?jī)H僅5萬(wàn)噸左右。
其中B為結(jié)構(gòu)元素。
圖4 預(yù)處理
高斯濾波的實(shí)質(zhì)是根據(jù)根據(jù)高斯函數(shù),即式:
為領(lǐng)域內(nèi)的像素分配權(quán)重,權(quán)重的大小與該像素點(diǎn)和目標(biāo)像素點(diǎn)之間的距離成正態(tài)分布。領(lǐng)域內(nèi)各像素值與由高斯函數(shù)計(jì)算出的對(duì)應(yīng)權(quán)重值的乘積之和就是新的像素值。
Hough變換[17]具有較強(qiáng)的抗噪性能,不僅可以檢測(cè)直線,還可以檢測(cè)矩形、圓、橢圓等幾何形狀。這里以檢測(cè)圓為例。其基本思想是將圖像的空間域變換到參數(shù)空間,用大多數(shù)邊界點(diǎn)滿足的某種參數(shù)形式來(lái)描述圖像中的邊緣曲線。通過累加投票求得峰值對(duì)應(yīng)點(diǎn)即為有效圖元信息。該方法具有可靠性高,對(duì)噪聲、變形、部分區(qū)域殘缺、邊緣不連續(xù)適應(yīng)性強(qiáng)等特點(diǎn)。
基本的Hough變換使用的圓的一般方程為:
式中(a,b)為圓心,r為半徑。把X-Y平面上的圓轉(zhuǎn)換到a-b-r參數(shù)空間,過圖像空間中任一點(diǎn)畫圓,在參數(shù)空間中就有一個(gè)三維錐面與之對(duì)應(yīng)。圖像空間中同一圓上的點(diǎn)與參數(shù)空間中相應(yīng)三維錐面相交的一點(diǎn)對(duì)應(yīng)。這一點(diǎn)對(duì)應(yīng)圓的參數(shù)可以由積累投票獲得,如圖5所示。
圖5 Hough變換示意圖
隨機(jī)Hough變換[18,19]的主要過程為:
1)對(duì)基元參數(shù)的累加器鏈表進(jìn)行初始化;
3)統(tǒng)計(jì)求和基元參數(shù)的累加器鏈表;
4)如果累加器鏈表的最大值和設(shè)定閾值相同,就檢測(cè)該基元的圖像特征點(diǎn)是否充足。如果圖像特征點(diǎn)充足,那么輸出這個(gè)基元,同時(shí)消除相應(yīng)特征點(diǎn),循環(huán)第一步。
圖6 目標(biāo)識(shí)別
圖6(a)為使用高斯濾波處理后的圖像,可以消除鏡面成像等微弱干擾;圖6(b)為運(yùn)用Hough變換進(jìn)行目標(biāo)識(shí)別的圖像,可以看到油箱蓋被準(zhǔn)確識(shí)別。
綜合使用圖像形態(tài)學(xué)運(yùn)算和Hough變換,本文提出了一種基于圖像形態(tài)學(xué)運(yùn)算邊緣提取和Hough變換方法檢測(cè)油箱蓋的新算法。該算法利用圖像形態(tài)學(xué)運(yùn)算有效捕捉圖像中的邊緣細(xì)節(jié)信息,利用高斯濾波消除鏡面成像等微弱干擾,利用Hough變換進(jìn)行油箱蓋識(shí)別。
本文實(shí)驗(yàn)環(huán)境為Intel(R) Core(TM) i5-2430M CPU@ 2.40GHz,6.00GB內(nèi)存,Linux嵌入式系統(tǒng)平臺(tái),采用OpenCV2.4.9編程。原始圖像來(lái)自于小米5手機(jī)在校園內(nèi)的實(shí)拍圖片,尺寸為4608×3456像素,變換后尺寸500×366像素。這里給出有代表性的油箱蓋檢測(cè)圖像。
圖7 實(shí)驗(yàn)驗(yàn)證
本文通過實(shí)驗(yàn)對(duì)所提出的基于圖像形態(tài)學(xué)運(yùn)算和Hough變換的油箱蓋檢測(cè)算法進(jìn)行驗(yàn)證,步驟如下:
Step1對(duì)輸入的圖像進(jìn)行尺度變換,得到嵌入式環(huán)境下較適合的尺寸。
Step2對(duì)初步變換后的圖像進(jìn)行灰度化,并且保持為三通道圖像。
Step3利用圖像形態(tài)學(xué)梯度算子對(duì)圖像邊緣細(xì)節(jié)信息進(jìn)行提取。
Step4根據(jù)式(8)消除圖像中鏡面成像等微弱干擾。
Step5使用Hough變換檢測(cè)油箱蓋。
Step6對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行統(tǒng)計(jì)分析。
表1 實(shí)驗(yàn)結(jié)果
如表1所示,傳統(tǒng)的Hough變換方法識(shí)別率較低。這是由于不同天氣、照度、偏角、鏡面成像等復(fù)雜情況造成的。本文算法首先運(yùn)用圖像形態(tài)學(xué)梯度算子對(duì)目標(biāo)邊緣進(jìn)行提取,再利用高斯濾波消除鏡面成像等微弱干擾,較好的提高了目標(biāo)識(shí)別率。
針對(duì)在實(shí)際應(yīng)用中,傳統(tǒng)Hough變換識(shí)別率較低的問題,本文提出一種基于形態(tài)學(xué)梯度算子和Hough變換的油箱蓋檢測(cè)算法。實(shí)驗(yàn)結(jié)果表明,本算法對(duì)不同天氣、照度、偏角、鏡面成像等干擾具有較好抑制作用,使目標(biāo)識(shí)別率得到提高。