(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、文書を高精度に仕分けることができる規則を生成することができる文書処理装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
請求項1に係る本発明は、文書の画像情報を受け付ける受付手段と、前記受付手段により受け付けられた文書の画像情報から文字列を含む文字情報を抽出する文字情報抽出手段と、前記文字情報抽出手段により抽出された文字情報に基づいて前記受付手段により受け付けられた文書を仕分ける仕分け手段と、前記文字情報抽出手段の文字列認識の冗長度を調整するように前記仕分け手段の仕分け規則を生成する仕分け規則生成手段と、を有
し、前記仕分け規則生成手段は、前記文字情報抽出手段によって認識されるべき文字列の認識率の目標値が予め設定され、該目標値以上となるように文字列認識の冗長度を調整した仕分け規則を生成し、前記文字情報抽出手段により抽出された文字列を構成する少なくとも1つの文字を全ての対象文字と適合する文字に置き換える処理を行い、前記文字情報抽出手段により抽出された文字列の認識率が目標値に達していないと予測される場合、前記文字列を構成する文字を全ての対象文字と適合する文字に徐々に置き換えることにより文字列の認識率が目標値に達するよう処理する
文書処理装置である。
【0010】
請求項
2に係る本発明は、前記仕分け規則生成手段は、前記文字情報抽出手段により抽出される文字毎の予想認識率に基づいて仕分け規則を生成する請求項
1記載の文書処理装置である。
【0011】
請求項
3に係る本発明は、前記仕分け規則生成手段は、前記文字情報抽出手段により抽出される文字の大きさ毎の予想認識率に基づいて仕分け規則を生成する請求項1
又は2記載の文書処理装置である。
【0012】
請求項
4に係る本発明は、前記仕分け規則生成手段は、生成された規則が重複した場合、新たな仕分け規則を生成する請求項1乃至
3いずれか記載の文書処理装置である。
【0013】
請求項
5に係る本発明は、前記仕分け規則生成手段により生成された規則に基づいて仕分ける試験用データを生成する試験用データ生成手段をさらに有する請求項1乃至
4いずれか記載の文書処理装置である。
【0014】
請求項
6に係る本発明は、文書の画像情報を受け付ける
受付ステップと、受け付けられた文書の画像情報から文字列を含む文字情報を抽出する
文字情報抽出ステップと、抽出された文字情報に基づいて前記
受付ステップにおいて受け付けられた文書を仕分ける
仕分けステップと、文字列認識の冗長度を調整するように仕分け規則を生成する
規則生成ステップと、をコンピュータに実行させ
、前記仕分け規則生成ステップは、前記文字情報抽出ステップにおいて認識されるべき文字列の認識率の目標値が予め設定され、該目標値以上となるように文字列認識の冗長度を調整した仕分け規則を生成し、前記文字情報抽出ステップにおいて抽出された文字列を構成する少なくとも1つの文字を全ての対象文字と適合する文字に置き換える処理を行い、前記文字情報抽出ステップにおいて抽出された文字列の認識率が目標値に達していないと予測される場合、前記文字列を構成する文字を全ての対象文字と適合する文字に徐々に置き換えることにより文字列の認識率が目標値に達するよう処理するプログラムである。
【発明の効果】
【0015】
請求項1に係る本発明によれば、本構成を有しない場合と比較して、文書を高精度に仕分けることができる規則を生成することができる文書処理装置を提供することができる。
【0019】
請求項
2に係る本発明によれば、請求項
1に係る発明により得られる効果に加えて、本構成を有しない場合と比較して、認識率を正確に予測することができる。
【0020】
請求項
3に係る本発明によれば、請求項1
又は2に係る発明により得られる効果に加えて、文字の大きさが異なる場合にも対応することができる。
【0021】
請求項
4に係る本発明によれば、請求項1乃至
3いずれかに係る発明により得られる効果に加えて、生成された仕分け規則が重複した場合にも対応することができる。
【0022】
請求項
5に係る本発明によれば、請求項1乃至
4いずれかに係る発明により得られる効果に加えて、生成した規則により予測された結果が得られるか否かを確認することができる。
【0023】
請求項
6に係る本発明によれば、本構成を有しない場合と比較して、文書を高精度に仕分けることができる規則を生成することができるプログラムを提供することができる。
【発明を実施するための形態】
【0025】
以下、本発明の実施形態について図面を参照して詳細に説明する。
図1は、本発明の実施形態に係る文書処理システム2の構成の一例を示す模式図である。本発明の画像形成システム2は、パーソナルコンピュータ等により構成される端末装置4−1〜4−n(nは、1以上の整数)と、これら端末装置4−1〜4−nとネットワークを介して接続されたサーバ装置6と、このサーバ装置6とネットワークを介して接続された画像形成装置8と、同じくサーバ装置6とネットワークを介して接続されたスキャナ装置10とから構成されている。
【0026】
画像形成装置8は、スキャナ部8aを有し、スキャナ部8aにより紙文書が読み取られ、電子文書に変換されるようになっている。
【0027】
スキャナ装置10は、
図2に示されるように、CPU12、メモリ14、ハードディスクドライブ(HDD)等の記憶装置16、ネットワークを介してサーバ装置6などの外部の装置との間でデータの送信及び受信を行う通信装置18、スキャン駆動部20及び操作部22がバスを介して接続されている。
【0028】
CPU12は、メモリ14又は記憶装置16に格納されたプログラムに基づいて処理を実行して、スキャン装置10の動作を制御する。
【0029】
図3は、文書処理装置の一例として帳票分類システム24を示す。帳票分類システム24は、紙文書である帳票26を前述したスキャナ装置10又は画像形成装置8のスキャナ部8aにより読み取る。この読み取られた文書は、OCR処理などにより認識され、電子文書28として仕分けられる。ここでは、「支給受領書」「支給清算書」「不可抗力協議」等、予め定められた帳票を分類し、例えば前述したサーバ装置6に予め用意されている各フォルダ30に収納される。
【0030】
図4は、スキャナ装置10における文書処理プログラムの構成を示す。受付部32は、スキャナ装置10により読み取られた画像を例えばビットマップデータとして受け付ける。文書情報抽出部34は、例えばOCRソフトウェアから構成され、受付部32により受け付けられた画像から予め定められた方法により文字列を含む文字情報を抽出する。例えば
図5に示すように、ここで取り扱う帳票は、全て予め定められた位置に表題、例えば「支給受領書」が記載され、この位置にある文字列を抽出する。抽出すべき文字列は、特定の位置にあることを条件とするばかりではなく、例えば色や大きさなど、構成する文字の属性を捕らえるようにすればよい。
【0031】
仕分け部36は、文書情報抽出部34により抽出された文字情報に基づいて帳票を仕分ける(分類する)。この仕分け部36において帳票を仕分ける規則は、仕分け規則生成部38により生成される。仕分け部36により仕分けられた帳票は、前述したようにサーバ装置6に送信され、サーバ装置6内のファイルに帳票毎にファイルされる。
【0032】
試験用データ生成部40は、仕分けるべき帳票がどの程度正しく仕分けられるかを検証するための試験用データを生成する。この試験用データ生成部40で生成された試験用データは、文字情報抽出部34で文字情報が抽出され、仕分け規則生成部38で生成された仕分け規則に基づいて仕分け部36で仕分けされたデータが前述した端末装置4−1〜4−nや画像形成装置8に送られ、仕分け結果が出力されるようになっている。
【0033】
次に仕分け規則生成部38における仕分け規則を生成するためのアルゴリズムについて説明する。
【0034】
この実施形態においては、文字情報抽出部34による文字認識率が文字毎に異なることを前提としている。まずは、文字情報抽出部34が抽出すべき文字列を構成する文字の予想認識率を設定する。
【0035】
予想認識率は、例えば種々の文字を含むテストチャートを読み込み、読み込んだ文字を文字認識させた場合の正解率を予め求めておく。例えば「支」は98%、「給」は90%、「受」は85%、「領」は80%、「書」は95%である。
なお、文字認識率は、文字の大きさにより異なるので、異なる大きさの文字を用いる場合は、各文字について大きさ毎に予想認識率を求める。
【0036】
ここで、仕分け規則を次のように表す。
文書タイトル=”支給受領書”
これは、全ての文字が一致している必要があることを意味する。したがって、「支給受領書」という文字列では、予想認識率は次のようになる。
支*給*受*領*書 = 98%*90%*85%*80%*95% = 57%
【0037】
このままでは、予想認識率が低いので、高くする必要がある。予想認識率を高くするには冗長度を上げればよい。目標認識率を設定し、この目標認識率を超えるように冗長度を調整する。例えば「支給受領書」では目標認識率を90%に設定する。
【0038】
冗長度を上げる第1例は、ワイルドカードを増やしていく方法である。ワイルドカード文字とは、全ての対象文字とマッチする文字である。ワイルドカード文字を「?」として表す。予想認識率が低い文字からワイルドカード文字に置き換える。
【0039】
上記「支給受領書」では、「領」の予想認識率が最も低いので、「領」をワイルドカード文字に置き換え、次のように仕分け規則を生成する。
文書タイトル=”支給受?書”
この場合の文字列としての予想認識率は次の通りである。
支*給*受*?*書 = 98%*90%*85%*100%*95% = 71% (< 90%)
【0040】
次に予想認識率が低いのは、「受」であるから、「受」をワイルドカード文字に置き換え、次のように仕分け規則を生成する。
文書タイトル=”支給??書”
この場合の文字列としての予想認識率は次の通りである。
支*給*?*?*書 = 98%*90%*100%*100%*95% = 83% (< 90%)
【0041】
次に予想認識率が低いのは、「給」であるから、「給」をワイルドカード文字に置き換え、次のように仕分け規則を生成する。
文書タイトル=”支???書”
この場合の文字列としての予想認識率は次の通りである。
支*?*?*?*書 = 98%*100%*100%*100%*95% = 93% (≧ 90%)
このように目標を満たさない場合は、繰り返しワイルドカード文字を増やしていくことにより予想認識率90%を超えることができる。
【0042】
ただし、この第1例では、他の仕分け規則と重複してしまう可能性もある。例えば、「支給清算書」でも、文書タイトル=”支???書”となる可能性がある。
またすべての文字の予想認識率が目標認識率より低い場合は、この方法は使用できない
【0043】
次に、冗長度を上げる第2例について説明する。
この第2例は、予想認識率の低い文字1個をワイルドカード文字にした仕分け規則を作成し、論理和で増やしていく方法である。
前述の例では、最初に作られる仕分け規則は次のようになる。
文書タイトル=”支給受?書”では予想認識率は90%を超えないので、次に生成される仕分け規則は、
文書タイトル=”支給受?書”+”支給?領書”
となる。
【0044】
この場合の文字列としての予想認識率は次のようにして求められる。
支*給*受*?*書 = 98%*90%*85%*100%*95% = 71%
(< 90%) ・・・A
支*給*?*領*書 = 98%*90%*100%*80%*95% = 67%
(< 90%) ・・・B
1−(1−A)*(1−B)=90% (≧ 90%)
【0045】
即ち、
図6(a)に示すように、集合Aと集合Bとの論理和の確率を求める には、まず
図6(b)に示すように、集合Aではない確率(1−A)と集合B ではない確率(1−B)を求める。集合Aではない確率は29%である。また 、集合Bではない確率は33%である。次に、
図6(c)に示すように、集合 Aでなく、且つ集合Bでもない確率(1−A)*(1−B)を求める。集合A でなく、且つ集合Bでもない確率は10%である。さらに(集合Aでなく、且 つ集合Bでもない)ではない確率、即ち、集合A又は集合Bである確率は1− (1−A)*(1−B)であり、90%となる。
【0046】
以上のように、最も低い文字をワイルドカード文字に置き換えても予想認識 率が目標を満たさない場合は、次に予想認識率の低い文字を1個ワイルドカー ド文字にして、2つの規則の論理和を取った時の予想認識率を求める。さらに 目標を満たさない場合は、3番目の・・というように目標を満たすまで繰り返 す。1文字ずつワイルドカード文字にして論理和をとっても予想認識率が目標 を満たさない場合は、ワイルドカードを2個ずつにして行う。
【0047】
図7は、前述した第1例のアルゴリズムを実施するためのフローチャートで ある。
まずステップS10において、仕分け規則の予想認識率を算出する。前述の例では、支*給*受*領*書 = 98%*90%*85%*80%*95% = 57%である。
【0048】
予想認識率が目標を超えない場合は、次のステップS12において、n=1とする。nは、認識対象となる文字列の文字数である。次のステップS14においては、予想認識率が低い文字からn文字をワイルドカード文字に置き換えた仕分け規則を生成する。前述の例では、文書タイトル=”支給受?書”である。
【0049】
次のステップS16においては、ステップS14で生成した仕分け規則の予想認識率を算出する。前述した例では、支*給*受*?*書 = 98%*90%*85%*100%*95% = 71%である。
【0050】
次のステップS18においては、ステップS16で算出した予想認識率が目標認識率以上であるか否かを判定する。このステップS18により予想認識率が目標認識率以上と判定された場合は終了する。このステップS18により予想認識率が目標認識率未満である場合は、次のステップS20へ進む。ステップS20においては、n=n+1とする。前述の例では、目標認識率の90%未満であるから、ステップS20において、n=2とする。
【0051】
次のステップS22においては、nが文字列長(前述の例では5)を超えているか否かを判定する。nが文字列長を超えている場合は、それ以上、仕分け規則を生成することができないので終了する。一方、ステップS22において、nが文字列長以下であると判定すると、ステップS14に戻る。前述した例では、n=3である文書タイトル=”支???書”となった段階で初めて目標認識率以上となる。
【0052】
図7は、前述した第2例のアルゴリズムを実施するためのフローチャートである。
まずステップS30において、仕分け規則の予想認識率を算出する。前述の例では、支*給*受*領*書 = 98%*90%*85%*80%*95% = 57%である。
【0053】
予想認識率が目標を超えない場合は、次のステップS32において、m=1、n=1とする。mは、認識対象となる文字列において、予想認識率が低い順序であり、nは、認識対象となる文字列の文字数である。
【0054】
次のステップS34においては、予想認識率がm番目に低い文字からn文字をワイルドカード文字に置き換えた仕分け規則を生成する。前述の例では、文書タイトル=”支給受?書”である。
【0055】
次のステップS36においては、作成済みの仕分け規則と論理和を取った仕分け規則を生成する。作成済みがない場合は、ステップS34で生成した仕分け規則がそのまま採用される。
【0056】
次のステップS38においては、ステップS36で生成した仕分け規則の予想認識率を算出する。前述した例では、支*給*受*?*書 = 98%*90%*85%*100%*95% = 71%である。
【0057】
次のステップS40においては、ステップS38で算出した予想認識率が目標認識率以上であるか否かを判定する。このステップS40により予想認識率が目標認識率以上と判定された場合は終了する。このステップS40により予想認識率が目標認識率未満である場合は、次のステップS42へ進む。ステップS42においては、m=m+1とする。前述の例では、目標認識率の90%未満であるから、ステップS42において、m=2とする。
【0058】
次のステップS44においては、mが文字列長(前述の例では5)を超えているか否かを判定する。mが文字列長を超えている場合は、次のステップS46へ進み、m=1、n=n+1とし、ワイルドカード文字に置き換える文字数を1つ増やす。一方、ステップS44において、mが文字列長以下であると判定すると、ステップS34に戻る。
【0059】
ステップS34に戻った場合は、予想認識率が2番目に低い文字から1文字をワイルドカード文字に置き換えた仕分け規則を生成する。前述の例では、文書タイトル=”支給?領書”である。
【0060】
次のステップS36においては、作成済みの仕分け規則と論理和を取った仕分け規則を生成する。前述の例では、文書タイトル=”支給受?書”+”支給?領書”である。
【0061】
次のステップS38においては、ステップS36で生成した仕分け規則の予想認識率を算出する。予想認識率が90%となり、目標認識率以上となって処理を終了する。
【0062】
前述した第1例では、例えば文書タイトル=”支???書”となって、「支給受領書」と「支給清算書」との仕分け規則が重なる可能性がある。そこで、
図9に示すように、ステップS50において、重複する仕分け規則があるか否かを判定する。ステップS50において、重複する仕分け規則がない場合は処理を終了するが、重複する仕分け規則がある場合は、新たなアルゴリズムで仕分け規則を生成する。例えば第1例のアルゴリズムから第2例のアルゴリズムに変更して新たな仕分け規則を生成する。
【0063】
なお、冗長度を上げる方法は、前述の第1例、第2例に限定するものではない。例えば予想認識率の低い文字に類似する文字をOR条件として含ませる等であってもよい。