《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于SoPC的嵌入式文字識別系統設計
基于SoPC的嵌入式文字識別系統設計
來源:電子技術應用2011年第9期
李夢竹,潘 超,黃啟俊,常 勝
(武漢大學 物理科學與技術學院,湖北 武漢430072)
摘要: 設計了一種基于SoPC的嵌入式文字識別系統。在FPGA平臺下,基于SoPC框架搭建軟硬件協同系統,設計硬件電路完成文字圖像的采集和預處理,嵌入Linux系統,使用其下的識別引擎完成文字圖像的識別。采用Altera公司的SoPC builder構建系統框架,Quartus II完成硬件電路的設計,在宿主機Linux環境下完成了軟件部分的交叉編譯并嵌入到FPGA平臺。整體設計在DE2-70開發板上完成了系統驗證。
中圖分類號: TP391.1
文獻標識碼: A
文章編號: 0258-7998(2011)09-0015-03
An SoPC design of character recognition system
Li Mengzhu,Pan Chao,Huang Qijun,Chang Sheng
School of Physics and Technology, Wuhan University,Wuhan 430072,China
Abstract: This paper introduces a design of an embedded character recognition system based on SoPC, which is using hardware circuit to complete image collection and processing while using character recognition engine under Linux to implement character recognition on FPGA platform, and setting up the hardware and software co-working system based on SoPC. The whole design uses SoPC builder which is provided by Altera to complete SoPC design, and uses Quartus II to finish hardware development, and finishes software part by using cross-compile in host Linux environment which is embedded into FPGA. At last, softeware and hardware is downloaded in Altera DE2-70 development board to finish the fuction validation of the whole system.
Key words : character recognition;FPGA;SoPC;Linux


 計算機文字識別也被稱為光學文字識別[1]OCR(Optical Character Recognition),在智能計算機和辦公自動化領域有著極其重要的應用。文字識別的基本原理是通過諸如照相機、掃描儀等圖像輸入設備獲取文字圖片,經過圖像處理后使用光學模式判別等算法分析文字圖片,最后將判斷出的文字編碼儲存起來從而完成文字識別。
    文字識別設備對識別速度要求較高,因此圖像采集和預處理的速度十分關鍵。同時對識別率要求高,識別字體種類多,因此選用帶學習功能的軟件引擎非常重要。另外系統需要交互界面和大量外圍設備的驅動,因此需要引入操作系統以方便設計開發。
1 SoPC系統設計
    系統功能設計的整體方案如圖1所示。各部分功能介紹如下:

    (1)圖像采集功能,通過外接的攝像頭模塊完成圖像的采集;
    (2)由硬件模塊完成文字圖像預處理功能,能夠對采集的文字圖像進行傾斜糾正[2]、圖像分割[3]、二值化[4]等處理,保證系統的性能和速度,以提高后續的文字識別率;
    (3)文字圖像識別功能,能夠將文字圖像中的文字識別出來并保存在TXT中;
    (4)識別結果的存儲和發送功能,能夠將識別結果文件存入SD卡或U盤中,或者通過網絡發送給上位機;
    (5)交互界面功能:能夠通過LCD模塊或者外接的VGA設備等輸出設備以及鍵盤、觸摸屏或者鼠標等輸入設備與使用者交互。
    整個系統由一塊FPGA和攝像采集、輸入輸出等外圍設備組成。FPGA硬件模塊完成攝像采集控制和圖像預處理,CPU作為系統主控控制外設和硬件模塊的數據流。文字識別模塊和外圍設備驅動在Linux平臺上進行開發或移植。
    本文采用Altera Cyclone2系列的FPGA,通過Altera提供的SoPC技術,可以將Nios Ⅱ軟核處理器和外圍設備接口IP通過Avalon總線連接起來,并集成在一塊FPGA上。圖2是系統的SoPC設計。

2 系統硬件設計
    文字識別硬件設計主要包括文字圖像的采集控制和文字圖像的預處理。文字圖像的預處理又分為邊緣檢測、傾斜糾正、文字區域提取、二值化。硬件模塊總體設計圖如圖3所示。

 

 

    對于待識別的文字圖像,影響文字識別準確率的不僅僅是后端引擎的性能,更重要的是文字圖像的質量和實際使用的文字圖像,除了光照不均勻且有傾斜外,還會有不少干擾信息。因此,本設計選取傾斜糾正、文字圖像分割、二值化等預處理方法來減少干擾因素,保證后續文字識別的質量。本設計的處理方法概括如下:
    (1)圖像邊緣就是圖像中灰度發生急劇變化的地方。本設計采用一階導數的Sobel算子的邊緣檢測算法可以滿足設計的需要。本設計中將最后得到的梯度值簡化為水平方向梯度絕對值和垂直方向梯度絕對值之和。求出梯度后采用基本全局門限:當某像素點(x,y)的梯度值大于或等于設定的門限T時,規定該點的像素值為1,反之則為0。
    (2)文字圖像傾斜糾正包括傾斜角計算和圖像旋轉,即將拍攝中獲取的傾斜圖像根據傾斜角度進行旋轉,最后得到校正后的圖像。本設計采用基于Hough的變換來計算傾斜角。基本原理是通過找出圖像中通過最多點的直線,即為圖像的傾斜角。變換中,將二維圖像中的點通過極坐標系表示,而平面坐標系中一條直線上的所有點對應的極坐標系曲線交于極坐標系中唯一一點(ρ,θ),因此,只需要尋找極坐標系中最大值即可。
    (3)文字圖像的分割可以提取文字信息區域以減少背景等干擾,同時,由于圖像區域的減少,對于光照不均勻也有一定的改善。本設計根據文字圖像的具體特點設計分割方法,首先將經過傾斜糾正的文字圖像通過邊緣檢測算法得到邊緣檢測圖片;后通過逐行和逐列掃描確定行和列的閾值;接著對所有符合閾值的區域進行分析,相隔較近的區域進行聯通,從而確定最終的分割區域。最后根據分割區域對原圖進行圖像分割。
    (4)經過傾斜糾正和圖像分割后得到的文字圖像仍有光照不均勻和噪聲的影響,因此需要進行二值化處理。對圖像進行二值化不僅能提高文字識別的精度,對后端引擎的識別速度也有不少的幫助。考慮到實際拍攝的圖片光照不均勻的程度較高,使用全局或者混合二值化的效果都不理想,且考慮到硬件實現等因素,本設計采取局部閾值二值化。
3 系統軟件設計
    本設計軟件部分基于嵌入式Linux。首先在NiosⅡ處理器中植入嵌入式Linux;然后在Linux內核中配置外圍設備驅動并加入一些自定義的設備驅動;最后基于Linux移植或者開發交互界面、文字識別引擎等。另外,還需要移植bootloader,系統啟動后,bootloader將Linux內核搬到SDRAM中運行,從而實現系統開機自啟動的功能。
    整體流程是:首先將bootloader和Linux內核下載進入Flash,同時設定復位地址為Flash中內核bootloader的入口地址。系統啟動時先啟動bootloader,初始化外圍設備,并通過串口打印輸出信息,同時將Linux內核搬運到SDRAM進行解壓。Linux內核解壓完成后內核啟動。只是Linux初始化所有的外圍硬件設備,啟動nano-X圖形接口和nano-wm窗口管理器和基于FLTK的交互界面。交互界面上是各種的按鈕選擇,包括圖片瀏覽、圖像采集、文本瀏覽編輯、網絡連接及文字識別等應用程序的按鈕。當按鍵選擇各種功能后會進入相應的功能模塊。當程序運行完成后通過選擇返回按鈕再次進入到交互界面的按鍵選擇部分。
4 系統功能驗證
    將硬件信息配置進入FPGA,同時通過Flashprogrammer將bootloader和Linux下載到Flash。Linux內核啟動完成后,調用交互界面程序,系統可以通過鼠標鍵盤進行輸入操作,通過VGA輸出交互界面。此外,可通過串口對系統進行調試并看到打印出來的系統信息。
    本設計通過NiosⅡ控制圖像采集模塊,通過DE2-70開發板上的開關可以調節曝光,采集回的圖像通過NiosⅡ寫入SD卡,用來驗證圖像采集模塊的功能。開發板和攝像頭通過支架固定在文字識別區域上方。實際采集的效果滿足應用需求。
    由于受DE2-70開發板上SDRAM大小的限制,本設計Tesseract引擎的數據文件不能太大。因此先使用默認引擎進行英文的識別,然后用拍攝的幾幅文字圖像對引擎進行訓練;再使用經過訓練的引擎對圖像進行識別。最終的圖像識別結果存入SD卡中。文字識別的效果圖如圖4所示。

    圖4(a)是默認引擎的識別效果圖,圖4(b)是經過訓練的引擎識別效果圖。通過對比可以看出,未經訓練的識別效果錯誤率高達18.59%,而經過訓練的引擎識別效果明顯好于默認引擎識別的結果,錯誤率僅為7.7%。但是在一些圖像偽影和不連續處,兩個引擎都出現了不同程度的錯誤。其原因在于目前的文字識別理論還尚未成熟,難以達到百分之百的文字識別精確度。
    本文通過硬件電路完成文字圖像采集和文字圖像預處理,嵌入式軟件完成文字識別,實現了一種基于SoPC的嵌入式文字識別系統。此設計中構建了完整的SoPC系統,嵌入了Linux操作系統,通過軟硬件協同充分發揮各自的優點,達到了較好的文字識別效果。
參考文獻
[1] 盛蹇,劉偉.計算機文字識別的發展及應用[J].科技信息, 2008(13).
[2] 王希常,劉江.一種掃描文檔圖像的快速糾偏算法設計 [A].2010 Third International Conference on Education  Technology and Training,2010.
[3] 瞿燕慧.圖像分割常用算法優缺點探析[J].科教新報(教育科研),2010(3).
[4] GUPATA M R,JACOBSON M R,GARCIA E K.舊式文本的OCR二值化和圖像預處理研究[J].章晟(譯).圖像識別與自動化,2007(1).

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美+亚洲+精品+三区| 欧美日韩日韩| 亚洲网站在线观看| 亚洲精品免费观看| 亚洲激情影视| 欧美伊人久久久久久久久影院 | 欧美伊人影院| 欧美一区二区三区播放老司机 | 亚洲欧美日韩专区| 亚洲免费在线观看| 亚洲免费在线视频| 亚洲午夜久久久久久久久电影网| 日韩视频永久免费观看| 日韩图片一区| 99国产欧美久久久精品| 一区二区欧美国产| 妖精成人www高清在线观看| 99综合精品| 99国产精品久久久久久久久久| 亚洲激情视频在线播放| 亚洲国产免费| 亚洲人成在线播放| 99riav1国产精品视频| 99精品欧美一区二区蜜桃免费| 亚洲精品在线免费观看视频| 亚洲精一区二区三区| 野花国产精品入口| 亚洲欧美999| 欧美一区二区在线视频| 亚洲第一色中文字幕| 亚洲欧洲日产国产综合网| 亚洲精品免费看| 一区二区三区国产精华| 亚洲综合第一| 欧美在线免费看| 久久天堂av综合合色| 免费看亚洲片| 欧美日韩国产一区二区| 国产精品成人一区二区三区夜夜夜 | 欧美亚洲免费在线| 久久精品国产视频| 美女精品在线观看| 欧美视频国产精品| 国产精品试看| 国内精品久久久久久影视8| 亚洲国产成人久久综合| 一区二区欧美亚洲| 欧美一区二区在线看| 亚洲人成网站777色婷婷| 一区二区日本视频| 性xx色xx综合久久久xx| 久久综合一区二区三区| 欧美日韩mp4| 国产日产亚洲精品| 亚洲成人原创| 国产精品99久久99久久久二8 | 亚洲欧美日韩精品久久| 久久精品国产99精品国产亚洲性色| 久久青青草综合| 欧美精品午夜| 国产欧美日韩视频一区二区| 亚洲国产精品美女| 亚洲一区在线播放| 亚洲欧洲视频| 亚洲欧美一级二级三级| 免费观看30秒视频久久| 国产精品高潮呻吟| 亚洲成人在线观看视频| 国产精品99久久久久久人| 久久精品国产在热久久| 一个人看的www久久| 久久精品国内一区二区三区| 欧美精品啪啪| 国产日韩亚洲欧美精品| 亚洲麻豆av| 欧美专区在线播放| 亚洲一区免费看| 欧美刺激性大交免费视频| 国产精品日韩在线一区| 亚洲激情在线观看| 欧美在线观看一二区| 亚洲图片激情小说| 女人色偷偷aa久久天堂| 国产啪精品视频| 一本大道久久a久久综合婷婷| 亚洲国产精品久久人人爱蜜臀| 亚洲欧美日韩在线高清直播| 欧美精品在线极品| 精品成人a区在线观看| 亚洲性夜色噜噜噜7777| 日韩一区二区久久| 久久一区二区三区四区五区| 国产精品午夜国产小视频| 日韩视频免费观看高清在线视频 | 一区二区日韩伦理片| 91久久精品国产91久久| 欧美一区二区视频观看视频| 免播放器亚洲一区| 亚洲深爱激情| 9l视频自拍蝌蚪9l视频成人 | 久久国产精品第一页| 欧美性感一类影片在线播放 | 欧美一区二区三区在| 欧美视频一区在线| 亚洲欧洲精品一区二区三区| 亚洲成人资源网| 久久精品综合网| 国产精品人人做人人爽| 中国女人久久久| 在线视频欧美精品| 欧美精品在线播放| 亚洲黄色片网站| 亚洲精品乱码久久久久| 久久五月激情| 国内精品99| 欧美在线免费看| 久久国产精品一区二区三区四区 | 久久精品一区中文字幕| 久久成人综合视频| 国产精品一区二区三区观看| 亚洲综合导航| 性久久久久久久久| 国产精品视频午夜| 亚洲专区一二三| 性伦欧美刺激片在线观看| 国产精品你懂的| 亚洲欧美日韩高清| 欧美一区二区三区在线| 国产日韩一区二区三区| 亚久久调教视频| 久久亚洲国产成人| 韩国精品在线观看| 亚洲二区在线观看| 久久亚裔精品欧美| 亚洲国产成人久久| 99热精品在线观看| 欧美日韩一区二区免费视频| 99日韩精品| 性色av一区二区三区在线观看| 国产女主播一区二区| 欧美影视一区| 免费不卡亚洲欧美| 亚洲欧洲精品一区二区三区| 一区二区三区四区五区精品视频 | 欧美片第一页| 99精品久久久| 午夜精品亚洲一区二区三区嫩草| 国产九九精品视频| 久久精品99国产精品| 免费成人你懂的| 一本色道**综合亚洲精品蜜桃冫 | 亚洲天堂成人| 午夜在线电影亚洲一区| 国产亚洲欧美日韩精品| 亚洲国产婷婷香蕉久久久久久| 欧美不卡在线视频| 一本一本久久a久久精品综合麻豆| 亚洲欧美在线播放| 狠狠88综合久久久久综合网| 亚洲精品美女在线| 国产精品成人午夜| 久久国产精品毛片| 欧美精品免费观看二区| 亚洲主播在线观看| 麻豆精品视频在线观看| 99伊人成综合| 久久手机精品视频| 9l国产精品久久久久麻豆| 欧美在线视频播放| 亚洲国产成人一区| 亚洲欧美日韩电影| 在线播放一区| 亚洲无线观看| 国内偷自视频区视频综合| 99国产精品一区| 国产乱码精品一区二区三| 亚洲国产专区校园欧美| 欧美午夜美女看片| 亚洲国产精品va在线看黑人| 欧美色另类天堂2015| 久久黄色影院| 欧美午夜在线| 亚洲国产精品一区二区第四页av| 欧美视频久久| 亚洲国产精品一区制服丝袜| 欧美系列精品| 亚洲精品久久嫩草网站秘色 | 国产欧美一区二区三区另类精品| 亚洲黄色三级| 国产精品视频观看| 日韩午夜黄色| 国产一级揄自揄精品视频| 夜夜嗨av一区二区三区| 狠狠色香婷婷久久亚洲精品| 亚洲欧美成aⅴ人在线观看| 亚洲国产精品久久91精品| 欧美专区在线观看一区| 日韩午夜电影| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲欧美国产精品桃花|