(57)【要約】【課題】矩形や矩形以外の様々な形状のベタ領域を精度よく検出する。【解決手段】画像入力部から入力された帳票画像を膨張または／および収縮させることにより、帳票画像の中からベタ領域の候補領域を検出するベタ領域候補検出部と、帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された候補領域を分離し、候補領域を、分離後の新たな候補領域とする誤結合分離部と、分離後の新たな候補領域がベタ領域か否かを判定し、新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する領域判定部と、を備える。【選択図】図３
2020009103.tif 000002
【特許請求の範囲】
【請求項１】
画像入力部から入力された帳票画像を膨張または／および収縮させることにより、前記帳票画像の中からベタ領域の候補領域を検出するベタ領域候補検出部と、
前記帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された前記候補領域を分離し、前記候補領域を、前記分離後の新たな候補領域とする誤結合分離部と、
前記分離後の新たな候補領域がベタ領域か否かを判定し、前記新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する領域判定部と、
を備えることを特徴とする帳票認識装置。
【請求項２】
請求項１に記載された帳票認識装置であって、
前記ベタ領域候補検出部は、前記帳票画像の膨張または／および収縮において得られた隣接する複数の前記候補領域と、前記入力された帳票画像とに基づいて、前記候補領域間の画像を抽出し、抽出した画像と複数の前記候補領域の画像とを統合する誤分割結合処理を実行する、
ことを特徴とする帳票認識装置。
【請求項３】
請求項１に記載された帳票認識装置であって、
前記誤結合分離部は、前記ベタ領域候補検出部により検出された前記候補領域に対応する入力帳票の画像の色を反転した画像を膨張または／および収縮させた画像と、前記候補領域との差分をとり、当該差分をとることにより分離した画像を、前記分離後の新たな候補領域とする、
ことを特徴とする帳票認識装置。
【請求項４】
請求項１に記載された帳票認識装置であって、
前記領域判定部により判定された前記新たな候補領域の色を反転した画像を生成し、前記入力された帳票画像の反転画像とする白抜き文字抽出部、
を備えることを特徴とする帳票認識装置。
【請求項５】
請求項１に記載された帳票認識装置であって、
カラー画像の前記帳票画像を２値化した第１の２値化画像を出力する第１の２値化部と、
前記第１の２値化部とは異なる方法で前記帳票画像を２値化した第２の２値化画像を出力する第２の２値化部と、を備え、
前記帳票認識装置は、前記第２の２値化画像に基づいて、前記検出すべきベタ領域を検出し、前記第２の２値化画像から前記検出すべきベタ領域を切り出し、切り出した前記ベタ領域に基づいて色を反転した画像を生成し、前記第１の２値化画像から前記検出すべきベタ領域を除去した画像を生成し、前記反転した画像と前記除去した画像とを統合した画像を生成する、
ことを特徴とする帳票認識装置。
【請求項６】
請求項１に記載された帳票認識装置であって、
カラー画像の前記帳票画像から、前記検出すべきベタ領域を２値化したベタ領域２値化画像を出力するベタ領域２値化部と、
前記検出すべきベタ領域が切り出された後の画像を２値化した切り出し画像を出力する切り出し２値化部と、を備え、
前記帳票認識装置は、前記ベタ領域２値化画像に基づいて、前記検出すべきベタ領域を検出して前記帳票画像から前記検出すべきベタ領域を切り出し、切り出した後の画像をネガポジ反転し、前記切り出し２値化部により前記ネガポジ反転された画像を２値化し、前記帳票画像から前記検出すべきベタ領域を除去した画像を生成し、前記２値化した画像と前記除去した画像とを統合した画像を生成する、
ことを特徴とする帳票認識装置。
【請求項７】
請求項１に記載された帳票認識装置であって、
カラー画像の前記帳票画像を２値化した第１の２値化画像を出力する第１の２値化部と、
前記第１の２値化部とは異なる方法で前記帳票画像を２値化した第２の２値化画像を出力する第２の２値化部と、
前記検出すべきベタ領域が切り出された後の画像を２値化する第３の２値化部と、を備え、
前記帳票認識装置は、前記第２の２値化画像に基づいて、前記検出すべきベタ領域を検出して前記帳票画像から前記検出すべきベタ領域を切り出し、切り出した後の画像をネガポジ反転し、前記第３の２値化部により前記ネガポジ反転された画像を２値化し、前記第１の２値化画像から前記検出すべきベタ領域を除去した画像を生成し、前記２値化した画像と前記除去した画像とを統合した画像を生成する、
ことを特徴とする帳票認識装置。
【請求項８】
請求項１に記載された帳票認識装置であって、
前記領域判定部により判定された前記新たな候補領域の色を反転した画像を生成し、前記入力された帳票画像の反転画像とする白抜き文字抽出部と、
前記反転画像からレイアウト情報を抽出するレイアウト解析部と、
前記レイアウト情報に含まれる文字列を認識する文字列認識部と、
前記認識された文字列の属性を解析する属性解析部と、
を備えることを特徴とする帳票認識装置。
【請求項９】
ベタ領域候補検出部が、画像入力部から入力された帳票画像を膨張または／および収縮させることにより、前記帳票画像の中からベタ領域の候補領域を検出し、
誤結合分離部が、前記帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された前記候補領域を分離し、前記候補領域を、前記分離後の新たな候補領域とし、
領域判定部が、前記分離後の新たな候補領域がベタ領域か否かを判定し、前記新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する、
ことを特徴とする帳票認識方法。
【請求項１０】
コンピュータに、
画像入力部から入力された帳票画像を膨張または／および収縮させることにより、前記帳票画像の中からベタ領域の候補領域を検出する処理と、
前記帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された前記候補領域を分離し、前記候補領域を、前記分離後の新たな候補領域とする処理と、
前記分離後の新たな候補領域がベタ領域か否かを判定し、前記新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する処理と、
を実行させることを特徴とする帳票認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票画像上に記載される白黒反転領域の検出および帳票認識の技術に関する。
【背景技術】
【０００２】
光学式文字認識装置（ＯＣＲ）に代表される帳票認識装置は、処理する帳票の罫線や枠、文字列等のレイアウトを解析し、文字列内の文字を認識する。
【０００３】
通常の帳票認識では、白い紙に記載された黒文字や、薄い色の背景上に記載された濃い色の文字を認識対象としている。しかし、黒や濃い色で塗りつぶされたベタ領域に記載された白抜き文字も帳票上に存在する。これらの白抜き文字は、通常のＯＣＲでは認識できない。白抜き文字を認識するには、ベタ領域を抽出し、ベタ領域内部の画素を白黒反転する処理が必要となる。
【０００４】
帳票からベタ領域を抽出して白抜き文字を認識する技術として、例えば特許文献１に開示の技術がある。この技術では、まず枠を抽出し、枠線が太く、枠内の黒画素比が高い枠をベタ領域（白黒反転セル）として抽出し、その枠内の画素を反転する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−３３７９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の方式では、以下の２つの課題がある。
（１）枠抽出を前提としているため、矩形のベタ領域しか抽出できない。
（２）線幅に基づいてベタ領域を抽出しているため、枠の端まで文字が記載されるために
枠線が細い場合には、ベタ領域を抽出できないか、ベタ領域を誤分割してしまう。
【０００７】
本発明は、矩形や矩形以外の様々な形状のベタ領域を精度よく検出することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明における帳票認識装置は、好ましくは、画像入力部から入力された帳票画像を膨張または／および収縮させることにより、前記帳票画像の中からベタ領域の候補領域を検出するベタ領域候補検出部と、前記帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された前記候補領域を分離し、前記候補領域を、前記分離後の新たな候補領域とする誤結合分離部と、前記分離後の新たな候補領域がベタ領域か否かを判定し、前記新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する領域判定部と、を備えることを特徴とする帳票認識装置として構成される。
【０００９】
また、本発明は、上記帳票認識装置において行われる帳票認識方法、および帳票認識プログラムとしても把握される。
【発明の効果】
【００１０】
本発明の一態様によれば、矩形や矩形以外の様々な形状のベタ領域を精度よく検出することができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態の帳票認識装置の構成図である。
【図２】入力対象の帳票画像と処理結果の例である。
【図３】第１実施形態の帳票認識処理のフローを示す図である。
【図４】第１実施形態のベタ領域候補検出の詳細フローを示す図である。
【図５】第１実施形態のベタ領域候補検出の処理結果の例である。
【図６】第１実施形態の処理結果の例である。
【図７】第１実施形態の誤結合分離の詳細フローを示す図である。
【図８】第１実施形態の白抜き文字抽出の詳細フローを示す図である。
【図９】第２実施形態の帳票認識処理のフローを示す図である。
【図１０】第３実施形態の帳票認識処理のフローを示す図である。
【図１１】第４実施形態の帳票認識処理のフローを示す図である。
【発明を実施するための形態】
【００１２】
以下、実施の形態について、図面を用いて詳細に説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
【００１３】
以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、重複する説明は省略することがある。
【００１４】
本明細書等における「第１」、「第２」、「第３」などの表記は、構成要素を識別するために付するものであり、必ずしも、数または順序を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
【００１５】
図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。
【００１６】
本明細書において単数形で表される構成要素は、特段文脈で明らかに示されない限り、複数形を含むものとする。
【００１７】
続いて、本実施例における帳票認識装置、帳票認識方法、及び帳票認識プログラムについて、図面を用いて詳細に説明する。まず、ハードウェア構成について説明する。
【００１８】
Ａ．装置
図１は、本実施例における帳票認識装置１００のハードウェア構成例である。帳票認識装置１００は、操作部１１０と、表示部１２０と、画像入力部１３０と、記憶部１４０と、制御部１５０と、インターフェース（ＩＦ）１６０とを備えるコンピュータ装置である。
【００１９】
操作部１１０は、例えば、ユーザが数字や文字の入力操作を行う際に利用するキーボードや、スキャンの開始を指示するためのボタン等、ハードウェアとしては一般的な装置から構成される。表示部１２０は、例えば、入力画像や認識結果等を表示する液晶ディスプレイ等、ハードウェアとしては一般的な装置から構成される。
【００２０】
画像入力部１３０は、例えば、フラットベッドスキャナやオートシートフィーダ付きのスキャナ、およびＣＣＤ（Charge Coupled Device）等の撮像素子を用いて画像を撮像するデジタルカメラ等、ハードウェアとしては一般的な装置から構成される。記憶部１４０は、例えば、メモリやハードディスク装置等からなる記憶デバイス等、ハードウェアとしては一般的な装置から構成される。記憶部１４０は、画像入力部１３０で入力された画像や各種内部処理用プログラム、および各種設定データを記憶する。また、記憶部１４０は、文字識別辞書等を記憶する。
【００２１】
制御部１５０は、例えば、ＣＰＵ（Central Processing Unit）等、ハードウェアとしては一般的な装置から構成される。制御部１５０は、白抜き文字の検出や文字列の検出、文字列認識等を行う帳票認識や装置全体の制御を行う。なお、入力画像は、画像入力部１３０が撮像する替わりに、記憶部１４０内に記録された画像データを用いてもよい。ＩＦ１６０は、例えば、ＮＩＣ（Network Interface Card）等、ハードウェアとしては一般的な装置から構成され、他の装置とデータを入出力する。
【００２２】
以下に示す各実施形態における処理は、制御部１５０が記憶部１４０に記憶されているプログラムを読み出して、メモリにロードして実行することにより実現される。例えば、制御部１５０は、画像入力部、ベタ領域候補検出部、誤結合分離部、領域判定部を含むベタ領域検出部、白抜き文字抽出部、２値化部、レイアウト解析部、文字列認識部、属性解析部等の各機能を実現するためのプログラムやモジュールをメモリにロードして実行する。
【００２３】
上記プログラムは、ＩＦ１６０を介してネットワークから記憶部１４０にダウンロードされ、メモリ上にロードされて、制御部１５０により実行されるようにしてもよい。また、ＣＤ(Compact Disk)やＤＶＤ(Digital Versatile Disk)等の可搬性を有するコンピュータで読み取り可能な記憶媒体に対して情報を読み書きする読書装置を介して、当該記憶媒体からメモリ上に直接ロードされ、制御部１５０により実行されるようにしてもよい。さらには、上記プログラムを、コンピュータにインストール可能な形式又は実行可能な形式のファイルで上記記憶媒体に記録して提供したり、配布してもよい。さらには、上記プログラムを、通信ネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供したり、配布してもよい。
【００２４】
（第１実施形態）
Ｂ．動作概要
本実施形態における帳票装置１００は、図２（Ａ）の入力画像から図２（Ｂ）の白抜き文字を反転した画像を生成する。図３を用いて、制御部１５０における帳票認識の概略の処理フローを示す。以下では、入力画像に含まれるベタ領域２１０を例に挙げて説明しているが、他のベタ領域２２０〜２４０についても同様に考えることができる。すなわち、図２（Ａ）に示す入力画像２００に含まれるベタ領域２１０〜２４０のそれぞれは、以下の処理が実行されることにより、図２（Ｂ）に示す画像２５０に含まれる反転領域２６０〜２９０として抽出される。
【００２５】
ベタ領域は、処理対象となる帳票上の領域が所定の第１の色（例えば、黒色）で塗りつぶされた領域である。当該塗りつぶされた領域には、上記帳票の背景色（例えば、白色）や上記所定の色以外の第２の色（例えば、薄い灰色）で抜かれている部分を含んでもよい。また、以下の説明において、文字といった場合には、かな、漢字等の文字情報のほか、英数字をはじめ、記号、符号、図形等の様々な識別情報を含む。これらの点は、第１実施形態以降、第４実施形態までの各実施形態についても同様である。
【００２６】
図３に、制御部１５０が実行する帳票認識の処理フロー図を示す。
まず、ステップ３００の画像入力において、制御部１５０は、画像入力部１３０が入力した帳票画像を読み出す。以降の処理は２値画像を前提とした処理であるため、カラー画像の帳票が入力された場合は２値化し、２値画像の帳票が入力された場合はそのまま後段の処理に用いる。
【００２７】
次に、ステップ３１０のベタ領域検出処理において、制御部１５０（ベタ領域検出部）は、入力された帳票画像から白抜き文字が記載されているベタ領域を検出する。ステップ３１０はステップ３２０からステップ３４０の３つの処理から構成されている。ステップ３２０のベタ領域候補検出において、制御部１５０（ベタ領域候補検出部）は、ベタ領域の候補を検出する。この候補には、検出漏れや過検出があってもよい。ステップ３１０の処理の詳細は、図４と図５を用いて後述する。
【００２８】
次に、ステップ３３０の誤結合分離において、制御部１５０（誤結合分離部）は、ステップ３２０によって誤って結合して検出されたベタ領域を分離する。ステップ３３０の処理の詳細は、図６と図７を用いて後述する。
【００２９】
次に、ステップ３４０の領域判定において、制御部１５０（領域判定部）は、ステップ３３０で分離済みのベタ領域候補に対して、ベタ領域か否かを判定し、ベタ領域であると判定した場合、当該ベタ領域のみを選択する。ベタ領域の判定には、領域内の黒画素比や輪郭線の直線性などを用いる。
【００３０】
ステップ３５０の白抜き文字抽出では、制御部１５０（白抜き文字抽出部）は、ステップ３４０において選択したベタ領域内から白抜き文字を抽出し、白黒反転した文字画像を生成する。ステップ３５０の処理の詳細は、図８を用いて後述する。
【００３１】
以上のように、本実施形態によると、帳票上のベタ領域を検出し、ベタ領域内の白黒反転文字を抽出して、白背景上の黒文字に変換することができる。具体的には、ベタ領域候補検出部が、画像入力部１３０から入力された帳票画像を膨張または／および収縮させることにより、帳票画像の中からベタ領域の候補領域を検出し、誤結合分離部が、帳票画像の色を反転した画像を膨張または／および収縮させることにより、誤結合された候補領域を分離し、候補領域を、分離後の新たな候補領域とし、領域判定部が、分離後の新たな候補領域がベタ領域か否かを判定し、新たな候補領域がベタ領域である場合に、当該新たな候補領域を、検出すべきベタ領域と判定する。上記各部の具体的な動作については後述する。
【００３２】
Ｃ．詳細動作
（実施形態の処理の詳細）
以下、図３に示した処理の詳細について説明する。
図４は、図３のステップ３２０のベタ領域候補検出処理の詳細フローである。図５は、図４の各ステップにおける処理結果の例である。なお、この処理は２値画像を前提としている。ただし、カラー画像であっても、色ごとに画像を分離するなどしてこの処理を用いてもよい。
【００３３】
２値画像の符号化方法として「ランレングス符号化」がある。ランレングス符号化は、連続する黒画素の始点座標と連続する長さ（run-length）の情報に置き換える方式である。例えば、横方向のランレングス符号は、横方向に連続する黒画素に対して、黒画素の始点座標と連続する長さを記録する。縦方向のランレングス符号は、縦方向の連続する黒画素に対して、同様に符号化したものである。本実施例では、ランレングス符号を用いた処理の例を記載する。ただし、他の符号化方法を用いてもよい。
【００３４】
以下、図４の処理フローの詳細について説明する。
まず、ステップ４００の膨張・収縮・膨張処理において、制御部１５０（ベタ領域候補検出部）は、入力画像からベタ領域の候補となる領域を検出する。ここで、膨張処理とは黒画素の領域を拡張することであり、収縮処理とは黒画素の領域を縮小することである。具体的には、膨張処理は、白抜き文字を除去するために、ベタ領域中の白抜き文字を黒画素に変換する処理である。収縮処理は、ノイズを除去するために、画像中の罫線や黒文字等を消去する処理である。ベタ領域候補検出部は、入力画像に対してこれらの処理をした結果、黒画素が連結した領域をベタ領域候補とする。
【００３５】
ここで、膨張処理、収縮処理とも、拡張する画素数と収縮する画素数のパラメータを事前に指定しておく。ランレングス符号を用いてこの処理を実行する場合には、まず横方向のランレングス符号に対して膨張（連続する黒画素を左右に拡大、もしくは隣接する黒画素と結合）した後、収縮（連続する黒画素を短縮、もしくは消去する）し、さらに膨張処理をする。この処理を施した横ランを縦方向のランレングス符号に変換して同様の処理をする。なお、白抜き文字の白画素を黒画素化し、罫線や文字の黒画素を白画素化する方式であれば、膨張・収縮・膨張以外の処理を用いてもよい。
【００３６】
次に、ステップ４１０の誤分割結合処理において、ベタ領域候補検出部は、ベタ領域候補を誤って複数の領域に分割して検出した際の補正をする。例えば、図５（Ａ）の領域５００に対して、ステップ４００の処理を実行し、図５（Ｂ）の領域５１０と領域５１５とが検出された場合、当該補正を行う。ステップ４１０は、ステップ４２０からステップ４７０の処理から構成されている。以下に示すように、ステップ４１０では、ベタ領域候補検出部が、帳票画像の膨張または／および収縮において得られた隣接する複数の候補領域と、入力された帳票画像とに基づいて、候補領域間の画像を抽出し、抽出した画像と複数の候補領域の画像とを統合する誤分割結合処理を実行する。
【００３７】
ステップ４２０において、ベタ領域候補検出部は、ステップ４００の膨張・収縮・膨張処理で検出されたベタ領域候補の中から隣接する２つのベタ領域候補（例えば、領域５１０と領域５１５）を選択する。
【００３８】
ステップ４３０において、ベタ領域候補検出部は、ステップ４２０で選択されたベタ領域候補の中から隣接する２つのベタ領域候補間の元画像を抽出する。例えば、ベタ領域候補検出部は、ステップ４２０で選択したベタ領域候補と同じ座標に位置する領域と、これらの領域間に位置する領域とを、図３のステップ３００で入力した帳票画像の中から領域５００として読み出し、読み出した領域５００の画像（図５（Ａ））と、図５（Ｂ）の領域５１０と領域５２０との差となる領域間の入力画像（図５（Ｃ））を抽出する。
【００３９】
ステップ４４０において、ベタ領域候補検出部は、ステップ４２０で選択した２つの領域の画像と、ステップ４３０で抽出した画像を統合する。例えば、ベタ領域候補検出部は、図５（Ｂ）に示した各領域と、図５（Ｃ）に示した領域とを統合して、図５（Ｄ）に示す領域の画像を生成する。
【００４０】
ステップ４５０において、ベタ領域候補検出部は、ステップ４４０で統合した領域の画像が連結した１つの領域であるか否かを判定する。例えば、ベタ領域候補検出部は、図５（Ｄ）に示す領域の画像は連結した１つの領域となっていると判定する。
【００４１】
ステップ４５０の連結判定において、ベタ領域候補検出部は、統合した領域が連結していると判定すると（ステップ４５０；ＹＥＳ）、ステップ４６０において、統合した領域を新たなベタ領域候補とする。一方、ステップ４５０の連結判定において、ベタ領域候補検出部は、統合した領域が連結していないと判定すると（ステップ４５０；ＮＯ）、そのままステップ４７０に進む。
【００４２】
ステップ４７０において、ベタ領域候補検出部は、全てのベタ領域候補の組合せでステップ４２０からステップ４６０の処理をしたか否かを判定する。ベタ領域候補検出部は、全ての組合せに対して処理していないと判定した場合（ステップ４７０；ＮＯ）、別の組合せに対してステップ４２０に戻り、以降の処理を実行する。一方、ベタ領域候補検出部は、全てのベタ領域候補の組合せでステップ４２０からステップ４６０の処理をしたと判定した場合（ステップ４７０；ＹＥＳ）、ステップ４１０の誤分割結合処理を終了し、ステップ４８０に進む。
【００４３】
次に、ステップ４８０の穴埋め処理において、ベタ領域候補検出部は、ステップ４１０で検出した新たなベタ領域候補に対して、領域内の白画素を黒画素に変換する。穴埋めとは、連続する白画素の両端がベタ領域候補の黒画素で挟まれている場合に、白画素を黒画素に変換することである。この処理を横方向と縦方向のランレングス符号に対して行う。ベタ領域候補検出部がこのような処理を行うことにより、例えば、図５（Ｄ）に示した領域の画像が図５（Ｅ）に示す領域の画像となり、欠けや結合部の白抜き文字が黒画素に変換される。ここで、穴埋めの長さの最大値を設定してもよい。この設定値により、当該最大値を超える欠けや結合部の白抜き文字が黒画素に変換されることがないため、「コ」の字形のような複雑なベタ領域も検出することができる。
【００４４】
以上のように、ベタ領域候補検出部が、図４のステップ４００からステップ４８０を実行することにより、誤分割されたベタ領域を結合した新たなベタ領域の候補が検出される。
【００４５】
しかしながら、例えば、図６（Ａ）に示すように、図３のステップ３００で入力した帳票画像に含まれるベタ領域が近接している場合や、罫線でつながっている場合は、図４の処理により、図６（Ｃ）のように２つのベタ領域が１つの新たなベタ領域候補として検出される。具体的には、図６（Ａ）左に示すようにベタ領域が近接している場合は、ステップ４００の膨張・収縮・膨張処理により結合される（図６（Ｂ））。また、図６（Ａ）右に示すように上記ベタ領域が罫線でつながっている場合は、ステップ４６０のベタ領域候補統合処理により結合される（図６（Ｃ））。このため、上記新たなベタ領域候補について、誤結合された領域を分離する必要がある。
【００４６】
図７は、図３のステップ３３０の誤結合分離処理の詳細フローである。誤結合分離処理では、誤結合分離部が、ベタ領域候補内の白画素の塊を検出し、この白画素塊を用いて分離する。具体的には、誤結合分離部は、ベタ領域候補内の白画素に対して図４と同様の処理をすることにより白地の領域を検出し、ベタ領域候補から除去することにより、誤結合を分離する。以下に示すように、本処理では、誤結合分離部が、ベタ領域候補検出部により検出された候補領域に対応する入力帳票の画像の色を反転した画像を膨張または／および収縮させた画像と、候補領域との差分をとり、当該差分をとることにより分離した画像を、分離後の新たな候補領域とする処理を行う。
【００４７】
以下、図７の処理フローの詳細について説明する。
まず、ステップ７１０の白黒反転処理において、誤結合分離部は、図４の処理で判定された新たなベタ領域候補内の画素を白黒反転する。この処理により、白抜き文字を白黒反転して黒画素化する。図６の例では、誤結合分離部は、図６（Ｃ）に示す新たなベタ領域候補が穴埋めされて統合された後の領域に対応する入力帳票の画像である図６（Ａ）に示す帳票画像上のベタ領域を白黒反転して、図６（Ｄ）に示す画像を生成する。
【００４８】
次に、ステップ７２０において、誤結合分離部は、ステップ７１０で生成された画像に対して収縮・膨張処理をする。この処理により、白抜き文字の黒画素を除去する。例えば、誤結合分離部は、生成した白黒反転後の画像(図６（Ｄ）)に対して、図４のステップ４００における収縮処理を行って画像中の罫線や黒文字等を消去することにより、図６（Ａ）の白抜き文字に対応する部分の黒画素を除去する。その後、誤結合分離部は、収縮した画像を元の画像の大きさに戻すために、上記黒画素を除去した画像に対して膨張処理を行う。図６の例では、これらの処理が実行されることにより、図６（Ｄ）に示す画像から図６（Ｅ）に示す画像が生成される。
【００４９】
次に、ステップ７３０において、誤結合分離部は、各領域内で穴埋めをする。例えば、誤結合分離部は、ステップ７２０において行われた収縮・膨張処理により、黒画素領域に白画素領域が残っているか否かを判定し、黒画素領域に白画素領域が残っていると判定した場合、黒画素領域内に生じている白画素領域を、黒画素で穴埋めする。図６の例では、制御部１５０は、図６（Ｅ）に示す画像から図６（Ｆ）に示す画像を生成する。
【００５０】
次に、ステップ７４０において、誤結合分離部は、新たなベタ領域候補の画像（図６（Ｃ））と、ステップ７３０で生成した画像との差分をとる。この処理により、上記新たなベタ領域候補の画像の黒画素領域が近接している場合は分離することができる。図６の例では、誤結合分離部は、図６（Ｃ）に示す画像から図６（Ｆ）に示す画像を減算し、図６（Ｇ）に示す画像を生成する。
【００５１】
しかしながら、上記新たなベタ領域候補に含まれる黒画素領域が罫線で接続されている場合は、当該新たなベタ領域候補の画像がまだ誤結合された状態となっている。
【００５２】
そのため、次のステップ７５０において、誤結合分離部は、ステップ７４０で生成した画像に対して収縮・膨張処理をする。この処理により、上記新たなベタ領域候補に含まれる黒画素領域を接続する黒画素の罫線を除去し、上記新たなベタ領域候補に含まれる黒画素領域を分離することができる。図６の例では、誤結合分離部は、図６（Ｇ）に示す画像から図６（Ｈ）に示す画像を生成する。
【００５３】
次に、ステップ７６０において、誤結合分離部は、上記新たなベタ領域候補を、ステップ７５０で分離された上記黒画素領域に更新し、当該更新した当該黒画素領域を、分離後の新たなベタ領域候補の画像とする。
【００５４】
以上のように、図７のステップ７１０からステップ７６０により、図４の処理で検出された新たなベタ領域候補の画像うち、誤接続された新たなベタ領域候補の黒画素領域を分離し、当該黒画素領域を、分離後の新たなベタ領域候補の画像とすることができる。この結果、図６の例では、図６（Ａ）の画像から図６（Ｉ）の画像を生成することが可能となる。図６（Ｉ）の画像の生成については、図８を用いて後述する。
【００５５】
図８は、図３のステップ３５０の白抜き文字抽出処理の詳細フローである。本処理では、白抜き文字抽出部が、領域判定部により判定された新たな候補領域の色を反転した画像を生成し、入力された帳票画像の反転画像とする処理を実行する。
【００５６】
まず、ステップ８１０において、白抜き文字抽出部は、ステップ３１０で検出したベタ領域を収縮する。白抜き文字抽出部が、検出したベタ領域を収縮する理由は、検出したベタ領域の境界線（図６（Ｉ）に示す画像の枠線）を残すためである。例えば、白抜き文字抽出部は、検出したベタ領域に対して、周囲３ドット分だけ小さくなるように、当該ベタ領域を収縮する。上記境界線を残す必要がない場合には、この処理を省略してもよい。
【００５７】
次に、ステップ８２０において、白抜き文字抽出部は、ステップ８１０で生成した領域内の画像を白黒反転する。例えば、白抜き文字抽出部は、図６（Ａ）に示した領域の画像に含まれる、ステップ８１０で生成した収縮後のベタ領域を白黒反転する。この処理により、検出されたベタ領域の境界線を残しつつ、ベタ領域内の白文字領域を白黒反転させ、図６（Ｉ）が得られる。白抜き文字抽出部は、図３のステップ３００で入力した帳票画像に含まれるすべてのベタ領域について、図３〜図８に示す処理を実行する。これにより、例えば、図２（Ａ）に示した帳票画像から図２（Ｂ）に示した帳票画像を得ることができる。
【００５８】
以上のように、図３から図８を用いてベタ領域を抽出して白黒反転することにより、ベタ領域に記載された白抜き文字を、白背景上の黒文字に変換できる。
【００５９】
Ｄ．その他の実施形態
（第２実施形態）
第１実施形態では、入力画像からベタ領域を検出し、検出した領域内を白黒反転した。これに対し、第２実施形態では、黒文字生成用と白抜き文字抽出用の２値画像を分ける。２値化の手法やパラメータの違いにより、文字認識に適した黒文字を生成する２値画像と、ベタ領域検出に適した２値画像が異なることがあるためである。以下に示すように、本実施形態では、第１の２値化部が、カラー画像の帳票画像を２値化した第１の２値化画像を出力し、第２の２値化部が、第１の２値化部とは異なる方法で帳票画像を２値化した第２の２値化画像を出力し、帳票認識装置が、第２の２値化画像に基づいて、検出すべきベタ領域を検出し、第２の２値化画像から検出すべきベタ領域を切り出し、切り出したベタ領域に基づいて色を反転した画像を生成し、第１の２値化画像から検出すべきベタ領域を除去した画像を生成し、反転した画像と除去した画像とを統合した画像を生成する処理を実行する。
【００６０】
図９は、第２実施形態の処理フローの例である。
まず、ステップ９００の２値化Ａ（第１の２値化）において、制御部１５０（２値化部）は、カラー画像を２値化する。第４実施形態の帳票認識において、ベタ領域以外の文字や罫線の認識には、この２値画像Ａを用いる。当該２値化処理では、２値化部が、帳票画像に含まれるベタ領域以外の領域（例えば、背景領域やベタ領域以外の文字や罫線の領域）を検出する。検出方法については、帳票画像の種類やカラーバリエーション等によって、様々な手法やパラメータを用いることができる。
【００６１】
次に、ステップ９１０の２値化Ｂ（第２の２値化、ベタ領域２値化）において、２値化部は、カラー画像をステップ９００と異なる方法で２値化する。この２値画像Ｂは、ベタ領域検出と白抜き文字抽出に用いる。当該２値化処理では、２値化部が、帳票画像に含まれるベタ領域やベタ領域に含まれる白抜き文字領域を検出する。検出方法については、ベタ領域の画素値等によって、様々な手法やパラメータを用いることができる。
【００６２】
次に、ステップ９２０のベタ領域検出において、ベタ領域検出部は、ステップ９１０で生成した２値画像Ｂからベタ領域を検出する。この処理は、図３のステップ３１０と同じ処理である。
【００６３】
次に、ステップ９３０のベタ領域切出しにおいて、ベタ領域検出部は、ステップ９１０で生成した２値画像Ｂから、ステップ９２０で検出したベタ領域のみを切出す。
【００６４】
次に、ステップ９４０の白抜き文字抽出において、白抜き文字抽出部は、ステップ９３０で切出したベタ領域に基づいて白黒反転した画像を生成する。この処理は、図３のステップ３５０と同じ処理である。
【００６５】
次に、ステップ９５０のベタ領域除去において、ベタ領域検出部は、ステップ９００で生成した２値画像Ａから、ステップ９２０で検出したベタ領域のみを除去する。
【００６６】
次に、ステップ９６０の統合において、ベタ領域検出部は、ステップ９４０とステップ９５０で生成した画像を統合した画像を生成する。
【００６７】
図９に示した処理を行うことにより、処理する２値化画像を、ベタ領域以外の文字や罫線を認識するための黒文字生成用の２値画像と、ベタ領域検出と白抜き文字抽出用の２値画像と使い分けて入力し、後者の２値画像から検出したベタ領域の画像を用いて、前者の２値画像から、当該検出したベタ領域の画像に対応するベタ領域の画像を除去するため、元の帳票画像のベタ領域を確実に塗りつぶすことができる。
【００６８】
（第３実施形態）
第３実施形態では、黒文字生成用、ベタ領域検出用、白黒反転文字生成用で、３種類の値画像を用いる。白抜き文字をカラー画像化した際に、量子化誤差などの影響で文字の色が白ではなくベタ領域に近い色になることがある。この場合、２値化した時点で文字に潰れやかすれが発生する。このような画像を白黒反転すると、正しい文字の形状を得ることができない。これを防ぐため、ベタ領域内で再度２値化する。以下に示すように、本実施形態では、ベタ領域２値化部が、カラー画像の帳票画像から、検出すべきベタ領域を２値化したベタ領域２値化画像を出力し、切り出し２値化部が、検出すべきベタ領域が切り出された後の画像を２値化した切り出し画像を出力し、帳票認識装置が、ベタ領域２値化画像に基づいて、検出すべきベタ領域を検出して帳票画像から検出すべきベタ領域を切り出し、切り出した後の画像をネガポジ反転し、切り出し２値化部によりネガポジ反転された画像を２値化し、帳票画像から検出すべきベタ領域を除去した画像を生成し、２値化した画像と除去した画像とを統合した画像を生成する処理を実行する。
【００６９】
あるいは、第１の２値化部が、カラー画像の帳票画像を２値化した第１の２値化画像を出力し、第２の２値化部が、第１の２値化部とは異なる方法で帳票画像を２値化した第２の２値化画像を出力し、検出すべきベタ領域が切り出された後の画像を２値化し、帳票認識装置が、第２の２値化画像に基づいて、検出すべきベタ領域を検出して帳票画像から検出すべきベタ領域を切り出し、切り出した後の画像をネガポジ反転し、第３の２値化部によりネガポジ反転された画像を２値化し、第１の２値化画像から検出すべきベタ領域を除去した画像を生成し、２値化した画像と除去した画像とを統合した画像を生成する処理を実行する。
【００７０】
図１０は、第３実施形態の処理フローの例である。
以下では、第２実施形態におけるステップと同様のステップについては同一の符号を付してその説明を省略する。
【００７１】
まず、ベタ領域検出部は、第２実施形態と同様に、ステップ９００の第１の２値化、ステップ９１０の第２の２値化、ステップ９２０のベタ領域検出の各処理を実行する。
【００７２】
次に、ステップ１０００のベタ領域切出しにおいて、ベタ領域検出部は、カラー画像からステップ９２０で検出したベタ領域のみを切出す。
【００７３】
次に、ステップ１０１０のネガポジ反転において、ベタ領域検出部は、ステップ１０００で切り出したカラー画像をネガポジ反転する。
【００７４】
次に、ステップ１０２０の２値化Ｃ（第３の２値化、切り出し２値化）において、２値化部は、ステップ１０１０で生成したカラー画像を２値化する。第３の２値化の処理では、第１の２値化や第２の２値化と同じ手法を用いたり、あるいは、これらと異なる手法を用いてもよい。
【００７５】
次に、２値化部は、第２実施形態と同様に、ステップ９５０のベタ領域除去において、ステップ９００で生成した２値画像からステップ９２０で検出したベタ領域のみを除去する。
【００７６】
次に、ステップ１０３０の統合において、ベタ領域検出部は、ステップ１０２０とステップ９５０で生成した画像を統合した２値画像を生成する。
【００７７】
図１０に示した処理を行うことにより、処理する２値化画像を、ベタ領域以外の文字や罫線を認識するための黒文字生成用の２値画像と、ベタ領域検出と白抜き文字抽出用の２値画像と、白黒反転文字生成用の２値画像とを使い分けて入力し、ベタ領域検出と白抜き文字抽出用の２値画像から検出したベタ領域の画像を用いて、入力されるカラー画像から、当該検出したベタ領域の画像に対応するベタ領域の画像を切り出した後、当該画像をネガポジ反転した後の画像をさらに２値化するため、ベタ領域における文字の正しい形状を得ることができる。
【００７８】
なお、第３実施形態では、第２実施形態と同様に、ステップ９００において第１の２値化を実行したが、帳票画像に含まれるベタ領域以外の領域（例えば、背景領域やベタ領域以外の文字や罫線の領域）を検出する必要がない場合には、省略して実行してもよい。これにより、第１の２値化を実行した場合に比べて処理時間の短縮や処理負荷の軽減を実現することができる。
【００７９】
（第４実施形態）
第４実施形態は、第１から第３の実施形態で生成した２値画像を利用した帳票認識である。
【００８０】
図１１は、第４実施形態の処理フローである。
まず、ステップ１１００の２値画像生成において、制御部１５０は、２値画像を生成する。この２値画像生成処理は、第１から第３の実施形態のいずれかである。
【００８１】
次に、ステップ１１１０のレイアウト解析において、制御部１５０は、罫線、枠、文字列等のレイアウト情報を抽出するレイアウト解析をする。
【００８２】
次に、ステップ１１２０の文字列認識において、制御部１５０は、抽出されたレイアウト情報に含まれる文字列を認識する。
【００８３】
次に、ステップ１１３０の属性解析において、制御部１５０は、認識した文字列の属性を決定する。
【００８４】
ステップ１１１０からステップ１１３０の具体例としては、例えば、特開２０１１−２４８６０９号公報に記載された枠検出、文字列検出、文字列認識等の各処理を用いることができる。文字属性を解析する必要が無い場合には、ステップ１１３０の処理を省略することとしてもよい。
【００８５】
以上のように、本実施形態によると、帳票上のベタ領域に記載された白黒反転文字を認識することができる。また、ベタ領域は矩形である必要はなく、領域の端まで文字が記載されていても頑健に検出することができる。従来、文書からベタ領域を抽出するには、黒画素が連結する領域を検出し、その中からある程度の大きさを持ち、領域内の黒画素の比が高い領域をベタ領域とするのが一般的であった。しかし、帳票内のベタ領域は罫線で他の枠と接続しているため、ベタ領域が独立した領域として検出できない。したがって、帳票上のベタ領域を検出するには、独立した領域であることを前提とした方式は適用できない。上記の各実施形態における処理を行うことにより、独立した領域を前提とすることなく、様々な形状のベタ領域を対象とすることができる。
【００８６】
Ｅ．付記
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００８７】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【００８８】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【００８９】
本発明の帳票認識方法又は帳票認識装置・システムは、その各手順をコンピュータに実行させるための帳票認識プログラム、帳票認識プログラムを記録したコンピュータ読み取り可能な記録媒体、帳票認識プログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、そのプログラムを含むサーバ等のコンピュータ、等により提供されることができる。
【符号の説明】
【００９０】
１００                帳票認識装置
１１０                操作部
１２０                表示部
１３０                画像入力部
１４０                記憶部
１５０                制御部
１６０                インターフェース（ＩＦ）
【図１】
2020009103.tif 000003
【図２】
2020009103.tif 000004
【図３】
2020009103.tif 000005
【図４】
2020009103.tif 000006
【図５】
2020009103.tif 000007
【図６】
2020009103.tif 000008
【図７】
2020009103.tif 000009
【図８】
2020009103.tif 000010
【図９】
2020009103.tif 000011
【図１０】
2020009103.tif 000012
【図１１】
2020009103.tif 000013