(57)【特許請求の範囲】
【請求項１】
２値画像から枠罫線のコーナーを検出するコーナー検出手段と、前記検出された枠罫線のコーナーの形状の組み合わせから枠罫線の構成要素を検出する構成要素検出手段と、前記構成要素どうしを連結し、枠構造情報として出力する矩形検出手段と、前記枠構造情報をもとに最外郭の外形枠を検出し、外形枠の構造の特徴を外形枠構造特徴として抽出する外形枠検出手段と、抽出された外形枠毎に内部の構造特徴を内部構造特徴として抽出する特徴抽出手段と、１つ以上の帳票の書式として外形枠及び内部構造特徴を予め登録した枠構造参照テーブルと、前記検出された外形枠構造特徴と前記枠構造参照テーブルを検索し帳票の候補を決め、決められた候補に対して前記検出された内部構造特徴と照合することにより帳票の種別を特定する枠構造照合手段とを具備する帳票認識装置。
【請求項２】
更に、枠罫線と文字を含む２値画像から水平及び垂直方向の所定長以上のランを検出することにより枠罫線を抽出する罫線抽出手段を有し、前記抽出した枠罫線からなるパターンのコーナーを検出することを特徴とする請求項１記載の帳票認識装置。
【請求項３】
構成要素検出手段は、前記コーナーの形状の組み合わせから罫線の屈曲や交差による構成要素としてＬ字要素、Ｔ字要素及び十字要素の構成要素を検出することを特徴とする請求項１また２記載の帳票認識装置。
【請求項４】
外形枠検出手段は、頂点座標を連結させて、独立した外形枠毎に外形枠構造特徴として抽出することを特徴とする請求項１記載の帳票認識装置。
【請求項５】
外形枠構造特徴は、対象帳票内の外形枠の総数、位置及び形状を抽出することを特徴とする請求項４記載の帳票認識装置。
【請求項６】
特徴抽出手段は、各外形枠毎に内部構造特徴として内部の枠の数、位置、幅及び高さを抽出することを特徴とする請求項１記載の帳票認識装置。
【請求項７】
さらに、枠罫線を含む２値画像を記憶する画像メモリと、前記検出された外形枠構造特徴及び内部構造特徴から文字読み取り対象領域の座標に基づき前記画像メモリから文字領域を切り出す文字切り出し手段と、切り出された文字を認識する文字認識手段とを有することを特徴とする請求項１乃至６のいずれかに記載の帳票認識装置。
【請求項８】
２値画像から枠罫線のコーナーを検出するステップと、前記検出された枠罫線のコーナーの形状の組み合わせから枠罫線の構成要素を検出するステップと、前記構成要素どうしを連結し、枠構造情報として出力するステップと、枠構造情報をもとに最外郭の外形枠を検出し、外形枠の構造の特徴を外形枠構造特徴として抽出するステップと
、抽出された外形枠毎に内部の構造特徴を内部構造特徴として抽出するステップと、１つ以上の帳票の書式として外形枠及び内部構造特徴を予め登録した枠構造参照テーブルと、前記検出された外形枠構造特徴と前記枠構造参照テーブルを検索し帳票の候補を決め、決められた候補に対して前記検出された内部構造特徴と照合することにより帳票の種別を特定することにより帳票の種別を認識するステップとを具備する帳票認識方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、帳票のような枠罫線と文字を含む文書画像において枠罫線の構造を認識し、帳票を識別し帳票内に記入されている特定の文字領域を切り出し、文字を自動認識するための帳票認識装置に関する。
【０００２】
【従来の技術】
近年、文書情報の電子化に伴い、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）を始めとする文字認識技術や文書画像処理に対する要望が高まっており、帳票など表形式文書の自動読み取り技術もそのひとつである。とりわけ複数の書式が混在する帳票を処理する場合は、予め人手で帳票を種類毎に分類した後ＯＣＲ装置に読み取らせる必要があり、時間と労力の削減のため帳票の識別と文字読み取りをともに自動化する事が要望されている。
【０００３】
帳票の識別技術としては、例えば特開平２−２１７９７７号公報のように局部的な罫線構造の相違から帳票の種類を識別し、予め指示された領域を読み取る方法があり、その従来例を図１９、図２１及び図２２を用いて説明する。例えば図１９（ａ）に示すように帳票イメージ３１０に対し点線で囲む線分検出領域において水平線分を抽出する事により同図（ｂ）に示す如くｋ１〜ｋ６の６本の線分が検出される。これに対し図２０（ａ）に示す帳票３２０において同様に線分抽出を行うと、同図（ｂ）に示す如くｍ１〜ｍ７の７本の線分が検出される。したがって予め複数の帳票が識別可能な線分検出領域を設定し、領域内の線分の本数、互いの位置関係、長さを検出し比較することにより帳票３１０と３２０の識別が可能となり、予め指定された文字読み取り領域、すなわち図１９（ａ）の帳票３１０においては文字領域３１１及び３１２を、図２０（ａ）の帳票３２０においては文字領域３２１及び３２２を切り出し、文字認識を行うことにより自動読み取りを達成するものである。
【０００４】
切り出された文字の認識については、様々な方式が提案されており例えば、ニューラルネットを用いた文字認識法（森：”ＰＤＰモデルによる手書き漢字認識”、電子情報通信学会論文誌、Ｖｏｌ．Ｊ７３−Ｄ−ＩＩ，  Ｎｏ．８  ｐｐ．１２６８−１２７４  １９９０）があり、認識率も実用的なところまできているが、今回は帳票の枠線認識装置ということで文字認識の前処理に限定しているので文字認識に関しては省略するものとする。
【０００５】
【発明が解決しようとする課題】
しかしながら前記の従来の構成では、帳票の枠罫線構造の局所的な相違を検出するため図２２（ａ）に示すような帳票３３０が混在する場合、線分検出を行うと同図（ｂ）に示すようにｎ１〜ｎ７の７本の線分が検出され、図２０（ｂ）に示した場合と同一となり図２１（ａ）の文字読み取り領域３３１及び３３２を特定することが難しく、また線分検出領域の範囲を予め目視で確認して設定する必要があり、作業が複雑化するという課題があった。
【０００６】
本願発明は、前記従来技術の課題を解決するもので、多種多様な書式の帳票が混在する場合でも帳票を識別し、帳票毎の文字読み取り領域を正確に検出する信頼性の高い帳票認識装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
この課題を解決するために本発明は、２値画像から枠罫線のコーナーを検出するコーナー検出手段と、前記検出された枠罫線のコーナーの形状の組み合わせから枠罫線の構成要素を検出する構成要素検出手段と、前記構成要素どうしを連結し、枠構造情報として出力する矩形検出手段と、前記枠構造情報をもとに最外郭の外形枠を検出し、外形枠の構造の特徴を外形枠構造特徴として抽出する外形枠検出手段と、抽出された外形枠毎に内部の構造特徴を内部構造特徴として抽出する特徴抽出手段と、１つ以上の帳票の書式として外形枠及び内部構造特徴を予め登録した枠構造参照テーブルと、前記検出された外形枠構造特徴と前記枠構造参照テーブルを検索し帳票の候補を決め、決められた候補に対して前記検出された内部構造特徴と照合することにより帳票の種別を特定する枠構造照合手段とを設けたものである。
さらに、枠罫線を含む２値画像を記憶する画像メモリと、前記検出された外形枠構造特徴及び内部構造特徴から文字読み取り対象領域の座標に基づき前記画像メモリから文字領域を切り出す文字切り出し手段と、切り出された文字を認識する文字認識手段とを有するようにしたものである。
【０００８】
これにより、多種多様な書式の帳票が混在する場合でも帳票を識別し、帳票毎の文字読み取り領域を正確に検出でき、信頼性の高い帳票認識装置が実現できる。
【０００９】
【発明の実施の形態】
本発明の請求項１記載の発明は、２値画像から枠罫線のコーナーを検出するコーナー検出手段と、前記検出された枠罫線のコーナーの形状の組み合わせから枠罫線の構成要素を検出する構成要素検出手段と、前記構成要素どうしを連結し、枠構造情報として出力する矩形検出手段と、前記枠構造情報をもとに最外郭の外形枠を検出し、外形枠の構造の特徴を外形枠構造特徴として抽出する外形枠検出手段と、抽出された外形枠毎に内部の構造特徴を内部構造特徴として抽出する特徴抽出手段と、１つ以上の帳票の書式として外形枠及び内部構造特徴を予め登録した枠構造参照テーブルと、前記検出された外形枠構造特徴と前記枠構造参照テーブルを検索し帳票の候補を決め、決められた候補に対して前記検出された内部構造特徴と照合することにより帳票の種別を特定する枠構造照合手段とを具備する帳票認識装置としたものであり、帳票内の外形枠の構造に基づき帳票の書式カテゴリを判定し、さらに個々の外形枠毎に予め参照テーブルに登録した見本となる枠罫線構造と照合するため、正確に帳票の種別を特定できるという作用を有する。
【００１０】
請求項２に記載の発明は、更に、枠罫線と文字を含む２値画像から水平及び垂直方向の所定長以上のランを検出することにより枠罫線を抽出する罫線抽出手段を有し、前記抽出した枠罫線からなるパターンのコーナーを検出することを特徴とするもので、文字が消去され枠罫線のみからコーナー検出が可能となり高精度に構成要素が検出できるという作用を有する。
【００１１】
請求項３に記載の発明は、構成要素検出手段は、前記コーナーの形状の組み合わせから罫線の屈曲や交差による構成要素としてＬ字要素、Ｔ字要素及び十字要素の構成要素を検出するもので、コーナーの組合せから罫線の構成要素を検出することにより傾いて読み取られた帳票からでも安定して構成要素が検出できるために正確に帳票の種別を特定でき帳票毎の文字読み取り領域を正確に検出できるという作用を有する。
請求項４に記載の発明は、外形枠検出手段は、頂点座標を連結させて、独立した外形枠毎に外形枠構造特徴として抽出することを特徴とするもので、外形枠の頂点座標を連結することで容易に外形枠構造を抽出することができるという作用を有する。
請求項５に記載の発明は、外形枠構造特徴は、対象帳票内の外形枠の総数、位置及び形状を抽出することを特徴とするもので、外形枠の頂点座標を連結することで容易に外形枠構造を抽出することができるという作用を有する。
請求項６に記載の発明は、特徴抽出手段は、各外形枠毎に内部構造特徴として内部の枠の数、位置、幅及び高さを抽出することを特徴とするもので、抽出された各外形枠毎の内部構造を用いて帳票の種別を正確に特定することができるという作用を有する。
請求項７に記載の発明は、さらに、枠罫線を含む２値画像を記憶する画像メモリと、前記検出された外形枠構造特徴及び内部構造特徴から文字読み取り対象領域の座標に基づき前記画像メモリから文字領域を切り出す文字切り出し手段と、切り出された文字を認識する文字認識手段とを有することを特徴とするもので、正確に帳票の種別を特定でき帳票毎の文字読み取り領域を正確に検出できるという作用を有する。
請求項８に記載の発明は、２値画像から枠罫線のコーナーを検出するステップと、前記検出された枠罫線のコーナーの形状の組み合わせから枠罫線の構成要素を検出するステップと、前記構成要素どうしを連結し、枠構造情報として出力するステップと、枠構造情報をもとに最外郭の外形枠を検出し、外形枠の構造の特徴を外形枠構造特徴として抽出するステップと、個々の外形枠に囲まれた内部の構造特徴を内部構造特徴として抽出するステップと、１つ以上の帳票の書式として外形枠及び内部構造特徴を予め登録した枠構造参照テーブルと、前記検出された外形枠構造特徴と前記枠構造参照テーブルを検索し帳票の候補を決め、決められた候補に対して前記検出された内部構造特徴と照合することにより帳票の種別を特定することにより帳票の種別を認識するステップとを具備するもので、帳票内の外形枠の構造に基づき帳票の書式カテゴリを判定し、さらに個々の外形枠毎に予め参照テーブルに登録した見本となる枠罫線構造と照合するため、正確に帳票の種別を特定できるという作用を有する。
【００１２】
以下、本発明の実施の形態について、図１から図２１を用いて説明する。
（実施の形態１）
図１は帳票認識装置のブロック構成図を示し、１は帳票を読み取り２値画像を得る画像入力手段、２は前記２値画像を記憶する画像メモリ、３は２値画像の水平及び垂直方向の罫線を抽出する罫線抽出手段、４は２値図形のコーナーを検出するコーナー検出手段、５はコーナー形状の組み合わせから罫線の屈曲や交差によるＬ字要素、Ｔ字要素、十字要素を検出する構成要素検出手段、６は構成要素どうしを連結し、連結形態を枠構造情報として出力する矩形検出手段と、７は帳票内の矩形構造を含む最外郭の外形枠を検出し、帳票の大局的な枠構造特徴を外形枠構造特徴として抽出する外形枠検出手段、８は個々の外形枠に囲まれた内部の枠の数、位置、幅、高さ等の特徴を内部構造特徴として抽出する特徴抽出手段、９は外形枠の大局的な特徴である外形枠構造特徴に基づき帳票を分類し、個々の外形枠の構造特徴として前記外形枠構造特徴及び前記内部構造特徴を登録する枠構造参照テーブル、１０は枠構造参照テーブル上の枠構造特徴との照合により帳票の種別を認識し文字読み取り対象枠を検出する枠構造照合手段、１１は読み取り対象枠の文字領域を切り出す文字切り出し手段、１２は切り出された文字を認識する文字認識手段である。
【００１３】
以上のように構成された帳票認識装置について、その動作を説明する。
画像入力手段１により帳票を読み取り、文字部が１、背景が０の値をもつ２値画像に変換し画像メモリ２に記憶し、罫線抽出手段３により２値画像を水平及び垂直方向に走査し所定長以上に値”１”が連続する線を抽出し、コーナー検出手段４により水平及び垂直の罫線からなるパターンのコーナーを検出し、構成要素検出手段５によりコーナー形状の組み合わせから罫線の屈曲部や交差部のＬ字、Ｔ字、及び十字の構成要素を検出し、矩形検出手段６により構成要素どうしを連結しその連結形態を検出し、外形枠検出手段７により帳票内の矩形構造を含む最外郭の外形枠を検出し、外形枠の総数、位置、形状等の大局的な特徴を抽出し、特徴抽出手段８により個々の外形枠に囲まれた内部の枠の数、位置、幅、高さ等の特徴を抽出し、枠構造参照テーブル９に予め見本となる帳票の外形枠の構造及び個々の外形枠の内部の特徴を登録しておき、枠構造照合手段１０により対象とする帳票の枠構造情報と枠構造参照テーブル９上の見本となる枠構造と照合し帳票を特定し、その帳票における読み取り対象枠を認識し頂点の座標を検出し、文字切り出し手段１１により読み取り対象枠の４頂点の座標に基づき文字領域を切り出し、文字認識手段１２により切り出された文字を認識するものである。
【００１４】
次に図１における各構成要素の動作を詳細に説明する。帳票を読み取り２値画像を出力する画像入力手段１は、読み取り線密度を約４００ｄｐｉ程度とし、原稿である帳票にＬＥＤ（発光ダイオード）等で照明しその反射光を一次元のＣＣＤカメラで読み取り、任意の閾値で２値化して文字部が値１、背景が値０の２値画像を出力するものである。また、照明は原稿である帳票の枠線や記入された文字の色によって異なるが、例えば青・黒および赤等の枠線に対して、黒や青等で数字や記号および文字が記入された場合、緑あるいは黄緑の波長（５５０〜５７０ｎｍ付近）のＬＥＤを用いることが多い。２値化処理においては、固定閾値法や浮動閾値法（森、大津：”認識問題としての二値化と各種方法の検討”、情報処理学会、イメージプロセッシング１５−１，  Ｎｏｖ．  １９７７）が良く知られている２値化処理法であり、原稿に合わせて任意の２値化処理法を選択すればよい。
【００１５】
このように２値化された画像データは画像メモリ２に格納され、メモリ上の画像データに対し以降に説明する罫線抽出と文字切り出しを行う。
【００１６】
次に罫線抽出手段３について図２を用いて説明する。図２は罫線抽出手段３における画像処理のブロック構成図を示し、２０は画像メモリ２からの２値画像、２１は水平方向にパターンを縮める水平方向収縮手段、２２は水平方向にパターンを延長する水平方向延長手段、２３は垂直方向にパターンを縮める垂直方向収縮手段、２４は垂直方向にパターンを延長する垂直方向延長手段、２５は水平方向延長手段２２と垂直方向延長手段２４の出力のＮＯＲ演算を行うＮＯＲ回路である。画像メモリ２の２値画像に対し、水平方向収縮手段２１において水平方向にｈ画素縮めることにより、水平方向にｈ画素以下の幅の線や文字が消滅し、続く水平方向延長手段２２において水平方向にｈ画素延長することによりｈ画素より長い水平線分が抽出される。同様に垂直方向収縮手段２３において垂直方向にｖ画素縮めることにより、垂直方向にｖ画素以下の幅の線や文字が消滅し、続く垂直方向延長手段２４において垂直方向にｖ画素延長することによりｖ画素より長い垂直線分が抽出される。ＮＯＲ回路２５により水平方向延長手段２２と垂直方向延長手段２４の出力のＮＯＲ演算を行うと、文字が消去され枠罫線のみが残る２値画像が得られ、枠罫線及び背景がそれぞれ”０”及び”１”の値をもつ。
【００１７】
図２における水平及び垂直方向の収縮及び延長処理について図３及び図４を用いてさらに詳細に説明する。
【００１８】
図３は水平及び垂直方向収縮手段２１及び２３の動作を示すフロー図を示しており、２値画像を水平方向または垂直方向に１ラインずつ順次走査し終了ラインまで処理し、各ライン毎にｎ画素の収縮処理をおこなうとき、ランレングスのカウント値をＣとすると、ステップ３１において各ラインの走査開始時にカウント値Ｃに０を設定し、ステップ３２において１画素データを読み込み、ステップ３３において画素の値が０（白）か１（黒）かを判定し、０のときステップ３４へ進みカウント値Ｃに０を設定し、さらにステップ３５へ進み黒ランではないので値０を出力する。ステップ３３の判定で値が１のときはステップ３６へ進みカウント値Ｃがｎ以上かどうかの判定を行い、ｎ未満のときステップ３７へ進みカウント値Ｃをインクリメントし、さらにステップ３５へ進みその走査位置までに所定の黒ランが存在しないので値０を出力する。ステップ３６の判定でカウント値Ｃがｎ以上のときステップ３８へ進みその走査位置までにｎ画素以上のランレングスをもつ黒ランが存在するので値１を出力する。以上の処理を１ラインの終了まで行うことにより、そのライン上の黒ランがｎ画素縮められる。次のラインを処理するときは再びステップ３１から同様の処理を繰り返す。このようにして全画面の走査が終了すると、水平または垂直方向にｎ画素以上のランレングスをもつ線分が抽出される。
【００１９】
同様に図４は水平及び垂直方向延長手段２２及び２４の動作を示すフロー図を示しており、２値画像を水平方向または垂直方向に１ラインずつ順次走査し終了ラインまで処理し、各ライン毎にｎ画素の延長処理をおこなうとき、ランレングスのカウント値をＣとすると、ステップ４１において各ラインの走査開始時にカウント値Ｃにｎを設定し、ステップ４２において１画素データを読み込み、ステップ４３において画素の値が０（白）か１（黒）かを判定し、１のときステップ４４へ進みカウント値Ｃにｎを設定し、さらにステップ４５へ進み黒ラン上にあるので値１を出力する。ステップ４３の判定で値が０のときはステップ４６へ進みカウント値Ｃが０以下かどうかの判定を行い、０より大きい場合ステップ４７へ進みカウント値Ｃをデクリメントし、さらにステップ４５へ進みその走査位置は黒ランからｎ画素以内の距離にあるので値１を出力する。ステップ４６の判定でカウント値Ｃが０以下のときステップ４８へ進みその走査位置は黒ランからｎ画素より大きく離れているので値０を出力する。以上の処理を１ラインの終了まで行うことにより、そのライン上の黒ランがｎ画素延長される。次のラインを処理するときは再びステップ４１から同様の処理を繰り返す。このようにして全画面の走査が終了すると、水平または垂直方向にランレングスがｎ画素延長される。
【００２０】
次にコーナー検出手段４、構成要素検出手段５、及び矩形検出手段６における一連の処理について説明するが、これらの内容は同一出願人による特願平７−０１６８６２号公報に記載されており詳細な説明は省略し、その動作を簡単に説明する。
【００２１】
まずコーナー検出手段４について図５から図７を用いて説明する。図５はコーナーを検出するための前処理として、入力画像を方向コード化画像に変換した結果を示す図、図６は方向コード１〜８と実際の方向の対応関係を示す図、図７が検出するコーナーの具体例を示す図である。図５において５１は枠罫線の画素、５２は背景の画素、数字は輪郭点に付与された方向コードをそれぞれ示しており、この場合背景パターンに対し時計回りに輪郭を追跡するときの追跡の方向を、方向コード１〜８として割り当てる。このように方向コード化された画像から方向コードの変化点、すなわちコーナーを検出する。このために３×３近傍において注目位置（中央画素）コードが指示する方向に、注目画素と同一方向コードでない位置を検出する。図５において丸で囲まれた位置は方向コードの変化点を示しているが、例えば５３の位置では図７（ａ）に示す画素配置となっており、注目画素の指示する方向”３”の位置の方向コードは”１”となっており、輪郭の方向が”３”から”１”へ変化することを意味するので”３１”というコードで表記し、座標と変化する方向コード（以下方向変化コードとよぶ）を１組として検出する。同様に画素位置５４、５５、５６は図７の（ｂ）、（ｃ）、（ｄ）に対応しており、それぞれ”１７”、”７５”、”５３”という方向変化コードが与えられ、これらのコーナー点は、ｘ座標、ｙ座標、方向変化コードを１組の特徴情報として構成要素検出手段５へ通知する。
【００２２】
次に構成要素検出手段５について図８と図９を用いて説明する。図８はコーナー点の組み合わせから構成要素を検出するための判定条件を示す図、図９は構成要素の記述形式を示す図である。図８において（ａ）（ｂ）（ｃ）（ｄ）はＬ字要素の検出例、（ｅ）（ｆ）（ｇ）（ｈ）はＴ字要素の検出例、（ｈ）は十字要素の検出例を示しており、コーナー検出手段４からのコーナー点の特徴情報を用いて、ｘ，ｙ座標が所定の距離以内にある複数のコーナー点をグループ化し、グループのメンバーであるコーナー点の方向変化コードの組み合わせから、構成要素の種類が対応付けられる。このようにして検出された構成要素の形状は、図９（ａ）に示すように４ビットのコード（以下形状コードとよぶ）で記述され、各ビットは上位から図９（ｂ）のＳ、Ｗ、Ｎ、Ｅのいずれの方向に腕が存在するかを示している。例えば図８（ａ）に示すＬ字要素はＳ方向とＥ方向に腕を有しているので、”１００１”のビットパターンで記述される。構成要素のｘ座標及びｙ座標は、グループのメンバーであるコーナー点のｘ座標及びｙ座標の平均値を与えるものとし、構成要素検出手段５はこのｘ座標、ｙ座標、及び前記構成要素の形状コードを特徴情報として、矩形検出手段６に通知する。
【００２３】
次に矩形検出手段６について図１０を用いて説明する。図１０は構成要素どうし連結関係を示す図である。図１０（ａ）は構成要素検出手段５において検出されたＬ字要素、Ｔ字要素、十字要素の一例を示すもので、矩形検出手段６は矩形情報としてこれら構成要素の連結関係を記述した連結テーブルを生成出力する。まず各構成要素に対し識別ラベルｅ１からｅ２０を付与し、次に前記構成要素検出手段５からの特徴情報（ｘ座標、ｙ座標、形状コード）に基づき、形状コードの示す腕についてｘ方向とｙ方向を探索し、連結可能な腕をもつ構成要素のうち最短距離にあるものを検出する。同図（ｂ）は構成要素の連結関係を示す連結テーブルを示すもので、各構成要素についてどの要素と連結するかをＮ、Ｓ、Ｅ、Ｗの各方向について記述する。例えばＬ字要素ｅ１の場合は、腕Ｓ及びＥに対応する構成要素としてｅ１５及びｅ２が存在し、Ｔ字要素ｅ２の場合は腕Ｓ、Ｗ、及びＥに対応する構成要素としてｅ８、ｅ１、及びｅ３が存在することになる。同図（ｂ）の属性フラグは特徴抽出手段８において使用するパラメータであり具体的内容は後述する。
【００２４】
次に外形枠検出手段７について図１１及び１２を参照しながら説明する。図１１（ａ）は外形枠の一例を示す図、図１１（ｂ）は時計回りに外形枠を追跡し再び始点に戻るまでの経路を示す図、図１２は外形枠を検出する処理のフロー図である。図１１（ａ）において太線で示される矩形６２、６３、及び６４が外形枠であり、帳票６１において閉じた枠構造の最も外側の罫線で構成される。例えば外形枠６２について、始点要素ｆ１から時計回りに外形枠を追跡し再び始点に戻るまでの経路である追跡経路は図６（ｂ）に示すように、ｆ１、ｆ２、ｆ６、ｆ１０、ｆ１２、ｆ１１、ｆ９、ｆ５、ｆ１となり、外形枠の頂点は丸印で示すように追跡の方向が変化する構成要素となりｆ１、ｆ２、ｆ１２、ｆ１１、ｆ１であり、これらを頂点経路と呼ぶ。以下追跡経路は［・・・］、頂点経路は｛・・・｝というように表記すると、外形枠６３については追跡経路は［ｆ３  ｆ４  ｆ８  ｆ１４  ｆ１３  ｆ７  ｆ３］となり、頂点経路は｛ｆ３  ｆ４  ｆ１４  ｆ１３  ｆ３｝であり、外形枠６４については追跡経路は［ｆ１５  ｆ１６  ｆ１７  ｆ２０  ｆ２４  ｆ２９  ｆ３３  ｆ３２  ｆ３１  ｆ３０  ｆ２５  ｆ２１  ｆ１８  ｆ１５］であり、頂点は｛ｆ１５  ｆ１７  ｆ３３  ｆ３２ｆ３１  ｆ３０  ｆ１５｝である。したがって図１１（ａ）に示す帳票の例では外形枠の総数Ｎは３となる。次にこれらの外形枠を抽出するための処理について図１２を参照しながら説明する。まずフロー図で用いる変数について説明する。入力変数は、図１０（ｂ）に示した構成要素連結テーブルで、テーブル上のｉ番目の構成要素に関して、識別ラベルをｅｉ、ｘ座標をｘ（ｅｉ）、ｙ座標をｙ（ｅｉ）、形状コードをｃｏｄｅ（ｅｉ）、方向ポインタをｄｋ（ｅｉ）とし、Ｓ、Ｗ、Ｎ、Ｅの各方向に対しｋ＝０、１、２、３が対応する。ｉはテーブル上の構成要素の総数をＭとすると、０から（Ｍ−１）の値をとるものとする。次に出力変数は、外形枠の総数をＮ、ｊ番目の外形枠に関して、追跡経路をＢｊ＝［ｂｊ（０）ｂｊ（１）・・・］、頂点経路をＣｊ＝｛ｃｊ（０）ｃｊ（１）・・・｝とする。ただしｊは０から（Ｎ−１）の値をとるものとする。また制御変数として、外形枠の追跡を開始した構成要素ポインタｓｐ、次を追跡するための構成要素ポインタｎｐ、現在の追跡している方向を示す変数ｄｉｒ、外形枠の追跡フラグｆとする。まず７１において外形枠総数Ｎに０を設定し、７２において外形枠を追跡中かどうかを示すフラグｆに０を設定し、更に７３において制御変数ｉ及びｊに０を設定する。以下、構成要素連結テーブルを参照しながら、個々の外形枠を時計回りに追跡する。７４において制御変数ｉが構成要素の総数Ｍ以上の場合処理は終了し、そうでない場合には７５に進む。７５においてフラグの値から現在外形枠を追跡中かどうかを判定し、フラグの値が０、すなわち外形枠の始点を探索中であるとき７６の判定に進み、フラグの値が１、すなわち外形枠を追跡中であるとき８４の判定に進む。７６の判定は現在注目している構成要素が外形枠追跡の始点であるかどうかを判定するもので、外形枠の左肩の要素、すなわちＳ方向及びＥ方向に腕をもつ構成要素かどうかを判定し、該当する場合は７８へ進み追跡フラグ���をセットし、該当しない場合は７７へ進み制御変数ｉを更新し、次の構成要素をチェックする。７９及び８０は制御変数に初期値を与えるステップであり、７９において始点ポインタを設定し、８０において制御変数ｋｋと現在の追跡方向を示す変数ｄｉｒに、方向Ｅを示す値３を設定する。次に８１及び８２において、現在注目している構成要素の識別コードｅｉを追跡経路Ｂｊ及びＣｊに登録する。そして８３において次点ポインタｎｐに現在着目している構成要素のＥ方向ポインタの値をセットする。次に再び判定７５へ戻り、今回は追跡フラグｆがセットされているので判定８４へ進む。８４は次点ポインタｎｐと始点ポインタｓｐの一致判定を行うもので、一致した場合は外形枠としてクローズしたことを意味し、９４へ進み外形枠の総数Ｎをインクリメントし、次に９５において制御変数ｊをインクリメントし、更に９６において追跡フラグｆをリセットし、７７において制御変数ｉを更新し再び７４の判定を行う。８４の判定において次点ポインタと始点ポインタが一致しないとき、次点ポインタｎｐの指す構成要素においてＳ、Ｗ、Ｎ、Ｅの各方向のポインタを検索し、次のｎｐを決める。８５は上記Ｓ、Ｗ、Ｎ、Ｅの方向を検索する際、どの方向から検索するかを決める処理で、式中の％はモジュロ演算を示す。すなわち現在の方向ｋｋに３を加えモジュロ演算を行うことにより、現在の方向に対し時計回りにみてすぐ隣の方向から、時計回り順にチェックしていく。このとき８６の判定において、該方向に腕を有するかどうかの判定を行い、腕を有さない場合は、８７でｋｋの値を更新し再び８５へ進み、腕を有する場合は判定８８へ進む。８８は腕の方向が現在の追跡方向と一致しているかどうかの判定を行うもので、一致しない場合は追跡方向が変わるため、９０において変数ｄｉｒに新たな追跡方向を設定し、９１において注目している構成要素が方向変化点、すなわち頂点であるとして、頂点経路Ｃｊに登録し、さらに８９において追跡経路Ｂｊにも登録する。８８の判定において追跡方向が変化しない場合は追跡経路Ｂｊにのみ登録する。続いて次点ポインタｎｐに求められた方向ｋの構成要素の識別コードをセットし、現在の方向を示す制御変数ｋｋにｋの値をセットし、再び７５以下の判定を繰り返す。以上の処理を終了まで実行することにより、帳票内の全ての外形枠が検出され、総数Ｎ、追跡経路Ｂｊ、及び頂点経路Ｃｊが求められる。
【００２５】
次に特徴抽出手段８について図１３から図１５を用いて説明する。図１３及び図１４は構成要素の外形枠への属性を検出するフロー図、図１５は前記構成要素連結テーブルから各外形枠の内部枠を検出するフロー図である。まず図１３のフロー図で用いられる変数について説明する。入力となるデータは図１０（ｂ）で示した構成要素連結テーブルと図１２の処理で得られた追跡経路Ｂｊ（ｊ＝０〜Ｎ−１）であり、識別ラベル、形状コード、方向ポインタは図１２と同様の表記とする。
また追跡経路Ｂｊに属する要素ｂｊ（ｈ）の総数をｐｊと表記する。これに対し出力データとしては、各構成要素がどの外形枠に所属するかを示す属性フラグｇ（ｅｉ）である。すなわち図１０（ｂ）に示した構成要素がどの外形枠に所属するかを判定するものである。判定に先立ち、あらかじめ全ての構成要素の属性フラグｇ（ｅｉ）に−１がセットされているものとする。図１３において、まず１０１から１０４において制御変数ｊ、ｈ、ｉ、ｋに０を設定し、１０９の判定において注目している構成要素の腕の方向ポインタの位置に、追跡経路上の構成要素と一致するかどうかを判定する。一致する場合は１１４へ進み属性フラグｇ（ｅｉ）にｊの値すなわち所属する外形枠の番号を設定する。これに対し一致しない場合は１１１以下の判定へ進み、条件を満たすときは方向の制御変数ｋを更新し再び１０９の判定を行う。１１１では制御変数ｉがＭ−１まで進んだかどうかを判定するもので、条件を満たすときは１０４からの処理を繰り返し、満たさない場合は１１２以下の判定に進む。１１２では制御変数ｈが追跡経路Ｂｊの要素数ｐｊまで進んだかどうかを判定するもので、条件を満たすときは１０３からの処理を繰り返し、満たさない場合は１１３の判定に進む。１１３では制御変数ｊがＮ−１まで進んだかどうかを判定するもので、条件を満たすときは１０２からの処理を繰り返し、満たさない場合は図１４に示す処理へ進む。以上の処理により各外形枠上の構成要素の属性フラグｇ（ｅｉ）が設定されたことになる。図１４で示すプロセスは、構成要素連結テーブル自身を参照し、まだ属性の決まっていない要素に対し、既に属性のきまっている構成要素の方向ポインタとの一致判定を行い、一致する場合は同一の属性フラグを与える処理である。まず１２１で制御変数ｉに０、フラグｆに０をそれぞれ設定し、次に１２８において構成要素ｅｉの属性が決まっているかどうかを判定し、決まっている場合は１３３へ進み制御変数ｉがＭ−１まで進んでいなければｉを更新し再び１２８の判定を行う。属性が決まっていない場合は１２２へ進みフラグに１をセットし、１２３へ進み制御変数ｓに０を設定し、続く１２９で既に属性の決まっている構成要素を探索する。未だ属性が決まってない場合は１３１の判定へ進み制御変数ｓがＭ−１まで進んでいなければｓを更新し再び１２９の判定を行う。属性の決まっている構成要素があった場合、１２４で制御変数ｒに０を設定し、１３０において方向ポインタの中に、注目している構成要素ｅｉが存在するかどうかを判定し、存在する場合は１３５へ進み属性フラグｇ（ｅｉ）にｇ（ｅｓ）を設定する。１３０の条件を満たさない場合は１２５においてｒをインクリメントし他の方向ポインタを見る。１３３において制御変数ｉがＭ−１まで進んだときは１３４へ進み、フラグｆの値を検査し値が０でない場合は再び１２１から処理を繰り返す。１３４の判定でフラグの値が０のままであれば、全ての構成要素の属性が与えられたことになり、終了する。次に構成要素連結テーブルから各外形枠の内部の枠を検出する処理フローについて図１５を参照しながら説明する。まず図１５で用いられる変数について説明する。入力となるデータは図１０（ｂ）で示した構成要素連結テーブルであり、識別ラベル、方向ポインタ、所属フラグは図１３及び図１４と同様の表記とする。これに対し出力データとしては、各外形枠ごとの内部枠構造テーブルＲｊと各外形枠毎の内部枠の総数ｔｊである。ただしｊは０から（Ｎ−１）の値をとるもの
とする。
【００２６】
枠の４頂点のうち左上の点を始点と定めると、内部枠構造テーブルＲｊは、個々の枠の識別番号、始点のｘ座標及びｙ座標、枠の幅ｗと高さｈを要素としてもつものとする。まず１４１から１４３において制御変数ｉ及びｊと内部枠の総数ｔｊに０を設定する。１４５の判定で対象とする構成要素が注目している外形枠に所属するかどうかを判定し、所属しない場合は判定１５９へ進み、所属する場合は判定１４６へ進む。１４６は対象としている構成要素が枠の始点であるかどうかを判定するもので、Ｅ方向及びＳ方向のポインタに連結の相手となる構成要素が存在するかどうかが判定条件である。始点である場合１４７以下の処理に進むが、始点から枠として認識する方法は、基本的に始点からＥ→Ｓ→Ｗ→Ｎと右回りに連結線をたどり、行き止まりになれば前の要素に戻り新しい構成要素を選択して探索を繰り返し、最後に始点に戻ることのできる構成要素の集まりを１つの枠とするものである。まず１４７において対象点のＥ方向に構成要素が連結しているがどうか調べ、ｎｏならば１５９へ進み、ｙｅｓならば１４８へ進み連結しているＥ方向の構成要素を対象点にする。次に１４９において対象点のＳ方向に構成要素が連結しているがどうか調べ、ｎｏならば１４７に戻り、ｙｅｓならば１５０へ進み連結しているＳ方向の構成要素を対象点にする。続いて１５１において対象点のＷ方向に構成要素が連結しているがどうか調べ、ｎｏならば１４９に戻り、ｙｅｓならば１５２へ進み連結しているＷ方向の構成要素を対象点にする。続いて１５３において対象点のＮ方向に構成要素が連結しているがどうか調べ、ｎｏならば１５１へ戻り、ｙｅｓならば１５４へ進み連結しているＮ方向の構成要素を対象点にする。続いて１５５において１５４の対象点が始点と一致するかどうか調べ、ｎｏならば１５３に戻り、ｙｅｓならば１つの枠を検出したので１５６へ進む。１５６では始点のｘ座標とＥ方向の構成要素のｘ座標の差から枠の幅ｗを算出し、また始点のｙ座標とＳ方向の構成要素のｙ座標の差から枠の高さｈを算出する。次に１５７において内部枠構造テーブルＲｊに該枠の始点のｘ座標、ｙ座標、幅ｗ、高さｈを登録し、１５８において内部枠の総数ｔｊをインクリメントする。その後１５９へ進み制御変数ｉの判定を行い、ｉが構成要素の総数Ｍ−１まで進んでいないとき１６０へ進みｉをインクリメントし再び１４５の判定に進み、ｉがＭ以上の場合は１６１へ進む。１６１では制御変数ｊの判定を行い、ｊが外形枠の総数Ｎ−１まで進んでいないとき１６２へ進みｊをインクリメントし再び１４２に戻り、ｊがＮ以上の場合は終了となる。以上図１２から図１５を用いて説明した外形枠検出手段７及び特徴抽出手段８により、帳票の外形枠構造特徴として外形枠の総数、頂点位置及び個々の外形枠の内部構造特徴として内部枠の総数、枠の始点位置、幅、高さが検出され、次の枠構造照合手段１０において枠構造参照テーブル９に登録されている帳票の枠構造と照合し、帳票を特定し文字読み取り領域を決定する。
【００２７】
以下枠構造参照テーブル９と枠構造照合手段１０について図１６と図１７を用いて説明する。図１６は枠構造参照テーブル９に登録してある帳票の具体例、図１７は枠構造参照テーブル９の構造を示す図である。図１６（ａ）に示す帳票は３個の外形枠２１１、２１２、２１３が存在し、個々の外形枠には１３個の内部枠が存在し、それぞれ（１）から（１３）の識別番号が与えられている。また同図（ｂ）に示す帳票は２個の外形枠２２１、２２２が存在し、個々の外形枠には１１個の内部枠が存在し、それぞれ（１）から（１１）の識別番号が与えられている。また同図（ｃ）に示す帳票は１個の外形枠２３１が存在し、１１個の内部枠が存在しそれぞれ（１）から（１１）の識別番号が与えられている。さらに同図（ｄ）に示す帳票は１個の外形枠２４１が存在し、１３個の内部枠が存在しそれぞれ（１）から（１３）の識別番号が与えられている。これらの帳票の枠構造の特徴は図１７（ａ）（ｂ）に示すテーブルに登録されている。図１７において（ａ）は外形枠構造を登録するテーブル、（ｂ）は内部枠構造を登録するテーブルを示す。同図（ａ）においてテーブルに登録する要素としては、外形枠の総数、頂点数、個々の外形枠における内部枠の総数、外形枠の識別番号、外形枠の頂点座標があり、入力された帳票におけるこれらの特徴をパラメータとしてテーブルを検索することにより、帳票の候補が決まる。次に候補として挙げられた帳票に対し、今度は同図（ｂ）に示す内部の枠の詳細構造を順次照合する。すなわち個々の枠について始点座標、幅、及び高さの一致判定を行い一致したとき帳票が特定できたとみなし、読み取り対象枠の識別番号に対応する入力帳票の枠の始点座標、幅、高さを文字切り出し手段１１に通知する。例えば図１６（ｄ）に示す帳票の場合、読み取り対象枠は（６）及び（７）となりそれぞれの枠の始点、幅、高さが文字切り出し手段１１に通知される。
【００２８】
次に、文字切り出し手段１１について説明する。文字切り出し手段１１は、画像メモリ２から実際の文字の２値イメージを切り出して文字認識手段１２に送るもので、その処理について図１８を用いて説明する。図１８は、帳票の枠の中に文字が描かれている２値イメージを示している。ここで、２５１は読み取り対象枠の始点（ｘｓ，ｙｓ）、２５２は文字読み取り領域、２５３は文字切り出し領域を示す。枠構造照合手段１０より通知された始点（ｘｓ，ｙｓ）、幅ｗ、高さｈに基づき、マージンｄｘとｄｙを見込んで、始点２５４（ｘｓ＋ｄｘ，ｙｓ＋ｄｙ）から幅（ｗ−２ｄｘ）、高さ（ｈ−２・ｄｙ）の領域を読み取り領域２５４として決定する。個々の文字の切り出し領域は、この読み取り領域において水平方向及び垂直方向のプロジェクションをとることにより決定され、水平及び垂直方向において所定の度数以上の領域を文字切り出し領域２５３とする。プロジェクションを用いた文字切り出しは一般的な技術であるので詳細な説明は省略する。このように切り出された個々の文字を後段の文字認識手段１２に転送し、指定された枠内の文字列を認識する事ができる。
【００２９】
【発明の効果】
以上のように本発明によれば、画像入力手段により読み取られたの帳票の２値画像に対して、罫線を抽出し罫線の交点である構成要素を検出し、各構成要素どうしを連結し枠構造を生成し、枠構造の外形枠を検出しその特徴から帳票を分類し、さらに各外形枠の内部の枠構造を見本と照合して帳票の種類を特定し、読み取り対象枠を検出することにより、多種多様な書式の帳票が混在する場合でも帳票を識別し、帳票毎の個別の文字読み取り領域を正確に検出でき、信頼性の高い文字認識が行えるという有利な効果が得られる。
【図面の簡単な説明】
【図１】本発明の一実施の形態における帳票認識装置のブロック結線を示す図
【図２】同実施の形態の帳票認識装置における罫線抽出手段でのブロック結線を示す図
【図３】同実施の形態の帳票認識装置における線分収縮手段での処理の手順を示すフローチャート
【図４】同実施の形態の帳票認識装置における線分延長手段での処理の手順を示すフローチャート
【図５】同実施の形態の帳票認識装置におけるコーナー検出手段での方向コード化と方向コード変化点検出について説明する図
【図６】同実施の形態の帳票認識装置におけるコーナー検出手段での方向コードと実際の方向との対応関係を示す図
【図７】同実施の形態の帳票認識装置におけるコーナー検出手段での方向変化コードの具体例を示す図
【図８】同実施の形態の帳票認識装置における構成要素検出手段でのコーナー点の組み合わせによる構成要素の具体例を示す図
【図９】同実施の形態の帳票認識装置における構成要素抽出手段での構成要素の形態の記述について説明する図
【図１０】同実施の形態の帳票認識装置における矩形検出手段での構成要素どうしの連結関係を示す概念図
【図１１】同実施の形態の帳票認識装置における外形枠検出手段での外形枠検出の一例を示す図
【図１２】同実施の形態の帳票認識装置における外形枠検出手段での外形枠検出の処理の手順を示すフローチャート
【図１３】同実施の形態の帳票認識装置における特徴抽出手段での構成要素の属性を検出する処理の手順を示すフローチャート
【図１４】同実施の形態の帳票認識装置における特徴抽出手段での構成要素の属性を検出する処理の手順を示すフローチャート
【図１５】同実施の形態の帳票認識装置における特徴抽出手段での内部枠構造を検出する処理の手順を示すフローチャート
【図１６】同実施の形態の帳票認識装置における枠構造参照テーブルに登録されている帳票の具体例を示す図
【図１７】同実施の形態の帳票認識装置における枠構造参照テーブルでのテーブルの構造を示す図
【図１８】同実施の形態の帳票認識装置における文字切り出し手段の処理を示す図
【図１９】従来の帳票認識装置の処理動作を示す図
【図２０】従来の帳票認識装置の処理動作を示す図
【図２１】従来の帳票認識装置の処理動作を示す図
【符号の説明】
１  画像入力手段
２  画像メモリ
３  罫線抽出手段
４  コーナー検出手段
５  構成要素検出手段
６  矩形検出手段
７  外形枠検出手段
８  特徴抽出手段
９  枠構造参照テーブル
１０  枠構造照合手段
１１  文字切り出し手段
１２  文字認識手段
２０  ２値画像
２１  水平方向収縮手段
２２  水平方向延長手段
２３  垂直方向収縮手段
２４  垂直方向延長手段
２５  ＮＯＲ回路
５１    枠罫線の画素
５２  背景の画素
５３〜５６  コーナー点
６１  帳票
６２〜６４  外形枠
２１０  帳票Ａ
２１１〜２１３  外形枠
２２０  帳票Ｂ
２２１〜２２２  外形枠
２３０  帳票Ｃ
２３１  外形枠
２４０  帳票Ｄ
２４１  外形枠
２５１  枠の始点
２５２  文字読み取り領域
２５３  文字切り出し領域
２５４  文字読み取り領域の始点
【図１】
0003586949.tif 000002
【図２】
0003586949.tif 000003
【図３】
0003586949.tif 000004
【図４】
0003586949.tif 000005
【図５】
0003586949.tif 000006
【図６】
0003586949.tif 000007
【図７】
0003586949.tif 000008
【図８】
0003586949.tif 000009
【図９】
0003586949.tif 000010
【図１０】
0003586949.tif 000011
【図１１】
0003586949.tif 000012
【図１２】
0003586949.tif 000013
【図１３】
0003586949.tif 000014
【図１４】
0003586949.tif 000015
【図１５】
0003586949.tif 000016
【図１６】
0003586949.tif 000017
【図１７】
0003586949.tif 000018
【図１８】
0003586949.tif 000019
【図１９】
0003586949.tif 000020
【図２０】
0003586949.tif 000021
【図２１】
0003586949.tif 000022