(57)【要約】      （修正有）【課題】拡張可能な文書フォームの処理、および複数のタイプの文書フォームの処理など、様々な処理条件下で文書フォームを識別するための方法およびシステムを提供する。【解決手段】方法は、記入済み文書フォームをスキャンして生成された入力画像に対して画像処理を実行する。入力画像は、記入済み文書フォームのフォームタイプを識別するために、様々な文書フォームの白紙版に対して評価される。評価の結果、白紙の文書フォームの１つを、記入済み文書フォームと一致するものとして特定する。各文書フォームには一連のキーワードを有する。評価には、記入済み文書フォームにおけるキーワードマッチのベクトルを使用する。白紙の文書フォームが一致すると識別すると、記入済み文書フォームをその文書フォームに応じて分類および／または入力済み文書から抽出されたデータを、その文書フォームのキーワードに関連付けて保存する。【選択図】図２
2020166811.tif 000002
【特許請求の範囲】
【請求項１】
テキストを含む入力画像に対して複数の評価を実行するステップと、
第１の文書フォームを前記入力画像との一致として特定するステップと、を含むコンピューターシステムによって実行される画像処理方法であって、
前記評価は、前記入力画像を複数の文書フォームから識別された文書フォームと照合するために実行され、前記評価のそれぞれは、前記複数の文書の中の候補フォームを使用して実行され、各々の評価の前記候補フォームは他の評価のフォームとは異なり、
前記第１の文書フォームは、複数の前記評価における前記候補フォームの１つであり、
前記特定は、前記第１の文書フォームに対して決定されたフォームマッチングスコアに応じて実行され、
各々の前記評価は、
前記入力画像の前記テキスト内の１つ以上のワードを前記候補フォームの参照画像内の１つ以上のキーワードに関連付けるステップと、
前記候補フォームのフォームマッチングスコアを決定するステップと、を含み、
前記フォームマッチングスコアは、前記入力画像内のキーワードマッチの配置を表すキーワードマッチ頂点から決定され、
前記関連付けは、前記入力画像内のキーワードマッチを特定するために実行される、画像処理方法。
【請求項２】
前記第１の文書フォームが一致であると特定した後、前記入力画像から抽出されたデータを前記第１の文書フォームの前記キーワードと関連付けて格納するステップをさらに含む、請求項１に記載の画像処理方法。
【請求項３】
前記第１の文書フォームに応じて前記入力画像を分類するステップをさらに含む、請求項１または２に記載の画像処理方法。
【請求項４】
前記評価のそれぞれについて、前記関連付けは、前記入力画像内のキーワードマッチを特定するために、前記入力画像のテキスト上の複数の点のヒストグラムを使用することを含み、各ヒストグラムは前記複数の点の中のそれぞれの点に対応し、各ヒストグラムのそれぞれの点は他のヒストグラムの点とは異なり、各ヒストグラムはヒストグラムのそれぞれの点に対する他の点の分布を表し、当該他の点は前記入力画像のテキスト上に位置する、請求項１〜３のいずれか１項に記載の画像処理方法。
【請求項５】
前記ヒストグラムのそれぞれが、前記入力画像の前記テキスト上に位置する他の点の極分布を表す、請求項４に記載の画像処理方法。
【請求項６】
各ヒストグラムについて、前記それぞれの点および前記他の点は、前記入力画像の前記テキストを画定する、連結されたピクセルの境界に位置する、請求項４または５に記載の画像処理方法。
【請求項７】
前記評価の１つについて、前記ヒストグラムを使用することは、
前記入力画像の前記テキストにおける第１のワードの第１のワードマッチングスコアを決定することと、
前記入力画像の前記テキストにおける第２のワードの第２のワードマッチングスコアを決定することと、
少なくとも前記第１のワードマッチングスコアに応じて、前記第１のワードを特定のキーワードのキーワードマッチとして分類することと、
少なくとも前記第２のワードマッチングスコアに応じて、前記第２のワードを前記特定のキーワードの非キーワードマッチとして分類することと、を含み、
前記第１のワードマッチングスコアは、少なくとも前記第１のワード上の点のヒストグラムと、前記候補フォームのキーワードの中の前記特定のキーワード上の前記特定の点のヒストグラムから決定され、
前記第２のワードマッチングスコアは、少なくとも前記第２のワード上の点のヒストグラムと、前記特定のキーワード上の特定の点のヒストグラムから決定される、請求項４〜６のいずれか１項に記載の画像処理方法。
【請求項８】
前記評価のそれぞれについて、文書フォームベクトルは、前記候補フォームのキーワードの配置を表す一連のキーワード頂点を定義し、
前記候補フォームの前記フォームマッチングスコアは、前記キーワードマッチ頂点のいずれかに対応するキーワード頂点の数値カウントから少なくとも決定される、請求項１〜７のいずれか１項に記載の画像処理方法。
【請求項９】
前記評価のうちの少なくとも１つについて、前記候補フォームの前記フォームマッチングスコアは、少なくとも第１の数および第２の数から決定され、前記第１の数は、前記キーワードマッチ頂点のうちのいずれかに対応するキーワード頂点の数値カウントであり、前記第２の数は、前記キーワードマッチ頂点のうちのいずれにも対応しないキーワード頂点の数値カウントである、請求項８に記載の画像処理方法。
【請求項１０】
前記評価のそれぞれについて、前記候補フォームについて決定された前記フォームマッチングスコアが、前記候補フォームの前記参照画像内のキーワードの数値カウントに応じて正規化される、請求項１〜９のいずれか１項に記載の画像処理方法。
【請求項１１】
前記評価の１つは、前記複数の文書フォームの中から、第２の文書フォームが、前記第１の文書フォームのフォームマッチングスコアと等しいフォームマッチングスコアを有すると判断し、
前記入力画像との一致として前記第１の文書フォームを特定することは、前記第２の文書フォームのキーワードの数値カウントよりも大きい前記第１の文書フォームのキーワードの数値カウントに応じて実行される、請求項１〜１０のいずれか１項に記載の画像処理方法。
【請求項１２】
前記複数の文書フォームのうち、特定の文書フォームを、前記入力画像に一致していないとして分類し、前記分類は、前記特定の文書フォームに対して決定された前記フォームマッチングスコアに応じて実行される、請求項１〜１１のいずれか１項に記載の画像処理方法。
【請求項１３】
プロセッサーと、
前記プロセッサーと通信するメモリーと、を有し、
前記メモリーは命令を格納し、前記プロセッサーは、格納された命令に応じてプロセスを実行するように構成され、
前記プロセスは、
テキストを含む入力画像に対して複数の評価を実行することと、
第１の文書フォームを前記入力画像との一致として特定することと、を含み、
前記評価は、複数の文書フォームから識別された文書フォームに前記入力画像を一致させるために実行され、前記評価のそれぞれは、前記複数の文書の中の候補フォームを使用して実行され、各々の評価の前記候補フォームは他の評価のフォームとは異なり、
前記第１の文書フォームは、複数の前記評価における前記候補フォームの１つであり、
前記特定は、前記第１の文書フォームに対して決定されたフォームマッチングスコアに応じて実行され、
各々の前記評価は、
前記入力画像の前記テキスト内の１つ以上のワードを前記候補フォームの参照画像内の１つ以上のキーワードに関連付けることと、
前記候補フォームのフォームマッチングスコアを決定することと、を含み、
前記フォームマッチングスコアは、前記入力画像内のキーワードマッチの配置を表すキーワードマッチ頂点から決定され、
前記関連付けは、前記入力画像内のキーワードマッチを特定するために実行される、画像処理システム。
【請求項１４】
前記評価のそれぞれについて、前記関連付けは、前記入力画像内のキーワードマッチを特定するために、前記入力画像のテキスト上の複数の点のヒストグラムを使用することを含み、各ヒストグラムは前記複数の点の中のそれぞれの点に対応し、各ヒストグラムのそれぞれの点は他のヒストグラムのものとは異なり、各ヒストグラムはヒストグラムのそれぞれの点に対する他の点の分布を表し、当該他の点は前記入力画像のテキスト上に位置する、請求項１３に記載の画像処理システム。
【請求項１５】
前記評価の１つについて、前記ヒストグラムを使用することは、
前記入力画像の前記テキストにおける第１のワードの第１のワードマッチングスコアを決定することと、
前記入力画像の前記テキストにおける第２のワードの第２のワードマッチングスコアを決定することと、
少なくとも前記第１のワードマッチングスコアに応じて、前記第１のワードを特定のキーワードのキーワードマッチとして分類することと、
少なくとも前記第２のワードマッチングスコアに応じて、前記第２のワードを前記特定のキーワードの非キーワードマッチとして分類することと、を含み、
前記第１のワードマッチングスコアは、少なくとも前記第１のワード上の点のヒストグラムと、前記候補フォームのキーワードの中の前記特定のキーワード上の特定の点のヒストグラムから決定され、
前記第２のワードマッチングスコアは、少なくとも前記第２のワード上の点のヒストグラムと、前記特定のキーワード上の特定の点のヒストグラムから決定される、請求項１４に記載の画像処理システム。
【請求項１６】
前記評価のそれぞれについて、文書フォームベクトルは、前記候補フォームのキーワードの配置を表す一連のキーワード頂点を定義し、
前記候補フォームの前記フォームマッチングスコアは、前記キーワードマッチ頂点のいずれかに対応するキーワード頂点の数値カウントから少なくとも決定される、請求項１３〜１５のいずれか１項に記載の画像処理システム。
【請求項１７】
前記評価のうちの少なくとも１つについて、前記候補フォームの前記フォームマッチングスコアは、少なくとも第１の数および第２の数から決定され、前記第１の数は、前記キーワードマッチ頂点のうちのいずれかに対応するキーワード頂点の数値カウントであり、前記第２の数は、前記キーワードマッチ頂点のうちのいずれにも対応しないキーワード頂点の数値カウントである、請求項１６に記載の画像処理システム。
【請求項１８】
前記評価のそれぞれについて、前記候補フォームについて決定された前記フォームマッチングスコアが、前記候補フォームの前記参照画像内のキーワードの数値カウントに応じて正規化される、請求項１３〜１７のいずれか１項に記載の画像処理システム。
【請求項１９】
前記評価の１つは、前記複数の文書フォームの中から、第２の文書フォームが、前記第１の文書フォームのフォームマッチングスコアと等しいフォームマッチングスコアを有すると判断し、
前記入力画像との一致として前記第１の文書フォームを特定することは、前記第２の文書フォームのキーワードの数値カウントよりも大きい前記第１の文書フォームのキーワードの数値カウントに応じて実行される、請求項１３〜１８のいずれか１項に記載の画像処理システム。
【請求項２０】
前記プロセッサーによって実行される前記プロセスは、前記複数の文書フォームのうち、特定の文書フォームを、前記入力画像に一致していないとして分類することを含み、前記分類は、前記特定の文書フォームに対して決定された前記フォームマッチングスコアに応じて実行される、請求項１３〜１９のいずれか１項に記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、画像処理に関し、より詳細には、入力画像を文書フォームと照合する処理に関する。
【背景技術】
【０００２】
文書フォームは、ビジネス、政府、教育、その他の分野で使用される。例えば、文書フォームは、日付や数量などの対応する情報とともに製品またはサービスをリストする請求書でありうる。情報を入力すると、請求書をスキャンしてＰＤＦファイルなどの電子画像ファイルを取得できる。この電子画像ファイルは、記録管理の目的でデータベースにアーカイブできる。文書フォームの情報は、多くの場合、抽出されて電子画像ファイルにエンコード（符号化）される。例えば、文字認識は、請求書に現れる製品名で請求書の電子画像ファイルをエンコードするためにコンピューターによって実行されてもよい。したがって、検索操作を実行して、特定の製品名を含むすべての請求書を見つけることができる。ただし、より複雑な操作が必要な場合がある。例えば、電子画像ファイルをスプレッドシートファイルまたは他の編集可能な形式に変換する操作が必要になる場合がある。データ分析のために複数の文書フォームから情報を集約する操作が必要になる場合がある。例えば、様々な製品の販売日と数量の分析から季節的な傾向を特定するために、１年間のすべての請求書のデータを集計することが必要な場合がある。これらまたはその他のような複雑な操作を可能にするには、記入済み文書フォームが特定のフォーム（例えば、特定の情報の配置）を有していると識別され、販売日や数量などの様々な情報が適切に認識されるようにする必要がある。フォームの識別は、多くの文書フォームが拡張可能なように電子的に生成されるため、複雑である。つまり、同じ文書フォームは、入力方法によって異なる場合がある。例えば、図１Ａおよび図１Ｂは、同じタイプの文書フォームを示す。図１Ａでは、３つの製品がリストされているので、パッキングリスト（梱包明細書）には３つの製品行（ｐｒｏｄｕｃｔ  ｒｏｗｓ）がある。図１Ｂでは、１つの製品のみがリストされているため、パッキングリストには１つの製品行がある。このようなフォームは、セル内のテキストの量に応じてサイズを水平方向に調整することもできる。異なるタイプの文書フォームを処理する必要がある場合、フォームの識別はより複雑になる。企業または他の組織は、データを抽出および集約する元となる多くの異なるタイプの文書フォームを発行および／または受け取ることが考えられる。例えば、企業は様々な小売業者から、異なるヘッダーテキストのパッキングリストを受け取ることがある。
【０００３】
したがって、拡張可能な文書フォームの処理、および複数のタイプの文書フォームの処理など、様々な処理条件下で文書フォームを識別するための方法およびシステムが必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
簡潔にそして一般的に言えば、本発明は、フォーム識別のための画像処理方法およびシステムを対象とする。
【課題を解決するための手段】
【０００５】
本発明の態様では、画像処理方法は、テキストを含む入力画像に対して複数の評価を実行することを含む。前記評価は、前記入力画像を複数の文書フォームから識別された文書フォームと照合するために実行され、前記評価のそれぞれは、前記複数の文書フォームの中の候補フォームを使用して実行され、各々の評価の前記候補フォームは他の評価のフォームとは異なる。各々の前記評価は、前記入力画像の前記テキスト内の１つ以上のワードを前記候補フォームの参照画像内の１つ以上のキーワードに関連付けることを含む。前記関連付けは、前記入力画像内のキーワードマッチを特定するために実行される。各々の前記評価は、前記候補フォームのフォームマッチングスコアを決定することを含む。前記フォームマッチングスコアは、前記入力画像内のキーワードマッチの配置を表すキーワードマッチ頂点から決定される。前記画像処理方法は、第１の文書フォームを前記入力画像との一致として特定することを含む。前記第１の文書フォームは、複数の前記評価における前記候補フォームの１つであり、前記特定は、前記第１の文書フォームに対して決定されたフォームマッチングスコアに応じて実行される。
【０００６】
本発明の態様では、画像処理システムは、プロセッサーと、前記プロセッサーと通信するメモリーと、を有し、前記メモリーは命令を格納し、前記プロセッサーは、格納された命令に従ってプロセスを実行するように構成されている。前記プロセスは、テキストを含む入力画像に対して複数の評価を実行することを含む。前記評価は、前記入力画像を複数の文書フォームから識別された文書フォームと照合するために実行され、前記評価のそれぞれは、前記複数の文書フォームの中の候補フォームを使用して実行され、各々の評価の前記候補フォームは他の評価のフォームとは異なる。各々の前記評価は、前記入力画像の前記テキスト内の１つ以上のワードを前記候補フォームの参照画像内の１つ以上のキーワードに関連付けることを含む。前記関連付けは、前記入力画像内のキーワードマッチを特定するために実行される。各々の前記評価は、前記候補フォームのフォームマッチングスコアを決定することを含む。前記フォームマッチングスコアは、前記入力画像内のキーワードマッチの配置を表すキーワードマッチ頂点から決定される。前記プロセスは、第１の文書フォームを前記入力画像との一致として特定することを含む。前記第１の文書フォームは、複数の前記評価における前記候補フォームの１つであり、前記特定は、前記第１の文書フォームに対して決定されたフォームマッチングスコアに応じて実行される。
【０００７】
本発明の特徴および利点は、添付の図面と併せて読まれるべき以下の詳細な説明からより容易に理解されるであろう。
【図面の簡単な説明】
【０００８】
【図１Ａ】同じタイプであるが行数が異なる記入済み文書フォームを示す。
【図１Ｂ】同じタイプであるが行数が異なる記入済み文書フォームを示す。
【図２】入力画像を処理して、入力画像と一致する文書フォームを特定するための例示的なプロセスを示す。
【図３】空白の文書フォームの例の参照画像を示す。
【図４】空白の文書フォームの別の例の参照画像を示す。
【図５Ａ】図４の参照画像から切り取られたキーワードを示す。
【図５Ｂ】図４の参照画像から切り取られたキーワードを示す。
【図５Ｃ】図５Ａのキーワードの一部の拡大図である。
【図６Ａ】ヒストグラムテンプレートの例を示す図である。
【図６Ｂ】図６Ａのヒストグラムテンプレートの線形版である。
【図６Ｃ】図５Ｃの点Ｐｉの例示的なヒストグラムを示す図である。
【図６Ｄ】図６Ｃのヒストグラムの線形版である。
【図７Ａ】点Ｐｉを中心とする局所領域（ｌｏｃａｌ  ｒｅｇｉｏｎ）を示す、図５Ｂのキーワードの一部の拡大図である。
【図７Ｂ】局所領域内の点の分布を示す、図７Ａの点Ｐｉのヒストグラムの線形版である。
【図８】記入済み文書フォームをスキャンすることによって生成された入力画像の例である。
【図９】入力画像と一致する文書フォームを識別するために入力画像に対して実行される例示的な分析を示す流れ図である。
【図１０】局所領域内の点のヒストグラムを用いて、文書フォームのキーワードと入力画像のターゲットワードとが互いにどのように関連付けられるかを示す図である。
【図１１Ａ】キーワードの第１の点のヒストグラムおよびターゲットワードの第１の点のヒストグラムを示し、それらがどのようにして数Ｈ（１，１）をもたらすかを示す。
【図１１Ｂ】キーワード上の第１の点のヒストグラムおよびターゲットワード上の第２の点のヒストグラムを示し、それらがどのようにして数Ｈ（１，２）をもたらすかを示す。
【図１２】キーワードに関連付けられた数値配置ラベルで注釈が付けられた、空白の文書フォームの例示的な参照画像である。
【図１３】記入済み文書フォームの入力画像の例であり、キーワードマッチ（ｋｅｙｗｏｒｄ  ｍａｔｃｈｅｓ）に関連する数値配置ラベルで注釈が付けられ、結果のベクトルを示している。
【図１４Ａ】図１３のベクトルの例示的な二部グラフ（ｂｉｐａｒｔｉｔｅ  ｇｒａｐｈｓ）である。
【図１４Ｂ】図１３のベクトルの例示的な二部グラフである。
【図１４Ｃ】図１３のベクトルの例示的な二部グラフである。
【図１５】入力画像に一致する文書フォームを識別するために入力画像に対して実行される例示的な分析を示す流れ図である。
【図１６Ａ】入力画像の例である。
【図１６Ｂ】候補フォームの例示的な参照画像であり、図１６Ａの入力画像を用いて参照画像を評価することによって形成された二部グラフで示されている。
【図１６Ｃ】候補フォームの例示的な参照画像であり、図１６Ａの入力画像を用いて参照画像を評価することによって形成された二部グラフとともに示されている。
【図１７】例示的な画像処理用システムを示す概略図であり、このシステムは、装置と、ネットワークを介して装置に接続されたデータベースとを備える。
【発明を実施するための形態】
【０００９】
次に、非限定的な例を説明する目的で図面をより詳細に参照し、同様の参照番号は、いくつかの図の間で対応するまたは同様の要素を示す。図２に画像処理方法の例を示す。１つ以上のタイプの文書フォームがスキャン２０および分析２１され、データベース２３に分類２２される。スキャン２０には、解析される電子画像（ｊｐｇ、ｂｍｐ、ｐｄｆ、他の形式）を得るために、文書フォームの空白版をスキャナーに送ることが含まれる。電子画像は、参照画像と呼ばれる。参照画像の分析には、ドキュメントフォーム内のキーワードの特定と、キーワードに関連付けられたヒストグラムの取得が含まれる。キーワードの選択は、人間のユーザーおよび／または文字認識アルゴリズムを実行するコンピューターの助けを借りて実行することができる。分類２２は、キーワードに関連してヒストグラムをデータベース２３に格納すること、および文書フォームに関連してキーワードを格納することを含む。
【００１０】
図３は、「パッキング」、「説明」、「数量」、および「合計」というワード（単語）が特定の文書フォームのキーワードとして選択されうる、例示的な文書フォームの空白版の参照画像４０を示す。図４は、「Ｉｎｖｏｉｃｅ（請求書）」、「Ｔｏ（宛先）」、「Ｓｅｒｖｉｃｅ（サービス）」などのワードが特定の文書フォームのキーワードになるように選択されうる、別の例示的な文書フォームの空白版の参照画像４０を示す。
【００１１】
図５Ａは、図４の参照画像４０のワード「サービス」の拡大図を示す。上記ワードは、図４の文書フォームのキーワードの１つとして選択された。キーワードごとに１つ以上のヒストグラムが取得される。各キーワードには複数の点が存在する。例えば、複数の点は、キーワードを画定する、連結されたピクセルの境界にある。図５Ａでは、結合された黒いピクセルは文字Ｓを形成し、結合された黒いピクセルの境界は、ピクセル値の黒から灰色への変化によって画定される。図５Ｂでは、境界は、明確にするために黒い線として示され、境界上のいくつかの点Ｐは、明確にするために黒い点で示されている。点Ｐの総数は、図示されているものより少なくてもよく、または図示されているものよりも多くてもよい。例えば、点Ｐの総数は、各キーワードについて１００を超える場合がある。各ヒストグラムは、複数の点の中のそれぞれの点に対応する。各ヒストグラムのそれぞれの点は、他のヒストグラムの点とは異なる。各ヒストグラムは、ヒストグラムの各点に対する他の点の分布を表す。
【００１２】
図５Ｃは、文字Ｓのさらなる拡大図を示し、キーワードの様々な点Ｐの中のそれぞれの点Ｐｉについてヒストグラムがどのように得られるかを示す。それぞれの点Ｐｉは、他の点Ｐと区別するために白い点または中空の点として示されている。点Ｐｉのヒストグラムは、点Ｐｉに対する他の点Ｐの分布を表している。例えば、点Ｐｉのヒストグラムは、点Ｐｉに対する他の点Ｐの分布を表し、これらの点Ｐは、同じ連結成分（連結（つまり、接触）する黒いピクセルによって定義される文字Ｓ）に排他的に存在する。Ｐｉに対する点Ｐの分布は、様々な直線距離Ｌと、直線距離の角度方向の組とで表される。例えば、図５Ｃにおける一点鎖線の水平線は、様々な直線距離Ｌのそれぞれについて角度Ａが測定されるゼロ度配向を表しうる。一点鎖線は、連結成分（例えば、図５Ｃの文字Ｓ）について具体的に計算できる基準座標を表す。重心、または他の特性など、連結成分の１つ以上の特性を使用して、基準座標を決定できる。したがって、基準座標の向き（例えば、図５Ｃの一点鎖線）は、連結成分のサイズおよび形状に依存しうる。距離Ｌと角度Ａは、極座標系の座標を表しうる。したがって、点Ｐｉのヒストグラムは、入力画像上にある他の点Ｐの極分布（ｐｏｌａｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）を表すことができる。点の総数は、計算効率を高めるために制限される場合がある。例えば、点Ｐｉのヒストグラムは、Ｐｉと同じ連結成分（例えば、文字Ｓ）に排他的に配置されている他の点Ｐの極分布を表す場合がある。別の例では、点Ｐｉのヒストグラムは、Ｐｉの周りに画定された局所領域内に排他的に位置する他の点Ｐの極分布を表すことができる。
【００１３】
図６Ａは、ヒストグラムの極座標系を示す。極座標系の領域は、セクターまたはビン（ｂｉｎ）ｂ＝１から１６に分割することができる。図６Ａでは、１６個のビンｂにラベルが付けられている。領域は、図に示されているよりも少ない、または多いビンに分割することもできる。
【００１４】
図６Ｂは、図６Ａのビンの軸方向表示を示す。
【００１５】
図６Ｃは、図５Ｃの点Ｐｉのヒストグラムを示す。ヒストグラムは、図５Ｃの他の点Ｐの極分布を表す。図示のように、距離Ｌ’は、図５Ｃの距離Ｌから直線的にスケーリングされる。ビンｂ＝２、８、１１、および１４のそれぞれに１つの点が含まれている。ビンｂ＝９には２つの点が含まれている。あるいは、距離Ｌは、点Ｐｉからより近い、またはより遠い点Ｐにより重点が置かれるように、他の方法でスケーリングされてもよい。例えば、図５Ｃの距離Ｌは、対数的にスケーリングされ、距離Ｌ’を得てもよい。すなわち、図６Ｃの距離Ｌ’は、代わりに、図５Ｃの距離Ｌの対数であってもよい。
【００１６】
図６Ｄは、図６Ｃのヒストグラムの軸方向表示を示す。図６Ｃに示すように、ビンｂ＝２、８、１１、および１４のそれぞれは１つの点を含み、ビンｂ＝９は２つの点を含む。つまり、ビン２、８、１１、および１４のビン値は１である。ビン９のビン値は２である。残りの各ビンのビン値はゼロである。
【００１７】
図７Ａは、点Ｐｉの周りに画定された局所領域Ｒを示す。上述のように、点Ｐｉのヒストグラムは、Ｐｉの周りに画定された局所領域Ｒ内の点Ｐの極分布を表すことができる。個別に示されていないが、点Ｐは互いに接近して間隔をあけられうる。例えば、点Ｐは、境界上の隣接するピクセルでありうる。画定された局所領域Ｒ内には、２０、４０、または５０を超える点Ｐがある。
【００１８】
図７Ｂは、距離Ｌが対数的にスケーリングされている、画定された局所領域Ｒ内の点Ｐの極分布を表す例示的なヒストグラムを示す。
【００１９】
再び図２を参照する。分析２１中に、スキャン２０にかけられた文書フォームに対してキーワードが選択される。各キーワードは、点Ｐｉのセットとして、キーワードの各点Ｐｉに対してヒストグラムが計算される。このプロセスは、参照画像４０上に現れるすべてのキーワードに対して実行される。分類２２をしている間、データベース２３は、スキャンされた文書フォームに関連してキーワードを格納し、それぞれのキーワードに関連して計算されたヒストグラムを格納する。スキャン２０、分析２１、および分類２２は、データベース２３が複数の文書フォームに関連してキーワードおよびヒストグラムを格納できるように、任意の数の空白の文書フォームに対して実行されてもよい。例えば、スキャン２０、分析２１、および分類２２は、図３および図４の空白の文書フォームの参照画像４０に対して実行されてもよい。キーワードと関連するヒストグラムとは、文書フォームの識別に使用される。すなわち、キーワードおよび関連するヒストグラムを使用して、入力画像をデータベース２３に分類されている文書フォームの１つと照合する。
【００２０】
引き続き図２を参照する。画像処理は、記入済み文書フォームの電子画像である入力画像を生成するために、記入済み文書フォームをスキャン２４することを含む。入力画像は、入力画像に対して複数の評価を行うことを含む分析２５にかけられる。評価は、入力画像を、以前にデータベース２３において分類された、複数の文書フォームから識別された文書フォームと照合するために実行される。各評価は、複数の文書フォームの中の候補フォームを使用して実行される。各評価の候補フォームは、他の評価の候補フォームとは異なる。例えば、入力画像は、図３に対応する候補フォームに対して評価されてもよい。そして、その後、図４に対応する候補フォームに対して評価される。したがって、複数の評価は、候補フォームが図３に対応する第１の評価と、候補フォームが図４に対応する第２の評価と、を含む。複数の文書フォームのうち、入力画像と一致するものとして、候補フォームの１つが識別される。その後、入力画像は、識別された候補フォームに応じて分類２６されうる。分類２６は、識別された候補フォームに関連して入力画像を格納することを含みうる。これにより、様々な記入済み文書フォームの入力画像を分類して、検索操作を容易にすることができる。例えば、入力画像は請求書またはパッキングリストのいずれかに分類されるため、すべての請求書は検索操作で識別できる。追加または代替として、データは、入力画像から抽出２７され、識別された候補フォームのキーワードに関連付けられて格納２８される。
【００２１】
図８は、記入済み文書の例の入力画像８０を示す。入力画像８０の分析２５（図２）は、入力画像８０との一致として特定される、図４に対応する文書フォームをもたらしうる。その後、データが抽出（２７）される。図８の１つの行を参照する。抽出されたデータは、「Ｐｒｉｎｔｉｎｇ  ａｎｄ  ｃｏｐｙｉｎｇ（印刷およびコピー）」、「０２／１１／２０１８」、「１」、および「０．５０」を含みうる。これらのデータは、図４に対応するフォームのキーワードに関連して記憶２８されてもよい。例えば、「Ｐｒｉｎｔｉｎｇ  ａｎｄ  ｃｏｐｙｉｎｇ」という語句は、キーワード「Ｓｅｒｖｉｃｅｓ（サービス）」に関連付けて格納することができ、「０２／１１／２０１８」という数値は、キーワード「Ｄａｔｅ（日付）」に関連付けて格納することができ、「１」という数字は、キーワード「Ｑｕａｎｔｉｔｙ（数量）」に関連付けて格納され、「０．５０」という数字はキーワード「Ｔｏｔａｌ（合計）」に関連付けて格納されてもよい。
【００２２】
図９は、分析２５（図２）中に入力画像と一致する文書フォームを識別するためのプロセスを示す。入力画像の分析２５は、入力画像を特定の文書フォームと照合するため、複数の評価９０を実行することを含む。前述のように、各評価は、データベース２３に分類されている複数の文書フォームの中の候補フォームを使用して実行される。大文字のＫは文書フォームの総数を表す。各評価は、入力画像のテキスト内の１つ以上のワードを候補フォームの１つ以上のキーワードに関連付けること（９１）を含む。関連付けること（９１）は、入力画像内のキーワードの一致を特定（９２）するために実行される。各評価９０は、候補フォームのフォームマッチングスコアを決定すること（９３）をさらに含む。フォームマッチングスコアは、入力画像内のキーワードマッチ（ｋｅｙｗｏｒｄ  ｍａｔｃｈｅｓ）の配置を表す一連の頂点から決定される。追加の評価９０は、複数の文書フォームのすべてが入力画像に対して評価されるまで実行される。
【００２３】
最後の評価の後、第１の文書フォーム（複数の評価における候補フォームの１つ）が、入力画像と一致しているとして識別（９４）される。「第１の文書フォーム」という用語は、評価される最初のものである必要はないという点で、汎用的であることを意図していることを理解されたい。識別プロセスは、第１の文書フォームのフォームマッチングスコアに応じて実行される。例えば、複数の文書フォームは、評価中に計算されたそれぞれのフォームマッチングスコアに応じてランク付けされる。
【００２４】
上述のように、入力画像のテキスト内のワードは、候補フォームの１つ以上のキーワードに関連付けられ（９１）ている。関連付けること（９１）は、入力画像におけるキーワードマッチを特定（９２）するために、入力画像のテキスト上の複数の点のヒストグラムを使用することを含む。記入済み文書フォームの入力画像８０は、図８の上部の「Ｉｎｖｏｉｃｅ（請求書）」、およびテーブルヘッダの「Ｓｅｒｖｃｅｓ（サービス）」等のテキストを含む。候補フォームの参照画像４０内のキーワード上の点について前述したのと同様に、入力画像内のテキスト上にも複数の点が存在する。各ヒストグラムは、文書フォームのキーワード上の点について前述したのと同じ方法で、入力画像８０内のテキスト上の複数の点の中のそれぞれの点Ｐｉに対応する。参照画像４０から導出されたヒストグラムについて上で提供されたすべての説明は、入力画像８０から導出されたヒストグラムについても同じである。
【００２５】
プロセスは、関連付け９１（図９）ている間に、候補フォームのキーワードに一致する入力画像内の１つまたは複数のワードを見つけようと試みる。このプロセスでは、最初のキーワード（キーワードＡ）を取得し、それを入力画像の最初のワード（ターゲットワードＡ）と比較して、２つのワードが一致するかどうかを確認する。次に、プロセスはキーワードＡを入力画像の第２のワード（ターゲットワードＢ）と比較して、２つのワードが一致するかどうかを確認する。各比較には、ワードペアが含まれる。すなわち、候補フォームの電子画像のキーワード、および入力画像のターゲットワードである。
【００２６】
図１０は、候補フォームの参照画像４０におけるキーワード１０（「Ｓｅｒｖｉｃｅｓ」）と、記入済み文書フォームの入力画像８０におけるターゲットワード１２（「Ｓｅｒｖｉｃｅｓ」）とを含むワード対の例を示す。キーワード１０は参照画像４０の切り取られた部分であり、ターゲットワード１２は入力画像８０の切り取られた部分である。ワード１０と１２はどちらも、スキャン２０および２４（図２）時に解像度が制限されているためにテキストの境界がギザギザになる現実的な様式で示されている。スキャンする前に、様々な設定または印刷機を使用して、元の文書（空白および記入済み文書フォーム）を印刷できる。さらに、スキャン２０および２４は、異なる時間に実行されてもよく、それらは、異なる設定、または読取装置を使用して実行されてもよい。したがって、空白の文書フォームと記入済み文書フォームの電子画像の間でスケールが変化する可能性がある。この可能性に対処するために、ターゲットワード１２はキーワード１０と同じ高さに正規化される。さらに、ターゲットワード１２の幅は、空白と記入済み文書フォームの電子画像間の高さの比率に基づいて正規化される。そのような正規化の後、キーワード１０上の特定の点Ｐｉについて、入力画像上のそのおおよその位置をより簡単に見つけることができる。
【００２７】
図１０を参照する。キーワード１０は点Ｐｉを有し、ｉ＝１からＮｐである。Ｒ（ｉ）という項は、特定の点Ｐｉの局所領域である。ターゲットワード１２は、点Ｐｊを有し、ここで、ｊ＝１からＭである。プロセスは、ワードペアが候補フォームの評価９０（図９）中に一致するかどうかを判断する。任意の候補フォームの評価９０（図９）は、１つまたは複数のワードペアを含むことができる。例えば、入力画像に４つのワードがあり、候補フォームに３つのキーワードがある場合、４×３＝１２のワードペアになる。各ワードペアについて、ワードマッチングスコア（ｗｏｒｄ  ｍａｔｃｈｉｎｇ  ｓｃｏｒｅ）Ｗは次の２つの数式から計算される。
【００２８】
【数１】
2020166811.tif 000003
【００２９】
【数２】
2020166811.tif 000004
【００３０】
数式（１）において、Ｎｐは、キーワード１０における点Ｐｉの総数を表す。数式（２）において、Ｂは、ヒストグラムＨｉおよびＨｊにおけるビンの総数を表す。キーワードでは、各点Ｐｉは、ヒストグラムＨｉを有する。ヒストグラムＨｉは、Ｐｉを中心とする局所領域Ｒ（ｉ）内の他の点の分布を表す。ターゲットワード１２では、各点Ｐｊは、ヒストグラムＨｊを有する。ヒストグラムＨｊは、Ｐｊを中心とする局所領域Ｒ（ｉ）内の他の点の分布を表す。図１０を参照する。Ｒ（１）は、キーワード１０の点Ｐ１に対して定義された局所領域である。データベース２３（図２）は、Ｐ１およびＲ（１）に関連するヒストグラムＨ１をすでに含んでいる。分析２５（図２）の間、特に関連付け（９１）（図９）の間では、同じ局所領域Ｒ（１）を使用して、図１０に示されている点Ｐ１、Ｐ１３５、Ｐ１５１等のターゲットワード１２の点のヒストグラムを取得する。局所領域と参照座標を使用すると、キーワード１０とターゲットワード１２の間のスケールと回転の変動を補償できる。
【００３１】
数式（２）において、タリー数（ｔａｌｌｙ  ｎｕｍｂｅｒ）Ｈ（ｉ、ｊ）はビン値の合計であり、各ビン値はＨｉおよびＨｊにおける対応するビン値の積である。図１１Ａは、Ｈｉ＝１およびＨｊ＝１の例であり、Ｈ（１，１）の結果を示す。ビン２のビン値は、Ｈｉ＝１およびＨｊ＝１で１であり、１×１＝１になる。ビン８のビン値は、Ｈｉ＝１およびＨｊ＝１で１であり、１×１＝１になる。ビン９は、Ｈｉ＝１とＨｊ＝１で２のビン値を有し、２×２＝４になる。ビンｂ＝１から１６までのすべてのビン値の合計は、タリー数Ｈ（１，１）＝１＋１＋４＝６になる。
【００３２】
図１１Ｂは、Ｈｉ＝１およびＨｊ＝２の例であり、Ｈ（１，２）の結果を示す。ビン２のビン値は、Ｈｉ＝１およびＨｊ＝２で１であり、１×１＝１になる。ビン８は、Ｈｉ＝１およびＨｊ＝２で、１のビン値を有し、１×１＝１になる。ビン９は、Ｈｉ＝１の場合は２、Ｈｊ＝２の場合は１のビン値を有し、２×１＝２になる。ビンｂ＝１から１６までのすべてのビン値の合計は、Ｈ（１，２）＝１＋１＋２＝４になる。
【００３３】
数式（１）においてｉ＝１の場合、プロセスは、対象ワード１２のすべての領域ｊ＝１からＭの間の最大のＨ（１、ｊ）を計算する。ｍａｘ関数は、キーワード１０の第１の点Ｐ１に対して最も良く一致する候補であるターゲットワードにおける特定点Ｐｊを表す最大タリー数を返す。ｉ＝２の場合、プロセスは同じターゲットワードのすべての領域ｊ＝１からＭの間の最大のＨ（２，ｊ）を計算する。ｍａｘ関数は、キーワードの第２の点Ｐ２に対して最も一致する候補であるターゲットワードの特定の点Ｐｊを表す最大タリー数を返す。これは、ｉ＝Ｎになるまで、つまり、キーワードのすべての点Ｐｉに対して最も一致する候補が見つかるまで、最大のＨ（３，ｊ）、Ｈ（４，ｊ）などを計算することが繰り返される。次にプロセスは、数式（１）に示すように、すべての最大値の合計を計算する。ワードペアのワードマッチングスコアＷを計算するために、プロセスは、合計をそのキーワードの合計点数Ｎｐで割ることによって合計を正規化する。
【００３４】
ワードマッチングスコアＷは、すべてのワードペア、つまり、入力画像内のターゲットワードと候補フォーム内のキーワードのすべてのペアについて計算される。したがって、入力画像が特定の候補フォームに対して評価されるときに、複数のワードマッチングスコアＷが計算される。
【００３５】
表Ｉは、入力画像の最初の４つのターゲットワード（Ａ〜Ｄ）と、文書フォームの最初の３つのキーワード（Ａ〜Ｃ）とについて、ワードマッチングスコアＷが計算される例を示している。入力画像は３つ以上のターゲットワードを有する場合があり、文書フォームは４つ以上のキーワードを有する場合があることを理解されたい。
【００３６】
【表１】
2020166811.tif 000005
【００３７】
ワードペアが一致するかどうかを判断するには、ワードペアのワードマッチングスコアＷをワードマッチ要件に対して評価する。例えば、ワードマッチ要件は、閾値Ｔｗでありうる。Ｗ≧Ｔｗの場合、ワードペアは一致している。Ｗ＜Ｔｗの場合、ワードペアは一致していない。表Ｉの例では、「一致」という語はＷ≧Ｔｗを示す。ターゲットワードＡはキーワードＡに関連付けられている。ターゲットワードＡはキーワードＡと一致するため、ターゲットワードＡはキーワードマッチと呼ばれる。ターゲットワードＢはキーワードＣに関連付けられている。ターゲットワードＢはキーワードＣと一致するため、ターゲットワードＢはキーワードマッチと呼ばれる。
【００３８】
表Ｉに示すように、プロセスは、入力画像のテキスト内の第１のワード（例えば、ターゲットワードＡ）の第１のワードマッチングスコア（例えば、ＷＡＡ）を決定する。第１のワードマッチングスコアは、少なくとも第１のワードの点のヒストグラムと、候補フォームのキーワードのうち、特定のキーワード（キーワードＡなど）の特定の点のヒストグラムと、から決定される。プロセスは、入力画像のテキスト内の第２のワード（例えば、ターゲットワードＢ）の第２のワードマッチングスコア（例えば、ＷＡＢ）を決定する。第２のワードマッチングスコアは、少なくとも第２のワードの点のヒストグラムと、特定のキーワード（キーワードＡ）の特定の点のヒストグラムと、から決定される。プロセスは、少なくとも第１のワードマッチングスコア（ＷＡＡ）に応じて、第１のワード（ターゲットワードＡ）が特定のキーワード（キーワードＡ）のキーワードマッチであると分類する。プロセスは、少なくとも第２のワードマッチングスコア（ＷＡＢ）に応じて、第２のワード（ターゲットワードＢ）が特定のキーワード（キーワードＡ）のキーワードマッチではないと分類する。
【００３９】
次に、入力画像のトポロジー構造と候補フォームは、ベクトルＶｉｎｐｕｔ（Ｖ入力）とＶｃａｎｄｉｄａｔｅ（Ｖ候補）とで表される。それぞれのベクトルは、入力画像内のターゲットワードの位置を表す頂点と、候補フォームのキーワードの頂点とを含む。Ｖ候補を取得するには、候補フォームの参照画像からのキーワードに数値でラベリングされる。キーワードに番号が付けられる順序は、キーワードの位置と読み取り規則に基づいている。例えば、読み取り規則は「上から下、左から右」とすることができる。別の読み取り規則は、「上から下、右から左」でありうる。
【００４０】
図１２は、図４の候補フォームのキーワードの数値ラベルを示す。分析２１（図１０）では、「Ｐｅｒｉｏｄ（期間）」、「Ｉｎｖｏｉｃｅ（請求書）」、「Ｄａｔａ（日付）」などのワードとなる様々なキーワードが選択される。図１２の上部にリストされている選択されたキーワードは、文書フォームにおいて必ずしもこの順序で現れる必要はない。さらに、同じキーワードが複数の位置に存在する場合がある。「上から下、左から右」の読み取りルールを使用して、キーワードの配置は、数値配置ラベル（ｎｕｍｅｒｉｃａｌ  ｌｏｃａｔｉｏｎ  ｌａｂｅｌ）（括弧内に示されている）で順番にラベル付けされている。括弧内の数値配置ラベルは実際には参照画像４０の一部ではないことを理解されたい。数値配置ラベルは説明の目的で示されている。キーワード「Ｐｅｒｉｏｄ（期間）」は（５）のラベルが付いた１つの位置にあり、キーワード「Ｉｎｖｏｉｃｅ（請求書）」は（１）と（３）のラベルが付いた２つの位置にあり、キーワード「日付」は（４）と（８）のラベルが付いた２つの位置にある。図１２に示す例では、候補文書のトポロジー構造は、キーワードに関連付けられた数値配置ラベル１、２、３、４、５、６、７、８、９、１０、１１および１２によって表される。ラベルおよび関連するキーワードは、表ＩＩに従って、データベース２３（図２）に格納することができる。
【００４１】
【表２】
2020166811.tif 000006
【００４２】
図１３は、キーワードマッチとして特定されたターゲットワードを有する、図８の記入済み文書フォームの参照画像８０を示す。分析２５（図２）では、前述のようにヒストグラムを使用して、ワードマッチングスコアＷに基づいて入力画像内のキーワードマッチを特定する。すべてのワードペア（例えば、表ＩＩＩを参照）がキーワードマッチを特定するために評価された後、プロセスは、表ＩＩの１〜１２の数値配置ラベルを確立するために使用されたものと同じ読み取り規則（「上から下、左から右」）を使用する。表ＩＩＩは、図１３の入力画像で見つかったキーワードマッチの順序を示している。キーワードマッチは、表ＩＩから取得した対応する数値配置ラベルとともにリストされている。図１３は、説明の目的で、対応する数値配置ラベルを示す。括弧内の数値配置ラベルは実際には入力画像８０の一部ではないことを理解されたい。
【００４３】
表ＩＩＩでは、「Ｑｕａｎｔｉｔｙ  Ｃｏｎｔｒｏｌ  Ｉｎｃ．」が記入済み文書フォームに入力されたため、キーワード「Ｑｕａｎｔｉｔｙ（数量）」は２つのインスタンス（ｉｎｓｔａｎｃｅｓ）がある。この事実を強調するために、長方形が図１３に示されている。同様に、記入済み文書フォームへの入力により、キーワード「Ｉｎｖｏｉｃｅ（請求書）」および「Ｓｅｒｖｉｃｅｓ（サービス）」の追加のインスタンスがある。また、キーワード「Ｐｅｒｉｏｄ（期間）」は、図１３の入力画像には見つからなかったことにも留意されたい。これは、記入済み文書フォームのしみやストレイマーク（ｓｔｒａｙ  ｍａｒｋ）、スキャンエラー、またはその他が原因である可能性がある。
【００４４】
Ｖ入力の要素または頂点は、入力画像内のキーワードマッチの配置に基づいている。Ｖ入力は、入力画像内のキーワードマッチの配置を表す一連のキーワードマッチ頂点を定義する入力画像ベクトルの例である。図１３の例では、Ｖ入力の頂点は、表ＩＩＩから取得された数値配置ラベルである。したがって、
Ｖｉｎｐｕｔ＝｛１、２、９、３、４、６、７、８、９、１０、１１、３、７、１２｝
Ｖ候補の要素または頂点は、候補フォームのキーワードが入力画像内のいずれかのターゲットワードと一致したかどうかに基づく。一致が見つかった場合、そのキーワードの配置ラベルがＶ候補の頂点として機能する。キーワードが見つからない場合、ｎｏｔ−ｆｏｕｎｄフラグ（Ｏなど）がＶ候補の要素として機能する。Ｖ候補は、候補フォームのキーワードの配置を表すキーワード頂点のセットを定義する文書フォームベクトルの例である。図１３の例では、Ｖ候補の頂点は、表ＩＩから取得された数値配置ラベルである。ただし、入力画像と一致しなかったので、ｎｏｔ−ｆｏｕｎｄフラグ（例えば、Ｏ）がキーワード「期間」の頂点値である。したがって、
Ｖｃａｎｄｉｄａｔｅ＝｛１，２，３，４，Ｏ，６，７，８，９，１０，１１，１２｝
図１４Ａでは、Ｖｉｎｐｕｔ（Ｖ入力）およびＶｃａｎｄｉｄａｔｅ（Ｖ候補）は、２部グラフにおける２つの互いに素（ｄｉｓｊｏｉｎｔ）で、独立した一連の頂点である。一般的な２部グラフとは異なり、一致する頂点を結ぶ線によって形成される「エッジ」がある。つまり、エッジは、Ｖ候補のキーワード頂点を、同じ配置ラベルを有するキーワードマッチ頂点に接続する。対応するキーワードマッチ頂点を有しないキーワード頂点（例えば、キーワード「Ｐｅｒｉｏｄ（期間）」）にはエッジがない。他のエッジと交差するエッジは、クロスエッジと呼ばれる。クロスエッジは、キーワード頂点（例えば、キーワード「Ｑｕａｎｔｉｔｙ（数量）」）に対応するキーワードマッチ頂点が複数ある場合に存在する。
【００４５】
図１４Ｂでは、クロスエッジ（ｃｒｏｓｓ−ｅｄｇｅｓ）が削除されている。クロスエッジが削除されると、２つの互いに素なＶ入力とＶ候補のセットが１対１のマッピングの２部グラフを形成する。この１対１の特性（１頂点対１頂点）では、２つの画像に同じタイプの文書フォームが含まれている場合、符号化スキームは、空白の文書フォームの電子画像と、入力画像との間の同じトポロジー関係でキーワードを保持する。
【００４６】
図１４Ｂでは、Ｖ入力のキーワードマッチ頂点が削除されているため、繰り返しの一致が削除されている。Ｖ入力とＶ候補は、それぞれベクトルＳとＲに名前が変更されている。Ｓの頂点は、｛ｓ１…ｓＭ｝のように小文字で表され、合計Ｍの頂点を有する。Ｒの頂点は｛ｒ１…ｒＮ｝で表され、合計Ｎ個の頂点を有する。入力画像にキーワード（「Ｐｅｒｉｏｄ（期間）」など）が見つからない可能性がある。したがって、Ｎ≧Ｍである。この表記では、フォームマッチングスコアＦは次の数式に従って計算される。
【００４７】
【数３】
2020166811.tif 000007
【００４８】
【数４】
2020166811.tif 000008
【００４９】
数式（３）では、Ｄは、１対１のマッピングの二部グラフを提供するために、図１４Ｂに示すように削除された１つまたは複数のキーワードマッチ頂点を有するＳのサブセットを表す。Ｒのキーワード頂点にＳの対応するキーワードマッチ頂点がある場合、コスト関数Ｃは１を返す。したがって、コスト関数Ｃは、Ｓの対応するキーワードマッチ頂点を有するＲのキーワード頂点の数を提供する。少なくともこの数値から、フォームマッチングスコアＦが決定される。さらに、Ｒのキーワード頂点にｎｏｔ−ｆｏｕｎｄフラグ（Ｏなど）が含まれている場合、コスト関数Ｃは−１を返す。つまり、Ｒのキーワード頂点にＳの対応するキーワードマッチ頂点がない場合、コスト関数Ｃは−１を返す。
【００５０】
図１４Ｃは、頂点１からＮまでのＣの値を示す。Ｃの値の合計は、１１−１＝１０である。クロスエッジを削除する方法は複数ありうるため、数式（３）においてＳの複数のサブセットが可能である。図１４Ｃは、Ｓの１つの特定のサブセットに対する１つの２部グラフを示す。２部グラフは、各々のＳのサブセットに対して形成および分析されるであろう。Ｃ値の合計は、複数のＳのサブセット間で異なる場合がある。したがって、フォームマッチングスコアＦは、Ｃ値の合計の最大値の中から見つけることによって決定される。図１４Ａの例では、図１４Ｂに示されるＳのサブセットを仮定し、Ｃ値の最大合計を提供する。したがって、この例では、フォームマッチングスコアはＦ＝１０である。
【００５１】
フォームマッチングスコアＦは、評価中の各候補フォーム９０について決定される（図９）。各評価９０において、候補フォームは、ｋ＝１からＫまでの複数の文書フォームの中から取られる。プロセスは、以下の数式に従って、入力画像に最も一致する候補フォームを識別する。
【００５２】
【数５】
2020166811.tif 000009
【００５３】
【数６】
2020166811.tif 000010
【００５４】
キーワードの総数Ｎは候補フォーム間で異なる可能性があるため、候補フォームｋのフォームマッチングスコアＦは、Ｎで除算することによって正規化される。正規化フォームマッチングスコアはＦ’＝Ｆ／Ｎである。最大の正規化されたフォームマッチングスコアＦ’は、入力画像との一致として特定される。上記から、そのような特定は、その特定の候補フォームのフォームマッチングスコアＦに応じて実行されたことを理解されたい。例えば、候補フォームｋ＝１が図３の文書フォームに対応し、候補フォームｋ＝２が、図４の文書フォームに対応する場合、プロセスは、フォームｋ＝２を、フォームｋ＝１よりも高いフォームマッチングスコアを有するものとして決定する。その結果、プロセスは、ｋ＝２のフォームを図８の入力画像との一致であると特定する。
【００５５】
２つ以上の候補フォームが同じであり、合計Ｋ個のドキュメントフォームの中で正規化されたフォームマッチングスコアＦ’が最大である場合、キーワードＮの数が最も多い候補フォームｋ’が、入力画像との一致として特定される。これは、キーワードの数が最も多い候補フォームが最も一致する可能性が高いためである。候補フォームｋ’は、次の方程式に従って見つけることができる。
【００５６】
【数７】
2020166811.tif 000011
【００５７】
例えば、評価９３（図９）の１つは、第１の文書フォームがフォームマッチングスコアＦ１またはＦ’１を有すると決定できる。評価９３（図９）の別の１つは、第２の文書フォームが、フォームマッチングスコアＦ２またはＦ’２を有すると決定できる。これは第１の文書フォームと同様である。他のすべての文書フォームのフォームマッチングスコアがより低い場合、キーワードの総数が調べられる。この例では、第１の文書フォームの参照画像には合計Ｎ１個のキーワードがあり、第２の文書フォームの参照画像にはＮ１未満のＮ２がある。数式（７）によると、Ｎ１がＮ２より大きいことにより、第１の文書フォームが、入力画像と一致していると特定される。
【００５８】
図１５は、入力画像と一致する候補フォームを特定するための例示的なフロー図を示す。ブロック１５０で、スキャン２４（図２）などによって入力画像が取得される。データベース２３は、合計でＫ個の様々な文書フォームの一連のキーワードを含む。一連のキーワードは、プロセス２０、２１、および２２（図２）について前述したように、データベース２３に格納されている。第１の文書フォーム（ｋ＝１）から始めて、そのフォームの一連のキーワードがブロック１５１で使用され、入力画像が分析される２５（図２）。分析は、入力画像のテキスト内の１つまたは複数のワードを候補フォームの１つまたは複数のキーワードに関連付けること９１（図９）を含む。プロセス９２（図９）に対して前述され、図１２および図１３に示されるように、ブロック１５２および１５４において、ベクトルＲおよびＳ（Ｖ候補およびＶ入力とも呼ばれる）は、読み取り入力ルールに従って数値配置ラベルを適用することによって定義される。ブロック１５４において、図１４Ｂに示すように、Ｓ内の反復キーワードマッチ頂点を除去することにより、１つまたは複数の二部グラフが形成される。ブロック１５４において、候補フォームのフォームマッチングスコアＦは、上記数式（３）および数式（４）に従って決定される。さらに、正規化されたフォームマッチングスコアＦ’は、数式（６）に従って計算される。ブロック１５６では、正規化されたフォームマッチングスコアＦ’が閾値Ｔｆと比較される。例えば、Ｆ’＞Ｔｆの場合、候補フォームは入力画像と一致するものとして特定され、それ以上の文書フォームは評価されない。Ｆ’≦Ｔｆの場合、プロセスは、ブロック１５７で、評価すべき文書フォームがまだあるかどうか（すなわち、ｋ＝Ｋかどうか）を判断する。ｋ＝Ｋの場合、どの文書フォームも入力画像と一致しないと判断される。ｋ≠Ｋの場合、ｋはインクリメントされ（ｋ＝ｋ＋１）、同じ入力画像が次の文書フォームに対して評価される。
【００５９】
図１６Ａは、記入済み文書フォームをスキャンすることによって生成された例示的な入力画像を示す。図１６Ｂおよび図１６Ｃは、ほぼ同一の文書フォームの例を示す。違いは、図１６Ｃには、３つのキーワードを有する追加の１行の表がある。図１６Ｂの候補フォームを用いた入力画像の第１の評価では、プロセスは、ベクトルＳ＝｛１，２，３，４，５，６，７，８，９，１０｝およびＲ＝｛１，２，３，４，５，６，７，８，９，１０｝を定義する。図１６Ｂにおいて、候補フォームにはＮ＝１０個のキーワードの配置がある。対応する二部グラフが、数式（４）に従って決定されたＣの値とともに図１６Ｂに示されている。Ｃ値の合計は、フォームマッチングスコアＦ＝１０になる。Ｃ値の合計は、Ｓに対応するキーワードマッチ頂点を有するＲのキーワード頂点の数値カウントに基づいていることに留意。したがって、フォームマッチングスコアＦは、少なくともこの数値カウントから決定される。正規化されたフォームマッチングスコアはＦ’＝Ｆ／Ｎ＝１０／１０＝１である。
【００６０】
図１６Ｃの候補フォームを用いた入力画像の第２の評価では、プロセスは、ベクトルＳ＝｛１，２，３，４，５，６，７，８，９，１０｝およびＲ＝｛１，２，３，Ｏ，Ｏ，Ｏ，４，５，６，７，８，９，１０｝を定義する。キーワード「Ｐ．Ｏ．Ｎｏ．」、「Ｔｅｒｍｓ（条項）」、および「Ｐｒｏｊｅｃｔ（プロジェクト）」は入力画像で見つからなかったため、ベクトルＲにおいてｎｏｔ−ｆｏｕｎｄフラグ（「Ｏ」）でラベル付けされている。図１６Ｃでは、候補フォームにはＮ＝１３個のキーワード配置がある。対応する二部グラフが図１６Ｃに示されている。Ｃ値の合計は、フォームマッチングスコアＦ＝１０−３＝７を与える。Ｃ値の合計は、第１の数値と第２の数値とに基づいていることに留意。第１の数値、つまり１０は、Ｓに対応するキーワードマッチ頂点があるＲのキーワード頂点の数である。第２の数字、つまり３は、Ｓに対応するキーワードマッチ頂点がないＲのキーワード頂点の数である。したがって、フォームマッチングスコアＦは、第１の数値と第２の数値から決定される。正規化されたフォームマッチングスコアはＦ’＝Ｆ／Ｎ＝（１０−３）／１３＝０．５４である。
【００６１】
プロセスは、図１６Ｂの文書フォームを選択するであろう。これは、ＦまたはＦ’スコアが大きいためである。この例では、複数の文書フォームのうち、特定の文書フォーム（図１６Ｃ）が入力画像と一致しないものとして分類されている。分類は、特定の文書フォームに対して決定されたフォームマッチングスコア（Ｆ＝７またはＦ’＝０．５４のいずれか）に応じて実行される。図１６Ｃの文書フォームのすべてのキーワードが入力画像で発見された場合でも、プロセスは、図１６Ｂの文書フォームが最もよく一致すると判断することが理解できるであろう。
【００６２】
前述の説明は、入力画像内のキーワード分布のトポロジー構造を利用して、入力画像が以前に定義された文書フォームと一致するかどうかを判断するアプローチを示している。ヒストグラムを使用すると、入力画像でキーワードの一致を見つけるための安定的な方法が提供される。ヒストグラムを使用すると、スケールやローテーションが変動しても、キーワードマッチ候補が確実に見つかりうる。ベクトルＲとＳを使用すると、プロセスは、与えられた入力画像と最も一致する可能性が高い文書フォームを特定できる。定義済みの読み取りルールを使用してベクトルを形成することにより、プロセスは、同じキーワードを有するが異なるキーワードレイアウトを持つ文書フォームを区別できる。１対１の２部グラフアプローチでは、入力画像の入力にプロセスを混乱させる可能性のあるワードが含まれている場合でも、信頼できるフォーム特定が可能になる。
【００６３】
図１７は、本明細書で説明される方法およびプロセスを実行するように構成された例示的な装置１７０を示す。装置１７０は、サーバー、コンピューターワークステーション、パーソナルコンピューター、ラップトップコンピューター、タブレット、スマートフォン、ファクシミリ機、印刷機、プリンターとスキャナーを組み合わせた機能を有する多機能周辺機器（ＭＦＰ）、または他のタイプの機器でありうる。これには、１つ以上のコンピュータープロセッサとメモリーが含まれる。
【００６４】
装置１７０は、１つ以上のコンピュータープロセッサ１７１（ＣＰＵ）、１つ以上のコンピューターメモリーデバイス１７２、１つ以上の入力デバイス１７３、および１つ以上の出力デバイス１７４を含む。１つ以上のコンピュータープロセッサ１７１は、まとめてプロセッサー１７１と呼ばれる。プロセッサー１７１は、命令を実行するように構成される。プロセッサー１７１は、命令を実行する集積回路を含みうる。命令は、本明細書で説明されるプロセスを実行するための１つ以上のソフトウェアモジュールを具現化しうる。１つ以上のソフトウェアモジュールは、まとめて画像処理プログラム１７５と呼ばれる。
【００６５】
１つ以上のコンピューターメモリーデバイス１７２は、まとめてメモリー１７２と呼ばれる。メモリー１７２は、ランダムアクセスメモリ（ＲＡＭ）モジュール、読み取り専用メモリー（ＲＯＭ）モジュール、および他の電子デバイスの任意の１つまたは組み合わせを含む。メモリー１７２は、光学ドライブ、磁気ドライブ、ソリッドステートフラッシュドライブ、および他のデータストレージデバイスなどの大容量ストレージデバイスを含みうる。メモリー１７２は、画像処理プログラム１７５を格納するコンピューター読み取り可能な記憶媒体を含む。データベース２３（図２および図１５）は、メモリーデバイス１７２の一部を形成することができる。
【００６６】
１つ以上の入力デバイス１７３は、まとめて入力デバイス１７３と呼ばれる。入力デバイス１７３は、カメラおよび光源を有し、参照画像４０および／または入力画像８０を生成するために文書ページをスキャンするように構成される光学スキャナーを含むことができる。入力デバイス１７３は、人（ユーザー）がデータを入力し、装置１７０と対話することを可能にすることができる。入力デバイス１７３は、ボタン付きキーボード、タッチスクリーン、マウス、電子ペン、および他のタイプのデバイスを含むことができる。これにより、ユーザーは分析２１（図２）中にキーワードを選択できる。
【００６７】
１つ以上の出力デバイス１７４は、まとめて出力デバイス１７４と呼ばれる。出力デバイス１７４は、液晶ディスプレイ、プロジェクター、または他のタイプの視覚表示デバイスを含むことができる。出力デバイス１７４は、参照画像４０および／または入力画像８０を表示するために使用されうる。出力デバイス１７４は、参照画像４０および／または入力画像８０のコピーを印刷するプリンターを含みうる。
【００６８】
装置１７０は、装置１７０がローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、および電話通信キャリアなどのネットワーク１７７を介して他のマシンと通信できるように構成されたネットワークインターフェース（Ｉ／Ｆ）１７６を含む。ネットワークＩ／Ｆ１７６は、ネットワーク１７７を介したアナログまたはデジタル通信を可能にする回路を含みうる。例えば、ネットワークＩ／Ｆ１７６は、ネットワーク１７７に接続された別の機器から画像１０を受信するように構成されうる。ネットワークＩ／Ｆ１７６は、文字認識プロセスにかけられた、画像１０の符号化されたバージョンを送信するように構成されうる。装置１７０の上記の構成要素は、通信バス１７８を介して互いに通信可能に結合される。
【００６９】
データベース２３（図２および図１５）は、装置１７０の外部にあってもよい。その場合、ネットワークインターフェース（Ｉ／Ｆ）１７６は、ネットワーク１７７を介してデータベース２３と通信するように構成される。ネットワークインターフェース（Ｉ／Ｆ）１７６は、別のデータベース１７９と通信して、データベース１７９が、入力画像と一致すると特定された文書フォームのキーワードに関連して、入力画像から抽出されたデータを格納できるようにする。ネットワークインターフェース（Ｉ／Ｆ）１７６は、別のデータベース１７９と通信して、データベース１７９が入力画像と一致すると特定された文書フォームに関連して入力画像を格納できるように構成される。
【００７０】
本発明のいくつかの特定の形態を図示し、説明してきたが、本発明の範囲から逸脱することなく、様々な変更を加えることができることも明らかであろう。また、本発明の様々なモードを形成するために、開示された実施形態の特定の特徴および態様の様々な組み合わせまたはサブコンビネーションを互いに組み合わせるまたは置き換えることができることも企図されている。したがって、添付の特許請求の範囲による場合を除いて、本発明が限定されることは意図されていない。
【図１Ａ】
2020166811.tif 000012
【図１Ｂ】
2020166811.tif 000013
【図２】
2020166811.tif 000014
【図３】
2020166811.tif 000015
【図４】
2020166811.tif 000016
【図５Ａ】
2020166811.tif 000017
【図５Ｂ】
2020166811.tif 000018
【図５Ｃ】
2020166811.tif 000019
【図６Ａ】
2020166811.tif 000020
【図６Ｂ】
2020166811.tif 000021
【図６Ｃ】
2020166811.tif 000022
【図６Ｄ】
2020166811.tif 000023
【図７Ａ】
2020166811.tif 000024
【図７Ｂ】
2020166811.tif 000025
【図８】
2020166811.tif 000026
【図９】
2020166811.tif 000027
【図１０】
2020166811.tif 000028
【図１１Ａ】
2020166811.tif 000029
【図１１Ｂ】
2020166811.tif 000030
【図１２】
2020166811.tif 000031
【図１３】
2020166811.tif 000032
【図１４Ａ】
2020166811.tif 000033
【図１４Ｂ】
2020166811.tif 000034
【図１４Ｃ】
2020166811.tif 000035
【図１５】
2020166811.tif 000036
【図１６Ａ】
2020166811.tif 000037
【図１６Ｂ】
2020166811.tif 000038
【図１６Ｃ】
2020166811.tif 000039
【図１７】
2020166811.tif 000040
【外国語明細書】
2020166811000001.pdf
2020166811000002.pdf
2020166811000003.pdf
2020166811000004.pdf