基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)

基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)

ID:5256929

大?。?6.50 KB

頁數(shù):5頁

時間:2017-12-07

基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)_第1頁
基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)_第2頁
基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)_第3頁
基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)_第4頁
基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)_第5頁
資源描述:

《基于android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、基于Android二維碼掃描系統(tǒng)設(shè)計和實現(xiàn)  摘要:基于信息化水平的提高和二維碼應(yīng)用的飛速發(fā)展,本文對二維碼的解碼過程進行了討論,并在Android系統(tǒng)上設(shè)計開發(fā)了一套二維碼掃描系統(tǒng)。對基于智能手機的二維碼掃描識別技術(shù)提供了思路和解決方案,具有一定的參考價值。關(guān)鍵詞:Android二維碼中圖分類號:TP311文獻標識碼:A文章編號:1007-9416(2013)12-0151-011引言隨著智能手機的普及和信息化水平的提高,二維碼在我國已經(jīng)為人們廣泛的認識和接受,在美國和日本等發(fā)達國家,二維碼被應(yīng)用于物

2、流、電子憑證及工業(yè)管理等諸多領(lǐng)域??梢哉f,二維碼作為一種全新的信息存儲、傳遞和識別技術(shù),擁有廣泛的發(fā)展前景。但怎樣快速高效的解析出二維碼數(shù)據(jù)是其中的關(guān)鍵點,本文著重討論了二維碼解析的核心步驟,并基于目前市場上占有率和使用率最高的Android系統(tǒng),設(shè)計并開發(fā)了二維碼掃描系統(tǒng),具有一定的應(yīng)用價值。2系統(tǒng)設(shè)計與實現(xiàn)2.1Android開發(fā)簡介5Android是一種基于Linux的開放源代碼的操作系統(tǒng),主要使用于智能手機和平板電腦等移動設(shè)備上。Android系統(tǒng)采用分層的架構(gòu),分為應(yīng)用程序?qū)?、?yīng)用程序框架層、

3、系統(tǒng)運行庫層和Linux內(nèi)核層。Android開發(fā)中最基本的四大組件分為為Activity、Service服務(wù)、ContentProvider內(nèi)容提供者及BroadcastReceiver廣播接收器。2.2二維碼解碼分析二維碼是用某種特定的幾何圖形按一定的規(guī)律在平面上分布的黑白相間的圖形記錄數(shù)據(jù)符號信息的?;趫D像處理的二維碼解碼算法大體上分為五個步驟:圖像預(yù)處理、定位與校正、讀取數(shù)據(jù)、糾錯以及譯碼。本系統(tǒng)設(shè)計時借助了Zxing開源類庫,ZXing是Google提供的一個開源Java類庫用于解析多種格式

4、的1D/2D條形碼,能夠?qū)R、DataMatrix二維碼以及條形碼進行解碼。在開發(fā)程序時,可以借助于Zxing里提供的類庫,調(diào)用適當?shù)哪K或函數(shù),開發(fā)出屬于自己特定應(yīng)用的二維碼解碼軟件。2.3系統(tǒng)設(shè)計與實現(xiàn)本系統(tǒng)基于Android系統(tǒng)設(shè)計并開發(fā)。首先新建立工程,并從Zxing官方網(wǎng)站下載最新的解碼核心類庫,導(dǎo)入到新建的工程文件中。5本系統(tǒng)主要函數(shù)類包括:CaptureActivity:主類,程序的入口;PreviewCallback:攝像頭回調(diào)類;PlanarYUVLuminanceSource類:用

5、于原始數(shù)據(jù)的轉(zhuǎn)換;AutoFocusCallback:自動對焦。CameraManager:攝像頭管理類,用于攝像頭的打開和關(guān)閉;DecodeHandler:數(shù)據(jù)傳輸中樞;DecodeFormatManager:配置解碼格式類;CaptureActivityHandler:用于解碼成功與否的數(shù)據(jù)傳輸中介;ViewfinderView:掃描框。本系統(tǒng)界面設(shè)計主要采用了Android布局文件中的Framelayout、Linearlayout組件,并自定義了ViewfinderView類用來布局掃碼的掃描框

6、。掃碼界面設(shè)計思路是整個界面由外邊半透明的部分和中間全透明部分組合而成,半透明部分由四個矩形組成,調(diào)用canvas.drawRect()函數(shù)繪制而成,canvas函數(shù)能夠?qū)崿F(xiàn)在界面上自由繪制自己想繪制的圖形,其中中間的全透明部分也有四個矩形組成,只不過每個矩形都很窄,為兩個像素寬,看著就像一條直線。整個界面如圖2所示。系統(tǒng)實施流程為首先啟用CaptureActivity,用于啟動攝像頭CameraManager類對圖像進行捕獲,然后利用CaptureActivityHandler類對圖像進行解碼處理,負

7、責(zé)調(diào)用另外的線程進行解碼,其次利用DecodeHander類對數(shù)據(jù)進行處理和傳送,最后在handleDecode中得到并查看二維碼中的原始數(shù)據(jù)。二維碼譯碼過程如圖1所示,系統(tǒng)掃碼界面及掃碼結(jié)果如圖2所示。53測試根據(jù)實際需要,本系統(tǒng)選取了高低兩款不同配置的智能手機進行測試工作。一款為低端配置的摩托羅拉ME525(800MHZ的TIOMA3610處理器、PowerVRSGX530顯卡和512MBRAM空間),另一款為高配置的三星galaxyS4(四核1.9GHz的高通驍龍600處理器、SGX544MP3顯

8、卡和2GBRAM空間)。使用這兩款機器對三種不同規(guī)格的二維碼進行了50次測試,測試結(jié)果如表1所示。從測試結(jié)果來看,本系統(tǒng)掃碼時間和識別率均能達到較好水平。4結(jié)語本文對二維碼的解碼進行了討論,并基于Android系統(tǒng)設(shè)計并開發(fā)了一套掃碼系統(tǒng),良好的運行效果及測試結(jié)論證明了基于Android系統(tǒng)的二維碼掃碼系統(tǒng)的可行性及技術(shù)的成熟性,具有一定的應(yīng)用價值。參考文獻[1]曾健平,邵艷潔.Android系統(tǒng)架構(gòu)及應(yīng)用程序開發(fā)研究[J].微計算機信息,

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。