劉琪+李鑫
摘要:基于Android環(huán)境開發(fā),介紹了OCR圖片獲取、識別及文件管理技術(shù),闡述OCR文字識別app在手機(jī)平臺上的優(yōu)越性。設(shè)計(jì)主要分為兩大系統(tǒng):圖片識別和文件管理。主要從圖片的灰度化處理、二值化處理、外部接口采用百度OCR這3個各方面進(jìn)行研究,經(jīng)過對系統(tǒng)軟件功能的測試,最終完成了OCR識圖取字的的功能。
關(guān)鍵詞:Andriod;OCR;灰度化處理;二值化處理;外部接口
中圖分類號:TP317.4 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2017)07-0229-01
(OpticalCharacterRecognition,OCR)指電子設(shè)備利用文字識別將形狀翻譯成計(jì)算機(jī)文字的過程。Android是Google公司于2007年l1月5日推出全新軟件平臺. OCR識圖取字app,平臺的開放性、平等性等優(yōu)點(diǎn),OCR圖片文字識別技術(shù),避免繁瑣輸入\存儲操作;真正解決數(shù)據(jù)快速有效記憶的效果。
1 系統(tǒng)需求與設(shè)計(jì)
1.1 需求分析
制作OCR文字識別app,中英文在線識別或離線識別分享至qq、微博功能。
1.2 功能模塊設(shè)計(jì)
兩個子系統(tǒng):圖片識別、文件管理;6個子模塊:圖片獲?。芴幚恚茏R別,I/O操作,文件本地管理。
2 OCR文字識別原理與分析
2.1 基于Android平臺的OCR相機(jī)
從10%增至50%以上,成為智能手機(jī)OS之一。
2.2 圖片處理
2.2.1 圖片灰度化處理
彩色圖像轉(zhuǎn)化灰度過程為灰度化處理。其中R、G、B三個取值范圍:0~255,像素顏色有16777216(256*256*256)種可能。通過MATLAB分析:
方法一:像素的RGB三個分量求均值,存于對應(yīng)的矩陣,構(gòu)建灰度圖;
方法二:轉(zhuǎn)化為YUV顏色模型,Y=0.3R+0.59G+0.11B。構(gòu)建灰度圖>> figure;>> imshow(I);%
2.2.2 圖片二值化處理
方法一:值小于127像素值設(shè)為0(黑色),大于等于127為255(白色),速度快。缺點(diǎn)閾值為127具有的局限性.小于127則變?yōu)?,否則變?yōu)?55,建二值圖>> figure;>> imshow(I);%
方法二:值大于K值設(shè)為255(白色),值小于等于K像素設(shè)為0(黑色)。閾值選取精度更高。若平均值為閾值會導(dǎo)致部分像素丟失。>> Sum=0;%定義變量>> K=Sum/533/294;%求得平均灰度值K,小于K則變?yōu)?;
方法三:直方圖在閾值取值在兩個峰之間的峰谷最低處,更加精準(zhǔn)。
2.3 圖片識別
開放OCR接口,云脈文檔識別接口。 圖片離線識別:提供的tesseract-android-tools,編譯平臺Tesseract,jar。
(1)選擇jTessBoxEditor。(2)樣本越多,效果越好。(3)運(yùn)行后生成num.font.exp0,.tif文件。(4)命名為num.font.exp0.box,Tessercat識別文字。(5)用jTessBoxEditor,手動修稿。(6)定義特征文件。tif和box文件名,應(yīng)在文件中寫入“font 0 0 0 0 0 ”。(7)創(chuàng)建一個批處理文件,最終生成的語言文件。
3 系統(tǒng)測試
3.1 測試環(huán)境
硬件環(huán)境 :Android智能機(jī),處理器:CPU頻率在1.7GHz以上,內(nèi)存2GB外存8GB攝像頭數(shù)量>=1軟件環(huán)境軟件:Android 4.1以上版本。
3.2 系統(tǒng)功能測試
(1)打開軟件得到待測試圖片,點(diǎn)擊“取圖”按鈕,沒有取圖就直接識別,(2)選擇識別方式,選擇在線識別,不用確定是中文還是英文。(3)在線識別功能測試分別對系統(tǒng)進(jìn)行測試。無網(wǎng)絡(luò):請求超時,開關(guān)掉往復(fù):請求超時。(4)離線識別功能測試一種是普通預(yù)處理,另一種是“二值化處理”,效果上差異。離線識別時,語言類型與所選的翻譯類型不統(tǒng)一,出現(xiàn)亂碼。
4 結(jié)語
OCR軟件不受地域、空間限制,準(zhǔn)確、高效。便利生活。離線測試模塊仍存在缺陷,中文英文文字混合的圖片,識別率不高,出現(xiàn)亂碼。隨著研究不斷深入,對此模塊進(jìn)行針對性的改進(jìn)。
參考文獻(xiàn)
[1]Kukich K. Techniques for automatically correcting words in text. ACM Computing Surveys,1992,24(4):377-438.
[2]Peterson James L. Computer programs for detecting and correcting spelling errors. Communications of the ACM,1980,23(12): 676-687.
[3]Hisao N, Kazuhiro K, Yasuham S. Post processing for character recognition using keyword information//Proceedings of the IAPR Workshop on Machine Vision Applications. Tokyo, Japan, 1992: 7-9.
[4]Liu L M, Babad Y M, Sun W, Chan K K. Adaptive post processing of OCR text via knowledge acquisition//Proceedings of the 19th Annual Conference on Computer Science. New York, USA, 1991: 558-569.
[5]Wang Q F, Yin F, Liu C L. Handwritten Chinese text recognition by integrating multiple contexts. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012,34(8):1469-1481.endprint