(57)【要約】【課題】  取得した画像に、未登録のフォームに従って記載された情報が含まれる場合でも、容易にその情報を取り出せるようにする。【解決手段】  画像取得部１２１が取得した画像を、画像解析部１２２が解析し、その解析結果に基づき、上記画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否かをフォーム判定部１２３が判定し、いずれかのフォームに当てはまると判定した場合に、情報取得部１２６がその当てはまるフォームに従って上記画像から情報を取り出し、どのフォームにも当てはまらないと判定した場合に、フォーム生成部１２５が画像解析部１２２による解析結果に基づき新規にフォームを生成すると共に、情報取得部１２６がその生成したフォームに従って上記画像から情報を取り出すようにした。【選択図】    図１
2015153138.tif 000002
【特許請求の範囲】
【請求項１】
１以上の情報処理装置により構成される情報処理システムであって、
画像を取得する画像取得手段と、
前記画像取得手段が取得した画像を解析する画像解析手段と、
前記画像解析手段による解析結果に基づき、前記画像取得手段が取得した画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否か判定する判定手段と、
前記判定手段がいずれかのフォームに当てはまると判定した場合に、該当てはまるフォームに従って前記画像取得手段が取得した画像から情報を取り出す第１情報取得手段と、
前記判定手段がどのフォームにも当てはまらないと判定した場合に、前記画像解析手段による解析結果に基づき新規にフォームを生成すると共に、該生成したフォームに従って前記画像取得手段が取得した画像から情報を取り出す第２情報取得手段とを備えることを特徴とする情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記第２情報取得手段が生成したフォームを前記フォーム登録手段に登録する手段を備えることを特徴とする情報処理システム。
【請求項３】
請求項１又は２に記載の情報処理システムであって、
前記画像解析手段は、前記取得した画像中にある枠の位置を解析する手段を備え、
前記判定手段は、前記フォーム中の枠の位置と、前記画像解析手段による解析で得られた枠の位置とを比較することにより、前記判定を行うことを特徴とする情報処理システム。
【請求項４】
請求項３に記載の情報処理システムであって、
前記画像解析手段は、前記解析により得られた複数の枠の位置の情報を、該情報と一意に対応する値に変換する手段を備え、
前記判定手段は、前記フォーム中の複数の枠の位置の情報と一意に対応する値と、前記画像解析手段による変換で得られた値とを比較することにより、前記判定を行うことを特徴とする情報処理システム。
【請求項５】
請求項３又は４に記載の情報処理システムであって、
前記画像解析手段は、前記取得した画像中にある文字列を取得する手段を備え、
前記判定手段は、枠の位置が前記画像取得手段の取得した画像と一致するフォームを複数発見した場合に、項目名が前記画像解析手段の取得した文字列と最もよく一致するフォームを、前記画像取得手段の取得した画像が当てはまるフォームであると判定することを特徴とする情報処理システム。
【請求項６】
請求項３乃至５のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像に含まれる枠線の傾きを補正する手段を備えることを特徴とする情報処理システム。
【請求項７】
請求項３乃至６のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像に含まれる枠線の平行移動による位置ずれを補正する手段を備えることを特徴とする情報処理システム。
【請求項８】
請求項３乃至７のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像の拡大縮小によるサイズずれを補正する手段を備えることを特徴とする情報処理システム。
【請求項９】
請求項１乃至８のいずれか一項に記載の情報処理システムであって、
前記第１情報取得手段及び前記第２情報取得手段が取り出した情報を、該取り出しに用いたフォームに関する入力情報として情報登録手段に登録する手段と、
前記フォーム登録手段に登録されているフォームに基づき、該フォームに従った入力情報をユーザから受け付ける入力受付手段と、
前記入力受付手段が入力を受け付けた情報を、該受付に用いたフォームに従った入力情報として情報登録手段に登録する手段とを備えることを特徴とする情報処理システム。
【請求項１０】
請求項１乃至９のいずれか一項に記載の情報処理システムであって、
前記フォーム登録手段に登録されているフォームの情報をユーザの操作に従って編集する編集手段を備えることを特徴とする情報処理システム。
【請求項１１】
１の情報処理装置が、又は複数の情報処理装置が協働して実行する情報処理方法であって、
画像を取得する画像取得手順と、
前記画像取得手順で取得した画像を解析する画像解析手順と、
前記画像解析手順による解析結果に基づき、前記画像取得手順で取得した画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否か判定する判定手順と、
前記判定手順でいずれかのフォームに当てはまると判定した場合に、該当てはまるフォームに従って前記画像取得手順で取得した画像から情報を取り出す第１情報取得手順と、
前記判定手順でどのフォームにも当てはまらないと判定した場合に、前記画像解析手順による解析結果に基づき新規にフォームを生成すると共に、該生成したフォームに従って前記画像取得手順で取得した画像から情報を取り出す第２情報取得手順とを備えることを特徴とする情報処理方法。
【請求項１２】
）
１のコンピュータを、又は複数のコンピュータを協働させて、
請求項１乃至１０のいずれか一項に記載の情報処理システムとして機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、所定のフォームに沿って記載された書類の画像から、そこに記載された複数項目の情報を取得する情報処理システムが知られている。このような情報処理システムを用い、書類の画像を読み取らせて処理させることにより、帳票に記入されたデータをデータベースに入力する作業を自動化できる。
【０００３】
なお、このような自動化に際しては、システム上で入力項目を定義するなど、相応の手間がかかることが通常である。しかし、そのような手間を省くため、紙の帳票を元にシステム上の入力フォームを生成する技術も考えられ既に知られている。
特許文献１には、記入済みの帳票の画像を解析して枠領域と文字領域とを判別し、利用者が入力した属性名と一致する文字列に隣接する枠領域を属性値枠として判定し、その結果から帳票定義を生成する構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に記載の技術を用いる場合でも、読み取った帳票画像を適切に処理するためには、使用する全ての帳票について予め帳票定義を作成しておく必要があった。しかし、実際には、帳票を使用した業務を徐々にシステム化していく場合もあり、全ての帳票について予め帳票定義を作成することは負担が大きい場合もあった。
このような問題は、帳票以外の画像から情報を取りだそうとする場合でも、同様に発生するものである。
【０００５】
この発明は、このような背景に鑑みてなされたものであり、取得した画像に、未登録のフォームに従って記載された情報が含まれる場合でも、容易にその情報を取り出せるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
この発明による情報処理システムは、上記の目的を達成するため、１以上の情報処理装置により構成される情報処理システムにおいて、画像を取得する画像取得手段と、上記画像取得手段が取得した画像を解析する画像解析手段と、上記画像解析手段による解析結果に基づき、上記画像取得手段が取得した画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否か判定する判定手段と、上記判定手段がいずれかのフォームに当てはまると判定した場合に、その当てはまるフォームに従って上記画像取得手段が取得した画像から情報を取り出す第１情報取得手段と、上記判定手段がどのフォームにも当てはまらないと判定した場合に、上記画像解析手段による解析結果に基づき新規にフォームを生成すると共に、その生成したフォームに従って上記画像取得手段が取得した画像から情報を取り出す第２情報取得手段とを設けたものである。
【発明の効果】
【０００７】
上記構成によれば、取得した画像に、未登録のフォームに従って記載された情報が含まれる場合でも、容易にその情報を取り出せるようにすることができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の情報処理システムの一実施形態であるデータ処理サーバを含む帳票処理システムの構成例を示す図である。
【図２】図１に示したデータ処理サーバのハードウェア構成を示す図である。
【図３】図１に示したデータ処理サーバが備える機能の構成を示す図である。
【図４】図１に示したデータ処理サーバのＣＰＵが実行する処理のフローチャートである。
【図５】画像のこの傾き及び位置ずれ補正に関する説明図である。
【図６】画像のサイズずれの補正に関する説明図である。
【図７】枠定義データの例を示す図である。
【図８】フォームデータの例を示す図である。
【図９】比較用枠定義データの例を示す図である。
【図１０】帳票データの例を示す図である。
【図１１】帳票リストデータの例を示す図である。
【図１２】入力受付画面の例を示す図である。
【図１３】表示要素データの例を示す図である。
【図１４】表示要素データを適用した入力受付画面の例を示す図である。
【発明を実施するための形態】
【０００９】
図１に、この発明の情報処理システムの一実施形態であるデータ処理サーバ１００を含む帳票処理システムの構成例を示す。
図１に示す帳票処理システム１は、データ処理サーバ１００と、スキャナ２００と、端末装置３００とを備え、これらをネットワーク４００により接続した構成である。
【００１０】
データ処理サーバ１００は、帳票等の書類の画像を取得し、これを解析すると共に、その画像と対応するフォームを特定する機能を備える。また、そのフォームに従って取得した画像から情報を取り出し、そのフォームに関する入力情報として登録する機能も備える。処理対象の画像については、スキャナ２００等の画像読取装置から、読み取りで得た画像を取得することができる。また、予め保存されている画像や、電子メールやファイル転送等により外部装置から送信された画像を取得して同様な処理を行うことも可能である。
【００１１】
スキャナ２００は、原稿の画像を読み取ってその画像データを取得する画像読取手段を備えた画像読取装置である。そして、読み取り結果の画像データをデータ処理サーバ１００に送信する機能を備える。この読み取り及び画像データの送信は、スキャナ２００に対するユーザの操作に従って行っても、データ処理サーバ１００からの制御に従って行っても、端末装置３００等の他の外部装置からの指示に従って行ってもよい。ここでは、このいずれも可能であるとする。また、スキャナ２００は、ＭＦＰ（デジタル複合機）のように、読み取り以外の機能を備えた装置であってもよい。
【００１２】
端末装置３００は、ユーザが操作する情報処理装置であり、例えばＰＣ（パーソナルコンピュータ）により構成できる。端末装置３００は、インストールされている所要のアプリケーションにより、スキャナ２００に画像の読み取り及びデータ処理サーバ１００への画像データ送信を実行させる機能を備える。また、データ処理サーバ１００が取得した入力情報の確認や、データ処理サーバ１００に登録されている情報の修正等の指示をユーザから受け付け、その指示に従ってデータ処理サーバ１００に必要な指示を行う機能も備える。
ネットワーク４００は、帳票処理システム１を構成する各装置を接続するための通信路であり、有線、無線を問わず、任意の規格のものを用いることができる。インターネットでも、ＬＡＮ（ローカルエリアネットワーク）でも構わない。
【００１３】
次に、図２に、図１に示したデータ処理サーバ１００のハードウェア構成を示す。
図２に示すように、データ処理サーバ１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＨＤＤ（ハードディスクドライブ）１０４、通信Ｉ／Ｆ１０５、表示部１０６、操作部１０７を備え、これらをシステムバス１０８により接続した構成としている。
【００１４】
そして、ＣＰＵ１０１が、ＲＡＭ１０３をワークエリアとしてＲＯＭ１０２あるいはＨＤＤ１０４に記憶されたプログラムを実行することにより、データ処理サーバ１００全体を制御し、図３を用いて後述するものをはじめとする種々の機能を実現する。例えば、画像を取得して解析したり、取得した画像と対応するフォームを特定したりする機能である。
【００１５】
ＲＯＭ１０２及びＨＤＤ１０４は、不揮発性記憶媒体（記憶手段）であり、ＣＰＵ１０１が実行する各種プログラムや後述する各種データを格納している。
通信Ｉ／Ｆ１０５は、ネットワーク４００を介してスキャナ２００や端末装置３００をはじめとする外部装置と通信するためのインタフェースである。
表示部１０６は、データ処理サーバ１００の動作状態や設定内容等をユーザに提示するための提示手段であり、液晶ディスプレイやランプ等を備える。
【００１６】
操作部１０７は、ユーザからの操作を受け付けるための操作手段である。各種ボタンやスイッチの他、タッチパネルを備えてもよい。
なお、データ処理サーバ１００がユーザからの操作を直接受ける必要がない（端末装置３００等の外部機器から操作できればよい）場合には、表示部１０６及び操作部１０７を設けなくてよい。
【００１７】
スキャナ２００は、ハードウェアとしては、図２に示した各部と対応するＣＰＵ、ＲＯＭ、ＲＡＭ、通信Ｉ／Ｆ等を備えた制御部と、画像読み取り用のスキャナエンジンとを備えた公知の構成でよい。
端末装置３００は、ハードウェアとしては、図２に示した各部と対応するＣＰＵ、ＲＯＭ、ＲＡＭ、通信Ｉ／Ｆ等を備えた公知のコンピュータでよい。
ここではスキャナ２００及び端末装置３００のハードウェアについての詳細説明は省略する。
【００１８】
次に、図３に、データ処理サーバ１００が備える、画像の処理、画像からの情報の取り出し及びフォームの取り扱いに関連する機能の構成を示す。図３に示す機能は、ＣＰＵ１０１が所要のプログラムを実行することにより図２に示した各種ハードウェアを制御して実現されるものである。
図３に示すように、データ処理サーバ１００は、画像取得部１２１、画像解析部１２２、フォーム判定部１２３、フォーム登録部１２４、フォーム生成部１２５、情報取得部１２６、情報登録部１２７、情報入力受付部１２８、およびフォーム編集部１２９を備える。
【００１９】
このうち画像取得部１２１は、データ処理サーバ１００において処理対象とする画像の画像データを取得する機能を備え、画像取得手段に該当する。この取得は、上述のように、スキャナ２００からの受信、所定の又はユーザにより指定された画像登録手段からの読み出し、その他外部機器からの受信等により行うことができる。
【００２０】
画像解析部１２２は、画像取得部１２１が取得した画像データを解析する機能を備え、画像解析手段に該当する。この処理は、画像データ中から、フォームを規定するフォームデータと対比したり、フォームデータを新たに生成したりするために必要な情報を取得する処理である。より具体的には、画像データ中に含まれる枠の位置と、画像データ中で文字が記載されている領域とを特定処理する処理を含む。また、画像の読み取り時に発生した種々のノイズの影響を除去するための種々の補正処理も含む。その詳細については後述する。
【００２１】
フォーム判定部１２３は、画像解析部１２２による解析結果に基づき、処理対象の画像がフォーム登録部１２４に登録されているフォームのいずれかに当てはまるか否か判定する機能を備え、判定手段に該当する。この判定は、画像中の枠の位置を、各フォームデータに規定される枠の位置と対比することにより行うが、その詳細については後述する。
フォーム登録部１２４は、フォームを規定するフォームデータを任意の数登録する機能を備え、フォーム登録手段に該当する。
【００２２】
フォーム生成部１２５は、フォーム判定部１２３が、処理対象の画像は登録済みのどのフォームにも当てはまらないと判定した場合に、画像解析部１２２による解析結果に基づき、処理対象の画像と対応する新規のフォームデータを生成する機能を備える。また、その生成したフォームデータをフォーム登録部１２４に登録させる機能を備える。このフォームデータの生成についても、詳細は後述する。
【００２３】
情報取得部１２６は、処理対象の画像が当てはまるフォームデータに基づき、処理対象の画像からフォームデータに規定された項目の情報を取り出す機能を備える。使用するフォームデータは、フォーム判定部１２３が、処理対象の画像が登録されているフォームのいずれかに当てはまると判定した場合にはそのフォームのフォームデータである。いずれにも当てはまらないと判定した場合には、フォーム生成部１２５が生成した新規のフォームデータである。前者の場合、情報取得部１２６が第１情報取得手段に該当する。後者の場合、フォーム生成部１２５及び情報取得部１２６が第２情報取得手段に該当する。
【００２４】
情報登録部１２７は、情報取得部１２６が取り出した情報を、処理対象の画像が当てはまるフォームと対応付けてそのフォームに関する入力情報として登録する機能を備え、情報登録手段に該当する。またこのとき、登録する情報には、その情報がどの画像に由来する情報であるかを示す識別情報を付す。また、情報登録部１２７は、情報入力受付部１２８が入力を受け付けた情報も同様に登録する機能を備える。この情報については、手入力であることを示す識別情報を付して登録するとよい。
【００２５】
情報入力受付部１２８は、フォーム登録部１２４に登録されているフォームのうちユーザが選択したものに関する情報の入力をユーザから受け付ける機能を備え、入力受付手段に該当する。また、情報入力受付部１２８は、ユーザが必要な情報を入力して登録を指示した場合に、入力された情報を、入力受付に用いたフォームと対応付けて情報登録部１２７に登録させる機能も備える。
フォーム編集部１２９は、ユーザの指示に従い、フォーム登録部１２４に登録されているフォームデータを編集する機能を備える。
【００２６】
次に、図４に、データ処理サーバ１００のＣＰＵ１０１が実行する、画像の処理及び画像からの情報の取り出しに関する処理のフローチャートを示す。
ＣＰＵ１０１は、ユーザ、アプリケーション、外部装置等から、画像から情報を取り出して情報登録部１２７に登録すべきことを指示されると、図４のフローチャートに示す処理を開始する。情報の取り出し対象とすべき画像の画像データを受信したことが開始のトリガであってもよい。
【００２７】
図４の処理において、ＣＰＵ１０１はまず、処理対象とする画像の画像データを取得する（Ｓ１１）。具体的な取得法については上述の通りである。またこの処理は、画像取得部１２１の機能と対応する処理であり、画像取得手順の処理である。
【００２８】
次に、ＣＰＵ１０１は、取得した画像データ中の画像の傾き及び平行移動に起因する位置ずれを補正する（Ｓ１２）。画像データが、紙の書類を読み取って得られたものである場合、紙を画像読取部に配置する際の位置ずれに起因して、画像データ中における枠が傾いたり、位置がずれてしまったりすることが考えられる。また、そもそもフォームを紙に印刷する際に、傾きや位置ずれが発生することも考えられる。この場合、そのずれて印刷された紙を読み取ると、画像読取部にずれなく配置したとしても、画像データ中ではずれが発生することになる。
【００２９】
このようなずれが残っていると、何れかのフォームに該当する画像を処理しているにも関わらず、画像データ中の枠の位置が、フォームデータが示す枠の位置と一致しない結果となる可能性がある。そこで、枠の位置を特定する前に、まず画像の傾き及び平行移動に起因する位置ずれを補正するようにしている。
【００３０】
図５に、この傾き及び位置ずれ補正の考え方を示す。
傾き補正については、図５（ａ）に示すように、まず画像データ中から最も長い枠線（図中に他より太い線で示す、「ｚｚｚ」の項目の枠の上側の線）を抽出する。そして、その枠線が縦方向に伸びているのならばその枠線が垂直になるように、横方向に伸びているのならばその枠線が水平になるように画像データ全体を回転させる。これによって、原稿配置や印刷の向きの誤差による枠線の傾きの影響を除去することができる。
【００３１】
位置ずれ補正については、図５（ｂ）に示すように、画像データの上下左右それぞれの端から、無地部分をカットする。ただし、枠線や文字がカットされるのを防ぐため、一定割合だけ無地部分を残す。中央に残る枠線や文字の位置関係は、平行移動の有無によらず一定であるはずなので、このことにより、原稿配置や印刷の位置ずれに起因する平行移動の位置ずれの影響を除去することができる。
【００３２】
図４の説明に戻ると、ＣＰＵ１０１は次に、ステップＳ１２における補正後の画像データから、枠領域及び文字領域を抽出する（Ｓ１３）。この抽出は、適宜公知の方法で行えばよく、例えば特開２００９−３１９３７号公報に記載の方法を用いることができる。枠領域は、画像データ中で枠の配置された領域、文字領域は、画像データ中で文字の存在する領域である。
また、ＣＰＵ１０１は、補正後の画像データを等サイズの所定数のブロックに区分する（Ｓ１４）。その後、ステップＳ１３で抽出した枠領域の位置を規定する枠定義データを、ステップＳ１４で作成したブロックの区分に従って生成する（Ｓ１５）。
【００３３】
ここで、ブロックの区分を行うのは、画像データに含まれる、画像の拡大縮小によるサイズずれを補正するためである。画像データが、紙の書類を読み取って得られたものである場合、上述の傾き及び位置ずれの他、サイズずれが発生することが考えられる。ただし、ここでいうサイズとは、画像データのドット数を言う。従って、紙のサイズが異なる場合の他、読み取り解像度や、読み取り時の拡大縮小の倍率設定が異なる場合にもサイズずれが発生する。
【００３４】
しかし、このようなサイズずれが発生した場合であっても、各枠や文字が、画像の上から何％、左から何％の位置にあるか、という点は変わらない。そこで、図６に示すように、画像データを等サイズの所定数のブロックに区分し、各枠の位置やサイズを、ブロック数を基準にカウントすることにより、サイズずれの影響を除去することができる。
【００３５】
例えば、画像を縦横各４００のブロックに区分する場合、ステップＳ１２での補正後の画像データの横方向のサイズをＸ、縦方向のサイズをＹとして、（ｎ−１）Ｘ／４００を横方向のｎ番目のブロックの開始座標、（ｎ−１）Ｙ／４００を縦方向のｎ番目のブロックの開始座標とすればよい。もちろん、縦方向と横方向でブロック数が異なっていてもよい。また、横方向と縦方向についてそれぞれ等間隔に分割されていれば、各ブロックの横方向の長さと縦方向の長さが異なっていてもよい。
そして、ステップＳ１５で生成する枠定義データにおいては、各枠の左端の位置、上端の位置、高さ及び幅を、ブロック数を基準にカウントする。
【００３６】
図７に、枠定義データの例を示す。
この例は、画像データ中に６つの枠が検出された場合の例であり、枠ＩＤは枠を識別するための識別情報である。「左」の項目の値は、枠の左端が、横方向に並んだブロックの左端から何番目に含まれるかを示す。「上」の項目の値は、枠の上端が、縦方向に並んだブロックの上から何番目に含まれるかを示す。「高さ」の項目の値は、枠の高さ（縦方向の範囲）が、縦方向に並んだブロックのいくつ分であるかを示す。「幅」の項目の値は、枠の幅（横方向の範囲）が、横方向に並んだブロックのいくつ分であるかを示す。
なお、高さ及び幅については、画素数を１ブロック辺りの画素数で割って求めてもよいし、枠がいくつのブロックにまたがって存在しているかをカウントして求めてもよい。
【００３７】
以上のようにブロック数を基準に枠定義データを作成すると、サイズずれの影響が除去できる他、多少の位置ずれの誤差も吸収できる。ステップＳ１２での補正で傾きや平行移動による位置ずれが除去しきれず多少残ったとしても、枠の位置が本来位置するブロックから外れない程度の誤差であれば、生成される枠定義データの値が同じになるためである。以下に述べるようにハッシュ値をフォームデータとの比較に用いる場合、値が１でも異なれば、「一致しない」という判定結果となってしまい、どの程度異なるのかもわからないため、このように、誤差を吸収できることの効果は大きい。従って、フォーム間の違いを表現するために必要な分解能が得られる範囲で、ブロック数はなるべく少なくすることが望ましい。
以上のステップＳ１２乃至Ｓ１５の処理は、画像解析部１２２の機能と対応する処理であり、画像解析手順の処理である。
【００３８】
図４の説明に戻ると、ＣＰＵ１０１は次に、ステップＳ１５で生成した枠定義情報のハッシュ値を求める（Ｓ１６）。そして、フォーム登録部１２４に登録されているフォームの中に、ステップＳ１６で求めたハッシュ値と同じハッシュ値を持つフォームがあるか否か判断する（Ｓ１７）。
【００３９】
ここで、図８に、フォーム登録部１２４に登録されているフォームを示すフォームデータの例を示す。
図８に示すのは、フォーム１つ分のフォームデータである。フォームＩＤは、フォームを識別するための識別情報である。項目ＩＤは、フォーム中に含まれる項目を識別するための識別情報である。項目名は、該当する項目の名称である。項目タイプは、該当する項目のデータ型である。「左」、「上」、「高さ」、「幅」の各項目の値は、該当する項目の情報を記載する枠の位置及びサイズを示すものであり、図７に示した枠定義データと同様、ブロック数を基準にカウントした値である。
【００４０】
従って、処理対象の画像が、フォームデータが示すフォームの画像であれば、ステップＳ１５で生成した枠定義情報と、該当のフォームデータ中に含まれる枠の情報とは、一致するはずである。上述の傾き、位置ずれ及びサイズずれの補正を行った後であれば、これらの情報は完全に一致することが期待できる。
【００４１】
そこで、各値を１つずつ比較してもよいが、処理を高速化するため、枠定義情報全体を、その情報と一意に対応する一つの値であるハッシュ値に変換し、フォームデータ中に含まれる枠の情報のハッシュ値と比較するようにしている。このようにすれば、ハッシュ処理の必要はあるものの、１つのフォームデータにつき１つの値を比較するだけでよいので、処理負荷を低減できる。
【００４２】
フォーム登録部１２４に登録されているフォームデータについては、図９に示すように、予めハッシュ値を計算してフォームＩＤと対応付けて比較用枠定義データとして登録しておけばよい。もちろん、枠定義情報のハッシュ値と、フォームデータ中の枠の情報のハッシュ値とは、同じアルゴリズムで求める。なお、枠ＩＤについては、ハッシュ処理の対象としてもしなくてもよい。
【００４３】
図４の説明に戻ると、ステップＳ１７でＹｅｓであった場合、処理対象の画像と枠の位置が一致するフォームがあったことがわかる。そこで、ＣＰＵ１０１は、一致したフォームが１つであったか否か判断する（Ｓ１８）。１つであった場合、処理対象の画像はその一致したフォームに当てはまると判断できるため、一致したフォームを、情報の取り出しに用いるフォームとして選択する（Ｓ１９）。
【００４４】
一方、ステップＳ１８で１つでなかった（複数であった）場合、処理対象の画像がどのフォームの画像であるかをまだ特定できないため、項目名を比較する。すなわち、ＣＰＵ１０１は、処理対象の画像のうちステップＳ１３で抽出した文字領域に対してＯＣＲ（optical  character  recognition）処理を行う。そして、その結果取得した文字列を、ステップＳ１７でハッシュ値が一致した各フォームのフォームデータに含まれる項目名と比較する（Ｓ２０）。ＣＰＵ１０１は、その比較結果に基づき、処理対象の画像は、項目名の文字列のうちＯＣＲ結果の文字列に含まれているものの割合が最も高いフォームに当てはまると判断する。そして、このフォームを情報の取り出しに用いるフォームとして選択する（Ｓ２１）。
以上のステップＳ１６乃至Ｓ２１の処理は、フォーム判定部１２３の機能と対応する処理であり、判定手順の処理である。なお、ステップＳ２１の処理は、すなわち項目名がＯＣＲ結果と最もよく一致するフォームを選択する処理の一例である。
【００４５】
また、いずれの場合も、ＣＰＵ１０１は次に、ステップＳ１９又はステップＳ２１で選択したフォームのフォームデータに従い、ステップＳ１２での補正後の画像データから、各枠内の文字の情報を取り出す（Ｓ２２）。この取り出しのためには、フォームデータが示す各枠の領域内に対し、手書き文字を検出するためのＯＣＲ処理を行えばよい。また、ＯＣＲ処理により得られた文字列は、項目毎に、その項目の項目タイプが示すデータ型に変換する。
【００４６】
図１０に、ステップＳ２２で取り出す情報の例を示す。図１０に示す情報は、帳票１枚から取り出した情報という意味で、「帳票データ」と呼ぶ。
また、図１０は、図８に示したフォームデータに従い、項目ＩＤが１〜３の各枠内に対してＯＣＲ処理を行った結果、それぞれ「001234」、「理光  太郎」及び「2013/08/12」の文字列が得られた場合の例である。なお、各項目の項目タイプに従い、このうち「001234」は数値として、「2013/08/12」は日付として取り出す。
このステップＳ２２の処理は、情報取得部１２６の機能と対応する処理であり、ステップＳ１９又はＳ２１から進んだ場合は、第１情報取得手順の処理である。
その後、ＣＰＵ１０１は、ステップＳ２２で取り出した情報を、取り出しに用いたフォームと対応付けて情報登録部１２７に登録させ（Ｓ２３）、処理を終了する。
【００４７】
図１１に、情報登録部１２７における情報の登録状況の例を示す。図１１に示す情報は、複数の帳票から取り出した情報のリストという意味で、「帳票リストデータ」と呼ぶ。
図１１において、フォームＩＤは、情報の取り出しに用いたフォームのフォームＩＤである。データＩＤは、処理対象とした画像を一意に識別するための識別情報である。項目ＩＤは、情報の取り出しに用いたフォームのフォームデータに含まれる項目ＩＤである。値は、ステップＳ２２で画像データから取り出した該当項目の値である。
すなわち、ステップＳ２３においては、図１０に示した帳票データに一意なデータＩＤを付し、フォームＩＤと対応付けて帳票リストデータに追加する処理を行う。
【００４８】
一方、ステップＳ１７でＮｏの場合、すなわちハッシュ値が一致するフォームがない場合、ＣＰＵ１０１は、処理対象の画像に当てはまるフォームのフォームデータを新規に作成する処理を行う。具体的には、まず、ステップＳ１５で生成した枠定義情報が示す各枠に隣接する文字領域にＯＣＲ処理を行い、得られた文字を、各枠と対応する項目名として取得する（Ｓ２４）。そして、枠定義情報及び取得した項目名から、新たなフォームデータを生成してフォーム登録部１２４に登録する（Ｓ２５）。フォームデータの形式は、図８に示したような、既にフォーム登録部１２４に登録されているものと同じ形式である。
【００４９】
このとき、フォームＩＤは、他のフォームと重複しないように適宜割り当てる。項目ＩＤは、１つのフォームデータ内で重複しないように適宜割り当てる。フォームデータに含まれる枠の情報は、ステップＳ１５で取得した枠定義情報をコピーすればよい。項目タイプは、項目名の値毎に設定すべき項目タイプを予め定めておき、項目名がそのいずれにも当てはまらない場合にはデフォルト値とすることが考えられる。例えば、項目名が「No.」であれば「数値」、「○○日」であれば「日付」、デフォルト値は「文字列」等である。
【００５０】
なお、このように生成したフォームデータを、登録前にユーザに提示し、編集操作を受け付けることができるようにしてもよい。また、特開２００９−３１９３７号公報にあるように、予めユーザから項目名の指定を受け付け、その項目名の文字列に隣接する枠が、その項目名の項目についての枠であると認識するようにしてもよい。
また、図示は省略したが、フォーム登録部１２４にフォームデータを登録する際、そのフォームデータ中に含まれる枠の情報のハッシュ値を計算して、図９に示した比較用枠定義データとしてフォームＩＤと対応付けて登録する。
【００５１】
以上のステップＳ２４及びＳ２５の処理は、フォーム生成部１２５の機能と対応する処理であり、第２情報取得手順の処理の一部である。
以上の後、ＣＰＵ１０１は、ステップＳ２５で登録したフォームを情報の取り出しに用いるフォームとして選択し（Ｓ２６）、ステップＳ２２に進む。ステップＳ２２以下の処理は、ステップＳ１９及びＳ２１から進んだ場合と同じである。ただし、ステップＳ２６から進んだ場合には、ステップＳ２２の処理は、第２情報取得手順の処理の一部である。
【００５２】
以上の図４に示した処理により、データ処理サーバ１００は、処理対象の画像の解析結果に基づき、処理対象の画像が既に登録されているフォームのいずれかに当てはまる場合に、その当てはまるフォームに従って処理対象の画像から情報を取り出すことができる。また、登録されているフォームのいずれにも当てはまらない場合に、上記解析結果に基づき新規にフォームを生成すると共に、その生成したフォームに従って処理対象の画像から情報を取り出すことができる。
従って、データ処理サーバ１００が処理する帳票等の画像の中に、まだデータ処理サーバ１００に登録されていないフォームに従ったものがあった場合でも、画像の内容に従った新規なフォームを生成するため、その画像から容易に情報を取得可能である。
【００５３】
また、生成したフォームをフォーム登録部１２４に登録するため、以後同じフォームの画像を処理する場合には、登録したフォームに従って情報を取得可能である。
また、処理対象の画像がフォームに当てはまるか否かを、画像中の枠の位置とフォームに含まれる枠の位置とを比較して行うため、少ない処理負荷でこの比較が可能である。また、画像中の枠の位置の情報を、その情報と一意に対応する値に置き換え、フォームに含まれる枠の位置の情報を同じ変換手順で変換した値と比較するようにすれば、上記の枠の位置の比較を、より少ない処理負荷で行うことができる。
【００５４】
上記枠の位置の比較を行うに際し、処理対象の画像における枠線の傾き、枠線の平行移動による位置ずれ及び画像の拡大縮小によるサイズずれを補正するようにすれば、より高い精度で比較を行うことができる。処理対象の画像が登録されているフォームのいずれにも当てはまらないと判定した場合には新たにフォームを作成することになるため、処理対象の画像とフォームとの比較の精度を上げることには大きな意味があるといえる。
【００５５】
また、枠の位置が処理対象の画像と一致するフォームを複数発見した場合に、項目名が画像中の文字列と最もよく一致するフォームを、処理対象の画像が当てはまるフォームであると判別するようにしている。このことにより、枠の位置が同じ複数のフォームがある場合でも、これらを区別して、処理対象の画像が当てはまるフォームを探索可能である。
【００５６】
ところで、図４の処理は、データ処理サーバ１００が処理対象の画像から自動的に情報を取り出して登録するものであったが、データ処理サーバ１００は、登録済みのフォームに従った情報の入力を、画像を介さずにユーザから受け付けることも可能である。情報入力受付部１２８について説明した通りである。
この入力受付は、ユーザが選択したフォームのフォームデータに従って、該当のフォームに含まれている各項目について入力を受け付ける欄を備える画面のデータを生成し、そのデータを端末装置３００に送信して画面を表示させて行うことができる。
【００５７】
図１２に、この画面の例を示す。図１２に示す入力受付画面５００は、タイトル５０１と、項目毎の入力欄５０２〜５０４と、送信ボタン５０５及びキャンセルボタン５０６とを備える。
ユーザが端末装置３００を操作してデータ処理サーバ１００にアクセスし、フォーム登録部１２４に登録されているフォームの１つを選択してそのフォームに従ったデータの入力を行うことを指示すると、情報入力受付部１２８が入力受付画面５００のデータを生成する。
【００５８】
情報入力受付部１２８はまず、選択されたフォームのフォームデータに従い、タイトル５０１及び各項目の入力欄５０２〜５０４を作成する。タイトル５０１は、フォームＩＤに基づき作成する。入力欄５０２〜５０４については、項目名と対応するタイトルと、項目タイプと対応する入力欄を設ければよい。図１２の例は、図８に示したフォームデータに従った画面を示し、「No.」と「氏名」についての入力欄５０２，５０３はテキストの入力を受け付け、「日付」についての入力欄５０４は日付の入力を受け付ける。「■」マークは、日付指定用のカレンダーの表示を指示するためのアイコンである。ただし、項目タイプによらず共通の入力欄を用いてもよい。また、これらの表示内容は後述のように編集可能である。
【００５９】
また、送信ボタン５０５及びキャンセルボタン５０６は、フォームデータの内容によらず共通して設ける。送信ボタン５０５は、入力内容を確定させてデータ処理サーバ１００にその登録を指示するためのボタン、キャンセルボタン５０６は、入力内容を登録せずに破棄することを指示するためのボタンである。
【００６０】
情報入力受付部１２８は、以上の入力受付画面５００のデータを端末装置３００に送信し、ディスプレイに表示させる。そして、端末装置３００は、送信ボタン５０５が操作されたことを検出すると、データ処理サーバ１００に対し、入力された情報の登録を要求し、情報入力受付部１２８がその要求に応じて情報登録部１２７に登録を行わせる。登録は、図４の処理による登録と区別せずに、図１１に示した帳票リストデータに対して行えばよい。ただし、データＩＤについては、手入力である旨が識別できる値とするとよい。
【００６１】
以上により、帳票を介さずに、帳票をスキャナ２００に読み取らせた場合と同様にデータ処理サーバ１００にデータ入力を行うことができ、業務の柔軟性を広げることができる。なお、入力受付画面５００により、一旦情報登録部１２７に登録したデータをユーザが編集できるようにしてもよい。
【００６２】
また、データ処理サーバ１００においては、各フォームデータと対応する入力受付画面５００の編集を行うこともできる。フォーム編集部１２９について説明した通りである。
図１３に、データ処理サーバ１００が記憶する、入力受付画面５００の表示内容に関するデータである表示要素データの例を示す。
表示要素データは、各フォームＩＤと対応して用意される。また、各フォームＩＤに関する表示要素データは、図８には示していないが、フォームデータの一部である。そして、フォームデータをフォーム登録部１２４に登録する際に、フォーム生成部１２５が自動的に作成する。
【００６３】
表示要素データにおいては、項目ＩＤ毎に、その項目の入力欄に表示すべき文字列（差し替え用の項目名）を規定する。項目ＩＤの意味は、図８に示したものと共通である。「−」は、差し替えを行わず、図８に示した項目名をそのまま用いることを示す。表示要素データの初期値はこの「−」である。また、項目ＩＤ＝０についての項目名は、タイトル５０１として用いる文字列を示す。
【００６４】
図１４に、図１３に示した表示要素データを図１２に示した入力受付画面に反映させた例を示す。
この入力受付画面５００′では、フォームＩＤ＝１２１の表示要素データに従い、タイトル５０１′が「○○受付票」に、入力欄５０４′のタイトルが「受付日」になっている。他の箇所については図１２の例と同じである。
【００６５】
ユーザは、端末装置３００からデータ処理サーバ１００にアクセスして表示要素データを編集可能である。このことにより、ユーザが内容を理解しやすい画面でデータを入力できるようにすることができる。
なお、ユーザが図８に示したフォームデータに含まれる項目名を編集することを可能としてもよい。このようにしても、同様な効果が得られる。
【００６６】
以上で実施形態の説明を終了するが、この発明において、各装置の具体的な構成、具体的な処理の手順、使用する装置の台数、使用するデータの構成等は、実施形態で説明したものに限るものではない。
例えば、上述の実施形態では、データ処理サーバ１００が、処理対象の画像から取り出した情報を情報登録部１２７に登録する例について説明したが、このようにすることは必須ではない。取り出した情報を登録せず、外部に送信するようにしてもよい。
また、データ処理サーバ１００が取り扱う画像も、帳票の画像に限られることはない。データ処理サーバ１００が上述した機能を全て備えている必要もない。上述の実施形態で述べた構成及びその効果は、特に断らない限り、その構成を単独で適用した場合にも得られるものである。
【００６７】
また、上述した実施形態においてはフォーム登録部１２４及び情報登録部１２７がデータ処理サーバ１００内にある例について説明した。しかし、フォーム登録部１２４及び情報登録部１２７をデータ処理サーバ１００の外部装置に設けてもよい。これらの各部に対して参照及び登録を行う場合にその外部装置にアクセスして行うようにすればよい。
さらに、上述した実施形態におけるデータ処理サーバ１００の機能は、一部を外部装置に持たせるなど、複数の情報処理装置に分散して設けることも考えられる。この場合、その複数の装置が情報処理システムを構成する。また、スキャナ２００あるいは端末装置３００が、上記複数の情報処理装置であってもよい。
【００６８】
また、この発明のプログラムの実施形態は、コンピュータに所要のハードウェアを制御させて上述した実施形態におけるデータ処理サーバ１００の機能を実現させるためのプログラムである。複数のコンピュータを協働させてその機能を実現させる場合も含む。
このようなプログラムは、はじめからコンピュータに備えるＲＯＭや他の不揮発性記憶媒体（フラッシュメモリ，ＥＥＰＲＯＭ等）などに格納しておいてもよい。しかし、メモリカード、ＣＤ、ＤＶＤ、ブルーレイディスク等の任意の不揮発性記録媒体に記録して提供することもできる。それらの記録媒体に記録されたプログラムをコンピュータにインストールして実行させることにより、上述した各手順を実行させることができる。
【００６９】
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部装置あるいはプログラムを記憶手段に記憶した外部装置からダウンロードし、コンピュータにインストールして実行させることも可能である。
また、以上説明してきた各実施形態、動作例及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
【符号の説明】
【００７０】
１：帳票処理システム、１００：データ処理サーバ、１０１：ＣＰＵ、１０２：ＲＯＭ、１０３：ＲＡＭ、１０４：ＨＤＤ、１０５：通信Ｉ／Ｆ、１０６：表示部、１０７：操作部、１０８：システムバス、１２１：画像取得部、１２２：画像解析部、１２３：フォーム判定部、１２４：フォーム登録部、１２５：フォーム生成部、１２６：情報取得部、１２７：情報登録部、１２８：情報入力受付部、１２９：フォーム編集部、２００：スキャナ、３００：端末装置、４００：ネットワーク、５００：入力受付画面、５０１：タイトル、５０２〜５０４：入力欄、５０５：送信ボタン、５０６：キャンセルボタン
【先行技術文献】
【特許文献】
【００７１】
【特許文献１】特開２００９−３１９３７号公報
【図１】
2015153138.tif 000003
【図２】
2015153138.tif 000004
【図３】
2015153138.tif 000005
【図４】
2015153138.tif 000006
【図５】
2015153138.tif 000007
【図６】
2015153138.tif 000008
【図７】
2015153138.tif 000009
【図８】
2015153138.tif 000010
【図９】
2015153138.tif 000011
【図１０】
2015153138.tif 000012
【図１１】
2015153138.tif 000013
【図１２】
2015153138.tif 000014
【図１３】
2015153138.tif 000015
【図１４】
2015153138.tif 000016
【手続補正書】
【提出日】平成26年4月25日(2014.4.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１以上の情報処理装置により構成される情報処理システムであって、
画像を取得する画像取得手段と、
前記画像取得手段が取得した画像を解析する画像解析手段と、
前記画像解析手段による解析結果に基づき、前記画像取得手段が取得した画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否か判定する判定手段と、
前記判定手段がいずれかのフォームに当てはまると判定した場合に、該当てはまるフォームに従って前記画像取得手段が取得した画像から情報を取り出す第１情報取得手段と、
前記判定手段がどのフォームにも当てはまらないと判定した場合に、前記画像解析手段による解析結果に基づき新規にフォームを生成すると共に、該生成したフォームに従って前記画像取得手段が取得した画像から情報を取り出す第２情報取得手段とを備えることを特徴とする情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記第２情報取得手段が生成したフォームを前記フォーム登録手段に登録する手段を備えることを特徴とする情報処理システム。
【請求項３】
請求項１又は２に記載の情報処理システムであって、
前記画像解析手段は、前記取得した画像中にある枠の位置を解析する手段を備え、
前記判定手段は、前記フォーム中の枠の位置と、前記画像解析手段による解析で得られた枠の位置とを比較することにより、前記判定を行うことを特徴とする情報処理システム。
【請求項４】
請求項３に記載の情報処理システムであって、
前記画像解析手段は、前記解析により得られた複数の枠の位置の情報を、該情報と一意に対応する値に変換する手段を備え、
前記判定手段は、前記フォーム中の複数の枠の位置の情報と一意に対応する値と、前記画像解析手段による変換で得られた値とを比較することにより、前記判定を行うことを特徴とする情報処理システム。
【請求項５】
請求項３又は４に記載の情報処理システムであって、
前記画像解析手段は、前記取得した画像中にある文字列を取得する手段を備え、
前記判定手段は、枠の位置が前記画像取得手段の取得した画像と一致するフォームを複数発見した場合に、項目名が前記画像解析手段の取得した文字列と最もよく一致するフォームを、前記画像取得手段の取得した画像が当てはまるフォームであると判定することを特徴とする情報処理システム。
【請求項６】
請求項３乃至５のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像に含まれる枠線の傾きを補正する手段を備えることを特徴とする情報処理システム。
【請求項７】
請求項３乃至６のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像に含まれる枠線の平行移動による位置ずれを補正する手段を備えることを特徴とする情報処理システム。
【請求項８】
請求項３乃至７のいずれか一項に記載の情報処理システムであって、
前記画像解析手段は、前記画像取得手段が取得した画像の拡大縮小によるサイズずれを補正する手段を備えることを特徴とする情報処理システム。
【請求項９】
請求項１乃至８のいずれか一項に記載の情報処理システムであって、
前記第１情報取得手段及び前記第２情報取得手段が取り出した情報を、該取り出しに用いたフォームに関する入力情報として情報登録手段に登録する手段と、
前記フォーム登録手段に登録されているフォームに基づき、該フォームに従った入力情報をユーザから受け付ける入力受付手段と、
前記入力受付手段が入力を受け付けた情報を、該受付に用いたフォームに従った入力情報として情報登録手段に登録する手段とを備えることを特徴とする情報処理システム。
【請求項１０】
請求項１乃至９のいずれか一項に記載の情報処理システムであって、
前記フォーム登録手段に登録されているフォームの情報をユーザの操作に従って編集する編集手段を備えることを特徴とする情報処理システム。
【請求項１１】
１の情報処理装置が、又は複数の情報処理装置が協働して実行する情報処理方法であって、
画像を取得する画像取得手順と、
前記画像取得手順で取得した画像を解析する画像解析手順と、
前記画像解析手順による解析結果に基づき、前記画像取得手順で取得した画像が所定のフォーム登録手段に登録されているフォームのいずれかに当てはまるか否か判定する判定手順と、
前記判定手順でいずれかのフォームに当てはまると判定した場合に、該当てはまるフォームに従って前記画像取得手順で取得した画像から情報を取り出す第１情報取得手順と、
前記判定手順でどのフォームにも当てはまらないと判定した場合に、前記画像解析手順による解析結果に基づき新規にフォームを生成すると共に、該生成したフォームに従って前記画像取得手順で取得した画像から情報を取り出す第２情報取得手順とを備えることを特徴とする情報処理方法。
【請求項１２】
１のコンピュータを、又は複数のコンピュータを協働させて、
請求項１乃至１０のいずれか一項に記載の情報処理システムとして機能させるためのプログラム。