宋昌統(tǒng),黃力明,王輝
基于概率神經(jīng)網(wǎng)絡的手寫體數(shù)字識別
宋昌統(tǒng),黃力明,王輝
隨著手寫體數(shù)字識別技術(shù)的發(fā)展以及概率神經(jīng)網(wǎng)絡的應用,基于概率神經(jīng)網(wǎng)絡的手寫體數(shù)字識別技術(shù),即PNN技術(shù),是手寫體數(shù)字識別領(lǐng)域才剛剛開始的一個研究方向。本文把概率神經(jīng)網(wǎng)絡技術(shù)應用在數(shù)字識別系統(tǒng)中,在特征提取技術(shù)的基礎上,設計了特征提取算法,通過手寫體數(shù)字識別流程,構(gòu)造了概率神經(jīng)網(wǎng)絡的分類器。最后在數(shù)據(jù)輸入、特征提取、模型訓練、測試等幾個部分,實現(xiàn)了手寫體數(shù)字識別,獲得了令人滿意的正確度。
神經(jīng)網(wǎng)絡;手寫體數(shù)字識別;特征處理;預處理
光學字符識別(OCR)是一種模式識別技術(shù),它起源于20世紀20年代。光學字符識別后來發(fā)展成為圖像處理以及模式識別領(lǐng)域一個重要的組成部分。手寫體數(shù)字屬于光學字符識別的范疇,但分類的識別比光學字符識別少得多,主要只需識別0-9共10個字符。近年來,隨著計算機技術(shù)和數(shù)字圖像處理技術(shù)的飛速發(fā)展,手寫體數(shù)字識別在電子商務、機器自動輸入等場合逐步獲得推廣。與其他字符的識別相比,手寫體數(shù)字識別的研究較為成熟,盡管就目前來說,機器自動識別的性能依然無法與人類的識別性能相比,但在許多自動錄入、識別領(lǐng)域已經(jīng)發(fā)揮了重要的作用。
手寫體數(shù)字識別一直是字符識別中的一個研究熱點。數(shù)字識別可分為印刷體數(shù)字識別和手寫體數(shù)字識別。由于不同的人往往擁有不同的手寫筆跡,因此手寫體的識別難度遠高于印刷體數(shù)字識別。盡管手寫體數(shù)字識別僅需要區(qū)分10個類別,但由于其應用領(lǐng)域往往對識別率和可靠性具有較高的要求,因此這個領(lǐng)域一直是研究熱點之一,處于不斷的發(fā)展過程中。典型的應用領(lǐng)域有郵政編碼自動識別系統(tǒng),稅表和銀行支票自動處理系統(tǒng)等。對于與金融相關(guān)的手寫數(shù)字自動識別,如支票、發(fā)票中的金額填寫部分,要求系統(tǒng)具有極高的識別準確率。近年來隨著模式識別技術(shù)的發(fā)展,新的分類器不斷提出,但依然沒有算法能夠達到完美的效果。支持向量機、人工神經(jīng)網(wǎng)絡[1]等算法具有較強的非線性映射能力,在識別中往往能有較好的性能。識別時,手寫體數(shù)字一般是以圖像的形式提供的。原始圖像是通過光電掃描儀、電子傳真機等設備獲得的圖像信號。手寫體數(shù)字識別的完整處理過程[2]如圖1所示:
圖1 手寫數(shù)字識別流程
預處理階段。與大多數(shù)圖像處理算法類似,數(shù)字識別的第一步是對圖像進行預處理。由于獲得的原始圖像往往包含各種各樣的噪聲,為了防止造成干擾,第一步應對圖像進行去噪、濾波等處理。常見的噪聲有椒鹽噪聲、高斯噪聲等。此外,在數(shù)字識別中,使用的是二值圖像。因此,如果輸入的是灰度圖像,應首先選取恰當?shù)拈撝颠M行二值化,如果輸入的是彩色圖像,則還需要先進行灰度化。經(jīng)過預處理后的圖片不僅能夠有效濾除噪聲,并且能夠?qū)⒉煌拇笮?、傾斜角度的字符進行歸一化到一個固定大小,對大量數(shù)據(jù)進行壓縮處理。預處理是整個識別過程中非常重要的一個環(huán)節(jié),預處理進行得好,可以得到更好的識別效果,精度更高,性能更好。
特征提取階段。由于原始的字符圖像中本身的數(shù)據(jù)量較大,而且冗余信息較多,一般情況下不進行直接識別,即使進行識別,識別的準確率也會較低。一般的操作是進行提取有效特征數(shù)據(jù),然后再進行識別。隨后需要將整張圖像分割為單個數(shù)字圖像,這也是數(shù)字識別的難點之一。粘連的圖像、連筆、打印機的隨機墨點都有可能造成分割不正確,后續(xù)的正確識別也就無從談起了。
分類識別階段。分類識別是數(shù)字字符識別中非常關(guān)鍵的步驟。分類識別過程是指分類器根據(jù)上一步特征提取階段所提取的圖像的關(guān)鍵特征[3],將采集得到的待識別的字符輸入分類器中,進行最后的字符分類識別的過程。得到了數(shù)字的單個圖像后還不能直接用于分類,圖像為二維信號,使用全部圖像數(shù)據(jù)進行直接分類是不可取的,必須將其表示為一個低維的向量。
2.1 特征提取算法
特征提取的目標是得出n個向量{x1,x2,x3,…,xn},用來表示原始圖像。該向量應滿足以下條件[4]:
當圖像類似時,得出的特征向量也比較類似;當圖像差距很大時,得出的特征向量也有可觀的距離;即該特征向量必須能夠代表這一圖像模式。
向量的長度n盡量小,盡量不包含對分類來說沒有作用的分量,以有效地進行分類并減小計算量。
特征提取的好壞會直接影響其識別的分類效果,進而影響識別率,因此特征選擇是模式識別的關(guān)鍵。在本例中,采取了結(jié)構(gòu)特征與統(tǒng)計特征相結(jié)合的方式,共抽取了14個特征。其中,結(jié)構(gòu)特征有8個。包括豎直中線交點數(shù)、豎直1/4處交點數(shù)、豎直3/4交點數(shù)、水平中線交點數(shù)、水平1/3處交點數(shù)、水平2/3處交點數(shù)及主對角線與次對角線交點數(shù)。其中,豎直1/4處交點數(shù)是指,在圖像寬的1/4處沿著豎直方向繪制一條直線,然后計算圖中等于1的像素與該直線的交點個數(shù)。數(shù)字8的結(jié)構(gòu)特征提取模式如圖2所示:
圖2 水平和垂直結(jié)構(gòu)特征圖3對角線結(jié)構(gòu)特征
統(tǒng)計圖2中每條直線與數(shù)字的交點個數(shù),可以得到6維結(jié)構(gòu)特征。此外,還要統(tǒng)計兩條對角線與數(shù)字的交點,共計8維結(jié)構(gòu)特征向量。
2.2 構(gòu)造分類器----概率神經(jīng)網(wǎng)絡
概率神經(jīng)網(wǎng)絡屬于徑向基神經(jīng)網(wǎng)絡的一種[5],特別適用于分類問題。在本次實驗中,構(gòu)造的概率神經(jīng)網(wǎng)絡結(jié)構(gòu)如圖4所示:
圖4 概率神經(jīng)網(wǎng)絡
網(wǎng)絡的第一層為輸入層,神經(jīng)元節(jié)點數(shù)與輸入向量維數(shù)相同,因此包含14個神經(jīng)元。第二層為徑向基層,神經(jīng)元節(jié)點數(shù)等于樣本個數(shù)1000。第三層為隱含層,神經(jīng)元節(jié)點個數(shù)為分類的類別數(shù),因此等于10。輸出層只包含一個神經(jīng)元,對應分類的類別。在MATLAB的工具箱函數(shù)newpnn中,輸出的類別是以向量的形式給出的。例如共有10個類別,則第4類的向量表示形式為[0,0,0,1,0,0,0,0,0,0]2。
概率神經(jīng)網(wǎng)絡的徑向基層采用了高斯函數(shù)作為傳遞函數(shù),每個徑向基層神經(jīng)元對應一個訓練樣本。輸入的新樣本與每個神經(jīng)元的計算,相當于求出新樣本屬于該神經(jīng)元對應樣本的概率。徑向基層中的同類神經(jīng)元輸入到隱含層神經(jīng)元中,得出新樣本屬于某一類別的概率。最終,網(wǎng)絡將概率值最大的那個類別作為判定類別輸出。
手寫體數(shù)字放置在1000張64*64二值圖像中。通過將所有圖片數(shù)據(jù)讀入,做一個簡單的中值濾波,然后對每一幅圖像提取特征向量,最后通過概率神經(jīng)網(wǎng)絡建模,對數(shù)據(jù)實現(xiàn)分類。將訓練數(shù)據(jù)本身輸入到網(wǎng)絡中,分類正確率可達100%,表明該特征提取的方法所得的特征向量能有效地表示圖像,使得不同類型的圖像能夠被區(qū)分出來,不存在不同類型數(shù)據(jù)樣本的交錯重疊現(xiàn)象[6]。
計算流程包含數(shù)據(jù)輸入、特征提取、模型訓練、測試等幾個部分。
(1)數(shù)據(jù)輸入。將1000張圖像放在dig_pic子目錄中,其中數(shù)字i的第j張圖像文件名為i_j.bmp,j為三位寬度的整數(shù)。在MATLAB中定義函數(shù)I=getPicData(),用于讀取dig_pic目錄中的所有圖像,并保存于I中,I為64*64*1000數(shù)組。輸入數(shù)據(jù)主要代碼如圖5所示:
圖5 數(shù)據(jù)輸入
(2)特征提取。進行特征提取前進行去噪處理。特征提取的函數(shù)為[Feature,bmp,flag]=getFeature(A),該函數(shù)接受一個64*64二值矩陣輸入,返回的Feature為長度為14的特征向量,bmp為圖像中的數(shù)字部分,flag為表示寬高比的變量。具體內(nèi)容如圖6所示:
Handwritten Digit Recognition Based on Probabilistic Neural Network
Song Changtong, Huang Liming, Wang Hui
(Electron and Information Department , Zhenjiang College, Zhenjiang 212003, China)
With the development of digit recognition technology and neural network, handwritten digit recognition technology based on probabilistic neural network, namely, PNN technology, is just an inchoate research direction in the field of handwritten digit recognition. In this paper, the probabilistic neural network technology is applied in the digital identification system. Based on the technology of feature extraction, it designs the feature extraction algorithm. It constructs the probabilistic neural network classifier through handwritten numeral recognition process. Finally, it achieves the handwritten numeral recognition in the parts of data input, feature extraction, model training, testing and others, and it obtains a satisfactory degree of accuracy.
Neural network; Handwritten digit Recognition; Feature processing; Preprocess
TP393
A
1007-757X(2016)10-0014-02
江蘇省現(xiàn)代教育研究課題(2012R22170);鎮(zhèn)江高等??茖W??蒲谢痦椖浚℅Z2015SJ104)
宋昌統(tǒng)(1980-),男,連云港人,鎮(zhèn)江高等??茖W院,碩士,講師,研究方向:語義Web、分布式虛擬現(xiàn)實,鎮(zhèn)江 212003
黃力明(1956-),男,溧陽人,鎮(zhèn)江高等??茖W院,教授,研究方向:智能優(yōu)化算法,數(shù)字圖像處理等,鎮(zhèn)江 212003
王 輝(1980-),女,漢族,鎮(zhèn)江人,鎮(zhèn)江高等??茖W院,碩士,講師,研究方向:控制系統(tǒng),數(shù)據(jù)挖掘,鎮(zhèn)江 212003