(57)【要約】【課題】帳票画像データにある表中の同一パターンで反復配置されている枠に対して、１回の手動操作で複数の枠領域を抽出する。【解決手段】帳票原稿から画像データを取得して表示画面上に表示し、表示画面上への手動操作を検出する。当該画像データを帳票画像データと定義し、帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、帳票画像データにある表中の任意の枠がドラッグ操作に応じて指定された場合、指定された箇所の座標値を検出し、当該座標値から枠領域を抽出する。帳票画像データにおいて同一の形状が並べてある複数の枠がドラッグ操作に応じて指定された場合、複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、ドラッグ操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出し、枠領域データを出力する。【選択図】図３
2013250927.tif 000002
【特許請求の範囲】
【請求項１】
帳票画像処理に用いる枠領域データを生成する画像処理装置であって、
帳票原稿から画像データを取得する画像取得手段と、
前記画像取得手段によって取得された前記画像データを表示画面上に表示する画像表示手段と、
前記表示画面上への手動操作を検出する操作検出手段と、
前記画像取得手段によって取得された前記画像データを帳票画像データと定義し、前記帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、前記帳票画像データにある表中の任意の枠が前記手動操作に応じて指定された場合に、指定された箇所の座標値を検出し、検出された当該座標値から枠領域を抽出する単枠領域抽出手段と、
前記帳票画像データにおいて同一の形状が並べてある複数の枠が前記手動操作に応じて指定された場合に、前記複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、前記手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出する複数枠領域抽出手段と、
前記枠領域データを出力する結果出力手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記単枠領域抽出手段は、枠領域が確定した場合には、当該枠領域の内側にある座標値を全て削除して取り除くことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記複数枠領域抽出手段は、
指定された方向が縦方向である場合には、前記単枠領域抽出手段により抽出された枠領域の幅と罫線の太さに基づいて、同一形状の枠領域を繰り返し抽出することを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記複数枠領域抽出手段は、
指定された方向が横方向である場合には、前記単枠領域抽出手段により抽出された枠領域の高さと罫線の太さに基づいて、同一形状の枠領域を繰り返し抽出することを特徴とする請求項１記載の画像処理装置。
【請求項５】
帳票画像処理に用いる枠領域データを生成する画像処理方法であって、
帳票原稿から画像データを取得する画像取得ステップと、
前記画像取得ステップによって取得された前記画像データを画像表示手段の表示画面上に表示する表示ステップと、
前記表示画面上への手動操作を検出する操作検出ステップと、
前記画像取得ステップによって取得された前記画像データを帳票画像データと定義し、前記帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、前記帳票画像データにある表中の任意の枠が前記手動操作に応じて指定された場合に、指定された箇所の座標値を検出し、検出された当該座標値から枠領域を抽出する単枠領域抽出ステップと、
前記帳票画像データにおいて同一の形状が並べてある複数の枠が前記手動操作に応じて指定された場合に、前記複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、前記手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出する複数枠領域抽出ステップと、
前記枠領域データを出力する結果出力ステップと、を有することを特徴とする画像処理方法。
【請求項６】
請求項５記載のそれぞれの前記ステップをプロセッサに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票画像処理に用いる枠領域データを生成するのに好適な画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【０００２】
従来の画像処理装置にあっては、図１４に示すように、モニタの表示画面上に表示された、各行に同じパターンが配置されている帳票画像に対して、手動操作で帳票認識用領域を指定していた。しかし、操作者が１つ１つの領域を手動操作で指定するには、多大な操作時間を必要としていた。
また、図１４に示すように、同じ形状の罫線が連続して配置している帳票画像データからテンプレート用帳票画像データ、もしくはデータベース化されたテンプレート用帳票データを作成する場合、帳票画像中の罫線に対して罫線抽出処理を行い、罫線の分布から枠領域を抽出する技術が知られている。これにより、入力帳票画像データ中の特定の枠線を手動操作で設定する場合と比較して、余分な作業を行うこと無く、枠領域を抽出することができていた。
【０００３】
特許文献１には、文字記入枠内にデータが記入されていない帳票のマスタ画像に基づいて、その帳票定義データを自動的に作成する目的と、帳票のマスタ画像に基づいて、より詳細な帳票定義情報を含む帳票定義データを自動的に作成する目的が開示されている。
また、入力された帳票のマスタ画像上の文字記入枠などの領域を指定し、指定された各領域の周辺部分の罫線特徴をマスタ画像より抽出し、予め定められた帳票定義書式に従って、少なくとも各領域に関する領域情報と罫線特徴を整理し、帳票定義データとして出力するという構成が開示されている。
さらに、帳票画像データからテンプレート用帳票画像データを作成するという点が開示されている。
【０００４】
特許文献２には、帳票の各項目の定義情報（テンプレートデータ）を自動認識する目的と、帳票の各項目の並びを解析して、各項目の属性を決定する目的とが開示されている。
また、帳票画像データから帳票の縦罫線及び横罫線で構成される最小矩形を抽出し、最小矩形の帳票の行方向の接続関係から、表の各行を構成する論理行に分類し、連続して且つ同じ行構造を持つ論理行を１つのブロックにまとめておく。表の上部及び下部に接続するブロック間で、同じ列構造を持つブロックの関係を抽出し、同一の列構造を持つブロックを、論理列の単位でまとめ、論理行、ブロック、論理列に解析された表構造から、属する行数が最大であるブロックをボデイ部分として決定する。そのブロックの上部及び下部に位置するブロックを、ヘッダ部、フッタ部として決定し、ヘッダ部の論理行を見出し部分とし、見出し部分の文字を論理列単位で文字認識して、論理列単位の見出し部分の属性を決定し、論理列単位の見出し部分の属性から、ボデイ部分の論理列における最小矩形の属性を決定するという構成が開示されている。
これにより、枠線の形状が連続して配置している帳票画像データからテンプレート用帳票画像データを作成し、帳票画像データ全体に対して自動で枠領域を抽出することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１にあっては、同じ形状の枠が連続して配置している帳票画像データに対して、枠領域を抽出するには多大な処理時間がかかるといった問題があった。
また、特許文献２にあっては、手動操作で枠領域を設定したい場合や、一部箇所の枠領域を設定したい場合には、かえって処理時間が増加することになり、効率よく枠領域を設定することができないといった問題があった。
さらに、従来の技術にあっては、帳票画像データからテンプレート用帳票画像データを手動操作で作成する場合、１つ１つ枠領域を作成する必要があり、多大な手間がかかるといった問題があった。
【０００６】
図１４に示すように、行が繰り返し配置されている帳票画像データに対して、帳票画像データ中の特定の枠線を手動操作で設定する場合、従来の技術では、画像全体に対して処理するため、余分な枠領域が抽出される、あるいは１つ１つ枠領域を設定する必要があり、作業効率が低下するといった問題があった。
そこで、作業者に余分な手動操作を強いることなく、帳票画像データにある表中の同一パターンで反復配置されている枠に対して、１回の手動操作で複数の枠領域を抽出することができる画像処理装置の提供が切望されている。
本発明は、このような事情に監みてなされたもので、帳票画像データにある表中の同一パターンで反復配置されている枠に対して、１回の手動操作で複数の枠領域を抽出することができる画像処理装置、画像処理方法及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明の画像処理装置は、帳票画像処理に用いる枠領域データを生成する画像処理装置であって、帳票原稿から画像データを取得する画像取得手段と、前記画像取得手段によって取得された前記画像データを表示画面上に表示する画像表示手段と、前記表示画面上への手動操作を検出する操作検出手段と、前記画像取得手段によって取得された前記画像データを帳票画像データと定義し、前記帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、前記帳票画像データにある表中の任意の枠が前記手動操作に応じて指定された場合に、指定された箇所の座標値を検出し、検出された当該座標値から枠領域を抽出する単枠領域抽出手段と、前記帳票画像データにおいて同一の形状が並べてある複数の枠が前記手動操作に応じて指定された場合に、前記複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、前記手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出する複数枠領域抽出手段と、前記枠領域データを出力する結果出力手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、取得された画像データを帳票画像データと定義し、帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、帳票画像データにある表中の任意の枠が手動操作に応じて指定された場合に、指定された箇所の座標値を検出し、検出された当該座標値から枠領域を抽出し、画像データにおいて同一の形状が並べてある複数の枠が手動操作に応じて指定された場合に、複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出することで、帳票画像データにある表中の同一パターンで反復配置されている枠に対して、１回の手動操作で複数の枠領域を抽出することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係わる画像処理装置のハードウエアのブロック構成を示す図である。
【図２】図１に示す画像処理装置１に適用可能な画像処理機能ブロック３１を示す図である。
【図３】本発明の実施形態に係わる画像処理装置の動作を示すメインルーチンのフローチャートである。
【図４】本発明の実施形態に係わる画像処理装置の動作を示すサブルーチンのフローチャートである。
【図５】表示画面に表示した入力帳票画像に対してドラッグ操作したことを示す説明図である。
【図６】（ａ）、（ｂ）は、入力帳票画像を構成する各部について説明するための図である。
【図７】複数の枠領域抽出を行う際の指定線データを操作入力したことを示す説明図である。
【図８】図７に示す軌跡を０．１秒の時間間隔でサンプリングした座標値を示す図である。
【図９】枠領域抽出について説明するための説明図である。
【図１０】様々な罫線のパターンを示す図である。
【図１１】（ａ）、（ｂ）は、罫線領域の定義について説明を容易にするため罫線に沿って空白があるように示した図である。
【図１２】指定線が縦方向の場合に、枠領域を反復配置することを示す図である。
【図１３】指定線が横方向の場合に、枠領域を反復配置することを示す図である。
【図１４】各行が同じパターンで配置されている帳票画像の例を示す図である。
【発明を実施するための形態】
【００１０】
本発明の実施形態について説明する。本実施形態では、帳票画像データ中の表に対して、特定の枠線に対する枠領域を抽出する処理に際して、同一の形状が並べてある少なくとも１個以上の複数の「枠」に対して、ユーザが複数の枠をドラッグしたとき、軌跡中のサンプリングした箇所で枠検出を行い、重複した位置が検出されたら１つの枠と判断し、そうでないときは別の位置を枠領域抽出処理部に渡す処理を繰り返すことで、１個の枠領域を抽出することとし、１個の枠領域に対して、ユーザが指定した方向へ同一形状の枠領域で反復配置することを特徴とする。
【００１１】
以下、本発明の実施形態について、図面を参照して説明する。
図１を参照して、本発明の実施形態に係わる画像処理装置１のハードウエアのブロック構成について説明する。
画像処理装置１は、据え置き型コンピュータ、複写機、組み込み端末、電子計算機、画像データベース装置、タブレット端末、スマートフォン端末、携帯情報機器などを想定することができる。
画像処理装置１は、ＲＯＭ（図示しない）又はハードディスク２０からプログラムを読み出して装置全体の制御を実行するＣＰＵ１０と、原稿台上に置かれた例えば紙体の原稿から画像データを読み取るスキャナ部１１と、デジタルカメラ（図示しない）で撮影したカメラ画像や処理結果の情報を記憶するハードディスク２０やＣＤ／ＤＶＤ／メモリカードなどの外部記憶部１２と、スキャナ部１１又は外部記憶部１２から原稿ファイルを読み取った入力画像を記憶する入力画像メモリ部１３と、入力画像をモニタの表示画面上にプレビュー表示する表示部１４と、表示部１４の表示画面の表層に配置されたタッチパネルに対するユーザによるクリック操作やタップ操作やドラッグ操作等を入力するとともに、該操作時の座標データを入力する操作部１５と、入力画像をＶＲＡＭ上に記憶しておき、ＶＲＡＭ上の画像データに対して位置あわせ処理、拡大縮小処理、回転処理、ノイズ付与・除去処理、スキュー補正処理などの画像処理を行う画像処理部１６と、帳票のテンプレートデータを出力するテンプレート出力部１７と、ネットワークＮを介して外部から入力画像を取り込む一方、処理結果の情報をネットワークＮを介して外部に配信する通信制御部１８とを備えている。
【００１２】
次に、図２を参照して、図１に示す画像処理装置１に適用可能な画像処理機能ブロック３１の各機能について説明する。なお、図２に示す円柱はデータベース、平行四辺形はデータを示すこととする。
画像処理機能ブロック３１は、スキャナ部１１、外部記憶部１２、ネットワークＮに接続されている通信制御部１８にアクセスしてデータアクセス部３３により取得された画像データ３２を入力する画像入力部３４と、画像入力部３４により取得した画像データをＶＲＡＭ上に記憶しておき、ＶＲＡＭから読み出した画像データをモニタの表示画面上に表示する画像表示部３５と、マウス（図示しない）や画像表示部３５上に設けられたタッチパネルなどの入力デバイスに対してユーザにより指定された範囲を入力する範囲指定部３６と、範囲指定部３６に対してユーザが指定した範囲の入力を示す指定範囲入力３７と、範囲指定部３６に対して入力された指定線データ３８を座標値に変換する座標値変換部３９と、座標値を用いて罫線を抽出する罫線抽出処理部４０と、罫線抽出処理部４０で得られたデータから枠領域を抽出する枠領域抽出部４１と、範囲指定部３６によって得られた結果データを出力する結果出力部４２と、ＲＯＭ又はハードディスク２０から読み出したプログラムに基づいて各部に処理を指示する処理制御部４３とから構成されている。
なお、画像処理機能ブロック３１の各部をソフトウエアモジュールから構成してもよい。また、処理制御部４３に設けられたメモリ上に画像処理用のワークエリアを設け、当該ワークエリアに帳票画像データを展開しておき、後述する罫線抽出処理や枠領域抽出処理を行うこととする。
【００１３】
図３に示すメインルーチンのフローチャート及び図４に示すサブルーチンのフローチャートを参照して、本発明の実施形態に係わる画像処理装置１に適用可能な画像処理機能ブロック３１の動作について説明する。
なお、本実施形態では、処理制御部４３に設けられたメモリ上のワークエリアに展開された帳票画像データに対して、黒画素を探索することで罫線抽出処理や枠領域抽出処理を行うこととする。
【００１４】
まず、処理制御部４３からの指示を受けた画像入力部３４は、スキャナ部１１、外部記憶部１２、ネットワークＮに接続されている通信制御部１８にアクセスしてデータアクセス部３３により取得された画像データ３２を入力帳票画像データとして取得する（Ｆ３０１）。
ここで、入力帳票画像データとしては、図１４に示すような帳票の画像データを扱うこととする。
次いで、入力帳票画像データ（図１４参照）を画像表示部３５に出力することでモニタの表示画面に表示させ、タッチパネルやマウスなどの入力デバイスを用いて範囲指定部３６に対して指定範囲入力３７を入力し、抽出したい枠を示す範囲を指定線データ３８として指定する（Ｆ３０２）。
【００１５】
例えば、図５に示すように、モニタの表示画面に表示した入力帳票画像に対してユーザが指先４７を上方（４７ａ）から下方（４７ｂ）へ１回のドラッグ操作したこととする。この結果、範囲指定部３６に抽出したい枠を示す範囲として指定線データ３８が入力される。なお、ドラッグ操作とは、マウスやタッチパネルを使った操作法の１つであり、表示画面上でマウスポインタがウィンドウの枠やファイルのアイコンなどに重なった状態でマウスのボタンを押し、そのままの状態でマウスを移動させる操作を示す。
同時に、入力帳票画像データを処理制御部４３に設けられたメモリ上のワークエリアに展開する。以降、罫線抽出処理や枠領域抽出処理では、当該ワークエリアに展開された帳票画像データに対して行う。
ここで、図６を参照して、入力帳票画像を構成する各部について説明する。図６（ａ）において、５１は表領域、５２は枠領域、５３は文字領域を示している。また、図６（ｂ）において、５４は枠、５５は枠線（右側の枠線）を示している。
【００１６】
ユーザが、図７に示すように、タッチパネルの表示画面上に対して、起点６１での指先の押下から終点６２での指先の押上に至るドラッグ操作により軌跡Ｌを指定した場合、範囲指定部３６に指定線データ３８が入力される。なお、図７は、複数の枠領域抽出を行う際の指定線データを操作入力したことを示す説明図である。
次いで、指定範囲を座標値化する（Ｆ３０３）。すなわち、処理制御部４３からの指示を受けた座標値変換部３９は、範囲指定部３６から入力した指定線データ３８の範囲を座標値として変換する。この場合、座標値変換部３９は、任意の周期として例えば０．１秒でサンプリングして座標値を取得する。
【００１７】
図８に示す破線６５は、図７に示す軌跡Ｌを例えば０．１秒の時間間隔でサンプリングした座標値の例であり、それぞれの座標値をＴｎ（ｘ，ｙ）とする（ｎは序数）。
次いで、座標値Ｔｎの全てを回ったか判断する（Ｆ３０４）。座標値Ｔｎの全てを回っていない場合（Ｆ３０４  Ｎｏ）、確定済み枠領域があるか否かを判断する（Ｆ３０５）。確定済み枠領域がない場合（Ｆ３０５  「ない」）、ステップＦ３０６に進む。
次いで、罫線抽出処理部４０は、座標値Ｔｎ（ｘ，ｙ）を基点に、上下左右方向に罫線を抽出し、枠領域抽出部４１は、抽出された罫線を用いて枠領域７７を作成する（図９、Ｆ３０６〜Ｆ３０９）。
【００１８】
概略的には、図９に示す、ユーザがクリック操作を行ったときの位置（図９では「×」で示す）について検証する。上方向７１、下方向７２、左方向７３、右方向７４の４方向のうちの１方向として、例えば、座標値Ｔｎ（ｘ，ｙ）から上方向に対して罫線の有無をスキャンし（Ｆ３０６）、罫線抽出処理部４０は、座標値Ｔｎ（ｘ，ｙ）を用いて罫線を抽出し（Ｆ３０７）、未だスキャンしていない残りの方向があるか否かを判断し（Ｆ３０８）、未スキャン方向がある場合にはＦ３０６に戻り、残り方向のうちの１方向についてステップＦ３０６〜Ｆ３０８の処理を繰り返し、ステップＦ３０８において、上記４方向に対してスキャンが終了した場合にはＦ３０９に進む。枠領域抽出部４１は抽出された罫線を用いて枠領域７７を作成する（Ｆ３０８）。なお、図９は、枠領域抽出処理について説明するための説明図である。
なお、上述したステップＦ３０５〜Ｆ３０９での処理をサブルーチン化したのが図４に示すフローチャートである。
【００１９】
次に、図４に示すサブルーチンのフローチャートを参照して、本発明の実施形態に係わる画像処理装置１に適用可能な画像処理機能ブロック３１による枠領域抽出処理について詳しく説明する。なお、罫線は図１０で示すように、様々な罫線のパターンがある。
図１０において、スキャン方向が上下方向の場合の罫線を示す。８０の罫線は、想定している罫線である。８１の罫線は、かすれの罫線を想定したものである。８２の罫線は、下線が付加された文字列に対して誤検出した場合を想定したものである。８３の罫線は、垂直方向の線は両端の罫線を示し、表の外周の罫線を簡略化したものである。
【００２０】
以下、上述した罫線８０〜８３に対する対応策を含めて説明する。
罫線Ｌｘ（ｘは方向を表し、ｔ、ｂ、ｌ、ｒいずれかが代入される。図１１参照）に対して、下記情報を測定する。
罫線領域Ｌｔは、連結した黒画素（画像データ上の画像）の外接線を囲むように設定する。
図１１（ａ）は、罫線領域の定義について説明を容易にするため罫線に沿って空白があるように示した図である。図１１（ｂ）には、連結した黒画素（画像データ上の画像）の外接線８５を囲むように設定された場合と、連結した黒画素（画像データ上の画像）を外接線８６で囲むように設定しても黒画素が傾斜された場合とを示す。実際の罫線領域は図１０に示す種別の罫線８０〜８３である。
【００２１】
＜指定線が垂直方向である場合の罫線抽出処理＞
まず、方向別に画像データをスキャンする。ここで、スキャンとは、座標値を起点に、上下左右方向に罫線の有無をスキャンすることをいう。
上方向にスキャンした場合を例にとって説明する（Ｆ４０１）。罫線抽出処理部４０は、罫線Ｌａを抽出する。罫線Ｌａの両端に垂直方向の罫線の有無を探索し（Ｆ４０２）、両端の罫線の有無を判断する（Ｆ４０３）。スキャン方向が左右方向の罫線Ｌａの場合、垂直方向の罫線の有無を探索することになる。
ステップＦ４０３において、罫線Ｌａの左右端に罫線Ｌｌ、Ｌｒの両方ともが存在する場合（Ｆ４０３で「両端に罫線がある」）、かつ罫線Ｌｌ、Ｌｒの長さが、表の高さに相当する値である場合、罫線Ｌａを「確定罫線」と決定してラベルを付与する（Ｆ４０４）。
次いで、全方向の罫線が確定しているか、すなわち、残っているスキャン方向（上下左右方向のいずれか）の罫線が確定しているかどうか判定する（Ｆ４１３）。
全方向すなわち上下左右方向の罫線が確定している状態である場合（Ｆ４１３でＹｅｓ）、Ｌｔ、Ｌｂ、Ｌｌ、Ｌｒから枠領域を作成する（Ｆ４１６）。次いで、メインルーチンへ復帰し、ステップＦ３１０へ進む。
【００２２】
罫線Ｌａの左右端に罫線Ｌｌ、Ｌｒの片方だけ存在し、かつ罫線Ｌｌ、Ｌｒの長さが、表の高さに相当する値である場合、罫線Ｌａは「未確定罫線」（Ｆ４０５）と決定してラベルを付与して、隣接罫線Ｌｂを探索する（Ｆ４０６）。
なお、上記「隣接罫線」とは、罫線Ｌａから一定値以内（すなわち、近くに存在するもの）にある同一方向の罫線のことを指す。従って、近くに存在しても、方向が異なっている罫線（垂直方向の罫線）は隣接罫線といわない。
隣接罫線Ｌｂの有無を探し、隣接罫線Ｌｂの有無を判断する（Ｆ４０７）、隣接罫線Ｌｂがある場合（Ｆ４０７  「罫線がある」）、罫線Ｌａと隣接罫線Ｌｂを統合する（Ｆ４０８）。その後、統合された罫線を確定する（Ｆ４０４）。隣接罫線がない場合（Ｆ４０７  「罫線がない」）、罫線Ｌａを「保留罫線」として決定してラベルを付与する（Ｆ４１２）。
【００２３】
一方、ステップＦ４０３において、罫線Ｌａの左右端に罫線Ｌｌ、Ｌｒ両方とも存在しない場合（Ｆ４０３  「罫線がない」）、罫線Ｌａは「未確定罫線」（Ｆ４０９）と決定してラベルを付与して、スキャン方向上の別の罫線を探索する（Ｆ４１０）。具体的には、上方向にスキャンした場合、罫線Ｌａを抽出したときの座標値より上側をスキャンするということである。
再スキャンしたときの罫線の有無を判断し（Ｆ４１１）、罫線がある場合（Ｆ４１１  「罫線がある」）、ステップＦ４０３の処理に戻り、もう一度両端の罫線を探索する。一方、罫線がない場合（Ｆ４１１  「罫線がない」）、保留罫線として決定してラベルを付与しておく（Ｆ４１２）。
ステップＦ４１２において、保留罫線を決定した場合に、上下左右いずれかの別方向へのスキャンの有無を判定する（Ｆ４１４）。ここで、未だスキャンを実行していない未スキャン方向がある場合（Ｆ４１４  Ｙｅｓ）、当該未スキャン方向へのスキャンを実行するためステップＦ４０１へ戻る。上下左右いずれかの方向へのスキャンが完了している場合（Ｆ４１４  Ｎｏ）、抽出された罫線Ｌｔ、Ｌｂ、Ｌｌ、Ｌｒは全て保留罫線となり、次の座標値Ｔｎに進み（Ｆ４１７）、メインルーチンへ復帰しステップＦ３１０へ進む。
【００２４】
枠領域は、図１１に示すように、罫線抽出処理で得られた罫線領域の座標を統合し、かつ罫線の内側になるように算出するものである。
以上の処理により、始めに１番目の枠領域Ｓ１（ｘｓ，ｙｓ，ｘｅ，ｙｅ）が確定される。なお、以下の処理においはｎ番目の枠領域Ｓｎが確定したこととして説明する。
次いで、枠領域Ｓｎ（ｘｓ，ｙｓ，ｘｅ，ｙｅ）が確定した場合、枠領域Ｓｎの内側にある座標値Ｔｎを全て削除して取り除く。これは、既に確定した枠領域Ｓｎがあるため、再度、枠領域Ｓｎの内側にある座標値に対して繰り返し処理を実行させないことで、処理時間の短縮化を図ることができる。
【００２５】
図３に戻り、枠領域Ｓｎの内側にある座標値Ｔｎを全て削除して取り除かれた後の座標値グループにおいて、次の座標値に進む（Ｆ３１０）。
次の座標値においては、確定した枠領域Ｓｎが存在するため、確定した枠領域Ｓｎ（ｘｓ，ｙｓ，ｘｅ，ｙｅ）に基づいて、幅（｜ｘｓ−ｘｅ｜）を求め、高さ（｜ｙｓ−ｙｅ｜）を求め、この値を参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）とする。参照用領域Ｒは、以下のルールによって配置される。
指定線が縦方向のときは、枠領域Ｓｎのｘｓとｘｅの値が一定である。そこで、図１２に示すように、枠領域Ｓ１（ｘｓ，ｙｓ，ｘｅ，ｙｅ）の参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）を下方向に移動して枠領域Ｓ２、Ｓ３として反復配置する。すなわち、枠領域Ｓ１のｙｓ値に対して、高さは「ｈｅｉｇｈｔ  ＋  罫線の太さ」周期で下方向に参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）を移動して枠領域Ｓ２、Ｓ３として反復配置することで、枠領域Ｓ２、Ｓ３を抽出することができる。
【００２６】
この結果、帳票画像データにおいて同一の形状が並べてある複数の枠が手動操作に応じて指定された場合に、複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出することができる。
なお、図１２に示す指定線の場合は、起点での押下から終点での押上に至る指定線の方向が下方向であるため、縦方向として処理して配置することになる（Ｆ３１１）。
全ての座標値Ｔ１〜Ｔｎに関する処理が終了した場合（Ｆ３０４  Ｙｅｓ）、結果出力部４２より枠領域を出力する（Ｆ３１２）。
【００２７】
＜指定線が横方向である場合の罫線抽出処理＞
横方向についても、縦方向の処理と同様の処理を実行して枠領域を抽出する。具体的には、罫線Ｌｘ（ｘは方向を表し、ｔ、ｂ、ｌ、ｒいずれかが代入される。図１１参照）に対して、下記情報を測定する。
まず、方向別に画像データをスキャンする。ここで、スキャンとは、上述したように、座標値を起点に、上下左右方向に罫線の有無をスキャンすることをいう。
上方向にスキャンした場合を例にとって説明する（Ｆ４０１）。罫線抽出処理部４０で、罫線Ｌａを抽出する。罫線Ｌａの両端に垂直方向の罫線の有無を探索し（Ｆ４０２）。両端の罫線の有無を判断する（Ｆ４０３）。ここで、スキャン方向が左右方向の罫線Ｌａの場合、垂直方向の罫線の有無を探索することになる。
ステップＦ４０３において、罫線Ｌａの左右端に罫線Ｌｌ、Ｌｒの片方だけが存在し、かつ罫線Ｌｌ、Ｌｒの長さが、表の高さに相当する値である場合、罫線Ｌａは「未確定罫線」（Ｆ４０５）と決定してラベルを付与して、隣接罫線Ｌｂを探索する（Ｆ４０６）。
なお、本実施形態における「隣接罫線」とは、罫線Ｌａから一定値以内（すなわち、近くにあるもの）にある同一方向の罫線のことを指す。従って、近くにあっても、方向が異なっている罫線（垂直方向の罫線）は隣接罫線といわない。
【００２８】
隣接罫線Ｌｂの有無を探索し、隣接罫線Ｌｂの有無を判断する（Ｆ４０７）、隣接罫線Ｌｂがある場合（Ｆ４０７  「罫線がある」）、罫線Ｌａと隣接罫線Ｌｂを統合する（Ｆ４０８）。その後、統合された罫線を確定する（Ｆ４０４）。一方、隣接罫線がない場合（Ｆ４０７  「罫線がない」）、罫線Ｌａを「保留罫線」として決定してラベルを付与する（Ｆ４１２）。
一方、ステップＦ４０３において、罫線Ｌａの左右端に罫線Ｌｌ、Ｌｒ両方とも存在しない場合（Ｆ４０３  「罫線がない」）、罫線Ｌａは「未確定罫線」（Ｆ４０９）と決定してラベルを付与して、スキャン方向上の別の罫線を探索する（Ｆ４１０）。具体的には、上方向にスキャンした場合、罫線Ｌａを抽出したときの座標値より上側をスキャンするということである。
再スキャンしたときの罫線の有無を判断し（Ｆ４１１）、罫線がある場合（Ｆ４１１  「罫線がある」）、ステップＦ４０３の処理に戻り、もう一度両端の罫線を探索する。一方、罫線がない場合（Ｆ４１１  「罫線がない」）、保留罫線（Ｆ４１２）としておく。
【００２９】
ステップＦ４１２において、保留罫線を決定した場合、上下左右いずれかの別方向へのスキャンの有無を判定する（Ｆ４１４）。ここで、未だスキャンを実行していない未スキャン方向がある場合、当該未スキャン方向へのスキャンを実行する（Ｆ４１５）。上下左右いずれかの方向へのスキャンが完了している場合（Ｆ４１４  Ｎｏ）、抽出された罫線Ｌｔ、Ｌｂ、Ｌｌ、Ｌｒは全て保留罫線となり、次の座標値Ｔｎに進み（Ｆ４１７）、メインルーチンへ復帰し、ステップＦ３１０へ進む。
枠領域は、図１１で示すように、罫線抽出処理で得られた罫線領域の座標を統合し、かつ罫線の内側になるように算出するものである。
以上の処理により、枠領域Ｓｎ（ｘｓ，ｙｓ，ｘｅ，ｙｅ）が確定される。
なお、この段階まで（緑文字で囲んだ箇所）は、縦方向と全く同じ処理内容である。
枠領域Ｓｎ（ｘｓ，ｙｓ，ｘｅ，ｙｅ）が確定した場合、枠領域Ｓｎの内側にある座標値Ｔｎを全て取り除く。これは、既に確定した枠領域Ｓｎがあるため、枠領域Ｓｎの内側にある座標値に対して繰り返し処理をしないことで、処理時間の短縮化を図ることができる。
【００３０】
図３に戻り、取り除かれた後の座標値グループで、次の座標値Ｔｎに進み（Ｆ３１０）、ステップＦ３０４へ戻る。
次の座標値Ｔｎにおいては、確定した枠領域Ｓｎが存在するため（Ｆ３０５  「ある」）、確定した枠領域Ｓｎの幅・高さを求め、この値を参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）とする。参照用領域Ｒは、以下のルールによって配置される。
図１３に示すように、指定線が横方向にある場合は、枠領域Ｓｎのｙｓとｙｅの値が一定である。ここで、枠領域Ｓ１（ｘｓ，ｙｓ，ｘｅ，ｙｅ）の参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）を下方向に移動して枠領域Ｓ２、Ｓ３として反復配置する。すなわち、枠領域Ｓ１のｘｓ値に対して、幅は「ｗｉｄｔｈ＋罫線の太さ」周期で右方向に参照用領域Ｒ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）を移動して枠領域Ｓ１を枠領域Ｓ２、Ｓ３として反復配置することで、枠領域Ｓ２、Ｓ３を抽出することができる（Ｆ３１１）。
【００３１】
全ての座標値Ｔ１〜Ｔｎに関する処理が終えた場合（Ｆ３０４  Ｙｅｓ）、結果出力部４２は枠領域を出力する（Ｆ３１２）。
この結果、帳票画像データにおいて同一の形状が並べてある複数の枠が手動操作に応じて指定された場合に、複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出することができる。
【００３２】
本実施形態によれば、取得された画像データを帳票画像データと定義し、帳票画像データの表領域の中にある上下左右の枠線の内側を枠領域と定義し、帳票画像データにある表中の任意の枠が手動操作に応じて指定された場合に、指定された箇所の座標値を検出し、検出された当該座標値から枠領域を抽出し、画像データにおいて同一の形状が並べてある複数の枠が手動操作に応じて指定された場合に、複数の枠から任意の箇所の枠を１つ選択し、選択された箇所の座標値を検出し、検出された当該座標値から１つの枠領域を抽出し、当該１つの枠領域に対して、手動操作に応じて指定された方向へ同一形状の枠領域を繰り返し抽出することで、入力帳票画像データにある表中の同一パターンで反復配置されている枠に対して、１回の手動操作で複数の枠領域を抽出することができる。
なお、本実施形態で説明した罫線抽出処理は、例えば、特許文献３の「罫線認識方法及び表処理方法」に記載されている技術を用いることとする。罫線抽出処理としては、具体的に、画像中の黒画素の連結性をもとに連続した黒画素に同じラベルを付与する。ラベリングされたラベル値が同一で、主走査方向又は副走査方向に連結していて、かつ妥当な長さ及び幅を持っているとき、罫線矩形データとして抽出する。抽出された少なくとも１つ以上の罫線矩形データ同士が交差している罫線矩形データを連結することにより、表単位の罫線を抽出することができる。
【符号の説明】
【００３３】
１…画像処理装置、１０…ＣＰＵ、１１…スキャナ部、１２…外部記憶部、１３…入力画像メモリ部、１４…表示部、１５…操作部、１６…画像処理部、１７…テンプレート出力部、１８…通信制御部、２０…ハードディスク、３１…画像処理機能ブロック、３２…画像データ、３３…データアクセス部、３４…画像入力部、３５…画像表示部、３６…範囲指定部、３７…指定範囲入力、３８…指定線データ、３９…座標値変換部、４０…罫線抽出処理部、４１…枠領域抽出部、４２…結果出力部、４３…処理制御部
【先行技術文献】
【特許文献】
【００３４】
【特許文献１】特開２００１−１２６０１０公報
【特許文献２】特開２０１０−０６１６９３公報
【特許文献３】特許３１６２４１４号
【図１】
2013250927.tif 000003
【図２】
2013250927.tif 000004
【図３】
2013250927.tif 000005
【図４】
2013250927.tif 000006
【図５】
2013250927.tif 000007
【図６】
2013250927.tif 000008
【図７】
2013250927.tif 000009
【図８】
2013250927.tif 000010
【図９】
2013250927.tif 000011
【図１０】
2013250927.tif 000012
【図１１】
2013250927.tif 000013
【図１２】
2013250927.tif 000014
【図１３】
2013250927.tif 000015
【図１４】
2013250927.tif 000016