図1を参照して、本発明の実施形態に係る情報処理システムについて説明する。図1には、本実施形態に係る情報処理システムの一例が示されている。
本実施形態に係る情報処理システムは、一例として、情報処理装置10とスキャナ12とを含む。情報処理装置10とスキャナ12は、ネットワーク等の通信経路を介して、又は、直接的に、互いに通信する機能を有する。その通信は、無線通信であってもよいし、有線通信であってもよい。
情報処理装置10は、例えば、パーソナルコンピュータ(PC)、タブレットPC、スマートフォン、携帯電話、等の端末装置であり、OCR等の文字認識処理に用いられる定義情報を作成する装置である。その定義情報は、帳票等の用紙に対する文字認識処理によって、その用紙上の記入欄に記入されている情報としての文字を認識するために用いられる情報である。定義情報は、例えば、当該記入欄に対応する記入枠の用紙上の位置情報を含む情報である。記入枠は、文字認識処理が適用される矩形状の領域である。記入枠は、記入欄と同じ形状及び大きさを有していてもよいし、記入欄とは異なる形状及び大きさを有していてもよい。例えば、記入枠は、記入欄内において文字が記載されると想定される領域として定められる。
スキャナ12は、スキャン機能を有する装置であり、原稿を読み取ることで画像データを生成する。生成された画像データは、スキャナ12から情報処理装置10に送られる。
本実施形態では、帳票等の用紙がスキャナ12によって読み取られ、これによって、その用紙を表す画像データが生成される。その用紙には、文字が記入されるべき記入欄が形成されている。文字認識処理に用いられる定義情報を作成するためには、記入欄に文字が記入されていない帳票等の用紙がスキャナ12によって読み取られ、これによって、記入欄に文字が記入されていない用紙を表す画像データが生成される。情報処理装置10は、その画像データに画像処理を適用することで、当該画像データから記入欄に対応する記入枠を抽出し、更に、用紙上における当該記入枠の位置情報を含む定義情報を作成する。
なお、情報処理装置10は、スキャナ12以外の装置(例えばサーバ等の装置)から画像データを取得し、当該画像データに対して画像処理を適用することで、記入枠の抽出と定義情報の作成を行ってもよい。情報処理装置10にスキャナ12が含まれて、これによって、いわゆる複合機等の画像形成装置(スキャン機能の他に、コピー機能やプリント機能等の画像形成機能を有する装置)が構成されてもよい。この場合、画像形成装置によって、画像データに対して画像処理が適用される。
以下、情報処理装置10の構成について詳しく説明する。
通信部14は通信インターフェースであり、他の装置にデータを送信する機能、及び、他の装置からデータを受信する機能を有する。通信部14は、無線通信機能を有する通信インターフェースであってもよいし、有線通信機能を有する通信インターフェースであってもよい。
UI部16はユーザインターフェースであり、表示部と操作部を含む。表示部は、例えば液晶ディスプレイ等の表示装置である。操作部は、例えばタッチパネルやキーボードやマウス等の入力装置である。
記憶部18はハードディスクやメモリ等の記憶装置である。記憶部18には、例えば、スキャナ12や他の装置から送られてきた画像データ、その他のデータ、各種のプログラム、等が記憶されている。
画像処理部20は、記入欄が形成されている帳票等の用紙を表す画像データに対して画像処理を適用することで、当該記入欄に対応する記入枠を当該画像データから抽出し、更に、当該用紙上における当該記入枠の位置情報を含む定義情報を作成するように構成されている。以下、画像処理部20の構成について詳しく説明する。
抽出部22は、記入欄が形成されている帳票等の用紙を表す画像データから、当該記入欄に対応する記入枠としての矩形部分を抽出するように構成されている。例えば、抽出部22は、ヒストグラム法やハフ変換等を用いることで画像データから枠線としての線分を検出し、複数の線分によって構成される矩形部分(複数の線分によって矩形状の囲みが形成されている部分)を記入枠として抽出する。具体的には、1つの線分に他の線分が接続され、4つの線分によって矩形状の囲みが形成されている場合、抽出部22は、それらの線分を一纏めにして矩形部分としての記入枠を抽出する。
表示制御部24は、抽出部22によって抽出された記入枠を表す画像をUI部16の表示部に表示させるように構成されている。また、表示制御部24は、後述する再抽出部28によって抽出された記入枠を表す画像をUI部16の表示部に表示させるように構成されている。
画像編集部26は、ユーザの指示に従って、用紙を表す画像データを編集するように構成されている。編集は、図形の追加や削除等である。画像データに対して、図形が追加されると共に、画像データを構成する図形が削除されてもよい。図形は、例えば、線分からなる図形や、矩形部分からなる図形等である。
再抽出部28は、画像編集部26による編集が反映された画像データから、記入枠としての矩形部分を抽出するように構成されている。その抽出アルゴリズムは、抽出部22における抽出アルゴリズムと同じである。なお、再抽出部28が画像処理部20に設けられずに、抽出部22によって、再抽出部28による処理が実行されてもよい。
定義情報作成部30は、再抽出部28によって抽出された記入枠と、その記入枠に対応する記入欄に記載されるべき情報(文字)の属性との対応付けを示す定義情報を作成するように構成されている。例えば、その定義情報は、用紙上における記入枠の位置情報(座標情報)と、情報(文字)の属性を示す属性情報とが互いに対応付けられている。属性情報は、例えば、記入欄に記入されるべき内容を示す情報や、文字認識処理に用いられる辞書を示す情報等を含む。定義情報は、例えば、UI部16の表示部に表示されてもよいし、情報処理装置10以外の装置や記録媒体に出力されてもよい。また、定義情報は、ユーザによって編集されてもよい。定義情報は、記入欄に文字が記入された用紙から文字を認識するときに用いられる。例えば、定義情報に含まれる位置情報に基づいて、用紙の画像に表されている記入枠が特定され、その記入枠内に表されている画像に対して文字認識処理が適用されることで、記入欄に記入されている文字が認識される。
制御部32は、情報処理装置10の各部の動作を制御するように構成されている。例えば、制御部32は、通信部14による通信、UI部16の表示部による情報の表示、記憶部18からの情報の読み出し、記憶部18への情報の書き込み、等を制御する。
なお、画像処理部20による処理は、サーバ等の外部装置によって行われ、その処理結果を示す情報が外部装置から情報処理装置10に送信されて、その情報が情報処理装置10に表示されてもよい。すなわち、画像処理部20による画像処理と、その処理結果の表示は、同一装置によって行われてもよいし、それぞれ異なる装置によって行われてもよい。また、画像処理部20による処理の対象となる画像データは、スキャナ12以外の装置(例えばサーバ等の外部装置)から情報処理装置10に送られてもよい。すなわち、画像処理部20による処理の対象となる画像データは、文字が記入されていない帳票等の用紙がスキャナ12によってスキャンされることで生成された画像データであってもよいし、スキャンによらずに生成された画像データであってもよい。
以下、本実施形態に係る情報処理システムについて詳しく説明する。
図2を参照して、記入欄に文字が記入されていない用紙の一例として、帳票について説明する。以下、記入欄に文字列が記入されていない用紙を「テンプレート」と称することとする。図2には、帳票のテンプレートの一例が示されている。帳票34(テンプレート)は、用紙の一例である。帳票34には、表形式の記入欄が形成されている。具体的には、帳票34には、「氏名」が記入されるべき記入欄36,38と、「住所」が記入されるべき記入欄40,42,44,46が形成されている(例えば印刷されている)。記入欄36は、「氏名」の「ふりがな」が記入されるべき欄であり、記入欄38は、漢字、ひらがな、カタカナ、数字、アルファベット等によって表現される「氏名」が記入されるべき欄である。記入欄40は、「住所1」の「ふりがな」が記入されるべき欄であり、記入欄42は、漢字、ひらがな、カタカナ、数字、アルファベット等によって表現される「住所1」が記入されるべき欄である。記入欄44は、「住所2」の「ふりがな」が記入されるべき欄であり。記入欄46は、漢字、ひらがな、カタカナ、数字、アルファベット等によって表現される「住所2」が記入されるべき欄である。各記入欄には文字は記入されていない。
氏名に関しては、全体の記入欄は実線で構成されているが、記入欄36と記入欄38は、破線によって区分けされている。同様に、住所1に関しては、全体の記入欄は実線で構成されているが、記入欄40と記入欄42は、破線によって区分けされている。住所2についても同様であり、記入欄44と記入欄46は、破線によって区分けされている。
また、X方向とY方向は互いに直交する方向であり、各記入欄は、X方向に平行な線分とY方向に平行な線分とによって構成されている。線分は、実線又は破線である。例えば、記入欄36は、X方向に平行な2つの線分と、Y方向に平行な2つの線分とによって構成されている。他の記入欄についても同様である。このように、図2に示されている各記入欄は、矩形状の形状を有する。
ここで、図3を参照して、記入欄36,38の構成について詳しく説明する。図3には、記入欄36,38が示されている。記入欄36は、点A1,A2,A3,A4を頂点とする矩形状の領域である。つまり、記入欄36は、X方向に平行な線分A1A2(点A1と点A2とを結ぶ線分)、X方向に平行な線分A3A4(点A3と点A4とを結ぶ線分)、Y方向に平行な線分A1A3(点A1と点A3とを結ぶ線分)、及び、Y方向に平行な線分A2A4(点A2と点A4とを結ぶ線分)によって囲まれた矩形状の領域である。記入欄38は、点A3,A4,A5,A6を頂点とする矩形状の領域である。つまり、記入欄38は、X方向に平行な線分A3A4、X方向に平行な線分A5A6(点A5と点A6とを結ぶ線分)、Y方向に平行な線分A3A5(点A3と点A5とを結ぶ線分)、及び、Y方向に平行な線分A4A6(点A4と点A6とを結ぶ線分)によって囲まれた矩形状の領域である。線分A3A4は破線であり、他の線分は実線である。住所に関する記入欄40,42,44,46も同様の構成を有する。
帳票34が実際に利用される場面においては、帳票34の利用者によって、帳票34内の各記入欄に、氏名や住所を表す文字列が記入される。そのようにして文字列が記入された帳票に対して、OCR等の文字認識処理が適用されることで、氏名や住所を表す文字列が認識される。その文字認識には定義情報が用いられる。
以下、図4を参照して、文字認識処理に用いられる定義情報について説明する。図4には、帳票34の定義情報の一例が示されている。この定義情報においては、一例として、記入欄に対応する記入枠の識別情報としての名称やIDと、用紙上における当該記入枠の位置情報としての座標情報と、当該記入枠の種類を示す種類情報と、が互いに対応付けられている。これら以外の情報が、定義情報に含まれていてもよい。識別情報と種類情報は、記入欄に記入されるべき情報(文字)の属性を示す属性情報の一例に相当する。座標は、X軸(X方向)とY軸(Y方向)上の位置によって定義されている。
記入枠の識別情報は、記入欄に記入されるべき内容を示している。例えば、枠名「Furigana_Name」は、その記入欄に「氏名のふりがな」が記入されるべきことを示している。座標情報は、文字認識処理を適用すべき領域を示している。つまり、座標情報によって示された領域(記入枠)に対して文字認識処理が適用され、その記入枠から文字が抽出される。また、記入枠の種類は、文字認識処理に用いられる辞書を示している。例えば、枠種類「氏名ふりがな」は、その記入欄に対する文字認識処理には、「氏名ふりがな」専用の辞書を用いることを示している。なお、枠名は、文字認識処理によって認識された文字列を管理するデータベースにおける管理情報に対応していてもよい。
例えば、枠名「Furigana_Name」は、帳票34に形成されている記入欄36に対応する記入枠の識別情報である。この識別情報は、記入欄36に「氏名ふりがな」が記入されるべきことを示している。座標「1100,2100,370,390」は、記入欄36に対応する記入枠の座標である。より詳しく説明すると、記入欄36に対応する記入枠は、頂点としての点A1、A2,A3,A4に対応する頂点を有する。点A1に対応する頂点の座標(X,Y)は(1100,370)であり、点A2に対応する頂点の座標(X,Y)は(2100,370)であり、点A3に対応する頂点の座標(X,Y)は(1100,390)であり、点A4に対応する頂点の座標(X,Y)は(2100,390)である。なお、文字認識処理が適用される記入枠の各頂点の座標は、記入欄36の各頂点の座標と一致していてもよいし、一致していなくてもよい。つまり、記入枠は、記入欄36よりも広い領域として定義されてもよいし、狭い領域として定義されてもよい。また、枠種類「氏名ふりがな」は、記入欄36に記入されるべき情報(文字)の種類である。この種類情報は、文字認識処理に際して「氏名ふりがな」専用の辞書を用いるべきことを示している。他の記入欄に対応する記入枠についても、記入欄36に対応する記入枠と同様に、座標情報等が定義されている。
例えば、記入欄36に対応する記入枠(上記の座標情報で定義されている領域)に対して文字認識処理が適用される。その際、「氏名ふりがな」専用の辞書が用いられて、その記入枠から文字が抽出される。抽出された文字は、「氏名ふりがな」を示す文字として、データベース等に管理される。他の記入欄についても同様である。
情報処理装置10は、上記の定義情報を作成するために用いられる。そのために、情報処理装置10は、記入欄に文字が記入されていない帳票34(テンプレート)から記入欄に対応する記入枠を抽出する。
なお、帳票34は用紙の一例に過ぎない。帳票以外にも、例えば、テストの解答用紙、アンケートの回答用紙、カルテ、公的機関が発行する書類(例えば住民票等)、申込用紙、投票用紙、等のように、記入欄が形成されている用紙であれば、本実施形態に係る処理が適用されてもよい。以下では、用紙の一例として帳票34を例に挙げて各処理について説明するが、帳票34以外の用紙にも、帳票34に対する処理と同様の処理が適用されてもよい。
以下、定義情報を作成するための処理について詳しく説明する。
定義情報を作成するためには、まず、記入欄に文字が記入されていない帳票34がスキャナ12によってスキャンされる。これにより、記入欄に文字が記入されていない帳票34の画像データ(以下、「テンプレート画像データ」と称する)が生成され、その画像データは、スキャナ12から情報処理装置10に送信される。そのテンプレート画像は、UI部16の表示部に表示される。
図5には、テンプレート画像の表示例が示されている。例えば、ユーザがUI部16を操作してテンプレート画像の表示指示を与えた場合、表示制御部24は、テンプレート表示画面48を表示部に表示させ、そのテンプレート表示画面48にテンプレート画像を表示させる。テンプレート表示画面48は領域50を含み、その領域50内にテンプレート画像が表示される。例えば、氏名の記入欄を表す記入欄オブジェクト52と、住所の記入欄を表す記入欄オブジェクト54とを含む画像が、テンプレート画像として表示されている。また、テンプレート表示画面48には、記入枠の抽出指示を与えるための枠抽出ボタンと、定義情報の登録指示を与えるための登録ボタンが表示されている。
テンプレート表示画面48上で、ユーザが枠抽出ボタンを押した場合、抽出部22は、テンプレート画像から記入枠としての矩形部分を抽出する。表示制御部24は、抽出部22によって抽出された記入枠を表す画像をUI部16の表示部に表示させる。
図6には、記入枠の抽出結果の表示例が示されている。表示制御部24は、枠表示画面56をUI部16の表示部に表示させ、その枠表示画面56に記入枠を表す画像を表示させる。枠表示画面56は、記入枠を表す画像が表示される領域58と、記入枠の座標情報等が表示される領域60とを含む。図6に示す例では、記入枠を表す記入枠画像62,64,66が表示されている。記入枠画像62は、記入欄36,38を合体させたような領域を表す画像である。記入枠画像64は、記入欄40,42を合体させたような領域を表す画像である。記入枠画像66は、記入欄44,46を合体させたような領域を表す画像である。つまり、各記入欄を構成する実線は枠線として抽出されているが、破線は枠線として抽出されていないため、記入欄36,38が区別されずに抽出されている。記入欄40,42と記入欄44,46についても同様である。
ここで、図3を参照して、線分の抽出アルゴリズムについて説明する。一例として、ヒストグラム法を用いて線分を抽出するものとする。抽出部22は、記入欄36,38を表す画像(テンプレート画像の一部)を構成する画素の黒点数を、抽出しようとする枠線と同一方向(例えばX方向及びY方向)に集計し、ヒストグラムを作成する。例えば、抽出部22は、Y方向の各座標において、画素の黒点数をX方向に集計し、各Y座標におけるX方向に対するヒストグラムを作成する。具体例を挙げて説明すると、抽出部22は、線分A1A2を構成する画素の黒点数をX方向に集計し、線分A1A2のヒストグラムを作成する。同様に、抽出部22は、X方向の各座標において、画素の黒点数をY方向に集計し、各X座標におけるY方向に対するヒストグラムを作成する。具体例を挙げて説明すると、抽出部22は、線分A1A5を構成する画素の黒点数をY方向に集計し、線分A1A5のヒストグラムを作成する。線分A1A2等の実線のヒストグラムは、枠線のない部分の黒点数に比べて大きな値となっている。それ故、線分A1A2等の実線が記入欄を構成する枠線として抽出されて枠線のない部分が枠線として抽出されないような閾値を設定しておき、ヒストグラムの値が閾値以上となる線分を枠線として抽出することで、線分A1A2等の実線が枠線として抽出される。その結果、実線として、X方向に平行な線分A1A2,A5A6と、Y方向に平行な線分A1A5,A2A6が、枠線として抽出される。一方、破線としての線分A3A4は、上記の閾値との関係で、枠線として抽出されない場合がある。
抽出された線分A1A2,A5A6,A1A5,A2A6に、これらの線分の中の他の線分が接続され、これら4つの線分によって矩形状の囲みが形成されているので、抽出部22は、これら4つの線分を一纏めにして矩形部分としての記入枠を抽出する。図6に示されている記入枠画像62は、このようにして抽出された記入枠を表す画像である。つまり、記入枠画像62は、線分A1A2,A5A6,A1A5,A2A6によって構成される矩形部分を表す画像(点A1,A2,A5,A6を頂点とする矩形部分を表す画像)である。破線としての線分A3A4は枠線として抽出されていないため、記入欄36と記入欄38は区別されずに、それらが1つの纏まりの領域として抽出されている。
住所に関する記入欄40,42,44,46についても同様であり、これらの記入欄を構成する実線が枠線として抽出され、破線は抽出されない。それ故、記入欄40,42が区別されずに、それらが1つの纏まりの領域として抽出され、その領域を表す画像が記入枠画像64として表示されている。同様に、記入欄44,46が区別されずに、それらが1つの纏まりの領域として抽出され、その領域を表す画像が記入枠画像66として表示されている。
領域60には、例えば、抽出された記入枠のIDや、テンプレート画像上の記入枠の座標情報等が表示される。IDは、例えば、Y座標の小さい順に各記入枠に自動的に紐付けられる。図6に示す例では、3つの記入枠(記入枠画像62,64,66が表す記入枠)が抽出されているため、それら3つの記入枠のIDや座標情報が、領域60内に表示されている。
また、枠表示画面56には、定義情報の登録指示を与えるための登録ボタンと、テンプレート画像の編集指示を与えるための編集ボタンが表示されている。ユーザが編集ボタンを押した場合、テンプレート画像を編集するための画面がUI部16の表示部に表示される。
図6に示す例では、抽出されるべき記入枠(記入欄36,38,40,42,44,46のそれぞれに対応する記入枠)が抽出されていないため、記入枠の抽出に不足が発生している。この場合、ユーザによってテンプレート画像が編集され、その編集が反映されたテンプレート画像に対して抽出処理が適用されることで、より正確に記入枠が抽出される。
以下、テンプレート画像の編集について説明する。
ユーザが編集ボタンを押した場合、表示制御部24は、テンプレート表示画面48をUI部16の表示部に表示させる。図7には、そのテンプレート表示画面48が示されている。テンプレート表示画面48には、図5と同様に、テンプレート画像が表示される。ユーザがUI部16を操作して、テンプレート表示画面48上で線分の描画指示を与えると、画像編集部26は、その指示に従って、テンプレート画像に線分からなる図形を追加する。例えば、ユーザが、マウスによるクリックやタッチパネル上のタッチ操作によって、図3中の線分A3A4を表す破線68の端点70,72を指定した場合、画像編集部26は、端点70,72を結ぶ実線からなる図形をテンプレート画像に追加する。なお、端点70は、線分A1A5上に指定され、端点72は、線分A2A6上に指定されている。表示制御部24は、その実線をテンプレート表示画面48に表示させる。図8には、その表示例が示されている。破線68上に、実線としての線分74が描画されている。なお、ユーザは、端点70,72を指定する方法以外に、テンプレート画像上に線分を直接的に描画してもよい。
他の破線についても上記の描画操作によって、実線としての線分がテンプレート画像に追加される。具体的には、テンプレート画像上において、記入欄40,42を区分けする破線と、記入欄44,46を区分けする破線とに、実線としての線分が追加される。例えば図9に示すように、各破線上に実線としての線分が追加されて描画されている。
上記のようにして実線がテンプレート画像に追加された後、ユーザが枠抽出ボタンを押した場合、再抽出部28は、実線が追加されたテンプレート画像から記入枠としての矩形部分を抽出する。その抽出アルゴリズムは、上述した抽出アルゴリズム(抽出部22の抽出アルゴリズム)と同じである。再抽出部28は、実線が追加された部分については、その実線を対象として抽出アルゴリズムを適用する。例えば、ヒストグラム法が適用された場合、その実線が追加された部分(破線の部分)のヒストグラムの値は閾値以上となるため、その実線が追加された部分は線分として抽出される。
なお、編集(図8に示す例では線分の追加)によって、テンプレート画像に線分等の図形が合成されてもよいし、テンプレート画像のレイヤーとその図形のレイヤーとが分かれて管理されてもよい。記入枠の抽出処理では、テンプレート画像のレイヤーとその図形のレイヤーとが合成された画像に対して抽出アルゴリズムが適用されることで、線分が抽出される。
図10には、再抽出結果の一例が示されている。記入枠が抽出された場合、表示制御部24は、枠表示画面56をUI部16の表示部に表示させ、その枠表示画面56に記入枠を表す画像を表示させる。例えば、記入枠画像76,78,80,82,84,86が表示されている。図9に示すように、各破線上に実線からなる線分が追加されたので、各破線も抽出されている。その結果、記入欄36,38,40,42,44,46のそれぞれに対応する記入枠が個別的に抽出され、各記入欄に対応する記入枠を表す画像が表示されている。詳しく説明すると、図3中の線分A3A4(破線)も抽出され、これにより、線分A1A2,A3A4,A1A3,A2A4によって矩形状の囲みが形成されているので、再抽出部28は、これら4つの線分を一纏めにして矩形部分としての記入枠を抽出する。これにより、記入欄36に対応する記入枠が抽出される。他の記入欄についても同様である。
例えば、記入枠画像76は、記入欄36に対応する記入枠を表す画像である。記入枠画像78は、記入欄38に対応する記入枠を表す画像である。記入枠画像80は、記入欄40に対応する記入枠を表す画像である。記入枠画像82は、記入欄42に対応する記入枠を表す画像である。記入枠画像84は、記入欄44に対応する記入枠を表す画像である。記入枠画像86は、記入欄46に対応する記入枠を表す画像である。
図10に示す例では、帳票34に形成されている6つの記入欄に対応する6つの記入枠が抽出されているため、それら6つの記入枠のIDや座標情報が、領域60内に表示されている。
枠表示画面56上で、ユーザが登録ボタンを押した場合、定義情報作成部30は、各記入枠の座標情報を含む定義情報を作成する。その定義情報は、UI部16の表示部に表示されてもよいし、他の装置に出力されてもよいし、ユーザによって編集されてもよい。例えば、各記入枠の座標情報に、文字認識処理に用いられる辞書を示す辞書情報(指名用の辞書情報や住所用の辞書情報等)や、記入欄に記入されるべき内容を示す情報等が、ユーザによって紐付けられる。また、座標情報が編集されてもよい。例えば、実際の記入欄よりも広い範囲が記入枠として定義されてもよい。また、定義情報は、そのデータ形式が変換されて出力されてもよい。
記入欄に文字が記入された帳票34に対して、上記の定義情報を用いて文字認識処理を適用することで、記入枠画像76,78,80,82,84,86のそれぞれに対応する記入枠内に対して文字認識処理が適用され、各記入枠内から文字が抽出される。
以上のように、本実施形態によれば、全自動抽出処理では抽出されなかった破線が、記入枠を構成する枠線として抽出されるので、全自動で記入枠を抽出する場合と比べて、より正確に記入枠が抽出される。
再抽出の後、枠表示画面56上でユーザが編集ボタンを押した場合、表示制御部24は、テンプレート表示画面48を表示部に表示させる。ユーザは、そのテンプレート表示画面48上で、再び、テンプレート画像を編集してもよい。その編集後、ユーザが枠抽出ボタンを押した場合、再抽出部28は、その編集が反映されたテンプレート画像から記入枠を抽出し、表示制御部24は、その抽出結果を枠表示画面56に表示させる。このように、ユーザは、枠表示画面56上で記入枠の抽出結果を確認し、その抽出結果がユーザの期待と異なれば、テンプレート表示画面48にてテンプレート画像を編集してもよい。抽出結果がユーザの期待通りになるまで、ユーザは、上記の操作を繰り返してもよい。なお、表示制御部24は、枠抽出ボタンと編集ボタンとに対する操作によって画面を切り替えずに、タブ画面を利用して画面を切り替えてもよいし、1つの画面内に、テンプレート表示画面48と枠表示画面56の両方を表示させてもよい。
なお、枠表示画面56上で、ユーザが、記入枠のIDを指定した場合、表示制御部24は、その指定されたIDに紐付く記入枠画像を、他の記入枠画像と区別して(識別可能な状態にして)枠表示画面56に表示させてもよい。例えば、表示制御部24は、指定されたIDに紐付く記入枠画像をハイライト表示によって枠表示画面56に表示させる。こうすることで、上記の区別を行わない場合と比べて、ユーザにとって、自身が指定している記入枠の認識が容易となる。例えば、ユーザが記入枠の座標情報を編集する場合に、ユーザが指定したIDに紐付く記入枠画像がハイライト表示されることで、ユーザにとって、その編集対象の記入枠の認識が容易となる。
以下、変形例について説明する。
(変形例1)
図11を参照して、変形例1について説明する。図11には、変形例1に係る記入欄が示されている。この記入欄88は、全体が実線によって構成された矩形状の形状を有するが、その矩形部分の内部に、Y方向に平行な破線90等が形成されている。この場合も、その破線は線分として抽出されない場合がある。その場合、ユーザが、テンプレート表示画面において、破線90の端点92,94を指定すると、画像編集部26は、端点92,94を結ぶ実線としての線分をテンプレート画像に追加する。なお、端点92,94は、X方向に平行な実線としての線分上に指定されている。他の線分についても同様の操作によって、実線としての線分が追加される。線分が追加されたテンプレート画像に対して抽出処理が適用されることで、破線90も線分として抽出され、その破線90を含む記入欄に対応する記入枠が抽出される。他の破線についても同様である。
変形例1においても、上記の実施形態と同様に、全自動で記入枠を抽出する場合と比べて、より正確に記入枠が抽出される。
(変形例2)
変形例2について説明する。図12には、変形例2に係る記入欄が示されている。記入欄96は、曲線を有する表形式の記入欄である。記入欄96は、線分C1D1,B1D2,D1D2と曲線部分C1B1とによって囲まれている記入欄(氏名欄)、線分D1C2,D2B2,D1D2と曲線部分C2B2とによって囲まれている記入欄(氏名欄)、線分B1D2,B3D3,B1B3,D2D3によって囲まれている記入欄(住所欄)、線分D2B2,D3B4,D2D3,B2B4によって囲まれている記入欄(住所欄)、線分B3D3,C3D4,D3D4と曲線部分B3C3とによって囲まれている記入欄(電話番号欄)、及び、線分D3B4,D4C4,D3D4と曲線部分B4C4とによって囲まれている記入欄(電話番号欄)を含む。なお、点C1等の各点を表す黒丸は、説明の便宜上、図示されているが、実際の記入欄96には、黒丸は形成されていない。
記入欄96に対して抽出部22による抽出処理が適用された場合、曲線部分は抽出されずに、直線部分のみが抽出される。図13には、線分の抽出結果98が示されている。例えば、線分B1B2,B3B4,B1B3,B2B4,C1C2,C3C4,D1D4が抽出され、曲線部分B1C1,B2C2,B3C3,B4C4は抽出されない。つまり、上述したヒストグラム法によれば、X方向又はY方向に平行な線分が抽出され、それら以外の線分(斜め線)や曲線は抽出されない。従って、記入欄96を構成する曲線部分は抽出されない。その結果、記入枠としては、上記の線分によって構成される記入枠のみが抽出される。
図14には、抽出部22によって抽出された記入枠100,102が示されている。記入枠100は、線分B1D2,B3D3,B1B3,D3D3によって構成される矩形部分である。記入枠102は、線分D2B2,D3B4,D2D3,B2B4によって構成される矩形部分である。このように、曲線部分を含む記入欄(氏名欄と電話番号欄)に対応する記入枠は抽出されない。
曲線部分を含む記入欄に対応する記入枠を抽出するために、変形例2では、画像編集部26は、矩形部分を形成するための頂点を擬似的に作成し、再抽出部28は、その頂点を含む矩形部分を記入枠として抽出する。
以下、図15を参照して、変形例3について詳しく説明する。例えば、テンプレート表示画面上で、ユーザが点B1,C1を指定すると、画像編集部26は、線分B1B3の延長線と線分C1C2の延長線とを仮想的に形成し、それら2つの延長線の交点である点E1の位置を演算する。次に、画像編集部26は、点E1と点B1とを結ぶ線分E1B1、及び、点E1と点C1とを結ぶ線分E1C1を、記入欄96を表すテンプレート画像に追加する。点E2,E3,E4についても同様であり、線分E2B2,E2C2,E3B3,E3C3,E4B4,E4C4が、テンプレート画像に追加される。なお、点Bi=(Xbi,Ybi)、点Ci=(Xc1,Yci)とした場合、点Ei=(Xbi,Yci)である(i=1,2,3,4)。
図15に示されているテンプレート画像(線分が追加されたテンプレート画像)に対して、再抽出部28による抽出処理が適用された場合、線分E1E2,B1B2,B3B4,E3E4,E1E3,D1D4,E2E4が抽出され、これらによって構成される矩形部分が記入枠として抽出される。
図16には、記入枠の抽出結果が示されている。ここでは、記入枠104,106,108,110,112,114が抽出されている。記入枠104は、線分E1D1,B1D2,E1B1,D1D2によって構成される矩形部分である。記入枠106は、線分D1E2,D2B2,D1D2,E2B2によって構成される矩形部分である。記入枠108は、線分B1D2,B3D3,B1B3,D2D3によって構成される矩形部分である。記入枠110は、線分D2B2,D3B4,D2D3,B2B4によって構成される矩形部分である。記入枠112は、線分B3D3,E3D4,B3E3,D3D4によって構成される矩形部分である。記入枠114は、線分D3B4,D4E4,D3D4,B4E4によって構成される矩形部分である。これらの記入枠は、記入欄96に含まれる各記入欄に対応する領域である。
以上のように、変形例2によれば、記入欄が曲線部分を含む場合であっても、その記入欄を含む記入枠が抽出され、その記入枠の座標情報を含む定義情報が作成される。
なお、曲線部分を含む記入欄に対応する記入枠は、その記入欄と全く同じ形状を有する枠として抽出されないが、その記入欄を含む枠として抽出される。このように、記入欄が矩形状の形状を有していない場合、抽出された記入枠と元々の記入欄との間で、形状や大きさは一致しない。この場合であっても、抽出された記入枠は、元々の記入欄を含む領域であるため、その記入枠内を対象として文字認識処理が適用されることで、その記入欄に記載された文字が認識される。
(変形例3)
変形例3について説明する。変形例3では、外枠の一部を有していない記入欄を対象にして記入枠が抽出される。図17には、変形例3に係る記入欄の一例が示されている。記入欄115は、Y方向に平行な外枠を有していない表(開放表)である。つまり、点F1と点F10とを結ぶ線分が形成されておらず、同様に、点F3と点F12とを結ぶ線分が形成されていない。なお、点F1等の各点を表す黒丸は、説明の便宜上、図示されているが、実際の記入欄115には、黒丸は形成されていない。
記入欄115に対して抽出部22による抽出処理が適用された場合、線分F1F3,F4F6,F7F9,F10F12,F2F11が抽出される。しかし、これらの線分によっては矩形部分は構成されないため、矩形部分としての記入枠は抽出されない。
記入枠を抽出するために、テンプレート表示画面上で、ユーザが点F1,F10を指定すると、画像編集部26は、線分F1F10をテンプレート画像に追加する。同様に、ユーザが点F3F12を指定すると、画像編集部26は、線分F3F12をテンプレート画像に追加する。
各線分が追加されたテンプレート画像に対して、再抽出部28による抽出処理が適用された場合、線分F1F3,F4F6,F7F9,F10F12,F2F11に加えて、線分F1F10,F3F12が抽出され、これらによって構成される矩形部分が記入枠として抽出される。図18には、記入枠の抽出結果が示されている。ここでは、記入枠116,118,120,122,124,126が抽出されている。
以上のように、変形例3によれば、記入欄が外枠を有していない場合であっても、その記入欄に対応する記入枠が抽出され、その記入枠の座標情報を含む定義情報が作成される。
元々の記入欄115には、線分F1F10,F3F12が記載されていないが、例えば、点F2,F3,F5,F6を頂点とする仮想の矩形部分に氏名が記入されることが想定されている。住所や電話番号についても同様である。その仮想の矩形部分は、図18に示されている記入枠118に相当する。それ故、記入枠118に対して文字認識処理が適用されることで、氏名が記入されることが想定されている部分から、氏名を表す文字列が認識されることになる。
(変形例4)
変形例4について説明する。変形例4では、外枠を有していない記入欄を対象にして記入枠が抽出される。図19には、変形例4に係る記入欄の一例が示されている。記入欄128は、X方向に平行な外枠とY方向に平行な外枠の両方を有していない表(開放表)である。なお、点G1等の各点を表す黒丸は、説明の便宜上、図示されているが、実際の記入欄128には、黒丸は形成されていない。
記入欄128に対して抽出部22による抽出処理が適用された場合、線分G2G4,G5G7,G1G8が抽出される。しかし、これらの線分によっては矩形部分は構成されないため、矩形部分としての記入枠は抽出されない。
記入枠を抽出するために、テンプレート表示画面上で、ユーザが、外枠を構成する4つの点を指定すると、画像編集部26は、その4つの点を頂点とする矩形をテンプレート画像に追加する。例えば、図20に示すように、ユーザが、矩形を構成する点H1,H2,H3,H4を指定すると、画像編集部26は、それらの点を頂点とする矩形130をテンプレート画像に追加する。この矩形130は、X方向に平行な線分H1H2,H3H4と、Y方向に平行な線分H1H3,H2H4とによって構成されている。図20に示す例では、線分H1H2は、記入欄128を構成する線分の端点である点G1上を通るように形成されており、線分H3H4は、記入欄128を構成する線分の端点である点G8上を通るように形成されており、線分H1H3は、記入欄128を構成する線分の端点である点G2、G5上を通るように形成されており、線分H2H4は、記入欄128を構成する線分の端点である点G4,G7上を通るように形成されている。このようにして、元々の記入欄128の外枠を形成する矩形130がテンプレート画像に追加されている。
矩形130が追加されたテンプレート画像に対して、再抽出部28による抽出処理が適用された場合、線分H1H2,G2G4,G5G7,H3H4,H1H3,G1G8,H2H4が抽出され、これらによって構成される矩形部分が記入枠として抽出される。例えば、図18に示されている記入枠と同じ記入枠が抽出される。
以上のように、変形例4によれば、記入欄が外枠を有していない場合であっても、その記入欄に対応する記入枠が抽出され、その記入枠の座標情報を含む定義情報が作成される。
元々の記入欄128には、矩形130を構成する線分が記載されていないが、例えば、点G1,H2,G3,G4を頂点とする仮想の矩形部分に氏名が記入されることが想定されている。住所や電話番号についても同様である。その仮想の矩形部分は、図18に示されている記入枠118に相当する。それ故、記入枠118に対して文字認識処理を適用することで、氏名が記入されることが想定されている部分から、氏名を表す文字列が認識されることになる。
また、変形例4において、画像編集部26は、ユーザによって指定された4点によって矩形が形成されるように、各点の位置を補正してもよい。図21及び図22を参照して、この補正処理について説明する。図21に示すように、ユーザが、元々の記入欄128が表されているテンプレート画像に対して、点K1、K2,K3,K4を指定したものとする。画像編集部26は、点K1,K2,K3、K4を頂点とする図形132をテンプレート画像に追加する。図形132は、矩形ではなく台形である。つまり、点K1,K2,K3との関係で、点K2が矩形の頂点の位置に指定されていないため、図形132は矩形に該当していない。この場合、画像編集部26は、線分K1K2と線分K2K4とが直交するように、点K2の位置を補正する。つまり、画像編集部26は、線分が他の線分と直交するように、当該線分の傾きを補正する。図22には、補正後の図形134が示されている。点K5は、補正後の点K2の位置である。補正によって、線分K1K5と線分K5K4とが直交し、これにより、矩形状の図形134が形成される。矩形状の図形134が形成された後は、上記の変形例4に係る処理と同様に、再抽出部28によって、記入枠が抽出される。なお、図22に示す例では、点K2の位置が補正されているが、他の点の位置が補正されることで、矩形状の図形がテンプレート画像に追加されてもよい。
画像編集部26は、各点の位置の補正量(複数の点の位置を補正する場合には、その補正量の合計)が最小となるように、各点の位置を補正してもよいし、補正対象となる点の数が最小となるように、各点の位置を補正してもよい。図21及び図22に示す例では、画像編集部26は、各点の位置の補正量が最小であり、かつ、補正対象となる点の数が最小となるように、点K2の位置を補正している。
また、上記の補正量が閾値以上となる場合、アラームが通知されてもよい。例えば、表示制御部24は、補正量が閾値以上となる旨を示すメッセージをUI部16の表示部に表示させる。もちろん、アラーム音が発せられてもよい。補正量が閾値以上となる場合、画像編集部26は、画像の編集(矩形の形成)を中止してもよい。
なお、画像編集部26は、ユーザによって描画された線分が、X方向又はY方向に平行となるように線分の位置を補正してもよい。例えば、ユーザによって2点が指定された場合において、その2点を結ぶ線分が、X方向又はY方向に平行ではない場合、画像編集部26は、その線分がX方向又はY方向に平行となるように線分の位置を補正する。例えば、画像編集部26は、ユーザによって指定された2点の中の1点を固定し、他の1点の位置を補正することで、X方向又はY方向に平行な線分を形成してもよいし、当該2点の位置を補正することで、X方向又はY方向に平行な線分を形成してもよい。
(変形例5)
変形例5について説明する。変形例5では、画像編集部26は、ユーザによって指定された4つの点を頂点とする矩形を形成し、更に、その矩形の大きさを調整することで、元々の記入欄を構成する線分に接する矩形を形成し、その矩形をテンプレート画像に追加する。再抽出部28は、その矩形が追加されたテンプレート画像に対して抽出処理を適用することで、矩形部分としての記入枠を抽出する。以下、変形例5について詳しく説明する。
例えば、図19に示すように、元々のテンプレート画像に、外枠を有していない記入欄128が表されているものとする。この記入欄128に対して、ユーザによって4つの点が指定されると、変形例4と同様に、画像編集部26は、4つの点を頂点とする矩形を形成する。図23には、その矩形の一例が示されている。矩形136が、ユーザによって指定された4つの点を頂点とする矩形である。この矩形136は、図20に示されている矩形130(記入欄128の外枠に相当する図形)よりも内側に形成されている。つまり、矩形136は、記入欄128において文字が記入されると想定される領域よりも狭い範囲を囲む図形である。この場合、画像編集部26は、矩形136を拡大することで、記入欄128の外枠に相当する図形を形成する。図23に示されている矩形138は、矩形136が拡大された後の図形である。矩形138は、元々の記入欄128を構成する線分の端点である点G1,G2,G4,G5,G7,G8上を通るように形成されている。つまり、矩形138は、元々の記入欄128を構成する線分に接する矩形であるといえる。このようにして、元々の記入欄128の外枠を形成する矩形138がテンプレート画像に追加される。矩形138が追加されたテンプレート画像に対して、再抽出部28による抽出処理が適用され、これによって、矩形部分としての記入枠が抽出される。
また、図24には、ユーザによって指定された4つの点を頂点とする別の矩形140が示されている。この矩形140は、元々の記入欄128の外枠に相当する図形(例えば図2中の矩形130)よりも外側に形成されている。つまり、矩形140は、記入欄128において文字が記入されると想定される領域よりも広い範囲を囲む図形である。矩形140が追加されたテンプレート画像に対して再抽出部28による抽出処理が適用された場合、元々の記入欄128に対応する記入枠は抽出されず、新たに追加された矩形140が抽出されるだけである。つまり、矩形140は、元々の記入欄128を構成する線分に接していないため、矩形140は、記入欄128に対応する記入枠の抽出に寄与しない。この場合、画像編集部26は、矩形140を縮小することで、記入欄128の外枠に相当する図形を形成する。図24に示されている矩形138は、矩形140が縮小された後の図形である。その矩形138が追加されたテンプレート画像に対して、再抽出部28による抽出処理が適用され、これによって、矩形部分としての記入枠が抽出される。
以上のように、変形例5によれば、ユーザの指示によって描画された矩形の大きさが自動的に調整されて、記入欄に対応する記入枠が抽出される。
なお、記入欄の外枠に相当しなくても、記入欄を構成する線分に接する矩形が形成されてもよい。記入欄を構成する線分に接する矩形の概念の範疇には、その線分と交差する矩形も含まれる。例えば、図23に示されている矩形136は、記入欄を構成する線分G2G4,G5G7,G1G8に交差する図形である。この矩形136が追加されたテンプレート画像に対して再抽出部28による抽出処理が適用された場合、矩形136を構成する線分と、矩形136の内側に存在する線分(元々の記入欄128を構成する線分)が抽出される。それらの線分によって6つの矩形部分が構成されるため、再抽出部28は、それら6つの矩形部分を記入枠として抽出する。具体的には、図18に示されている記入枠116,118,120,122,124,126よりも小さい6つの記入枠が抽出される。このように、矩形136がテンプレート画像に追加された場合には、記入欄に対応する記入枠が抽出される。その抽出後、ユーザは、記入枠の座標情報を編集することで、記入枠の大きさを調整してもよい。
記入欄を構成する線分に接する線分がユーザによって追加された場合も、上記と同様のことがいえる。例えば図7及び図8に示すように、ユーザによって追加された線分74は、元々の記入欄36,38を構成する線分A1A5,A2A6(図3参照)に接する線分であるといえる。
また、ユーザの指示に従って追加された線分や矩形が、元々の記入欄を構成する線分と全く接しない場合、エラーが通知されてもよい。例えば、表示制御部24は、そのエラーを示す情報を表示部に表示させる。こうすることで、記入枠の抽出に寄与する線分や矩形の追加をユーザに促すことができる。
また、記入枠の抽出に寄与しない図形がユーザによって追加された場合、表示制御部24は、テンプレート表示画面48上にて、その追加された図形を、他の図形と識別可能にして表示してもよい。例えば、表示制御部24は、追加された図形をハイライト表示によってテンプレート表示画面48に表示させてもよい。それとは逆に、表示制御部24は、テンプレート画像をハイライト表示によってテンプレート表示画面48に表示させてもよい。
(変形例6)
変形例6について説明する。変形例6では、画像編集部26は、ユーザの指示に従って、テンプレート画像上に非抽出領域を形成する。再抽出部28は、テンプレート画像内の非抽出領域以外の領域から記入枠としての矩形部分を抽出する。非抽出領域は、例えば、その部分の画像を白色で塗り潰すことによって形成されてもよいし、その部分の画像が削除されることで形成されてもよい。以下、変形例6について詳しく説明する。
図25には、変形例6に係る記入欄142が示されている。この記入欄142は、Y方向に平行な二重線部分144を有する。この記入欄142に対して抽出部22による抽出処理が適用されると、その二重線部分144を構成する線分によって囲まれた部分が記入枠として抽出される。図26には、その抽出結果146が示されている。二重線部分144に対応する記入枠148が抽出されている。
上記の二重線部分144は、通常、文字が記入される領域ではなく、互いに隣り合う記入欄を区分けするために用いられる。そのため、二重線部分144を残したまま抽出処理を実行すると、記入枠ではない部分も記入枠として抽出されることになる。
そこで、変形例6では、線分が抽出されない非抽出領域がテンプレート画像に形成される。例えば、図27に示すように、ユーザが、テンプレート表示画面において、不要な矩形部分を構成する4つの頂点L1,L2,L3,L4を指定すると、画像編集部26は、頂点L1,L2,L3、L4によって構成される非抽出領域をテンプレート画像に形成する。例えば、画像編集部26は、その非抽出領域を白色で塗り潰す。図28には、非抽出領域が白色で塗り潰された記入欄150が示されている。この記入欄150に対して再抽出部28による抽出処理が適用された場合、白色の非抽出領域以外の領域から線分が抽出され、更に、記入枠が抽出される。つまり、非抽出領域は白色に塗り潰されているため、その部分からは線分が抽出されない。これにより、二重線部分144に対応する記入枠は抽出されず、それ以外の記入枠が抽出される。
変形例6によれば、記入枠ではない部分が記入枠として抽出されることが防止される。
なお、非抽出領域として、白色の線分がテンプレート画像に追加されてもよい。例えば図29に示すように、記入欄142の二重線部分144の内側に、白色の線分152(便宜的に破線で示されている)がY方向に平行に追加されている。その線分152は、二重線部分144の内側において、X方向に平行な各線分と交差するように、つまり、各線を分断するように、テンプレート画像に追加されている。このような線分152がテンプレート画像に追加された場合も、二重線部分144においては矩形部分としての記入枠が抽出されないので、記入枠ではない部分が記入枠として抽出されることが防止される。
(変形例7)
変形例7について説明する。図30には、変形例7に係る記入欄154が示されている。記入欄154は、表形式の記入欄である。また、記入欄154は、ハッチングが形成されている領域156を有する。線分の抽出アルゴリズムとして、上述したヒストグラム法が用いられる場合、領域156内のハッチングの程度によっては、領域156内から、X方向に平行な線分やY方向に平行な線分が抽出される場合がある。そのような線分は、不要な線分である。そこで、変形例6と同様に、画像編集部26は、ユーザの指示に従って、不要な線分が抽出される領域に対して非抽出領域を形成する。例えば、画像編集部26は、その非抽出領域を白色で塗り潰す。
図31には、非抽出領域が白色で塗り潰された記入欄154が示されている。ハッチングが形成されている領域156が、ユーザによって非抽出領域として指定された場合、画像編集部26は、矢印158で示すように、その領域156を白色で塗り潰す。こうすることで、領域156からは線分が抽出されないので、その線分によって構成される矩形部分が記入枠として抽出されることが防止される。
なお、ハッチング以外にも、記入欄以外の図形や画像や文字が、記入欄に形成されている場合、その図形や画像や文字が形成された部分から、X方向に平行な線分やY方向に平行な線分が抽出される場合がある。この場合、ハッチングの対処方法と同様に、抽出されるべきではない線分が抽出される部分を白色で塗り潰すことで、抽出されるべきではない線分が抽出されることが防止される。
(変形例8)
変形例8について説明する。図32には、変形例8に係る用紙(テンプレート)が示されている。この用紙160(テンプレート)には、氏名が記入されるべき記入欄162が形成されている(例えば印刷されている)。また、用紙160に折り目164,166が形成されている。折り目164,166が形成された状態で、用紙160がスキャナ12によってスキャンされた場合、そのスキャンによって生成されたテンプレート画像には、折り目164,166を表す部分が表示される。
図33には、用紙160を表すテンプレート画像168が示されている。テンプレート画像168には、記入欄162を表す記入欄画像170が表されていると共に、折り目164,166を表す線分172,174が表示されている。線分172は、記入欄画像170をX方向に横切っている。
テンプレート画像168に対して抽出部22による抽出処理が適用された場合、線分172,174も抽出され、その線分172,174によって構成される矩形部分が記入枠として抽出される場合がある。例えば、記入欄162は1つの記入欄であるが、線分172が記入欄画像170をX方向に横切っているので、記入欄画像170から2つの記入枠が抽出されることになる。図34には、その抽出結果が示されている。記入欄画像170が線分172によって分断されているため、記入欄画像170から記入枠176,178が抽出されている。
上記のように、用紙に折り目が形成されている場合、記入枠ではない部分が記入枠として抽出される場合がある。その抽出を防止するために、変形例8においても、変形例6,7と同様に、画像編集部26は、ユーザの指示に従って、折り目に対応する線分172,174に対して非抽出領域を形成する。つまり、画像編集部26は、線分172,174を白色で塗り潰す。図35には、線分172が白色に塗り潰された状態が示されている。例えば、矢印180で示すように、線分172において、記入欄画像170内に描画されている部分がユーザによって指定され、その部分が、白色に塗り潰されている。こうすることで、その白色に塗り潰された部分からは線分が抽出されないので、記入欄画像170は、線分172によって分断されず、記入欄画像170から1つの矩形部分が記入枠として抽出される。なお、線分172,174の全部が白色に塗り潰されてもよい。
(変形例9)
変形例9について説明する。図36には、変形例9に係る記入欄186が示されている。この記入欄186は、全体として実線からなる矩形部分を有し、更に、その矩形部分の内部にX方向に平行な破線を有する。上記の実施形態と同様に、この記入欄186に対して抽出部22による抽出処理が適用された場合、破線は枠線として抽出されないので、その破線で区切られた2つの記入欄に対応する2つの記入枠は抽出されずに、全体として1つの矩形部分が記入枠として抽出される。
2つの記入枠を抽出するために、上記の実施形態では、破線の両端部がユーザによって指定され、その両端部を結ぶ実線がテンプレート画像に追加される。変形例9では、記入欄186の外側に2つの点がユーザによって指定されてもよい。図36に示す例では、破線をその前後方向に延長したそれぞれの位置に、点188,190がユーザによって指定されている。画像編集部26は、図37に示すように、点188,190を結ぶ線分192をテンプレート画像に追加する。線分192は、破線上に描画される。点188,190は記入欄186の外側の位置に指定されているため、線分192は、記入欄186を構成する線分に交差する。その線分192が追加されたテンプレート画像に対して、再抽出部28による抽出処理が適用されると、記入欄186を構成する線分に交差する線分192によって記入欄186はY方向に分断され、その結果、Y方向に並ぶ2つの矩形部分がそれぞれ記入枠として抽出される。
以上のように、記入欄を構成する線分に交差する線分がテンプレート画像に追加された場合も、上述した実施形態と同様に、抽出されるべき記入枠が抽出される。
なお、変形例9では、テンプレート画像に線分が追加されているが、記入欄を構成する線分に交差する矩形がテンプレート画像に追加されてもよい。
(変形例10)
変形例10について説明する。変形例10では、表示制御部24は、抽出部22による抽出結果を枠表示画面に表示させると共に、テンプレート画像を背景画像として枠表示画面に表示させる。以下、図38を参照して、変形例10について詳しく説明する。
図38には、変形例10に係る枠表示画面が示されている。例えば、図2に示されている帳票34を対照として、抽出部22による抽出処理が実行され、その抽出結果が枠表示画面56に表示されている。図6を参照して説明したように、帳票34における実線部分によって構成される各記入枠を表す記入枠画像62,64,66が、枠表示画面56に表示されている。
表示制御部24は、抽出部22による抽出結果と共に、テンプレート画像を背景画像として枠表示画面56に表示させる。具体的には、表示制御部24は、図5に示されている記入欄オブジェクト52,54を、記入枠画像62,64,66の背景画像として枠表示画面56に表示させる。図38に示す例では、記入欄オブジェクト52中の破線画像194が、記入枠画像62が表す記入枠の内側に表示されている。同様に、記入欄オブジェクト54中の破線画像196が、記入枠画像64が表す記入枠の内側に表示され、記入欄オブジェクト54中の破線画像198が、記入枠画像66が表す記入枠の内側に表示されている。
以上のように、変形例10によれば、記入枠の抽出結果と共にテンプレート画像が表示されるので、ユーザは、記入枠として抽出されていない部分を目視で確認することができる。
表示制御部24は、テンプレート画像内の少なくとも一部の画像を、背景画像として枠表示画面56に表示させてもよい。例えば、表示制御部24は、記入枠として抽出されなかった部分の画像を、背景画像として枠表示画面56に表示させる。帳票34を構成する破線は枠線として認識されず、その破線は記入枠として検出されていないため、図38に示す例では、各破線を表す破線画像194,196,198が背景画像として表示される。このように、記入枠として抽出されなかった部分の画像を表示することで、ユーザは、その部分を目視で確認することができる。
また、表示制御部24は、記入枠として抽出されなかった部分の画像と、記入枠として抽出された部分の画像とを区別して(識別可能な状態で)枠表示画面56に表示させてもよい。例えば、表示制御部24は、記入枠として抽出されなかった部分の画像をハイライト表示によって枠表示画面56に表示させ、記入枠として抽出された部分の画像を非ハイライト表示によって枠表示画面56に表示させる。図38に示す例では、破線画像194,196,198がハイライト表示される。こうすることで、上記の区別を行わない場合と比べて、ユーザにとって、記入枠として抽出されなかった部分の認識が容易となる。もちろん、表示制御部24は、記入枠として抽出された部分の画像をハイライト表示によって枠表示画面56に表示させ、記入枠として抽出されなかった部分の画像を非ハイライト表示によって枠表示画面56に表示させてもよい。
なお、上記の実施形態及び変形例では、文字が記入されるべき記入欄に対応する記入枠が抽出されるが、別の例として、画像や図形が形成されるべき欄に対応する枠や、指紋が押捺されるべき欄に対応する枠や、押印されるべき欄(印影が形成されるべき欄)に対応する枠等が、抽出されてもよい。つまり、文字以外にも、画像、図形、指紋、印影等も、記入欄に記入されるべき情報の一例に該当してもよい。例えば、画像認識処理や図形認識処理によって、欄に形成された画像や図形が認識され、指紋認識処理によって、欄に形成された指紋が認識される。また、画像認識処理や文字認識処理によって、欄に形成された印影が認識される。これらの認識処理のために、上記の枠の座標情報を含む定義情報が作成される。
上記の情報処理装置10は、一例としてハードウェアとソフトウェアとの協働により実現される。具体的には、情報処理装置10は、図示しないCPU等の1又は複数のプロセッサを備えている。当該1又は複数のプロセッサが、図示しない記憶装置に記憶されたプログラムを読み出して実行することにより、情報処理装置10の各部の機能が実現される。上記プログラムは、CDやDVD等の記録媒体を経由して、又は、ネットワーク等の通信経路を経由して、記憶装置に記憶される。別の例として、情報処理装置10の各部は、例えばプロセッサや電子回路やASIC(Application Specific Integrated Circuit)等のハードウェア資源により実現されてもよい。その実現においてメモリ等のデバイスが利用されてもよい。更に別の例として、情報処理装置10の各部は、DSP(Digital Signal Processor)やFPGA(Field Programmable Gate Array)等によって実現されてもよい。