IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 富士ゼロックス株式会社の特許一覧

<>
  • 特許-情報処理装置及びプログラム 図1
  • 特許-情報処理装置及びプログラム 図2
  • 特許-情報処理装置及びプログラム 図3
  • 特許-情報処理装置及びプログラム 図4
  • 特許-情報処理装置及びプログラム 図5
  • 特許-情報処理装置及びプログラム 図6
  • 特許-情報処理装置及びプログラム 図7
  • 特許-情報処理装置及びプログラム 図8
  • 特許-情報処理装置及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-09
(45)【発行日】2024-01-17
(54)【発明の名称】情報処理装置及びプログラム
(51)【国際特許分類】
   G06V 30/12 20220101AFI20240110BHJP
   G06V 30/26 20220101ALI20240110BHJP
【FI】
G06V30/12 B
G06V30/266
G06V30/12 C
【請求項の数】 4
(21)【出願番号】P 2019193250
(22)【出願日】2019-10-24
(65)【公開番号】P2021068203
(43)【公開日】2021-04-30
【審査請求日】2022-09-22
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】木村 俊一
(72)【発明者】
【氏名】関野 雅則
(72)【発明者】
【氏名】久保田 聡
(72)【発明者】
【氏名】越 裕
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2000-155803(JP,A)
【文献】特開2010-073201(JP,A)
【文献】特開平07-028956(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/00 - 30/424
(57)【特許請求の範囲】
【請求項1】
プロセッサを備え、
前記プロセッサは、
OCRから、対象の画像に含まれる文字ごとの認識結果認識確度を取得すると共に前記文字ごとの認識結果に基づき求められた前記画像に含まれる文字列の認識結果認識確度を取得する取得処理、を実行し
前記OCRから取得した前記文字列の認識結果を最終的な認識結果として出力する第1の処理と、前記文字列の認識結果をリジェクトする第2の処理と、のいずれを実行するかの制御を、前記OCRから取得した前記文字ごとに認識確度及び前記文字列の認識確度に基づいて実行する、
ことを特徴とする情報処理装置。
【請求項2】
前記制御では、前記文字列の認識確度が第1の閾値より高く、かつ前記文字列の認識結果中の各文字についての前記文字ごとの認識確度がすべて第2の閾値よりも高い場合に、前記第1の処理を実行し、そうでない場合に前記第2の処理を実行する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
記取得処理では、前記OCRから、前記対象の画像に対する前記文字列の認識結果の複数の候補と、各候補についての認識確度である第1の候補認識確度とを取得すると共に、前記各候補のそれぞれについて、前記OCRから、当該候補の文字列中の文字ごとの認識確度である第2の候補認識確度を取得し、
前記制御では、前記複数の候補の中に、前記第1の候補認識確度が第1の閾値よりも高く、かつ文字ごとの前記第2の候補認識確度がすべて第2の閾値よりも高い候補があれば、その候補に対して前記第1の処理を実行する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
コンピュータに、
OCRから、対象の画像に含まれる文字ごとの認識結果と認識確度を取得すると共に、前記文字ごとの認識結果に基づき求められた前記画像に含まれる文字列の認識結果と認識確度を取得する取得処理、を実行し、
前記OCRから取得した前記文字列の認識結果を最終的な認識結果として出力する第1の処理と、前記文字列の認識結果をリジェクトする第2の処理と、のいずれを実行するかの制御を、前記OCRから取得した前記文字ごとに認識確度及び前記文字列の認識確度に基づいて実行する、
処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【0002】
紙帳票に手書き記入または印刷された文字列をデジタルデータ化するデータ入力システムがある。データ入力システムは、帳票中を人間が読み取ってキー入力する方式、光学文字認識(OCR)技術を用いた文字認識器により帳票中の画像に対して文字認識処理を行う方式、あるいはこれらの組合せにより帳票中の文字列をデジタル化する。
【0003】
文字認識器は、実行した認識処理の処理結果がどの程度信頼できるかを示す度合いを出力する機能を持つことが多い。この度合いは認識の確度又は確信度(以下、認識確度、又は単に、確度、という)と呼ばれる。
【0004】
特許文献1には、文字認識器が文字画像に対する認識結果の文字コードと共に出力した認識確度が閾値以上であればその文字コードを表示し、認識確度が閾値未満であれば文字画像を表示してユーザに手入力を求める装置が記載されている。
【0005】
特許文献2に開示された装置は、認識確度が閾値以上であれば人手によるベリファイを必要としない出力を行い、そうでなければ人手によるベリファイを行う。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2000-259847号公報
【文献】特開2003-346080号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、対象データに対する認識器による認識結果に対して、第1の処理及び第1の処理よりも人の作業量を多く必要とする第2の処理のいずれを適用するかを、その認識器によるその認識結果についての認識確度のみに基づいて制御する方式よりも、必要となる人の作業量を減らすことを目的とする。
【課題を解決するための手段】
【0008】
請求項1に係る発明は、プロセッサを備え、前記プロセッサは、OCRから、対象の画像に含まれる文字ごとの認識結果認識確度を取得すると共に前記文字ごとの認識結果に基づき求められた前記画像に含まれる文字列の認識結果認識確度を取得する取得処理、を実行し前記OCRから取得した前記文字列の認識結果を最終的な認識結果として出力する第1の処理と、前記文字列の認識結果をリジェクトする第2の処理と、のいずれを実行するかの制御を、前記OCRから取得した前記文字ごとに認識確度及び前記文字列の認識確度に基づいて実行する、ことを特徴とする情報処理装置である。
【0009】
請求項2に係る発明は、前記制御では、前記文字列の認識確度が第1の閾値より高く、かつ前記文字列の認識結果中の各文字についての前記文字ごとの認識確度がすべて第2の閾値よりも高い場合に、前記第1の処理を実行し、そうでない場合に前記第2の処理を実行する、ことを特徴とする請求項1に記載の情報処理装置である。
【0010】
請求項3に係る発明は、前記取得処理では、前記OCRから、前記対象の画像に対する前記文字列の認識結果の複数の候補と、各候補についての認識確度である第1の候補認識確度とを取得すると共に、前記各候補のそれぞれについて、前記OCRから、当該候補の文字列中の文字ごとの認識確度である第2の候補認識確度を取得し、前記制御では、前記複数の候補の中に、前記第1の候補認識確度が第1の閾値よりも高く、かつ文字ごとの前記第2の候補認識確度がすべて第2の閾値よりも高い候補があれば、その候補に対して前記第1の処理を実行する、ことを特徴とする請求項1に記載の情報処理装置である。
【0014】
請求項に係る発明は、コンピュータに、OCRから、対象の画像に含まれる文字ごとの認識結果と認識確度を取得すると共に、前記文字ごとの認識結果に基づき求められた前記画像に含まれる文字列の認識結果と認識確度を取得する取得処理、を実行し、前記OCRから取得した前記文字列の認識結果を最終的な認識結果として出力する第1の処理と、前記文字列の認識結果をリジェクトする第2の処理と、のいずれを実行するかの制御を、前記OCRから取得した前記文字ごとに認識確度及び前記文字列の認識確度に基づいて実行する、処理を実行させるためのプログラムである。
【発明の効果】
【0015】
請求項1、2、4に係る発明によれば、対象データに対する認識器による認識結果に対して、第1の処理及び第1の処理よりも人の作業量を多く必要とする第2の処理のいずれを適用するかを、その認識器によるその認識結果についての認識確度のみに基づいて制御する方式よりも、必要となる人の作業量を減らすことができる。
【0016】
請求項3に係る発明によれば、単一の第1の認識結果のみを対象とする方式よりも、必要となる人の作業量を減らすことができる。
【図面の簡単な説明】
【0017】
図1】文字列認識の実施形態のシステム構成を例示する図である。
図2】システムの主要な情報処理を実行するコンピュータのハードウエア構成を例示する図である。
図3】従来の処理手順を例示する図である。
図4】実施形態のシステムの処理手順を例示する図である。
図5】システムにより得られる効果を説明するための図である。
図6】閾値設定のためのUI画面の例を模式的に示す図である。
図7】実施形態のシステムの処理手順の別の例を示す図である。
図8】一般化した実施形態のシステム構成を例示する図である。
図9】一般化した実施形態の処理手順を例示する図である。
【発明を実施するための形態】
【0018】
<全体システムの例>
図1に、データ入力システム(以下単に「システム」と呼ぶ)の一実施形態を説明する。
【0019】
このシステムでは、文字認識の対象である入力画像データ50がOCR(文字認識器)10に入力される。OCR10は、入力画像データ50に対して文字認識処理を行う。入力画像データ50は、文字列の画像を含んだ画像データである。例えば、前処理により帳票画像から切り出されたある入力欄の画像が、入力画像データ50となる。
【0020】
OCR10は、入力画像データ50から文字ごとの画像を切り出し、文字ごとの画像(以下「文字画像」と呼ぶ)に対して文字認識処理を行うことで、文字画像ごとの認識結果と、その認識結果についての確度とを求める。この認識結果は、その文字画像が表している文字の文字コードである。OCR10は、1つの文字画像に対して、認識結果の候補を1以上求め、それら候補のそれぞれについて確度を求める。同じ文字画像に対して求められる複数の候補は、対応する確度が高い順に順位付けできる。文字画像に対して求められる認識結果の候補、及びこの候補に対応する確度のことを、以下では単文字候補及び単文字確度と呼ぶ。
【0021】
OCR10は、入力画像データ50が表す文字列の認識を行う。この文字列の認識では、例えば、入力画像データ50内での各文字画像の並び順にそれら各文字画像の認識結果である単文字候補を並べることにより文字列を生成し、その文字列を評価する。文字画像ごとに単文字候補が通常複数あるので、各文字画像の単文字候補の組合せの数だけ異なる文字列ができる。OCR10はそれら文字列ごとに評価を行う。この評価では、例えば、文字同士の繋がりやすさの情報や、単語やフレーズを登録した辞書等を参照することにより、各文字列の評価値を算出する。そして、OCR10は、評価値が最高である文字列を、その入力画像データ50に対応する認識結果として出力する。この文字列についての認識結果のことを文字列認識結果と呼ぶ。また、OCR10は、その文字列認識結果に対応する確度を計算し、出力する。この確度のことを文字列確度と呼ぶ。
【0022】
OCR10は、従来公知の技術を用いて、以上のような処理を行う。従来のOCRは文字列認識結果と文字列確度を出力したが、図1に例示したOCR10は、更にその文字列認識結果に含まれる文字コードのそれぞれについての単文字確度を合わせて出力する。
【0023】
OCR10は、個々の文字の認識を行う第1の認識器と、第1の認識器による個々の文字の認識結果を用いて文字列全体の認識を行う第2の認識器と、を内蔵した装置と捉えることもできる。
【0024】
情報処理装置100は、OCR10から入力されるそれら情報を用いて、入力画像データ50に対するシステムとしての最終的な認識結果を求めるための処理を実行する。
【0025】
<ハードウエア構成の例>
情報処理装置100は、例えば汎用的なコンピュータをベースとして構築される。すなわち情報処理装置100は、例えば、図2に示すように、ハードウエアとして、プロセッサ102、ランダムアクセスメモリ(RAM)等のメモリ(主記憶装置)104、フラッシュメモリやSSD(ソリッドステートドライブ)、HDD(ハードディスクドライブ)や等の補助記憶装置106を制御するコントローラ、各種の入出力装置108とのインタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース110等が、例えばバス112等のデータ伝送路を介して接続された回路構成を有する。以下に説明する情報処理装置100の機能を示すプログラム群が、ネットワーク等を経由してコンピュータにインストールされ、補助記憶装置106に保存される。補助記憶装置106に保存されたそれらプログラム群が、プロセッサ102によりメモリ104を用いて実行されることにより、情報処理装置100の機能が実現される。
【0026】
ここでプロセッサ102とは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit、等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、 ASIC:Application Specific Integrated Circuit、 FPGA:Field Programmable Gate Array、 プログラマブル論理デバイス、等)を含むものである。
【0027】
また、プロセッサ102の動作は、1つのプロセッサ102によってなすのみでなく、物理的に離れた位置に存在する複数のプロセッサ102が協働してなすものであってもよい。また、プログラム実行時のプロセッサ102の各動作は、以下の実施形態において説明する順序のみに限定されるものではなく、適宜に変更してもよい。
【0028】
図1に示す例では、OCR10は情報処理装置100の外部の装置である。OCR10は、例えば、情報処理装置100に通信ケーブル等で接続された専用のOCR装置であってもよいし、インターネット上にあるOCRサービスであってもよい。また、情報処理装置100が、OCR10を内蔵していてもよい。例えば、情報処理装置100がOCR10の機能を表すプログラムを実行する等である。
【0029】
<従来の処理手順の例>
情報処理装置100が仮に従来方式で文字列認識を行う場合の処理手順は、図3に例示するものとなる。
【0030】
この手順では、プロセッサ102は、OCR10から文字列認識結果及び文字列確度を取得し(S1)、その文字列確度が所定の(すなわち予め定めた)閾値Aより高いか否かを判定する(S2)。この判定の結果がYesの場合、プロセッサ102は、その文字列認識結果をシステムの最終的な認識結果として出力する(S3)。またS2の判定結果がYesの場合、プロセッサ102はその文字列認識結果をリジェクトする(S4)。リジェクトとは、対象となる文字認識結果をシステムの最終的な認識結果として採用しないことである。OCR10の文字列認識結果をリジェクトした場合、S4では、プロセッサ102は、人間の作業者に介入を求める。この場合、プロセッサ10は、あらかじめ定められた作業者の端末に対して入力画像データ50を表示し、例えば作業者から、その入力画像データ50が表す文字列の入力を受け付ける。あるいはプロセッサ102は、作業者の端末に入力画像データ50と共に文字列認識結果を表示し、作業者からその文字列認識結果に対する確認、修正を受け付ける。この場合作業者は、端末に表示された入力画像データ50と文字列認識結果を見比べて、文字列認識結果の文字列が正しいと判断した場合はその文字列に対する確認の操作を行い、誤っていると判断した場合はその文字列を修正する。プロセッサ102は、このようにして作業者による確認又は修正を経た結果の文字列を、システムの最終的な認識結果として出力する。
【0031】
このように、従来方式では、文字列確度が十分に高い(すなわち閾値Aより高い)場合に、人間の介入なしに、文字列認識結果を最終的な認識結果として採用した。
【0032】
<実施形態の処理手順>
上記従来の手順に対する本実施形態の処理手順を図4に例示する。
【0033】
この手順では、プロセッサ102は、OCR10から文字列認識結果、文字列確度、及びその文字列認識結果に含まれる各文字の単文字確度を取得する(S10)。次にプロセッサ102は、取得した文字列確度が所定の閾値1より高いか否かを判定する(S12)。この判定に用いる閾値1は、図3の従来手順のS2で用いてられる閾値Aよりも低い値でよい。
【0034】
S12の判定結果がYesの場合、プロセッサ102は、更に、文字列認識結果に含まれる各文字の単文字結果の単文字確度をそれぞれ所定の閾値2と比較する。閾値2は、例えば全ての文字について共通の値でよい。そして、プロセッサ102は、文字列認識結果に含まれる全ての文字について、単文字確度が閾値2より高いか否かを判定する(S14)。文字列認識結果の各文字の中に単文字確度が閾値2以下のものが1つでもあれば、S14の判定結果はNoとなる。
【0035】
S14の判定結果がYesの場合、プロセッサ102は第1処理を実行する(S16)。一方、S12又はS14の判定結果がNoの場合、プロセッサ102は第2処理を実行する(S18)。
【0036】
第1処理は、第2処理よりも、人間の作業者の作業量が相対的に少ない処理である。例えば、図2の手順のS3のように文字列認識結果を作業者の介入無くそのまま最終的な処理結果として出力する処理が第1処理の例であり、文字列認識結果をリジェクトして作業者による確認・修正を受ける処理が第2処理の例である。
【0037】
第1処理の別の例としては、作業者に文字列認識結果の確認のみを求める処理がある。この処理では、プロセッサ102は、作業者の端末の画面上に入力画像データ50と文字列認識結果とを表示し、文字列認識結果が正しいかどうかの確認結果の入力を作業者に求める。また、作業者による確認・修正に代わる第2処理の別の例としては、作業者に入力画像データ50を提示し、入力画像データ50に含まれる文字列のテキストデータを作業者に入力させる処理がある。
【0038】
図4の手順において、S12とS14の実行順序は逆であってもよい。
【0039】
第1処理は、第2処理よりも、必要とする人間の作業量が少ないので、第1処理が選択される確率が高いほど、システム全体として必要な人間の作業量が減る。本実施形態では、従来用いていた文字列確度に加えて単文字確度も用いることにより、第1処理が選択される確率が高くなる。このことを、図5を参照して説明する。
【0040】
図5は、多数のサンプル入力画像をそれぞれOCR10で認識させたときの認識結果の散布図500を示し、縦軸は文字列確度、横軸は単文字確度の代表値(例えば文字列認識結果内の各文字の単文字確度のうちの最低値)である。文字列確度は上に行くほど高い値であり、単文字確度は左に行くほど高い値である。濃色の菱形のプロット502は正認識のサンプルを示し、淡色の正方形及び三角形のプロット504及び506は誤認識のサンプルを示す。
【0041】
図5に示す分布では、文字列確度のみを用いて正解率を十分高い値(すなわち100%に近い所定の閾値以上の値)とするには、文字列確度が図示の閾値Aより高くなる必要がある。これに対して、単文字確度も併せて用いる場合、文字列確度が図示の閾値1より高く、且つ単文字確度が閾値2より高ければ、正解率は十分高い値となる。文字列確度が閾値Aより高い範囲と、文字列確度が閾値1より高く且つ単文字確度が閾値2より高い範囲とを比較した場合、後者の範囲の方が、内包する正認識のプロット502の数が多い。したがって、後者の方が、正解率が維持されたまま、人間の作業量が相対的に少ない第1処理が適用される文字列認識結果の比率が高くなる。
【0042】
<閾値設定>
本実施形態のシステムは、判定に用いる閾値の設定をユーザから受け付けるUI(ユーザインタフェース)画面を提供していてもよい。
【0043】
図6に、このUI画面600を例示する。このUI画面600は、図4に例示した手順で用いる閾値1、閾値2を設定するためのものである。
【0044】
このUI画面600は、図5に例示したのと同様の散布図500を表示する。この散布図500上で、文字列確度に対する閾値1と、単文字確度に対する閾値2の設定を受け付ける。閾値1は散布図500を横切る水平な線で示され、閾値2は散布図500と交わる縦方向の線として示される。閾値1の入力欄602、閾値2の入力欄604に対して、ユーザはそれぞれ閾値の値を入力する。散布図500上に示される各閾値の線は、それら入力欄602~604内の閾値に応じた位置に表示される。
【0045】
またUI画面600内には、認識率表示欄610と割合表示欄620とが示される。認識率表示欄610には、ユーザが設定した閾値群により実現される認識率が示される。この認識率は、図4の手順において第1処理(S16)を実行した場合の認識率すなわち正解率である。この例では第1処理は文字列認識結果をシステムの最終的な認識結果として出力するものとする。この場合に表示される認識率は、設定された閾値群のもとで、S12及びS14の判定結果が共にYesとなるサンプル画像群の総数のうち、対応する文字列認識結果が正認識であるものの割合である。また、割合表示欄620は、サンプル画像の総数のうち、設定された閾値群のもとで第1処理(S16)が適用されるものの割合を表示する。この割合が高い程、必要な人間の作業量が少なくなる。ユーザは、各閾値をそれぞれ変えながら、認識率表示欄610及び割合表示欄620に表示される値を確認し、所望の性能が得られる閾値の組合せを決定する。
【0046】
図4の処理手順の変形例>
図7を参照して、本実施形態のプロセッサ102が実行する手順の変形例を説明する。
【0047】
図7の手順では、プロセッサ102は、OCR10から、複数の認識結果の候補の情報を取得する(S20)。図4の手順では、プロセッサ102は、OCR10から、文字列確度が最高値である1つの文字列認識結果を取得した。これに対して、S20では、文字列確度が高い順に複数の文字列認識結果を候補として取得するのである。取得する候補の数は例えばあらかじめ定めた数であってもよい。また、例えば、文字列確度が最高値である文字列認識結果と、その最高値に対して所定差以内、又は所定割合以上、の文字列確度を持つ文字列認識結果を候補とするなど、取得する候補の数を認識対象に応じて変化させてもよい。また、文字列確度が閾値1より高い文字列認識結果を候補として選んでもよい。この閾値1は、図4の手順で用いたものと同じものである。S20では、プロセッサ102は、候補ごとに、文字列認識結果とこれに対応する文字列確度、その文字列認識結果に含まれる各文字の単文字確度、を取得する。
【0048】
次にプロセッサ102は、文字列確度が最上位である候補を注目候補とし(S22)、その注目候補の文字列確度が閾値1より高いか(S24)、及びその注目候補の各文字の単文字確度が全て閾値2より高いか(S26)を判定する。S24及びS26の判定結果がともにYesであれば、プロセッサ102は、注目候補の文字列認識結果を対象として第1処理を実行する(S28)。この第1処理は、例えば注目候補の文字列認識結果をシステムの最終的な認識結果として出力する処理である。
【0049】
S24又はS26の判定結果の少なくとも一方がNoの場合、プロセッサ102は、S20で取得した全ての候補についてS24、S26の判定が済んだかどうかを判定する(S30)。S30の判定結果がNoの場合、プロセッサ102は、次位の候補、すなわち文字列確度が注目候補の次に高い候補を新たな注目候補とし(S32)、S24及びS26の判定を繰り返す。以上に説明した処理の繰り返しにおいて、S30の判定結果がYesとなった場合、それは、候補の中にS24及びS26の判定結果の両方がYesとなるものがなかったということである。この場合、プロセッサ102は、第2処理を実行する(S34)。第2処理は、第1処理よりも人間の作業を多く必要とする処理であり、例えば最上位の候補の文字列認識結果に対して作業者による確認・修正を受ける処理がその例である。
【0050】
以上に説明した図7の手順によれば、文字列確度が最上位の文字列認識結果のみを判定する図4の手順よりも、第1処理(S28)が適用されるケースが増え、その分だけ人間の作業量が低減される。
【0051】
図7の手順では、文字列確度が高い候補から順に評価し、最初にS24及びS26が共にYesとなった候補を第1処理(S28)の対象としたが、このような手順は一例に過ぎない。この代わりに、例えば、すべての候補についてS24及びS26の判定を行い、S24及びS26が共にYesとなった候補のうち、文字列確度と単文字確度の総合評価した場合の評価値が最高となったものを、第1処理の対象としてもよい。
【0052】
<一般化したシステム構成の例>
以上に説明したシステムは、1つのOCR10が算出する文字列確度と単文字確度を用いるものであった。
【0053】
これに対して図8に例示するシステムは、2つのOCR1及びOCR2を備える。OCR1とOCR2とは、互いに異なる文字認識処理を実行する。すなわち、OCR1とOCR2とは、例えば、使用する文字認識のプログラムが互いに異なっていたり、文字認識の学習に用いた学習データ集合が互いに異なっていたりする。OCR1と2とに十分大きい数のサンプル画像群を処理させた場合、サンプル画像群に対するOCR結果の正解(すなわち正認識)と不正解(すなわち誤認識)の分布は、OCR1と2とで異なる。OCR1と2とは、同じ入力画像データ50を認識する。この例では、OCR1が基準となる認識器であり、OCR2は補助用である。
【0054】
情報処理装置100は、OCR1から入力画像データ50に対する認識結果(「認識結果1」と呼ぶ)と、その認識結果1に対する認識確度(「確度1」と呼ぶ)を取得する。この認識結果1は、OCR1による入力画像データ50の認識結果のうち最高の確度を持つものである。また情報処理装置100は、OCR2から、その入力画像データ50の認識結果のうちOCR1の認識結果1と同じ認識結果についての認識確度(「確度2」と呼ぶ)を取得する。例えば、ある入力画像データ50に対するOCR1の認識結果1が「ABC」であった場合を考える。この入力画像データ50に対してOCR2はいくつかの認識結果の候補とその候補についての確度を求めるが、情報処理装置100は、それら候補のうち値が「ABC」であるものについての確度を確度2として取得する。そして、情報処理装置100は、OCR1及び2から取得したそれらの情報を用いて、入力画像データ50に対するシステムとしての最終的な認識結果を求めるための処理を実行する。
【0055】
図9に、その処理の手順を例示する。この手順では、プロセッサ102は、OCR1から入力画像データ59に対する認識結果1と確度1を、OCR2から同じ入力画像データに対するその認識結果1についての確度2を、それぞれ取得する(S40)。次にプロセッサ102は、確度1が所定の閾値T1より高いか(S42)、確度2が所定の閾値T2より高いか(S44)を判定する。閾値T1及びT2は、図5を参照して説明した閾値1及び2の定め方と同様の考え方で定められる。すなわち、仮にOCR1の認識結果1についての確度1が閾値Aよりも高い場合にその認識結果1を最終的な認識結果に採用すれば、システムの正解率が所定値以上になるとすると、この例では確度2も考慮するため、閾値T1はその閾値Aよりも低い値でよい。
【0056】
S42及びS44の判定結果がともにYesであれば、プロセッサ102は、認識結果1を対象として第1処理を実行する(S16)。この第1処理では、例えば認識結果1をシステムの最終的な認識結果として出力する。S42又はS44の少なくとも一方の判定結果がNoの場合は、プロセッサ102は、第2処理を実行する(S48)。第2処理は、第1処理よりも人間の作業を多く必要とする処理であり、例えば認識結果1に対して作業者による確認・修正を受ける処理がその例である。
【0057】
図8及び図9を用いて説明した例では2つのOCR1及び2を用いたが、この代わりに、それら2つのOCR1と2の両方の機能を持つ1つの認識装置を用いてももちろんよい。
【0058】
以上、図8及び図9を参照して説明したシステムでは、図5を参照して説明した図4の処理手順の効果と同様、正解率を維持しつつ、第1処理が適用される割合を高めることができる。
【0059】
図9の手順は図4の手順に対応するものであったが、図9の手順の変形として、図4の手順に対する図7の手順と同じ関係にある手順も考えられる。この変形の手順では、情報処理装置100は、OCR1から確度が高い順に複数の認識結果の候補とその確度とを取得し、OCR2からそれら各候補と同じ値の認識結果についての確度を取得する。その後の処理は、図7に示した手順と同様でよい。
【0060】
以上に説明した実施形態はあくまで例示的なものにすぎない。本発明の範囲内で、様々な変形が可能である。
【符号の説明】
【0061】
10 OCR、150 入力画像データ、100 情報処理装置、102 プロセッサ、104 メモリ、106 補助記憶装置、108 入出力装置、110 ネットワークインタフェース、112 バス。
図1
図2
図3
図4
図5
図6
図7
図8
図9