新規記事投稿
フォロー記事投稿
記事のキャンセル
From: Akitaka HOSOMI
<hosomi@ga2.so-net.ne.jp>
Subject: Re: スタンプ印字された文字の読み取り方法( フーリエ変換法 - 検証篇 )
Date: 1998/08/19 01:53:55
Reference: junge/00144
さて、夏休みも残り少なくなったので、時間の許す範囲で、今までの能書きを検証してみる。
スタンプ文字について、サンプルとなる適当な画像( 128 * 128 ピクセル )を用意する。
階級文字 : 2S, S, M, L, 2L, 3L, 4L ( サイズを表す )
等級文字 : 優, 秀, 良, ○ ( 品質を表す )
この画像をラスタ順にスキャンして、ピクセル濃度( 明るさ )を読取っていく。
※ このとき、スキャン方向には、水平方向と垂直方向があることに注意する。
画像全体のスキャンを終えたら、読取ったピクセル濃度の数列から、直流成分を除去し、
濃度の分布を正規化した後、これを FFT の入力とする。
得られた FFT 出力から、パワースペクトルの周波数分布を求める。
それでは、ここまでのところを、L の文字画像を例にとって、実際に試してみることにする。
※ 青のグラフは、水平方向の周波数分布、赤のグラフは、垂直方向の周波数分布で、
ともに、ナイキスト周波数までの分布を表示してある。
すぐ気がつくように、適当な間隔でスペクトルが並んでいるのが確認できる。これは、
画像をラスタ順にスキャンすることにより、近接行がよく似た波形を持つようになる
ためだ。つまり、この画像では、128 ピクセル分に相当する周期で、信号が繰り返さ
れているということだ( 適当な周期を持った、デューティの異なる矩形波が入力され
ていると考えれば、把握しやすいだろう )。
そのため、文字の特徴は、この 128 ピクセル分に相当する基準周波数に対する、高
調波成分の分布、として捉えることができる。
そこで、基準周波数成分の強度を基準にして、得られたスペクトル分布を正規化し、
高調波成分ごとに包絡をとってみると、文字の特徴が把握しやすくなる。
こんな感じ↓になるのさ。
全部の階級文字について、この方法で見てみる。
これら↑を見てみると 2L と 3L については、よく似た分布となっている。
これは、2L と 3L を読取ろうとすると、その画像の一部分でしか、文字の区別ができない
という、極めて当たり前の事柄を示している。
# プログラムにとっては、ヒジョ~に不幸なことだぁ~~~
参考までに、等級文字についても、その特徴分布を示しておく。
※ 応用面では、等級文字と階級文字の認識部は、別途、用意しておいた方が、認識率は
上げられると考えている。
※ ラッキーなことに、これらの文字は、同じ位置に印字されることは、まず無いのさ。