周春榮
摘 要:根據矩不變的圖像識別理論,并且與別的數字化圖像處理技術相融合,針對條碼中出現殘缺或者受到污染這種狀況的圖像識別進行深入的研究,研發出的條碼圖像識別系統,還可以快速識別出任何角度出現畸形變化的條碼圖像。基于此,本文重點對一維及二維條碼圖像識別系統展開研究與開發。
關鍵詞:一維條碼 二維條碼 識別系統 圖像識別
中圖分類號:TP391 文獻標識碼:A 文章編號:1672-3791(2018)02(c)-0023-02
由于條碼技術具備快捷、精準等特征,因此,在計算機管理方面的各個領域都得到了廣泛普及,滲透到了生活生產中的方方面面。通過傳統模式進行條碼信息提取主要運用光電掃描技術。隨著數字化圖像識別處理技術的不斷進步,通過數碼相機的圖像攝入提取形式在近些年來得到了廣泛的應用,并且相應的條碼識別系統也得以出現。但是針對于任何角度發生畸形變化的條形碼識別問題,在現階段仍然沒有得到有效的解決。codel28條碼是一種具有一定的連續性、長度可以變化的字母數字條碼,相較于其他條碼,該條碼較為復雜,并且能夠支持更多的資源,并且能夠通過多種編碼方式進行交互運用,因此其應用十分廣泛。本文以codel28條碼為例,對條碼圖像識別系統進行全新的設計,也就是在通過閾值變換處理之后,運用計算中心距,將條碼圖形的橢圓傾角確定出來,并且根據條碼圖像的相關信息,將條碼圖像調整至水平的方向,這樣就能使條碼圖像在任何角度畸形變化的狀況進行快速輕松的識別。
1 條碼的基本內容與特征
結合特定的編制規則,將很多寬度不相同的空白與黑條排列在一起,用來進行信息表達的圖標就是條形碼。由反射率較強的條與孔組合而成的平行圖案是較為常見的條形碼。一維條形碼能夠充分反映物體的基本信息,例如對生產商家、國家、種類、商品名稱以及生產日期進行表示。條碼在各行各業都得到了十分廣泛的應用,例如在郵政管理系統、運輸管理系統、銀行系統以及交通管理系統等多種領域都得到了有效的普及。
傳統的一維條碼存在著很大的缺陷,例如可靠性差、信息容量不足、糾錯能力差,必須在有網絡的環境中才能夠使用。因此,為了有效解決一維條碼中存在的缺陷,二維條碼油然而生。相較于一維條碼,二維條碼有著大量的優勢,其作為一種新型的自動識別技術,具有非常高的可靠性與經濟性,逐漸被社會各界的人士所認可,所以,二維條碼將會被應用于更加寬廣的領域之中。現階段,西方的很多發達國家已經將二維條碼技術應用到了交通、國防以及海關等多種領域之中。
2 技術方案及數學模型
2.1 技術方案
codel28條碼是一種長度可以進行變化,并且具有一定的連續性條碼圖像。如圖1所示,這種條碼運用一組平行的空與條來表示數據符、起始符、終止符、檢驗符以及左右側的空白區域。
把條碼圖像的格式轉換為較為標準位圖,從而轉化為二值圖;之后通過經矩計算得出條碼的傾斜角度與相對的位置,并且及時地對條碼圖像進行相關的處理與調節,這樣就能夠通過掃描來得出條碼的結果。
2.2 數學模型
在通常情況下,數碼相機和條碼圖像之間并沒有達到嚴格意義上的垂直,通常都會具有一定的偏移距離以及傾斜角度。本文主要利用數字圖像中的幾何變換來解決條碼圖像識別中的相關問題。
2.2.1 矩不變量
所謂矩不變量,指的是物體圖像通過比例縮放、旋轉、平移等變化過程中仍然具備不變的矩特征量,其對于解決畸形變化圖像的識別與理解方面有著非常大的作用。
2.2.2 條碼圖像橢圓模型
對于那些比較細長的條碼圖像,可以通過橢圓模型來表示他的方向特征以及尺寸大小,運用條碼圖像中的3個二階中間矩,建立出條碼圖像的橢圓模型如圖2所示。a與b分別用來表示橢圓的長半軸與短半軸。
對于一維條碼圖像識別系統的開發集成主要是基于VC++6.0環境中的“文檔—視圖”模式下來進行的。在該模式中,類C Standard Code能夠使條碼圖像的格式更加標準化,而類C Std Code Object能夠為條碼圖像提供準確的幾何位置信息數據,函數My angle(,,,star)就處于此類之中;類C Code View當中使條碼圖像的閾值變化、降噪、幾何變換等圖像處理函數得到了有效集成。該系統能夠有效解決條碼圖像任何角度的畸形變化、條碼圖像上的輕度污染等影響條碼圖像識別的因素,能夠在一秒鐘之內就識別出條碼圖像,從而在實際應用的過程中更加高效便捷,達到人們使用的需求。
4 二維條碼識別系統技術方案
因為codel28條碼的二維條碼圖像根據很多層的一維條碼疊加而成,因此,對于二維條碼的識別系統繼承了一維的識別方式,但是其矩陣分割模塊得到大幅度增加。實現了它的主要原理是對二維條碼圖像的水平模進行切割,切成很多個子塊矩陣,然后圖像識別系統中的程序對子塊矩陣進行逐一的掃描,并且進行詳細的分析,當它讀出起始符信息數據時,就是提出了層號信息而且開始對條碼進行破譯,當碰到終止符時,就會跳躍到另一個子塊矩陣中進行分析與掃描,當程序掃描完所有的子塊矩陣值周才會停止。要想避免信息數據的丟失,并且有效提高掃描分析的工作效率,就應當將每一層的條碼分成兩個子塊矩陣。
5 二維條碼識別系統設計及調試
對于二維條碼圖像識別系統的開發集成也是基于VC++6.0環境中的“文檔—視圖”模式下來進行的。其中類C Std Data Object在進行二維條碼圖像的讀取過程中,能夠將其儲存為數組矩陣,并且對矩陣進行有效的分割,分成許許多多的子塊矩陣;類CTwoBl28Doc中具有功能函數的設定,結合層號的信息與數據進行子塊矩陣的循環。
二維條碼圖像的識別系統能夠在0.5s之內對那些有比較嚴重噪音的二層二維條碼圖像進行有效的識別。在現階段的二維條碼圖像識別系統仍然處于完善與改進的過程中,僅僅對于兩個由單層條碼組合成的二維條碼圖像進行了調試。
6 結語
總而言之,條碼在使用以及印刷的過程中,非常容易出現污染或者損壞,因此,進行一維以及二維條碼圖像識別系統的研發是十分必要的,對于條碼的實際應用范圍進行了有效的拓展。該系統能夠對條碼圖像進行自動識別,并且這個系統還能應用到其他的領域之中,例如機器人自動尋道系統等。
參考文獻
[1] 于忠清.基于圖像處理的嵌入式條碼識別系統及應用研究[D].中國海洋大學,2017.
[2] 萬菁.二維條碼的編解碼及系統實現[D].上海交通大學,2017.
[3] 范永法,何江莊.一維及二維條碼圖像識別系統研究[J].儀表儀器學報,2003,24(22):488-489.