王 勝,陳 寧
(集美大學 機械與能源工程學院,福建 廈門 361021)
一種改進的集裝箱箱號自動識別系統(tǒng)
王 勝,陳 寧
(集美大學 機械與能源工程學院,福建 廈門 361021)
針對已有集裝箱箱號字符定位、分割、識別算法上的不足,分別提出了基于逆向掃描的箱號區(qū)域提取法,基于區(qū)域重心的字符定位分割法和基于概率神經網絡的字符識別法。用MATLAB編程,實現(xiàn)了對集裝箱箱號的自動識別,識別正確率可達95%。提出的方法具有識別正確率高、算法簡單、可靠性好等優(yōu)點,有望提高碼頭道口通勤率,降低運營成本。
集裝箱箱號;逆向掃描;字符分割;概率神經網絡;字符識別
為了滿足現(xiàn)代港口發(fā)展要求,有必要解決碼頭道口集裝箱通勤率低這一難點問題。目前,有少部分碼頭采用射頻識別(Radio Frequency Identification,RFID)的方式錄入箱號信息,相對于傳統(tǒng)的人工檢查核對,效率有了很大提高。但它需要為每個集裝箱貼上統(tǒng)一標準的RFID電子標簽,成本較高,難以推廣應用。
而基于機器視覺的光學字符識別法是一種可行的解決方案。它無需對集裝箱增加額外附件,只需借助相機拍攝集裝箱箱號圖像,通過計算機處理就可以將信息錄入到數(shù)據(jù)庫并控制通行。已有研究人員和工程師在這方面做過一些研究,主要是對箱號字符的定位、分割、識別算法的研究。李小平[1]等研究了利用BP算法實現(xiàn)集裝箱箱號識別。He Z[2]等提出了基于模板匹配的箱號字符提取技術。趙海英[3]等介紹了模式識別與結構分析組合及箱號校對的識別技術。龐然[3]等研究了面向集裝箱字符識別的預處理算法。陳默[4]等針對箱號預處理后出現(xiàn)粘結現(xiàn)象,提出了基于隱馬爾科夫模型的連續(xù)字符識別方法。毛洪輝[6]基于實際應用,設計開發(fā)了一種碼頭閘口集裝箱箱號自動識別系統(tǒng),并做了仿真。
集裝箱箱號字符識別系統(tǒng)的關鍵技術包括箱號搜索與提取,字符定位與分割,字符特征提取與字符識別。由于受各種環(huán)境因素的影響以及箱號自身特點的約束,實現(xiàn)起來還是有一定的復雜度。前面的研究有些是側重其中一個方面,有些是相關處理識別算法復雜,不能滿足工程應用。因此,本文針對其不足研究了新的集裝箱箱號字符處理與識別方法。
集裝箱兩側和箱門上除了有集裝箱箱號外還存在許多干擾字符,怎樣從眾多字符中準確提取箱號圖像是首要的一步。文獻[6]通過假設箱號在圖像中的位置固定來提取箱號,這種假設可能不盡合理。文獻[5]先預定位滿足條件的字符區(qū)域,再進一步確定箱號位置,文獻[7]提出了基于小波變換的集裝箱箱號定位法,它需要提取字符圖像的小波特征,因此算法相對復雜,并且字符定位正確率也僅90%左右。鑒于現(xiàn)有方法存在的一些不足之處,本文提出一種基于逆向掃描的箱號區(qū)域提取法。其依據(jù)是箱門上橫向箱號字符處于圖像右上角。因此,采用從上到下、從右到左的掃描方式可以大致確定箱號位置,再經過預處理并結合箱號字符特點可以較精確地確定箱號區(qū)域并將其提取出來。處理結果如圖1所示。
圖1 原圖及提取到的箱號
從整幅圖像中提取出完整的集裝箱箱號后就可以開始對字符進行分割了。文獻[7]采用了基于灰度投影的字符分割方法,但需要預先知道字符寬度、間距等信息,處理比較復雜。本文提出了基于區(qū)域重心的字符定位分割法。
首先需要確定圖像中每個字符區(qū)域的重心坐標。設單個字符的二維離散圖像函數(shù)用f(x,y)表示,則其(p+q)階矩定義為
(1)
然后根據(jù)區(qū)域信息找出該區(qū)域最小外接矩形的左上點坐標以及寬高像素值。最后根據(jù)每個矩形所包含的信息就可以自適應地確定各個字符的位置與大小,進而將它們逐一分割出來,并歸一化為30×60像素大小。字符信息及分割結果如圖2所示。
圖2 字符定位與分割結果
對于集裝箱側面的箱號,通常不在同一平面上,字符間隔不均勻。不僅有縱向一列排列的,還存在縱向兩列排列的,見圖3。同時還可能存在污點、剝落、傾斜、光照不均等不利情況,但相對來說干擾字符較少。因此,這里直接取縱向排列的箱號圖像做處理,見圖4。不同于橫向排列時的處理方法,這里需要采用重心排列法,才能依次有序地分割出單個字符。算法改進后的分割效果如圖5所示。
圖3 原圖(縱向字符)
圖4 字符定位(縱向字符)
圖5 字符分割結果
字符分割是字符特征提取的基礎,而特征提取又是后面自動識別的關鍵,對特征選擇的好壞將直接決定字符自動識別的效果,甚至整個系統(tǒng)的優(yōu)劣。
特征提取的目標是找到一個長度為n的向量{x1,x2,…,xn},用它來表示原圖像,稱為原圖像的一個特征向量。該特征向量應滿足以下條件[8]:
1)當圖像類似時,得到的特征向量也比較類似;當圖像差距很大時,得到的特征向量的距離差別也很大。即該特征向量必須能夠代表這一圖像模式。
2)向量的長度n應盡量小,盡量不包含對分類沒有作用的分量,以便有效地進行分類并減小計算量。
本文采用了字符結構特征和統(tǒng)計特征相結合的方式,共抽取了12維特征值。其中結構特征6個,包括水平和豎直方向1/3、1/2和2/3處交點數(shù)各3個。比如水平1/2交點數(shù)是指在圖像水平方向1/2處畫一條直線,然后計算圖中等于1的像素與該直線的交點個數(shù)。統(tǒng)計特征有6個,包括將30×60圖像四等分得到4個15×30小區(qū)域,以及水平和豎直方向1/2~2/3部分區(qū)域2個,分別統(tǒng)計各個小區(qū)域中像素值為1的點的個數(shù)。這樣就構成了一個12維的列向量,將其作為圖像的特征向量,如圖6所示。并對所有訓練樣本做逐個歸一化而不是統(tǒng)一歸一化處理,這將大大提高單個字符識別正確率。
圖6 圖像字符提取
用來解決模式識別與分類的方法比較多,包括模板匹配、歐氏距離判別法和基于支持向量機的字符識別[9]等方法。另外,BP神經網絡由于具有實現(xiàn)任何復雜非線性映射的能力,特別適合求解內部機制復雜的問題,將其用于字符識別中的研究也頗多。但它同時也存在一些難以克服的局限性,比如需要的參數(shù)較多,容易陷入局部最優(yōu),對初始權重比較敏感,網絡訓練時間較長等。而概率神經網絡具有學習速度快,不易陷入局部極小值等優(yōu)點。因此,本文研究了基于概率神經網絡的字符識別方法。
考慮到某些數(shù)字和字母的相似性比較大,為了提高識別率,本文創(chuàng)建了兩個概率神經網絡,分別對10個數(shù)字字符和26個大寫字母字符進行識別。
網絡的第一層為輸入層,神經元節(jié)點數(shù)與輸入向量的維數(shù)相同,包含12個神經元。第二層為徑向基層,神經元節(jié)點數(shù)等于樣本個數(shù)(數(shù)字識別樣本200個,字母識別樣本520個)。第三層為隱含層,神經元節(jié)點個數(shù)為分類的類別數(shù)(數(shù)字樣本分10類,字母樣本分26類)。輸出層包含一個神經元,對應分類的類別。概率神經網絡結構見圖7。
圖7 概率神經網絡結構(字母字符)
程序運行流程如圖8所示。
圖8 程序運行流程圖
用MATLAB神經網絡工具箱中的newpnn函數(shù)創(chuàng)建兩個概率神經網絡,分別用來訓練數(shù)字字符和字母字符。然后再用訓練好的網絡對訓練樣本和測試樣本進行單個識別,對統(tǒng)一歸一化和逐個歸一化的識別結果做比較,如表1和表2所示。
表1 識別結果比較(數(shù)字字符)%
400個數(shù)字字符未加噪聲添加噪聲訓練(統(tǒng)一歸一化)7876訓練(逐個歸一化)10099測試(統(tǒng)一歸一化)6261測試(逐個歸一化)9189
表2 識別結果比較(字母字符)%
520個字母字符未加噪聲添加噪聲訓練(統(tǒng)一歸一化)7471訓練(逐個歸一化)10098測試(統(tǒng)一歸一化)5958測試(逐個歸一化)8886
結果表明,逐個歸一化后對訓練樣本的識別率有很大提高,接近100%。對未訓練的測試樣本的識別率稍低,考慮到概率神經網絡識別的原理,這點也是容易理解的??梢酝ㄟ^不斷增加相應訓練樣本數(shù)來提高識別正確率,其效果通過實驗證明也是很明顯的(單個識別正確率可達95%)。而且基于概率神經網絡的字符識別對噪聲不太敏感,魯棒性較強。
增加訓練樣本后,對前面提取的集裝箱箱號字符進行逐個識別,MATLAB程序運行結果如圖9所示。
圖9 集裝箱箱號識別結果
測試結果表明,在獲得較為可靠的箱號圖像,并經過適當處理后,系統(tǒng)識別結果還是相當可靠的。值得注意的是,有時校驗碼由于圖像質量以及邊框的影響導致字符提取結果不理想,相對容易出現(xiàn)誤識別現(xiàn)象,但也在可控和可接受范圍之內。
本文針對集裝箱箱號識別的幾個關鍵技術,包括箱號定位、字符分割和字符識別,分別提出了基于逆向掃描的箱號區(qū)域提取法,基于區(qū)域重心的字符定位分割法和基于概率神經網絡的字符識別法,從而完整有效地實現(xiàn)了對不同形式集裝箱箱號的正確快速可靠識別。
另外,由于集裝箱兩側以及箱門上的箱號周圍干擾字符較多,排列復雜多樣,從而導致處理算法相對復雜,容易產生誤識別。為了進一步提高識別的準確性及系統(tǒng)運行的可靠性,可采集箱頂箱號(無干擾字符)圖像或者同時采集不同部位箱號圖像進行聯(lián)合識別,相互驗證,系統(tǒng)工作流程如圖10所示。
圖10 系統(tǒng)運行流程圖
另外還可以結合校驗碼自檢驗規(guī)則來做最后驗證。這樣就能保證足夠高的識別率,以滿足實際應用要求,有望提高碼頭道口甚至整個集裝箱裝卸管理的自動化水平。
[1] 李小平,段鍇,趙健龍. 利用BP算法實現(xiàn)集裝箱編號識別[J].北京理工大學學報,2001,21(3):345-347.
[2] HE Z,LIU J,MA H,et al. A new automatic extraction method of container identity codes[J].IEEE Trans. Intelligent Transportation Systems,2005,6(1):72-78.
[3] 趙海英,姚振強,陳斌,等. 集裝箱智能道口箱號識別系統(tǒng)中的字符識別技術[J].水運工程,2006(6):34-36.
[4] 龐然,安博文,李丹. 面向集裝箱字符識別的預處理算法[J].計算機技術與發(fā)展,2010,20(12):21-23.
[5] 陳默,何小海,吳煒,等. 結合獨立與連續(xù)字符識別的集裝箱號識別技術[J].四川大學學報:工程科學版,2011,43(Z1):139-145.
[6] 毛洪輝. 碼頭閘口集裝箱箱號自動識別系統(tǒng)設計與開發(fā)[J].水運工程,2011(11):48-51.
[7] 許庶,馬志峰,吳煒. 基于計算機視覺的集裝箱號碼識別系統(tǒng)[J].電視技術,2010,34(5):105-108.
[8] 陳明. MATLAB神經網絡原理與實例精解[M].北京:清華大學出版社,2013.
[9] 高保平,白瑞林. 軸承壓印字符自動識別算法的研究[J].電視技術,2012,36(9):142-145.
Improved Container Code Automatic Recognition System
WANG Sheng, CHEN Ning
(CollegeofMechanicalandEnergyEngineering,JimeiUniversity,FujianXiamen361021,China)
In view of the insufficiency of the existing positioning, segmentation and recognition algorithm to container codes, the codes area extraction method based on reverse scan, character location and segmentation method based on the center of gravity of area, character recognition method based on probabilistic neural network are presented. It implements automatic identification of the container codes using MATLAB, the recognition accuracy up to 95%. The proposed method has the advantages of high recognition accuracy, simple algorithm and good reliability. So it is expected to increase commuting rate of terminal crossing, and reduce operating costs.
container codes; reverse scan; character segmentation; probabilistic neural network; character recognition
福建省科技廳資助省屬高校專項(JK2014024)
TP391.4
A
10.16280/j.videoe.2015.19.027
王 勝(1991— ),碩士生,主要研究方向為機器視覺及其應用、自動控制;
2014-12-25
【本文獻信息】王勝,陳寧.一種改進的集裝箱箱號自動識別系統(tǒng)[J].電視技術,2015,39(19).
陳 寧(1972— ),副教授,博士,主要研究方向為機器視覺、工程機器人。
責任編輯:任健男