(57)【要約】【課題】  文書イメージからデータをコグニティブにデジタル化するための方法、コンピュータ・プログラム製品、及びシステムを提供する。【解決手段】  方法、コンピュータ・プログラム製品、及びシステムが提示される。方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内でマイクロブロックのコンテンツを検査することを含み、コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、マイクロブロック処理は、信頼性レベルを抽出されたキー値ペアに関連付けることを含む、実行することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいてメタデータを出力することと、を含む。【選択図】      図１
2021504781.tif 000002
【特許請求の範囲】
【請求項１】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内の複数のマクロブロックを識別することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、前記マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、前記コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、前記マイクロブロック処理は、信頼性レベルを前記抽出されたキー値ペアに関連付けることを含む、実行することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することと、
を含む、方法。
【請求項２】
前記メタデータを出力することは、メタデータをプロセス・インターフェースに出力することを含む、請求項１に記載の方法。
【請求項３】
前記方法は、前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率として前記テキストの行のテキストの単語のフォント高さを指定する、識別することとを含み、前記メタデータを出力することは、前記相対スタイル・パラメータを出力のための出力メタデータとして提供することを含む、請求項１に記載の方法。
【請求項４】
前記メタデータは、マクロブロックの表示と、各マクロブロックについての指示子内に識別され、小見出しが付けられる識別されたキー値ペアとを含む階層を提示する、請求項１に記載の方法。
【請求項５】
前記マクロブロックの領域内のマイクロブロックのコンテンツを検査することは、異なる機械論理マイクロブロック境界付け規則を用いて前記検査を繰り返し実行して、第１の繰り返しにおいて、前記マクロブロックの前記領域内の第１のマイクロブロックのセットを識別し、第２の繰り返しにおいて、前記マクロブロックの前記領域内の第２のマイクロブロックのセットを識別することを含み、前記第２のマイクロブロックのセットのマイクロブロックのカウントは、前記第２のマイクロブロックのセットのマイクロブロックのカウントとは異なる、請求項１に記載の方法。
【請求項６】
前記出力することは、閾値を下回る信頼性レベルを有するキー値ペアが出力されないようにキー値ペアを廃棄することを含む、請求項１に記載の方法。
【請求項７】
前記コンテンツを検査することは、アラインされていないマイクロブロックのオントロジ分析を実行することと、前記オントロジ分析に基づいて、アラインされていないマイクロブロックが共線性を有すると判断することとを含む、請求項１に記載の方法。
【請求項８】
前記方法は、マイクロブロックより大きい前記文書イメージの領域についての空白スタイル・パラメータ値を求めること、及び前記空白スタイル・パラメータ値に基づいて機械論理マイクロブロック境界付け規則を適用することを含む、請求項１に記載の方法。
【請求項９】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内のマクロブロックを識別することであって、前記マクロブロックは前記複数のオブジェクトのオブジェクトを含む、識別することと、
１つ又は複数のキー値ペアの抽出のために前記文書イメージの前記マイクロブロックの領域内のマイクロブロックのコンテンツを検査することであって、前記検査することは、前記マイクロブロックの前記領域内のアラインされていないマイクロブロックのコンテンツを検査することを含み、前記マイクロブロックの前記領域内のアラインされていないマイクロブロックのコンテンツを検査することは、オントロジ分析を適用することを含む、検査することと、
信頼性レベルを、前記１つ又は複数のキー値ペアのうちの１つのキー値ペアに関連付けることと、
前記１つ又は複数のキー値ペアを出力することと、
を含む、方法。
【請求項１０】
前記検査することは、前記マクロブロックの前記領域内の第１のマイクロブロック及び第２のマイクロブロックの両方のそれぞれの意味コンテンツを分析することと、前記第１のマイクロブロックの第１の意味コンテンツがキー名と関連付けられていることを確認することと、前記キー名に対応するキー・オントロジ・データから、前記第２のマイクロブロックの第２の意味コンテンツが、前記キー名に対応するデータ・タイプのものであることを発見することとを含む、請求項９に記載の方法。
【請求項１１】
前記アラインされていないマイクロブロックのコンテンツを検査することは、マクロブロックを識別することの前に開始され、前記文書イメージ内のマクロブロックを識別することは、前記アラインされていないマイクロブロックのコンテンツを検査することに基づいて実行される、請求項９に記載の方法。
【請求項１２】
前記マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することは、異なる機械論理マイクロブロック境界付け規則を用いて前記検査を繰り返し実行して、第１の繰り返しにおいて、前記マクロブロックの前記領域内の第１のマイクロブロックのセットを識別し、第２の繰り返しにおいて、前記マクロブロックの前記領域内の第２のマイクロブロックのセットを識別することを含み、前記第２のマイクロブロックのセットのマイクロブロックのカウントは、前記第２のマイクロブロックのセットのマイクロブロックのカウントとは異なる、請求項９に記載の方法。
【請求項１３】
前記方法は、前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率として前記テキスト行のテキストの単語のフォント高さを指定し、前記メタデータを出力することは、前記相対スタイル・パラメータを出力のための出力メタデータとして提供することを含む、識別することとを含む、請求項９に記載の方法。
【請求項１４】
前記アラインされていないマイクロブロックのコンテンツを検査することは、第１の繰り返し及び第２の繰り返しにおいて前記検査を実行することを含み、前記第１の繰り返しは、前記マクロブロックの識別をもたらし、前記第２の繰り返しは、前記マクロブロックの識別後に実行される、請求項９に記載の方法。
【請求項１５】
前記アラインされていないマイクロブロックのコンテンツを検査することは、第１の繰り返し及び第２の繰り返しにおいて前記検査を実行することを含み、前記第１の繰り返しは、前記マクロブロックの識別をもたらし、前記第２の繰り返しは、前記マクロブロックの識別後に実行され、前記第１の繰り返しにおいて前記検査を実行することは、第１の機械論理マイクロブロック境界付け規則を適用して、前記マクロブロックの前記領域内の比較的少ないマイクロブロックを識別することを含み、前記第２の繰り返しにおいて前記検査を実行することは、第２の機械論理マイクロブロック境界付け規則を適用して、前記マクロブロックの前記領域内の比較的多いマイクロブロックを識別することを含み、前記出力することは、前記１つ又は複数のキー値ペアをメタデータとして、文書処理のためのプロセス・インターフェース、検索エンジン検索のためのプロセス・インターフェース、及びフォーム再生成のためのプロセス・インターフェースからなる群から選択されるプロセス・インターフェースに出力することを含む、請求項９に記載の方法。
【請求項１６】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、
前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率値として、前記テキスト行のテキストの単語のフォント高さを指定する、識別することと、
前記相対スタイル・パラメータを出力のための出力メタデータとして提供することと、を含む、方法。
【請求項１７】
前記方法は、前記テキスト行より大きい前記文書の領域におけるフォント高さ値のヒストグラムを提供することにより、前記ベースライン・スタイル・パラメータ値を求めることと、前記ヒストグラムの中央散布度に基づいて、前記ベースライン・スタイル・パラメータ値を選択することとを含む、請求項１６に記載の方法。
【請求項１８】
前記プロセス・インターフェースは、フォーム再生成器である、請求項１６に記載の方法。
【請求項１９】
前記プロセス・インターフェースは、前記テキスト行のテキストの単語のフォント高さを前記ベースライン・スタイル・パラメータ値の百分率として指定する前記相対スタイル・パラメータを検査するように構成されたフォーム再生成器であり、高さの変更を示す前記相対スタイル・パラメータに基づいて、前記フォーム再生成器により出力された出力文書におけるフォント高さ以外の前記単語の属性を変更する、請求項１６に記載の方法。
【請求項２０】
１つ又は複数の処理回路により可読であり、１つ又は複数のプロセッサにより実行される、方法を実行するための命令を格納するコンピュータ可読ストレージ媒体を含み、前記方法は、
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内の複数のマクロブロックを識別することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、前記マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、前記マイクロブロック処理は、信頼性レベルを前記抽出されたキー値ペアに関連付けることを含む、実行することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することと、
を含む、コンピュータ・プログラム製品。
【請求項２１】
前記マクロブロックの領域内のマイクロブロックのコンテンツを検査することは、異なる機械論理マイクロブロック境界付け規則を用いて前記検査を繰り返し実行して、第１の繰り返しにおいて、前記マクロブロックの前記領域内の第１のマイクロブロックのセットを識別し、第２の繰り返しにおいて、前記マクロブロックの前記領域内の第２のマイクロブロックのセットを識別することを含み、前記第２のマイクロブロックのセットのマイクロブロックのカウントは、前記第２のマイクロブロックのセットのマイクロブロックのカウントとは異なる、請求項２０に記載のコンピュータ・プログラム製品。
【請求項２２】
前記出力することは、閾値を下回る信頼性レベルを有するキー値ペアが出力されないようにキー値ペアを廃棄することを含む、請求項２０に記載のコンピュータ・プログラム製品。
【請求項２３】
前記コンテンツを検査することは、アラインされていないマイクロブロックのオントロジ分析を実行することと、前記オントロジ分析に基づいて、アラインされていないマイクロブロックが共線性を有すると判断することとを含む、請求項２０に記載のコンピュータ・プログラム製品。
【請求項２４】
前記方法は、マイクロブロックより大きい前記文書イメージの領域についての空白スタイル・パラメータ値を求めること、及び前記空白スタイル・パラメータ値に基づいて機械論理マイクロブロック境界付け規則を適用することを含む、請求項２０に記載のコンピュータ・プログラム製品。
【請求項２５】
メモリと、
メモリと通信する少なくとも１つのプロセッサと、
前記メモリを介して１つ又は複数のプロセッサにより実行可能な、方法を実行するためのプログラム命令と、
を含み、前記方法は、
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内の複数のマクロブロックを識別することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、前記マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、前記コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、前記マイクロブロック処理は、信頼性レベルを前記抽出されたキー値ペアに関連付けることを含む、実行することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することと、
を含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、文書処理技術に関し、より特定的には、文書イメージからデータをコグニティブ（cognitive）にデジタル化するための方法、コンピュータ・プログラム製品、及びシステムに関する。
【背景技術】
【０００２】
従来の文書処理において、紙に印刷された（ink-on-paper）文書は、ページごとに走査され、それぞれの視覚イメージとして準備される。走査された紙から結果として得られる文書ファイルは、典型的には、一連のページの視覚イメージである。ページの視覚イメージの各々は、アクセス可能なコンテンツを有さず、既存の文書処理アプリケーションは、特定の視覚イメージ・パターンをデジタル化してデジタル化データにすることができ、このデジタル化データには、対応するコンピュータ・プログラム・アプリケーションを用いて、アクセスし動作することができる。視覚イメージのこのようなデータ・デジタル化プロセスは、抽出又はデータ抽出と呼ばれることが多い。従来の紙形態で表される情報及び走査される文書イメージの量を鑑みると、こうした文書イメージの抽出は、産業及び社会の多くの領域における一般的な生産性に大きな影響を与え得る。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
文書イメージからデータをコグニティブにデジタル化するための方法、コンピュータ・プログラム製品、及びシステムを提供する。
【課題を解決するための手段】
【０００４】
１つの態様において、方法を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられる。この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内でマイクロブロックのコンテンツを検査することを含み、コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、マイクロブロック処理は、信頼性レベルを抽出されたキー値ペアに関連付けることを含む、実行することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することとを含む。
【０００５】
１つの態様において、１つ又は複数のプロセッサ回路により可読であり、１つ又は複数のプロセッサにより実行される、方法を実行するための命令を格納するコンピュータ可読ストレージ媒体を含むコンピュータ・プログラム製品を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、マイクロブロック処理は、信頼性レベルを抽出されたキー値ペアに関連付けることを含む、実行することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することとを含む。
【０００６】
１つの態様において、メモリと、メモリと通信する少なくとも１つのプロセッサと、メモリを介して１つ又は複数のプロセッサにより実行可能な、方法を実行するためのプログラム命令とを含むシステムを提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、マイクロブロック処理は、信頼性レベルを抽出されたキー値ペアに関連付けることを含む、実行することと、複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することとを含む。
【０００７】
１つの態様において、方法を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられる。この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内のマクロブロックを識別することであって、マクロブロックは前記複数のオブジェクトのオブジェクトを含む、識別することと、１つ又は複数のキー値ペアの抽出のために文書イメージのマイクロブロックの領域内のマイクロブロックのコンテンツを検査することであって、検査することは、マイクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することを含み、マイクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することは、オントロジ分析を適用することを含む、検査することと、信頼性レベルを、１つ又は複数のキー値ペアのうちの１つのキー値ペアに関連付けることと、１つ又は複数のキー値ペアを出力することとを含む。
【０００８】
１つの態様において、１つ又は複数の処理回路により可読であり、方法を実行するための、１つ又は複数のプロセッサにより実行される命令を格納するコンピュータ可読ストレージ媒体を含むコンピュータ・プログラム製品を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することであって、マクロブロックは複数のオブジェクトを含む、識別することと、１つ又は複数のキー値ペアの抽出のために文書イメージのマクロブロックの領域内のマクロブロックのコンテンツを検査することであって、検査することは、マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することを含み、マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することは、オントロジ分析を適用することを含む、検査することと、信頼性レベルを１つ又は複数のキー値ペアのうちの１つのキー値ペアに関連付けることと、１つ又は複数のキー値ペアを出力することとを含む。
【０００９】
１つの態様において、メモリと、メモリと通信する少なくとも１つのプロセッサと、メモリを介して１つ又は複数のプロセッサにより実行可能な、方法を実行するためのプログラム命令とを含むシステムを提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージ内の複数のマクロブロックを識別することであって、マクロブロックは複数のオブジェクトを含む、識別することと、１つ又は複数のキー値ペアの抽出のために文書イメージのマクロブロックの領域内のマクロブロックのコンテンツを検査することであって、検査することは、マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することを含み、マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することは、オントロジ分析を適用することを含む、検査することと、信頼性レベルを１つ又は複数のキー値ペアのうちの１つのキー値ペアに関連付けることと、１つ又は複数のキー値ペアを出力することとを含む。
【００１０】
１つの態様において、方法を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられる。この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、文書イメージのテキストの行の各単語について、ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、相対スタイル・パラメータは、ベースライン・スタイル・パラメータ値の百分率としてテキストの行のテキストの単語のフォント高さを指定する、識別することと、相対スタイル・パラメータを出力のための出力メタデータとして提供することとを含む。
【００１１】
１つの態様において、１つ又は複数の処理回路により可読であり、１つ又は複数のプロセッサにより実行される、方法を実行するための命令を格納するコンピュータ可読ストレージ媒体を含むコンピュータ・プログラム製品を提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、文書イメージのテキストの行の各単語について、ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、相対スタイル・パラメータは、ベースライン・スタイル・パラメータ値の百分率としてテキスト行のテキストの単語のフォント高さを指定する、識別することと、相対スタイル・パラメータを出力のための出力メタデータとして提供することとを含む。
【００１２】
１つの態様において、メモリと、メモリと通信する少なくとも１つのプロセッサと、メモリを介して１つ又は複数のプロセッサにより実行可能な、方法を実行するためのプログラム命令とを含むシステムを提供することにより、従来技術の欠点が克服され、付加的な利点が与えられ、この方法は、例えば、複数のオブジェクトを含む文書イメージを取得することと、文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、文書イメージのテキストの行の各単語について、ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、相対スタイル・パラメータは、ベースライン・スタイル・パラメータ値の百分率としてテキスト行のテキストの単語のフォント高さを指定する、識別することと、相対スタイル・パラメータを出力のための出力メタデータとして提供することとを含む。
【００１３】
本発明で記載される技術を通じて、付加的な特徴が実現される。これらに限定されるものではないが、コンピュータ・プログラム製品及びシステムを含む他の実施形態及び態様が、本明細書で詳細に説明され、特許請求される発明の一部と見なされる。
【００１４】
本発明の１つ又は複数の態様が、本明細書の最後にある特許請求の範囲において、例として具体的に示され、明確に特許請求されている。本発明の上記及び他の目的、特徴、並びに利点は、添付図面と関連して用いられる以下の詳細な説明から明らかである。
【図面の簡単な説明】
【００１５】
【図１】本明細書に記載される１つ又は複数の実施形態による、文書イメージをコグニティブにデジタル化するためのシステムを示す。
【図２】本明細書に記載される１つ又は複数の実施形態による、コグニティブ文書デジタル化エンジンにより実行される動作のフローチャートを示す。
【図３】本明細書に記載される１つ又は複数の実施形態による、コグニティブ文書デジタル化エンジンにより実行される、多層ブロック識別の詳細な動作を示す。
【図４】本明細書に記載される１つ又は複数の実施形態による、マクロブロックを識別するために調整可能なブロック識別パラメータが適用される例示的文書イメージを示す。
【図５】マクロブロックが識別され、内部のマイクロブロックの識別のための処理が施されるマクロブロック処理の詳細な動作を示す。
【図６】本明細書に記載される１つ又は複数の実施形態による、マクロブロックを識別するために調整可能なブロック識別パラメータが適用される例示的文書イメージを示す。
【図７】本明細書に記載される１つ又は複数の実施形態による、マクロブロックを識別するために調整可能なブロック識別パラメータが適用される例示的文書イメージを示す。
【図８】本明細書に記載される１つ又は複数の実施形態による、マクロブロックを識別するために調整可能なブロック識別パラメータが適用される例示的文書イメージを示す。
【図９】本明細書に記載される１つ又は複数の実施形態による、文書デジタル化エンジンにより出力される出力メタデータを示す。
【図１０】本明細書に記載される１つ又は複数の実施形態による、文書デジタル化エンジンにより出力される出力メタデータを示す。
【図１１】本発明の実施形態によるクラウド・コンピューティング・ノードを示す。
【図１２】本発明の実施形態によるクラウド・コンピューティング環境を示す。
【図１３】本発明の実施形態による抽象化モデルを示す。
【発明を実施するための形態】
【００１６】
図１は、本明細書に記載される１つ又は複数の実施形態による、文書イメージをコグニティブにデジタル化するためのシステム１００を示す。
【００１７】
文書イメージからの計算（computational）データの抽出は、様々なカスタム形式、個々のスタイル、多様なアラインメント、及び非テキスト・コンテンツのためにうまくいかないことが多い。その結果、文書イメージで表される膨大な量の情報には、完全にデジタル化された文書と同じ程度にアクセス可能ではない。デジタル化されていない文書イメージは、視覚的表示及び保存目的などに使用が制限される。その一方で、デジタル化から利益を得る文書の数を考慮すると、そうした文書イメージの手動デジタル化に必要な時間とコストは法外なものである。
【００１８】
デジタル文書は、文書内に表されるデータを計算的に（computationally）用いる際に便宜上好ましいことが多い。紙にペンで書かれた（pen-on-paper）文書を走査して取り込むと、文書は、ページの一連の視覚イメージとなるものの、デジタル・データとして計算的に使用する準備はできていない。従って、文書イメージから計算データを正確に抽出するために、多くの文書デジタル化アプリケーションが開発されてきた。既存の文書処理アプリケーションにおいては、文書の視覚イメージを処理し、文書から計算データを抽出する際、文書のカスタム形式及び構成が非常に多いことにより問題が提示される。本明細書での実施形態は、文書内の視覚マークが伝える意味を人間の読み手が理解するとき、文書イメージのコグニティブなデジタル化プロセスを実施し、文書イメージからのデータ抽出の効率及び精度を向上させる。本明細書での実施形態は、オブジェクトのアラインメント又はオブジェクト間の意味関係のみに依存せず、アライメント・ベースの処理及び意味ベースの処理の組み合わせを用いる方法によって、文書からメタデータを抽出する。
【００１９】
システム１００は、文書デジタル化エンジン１２０を含む。文書デジタル化エンジン１２０は、ユーザ・デバイス１１０を介して、ユーザ１０１から文書イメージ１８１を受け取る。文書イメージ１８１は、計算データではない特定の情報に対して作成された文書の視覚イメージである。例えば、紙文書の走査イメージは、いずれのデジタル化データも有さないので、走査イメージ内のテキストを検索することも、又はデータ入力として別のアプリケーションに読み込むこともできない。文書イメージ１８１は、計算データとして抽出することができる多数のオブジェクトを有する。本明細書において、「オブジェクト」という用語は、文書イメージにおける識別可能な個々のエンティティを指し、「マイクロブロック」という用語は、マイクロブロック機械論理境界付け規則（delineation rule）に従ってオブジェクト間の関係を見つけるための種々の分析のための、文書内の対応するオブジェクトから識別される候補データの最小単位を指す。文書デジタル化エンジン１２０は、各マイクロブロックのコンテンツ、位置、スタイルを含む多数のマイクロブロック特徴を有して各マイクロブロックを表す。
【００２０】
文書デジタル化エンジン１２０は、多層共線性分析に基づいて文書イメージ１８１からデータを自動的に抽出するので、文書イメージ１８１内のテキスト及び数のイメージから抽出された情報は、他のプログラム及びアプリケーションにより使用可能な計算データであり得る。文書デジタル化エンジン１２０に結合されたリレーショナル・データベース１５０は、文書イメージ１８１から抽出されたデータに対応する複数のＫＶＰのうちの１つのキー値ペア（ＫＶＰ）１５５を格納する。文書デジタル化エンジン１２０は、キー値ペアをそれぞれの信頼性レベルと関連付ける。「キー値ペア」という用語は、キー及び値を用いる一次データ表現単位を指し、そこで、キーは値を説明又は特定する。多くの場合、リレーショナル・データベース・テーブルに見られるように、ＫＶＰを階層的に編成してより大きいデータ構造にすることができる。
【００２１】
文書デジタル化エンジン１２０は、文書イメージ１８１内のオブジェクトについてのメタデータ１４０を判断することができる。デジタル化された計算データを定めるメタデータ１４０は、例えば、コンテンツ、位置及びスタイルなどの特徴メタデータ１４５、関連付けられた信頼性レベルを含むことができるキー値ペア・メタデータ１４６、及びより広い領域に関連する文書の領域におけるスタイルを指定する相対スタイル・メタデータ１４８を含むことができる。出力メタデータを編成して、文書イメージ１８１のオブジェクト間の階層関係を示すタクソノミ（taxonomy）を指定することができる。文書デジタル化エンジン１２０は、例えばＪＳＯＮ又はＸＭＬなどの適切なマークアップでメタデータを出力することができ、１つの実施形態においては、文書のコンテンツを表す機械可読スタイルシートでメタデータを出力することができる。文書デジタル化エンジン１２０は、メタデータを１つ又は複数のプロセス・インターフェース１４９に出力することができる。文書デジタル化エンジン１２０は、光学式文字認識（ＯＣＲ）などの１つ又は複数の外部ツール１７０を用いて、メタデータを判断することができる。
【００２２】
本明細書において、「共線性」という用語は、文書デジタル化エンジン１２０が、２つ又はそれより多いマイクロブロックが共線性を有することに基づいてマイクロブロックを識別するために有意であると考えるときの、文書イメージ１８１内の認識可能なオブジェクト間の幾何的アラインメントを指し、「マイクロブロック」という用語は、文書イメージ１８１から認識される個々のオブジェクトを指し、「マクロブロック」という用語は、テーブル内のキー値ペア（ＫＶＰ）及び列又行のような有意のデータ単位を形成する、２つ又はそれより多いマイクロブロックのグループを指す。マクロブロックは、２つ又はそれより多いマイクロブロックの空間領域を含む空間領域を定めることができる。
【００２３】
従来の文書イメージ処理においては、使用可能なデータを抽出するための無数のカスタム形式の文書において共線性を正しく発見するのは、進行中のプロセスである。文書デジタル化エンジン１２０は、共線性及び意味論を用いる多層手法を利用して、従来の文書イメージ処理アプリケーションよりも包括的な文書の認識を達成し、結果として文書イメージ１８１から使用可能データを抽出する。
【００２４】
文書デジタル化エンジン１２０は、複数の調整可能な共線性パラメータに基づいてマイクロブロックの間の共線性を分析し、文書イメージ１８１においてアラインされると判断される複数のマイクロブロックから計算データを抽出する。コヒーシブ・データの例は、文書内のテーブルにおけるような、個々のキー値ペア及びＫＶＰのセットを含むことができる。調整可能な共線性パラメータの例は、これらに限定されるものではないが、フォント高さ及びスタイルの変更、アラインメント及び句読点を含むことができる。文書デジタル化エンジン１２０による共線性分析に基づいて２つのマイクロブロックが互いにアラインする場合、キーはマイクロブロックであり、値は別のマイクロブロックであるので、キー値ペアは、２つのマイクロブロックを含むマクロブロックである。
【００２５】
文書デジタル化エンジン１２０は、意味データベース１３０内に格納された種々の意味情報をさらに利用して、文書イメージ１８１からデータを抽出する。意味データベース１３０内の情報の幾つかの例として、これらに限定されるものではないが、１つ又は複数の文書クラス１３１、１つ又は複数のキー・エイリアス１３５、及びキー・オントロジ・データ１３７が挙げられる。文書デジタル化エンジン１２０の詳細な動作は、図２、図３及び図４に説明される。
【００２６】
意味データベース１３０において、１つ又は複数の文書クラス１３１の各々は、各文書クラス内のあらゆる文書が含むことになる１つ又は複数のクラス・キー１３３に対応する。例えば、文書が購入請求書クラスのものであるとき、対応するクラス・キーは、これらに限定されるものではないが、名称、取引日、項目リスト、金額等を含むことができる。
【００２７】
意味データベース１３０において、１つ又は複数のキー・エイリアス１３５は、キーの代わりに文書イメージ１８１内に現れ得る多数のキーについてのエイリアスを含む。クラスに対応する全てのクラス・キーは１つの文書内に現れるので、１つ又は複数のクラス・キー１３３を探して、１つ又は複数のキー・エイリアス１３５が調べられることが多い。例えば、クラス・キーが「Ａｃｃｏｕｎｔ  Ｎｕｍｂｅｒ（アカウント番号）」クラス・キーを指定し得るが、文書イメージ１８１は、「Ａｃｃｏｕｎｔ  Ｎｕｍｂｅｒ」のテキストではなく、「Ａｃｃｔ．＃」テキストを有するキーを有することがある。１つ又は複数のキー・エイリアス１３５は、様々なカスタマイズ文書の分析及びデータ抽出を適合するように、「Ａｃｃｏｕｎｔ  Ｎｕｍｂｅｒ」及び「Ａｃｃｔ．＃」のような交換可能な名称を列挙する。
【００２８】
意味データベース１３０のキー・オントロジ・データ１３７は、制約のセット、及び文書イメージ１８１により表される知識の範囲をモデル化する意味を定める。キー・オントロジ・データ１３７は、文書イメージ１８１内に提示できる複数のキーを含む。複数のキーの中のキー１３８は、キー１３８のプロパティ、キー１３８が属する１つ又は複数のセット、及び１つ又は複数のセットの同じセットのメンバーの間の関係を含む種々の特徴と関連付けられる。また、文書デジタル化エンジン１２０は、２つの意味的に関連付けられたテキスト・ブロックが共線性を有すると結論づけることができる。例えば、キー１３８は、ＣｕｓｔｏｍｅｒＬａｓｔＮａｍｅ（顧客の姓）キーに対するテキスト文字列、ＤａｔｅＯｆＢｉｒｔｈ（生年月日）キーに対する８桁の数のような、キー１３８についての値の適切なデータ・タイプを指定するデータ・タイプ１３９プロパティを有することができる。同じ例において、テキスト文字列が、「Ｊｏｈｎｓｏｎ」のような一般的な名前を有する場合、文書デジタル化エンジン１２０は、テキスト文字列が近接範囲内のキーとアラインされなくても、ＣｕｓｔｏｍｅｒＬａｓｔＮａｍｅキー及びテキスト文字列「Ｊｏｈｎｓｏｎ」をＫＶＰとして判定することができる。同じ例において、文書デジタル化エンジン１２０は、テキスト文字列「Ｊｏｈｎｓｏｎ」を用いて分類器（外部ツール１７０の１つ）を実行し、テキスト文字列「Ｊｏｈｎｓｏｎ」が名前についてのデータ・タイプであると判定する。別の例において、キー１３８は、１つ又は複数のクラス・キー１３３の１つとすることができ、ＣｕｓｔｏｍｅｒＮｕｍｂｅｒ（顧客番号）クラス・キー及びＡｍｏｕｎｔ（金額）クラス・キーの両方を含む請求書文書クラスのような、キー・オントロジ・データ１３７内に定められる他のクラス・キーとの関係を有する。
【００２９】
図２は、本明細書に記載される１つ又は複数の実施形態による、図１の文書デジタル化エンジン１２０により実行される動作のフローチャートを示す。
【００３０】
ブロック２１０において、文書デジタル化エンジン１２０は、文書イメージを受け取り、該文書イメージを処理する。受け取った文書イメージは、１つのページ内に１つより多い特有の（distinctive）視覚パターンを有し得る。文書デジタル化エンジン１２０は、こうしたパターンを文書内のそれぞれのセクションとして識別する。本明細書において、「オブジェクト」という用語は、文書イメージ内のイメージ・オブジェクトを指し、「マイクロブロック」という用語は、共線性分析のためのマイクロブロック機械論理境界付け規則に従って対応するイメージ・オブジェクトから識別された不可分の単位ブロックを指す。次に、文書デジタル化エンジン１２０は、ブロック２２０に進む。
【００３１】
ブロック２２０において、文書デジタル化エンジン１２０は、テーブル分類器、単語密度分類器（テキスト密度が閾値を上回る領域をマクロブロックとして識別することができる）、アドレス分類器、段落分類器などのマクロブロック分類器を用いて、文書イメージ１８１のそれぞれのセクションにマクロブロック分類器を適用する。文書デジタル化エンジン１２０が文書においてオブジェクトのマクロブロックを発見しない場合、文書デジタル化エンジン１２０はブロック２３０に進む。文書デジタル化エンジン１２０が文書においてオブジェクトの１つ又は複数のマクロブロックを発見した場合、文書デジタル化エンジン１２０は、ブロック２４０に進む。
【００３２】
ブロック２３０において、文書デジタル化エンジン１２０は、文書イメージ１８１内のマイクロブロックを分析し、マイクロブロックの拡張した共線性分析に基づいてマクロブロックを識別する。ブロック２３０の詳細な動作及び対応する説明は、図３に説明される。次に、文書デジタル化エンジン１２０は、ブロック２５０に進む。
【００３３】
ブロック２４０において、文書デジタル化エンジン１２０は、ブロック２２０におけるマクロブロック分類又はブロック２３０における共線性分析の結果として識別されたマクロブロックをそれぞれ分析する。ブロック２４０の詳細な動作及び対応する説明は、図５に説明される。次に、文書デジタル化エンジン１２０は、ブロック２５０に進む。
【００３４】
ブロック２５０において、文書デジタル化エンジン１２０は、計算データを有するデジタル化された文書イメージの結果をユーザに返す。文書デジタル化エンジン１２０は、随意的に、ユーザからの結果に対するフィードバック１９９を受け取る。文書デジタル化エンジン１２０は、ブロック２３０から生成されたキー値ペア及び／又はフィードバックに従ってブロック２４０から生成されたテーブルを更新し、次に、ブロック２１０において受け取った文書イメージ１８１の処理を終了する。ブロック２５０において、文書デジタル化エンジン１２０は、メタデータを、例えばプロセス・インターフェース１４９に出力することができる。
【００３５】
文書デジタル化エンジン１２０は、文書イメージ１８１のセクションに応じてブロック２３０及びブロック２４０を実行し、オブジェクト・クラスタ及び種々の組織のテーブルの混合物を有するカスタム文書の種々の形式をサポートすることができる。文書デジタル化エンジン１２０は、文書イメージ１８１内に存在するオブジェクトに従って、必要に応じてブロック２３０及び／又はブロック２４０を繰り返すことができる。
【００３６】
図３は、本明細書に記載される１つ又は複数の実施形態による、図１の文書デジタル化エンジン１２０により実行されるような、図２のブロック２３０の詳細な動作、多層ブロックの識別を示す。
【００３７】
ブロック３１０において、文書デジタル化エンジン１２０は、対応するオブジェクトから、受け取った文書におけるマイクロブロックを識別する。オブジェクトは、テキスト文字列、数値、記号、又は画像のいずれかであり得る。文書デジタル化エンジン１２０は、共線性分析に備えて、オブジェクト間の水平及び垂直空間の絶対距離及び／又は相対近接性を測定する。次に、文書デジタル化エンジン１２０は、ブロック３２０に進む。
【００３８】
ブロック３２０において、文書デジタル化エンジン１２０は、マイクロブロックの調整可能な共線性パラメータに基づいて、２つ又はそれより多いマイクロブロックの相対位置の近接性を分析することにより、ブロック３１０で識別された各マイクロブロックに対応するマクロブロックを識別する。文書デジタル化エンジン１２０は、調整可能な共線性パラメータに従って共線性を有する２つ又はそれより多いマイクロブロックに基づいて、マクロブロックを識別することができる。受け取った文書内の全てのマイクロブロックについてそれぞれのマクロブロックを識別すると、文書デジタル化エンジン１２０は、ブロック３３０に進む。
【００３９】
１つの実施形態において、文書デジタル化エンジン１２０は、２つ又はそれより多いマイクロブロックが、絶対距離又は相対位置において特定の距離範囲内にあるとき、正確なアラインメントなしに、調整可能な共線性パラメータに基づいて２つ又はそれより多いマイクロブロックが共線性を有すると判断することができる。調整可能な共線性パラメータは、フォント、段落アラインメント、句読点、及びオントロジ・マッチングを含む。調整可能な共線性パラメータは、２つのマイクロブロックが特有のフォント及び異なるサイズ／スタイルを有し、それぞれのマイクロブロックにおいて異なる段落アラインメントを有し、及び／又は句読点により分離されていても、文書デジタル化エンジン１２０は、２つのマイクロブロックを共線関係で関連付けることができる。さらに、文書デジタル化エンジン１２０は、例えば、特定のキー名及びキー名についてのデータ・タイプが指定されるキー・オントロジ・データに基づいて、２つのマイクロブロックをマクロブロックとして判断することができる。調整可能な共線性パラメータの例及び詳細な説明及び対応する説明は、図４に説明される。
【００４０】
ブロック３３０において、文書デジタル化エンジン１２０は、受け取った文書のクラス、及び文書のクラスにおいて要求される全てのクラス・キーが識別されたかどうかを判断する。文書デジタル化エンジン１２０が、いずれのクラス・キーも識別されなかったと判断した場合、文書デジタル化エンジン１２０は、ブロック３４０に進む。文書デジタル化エンジン１２０が、全てのクラス・キーが識別されたと判断した場合、文書デジタル化エンジン１２０は、ブロック３５０に進む。
【００４１】
ブロック３４０において、文書デジタル化エンジン１２０は、欠落しているクラス・キーの各々に対応するそれぞれのエイリアスに関して、ブロック３１０において識別された全てのマイクロブロックを検査する。欠落しているクラス・キーの代わりに見つかった各エイリアスについて、文書デジタル化エンジン１２０は、ブロック３２０におけるような、エイリアスを有するマイクロブロックを含むマクロブロックを識別する。次いで、文書デジタル化エンジン１２０は、ブロック３５０に進む。
【００４２】
ブロック３５０において、文書デジタル化エンジン１２０は、ブロック３２０及びブロック３４０において識別されたマクロブロックから全てのキー値ペア（ＫＶＰ）を識別する。各マクロブロックの１つのマイクロブロックは、ＫＶＰにおけるキーに対応し、同じマクロブロックの別のマイクロブロックは、同じＫＶＰ内の値に対応し得る。文書デジタル化エンジン１２０は、信頼性レベルを識別されたＫＶＰの各々に割り当てる。文書デジタル化エンジン１２０は、近接性レベル、それぞれのキー名のオントロジ・マッチング及びデータ・タイプのような種々の要因に基づいて、ＫＶＰの信頼性レベルを発見的に判断する。公式の（formal）取引文書内に頻繁に現れるキー及び値において、ＫＶＰの信頼性レベルは、非公式の（informal）個人的文書におけるカスタム・キー及び値よりも高くなり得る。次いで、文書デジタル化エンジン１２０は、図２のブロック２５０に進む。
【００４３】
図４は、本明細書に記載される１つ又は複数の実施形態による、マクロブロックを特定するために調整可能なブロック特定パラメータが適用される、例示的な文書イメージを示す。
【００４４】
文書４００は、種々の構成での２つのマイクロブロックを含む。第１のマイクロブロックはテキスト文字列「Ｎａｍｅ（名前）」を有し、第２のマイクロブロックはテキスト文字列「Ｋｅｖｉｎ」を有する。第１のマイクロブロックの「Ｎａｍｅ」テキストは、キーとして抽出することができ、第２のマイクロブロックの「Ｋｅｖｉｎ」テキストは、Ｎａｍｅキーの値として抽出することができ、そこから、文書デジタル化エンジン１２０は、マクロブロック、すなわちキー値ペア（ＫＶＰ）、Ｎａｍｅ＝「Ｋｅｖｉｎ」を識別する。
【００４５】
構成４１０は、２つの隣接するマイクロブロックにおける異なるフォント・サイズを示し、そこで、「Ｎａｍｅ」マイクロブロックは、「Ｋｅｖｉｎ」マイクロブロックのフォントより小さいフォントを有する。既存の文書処理アプリケーションにおいては、サイズの変更を含むフォントの差は、さもなくばＫＶＰを形成することになる２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害するであろう。文書デジタル化エンジン１２０は、フォント・サイズに関する調整可能な共線性パラメータを用いて、異なるフォント・サイズを有する２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００４６】
構成４１５は、２つの垂直方向に隣接するマイクロブロックにおける異なるテキスト・スタイルを示し、ここで、「Ｎａｍｅ」マイクロブロックはボールド体であるが、次の行の「Ｋｅｖｉｎ」マイクロブロックは標準書体を有する。既存の文書処理アプリケーションにおいて、例えば活字書体の変更を含むテキスト・スタイルの差は、標準テキストがボールド体、イタリック体、及び下線付きであるとき、さもなくばＫＶＰを形成することになる２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害するであろう。文書デジタル化エンジン１２０は、テキスト・スタイルに関する調整可能な共線性パラメータを用いて、異なるテキスト・スタイルを有する２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００４７】
構成４２０は、２つの隣接するマイクロブロックにおける異なる段落アラインメントを示し、ここで、「名前」マイクロブロックは左揃えにされているが、「Ｋｅｖｉｎ」マイクロブロックは右端にアラインされている。既存の文書処理アプリケーションにおいては、上に示されるような段落アラインメントの差は、さもなくばＫＶＰを形成することになる２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害するであろう。文書デジタル化エンジン１２０は、段落アラインメントに関する調整可能な共線性パラメータを用いて、異なる段落アラインメントを有する２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００４８】
構成４２５は、２つの垂直方向に隣接するマイクロブロックにおける異なる段落アラインメントを示し、ここで、「Ｎａｍｅ」マイクロブロックは左揃えにされているが、「Ｋｅｖｉｎ」マイクロブロックは次の行の右端にアラインされている。既存の文書処理アプリケーションにおいては、上に示されるような段落アラインメントの差は、さもなくばＫＶＰを形成することになるそれぞれの行の２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害するであろう。文書デジタル化エンジン１２０は、段落アラインメントに関する調整可能な共線性パラメータを用いて、異なる段落アラインメントを有するそれぞれの行の２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００４９】
構成４３０は、句読点で分離される２つの隣接するマイクロブロックを示し、そこで、「：」すなわちコロンが、「Ｎａｍｅ」マイクロブロックと「Ｋｅｖｉｎ」マイクロブロックとの間に配置される。既存の文書処理アプリケーションにおいては、上に示されるような分離する句読点は、さもなくばＫＶＰを形成することになる２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害することがある。文書デジタル化エンジン１２０は、句読点の分離に関する調整可能な共線性パラメータを用いて、句読点で分離される２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００５０】
構成４３５は、句読点で分離される２つの垂直方向に隣接するブロックを示し、そこで、「：」すなわちコロンが、「Ｎａｍｅ」マイクロブロックと「Ｋｅｖｉｎ」マイクロブロックとの間に配置される。既存の文書処理アプリケーションにおいては、上に示されるような分離する句読点は、さもなくばＫＶＰを形成することになるそれぞれの行の２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害することがある。文書デジタル化エンジン１２０は、句読点分離に関する調整可能な共線性パラメータを用いて、句読点で分離されるそれぞれの行の２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００５１】
構成４４０は、広いスペースで分離される２つの隣接するマイクロブロックを示し、そこで、「Ｎａｍｅ」マイクロブロックと「Ｋｅｖｉｎ」マイクロブロックとの間の広いスペースは通常、既存の文書処理アプリケーションにおいては、２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害する。文書デジタル化エンジン１２０は、２つのマイクロブロックのテキストを意味的に分析すること、及び「Ｋｅｖｉｎ」が「Ｎａｍｅ」キーの値についての適切なデータ・タイプのものであるとき、キー・オントロジ・データに基づいてキーと値とをマッチングすることにより、こうした広いスペースで分離される２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００５２】
構成４４５は、広いスペースで分離される２つの垂直方向に隣接するマイクロブロックを示し、ここで、「Ｎａｍｅ」マイクロブロックと次の行の「Ｋｅｖｉｎ」マイクロブロックとの間の広いスペースは通常、既存の文書処理アプリケーションにおいては、２つのマイクロブロックがマクロブロック（ＫＶＰ）として識別されるのを阻害する。文書デジタル化エンジン１２０は、２つのマイクロブロックのテキストを意味的に分析すること、及び「Ｋｅｖｉｎ」が「Ｎａｍｅ」キーの値についての適切なデータ・タイプのものであるとき、キー・オントロジ・データに基づいてキーと値とをマッチングすることにより、こうした広いスペースで分離されるそれぞれの行の２つのマイクロブロックを１つのマクロブロック（ＫＶＰ）として識別することが可能である。
【００５３】
特定の実施形態において、文書デジタル化エンジン１２０は、例えば、きつい間隔（spacing）、シングル・スペース（標準の間隔）、１．５間隔、ダブル・スペース及び広い間隔などを含むことができる所定の間隔カテゴリのセットを有することができ、ここで、各間隔カテゴリは、それぞれの間隔カテゴリにより分離される２つのマクロブロック間の共線性の特有の尤度を示す。間隔カテゴリのセットは、各マクロブロック内のマイクロブロックに対して特有のものであり得る。
【００５４】
文書デジタル化エンジン１２０はさらに、意味関係を示す、接続詞、論理和、及び関連した記号マークのような意味表示の存在に基づいて、意味的補間（semantic interpolation）を適用することができる。例えば、「及び（ａｎｄ）」及び「又は（ｏｒ）」の両方とも、記号「＆」、「＋」におけるような行の継続を表す。「−」及び「＊」などの記号は、リスト内の見出し行の標識として使用されることが多い。文書デジタル化エンジン１２０は、間隔カテゴリからなされたマクロブロックの識別のために、意味的補間を考慮に入れることができる。
【００５５】
さらに、文書デジタル化エンジン１２０は、マクロブロック識別のために、相対スタイルも考慮に入れることができる。意味的補間及び相対スタイルは一般に、絶対的及び相対的測定に従った間隔を下回るそれぞれの重みを有する。文書デジタル化エンジン１２０は、文書のクラスに基づいて、特定の要素についてのそれぞれの重みを割り当てることができる。例えば、特定の距離範囲内の２つのブロック間のスタイル及びフォントの変更は、プレゼンテーション用スライドのような非公式文書よりも、取引文書、請求書、及び政府書式などの公式文書においてより重視され得る。
【００５６】
図５は、メタデータのマクロブロック抽出のための方法を示す。文書デジタル化エンジン１２０は、メタデータにより提供される計算データを、例えば意味データベース１３０の更新で使用される１つ又は複数のプロセス・インターフェースに出力し、タクソノミ・レポートは、文書デジタル化エンジンが、音声対応アプリケーションで用いられる、フォームへの申請書を検索エンジンに入力するために、文書イメージに類似した文書イメージを次に処理するときに、文書デジタル化エンジン１２０により提供される処理を改善する。
【００５７】
ブロック２１１０において、文書デジタル化エンジン１２０は、例えば、マイクロブロック１６０２Ａ〜１６０２Ｋのような１つ又は複数のマイクロブロックを含む図６に示されるマクロブロック１６０４Ｄなどのマクロブロックを識別する。１つの実施形態において、本明細書に記載されるマクロブロック１６０４Ｄ（図６）の識別は、各マイクロブロックについての調整可能な共線性パラメータを分析することを含む。ブロック３２０（図３）を参照して述べられるように、調整可能な共線性パラメータは、フォント、段落アラインメント、句読点、及びオントロジ・マッチングを含むことができる。１つの実施形態において、文書デジタル化エンジン１２０は、例えば、テーブル、テキスト密度、アドレス、又は段落分類器などの分類器の適用などの別の方法を用いて、マクロブロック１６０４Ｄ（図６）を識別する（図２のブロック２２０において）。文書デジタル化エンジン１２０は、文書イメージの全てのマクロブロックが識別されるまで、ブロック２１１０を繰り返すことができる。例えばテーブルなどの特化されたマクロブロックが認識された場合、特化されたマクロブロック処理が進行し得る。いかなる場合でも、ブロック２１１０に説明されるような一般的なマクロブロック処理が進行し得る。
【００５８】
ブロック２１２０において、文書デジタル化エンジン１２０は、例えばマクロブロック１６０４Ｄなどの識別されたマクロブロックを用いて、キー値ペア（ＫＶＰ）を見つける。識別されたＫＶＰは、例えばマクロブロック１６０４Ｄを識別するための処理中に識別された、あらゆる以前に識別されたＫＶＰを補足することができる。識別されたマクロブロック１６０４Ｄを用いてＫＶＰを見つけることは、１つの実施形態において、文書デジタル化エンジン１２０が、異なるマイクロブロック境界付け機械論理規則を繰り返し適用して、マクロブロック内の同じコンテンツに対して異なるマイクロブロックのセットが識別されるようにすることを含む。識別されたマクロブロック内のマイクロブロックに対して、文書デジタル化エンジン１２０は、１つの実施形態において、１つのマイクロブック内の「キー」を見つけると、そのキーに対応する値についてのマクロブロック内の各々の残りのマイクロブロックを検索する。
【００５９】
ブロック２１３０において、文書デジタル化エンジン１２０は、関連付けられた信頼性レベルを含み得る識別されたＫＶＰを評価する。ブロック２１３０の実行のために、１つの実施形態において、文書デジタル化エンジン１２０は、信頼性レベルを識別されたＫＶＰの各々に割り当てる。文書デジタル化エンジン１２０は、近接性のレベル、それぞれのキー名称及びデータ・タイプのオントロジ・マッチングなどの種々の要因に基づいて、ＫＶＰの信頼性レベルを発見的に判断する。形式的な取引文書内に頻繁に表れるキー及び値の場合、ＫＶＰの信頼性レベルは、非公式の個人的文書におけるカスタム・キー及び値よりも高くなり得る。１つの実施形態において、文書デジタル化エンジン１２０は、信頼性レベルをＫＶＰに割り当てるための要因として、ＫＶＰが共通のマクロブロックに属することが以前に判断されたかどうかを適用する。従って、文書デジタル化エンジン１２０は、評価が、共通のマクロブロックに属するとしてキー値ペアを識別する前に行われるか（ブロック２１３０において）、又は一般的に、比較されるマイクロブロックを含むマクロブロックが識別された後に行われるか（図３のブロック３２０において）に応じて、より高い信頼性レベルを、ＫＶＰとして評価される同じ２つのマイクロブロックに割り当てることができる。１つの実施形態において、ブロック２１２０及び２１３０における処理が、図６〜図８を参照してさらに説明される。
【００６０】
ブロック２１３０における割り当てられた信頼性レベルに基づいて、評価の対象となる１つ又は複数のＫＶＰを廃棄すること、又はタイトル（値を有しない有効なキー）として扱うことができる。１つの実施形態において、文書デジタル化エンジン１２０は、０〜７０％の間で発見的に設定される低いソフト・マッチング、及び１００％における高精度マッチングを適用する。ひとたび値が抽出されると、区切り記号の不存在又は再処置は、このランク付けの主要部分を形成する。
【００６１】
ブロック２１４０において、文書デジタル化エンジン１２０は、ユーザ編集のためにメタデータの形態で計算データを提供する。ブロック２１５０において、文書デジタル化エンジン１２０は、メタデータを、例えばプロセス・インターフェース１４９に出力する。ブロック２１４０及び２１５０における処理の態様は、図６乃至図８を参照してさらに説明される。
【００６２】
図６は、文書デジタル化エンジン１２０により識別されるマクロブロック１６０４Ｄを有する例示的文書イメージ１６００を示す。例えば、文書デジタル化エンジン１２０は、最初に、マイクロブロック１６０２Ａ〜１６０２Ｋを認識し、共線性ベースのブロック識別処理（図３のブロック３２０における）を適用して、マクロブロック１６０４Ｄがマイクロブロック１６０２Ａを含むマクロブロックであると判断することができる。別の実施形態において、マクロブロック１６０４Ｄは、例えば、テーブル分類器、単語密度分類器（テキスト密度が閾値を上回る領域をマクロブロックとして識別することができる）、アドレス分類器、段落分類器などの適用される分類器を用いて、マイクロブロック１６０２Ａ〜１６０２Ｋの事前認識なしにマクロブロックとして認識することができる。本明細書での実施形態は、オブジェクトのアラインメントが、「属すること」を、従って、例えばキー値ペアの存在を検索するのに有用な識別領域であるマクロブロックを示し得ることを認識する。文書デジタル化エンジン１２０は、直線の境界により各々の識別されたマイクロブロック及びマクロブロックを境界付けすることができる。図７は、第２のマイクロブロック機械論理境界付け規則の適用に従って代替的にセグメント化された文書イメージ１６００を示し、図９は、文書イメージ１６００の処理に基づいて、文書デジタル化エンジン１２０により出力されたメタデータにより提供される計算データを示す。
【００６３】
本明細書に記載されるように、文書デジタル化エンジン１２０は、文書の各マイクロブロックについて、各マイクロブロックについての調整可能な共線性パラメータを分析することにより、マクロブロックを識別することができる。ブロック３２０（図３）を参照して既述されるように、調整可能な共線性パラメータは、フォント、段落アラインメント、句読点、及びオントロジ・マッチングを含むことができる。図６を参照して、文書デジタル化エンジン１２０は、フォント・サイズの差にもかかわらず、アラインメント及びオントロジに基づいて、マイクロブロック１６０２Ｂ及び１６０２Ｃを含むものとしてマクロブロック１６０４Ａを識別することができる。図６を参照して、文書デジタル化エンジン１２０は、アラインメントに基づいて、マイクロブロック１６０２Ｄ及び１６０２Ｅを含むものとしてマクロブロック１６０４Ｂを識別することができる。図６を参照して、文書デジタル化エンジン１２０は、フォント・サイズの差にもかかわらず、アラインメント及びオントロジに基づいて、マイクロブロック１６０２Ｆ及び１６０２Ｇを含むものとしてマクロブロック１６０４Ｃを識別することができる。文書デジタル化エンジン１２０は、マイクロブロック１６０２Ａ、１６０２Ｂ、１６０２Ｄ、１６０２Ｆ、１６０２Ｈ及び１６０２Ｋの間の左側のアラインメントに基づいて、マイクロブロック１６０２Ａ、１６０２Ｂ、１６０２Ｄ、１６０２Ｆ、１６０２Ｈ及び１６０２Ｋを含むものとしてマクロブロック１６０４Ｄを識別することができ、従って、マクロブロック１６０２Ｋの右側の境界及びマクロブロック１６０４Ｄの直線構成に基づいて、マイクロブロック１６０２Ａ、１６０２Ｂ、１６０２Ｄ、１６０２Ｆ、１６０２Ｈ及び１６０２Ｋ、並びにマイクロブロック１６０２Ａ〜１６０２Ｋの残りのマイクロブロックを確立する。従って、マクロブロック１６０４Ｄの識別の完了時に、マクロブロック１６０４Ｄは、マイクロブロック１６０２Ａ〜１６０２Ｋを含むものと判断される。マイクロブロック１６０２Ａ〜１６０２Ｋからマクロブロック１６０４Ｄを判断するために、第１のマイクロブロック境界付け機械論理規則が適用され得る。例えば、第１マイクロブロック機械論理規則によると、マイクロブロックの境界付けのために、テキスト・セグメント間のダブル・スペースを無視することができる。従って、図６に示されるように、マイクロブロック１６０２Ｈ〜１６０２Ｊは、それぞれ単一のマイクロブロックとして識別される。
【００６４】
図６に示されるように定められたマクロブロック１６０４Ｄにおいて、文書デジタル化エンジン１２０は、マクロブロック１６０４Ｄ内のキー値ペアを識別することができる。識別されたマクロブロック１６０４Ｄにおけるキー値ペアの識別は、マクロブロック１６０４Ｄが各マイクロブロックについての調整可能な共線性パラメータを分析する分析によって識別された場合、マクロブロック１６０４Ｄの識別のために行われたキー値ペアの前の識別を補完することができる。１つの実施形態において、識別されたマクロブロック１６０４Ｄにおけるキー値ペアの識別は、初期キー値ペア識別である。
【００６５】
図６に示されるように定められたマクロブロック１６０４Ｄにおけるキー値ペアの識別のために、文書デジタル化エンジン１２０は、マクロブロック１６０４Ｄ内のマイクロブロックを識別する。１つの実施形態において、文書デジタル化エンジン１２０は、第１のマイクロブック境界付け規則（ダブル・スペースが無視され、マイクロブロック間の境界付けをもたらさない）を用いてキー値ペアを検索し、識別するために、図６に示されるようなマイクロブロック１６０２Ａ〜１６０２Ｋを使用することができる。
【００６６】
１つの実施形態において、図７を参照すると、文書デジタル化エンジン１２０は、マイクロブロックの識別のための種々のマイクロブック境界付け機械論理規則を適用することができ、１つの実施形態において、キー値ペア（ＫＶＰ）の検索を拡張するために、マクロブロック１６０４Ｄ内のマイクロブロックの識別のためのマイクロブロック機械論理境界付け規則を繰り返し変更することができる。
【００６７】
図７に示されるようなマイクロブロックの識別のために、文書デジタル化エンジン１２０は、マイクロブロックの境界付けのために、マイクロブロック間のダブル・スペースが観察される（無視されるのではなく）、つまり、２つのテキスト・セグメント間のダブル・スペースが単一のマイクロブロックではなく２つのマイクロブロックの識別をもたらす、第２の機械論理規則のマイクロブロック境界付け規則に基づいて、マイクロブロック１６０３Ａ〜１６０３Ｎを識別する。第２の機械論理規則は、付加的なマイクロブロックの識別、従って、キー値ペアの識別のための付加的なベースをもたらす。図７に記載されるように識別されたマクロブロック１６０４Ｄに関して、文書デジタル化エンジン１２０は、キー値ペアを識別するために、新しく識別されたマイクロブロック１６０３Ａ〜１６０３Ｎを用いることができる。マイクロブロック１６０３Ａ〜１６０３Ｎの１つのマイクロブロック内に位置する各キーについて、文書デジタル化エンジン１２０は、マイクロブロック１６０３Ａ〜１６０３Ｎの別のマイクロブロック内の対応する値を検索し、識別することができる。説明される例において、文書デジタル化エンジン１２０は、マイクロブロック１６０３Ａ〜１６０３Ｎのコンテンツに基づいて、キー値ペアを識別する。付加的なマイクロブロック１６０３Ｈ〜１６０３Ｍ（第１の機械論理マイクロブロック境界付け規則を用いて、３つのマイクロブロックが識別されるテキストにおいて識別された６つのマイクロブロック）の識別に関して、文書デジタル化エンジン１２０は、付加的な検索を行うことができるが、付加的な検索がマクロブロック１６０４Ｄの文書イメージ領域に限定されることに基づいて、付加的な検索は、経済的に使用され、低遅延のものである。
【００６８】
１つの実施形態において、より少ないマイクロブロック１６０２Ａ〜１６０２Ｋを識別する第１のマイクロブロック境界付け機械論理規則が、マクロブロック１６０４Ｄ及びキー値ペアの確立のために適用され、（ひとたび確立されると）マクロブロック１６０４Ｄ内の付加的な新しく定められたマイクロブロック１６０３Ｈ〜１６０３Ｍ（図７）を識別する第２のマイクロブロック境界付け機械論理規則が、キー値ペアの識別のために適用される。従って、１つの実施形態において、相対的に粗く定められたマイクロブロックを用いて識別されたオントロジ関係は、関心ある領域（マクロブロック）の識別をもたらすことができ、次に、関心ある領域にさらなる分析を行うことができる（さらなる分析は、ＫＶＰの抽出のために内部の相対的に細かく定められたマイクロブロックの識別を含むことができる）。
【００６９】
マイクロブロック１６０２Ａ〜１６０２Ｋ及びマイクロブロック１６０３Ａ〜１６０３Ｎを用いて識別されたキー値ペアに関して、文書デジタル化エンジン１２０は、１つの実施形態において、例えば、更に別の変更されたマイクロブロック境界付け機械論理規則を用いてマクロブロック１６０４Ｄ内の新しく定められたマイクロブロックを識別すること、及び新しく定められたマイクロブロックに基づいてマクロブロック１６０４Ｄ内の新しいキー値ペアを識別することにより、マクロブロック１６０４Ｄを用いて、引き続きキー値ペアを識別する。例えば１つの更に別の変更されたマイクロブロック境界付け規則によると、文書デジタル化エンジン１２０は、１つの実施形態において、マイクロブロック間を境界付けする要素として、シングル・スペースを無視するのではなく観察する。例えば１つの更に別の変更されたマイクロブロック境界付け規則によると、文書デジタル化エンジン１２０は、１つの実施形態において、マイクロブロック間を境界付けする句読要素として、ハイフン「−」を、無視するのではなく観察する。例えば１つの更に別の変更されたマイクロブロック境界付け規則によると、文書デジタル化エンジン１２０は、１つの実施形態において、マイクロブロック間を境界付けする要素として異なる線の提示を観察する。
【００７０】
マクロブロックの確立前及びマクロブロックの確立後の両方にキー値ペアを識別するためのプロセスの適用は、利点をもたらす。図８を参照して、文書イメージ１７００は、マイクロブロック１７０２Ａ、マイクロブロック１７０２Ｂ及びマイクロブロック１７０２Ｃを含むことができる。初期の処理中（例えば、図３のブロック３２０による）、マイクロブロック１７０２Ａとマイクロブロック１７０２Ｂとの間の調整された共線性パラメータの分析は、例えば閾値を下回る識別されたキー値ペアと関連付けられた信頼性レベルに基づいて、キー値ペアの出力をトリガし損なうことがある。初期処理の際、マイクロブロック１７０２Ｂとマイクロブロック１７０２Ｃとの間の調整された共線性パラメータの分析は、例えば閾値を下回る識別されたキー値ペアと関連付けられた信頼性レベルに基づいて、識別されたキー値ペアの出力をトリガし損なうことがある。しかしながら、初期処理の際、マイクロブロック１７０２Ａとマイクロブロック１７０２Ｃとの間の調整された共線性パラメータの分析は、例えば閾値を上回る識別されたキー値ペアと関連付けられた信頼性レベルに基づいて（例えば、意味データベース１３０のキー・オントロジ１３７を用いて判断されるようなアドレス・フィールドのコンテンツにオントロジ的にマッチするキー「Ａｄｄｒｅｓｓ」に基づいて）、識別されたキー値ペアの出力を成功裡にトリガすることができる。
【００７１】
キー値ペアを定めるマイクロブロック１７０２Ａ及びマイクロブロック１７０２Ｃのコンテンツに基づいて、マクロブロック１７０４Ａ（適用される機械論理により、直線の形状に制約され得る）は、マイクロブロック１７０２Ａとマイクロブロック１７０２Ｃとの間のオントロジ関係に基づいて、マイクロブロック１７０２Ｂがマクロブロック１７０４Ａ内に含まれるように確立することができる。説明される例において、マイクロブロック１７０２Ｂのコンテンツが、キー値ペアの識別のためにマイクロブロック１７０２Ａ（又は１７０２Ｃ）のコンテンツを、例えば（ａ）マクロブロック１７０４Ａの確立前に１回目、及び（ｂ）マイクロブロック１７０２Ａ、マイクロブロック１７０２Ｂ及びマイクロブロック１７０２Ｃを含むマクロブロック１７０４Ａ内に含まれるものとしてマイクロブロック１７０２Ｂを確立するマクロブロック１７０４Ａの確立後に２回目など、複数回検査されるように、文書デジタル化エンジン１２０を構成することができる。１つの実施形態において、文書デジタル化エンジン１２０は、対応するマイクロブロックが共通のマクロブロックのものであると判断された新しい情報（付加的に適用される重みをもたらす）に基づいて２回目の検査から得られた候補キー値ペアに、より高い（潜在的に閾値を超える）信頼性レベルを割り当てることができる。従って、アラインされていない第１及び第２のマイクロブロック（例えば、マイクロブロック１７０２Ａ及び１７０２Ｃ）のコンテンツ間のＫＶＰの識別は、第１及び第２のマイクロブロック、並びに潜在的に付加的なマイクロブロックを含むマクロブロックの確立に基づいた付加的なＫＶＰの出力に役立ち得る。
【００７２】
図６及び図７のマクロブロック１６０４Ｄの処理に基づいた、ユーザ編集のための例示的メタデータ１４０が、図９に示される。図９に示されるマクロブロック１６０４Ｄに基づいたユーザ編集のための例示的メタデータ１４０が、ユーザ・デバイス１１０のディスプレイ上に表示するためのユーザ・インターフェース内に提示され得る。図９におけるユーザ編集のためのメタデータは、管理者ユーザが、出力のためにキー値ペアを受諾すること又は拒否することを可能にする、信頼性レベルに関連付けられた各々の識別されたユーザ制御（Ｙ／Ｎ）の信頼性レベルのテキスト・ベースの表現を含む。
【００７３】
ユーザ・デバイス１１０を使用するユーザは、制御（Ｙ／Ｎ）を用いて示される各々の候補ＫＶＰを受諾すること又は拒否することができる。文書デジタル化エンジン１２０は、これに応じて、処理の対象である受け取った文書が意味データベース１３０内に対応する文書クラス１３１を有さない新しい文書であった場合でも、複数の訓練セットを必要とすることなく、出力メタデータを自動的に導く。本明細書での実施形態は、文書イメージを処理するための文書デジタル化エンジン１２０の能力が、本明細書で記載されるような訓練により改善すると予想することができるが、有用なメタデータは訓練に基礎を置くべきではないこと、そしてむしろ、文書がクラスの最初の文書である場合でも有用なメタデータを提供すべきであることを認識する。図９のメタデータ１４０に見られるように、ユーザは、制御（Ｙ／Ｎ）を用いるユーザ・インターフェースを用いて見つかったＫＶＰを受諾すること又は拒否することができる。図９に示されるメタデータに関連付けられたユーザ・インターフェース機能は、管理者ユーザが、抽出される百分率が小さいことを見出した場合、案内をクリックして文書表現に進み、文書デジタル化エンジン１２０により提供される信頼性レベルを用いてＫＶＰの判断に対する付加的な訂正を行う機能を含むことができる。
【００７４】
ブロック２１５０において、ユーザ編集のための与えられたメタデータ及びユーザの選択に基づいて、文書デジタル化エンジン１２０は、例えば図９に示される（全ての識別されたＫＶＰが受諾された）、ユーザに提示されユーザ選択に基づいて廃棄された幾らかのメタデータを潜在的に有する、メタデータ１４０を出力することができる。文書デジタル化エンジン１２０は、意味データベース１３０内に信頼できる訓練された文書クラス１３１を有する場合に可能性が高い、全ての信頼性レベルが閾値を上回ることに基づいて、メタデータを例えばプロセス・インターフェース１４９に出力することに直接進むように構成することができることが理解されるであろう。
【００７５】
図９に示されるメタデータ１４０を提供するために、文書デジタル化エンジン１２０は、識別されたマクロブロック（例えば、２つ又はそれより多いマイクロブロックを含む）、識別されたマイクロブロック、及び識別されたＫＶＰに基づいて、タクソミを逆行分析（reverse engineering）する。図９に示されるメタデータへのＫＶＰの編成は、マクロブロックからマイクロブロックへの関係の逆行分析である。文書イメージ１８１の単一のページが、ゼロからＭ個のマクロブロックを含むことができ、各マクロブロックは、ゼロからＮ個のマイクロブロックを含むことができ、各マクロブロックからの候補ＫＶＰは、共に階層構造にまとめられると考える。従って、説明される例において、文書デジタル化エンジン１２０は、文書ページについてゼロからＭ個のマクロブロックを識別することができ、図９に示されるような代表的なメタデータ１４０に対して、タイトル「Ｐａｙｍｅｎｔ  Ｄｅｔａｉｌｓ（支払の詳細）」のような、各マイクロブロックについてのタイトルのような見出しを割り当てることができる。
【００７６】
図９の出力メタデータ１４０を参照して、文書デジタル化エンジン１２０は、文書イメージ１８１のオブジェクト間の階層関係を示すタクソノミを指定するように編成されたメタデータを出力することができる。例えば、図９に示されるような出力メタデータにおいて、出力メタデータは、ある形態で提示することができ、そこでは、抽出された個々のＫＶＰは、それらを発見したマクロブロックについての指示子に関連付けられる。見出し「Ｐａｙｍｅｎｔ  Ｄｅｔａｉｌｓ」の下に、図９に示されるタクソノミは、種々のＫＶＰのインジケータを含むことができる。図９の例に示されるように、文書デジタル化エンジン１２０は、関連付けられたマクロブロック１６０４Ｄの指示子タイトル（タイトル「Ｐａｙｍｅｎｔ  Ｄｅｔａｉｌｓ」）の下に小見出しが付けられたＫＶＰを提示することができる。
【００７７】
図９の例に示されるように、文書イメージ１６００（図６及び図７）のコンテンツに基づいて、メタデータ１４０のＫＶＰを順番に提示することができる。しかしながら、別の実施形態によると、文書デジタル化エンジン１２０は、文書イメージ１６００のオブジェクトの順番によって決定されない順序に従ってＫＶＰを提示することができる。例えば、文書デジタル化エンジン１２０は、例えば、ＫＶＰに関連付けられた信頼性レベルに基づいた順序に従って、関連付けられたマイクロブロック指示子の下に編成されたＫＶＰを提示することができる。１つの実施形態において、文書デジタル化エンジン１２０は、例えばトピック分類階層に従った、ＫＶＰのトピック分類に基づいた順序に従って、例えば関連付けられたマイクロブロック指示子の下に編成されたＫＶＰを提示することができる。文書デジタル化エンジン１２０は、自然言語処理（ＮＬＰ）トピック分類、又は（外部ツール１７０の）ＮＬＰ理解処理を用いて、出力メタデータにより指定されるタクソノミの属性を判断することができる。例えば、幾つかの使用事例において、例えば、トピック・ベースのＮＬＰ処理を行うとき、いずれの分類も返さなかったＫＶＰよりも、トピック「人口統計学データ」に従って分類されたＫＶＰを優先することは有用であり得る。代替的に、ＫＶＰの発見のための方法に基づいた順序で、ＫＶＰを提示することもできる。１つの実施形態において、第１のマイクロブロック境界付け機械論理規則（より少ないマイクロブロックが識別される）を用いて識別されたマイクロブロックを用いて見出されたＫＶＰを、第２のマイクロブロック境界付け機械論理規則（より多くのマイクロブロックが識別される）を用いて識別されたマイクロブロックを用いて見出されたＫＶＰよりも前に提示することができる。１つの実施形態において、ブロック３２０（図３）における処理を介して見出されたＫＶＰを、ブロック２１２０（図５）における処理を介して見出されたＫＶＰよりも前に提示することができる。１つの実施形態において、値に関連付けられたキーを推論するような方法で見出されたＫＶＰを、ＫＶＰが意味データベース１３０の文書クラス１３１に従って明示的に定められたＫＶＰより下に提示することができる。文書イメージ１８１のオブジェクト間の階層関係を示すタクソノミを指定するように編成された出力メタデータは、多数の利点、例えば下流プロセスによる処理の容易さを提供し、そのことにより、メタデータの処理のための規則ベースの機械論理にあまり依存しなくなる。
【００７８】
文書デジタル化エンジン１２０は、自然言語処理（ＮＬＰ）トピック分類、又は（外部ツール１７０の）ＮＬＰ理解処理を利用して、識別された候補キーに対応する識別されたマイクロブロックの値を求めることができる。例えば、マイクロブロックのテキストにＮＬＰトピック分類を行うことが、トピックを戻す場合、又はキー若しくはキーのエイリアスにマッチすると理解する場合、キー・ペア識別を提供することができる。第１のマイクロブロックにＮＬＰトピック分類を行うことにより返されるトピックが、第２のマイクロブロックにＮＬＰトピック分類を行うことにより返されるトピックとマッチする場合も、キー値ペア識別を提供することができる。マイクロブロックのテキストにＮＬＰトピック分類を行うことがトピックの多様性をもたらす場合、文書デジタル化エンジン１２０は、一般的な「コメント」キーをマイクロブロックに適用することができる。
【００７９】
図９のメタデータを参照して、出力メタデータは、一貫した構造又は形式なしに潜在的（latent）ＫＶＰのメタデータを含むことができる。本明細書での実施形態は、潜在的ＫＶＰ、例えば、句読区切り文字（コロン「：」のような）を有さないＫＶＰの抽出を提供し、ＫＶＰは、公式のタクソノミに正しく推論されるキーを有する値をもつ。本明細書での実施形態は、候補キー及び値を識別するための、意味データベース１３０のオントロジ・データに関連したマクロブロック及びマイクロブロック処理を提供する。
【００８０】
本明細書での実施形態は、非構造化文書を含む文書を処理し、例えばＪＳＯＮ又はＸＭＬのような構造化形式で計算データを顧客に提示する。本明細書での実施形態は、テキストを、消費できる方法で抽出し、スタイル情報を保持しようと努める。本明細書での実施形態は、単にスタイル情報（例えば、フォント・サイズ）を指定するだけではなく、文書イメージのより大きい比率（share）に対する文書イメージの領域におけるフォントの高さ（サイズ）などの相対スタイル情報を提供する。相対スタイル情報は、本明細書で記載される相対スタイル・パラメータ値によって提供することができる。テキストは、ボールド体であってもよく、又はフォント高さ（サイズ）又はスタイルの変形を有してもよい。人間の読み手にとっては、適切に行われる場合、これらのスタイルの変更は、ヘッダ、又は構文若しくは意味コンテンツ内に含まれない他の何らかの形態の情報を伝えるイタリック体又はより大きいフォントを用いる僅かな比較から、強調の範囲を伝えることができる。本明細書での実施形態は、スタイルは極めて重要であるが、保持するのが困難な要素であることを認識する。本明細書での実施形態は、人間のコグニティブなパターン分類をエミュレートするように、メタデータ内に相対スタイル情報を提供するように記載し、ここで、パターンは、絶対的ではなく相対的に分類される傾向がある。機械可読計算メタデータとして与えられる相対スタイル情報により、相対スタイル情報は、様々なプロセスを容易にする。
【００８１】
本明細書での実施形態は、より新しいバージョンのＰＤＦ文書が何らかのスタイル情報を保持できるバッキングＸＭＬ構造を含むが、利用可能なスタイル情報は限定されることを認識する。例えば、ＰＤＦ文書を処理するための利用可能な技術によると、各オブジェクトは、それぞれのフォント、フォント・サイズ、及び色空間を有するものとして分類することができる。本明細書での実施形態は、組織が膨大な数のＰＤＦ文書を有し、多くはバッキング・メタデータを有さないことを認識する。
【００８２】
本明細書での実施形態は、文書イメージからスタイル情報を抽出し、該文書イメージから「相対スタイル情報」を提供する。
【００８３】
１つの実施形態において、文書デジタル化エンジン１２０は、テキストを有する文書イメージを処理するように構成されるので、フォント・タイプ及びサイズ、並びにフォントの色に加えて情報が与えられる。従って、ヘルベチカ（Helvetica）２４ポイントのテキストのセグメントに対して、文書デジタル化エンジン１２０は、２４ポイントのヘルベチカの出力を提供することができる。さらに、文書デジタル化エンジン１２０は、相対スタイル情報を抽出し、出力することができる。相対スタイル情報は、例えば、テキスト・セグメントがその近隣より１０％大きい、又は５０％大きい、又は２０％小さいフォント（文字）高さ（サイズ）を有するデータを含むことができる。文書デジタル化エンジン１２０は、フォントに関する付加的な又は代替的な特徴情報を提供することができ、例えば、フォントを「ビジネス・フォント」又は「レクリエーション・フォント」のような分類に分類することができる。
【００８４】
文書デジタル化エンジン１２０を、相対スタイル情報を含むメタデータを出力するように構成することは、例えば、出力メタデータがフォーム再生成器（form regenerator）又は別のプロセス・インターフェースに出力される場合、テキスト変換を向上させる。文書デジタル化エンジン１２０は、テキストを非構造化文書から、例えばＰＣ環境若しくはモバイル・デバイスなどの電子デバイス上で表示するための形式に変換する際に使用するように構成することができる。１つの実施形態において、文書デジタル化エンジン１２０は、処理文書が、処理文書の相対スタイルに対応する相対スタイル情報を有することに基づいて、カスケーディング・スタイル・シート（ＣＳＳ）などのスタイルシートにおいて初期設定されたメタデータを出力することができる。ソース・ターゲット間の１行ごとの変換を実行することに加えて又はその代わりに、スタイル情報が同一の方法で指定される場合、文書デジタル化エンジン１２０は、相対スタイル情報を有するＣＳＳを出力することができる。
【００８５】
１つの実施形態において、相対スタイル情報を有するＣＳＳを出力するように文書を処理するために、文書デジタル化エンジン１２０は、より大きい領域、例えば文書全体の分析を行うことができる。より大きい領域の文書分析を行うことにより、文書デジタル化エンジン１２０は、文書についてのベースライン・フォント高さ（サイズ）パラメータ及び／又はベースライン空白サイズ・パラメータなどのベースライン・スタイル・パラメータ値（又はベースライン・スタイル・パラメータ値のセット）を求めることができ、求められた１つ又は複数のベースライン・スタイル・パラメータ値に基づいて、文書デジタル化エンジン１２０は、これらのスタイルを継承及び変更するようにスタイルシートをプロビジョニングすることができる。オリジナルのコンテンツがその近隣より１０％大きいセクション（例えば、テキストの１つの行内の単語）を有していた場合、相対スタイル・パラメータ値を提供するこの相対高さ情報をＣＳＳで表すことができる。例えば、スタイル・ブロックにおける「フォント高さ：８０％」の使用により、親要素のフォント高さ（サイズ）を指す、２０％小さいスタイルがもたらされる。
【００８６】
説明される処理は、概念ごとの変換を提供する。ソースからターゲットへの変換を実行することが意図されるかどうかに関係なく、相対スタイル情報の抽出は、スタイル情報内に存在する非意味的及び非構文的強調を、あらゆる下流プロセスのために保持することを可能にする。
【００８７】
相対スタイル・パラメータ値を定める相対フォント高さデータを提供するために、文書デジタル化エンジン１２０は、最初に、単語より大きい文書の領域、例えば文書の全ページにおける文書についてのベースライン・フォント高さにより与えられるベースライン・スタイル・パラメータ値を求めることができる。フォント高さベースライン・スタイル・パラメータを求めるために、文書デジタル化エンジン１２０は、文書全体にわたる単語のフォント高さのヒストグラムを構築することができ、ベースライン・スタイル・パラメータ値は、ヒストグラムの中央散布度、例えばフォント高さ値の平均値又は中央値に基づいて求めることができる。テキストの行ごとに、文書デジタル化エンジン１２０は、例えば関連するベースライン・スタイル・パラメータ値の百分率として、各単語についての相対フォント高さ相対スタイル・パラメータ値を割り当てることができる。幾つかの実施形態において、ベースライン・スタイル・パラメータ値は、マクロブロック特有のデータ（全ページ・データではなく）又はマクロブロックとグルーバル・ページ・データの組み合わせに基づいて求めることができる。幾つかの実施形態においては、フォント高さベースライン・スタイル・パラメータ値を求めるために、Ｋ平均法（K-means）クラスタリング分析を実行することができる。
【００８８】
出力メタデータ１４０の一部として与えられる相対スタイル情報は、文書の空白（テキスト又は他のオブジェクトがない領域）に関する相対スタイル情報を含むことができる。相対スタイル・パラメータ値を定めるオブジェクトについての空白相対スタイル情報を提供するために、文書デジタル化エンジン１２０は、最初に、行のセグメントより大きい文書の領域における、例えば文書の全ページにおける、文書についての空白ベースライン・スタイル・パラメータ値を求めることができる。空白ベースライン・スタイル・パラメータ値を求めるために、文書デジタル化エンジン１２０は、文書全体にわたって空白サイズのヒストグラムを構築することができ、ベースライン・スタイル・パラメータ値についてのベースライン値は、ヒストグラムの中央散布度、例えば、空白サイズの平均値又は中央値に基づいて求めることができる。テキスト行ごとに、文書デジタル化エンジン１２０は、空白ベースライン・スタイル・パラメータ値の百分率として表される行の各空白についての空白相対スタイル・パラメータ値を割り当てることができる。従って、ダブル・スペースの空白は、標準文書について１０１（ベースラインの１０１％）の値、高密度のテキストを有する文書の場合は１５０％の値、又は非常に疎らなテキストを有する文書の場合は５０％の値に匹敵し得る。幾つかの実施形態において、ベースライン・スタイル・パラメータ値は、マクロブロック特有のデータ、又はマクロブロック・データとグローバル・ページ・データの組み合わせに基づいて求めることができる。幾つかの実施形態においては、空白ベースライン・スタイル・パラメータ値を求めるために、Ｋ平均法クラスタリング分析を実行することができる。
【００８９】
「ビジネス・フォント」又は「レクリエーション・フォント」の分類を提供するために、文書デジタル化エンジン１２０は、それぞれ「ビジネス・フォント」又は「レクリエーション・フォント」分類を有するフォントを相互参照する参照テーブルを検査することができる。バスカービル（Baskerville）又はタイムズ・ニュー・ローマン（Times New Roman）のようなフォントを「ビジネス・フォント」として分類し、一方、エイリアル（Arial）のようなフォントをリクリエーション・フォントとして分類することができる。
【００９０】
相対スタイル情報を提供することにより、文書デジタル化エンジン１２０により出力された受け取ったメタデータに基づいた機能を有する下流プロセスの機能を高めることができる。例えば、相対スタイル・パラメータ値を定めるために、相対フォント高さ（サイズ）、空白又はフォント・タイプ分類を有する出力メタデータに基づいて、フォーム再生成器の開発を自動化又は簡略化することができる。例えば、フォーム再生成器機械論理において、大きいフォント高さへの突然の変更を示す相対フォント高さデータを検査して、フォント高さの再生成を必要とする特別な強調ではなく、一般的な強調を表すように決定することができる。例えば、フォーム再生成器の出力において、フォント高さの突然の増大を代わりに表現することができ、又は強調を示す、例えば黒色から赤色などの色の変化により表現することもできる。フォーム再生成器が特定のサイズのディスプレイ上での表示に適合するようにコンテンツを移動する場合、空白ベースライン・スタイル・パラメータ値の文脈における空白相対スタイル情報（例えば、空白相対スタイル・パラメータ値）を検査して、調整により、変更により与えられる影響全体における容認できない変更がもたらされないことを検証することができる。フォント・タイプ分類（「ビジネス」及び「レクリエーション」）の提供により、例えば、外部リソースから欠落しているフォントにアクセスする必要性が回避される。相対スタイル情報は、出力メタデータの処理のための機械論理の複雑さを低減させる。
【００９１】
図１０は、本明細書で記載される１つ又は複数の実施形態による、文書イメージ１８１に対応する例示的文書メタデータ１４０を示す。
【００９２】
文書デジタル化エンジン１２０は、文書イメージ１８１を処理し、文書メタデータ１４０を生成する。本発明の特定の実施形態において、文書デジタル化エンジン１２０は、図１０の例示的文書メタデータ１４０に示されるような、ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）形式で文書メタデータ１４０を生成する。文書イメージ１８１は、１つ又は複数の行を含む１つ又は複数のブロックとして階層的に編成される。各行は、１又は複数の単語を有する。各ブロック、行及び単語は、文書イメージ１８１内のそれぞれのオブジェクトとみなすことができ、その特性は、それぞれ文書メタデータ１４０内に記述される。
【００９３】
行Ｌ４０１は、リストが「ＢｌｏｃｋＬｉｓｔ」で表されるブロックを記述することを示す。行Ｌ４０２及びＬ４０３は、ブロックの始点の（ｘ，ｙ）座標を表す。行Ｌ４０４は、注釈がブロックに付けられていないことを示す。行Ｌ４０５は、ブロックが特定の幅のものであることを示す。行Ｌ４０６は、ブロックが「ＬｉｎｅＬｉｓｔ」で表される行を有することを示す。
【００９４】
行Ｌ４０７は、行「ＬｉｎｅＬｉｓｔ」が「ＷｏｒｄＬｉｓｔ」で表される単語を有することを示す。行Ｌ４０８は、単語が値「ＸＹＺ  Ｉｎｃ．」を有することを示し、行Ｌ４０９及びＬ４１０は、それぞれ単語の高さ及び密度を示す。高さは、２０４の値を有するように指定され、単語の高さが、２０４％のベースライン・スタイル・パラメータ値であることを示す。行の付加的な単語を、異なる高さを有する範囲まで付加的な百分率値で表現することができる。図６及び図７の説明に役立つ実例において、値２０４又は２０４％は、単語「ＡＮＺ」、「ＢＡＮＫ」及び「Ｗｉｎｎｅｌｌｉｅ」に対して、及び値９９（９９パーセント）は、単語「ｂａｎｋ」に対して与えることができる。行Ｌ４１１及びＬ４１２は、単語の始点の（ｘ，ｙ）座標を表す。行Ｌ４１３は、特定のカスタム・フォント・サイズ・グループにおけるような、フォント高さ（サイズ）データのさらなる特徴付けのための単語のフォント高さ（サイズ）を示す。行Ｌ４１４は、単語が「ｗｏｒｄ＿０」名により識別されることを示す。行Ｌ４１５は、単語が８文字を有することを示し、行Ｌ４１６は、単語が特定の幅のものであることを示す。測定は、ピクセル単位とすること、又は他のいずれかのカスタム単位に従うことができる。
【００９５】
行Ｌ４１７乃至Ｌ４２１は、Ｌ４０６に導入される行「ＬｉｎｅＬｉｓｔ」を完結する。行の幅はＬ４１７に、行の始点の（ｘ，ｙ）座標はＬ４１８及びＬ４１９に、行の高さは行Ｌ４２０に、そして、行を識別するための名称「ｌｉｎｅ＿０」は行Ｌ４２１に示される。
【００９６】
オブジェクトの文脈は、各オブジェクトが特定のリスト内にどのように一緒に現れるかにより表される。オブジェクトの相対位置及びサイズは、高さ及び幅などの種々の座標及び寸法要素に基づいて求めることができる。文書メタデータ１４０は、特定的には、候補キーが既知のキーのエイリアスである尤度に関する信頼性スコアを評価するために、意味正規化エンジン１６０への入力として使用される。
【００９７】
行Ｌ５１１乃至Ｌ５２１は、例示的ＫＶＰメタデータを示す。Ｌ５１２は、候補キーが「ｂｌｏｃｋ＿１６」の名称により特定されるブロックのメンバーであることを示す。「ｂｌｏｃｋ＿１６」は、文脈、位置及びスタイルに関して文書メタデータ内に指定することができる。行Ｌ５１３は、候補キーの値が「５７３０９３４８６」であることを示す。行Ｌ５１４及びＬ５１５は、Ｌ５１３の値の始点の（ｘ，ｙ）座標を示す。行Ｌ５１６及びＬ５１７は、候補キーの始点の（ｘ，ｙ）座標を示す。行Ｌ５１８は、候補キーがテキスト「Ａｃｃｎｔ  Ｎｏ」を有することを示す。行Ｌ５１９は、キー・クラス「ｃｕｓｔｏｍｅｒＡｃｃｏｕｎｔＮｕｍｂｅｒ」が、文書メタデータ内に表される文脈、相対位置及びスタイル、テキスト順序付け、意味マッチング、ベクトル空間モデル化及びテキスト分類に基づいて、候補キー「Ａｃｃｎｔ  Ｎｏ」に対応するキー・クラスである可能性が８２．３５％であると、文書デジタル化エンジン１２０が判断することを示す。出力メタデータ１４０は、図９及び図１０に関連して記載されるような、組織並びにオブジェクトの間の階層を示すタクソノミを指定することができる。
【００９８】
文書デジタル化エンジン１２０は、メタデータを複数のプロセス・インターフェースに出力することができる。例えば、出力メタデータを用いて、（ａ）文書デジタル化エンジン１２０のプロセスに自動的に適合させること、（ｂ）情報管理を促進すること、（ｃ）チャット・ボックスを促進すること、及び／又は（ｄ）フォーム生成を増強することが可能である。
【００９９】
（ａ）に関して、文書デジタル化エンジン１２０は、例えば本明細書で記載される出力メタデータの相対スタイル情報を用いて、出力メタデータに基づいて文書デジタル化エンジン１２０により実行される１つ又は複数のプロセスに適合させることができる。１つの実施において、文書デジタル化エンジン１２０は、空白ベースライン・スタイル・パラメータ値及び／又は空白相対スタイル・パラメータ値（例えば、１つの実施形態に従ってテキスト行ごとに決定され得るような）に基づいて、マイクロブロック境界付け機械論理規則を自動的に調整することができる。例えば、大きい空白を有する比較的低密度のページの場合、より包含的ではなく、特定の領域にわたってより少ないマイクロブロックを識別するマイクロブロック境界付け規則（例えば、５スペースの空白でトリガされる境界付け）を選択的にイネーブルにし、アクティブにすることができる。より小さいホワイト・スペースを有する高密度のページの場合、より包括的で、特定の領域にわたってより多くのマクロブロックを識別するマイクロブロック境界付け規則を選択にイネーブルにし、アクティブにすることができ、例えば、マイクロブロック境界付けは、２スペース（ダブル・スペース）の空白でトリガされる。
【０１００】
さらに（ａ）に関して、文書デジタル化エンジン１２０は、例えば、図９及び図１０に示されるような出力メタデータを用いて、意味データベース１３０を更新することができる。例えば、図９及び図１０のメタデータを参照して、文書デジタル化エンジン１２０は、例えばＮＬＰ処理を介して、文書イメージ１６００の「Ａｃｃｏｕｎｔ  Ｎａｍｅ」が、キー「ａｃｃｏｕｎｔ  ｎｕｍｂｅｒ」に対する予想されるエイリアスであることを認識することができる。意味データベース１３０を更新するためのメタデータの出力により、「ａｃｃｏｕｎｔ  ｎｕｍｂｅｒ」に対する公式のエイリアスとして「ａｃｃｏｕｎｔ  ｎａｍｅ」を含むように、キー・オントロジ・データ１３７を更新することができる。
【０１０１】
（ｂ）に関して、文書デジタル化エンジン１２０は、情報管理サービスを促進するように、メタデータ１４０を出力することができる。図９及び図１０に示されるようなメタデータ１４０を検索エンジンに入力することは、インデックス・フィールドが高精度で識別されることを意味する。「ＢＳＢ  ０１５８９６  Ａｃｃｏｕｎｔ  ２８５６−９８７３９  Ｓｗｉｆｔ  Ｃｏｄｅ  ＡＮＺＢＡＵ３Ｍ」を単一の値（他の何らかのインデックスと関連付けられた）として扱うのではなく、検索エンジンは、これをインデックス＝ＢＳＢ、値＝０１５８９６、データ・タイプ＝整数、インデックス＝Ａｃｃｏｕｎｔ  Ｎｕｍｂｅｒ、値＝２８５６９８７３９、データ・タイプ＝整数、等として扱うことができる。１つの実施形態において、文書デジタル化エンジン１２０は、検索される検索エンジンの実行のための検索エンジン・インターフェースとして提供することができる。検索エンジン・インターフェースとして構成される文書デジタル化エンジン１２０は、ＰＤＦ文書により提供できるような非構造化文書により与えられる検索エンジン要求を受け取ることができる。文書デジタル化エンジン１２０は、こうした文書の処理の結果得られるメタデータを検索エンジンに出力し、有用な検索結果を返すことができる。
【０１０２】
（ｃ）に関し、文書デジタル化エンジン１２０は、チャット・インターフェースとして提供することができ、チャット環境において提示される質問に応答するために、文書イメージ１６００に対応する文書のような非構造化文書にアクセスするように構成することができる。「Ｗｈａｔ  ｉｓ  ｔｈｅ  ＢＳＢ  ｆｏｒ  ＡＮＺ  Ｂａｎｋ  Ｗｉｎｎｅｌｌｉｅ？（ＡＮＺ  Ｂａｎｋ  Ｗｉｎｎｅｌｌｉｅに対するＢＳＢは何か？）」という質問に応答するために、文書デジタル化エンジン１２０は、文書イメージ１６００に対応する文書にアクセスしてこれを処理し、ノイズのない高精度を用いてフルスパンの意味エンティティを認識することができる。文書デジタル化エンジン１２０による処理に基づいて、質問は、「Ｗｈａｔ  ｉｓ  ｔｈｅ  ＜ｋｅｙ＞  ｆｏｒ  ＜ｖａｌｕｅ＞？（＜値＞に対する＜キー＞は何か？）」又は「Ｗｈａｔ  ｉｓ  ｔｈｅ  ＜ｖａｌｕｅ＞  ｆｏｒ  ＜ｋｅｙ＞？（＜キー＞に対する＜値＞は何か？）」のうちの１つとなり、基本クエリ代数により、「Ｗｈａｔ  ｉｓ  ｔｈｅ  ＜ｋｅｙ：ＢＳＢ＞  ｆｏｒ  ＜ｖａｌｕｅ：ＡＮＺ  Ｂａｎｋ  Ｗｉｎｎｅｌｌｉｅ＞？（＜値：ＡＮＺ  Ｂａｎｋ  Ｗｉｎｎｅｌｌｉｅ＞に対する＜キー：ＢＳＢ＞は何か？）」となり、答えは＜０１５８９６＞である。
【０１０３】
（ｄ）に関して、文書デジタル化エンジン１２０をフォーム再生成ツールとして用いることができる。文書デジタル化エンジン１２０は、メタデータを、文書イメージ１８１に対応する文書の情報を再生成するフォーム再生成器に出力することができる。メタデータ１４０を受け取るフォーム再生成器は、このデータを再生成して、モバイル若しくはウェブ若しくは他の何らかの有用性パラダイムに適したフォームにすることができる。例えば、フォーム再生成器の開発は、フォント高さ（サイズ）、空白、又はフォント・タイプ分類を指定する相対スタイル・パラメータなどの相対スタイル・パラメータを有する出力メタデータに基づいて、自動化又は簡略化することができる。例えば、機械論理を適用する構成されたフォーム再生成器は、相対スタイル情報の相対フォント高さの検査を実行することができ、検査に基づいて、小さい高さのフォントから大きい高さのフォントへの突然の変更が、フォント高さの再生成を必要とする特定の強調ではなく、一般的な強調を表すことを判断することができる。例えば、フォーム再生成器により与えられる出力において、フォント高さの突然の変更を、代わりに又はさらに、例えば、黒色から強調を示す赤色への色の変更により表現することができる。フォーム再生成器が、特定のサイズのディスプレイ上への表示に適合するようにコンテンツを移動する場合、空白ベースライン・スタイル・パラメータ値の文脈における空白相対スタイル情報を検査して、調整が、変更によりもたらされるグラフィカルな影響全体における容認できない変更をもたらさないことを検証することができる。フォント・タイプ分類（「ビジネス」及び「レクリエーション」）の提供は、例えば、外部リソースから欠落しているフォントにアクセスする必要性を回避する。相対スタイル情報は、出力メタデータの処理のための機械論理の複雑さを低減させる。
【０１０４】
本明細書での特定の実施形態は、コンピュータ・ネットワークの領域において生じる問題を処理するための計算利点を含む種々の技術的な計算利点を提供することができる。デジタル文書は、文書内に表らされるデータを計算的に用いる際の便宜のために好ましいことが多い。紙にペンで書かれた文書を走査して取り込むと、文書は、ページの一連の視覚イメージとなるものの、デジタル・データとして計算的に使用する準備はできていない。従って、文書イメージから計算データを正確に抽出するために、多くの文書デジタル化アプリケーションが開発されてきた。既存の文書処理アプリケーションにおいては、文書の視覚イメージを処理し、文書から計算データを抽出する際、文書のカスタム形式及び構成が非常に多いことにより問題が提示される。本明細書での実施形態は、文書内の視覚マークが伝える意味を人間の読み手が理解するとき、文書イメージのコグニティブなデジタル化プロセスを実施し、文書イメージからのデータ抽出の効率及び精度を向上させる。本明細書での実施形態は、非構造化文書により提供され得る文書の処理により導出されるメタデータを用いて、プロセスの制御を提供する。本明細書での実施形態は、オブジェクトのアラインメント又はオブジェクト間の意味関係のみに依存せず、アライメント・ベースの処理及び意味ベースの処理の組み合わせを用いる方法によって、文書からメタデータを抽出する。
【０１０５】
図１１〜図１３は、本明細書に記載される１つ又は複数の態様による、コンピュータ・システム及びクラウド・コンピューティングを含むコンピューティングの種々の態様を示す。
【０１０６】
本開示はクラウド・コンピューティングについての詳細な説明を含むが、本明細書に記載される教示の実装は、クラウド・コンピューティング環境に限定されないことを予め理解されたい。むしろ、本明細書での実施形態は、現在既知の又は後で開発される他のいずれかのタイプのコンピューティング環境と共に実施することができる。
【０１０７】
クラウド・コンピューティングは、最小限の管理労力又はサービス・プロバイダとの対話で迅速にプロビジョニング及び解放することができる構成可能なコンピューティング・リソース（例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス）の共有プールへの、便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも５つの特徴、少なくとも３つのサービス・モデル、及び少なくとも４つのデプロイメント・モデルを含むことができる。
【０１０８】
特徴は、以下の通りである。
【０１０９】
オンデマンド・セルフサービス：クラウド・コンシューマは、必要に応じて、サーバ時間及びネットワーク・ストレージ等のコンピューティング機能を、人間がサービスのプロバイダと対話する必要なく自動的に、一方的にプロビジョニングすることができる。
【０１１０】
広範なネットワーク・アクセス：機能は、ネットワーク上で利用可能であり、異種のシン又はシック・クライアント・プラットフォーム（例えば、携帯電話、ラップトップ、及びＰＤＡ）による使用を促進する標準的な機構を通じてアクセスされる。
【０１１１】
リソース・プール化：プロバイダのコンピューティング・リソースは、マルチ・テナント・モデルを用いて、異なる物理及び仮想リソースを要求に応じて動的に割り当て及び再割り当てすることにより、複数のコンシューマにサービスを提供するためにプールされる。コンシューマは、一般に、提供されるリソースの正確な位置についての制御又は知識を持たないという点で、位置とは独立しているといえるが、より抽象化レベルの高い位置（例えば、国、州、又はデータセンタ）を特定できる場合がある。
【０１１２】
迅速な弾力性：機能は、迅速かつ弾力的に、場合によっては自動的に、プロビジョニングして素早くスケール・アウトし、迅速にリリースして素早くスケール・インさせることができる。コンシューマにとって、プロビジョニングに利用可能なこれらの機能は、多くの場合、無制限であり、いつでもどんな量でも購入できるように見える。
【０１１３】
計測されるサービス：クラウド・システムは、サービスのタイプ（例えば、ストレージ、処理、帯域幅、及びアクティブなユーザ・アカウント）に適した何らかの抽象化レベルでの計量機能を用いることによって、リソースの使用を自動的に制御及び最適化する。リソース使用を監視し、制御し、報告し、利用されるサービスのプロバイダとコンシューマの両方に対して透明性をもたらすことができる。
【０１１４】
サービス・モデルは以下の通りである。
【０１１５】
Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＳａａＳ）：クラウド・インフラストラクチャ上で動作しているプロバイダのアプリケーションを使用するために、コンシューマに提供される機能である。これらのアプリケーションは、ウェブ・ブラウザ（例えば、ウェブ・ベースの電子メール）などのシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。コンシューマは、限定されたユーザ固有のアプリケーション構成設定の考え得る例外として、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーション機能をも含めて、基礎をなすクラウド・インフラストラクチャを管理又は制御しない。
【０１１６】
Ｐｌａｔｆｏｒｍ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＰａａＳ）：プロバイダによってサポートされるプログラミング言語及びツールを用いて生成された、コンシューマが生成した又は取得したアプリケーションを、クラウド・インフラストラクチャ上にデプロイするために、コンシューマに提供される機能である。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージなどの基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、配備されたアプリケーション、及び場合によってはアプリケーション・ホスティング環境構成に対して制御を有する。
【０１１７】
Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＩａａＳ）：コンシューマが、オペレーティング・システム及びアプリケーションを含み得る任意のソフトウェアを配備及び動作させることができる、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティング・リソースをプロビジョニンングするために、コンシューマに提供される機能である。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、オペレーティング・システム、ストレージ、配備されたアプリケーションに対する制御、及び場合によってはネットワーク・コンポーネント（例えば、ホストのファイアウォール）選択の限定された制御を有する。
【０１１８】
デプロイメント・モデルは以下の通りである。
【０１１９】
プライベート・クラウド：クラウド・インフラストラクチャは、ある組織のためだけに運営される。このクラウド・インフラストラクチャは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
【０１２０】
コミュニティ・クラウド：クラウド・インフラストラクチャは、幾つかの組織によって共有され、共通の関心事項（例えば、任務、セキュリティ要件、ポリシー、及びコンプライアンス上の考慮事項）を有する特定のコミュニティをサポートする。クラウド・インフラストラクチャは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
【０１２１】
パブリック・クラウド：クラウド・インフラストラクチャは、一般公衆又は大規模な業界グループに利用可能であり、クラウド・サービスを販売する組織によって所有される。
【０１２２】
ハイブリッド・クラウド：クラウド・インフラストラクチャは、固有のエンティティのままであるが、データ及びアプリケーションの移行性を可能にする標準化された又は専用の技術（例えば、クラウド間の負荷分散のためのクラウド・バースティング）によって結び付けられる２つ以上のクラウド（プライベート、コミュニティ、又はパブリック）の混成物である。
【０１２３】
クラウド・コンピューティング環境は、ステートレス性、低結合性、モジュール性、及びセマンティック相互運用性に焦点を置くことを指向するサービスである。クラウド・コンピューティングの中心は、相互接続されたノードのネットワークを含むインフラストラクチャである。
【０１２４】
ここで図１１を参照すると、コンピューティング・ノードの例の概略が示される。コンピューティング・ノード１０は、クラウド・コンピューティング・ノードとして使用するのに適したコンピューティング・ノードの一例にすぎず、本明細書で記載される実施形態の使用範囲又は機能に関するいずれかの限定を示唆することを意図していない。それにもかかわらず、コンピューティング・ノード１０は、本明細書で上述される機能のいずれも実装及び／又は実行することができる。コンピューティング・ノート１０は、クラウド・コンピューティング環境におけるクラウド・コンピューティング・ノードとして実装されてもよく、又はクラウド・コンピューティング環境ではないコンピューティング環境におけるコンピューティング・ノードとして実装されてもよい。
【０１２５】
コンピューティング・ノード１０において、多数の他の汎用又は専用コンピューティング・システム環境又は構成で動作可能であるコンピュータ・システム１２がある。コンピュータ・システム１２と共に使用するのに好適であり得る周知のコンピューティング・システム、環境、及び／又は構成の例としては、これらに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式又はラップトップ型デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースのシステム、セット・トップ・ボックス、プログラム可能民生電子機器、ネットワークＰＣ、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、及び、上述のシステム若しくはデバイスのいずれかを含む分散型クラウド・コンピューティング環境等が含まれる。
【０１２６】
コンピュータ・システム１２は、コンピュータ・システムによって実行される、プログラム・プロセスなどのコンピュータ・システム実行可能命令の一般的な文脈で説明することができる。一般に、プログラム・プロセスは、特定のタスクを実行する又は特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。コンピュータ・システム１２は、通信ネットワークを通じてリンクされた遠隔処理デバイスによってタスクが実行される分散型クラウド・コンピューティング環境で実施することができる。分散型クラウド・コンピューティング環境において、プログラム・プロセスは、メモリ・ストレージ・デバイスを含む、ローカル及び遠隔両方のコンピュータ・システム・ストレージ媒体に配置することができる。
【０１２７】
図１１に示されるように、コンピューティング・ノード１０におけるコンピュコンピュータ・システム１２が、汎用コンピューティング・デバイスの形で示される。コンピュータ・システム１２のコンポーネントは、これらに限定されるものではないが、１つ又は複数のプロセッサ１６、システム・メモリ２８、及びシステム・メモリ２８を含む種々のシステム・コンポーネントをプロセッサ１６に結合するバス１８を含むことができる。１つの実施形態において、コンピューティング・ノード１０は、非クラウド・コンピューティング環境のコンピューティング・ノードである。１つの実施形態において、コンピューティング・ノード１０は、図１２〜図１３と関連して説明されるようなクラウド・コンピューティング環境のコンピューティング・ノードである。
【０１２８】
バス１８は、メモリ・バス又はメモリ・コントローラ、周辺バス、アクセラレーテッド・グラフィックス・ポート、及び種々のバス・アーキテクチャのいずれかを用いるプロセッサ又はローカル・バスを含む、幾つかのタイプのバス構造のうちのいずれかの１つ又は複数を表す。限定ではなく例としては、このようなアーキテクチャは、業界標準アーキテクチャ（Industry Standard Architecture、ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（Micro Channel Architecture、ＭＣＡ）バス、Ｅｎｈａｎｃｅｄ  ＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカル・バス、及びＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）バスを含む。
【０１２９】
コンピュータ・システム１２は、典型的には、種々のコンピュータ・システム可読媒体を含む。このような媒体は、コンピュータ・システム１２によりアクセス可能ないずれかの利用可能媒体とすることができ、揮発性媒体及び不揮発性媒体の両方と、取り外し可能媒体及び取り外し不能媒体の両方とを含む。
【０１３０】
システム・メモリ２８は、ランダム・アクセス・メモリ（ＲＡＭ）３０及び／又はキャッシュ・メモリ３２など、揮発性メモリの形のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム１２は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、取り外し不能の不揮発性磁気媒体（図示されておらず、典型的には「ハード・ドライブ」と呼ばれる）との間の読み出し及び書き込みのために、ストレージ・システム３４を設けることができる。図示されていないが、取り外し可能な不揮発性磁気ディスク（例えば、「フロッピー・ディスク」）との間の読み出し及び書き込みのための磁気ディスク・ドライブと、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ又は他の光媒体などの取り外し可能な不揮発性光ディスクとの間の読み出し及び書き込みのための光ディスク・ドライブとを設けることができる。このような例においては、それぞれを、１つ又は複数のデータ媒体インターフェースによってバス１８に接続することができる。以下でさらに示され説明されるように、メモリ２８は、本発明の実施形態の機能を実行するように構成されたプログラム・プロセスのセット（例えば、少なくとも１つ）を有する少なくとも１つのプログラム製品を含むことができる。
【０１３１】
限定ではなく例として、プログラム・プロセス４２のセット（少なくとも１つ）を有する１つ又は複数のプログラム４０、並びにオペレーティング・システム、１つ又は複数のアプリケーション・プログラム、他のプログラム・プロセス、及びプログラム・データをメモリ２８内に格納することができる。プログラム・プロセス４２を含む１つ又は複数のプログラム４０は、一般に、本明細書で記載される機能を実行することができる。１つの実施形態において、文書デジタル化エンジン１２０は、１つ又は複数のコンピューティング・ノード１０を含むことができ、図２、図３及び図５のフローチャートに関連して説明される方法のような、本明細書で記載される種々の方法を参照して説明される機能を実行するための１つ又は複数のプログラム４０を含むことができる。１つの実施形態において、異なる参照番号で参照される図１のそれぞれのコンポーネントの各々は、コンピューティング・ノード・ベースのデバイスとすることができ、１つ又は複数のコンピューティング・ノード１０、及びそれぞれのコンポーネントを参照して本明細書で説明される機能を実行するための１つ又は複数のプログラム４０を含むことができる。
【０１３２】
コンピュータ・システム１２は、キーボード、ポインティング・デバイス、ディスプレイ２４等のような１つ又は複数の外部デバイス１４、ユーザがコンピュータ・システム１２と対話することを可能にする１つ又は複数のデバイス、及び／又はコンピュータ・システム１２が１つ又は複数の他のコンピューティング・デバイスと通信することを可能にするいずれかのデバイス（例えば、ネットワーク・カード、モデム等）と通信することもできる。このような通信は、入力／出力（Ｉ／Ｏ）インターフェース２２を介して行うことができる。さらに、コンピュータ・システム１２は、ネットワーク・アダプタ２０を介して、ローカル・エリア・ネットワーク（ＬＡＮ）、汎用広域ネットワーク（ＷＡＮ）、及び／又はパブリック・ネットワーク（例えば、インターネット）などの１つ又は複数のネットワークと通信することもできる。示されるように、ネットワーク・アダプタ２０は、バス１８を介して、コンピュータ・システム１２の他のコンポーネントと通信する。図示されないが、コンピュータ・システム１２と共に他のハードウェア及び／又はソフトウェア・コンポーネントを使用できることを理解されたい。例としては、これらに限定されるものではないが、マイクロコード、デバイス・ドライバ、冗長プロセッサ、外部のディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、及びデータ・アーカイブ・ストレージ・システム等が含まれる。ユーザ・インターフェース機能を与えるように構成され得る外部デバイス１４及びディスプレイ２４を有するのに加えて又はその代わりに、コンピューティング・ノード１０は、１つの実施形態において、バス１８に接続されたディスプレイ２５を含むことができる。１つの実施形態において、ディスプレイ２５は、タッチ・スクリーン・ディスプレイとして構成することができ、ユーザ・インターフェース機能を提供するように構成することができ、例えば、仮想キーボード機能及びデータ全体の入力を容易にすることができる。コンピュータ・システム１２は、１つの実施形態において、バス１８に接続された１つ又は複数のセンサ・デバイス２７を含むこともできる。１つ又は複数のセンサ・デバイス２７は、代替的に、Ｉ／Ｏインターフェース２２を通じて接続することもできる。１つ又は複数のセンサ・デバイス２７は、１つの実施形態においては、グローバル・ポジショニング・センサ（ＧＰＳ）デバイスを含むことができ、コンピューティング・ノード１０の位置を提供するように構成することができる。１つの実施形態において、１つ又は複数のセンサ・デバイス２７は、代替的に又は付加的に、例えば、カメラ、ジャイロスコープ、温度センサ、湿度センサ、心拍センサ、血圧（ｂｐ）センサ、又は音声入力デバイスのうちの１つ又は複数を含むことができる。コンピュータ・システム１２は、１つ又は複数のネットワーク・アダプタ２０を含むことができる。図１２において、コンピューティング・ノード１０は、クラウド・コンピューティング環境内に実装されるものとして説明され、従って、図１２の文脈においてクラウド・コンピューティング・ノードと呼ばれる。
【０１３３】
ここで図１２を参照すると、例示的クラウド・コンピューティング環境５０が示される。示されるように、クラウド・コンピューティング環境５０は、例えば携帯情報端末（ＰＤＡ）又は携帯電話５４Ａ、デスクトップ・コンピュータ５４Ｂ、ラップトップ・コンピュータ５４Ｃ、及び／又は自動車コンピュータ・システム５４Ｎなどといった、クラウド・コンシューマによって用いられるローカル・コンピューティング・デバイスと通信できる１つ又は複数のクラウド・コンピューティング・ノード１０を含む。ノード１０は、互いに通信することができる。これらのノードは、上述のようなプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、若しくはハイブリッド・クラウド、又はこれらの組み合わせなど、１つ又は複数のネットワークにおいて物理的又は仮想的にグループ化することができる（図示せず）。これにより、クラウド・コンピューティング環境５０が、クラウド・コンシューマがローカル・コンピューティング・デバイス上にリソースを保持する必要のないサービスとして、インフラストラクチャ、プラットフォーム、及び／又はソフトウェアを提供することが可能になる。図１１に示されるコンピューティング・デバイス５４Ａ〜Ｎのタイプは単に例示であることを意図し、コンピューティング・ノード１０及びクラウド・コンピューティング環境５０は、いずれのタイプのネットワーク及び／又はネットワーク・アドレス指定可能な接続上でも（例えば、ウェブ・ブラウザを用いて）、いずれのタイプのコンピュータ化されたデバイスとも通信できることを理解されたい。
【０１３４】
ここで図１３を参照すると、クラウド・コンピューティング環境５０（図１２）によって提供される機能抽象化層のセットが示される。図１３に示されるコンポーネント、層、及び機能は単に例示であることを意図し、本発明の実施形態はそれらに限定されないことを予め理解されたい。図示されるように、以下の層及び対応する機能が提供される。
【０１３５】
ハードウェア及びソフトウェア層６０は、ハードウェア及びソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例として、メインフレーム６１と、ＲＩＳＣ（Reduced Instruction Set Computer（縮小命令セット・コンピュータ））アーキテクチャ・ベースのサーバ６２と、サーバ６３と、ブレード・サーバ６４と、ストレージ・デバイス６５と、ネットワーク及びネットワーキング・コンポーネント６６とが含まれる。幾つかの実施形態において、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア６７及びデータベース・ソフトウェア６８を含む。
【０１３６】
仮想化層７０は、抽象化層を提供し、この層により、仮想エンティティの以下の例、すなわち、仮想サーバ７１、仮想ストレージ７２、仮想プライベート・ネットワークを含む仮想ネットワーク７３、仮想アプリケーション及びオペレーティング・システム７４、並びに仮想クライアント７５を提供することができる。
【０１３７】
一例においては、管理層８０は、以下で説明される機能を提供することができる。リソース・プロビジョニング８１は、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング・リソース及び他のリソースの動的な調達を提供する。計量及び価格決定８２は、クラウド・コンピューティング環境内でリソースが利用される際のコスト追跡と、これらのリソースの消費に対する課金又は請求とを提供する。一例においては、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウド・コンシューマ及びタスクに対する識別情報の検証と、データ及び他のリソースに対する保護とを提供する。ユーザ・ポータル８３は、コンシューマ及びシステム管理者のために、クラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理８４は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの割り当て及び管理を提供する。サービス・レベル・アグリーメント（Service Level Agreement、ＳＬＡ）の計画及び履行８５は、ＳＬＡに従って将来の要件が予測されるクラウド・コンピューティング・リソースの事前配置及び調達を提供する。
【０１３８】
ワークロード層９０は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロード及び機能の例として、マッピング及びナビゲーション９１、ソフトウェア開発及びライフサイクル管理９２、仮想教室教育配信９３、データ分析処理９４、トランザクション処理９５、及び本明細書で説明される文書イメージを処理するための処理コンポーネント９６が挙げられる。処理コンポーネント９６は、図１１に説明される１つ又は複数のプログラム４０を用いて実装され得る。
【０１３９】
本発明は、システム、方法、及び／又はコンピュータ・プログラム製品とすることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体（単数又は複数）を含むことができる。
【０１４０】
コンピュータ可読ストレージ媒体は、命令実行デバイスにより使用される命令を保持及び格納できる有形デバイスとすることができる。コンピュータ可読ストレージ媒体は、例えば、これらに限定されるものではないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、又は上記のいずれかの適切な組み合わせとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストとして、以下のもの：すなわち、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ又はフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、パンチカード若しくは命令がそこに記録された溝内の隆起構造のような機械的にエンコードされたデバイス、及び上記のいずれかの適切な組み合わせが挙げられる。本明細書で使用される場合、コンピュータ可読ストレージ媒体は、電波、又は他の自由に伝搬する電磁波、導波管若しくは他の伝送媒体を通じて伝搬する電磁波（例えば、光ファイバ・ケーブルを通る光パルス）、又はワイヤを通って送られる電気信号などの、一時的信号自体として解釈されない。
【０１４１】
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング／処理デバイスに、又は、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワーク、及び／又は無線ネットワークなどのネットワークを介して外部コンピュータ又は外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、及び／又はエッジ・サーバを含むことができる。各コンピューティング／処理デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、コンピュータ可読プログラム命令を転送して、それぞれのコンピューティング／処理デバイス内のコンピュータ可読ストレージ媒体に格納する。
【０１４２】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、又は、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、及び、「Ｃ」プログラミング言語若しくは類似のプログラミング言語などの従来の手続き型プログラミング言語を含む１つ又は複数のプログラミング言語の任意の組み合わせで記述されるソース・コード又はオブジェクト・コードとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータ若しくはサーバ上で実行される場合もある。最後のシナリオにおいて、遠隔コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）若しくは広域ネットワーク（ＷＡＮ）を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部コンピュータへの接続がなされる場合もある（例えば、インターネットサービスプロバイダを用いたインターネットを通じて）。幾つかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、又はプログラム可能論理アレイ（ＰＬＡ）を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行して、電子回路を個別化することができる。
【０１４３】
本発明の態様は、本発明の実施形態による方法、装置（システム）及びコンピュータ・プログラム製品のフローチャート図及び／又はブロック図を参照して説明される。フローチャート図及び／又はブロック図の各ブロック、並びにフローチャート図及び／又はブロック図内のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されるであろう。
【０１４４】
これらのコンピュータ可読プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロック内で指定された機能／動作を実施するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、及び／又は他のデバイスを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納し、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャート及び／又はブロック図の１つ又は複数のブロックにおいて指定された機能／動作の態様を実施する命令を含む製品を含むようにすることもできる。
【０１４５】
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生産し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャート及び／又はブロック図の１つ又は複数のブロックにおいて指定された機能／動作を実行するためのプロセスを提供するようにすることもできる。
【０１４６】
図面内のフローチャート及びブロック図は、本発明の様々な実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及び動作を示す。この点に関して、フローチャート内の各ブロックは、指定された論理機能を実装するための１つ又は複数の実行可能命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に示される順序とは異なる順序で生じることがある。例えば、連続して示される２つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図及び／又はフローチャート図の各ブロック、及びブロック図及び／又はフローチャート図内のブロックの組み合わせは、指定された機能又は動作を実行する、又は専用のハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェア・ベースのシステムによって実装できることにも留意されたい。
【０１４７】
本明細書で用いられる用語は、特定の実施形態を説明することのみを目的とし、本発明を限定することを意図したものではない。本明細書内で用いられる場合、単数形「１つの（a）」、「１つの（an）」及び「その（the）」は、文脈がそうでないことを明確に示していない限り、複数形も含むことを意図している。さらに、用語「含む（comprise）」（及び、compriseの任意の形態、例えば「comprises」及び「comprising」）、「有する（have）」（及び、haveの任意の形態、例えば「has」及び「having」）、「含む（include）」（及び、includeの任意の形態、例えば「includes」及び「including」）、並びに「含有する（contain）」（及び、containの任意の形態、例えば「contains」及び「containing」）は、変更可能な連結動詞（open-ended linking verbs）であることが理解されるであろう。その結果、１つ又は複数のステップ又は要素を「含む（comprise）」、「有する（have）」、「含む（include）」、又は「含有する（contain）」方法又はデバイスは、１つ又は複数のステップ又は要素を保有するが、それらの１つ又は複数のステップ又は要素のみを保有することに限定されるものではない。同様に、１つ又は複数の特徴を「含む（comprise）」、「有する（have）」、「含む（include）」、又は「含有する（contain）」、方法のステップ又はデバイスの要素は、それらの１つ又は複数の特徴を保有するが、それらの１つ又は複数の特徴のみを保有することに限定されるものではない。本明細書で「〜に基づく（based on）」という用語の形態は、要素が部分的に基づく場合の関係、並びに要素が全体的に基づく場合の関係を含む。特定の数の要素を有するものとして記載される方法、製品及びシステムは、特定の数より少ない又はそれより多い要素で実施されることもある。さらに、特定の方法で構成されたデバイス又は構造は、少なくともその方法で構成されるが、列挙されていない方法で構成されることもある。
【０１４８】
以下の特許請求の範囲に存在する場合、「手段又はステップと機能との組合せ（ミーンズ又はステップ・プラス・ファンクション）」要素の対応する構造、材料、動作及び均等物は、明確に特許請求された他の特許請求される要素と共に機能を実行するための任意の構造、材料、又は動作を含むことを意図したものである。本明細書に記載される説明は、例証及び説明のためだけに提示されたものであり、網羅的であること又は本発明を開示した形態に限定することを意図したものではない。当業者には、本開示の範囲及び趣旨から逸脱することなく、多くの修正及び変形が明らかであろう。実施形態は、本明細書に記載される１つ又は複数の態様の原理、実際の用途を最も良く説明するため、及び考えられる特定の使用に適するものとして種々の変形を有する種々の実施形態において、当業者が、本明細書に説明される１つ又は複数の態様を理解するのを可能にするために、選択され説明された。
【符号の説明】
【０１４９】
１００：システム
１０１：ユーザ
１１０：ユーザ・デバイス
１２０：文書デジタル化エンジン
１３０：意味データベース
１３１：文書クラス
１３３：クラス・キー
１３５：キー・エイリアス
１３７：キー・オントロジ・データ
１３８：キー
１４０：メタデータ
１４９：プロセス・インターフェース
１５０：リレーショナル・データベース
１５５：キー値ペア（ＫＶＰ）
１８１、１６００、１７００：文書イメージ
１６０２Ａ〜１６０２Ｋ、１６０３Ａ〜１６０３Ｎ、１７０２Ａ〜１７０２Ｃ：マイクロブロック
１６０４Ｄ、１７０４Ａ：マクロブロック
【図１】
2021504781.tif 000003
【図２】
2021504781.tif 000004
【図３】
2021504781.tif 000005
【図４】
2021504781.tif 000006
【図５】
2021504781.tif 000007
【図６】
2021504781.tif 000008
【図７】
2021504781.tif 000009
【図８】
2021504781.tif 000010
【図９】
2021504781.tif 000011
【図１０】
2021504781.tif 000012
【図１１】
2021504781.tif 000013
【図１２】
2021504781.tif 000014
【図１３】
2021504781.tif 000015
【手続補正書】
【提出日】令和2年6月2日(2020.6.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内の複数のマクロブロックを識別することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することであって、前記マイクロブロック処理は、キー値ペアの抽出のためにマクロブロック内のマイクロブロックのコンテンツを検査することを含み、前記コンテンツを検査することは、マイクロブロックのオントロジ分析を実行することを含み、前記マイクロブロック処理は、信頼性レベルを前記抽出されたキー値ペアに関連付けることを含む、実行することと、
前記複数のマクロブロックのマクロブロック内でマイクロブロック処理を実行することに基づいて、メタデータを出力することと、
を含む、方法。
【請求項２】
前記メタデータを出力することは、メタデータをプロセス・インターフェースに出力することを含む、請求項１に記載の方法。
【請求項３】
前記方法は、前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率として前記テキストの行のテキストの単語のフォント高さを指定する、識別することとを含み、前記メタデータを出力することは、前記相対スタイル・パラメータを出力のための出力メタデータとして提供することを含む、請求項１に記載の方法。
【請求項４】
前記メタデータは、マクロブロックの表示と、各マクロブロックについての指示子内に識別され、小見出しが付けられる識別されたキー値ペアとを含む階層を提示する、請求項１に記載の方法。
【請求項５】
前記マクロブロックの領域内のマイクロブロックのコンテンツを検査することは、異なる機械論理マイクロブロック境界付け規則を用いて前記検査を繰り返し実行して、第１の繰り返しにおいて、前記マクロブロックの前記領域内の第１のマイクロブロックのセットを識別し、第２の繰り返しにおいて、前記マクロブロックの前記領域内の第２のマイクロブロックのセットを識別することを含み、前記第１のマイクロブロックのセットのマイクロブロックの数は、前記第２のマイクロブロックのセットのマイクロブロックの数とは異なる、請求項１に記載の方法。
【請求項６】
前記出力することは、閾値を下回る信頼性レベルを有するキー値ペアが出力されないようにキー値ペアを廃棄することを含む、請求項１に記載の方法。
【請求項７】
前記コンテンツを検査することは、アラインされていないマイクロブロックのオントロジ分析を実行することと、前記オントロジ分析に基づいて、アラインされていないマイクロブロックが共線性を有すると判断することとを含む、請求項１に記載の方法。
【請求項８】
前記方法は、マイクロブロックより大きい前記文書イメージの領域についての空白スタイル・パラメータ値を求めること、及び前記空白スタイル・パラメータ値に基づいて機械論理マイクロブロック境界付け規則を適用することを含む、請求項１に記載の方法。
【請求項９】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージ内のマクロブロックを識別することであって、前記マクロブロックは前記複数のオブジェクトのオブジェクトを含む、識別することと、
１つ又は複数のキー値ペアの抽出のために前記文書イメージの前記マイクロブロックの領域内のマイクロブロックのコンテンツを検査することであって、前記検査することは、前記マイクロブロックの前記領域内のアラインされていないマイクロブロックのコンテンツを検査することを含み、前記マイクロブロックの前記領域内のアラインされていないマイクロブロックのコンテンツを検査することは、オントロジ分析を適用することを含む、検査することと、
信頼性レベルを、前記１つ又は複数のキー値ペアのうちの１つのキー値ペアに関連付けることと、
前記１つ又は複数のキー値ペアを出力することと、
を含む、方法。
【請求項１０】
前記検査することは、前記マクロブロックの前記領域内の第１のマイクロブロック及び第２のマイクロブロックの両方のそれぞれの意味コンテンツを分析することと、前記第１のマイクロブロックの第１の意味コンテンツがキー名と関連付けられていることを確認することと、前記キー名に対応するキー・オントロジ・データから、前記第２のマイクロブロックの第２の意味コンテンツが、前記キー名に対応するデータ・タイプのものであることを発見することとを含む、請求項９に記載の方法。
【請求項１１】
前記アラインされていないマイクロブロックのコンテンツを検査することは、マクロブロックを識別することの前に開始され、前記文書イメージ内のマクロブロックを識別することは、前記アラインされていないマイクロブロックのコンテンツを検査することに基づいて実行される、請求項９に記載の方法。
【請求項１２】
前記マクロブロックの領域内のアラインされていないマイクロブロックのコンテンツを検査することは、異なる機械論理マイクロブロック境界付け規則を用いて前記検査を繰り返し実行して、第１の繰り返しにおいて、前記マクロブロックの前記領域内の第１のマイクロブロックのセットを識別し、第２の繰り返しにおいて、前記マクロブロックの前記領域内の第２のマイクロブロックのセットを識別することを含み、前記第１のマイクロブロックのセットのマイクロブロックの数は、前記第２のマイクロブロックのセットのマイクロブロックの数とは異なる、請求項９に記載の方法。
【請求項１３】
前記方法は、前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率として前記テキスト行のテキストの単語のフォント高さを指定し、前記メタデータを出力することは、前記相対スタイル・パラメータを出力のための出力メタデータとして提供することを含む、識別することとを含む、請求項９に記載の方法。
【請求項１４】
前記アラインされていないマイクロブロックのコンテンツを検査することは、第１の繰り返し及び第２の繰り返しにおいて前記検査を実行することを含み、前記第１の繰り返しは、前記マクロブロックの識別をもたらし、前記第２の繰り返しは、前記マクロブロックの識別後に実行される、請求項９に記載の方法。
【請求項１５】
前記アラインされていないマイクロブロックのコンテンツを検査することは、第１の繰り返し及び第２の繰り返しにおいて前記検査を実行することを含み、前記第１の繰り返しは、前記マクロブロックの識別をもたらし、前記第２の繰り返しは、前記マクロブロックの識別後に実行され、前記第１の繰り返しにおいて前記検査を実行することは、第１の機械論理マイクロブロック境界付け規則を適用して、前記マクロブロックの前記領域内の比較的少ないマイクロブロックを識別することを含み、前記第２の繰り返しにおいて前記検査を実行することは、第２の機械論理マイクロブロック境界付け規則を適用して、前記マクロブロックの前記領域内の比較的多いマイクロブロックを識別することを含み、前記出力することは、前記１つ又は複数のキー値ペアをメタデータとして、文書処理のためのプロセス・インターフェース、検索エンジン検索のためのプロセス・インターフェース、及びフォーム再生成のためのプロセス・インターフェースからなる群から選択されるプロセス・インターフェースに出力することを含む、請求項９に記載の方法。
【請求項１６】
複数のオブジェクトを含む文書イメージを取得することと、
前記文書イメージを処理して、ベースライン・フォント高さを指定するベースライン・スタイル・パラメータ値を識別することと、
前記文書イメージのテキストの行の各単語について、前記ベースライン・スタイル・パラメータ値を参照して定められる相対スタイル・パラメータを識別することであって、前記相対スタイル・パラメータは、前記ベースライン・スタイル・パラメータ値の百分率値として、前記テキスト行のテキストの単語のフォント高さを指定する、識別することと、
前記相対スタイル・パラメータを出力のための出力メタデータとして提供することと、を含む、方法。
【請求項１７】
前記方法は、前記テキスト行より大きい前記文書の領域におけるフォント高さ値のヒストグラムを提供することにより、前記ベースライン・スタイル・パラメータ値を求めることと、前記ヒストグラムの中央散布度に基づいて、前記ベースライン・スタイル・パラメータ値を選択することとを含む、請求項１６に記載の方法。
【請求項１８】
前記プロセス・インターフェースは、フォーム再生成器である、請求項１６に記載の方法。
【請求項１９】
前記プロセス・インターフェースは、前記テキスト行のテキストの単語のフォント高さを前記ベースライン・スタイル・パラメータ値の百分率として指定する前記相対スタイル・パラメータを検査するように構成されたフォーム再生成器であり、高さの変更を示す前記相対スタイル・パラメータに基づいて、前記フォーム再生成器により出力された出力文書におけるフォント高さ以外の前記単語の属性を変更する、請求項１６に記載の方法。
【請求項２０】
請求項１から請求項１９までのいずれか１項に記載の方法をコンピュータに実行させるコンピュータ・プログラム。
【請求項２１】
請求項２０に記載のコンピュータ・プログラムを格納したコンピュータ可読ストレージ媒体。
【請求項２２】
メモリと、
前記メモリと通信する少なくとも１つのプロセッサと、
前記メモリを介して前記少なくとも１つのプロセッサにより実行可能な、請求項１から請求項１９までのいずれか１項に記載の方法を実行するためのプログラム命令と、
を含む、システム。
【国際調査報告】
2021504781.tif 000016
2021504781.tif 000017
2021504781.tif 000018
2021504781.tif 000019