JP2019068391A - 情報処理装置及びその制御方法、並びにプログラム - Google Patents
情報処理装置及びその制御方法、並びにプログラム Download PDFInfo
- Publication number
- JP2019068391A JP2019068391A JP2017195376A JP2017195376A JP2019068391A JP 2019068391 A JP2019068391 A JP 2019068391A JP 2017195376 A JP2017195376 A JP 2017195376A JP 2017195376 A JP2017195376 A JP 2017195376A JP 2019068391 A JP2019068391 A JP 2019068391A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- information
- laid out
- page
- recognition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】複数枚で一組の帳票をスキャンした画像データを用いたフォーム認識処理において、Nin1(1ページ内に複数ページをレイアウト)された画像データが入力された場合、予めNin1用の認識用フォームを作成しておかないと、認識率の高いフォーム認識が実行できなかった。【解決手段】情報処理装置は、帳票のフォーム情報を保持し、帳票がレイアウトされた画像データを取得し、前記画像データがNin1(N≧2)のページレイアウトであるか否かを判定し、Nin1(N≧2)のページレイアウトであると判定された場合、当該画像データにレイアウトされた帳票に対応するフォームを含むフォーム情報を保持しているフォーム情報から検索し、検出されたフォーム情報を用いて、前記画像データに対応してレイアウトされたフォームを生成し、前記生成したフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出する。【選択図】 図7
Description
本発明は、情報処理装置及びその制御方法、並びにプログラムに関する
従来、帳票OCR(Optical Character Recognition)システムが存在する。帳票OCRシステムでは、ある定型帳票を認識するためのフォームをシステムに登録しておき、定型帳票をスキャンした画像データに対して、フォームを用いて帳票認識を行い、抽出された数値や文字列を文書の属性情報もしくはデータベースに入力する。
特許文献1には、画像データに対し、画像データとはサイズが異なるフォームを使用する場合に、フォームを画像サイズに合わせて拡縮して重ね合わせるフォームオーバーレイの技術が開示されている。また、特許文献1には、1ページに複数ページをレイアウトするNin1レイアウトの画像データに対してフォームをオーバーレイする場合に、Nin1領域に拡縮して各ページ領域に同じフォームをオーバーレイする技術も開示されている。
帳票OCRシステムにおいて、複数枚で一組の帳票用紙を使用している場合に、入力画像にNin1の印刷設定が行われているケースがある。例えば、2枚一組の帳票の場合において、入力画像が2in1で1ページとなるケースである。このようなケースにおいて帳票認識を実行する場合、Nin1用に作成された認識用フォームがシステムに登録されていないと、Nin1の入力画像を認識できないという課題がある。
特許文献1の方法では、Nin1の各ページ領域に対して複数枚の帳票データを拡縮してレイアウトしたフォームを作成することはできなかった。
上記課題を解決するために本願発明は以下の構成を有する。すなわち、情報処理装置であって、帳票のフォーム情報を保持する保持手段と、帳票がレイアウトされた画像データを取得する取得手段と、前記画像データがNin1(N≧2)のページレイアウトであるか否かを判定する判定手段と、前記判定手段によりNin1(N≧2)のページレイアウトであると判定された場合、当該画像データにレイアウトされた帳票に対応するフォームを含むフォーム情報を、前記保持手段が保持するフォーム情報から検索する検索手段と、前記検索手段にて検出されたフォーム情報を用いて、前記画像データに対応してレイアウトされたフォームを生成する生成手段と、前記生成手段にて生成したフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出する抽出手段と、を有する。
本願発明により、Nin1の画像データが入力された際に、Nin1用フォームデータを予め登録しておかなくても、複数枚で一組のフォームデータをNin1の認識用フォームに変換してフォーム認識処理を実行することが可能となる。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
<第一の実施形態>
[システム構成]
図1は、本実施形態に係るシステムの全体構成の一例を示す図である。LAN(Local Area Network)100上には、MFP(Multi−Function Peripheral)101、及びファイルサーバ102が互いに通信可能に接続されている。MFP101は、画像処理装置の一例である。ファイルサーバ102は、外部サーバの一例である。PC103は、情報処理装置の一例である。ここではMFP101、ファイルサーバ102、及びPC103を含む画像処理システムを例に挙げて説明するが、画像処理システムは、例えば、MFP101のみからなる構成であってもよい。また、各装置を1台ずつ示しているが、これに限定するものでは無く、複数台から構成されるものであってもよい。
[システム構成]
図1は、本実施形態に係るシステムの全体構成の一例を示す図である。LAN(Local Area Network)100上には、MFP(Multi−Function Peripheral)101、及びファイルサーバ102が互いに通信可能に接続されている。MFP101は、画像処理装置の一例である。ファイルサーバ102は、外部サーバの一例である。PC103は、情報処理装置の一例である。ここではMFP101、ファイルサーバ102、及びPC103を含む画像処理システムを例に挙げて説明するが、画像処理システムは、例えば、MFP101のみからなる構成であってもよい。また、各装置を1台ずつ示しているが、これに限定するものでは無く、複数台から構成されるものであってもよい。
[ハードウェア構成]
図2は、MFP101のハードウェア構成の一例を示す図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、不揮発性の記憶領域であるROM212に記憶された制御プログラムを読み出して、読取/印刷/通信などの各種制御を行う。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、MFP101は1つのCPU211が1つのメモリ(RAM213またはHDD214)を用いて処理を実行するものとするが、他の態様であっても構わない。例えば、複数のCPUや複数のRAMまたはHDDを協働させて処理を実行するように構成されてもよい。
図2は、MFP101のハードウェア構成の一例を示す図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、不揮発性の記憶領域であるROM212に記憶された制御プログラムを読み出して、読取/印刷/通信などの各種制御を行う。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、MFP101は1つのCPU211が1つのメモリ(RAM213またはHDD214)を用いて処理を実行するものとするが、他の態様であっても構わない。例えば、複数のCPUや複数のRAMまたはHDDを協働させて処理を実行するように構成されてもよい。
HDD214は、不揮発性の記憶領域であり、画像データや各種プログラムを記憶する。操作部I/F215は、操作部220と制御部210を制御可能に接続する。操作部220には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられており、ユーザーによる操作/入力/指示を受け付ける受付部のとしての役割を担う。プリンタI/F216は、プリンタ221と制御部210を制御可能に接続する。プリンタ221で印刷すべき画像データは、プリンタI/F216を介して制御部210から転送され、プリンタ221により紙等の記録媒体上に印刷される。
スキャナI/F217は、スキャナ222と制御部210を制御可能に接続する。スキャナ222は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部210に入力する。MFP101は、スキャナ222で生成された画像データを、ネットワークI/F219を用いてLAN100上のPC103へファイル送信またはメール送信することができる。また、MFP101は、PC側からの要求に基づく、スキャン(以後プルスキャン)の実行も可能とする。プルスキャンでは、MFP101は、PC103からのスキャン画像取得命令をLAN100経由でネットワークI/F219を介して受信する。そして、MFP101は、スキャン画像取得命令に基づき、スキャナ222で画像を読み取り、画像データを生成して、PC103へ生成した画像データを返却する。
モデムI/F218は、モデム223と制御部210を接続する。モデム223は、ファクシミリ装置(不図示)との間における画像データのファクシミリ通信を実行する。ネットワークI/F219は、制御部210(MFP101)をLAN100に通信可能に接続する。MFP101は、ネットワークI/F219を用いてLAN100上の外部装置(ファイルサーバ102など)に画像データや情報を送信したり、各種情報を受信したりする。
図3は、ファイルサーバ102のハードウェア構成の例を示す図である。CPU311を含む制御部310は、ファイルサーバ102全体の動作を制御する。CPU311は、不揮発性の記憶領域であるROM312に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、不揮発性の記憶領域であり、画像データや各種プログラムを記憶する。ネットワークI/F315は、制御部310(ファイルサーバ102)をLAN100に接続する。ファイルサーバ102は、ネットワークI/F315を用いてLAN100上の他の装置との間で各種情報を送受信する。なお、ファイルサーバ102は、一般的なコンピュータ(情報処理装置)の構成を備えていてよく、上記の構成に限定するものではない。
図4は、PC103のハードウェア構成の例を示す図である。CPU411を含む制御部410は、PC103全体の動作を制御する。CPU411は、不揮発性の記憶領域であるROM412に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM413は、CPU411の主メモリ、ワークエリアなどの一時記憶領域として用いられる。HDD414は、画像データや各種プログラムを記憶する。キーボード415は、指示入力手段である入力装置であり、本実施形態に係る文書処理アプリケーションに対する制御コマンドの命令やテキスト入力などを入力指示する。
ディスプレイ416は、表示手段である出力装置であり、キーボード415から入力したコマンドや文書処理アプリケーションの状態などを表示したりする。ネットワークI/F417は、制御部410(PC103)をLAN100に通信可能に接続する。PC103は、ネットワークI/F417を用いてLAN100上の他の装置と各種情報を送受信する。なお、PC103は、一般的なコンピュータの構成を備えていてよく、上記の構成に限定するものではない。また、PC103は、タブレット端末などのモバイル機器であってもよい。
[ソフトウェア構成]
図5は、PC103のソフトウェア構成の一例を示す図である。文書処理アプリケーション510は、PC103内で動作し、実行される場合にRAM413にロードされ、CPU411により実行されるプログラムモジュールである。文書処理アプリケーション510は、画像取得部511、画像処理部512、UI部513、フォーム認識部514、フォーム検索部515、フォーム管理部516、及びプロパティ情報登録部517を含んで構成される。
図5は、PC103のソフトウェア構成の一例を示す図である。文書処理アプリケーション510は、PC103内で動作し、実行される場合にRAM413にロードされ、CPU411により実行されるプログラムモジュールである。文書処理アプリケーション510は、画像取得部511、画像処理部512、UI部513、フォーム認識部514、フォーム検索部515、フォーム管理部516、及びプロパティ情報登録部517を含んで構成される。
画像取得部511は、画像データの取得要求を行う。この要求は、後述するスキャナードライバー520を経由してMFP101へ送信される。PC103は、この要求の応答として、MFP101のスキャナ222でスキャンされた画像データの取得が可能となる。画像処理部512は、入力された画像データに対する各種処理を実行する。UI部513は、後述するユーザーインターフェースの構築や、ユーザーからの各種入力操作を受け付けて、対応する処理の実行指示を行う。フォーム認識部514は、認識用フォームの作成、及び、作成した認識用フォームを用いて、画像データの特定の箇所をOCR処理することで文字列データを抽出するフォーム認識処理を実行する。
フォーム検索部515は、画像データに対応するフォームデータを、フォーム管理部516に問い合わせて検索する処理を実行する。フォーム管理部516は、画像データに対応するフォームデータのフォーム情報を管理する。フォーム情報は、PC103のHDD414に保管する方法や、ファイルサーバ102のHDD314に保管する方法などがあり、いずれかまたは複数の管理方法を組み合わせることで管理可能としてよい。プロパティ情報登録部517は、フォーム認識部514により抽出された文字列データをプロパティ情報として登録する処理を実行する。プロパティ情報の登録方法は、ファイルサーバ102で管理されるデータベースのテーブルに直接登録する方法や、データベースに登録可能なデータ形式(例XML:eXtendable Markup Language)で出力する方法などがある。これらのいずれかまたは複数の方法を組み合わせることで、プロパティ情報の登録方法を実現可能としてよい。
スキャナードライバー520は、PC103内で動作し、実行される場合にRAM413にロードされ、CPU411により実行されるプログラムモジュールである。スキャナードライバー520は、PC103からMFP101のスキャナ222を制御する命令の送受信、及び、PC103へ送信されたスキャン画像の受信を行う。
[ユーザーインターフェース]
図6は、本実施形態に係る文書処理アプリケーション510のユーザーインターフェースの構成例を示す。メインウインドウ601は、文書処理アプリケーション510の起動に応じてディスプレイ416に表示され、各種機能を実行するための機能ボタンやコントロールをレイアウトする。画像読み込みボタン602は、文書処理アプリケーション510に画像データの読み込みを指示するための機能ボタンである。前のページボタン603、次のページボタン604は、読み込んだ画像データが複数ページ存在する際に、前のページもしくは次のページに切り替えるための機能ボタンである。プレビュー画像605は、読み込んだ画像データの現在表示しているページのプレビュー画像を示す。
図6は、本実施形態に係る文書処理アプリケーション510のユーザーインターフェースの構成例を示す。メインウインドウ601は、文書処理アプリケーション510の起動に応じてディスプレイ416に表示され、各種機能を実行するための機能ボタンやコントロールをレイアウトする。画像読み込みボタン602は、文書処理アプリケーション510に画像データの読み込みを指示するための機能ボタンである。前のページボタン603、次のページボタン604は、読み込んだ画像データが複数ページ存在する際に、前のページもしくは次のページに切り替えるための機能ボタンである。プレビュー画像605は、読み込んだ画像データの現在表示しているページのプレビュー画像を示す。
プロパティ情報リスト606は、画像データから抽出したプロパティ情報をリスト表示するコントロールである。プロパティ情報は、属性とその値とが対応づけて表示される。プロパティ情報リスト606は、画像データから抽出した値を対応する属性に入力して表示する。画像データからプロパティ情報を自動で抽出するための処理を、図7のフローチャートを用いて後述する。なお、プロパティ情報リスト606において、ユーザーが値を編集可能とし、抽出した値の修正や、抽出できなかった属性の値を補完することが可能である。
接続先データベースコントロール607は、画像データから抽出したプロパティ情報を格納する先のデータベースの接続先を表示するコントロールである。参照ボタン608を押下して、ネットワーク上の外部データベースや、Excelなどのファイルデータベースと接続するためのデータソースネームを指定することで、接続先データベースを設定することが可能である。なお、接続先データベースが指定されていないケースでも、画像データから抽出したプロパティ情報をデータファイル(例えばXML形式)で出力することが可能である。
データエントリーボタン609は、プロパティ情報リスト606で示されるプロパティ情報の値を、接続先データベースコントロール607で示される接続先データベースに登録する処理を指示するためのボタンである。なお、接続先データベースコントロール607が指定されていない場合やユーザーの選択により、プロパティの値をファイル形式で出力することも可能とする。プロパティ領域610は、プロパティ情報の値が抽出される領域を示す。プロパティ領域610は、後述する図7のフローチャートの処理により、自動的に抽出される。
[処理フロー]
図7は、本実施形態に係る、文書処理アプリケーション510が、Nin1レイアウトされた画像データからプロパティ情報を抽出して、データエントリーを実行する処理を示すフローチャートである。なお、Nは、1つのページ(画像)に何ページをレイアウトするのかの数を示し、特別に説明しない限り、以下、Nin1と記載する場合はN≧2のページレイアウトを示すものとする。各処理ステップに関して説明する。各処理ステップで文書処理アプリケーション510が扱う画像データやフォーム情報は、別段の説明がない限り、RAM413に格納されて利用されるものとする。
図7は、本実施形態に係る、文書処理アプリケーション510が、Nin1レイアウトされた画像データからプロパティ情報を抽出して、データエントリーを実行する処理を示すフローチャートである。なお、Nは、1つのページ(画像)に何ページをレイアウトするのかの数を示し、特別に説明しない限り、以下、Nin1と記載する場合はN≧2のページレイアウトを示すものとする。各処理ステップに関して説明する。各処理ステップで文書処理アプリケーション510が扱う画像データやフォーム情報は、別段の説明がない限り、RAM413に格納されて利用されるものとする。
S701にて、文書処理アプリケーション510は、画像データを取得する。図6に示すユーザーインターフェース上で、画像読み込みボタン602が押下されたことを検知すると、UI部513は、画像取得部511へ画像データの取得指示を送信する。画像取得部511は、画像データの取得指示を受信すると、スキャナードライバー520を経由して、MFP101へ画像データのスキャン指示を送信する。
MFP101はスキャン指示を受信すると、スキャナI/F217を経由してスキャナ222で原稿データのスキャン処理を実行し、取得した画像データをスキャナードライバー520へ送信する。なお、この時点では、MFP101側では、読み取り対象となる帳票がMFP101に設置されており、また、読み取り設定は取得指示等にて指定されているものとする。スキャナードライバー520は、受信した画像データを画像取得部511へ送信する。画像取得部511は、受信した画像データのプレビュー表示をUI部513に指示する。UI部513は、受信した画像データをプレビュー画像605として表示する。画像データの取得は、前述したMFP101によるスキャン処理によるものだけでなく、予め作成された画像ファイル(例えば、TIFFファイルやBMPファイル)を読み込むことによって取得するものでもよい。
S702にて、画像処理部512は、S701で取得した画像データの傾き補正および天地方向を判定して回転(自動回転)させる。つまり、画像処理部512は、後述するフォーム認識処理の精度を向上させるために、読み込んだ画像を傾きが無く、正しい向きに補正する。傾き補正は、画像の外側多角形を検出して角度検出を行い、傾きを判定して補正する方法など、一般的に公知の技術を使用する方法で構わない。また、天地方向を判定して自動回転する処理も、画像を上下左右4方向からOCR処理を行い一番認識率が高い方向を正と判断して、正の方向に回転する処理など、一般的に公知の技術を使用する方法で構わない。
S703にて、画像処理部512は、画像データがNin1(N≧2)レイアウトされている画像か否かを判定する。Nin1(N≧2)レイアウトされている画像の判定方法は、例えば、S702で補正された画像データに対して、OCR処理を行い、画像の上端また下端に存在するページ番号を検出する。そして、検出されたページ番号の領域を含む垂直方向に存在するページ番号を探索し、1の画像内に何ページ分のレイアウトが行われているかを算出する方法を用いてよい。また、画像データに対して構造解析処理を行い、画像内を領域分離して余白部分を算出して、1の画像内に何ページ分のレイアウトが行われているかを算出する方法を用いてよい。いずれに方法においても、算出された1の画像内に何ページ分がレイアウトされているかの値がRAM413に記憶される。ここで、自動判定により検出された1画像当たりのレイアウト数をユーザーに確認するようにしてもよい。
また、Nin1レイアウトされている画像の判定方法として、前述したシステムによる自動判定ではなく、ユーザー入力によって判定する処理でもよい。例えば、S701のトリガーとなる画像読み込みボタン602が押下された際に、ユーザーが1つの画像内に何ページ分レイアウトされた画像かを入力可能にし、画像処理部512は、入力された値をRAM413に記憶する。ここで、ユーザーによって入力された値と、自動判定により得られた値との比較を行い、整合性の確認を行うようにしてもよい。画像処理部512は、RAM413に記憶した1つの画像内に何ページ分レイアウトされているかの値が2以上である場合は(S703にてYES)、Nin1された画像と判定し、S704へ進む。一方、Nin1レイアウトされていない(1つの画像内に1ページがレイアウトされている)場合は(S703にてNO)S706へ進む。
S704にて、フォーム検索部515は、フォーム管理部516へ問い合わせ、画像データを認識するためのフォーム情報を検索する。フォーム検索部515は、フォーム管理部516へフォーム情報リストの取得を指示し、図8で示すフォーム情報リストを取得する。
図8は、本実施形態に係るフォーム管理部516が管理するフォーム情報リストの一例を示す。フォーム情報リストは、管理ID801、フォームデータ802、及びページ数803を含んで構成され、これらが対応付けられている。管理ID801は、各フォームデータを一意に識別可能な識別情報(ID)を示す。管理ID801としては、例えば、1,2,3・・・などの値が設定される。フォームデータ802は、フォームデータの詳細を管理するフォーム定義情報へのリンク情報を示す。リンク情報は、フォーム定義情報を特定できる情報であればよく、図8の例では、フォーム定義情報を格納するファイル名(Form_00000001.xml,Form_00000002.xml,・・・)が登録されている。ページ数803は、一組のフォームを構成しているページ数を示す。例えば、ページ数の値が“2”であれば、2ページで一組のフォームということになる。フォーム検索部515は、取得したフォーム情報リストの管理ID801の先頭から順に、フォームデータ802で示されるフォーム定義情報にアクセスして、画像データに対応するフォームか否かを検索する。
図9は、本実施形態に係るフォーム定義情報の一例を示す。図9は、フォームデータ802のリンク情報”Form_0000001.xml”で示されるフォーム定義情報を示し、XML形式のファイルであるとする。“Form”901は、フォーム全体に関する情報を格納している。“Form”901には“PageNum”が存在し、一組のフォームを構成するページ数を示す値が格納されている。“Page”902は、1つのページに関する情報が格納されており、“PageNum”の数分を定義される。図9に示す例の場合、”Page”が2つ定義されることとなる。“Num”は、当該ページ情報が何ページ目の情報かを示す。“PageSize”903は、当該ページのページサイズの幅(Width)と高さ(Height)の値を示す。
“BlockInfo”904は、当該ページの構造解析を行って得られた領域情報を格納しており、存在する領域数分を定義される。ここでのページに対する構造解析とは、例えば、フォームにおいて値が入力される項目の位置や範囲(領域)を特定し、検出する処理を指す。構造解析の方法は、特に限定するものではなく、周知の方法を用いてよい。”Block”905は、構造解析を行って得られた領域の1つの領域情報を格納している。“Block”905は、ページ内の領域の数に応じて規定される。”Block”905に含まれる領域情報として、“BlockID”、“Coordinates_X”、“Coordinates_Y”、“Width”、及び“Height”がある。“BlockID”は、当該領域情報を一意に識別するための識別情報(ID)を示す。“Coordinates_X”と“Coordinates_Y”はそれぞれ、当該領域の左上座標を示す。“Width”と“Height”はそれぞれ、当該領域の幅と高さを示す。
“Propertys”906は、当該ページにおけるプロパティ情報の抽出に関する情報を格納しており、抽出するプロパティ情報の数分を定義される。“Property”907は、抽出する1つのプロパティ情報に関する情報を格納している。”Property”907に含まれるプロパティ情報として、“PropName”、“Type”、“Coordinates_X”、“Coordinates_Y”、“Width”、及び“Height”がある。“PropName”は、プロパティ名を示す。“Type”はプロパティの型を示し、型としては数値や文字列などが該当する。“Coordinates_X”と“Coordinates_Y”はそれぞれ、当該プロパティ情報を抽出する領域の左上座標を示す。“Width”と“Height”はそれぞれ、当該領域の幅と高さを示す。図9に示す例の場合、”BlockInfo”904内の2つ目の”Block”と“Properties”906内の1つ目の”Property”とが対応している。
本実施形態において、フォーム検索部515は、フォーム定義情報の1ページ目の“PageSize”の“Width”と“Hight”を取得し、画像データの幅と高さと、S703で判定したNin1の情報を元に、拡縮率を算出する。
図10Aは、フォーム定義情報で定義されている1ページ目のフォームのブロック領域の例を示す。ここで、ページの左上を原点(0,0)とし、横方向をX軸、縦方向をY軸とする。また、X軸は右方向を+とし、Y軸は下方向を+とする。“F−W”はフォーム定義情報“PageSize”の“Width”となり、“F−H”はフォーム定義情報“PageSize”の“Hight”となる。ブロック領域B1の“B−Cx”はフォーム定義情報“Block”の“Coordinates_X”となり、“B−Cy”はフォーム定義情報“Block”の“Coordinates_Y”となる。同様に、“B−W”はフォーム定義情報“Block”の“Width”となり、“B−H”はフォーム定義情報“Block”の“Height”となる。
図10Bは、画像データのサイズとNin1の情報を元に拡縮されたフォームの例を示す。図10Bでは、2in1に拡縮されたレイアウトの例を示している。“P−W”は画像データの幅、“P−H”は画像データの高さを示している。このケースでは、1ページ分の領域の幅に関しては、拡縮率をXとすると、“F−W”*Xとなり、その幅は“P−W”/2となる。例えば、フォームがA4縦、画像データがA4横に2in1とすると、フォームの幅が210mm、画像データの幅が297mmになるため、210*X=297で、拡縮率X≒0.707となる。
本実施形態において、フォーム検索部515は、S703にて求められる拡縮率Xに基づいて、フォーム定義情報のページやブロック情報から、拡縮後のページやブロック情報の値を算出する。図10Bの“F−Ws”、“F−Hs”、“B−Cxs”、“B−Cys”、“B−Ws”、及び“B−Hs”は、フォームのページサイズ(幅、高さ)と、ブロック領域B1の座標、幅、及び高さを、拡縮率Xに基づいて拡縮させた値を示す。このようにして、フォーム検索部515は、フォーム定義情報の1ページ目のフォームを、画像データのサイズとNin1に合わせて拡縮した情報を生成して、画像データの構造解析を行ったNin1の1ページ領域のブロック情報と一致するか照合を行う。本実施形態において、照合する画像データの1ページ目としての所定の領域は、2in1なら左側、4in1なら左上とシステムで固定の位置とする。なお、1ページ目として固定する位置は上記に限定するものではなく、他の位置を1ページ目として扱ってもよい。このようにして、フォーム検索部515は、フォーム情報リストに登録されているフォームデータ802に対して、それぞれ照合を行い一致するフォームデータが存在するか否かを検索する。
図7の説明に戻る。S705にて、フォーム検索部515は、一致するフォームデータが存在したか否かを判定する。一致するフォームデータが検索できた場合は(S705にてYES)S708へ進む。一方、検索できなかった場合は(S705にてNO)S714へ進む。
S706にて、フォーム検索部515は、フォーム管理部516へ問い合わせ、画像データを認識するためのフォーム情報を検索する。このとき、検索される画像データは、Nin1(N≧2)レイアウトされていないデータとなる。そのため、フォーム定義情報の各値の拡縮処理などは行わず、画像データの構造解析を行ったページ全体のブロック情報と、フォーム定義情報のブロック情報とが一致するか照合を行う。
S707にて、フォーム検索部515は、一致するフォームデータが存在したか否かを判定する。一致するフォームデータが検索できた場合は(S707にてYES)S711へ進む。一方、検索できなかった場合は(S707にてNO)S714へ進む。
S708にて、画像処理部512は、S705で検索されたフォームデータが複数枚のページから構成される帳票(以下、複数枚帳票)か否かを判定する。画像処理部512は、S705で検索されたフォームデータの管理ID801に対応するページ数803の値を取得し、値が2以上か否かを判定する。値が2以上である場合は複数枚帳票と判定し(S708にてYES)S710へ進む。一方、値が1の場合は(S708にてNO)、S709へ進む。
S709にて、UI部513は、警告メッセージ(不図示)をディスプレイ416に表示し、ユーザーにフォーム認識を実行するか否かの判断を促す。本工程では、画像データの自動認識を継続するか、ユーザーによる手入力とするかを問い合わせる。ここでは、S708で検索されたフォームデータが複数枚帳票でなく、画像データはNin1(N≧2)されているケースであるため、このまま処理を続行して良いか否かをユーザーに確認し、指示を受け付ける。UI部513がフォーム認識を実行する旨の指示を受信した場合は(S709にてYES)S710へ進む。フォーム認識を続行しない旨を受信した場合は(S709にてNO)S714へ進む。
S710にて、フォーム認識部514は、Nin1の画像データに対して、フォーム認識を実行するための認識用フォームを作成する。
図11Aは、フォーム定義情報で定義されている1ページ目のフォームのプロパティ情報の領域の例を示す。ここで、ページの左上を原点(0,0)とし、横方向をX軸、縦方向をY軸とする。また、X軸は右方向を+とし、Y軸は下方向を+とする。”F−W”はフォーム定義情報“PageSize”の“Width”となり、“F−H”はフォーム定義情報“PageSize”の“Hight”となる。プロパティ領域P1の“Pr−Cx”はフォーム定義情報“Property”の“Coordinates_X”となり、“Pr−Cy”はフォーム定義情報“Property”の“Coordinates_Y”となる。同様に、“Pr−W”はフォーム定義情報“Block”の“Width”となり、“B−H”はフォーム定義情報“Block”の“Height”となる。
本実施形態において、フォーム認識部514は、S703で算出した拡縮率に基づいて、フォーム定義情報のプロパティ領域の座標およびサイズを拡縮し、画像データをフォーム認識するための認識用フォームを生成する。
図11Bは、本実施形態において生成される認識用フォームの例を示す。“P−W”、“P−H”は、図10Bと同様に画像データの幅と高さとなる。“F−Ws”、“F−Hs”、“B−Cxs”、“B−Cys”、“B−Ws”、及び“B−Hs”は、フォームのページサイズ(幅、高さ)と、プロパティ領域P1の座標、幅、及び高さを、拡縮率に応じて拡縮させた値を示す。他のプロパティ領域が存在すれば、同様に拡縮して認識用フォームを作成する。また、フォームデータの2ページ目に関しても同様にプロパティ情報を拡縮して2ページ目をフォーム認識するための認識用フォームを作成して、Nin1の2ページ目の領域にレイアウトする。このとき、上記に述べた1ページ目の固定位置に基づき、2in1であれば1ページ目を左、2ページ目を右にレイアウトする。また、4in1以上であれば左上から、右上、左下、右下の順に1〜4ページ目をレイアウトした認識用フォームを作成する。このようにして、フォーム認識部514は、フォーム定義情報で定義されている1ページ目、2ページ目のプロパティ領域を、画像データのNin1に合わせて拡縮してレイアウトした認識用フォームを作成する。
なお、S709にてフォーム認識を実行する旨の指示を受信してS710の処理が実行される場合は(S709にてYES)、フォームデータが1ページのみから構成されたデータになる。そのため、2ページ目に関してはレイアウトを行わず、1ページ目だけをNin1の領域にレイアウトして認識用フォームが作成される。
S711にて、フォーム認識部514は、S710で作成した認識用フォームを使用して、画像データに対してフォーム認識処理を実行する。フォーム認識部514は、認識用フォームの各プロパティ領域について、OCR処理を実行して数値もしくは文字列を抽出する。フォーム認識部514は、抽出した値を、プロパティ領域の”PropName”で定義されるプロパティ名と関連付けてRAM413に記憶する。
S712にて、UI部513は、プレビュー画像605に認識用フォームのプロパティ領域610とS711で抽出したプロパティ情報を図6に示すユーザーインターフェースのプロパティ情報リスト606に表示する。
S713にて、フォーム認識部514は、S711のフォーム認識処理で抽出できたプロパティの値が、閾値以下の認識率であるか否かを判定する。閾値は、RAM413等の記憶部に予め保持されており、文書処理アプリケーション510で固定の値を保持してもよいし、ユーザーによって変更可能な値であってもよい。例えば、閾値が90%である場合、フォーム認識処理で抽出するプロパティ領域が10箇所のときに、抽出できた箇所が8箇所以下であれば閾値以下の認識率と判定する。なお、認識率の算出方法は上記に限定するものではなく、また、フォームごとに規定してもよい。閾値以下の場合は(S713にてYES)S714へ進み、閾値より大きい場合は(S703にてNO)S715へ進む。
S714にて、UI部513は、プロパティ情報リスト606をユーザー入力モードにする。この処理はプロパティ情報リスト606をユーザー入力モードにすることで、認識用フォームが存在せずにプロパティの値が抽出できなかったケースや、フォーム認識の認識率が低かったケースにおいて、ユーザーの入力による補完処理を促すために実行される。ユーザーが値をプロパティの値を入力する場合は図6に示すユーザーインターフェース上で抽出できなかった属性を明示した上で入力を要求するようにしてもよいし、認識率が低かった旨のメッセージを示す別の画面(不図示)を提示するようにしてもよい。ユーザーによる入力が完了した後、S715へ進む。
S715にて、プロパティ情報登録部517は、プロパティ情報を接続先データベースコントロール607で指定されるデータベースに登録する。UI部513は、データエントリーボタン609が押下されたことを受信すると、プロパティ情報登録部517にプロパティ情報登録を指示する。プロパティ情報登録部517は、プロパティ情報リスト606に設定された各プロパティの値を取得して、接続先データベースコントロール607で指定されるデータベースに登録する。前述したように、接続先データベースコントロール607が指定されていない場合やユーザーの選択に応じて、プロパティの値をファイル形式(例 XML形式)で出力するようにしてもよい。
以上の処理により、Nin1の画像データが入力されたときに、複数枚で一組のフォームデータを予めNin1用フォームとして登録せずとも、Nin1の画像データに対応した認識用フォームに変換してフォーム認識処理を実行することが可能となる。なお、本実施形態では、スキャン機能はMFP101のスキャナ222を用いた例で説明したが、紙をスキャンして画像データを生成可能であれば別の装置(例えばスキャン専用機など)でも構わない。
<第二の実施形態>
本発明の第二の実施形態に関して説明する。なお、第一の実施形態と同一の構成に関しては説明を適宜省略する。第二の実施形態では、画像データのNin1の並び順を考慮したNin1用の認識用フォームの検索および作成する処理に関して説明する。
本発明の第二の実施形態に関して説明する。なお、第一の実施形態と同一の構成に関しては説明を適宜省略する。第二の実施形態では、画像データのNin1の並び順を考慮したNin1用の認識用フォームの検索および作成する処理に関して説明する。
[処理フロー]
図12は、第二の実施形態に係る文書処理アプリケーション510のデータエントリーを実行する処理を示したフローチャートである。各処理に関して説明する。なお、第一の実施形態の図7と同一の処理に関しては同一の符号を使用し説明を省略する。
図12は、第二の実施形態に係る文書処理アプリケーション510のデータエントリーを実行する処理を示したフローチャートである。各処理に関して説明する。なお、第一の実施形態の図7と同一の処理に関しては同一の符号を使用し説明を省略する。
S703にて入力画像がNin1のレイアウトがなされていると判定された場合(S703にてYES)S1201へ進む。S1201にて、フォーム検索部515は、フォーム管理部516へ問い合わせ、画像データを認識するためのフォーム情報を検索する。本処理では、1ページ目の照合を画像ページのページ領域それぞれで実行する点が、第一の実施形態と異なる。つまり、第一の実施形態では、1ページ目のレイアウト位置を固定として扱ったが、本実施形態では、固定せずに画像において1ページ目の検出を行う。例えば、2in1であれば左側と右側、4in1であれば左上、右上、左下、右下それぞれで照合処理を実行する。その後、S705へ進む。
S705にて一致するフォームデータが検索できたと判定された場合(S705にてYES)S1202へ進む。S1202にて、フォーム検索部515は、S1201で検索されたフォーム定義情報の1ページ目のフォームを、Nin1された画像データのどのレイアウト位置で一致すると検索したかをRAM413に記憶する。例えば、1つの画像内に2ページをレイアウトした2in1のA4サイズ横向きの画像データの場合、画像データ内の左側、右側の2か所にページ領域のレイアウト位置が存在する。この時に、フォーム定義情報の1ページ目のフォームが、左側、右側のどちらで一致したのかの情報を記憶する。同様に、1つの画像内に4ページをレイアウトした4in1のA4サイズ縦向きの画像データの場合、左上、左下、右上、右下の4か所にページ領域のレイアウト位置が存在する。そのため、1ページ目のフォームが左上、左下、右上、右下のどこで一致したのかの情報が記憶される。その後、S708へ進む。
S708にて認識用フォームが複数枚帳票と判定された場合(S708にてYES)もしくはS709にてユーザーからフォーム認識の実行を行う指示を受け付けた場合(S709にてYES)S1203へ進む。S1203にて、フォーム認識部514は、S1202で記憶した1ページ目のレイアウト位置に応じて、認識用フォームを作成する。Nin1画像データ用に、フォーム定義情報のフォームを拡縮してレイアウトした認識用フォームを作成する方法は、第一の実施形態と同様である。なお、第二の実施形態では、S1202で記憶した1ページ目のレイアウト位置に応じて、作成する認識用フォームのページのレイアウト位置と4in1においては2種類の認識用フォームを作成する点が異なる。
図13Aは、2ページで一組のフォーム定義情報の各ページのプロパティ情報の領域の例を示す。ページ1301は1ページ目のプロパティ情報の領域を示し、ページ1302は2ページ目のプロパティ情報の領域を示す。
図13Bは、図13Aで示したフォームを用いて、1ページ内に2ページをレイアウトした2in1のA4サイズ横向きの画像データに対して、認識用フォームを作成する例を示している。画像データ1303は、2in1の左側が1ページ目のレイアウト位置となる画像データの例を示している。認識用フォーム1304は、画像データ1303をフォーム認識するための認識用フォームの例を示している。画像データ1303は、左側が1ページ目のレイアウト位置であるため、左側に1ページ目、右側に2ページ目をレイアウトした認識用フォームを作成する。
一方、画像データ1305は、2in1の右側が1ページ目のレイアウト位置となる画像データの例を示している。認識用フォーム1306は、画像データ1305をフォーム認識するための認識用フォームの例を示している。画像データ1305は、右側が1ページ目のレイアウト位置であるため、右側に1ページ目、左側に2ページ目をレイアウトした認識用フォームを作成する。
また、図14Aは、4ページで一組のフォーム定義情報の各ページのプロパティ情報の領域の例を示している。ページ1401は1ページ目、ページ1402は2ページ目、ページ1403は3ページ目、ページ1404は4ページ目のプロパティ情報の領域をそれぞれ示している。
図14Bは、図14Aで示したフォームを用いて、1ページ内に4ページをレイアウトした4in1のA4サイズ縦向きの画像データに対して、認識用フォームを作成する例を示している。画像データ1405は、4in1の左上が1ページ目のレイアウト位置となる画像データの例を示している。認識用フォーム1406、1407は、画像データ1405をフォーム認識するための認識用フォームの例を示している。4in1の場合、1ページ目のレイアウト位置が決まっても、ページのレイアウト方法が2種類存在する。左上を基点として、右上、左下、右下の順にレイアウトする方法と、左下、右上、右下の順にレイアウトする方法が存在する。そのため、画像データ1405の認識用フォームとして、認識用フォーム1406、1407の2種類作成する。認識用フォーム1406は、左上を基点として、右上、左下、右下の順にレイアウトした認識用フォームを示している。認識用フォーム1407は、左上を基点として、左下、右上、右下の順にレイアウトした認識用フォームを示している。
S1203の処理の後、もしくは、S707にて一致するフォームデータが検索できたと判定された場合(S707にてYES)S1204へ進む。S1204にて、フォーム認識部514は、S1203で作成した認識用フォームを使用して、画像データに対してフォーム認識処理を実行する。フォーム認識の処理は第一の実施形態と同等であるが、第二の実施形態では、S1203で4in1の場合に2種類の認識用フォームを作成した場合は、それぞれの認識用フォームを使用してフォーム認識を実行する。
S1205にて、フォーム認識部514は、複数の認識用フォームを使用してフォーム認識を実行したか否かを判定する。複数の認識用フォームを使用してフォーム認識を実行した場合は(S1205にてYES)S1206へ進み、複数の認識用フォームを使用していない場合は(S1205にてNO)S712へ進む。例えば、4in1の場合に2種類の認識用フォームを使用してフォーム認識を実行した場合は、S1206へ進む。
S1206にて、フォーム認識部514は、S1204の2種類の認識用フォームを使用したフォーム認識処理で抽出できたプロパティの値を比較し、その比較の結果、認識率が高い認識用フォームを特定する。ここでは、フォーム認識部514は、認識率が最も高い認識用フォームを画像データの認識用フォームとして記憶する。そして、その認識用フォームで抽出したプロパティ情報を画像データから抽出したプロパティ情報として記憶し、出力対象とする。その後、S712へ進む。
以上、本実施形態により、Nin1の画像データの1ページ目のレイアウト位置に応じて、認識用フォームのページのレイアウト位置を自動で判定し、認識用フォームを作成することが可能となる。また、複数のレイアウトが存在する場合においても、それぞれの認識用フォームを作成してフォーム認識を実行して、より認識率が高いプロパティ情報の抽出を行うことが可能となる。
<その他の実施形態>
また、本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101…MFP、102…ファイルサーバ、103…PC、510…文書処理アプリケーション、511…画像取得部、512…画像処理部、513…UI部、514…フォーム認識部、515…フォーム検索部、516…フォーム管理部、517…プロパティ情報登録部
Claims (10)
- 帳票のフォーム情報を保持する保持手段と、
帳票がレイアウトされた画像データを取得する取得手段と、
前記画像データがNin1(N≧2)のページレイアウトであるか否かを判定する判定手段と、
前記判定手段によりNin1(N≧2)のページレイアウトであると判定された場合、当該画像データにレイアウトされた帳票に対応するフォームを含むフォーム情報を、前記保持手段が保持するフォーム情報から検索する検索手段と、
前記検索手段にて検出されたフォーム情報を用いて、前記画像データに対応してレイアウトされたフォームを生成する生成手段と、
前記生成手段にて生成したフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出する抽出手段と、
を有することを特徴とする情報処理装置。 - 前記抽出手段にて抽出された文字列データをプロパティ情報として記憶する記憶手段を更に有することを特徴とする請求項1に記載の情報処理装置。
- 前記抽出手段にて抽出された文字列データの認識率が所定の閾値より大きいか否かを判定する第2の判定手段と、
前記第2の判定手段により文字列データの認識率が前記所定の閾値以下であると判定された場合、ユーザーからの文字列データの入力を受け付ける受け付け手段と
を更に有することを特徴とする請求項1または2に記載の情報処理装置。 - 前記検索手段にて検出されたフォーム情報が、複数のページから構成されるフォームであるか否かを判定する第3の判定手段と、
前記第3の判定手段によりフォーム情報が複数のページから構成されるフォームでないと判定された場合、ユーザーに処理を継続するか否かを問い合わせる手段と、
を更に有することを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。 - 前記検索手段は、Nin1(N≧2)の値に応じて規定された前記画像データの所定の領域の画像を1ページ目の画像として用いて検索を行うことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
- 前記検索手段は、前記保持手段が保持するフォーム情報それぞれが示す1ページ目のフォームと、前記画像データにレイアウトされた帳票のページそれぞれの領域とを比較し、当該比較の結果、一致するフォームを含むフォーム情報を検出することを特徴とする請求項1乃至4のいずれか一項に記載の処理装置。
- 前記検索手段は、前記比較により一致した前記画像データの領域の位置を特定し、
前記生成手段は、前記特定した領域の位置と、前記検出されたフォーム情報を構成する複数のページに対するレイアウトの組み合わせとに基づき、複数のフォームを生成し、
前記抽出手段は、生成された前記複数のフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出することを特徴とする請求項6に記載の情報処理装置。 - 前記抽出手段は、生成された前記複数のフォームそれぞれを用いて抽出された文字列データの認識率を比較し、最も認識率の高いフォームから得られた文字列データを出力対象とすることを特徴とする請求項7に記載の情報処理装置。
- 帳票のフォーム情報を保持する保持手段を備える情報処理装置の制御方法であって、
帳票がレイアウトされた画像データを取得する取得工程と、
前記画像データがNin1(N≧2)のページレイアウトであるか否かを判定する判定工程と、
前記判定工程によりNin1(N≧2)のページレイアウトであると判定された場合、当該画像データにレイアウトされた帳票に対応するフォームを含むフォーム情報を、前記保持手段が保持するフォーム情報から検索する検索工程と、
前記検索工程にて検出されたフォーム情報を用いて、前記画像データに対応してレイアウトされたフォームを生成する生成工程と、
前記生成工程にて生成したフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出する抽出工程と、
を有することを特徴とする制御方法。 - コンピュータを、
帳票のフォーム情報を保持する保持手段、
帳票がレイアウトされた画像データを取得する取得手段、
前記画像データがNin1(N≧2)のページレイアウトであるか否かを判定する判定手段、
前記判定手段によりNin1(N≧2)のページレイアウトであると判定された場合、当該画像データにレイアウトされた帳票に対応するフォームを含むフォーム情報を、前記保持手段が保持するフォーム情報から検索する検索手段、
前記検索手段にて検出されたフォーム情報を用いて、前記画像データに対応してレイアウトされたフォームを生成する生成手段、
前記生成手段にて生成したフォームを用いて、前記画像データにレイアウトされている帳票から文字列データを抽出する抽出手段、
として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017195376A JP2019068391A (ja) | 2017-10-05 | 2017-10-05 | 情報処理装置及びその制御方法、並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017195376A JP2019068391A (ja) | 2017-10-05 | 2017-10-05 | 情報処理装置及びその制御方法、並びにプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019068391A true JP2019068391A (ja) | 2019-04-25 |
Family
ID=66339936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017195376A Pending JP2019068391A (ja) | 2017-10-05 | 2017-10-05 | 情報処理装置及びその制御方法、並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019068391A (ja) |
-
2017
- 2017-10-05 JP JP2017195376A patent/JP2019068391A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7013182B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP6050843B2 (ja) | 情報処理装置、方法およびプログラム | |
JP6849387B2 (ja) | 画像処理装置、画像処理システム、画像処理装置の制御方法、及びプログラム | |
JP2967309B2 (ja) | 画像処理装置 | |
US20090226090A1 (en) | Information processing system, information processing apparatus, information processing method, and storage medium | |
JP5339308B2 (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体。 | |
US20150304510A1 (en) | Electronic document generation system and recording medium | |
US11416674B2 (en) | Information processing apparatus, method of processing information and storage medium | |
JP2018098705A (ja) | 画像処理装置及びその制御方法並びにプログラム | |
JP2010213121A (ja) | 画像処理装置、システム及び画像処理方法 | |
JP2015227013A (ja) | 印刷装置、制御方法、及びプログラム | |
US7844138B2 (en) | History control apparatus | |
JP2019068391A (ja) | 情報処理装置及びその制御方法、並びにプログラム | |
US11588945B2 (en) | Data input support apparatus that displays a window with an item value display area, an overview image display area, and an enlarged image display area | |
JP6700705B2 (ja) | 振り分けシステム、情報処理方法、及びプログラム | |
JP2007052613A (ja) | 翻訳装置、翻訳システムおよび翻訳方法 | |
US20150264204A1 (en) | Document management system, document managing method, and recording medium storing a document managing program | |
JP6190549B1 (ja) | 文書処理システム | |
JP2015087830A (ja) | 帳票処理装置及びプログラム | |
JPH1063813A (ja) | イメージ文書管理方法及びその装置 | |
JP2019074875A (ja) | 情報処理装置、制御方法、およびプログラム | |
US20220269855A1 (en) | Information generation system, workflow system, computer-readable non-transitory recording medium storing information generation program, and computer-readable non-transitory recording medium storing workflow program | |
US20230273952A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP6605165B1 (ja) | ファクシミリ文書管理支援システム | |
JP2024076693A (ja) | 画像処理装置、画像処理方法、及びプログラム |