宋昌統,黃力明,王輝
基于概率神經網絡的手寫體數字識別
宋昌統,黃力明,王輝
隨著手寫體數字識別技術的發展以及概率神經網絡的應用,基于概率神經網絡的手寫體數字識別技術,即PNN技術,是手寫體數字識別領域才剛剛開始的一個研究方向。本文把概率神經網絡技術應用在數字識別系統中,在特征提取技術的基礎上,設計了特征提取算法,通過手寫體數字識別流程,構造了概率神經網絡的分類器。最后在數據輸入、特征提取、模型訓練、測試等幾個部分,實現了手寫體數字識別,獲得了令人滿意的正確度。
神經網絡;手寫體數字識別;特征處理;預處理
光學字符識別(OCR)是一種模式識別技術,它起源于20世紀20年代。光學字符識別后來發展成為圖像處理以及模式識別領域一個重要的組成部分。手寫體數字屬于光學字符識別的范疇,但分類的識別比光學字符識別少得多,主要只需識別0-9共10個字符。近年來,隨著計算機技術和數字圖像處理技術的飛速發展,手寫體數字識別在電子商務、機器自動輸入等場合逐步獲得推廣。與其他字符的識別相比,手寫體數字識別的研究較為成熟,盡管就目前來說,機器自動識別的性能依然無法與人類的識別性能相比,但在許多自動錄入、識別領域已經發揮了重要的作用。
手寫體數字識別一直是字符識別中的一個研究熱點。數字識別可分為印刷體數字識別和手寫體數字識別。由于不同的人往往擁有不同的手寫筆跡,因此手寫體的識別難度遠高于印刷體數字識別。盡管手寫體數字識別僅需要區分10個類別,但由于其應用領域往往對識別率和可靠性具有較高的要求,因此這個領域一直是研究熱點之一,處于不斷的發展過程中。典型的應用領域有郵政編碼自動識別系統,稅表和銀行支票自動處理系統等。對于與金融相關的手寫數字自動識別,如支票、發票中的金額填寫部分,要求系統具有極高的識別準確率。近年來隨著模式識別技術的發展,新的分類器不斷提出,但依然沒有算法能夠達到完美的效果。支持向量機、人工神經網絡[1]等算法具有較強的非線性映射能力,在識別中往往能有較好的性能。識別時,手寫體數字一般是以圖像的形式提供的。原始圖像是通過光電掃描儀、電子傳真機等設備獲得的圖像信號。手寫體數字識別的完整處理過程[2]如圖1所示:

圖1 手寫數字識別流程
預處理階段。與大多數圖像處理算法類似,數字識別的第一步是對圖像進行預處理。由于獲得的原始圖像往往包含各種各樣的噪聲,為了防止造成干擾,第一步應對圖像進行去噪、濾波等處理。常見的噪聲有椒鹽噪聲、高斯噪聲等。此外,在數字識別中,使用的是二值圖像。因此,如果輸入的是灰度圖像,應首先選取恰當的閾值進行二值化,如果輸入的是彩色圖像,則還需要先進行灰度化。經過預處理后的圖片不僅能夠有效濾除噪聲,并且能夠將不同的大小、傾斜角度的字符進行歸一化到一個固定大小,對大量數據進行壓縮處理。預處理是整個識別過程中非常重要的一個環節,預處理進行得好,可以得到更好的識別效果,精度更高,性能更好。
特征提取階段。由于原始的字符圖像中本身的數據量較大,而且冗余信息較多,一般情況下不進行直接識別,即使進行識別,識別的準確率也會較低。一般的操作是進行提取有效特征數據,然后再進行識別。隨后需要將整張圖像分割為單個數字圖像,這也是數字識別的難點之一。粘連的圖像、連筆、打印機的隨機墨點都有可能造成分割不正確,后續的正確識別也就無從談起了。
分類識別階段。分類識別是數字字符識別中非常關鍵的步驟。分類識別過程是指分類器根據上一步特征提取階段所提取的圖像的關鍵特征[3],將采集得到的待識別的字符輸入分類器中,進行最后的字符分類識別的過程。得到了數字的單個圖像后還不能直接用于分類,圖像為二維信號,使用全部圖像數據進行直接分類是不可取的,必須將其表示為一個低維的向量。
2.1 特征提取算法
特征提取的目標是得出n個向量{x1,x2,x3,…,xn},用來表示原始圖像。該向量應滿足以下條件[4]:
當圖像類似時,得出的特征向量也比較類似;當圖像差距很大時,得出的特征向量也有可觀的距離;即該特征向量必須能夠代表這一圖像模式。
向量的長度n盡量小,盡量不包含對分類來說沒有作用的分量,以有效地進行分類并減小計算量。
特征提取的好壞會直接影響其識別的分類效果,進而影響識別率,因此特征選擇是模式識別的關鍵。在本例中,采取了結構特征與統計特征相結合的方式,共抽取了14個特征。其中,結構特征有8個。包括豎直中線交點數、豎直1/4處交點數、豎直3/4交點數、水平中線交點數、水平1/3處交點數、水平2/3處交點數及主對角線與次對角線交點數。其中,豎直1/4處交點數是指,在圖像寬的1/4處沿著豎直方向繪制一條直線,然后計算圖中等于1的像素與該直線的交點個數。數字8的結構特征提取模式如圖2所示:

圖2 水平和垂直結構特征圖3對角線結構特征
統計圖2中每條直線與數字的交點個數,可以得到6維結構特征。此外,還要統計兩條對角線與數字的交點,共計8維結構特征向量。
2.2 構造分類器----概率神經網絡
概率神經網絡屬于徑向基神經網絡的一種[5],特別適用于分類問題。在本次實驗中,構造的概率神經網絡結構如圖4所示:

圖4 概率神經網絡
網絡的第一層為輸入層,神經元節點數與輸入向量維數相同,因此包含14個神經元。第二層為徑向基層,神經元節點數等于樣本個數1000。第三層為隱含層,神經元節點個數為分類的類別數,因此等于10。輸出層只包含一個神經元,對應分類的類別。在MATLAB的工具箱函數newpnn中,輸出的類別是以向量的形式給出的。例如共有10個類別,則第4類的向量表示形式為[0,0,0,1,0,0,0,0,0,0]2。
概率神經網絡的徑向基層采用了高斯函數作為傳遞函數,每個徑向基層神經元對應一個訓練樣本。輸入的新樣本與每個神經元的計算,相當于求出新樣本屬于該神經元對應樣本的概率。徑向基層中的同類神經元輸入到隱含層神經元中,得出新樣本屬于某一類別的概率。最終,網絡將概率值最大的那個類別作為判定類別輸出。
手寫體數字放置在1000張64*64二值圖像中。通過將所有圖片數據讀入,做一個簡單的中值濾波,然后對每一幅圖像提取特征向量,最后通過概率神經網絡建模,對數據實現分類。將訓練數據本身輸入到網絡中,分類正確率可達100%,表明該特征提取的方法所得的特征向量能有效地表示圖像,使得不同類型的圖像能夠被區分出來,不存在不同類型數據樣本的交錯重疊現象[6]。
計算流程包含數據輸入、特征提取、模型訓練、測試等幾個部分。
(1)數據輸入。將1000張圖像放在dig_pic子目錄中,其中數字i的第j張圖像文件名為i_j.bmp,j為三位寬度的整數。在MATLAB中定義函數I=getPicData(),用于讀取dig_pic目錄中的所有圖像,并保存于I中,I為64*64*1000數組。輸入數據主要代碼如圖5所示:

圖5 數據輸入
(2)特征提取。進行特征提取前進行去噪處理。特征提取的函數為[Feature,bmp,flag]=getFeature(A),該函數接受一個64*64二值矩陣輸入,返回的Feature為長度為14的特征向量,bmp為圖像中的數字部分,flag為表示寬高比的變量。具體內容如圖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
江蘇省現代教育研究課題(2012R22170);鎮江高等專科學校科研基金項目(GZ2015SJ104)
宋昌統(1980-),男,連云港人,鎮江高等專科學院,碩士,講師,研究方向:語義Web、分布式虛擬現實,鎮江 212003
黃力明(1956-),男,溧陽人,鎮江高等專科學院,教授,研究方向:智能優化算法,數字圖像處理等,鎮江 212003
王 輝(1980-),女,漢族,鎮江人,鎮江高等專科學院,碩士,講師,研究方向:控制系統,數據挖掘,鎮江 212003