DSP在PDF417快速解碼終端中的應用
出處:韓 東,楊兆選,滕建輔,吳佳鵬 發(fā)布于:2011-08-26 19:08:43
PDF417條碼是一種高密度、高信息含量的便攜式數(shù)據(jù)文件,是實現(xiàn)證件及卡片等大容量、高可靠性信息自動存儲、攜帶并可用機器自動識讀的理想手段。由于二維條碼具有成本低,信息可隨載體移動,不依賴于數(shù)據(jù)庫和計算機網(wǎng)絡、保密防偽性能強等優(yōu)點,結合我國人口多、底子薄、計算機網(wǎng)絡投資資金難度較大,對證件的防偽措施要求較高等特點,可以預見,PDF417條碼在我國極有推廣價值。二維條碼在我國有著廣闊的應用前景,PDF417條碼技術在我國的推廣應用必將為我國信息產(chǎn)業(yè)的發(fā)展和現(xiàn)代化的經(jīng)濟建設帶來積極的影響。
本文介紹的解碼終端采用專用條碼攝像頭采集條碼圖像,在基于TMS320C6713的DSP平臺上實現(xiàn)了PDF417條碼的準確、快速讀取。
1 PDF417條碼概述
二維條碼PDF417做為一種新的信息存儲和傳遞技術,從誕生之始就受到了國際社會的廣泛關注。經(jīng)過幾年的努力,現(xiàn)已廣泛地應用在國防、公共安全、交通運輸、醫(yī)療保健、工業(yè)、商業(yè)、金融、海關及政府管理等領域。 美國亞利桑那州等十多個州的駕駛證、美國軍人證、軍人醫(yī)療證等幾年前就已采用了PDF417技術。將證件上的個人信息及照片編在二維條碼中,不但可以實現(xiàn)身份證件的自動識讀,而且可以有效地防止偽冒證件事件的發(fā)生。菲律賓、埃及、巴林等許多國家也已在身份證或駕駛證上采用二維條碼,據(jù)不完全統(tǒng)計,準備在身份證或駕駛證上采用二維條碼PDF417的國家已達40多個,我國對香港地區(qū)恢復行使主權后,香港居民新發(fā)放的特區(qū)護照上采用的就是二維條碼PDF417技術。

條碼采用文本、字節(jié)和數(shù)字三種數(shù)據(jù)壓縮模式將原始數(shù)據(jù)轉換為0~928的碼字。三種壓縮模式分別對不用類型的數(shù)據(jù)具有較高的壓縮率,三者之間用模式轉換與模式鎖存進行靈活的轉換。
PDF417采用Reed-Solomon碼對條碼數(shù)據(jù)進行檢錯與糾錯,別含有512個糾錯碼字,可復原條碼50%的碼字。
2 硬件平臺
系統(tǒng)的硬件架構如圖2所示。系統(tǒng)硬件主要包含圖像處理和圖像采集兩個模塊。

2.1 圖像處理模塊
系統(tǒng)的圖像處理模塊采用DSP外配SDRAM的方式實現(xiàn)圖像的快速處理。DSP芯片選取TI公司的高性能32位浮點處理芯片TMS320C6713B;SDRAM芯片為Micron公司的MT48LC32M8A2,其存儲空間為256 MB.C6713芯片的高速浮點處理能力保證了條空寬度確定的速度與準確性。系統(tǒng)工作過程中,SDRAM的作用為:緩存圖像數(shù)據(jù);存放圖像運算的中間變量;作為系統(tǒng)的堆??臻g和常量及表的存放空間。
2.2 圖像采集模塊
視頻數(shù)據(jù)采集模塊由條碼采集攝像頭、FPGA和乒乓RAM 3個部分組成。攝像頭采用Microscan公司的條碼圖像采集專用激光攝像頭QUADRUS MINI Imager.由于TMS320C6713B芯片無video port接口,不能直接和攝像頭進行邏輯連接,因而采用ALTERA公司的EP1C6作為控制,將Camera采集的視頻信號流以幀為單位保存到高速SRAM中,并在合適的時機將SRAM總線切換給DSP以供運算處理。乒乓RAM以FPGA和DSP之間的通信接口RAM而存在,解決了DSP和攝像頭連接的問題。另外,該模塊還為攝像頭配備LED補光系統(tǒng)以改善采集圖像的質(zhì)量。
3 軟件設計
解碼終端軟件的設計強調(diào)提升條碼識別率、解碼正確率和系統(tǒng)實時性3個指標,主要包含二值化、區(qū)域定位、定位、條碼分層等模塊。圖3為系統(tǒng)軟件架構。

3.1 不均勻光照條件下的圖像二值化
條碼圖像二值化要考慮不均勻光照的影響以及系統(tǒng)實時性解碼的要求。本文改進了Bernsen算法[3],成功地去除了不均勻光照的影響。該算法處理步驟如下:
?。?)用大津法取得粗閾值為T.掃描整個f(x,y)灰度圖像,如果f(x,y)>T+a,則b(x,y)=255;如果f(x,y)<T+a,則b(x,y)=0.其中a為Bernsen算法的處理區(qū)間寬度,取值范圍15~30,b(x,y)為二值化后圖像。
(2)對發(fā)生光照不均勻嚴重的區(qū)域,即落在區(qū)間T-a<f(x,y)<T+a的點進行處理,取w為閾值計算窗口,計算方法如下:

如果T3>a,則取T2為閾值;否則,取T4為閾值,對區(qū)間內(nèi)的點進行二值化。
Bernsen算法只用T2作為閾值對區(qū)間內(nèi)點進行二值化,忽略了全局閾值的作用,而改進的算法采用雙閾值對不均勻光照的區(qū)域進行二值化處理,減少了偽影現(xiàn)象。該算法是全局閾值算法和局部閾值算法的結合,同時兼顧了處理效果和時間復雜度。
3.2 條碼的區(qū)域定位
條碼的區(qū)域定位計算較為復雜,因此算法的選擇需要兼顧處理速度和處理效果。本文采用了基于連通域的區(qū)域定位算法[2],算法包括條碼方向提取、條碼區(qū)域連接和連通域標記3個步驟。圖4給出了區(qū)域定位算法框圖。

條碼方向的提取決定了膨脹運算所使用的結構體。由于對圖像直接進行膨脹運算很容易受噪聲的影響,算法首先將圖像區(qū)域分為水平、垂直、45°和135° 4種大致方向,而后提取條碼的方向并根據(jù)條碼不同的方向使用4種不同的膨脹結構體。這樣有效防止了與條碼接近的其他文字等背景由于使用各向同性的結構體進行膨脹運算而連接到條碼中。方向提取先得到圖像橫向和縱向的梯度信息,而后以適當?shù)拈撝祵Φ玫降奶荻葓D二值化并進行比較。認為含有較多邊界信息的圖指示的方向為條碼的走向。如果兩圖邊界的差值在一定范圍內(nèi),則用同樣的方法檢測45°和135°兩個方向。
膨脹算法將條碼連成一個緊密的連通區(qū)域,之后要進行連通域的標記以定位條碼區(qū)域。算法包含3個步驟:
?。?)如果當前點A是前景點并且其前一點未被標記,則認為A是一個連通域的外輪廓點;跟蹤這個外輪廓,并將所有外輪廓點都標記為與A屬于相同的連通域。
(2)如果當前點A下方的點是背景點且A的前一點已被標記,則認為A是連通域內(nèi)輪廓點;跟蹤這個內(nèi)輪廓,并將所有內(nèi)輪廓點都標記為與A屬于相同的連通域。
?。?)如果前景點A的前一點已被標記且不屬于情況1和2,則將A標記為與其前一點屬于相同的連通域。
邊界的跟蹤是通過搜索像素點8臨域實現(xiàn)的,用順時針排布的1~7分別代表8臨域點,搜索方向更新公式為:

系統(tǒng)采用的連通域標記法舍棄了傳統(tǒng)的二次標記方式,而采用跟蹤連通域外輪廓的方法,只需要對圖像進行掃描,因此具有更快的速度。
3.3 條碼的定位
本文提出時間復雜度較低的邊緣跟蹤算法,定位了條碼的4個頂點,為條碼傾斜和幾何形變的校正提供條件。圖5給出了定位算法流程圖。

以搜索左上角頂點為例。系統(tǒng)用參考點數(shù)組記錄搜索到的條碼起始符或結束符的邊緣走向,步進點數(shù)組沿起始結束符黑色邊界方向逐點步進。若步進過程中某一時刻,步進點數(shù)組與參考點數(shù)組夾角超過45°,說明步進點數(shù)組已步進到條碼邊緣,則將步進點數(shù)組中心點位置確定為條碼的左上頂點。用類似的方法搜索,可得到條碼的其他3個頂點。
條碼的4個頂點確定以后,再經(jīng)過旋轉變換、錯切變換和透視變換,將幾何形變的不規(guī)則四邊形條碼校正為矩形條碼。條碼的旋轉使終端的解碼不再局限于水平和垂直的條碼,實現(xiàn)了PDF417的全方位解碼。
3.4 條碼分層及碼字讀取
PDF417是堆疊式條形碼,需要確定條碼的層次以進行逐行碼字的讀取。確定條碼層次的步驟如下:
?。?)用Sobel邊緣檢測算子作用于圖像,提取圖像邊界。
?。?)將得到的分層界限進行水平投影,記錄投影點數(shù)目p(i)。
?。?)隔行差分。按照dif(i)=p(i)-p(i-2)計算第i行的投影差分值。若當前行投影差分值大于零,而其下一行差分值小于零,則認為該行為分層界限。
?。?)偽邊界去除。將投影高度小于投影峰值1/4的邊界去除,以消除由噪聲產(chǎn)生的偽邊界。
得到條碼的層邊界后,系統(tǒng)采用層內(nèi)投影并判斷投影高度的方法來讀取每層條碼的條空信息。實踐證明該方法具有較高的正確率。
用條空的寬度除以單位模塊的寬度得到條碼的條空寬度序列,如:81111113…31111334…711311121.單位模塊寬度求解方法為:

其中,Wm為單位模塊寬度,Wl為層寬,n為一層條空總數(shù)。
終譯碼采用查表的方式將條空序列轉換為碼字序列。碼字序列經(jīng)過檢錯與糾錯后,按照3種壓縮模式編碼的反方向進行譯碼,終得到PDF417條碼的原始數(shù)據(jù)。
4 實驗結果
對采集到的28 000幅、分辨率為320×480的圖像進行測試。測試結果表明,本終端對PDF417條碼的識別率可達99.76%,識別碼解碼正確率為100%,解碼速度達10次/s以上,具有國內(nèi)的技術水平。
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- ARM技術架構與應用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術選型與抗干擾設計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎知識2025/7/14 16:59:04









