Shinsai FaxOCR

Shins FaxOCR にM1メンバーで取り組んでみました。Shinsai FaxOCRプロジェクトについては以下を参照

https://sites.google.com/site/faxocr2010/systemrequirements/kocr/mnist

・濃度こう配特徴とSVMによる識別実験

若林らの濃度こう配特徴[1]を抽出してSVMで分類する。

全体の流れ

  1. 画像サイズ 28×28をバイキュービック補間で 36×36に変更する。
  2. 濃度こう配特徴 (400次元)を抽出する。
  3. 特徴量のスケーリングを行う。
  4. SVMで学習・分類する。

特徴ベクトルのスケーリング

以下の式により特徴ベクトルfの各要素が-1~1の値を持つようにスケーリングを行う。

1

2

3

4

5

6

グリッドサーチを用いたパラメータ設定

libSVMに実装されているgrid.pyにより学習データをグリッドサーチしコスト,ガンマ値を求め,SVMにより学習した。

SVMのカーネルの違いによる認識成功率の比較

SVMに用いるカーネルを変更させ識別性能を調査した。

・識別結果

線形カーネル:91.1647% (227/249)
2次多項式カーネル:92.3695% (230/249)
3次多項式カーネル:93.5743% (233/249)
4次多項式カーネル:95.5823% (238/249)
5次多項式カーネル:93.9759% (234/249)
RBFカーネル:95.1807%(237/249)

・4次多項式の認識結果の内訳

[用いたパラメータ]cost:32768 gamma:0.0078125

numbers-28-poly_4_0-1.scale

図1.グリッドサーチ結果画像(4次多項式)

0: 100% 3枚 / 3枚
1: 100% 7枚 / 7枚
2: 85.7143% 6枚 / 7枚
3: 100% 28枚 / 28枚
4: 95% 19枚 / 20枚
5: 71.4286% 10枚 / 14枚
6: 100% 21枚 / 21枚
7: 100% 30枚 / 30枚
8: 100% 58枚 / 58枚
9: 91.8033% 56枚 / 61枚
認識失敗画像 認識ラベル 正解ラベル
mustread-28_0015 8 9
mustread-28_0018 3 5
mustread-28_0028 3 5
mustread-28_0112 8 9
mustread-28_0117 5 9
mustread-28_0128 8 9
mustread-28_0150 3 5
mustread-28_0161 9 4
mustread-28_0173 1 9
mustread-28_0232 8 5
mustread-28_0248 9 2

主成分分析による次元削減導入による認識性能の向上

  1. 画像サイズ 28×28をバイキュービック補間で36×36に変更する。
  2. こう配特徴 (400次元)を抽出する。
  3. 主成分分析(累積寄与率90%となる47次元に削減)
  4. 特徴量のスケーリングを行う。
  5. SVM(4次多項式/RBFカーネル)で学習・分類する。

*前述の実験結果より認識成功率が高かったSVMのカーネル(4次多項式とRBF)を使用した。

・識別結果

4次多項式:94.7791% (236/249)

RBFカーネル:96.3855% (240/249)

・RBFカーネルの認識結果の内訳

[用いたパラメータ]cost:2.0 gamma:0.5

pca_train.scale

図2.グリッドサーチ結果画像(RBF)

0: 100% 3枚 / 3枚
1: 85.7143% 6枚 / 7枚
2: 85.7143% 6枚 / 7枚
3: 100% 28枚 / 28枚
4: 100% 20枚 / 20枚
5: 78.5714% 11枚 / 14枚
6: 100% 21枚 / 21枚
7: 96.6667% 29枚 / 30枚
8: 100% 58枚 / 58枚
9: 95.082% 58枚 / 61枚
認識失敗画像 認識ラベル 正解ラベル
 mustread-28_0015 8 9
 mustread-28_0018 4 5
 mustread-28_0028 4 5
 mustread-28_0117 5 9
 mustread-28_0128 8 9
 mustread-28_0142 2 1
 mustread-28_0171 1 7
 mustread-28_0232 8 5
 mustread-28_0248 4 2

・MQDF[2]による識別実験

全体の流れ

  1. 濃度こう配特徴 (392次元)を抽出する。
  2. MQDFで分類する。

MQDF(擬似ベイズ識別関数)

識別関数として以下の式で表されるMQDFを使用する。この識別関数は,分布パラメータのうち母集団の共分散行列が未知の正規分布に対する最適2次識別関数から導出された近似式で,識別精度を損うことなく識別時の計算量を大幅に削減できる特徴がある。詳細は参考文献[2]を参照。

mqdf1mqdf2mqdf3

・識別結果

[用いたパラメータ]α:0.1 k:40

(*本研究室の過去の研究で有効であった値を用いた。)

94.3775%(235/249)

・識別結果の各クラスごとの内訳

0: 100% 3枚 / 3枚
1: 71.4286% 5枚 / 7枚
2: 85.7143% 6枚 / 7枚
3: 100% 28枚 / 28枚
4: 100% 20枚 / 20枚
5: 64.2857% 11枚 / 14枚
6: 95.2380% 20枚 / 21枚
7: 96.6667% 29枚 / 30枚
8: 98.2759% 57枚 / 58枚
9: 95.082% 58枚 / 61枚
認識失敗画像 認識ラベル 正解ラベル
mustread-28_0057 2 1
mustread-28_0204 2 1
mustread-28_0248 4 2
mustread-28_0028 3 5
mustread-28_0018 3 5
mustread-28_0232 3 5
mustread-28_0186 3 5
mustread-28_0150 8 5
mustread-28_0215 8 6
mustread-28_0171 1 7
mustread-28_0063 6 8
mustread-28_0015 8 9
mustread-28_0117 5 9
mustread-28_0128 8 9

ソースコード(濃度こう配特徴とSVMによる識別実験)

program_ocr(*使用方法は内部のREADMEを参照)

参考文献

[1]こう配特徴:http://ci.nii.ac.jp/naid/110003228549
文字認識分野では有名な「こう配特徴」,実はCV分野でHOGが有名になる以前から使われていた.

[2]Kimura, K. Takashina, S. Tsuruoka and Y. Miyake, “Modified quadratic discriminant functions and the application to Chinese character recognition,” IEEE Trans. Pattern Anal. Mach. Intell., PAMI-9(1), pp.149-153, 1987.