在小尺寸DSP上實現2D條形碼解碼
條形碼一般被用于將關鍵的字母數字信息轉換為數字系統(tǒng)能夠掃描和讀取的符號信息,而無需每次都要將信息錄入數字系統(tǒng)。
1D(一維)條形碼只能對數字數據進行編碼,在過去二十年中主要用于產品運輸和追蹤、系統(tǒng)安全、超市等場合。使用2D(二維)條形碼,數據在水平和垂直方向被編碼為2D符號,如下圖1所示。
圖1:2D條形碼示例。
2D符號所能包含的數據量遠大于1D符號。2D條形碼解決方案可比傳統(tǒng)1D條形碼提供更大的信息密度,特別是對于那些需要對精密信息而不是簡單的碼信息進行編碼的應用。
2D條形碼技術的一些應用包括產品標簽、產品信息追蹤和檢驗、移動安全、出入境檢查服務、醫(yī)療保健和電子商務等。
如今存在很多2D條形碼算法,這催生出采用不同條形碼技術的一系列應用。一般來說,有兩種類型的2D條形碼:1) 堆疊式2D條形碼,例如PDF417和Code 49,2) 矩陣式條形碼,例如QR碼和數據矩陣。在這篇文章中,我們僅限于討論數據矩陣式條形碼技術[2]。
2D數據矩陣式條形碼技術
2D數據矩陣式條形碼包括在正方形或長方形中排列的黑色和白色模塊,如圖1所示。編碼數據位映射到黑色和白色模塊(或單元)組成的區(qū)域,稱為數據區(qū)域。關于2D數據矩陣式條形碼所支持的不同類型的編碼方案的詳細信息,請參見參考文獻[2]。
數據區(qū)域由定位圖形包圍(定位圖形的底部和左側只包含黑色模塊,而定位圖形的上部和右側由交替的白色和黑色模塊組成)。數據矩陣2D條形碼支持由排位圖形分隔的多個數據區(qū)域,從而能容納更多數據信息。
有兩種版本的數據矩陣,一種是基于循環(huán)冗余校驗(CRC)和卷積糾錯,另一種是基于里德所羅門(RS)糾錯。對于掃描、讀取和提取數據位,基于CRC與基于RS的數據矩陣解碼沒有區(qū)別。
評論