王良田
摘 要:ARM手寫數(shù)字識別系統(tǒng)在嵌入式平臺以神經(jīng)網(wǎng)絡(luò)框架作對卷積神經(jīng)網(wǎng)絡(luò)進行有效的創(chuàng)建,一般情況下通過手寫數(shù)字數(shù)據(jù)集對神經(jīng)網(wǎng)絡(luò)進行訓練,以此達到有效的設(shè)計。此外,在對該系統(tǒng)設(shè)計過程中,需要對該系統(tǒng)的理論實施有效的分析,從而達到設(shè)計要求。由于嵌入式平臺的計算能力不高,可以輔助利用PC機資源對進行訓練,把訓練結(jié)果再導入ARM嵌入式平臺中,其中ARM處理器具有性能好、功率低以及功能強大等優(yōu)勢,從而在市場當中具有很大的占有率。本文通過對ARM手寫數(shù)字識別系統(tǒng)的理論分析,并對ARM手寫數(shù)字識別系統(tǒng)要點進行探究,從而能夠使達到自動識別手寫數(shù)字的作用,以此提出來幾點建議,僅供參考。
關(guān)鍵詞:ARM系統(tǒng);手寫數(shù)字識別系統(tǒng)
前言
在人們的生活當中,使用最廣泛的就是數(shù)字符號,然而對于手寫數(shù)字更是很好的應用在了考試以及賬單等諸多的生產(chǎn)生活當中。如果在生產(chǎn)生活當中,通過運用自動化手寫數(shù)字的識別,那么在很大程度上能夠有效的解決人工識別的效果。但是手寫數(shù)字識別系統(tǒng)在實際使用當中,存在著很多的技術(shù)難點和進度難點。在對ARM手寫數(shù)字識別系統(tǒng),進行設(shè)計的過程當中,通過采用計算機網(wǎng)絡(luò)作為識別算法,然后在通過結(jié)合攝像機采集圖像技術(shù),從而能夠達到自動識別手寫數(shù)字的作用。
一、ARM手寫數(shù)字識別系統(tǒng)的理論分析
(一)信息集
信息集,是一個能夠進行手寫數(shù)字模板的手寫數(shù)字信息集。這個信息集憑借具有80000個能夠用于訓練以及15000個能夠用于測試的測試集的示例。能夠?qū)γ恳粡埶夭牡?2x32個白色像素值構(gòu)成的矩陣,然而這些矩陣同時都對應著每一個標簽,也就是素材上面的符號。
(二)手寫數(shù)字進行區(qū)分
手寫數(shù)字識別,是一個非常繁瑣的系統(tǒng),在對其進行設(shè)計的過程當中,通過設(shè)計出穩(wěn)定的網(wǎng)絡(luò),然后輸入素材在目標分類上的最大概率,從而這樣就能夠?qū)崿F(xiàn)區(qū)分目的。信息集上的每一張照片是一張手寫的阿拉伯數(shù)字,這些數(shù)字表示0-9當中的一個數(shù)字。為了能夠準確的得到任意一個照片屬于某一個分類的得分值e,可以用具體的公式進行表達:
(1)
將公式(1)輸入到帶分析圖片x的數(shù)字i的類別的得分值ei當中,其中wi表示計算機網(wǎng)絡(luò)層當中的權(quán)重值,j表示給定照片x像素引用于像素求和,bi表示數(shù)字i雷的偏差值[1]。從而得到了得分值,這時候就能夠利用數(shù)學函數(shù)將得分值進行轉(zhuǎn)化成概率的大小pi其公式為:
Pi=Softmax(e) (2)
通過將數(shù)學函數(shù)計算得到的數(shù)據(jù)輸入到照片在每一個目標分類的概率值,如果全部的輸出概率集都是p。在其中找出最大的概率值P=max(p),這樣p就是所對贏得類型及時模型所屬的類別[2]。
二、開發(fā)平開結(jié)構(gòu)
設(shè)備終端是一個嵌入式系統(tǒng),它是運行系統(tǒng),而且也是一個應用軟件綜合體。本文設(shè)計的手寫數(shù)字識別系統(tǒng)需要能讓顯示系統(tǒng)對信息進行反饋,然后接受用戶的具體操作。ARM處理器通過對相應的程序邏輯進行處理,能夠?qū)崿F(xiàn)和相應的程序邏輯進行結(jié)合,其次,在對存儲參數(shù)和以往記錄進處理,能夠?qū)崿F(xiàn)對網(wǎng)口和PC聯(lián)機進行相應的調(diào)試以及測試。通過對該系統(tǒng)進行調(diào)試,能夠降低系統(tǒng)的開發(fā)難度,從而為相關(guān)設(shè)備的各個功能進行有效的管理。整個系統(tǒng)主要是以ARM芯片作為該系統(tǒng)的關(guān)鍵,通過把嵌入式操作系統(tǒng)安裝在硬件平臺上,能夠很好的屏蔽硬件結(jié)構(gòu)上的差異,這樣能夠讓軟件代碼的編寫和模塊進行反復的使用。同沒有安裝操作系統(tǒng)的硬件系統(tǒng)相比,其最大的長處就是能夠充分的利用這個平臺上已經(jīng)做好的函數(shù)數(shù)據(jù)庫以及其它模塊,而且在很大程度上能夠把很多瑣碎的硬件細節(jié)操作,通過系統(tǒng)進行完成,從而降低了人員工作的重復性,這樣能夠讓開發(fā)者把大量的時間放在具體的應用設(shè)計上,這樣能夠加快對ARM的手寫數(shù)字識別系統(tǒng)開發(fā)的速度[3]。
三、基于ARM的手寫數(shù)字識別系統(tǒng)的軟件及硬件設(shè)備
(一)系統(tǒng)硬件
本文對于硬件的開發(fā)主要是在三星硬件的平臺上進行的,硬件設(shè)備主要包括中央處理器、存儲器設(shè)備、外接按鍵以及USB接口等。
然而硬件系統(tǒng)主要以芯片作為關(guān)鍵,所配備的大容量存儲器能夠很好的滿足運行操作系統(tǒng)以及對各種圖像的處理程序的需要。隨著科學技術(shù)的不斷發(fā)展,電阻是觸摸顯示屏替代了PC上輸入設(shè)備的位置,在系統(tǒng)中被變成了鼠標應用程序的使用[4]。
液晶顯示屏是最常用的圖形輸出設(shè)備,在使用的過程中能夠直接向用戶展示圖形的界面。LCD顯示屏一般都是和幀緩存設(shè)備結(jié)合進行使用,這樣系統(tǒng)就能夠定時的把幀緩存中的內(nèi)容傳送到LCD顯示屏進行更換屏幕內(nèi)容。該系統(tǒng)內(nèi)部中具有LCD控制裝置,能夠好的支持STN和TFT等兩種類型的液晶顯示屏。LCD控制裝置能夠依據(jù)垂直和水平像素、刷新率和數(shù)據(jù)線大縣進行編程,能夠支持各種所需要的屏幕。文章通過選用640x320倍的像素的5.6英寸STN液晶顯示屏。該系統(tǒng)的LCD 控制裝置能夠直接用來輸送在幀緩存中的視頻信息以及產(chǎn)生的控制信號。該系統(tǒng)能夠很好的支持STN和TFT兩種類型的LCD以及觸摸顯示屏,而且還能和他們進行連接,這時就需要用接口班進行啟動LCD顯示屏,才能夠正常的使用[5]。
(二)人工神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)中,神經(jīng)元之間的連接方式能夠體現(xiàn)出神經(jīng)元之間的結(jié)構(gòu),它直接決定著神經(jīng)元之間的處理信息以及各個神經(jīng)元的性質(zhì)的能力。依據(jù)神經(jīng)元之間的連接方式,可以把神經(jīng)網(wǎng)絡(luò)分為前向神經(jīng)網(wǎng)絡(luò)以及反饋神經(jīng)網(wǎng)絡(luò),然而本文采用的網(wǎng)絡(luò)就是前向式神經(jīng)網(wǎng)絡(luò)的一種類型。反向傳播神經(jīng)網(wǎng)絡(luò)能夠?qū)Ψ蔷€性可微分函數(shù)進行鍛煉的多層網(wǎng)絡(luò),在人工神經(jīng)網(wǎng)絡(luò)中的應用中,大部分神經(jīng)網(wǎng)絡(luò)模型都可以使用前向式神經(jīng)網(wǎng)絡(luò)的形式,而且它也是前向神經(jīng)網(wǎng)絡(luò)的重要部分,從而體現(xiàn)出了人工神經(jīng)網(wǎng)絡(luò)最有用的部分。
四、基于ARM的手寫數(shù)字識別系統(tǒng)的實現(xiàn)
(一)基于BP神經(jīng)網(wǎng)絡(luò)的手寫數(shù)字識別
在進行手寫數(shù)字識別的過程當中,應該先獲取樣本,對圖像進行預處理獲得點陣圖像,在選取圖像特征之后,應該及時的把圖像特征輸入到神經(jīng)網(wǎng)絡(luò)中,經(jīng)過訓練就能夠獲得輸出,如果沒有獲得預期的期望效果忙活著計算錯誤,這時就可以及時的調(diào)整神經(jīng)網(wǎng)絡(luò)中的各個權(quán)值,一直到輸出滿意的期望為止。識別流程如圖1所示[6]。
(二)基于Matlab與Qt結(jié)合的手寫數(shù)字識別
通常來說,神經(jīng)網(wǎng)絡(luò)屬于特別復雜的算法,如若直接采用C/C++語言進行編程,雖然在運行的時候效率非常的高,但是卻很容易出現(xiàn)錯誤,一旦出現(xiàn)錯誤就很難進行修改。然而新的Matlab中附帶了C語言編程代碼,這樣從而為數(shù)學模式的快速應用打下了堅實的基礎(chǔ)。
Matlab數(shù)學軟件在使用的過程中,由于具有很強大的數(shù)學建模能力以及豐富的數(shù)據(jù)庫支持,目前已經(jīng)成算法研究、仿真技術(shù)以及工程應用等領(lǐng)域,從而成為了影響力很強的軟件,目前全世界大部分科學家以及工程師都采用Matlab進行進行研發(fā)。在傳統(tǒng)的算法中,相關(guān)的設(shè)計人員都是先在Matlab數(shù)學軟件環(huán)境中,對目標進行仿真建模,同時進行試驗測試。然后確定模型之后,在直接用手把Matlab數(shù)學軟件中的模型直接翻譯成硬件或者相關(guān)如軟件進行實現(xiàn),這樣不僅增加了工作人員的工作量,而且在使用的過程中,也很容易出現(xiàn)錯誤。隨著軟件技術(shù)的不斷進步,Matlab數(shù)學軟件能夠直接把仿真模型裝換成實際產(chǎn)品的技術(shù)手段。
五、結(jié)語
總之,通過對ARM手寫數(shù)字識別系統(tǒng)的構(gòu)建,已經(jīng)能夠進行手寫數(shù)字識別運用。以外,ARM手寫數(shù)字識別系統(tǒng)在使用過程中具有體積小、低功耗、低成本等特點,具有較好的應用效果,以此可有效體現(xiàn)出系統(tǒng)價值。除此之外,隨著有存在著一些弊端,但是,該系統(tǒng)在實際運行的過程中指令執(zhí)行速度快,并且尋址方式靈活,同時執(zhí)行效率比較高。所以該系統(tǒng)的改進是以后關(guān)注的重點。
參考文獻:
[1]陳巖, 李洋洋, 余樂, et al. 基于卷積神經(jīng)網(wǎng)絡(luò)的手寫體數(shù)字識別系統(tǒng)[J]. 微電子學與計算機, 2018(2):71-74.
[2]李斯凡, 高法欽. 基于卷積神經(jīng)網(wǎng)絡(luò)的手寫數(shù)字識別[J]. 浙江理工大學學報, 2017, 37(3):438-443.
[3]張紅, 馬靜. 基于卷積神經(jīng)網(wǎng)絡(luò)的手寫數(shù)字識別算法[J]. 電子技術(shù)與軟件工程, 2017(22):176-176.
[4]陳巖, 李洋洋, 余樂, et al. 基于卷積神經(jīng)網(wǎng)絡(luò)的手寫體數(shù)字識別系統(tǒng)[J]. 微電子學與計算機, 2018(2):71-74.
[5]陳玄, 朱榮, 王中元. 基于融合卷積神經(jīng)網(wǎng)絡(luò)模型的手寫數(shù)字識別[J]. 計算機工程, 2017, 43(11):187-192.
[6]劉文杰, 吳剛. 基于ARM9的手寫體數(shù)字識別技術(shù)設(shè)計與實現(xiàn)[J]. 計算機與數(shù)字工程, 2013, 41(9):1498-1500.