• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于鏈碼改進(jìn)算法的鋼軌表面缺陷識(shí)別

      2015-12-23 01:12:30陳華偉吳祿慎袁小翠
      關(guān)鍵詞:鏈碼邊界點(diǎn)邊界

      陳華偉,吳祿慎,袁小翠

      (南昌大學(xué) 機(jī)電工程學(xué)院,江西 南昌330031)

      0 引 言

      隨著中國(guó)鐵路事業(yè)的發(fā)展,軌道缺陷檢測(cè)要求越來(lái)越高,傳統(tǒng)的人工巡道作業(yè)效率低,危險(xiǎn)性大,難以滿(mǎn)足鐵路事業(yè)高速發(fā)展的要求。針對(duì)鋼軌表面缺陷 (裂紋、掉塊等)的線(xiàn)路檢修作業(yè),國(guó)內(nèi)外均專(zhuān)注于機(jī)器視覺(jué)和圖像處理[1,2]相結(jié)合的自動(dòng)檢測(cè)技術(shù)研究。

      鋼軌的裂紋、掉塊等缺陷規(guī)律性不強(qiáng),采用圖像方法處理時(shí),一般使用邊界跟蹤方法。自Freeman提出圖像的鏈碼表示法[3,4],鏈碼技術(shù)已在圖像處理的各領(lǐng)域得到了廣泛應(yīng)用。鏈碼跟蹤算法 (又稱(chēng)Freeman 算法)實(shí)現(xiàn)簡(jiǎn)單、變形容易、處理速度快、基于邊界鏈碼表示,還可對(duì)圖像的區(qū)域特征做深入分析,是基于機(jī)器視覺(jué)的分揀計(jì)數(shù)、缺陷檢測(cè)等特征識(shí)別領(lǐng)域的基礎(chǔ)算法。鏈碼算法一般是基于像素的,受圖像的預(yù)處理方法的影響較大,常存在漏跟蹤、重復(fù)跟蹤[5-8]等問(wèn)題,面向鋼軌表面缺陷識(shí)別等具體應(yīng)用還有較大的改進(jìn)余地。

      1 Freeman鏈碼算法設(shè)計(jì)

      1.1 鏈碼方向的確定

      鏈碼是一種用邊界方向作為編碼依據(jù)的邊界表示法,但為了簡(jiǎn)化邊界描述,一般只記錄有序排列的邊界點(diǎn)集。常有4連通鏈碼和8連通鏈碼之分,后者方位信息更為全面,能夠準(zhǔn)確描述中心像素點(diǎn)與鄰接點(diǎn)的信息,因而最為常用。如圖1為8連通鏈碼。

      圖1 8連通鏈碼

      考慮到圖像存貯和顯示中主要是采用逐行掃描的方式進(jìn)行,設(shè)定自上而下為行掃描的正方向,自左向右為列掃描正方向 (如圖1坐標(biāo)系所示)。根據(jù)正掃描順序,設(shè)定起始點(diǎn) (0方向)為左上角點(diǎn),則順時(shí)針鏈碼搜索方向 (0-7方向)坐標(biāo)可表示為集合:

      DIR8 [8] [2]= {{-1,-1}, {0,-1}, {1,-1},{1,0},{1,1},{0,1},{-1,1},{-1,0}}

      即搜索方向序列為0→1→2→3→4→5→6→7。

      它表示8方向序列:左上→上→右上→右→右下→下→左下→左。

      1.2 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)

      為了存貯邊界點(diǎn)集,并表達(dá)邊界走向,最好的辦法就是使用鏈表結(jié)構(gòu)記錄邊界信息,為此設(shè)計(jì)以下鏈節(jié)點(diǎn)結(jié)構(gòu)體:

      從NODE節(jié)點(diǎn)結(jié)構(gòu)體定義可以看出,它既表示了邊界中的各節(jié)點(diǎn)坐標(biāo)和方向、下一節(jié)點(diǎn)信息,還表示了整個(gè)邊界即連通區(qū)域的周長(zhǎng)、面積、外接矩形等基本特征信息。

      變量定義中,NODE 為節(jié)點(diǎn)對(duì)象,一個(gè)NODEList指針代表一條區(qū)域邊界鏈。

      對(duì)每條邊界,采用尾插法,將新的邊界點(diǎn)插入鏈表尾端,最終形成一條完整的邊界鏈,以下為尾插法的偽代碼表示:

      1.3 基本算法流程

      假設(shè)二值圖像中,灰度值255 表示白色,為背景,灰度值0表示黑色,為目標(biāo)。由于圖像邊界的像素點(diǎn),沒(méi)有完整的8個(gè)鄰域點(diǎn),為了規(guī)避邊界點(diǎn)的干擾,算法中常直接將邊界點(diǎn)置為背景點(diǎn)。

      接下來(lái),采用逐行逐列掃描法進(jìn)行搜索。

      (1)置初始搜索方向?yàn)?,鏈長(zhǎng)length=0,邊界所圍(或區(qū)域)面積area=0;

      (2)當(dāng)找到一個(gè)目標(biāo)點(diǎn) (灰度值為0)時(shí),置該點(diǎn)為邊界起始點(diǎn),鏈長(zhǎng)length+1,區(qū)域面積area+1;

      (3)在其8鄰域內(nèi)搜索下一個(gè)目標(biāo)點(diǎn)。如果找到一個(gè)點(diǎn),其當(dāng)前方向點(diǎn)為背景點(diǎn),下一方向點(diǎn)為目標(biāo)點(diǎn),則認(rèn)定該目標(biāo)點(diǎn)為下一邊界點(diǎn);

      (4)照此方法繼續(xù)搜索。

      1.4 結(jié)束條件

      條件1:當(dāng)搜索到的邊界點(diǎn)回到了起始邊界點(diǎn)時(shí),說(shuō)明當(dāng)前邊界已成閉合鏈,此時(shí)應(yīng)結(jié)束本鏈搜索。這是鏈碼搜索的基本結(jié)束條件;

      條件2:每個(gè)節(jié)點(diǎn)處限定搜索次數(shù)nSearchTime≤8。當(dāng)邊界搜索無(wú)法回到起點(diǎn),如出現(xiàn)開(kāi)鏈結(jié)構(gòu)時(shí),為了避免死循環(huán),就需要補(bǔ)充本結(jié)束條件。

      2 改進(jìn)算法

      2.1 幾種特殊情況

      基本搜索算法可用于簡(jiǎn)單圖形的測(cè)試和對(duì)鏈碼的理解,但是實(shí)際圖形處理中的孤立點(diǎn)、單列鏈、局部鏈、開(kāi)鏈等特殊情況常常引起基本算法的失效。

      情況1:孤立點(diǎn)

      描述:孤立點(diǎn)的8鄰域搜索均沒(méi)有目標(biāo)點(diǎn),按基本算法會(huì)出現(xiàn)死循環(huán)。

      處理:一種方法是進(jìn)行預(yù)處理,去除孤立點(diǎn);第二種方法是控制搜索次數(shù)nSearchTime≤8,大于8次則提前結(jié)束搜索。

      情況2:?jiǎn)瘟墟?/p>

      描述:如圖2所示 (圖中線(xiàn)段和箭頭表示搜索路徑;①②表示搜索起點(diǎn)),當(dāng)邊界節(jié)點(diǎn)從橫向進(jìn)入單列排列的目標(biāo)點(diǎn)時(shí),在不對(duì)已處理節(jié)點(diǎn)進(jìn)行標(biāo)記 (2.2節(jié))的情況下,如果每次搜索都從0方向開(kāi)始,則會(huì)在圖中圈定區(qū)域 (本列的第2-3像素點(diǎn)處)形成死循環(huán)。該問(wèn)題即使采用后退兩步搜索法 (2.3節(jié)),也會(huì)在圖中圈定區(qū)域出現(xiàn)死循環(huán)。

      圖2 單列現(xiàn)象

      處理:其實(shí)質(zhì)是已搜索節(jié)點(diǎn)的重入 (重復(fù)搜索)問(wèn)題,可通過(guò)節(jié)點(diǎn)標(biāo)記解決該問(wèn)題。

      情況3:局部鏈

      描述:?jiǎn)瘟袃牲c(diǎn)經(jīng)過(guò)兩次搜索 (搜索路徑分別為①②),即可回到起點(diǎn),從而提前結(jié)束本鏈搜索 (如圖3 (a)所示)。單列兩點(diǎn)會(huì)導(dǎo)致局部鏈問(wèn)題的出現(xiàn),如圖3 (b)所示,如果始終從0方向開(kāi)始搜索,并且已搜索邊界點(diǎn)不做標(biāo)記的話(huà),會(huì)導(dǎo)致圖中圈定兩點(diǎn)為局部封閉鏈。

      圖3 局部鏈問(wèn)題

      處理:對(duì)已搜索邊界點(diǎn)進(jìn)行標(biāo)記。圖3 (b)為標(biāo)記后搜索沿著正確方向前進(jìn)。

      情況4:非閉合鏈

      描述:如圖4 (a)所示 (圖中1-4為節(jié)點(diǎn)編號(hào),箭頭表示節(jié)點(diǎn)的進(jìn)入方向,即從箭頭方向搜索到箭頭所指節(jié)點(diǎn)),如果固定起始搜索方向?yàn)?方向,最大搜索方向?yàn)?方向,將會(huì)導(dǎo)致節(jié)點(diǎn)4 的八鄰域無(wú)法搜索到新的邊界點(diǎn),鏈無(wú)法閉合的情況。

      處理:該問(wèn)題是由于固定了起始搜索方向?yàn)?方向引起的,采用自適應(yīng)的后退兩步搜索法 (adaptive two-steps back search,ATSBS)可解決該問(wèn)題。

      2.2 節(jié)點(diǎn)標(biāo)記

      圖4 非閉合鏈

      為了避免節(jié)點(diǎn)重入,應(yīng)對(duì)已搜索邊界點(diǎn)進(jìn)行標(biāo)記,即通過(guò)改變其灰度值的辦法,將其從目標(biāo)點(diǎn)集合中刪除,使其在后續(xù)搜索中 “不可見(jiàn)”。但是為了基本搜索結(jié)束條件,應(yīng)對(duì)邊界起點(diǎn)不做標(biāo)記或做特殊標(biāo)記,待再次搜索回到起點(diǎn)時(shí),再做標(biāo)記。

      此外,已搜索區(qū)域的內(nèi)部節(jié)點(diǎn)也存在重入問(wèn)題。一個(gè)區(qū)域搜索結(jié)束后,將轉(zhuǎn)入外圍循環(huán)的逐行掃描進(jìn)行新的區(qū)域搜索,如果已搜索區(qū)域內(nèi)部節(jié)點(diǎn)不做標(biāo)記,則會(huì)在新的區(qū)域搜索中被認(rèn)定為目標(biāo)點(diǎn),這與實(shí)際不符。一種近似的解決辦法是:確定搜索區(qū)域的外接矩形 (box屬性),遍歷box區(qū)域內(nèi)所有節(jié)點(diǎn),如果節(jié)點(diǎn)灰度值為目標(biāo)節(jié)點(diǎn)灰度,則用本區(qū)域標(biāo)記值進(jìn)行標(biāo)記。

      8位灰度圖的標(biāo)記中還存在一個(gè)特殊問(wèn)題:在8位灰度圖中標(biāo)記值一般取自然數(shù),但8 位圖中的最大標(biāo)記值為28-1=255。當(dāng)標(biāo)記區(qū)域太多 (如圖5 所示),超過(guò)255時(shí),則存在無(wú)標(biāo)記值可用的情況,因此需要對(duì)連通區(qū)域太多的情況加以限制。實(shí)際情況是,如果二值處理后的目標(biāo)區(qū)域太多,則會(huì)導(dǎo)致目標(biāo)區(qū)域特征模糊化,難以識(shí)別,這主要是由于未采用恰當(dāng)?shù)亩祷撝翟斐傻?。?duì)此,而可以根據(jù)具體的應(yīng)用環(huán)境,設(shè)定一個(gè)最大的標(biāo)記區(qū)域數(shù) (標(biāo)記值)Lmax,當(dāng)連通區(qū)域數(shù)超過(guò)Lmax 時(shí)退出圖片掃描。假設(shè)圖片中目標(biāo)對(duì)象數(shù) (如一張圖像中的缺陷區(qū)域數(shù))不超過(guò)N 個(gè),則可設(shè)定最大標(biāo)記值Lmax∈ [2*N,255]。

      圖5 閾值分割對(duì)鏈碼搜索的影響

      2.3 ATSBS算法

      ATSBS算法是將前一次鏈碼方向后退兩步作為當(dāng)前搜索的起始方向。該方法以前一次搜索方向作為本次搜索的依據(jù),因而優(yōu)先保證了目標(biāo)邊界方向的連續(xù)性和目標(biāo)區(qū)域形狀的凸包性,是一種自適應(yīng)方向 (自旋)的鏈碼搜索方法。

      ATSBS算法中后退兩步可能帶來(lái)負(fù)方向問(wèn)題,可置搜索方向?yàn)樽畲笏阉鞣较?,設(shè)搜索至前一節(jié)點(diǎn)時(shí)的搜索方向?yàn)閜rePOS,當(dāng)前節(jié)點(diǎn)的起始搜索方向curPOS,則起始搜索方向設(shè)置的偽代碼表示為:

      curPOS =prePOS-2;

      if(curPOS<0)then curPOS=7;

      接下來(lái),沿八方向curPOS→7→0→curPOS-1搜索下一邊界點(diǎn)。

      圖4 (b)中,ATSBS算法執(zhí)行過(guò)程如下:

      在節(jié)點(diǎn)1處,從方向5搜索到節(jié)點(diǎn)2;

      在節(jié)點(diǎn)2處,起始搜索方向?yàn)?-2=3,依次沿方向3→4→5→6→7→0搜索才能搜索到節(jié)點(diǎn)3;

      在節(jié)點(diǎn)3處,起始搜索方向0-2=-2,出現(xiàn)負(fù)方向,此時(shí)置起始搜索方向?yàn)?,沿方向7正好能找到本鏈起始節(jié)點(diǎn)0,從而結(jié)束本鏈搜索。

      3 實(shí)驗(yàn)

      在鋼軌表面缺陷的圖像檢測(cè)中,需要對(duì)軌面裂紋、掉塊等缺陷類(lèi)型進(jìn)行識(shí)別,這些缺陷區(qū)域特征明顯,可以采用鏈碼方法提取邊界,進(jìn)而通過(guò)周長(zhǎng)、面積、長(zhǎng)寬比、圓形度、幾何矩 (不變矩)等特征參數(shù)[9,10]的計(jì)算獲得缺陷區(qū)域的定量描述,進(jìn)而對(duì)缺陷的類(lèi)型和嚴(yán)重性進(jìn)行分類(lèi)和管理。

      如前所述,鏈碼搜索適用于邊界特征明顯的圖像,其預(yù)處理二值化閾值和方法的選擇將直接影響鏈碼算法的執(zhí)行效率和效果。使用常規(guī)邊緣檢測(cè)方法,例如使用Canny算子獲取二值化的梯度圖像,則會(huì)導(dǎo)致圖像中邊緣線(xiàn)出現(xiàn)雜亂、斷線(xiàn)等復(fù)雜情況。使用大津法自動(dòng)閾值化,獲得的目標(biāo) (黑色)區(qū)域太多,目標(biāo)缺陷區(qū)域則已模糊 (圖5)。這兩種方法都違背了鏈碼使用的邊界特征明確的要求,難以直接使用鏈碼進(jìn)行邊界搜索求解。

      為了說(shuō)明不同閾值對(duì)鏈碼搜索的影響,減少搜索范圍和區(qū)域,為提高搜索效率提供參考,本文設(shè)計(jì)了迭代閾值法:

      (1)設(shè)定閾值上下限,理論上下限是 [1,255]。二值處理中,閾值很小時(shí),圖片全為背景 (全白),相反,則全為目標(biāo) (全黑);

      (2)設(shè)定閾值變化步長(zhǎng),默認(rèn)為1,為了提高搜索速度,可適當(dāng)加大該步長(zhǎng);

      (3)針對(duì)每個(gè)閾值,做二值化處理,獲得二值圖像;

      (4)使用鏈碼算法,收集目標(biāo)區(qū)域;

      (5)當(dāng)目標(biāo)區(qū)域數(shù)過(guò)大 (超過(guò)Lmax)時(shí),結(jié)束圖片掃描;

      (6)后置處理:對(duì)所有初識(shí)別區(qū)域,計(jì)算特征參數(shù),獲得面積和周長(zhǎng)較大的區(qū)域2-3 個(gè),進(jìn)一步根據(jù)經(jīng)驗(yàn)值(裂紋長(zhǎng)度、寬度等),從中剔除非缺陷區(qū)域,從而獲得目標(biāo)缺陷。

      圖5中,設(shè)定閾值上下限為 [30,200],步長(zhǎng)為10,如果設(shè)定Lmax=100,則搜索將在T=40 時(shí)結(jié)束,此時(shí)L=16。后置處理中對(duì)16個(gè)標(biāo)記區(qū)域進(jìn)行過(guò)濾刪除,最終可獲得本實(shí)例中的具有最大周長(zhǎng)和面積的裂紋缺陷。

      4 結(jié)束語(yǔ)

      鋼軌圖像中缺陷數(shù)量有限,采用最大區(qū)域數(shù)限定的節(jié)點(diǎn)標(biāo)記法能夠有效識(shí)別較大缺陷,提高了搜索速度。在標(biāo)記過(guò)程中提出的自適應(yīng)后退兩步搜索法解決了常規(guī)標(biāo)記算法中易出現(xiàn)的孤立點(diǎn)、單列鏈、局部鏈、開(kāi)鏈等錯(cuò)誤跟蹤問(wèn)題。

      閾值迭代法采用迭代方式能夠逐步顯現(xiàn)目標(biāo)區(qū)域的變化趨勢(shì),為有效閾值化方法的確定提供了依據(jù)。但是該方法本身效率較低,在實(shí)際應(yīng)用中,可將其作為先導(dǎo)方法測(cè)試圖像的最佳閾值,然后在此基礎(chǔ)上再采用改進(jìn)最大熵方法[9,10]等方法快速確定閾值。

      鋼軌缺陷檢測(cè)實(shí)驗(yàn)結(jié)合了上述方法,并采用簡(jiǎn)單的參數(shù)計(jì)算獲得了顯著缺陷的幾何特征,達(dá)到了缺陷識(shí)別的目的。

      [1]XU Guiyang,SHI Tianyun,REN Shengwei,et al.Development of the on-board track inspection system based on computer vision [J].China Railway Science,2013,34 (1):139-144(in Chinese).[許貴陽(yáng),史天運(yùn),任盛偉,等.基于計(jì)算機(jī)視覺(jué)的車(chē)載軌道巡檢系統(tǒng)研制 [J].中國(guó)鐵道科學(xué),2013,34(1):139-144.]

      [2]Li QY,Ren SW.A real-time visual inspection system for discrete surface defects of rail heads[J].IEEE Transactions on Instrumentation and Measurement,2012,61 (8):2189-2199.

      [3]Freeman H.Techniques for the digital computer analysis of chain-encoded arbitrary plane curves [J].Proceedings of National Electronics Conference,1961,17:421-432.

      [4]Park J,Chisty KMM,Lee J,et al.Image retrieval technique using rearranged freeman chain code [C]//Proceedings of 1st International Conference on Informatics and Computational Intelligence,2011:283-286.

      [5]Banerjee J,Ray R,Shome SN.A novel approach for freeman chain coding with prior modification using cubic interpolation[C]//IEEE International Conference on Computational Intelli-gence and Computing Research,2012.

      [6]LI Wen.Research on chain code in region contour representation and reconstruction [D].Lanzhou:Lanzhou University,2012 (in Chinese).[李雯.鏈碼在區(qū)域輪廓表示與重建中的應(yīng)用研究 [D].蘭州:蘭州大學(xué),2012.]

      [7]Gong Aiping,Chen Ji,Qiu Zhengjun,et al.Quantity qualification of overlapped region for citrus image based on modified Freeman chain code algorithm [J].Nongye Jixie Xuebao Transactions of the Chinese Society of Agricultural Machinery,2012,43 (11):203-208.

      [8]WANG Jingxue,SONG Weidong,ZHAO Like,et al.Application of improved freeman chain code in edge tracking and straight line extraction [J].Journal of Signal Processing,2014,30 (4):422-430 (in Chinese). [王競(jìng)雪,宋偉東,趙麗科,等.改進(jìn)的Freeman碼在邊緣跟蹤及直線(xiàn)提取中的應(yīng)用研究 [J].信號(hào)處理,2014,30 (4):422-430.]

      [9]LIU Hui,ZHANG Yunsheng,ZHANG Yinhui,et al.Curvature computing of BOF flame boundary based on differential chain code[J].Computer Engineering and Application,2013,49 (7):171-175 (in Chinese).[劉輝,張?jiān)粕瑥堄≥x,等.基于差分鏈碼曲率的轉(zhuǎn)爐火焰邊界彎曲度計(jì)算 [J].計(jì)算機(jī)工程與應(yīng)用,2013,49 (7):171-175.]

      [10]Li Jian,Guo Shuai,Ye Feng.Shape recognition based on freeman chain code [J].Advanced Materials Research,2011,317-319:2490-2496.

      [11]Tan Haifeng,Yang Guang,Zheng Nan,et al.An improvement of two-dimensional maximum entropy thresholding segmentation algorithm for SAR image[C]//Proceedings of International Conference on Computer Science and Electronics Engineering,2012:379-382.

      [12]ZHANG Xinming,ZHANG Aili,ZHENG Yanbin,et al.Improved two-dimensional maximum entropy image thresholding and its fast recursive realization [J].Computer Science,2011,38 (8):278-283 (in Chinese). [張新明,張愛(ài)麗,鄭延斌,等.改進(jìn)的最大熵閾值分割及其快速實(shí)現(xiàn) [J].計(jì)算機(jī)科學(xué),2011,38 (8):278-283.]

      猜你喜歡
      鏈碼邊界點(diǎn)邊界
      拓展閱讀的邊界
      道路空間特征與測(cè)量距離相結(jié)合的LiDAR道路邊界點(diǎn)提取算法
      層次化點(diǎn)云邊界快速精確提取方法研究
      論中立的幫助行為之可罰邊界
      一種新壓縮頂點(diǎn)鏈碼
      基于鏈碼特征的幾何圖形快速識(shí)別算法*
      “偽翻譯”:“翻譯”之邊界行走者
      一種去除掛網(wǎng)圖像鋸齒的方法及裝置
      電腦與電信(2014年6期)2014-03-22 13:21:06
      無(wú)損鏈碼技術(shù)的分析與比較
      思考新邊界
      罗源县| 库伦旗| 来安县| 北京市| 合江县| 理塘县| 临漳县| 临颍县| 如皋市| 鄱阳县| 宾阳县| 榆林市| 建平县| 光泽县| 河池市| 乃东县| 吉木乃县| 乐都县| 遵化市| 巫溪县| 佛冈县| 江北区| 类乌齐县| 明星| 司法| 富川| 南华县| 乌恰县| 拉孜县| 麻栗坡县| 裕民县| 四川省| 丰镇市| 门源| 永德县| 获嘉县| 锡林郭勒盟| 凤城市| 久治县| 广昌县| 民勤县|