(57)【特許請求の範囲】
【請求項１】
入力された画像から連結矩形を抽出し、該矩形の縦幅または横幅の頻度分布を求め、該頻度分布を基に前記画像に含まれる文字のサイズを推定する文字サイズ推定方法であって、前記抽出された矩形が文字矩形（以下、仮文字矩形）であるか否かを判定し、前記仮文字矩形と判定された矩形を用いて文字サイズを推定し、前記推定された文字サイズの面積と、前記仮文字矩形と判定された矩形の面積とを基に単位面積当たりの罫線数を算出し、前記罫線数を基に前記仮文字矩形と判定された矩形が文字矩形であるか否かを判定することを特徴とする文字サイズ推定方法。
【請求項２】
入力された画像から連結矩形を抽出し、該矩形の縦幅または横幅の頻度分布を求め、該頻度分布を基に前記画像に含まれる文字のサイズを推定する文字サイズ推定装置であって、前記抽出された矩形が文字矩形（以下、仮文字矩形）であるか否かを判定する手段と、前記仮文字矩形と判定された矩形を用いて文字サイズを推定する手段と、前記推定された文字サイズの面積と、前記仮文字矩形と判定された矩形の面積とを基に単位面積当たりの罫線数を算出する手段と、前記罫線数を基に前記仮文字矩形と判定された矩形が文字矩形であるか否かを判定する手段とを備えたことを特徴とする文字サイズ推定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像中の文字サイズを推定する文字サイズ推定方法および装置に関する。
【０００２】
【従来の技術】
文字認識などを行う際に、その前処理として文字サイズが抽出される。例えば、文書画像を短冊状に分割して得られる各領域内の投影データを用いて文字サイズを抽出するもの（特許第２５６９１５１号）、文書画像の周辺分布から画素塊の縦幅、横幅を算出することにより文字サイズを抽出するもの（特開平５−８９２８３号公報を参照）、長体、正体、平体文字を判別し、文字の幅／高さを基に文字サイズを決定するもの（特開平５−２８２４９２号公報を参照）、手書き文字列の第１方向の文字寸法を推定する際に、ファーストマージ後の第２方向寸法の中から、大きい方からｎ番目にある寸法値を選択し、これを基に文字サイズ推定値を求めるもの（特開平７−２１３１２号公報を参照）、白ランレングスの平均値から文字サイズを推定するもの（特開平７−１８４０３４号公報を参照）などが挙げられる。
【０００３】
【発明が解決しようとする課題】
ところで、従来、表を処理する場合に、その表に含まれる文字サイズなどを予め推定することなく、予定された文字サイズ以下ならば、線などとして誤認識することは少ない。しかし、予定された文字サイズよりも大きな文字サイズを含む表などでは、文字内に存在する直線成分を罫線として誤認識する可能性が高くなるという問題があった。
【０００４】
本発明の目的は、画像中の文字サイズを精度よく推定する文字サイズ推定方法および装置を提供することにある。
【０００５】
【課題を解決するための手段】
前記目的を達成するために、請求項１記載の発明では、入力された画像から連結矩形を抽出し、該矩形の縦幅または横幅の頻度分布を求め、該頻度分布を基に前記画像に含まれる文字のサイズを推定する文字サイズ推定方法であって、前記抽出された矩形が文字矩形（以下、仮文字矩形）であるか否かを判定し、前記仮文字矩形と判定された矩形を用いて文字サイズを推定し、前記推定された文字サイズの面積と、前記仮文字矩形と判定された矩形の面積とを基に単位面積当たりの罫線数を算出し、前記罫線数を基に前記仮文字矩形と判定された矩形が文字矩形であるか否かを判定することを特徴としている。
【０００６】
請求項２記載の発明では、入力された画像から連結矩形を抽出し、該矩形の縦幅または横幅の頻度分布を求め、該頻度分布を基に前記画像に含まれる文字のサイズを推定する文字サイズ推定装置であって、前記抽出された矩形が文字矩形（以下、仮文字矩形）であるか否かを判定する手段と、前記仮文字矩形と判定された矩形を用いて文字サイズを推定する手段と、前記推定された文字サイズの面積と、前記仮文字矩形と判定された矩形の面積とを基に単位面積当たりの罫線数を算出する手段と、前記罫線数を基に前記仮文字矩形と判定された矩形が文字矩形であるか否かを判定する手段とを備えたことを特徴としている。
【０００７】
【発明の実施の形態】
以下、本発明の一実施例を図面を用いて具体的に説明する。
（実施例１）
図１は、本発明の実施例１の構成を示し、図２は、実施例１の処理フローチャートを示す。図において、１は画像入力部、２は原画メモリ、３はラン抽出部、４は連結矩形抽出部、５は頻度計数部、６はピーク検出部、７は文字サイズ出力部である。
【０００８】
以下、図２を参照しながら、実施例１の処理動作を説明する。スキャナなどの画像入力部１で原稿を読み取り、入力画像を原画メモリ２に格納する（ステップ１０１）。ラン抽出部３は、原画メモリ２内の画像データの主走査方向（または副走査方向）についてランを抽出しメモリに格納する（ステップ１０２）。
【０００９】
次いで、連結矩形抽出部４は、主走査方向における抽出されたランを用いて連結矩形の抽出を行う（ステップ１０３）。頻度計数部５は、抽出された矩形の縦サイズ（あるいは横サイズ）について頻度を計数する（ステップ１０４）。ピーク検出部６は、頻度分布上で、縦サイズの小さい方から、微分値の符号が変化する点を探索し、この点をピークとする（ステップ１０５）。文字サイズ出力部７は、上記したピークを文字サイズとして出力する（ステップ１０６）。
【００１０】
このように、頻度分布のピークを使用することにより、画像中で一番多い文字のサイズを推定することができる。
【００１１】
上記した実施例では、矩形の縦横分布のピークで文字サイズを推定しているが、ある文字サイズは、全て同じ大きさではなく、文字によってバラツキがある。そこで、このバラツキを吸収するために、矩形の縦横分布の終わり値で文字サイズを推定する。すなわち、ピークを検出した後、ピークから縦サイズの大きい方を探索し、頻度が一定値以下になった点を文字サイズとする。
【００１２】
さらに、複数の文字サイズを使用している場合に、その複数の文字サイズを推定するために、ピークを探索した後、探索した全てのピークについて、ピークから縦サイズの大きい方を探索し、頻度が一定値以下になった点を文字サイズとする。
【００１３】
図３は、２つの文字サイズを含む文字矩形の縦サイズ頻度分布の一例を示す。同じ文字サイズの文字に関して、抽出された連結矩形の横サイズはバラツキが多いが、縦サイズは図に示すように、ある一定範囲に収まる特性がある。この特性は漢字や英語によらない。そして、分布の塊となっている領域（図では２つの領域）を見つけ出すことにより、読み込んだ画像中に存在する文字サイズを推定している。
【００１４】
つまり、図３の例で、ピークを文字サイズとして出力とする場合は、４０（ドット）が文字サイズとして推定される。また、ピークから縦サイズの大きい方を探索し、頻度が一定値以下になった点を文字サイズとする場合は、図３の例で、頻度が一定値（例えば２）以下になった点、つまり４５（ドット）が文字サイズとして推定される。さらに、複数の文字サイズを推定する場合には、頻度が一定値（例えば２）以下になった点である６５（ドット）も文字サイズとして推定される。
【００１５】
（実施例２）
実施例２は、表処理などに先だって連結矩形抽出が行われるが、この抽出された矩形が文字であるか否かを予め判定しておくことにより、より正確に文字サイズを推定する実施例である。また、文字に含まれる直線成分を利用して文字矩形を判定することにより、より正確な文字サイズの推定を行う。
【００１６】
図４は、本発明の実施例２の構成を示し、図５は、実施例２の処理フローチャートを示す。図４において、２１は画像入力部、２２は原画メモリ、２３はラン抽出部、２４は連結矩形抽出部、２５は罫線抽出部、２６は文字矩形判定部、２７は頻度計数部、２８はピーク検出部、２９文字サイズ出力部である。
【００１７】
以下、図５を参照しながら、実施例２の処理動作を説明する。スキャナなどの画像入力部２１で原稿を読み取り、入力画像を原画メモリ２２に格納する（ステップ２０１）。ラン抽出部２３は、原画メモリ２２内の画像データの主走査方向についてランを抽出し、メモリに格納する（ステップ２０２）。
【００１８】
次いで、連結矩形抽出部２４は、主走査方向において抽出されたランについて、所定の閾値（固定閾値）より大きなランのみを対象に連結矩形の抽出を行い（ステップ２０３）、罫線抽出部２５は、抽出された連結矩形から罫線（直線成分）を抽出する（ステップ２０４）。副走査方向についても同様の処理を行い（ステップ２０６）、罫線を抽出する。
【００１９】
文字矩形判定部２６は、主走査方向／副走査方向の何れにも３本以上の罫線が存在していれば（ステップ２０７）、文字矩形として判定する（ステップ２０８）。上記した処理を全ての矩形について処理する（ステップ２０９）。
【００２０】
頻度計数部２７は、文字矩形と判定された矩形の縦サイズについて頻度を計数する（ステップ２１０）。ピーク検出部２８は、頻度分布上で、縦サイズの小さい方から、微分値の符号が変化する点を探索し、この点をピークとする（ステップ２１１）。文字サイズ出力部２９は、上記したピークから縦サイズの大きい方を探索し、頻度がある一定値以下になった点を文字サイズとして出力する（ステップ２１２）。
【００２１】
（実施例３）
文字矩形同士が接触していて、推定された文字サイズを超える大きさの矩形を形成しても、単位面積当たりの罫線数を基に文字矩形として推定する実施例である。つまり、推定された文字サイズを一片とする方形領域の面積を１単位として、この方形領域よりも大きな連結矩形について、その単位面積当たりの罫線数を算出し、その罫線数から文字矩形を判定する。
【００２２】
図６は、本発明の実施例３の構成を示し、図７，８は、実施例３の処理フローチャートを示す。実施例３では、実施例２の構成に、さらに連結矩形抽出部３０、罫線抽出部３１、文字矩形判定部３２を追加している。また、図８の処理フローチャートにおいて、ステップ３１２までの処理は実施例２と同様である。ただし、ステップ３０８で判定された文字矩形は仮文字矩形とする。
【００２３】
以下の処理を仮文字矩形と判定された全ての矩形について行う。連結矩形抽出部３０は、主走査方向において、固定閾値より大きなランのみを対象に連結矩形の抽出を行い（ステップ３１３）、罫線抽出部３１は、抽出された連結矩形から罫線（直線成分）を抽出する（ステップ３１４）。副走査方向についても同様の処理を行い、罫線を抽出する。
【００２４】
文字矩形判定部３２は、主走査方向／副走査方向について、罫線数を（現在処理中の矩形面積／推定された文字サイズの面積）で割って、単位面積（ドットの２乗）当たりの罫線数を求め（ステップ３１５）、主走査方向／副走査方向の何れにも、単位面積当たりの罫線数が３本以上存在すれば、文字矩形として判定する（ステップ３１６）。
【００２５】
（実施例４）
実施例４は、芯線処理によって文字矩形を判定することにより、より正確な文字サイズを推定する実施例である。図９は、本発明の実施例４の構成を示し、図１０は、本発明の実施例４の処理フローチャートである。図において、４０は画像入力部、４１は原画メモリ、４２はラン抽出部、４３は連結矩形抽出部、４４はＩＤ付与部、４５は芯線矩形抽出部、４６は文字矩形判定部、４７は頻度計数部、４８はピーク検出部、４９は文字サイズ出力部である。
【００２６】
スキャナなどの画像入力部４０で原稿を読み取り、入力画像を原画メモリ４１に格納する（ステップ４０１）。ラン抽出部４２は、原画メモリ４１内の画像データの主走査方向についてランを抽出しメモリに格納する（ステップ４０２）。連結矩形抽出部４３は、メモリ上のランを使って連結矩形を抽出し、ＩＤ付与部４４は連結矩形に矩形ＩＤ（シリアル番号）を付与し、その矩形ＩＤを、その連結矩形成分を構成する全てのランにも付与する（ステップ４０３）。
【００２７】
芯線矩形抽出部４５は、同じ矩形ＩＤをもつランについて、ランの中点のみの芯線を使用して矩形を抽出し（ステップ４０４）、副走査方向についても同様の処理を行い、芯線矩形を抽出する（ステップ４０６）。図１１は、芯線矩形の一例を示す。
【００２８】
文字矩形判定部４６は、主走査方向／副走査方向の何れにも３個以上の芯線矩形が存在すれば（ステップ４０７）、文字矩形と判定する（ステップ４０８）。この処理を全ての矩形について行う（ステップ４０９）。以下、実施例２と同様に処理して文字サイズを出力する。
【００２９】
（実施例５）
従来の方法では、固定閾値を用いて罫線を抽出している。このため、表の中に含まれる文字の大きさよりも少し大きな長さを持った線を抽出することが難しい。これは、あらゆるドキュメントにおいて文字内に罫線が抽出されないような、ある程度大きな固定の閾値を設定する必要があるためである。このように、従来の方法では、ある程度大きな固定の閾値を設定しているので、文字内の疑似罫線の抽出を抑えることができるが、逆に、文字サイズよりも少し大きい程度の短い罫線を抽出することができない。
【００３０】
そこで、本実施例では、閾値を固定値ではなく、読み取り原稿の特徴から閾値を推定し、この閾値を基に罫線を判別している。
【００３１】
図１２は、実施例５の構成を示す。図１３は、実施例５の処理フローチャートである。入力画像を原画メモリ５２に格納し（ステップ５０１）、ラン抽出部５３は、主走査方向においてランを抽出しメモリに格納する（ステップ５０２）。連結矩形抽出部５４は、メモリ上のランを使って連結矩形を抽出し、ＩＤ付与部５５は連結矩形に矩形ＩＤ（シリアル番号）を付与し、その矩形ＩＤを、その連結矩形成分を構成する全てのランにも付与する（ステップ５０３）。矩形ＩＤ選択部５６は、ある特定の（つまり、処理対象となる）連結矩形（矩形ＩＤ）を選択し（ステップ５０４）、頻度計数部５７は指定された矩形ＩＤをもつランを検索し、頻度を計数する（ステップ５０５）。
【００３２】
次いで、閾値設定部５８は、ラン頻度の分布を基に閾値を求める（ステップ５０６）。連結矩形抽出部５９は、主走査方向における抽出されたランについて、上記算出された閾値より大きなランのみを対象に連結矩形の抽出を行う（ステップ５０７）。罫線抽出部６０は、抽出された連結矩形から罫線を抽出する（ステップ５０８）。副走査方向についても同様の処理を行い（ステップ５１０）、罫線を抽出する。
【００３３】
文字矩形判定部６１は、主走査方向／副走査方向の何れにも３本以上の罫線が存在していれば（ステップ５１１）、文字矩形として判定する（ステップ５１２）。以下の処理は実施例２と同様である。
【００３４】
（実施例６）
一般的に、縦線と横線を含む表の枠の連結矩形成分のラン頻度分布は、図１４に示すようになる。すなわち、ランレングス１〜１０が縦線のラン分布であり、１０〜２８が縦線あるいは横線に接触している文字のラン分布となっている。２９以上のラン分布は横線のラン分布である。図１４の分布では、閾値を２９に設定することにより、横線のみが抽出できる。分布の微分値がゼロ、つまりラン分布が変化しなくなったら、その点が閾値となる。本実施例では、この閾値を探索するために差分を使用している。
【００３５】
図１５は、実施例６の構成を示す。実施例５と相違する点は、差分計算部６５を設けた点である。図１６は、実施例６の処理フローチャートを示す。
【００３６】
差分計算部６５は、頻度分布についてランレングスの小さい方から順に、隣の頻度との差分を求める（ステップ６０６）。閾値設定部５８は、差分がゼロとなったランレングスを閾値とする（ステップ６０７）。以下、実施例５と同様に、連結矩形抽出部５９は、主走査方向において、設定された閾値より大きなランのみを対象に連結矩形の抽出を行い（ステップ６０８）、罫線抽出部６０は抽出された連結矩形から罫線を抽出する（ステップ６０９）。
【００３７】
（実施例７）
オフィスで作成される表を含む文書のラン分布は、概ね図１４に示す傾向となるが、上記した実施例６のように差分を求めたとき、ノイズ等によって、ランレングス値２９より小さい値でも隣の分布頻度値と一致することがある。あるいは、２９より大きいランレングスでも、頻度値としては１０またはそれ以上の頻度値となる場合もあり、頻度値が隣と一致する場合が必ずあるとは限らない。これは、ラン分布にのっている高周波成分のノイズが原因である。
【００３８】
一般に、高周波成分ノイズはＦＩＲ（Ｆｉｎｉｔ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ）型デジタルフィル夕で除去することができる。そこで、本実施例では、デジタルフィル夕を使用して、高周波ノイズに相当する部分を除去する。
【００３９】
図１７は、実施例７の構成を示し、実施例６の構成にさらにフィルタ処理部６６を付加したものである。また、図１８は、実施例７の処理フローチャートを示す。ステップ７０１〜７０５、ステップ７０７〜７１２は、実施例６の処理と同様である。ステップ７０６では、フィルタ処理部６６において、頻度分布に対してデジタルフィルタ（ローパスフィルタ）をかけて高周波ノイズを除去する。
【００４０】
（実施例８）
図１９は、横線のみのラン分布を示す。ラン分布を連結矩形単位でとると、表の枠を構成する連結矩形や、横線を構成する連結矩形が含まれる。横線のみの連結矩形を、閾値３３の付近で取り出すためには、ラン分布のピークより大きい位置で、微分値がゼロになる点を探せば良い。
【００４１】
図２０は、実施例８の構成を示す。実施例７と相違する点は、ピーク検出部６７を設けた点と、差分計算部６５の処理内容が異なる点である。図２１は、実施例８の処理フローチャートである。
【００４２】
ステップ８０６までの処理は実施例７と同様である。ステップ８０７では、ピーク検出部６７は、頻度分布におけるランレングスの小さい方から、２次微分値がゼロあるいは微分値の符号が変化する点を探索し、ピークとする。次いで、差分計算部６５は、ピークより後方で、隣の頻度との差分を求める（ステップ８０８）。閾値設定部５８は、差分がゼロとなったランレングスを閾値とする（ステップ８０９）。以下の処理は、実施例７と同様であるので、説明を省略する。
【００４３】
（実施例９）
表を認識する際には、連結矩形抽出を繰返し行う必要があり、その都度、原画からランを抽出して、連結矩形を抽出すると処理に時間を要する。そこで、ラン情報のみをあらかじめ用意しておくことにより、ランを使った他の特徴量の抽出等の処理時間を短縮できる。
【００４４】
つまり、ランの属性を保持することで、処理の結果を累積的に保持できるため、認識が終了したランを、その次の認識処理から除くことができ、その結果、認識処理全体の処理時間の短縮が可能となる。同時にラン単位で認識が可能となるため、細部にわたって精度の高い認識処理が可能となる。また、ラン情報に変換されているため、各種の画像処理を短時間で行うことができる。
【００４５】
図２２は、実施例９の構成を示す。この実施例では、実施例８の構成にさらに属性情報記録部６８と文字データ消去部６９を付加している。また、図２３は、実施例９の処理フローチャートである。ステップ９０３において、ラン抽出部５３は、抽出したランに対応するラン属性情報（例えば文字、線などの属性）を保持する領域を確保する。
【００４６】
属性情報記録部６８は、文字矩形判定部６１で文字矩形として判定された矩形内において、連結矩形を構成するランに文字であることを示すマークを記録する（ステップ９１８）。文字サイズが出力された後、文字データ消去部６９では、抽出されたランを調べ、文字であるマークが付与されているランに対応する原画上の黒画素を消去する（ステップ９２２）。
【００４７】
なお、ラン属性情報としては、この他に、ランが線、写真などの画像、ノイズ、線ノイズ、背景などのどれに属しているかを示す属性を保持するようにしてもよい。
【００４８】
（実施例１０）
実施例１０は、本発明をソフトウェアによって実現する場合の実施例である。図２４は、実施例１０のシステム構成例を示す。ＣＤ−ＲＯＭなどの記録媒体には、本発明の文字サイズ推定処理機能または処理手順が記録されていて、これをシステムにインストールする。スキャナなどにセットされた原稿を読み取り、メモリ上に展開された原稿画像から文字矩形を抽出し、抽出された文字矩形のサイズを推定し、その結果をディスプレイなどに表示出力する。
【００４９】
【発明の効果】
以上、説明したように、本発明によれば、以下のような効果が得られる。
（１）連結矩形の縦横幅の分布から文字サイズの推定が可能になる。
【００５０】
（２）画像中に最も多く存在する文字矩形の文字サイズを推定することができる。
【００５１】
（３）画像中に最も多く存在する文字矩形の文字サイズのばらつきを吸収しながら推定することができる。
【００５２】
（４）画像中に複数存在する文字サイズを推定することができる。
【００５３】
（５）予め文字であるか否かの判定を行っているので、より正確に文字サイズの推定が可能になる。
【００５４】
（６）文字矩形同士が接触している場合などでも、文字矩形であるか否かの判定が可能になる。
【００５５】
（７）簡単な芯線処理によって文字矩形を判定することができる。
【図面の簡単な説明】
【図１】  本発明の実施例１の構成を示す。
【図２】  本発明の実施例１の処理フローチャートを示す。
【図３】  ２つの文字サイズを含む文字矩形の縦サイズ頻度分布の一例を示す。
【図４】  本発明の実施例２の構成を示す。
【図５】  本発明の実施例２の処理フローチャートを示す。
【図６】  本発明の実施例３の構成を示す。
【図７】  本発明の実施例３の処理フローチャートを示す。
【図８】  図７の続きの処理フローチャートを示す。
【図９】  本発明の実施例４の構成を示す。
【図１０】  本発明の実施例４の処理フローチャートを示す。
【図１１】  芯線矩形の一例を示す。
【図１２】  本発明の実施例５の構成を示す。
【図１３】  本発明の実施例５の処理フローチャートを示す。
【図１４】  一般的な表を含むランの頻度分布を示す。
【図１５】  本発明の実施例６の構成を示す。
【図１６】  本発明の実施例６の処理フローチャートを示す。
【図１７】  本発明の実施例７の構成を示す。
【図１８】  本発明の実施例７の処理フローチャートを示す。
【図１９】  横線のみのラン分布を示す。
【図２０】  本発明の実施例８の構成を示す。
【図２１】  本発明の実施例８の処理フローチャートを示す。
【図２２】  本発明の実施例９の構成を示す。
【図２３】  本発明の実施例９の処理フローチャートを示す。
【図２４】  本発明の実施例１０の構成を示す。
【符号の説明】
１  画像入力部
２  原画メモリ
３  ラン抽出部
４  連結矩形抽出部
５  頻度計数部
６  ピーク検出部
７  文字サイズ出力部
【図１】
0004129898.tif 000002
【図２】
0004129898.tif 000003
【図３】
0004129898.tif 000004
【図４】
0004129898.tif 000005
【図５】
0004129898.tif 000006
【図６】
0004129898.tif 000007
【図７】
0004129898.tif 000008
【図８】
0004129898.tif 000009
【図９】
0004129898.tif 000010
【図１０】
0004129898.tif 000011
【図１１】
0004129898.tif 000012
【図１２】
0004129898.tif 000013
【図１３】
0004129898.tif 000014
【図１４】
0004129898.tif 000015
【図１５】
0004129898.tif 000016
【図１６】
0004129898.tif 000017
【図１７】
0004129898.tif 000018
【図１８】
0004129898.tif 000019
【図１９】
0004129898.tif 000020
【図２０】
0004129898.tif 000021
【図２１】
0004129898.tif 000022
【図２２】
0004129898.tif 000023
【図２３】
0004129898.tif 000024
【図２４】
0004129898.tif 000025