(57)【要約】【課題】印刷可能または画像フォーマットの文書を構造化フォーマットに文書を変換する際に、ページ番号を検出する方法及びシステムを提供する。【解決手段】文書のページ番号検出方法は、文書の複数のページから１以上のテキスト断片を識別し、前記識別されたテキスト断片から、複数の項を各々含み、少なくとも１つの所定のナンバリング方式に従った、少なくとも１つのシーケンスを識別し、前記識別されたシーケンスの部分集合を計算し、前記部分集合の項の少なくとも幾つかを文書のページのページ番号と解釈することを含む。【選択図】図１
2008123528.tif 000002
【特許請求の範囲】
【請求項１】
文書の複数のページに関連付けられる複数のテキスト断片を識別し、
前記識別されたテキスト断片から、前記複数のテキスト断片から選択された１つのテキスト断片に各々由来する複数の項を各々含む、少なくとも１つのシーケンスを識別し、前記複数の項が、シーケンスにおける項の形式および増分状態を定義する少なくとも１つの所定のナンバリング方式に従っており、
文書のページの少なくとも一部にわたる、識別されたシーケンスの部分集合を計算し、
前記識別されたシーケンスの前記部分集合の項の少なくとも幾つかを文書のページのページ番号と解釈する、
ことを含む、文書のページ番号検出のための方法。
【請求項２】
前記少なくとも１つのシーケンスの識別が、シーケンス内の文書の複数のページの各ページについて順番に、
前記所定のナンバリング方式の形式に従う項を含むテキスト断片を識別し、
前記識別されたテキスト断片の各々に対し、前記識別されたテキスト断片の項が、文書の前ページのテキスト断片に由来する少なくとも１つの項を含む既存のシーケンスで受け入れられる増分状態に従うか否かを判定し、従う場合、前記項をそのシーケンスに追加し、
既存のシーケンスで受け入れられる増分状態に従わない項の各々を、新しいシーケンスが開始したことの可能性とみなす、
ことを含む、請求項１に記載の方法。
【請求項３】
命令を格納するメモリと、
前記命令を実行するプロセッサと、
を含み、前記命令はシステムを、
（ａ）文書の複数のページに関連付けられる複数のテキスト断片を識別し、
（ｂ）前記識別されたテキスト断片から、前記複数のテキスト断片から選択された１テキスト断片に由来する複数の項を各々含む、少なくとも１つのシーケンスを識別し、前記複数の項は、シーケンスにおける項の形式および増分状態を定義する少なくとも１つの所定のナンバリング方式に従っており、
（ｃ）前記識別されたシーケンスの部分集合を計算し、
（ｄ）前記シーケンスの部分集合の項を文書のページのページ番号と解釈するように機能させる、
ページ番号の検出のためのシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
例示的実施形態は、情報記憶および処理技術に関する。具体的には、印刷可能フォーマットまたは画像フォーマットで利用可能な文書から、文書の論理構造を反映した構造化フォーマットへの変換に関連して、文書のページ番号を検出する方法及びシステムに関する。
【背景技術】
【０００２】
従来の文書変換は、アドビ（Ａｄｏｂｅ）社のポータブルドキュメントフォーマット（ＰＤＦ）、ポストスクリプト（ＰｏｓｔＳｃｒｉｐｔ）、ＰＣＬ‐５、ＰＣＬ‐５Ｅ、ＰＣＬ‐６、ＰＣＬ‐ＸＬ等のページ記述言語フォーマットの既存の非構造化文書を、拡張可能マークアップ言語（ＸＭＬ）、汎用マークアップ言語（ＳＧＭＬ）、ハイパーテキストマークアップ言語（ＨＴＭＬ）等のマークアップ言語を使用する構造化文書に変換することに関連している。
【０００３】
構造化文書では、文書の内容は、適切なヘッダ／フッタなどを持つ文書ページのような線引きされたセクションに編成される。そのような編成は一般的に、マークアップタグを用いて実現される。ＸＭＬのような一部の構造化文書では、文書型定義（ＤＴＤ）または同様の文書の部分が、セクション識別のような文書に関する全体的な情報を提供し、入れ子状セクションのような複雑な文書構造を容易化する。
【０００４】
しかしページ番号は、１つのコレクション（文書ページの集合）全体にわたって、かつコレクション毎に、多種多様な外見、レイアウト、およびナンバリング方式を文書内に持つことができるため、検出が困難である。
【０００５】
ナンバリング方式は変更することもでき、アラビア数字、ローマ数字、文字、Ｎ／Ｍ形式（ここでＮはページ番号、Ｍはページ総数、あるいはＮはセクション番号、Ｍはセクション内のサブセクションまたはページ番号）、またはＴＯＣ‐Ｎ形式、ＩＮＴＲＯ‐Ｎ形式のような複合ページ番号を含みうる。
【０００６】
ページ番号を付けるための従来の手法はページレベルで適用される。番号が抜けているページに対しては、人間のオペレータが出力を検証する。
【０００７】
例えば特許文献１は、文書に由来する認識可能なテキストブロックを含むテキスト断片を順番に配列するために、文書のヘッダ／フッタ内容を識別するための方法を開示している。ヘッダ／フッタ域は、テキスト変動性の低いテキスト内容によって定義される。代替的実施形態は、選択されたテキストボックスを相似性および近似性について比較し、所定の相似値を満たすテキストボックスをクラスタ化することによって、ページ付け構造を識別する。クラスタ化されたテキストボックスは、ページ付け構造を含むと考えられる。
【０００８】
特許文献２は、文書フォーマット変換に関し、特に、拡張可能なマークアップ言語（ＸＭＬ）のようなマークアップフォーマットでの従来の形式による文書の目録作成に関する。
【０００９】
特許文献３は、文書中の目次を識別するための方法に関する。
【特許文献１】米国特許出願第２００６／０１５６２２６号明細書
【特許文献２】米国特許出願第２００６／０１５５７００号明細書
【特許文献３】米国特許出願第２００６／０１５５７０３号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、印刷可能フォーマットまたは画像フォーマットの文書を構造化フォーマットに文書を変換する際に、ページ番号を検出する方法及びシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
例示的実施形態の１態様によると、文書のページ番号検出のための方法は、文書の複数のページに関連付けられる複数のテキスト断片（text fragment）を識別することを含む。識別されたテキスト断片から、少なくとも１つのシーケンス（配列）が識別される。識別された各シーケンスは複数の項（term）を含む。各項は、複数のテキスト断片から選択された１つのテキスト断片に由来するものである。識別されたシーケンスの項は、シーケンスにおける項の形式および項の増分状態を定義する、少なくとも１つの所定のナンバリング方式に従うものである。文書の少なくとも幾つかのページにわたる、識別されたシーケンスの部分集合（サブセット）が計算される。識別されたシーケンスの部分集合の少なくとも一部の項が、文書のページのページ番号と解釈される。
【００１２】
本方法では、少なくとも１つのナンバリング方式は、任意の連続する２ページの間で項が一定値だけ異なるという増分状態に従わないシーケンスからの項を排除してもよい。
【００１３】
前記少なくとも１つのナンバリング方式は、アラビア数字、ローマ数字、複合ナンバリング、アスキー文字、およびそれらの組合せから成るグループから選択されるナンバリング方式を含む。
【００１４】
少なくとも１つのシーケンスの識別はさらに、ページに対し項が追加されていないシーケンスが存在する場合に、シーケンスを終了することにより、後続ページのシーケンスにはそれ以上の項を追加しないこと、およびそのページに項が欠落しているものとしてシーケンスを識別するように、シーケンスに穴を追加すること、の少なくとも１つを実行することを含む。
【００１５】
シーケンス密度が所定の最低シーケンス密度より低い場合も、シーケンスを終了することができる。
【００１６】
識別されたシーケンスの部分集合の計算は、識別されたシーケンスの各々に対し、識別されたシーケンスを一連のノードとして定義し、各ノードが複数の連続ページの中の１ページのシーケンスの状態を表わし、各ノードが項または穴を含み、穴はシーケンスの項の欠落としてページを識別させ、かつ、最大でも文書全体に及ぶ範囲で識別されたシーケンスの部分集合のノードに割当てられたスコアに基づいて、識別されたシーケンスの部分集合を選択することを含むことができる。選択されたシーケンスの各ノードの割当てスコアは、ノードが穴または項を含むかどうか、シーケンス内の項の個数、およびシーケンスのカバレージ（範囲）のうちの少なくとも１つの関数とすることができる。
【００１７】
ノードが項を含む場合、割当てスコアは、シーケンス中の項の個数およびシーケンスのカバレージのうちの少なくとも１つの関数とすることができる。
【００１８】
部分集合の選択は、シーケンスの最初のノードだけを部分集合に受け入れ、かつ任意選択的に、その部分集合が各ページにおいてシーケンスのノードを１つしか含まないように、シーケンスをその最後のノードの前で終了することを含むことができる。
【００１９】
部分集合の選択は、識別されたシーケンスのどれもが文書の各ページからの１つの項を含まない場合に、２つのシーケンス各々の複数の連続ノードを選択することによって、各ノードのスコアの合計を最大にする、少なくとも２つのシーケンスを組み合わせることを含むことができる。
【００２０】
識別されたシーケンスの部分集合のノードの割当てスコアに基づく部分集合の選択は、合計されるスコアを１ページにつき１つだけにして、シーケンス内のノードのスコアを合計することを含むことができる。
【００２１】
シーケンスの集合の計算は、識別されたシーケンスにビタビ（Viterbi）アルゴリズムを適用して、識別されたシーケンスの部分集合を識別することを含むことができる。
【００２２】
文書の複数のページに関連付けられる複数のテキスト断片の識別は、各々のページの少なくとも１つの指定された領域内でテキスト断片を識別することを含むことができ、前記少なくとも１つの領域はページの面積に満たない面積を有する。
【００２３】
本方法は、シーケンスを含むテキスト断片の少なくとも１つの特徴の類似性を比較することによって、選択されたシーケンスの部分集合を検証することを含むことができる。
【００２４】
前記少なくとも１つの特徴は、位置特徴、外観特徴、ならびにそれらの組合せおよび複合から成るグループから選択することができる。
【００２５】
シーケンスの形式が許容可能な信頼度でシーケンスの外挿（補外）を可能とする場合、本方法は、部分集合のシーケンスを外挿してシーケンスにおける穴に対する項を識別することを含むことができる。
【００２６】
本方法は、シーケンスの識別された部分集合に無いテキスト断片の少なくとも１つの特徴を、シーケンスの識別された部分集合にあるテキスト断片の少なくとも１つの特徴と比較することによって、追加的テキスト断片を潜在的なページ番号として識別し、シーケンスの部分集合のテキスト断片および追加的に識別されたテキスト断片に基づいて、テキスト断片の最適集合を計算することを含むことができる。識別されたシーケンスの部分集合内の少なくとも幾つかのテキスト断片の項を文書のページのページ番号と解釈することは、最適集合のテキスト断片の項を文書のページのページ番号と解釈することを含むことができる。
【００２７】
最適集合のテキスト断片の計算は、部分集合内の識別されたシーケンスおよび追加的テキスト断片にビタビアルゴリズムを適用して、最大で文書全体に及ぶ範囲でテキスト断片の部分集合を識別することを含むことができる。
【００２８】
文書の複数のページに関連付けられる複数のテキスト断片の識別は、文書のページに対し、各ページの所定部分に関連付けられたテキスト断片を識別することを含むことができる。
【００２９】
文書でページ番号を検出するためのシステムは、本方法を実行するための命令を実行するプロセッサ、または本方法を実行するための命令が記録された有形媒体を含むことができる。
【００３０】
別の態様では、ページ番号の検出のためのシステムは、（ａ）識別されたテキスト断片から、文書の複数のページに関連付けられる複数のテキスト断片を識別し、（ｂ）複数のテキスト断片から選択された１テキスト断片に由来する複数の項を含む、少なくとも１つのシーケンスを識別し、前記シーケンスは各々、シーケンスの項の形式および増分状態を定義する少なくとも１つの所定のナンバリング方式に従う複数の項を含み、（ｃ）識別されたシーケンスの部分集合を計算し、かつ（ｄ）前記シーケンスの部分集合の項を文書のページのページ番号と解釈するようにシステムを機能させるための命令を格納するメモリと、プロセッサを含む。プロセッサは前記命令を実行する。
【００３１】
プロセッサは、部分集合のシーケンスの項を含むページ番号を注釈として文書に付けることができる。
【００３２】
別の態様では、文書のページ番号検出のための方法は、文書の複数のページに関連付けられる複数のテキスト断片を識別することを含み、前記識別された複数のテキスト断片は各々、少なくとも１つの所定のナンバリング方式の形式に従う項を含んで成る。複数のページの各ページに対し順番に、ａ）識別されたテキスト断片毎に、既存のシーケンスに該テキスト断片を受け入れるか否かを判定し、前記テキスト断片が既存のシーケンスの少なくとも１つの所定のナンバリング方式の形式に適合し、かつ既存のシーケンスの増分状態に適合する場合にだけ、シーケンスにテキスト断片を受け入れ、ｂ）既存のシーケンス毎に、シーケンスにテキスト断片を受け入れる場合、テキスト断片の項を既存のシーケンスに追加し、かつその項の状態を増分させ、ｃ）既存のシーケンスのいずれにも追加されていない識別テキスト断片毎に、該テキスト断片の項を含む新しいシーケンスを開始し、新しいシーケンスは文書の後続ページに対して既存のシーケンスとなり、ｄ）任意選択的に、そのページに対しテキスト断片項が追加されていない既存のシーケンス毎に、テキスト断片の項の欠如を示す穴をシーケンスに提供し、ｅ）任意選択的に、既存のシーケンス内の項の総数および既存のシーケンス内の穴の総数の関数である、所定の最低密度を満たさない各シーケンスについて、文書の後続ページからの断片項の追加に対してその既存のシーケンスを閉じる。次いで、シーケンスの部分集合が計算される。シーケンス内の穴の項を識別するために、任意選択的に、シーケンスの部分集合は外挿される。任意選択的に、追加的なテキスト断片は、追加的テキスト断片の特徴と、識別されたシーケンスのテキスト断片の特徴とを比較することによって、ページ番号である可能性があるものとして識別される。部分集合のシーケンスの項、および任意選択的に追加的テキスト断片の項も、文書のページのページ番号と解釈される。
【００３３】
別の態様では、文書のページ番号検出のための方法は、文書の複数のページに関連付けられる複数のテキスト断片を識別することを含む。識別されたテキスト断片から、複数の項を含む少なくとも１つのシーケンスが識別される。各項は、複数のテキスト断片から選択されたテキスト断片に由来し、シーケンスの項は、シーケンスにおける項の形式および増分状態を定義する少なくとも１つの所定のナンバリング方式に従う。シーケンスの部分集合が計算され、この計算は、第１長さファクタの関数としてシーケンスの長さに基づいてシーケンスのノードのスコアを得ることを含む。シーケンスにおける各項は、別個のノードとして表わされる。追加的なテキスト断片を潜在的ページ番号（ページ番号である可能性があるもの）として識別するためのモデルが開発されており、該モデルは、第１部分集合のシーケンスの項が由来する少なくとも１つのテキスト断片の少なくとも１つの特徴に基づく。該モデルは、文書内の識別されたテキスト断片の少なくとも幾つかに適用され、潜在的ページ番号である追加テキスト断片が識別される。シーケンスの部分集合および追加テキスト断片からの項の最適集合が計算され、この計算は、第１長さファクタより短いシーケンスを受け入れる傾向のある第２長さファクタの関数として、シーケンスまたは追加的テキスト断片の長さに基づいて、シーケンスのノードおよび追加的テキスト断片のスコアを得ことを含み、最適集合の少なくともいくつかの項を、文書ページのページ番号と解釈する。
【発明を実施するための最良の形態】
【００３４】
例示的実施形態は、オリジナル（原稿）文書のページ番号を検出するためのシステムおよび方法を提供する。本方法は、文書のページのテキスト断片を識別し、識別された断片のいずれかが２ページ以上にわたるシーケンスを形成するか否かを判定することを含みうる。特に、本方法は、文書の第１ページ（またはその所定の領域）に関連付けられるテキスト断片を識別し、識別されたテキスト断片のいずれかが、所定のナンバリング方式に従う項であるか、またはそのような項を含むか否かを判定し、そうである場合、これらのテキスト断片の項を潜在的なナンバリングシーケンスの一部とみなすことを含む。文書の次のページで、テキスト断片が識別され、これらの識別されたテキスト断片のいずれかが所定のナンバリング方式に従う項を含むか否かの判定が行なわれる。従う項の各々について、その項が、第１（または先行）ページですでに識別されたテキスト断片の項の１つを含むナンバリングシーケンスに、適合するか否かの判定も行なわれ、適合する場合、そのテキスト断片は前記シーケンスに追加される。ナンバリング方式に従うが、先行ページからのテキスト断片の１つからの項を含むナンバリングシーケンスに適合しない項を含むテキスト断片はいずれも、潜在的な新しいナンバリングシーケンスの一部とみなされる。本方法は、文書の全ページに対して１ページ毎に繰り返され、既存のシーケンスに対して項が適宜追加され、項が既存のシーケンスに適合しない場合には、新しいシーケンスが開始される。次いで、最大で文書全体に及ぶ範囲で識別されたシーケンスの最適な部分集合（つまり、最大で文書１ページにつきシーケンスの１項）が計算される。これにより、シーケンスの最適部分集合の項を文書ページのページ番号と解釈することができる。文書のテキスト断片の外観または位置特徴と、最適部分集合の項が由来するテキスト断片の外観または位置特徴を比較することによって、さらにページ番号が検出されることがある。例示的システムは、入力文書のページ番号を検出するための方法を実行するための命令を実行するプロセッサを含む。
【００３５】
例示的システムおよび方法は、文書レベルでページ番号を検出することを可能にし、それにより、ページ番号の検出のために根本的にページ番号のレイアウトまたは外見に関連する特性に依存する必要性を回避することができる。
【００３６】
例示的方法では、文書のページナンバリングに固有の特性が第１段階で利用される。具体的には、ナンバリングは１ページにつき１つ増加する項のシーケンスを形成し、より一般的には、それは１セットの重複しない増加シーケンスによって構成される。第２の任意選択的（オプションとしての）段階で、レイアウトおよびタイポグラフィック（活字体）情報を利用して、本例示的方法の精度および／または回収率をさらに改善することができる。
【００３７】
デジタル文書は、各ページに１セットのテキスト断片が含まれる１セットのページとみなすことができる。テキスト断片は一般的に１語に対応し、あるいは場合によっては１行または１行の一部分に対応する。これは、ＰＤＦ‐ＸＭＬ変換の出力またはＯＣＲエンジンによく適合するモデルである。デジタル文書は一般的に、文書のオリジナル（元の）ページ番号からなるテキスト断片を含む。しかし、多くの場合、オリジナルページ番号は、文書のページ位置とは異なる可能性がある。例えば、スキャンされ、ＯＣＲ処理された書物の１章は１２ページあるかもしれないが、書物におけるこれらのページのオリジナルページ番号は５５９〜５７０であることがある。
【００３８】
一般的に、オリジナル文書は非構造化フォーマットであり、この場合、それはテキスト部分がページ番号を含む可能性があるが、文書の構造がそれらをページ番号等として識別しないことを意味する。非構造化文書を構造化デジタル文書に変換する際には、オリジナルページ番号はテキストの一部になるが、文書構造でページ番号であるとは識別されない。例示的システムおよび方法は、例えばタグ付け、索引付け、および／または削除といった後続の処理のために、オリジナルページ番号を識別しようとするものである。オリジナル文書は、ＰＤＦ、ポストスクリプト、ＰＣＬ‐５、ＰＣＬ‐５Ｅ、ＰＣＬ‐６、ＰＣＬ‐ＸＬのようなページ記述言語文書、または他の適切な文書とすることができる。例えばＰＤＦでは、ページ番号は１つ以上のテキストオブジェクトの一部分を形成することができる。オリジナル文書が変換される構造化フォーマットは、ＸＭＬ、ＳＧＭＬ、ＸＭＬ、ＨＴＭＬのような、任意の適切なマークアップ言語とすることができる。
【００３９】
ページ番号を識別するページ番号タグは、適切なテキストオブジェクトに埋め込まれるか、または文書の６ページ目の場合には＜ページ番号値＝“６”／＞のように、テキストオブジェクトに関連付けられることができる。
【００４０】
図１は、入力されたデジタル文書の自動処理のための複数の処理モジュールを備えたプロセッサ１０を含む組立体１を示す。例えばＰＤＦフォーマットの技術マニュアル、ユーザマニュアル、所有権を持つ他の参考文書等の非構造化文書１２は、変換プロセッサ１４によって、ＸＭＬまたは他の構造化フォーマットのような代替的言語フォーマットに、様々な目的のためにレガシー文書としてそのようなフォーマットで処理することができる場合に、変換される。変換プロセッサ１４は入力オリジナル文書を、オリジナル文書から生成されたＸＭＬファイルからのテキスト文字列のリストに変換する。テキストフラグメンタ（テキスト断片生成器)１６は、変換された文書をテキスト断片１８の順序シーケンスに分割する。紙の文書２０を光学スキャナ２２を用いてスキャンし、光学文字認識（ＯＣＲ）プロセッサ２４によって処理することにより、デジタル文書を形成することができる。テキスト文書の場合、各行が行単位で順序付けられたテキスト断片になることができる。ＸＭＬまたはＨＭＬ文書の場合、テキスト断片は語レベルに基づいてもよく、各語は一般的に空白によって隣接する語から区別される（語はここでは、文字および／または数字を含む任意の種類の１つ以上の認識される文字を含むことができる）。フラグメンタ１６はまた、テキスト内容のページ毎のページ区切りおよび垂直位置が維持されるように、文書のテキスト内容の位置割当てをも実行することができる。プレーンテキスト形式の場合、使用される垂直位置は行番号である。
【００４１】
テキスト断片シーケンス化モジュール２６は、１つ以上ナンバリング方式を定義する規則を適用することによって、増加数列を表わすテキスト断片を識別する。特に、シーケンス化モジュール２６は、増加数列を形成し、かつ最大で文書全体までに及ぶ範囲の、一連のテキスト断片を探索する。一般的に、そのようなシーケンスは複数識別されうる。選択モジュール２８は、定義された選択基準を適用することによって、最適シーケンスまたはシーケンス群を選択する。ページ関連付けモジュール３０は、最適シーケンスの項に基づいて文書のページにタグ３２を付けるか、或いはシーケンス化モジュール２８の出力に基づいて情報の注釈を文書に付ける。代替的または追加的に、ページ関連付けモジュール３０は、選択されたシーケンスを含む識別されたテキスト断片の削除のような別の自動プロセスを実行することができる。任意選択的に、検証モジュール３４は検証ステップを実行して、以前に識別されたページ番号を確認し、かつ／または以前にページ番号が識別されなかったページに対し追加的にページ番号を識別する。
【００４２】
各々の処理モジュール１４、１６、２６、２８、３０、および３４は、関連するメモリ３６に格納することのできる、以下でさらに詳述する例示的方法を実行するための命令を実行することができる。テキスト断片、文書、識別されたシーケンス、ナンバリング方式を定義する規則等も、メモリ３６に格納することができる。メモリ３６は、ランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、磁気ディクスまたはテープのような任意の種類のコンピュータ可読媒体で実現されることができる。キーボード、タッチスクリーン、カーソル制御装置、またはそれらの組合せのようなユーザインタフェース３８は、ユーザと組立体１との対話を可能にする。
【００４３】
例示的組立体１は、汎用コンピュータまたは専用コンピュータ装置のようなコンピュータ装置に実装することができる。
【００４４】
図２を参照すると、図１の組立体を使用し、コンピュータ上で実行できるコンピュータプログラム製品として実装できる、本発明に係る例示的方法が示されている。
【００４５】
本方法はＳ１００で開始される。Ｓ１０２で、オリジナル文書１２が構造化フォーマットに変換される。
【００４６】
Ｓ１０４で、変換された文書は、テキストの行、１行の一部分、または単一の語のようなテキスト断片に断片化される。テキスト断片は、それらが見出されたページによって識別され、ここで各ページは一般的にオリジナル文書のページに対応する。
【００４７】
Ｓ１０６で、テキスト断片が検査され、それらが２ページ以上に及ぶシーケンスを表現しているか否かが判定される。特に、本システムは、アラビア数字、ローマ数字等のような、格納されたナンバリング方式の集合に依存する。新しい方式は単に後述する単純なプログラマチックインタフェースに適合しさえすればよいので、ナンバリング方式の集合は拡張可能である。
【００４８】
ナンバリング方式の任意の所与の集合に対し、シーケンス化ステップＳ１０６は、３つまたは４つのサブステップ、すなわちシーケンスの列挙（Ｓ１０８）、最適化（Ｓ１１０）、オプションとして検証（Ｓ１１２）、およびページへの関連付け（Ｓ１１４）を使用することができる。これらのステップは、連続して、または１つ以上のリターンループとして実行することができる。Ｓ１０８で、テキスト断片の連続文書ページにわたって発生するシーケンスであって、（ａ）全て同一のナンバリング方式（例えば全てローマ数字）に属するシーケンス、および（ｂ）増分シーケンスを形成するシーケンスが識別される。このステップは、そのようなシーケンスである可能性のある、２つ以上のテキスト断片からなるシーケンスの全てを識別することを含みうる。
【００４９】
Ｓ１１０で、識別されたシーケンスにスコア付け関数を適用することによって、重複しないシーケンスの最適部分集合が、最大で文書全体に及ぶ範囲で選択される。
【００５０】
Ｓ１１２で、各ページは、文書のそのページ部分に対して選択された、シーケンス内の対応する項と関連付けられる。Ｓ１１２はさらに、欠落した番号についてシーケンスを外挿することを含むことができる。Ｓ１１２段階が終わった後にも、依然として関連付けられる項が無いページがありうる。
【００５１】
Ｓ１１４で、最適シーケンスの検証および／または欠落したページ番号の識別のために、文書に対してさらなる処理を任意選択的に行なうことができる。１実施形態では、このステップは、Ｓ１１０で識別された最適シーケンスに１つ以上のページ番号が欠落している（穴がある）場合にのみ実行される。別の実施形態では、Ｓ１１４は、穴が識別されるか否かに関係なく実行することができる。Ｓ１１４に続いて、ステップＳ１１０およびＳ１１２を繰り返して、新しい最適シーケンスを確立することができる。任意選択的に、Ｓ１１４が実行される場合、Ｓ１１４はＳ１１２に先行してもよい。
【００５２】
Ｓ１１６においてコンピュータで実行されるステップは、Ｓ１１２および／またはＳ１１４の出力に基づいて開始することができる。このさらなる処理ステップは、次のうちの１つ以上を含むことができる。
【００５３】
ａ）文書またはそのページに、割り当てられた項に由来する情報を含む、例えばＸＭＬタグの注釈を付ける（Ｓ１１８）。
【００５４】
ｂ）デジタル文書からオリジナルページ番号に対応する識別された項のシーケンスの一部または全部を削除する（Ｓ１２０）。
【００５５】
ｃ）デジタル文書からオリジナルページ番号に対応する識別された項のシーケンスに従って文書に索引を付ける（Ｓ１２２）。
【００５６】
ｄ）特に、オリジナルページ番号が欠落しているか、あるいは欠落しているように見えるページについて、デジタル文書の一部または全ての語を表示する（Ｓ１２４）。
【００５７】
本方法はＳ１２６で終了する。
【００５８】
ナンバリング方式は一般的に、定義された形式および定義された増分性（ｉｎｃｒｅｍｅｎｔａｌｉｔｙ）を有するものと定義することができる。「形式」とは、ナンバリング方式が認めるページ番号の統語論的形式を定義していることを意味する。例えばアラビア数字方式の統語論的形式は、一連の数字から構成される。「増分性」とは、ナンバリング方式のインスタンス（実体）が、一連のページにわたってページ番号の増加を実施する状態を維持することを意味する。ナンバリング方式はシーケンスに穴を容認することも、容認しないこともあり、各穴はページ番号が見つからない構造化文書のページに対応する。
【００５９】
穴が容認される場合、欠落した値のための外挿を実行することができる。外挿は一般的に、シーケンスの形式が許容可能な信頼度でシーケンスの外挿を可能にする場合、穴のあるページに、シーケンスにおける先行ページの値の次の値を割り当てることを含む。
【００６０】
１実施形態では、ナンバリング方式の集合は以下のナンバリング方式の一部または全部を含み、それらは各々、順序シーケンスを定義する文字および／または数字のような構文解析可能な文字の集合に基づく。
【００６１】
１．アラビア数字：  統語論的形式は一連の数字であり、このナンバリング方式の制約条件は、連続するページに対応するシーケンスの連続する項の間に＋１が観察されることである。欠落した番号は許容でき、＋１の制約条件に基づいて考慮される。欠落番号の外挿も可能である。
【００６２】
２．ローマ数字：  統語論的形式は大文字および小文字の両方による一連のローマ数字、すなわちｉ、ｉｉ、ｉｉｉ、ｉｖ等であり、このナンバリング方式の制約条件は、対応するアラビア数字の場合と同じである。
【００６３】
３．単一文字：  統語論的形式は、一般的に同一ケース（即ち大文字または小文字）のａ、ｂ、ｃ、ｄのような一連の文字であり、このナンバリング方式の制約条件は、連続するページに対応するシーケンスの連続項の間に、通常のアルファベット文字列における＋１が観察されることである。欠落文字は許容でき、＋１の制約条件に基づいて考慮される。欠落番号の外挿も可能である。
【００６４】
４．複合ナンバリング：  このナンバリング方式は、ナンバリング方式「１．３．１、１．３．２、１．３．３・・・」、または「ｔｏｃ‐１、ｔｏｃ‐２、ｔｏｃ‐３」、または「Ａ‐５、Ａ‐６、Ａ‐７」のようなアラビア数字／ローマ数字／文字番号の組合せによる任意の構成を対象とする。このようなナンバリング方式は、任意の文字列定数、区切り記号、および１つ以上のアラビア数字／ローマ数字／文字値から形成された値を許容することができる。実際には、可能な区切り記号は［＼  ｜＼ｔ｜＼．｜，｜；｜：｜／｜％｜＆｜＼＊｜＼−｜＿｜＼＋＼］＋のような正規表現によって定義される。テキスト断片はこれに従ってトークン化され、トークンはアラビア数字／ローマ数字／文字ファミリに対して照合される。合致しないトークンは、シーケンスの文字列定数とみなされる。これに対し、そのようなシーケンスの最初に観察されるページ番号は、区切り記号、数字ファミリ、および文字列定数（すなわち区切り記号でもアラビア数字／ローマ数字／文字ファミリでもないもの）から成るシーケンスプロトタイプを定義する。それは、シーケンスの全ての残りの項の統語論的形式を定義する。欠落番号は容認することができる。
【００６５】
複合ナンバリング方式における欠落番号のための外挿は、より単純なナンバリング方式の場合より難しくなりうる。
【００６６】
５．一般的アスキーファミリ：  該ナンバリング方式は英数字で始まるどんな文字列でも許容し、ここで全ての文字列は、最初に列に受け入れられた（許容された)テキスト断片と同じ長さを有する。増加制約条件は、１つの文字が（アスキー／ユニコード数字コードに関して）＋１に従うことを除き、２つの連続項が厳密に等しいことを確認することから構成される。一般的に、例えばＡＺからＢＡへの推移は制約条件に従わず、ＢＡ、ＢＢ、ＢＣ等に対して新しいシーケンスが開始される。欠落番号はこのナンバリング方式で容認される。外挿は一般的に不可能である。
【００６７】
一般的アスキーはかなり包括的であり、ほとんどの事例を網羅する。テキスト断片は、ノイズの影響を最小化するために、上に提示したナンバリング方式の順番でこれらのファミリに照らして検査されることができる。
【００６８】
本方法のＳ１０８には次の方法を含みうる。
【００６９】
１．テキスト断片が方式の形式に従うか否かを検査するクラスメソッド「ｆｉｔ」。
【００７０】
２．ページの処理前および処理後に呼び出され、そのファミリのシーケンスオブジェクトの増分状態およびシーケンスに存在する可能性のある穴を処理する、２つのインスタンスメソッド「ｓｔａｒｔＰａｇｅ（ページ始め）」および「ｅｎｄＰａｇｅ（ページ終わり）」。
【００７１】
３．テキスト断片がシーケンスの内部状態の観点からそのシーケンスによって受け入れられるか否かを検査するインスタンスメソッド「ａｃｃｅｐｔ（受入れ）」。
【００７２】
４．物理的ページに対し実際のページ番号または外挿ページ番号を割り当てるインスタンスメソッド「ｅｘｔｒａｐｏｌａｔｅ（外挿）」。
【００７３】
５．新しいファミリは、ＮｕｍｂｅｒｉｎｇＳｃｈｅｍｅ（ナンバリング方式）クラスの特殊化（specialization）である。この設計は、必要に応じて新しいファミリを追加することが容易に可能である。
【００７４】
列挙ステップ（Ｓ１０８）では、定義されたナンバリング方式の１つ以上に従う可能性のある全ての項のシーケンスの探索が行なわれる。例えば、連続的なページの集合にわたって、文書のテキスト断片により作ることのできる全てのシーケンスを列挙するために、全てのページを順々に、かつ１ページ毎に全てのテキスト断片を検討して、徹底的な（greedy）列挙が実行される。
【００７５】
シーケンスの評価を支援するために、シーケンスのカバレージ（範囲）および長さを次のように定義することができる。すなわち、シーケンスの「カバレージ」はシーケンスの断片（項）が観察された最初のページから最後のページまでのページの集合である。シーケンスの「長さ」はその中に観察される項の個数である。その構造から、シーケンスの長さと穴の個数の和は、そのカバレージの基数に等しい。例えば、４つの項および２つの穴を含むシーケンスは、長さ４、およびカバレージ基数６を有する。一般的に、シーケンスは項で始まり、項で終わる。
【００７６】
選択ステップ（Ｓ１１０）は、Ｓ１０８で識別されたシーケンスから、その最適な部分集合を選択することを含む。選択の規則は一般的に短いシーケンスより長いシーケンスの選択を優先し、シーケンスの重複（２つ以上の選択されたシーケンスからの項を含むページ）を回避または防止する。実施形態によっては、長さおよび／またはカバレージに関して閾値に満たないシーケンスは、考慮から排除することができる。
【００７７】
シーケンスの最適集合の選択を支配する規則は、項および／またはシーケンスが所定の選択基準にどの程度従うかを反映するスコアを、各項および／またはシーケンスに割り当てることを含むことができる。
【００７８】
例として、図３は８ページの文書に対するアルゴリズムの適用をシミュレートするものであり、そこには４つの可能性としてのシーケンスが識別されている（シーケンス１、シーケンス２、シーケンス３、およびシーケンス４）。シーケンスは、文書のページ数に対応するｘ軸およびシーケンスに対応するｙ軸の行列に配置される。シーケンスはその開始点のみで取ることができるというという要件を前提として、図３の矢印は、全ての可能な推移を示す。シーケンスの各項または穴はノード３８によって表わされる。行列を開始するために、例えばスコアリング関数を用いて、各ノード３８にスコアが割り当てられる。文書の始めから終わりまでの経路のスコアは、訪問されたノードのスコアの和である。長いシーケンスを優先するために、項を表わすノードのスコアは、その関連するシーケンスの長さと共に増加する。穴のスコアは、項のスコアより低く、例えば零とすることができる。一般的に、所定の経路で通過されたシーケンスの全ての項ノードは、同じスコアを有する。シーケンスが部分的に通過されるだけである場合、スコアリング関数は短いシーケンスについて計上するために再計算される。
【００７９】
次の形のスコアリング関数を使用することができる。
【００８０】
スコア（ノード）＝１−ｆ／長さ（シーケンス）
【００８１】
ここでｆは定数であり、ここでは長さファクタと呼ばれる。
【００８２】
シーケンス（スコアされるノードがその一部を形成する）の長さは、シーケンスの一部分だけが経路の一部を形成する場合、その一部分だけが長さの判定に使用されることを除き、上に定義した通りである。長さファクタｆは、任意の適切な値であってよい。例えばｆが２である場合、２つの項を有するシーケンスでは、各ノードのスコアは零である。ｆは少なくとも１、例えば１．５から５までとすることができる。
【００８３】
最適スコアを計算するために、経路をその終端（最後の）ノードから経路の最初のノードに逆向きに移動することができる。一般的に各ノードで、最高スコアを出す経路がたどられる。各ノードを通過するたびに、そのスコアが経路の総スコアに加算される。
【００８４】
各ページにページ番号を関連付けることを含むＳ１１２は単に、最善（最高スコア）の経路を選択することによって達成される。このように、この経路におけるこれらのシーケンスの項は、文書のオリジナルページ番号として使用することができる。シーケンスの穴は自動的に埋めることができる。
【００８５】
任意選択的な検証ステップＳ１１４では、文書からの追加情報を使用して、選択されたシーケンスが検証され、および／またはさらなる項が識別される。例えば本方法は、検出されたページ番号のタイポグラフィおよび／または位置に関して、それらの間の規則性を見出すことを含むことができる。許容可能な信頼度でページ番号を他のテキストから区別することを可能にする規則性がひとたび定められると、それを使用して、ページ番号が割り当てられていなかったページのページ番号を表わす文字を識別することができる。
【００８６】
ステップＳ１１４に続いて、本方法はＳ１１０に戻ることができ、そこでＳ１１４によって変更された列挙シーケンスにビタビアルゴリズムを適用することによって、該アルゴリズムが再実行される。ビタビアルゴリズムのこの２回目またはその後の再実行は全て、Ｓ１１０の以前の実行で使用されたものより小さい長さファクタｆを用いて実行される。
【００８７】
１実施形態では、監督の下で機械学習法を利用して、検証段階（Ｓ１１４）を改善することができる。主要な「機能（関数）的」手法で検出された番号は、タイポグラフィおよび位置に基づく特徴セットを持つ訓練セットとして使用することができる。第１および第２段階は従ってテキスト断片の異なる特性に依存する。
【００８８】
例えば、そのような機械学習法を使用する方法を図４に示す。本例示的方法は最初にＳ１１０までは図２の方法と同様に、ビタビステップ（Ｓ１１０）で第１長さ制約値ｆ＝ｆ1を使用して、文書に対して実行される。Ｓ１１４は、以下のサブステップを含むことができる。サブステップＳ１１４Ａでは、Ｓ１１０でページ番号を含むと認識されたテキスト断片の少なくとも１つのグループまたは全部が選択される。
【００８９】
Ｓ１１４Ｂでは、機械学習法（例えばロジスティック回帰）が以下の入力データを用いて適用される。
【００９０】
ａ．選択されすでに認識されたページ番号の項に対応する肯定的な例。
【００９１】
ｂ．ページのテキスト断片の残部の中から無作為に引き出された否定的な例。
【００９２】
ｃ．使用される特徴（機械学習法のためにテキスト断片をいかに特徴付けるか）は、次の中から、すなわちページ内のテキスト断片の位置、フォント名、フォントサイズ、フォント色、他のレイアウト情報、およびそれらの組合せから選択することができる。
【００９３】
選択される否定的な例の数は肯定的な例の数に比例させることができ、例えばそれらが文書に現われるのと略同一比率とすることができる。否定的な例は、ページ番号がシーケンスの一部と認識されたページのみから引き出すことができる。
【００９４】
機械学習法はこれらのデータで訓練され、モデルが生成される。次いでモデルは、例えば潜在的なページ番号を識別するために、テキスト断片データ全体に、または以前にページ番号と識別されなかったテキスト断片のみに、適用される。
【００９５】
Ｓ１１４Ｃでは、Ｓ１０８と類似のステップを実行して、１１４Ｂで「潜在的ページ番号」と識別されたテキストが、Ｓ１１０で以前に識別されたシーケンスの部分集合を持つシーケンスを形成するかどうかを調べる。
【００９６】
Ｓ１１４Ｄでは、Ｓ１１０について記載された方法が、以下の変化を加えて繰り返される。第一に、第２長さファクタｆ＝ｆ2が使用される。ここで値ｆ2はｆ1より低くすることができる。例えばｆ2は１より低くすることができ、それにより長さ１のシーケンスの検出が可能になる。第二に該アルゴリズムは、例えば、Ｓ１１０で（高いｆ値を用いて）すでに識別されたテキスト断片のシーケンスの部分集合のみ、およびＳ１１４Ｂで「潜在的ページ番号」と識別された追加のテキスト断片を使用して、Ｓ１１０より少ないシーケンスを調べることができる。これらの潜在的ページ番号は、Ｓ１１４Ｃでシーケンスに追加されるか、あるいは１つ以上の項を有する新しいシーケンスとみなすことができる。第三に、シーケンスはＳ１１４Ｄの場合、わずか１つだけのテキスト断片の項を持つものであってよい。ページ番号の見込みがあるこれらのテキスト断片だけがＳ１１４Ｄで考慮されるので、長さ制約（パラメータｆ2）は緩和することができ、長さ１のシーケンスが認識される。
【００９７】
Ｓ１１４Ｄの後にＳ１１２が続き、Ｓ１１４で識別された項を文書のそれらのそれぞれのページに関連付けることができる。次いで該方法は、図２の方法と同様に、Ｓ１１６に進むことができる。
【００９８】
別の実施形態では、シーケンスのためのスコアリング関数は、シーケンスの項の類似性を考慮に入れる１つ以上のファクタを含むことができる。
【００９９】
スコア（ノード）＝１−ｆ／長さ（シーケンス）＊ｆｔ＊ｆｓ＊ｔｐ
【０１００】
ここでｆｔはフォントタイプファクタ、ｆｓはフォントサイズファクタ、ｔｐは項位置ファクタ、等であり、シーケンスの項の１つ以上が異なるフォントタイプを有する場合、そのノードには他のノードより低いｆｔ値を与えることができる。
【０１０１】
１実施形態では、シーケンスを列挙する（Ｓ１０８）ときに、所与の点以後でまばらになりすぎるシーケンスは非アクティブにされる（即ち使用されない）。例えば所定の最低シーケンス密度（シーケンスのページカバレージに対する項の観察数の比率）が適用される。ひとたび密度がこの値未満に低下すると、文書の各後続ページが検査されるときにシーケンスに項はもはや追加されず、識別された最後の項に対応する固定されたカバレージのままとなる。
【０１０２】
例えば図５は、まばらに番号が付けられた７ページのシーケンスを示す。各ページの下のイタリック体の数字は、対応するアラビア数字のシーケンスの各ページまでの密度を示す。最低シーケンス密度に応じて、このアラビア数字のシーケンスは、文書で遅かれ速かれ使用されなくなる。例えば最低シーケンス密度が０．４である（つまり、５つのノードでわずか２つの穴しか許されない）と仮定すると、このシーケンスでは５ページ目で最低値に達し、それ以上のノードはシーケンスに追加されず、シーケンスはシーケンスの穴とみなされる５ページで非アクティブにされる（したがってシーケンスは４ページで終了する）。こうして、シーケンスが非アクティブ化された後で発生するページに、シーケンスに従う項が存在したとしても、その項はシーケンスに現われない。
【０１０３】
別の変形例では、所与のページに現われる全てのテキスト断片を考慮するのではなく、全て合わせてもページの全面積より小さい面積の、所定の１以上の領域内のテキスト断片だけが考慮される。例えば、ページの縁に近い余白内にあるテキスト断片がシーケンスの潜在的なページ番号とみなされる。別の実施形態では、先行する項が見出された領域だけが考慮される（それは左右の見開きページに対し、項の可能なシフトを考慮に入れることができる）。
【図面の簡単な説明】
【０１０４】
【図１】本発明に係る、オリジナル文書のページ番号検出のための装置の機能ブロック図である。
【図２】オリジナル文書のページ番号検出のための方法のフローチャートである。
【図３】シーケンスを含む４つの状態を示す、８ページの文書に対してアルゴリズムを適用した場合を示す図である。
【図４】本発明に係る、オリジナル文書のページ番号検出の別の方法のフローチャートである。
【図５】オリジナル文書のページおよび、まばらになりすぎるとシーケンスが停止するように構成された方法で前記ページにおいて識別されたシーケンスの項を概略的に示す図である。
【図６】ページ番号シーケンスの項のソースとみなされるページの領域を示す図である。
【符号の説明】
【０１０５】
１２  非構造化デジタル文書
１４  変換プロセッサ
１６  テキストフラグメンタ
１８  ページおよびテキストブロック
２０  物理的文書
２２  スキャナ
２４  ＯＣＲ
２６  テキスト断片シーケンス化モジュール
２８  選択モジュール
３０  ページ関連付けモジュール
３２  デジタル文書
３４  検証モジュール
３６  メモリ
【図１】
2008123528.tif 000003
【図２】
2008123528.tif 000004
【図３】
2008123528.tif 000005
【図４】
2008123528.tif 000006
【図５】
2008123528.tif 000007
【図６】
2008123528.tif 000008