(57)【要約】【課題】  各クラスに属する画素数に大きな違いがあっても、濃淡画像から、良い二値画像あるいは多値画像が得られるようにする。【解決手段】  画素の隣接性・二次元性が考慮されるようにするため、入力された濃淡画像の各画素、及び、隣接した画素と、フィルタ関数との算術演算によるフィルタ処理を施し、フィルタ処理画像を作成する。処理結果の画素値はディジタル化せず、アナログ値をそのまま使用して、各階級の区間内の度数を表す濃度ヒストグラム、区間内の代表値を割り当てた階級値、及び、区間内分散を求め、二値化・多値化を行うための統計量を計算する。この統計量を使い、最適しきい値選定用評価関数を最適にするしきい値を選定し、得られたしきい値によって、画素値がアナログであるフィルタ処理画像をしきい値処理する。【選択図】        図１
2005354287.tif 000002
【特許請求の範囲】
【請求項１】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求め、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算し、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求め、
前記二値化しきい値により、前記フィルタ処理画像を二値化する方法。
【請求項２】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求め、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算し、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求め、
前記二値化しきい値により、前記フィルタ処理画像を二値化する方法。
【請求項３】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求め、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算し、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求め、
前記多値化しきい値の組により、前記フィルタ処理画像を多値化する方法。
【請求項４】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求め、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算し、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求め、
前記多値化しきい値の組により、前記フィルタ処理画像を多値化する方法。
【請求項５】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成する手段と、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求める手段と、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算する手段と、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求める手段と、を備え、
前記二値化しきい値により、前記フィルタ処理画像を二値化する装置。
【請求項６】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成する手段と、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求める手段と、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算する手段と、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求める手段と、を備え、
前記二値化しきい値により、前記フィルタ処理画像を二値化する装置。
【請求項７】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成する手段と、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求める手段と、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算する手段と、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求める手段と、を備え、
前記多値化しきい値の組により、前記フィルタ処理画像を多値化する装置。
【請求項８】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成する手段と、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求める手段と、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算する手段と、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求める手段と、を備え、
前記多値化しきい値の組により、前記フィルタ処理画像を多値化する装置。
【請求項９】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求め、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算し、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求める、
各手順を実行することから成る、前記二値化しきい値により前記フィルタ処理画像を二値化するプログラム。
【請求項１０】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求め、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算し、
前記統計量を使用して、二値化しきい値選定用評価関数を最適にする二値化しきい値を求める、
各手順を実行することから成る、前記二値化しきい値により前記フィルタ処理画像を二値化するプログラム。
【請求項１１】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、及び、代表値を計算することにより得られる階級値を求め、
前記濃度ヒストグラム、及び、前記階級値から、統計量を計算し、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求める、
各手順を実行することから成る、前記多値化しきい値の組により前記フィルタ処理画像を多値化するプログラム。
【請求項１２】
濃淡画像を画素の隣接情報が加わるようフィルタ処理して、各画素がアナログ値であるフィルタ処理画像を作成し、
前記フィルタ処理画像から、各階級を表す区間における、濃度ヒストグラム、代表値を計算することにより得られる階級値、及び、区間内分散を求め、
前記濃度ヒストグラム、前記階級値、及び、前記区間内分散から、統計量を計算し、
前記統計量を使用して、多値化しきい値選定用評価関数を最適にする多値化しきい値の組を求める、
各手順を実行することから成る、前記多値化しきい値の組により前記フィルタ処理画像を多値化するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の圧縮処理、分類処理として、あるいは、文字・画像認識における前処理として、濃淡画像を二値化、あるいは、多値化する方法、及び、装置、並びに、プログラムに関するものである。
【背景技術】
【０００２】
文字・画像認識を単純化するための前処理として、あるいは、画像の分類処理（クラスタリング）や圧縮処理として、入力された濃淡画像を二値化することは、非常に多くの場面で要求される。それゆえ、これまでに多くの二値化手法が開発されている。その中で、処理が単純であり、多種の画像に対して適用可能であることから、判別規準に基づいた手法（非特許文献１参照）がよく使われる。この手法の処理方法を図２で説明する。
【０００３】
画像入力処理２０１により、画像６を入力して濃淡画像２０２を取り込む。この濃淡画像の画素値（濃度レベル）をｇ(ｘ,ｙ)とすると、これは正の整数値であるディジタル値で与えられ、1画素が8ビットであるとすると、0から255の値を取る。濃淡画像２０２の大きさＮは、ｘ軸方向の大きさをＮｘ、ｙ軸方向の大きさをＮｙとするとＮ＝Ｎｘ×Ｎｙとなる。濃度ヒストグラム作成処理２０５により、各階級の濃度ヒストグラムｈ(ｌ)、相対濃度ヒストグラムｐ(ｌ)２０８を作成する。ここで、Ｌを画素値の数（濃度レベル数）とすると、ｌ（エル）は1（いち）からＬの値を取る階級番号であり、ｈ(ｌ)は(ｌ−1)なる画素値を持つ画素の度数（あるいは、頻度）である。相対濃度ヒストグラムは全画素数Ｎに対する度数の割合であり、ｐ(ｌ)＝ｈ(ｌ)／Ｎである。これと同時に、階級値割当処理２０６により、階級値ｒ(ｌ)２０９を決める。階級値とは、画素値の度数がｈ(ｌ)、あるいは、ｐ(ｌ)なる階級を代表する値が割り当てられるが、図２の判別規準に基づいた手法では、各階級の画素値は全て同じディジタル値であるため、画素値そのままの値をｒ(ｌ)＝(ｌ−1)で与える。これを使い、統計量計算処理２１１により、仮のしきい値番号ｋでしきい値処理し、画素値を複数のクラスに分ける場合の統計量２１２を計算する。計算される統計量は、各クラスの生起確率、各クラスの平均、各クラスの分散、及び、級内分散であり、二値化を想定すると、次のようにして計算される。二値化の場合、1から(Ｌ−1)の値の中から1個の最適なｋを検出する。
【０００４】
画素値（濃度レベル）ｇ(ｘ,ｙ)が1クラス目、2クラス目に属する生起確率をω1＝ω1(ｋ)、ω2＝ω2(ｋ)とすると（ωはオメガ）、
ω1＝Σｐ(ｌ)  （Σはｌ＝1〜ｋにおける和）。
ω2＝Σｐ(ｌ)  （Σはｌ＝(ｋ＋1)〜Ｌにおける和）。
1クラス目、2クラス目の画素値の平均をμ1＝μ1(ｋ)、μ2＝μ2(ｋ)とすると（μはミュー）、
μ1＝(1／ω1)Σｒ(ｌ)ｐ(ｌ)  （Σはｌ＝1〜ｋにおける和）。
μ2＝(1／ω2)Σｒ(ｌ)ｐ(ｌ)  （Σはｌ＝(ｋ＋1)〜Ｌにおける和）。
1クラス目、2クラス目の画素値の分散をσ12＝σ1(ｋ)2、σ22＝σ2(ｋ)2とすると（σはシグマ）、
σ12＝(1／ω1)Σ{ｒ(ｌ)−μ1}2ｐ(ｌ)  （Σはｌ＝1〜ｋにおける和）。
σ22＝(1／ω2)Σ{ｒ(ｌ)−μ2}2ｐ(ｌ)  （Σはｌ＝(ｋ＋1)〜Ｌにおける和）。
級内分散をσＷ2＝σＷ(ｋ)2とすると、σＷ2＝ω1σ12＋ω2σ22で計算される。
【０００５】
次に、これらの統計量２１２を使い、最適しきい値選定用評価関数計算処理２１３により、評価関数値Ｊ(ｋ)２１４を計算する。判別規準に基づいた手法において、この評価関数値J(ｋ)は、J(ｋ)＝1／σＷ2で与えられる。これは、仮のしきい値番号ｋの関数値であり、値が大きいほど良好なしきい値となる評価関数である。従って、最適しきい値番号検出処理２１５では、Ｊ(ｋ)が最大値を取るｋを最適しきい値番号２１６として検出する。
【０００６】
最後に、しきい値処理２１７により、最適しきい値番号ｋ２１６を使って、濃淡画像ｇ(ｘ,ｙ)２０２を二値化し、しきい値処理画像２１８を作成する。判別規準に基づいた手法の場合、最適しきい値は、厳密にはクラス1とクラス2それぞれの平均値の中間点にあたるａ＝{μ1(ｋ)＋μ2(ｋ)}／2のアナログ値で与えられる。しかし、ａの小数点以下を切り捨てた値は最適しきい値番号ｋに対する階級値ｒ(ｋ)に一致するため、アナログしきい値ａの計算は不要である。以上が、従来技術の、判別規準に基づいた手法による二値化処理である。従来技術による、Ｍクラスに分ける多値化も、(Ｍ−1)個のしきい値を同様な方法で検出することにより、実行可能である。
【０００７】
文字認識研究用の文字画像データとして、数字(10)、英大文字(26)、特殊記号(12)、片仮名(51)、計99の文字種を含み、各文字種につきサンプル数が約1,400の「手書き文字データベースETL1」（http://www.etl.go.jp/~etlcdb/）がある。このサンプルに対し、従来技術の手法で二値化を行うと、全141,319サンプルの内650サンプルがグランドノイズの付いた二値画像になってしまう。グランドノイズとは、画像の背景の大部分が黒いノイズで占められるものを言う。その一部（77サンプル）を図３に示す。グランドノイズが付く文字種は、特に特殊記号「．（ピリオド）」に多く、650の内の253サンプルに達している。「．」は、画像内の文字「ピリオド」自身を示す対象物の部分と背景部分の画素数が大きく異なる文字の典型である。
【非特許文献１】大津展之："判別および最小2乗規準に基づく自動しきい値選定法", 「電子通信学会論文誌(D)」, Vol.63-D,No.4, pp.349--356 (1980-04).
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のように、従来技術では、対象物と背景の画素数が大きく異なる場合に二値化性能が悪いという欠点がある。一般的な多値化においては、Ｍクラスに分けるときの各クラスに属する画素数に大きな違いがあると良好な多値化が行えないということである。最適しきい値選定用評価関数の計算で使用する濃度ヒストグラムは、各画素間の隣接性や二次元的な位置に無関係に作成されており、前述の欠点は、画素の隣接性・二次元性が考慮されていないことに起因すると考えられる。
【０００９】
本発明は、係る問題点を解決するために、フィルタ処理（フィルタリング）を行い、その処理結果であるフィルタ処理画像の画素値をアナログ値のまま使用し、各区間内の代表値で正確な階級値を求め、これらから計算される統計量を使用することにより、各クラスの画素値の頻度が大きく異なる場合でも、良好なしきい値処理結果を得ることを目的としている。
【課題を解決するための手段】
【００１０】
本発明では、画素の隣接性・二次元性が考慮されるよう、入力された濃淡画像の各画素に対し、フィルタ関数を使ってフィルタ処理を施す。フィルタ処理とは、画像とフィルタ関数との、主に、畳み込み演算（コンボリューション）として知られる算術演算によってなされる。畳み込み演算とは、ある画素、及び、それに隣接するまわりの画素と、フィルタ関数の要素値との積和演算を画像全体に対して実行するものである。隣接する画素は１個おき、あるいは、複数個離れていてもかまわない。フィルタ処理には、雑音（ノイズ）除去・平滑化を行うものや、画像を強調するものなどがあり、その目的に応じてフィルタ関数が異なる。
【００１１】
雑音除去・平滑化を行うためのフィルタ関数例を表１と表２に示す。表１、表２は、要素値の和が１になるように正規化しているが、各要素値を定数倍してもフィルタ関数の効果は全く同じである。表１は要素値が一様分布の例である。孤立点ノイズが存在する画像を表１のフィルタ関数を使ってフィルタ処理すると、孤立点ノイズが減少したフィルタ処理画像を作ることができる。表２は、中心位置の要素値が最大で、中心から離れるほど値が小さくなるような、ガウス分布の例である。ガウス分布は、形状を決めるパラメータである標準偏差の大きさによって要素値が決まり、標準偏差を無限大に近づけると一様分布に近づき、標準偏差が大きくなるほど雑音除去・平滑化の効果が大きくなる。ただ、一様分布に近いほど、雑音除去・平滑化の効果が大き過ぎてしまうこともある。
【００１２】
画像強調の中で、画像の濃淡変化が大きい部分である「エッジ」を強調するためのフィルタ関数が表３である。これは方向を限定しないでエッジを強調するものであり、フィルタ処理後の値は方向性の強さ（マグニチュード）になる。エッジを強調するフィルタ関数でも、水平方向のみを強調するものが表４であり、垂直方向のみを強調するものが表５である。表４のフィルタ関数によるフィルタ処理画像と、表５のフィルタ関数によるフィルタ処理画像を両方作成し、水平方向、及び、垂直方向の方向性の強さから、エッジの方向角度を求めることもできる。
【００１３】
このように、フィルタ関数の要素値を変えることで、様々な目的に対するフィルタ処理が行える。ここでは、３×３の大きさのフィルタ関数を例示したが、５×５、１×３など、どのような大きさでもよい。
本発明では、主に、雑音除去・平滑化用のフィルタ関数を使用するが、他のフィルタ関数を使用してもかまわない。
【００１４】
【表１】
2005354287.tif 000003
【００１５】
【表２】
2005354287.tif 000004
【００１６】
【表３】
2005354287.tif 000005
【００１７】
【表４】
2005354287.tif 000006
【００１８】
【表５】
2005354287.tif 000007
【００１９】
以上のようなフィルタ関数を使ってフィルタ処理を行い、その結果であるフィルタ処理画像の画素値から、濃度ヒストグラムを作成し、階級値を計算する。このとき、フィルタ処理画像の画素値はディジタル化せず、アナログ値をそのまま使用する。
【００２０】
濃度ヒストグラムは、画素値を適当な区間の階級に区切り、各階級の区間内に入る画素の個数を数えることで作成される。濃度ヒストグラムを作るための区間の幅は、通常は同一間隔1にするが、2、3、4、1.5、2.5、0.5、0.2、0.1など、任意の同一整数値間隔、同一実数値間隔でかまわない。各区間間隔は、可変でもかまわない。区間間隔が一定ならば、画素値を区間間隔で割ることにより、その画素値が何番目の区間に入るかを一度の処理で求めることができるが、区間間隔が可変の場合は、最少で１回、最悪で区間数と同じ回数の画素値との比較を行わなければならず、処理量が多くなる。
【００２１】
区間の幅を1にした場合、濃度ヒストグラムの１番目の区間には、画素値が0以下の画素数を入れ、２番目の区間には、0＜画素値≦1である画素数を入れ、３番目の区間には、1＜画素値≦2である画素数を入れていく。区間の幅を2にした場合、濃度ヒストグラムの１番目の区間には、画素値が0以下の画素数を入れ、２番目の区間には、0＜画素値≦2である画素数を入れ、３番目の区間には、2＜画素値≦4である画素数を入れていく。区間の幅を2にしたとき、区間の位置をずらし、濃度ヒストグラムの１番目の区間には、画素値≦1の画素数を入れ、２番目の区間には、1＜画素値≦3である画素数を入れ、３番目の区間には、3＜画素値≦5である画素数を入れていってもよい。
【００２２】
各区間に入るフィルタ処理画像の画素値は、ディジタルな画素値の場合と違って、全てが必ずしも同一ではないため、階級値は各区間内における代表値を割り当てる。代表値とは、複数の数値に関連する代表的な１つの数値であり、「平均値」、「中央値（メディアン）」、「中心値」などがある。
また、必要に応じて、各区間内の分散を計算しておく。
【００２３】
本発明は、フィルタ処理によって作成された、各画素がアナログ値であるフィルタ処理画像に関する、濃度ヒストグラム、並びに、各区間内における代表値が割り当てられた階級値、及び、必要に応じて各区間内の分散を使って統計量を計算し、最適しきい値選定用評価関数が最適となるしきい値番号を検出し、検出されたしきい値番号から求められるしきい値で、画素値がアナログであるフィルタ処理画像をしきい値処理することを特徴とする。
【００２４】
従来技術で使われる階級値ｒ(ｌ)は、{ｒ(ｌ＋1)−ｒ(ｌ)}が全て同一間隔（通常1）であるが、本発明では、区間内の代表値を階級値にしているため、濃度ヒストグラムを作るときの区間間隔を同一にしても、{ｒ(ｌ＋1)−ｒ(ｌ)}が必ずしも一定にならない。階級値を各区間内における代表値にすることは、正確な統計量を計算するために必要なことであり、階級値間隔が一定でないことには全く問題がない。
【発明の効果】
【００２５】
本発明では、フィルタ処理を行い、その処理結果であるフィルタ処理画像の画素値をアナログ値のまま使用し、各区間内の代表値で正確な階級値を求め、これらから計算される統計量を使用することにより、各クラスの画素値の頻度が大きく異なる場合でも、良好なしきい値処理結果が得られる。しかも、最適しきい値番号検出処理は、従来技術と同等の処理オーダーで計算できることが利点である。二値化の場合、入力された濃淡画像の画素値の数（濃度レベル数）に比例した処理量で計算できる。
【００２６】
二値化や多値化を行うときに使用する最適しきい値選定用評価関数は、従来技術でも本発明でも、濃度ヒストグラムで表現される、各クラスの画素値の頻度分布が正規分布であるとの仮定のもとに理論式が導かれている。しかし、実画像の頻度分布のほとんどは正規分布にはなっておらず、歪んだ形をしており、正規分布からの歪みが大きいほど、評価関数の信頼性が低くなると考えられる。本発明で良好なしきい値処理結果が得られるのは、フィルタ処理を行うことが、画素間の隣接情報を取り込むだけでなく、頻度分布の形を正規分布に近づける働きをしているからであると考えられる。
【発明を実施するための最良の形態】
【００２７】
本発明を図１で説明する。
画像入力処理１０１により画像６を入力して、ディジタル値である濃淡画像ｇ(ｘ,ｙ)１０２を取り込む。フィルタ処理１０３により、ｇ(ｘ,ｙ)とフィルタ関数Ｗ(ｕ,ｖ)から、フィルタ処理画像ｆ(ｘ,ｙ)１０４を作成する。Ｗ(ｕ,ｖ)の要素は表６の位置とし、要素の値は雑音除去・平滑化の効果があるガウス分布や一様分布などになるようにする。Ｗ(ｕ,ｖ)の具体例を表７、表８、表９に示す。表７は標準偏差が0.5のガウス分布であり、表８は標準偏差が0.6のガウス分布である。表９は一様分布であり、これはガウス分布の標準偏差を無限大にしたことと同じである。Ｗ(ｕ,ｖ)の大きさＮｕ×Ｎｖは、一般的に、ｕ＝−a〜b、ｖ＝−a〜b（a、bは負でない整数）とするとＮｕ×Ｎｖ＝(a+b+1)×(a+b+1)で与えられる。実際上は、例のように3×3あれば十分と考えられ、このとき、ａ＝1、ｂ＝1である。ここでは、二次元画像の画素に対してフィルタ処理を行っているが、一次元でも、多次元でもよい。また、扱う数値は画素値でなくてもよい。例えば、対象物と背景との境で抽出することができる「エッジ」の「強さ（マグニチュード）」、あるいは、「エッジ」の「角度」でもよい。
【００２８】
【表６】
2005354287.tif 000008
【００２９】
【表７】
2005354287.tif 000009
【００３０】
【表８】
2005354287.tif 000010
【００３１】
【表９】
2005354287.tif 000011
【００３２】
このフィルタ関数を使い、ｆ(ｘ,ｙ)は次のようにして計算される。
ｆ(ｘ,ｙ)＝ΣΣ{ｇ(ｘ+ｕ,ｙ+ｖ)・Ｗ(ｕ,ｖ)}／ΣΣ{Ｗ(ｕ,ｖ)}
（ここで、ΣΣは、ｕ＝−ａ〜ｂ、及び、ｖ＝−ａ〜ｂにおける和を示す。）
この式の分母が濃淡画像ｇ(ｘ,ｙ)とフィルタ関数Ｗ(ｕ,ｖ)との畳み込み演算（コンボリューション）である。ｆ(ｘ,ｙ)の値を、入力した濃淡画像ｇ(ｘ,ｙ)と同程度にするため、ここではΣΣ{Ｗ(ｕ,ｖ)}で除算を行っているが、ΣΣ{Ｗ(ｕ,ｖ)}が1になるようにＷ（ｕ,ｖ）を正規化した要素値にしておくと、この除算は不要となる。前述の表１は表９を正規化したものであり、表２は表７を正規化したものである。ただし、正規化を行うと、要素値が全て小数点以下の値になり、計算誤差が大きくなることがあるため、表７、表８、表９を使用している。表３、表４、表５のように、ΣΣ{Ｗ(ｕ,ｖ)}がゼロになるフィルタ関数では、ΣΣ{Ｗ(ｕ,ｖ)}での除算は行わない。
【００３３】
雑音除去・平滑化を行うことは、画像にボカシをかけることに等しい。雑音除去・平滑化を行うフィルタ関数、特に、一様分布のフィルタ関数を使った場合、ボカシ効果が大き過ぎ、フィルタ処理画像ｆ(ｘ,ｙ)そのままでは、文字画像がぼかされ、近接している2平行線が一本の線になるなど、画像の特徴を減少させてしまうことがある。これを防ぐために、パラメータとしてλ（ラムダ）を導入し、ｆ(ｘ,ｙ)と元の濃淡画像の画素値ｇ(ｘ,ｙ)の間のλ分割点{λｆ(ｘ,ｙ)+(1−λ)ｇ(ｘ,ｙ)}を求め、これをフィルタ処理画像１０４の座標(ｘ,ｙ)での画素値ｆ(ｘ,ｙ)とする（ただし、0≦λ≦1）。λ＝0にすると、フィルタ処理しない画像ｇ(ｘ,ｙ)と同じになり、λの値によって従来手法からの連続的な拡張になっている。フィルタ関数にガウス分布を使用する場合は、λ＝1にして、ｇ(ｘ,ｙ)の値は使わなくてもよい。ガウス分布の場合、分布の形を決めるためのパラメータである標準偏差が、パラメータλと定性的に同様の働きをする。
【００３４】
計算結果のフィルタ処理画像ｆ（ｘ,ｙ）はアナログ値で与えられ、これは、ディジタル化せずアナログ値をそのまま使用する。アナログ値である、このフィルタ処理画像ｆ(ｘ,ｙ)１０４に対して、濃度ヒストグラム作成処理１０５により、濃度ヒストグラムｈ(ｌ)、相対濃度ヒストグラムｐ(ｌ)１０８を求め、同時に、階級値計算処理１０６により、階級値ｒ(ｌ)１０９を計算する。ｌ（エル）が1〜Ｌの値をとるとし、ｌ（エル）番目の階級を表す区間をＲ(ｌ)＝{Ｉｌ−1＜ｆ(ｘ,ｙ)
≦Ｉｌ}とすると、ｆ(ｘ,ｙ)から濃度ヒストグラムｈ(ｌ)を作成するには、各区間Ｒ(ｌ)にｆ(ｘ,ｙ)が入る個数を数えればよい。通常は、Ｉｌ＝(ｌ−1)とする（ただし、Ｉ0＝0）。これは、区間の数を、入力した濃淡画像１０２の画素値の数（濃度レベル数）と同じにした場合であり、Ｉｌ＝2(ｌ−1)とすれば区間の数を半分に、Ｉｌ＝(ｌ−1)／2とすれば区間の数を倍にすることもできる。階級値ｒ(ｌ)１０９は、各区間内に入る画素値の「平均」を割り当てる。これは、各区間内に入る画素値の和をＳ(ｌ)とするとＳ(ｌ)／ｈ(ｌ)で与えられる。階級値としては、「平均」以外にも、「中央値（メディアン）」や「中心値」などがある。「中央値（メディアン）」は、画素値を大きさの順に並べたときのちょうど中央にある画素値である。「中心値」は、最小の画素値と最大の画素値の平均値である。
【００３５】
また、必要に応じて、区間内分散計算処理１０７により、区間内分散ｑ(ｌ)2１１０を計算しておく。これは、画素値ｆ(ｘ,ｙ)がｌ（エル）番目の区間内に入るものの二乗和をＶ(ｌ)とすると、ｑ(ｌ)2＝Ｖ(ｌ)／ｈ(ｌ)−ｒ(ｌ)2で計算される。
次に、フィルタ処理画像ｆ(ｘ,ｙ)１０４から求められた、濃度ヒストグラムｈ(ｌ)、相対濃度ヒストグラムｐ(ｌ)１０８と階級値ｒ(ｌ)１０９、及び、区間内分散ｑ(ｌ)2１１０から、統計量計算処理１１１により、統計量１１２を計算する。ここでは、一般的な多値化としてＭ値化を行うことを想定して話を進めるが、二値化の場合は、Ｍに2を与えればよい。
【００３６】
仮のしきい値番号の組ｋ＝{ｋ1、…、ｋｍ、…、ｋＭ−1}でしきい値処理し、Ｌ個の階級をＭ個のクラスに分ける場合の統計量を計算する。しきい値番号の組ｋはＭ値化を行う場合、(Ｍ−1)個のしきい値番号から成る。計算される統計量は、各クラスの生起確率、各クラスの平均、各クラスの分散、及び、級内分散である。級内分散の他に、級間分散、全分散があるが、どのしきい値の組でクラス分けしても全分散は一定であり、{全分散＝級内分散＋級間分散}という関係が成り立つことから、級内分散の代わりに級間分散を使うこともできる。
【００３７】
画素値（濃度レベル）ｇ(ｘ,ｙ)がｍクラス目に属する生起確率をωｍ＝ωｍ(ｋ)とすると、
ωｍ＝Σｐ(ｌ)  （Σはｌ＝(ｋｍ−1＋1)〜ｋｍにおける和）。
ｍクラス目の画素値の平均をμｍ＝μｍ(ｋ)とすると、
μｍ＝(1／ωｍ)Σｒ(ｌ)ｐ(ｌ)  （Σはｌ＝(ｋｍ−1＋1)〜ｋｍにおける和）。
ｍクラス目の画素値の分散をσｍ2＝σｍ(ｋ)2とすると、
σｍ2＝(1／ωｍ)Σ{ｒ(ｌ)−μｍ}2ｐ(ｌ)＋(1／ωｍ)Σｑ(ｌ)2 
（Σはｌ＝(ｋｍ−1＋1)〜ｋｍにおける和）。
級内分散をσＷ2＝σＷ(ｋ)2とすると、
σＷ2＝Σωｍσｍ2  （Σはｍ＝1〜Ｍにおける和）。
区間内分散を考慮しないようにする場合は、全てのｌ（エル）でｑ(ｌ)2＝0とすればよい。
【００３８】
次に、これらの統計量を使い、最適しきい値選定用評価関数計算処理１１３により、評価関数値１１４を計算する。最適しきい値選定用評価関数は、ゆう度規準（尤度規準）に基づいた手法を使用するが、これ以外でも、濃度ヒストグラムを使い、仮のしきい値の組でクラス分けを行う評価関数であれば、どのようなものでもよい。
【００３９】
ゆう度規準に基づいた手法では、濃度ヒストグラムがＭ個の正規分布の重畳であることを想定しており、そのＭ個の各正規分布を表すパラメータである生起確率と分散に対して、次の４種類の仮定をしている。第1番目として、各正規分布の生起確率が異なり、各正規分布の分散が等しいとする場合、これをＪＤとする。第2番目として、各正規分布の生起確率、分散とも等しいとする場合、これをＪＯとする。第3番目として、各正規分布の生起確率、分散とも異なるとする場合、これをＪＫとする。第4番目として、各正規分布の生起確率は等しく、分散は異なるとする場合、これをＪＱとする。Ｍ個の正規分布に対する、以上の仮定の違いから、最適しきい値選定用評価関数計算処理１１３で使用する評価関数計算式は、次の4種類JＸ＝JＸ(ｋ)になる。ただし、Ｘ＝{Ｄ,Ｏ,Ｋ,Ｑ}、lnは自然対数。
JＤ＝Σ{ωｍln(1／σｍ2)}  （Σは、ｍ＝1〜Ｍにおける和）。
JＯ＝(1／σＷ2)。
JＫ＝Σ{ωｍln(ωｍ2／σｍ2)}  （Σは、ｍ＝1〜Ｍにおける和）。
JＱ＝Σ{ωｍln(ωｍ2／σＷ2)}  （Σは、ｍ＝1〜Ｍにおける和）。
これらは、仮のしきい値番号の組ｋの関数値であり、値が大きいほど良好なしきい値となる評価関数である。従って、最適しきい値番号検出処理１１５では、ＪＸ(ｋ)を最大にするｋが最適しきい値番号の組１１６として検出される。
【００４０】
ｍ番目のクラスの分散であるσｍ2は、区間内分散を考慮しないと、値が0になることがある。このとき、ゆう度規準を使った評価関数の中のJＤとJＫは、分母にσｍ2があるため不定となり、評価関数としての信頼性がなくなる。区間内分散を考慮することは、統計量を補正するだけでなく、全てのσｍ2がゼロにならないことから、JＤやJＫの評価関数の信頼性を高めるためにも有効である。
【００４１】
最後に、しきい値処理１１７により、最適しきい値番号の組ｋ１１６を使って、アナログ値であるフィルタ処理画像ｆ(ｘ,ｙ)１０４をしきい値処理する。このとき、最適しきい値番号の組１１６から、最適しきい値の組ｔ＝{ｔ1、…、ｔｍ、…、ｔＭ−1}が、次式で計算される。
JＤの場合、ｔｍ＝[μｍσｍ+12−μｍ+1σｍ2±（√σｍ2σｍ+12{(μｍ+1−μｍ)2+(σｍ+12―σｍ2)ln(σｍ+12／σｍ2)}）]／(σｍ+12−σｍ2)。
ただし、(μｍ+μｍ+1)／2に近い方。
JＯの場合、ｔｍ＝(μｍ+μｍ+1)／2。
JＫの場合、ｔｍ＝[μｍσｍ+12−μｍ+1σｍ2±（√σｍ2σｍ+12{(μｍ+1−μｍ)2+(σｍ+12―σｍ2)ln((ωｍ2σｍ+12)／(ωｍ+12σｍ2))}）]／(σｍ+12−σｍ2)。
ただし、(μｍ+μｍ+1)／2に近い方。
JＱの場合、ｔｍ＝(μｍ+μｍ+1)／2+{σＷ2／(μｍ+1−μｍ)}ln(ωｍ／ωｍ+1)。
【００４２】
厳密には、このようにして計算されたｔｍを使ってしきい値処理をしなければならないが、ｔｍの計算は実行せず、ｋｍ−1+1番目からｋｍ番目の区間をｍクラス目であるとする簡易法がある。この簡易法でも性能の大きな低下はない。
【００４３】
「手書き文字データベースETL1」のサンプルの一部（77サンプル）を本発明で二値化したものが図４である。これは、フィルタ関数Ｗ(ｕ,ｖ)を標準偏差0.5のガウス分布とし、最適しきい値選定用評価関数にＪＯ（各正規分布の生起確率、分散とも等しいと仮定したゆう度規準）を使用し、区間内分散を考慮しない場合の処理結果である。図４で使用したサンプルは、従来手法でグランドノイズが付く図３と同じものである。
【００４４】
各ゆう度規準を最適しきい値選定用評価関数として使用し、従来技術でグランドノイズが付く650サンプルに対する二値化実験を行った結果を表１０に示す。ほとんどのサンプルでグランドノイズがとれている。表１０において、JＤはフィルタ関数を標準偏差0.5のガウス分布とし、区間内分散を考慮した場合であり、JＯはフィルタ関数を標準偏差0.5のガウス分布とし、区間内分散を考慮しない場合であり、JＫはフィルタ関数を標準偏差0.6のガウス分布とし、区間内分散を考慮した場合であり、JＱはフィルタ関数を標準偏差0.6のガウス分布とし、区間内分散を考慮しない場合である。評価関数JＱで本発明を実行することにより、従来技術ではグランドノイズが付く650サンプル全てでグランドノイズがとれている。
【００４５】
二値化しきい値選定用評価関数に使用する各ゆう度規準に対し、最適なフィルタ関数を決めるため、ガウス分布の標準偏差を0.1刻みで0.1から1.0までのフィルタ関数を作成し、従来技術でグランドノイズが付く650サンプルの文字画像を対象に二値化実験を行った。0.3〜1.0の間のどの標準偏差でも、650サンプルのほとんどでグランドノイズが取れているが、1.0に近いほど、二値化結果の文字線が太くなっていたり、近接する２線が接触して１本の線になってしまうものがあった。この二値化実験の結果から、二値化性能、及び、二値画像の文字線の太さを考慮し、最良と思われる標準偏差を採用したものであり、ＪＤ、ＪＯ、ＪＫ、ＪＱに対し、それぞれ、0.5、0.5、0.6、0.6とした。
【００４６】
【表１０】
2005354287.tif 000012
【実施例１】
【００４７】
本発明の第一の実施例を図５で説明する。第一の実施例は、しきい値処理は二値化であり、統計量計算処理で区間内分散を考慮しない場合である。
図５は、しきい値処理を行う装置の構成を示している。装置の各部は、バス１に接続され、全体の制御は制御部２により制御される。演算部３では、各種の計算処理を行う。処理方法を記述したプログラムは、ハードディスク４からメモリ５０に格納され、制御部２がメモリ５０内のプログラムに従って処理を制御し、演算部３で計算処理が実行される。
【００４８】
まず、最初の処理では、画像６を入力装置７により入力し、濃淡画像をメモリ５１に格納する。この濃淡画像はディジタル値であるため、データの型は整数である。この濃淡画像にフィルタ処理を施し、フィルタ処理画像を作成し、メモリ５２に格納する。これは、処理結果のアナログ値をそのまま使用できるようにするため、データの型は浮動小数点数として格納する。フィルタ処理画像に対して、濃度ヒストグラム作成処理、及び、階級値計算処理により、濃度ヒストグラム、階級値を計算し、これらから統計量を計算して、メモリ５３のワークエリアに格納する。この統計量を使って、最適しきい値選定用評価関数計算処理により、評価関数値を計算し、最適しきい値番号検出処理により、最適しきい値番号を検出する。最後に、しきい値処理により、最適しきい値番号から最適しきい値を計算し、メモリ５２に格納されているフィルタ処理画像をしきい値処理した二値化結果をメモリ５４に格納する。メモリ５４の画像は、ハードディスク４に保存するか、あるいは、出力装置８に出力する。
【実施例２】
【００４９】
本発明の第二の実施例を前述と同様図５で説明する。第二の実施例は、しきい値処理は二値化であり、統計量計算処理で区間内分散を考慮する場合である。
まず、最初の処理では、画像６を入力装置７により入力し、濃淡画像をメモリ５１に格納する。この濃淡画像はディジタル値であるため、データの型は整数である。この濃淡画像にフィルタ処理を施し、フィルタ処理画像を作成し、メモリ５２に格納する。これは、処理結果のアナログ値をそのまま使用できるようにするため、データの型は浮動小数点数として格納する。フィルタ処理画像に対して、濃度ヒストグラム作成処理、階級値計算処理、及び、区間内分散計算処理により、濃度ヒストグラム、階級値、区間内分散を計算し、これらから統計量を計算して、メモリ５３のワークエリアに格納する。この統計量を使って、最適しきい値選定用評価関数計算処理により、評価関数値を計算し、最適しきい値番号検出処理により、最適しきい値番号を検出する。最後に、しきい値処理により、最適しきい値番号から最適しきい値を計算し、メモリ５２に格納されているフィルタ処理画像をしきい値処理して二値化結果をメモリ５４に格納する。メモリ５４の画像は、ハードディスク４に保存するか、あるいは、出力装置８に出力する。
【実施例３】
【００５０】
本発明の第三の実施例を前述と同様図５で説明する。第三の実施例は、しきい値処理はＭ個のクラスへの多値化であり、統計量計算処理で区間内分散を考慮しない場合である。
まず、最初の処理では、画像６を入力装置７により入力し、濃淡画像をメモリ５１に格納する。この濃淡画像はディジタル値であるため、データの型は整数である。この濃淡画像にフィルタ処理を施し、フィルタ処理画像を作成し、メモリ５２に格納する。これは、処理結果のアナログ値をそのまま使用できるようにするため、データの型は浮動小数点数として格納する。フィルタ処理画像に対して、濃度ヒストグラム作成処理、及び、階級値計算処理により、濃度ヒストグラム、階級値を計算し、これらから統計量を計算して、メモリ５３のワークエリアに格納する。この統計量を使って、最適しきい値選定用評価関数計算処理により、評価関数値を計算し、最適しきい値番号検出処理により、(Ｍ−1)個の最適しきい値番号を検出する。最後に、しきい値処理により、最適しきい値番号の組から(Ｍ−1)個の最適しきい値を計算し、メモリ５２に格納されているフィルタ処理画像をしきい値処理し、Ｍ値化した結果をメモリ５４に格納する。メモリ５４の画像は、ハードディスク４に保存するか、あるいは、出力装置８に出力する。
【実施例４】
【００５１】
本発明の第四の実施例を前述と同様図５で説明する。第四の実施例は、しきい値処理はＭ個のクラスへの多値化であり、統計量計算処理で区間内分散を考慮する場合である。
まず、最初の処理では、画像６を入力装置７により入力し、濃淡画像をメモリ５１に格納する。この濃淡画像はディジタル値であるため、データの型は整数である。この濃淡画像にフィルタ処理を施し、フィルタ処理画像を作成し、メモリ５２に格納する。これは、処理結果のアナログ値をそのまま使用できるようにするため、データの型は浮動小数点数として格納する。フィルタ処理画像に対して、濃度ヒストグラム作成処理、階級値計算処理、及び、区間内分散計算処理により、濃度ヒストグラム、階級値、区間内分散を計算し、これらから統計量を計算して、メモリ５３のワークエリアに格納する。この統計量を使って、最適しきい値選定用評価関数計算処理により、評価関数値を計算し、最適しきい値番号検出処理により、(Ｍ−1)個の最適しきい値番号を検出する。最後に、しきい値処理により、最適しきい値番号の組から(Ｍ−1)個の最適しきい値を計算し、メモリ５２に格納されているフィルタ処理画像をしきい値処理し、Ｍ値化した結果をメモリ５４に格納する。メモリ５４の画像は、ハードディスク４に保存するか、あるいは、出力装置８に出力する。
【産業上の利用可能性】
【００５２】
本発明は、画像処理に関する基本的な処理方法であり、単純であるにもかかわらず高性能なことから、画像処理全般で有効な手法であると考えられる。
【図面の簡単な説明】
【００５３】
【図１】本発明である、二値化、及び、多値化を行う方法を示したブロック図。
【図２】従来技術による、二値化・多値化を行う方法を示したブロック図。
【図３】従来技術で二値化を行ったときに、グランドノイズが付く文字画像例。
【図４】従来技術ではグランドノイズが付く文字画像に対し、本発明によって二値化を行った結果、グランドノイズがとれた例。
【図５】本発明の実施例である、二値化・多値化を行う装置の構成を示すブロック図。
【符号の説明】
【００５４】
１：バス
２：制御部
３：演算部
４：ハードディスク
５、５０、５１、５２、５３、５４：メモリ
６：画像
７：入力装置
８：出力装置
１０１、２０１：画像入力処理
１０２、２０２：濃淡画像
１０３：フィルタ処理
１０４：フィルタ処理画像
１０５、２０５：濃度ヒストグラム作成処理
１０６：階級値計算処理
２０６：階級値割当処理
１０７：区間内分散計算処理
１０８、２０８：濃度ヒストグラム
１０９、２０９：階級値
１１０：区間内分散
１１１、２１１：統計量計算処理
１１２、２１２：統計量
１１３、２１３：最適しきい値選定用評価関数計算処理
１１４、２１４：評価関数値
１１５、２１５：最適しきい値番号検出処理
１１６：最適しきい値番号の組
２１６：最適しきい値番号
１１７、２１７：しきい値処理
１１８、２１８：しきい値処理画像
【図１】
2005354287.tif 000013
【図２】
2005354287.tif 000014
【図３】
2005354287.tif 000015
【図４】
2005354287.tif 000016
【図５】
2005354287.tif 000017