1. 程式人生 > >聯機與離線 手寫漢字識別

聯機與離線 手寫漢字識別

1. 知識瞭解

1.1 漢字識別的兩類主流方法
  • Online recognition: 聯機識別,基於筆畫軌跡
  • Offline recognition: 離線識別, 基於影象
    ( 聯機手寫漢字識別所處理的手寫文字是書寫者通過物理裝置 (如數字筆、 數字手寫板或者觸控式螢幕) 線上書寫獲取的文字訊號, 書寫的軌跡通過定時取樣即時輸入到計算機中. 而離線手寫文字識別所處理的手寫文字是通過掃描器或攝像頭等影象捕捉裝置採集到的手寫文字二維圖片。)
1.2 樣本——來源於同一個人的書寫

a:online character samples
b:offline character samples
聯機識別能得到筆畫的順序、點的座標等動態資訊 ,而離線識別則無法得到這些動態資訊,
這也導致在同種方法下,一般來說離線識別的準確率小於聯機識別。
也就是說離線手寫文字識別比聯機手寫文字識別更加困難

在這裡插入圖片描述
在這裡插入圖片描述

1.3 後文方法所用的資料庫

訓練資料庫來源於CASIA
測試資料庫來源於ICDAR競賽

在這裡插入圖片描述
1.4 傳統的手寫中文單字識別系統(主要有三部分)

  • 資料預處理:樣本歸一化、平滑去噪、整形變換、偽樣本生成、新增虛擬筆畫(對聯機資料)等。
  • 特徵提取:結構特徵,主要對漢字結構、 筆畫或部件進行分析來提取 統計特徵,例如方向特徵,對離線HCCR而言,Gabor特徵及Gradient 特徵是目前比較好的兩種方向特徵提取方法。對聯機 HCCR 而言,8方向特徵是目前最有效的特徵之一。
  • 分類識別:最常用的模型包括改進的二次判決函式(MQDF)、支援向量機(SVM)、隱馬爾科夫模型(HMM)、鑑別學習二次判決函式(DLQDF) 和 學習向量量化(LVQ)等。
  • 注:對手寫字元而言, 目前最好的特徵基本上都是統計特徵

2. 離線手寫漢字識別

2.1 離線手寫識別——方法比較

在這裡插入圖片描述

  • 離線方法的比較:傳統的方法與人工識別有較大的差距。通過三場比賽(圖中紅框部分),識別準確率逐漸提高。。第八行的方法首次超越了人類識別的準確率。而且通過對10個模型的整合,精度進一步提高到96.74%(第10行)。富士通團隊通過使用適當的樣本生成(區域性和全域性失真)、多監督訓練和多模型整合進一步改進了他們的系統:單個網路(第11行)的準確率達到96.58%,5個網路的綜合,準確率提高到96.79%(第12行),是除論文方法外離線HCCR最好的結果。
2.2 Gabor-GoogLeNet
  • 19層網路
    在這裡插入圖片描述
  • 利用Gabor進行特徵提取,獲取8個方向的Gabor特徵圖;
  • 將8個Gabor特徵對映新增到輸入層和原始影象中,從而構造N×N×9的輸入層陣列(N×N表示輸入影象的尺寸,此處取120)
  • 模型特點是使用了inception結構
    inception結構組成:1×1, 3×3 ,5×5卷積,以及5×5的max pooling;這個結構很好地利用了網路中的計算資源,並且在不增加計算負載的情況下,增加網路的寬度和深度。
    在這裡插入圖片描述
CNN-Voting-5

在這裡插入圖片描述

  • 首先將原始影象進行變形
  1. 區域性變形:結合三維(X,Y,Z)隨機變形技術進行大規模的資料生成,除文字模式影象上的 X 座標、Y 座標外,將各畫素的灰度值作為 Z 座標的引數,生成各種變形模式
  2. 全域性變形:首先在一定範圍內隨機生成一個仿射變換,然後將該變換應用於原影象生成新的樣本。
  • 投放進CNN模型
  • 投票,選出結果
    投票策略(1)在模型的輸出中,如果某個類的投票比其他類多,那麼這個類就是最終結果
    (2)如果排名靠前的類擁有相同的票數,那麼這些類的置信度就會被加起來,置信度最高的類就是最終的結果

3. 聯機手寫漢字識別

3.1 聯機手寫體識別樣本

圖:離線手寫漢字。每種顏色代表一個筆畫,數字代表書寫順序。

在這裡插入圖片描述

3.2 聯機手寫體識別——方法比較

方法中較優的幾種方法,以及論文(2018年)方法之間的比較。

  • 人工識別
  • 傳統方法
  • 神經網路

在這裡插入圖片描述

3.3 傳統方法——DFE+DLQDF
  • DFE:鑑別特徵提取方法 (Discriminative feature learning
  • DLQDF:鑑別學習二次判決函式 (Discriminative learning quadratic discriminant function)
    在這裡插入圖片描述
  • 獲取directMaps,8×32×32的張量
  • 通常在每一張圖上,提取8*8個點,特徵維數為512
  • 通過Gaussian Blurring來減小筆觸位置變化的影響
  • Box–Cox transformation進行特徵轉換,目的在於增加資料的高斯性
  • 傳統的方法也遵循了深度神經網路的設計思想
  1. 高斯模糊可以看作是一個卷積模板,這是預先定義的,而不是從資料中學習。
  2. 雖然Box-Cox變換不同於神經網路中廣泛使用的啟用,但它是一種非線性啟用。
  3. 然後,有一個完全連線的層和一個分類層。
3.4 傳統方法與深度學習

在這裡插入圖片描述

  • 深度學習與傳統方法相比,特徵提取和分類都可以在深度學習模型中自動完成。
  • 深度學習模型可以看作是一個黑盒子,只需要輸入影象就可以得到識別結果。相比之下,傳統的分類方法通常需要人工特徵設計和分類器的人工調優。
3.5 神經網路——PRCNN,VO-3
  • UWarwick(PRCNN):
    (1) 字元以三維陣列的形式進行編碼
    (2) 將陣列輸入12層卷積神經網路
    (3)網路結構:150C3-MP2-300C2-MP2-450C2-MP2-600C2-MP2-750C2-MP2-900N-3755N.
    (4) 訓練資料集:CASIA OLHWDB1.0-1.2
  • VO-3:
    (1) 基於MyScript技術
    (2)採用b-spline近似法對輸入筆畫進行規範化,提取動態和靜態資訊 相結合的特徵
    (3) 將特徵向量輸入一個簡單的多層感知器
    (4) 訓練資料集:CASIA-OLHWDB1.0-1.1
3.6 深度學習——directMap-ConvNet

預處理:

  • 形狀規範化:偽2D雙矩歸一化(pseudo 2D bi-moment normalization , P2DBMN )
  • 方向分解:將區域性筆畫方向(由兩個相鄰點構成的線段)分解成8個方向, 然後生成每個方向的feature map
  • 為筆觸增加0.5的權重
  • 生成directmaps

模型

  • 總共11層網路
  • 特點在於加入了adaptation 層

在這裡插入圖片描述

3.7 深度學習RNN

預處理
(1)移除多餘的點
(2)座標標準化

  • Tcos, Tdist 為兩個超引數。

在這裡插入圖片描述

  • 預處理之後,96個點減少為44個點且(0,0)座標對應的是字元中心。
    這將使每個點更有資訊,有利於RNN建模。
    在這裡插入圖片描述

RNN模型

  • 均值化層
  • 全連線層
  • 結合LSTM/GRU
  • 全連線層和均值化層均採用dropout策略
  • 結合LSTM/GRU,實驗結果表明GRU優於LSTM,針對論文設計的神經網路來說。

在這裡插入圖片描述

  • 整合策略
    (1)在只有一個子序列的情況下,該演算法的準確率低於全序列。
    (2)隨著集合中隨機取樣的子序列越來越多,分類準確率逐漸提高
    整合策略結論
    (1)一個子序列低於全序列是因為有資訊丟失
    (2)結果驗證了使用drop進行基於集合的序列分類的有效性。
    (3)論文將這6種學習演算法組合得到最優結果

在這裡插入圖片描述

3.8 方法比較: DirectMap + convNet(CNN), RNN

在這裡插入圖片描述

總結

近幾年,基於傳統的 “預處理+特徵提取+分類器” 的手寫漢字識別框架似乎並沒有特別大的研究新進展, 很少看到在識別效能上獲得突破性進展的研究報道。但是, 隨著深度學習的興起,我們注意到深度學習對手寫漢字識別難題帶來了新的活力和極其有效的解決方法。特別是2011 年起,連續兩屆的 ICDAR 手寫漢字識別比賽的獲勝者都是採用基於深度學習或神經網路的方法。在 2013 年的 ICDAR 手寫漢字比賽中,來自富士通公司的團隊採用改進的 CNN 網路,獲得了離線手寫漢字識別的第一名,識別率達 94.77 %;而來自英國華威大學的 Graham 利用深度稀疏卷積神經網路的方法,獲得了聯機手寫漢字識別第一名,其識別率提升到 97.39 %。而在前文提到的最新的文章中,其方法更是使得離線識別率達97.37%,而聯機識別率高達98.15%。 無論是聯機還是離線 HCCR,基於深度學習的方法所取得的結果,均大幅度領先傳統的方法,顯示出深度學習的強大潛力。目前手寫識別中,深度學習方法相比於傳統方法,能達到更高的識別率,但是其訓練和測試時間較長,字典儲存偏大等問題,仍待進一步研究改進。

參考文獻

[1] Paliwal, M.S.A.K., Bidirectional Recurrent Neural Networks. IEEE TRANSACTIONS ON SIGNAL PROCESSING, 1997: p. 2673–2681.
[2] Fei Yin, Q.W.X.Z., ICDAR 2013 Chinese Handwriting Recognition Competition. 2013 12th International Conference on Document Analysis and Recognition, 2013: p. 1464–1470.
[3] Liu, C., et al., Online and offline handwritten Chinese character recognition: Benchmarking on new databases. Pattern Recognition, 2013. 46(1): p. 155-162.
[4] C. Wu, W.F.Y.H., Handwritten Character Recognition by Alternately Trained Relaxation Convolutional Neural Network. 2014 14th International Conference on Frontiers in Handwriting Recognition, 2014: p. 291-296.
[5] Salakhutdinov, N.S.G.H., Dropout: A Simple Way to Prevent Neural Networks from Overfitting. Journal of Machine Learning Research, 2014.
[6] Zhuoyao Zhong, L.J.Z.X., High Performance Offline Handwritten Chinese Character Recognition Using GoogLeNet and Directional Feature Maps. ICDAR, 2015: p. 846-850.
[7] L. Chen, S. Wang, W. Fan, J. Sun and S. Naoi, “Beyond human recognition: A CNN-based framework for handwritten character recognition,” 2015 3rd IAPR Asian Conference on Pattern Recognition (ACPR), Kuala Lumpur, 2015, p. 695-699.
[8] Xu-Yao Zhang, Y.B.C.L., Online and Offline Handwritten Chinese Character Recognition: A Comprehensive Study and New Benchmark. Pattern Recognition, 2017: p. 348–360.
[9] Zhang, X., et al., Drawing and Recognizing Chinese Characters with Recurrent Neural Network. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018. 40(4): p. 849-862.