《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種基于ADI低成本DSP實現的QR碼識別系統
一種基于ADI低成本DSP實現的QR碼識別系統
來源:電子技術應用2013年第4期
余維克,黎福海
湖南大學 電氣與信息工程學院,湖南 長沙410082
摘要: 設計了一種可在ADI低成本DSP(小內存平臺)上實現的QR碼識別系統,并在以BF592為核心的硬件平臺上實現。系統基于圖像處理方法,在32 KB的數據空間內實現了二值化壓縮并行的圖像采集時序、多個方向掃描對QR碼進行定位、采樣解碼等功能。經測試,該系統取得了良好的識別效果。
中圖分類號: TP368.2
文獻標識碼: A
文章編號: 0258-7998(2013)04-0042-03
QR code decoding system based on ADI low-cost DSP
Yu Weike,Li Fuhai
College of Electrical and Information Engineering, Hunan University,Changsha 410082,China
Abstract: A QR code decoding system which can be implemented on ADI low-cost DSP is designed. The system is based on image processing and implemented on the hardware platform with center processor BF592. The whole system is running within 32 KB data memory, including image capturing and displaying, image storing and thresholding using paralleled timing, QR code detection with multi-direction scanning, sampling and decoding and so on. The experimental result shows the good performance of the system.
Key words : QR decode;image processing;small-memory;BF592

    近年來,隨著數字圖像處理技術的發展,二維碼技術獲得了廣泛應用。QR(Quick Response)碼是常見二維碼中的一類,于1994年由日本DENSO WAVE公司發明,目前在火車票、門票、網站、廣告等多種信息傳播媒介中得到普及。與常見的條形碼相比,同等面積的QR碼具有更大的信息容量。

    QR碼識別設備一般為嵌入式設備,與個人電腦相比,嵌入式設備對成本和功耗等方面有較高的要求,因此其內部存儲空間通常較小。本文針對這種情況,在以ADSP-BF592為核心處理器的硬件平臺上設計并實現了一種QR碼識別系統。該系統通過采集與二值化并行的方法采入二值圖像以提高內存對圖像的容納力,識別過程中避免了常規圖像處理算法中大量的內存分配,成功地在小內存平臺上實現了QR碼識別功能。
1 系統硬件平臺
    系統以ADSP-BF592為核心處理單元,采用一個CMOS單板攝像頭拍攝QR碼圖像信息,在DSP內部存儲空間運行QR碼識別算法,并將識別結果顯示在LCD屏上。系統硬件平臺框圖如圖1所示。

    ADSP-BF592是ADI公司Blackfin系列處理器產品系列中的一款DSP,低成本、低功耗的特點使其通常用于嵌入式產品中。BF592提供200 MHz和400 MHz內核時鐘速度,具有豐富的外設,包括2個SPORT口、1個PPI、2個SPI、4個通用計數器以及1個包含VDK RTOS和C運行庫的工廠編程指令ROM塊[1-2]。但是BF592的內部僅有32 KB的代碼空間和32 KB數據空間,且沒有外部總線,這在一定程度上限制了其實現常見的圖像處理算法。
    CMOS攝像頭通過PPI和TWI接口與DSP連接,分別用于采集圖像和配置攝像頭;顯示拍攝到的灰度圖像的TFT屏通過SPORT接口與DSP連接;顯示QR碼識別結果的LCD屏通過SPI接口與DSP連接。

 


2 圖像采集與二值化
2.1 二值化

    QR碼存儲的信息均為二值信息,所以二值化是QR碼識別中必要的一步。本文采用最大類間方差法對圖像進行全局二值化[3]。該方法是一種自適應的閾值確定的方法,又叫大津法,簡稱OTSU。二值化即依據灰度特征將圖像分割為前景和背景兩類,OTSU法通過最大化前景與背景之間的方差選取最佳閾值。類間方差?滓b2(t)可表示為:

    為簡化描述,假設采集的二值圖像的寬和高均為448像素,具體時序可描述如下:
    (1)采集一幅158×158像素的低分辨率灰度圖像。利用OTSU法算出其閾值t*;
    (2)釋放低分辨率灰度圖像,分配大小為25 088 B的二值圖像內存,并開辟兩塊臨時內存A、B,大小均為448 B,分別用于臨時存儲灰度圖像中的一行;
    (3)將內存A中的每個字節與閾值t*進行比較,并將每8個像素拼成1 B存入二值圖像內存。與此同時,用DMA方式將一行圖像的448個像素點存入內存B;
    (4)與步驟(3)類似,將內存A中的字節二值化壓縮存入二值圖像中,同時將一行圖像的448個像素點存入內存B;
    (5)重復步驟(3)與步驟(4),直到圖像傳輸完畢;
    (6)釋放內存A、B。
    基于以上方法,本文設計的系統可采集448×448像素的二值圖像,圖像分辨率顯著提高,降低了QR碼的識別難度。
3 QR碼的定位與識別
3.1 定位

    QR碼定位通常使用傳統的圖像處理方法,如邊沿檢測、Hough變換、離散余弦變換[4]等,然而這些方法都需要較大的內存,無法適應小內存的場景。本文針對小內存平臺,利用QR碼位置探測圖形(Finder Pattern)的比例關系對QR碼進行搜索定位。QR碼的結構如圖3所示,在QR碼有3個相同的位置探測圖形,分別位于其左上角、右上角和左下角。每個位置探測圖形可以看作3個重疊的同心正方形組成,它們分別為7×7個深色模塊、5×5個淺色模塊、3×3個深色模塊。

    位置探測圖形的特征如圖4所示,其模塊的寬度比為1:1:3:1:1,且此特征具有縮放和旋轉不變性。符號中其他地方遇到類似圖形的可能性極小,因此可以在視場中迅速識別可能的QR碼符號[5]。通過識別QR碼的3個位置探測圖形,可以明確地確定視場中QR碼的位置和方向。具體過程可描述為:
    (1)對圖像進行多個方向的掃描,對于每個方向,都標記出模塊寬度比接近1:1:3:1:1的位置;
    (2)尋找在每個方向上都有標記的特征位置并求其交點。所求交點即可作為位置探測圖形的中心。
    該方法同樣可應用于定位QR碼的校正圖形(Alignment Pattern)。

位置探測圖形定位結果,其他網格線為采樣網格。
    對于位置探測圖形受到嚴重污染的情況,由于內存對于算法的限制,本文并沒有做相應處理,可能造成識別失敗。這種情況可通過適當增加系統內存解決,如采用BF52x系列處理器[8-9]。
    本文主要針對小內存平臺上的圖像處理情形,主要設計了圖像采集、QR碼定位算法。本文介紹的圖像采集方法也可運用在其他小內存的圖像處理系統中。實驗結果表明,本算法占用內存小,速度快,適應性較強,能適用于實際系統。
參考文獻
[1] ADSP-BF59x blackfin processor hardware reference(Revision 1.0)[Z].Analog Devices Inc,2011.
[2] ADSP-BF592 blackfin embedded processor data sheet(Rev A)[Z].Analog Devices Inc,2011.
[3] OTSU N.A threshold selecti on method from gray-level histograms[J].IEEE Trans.on Systems Man and Cybernetics,1979,9(1):62-66.
[4] 李璐.面向手機的二維條碼定位識別算法的研究[D].合肥:合肥工業大學,2007.
[5] 張民,鄭建立.基于符號特征的QR碼識別算法[J].計算機工程,2011,37(4):278-280.
[6] FALAS T,HOSSEIN K.Two-dimensional bar-code decoding with camera-equipped mobile phones[C].Fifth Annual IEEE  International Conference,White Plains,NY,2007.
[7] 國家質量技術監督局.GB/T18284-2000快速響應矩陣碼[S].2000.
[8] ADSP-BF52x blackfin processor hardware reference(Revision 1.0)[Z].Analog Devices Inc,2010.
[9] ADSP-BF522/ADSP-BF523/ADSP-BF524/ADSP-BF525/ADSP-BF526/ADSP-BF527 blackfin embedded processor data sheet(Rev C)[Z].Analog Devices Inc,2012.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 两个人日本免费完整版在线观看1| 亚洲国产精品综合久久网各| 老师开嫩苞在线观看| 国产成人精品久久综合| 2021国产麻豆剧传媒剧情最新| 大尺度视频网站久久久久久久久| 一色屋精品视频任你曰| 无码一区二区三区中文字幕| 久久精品国产9久久综合| 桃子视频在线观看高清免费视频| 亚洲欧美日韩中文久久| 男人j进女人j啪啪无遮挡动态| 又污又爽又黄的网站| 菠萝蜜国际通道麻豆三区| 国产夫妻在线视频| 国产极品粉嫩交性大片| 国产真实乱16部种子| 6080yy免费毛片一级新视觉| 在线免费不卡视频| a级毛片免费高清视频| 好男人影视社区www在线观看| 两个人看的视频播放www| 我要看WWW免费看插插视频| 久久久久黑人强伦姧人妻| 日韩免费视频一区二区| 久久综合九色综合欧美狠狠| 极品少妇被猛的白浆直喷白浆 | 男人都懂的网址在线看片| 国产视频福利一区| 91香蕉国产在线观看人员| 在线天堂中文www官网| aaaaaa精品视频在线观看| 天天干天天干天天插| jizz日本在线播放| 天天综合天天做天天综合| re99热久久这里只有精品| 好吊妞国产欧美日韩免费观看| 一本色道无码道在线观看| 岛国免费v片在线播放| 一本之道无吗一二三区| 婷婷国产成人精品视频|