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

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

▶ キヤノン オイローパ エヌ.ヴェー.の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-11
(45)【発行日】2022-03-22
(54)【発明の名称】画像処理方法及び画像処理システム
(51)【国際特許分類】
   G06V 30/24 20220101AFI20220314BHJP
   G06V 30/194 20220101ALI20220314BHJP
   G06T 7/00 20170101ALI20220314BHJP
【FI】
G06K9/62 620D
G06K9/66
G06T7/00 350C
G06T7/00 300F
G06T7/00 300D
G06K9/62 650A
【請求項の数】 17
(21)【出願番号】P 2020523263
(86)(22)【出願日】2019-02-20
(65)【公表番号】
(43)【公表日】2021-01-28
(86)【国際出願番号】 EP2019054228
(87)【国際公開番号】W WO2019166301
(87)【国際公開日】2019-09-06
【審査請求日】2020-05-08
(31)【優先権主張番号】1803262.3
(32)【優先日】2018-02-28
(33)【優先権主張国・地域又は機関】GB
(73)【特許権者】
【識別番号】599041075
【氏名又は名称】キヤノン オイローパ エヌ.ヴェー.
(74)【代理人】
【識別番号】100076428
【弁理士】
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100115071
【弁理士】
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100112508
【弁理士】
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100116894
【弁理士】
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【弁理士】
【氏名又は名称】下山 治
(74)【代理人】
【識別番号】100134175
【弁理士】
【氏名又は名称】永川 行光
(74)【代理人】
【識別番号】100134474
【弁理士】
【氏名又は名称】坂田 恭弘
(72)【発明者】
【氏名】コレット, フレデリック
(72)【発明者】
【氏名】ハウトット, ジョーディ
(72)【発明者】
【氏名】ダウ, ミケル
【審査官】新井 則和
(56)【参考文献】
【文献】特開2009-245464(JP,A)
【文献】特開昭56-035276(JP,A)
【文献】特開2010-217996(JP,A)
【文献】特表平06-508464(JP,A)
【文献】特開2004-046315(JP,A)
【文献】特開2018-025885(JP,A)
【文献】米国特許出願公開第2014/0212039(US,A1)
【文献】米国特許出願公開第2004/0037470(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/00-30/424
G06T 7/00-7/90
(57)【特許請求の範囲】
【請求項1】
画像内に含まれる文字を認識するための画像処理方法であって、前記画像処理方法は、
第1の文字認識部の出力に基づいて、前記画像の第1の領域に対応する第1の文字グループを識別することと、
前記第1の文字グループの信頼度を算出することと、
前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定することと、
更なる認識が実行されるべきであると判定された場合、前記第1の領域と前記第1の領域に隣接するものと識別された単語とを含む前記画像の第2の領域を選択することと、
前記第1の文字認識部とは異なる第2の文字認識部によって、前記画像の前記第2の領域において、前記画像の前記第2の領域に対応する第2の文字グループの更なる認識を実行することと、
を備え
前記第2の文字グループの更なる認識は、複数の単語列を認識するように訓練されたニューラルネットワークを利用する、方法。
【請求項2】
請求項1に記載の方法であって、更に、
前記画像の複数の第1の領域に対応する1つ以上の文字の複数の第1のグループの認識を実行することと、
前記複数の第1の文字グループの各々の信頼度を算出することと、
前記複数の第1の文字グループの各々について、対応する前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定することと、
更なる認識が実行されるべきであると判定された場合、各々が対応する前記第1の領域を含む前記画像の複数の第2の領域を選択することと、
前記画像の前記複数の第2の領域に対応する複数の第2の文字グループの更なる認識を実行することと、
を備える、方法。
【請求項3】
請求項2に記載の方法であって、更なる認識が実行されるべきか否かを判定することは、前記複数の第1の文字グループの各々の前記信頼度に基づいて、最大数の前記複数の第1の文字グループを選択することを含む、
方法。
【請求項4】
請求項1乃至3のいずれか一項に記載の方法であって、前記第1の文字グループの認識は、
前記第1の領域がグリフと比較されるマトリックスマッチングと、
前記第1の領域がグリフの複数の特徴と比較される特徴抽出と、
のうちの少なくとも1つを含む、
方法。
【請求項5】
請求項1乃至4のいずれか一項に記載の方法であって、前記信頼度は、
前記第1の文字グループの全ての文字に関する平均重みと、
前記第1の文字グループの全ての文字に関する最大重みと、
のうちの少なくとも1つに基づく、
方法。
【請求項6】
請求項1乃至5のいずれか一項に記載の方法であって、前記信頼度が閾値未満の場合に、更なる認識が実行されるべきであると判定される、
方法。
【請求項7】
請求項6に記載の方法であって、
前記閾値未満の画素数と、
前記閾値未満の高さと、
のうちの少なくとも1つを有するものと識別される前記第1の領域内のテキストに前記第1の文字グループが対応する場合に、更なる認識が実行されるべきであると判定される、
方法。
【請求項8】
請求項1乃至7のいずれか一項に記載の方法であって、前記第2の文字グループの更なる認識は、
前記画像の前記第2の領域と、
低品質の画像と、
のうちの少なくとも1つに対してカスタマイズされている、
方法。
【請求項9】
請求項1乃至のいずれか一項に記載の方法であって、前記第2の領域は、前記第1の領域に隣接する1つ以上の単語を更に含む、
方法。
【請求項10】
請求項1乃至のいずれか一項に記載の方法であって、前記第2の領域は、前記第1の領域と同じテキストライン上の1つ以上の単語を更に含む、
方法。
【請求項11】
請求項1乃至10のいずれか一項に記載の方法であって、前記第2の領域は、前記第1の領域に文脈を提供するものとして識別された単語を更に含む、
方法。
【請求項12】
画像内に含まれる文字を認識するための画像処理システムであって、前記画像処理システムは、
前記画像の第1の領域に対応する第1の文字グループを識別するように構成された第1の文字認識部と、
前記第1の文字グループの信頼度を算出するように構成された測定部と、
前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定するように構成された判定部と、
更なる認識が実行されるべきであると判定された場合、前記第1の領域と前記第1の領域に隣接するものと識別された単語とを含む前記画像の第2の領域を選択するように構成された選択部と、
前記画像の前記第2の領域に対応する第2の文字グループの更なる認識を実行するように構成された、前記第1の文字認識部とは異なる第2の文字認識部と、
を備え
前記第2の文字グループの更なる認識は、複数の単語列を認識するように訓練されたニューラルネットワークを利用する、画像処理システム。
【請求項13】
請求項12に記載の画像処理システムであって、前記第1の文字認識部は、
前記第1の領域がグリフと比較されるマトリックスマッチングと、
前記第1の領域がグリフの複数の特徴と比較される特徴抽出と、
のうちの少なくとも1つを実行するように構成される、
画像処理システム。
【請求項14】
請求項12又は13に記載の画像処理システムであって、前記第2の文字認識部は、
前記画像の前記第2の領域と、
低品質の画像の領域と、
のうちの少なくとも1つに対してカスタマイズされている前記第2の文字グループの更なる認識を実行する、
画像処理システム。
【請求項15】
請求項12乃至14のいずれか一項に記載の画像処理システムであって、前記第2の文字認識部は、複数の単語列を認識するように訓練されたニューラルネットワークを利用することによって前記第2の文字グループの更なる認識を実行する、
画像処理システム。
【請求項16】
画像処理システムによって実行されると、前記画像処理システムに請求項1乃至11のいずれか一項に記載の方法を実行させる、プログラム。
【請求項17】
請求項16に記載のプログラムを格納したコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像内に含まれる文字(character)を認識するための画像処理方法及び画像処理システムに関する。特に、本発明は、画像の文字認識に関する。
【背景技術】
【0002】
文字認識は、画像に含まれるテキストをマシンエンコードされたテキストに変換するために行われる。文字認識ソフトウェアを使用して分析することができる画像には、スキャンされた文書、文書の写真、シーンの写真、ビデオ記録、及び文書に重ね合わされたテキストが含まれる。変換可能な画像内のテキストには、タイプされたテキスト、手書きされたテキスト、及び印刷されたテキストが含まれる。マシンエンコードされたテキストには、ASCII、ユニコード、及び絵文字などの、電子通信用の任意の文字エンコード規格が含まれる。文字認識の用途には以下のものが含まれる:
-画像に含まれるテキストに対応するマシンエンコードされた文字をユーザに対して表示すること;
-ユーザがテキストを選択できるように、マシンエンコードされた文字で画像をオーバーレイすること;
-マシンエンコードされたテキストの検索を可能にすることによって、画像に含まれるテキストの検索機能を提供すること;
-コンピューティングデバイスが画像に含まれるテキストの文脈を解釈する機械読取;
-画像に含まれるテキストに対応するマシンエンコードされた文字のデータ入力;
-自動ナンバープレート認識;
-手書きをリアルタイムで変換して、テキストをコンピューティングデバイスに入力すること。
【0003】
文字認識ソフトウェアは入力として画像を受信し、マシンエンコードされたテキストを出力するように構成される。更に、文字認識ソフトウェアは、エラー解析を実行して、出力されるマシンエンコードされたテキストの信頼度を判定することができる。
【0004】
文字認識という用語は、画像内の個々の文字の識別及び認識を指す。しかしながら、文字認識という用語は、識別及び認識が一度に1つの単語で行われる単語認識を含むようにも使用される。文字認識としては、例えば、光学文字認識、光学単語認識、インテリジェント文字認識、インテリジェント単語認識などがある。
【0005】
文字認識は、ラテン文字、キリル文字、アラビア文字、ヘブライ文字、インド文字、ベンガル文字、デヴァナーガリー文字、タミル文字、中国文字、日本文字、韓国文字、モールス符号、点字など、文書に含まれるライティングシステムに基づいてカスタマイズされる。文字認識は、画像に含まれるテキストの言語に基づいて更にカスタマイズされる。テキストのライティングシステム及び言語は、ユーザによって識別することができ、或いは、テキストのライティングシステム及び言語は、認識される文字及び単語の文脈から文字認識ソフトウェアによって識別することができる。更に、文字認識は、多くのライティングシステム又は言語でのテキストを含む文書を処理するようにカスタマイズすることができる。
【0006】
文字認識は、マシンエンコードされた文字を、画像の中で見つけることができるグリフの少なくとも1つの例と関連付けることによって行われる。文字認識の精度は、マシンエンコードされた文字を表すグリフの数を増やすことによって改善される。これは、様々なフォントを認識する際の精度を高めるために特に有用である。インテリジェント認識は、ニューラルネットワークを利用するコンピュータシステムを訓練する機械学習を使用することによって達成される。インテリジェント認識は、例として記憶されたグリフに対応しない文字の認識を強化する。
【0007】
マシンエンコードされたテキストには、多くの場合、エラーが含まれる。エラーは、ユーザがマシンエンコードされたテキストを校正することで修正できる。これは、ユーザに負担をかけるため、文字認識の精度を向上させ、エラーの検出を強化させる技術が利用可能である。例えば、出力が、文書内で出現することが予期される単語の辞書である語彙集の影響を受ける場合、文字認識精度を高めることができる。エラーの検出は、スペルチェック又は文法チェックを実行して、マシンエンコードされたテキストの文脈を評価することによって、強化することができる。
【0008】
特定の条件下での検出を実行することに特化した文字認識が開発されている。文字認識は、画像の状態が可変である場合に特に困難であり、その場合には、最も適切な文字認識技術を注意深く選択すべきである。次に例を示す:
-文字認識ソフトウェアは、典型的には複合機(multifunction peripheral device)によってスキャンされた文書のクリーンページを読み取るようにカスタマイズされており、その場合、画像が透かしを含む場合にエラーに遭遇することがある;
-文字認識ソフトウェアは、低品質の文書を読み取るようにカスタマイズされてもよく、その場合、出力される文字は、高品質の文書を読み取るようにカスタマイズされた文字認識ソフトウェアと比較して、より高い精度を有することになろう;
-自動ナンバープレート認識は、車両登録プレートを読み取るようにカスタマイズされ、これは更に、異なる気象条件及び異なるスタイルの車両登録プレートに対処するように強化されている。
【0009】
文字認識ソフトウェアは、精度が向上するように特殊化されている。しかし、文字認識ソフトウェアは、処理能力などのコンピュータリソースを消費する。更に、使用されるコンピュータリソースは、文字認識ソフトウェアが実行される時間に影響を与える。消費されるコンピュータリソースは、選択された文字認識技術に依存し、コンピュータリソースはまた、画像の品質にも依存する。その結果、利用可能なコンピュータリソースと所望の精度レベルとの間で妥協点に達する必要がある。
【発明の概要】
【0010】
本発明の態様は、独立請求項によって示される。
【0011】
第1の態様によれば、画像内に含まれる文字を認識するための画像処理方法が提供され、前記画像処理方法は、前記画像の第1の領域に対応する1つ以上の文字の第1のグループの認識を実行することと、前記第1の文字グループの信頼度を算出することと、前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定することと、更なる認識が実行されるべきであると判定された場合、前記第1の領域を含む前記画像の第2の領域を選択することと、前記画像の前記第2の領域に対応する第2の文字グループの更なる認識を実行することと、を備える。
【0012】
第2の態様によれば、画像内に含まれる文字を認識するための画像処理システムが提供され、前記画像処理システムは、前記画像の第1の領域に対応する1つ以上の文字の第1のグループの認識を実行するように構成された第1の文字認識部と、前記第1の文字グループの信頼度を算出するように構成された測定部と、前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定するように構成された判定部と、更なる認識が実行されるべきであると判定された場合、前記第1の領域を含む前記画像の第2の領域を選択するように構成された選択部と、前記画像の前記第2の領域に対応する第2の文字グループの更なる認識を実行するように構成された第2の文字認識部と、を備える。前記画像処理システムの特徴は、1つ以上のデバイスによって提供することができる。
【0013】
オプションとして、前記画像処理システムは、前記第1の文字認識部及び前記第2の文字認識部の両方を備える画像処理装置を含む。
【0014】
オプションとして、前記画像処理システムは、前記第1の文字認識部を備える第1の画像処理装置と、前記第2の文字認識部を備える第2の画像処理装置と、を含む。
【0015】
第3の態様によれば、画像処理システムによって実行されると、前記画像処理システムに第1の態様に係る方法を実行させる、プログラムが提供される。
【0016】
第4の態様によれば、第3の態様に係るプログラムを格納したコンピュータ可読媒体が提供される。
【0017】
有利には、複数の文字認識部のうちの最良のものが、前記画像内の文字を認識するために使用される。従って、文字認識は、前記画像にカスタマイズされた文字認識部を使用して実行される。画像が複数の条件を含む場合、文字認識部は、それらがカスタマイズされる対象の前記画像の領域を割り当てられる。リソースの割り当ては、低品質であると識別された前記画像の領域に対して実行されるべき計算集中的な文字認識を提供することによって最適化される。
【0018】
オプションとして、前記画像処理システムによって実行される前記画像処理方法は更に、前記画像の複数の第1の領域に対応する1つ以上の文字の複数の第1のグループの認識を実行することと、前記複数の第1の文字グループの各々の信頼度を算出することと、前記複数の第1の文字グループの各々について、対応する前記信頼度に基づいて、更なる認識が実行されるべきか否かを判定することと、更なる認識が実行されるべきであると判定された場合、各々が対応する前記第1の領域を含む前記画像の複数の第2の領域を選択することと、前記画像の前記複数の第2の領域に対応する複数の第2の文字グループの更なる認識を実行することと、を備える。有利には、前記更なる認識が複数の第2の領域に対して実行され、従って、複数のエラーが訂正される。
【0019】
オプションとして、更なる認識が実行されるべきか否かを判定することは、前記複数の第1の文字グループの各々の前記信頼度に基づいて、最大数の前記複数の第1の文字グループを選択することを含む、有利には、利用可能なコンピューティングリソースが適切に割り当てられるように、更なる認識が最大回数実行される。
【0020】
オプションとして、前記第1の文字グループの認識は、前記第1の領域がグリフと比較されるマトリックスマッチングと、前記第1の領域がグリフの複数の特徴と比較される特徴抽出と、のうちの少なくとも1つを含む。マトリックスマッチング及び特徴抽出は、前記第1の文字認識部によって実行される技法である。マトリックスマッチング及び特徴抽出は、個別に又は組み合わせて実行することができる。有利には、第1の文字の認識と第2の文字の更なる認識との間に相乗効果があり、その結果、少ない処理量が前記第1の文字認識部によって使用され、その結果、計算リソースをエラー訂正の実行に向けることができる。
【0021】
オプションとして、前記信頼度は、前記第1の文字グループの全ての文字に関する平均重みに基づく。有利には、単語の全ての文字にわたって平均して信頼度が低い単語が識別される。
【0022】
オプションとして、前記信頼度は、前記第1の文字グループの全ての文字に関する最大重みに基づく。有利には、単語の特定の文字に対する信頼度が低い単語が識別される。
【0023】
オプションとして、前記信頼度が閾値未満の場合に、更なる認識が実行されるべきであると判定される。有利には、コンピュータリソースが適切に割り当てられるように、更なる認識が実行されるべきか否かの評価が行われる。従って、複数のエラーが識別された場合には、優先度の順に更なる認識を実行することで、これらのエラーに対応することができる。
【0024】
オプションとして、前記閾値未満の画素数を有するものと識別される前記第1の領域内のテキストに前記第1の文字グループが対応する場合に、更なる認識が実行されるべきであると判定される、有利には、画素数が少ないことは文字認識がエラーを含む可能性が高いことを示す。
【0025】
従って、更なる認識を、画素数の少ない文字を含む文書を分析することに対してカスタマイズすることができる。
【0026】
オプションとして、前記閾値未満の高さを有するものと識別される前記第1の領域内のテキストに前記第1の文字グループが対応する場合に、更なる認識が実行されるべきであると判定される、有利には、高さが低いと、文字の画素数が少なくなり、これは文字認識がエラーを含む可能性が高いことを示す。従って、更なる認識を、雑誌の表紙及び新聞などのような高さの異なるテキストを含む文書を分析することに対してカスタマイズすることができる。
【0027】
オプションとして、前記第2の文字グループの更なる認識は、低品質の画像に対してカスタマイズされる。有利なことに、文字認識の精度は、選択された画像のタイプに合わせてカスタマイズされた第2の文字認識部を使用することによって改善される。
【0028】
オプションとして、前記第2の文字グループの更なる認識は、前記画像の前記第2の領域に対してカスタマイズされる。有利には、文字認識の精度は、選択された第2の領域のタイプに合わせてカスタマイズされた第2の文字認識部を使用することによって改善される。
【0029】
オプションとして、前記第2の文字グループの更なる認識は、低品質の画像の領域に特化される。品質レベルを決定するために前記第2の領域の評価を行うことができ、第2の文字認識部が選択され、その結果、信頼度が高い第2の文字グループが出力される。有利には、文字認識の精度は、低品質画像を分析するようにカスタマイズされた第2の文字認識部を使用することによって向上させられる。
【0030】
オプションとして、前記第2の文字グループの更なる認識は、ニューラルネットワークを利用する。使用されるニューラルネットワークは、複数の単語列を認識するように訓練されている。有利には、単語列がニューラルネットワークに文脈情報を提供し、その結果、前記第2の文字認識部は単独で認識することが困難な単語を認識するようにカスタマイズされる。
【0031】
オプションとして、前記第2の領域は、前記第1の領域と更なる領域とを含み、前記更なる領域にも以前に文字認識がなされている。従って、前記更なる領域の文字認識により、前記第2の領域の更なる認識を実行するための文脈を提供するために前記更なる領域を使用することが可能になる。オプションとして、前記第2の領域は、前記第1の領域に隣接するものとして識別された1つ以上の単語を更に含む。有利には、隣接する単語は前記第1の領域に文脈を提供し、従って、信頼度が向上することが期待され、エラーが訂正される可能性が増大する。
【0032】
オプションとして、前記第2の領域は、前記第1の領域と同じテキストライン上にあるものとして識別された1つ以上の単語を更に含む。有利には、前記第1の領域と同じテキストライン上の単語は前記第1の領域に文脈を提供し、従って、信頼度が向上することが期待され、エラーが訂正される可能性が増大する。
【0033】
オプションとして、前記第2の領域は、前記第1の領域に文脈を提供するものとして識別された単語を更に含む。有利には、文脈測度が、前記第1の領域に文脈を提供する第2の領域を能動的に識別するために使用される。その結果、信頼度が向上することが期待され、エラーが訂正される可能性が増大する。
【図面の簡単な説明】
【0034】
ここで、添付の図面を参照して、実施形態を単に例として説明する。
【0035】
図1図1は、画像に含まれる文字を認識するための画像処理システムを示す概略図である。
【0036】
図2図2は、画像に含まれる文字を認識する画像処理方法を示すフローチャートである。
【0037】
図3A図3Aは、文字認識の結果として第1の文字グループが得られる第1の領域と、文字認識の結果として第2の文字グループが得られる第2の領域とを示す図である。
【0038】
図3B図3Bは、文字認識の結果として複数の第1の文字グループが得られる複数の第1の領域と、文字認識の結果として複数の第2の文字グループが得られる複数の第2の領域とを示す図である。
【0039】
図4A図4Aは、信頼度に基づいてエラーを含むと判定された第1の文字グループの例を提供する。
【0040】
図4B図4Bは、第1の文字グループを含む文字グループの例を提供する。
【0041】
図4C図4Cは、エラーが訂正された第2の文字グループの例を提供する。
【0042】
図5A図5Aは、信頼度に基づいて更なる認識を実行すると判定される第1の領域の例を提供する。
【0043】
図5B図5Bは、画像処理システムによって選択される第2の領域の例を提供し、第2の領域は第1の領域を含む。
【0044】
図5C図5Cは、第1の領域及び第2の領域を識別する、画像内のテキストラインの例を提供する。
【発明を実施するための形態】
【0045】
本発明の様々な例示的な実施形態、特徴、及び態様を、図面を参照して以下に詳細に説明する。以下に説明する本発明の各実施形態は単独で実施することもできるし、必要に応じて、又は単一の実施形態における個々の実施形態からの要素又は特徴の組合せが有益である場合に、複数の実施形態又はその特徴の組合せとして実施することもできる。
【0046】
図1は、画像に含まれるテキストを識別するための画像処理システム100を示す概略図である。画像処理システム100は、入力101及び出力102と、複数の文字認識部120と、プロセッサ130と、メモリ140とを含む。画像処理システム100は、複数の文字認識部120を備える単一の画像処理装置100として例示される。代替として、画像処理システム100は、各々が文字認識部を有する複数の画像処理装置を備えることができる。
【0047】
複数の文字認識部120は、少なくとも第1の文字認識部121と第2の文字認識部122とを含み、更に文字認識部を含んでいてもよい。各文字認識部120は、画像の領域内の文字を識別し、識別された文字をマシンエンコードされたテキストに関連付ける機能を実行する。画像の文字は、画像の領域内の画素の分析に基づいて識別され認識される。文字は、さまざまな言語、さまざまなフォントで認識できる。
【0048】
異なる文字認識部120は、文字認識が特定の条件に対して最適化されるようにカスタマイズされる。特定の条件の例としては、画像の品質、テキストの言語、テキストのフォント、テキストがタイプされたか手書きされたか、及び利用可能なコンピューティングリソースなどがある。
【0049】
第1の文字認識部121は、画像内の全ての文字を認識するように構成されており、特に、画像の第1の領域に対応する第1の文字グループを認識するように構成されている。第1の文字認識部121は、画像内のテキストを認識する従来の技術を利用して、文字認識を行う。画像の文字を識別するために、オーバーセグメンテーションが使用される。画像内で識別された文字は、画像処理システム100のメモリに記憶されている複数の基準グリフと比較される。マトリックスマッチング及び特徴抽出などの、画像内で識別された文字を基準グリフと比較するための多くの技法が利用可能である。マトリックスマッチングは、識別された文字の画素のパターンが基準グリフの画素のパターンと比較されることを伴う。特徴抽出は、入力文字を、線、閉ループ、線方向、及び線交点などの特徴に分解し、次いで、これらの抽出された特徴は、基準グリフの対応する特徴と比較される。
【0050】
画像の第1の領域は、第1の文字グループを分析した結果として、画像全体に対して実行される文字認識を振り返って(in retrospect of)識別される。或いは、第1の領域は、文字認識が実行される前又は実行されている間に識別することができる。第1の認識部121は高速であり、不明瞭にされていないプレーンテキストを分析する場合に信頼性がある。
【0051】
第2の文字認識部122は、画像の第2の領域に対応する第2の文字グループを更に認識するように構成されている。第2の文字認識部122は、複数の単語列を認識するように訓練されたニューラルネットワークを利用して、第2の文字グループの更なる認識を実行する。第2の文字認識部122は、ニューラルネットワークを用いて画像中のテキストを認識するために利用可能な従来の技術を利用する。第1の光学文字認識部121による文書全体の認識と、それに続く第2の光学文字認識部122による第2の領域の更なる認識との間には相乗効果があり、これは、計算リソースがエラー訂正を実行することに向けられるという技術的効果を与える。
【0052】
単語列は文脈情報をニューラルネットワークに提供し、その結果、第2の文字認識部122は、単独で認識することが困難な単語を認識するようにカスタマイズされる。更に、ニューラルネットワークは、低品質画像が正確に認識され得るように訓練され得る。ニューラルネットワークの訓練は、認識されるべき文字の表現を入力することによって達成される。トレーニングフェーズは、出力エラーを低減することによってニューラルネットワークが最適化されるように、勾配降下法を実行する。マシンエンコードされたテキストの出力は、トレーニングフェーズ中に入力されるテキストのサンプルとの比較からの確率測度に基づく。ニューラルネットワークのフィードフォワード処理は、確率測度に向かって収束するように実行される。ニューラルネットワークは、ニューラルネットワークの訓練中に遭遇しなかった文字の文字認識を実行することができるように第2の文字認識部をカスタマイズするために使用される。
【0053】
第2の文字認識部122は、不明瞭にされていないプレーンテキストを認識する際には第1の認識部121よりも正確ではないが、不明瞭にされたテキストの強化された認識を提供する。第2の文字認識部122は、低画質画像内のテキストを認識する際の精度を向上させる。しかしながら、第2の文字認識部122の実行は計算的に強度であり、その結果、画像処理は、ゆっくりと実行され、より多くの処理リソースを消費することになる。
【0054】
従って、望まれる精度レベルとリソースの割り当てとの間のバランスを見つける必要がある。これは、第1の文字認識部121を用いて文書全体に対して画像認識を行い、更に文字認識を行うと判断した場合には第2の文字認識部122を用いて更に文字認識を行うことにより、達成される。
【0055】
プロセッサ130は、測定部131、判定部132、及び選択部133として機能する。測定部131は、第1の文字グループの信頼度を計算するように構成される。判定部132は、信頼度に基づいて、更なる認識が実行されるべきかどうかを判定するように構成される。選択部133は、画像の第2の領域を選択するように構成され、第2の領域は第1の領域を含む。従って、プロセッサ130は、複数の文字認識部120によって提供される文字認識を利用することによって、どのように精度を向上させ資源を効率的に割り当てるかを識別するように構成される。
【0056】
画像全体に対する第1の文字認識部121の分析は、画像内で識別された全てのテキストに対応するマシンエンコードされた文字列をもたらす。測定部131は、信頼値を提供し、その結果、判定部132は、マシンエンコードされた文字列がエラーを含むかどうかを判定することができる。エラーの識別は、更なる認識が実行されるべき画像の第1の領域を識別するために、選択部133によって振り返って(in retrospect)使用されることができる。更なる認識が実行されるべきであることが決定されると、選択部133は、第1の領域を含む画像の第2の領域を識別し、従って、第1の領域を更に評価するために有用である追加の情報を提供する。
【0057】
これに代えて、第1の文字認識部121が文書全体に対して文字認識を行うよりも先に、第1の領域を選択するようにしてもよい。これにより、第1の文字グループをチェックする必要がある画像の一部として、第1の領域を事前に決定することができる。これは、例えば、ユーザが画像のこの部分が特に重要であることを識別した場合、又は画像の第1の領域が低品質であると判定された場合に、画像の部分に優先順位を付けることを可能にする。
【0058】
入力101及び出力102は、電子データを送受信するように構成される。入力101は、例えば、ローカルエリアネットワーク、インターネット、又は外部メモリから、分析されるべき画像を受信するように構成される。更に、入力101は、例えばマウス又はキーボードを介して、ユーザから命令を受信するように構成される。出力102は、識別されたテキストを出力するように構成される。出力102は、ユーザに対してテキストを識別するためのディスプレイを含む。出力102は、インターネットを介して通信するためのネットワーク接続を含む。
【0059】
画像処理装置100の特徴は、異なる構成とすることができる。例えば、各文字認識部120が、測定部131、判定部132、及び選択部133として機能するように構成されるプロセッサ130を備えることができる。複数の文字認識部120は、同一の装置の一部であってもよいし、或いは、複数のデバイスにまたがってシステムとして分散されていてもよい。
【0060】
画像処理装置100は、パーソナルコンピュータの一部であってもよい。或いは、画像処理装置100は、スキャナ、複写機、ファクシミリ、及びプリンタを更に含む複合機(multifunction peripheral device)の一部であってもよい。
【0061】
図2は、画像300に含まれるテキストを識別する画像処理方法S200を示すフローチャートである。画像処理方法S200は、画像処理システム100によって実施される。プログラムは、画像処理システム100によって実行されると、画像処理システムに画像処理方法S200を実行させる。コンピュータ可読媒体は、プログラムを格納する。
【0062】
ステップS210において、第1の文字認識部121は、画像300の第1の領域に対応する第1の文字グループ111を認識する機能を実行する。
【0063】
第1の文字認識部121は、画像上でオーバーセグメンテーションを行い、画像内の文字を識別する。画像は断片に分割され、次いで各断片が認識される。断片は組み立てられ、曖昧な場合には決定を行うために文脈情報が使用される。オーバーセグメンテーションは、文書の単語を識別し、各単語は、文字グループを含む。オーバーセグメンテーションは、文書に含まれるテキストラインを識別し、各テキストラインは単語のグループを含む。単語及びラインは、画像内の文字を認識するための文脈を提供するために使用することができる。
【0064】
第1の文字認識部121は、文書全体に対して文字認識を行うため、画像内の全てのテキストが解析される。有利には、これは迅速に実行され、文書内のテキストを識別するための第1の技法を提供する。
【0065】
オーバーセグメンテーションは、画像から抽出されたテキストの単語及び文字を識別するために使用される。第1の文字グループは、テキスト内で識別される単語に対応する。第1の文字グループは、画像から抽出されたテキストのサブセットである。第1の領域は、第1の文字グループを含む画像の部分である。第1の文字認識部121による文字認識の品質が低い第1の領域を特定することで、テキストの精度を高めることができる。なお、第1の文字グループは、単語が単一の文字を含む状況に対して単一の文字だけが識別されるなどのように、1つ以上のアルファベット(letter)を含むことができる。
【0066】
場合によっては、テキストは、第1の文字認識部121による文字認識の品質が低い複数の文字グループを含む。この場合、画像の複数の第1の領域が識別され、第1の領域の各々は、異なる第1の文字グループに対応する。有利なことに、テキストの精度は、訂正されるべき複数のエラーを識別することによって向上させることができる。
【0067】
各第1の領域は、認識された対応する第1の文字グループに関連付けられる。これにより、入力画像と出力テキストとのマッピングが可能となる。第1の文字グループに対して文字認識を再度実行することによって第1の文字グループの精度を更に詳細に調査する必要がある場合には、第1の領域を第1の文字グループに関連付けることが役立つ。更に、これは、文書の元の画像をオーバーレイする選択可能で機械読取可能なテキストを提供するためにレイヤーを画像に追加する際に、入力画像と出力テキストとの間のマッピングを持つのに有用である。
【0068】
ステップS220において、測定部131は、第1の文字グループ111の信頼度を算出する機能を実行する。
【0069】
信頼度は、文字認識部120によって検出された文字の各々に対する信頼性レベルを識別する。有利には、信頼性レベルにより、第1の文字認識部121からのテキスト出力におけるエラーを識別して除去することが可能になる。
【0070】
エラーは典型的には、それまでに遭遇したことのないスタイル(別のフォントや、不明瞭にされたテキストなど)が画像に含まれている場合に発生する。句読点を認識するエラーが発生し、その結果、文字の認識が困難になる場合がある。また、画像中の欠陥は、テキストを不明瞭にする可能性がある。画像の品質は、テキストを認識するときに遭遇するエラーに影響を及ぼすが、それはこれが曖昧さを導入するからである。解像度が低いと、メモリに記憶された文字セットへのマッピングの精度が低下するため、十分な画素がない場合に文字を認識することは困難である。高さの低いテキストは、画素数の少ない文字をもたらすので、これを識別することは特に困難である。
【0071】
低い信頼度は、文字認識部120による認識がエラーを含むことを示す。エラーを識別するために、様々な技法が利用可能である。次に例を示す:
-認識された文字が画像内で識別された文字を正確に表す確率を識別する重みWを各文字に割り当てること;
-単語の全ての文字の平均重みを表す重み(average(W))を各単語に割り当てること;
-単語の特定の文字の最大重みを表す重み(maximum(W))を各単語に割り当てること;
-ラインの全ての文字の平均重み又は最大重みを表す重みを各ラインに割り当てること;
-検出された単語が辞書に含まれているかどうかを判定するスペルチェックを実行すること;
-検出された単語が句読点を含むなどの一貫性のない特徴を含むかどうかを判定すること;
-文法をチェックすることなど、単語が適切な文脈を有するかどうかを評価するために認識された異なる単語を比較すること;
-画像内の文字を構成する画素数を決定すること、というのは、これは第1の文字グループを取得するために使用された第1の領域の解像度を示すからである;
-画像内の文字の高さを判定すること、というのは、文字の高さが低いと、文字を構成する画素数が少なくなるからである;
-測度であるaverage(W)及びmaximum(W)を組み合わせるなど、上記の技法の任意の組合せ。
【0072】
第1の領域と第1の文字グループとの間に関連付けがあることに加えて、これらは両方とも信頼度に更に関連付けられる。複数の第1の文字グループに対応する複数の第1の領域が識別された状況については、複数の信頼度が計算される。第1の領域の識別は、第1の文字グループが低い信頼値を有するものとして識別されると、振り返って(retrospectively)行われる可能性がある。
【0073】
ステップS230において、判定部132は、信頼度に基づいて、更なる認識が実行されるべきかどうかを判定する機能を実行する。信頼度が低い場合、これは、第1の文字グループがエラーを含む可能性があることを示す。従って、信頼度が閾値未満である場合、これは、更なる処理が実行されるべきであることを識別する。低い信頼度を有する複数の第1の文字が識別された状況においては、更なる認識を実行すべき第1の文字グループの最大数を選択することにより、最も低い信頼度について更なる認識を実行することにコンピュータリソースが割り当てられる。
【0074】
信頼度は、第1の文字グループに対応する。従って、信頼度は、第1の領域に対応する。マシンエンコードされたテキストと画像との間のマッピングは、信頼度が計算された後に行うことができ、これにより第1の文字グループが第1の領域に関連付けられる。或いは、第1の領域と第1の文字グループとの間のマッピングは、信頼度の計算の前に確立されてもよい。
【0075】
更なる認識が実行されない場合、方法S200は終了し、これは、第1の認識部121によって出力されたマシンエンコードされたテキストにおいてエラーが識別されなかった状況に対応する。しかしながら、更なる認識が実行されるべきである場合、方法S200はステップS240に進む。複数の第1の領域が識別された状況では、方法S200は、更なる認識が実行されるべきであると判定された第1の領域について、ステップS240に進む。従って、更なる認識を行う必要がない場合には、これはリソースを節約して文字認識の実行を高速化することを可能にする。
【0076】
更なる認識が実行されるべきかどうかの判定は、信頼度に基づく。閾値度が閾値未満である場合、これは、第1の文字認識の品質が低いことを示し、従って、更なる認識が実行されるべきである。特に、信頼度を構成する重み値が考慮される。更に、文字の高さを判定するなど、文字を構成する画素数を考慮することができる。
【0077】
複数の第1の領域が識別された状況では、第1の領域の各々が信頼度に基づいてソートされる。有利には、更なる認識を最も必要とする第1の領域は、リソースの割り当てについて優先される。更なる認識を提供するために利用可能な処理量は限られており、従って、最大数の第1の領域を更に分析してもよい。この最大数は、ユーザによって選択されてもよいし、画像文書のサイズに基づいて判定されてもよいし、又は計算された複数の信頼度を評価することによって判定されてもよい。或いは、複数の第1の領域をソートすることにより、利用可能なリソースが枯渇するまで(更なる認識に利用可能な処理量に制限があるなど、又は、更なる認識の処理に利用可能な更なる時間がないことをタイマが示すなど)、更なる認識を実行することが可能になる。
【0078】
ステップS240において、選択部133は、第1の領域について更なる認識が行われるべきであると判定された場合、第1の領域を含む画像300の第2の領域を選択する機能を実行する。
【0079】
第1の領域は、1つ以上の単語を形成する文字グループに対応する。この第1の領域に対して更なる認識ステップが実行されるため、第2の領域は第1の領域を含む。しかしながら、第2の領域は第1の領域に文脈を提供する画像の部分を更に含むので、第2の領域は第1の領域よりも大きい。第2の領域は、第1の領域に対する以下のような追加情報を含む:
-第1の領域に隣接する単語;
-第1の領域を含むテキストライン全体;
-第1の領域に文脈を提供するものとして識別された画像の部分。
【0080】
ステップS250において、第2の文字認識部は、画像300の第2の領域に対応する第2の文字グループ222を更に認識する機能を実行する。
【0081】
第2の領域は、画像のサブセットである。従って、第1の文字認識部121は文書全体に対して文字認識を行うのに対し、第2の文字認識部122は、画像のはるかに小さい部分に対して文字認識を行う。その結果、第2の文字認識部122は、第1の領域の一部としてエラーを含むと識別された第2の領域に注目する。更に、第2の文字認識部122は、第1の領域に文脈を提供するものとして識別される追加情報を利用する。
【0082】
第2の文字認識部122の出力は、第1の文字認識部121の出力よりも正確であることが期待される。その結果、第1の文字認識部121によって出力されたテキストの対応する部分が、第2の文字認識部122の出力によって置き換えられる。有利には、文字認識の精度は、コンピュータリソースの割当てをバランスさせながら分析対象の画像に合わせてカスタマイズされた複数の文字認識部120を利用することによって、向上される。
【0083】
代替として、複数の文字認識部120は、文字認識におけるエラーを訂正することに特化された更なる文字認識部を含むことができる。第2の文字部122は、低品質スキャンなどの特定のタイプの画像に対して文字認識を実行するようにカスタマイズされてもよい。従って、第2の文字部122は、第2の領域が品質が低いと識別されたことに基づいて選択される。従って、画像処理方法S200は、適切な文字認識部120を使用して画像に対して実行される。有利には、更なる認識を実行するために、最も適切な第2の文字認識部122が選択される。
【0084】
図3Aは、画像処理方法S200が画像300に含まれるテキストを識別する方法を示す図である。
【0085】
ステップS210では、第1の領域1上で第1の文字認識部121によって文字認識が行われることで、第1の文字グループ111が取得される。ステップS220~S240は、第1の領域1の更なる認識が実行されるべきかどうかを判定するために実行される。
【0086】
ステップS250では、第2の領域2上で第2の文字認識部122によって文字認識が行われることで、第2の文字グループ222が取得される。
【0087】
図3Aは、テキストラインに対応する第2の領域2を示す。テキストラインが選択されるのは、テキストラインが第1の領域1の分析のための文脈を提供する可能性が高いと考えられるからである。有利には、第2の文字認識部122が低品質画像を分析するようにカスタマイズされ、従って、第2の文字グループは、第1の文字認識部121を用いて第1の領域1の文字認識を実行するときに判定された低信頼度よりも高い信頼度を有することが期待される。
【0088】
図3Bは、画像処理方法S200が画像300に含まれるテキストを識別する方法を示す図である。
【0089】
ステップS210では、第1の文字認識部121により複数の第1の領域1A~Cに対して文字認識が行われることで、複数の第1の文字グループ111A~Cが取得される。オプションとして、第1の文字認識部121は文書全体を分析するように構成されるが、代替的に、第1の文字認識部121は文書の一部を分析するように構成される。ステップS220~S240は、第1の領域1A~1Cの各々についての更なる認識が実行されるべきかどうかを判定するために実行される。
【0090】
ステップS250では、第2の文字認識部122により複数の第2の領域2A~Cに対して文字認識が行われることで、複数の第2の文字グループ222A~Cが取得される。
【0091】
図3Bは、第1の領域1A~Cに隣接する単語に対応する第2の領域2A~Cを示す。第1の領域1A~Cに隣接する1つ以上の単語を使用することができる。第2の領域2A~Cに含まれるべき単語の数は、予め指定されている。或いは、単語の数は、文脈を提供するのに十分な単語があるかどうかを確認することによって決定することができる。第1の領域1Aが最初の単語である場合、第1の領域1Aの前には単語が存在しないので、第2の領域2Aは、第1の領域1Aの後に現れる隣接する単語から構成される。同様に、第1の領域が最後の単語である場合、第1の領域1Aの後には単語が存在しないので、第2の領域2Aは第1の領域1Aの前に現れる隣接する単語から構成される。
【0092】
図3A及び図3Bは、画像処理システム100によって実行される画像処理方法S200の例を示しており、これは別々に又は組み合わせて提供することができる。従って、選択部133は、図3Aに従ってラインを選択すべきか図3Bに従って隣接する単語を選択すべきかに関する、事前に選択されている設定に基づいて、第2の領域を選択する。或いは、第2の領域が第2の文字認識部122によって使用される文脈を提供するかどうかの評価を行うことができる。
【0093】
図4A~C及び図5A~Cは、第1の領域111及び第2の領域222がどのように識別され得るかの例を示す。代替として、図4A~C及び図5A~Cの例は、第1の領域111及び第2の領域222を識別するために、組み合わせて提供することができる。更に、図4A~C及び図5A~Cは、第2の領域222によって提供される文脈が第1の領域111の認識を実行するためにどのように使用され得るかを説明する役割を果たす。
【0094】
図4A~Cは、文脈を利用する文字認識の例を提供し、第1の文字グループ41に関連する信頼値を使用して、第2の文字認識部122によって第1の領域111に対して更なる認識を実行するべきであることが判定される。
【0095】
図4Aは、信頼度に基づいてエラーを含むと判定された第1の文字グループ41の例を提供する。
【0096】
テキストラインを読み取る場合、文脈は非常に重要である。例えば、あなたは何を読んでいるか?
“M4K35”
【0097】
測定部は、第1の文字グループ41がアルファベット(letter)及び数字の両方を含むので、低い信頼値を算出する。従って、判定部132は、更なる認識を行うことを確立する。
【0098】
第1の文字グループ41は、第1の領域111に対応する。
【0099】
図4Bは、第1の文字グループ41を含む文字グループ42の例を提供する。
【0100】
このラインを読んでみる:
“EXAMPLE OF A LINE WHERE CONTEXT M4K35 A DIFFERENCE.”
【0101】
選択部133は、第1の文字認識部121から出力された、第1の文字グループ41に文脈を提供するための候補である文字42を識別する。
【0102】
文脈の提供は、能動的であっても受動的であってもよい。受動的文脈が提供される第1の例として、文字42は、第1の文字グループ41と同じテキストライン上にあるものとして識別することができる。受動的文脈が提供される第2の例として、文字42は、第1の文字グループ41に隣接する単語であるものとして識別することができる。能動的文脈が提供される例として、文字グループ42が第1の文字グループ41に文脈を提供することを、文脈度(context measure)が能動的に識別することができる。
【0103】
選択部133は、更なる認識を提供するのに有用な第2の領域222を識別するために、文字グループ42を利用する。
【0104】
図4Cは、エラーが訂正された第2の文字グループ43の例を提供する。
【0105】
第2の文字グループ43は、第2の文字認識部122が画像の第2の領域222の文字認識を行うことによって出力される。
【0106】
その結果、テキストは次のように読めるように修正される:
“EXAMPLE OF A LINE WHERE CONTEXT MAKES A DIFFERENCE.”
【0107】
第2の文字認識部121が出力した第2の文字グループ43について、測定部131は、第1の文字認識部122が出力した文字グループ42よりも高い信頼性レベルを算出する。
【0108】
第1の文字認識部121によって導入されたエラーは、第2の文字認識部122によって訂正されている。従って、第1の文字認識部121で出力された文字42は、第2の文字認識部で出力された第2の文字グループ43に置き換えられる。
【0109】
図5A~Cは、文脈を利用する文字認識の別の例を提供し、第1の領域51に関連する信頼値を使用して、第2の文字認識部122によって更なる認識を実行すべきであることが判定される。
【0110】
図5Aは、画像処理システム100によって検出される第1の領域51の例を提供する。
【0111】
第1の文字認識部121は、画像全体に対して文字認識を行う。単一の単語を形成する2つ又は3つの文字を含む第1の文字グループ111が識別される状況を考えてみる。更に、第1の文字グループ111は、マシンエンコードされた文字「LO」として認識される。第1の文字グループ111は、第1の領域51に関連付けられている。測定部131は、低い信頼値を算出する。その理由は、次の通りである可能性がある:
-領域51の画素数が少ない;
-画素は、第1の文字認識部121によって記憶されたマシンエンコードされた文字のいずれにも正確にマッピングされない;
-単語「LO」のスペルチェックを実行することが、エラーがある可能性が高いことを示す。
【0112】
画像の品質が低く、検出された画素の何らかの意味を決定する文脈が存在しないので、図5Aに示す画像に対応するアルファベット(letters)を視覚的に識別することは困難である。
【0113】
図5Bは、画像処理システム100によって選択される第2の領域52の例を提供する。
【0114】
第1の領域51は、第2の領域52に含まれる。第2の領域52は、第1の領域51に隣接するいくつかの単語を含むことによって、第1の領域51に文脈を提供する。
【0115】
第2の文字認識部122は、第2の領域に対して実行され、その結果、第2の文字グループが得られる:
“describes in greater detail”
【0116】
図5Cは、テキストライン53の例を提供する。ライン53の第1の領域51は、図5Aに示す第1の領域51に対応する。ライン53の第2の領域52は、図5Bに示す第2の領域52に対応する。
【0117】
第2の領域52に含まれる隣接する単語によって第1の領域51に提供される文脈は、信頼度の増大をもたらす。従って、第2の文字グループ222は、第1の文字認識部111によって認識された対応する文字を置き換える。
【0118】
従って、テキストライン53は、次のように読めることが認識される:
“The next section describes in greater detail”
【0119】
上記の例は、メモリデバイスに記録されたプログラムを読み出して実行することで上述した例の機能を実行するシステム又は装置のコンピュータ(若しくはCPU又はMPU等のデバイス)によっても実現可能であり、また、例えばメモリデバイスに記録されたプログラムを読み出して実行することで上述した例の機能を実行するシステム又は装置のコンピュータによってそのステップが実行される方法によっても実現可能である。この目的のために、プログラムは、例えばネットワークを介して、又はメモリデバイスとして機能する様々なタイプの記録媒体(例えば、非一時的なコンピュータ可読媒体のようなコンピュータ可読媒体)から、コンピュータに提供される。
【0120】
実施形態を参照して本発明を説明してきたが、本発明は開示された実施形態に限定されないことを理解されたい。本発明は、本発明の主要な特徴から逸脱することなく、様々な形態で実施することができる。以下の特許請求の範囲は、そのような全ての修正物並びに均等な構造及び機能を包含するように、最も広い解釈が与えられるべきである。
図1
図2
図3A
図3B
図4A
図4B
図4C
図5A
図5B
図5C