特許第6859977号(P6859977)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧
特許6859977画像処理装置、画像処理システム、画像処理方法およびプログラム
<>
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000002
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000003
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000004
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000005
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000006
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000007
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000008
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000009
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000010
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000011
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000012
  • 特許6859977-画像処理装置、画像処理システム、画像処理方法およびプログラム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6859977
(24)【登録日】2021年3月30日
(45)【発行日】2021年4月14日
(54)【発明の名称】画像処理装置、画像処理システム、画像処理方法およびプログラム
(51)【国際特許分類】
   G06K 9/03 20060101AFI20210405BHJP
   G06K 9/20 20060101ALI20210405BHJP
【FI】
   G06K9/03 Z
   G06K9/20 340K
   G06K9/20 340C
【請求項の数】7
【全頁数】23
(21)【出願番号】特願2018-71140(P2018-71140)
(22)【出願日】2018年4月2日
(65)【公開番号】特開2019-185137(P2019-185137A)
(43)【公開日】2019年10月24日
【審査請求日】2020年6月22日
【早期審査対象出願】
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100106909
【弁理士】
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【弁理士】
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】近藤 克彦
(72)【発明者】
【氏名】▲瀬▼川 哲
(72)【発明者】
【氏名】中谷 裕一
(72)【発明者】
【氏名】杉本 充
(72)【発明者】
【氏名】日高 康
(72)【発明者】
【氏名】秋山 隼哉
【審査官】 佐藤 実
(56)【参考文献】
【文献】 特開平05−258099(JP,A)
【文献】 特開2014−182477(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 9/00 − 9/82
(57)【特許請求の範囲】
【請求項1】
複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての前記第一特徴量を選択する第一特徴量選択部と、
前記文字認識対象となる対象文書画像の文字認識処理を行う文字認識処理部と、
前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として選択する文字列選択部と、
前記文字認識処理の結果得られる文字列のうちの何れも前記文字列選択部により前記特定項目の文字列として選択されない場合、前記特定項目の文字列として事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かの判定結果を取得する判定結果取得部と、
前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う機械学習部と、
を備える画像処理装置。
【請求項2】
前記第一特徴量選択部は、前記文書画像中での前記特定項目の文字列の位置を示す前記第一特徴量を選択し、
前記判定結果取得部は、前記特定項目の文字列の位置を示した前記文書画像と、前記事前入力された文字列とをユーザに提示して、前記文書画像に示される前記特定項目の文字列と前記事前入力された文字列とが一致するか否かの前記判定結果を取得する
請求項1に記載の画像処理装置。
【請求項3】
前記機械学習部は、前記文字列選択部が前記文字認識処理の前記結果の文字列のうちの何れかを前記特定項目の文字列として選択した場合、および、前記文字認識処理の前記結果の文字列のうちの何れも前記特定項目の文字列として選択しなかった場合の何れも前記機械学習を行う、
請求項1または請求項2に記載の画像処理装置。
【請求項4】
前記機械学習部は、前記文字列選択部が前記文字認識処理の前記結果の文字列のうちの何れも前記特定項目の文字列として選択しなかった場合に前記機械学習を行い、前記文字列選択部が前記文字認識処理の前記結果の文字列のうちの何れかを前記特定項目の文字列として選択した場合は前記機械学習の実行を抑制する、
請求項1または請求項2に記載の画像処理装置。
【請求項5】
文書画像の種別毎かつ特定項目毎に、当該特定項目の文字列の特徴に関する第一特徴量を選択する第一特徴量選択手段と、
対象文書画像に対して文字認識処理を行う文字認識手段と、
前記文字認識処理の結果として得られる文字列のうち、前記第一特徴量に対応する第一の文字列を、前記特定項目の文字列として選択する文字列選択手段と、
前記文字認識処理の結果得られる文字列のいずれも前記文字列選択手段により前記特定項目の文字列として選択されない場合、前記文字認識処理の結果得られる文字列と、前記特定項目の文字列として事前に入力される第二の文字列とが一致するか否かの判定結果を取得する判定手段と
前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う機械学習手段と、
を備える画像処理システム。
【請求項6】
複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての前記第一特徴量を選択し、
前記文字認識対象となる対象文書画像の文字認識処理を行い、
前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として選択し、
前記文字認識処理の結果得られる文字列のうちの何れも、前記特定項目の文字列として選択されない場合、
事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かの判定結果を取得
前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う、
画像処理方法。
【請求項7】
コンピュータに、
複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての前記第一特徴量を選択し、
前記文字認識対象となる対象文書画像の文字認識処理を行い、
前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として択し、
前記文字認識処理の結果得られる文字列のうちの何れも、前記特定項目の文字列として選択されない場合、
事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かの判定結果を取得
前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う、
処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理システム、画像処理方法およびプログラムに関する。
【背景技術】
【0002】
文字認識に関連して、特許文献1に記載のOCR入力確認修正方法では、文字認識とは別の方法で計算ログを用意しておく。そして、この方法では、計算ログとOCR読み込みデータとを突き合わせ、不一致がない場合には画面表示せずに次のエラーのある受注票まで読み飛ばしていく。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平09−223187号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
計算ログなど事前に得られたデータとOCR処理で得られたデータとが一致する場合だけでなく、他の場合にもOCR処理結果を確認する作業者の負担を軽減することができればさらに好ましい。
【0005】
本発明は、上述の課題を解決することのできる画像処理装置、画像処理システム、画像処理方法およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
本発明の第1の態様によれば、画像処理装置は、複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての第一特徴量を選択する第一特徴量選択部と、前記文字認識対象となる対象文書画像の文字認識処理を行う文字認識処理部と、前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として選択する文字列選択部と、前記文字認識処理の結果得られる文字列のうちの何れも前記文字列選択部により前記特定項目の文字列として選択されない場合、前記特定項目の文字列として事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かのユーザ判定結果を取得する判定結果取得部と、前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う機械学習部と、を備える。
本発明の第2の態様によれば、画像処理システムは、文書画像の種別毎かつ特定項目毎に、当該特定項目の文字列の特徴に関する第一特徴量を選択する第一特徴量選択手段と、対象文書画像に対して文字認識処理を行う文字認識手段と、前記文字認識処理の結果として得られる文字列のうち、前記第一特徴量に対応する第一の文字列を、前記特定項目の文字列として選択する文字列選択手段と、前記文字認識処理の結果得られる文字列のいずれも前前記文字列選択手段により前記特定項目の文字列として選択されない場合、前記文字認識処理の結果得られる文字列と、前記特定項目の文字列として事前に入力される第二の文字列とが一致するか否かの判定結果を取得する判定手段と、前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う機械学習手段と、を備える。
【0007】
本発明の第3の態様によれば、画像処理方法は、複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての第一特徴量を選択し、前記文字認識対象となる対象文書画像の文字認識処理を行い、前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として選択し、前記文字認識処理の結果得られる文字列のうちの何れも、前記特定項目の文字列として選択されない場合、事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かのユーザ判定結果を取得し、前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う、ことを含む。
【0008】
本発明の第4の態様によれば、プログラムは、コンピュータに、複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ前記文書画像に含まれる特定項目毎に、前記特定項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての第一特徴量を選択し、前記文字認識対象となる対象文書画像の文字認識処理を行い、前記文字認識処理の結果の文字列のうち前記第一特徴量に対応する文字列を特定項目の文字列として選択し、前記文字認識処理の結果得られる文字列のうちの何れも、前記特定項目の文字列として選択されない場合、事前入力された文字列と、前記文字認識処理の結果の文字列とが一致するか否かのユーザ判定結果を取得し、前記事前入力された文字列と、前記文字認識処理の結果の文字列とが一致すると判定された場合、前記事前入力された文字列を前記特定項目の文字列として用いて、前記第一特徴量を取得する機械学習を行う、処理を実行させるためのプログラムである。
【発明の効果】
【0009】
この発明によれば、事前に得られたデータとOCR処理で得られたデータとが一致する場合だけでなく、他の場合にもOCR処理結果を確認する作業者の負担を軽減できる。
【図面の簡単な説明】
【0010】
図1】実施形態に係る画像処理装置を含む画像処理システムの装置構成例を示す図である。
図2】実施形態に係る画像処理装置のハードウェア構成例を示す図である。
図3】第一実施形態に係る画像処理装置の機能構成を示す概略ブロック図である。
図4】文書帳票の一例を示す図である。
図5】第一実施形態に係るデータベースが記憶する記録テーブルの概要を示す図である。
図6】第一実施形態に係る画像処理装置の処理フローを示す第一の図である。
図7】第一実施形態に係る画像処理装置の処理フローを示す第二の図である。
図8】第一実施形態に係る画像処理装置の処理フローを示す第二の図である。
図9】第二実施形態に係る画像処理装置の機能構成を示す概略ブロック図である。
図10】第二実施形態に係る画像処理装置の処理フローを示す第一の図である。
図11】第二実施形態に係る画像処理装置の処理フローを示す第二の図である。
図12】実施形態に係る画像処理装置の構成の例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0012】
図1は、実施形態に係る画像処理装置を含む画像処理システムの装置構成例を示す図である。
図1に示す構成で、画像処理システム100は画像処理装置1、画像読取装置2、記録装置3およびデータベース4により構成される。
画像処理装置1は画像読取装置2と通信ケーブルにより接続されている。画像読取装置2は光学的に文書帳票などの画像データを取得して画像処理装置1へ出力する。画像処理装置1は文書帳票の画像データをOCR処理し文字認識する。画像処理装置1は文字認識結果を記録装置3に出力し、記録装置3がその文字認識結果をデータベースに記録する。なお、画像処理装置1が対象とする文書は、特定の種類のものに限定されない。OCR処理可能ないろいろな文書を、画像処理装置1の処理対象とすることができる。
【0013】
データベース4は画像処理装置1と記録装置3とに接続されている。データベース4は記録装置3から過去に登録された複数の文書帳票の画像データとその画像データに含まれる文字列のうち記録対象となる文字列を示す記録文字列の対応関係を記憶している。記録文字列が示す文字列は文書帳票に記述される文字列のうちデータベース4に記録、保存しておくべき重要な文字列である。画像処理システム100を利用する作業者は予め、記録装置3を用いて過去に登録された複数の文書帳票の画像データとその画像データに含まれる文字列のうちの記録文字列をデータベース4に登録しておく。
作業者を、画像処理装置1のユーザ、または単にユーザとも称する。
【0014】
そしてデータベース4には文書帳票の画像データとその画像データに含まれる文字列の情報のうち記録対象となる文字列を示す記録文字列の情報との対応関係が、多くの文書帳票について十分に記録されているものとする。このような状態において、画像処理装置1は処理を行う。
【0015】
図2は画像処理装置のハードウェア構成例を示す図である。
図2に示す構成で、画像処理装置1は、画像処理装置本体10と、表示装置17と、入力デバイス18とを備える。
画像処理装置本体10は、CPU(Central Processing Unit)11、IF(Interface)12、通信モジュール13、ROM(Read Only Memory)14、RAM(Random Access Memory)15、HDD(Hard Disk Drive)16などの構成を備えたコンピュータである。通信モジュール13は画像読取装置2、記録装置3、データベース4との間で無線通信を行うものであっても、有線通信を行うものであってもよく、それら2つの機能を有していてもよい。
表示装置17は、例えば液晶パネルまたはLED(Light Emitting Diode)パネル等の表示画面を備える。
入力デバイス18は、例えばキーボードおよびマウス、あるいは、表示装置17の表示画面に設けられてタッチパネルを構成するタッチセンサ、あるいはこれらの組み合わせなど、ユーザ操作を受ける装置である。
【0016】
<第一実施形態>
図3は、第一実施形態に係る画像処理装置1の機能構成を示す概略ブロック図である。
通信部110は、図2の通信モジュールを用いて構成され、他の装置と通信を行う。特に、通信部110は、画像読取装置2、記録装置3、データベース4と通信を行う。
表示部120は、図2の表示装置17を用いて構成され、各種画像を表示する。
【0017】
操作入力部130は、図2の入力デバイスを用いて構成され、ユーザ操作を受け付ける。
記憶部180は、図2のROM14、RAM15およびHDD16を用いて構成され、各種データを記憶する。
制御部190は、図2のCPU11が、記憶部180(図2のROM14、RAM15およびHDD16)からプログラムを読み出して実行することで構成される。制御部190は、画像処理装置1の各部を制御して各種処理を実行する。
取得部191は、文書帳票の画像データを取得する。
【0018】
記録部193は、新たな文書帳票の画像データにおける文字列の特徴量を用いて、新たな文書帳票の画像データから読み取った文字列の情報のうちの記録文字列を抽出して記録する。上記のように記録文字列は、記録対象の文字列である。すなわち、記録文字列は画像処理装置1がOCR処理結果から取得して出力すべき特定項目の文字列である。
記録部193は第一特徴量選択部の例に該当し、文書画像の種別毎かつ特定項目毎の第一特徴量のうち、文字認識対象の文書画像についての第一特徴量を選択する。第一特徴量は記録文字列の特徴を示し、ここでは、第一特徴量には文書画像における文字列の位置を示す座標情報が含まれる。従って、記録部193は、文書画像中での特定項目の文字列の位置を示す第一特徴量を選択する。
【0019】
また、記録部193は文字列選択部の例に該当し、文字認識処理の結果の文字列のうち第一特徴量に対応する特定項目の文字列を選択する。但し、記録部193が常に特定項目の文字列の選択に成功するとは限らない。例えばOCR処理の結果によっては、記録部193が、特定項目の文字列を選択できない場合もある。また、記録部193が、選択した文字列の値が、特定項目の文字列の本来の値と異なっている場合もある。
OCR処理結果から特定項目の文字列を適切に取得できなかった場合、画像処理装置1は、作業者による特定項目の文字列の入力または修正を受ける。
また、画像処理装置1が、特定項目の文字列として事前入力された文字列(事前入力データ)を利用できる場合がある。事前入力データが得られるケースの例として、例えば経理部の担当者が伝票をOCR処理する際に、営業部の担当者が取引内容の入力として伝票の内容の一部を入力していた場合など、業務フロー等で手入力されている場合が挙げられる。
【0020】
特徴量抽出部192は、複数の文書帳票の画像データの認識処理結果に基づいて、文書帳票の画像データに含まれる記録文字列の特徴を示す第一特徴量を文書帳票の画像データ毎に抽出する。また、特徴量抽出部は文字認識処理部の例に該当し、文字認識対象の文書画像の文字認識処理(OCR処理)を行う。特徴量の抽出を特徴量の生成とも称する。
また、特徴量抽出部192は機械学習部の例に該当し、事前入力された文字列と特定項目の文字列とが一致すると判定された場合、事前入力された文字列を用いて処理を行う。具体的には、特徴量抽出部192は、事前入力された文字列を用いて第一特徴量を更新する。従って、特徴量抽出部192は、文字認識結果の文字列の中から特定項目の文字列を選択するための情報を取得する機械学習に、事前入力された文字列を用いる。ここで、特徴量抽出部192が、記録部193が文字認識結果の文字列の中から特定項目の文字列の選択に失敗した場合のみ第一特徴量を更新するようにしてもよいし、成功した場合も第一特徴量を更新するようにしてもよい。従って、特徴量抽出部192は、記録部193が文字認識結果の文字列の中から特定項目の文字列を選択した場合および選択しなかった場合の何れも機械学習を行うようにしてもよい。
【0021】
ユーザ判定結果取得部196は、記録部193が文字認識の結果の文字列のうち何れも定項目の文字列として選択しなかった場合、事前入力された文字列と特定項目の文字列とが一致するか否かのユーザ判定結果を取得する。具体的には、ユーザ判定結果取得部196は、特定項目の文字列の位置を示した文書画像と、事前入力された文字列とをユーザに提示して、前記文書画像に示される前記特定項目の文字列と前記事前入力された文字列とが一致するか否かのユーザ判定結果を取得する。
【0022】
このような処理により画像処理装置1は新たな文書帳票の画像データに含まれる記録するべき文字列情報の記録の労力を軽減する。
【0023】
図4は文書帳票の一例を示す図である。
この図が示すように文書帳票には、その文書を作成した企業のマーク、作成日、作成担当者、文書内容が、その文書帳票に特有のフォーマットで記述されている。文書内容は、例えば文書帳票が発注票であれば発注した商品名やその発注個数などの情報の組が1つまたは複数示される。作業者はある1つの文書帳票に基づいて、その文書帳票に記述されている文字列のうち記録すべき特定項目の文字列(記録文字列)を、記録装置3を用いてデータベース4へ記録する。具体的には作業者は文書帳票を見ながら記録装置3がデータベース4に記録すべき記録文字列を入力する。また作業者は文書帳票の画像データを画像読取装置2に読み込ませる。文書帳票は作業者の操作に基づいて画像読取装置2が読み取り画像処理装置1へ出力する。そして記録装置3は作業者の操作と画像処理装置1の制御とに基づいて、1つの文書帳票についての画像データと、その文書帳票に記述されている文字列のうち記録文字列を対応付けてデータベース4に記録する。図4の例においては、日付51、発注先52、商品名53、数量54、金額55が記録文字列である。文書帳票5には作業者によって記録されない非記録文字列等のその他の情報も印字されている。当該情報は例えば文書帳票を発行した発注者の名称501、発注者のエンブレム画像502、文書帳票のタイトル503、挨拶文504などである。
【0024】
図5はデータベースが記憶する記録テーブルの概要を示す図である。
図5で示すようにデータベース4は文書帳票についての画像データと、その文書帳票に記述されている文字列のうち記録文字列を対応付けて記録テーブルに記憶する。
【0025】
図6は第一実施形態に係る画像処理装置の処理フローを示す第一の図である。図6は、画像処理装置1が第一特徴量を抽出する処理手順の例を示す。
次に画像処理装置1の処理フローについて順を追って説明する。
まずデータベース4にはある文書帳票についての画像データと、その文書帳票に記述されている記録文字列との組み合わせが、同じ書式(Format)の文書帳票複数枚分記録されている。例えば図4で示す文書帳票5の書式の記録文字列情報(記録文字列を示す情報)が複数枚分記録されているとする。
【0026】
これら画像データと記録文字列情報との組み合わせとして、例えば過去の業務で扱われた文書帳票の画像データおよび記録文字列情報を用いることができる。過去の業務から画像データおよび記録文字列情報を必要量確保できる場合、画像処理装置に第一特徴量を取得させるために画像データおよび記録文字列情報を別途用意する必要はない。
このような状態で作業者が画像処理装置1を起動し、当該画像処理装置1へ処理開始を指示する。
【0027】
画像処理装置1の取得部191は、通信部110を制御してデータベース4から文書帳票の画像データとその画像データに対応する記録文字列の情報とを読み取る(ステップS601)。取得部191は画像データと記録文字列とを特徴量抽出部192へ出力する。特徴量抽出部192は画像データをOCR処理して画像データ中の全ての文字列と、当該文字列の範囲を示す画像データ内の座標とを検出する(ステップS602)。なお文字列は複数の文字によって構成される文字の纏まりである。特徴量抽出部192は他の文字との間隔などによってその1つの纏まりの範囲を解析し、その範囲に含まれる1つまたは複数の文字を文字列として抽出すると共に、その画像データ内の文字列の範囲を示す座標を検出する。文字列として含まれる文字は、表意文字、表音文字などの記号、マーク、アイコン画像などを含んでよい。
【0028】
特徴量抽出部192はOCR処理により画像データから抽出した文字列と、画像データと共にデータベース4から読み取った記録文字列とを比較する。特徴量抽出部192はOCR処理により画像データから抽出した文字列のうち、記録文字列の文字情報と一致した画像データ中の文字列と、その文字列に含まれる文字の属性と、その範囲の座標とを特定する(ステップS603)。
【0029】
ここでいう文字の属性(文字属性)は、数字、アルファベット、ひらがな、漢字、文字数、文字高さ、フォントなどにより表される情報である。また文字列の範囲の座標は、文書帳票における文字列の位置を示す座標である。例えば、文字列の範囲の座標は、文字列に含まれる先頭文字の座標、終了文字の座標などを示す情報であってもよい。以下、文字列に含まれる文字の属性と文字列の範囲の座標とを総称して、文字列の属性または文字列属性と表記する。
【0030】
また、ここでの文字情報は、文字列のみであってもよいし、文字列属性を含んでいてもよい。すなわち、特徴量抽出部192が、記録文字列と画像データ中の文字列とが文字列として同一か否かを判定するようにしてもよい。あるいは、特徴量抽出部192が、文字の同一性に加えて、文字列属性の同一性を判定するようにしてもよい。
【0031】
なお、特徴量抽出部192が記録文字列と文字情報が一致する文字列を一意に特定できない場合、画像処理装置1が、その文書画像を処理対象(第一特徴量の抽出対象)から除外するようにしてもよい。あるいは、画像処理装置1が、記録文字列の候補それぞれの範囲を枠で示した画像を表示部120に表示させ、作業者によって選択された文字列に記録文字列を特定するようにしてもよい。ここでいう記録文字列の候補は、文字情報が記録文字列の文字情報と一致した文字列のうち、一意に特定されていないと判定された記録文字列に対応付けられている文字列である。また、ここでいう記録文字列の特定は、文書帳票における文字列のうち何れか1つを、1つの記録文字列に決定することである。
特徴量抽出部192が、1つの記録文字列の文字情報に対して、文書帳票における複数の文字列それぞれの文字情報が一致すると判定した場合、これら複数の文字列が、その記録情報の候補となる。作業者が、これら複数の文字列のうち何れか1つを選択することで、記録文字列が一意に特定される。
【0032】
次に、特徴量抽出部192は、文書帳票毎かつ記録文字列毎に抽出した文字列属性を用いて、同じ書式の文書帳票に共通かつ記録文字列毎の特徴量を抽出する(ステップS604)。
具体的には、特徴量抽出部192は、記録文字列毎に、複数の文書帳票におけるその記録文字列の文字列属性を解析して、1つの記録文字列に1つの特徴量を抽出する。
特徴量抽出部192が、同じ書式の文書帳票に共通かつ記録文字列毎の特徴量を抽出する方法は、特定の方法に限定されない。例えば、特徴量抽出部192が、複数の文書帳票から得られた複数の文字列属性について、先頭の文字の座標、末尾の文字の座標、文字の種類、文字の高さ、フォントの種類などの項目毎に最頻値(Mode)を求めるようにしてもよい。また、特徴量抽出部192が、先頭の文字の座標、末尾の文字の座標、文字の高さ、文字間の距離など数値で示される属性について項目毎に平均値(Average)または中央値(Median)を求めるようにしてもよい。また、特徴量抽出部192が、数値で表される項目について、その最大値および最小値を特徴量とするなど、範囲を有する特徴量、あるいは、複数の数値で表される特徴量を用いるようにしてもよい。また、特徴量抽出部192が、文字の種類、フォントの種類など数値以外の属性を数値化して特徴量を求めるようにしてもよい。また、特徴量抽出部192が、公知の機械学習アルゴリズムを用いて特徴量を抽出するようにしてもよい。
特徴量抽出部192が、文書帳票の1つの書式かつ1つの記録文字列について複数の数値を取得した場合、これら複数の数値をベクトル化して1つのベクトルの特徴量を抽出するようにしてもよい。
【0033】
特徴量抽出部192が抽出した、同じ書式の文書帳票に共通かつ記録文字列毎の特徴量を第一特徴量と称する。特徴量抽出部192は、同じ書式の複数枚の文書帳票を用いて、その書式における記録文字列それぞれの第一特徴量を抽出する。第一特徴量は記録文字列を抽出するための特徴量である。第一特徴量に、文字の属性を示す情報、文字列の範囲を示す座標の何れか、またはこれらの組み合わせが含まれていてもよい。
特徴量抽出部192は、記録文字列毎に得られた第一特徴量を、文書帳票の書式の識別子に紐づけてデータベース4に記録する(ステップS605)。
【0034】
例えば特徴量抽出部192は、図4の文書帳票5の書式に含まれる記録文字列である日付51、発注先52、商品名53、数量54、金額55それぞれの、文字属性、文字列の範囲を示す座標などを示す各第一特徴量を、文書帳票5の書式識別子に紐づけてデータベース4に記録する。
ステップS605の後、画像処理装置1は、図6の処理を終了する。
【0035】
以上の処理により画像処理装置1は、作業者の記録文字列を記録する労力を軽減するために利用する情報(第一特徴量)を抽出してデータベース4に蓄積することができる。これにより画像処理装置1は新たな文書帳票の画像データの入力を受けて、その文書帳票に含まれる記録文字列を自動で、または半自動でデータベース4に記録していくことができる。図7および図8を参照して、その処理について説明する。
【0036】
図7は第一実施形態に係る画像処理装置の処理フローを示す第二の図である。図7は、画像処理装置1が、新たに入力された画像データから記録文字列を抽出する処理手順の例を示す。
作業者は新たな文書帳票を画像読取装置2に読み取らせる操作を行う。これにより画像読取装置2は文書帳票の画像データを生成して画像処理装置1へ出力(送信)する。画像処理装置1の取得部191は、通信部110の受信データから画像データを取得する(ステップS701)。取得部191は画像データを特徴量抽出部192へ出力する。特徴量抽出部192は、帳票に対応する学習結果をデータベース4から取得する(ステップS702)。例えば、特徴量抽出部192は記録文字列毎に、その記録文字列の読取位置(座標情報)および文字種情報を示す第一特徴量を学習結果として取得する。
【0037】
また、特徴量抽出部192は、画像読取装置2から得られた画像データをOCR処理して、文字列と、その文字列に含まれる文字の特徴(文字属性)と、その文字列の範囲の画像データ中の座標とを文字列毎に検出する(ステップS703)。学習結果が示す位置情報と、OCR処理で得られた位置情報とを比較することで、特徴量抽出部は、OCR処理で得られた各文字列が、取得対象の文字列(記録文字列)か否かを判定できる。
次に、画像処理装置1は、学習結果が示す読取位置毎に処理を行うループL1を開始する(ステップS704)。ループL1で処理対象になっている読取位置をM番目の読取位置と称する。ループL1では、画像処理装置1は、ループ内処理を行う(ステップS705)。
記録文字列を読取位置の文字列、または、読取文字列とも称する。
【0038】
図8は、第一実施形態に係る画像処理装置の処理フローを示す第三の図である。図8は、画像処理装置1がステップS705で行う処理の手順を示す。
図8の処理で、記録部193は、M番目の読取位置の文字列の事前入力データがあるかを判定する(ステップS801)。事前入力データ無しと判定した場合(ステップS801:NO)、記録部193は、M番目の読取位置の文字列をOCR処理で読み取れたか否かを判定する(ステップS802)。読み取れなかったと記録部193が判定した場合(ステップS802:NO)、画像処理装置1は、M番目の読取位置文字列について作業者によるキー入力を受ける(ステップS803)。例えば表示部120が、文書帳票の画像上で読取位置を矩形で示す入力依頼画面を表示し、操作入力部130が文字列の入力操作を受ける。
そして、記録部193は、キー入力内容(キー入力で得られた文字列)とOCR処理結果とを含む学習用データを生成する(ステップS804)。ここでの学習用データは、特徴量抽出部192が第一特徴量を更新する機械学習のための学習用データである。
ステップS804の後、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0039】
一方、ステップS802でM番目の読取位置の文字列をOCR処理で読み取れたと記録部193が判定した場合(ステップS802:YES)、作業者がOCR処理で得られた文字列と文書帳票の画像とを比較する(ステップS811)。画像処理装置1は、OCR処理で得られた文字列に誤りがあるかについての作業者の判定を受ける(ステップS812)。具体的には、表示部120がユーザ判定結果取得部196の制御に従って、OCR処理で得られた文字列と文書帳票の画像とを表示する。表示部120は、文書帳票の画像上で読取位置を矩形で示す入力依頼画面を表示する。そして、操作入力部130が、作業者の判定結果の入力操作を受け付ける。ユーザ判定結果取得部196は、操作入力部130の出力信号に基づいて、ユーザの判定結果を検知する。
【0040】
OCR処理で得られた文字列が正しいと判定された場合(ステップS812:NO)、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
一方、OCR処理で得られた文字列に誤りがあると判定された場合(ステップS812:YES)、作業者がキー入力で文字列を修正する(ステップS813)。例えば、表示部120が、OCR処理で読み取れた文字列と文書帳票の画像とを表示する。そして、操作入力部130が、文字列の修正のユーザ操作を受け付ける。
ステップS813の後、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0041】
一方、ステップS801で、M番目の読取位置の文字列の事前入力データがあると判定した場合(ステップS801:YES)、記録部193は、M番目の読取位置の文字列をOCR処理で読み取れたか否かを判定する(ステップS821)。読み取れなかったと記録部193が判定した場合(ステップS821:NO)、作業者が事前入力データの文字列と文書帳票の画像とを比較する(ステップS822)。画像処理装置1は、事前入力データの文字列に誤りがあるかについての作業者の判定を受ける(ステップS823)。具体的には、表示部120がユーザ判定結果取得部196の制御に従って、事前入力データの文字列と文書帳票の画像とを表示する。そして、操作入力部130が、作業者の判定結果の入力操作を受け付ける。ユーザ判定結果取得部196は、操作入力部130の出力信号に基づいて、ユーザの判定結果を検知する。
【0042】
事前入力データの文字列に誤りがあると判定された場合(ステップS823:YES)、作業者がキー入力で文字列を修正する(ステップS824)。例えば、表示部120が、事前入力データの文字列と文書帳票の画像とを表示する。そして、操作入力部130が、文字列の修正のユーザ操作を受け付ける。
ステップS824の後、処理がステップS804へ進む。
一方、ステップS823で、事前入力データの文字列が正しいと判定された場合(ステップS823:NO)、記録部193は、事前入力データとOCR処理結果とを含む学習用データを生成する(ステップS825)。
ステップS825の後、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0043】
一方、ステップS821で、M番目の読取位置の文字列をOCR処理で読み取れたと判定した場合(ステップS821:YES)。記録部193は、事前入力データの文字列とOCR処理結果の文字列とが一致するかを判定する(ステップS831)。一致すると記録部193が判定した場合(ステップS831:YES)、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0044】
一方、ステップS831で、事前入力データの文字列とOCR処理結果の文字列とが一致しないと判定した場合(ステップS831:NO)、作業者が事前入力データの文字列と文書帳票の画像とを比較する(ステップS832)。画像処理装置1は、事前入力データの文字列に誤りがあるかについての作業者の判定を受ける(ステップS833)。具体的には、表示部120がユーザ判定結果取得部196の制御に従って、事前入力データの文字列と文書帳票の画像とを表示する。そして、操作入力部130が、作業者の判定結果の入力操作を受け付ける。ユーザ判定結果取得部196は、操作入力部130の出力信号に基づいて、ユーザの判定結果を検知する。
事前入力データの文字列が正しいと判定された場合(ステップS833:NO)、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0045】
一方、事前入力データの文字列に誤りがあると判定された場合(ステップS833:YES)、作業者がキー入力で文字列を修正する(ステップS834)。例えば、表示部120が、事前入力データの文字列と文書帳票の画像とを表示する。そして、操作入力部130が、文字列の修正のユーザ操作を受け付ける。
ステップS834の後、画像処理装置1は図8の処理を終了して図7の処理へ戻る。
【0046】
図7のステップS705の後、制御部190は、ループL1の終端処理を行う(ステップS706)。具体的には、制御部190は、学習結果が示す全ての読取位置についてループL1の処理を完了したかを判定する。未処理の読取位置があると制御部190が判定した場合、処理がステップS704へ戻り、画像処理装置1は、未処理の読取位置について引き続きループL1の処理を行う。一方、全ての読取位置についてループL1の処理を完了したと制御部190が判定した場合、画像処理装置1はループL1の処理を終了する。
【0047】
ループL1の後、画像処理装置1は、OCR処理結果として記録文字列を出力し、データベース4に記録させる(ステップS707)。具体的には、記録部193は、通信部110を介してデータベース4に記録文字列を記録させる。また、特徴量抽出部192は、得られた学習用データを用いて機械学習を行って第一特徴量を更新する(ステップS708)。例えば画像処理装置1が、図6の処理フローを再度実施するようにしてもよい。あるいは画像処理装置1が追加学習を行うことで、図6で処理済みのデータについては再度処理を行うことなく第一特徴量を更新するようにしてもよい。
ステップS708の後、画像処理装置1は、図7の処理を終了する。
【0048】
図8で示した学習用データ生成タイミング(ステップS804およびS825)は一例であり、これに限定されない。例えば、記録部193が、ステップS804およびS825に加えて、ステップS812でNOの場合、ステップS813の後、ステップS833でNOの場合およびステップS834の後にも学習用データを生成するようにしてもよい。
特に、画像処理装置1がOCR処理に失敗した場合(OCR処理では記録文字列を適切に得られなかった場合)、成功した場合のいずれも、記録部193が学習用データを生成することで、文書帳票の書式の統計的な情報を機械学習に反映させることができる。
ここで、OCR処理に失敗した場合のみ機械学習を行う場合、画像処理装置1がOCR処理に成功すると機械学習を行わない結果、文書帳票の書式の統計的な情報が機械学習に反映されない場合がある。
【0049】
例えば、文書帳票100枚中99枚まで左下に記録文字列があり、1枚だけ右上に記録文字列がある場合を考える。この場合、画像処理装置1が、同じ位置に記録文字列がある文書帳票では画像処理装置1がOCR処理に成功する(ステップS802:YESとなる、あるいは、ステップS821:YESとなる)と、記録文字列が左下にある場合、右上にある場合とも1回ずつ学習を行う。実際には99対1の割合であるのに、画像処理装置1の学習では1対1の割合で学習を行うことになり、記録文字列が右上にある場合について過学習してしまう可能性がある。
【0050】
これに対し、画像処理装置1がOCR処理に成功した場合、失敗した場合のいずれも機械学習(第一特徴量の更新)を行うことで、文書帳票の書式の統計的な情報を機械学習に反映させることができる。例えば上記のように、記録部193が、ステップS804およびS825に加えて、ステップS812でNOの場合、ステップS813の後、ステップS833でNOの場合およびステップS834の後にも学習用データを生成する。これにより、画像処理装置1がOCR処理に失敗した場合、成功した場合のいずれも、特徴量抽出部192が第一特徴量を更新する。
【0051】
ここでの画像処理装置1がOCR処理に成功した場合は、図7のステップS708で、画像処理装置1(特に記録部193)が、OCR処理で読み取られた文字列を記録文字列としてデータベース4に記録させる場合である。一方、画像処理装置1がOCR処理に失敗した場合は、図7のステップS708で、画像処理装置1(特に記録部193)が、OCR処理以外で得られた文字列を記録文字列としてデータベース4に記録させる場合である。OCR処理以外で得られた文字列として、事前入力データの文字列、および、ユーザがキー入力した文字列が挙げられる。
【0052】
画像処理装置1が、図7および図8の処理で第一特徴量を更新することで、サンプルデータ数が増加して第一特徴量の精度が向上し、画像処理装置1が記録文字列を抽出する精度が向上することが期待される。また、図8の処理で記録文字列が追加された場合、画像処理装置1が新たに追加された記録文字列についても画像データから抽出できるようになり、作業者が文字列を入力する手間を省けることが期待される。
【0053】
図7および8に示す処理によれば、画像処理装置1は予め作業者が記録しておいた文書帳票の画像データと記録文字列とによって、新たに入力させた文書帳票の画像データにおける記録文字列を自動的に記録することができる。したがって画像処理装置1は文書帳票における記録文字列の記録の作業者の労力を軽減することができる。
【0054】
<第二実施形態>
第二実施形態では、画像処理装置1が、文書帳票の複数の書式に対応する場合について説明する。
図9は第二実施形態に係る画像処理装置の機能構成を示す概略ブロック図である。
図9に示すように第二実施形態に係る画像処理装置1は、図3で示した各機能部に加え、さらにグループ分類部194、グループ特定部195の機能を有する。
【0055】
図10は第二実施形態に係る画像処理装置の処理フローを示す第一の図である。
次に第二実施形態に係る画像処理装置1の処理フローについて順を追って説明する。
データベース4には書式が異なる複数の文書帳票についての画像データと、各文書帳票に記述されている記録文字列の組み合わせが、その文書帳票毎に多数記録されている。このような状態で作業者が画像処理装置1を起動し、当該画像処理装置1へ処理開始を指示する。
【0056】
画像処理装置1の取得部191はデータベース4から文書帳票の画像データとその画像データに対応する記録文字列の情報とを全て読み込んだかを判定する(ステップS901)。NOの場合、取得部191はデータベース4から文書帳票の画像データとその画像データに対応する記録文字列の情報とを読み取る(ステップS902)。取得部191は画像データと記録文字列とを特徴量抽出部192へ出力する。特徴量抽出部192は画像データをOCR処理して画像データ中の全ての文字列とその画像データ内の座標とを検出する(ステップS903)。なお文字列は複数の文字によって構成される文字の纏まりである。特徴量抽出部192は他の文字との間隔などによってその1つの纏まりの範囲を解析し、その範囲に含まれる1つまたは複数の文字を文字列として抽出すると共に、その画像データ内の文字列の範囲を示す座標を検出する。文字列として含まれる文字は、表意文字、表音文字などの記号、マーク、アイコン画像などを含んでよい。
【0057】
特徴量抽出部192はOCR処理により画像データから抽出した文字列と、画像データと共にデータベース4から読み取った記録文字列とを比較する。特徴量抽出部192はOCR処理により画像データから抽出した文字列のうち、記録文字列の文字情報と一致した画像データ中の文字列と、その文字列に含まれる文字の属性と、その範囲の座標とを特定する(ステップS904)。
【0058】
第一実施形態で説明したように、文字の属性は、数字、アルファベット、ひらがな、漢字、文字数、文字高さ、フォントなどにより表される情報である。また文字列の範囲の座標は、文書帳票における文字列の位置を示す座標である。例えば、文字列の範囲の座標は、文字列に含まれる先頭文字の座標、終了文字の座標などを示す情報であってもよい。文字列に含まれる文字の属性と文字列の範囲の座標とを総称して、文字列の属性または文字列属性と表記する。
【0059】
第一実施形態の場合と同様、ここでの文字情報は、文字列のみであってもよいし、文字列属性を含んでいてもよい。すなわち、特徴量抽出部192が、記録文字列と画像データ中の文字列とが文字列として同一か否かを判定するようにしてもよい。あるいは、特徴量抽出部192が、文字の同一性に加えて、文字列属性の同一性を判定するようにしてもよい。
【0060】
なお、特徴量抽出部192が記録文字列と文字情報が一致する文字列を一意に特定できない場合、画像処理装置1が、その文書画像を処理対象(第一特徴量の抽出対象)から除外するようにしてもよい。あるいは、画像処理装置1が、記録文字列の候補それぞれの範囲を枠で示した画像を表示部120に表示させ、作業者によって選択された文字列に記録文字列を特定するようにしてもよい。第一実施形態で説明したように、ここでいう記録文字列の候補は、文字情報が記録文字列の文字情報と一致した文字列のうち、一意に特定されていないと判定された記録文字列に対応付けられている文字列である。また、ここでいう記録文字列の特定は、文書帳票における文字列のうち何れか1つを、1つの記録文字列に決定することである。
特徴量抽出部192が、1つの記録文字列の文字情報に対して、文書帳票における複数の文字列それぞれの文字情報が一致すると判定した場合、これら複数の文字列が、その記録情報の候補となる。作業者が、これら複数の文字列のうち何れか1つを選択することで、記録文字列が一意に特定される。
【0061】
次に、特徴量抽出部192は、文書帳票毎かつ記録文字列毎に抽出した文字列属性を用いて、文書帳票毎かつ記録文字列毎の特徴量を抽出する(ステップS905)。具体的には、特徴量抽出部192は、ステップS904で記録文字列に対応付けた文字列の文字列属性を特徴量化する。第二実施形態では複数種類の書式を対象とするため、文書帳票を書式毎にグループ分けしていないステップS905の時点では、図7のステップS604の場合と異なり直接第一特徴量を抽出することはできない。そこで、特徴量抽出部192は、グループ毎の第一特徴量を抽出する準備として、文書帳票毎かつ記録文字列毎の特徴量を抽出しておく。この文書帳票毎かつ記録文字列毎の特徴量を個別第一特徴量と称する。
特徴量抽出部192は、得られた個別第一特徴量を、文書帳票の識別子および記録文字列の識別子に紐づけてデータベース4に記録する(ステップS906)。記録文字列の識別子として、例えばその記録文字列の位置を示す座標値を用いることができる。
【0062】
例えば特徴量抽出部192は、図4の文書帳票5の書式に含まれる記録文字列である日付51、発注先52、商品名53、数量54、金額55それぞれの、文字属性、文字列の範囲を示す座標などを示す個別第一特徴量を、文書帳票毎かつ記録文字列毎に、文書帳票5の識別子および記録文字列の識別子に紐づけてデータベース4に記録する。
【0063】
特徴量抽出部192はまた、記録文字列に含まれる文字情報と一致しない画像データ中の非記録文字列と、その非記録文字列の文字列属性とを抽出する(ステップS907)。上述したように、非記録文字列は、作業者によって記録されない文字列、すなわち、記録文字列以外の文字列である。文字列属性には、その文字列に含まれる文字の属性を示す情報、その文字列の範囲の座標を示す情報の何れか一方あるは両方が含まれていてもよい。
【0064】
特徴量抽出部192は、文書帳票毎かつ非記録文字列毎に抽出した文字列属性を用いて、文書帳票毎かつ非記録文字列毎の特徴量を抽出する(ステップS908)。
具体的には、特徴量抽出部192は、ステップS904で何れの記録文字列にも対応付けられなかった文字列の各々について、その文字列の属性(文字列属性)を特徴量化する。第一特徴量の場合と同様、文書帳票を書式毎にグループ分けしていないステップS908の時点では、同じ書式の文書帳票に共通の特徴量を生成(抽出)することはできない。そこで、特徴量抽出部192は、グループ毎の第二特徴量を抽出する準備として、文書帳票毎かつ非記録文字列毎の特徴量を抽出しておく。この文書帳票毎かつ非記録文字列毎の特徴量を個別第二特徴量と称する。
【0065】
特徴量抽出部192が、文書帳票毎、かつ、複数の非記録文字列を纏めた個別第二特徴量を生成するようにしてもよい。例えば、特徴量抽出部192が、1つの文書帳票につき1つの個別第二特徴量を生成するようにしてもよい。
特徴量抽出部192は、得られた個別第二特徴量を、文書帳票の識別子および非記録文字列の識別子に紐づけてデータベース4に記録する(ステップS909)。非記録文字列の識別子として、例えばその非記録文字列の位置を示す座標値を用いることができる。
【0066】
例えば特徴量抽出部192は、図4の文書帳票5の書式に含まれる非記録文字列である発注者の名称501、発注者のエンブレム画像、文書帳票のタイトル503、挨拶文504などを示す個別第二特徴量を、文書帳票5の識別子および非記録文字列の識別子に紐づけてデータベース4に記録する。
【0067】
データベース4には、文書帳票の複数の書式それぞれについて、その書式の文書帳票の画像データとその画像データに対応する記録文字列の情報が記録されている。画像処理装置1の取得部191は全ての文書帳票についての画像データと記録文字列の情報を読み込むまでステップS901〜ステップS909の処理を繰り返す。
【0068】
ステップS901で、取得部191がデータベース4から文書帳票の画像データとその画像データに対応する記録文字列の情報とを全て読み込んだと判定した場合(ステップS901:YES)、グループ分類部194が文書帳票をグループ分けする(ステップS921)。グループ分類部194は、文書帳票の画像データに含まれる個別第二特徴量に基づいて、文書帳票をグループ分けする。例えばグループ分類部194は、各文書帳票を、個別第二特徴量が示す非記録文字列の一致度や、エンブレム画像の一致度、非記録文字列の座標範囲の一致度などに基づいてグループ分けする。グループ分類部194はこのグループ分けの処理において文書帳票のグループ識別子を決定する。グループ分類部194は全ての文書帳票についてグループ分けが終了したかを判定する(ステップS922)。
【0069】
グループ分類部194は全ての文書帳票のグループ分けが完了していない場合にはステップS921の処理を繰り返す。具体的には、ステップS922で、グループ分けを終了していない文書帳票があるとグループ分類部194が判定した場合(ステップS922:NO)、処理がステップS921へ戻る。
グループ分類部194は、全ての文書帳票のグループ分けが完了した場合(ステップS922:YES)、文書帳票の識別子とその文書帳票に付与されたグループ識別子とを対応付けてデータベース4のグループテーブル(記録テーブル)に記録する(ステップS923)。
【0070】
そして特徴量抽出部192は、あるグループに属する1つまたは複数の文書帳票の各個別第一特徴量および各個別第二特徴量をデータベース4から読み取り、グループに属する文書帳票の各個別第一特徴量および各個別第二特徴量に対応する各グループ第一特徴量、各グループ第二特徴量を抽出する(ステップS924)。各グループ第一特徴量はグループに属する文書帳票の各個別第一特徴量の平均等の値であってもよい。同様に各グループ第二特徴量はグループに属する文書帳票の各個別第二特徴量の平均等の値であってもよい。各グループ第一特徴量、各グループ第二特徴量は、各個別第一特徴量の平均、各個別第二特徴量の平均でなくとも、所定の統計処理や機械学習等の手法を用いて、グループに属する1つ又は複数の文書帳票の記録文字列や非記録文字列を特定できるよう算出された特徴量であれば、どのような手法を用いて、各グループ第一特徴量、各グループ第二特徴量を抽出してもよい。
例えば、特徴量抽出部192がステップS924で、同一グループに属する複数の文書帳票から記録文字列毎に文字列属性を抽出して(直接的に)グループ第一特徴量を生成するようにしてもよい。この場合、特徴量抽出部192が、ステップS905およびステップS906での個別第一特徴量の抽出および記録をパスする(特に何も処理を行わない)。
【0071】
一方、個別第二特徴量については、ステップS921でのグループ分けで使用できるように、特徴量抽出部192がステップS908で抽出しておく。但し、ステップ921で、グループ分類部194が、個別第二特徴量を用いず非記録文字列を用いて文書帳票のグループ分けを行うようにしてもよい。この場合、特徴量抽出部192がステップS924で、同一グループに属する複数の文書帳票の非記録文字列の文字列属性から(直接的に)グループ第二特徴量を抽出するようにしてもよい。この場合、特徴量抽出部192は、ステップS907〜ステップS909では特に何も処理を行わない。
特徴量抽出部192は、グループそれぞれについて各グループ第一特徴量、各グループ第二特徴量を算出し、グループの識別子に対応付けてデータベース4に記録する(ステップS925)。
ステップS925の後、画像処理装置1は、図10の処理を終了する。
【0072】
以上の処理により画像処理装置1は、作業者の記録文字列を記録する労力を軽減するために必要な情報(グループ第一特徴量およびグループ第二特徴量)を文書帳票のグループ毎に抽出してデータベース4に蓄積することができる。これにより画像処理装置1は新たな文書帳票の画像データの入力を受けて、その文書帳票に含まれる記録文字列を自動でデータベース4に記録していくことができる。その処理として、図7および図8の処理を用いることができる。その場合、図7のステップS702で特徴量抽出部192が学習結果を取得する際に、グループを特定し、特定したグループに応じた学習結果(第一特徴量)を取得する。グループを特定する処理手順の例について、図11を参照して説明する。
【0073】
図11は第二実施形態に係る画像処理装置の処理フローを示す第二の図である。
ステップS1001は、図7のステップS701と共通である。ステップS1002は、図7のステップS703と共通である。そこで、画像処理装置1は、図11の処理を行う場合、図7の処理としてはステップS702の前にステップS703を実行する。
ステップS1002の後、特徴量抽出部192はそれら検出した情報を特徴量化した第三特徴量を、画像データ中の文字列毎に抽出する(ステップS1003)。第三特徴量は新たに読み込んだ画像データの文書帳票に含まれる文字列の特徴を示す情報である。
【0074】
次にグループ特定部195が、データベース4が記憶しているグループ第二特徴量のうち新たな文書帳票のグループ特定に利用するグループ第二特徴量を読み取る。当該グループ第二特徴量は例えば文書帳票の画像データに表示される発注者のエンブレム画像502に対応する特徴量であってよい。グループ特定部195はあるグループ第二特徴量に示す情報が、ステップS1001で取得した文書帳票の画像データから特定できるかどうかを判定する。グループ特定部195は全てのグループについてのグループ第二特徴量を用いて同様の処理を行う。グループ特定部195はデータベース4から読み取ったグループ第二特徴量に一致する情報が新たに読み込んだ文書帳票の画像データから特定できた場合、そのグループ第二特徴量を有するグループを、新たに読み込んだ文書帳票の画像データのグループと特定する(ステップS1004)。その後、グループ特定部195はデータベース4からそのグループについての1つまたは複数のグループ第一特徴量を読み出す(ステップS1005)。グループ第一特徴量はそのグループに属する文書帳票内の1つまたは複数の記録文字列を特定するための特徴量である。
ステップS1005は図7のステップS702に相当し、グループ第一特徴量はステップS702での学習結果の例に該当する。以下、画像処理装置1はグループ第一特徴量を用いて図7のステップS704以降の処理を行う。
【0075】
これにより、画像処理装置1は予め作業者が記録しておいた複数の書式それぞれの文書帳票の画像データと記録文字列とによって、新たに入力させた文書帳票の種別によらずにその文書帳票の画像データにおける記録文字列を自動的に記録することができる。したがって画像処理装置1は文書帳票における記録文字列の記録の作業者の労力を軽減することができる。
【0076】
<第三実施形態>
なお、画像処理装置1の処理の他の例としては、作業者が予め文書帳票のグループを画像処理装置1に登録しておいてもよい。例えば作業者は、過去において文書帳票の画像データを登録する際、文書帳票の種類に合わせてグループ識別子を入力しておき文書帳票の画像データと紐づけてデータベース4に登録しておく。これにより、同一グループ内に画像処理装置1の処理誤り等により異種の帳票が混じることがなくなり、精度のよい第一特徴量を抽出することができる。なおこの場合、登録時は作業者が文書帳票のグループを入力するが、新たな帳票に対しては、ステップS1004と同じく、第二特徴量を用いてグループ特定する。
【0077】
<第四実施形態>
また、画像処理装置1の処理の他の例としては、画像処理装置1は第二特徴量を用いて文書帳票をグループ分けするだけでなく、第一特徴量を用いて、また第二特徴量と共に第一特徴量を用いて、文書帳票をグループ分けするようにしてもよい。第一特徴量は記録文字列の特徴量であるが、同じ種類の文書帳票であれば、記録文字列の座標やその文字属性は同じであると考えられ、第一特徴量を用いて帳票をグループ分けすることが可能となる。最初のグループ分けを第四実施形態で示すように作業者が行い、新たな文書帳票に対してはステップS1004の処理により第一特徴量を用いてグループ分けすることにより、OCR処理において精度よく記録文字列を読み取ることが可能となる。
この場合、取得部191が、複数の帳票画像データとその帳票画像データに含まれる文字列のうち記録対象となった記録文字列とを取得する。そしてグループ分類部194が第一特徴量に基づいて帳票画像データをグループ分けする。そして、特徴量抽出部192は、グループに含まれる帳票画像データに対応する第一特徴量を用いて記録文字列を抽出する。
【0078】
以上のように、記録部193は、第一特徴量のうち文字認識対象の文書画像についての第一特徴量を選択する。特徴量抽出部192は、文字認識対象の文書画像の文字認識処理を行う。記録部193は、文字認識処理の結果の文字列のうち第一特徴量に対応する特定項目の文字列を選択する。ユーザ判定結果取得部196は、記録部193が文字認識の結果の文字列のうちの何れも特定項目の文字列として選択しなかった場合、事前入力された文字列と特定項目の文字列とが一致するか否かのユーザ判定結果を取得する。
これにより、画像処理装置1は、事前入力された文字列を特定項目の文字列として用いることができる。作業者(ユーザ)は、事前入力された文字列と特定項目の文字列と入力された文字列とが一致するか否かを判定すればよく、文字列をキー入力する必要がない。この点で画像処理装置1によれば、事前に得られたデータとOCR処理で得られたデータとが一致する場合だけでなく、他の場合にもOCR処理結果を確認する作業者の負担を軽減できる。
【0079】
また、記録部193は、文書画像中での特定項目の文字列の位置を示す第一特徴量を選択する。ユーザ判定結果取得部196は、特定項目の文字列の位置を示した文書画像と、事前入力された文字列とをユーザに提示して、文書画像に示される特定項目の文字列と事前入力された文字列とが一致するか否かのユーザ判定結果を取得する。
これにより、作業者(ユーザ)は、文書帳票の画像に示される特定項目の文字列と入力された文字列とを見比べて一致するか否かを判定すればよく、比較的簡単で判定を行うことができる。画像処理装置1によれば、この点で作業者の負担が軽くて済む。
【0080】
また、特徴量抽出部192は、記録部193が文字認識の結果の文字列のうちの何れも特定項目の文字列として選択せず、かつ、事前入力された文字列と特定項目の文字列とが一致するとユーザ判定結果で示された場合、文字認識結果の文字列の中から特定項目の文字列を選択するための情報を取得する機械学習に、事前入力された文字列を用いる。
画像処理装置1によれば、作業者によって確認された文字列を用いて機械学習を行う点で、精度よく機械学習を行うことができる。また、作業者は確認の際文字列をキー入力する必要がなく、この点で作業者の負担が小さくて済む。
【0081】
また、特徴量抽出部192は、記録部193が文字認識処理の結果の文字列のうちの何れかを特定項目の文字列として選択した場合、および、文字認識処理の結果の文字列のうちの何れも特定項目の文字列として選択しなかった場合の何れも機械学習を行う。
これにより、画像処理装置1では、上述したように、文書帳票の書式の統計的な情報を機械学習に反映させることができる。
【0082】
あるいは、特徴量抽出部192は、記録部193が文字認識処理の結果の文字列のうちの何れも特定項目の文字列として選択しなかった場合に機械学習を行い、記録部193が文字認識処理の結果の文字列のうちの何れかを特定文字の文字列として選択した場合は機械学習の実行を抑制する。
この場合、画像処理装置1では、記録部193が文字認識処理の結果の文字列のうちの何れかを特定項目の文字列として選択したときも特徴量抽出部192が機械学習を行う場合と比較して、機械学習用に保存するデータ数、および、機械学習に要する時間が少なくて済む。
【0083】
次に、図12を参照して、本発明の実施形態の構成について説明する。
図12は、実施形態に係る画像処理装置の構成の例を示す図である。図12に示す画像処理装置600は、第一特徴量選択部601と、文字認識処理部602と、文字列選択部603と、ユーザ判定結果取得部604と、を備える。
かかる構成にて、第一特徴量選択部601は、複数の文書画像を文字認識処理した結果に基づいて予め記録され、文書画像の種別毎かつ特定項目毎にその項目の文字列の特徴を示す第一特徴量のうち、文字認識対象の文書画像についての第一特徴量を選択する。文字認識処理部602は、文字認識対象の文書画像の文字認識処理を行う。文字列選択部603は、文字認識処理の結果の文字列のうち第一特徴量に対応する特定項目の文字列を選択する。ユーザ判定結果取得部604は、文字列選択部603が文字認識処理の結果の文字列のうちの何れも特定項目の文字列として選択しなかった場合、事前入力された文字列と特定項目の文字列とが一致するか否かのユーザ判定結果を取得する。
これにより、画像処理装置600は、事前入力された文字列を特定項目の文字列として用いることができる。作業者(ユーザ)は、事前入力された文字列と特定項目の文字列と入力された文字列とが一致するか否かを判定すればよく、文字列をキー入力する必要がない。この点で画像処理装置600によれば、事前に得られたデータとOCR処理で得られたデータとが一致する場合だけでなく、他の場合にもOCR処理結果を確認する作業者の負担を軽減できる。
【0084】
上述の各装置は内部に、コンピュータシステムを有している。そして、各装置に上述した各処理を行わせるためのプログラムは、それら装置のコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムを各装置のコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【0085】
また、上記プログラムは、前述した各処理部の機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0086】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0087】
1 画像処理装置
2 画像読取装置
3 記録装置
4 データベース
110 通信部
120 表示部
130 操作入力部
180 記憶部
190 制御部
191 取得部
192 特徴量抽出部
193 記録部
194 グループ分類部
195 グループ特定部
196 ユーザ判定結果取得部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12