(57)【特許請求の範囲】
【請求項１】
文書のヒストグラムに基づいて、各ページの特徴を特定する段階と、
前記文書の複数のページの特定されたコンテンツを単一の画像にマージすることにより、複数のページ画像を生成する段階と
前記文書に対応する複数のページ画像から、表示するページ画像を選択する段階であって、前記複数のページ画像はマージされたページ画像を含み、各マージされたページ画像は１つの画像にマージされた、前記文書の複数の連続するページ画像のうちのコンテンツを有する段階と、
選択されたページ画像をディスプレイに順次表示する段階とを有し、
前記複数のページ画像は、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第２のセットを含み、
さらに、表示する前記ページ画像の選択は、ユーザ入力が示す前記文書の表示レートが第１のレートである場合、マージされたページ画像の第１のセットを選択し、前記ユーザ入力が示す前記文書の表示レートが第２のレートである場合、マージされたページ画像の第２のセットを選択し、
前記各ページの特徴を特定する段階は、
各スキャンラインのページ画像中の非バックグラウンドピクセルの計数に基づきヒストグラムを計算する段階と、
前記ヒストグラムからの情報に基づいて特徴を見つける段階とを有し、
前記複数のページを生成する段階は、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第１のセットを生成する段階と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第２のセットを生成する段階であって、前記第２のセットのページ画像の数は前記第１のセットのページ画像の数の倍数である段階と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第３のセットを生成する段階であって、前記第３のセットのページ画像の数は前記第２のセットのページ画像の数の倍数である段階とを有し、
前記ページ画像を選択する段階は、速さ制御入力に基づいて前記第１、第２、または第３のセットを選択する段階を有する、
方法。
【請求項２】
前記特徴を見つける段階は、
行の高さと間隔を見つける段階と、
ヘッダを見つける段階と、
フッタを見つける段階と、
段組を見つける段階と、
ブランク領域を見つける段階と、
テーブルを見つける段階と、
グラフィカル画像を見つける段階と、
テキスト領域を見つける段階とのうちの１つ以上を有する、請求項１に記載の方法。
【請求項３】
前記特徴を見つける段階は、テキストを分析して、ヘディング、太字、ジャスティフィケーション、センタリング、行高さ、行間隔、インデントからなるグループの１つ以上を特定する段階を有する、請求項１に記載の方法。
【請求項４】
選択されたページ画像を前記ディスプレイに順次表示する段階は、前記選択されたページ画像を前向きまたは後ろ向きに表示する段階を有し、前記入力制御に基づいて１つ以上の選択されたページ画像にジャンプバックする段階を更に有する、請求項１に記載の方法。
【請求項５】
コンピュータに、
文書のヒストグラムに基づいて、各ページの特徴を特定する段階と、
前記文書の複数のページの特定されたコンテンツを単一の画像にマージすることにより、複数のページ画像を生成する段階と
前記文書に対応する複数のページ画像から、表示するページ画像を選択する段階であって、前記複数のページ画像はマージされたページ画像を含み、各マージされたページ画像は１つの画像にマージされた、前記文書の複数の連続するページ画像のうちのコンテンツを有する段階と、
選択されたページ画像をディスプレイに順次表示する段階とを実行させるコンピュータプログラムであって、
前記複数のページ画像は、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第２のセットを含み、
さらに、表示する前記ページ画像の選択は、ユーザ入力が示す前記文書の表示レートが第１のレートである場合、マージされたページ画像の第１のセットを選択し、前記ユーザ入力が示す前記文書の表示レートが第２のレートである場合、マージされたページ画像の第２のセットを選択し、
前記各ページの特徴を特定する段階は、
各スキャンラインのページ画像中の非バックグラウンドピクセルの計数に基づきヒストグラムを計算する段階と、
前記ヒストグラムからの情報に基づいて特徴を見つける段階とを含み、
前記複数のページを生成する段階は、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第１のセットを生成する段階と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第２のセットを生成する段階であって、前記第２のセットのページ画像の数は前記第１のセットのページ画像の数の倍数である段階と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第３のセットを生成する段階であって、前記第３のセットのページ画像の数は前記第２のセットのページ画像の数の倍数である段階とを有し、
前記ページ画像を選択する段階は、速さ制御入力に基づいて前記第１、第２、または第３のセットを選択する段階を有する、
コンピュータプログラム。
【請求項６】
前記特徴を見つける段階は、
行の高さと間隔を見つける段階と、
ヘッダを見つける段階と、
フッタを見つける段階と、
段組を見つける段階と、
ブランク領域を見つける段階と、
テーブルを見つける段階と、
グラフィカル画像を見つける段階と、
テキスト領域を見つける段階とのうちの１つ以上を有する、請求項５に記載のコンピュータプログラム。
【請求項７】
前記特徴を見つける段階は、テキストを分析して、ヘディング、太字、ジャスティフィケーション、センタリング、行高さ、行間隔、インデントからなるグループの１つ以上を特定する段階を有する、請求項５に記載のコンピュータプログラム。
【請求項８】
選択されたページ画像を前記ディスプレイに順次表示する段階は、前記選択されたページ画像を前向きまたは後ろ向きに表示する段階を有し、前記入力制御に基づいて１つ以上の選択されたページ画像にジャンプバックする段階を更に有する、請求項５に記載のコンピュータプログラム。
【請求項９】
文書のヒストグラムに基づいて、各ページの特徴を特定する手段と、
前記文書の複数のページの特定されたコンテンツを単一の画像にマージすることにより、複数のページ画像を生成する手段と
前記文書に対応する複数のページ画像から、表示するページ画像を選択する手段であって、前記複数のページ画像はマージされたページ画像を含み、各マージされたページ画像は１つの画像にマージされた、前記文書の複数の連続するページ画像のうちのコンテンツを有する手段と、
選択されたページ画像をディスプレイに順次表示する手段とを有し、
前記複数のページ画像は、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた前記文書のページ画像からのコンテンツを有するマージされたページ画像の第２のセットを含み、
さらに、表示する前記ページ画像の選択は、ユーザ入力が示す前記文書の表示レートが第１のレートである場合、マージされたページ画像の第１のセットを選択し、前記ユーザ入力が示す前記文書の表示レートが第２のレートである場合、マージされたページ画像の第２のセットを選択する
前記各ページの特徴を特定する手段は、
各スキャンラインのページ画像中の非バックグラウンドピクセルの計数に基づきヒストグラムを計算する手段と、
前記ヒストグラムからの情報に基づいて特徴を見つける手段とを有し、
前記複数のページを生成する手段は、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第１のセットを生成する手段と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第２のセットを生成する手段であって、前記第２のセットのページ画像の数は前記第１のセットのページ画像の数の倍数である手段と、
１つの画像にマージされた前記文書のページ画像からコンテンツを有するマージされたページの第３のセットを生成する手段であって、前記第３のセットのページ画像の数は前記第２のセットのページ画像の数の倍数である手段とを有し、
前記ページ画像を選択する手段は、速さ制御入力に基づいて前記第１、第２、または第３のセットを選択する手段を有する、
装置。
【請求項１０】
前記特徴を見つける手段は、
行の高さと間隔を見つける手段と、
ヘッダを見つける手段と、
フッタを見つける手段と、
段組を見つける手段と、
ブランク領域を見つける手段と、
テーブルを見つける手段と、
グラフィカル画像を見つける手段と、
テキスト領域を見つける手段とのうちの１つ以上を有する、請求項９に記載の装置。
【請求項１１】
前記特徴を見つける手段は、テキストを分析して、ヘディング、太字、ジャスティフィケーション、センタリング、行高さ、行間隔、インデントからなるグループの１つ以上を特定する手段を有する、請求項９に記載の装置。
【請求項１２】
選択されたページ画像を前記ディスプレイに順次表示する手段は、前記選択されたページ画像を前向きまたは後ろ向きに表示する手段を有し、前記入力制御に基づいて１つ以上の選択されたページ画像にジャンプバックする手段を更に有する、請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の表示と処理に関し、特に、画像シーケンスを認識可能性を保持しつつ速く表示する方法に関する。
【背景技術】
【０００２】
大部の紙文書の物理的ページ付けは周知のプロセスである。人は、文書の端を折り曲げて、親指で順次自由にページを開けるようにする。折り曲げ方と親指にかける力に応じて、ページはゆっくり開いたり速く開いたりする。このように文書の任意の場所に素早く動き、どんな速さでも各ページを順次見ることができる。情報を処理する能力以外に、速さに限界はない。対照的な色のインクでその紙文書のページに注釈をいれると、非常に速くその文書を何気なくめくってもその注釈は容易に見つけることができる。
【０００３】
電子の領域では、文書のページめくりの電子的類似物は、ある種のスクロールバーを用いた文書のスクロールであり、本技術分野で周知である。例えば、ポインティングデバイス（例えばマウス）を用いてサムバー（thumb  bar）を制御することは通常行われている。サムバーを動かすと、現在のサムバーの位置に対応するページが選択され表示されて、文書のページが表示される。１頁の表示が完了すると、そのプロセスが繰り返される。サムバーをゆっくり動かすと、各ページを見ることができる。一般的には、サムバーを速く動かすと、ページのほんの一部のみが表示される。電子システムには代替物もある。その一部では、ユーザはページのサムネイルの配列を見る。かかるシステムはページ数が少ない場合はよいが、大きな文書ではうまくいかない。
【０００４】
明らかに外観によるナビゲーションと認識の点において、現在の電子的システムは物理的プロセスよりも大きく劣っている。重要なページを見落としやすく、ナビゲーションプロセスの際に文書のコンテンツと構造を把握しにくい。
【０００５】
もちろん、電子システムが紙をエミュレーションすることを妨げる問題が多数ある。キーになる問題の１つは「ディスプレイのリフレッシュレート」である。電子装置のハードウェアディスプレイシステムは、ある一定のレートでその画像を再表示する。一般的なコンピュータディスプレイは毎秒６０乃至８０回リフレッシュするだけである。これは、ディスプレイ装置上の画像をいかに頻繁に変更できるかの上限となる。
【０００６】
さらに、ディスプレイ装置上に画像を描画するために、システムのある構成要素（通常はソフトウェア）が、その画像を装置の「ディスプレイバッファ」に置くように構成されねばならない。画像をディスクから読み出すか、または象徴的なフォーマットから構成しなければならない場合、ディスプレイのリフレッシュレートよりもディスプレイバッファ内の生成と配置により長い時間がかかることもある。この「システムフレームレート」は、ディスプレイ装置が一連の画像を表示できる速さの別の、より厳しい限界になる。
【０００７】
このように、ディスプレイレートとシステムフレームレートの両方が、ページを「スキップ」せずにどのくらい早く文書をスキャンできるかの限界となっているように見える。これはまさしくＤＶＤプレーヤやＶＣＲ（Video  Cassette  Recorder）が多数のフレームをスキップすることにより、標準速度よりも速く再生するやり方である。ユーザがスキャンしている文書中のページをスキップするのはよくない考え方である。検索を実行している特徴を見逃すおそれがあるからである。
【０００８】
ＶＣＲ、ＤＶＲ（Digital  Video  Recorder）、またはＤＶＤシステム、または少し相違するがオーディオテープやＣＤオーディオシステムは、早送り動作を実行できる。かかるシステムはほとんどが、ユーザが止まれと指示した時に、その場所で止まる。Ｔｉｖｏシステムのように、ユーザが停止したい場所にジャンプして戻る努力をするものもある。これらのシステムは異なる速さで早送りができるので、前進していた速さに応じた量だけジャンプで戻る。
【０００９】
自動的に停止する早送り動作を実行するシステムもある。かかるシステムの例はテレビ番組再生システムである。テレビ番組再生システムでは、コマーシャルをスキップするためのスキャンフォワードをいつ停止するかはクロマバランスの変化で制御されている。クロマバランスの変化はコマーシャルの終わりと所望の番組素材の再開を知らせる。
【００１０】
画像ベースの文書分析システムは同様の機能を実行する。この分野では、システムが画像を分析してパターンを見つけ構造の推測を試みる。推測されたかかる構造を用いて、ナビゲーションを支援したり、ユーザが画像や関心文書を見つけるのを助けることができる。検索を洗練してユーザが前に見た文書または画像の認識を助ける特徴指向システムが存在する。
【００１１】
ページ指向または画像指向のシステムのユーザに現在フォーカスしている領域に関してユーザを向かわせる役に立つある種の情報を提供することにより、ナビゲーションを支援する問題は新しいものではない。実際、ヒューマン−コンピュータインターラクションの研究開発コミュニティでは、かかる「フォーカス及びコンテクスト」サポーティングシステムに多大な仕事がなされてきた。しかし、かかるシステムは、ユーザがフォーカスしているページまたは画像のコンテクストを理解できるある種の概要を表示することにより、この機能を実行する。
【００１２】
情報可視化システムは、基礎となるデータに類似性を発見し、（システムではなく）ユーザがパターンや興味深い減少を区別できるような方法で、その類似性を視覚的に提示する。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
ここで、画像の長いシーケンスを短い時間で表示する方法とシステム（装置）を開示する。
【課題を解決するための手段】
【００１４】
一実施形態において、本方法は、画像ベースの文書に対応する複数のページ画像から表示するページ画像を選択する段階であって、前記複数のページ画像がマージされたページ画像を含み、各マージされたページ画像は１つの画像にマージされた画像ベース文書の複数の連続するページ画像から顕著なコンテンツを有する段階と、前記選択されたページ画像をディスプレイに順次表示する段階とを有する。
【発明を実施するための最良の形態】
【００１５】
電子文書を一覧（viewing）し、交換し、操作する方法とシステムを説明する。一実施形態では、表示システムは、大きな文書のコンテンツを素早く表示することができる。一実施形態では、ページが表示される速さは毎秒千ページに近づくであろう。一実施形態では、これは単一ページ画像中に複数ページを結合（マージ）することにより達成される。例えば、本システムは１６ページを単一画像に結合またはマージ（merge）する。マージされた画像は、マージされたページの一般的なレイアウトとともに、ページの区別できるコンテンツを保存している。区別できるまたは顕著なコンテンツには、認識できる特徴が含まれる。容易に認識可能な特徴には、例えば、写真、チャート、テーブル、章ヘッディング（chapter  headings）、セクション境界、インデックスタブ、手書きの注釈等が含まれる。ここでの目的のため、これらの顕著な（例えば、めだつ、目を引く、容易に認識できる）特徴は、ここでは「文書ランドマーク（document  landmarks）」と呼ぶ。これらの顕著なコンテンツは、複数のページグループを素早くスキャンした時にユーザが気づくものである。これは、スムースかつ予測可能なレートでページを表示することにより容易になる。一実施形態では、かかるシステムにおいて、各ページはページナビゲーションプロセス中に見ることができる。
【００１６】
ページ画像は表示するときにユーザによる注釈がなされていてもよい。一実施形態では、注釈方法により素早いナビゲーション中にマークが容易に見つかる。
【００１７】
以下の説明では、詳細に記載して本発明をより詳しく説明する。しかし、言うまでもなく、本発明はこれらの詳細がなくても実施することができる。他の場合では、詳細事項ではなくブロック図に周知の構造と機器を示すが、これは本発明が不明瞭になることを避けるためである。
【００１８】
以下の詳細な説明の一部は、コンピュータメモリ中のデータビットに対する操作のアルゴリズムと記号による表現により表されている。これらのアルゴリズムによる説明と表現は、データ処理技術の当業者が、自分の仕事内容を他の分野の人に最も効果的に伝える手段である。ここで、また一般的に、アルゴリズムとは、所望の結果に導く自己矛盾のないステップのシーケンスである。このステップは、物理量の物理的操作を要するステップである。通常、必ずしも必要ではないが、この物理量には、記憶し、伝達し、結合し、比較し、操作できる電気的または磁気的信号の形をとる。主に一般的な使用のために、これらの信号をビット、値、要素、記号、文字、式、数字等で表すと便利な時がある。
【００１９】
しかし、これらの用語や類似の用語は適当な物理量と関連しているべきであり、これらの物理量に付された便利なラベルに過ぎないことに留意すべきである。特に断らなければ、以下の説明から明らかなように、言うまでもなく、この明細書全体において、「処理」、「算出」、「計算」、「判断」、「表示」等の用語を用いた説明は、コンピュータシステム、類似の電子的計算機器の動作やプロセスであって、コンピュータシステムのレジスタやメモリ内の物理的（電子的）量として表されたデータを操作し、コンピュータシステムメモリやレジスタ、その他の情報記憶装置、伝送機器、表示機器内の物理量として同様に表された他のデータに変換するものの動作や処理を指す。
【００２０】
本発明は、また、これらの動作を実行する装置にも関する。この装置は、必要な目的のために特に構成されたものでもよく、コンピュータ中に記憶されたコンピュータプログラムにより選択的に起動または再構成された汎用コンピュータを有していてもよい。かかるコンピュータプログラムは、コンピュータによる読み取りが可能な記憶媒体に記憶することができる。このような記憶媒体には、フロッピー（登録商標）ディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスク等のいかなるタイプのディスクも含まれ、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気または光カード、電子的命令を格納するのに好適な、コンピュータシステムバスに結合されたいかなるタイプの媒体も含まれるが、これらに限定されるわけではない。
【００２１】
ここで説明するアルゴリズムとディスプレイは、特定のコンピュータその他の装置に本質的に関係するものではない。いろいろな汎用システムをここでの教示に従ったプログラムで用いることができるし、必要な方法ステップを実行することに特化した装置を構成しても便利である。これらのシステムに必要な構成を以下に示す。また、本発明は特定のプログラミング言語により記述されるものではない。言うまでもなく、いろいろなプログラミング言語を用いてここに説明する本発明の教示を実施できる。
【００２２】
機械読み取り可能媒体には、機械による読み取りが可能な形式で情報を記憶または伝送するいかなるメカニズムも含まれる。例えば、機械読み取り可能媒体には、読出専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）；磁気ディスク記憶媒体；光記憶媒体；フラッシュメモリデバイス；電子的、光学的、音響的その他の形式の伝送信号（例えば搬送波、赤外線信号、デジタル信号等）などが含まれる。
【００２３】
［マージされたページ表示の概要］
紙のように文書のページを速く表示するシステムを説明する。本システムは、文書のページのセグメント化を実行し、顕著な文書ランドマーク（landmark）と呼ぶ、文書内の顕著な特徴を特定する。複数のページのこれらの特徴は単一のページ画像にマージ（merge）される。本システムは、文書ランドマークと連続した数頁の通常テキストの一部のみを含む「マージされたページ画像（merged  page  images）」を表示する。
【００２４】
一実施形態では、マージされたページ画像の複数のセットがある。例えば、１つのセットは、各ページ画像が２ページのマージされた顕著なコンテンツを含むものである。他のセットは、４ページからのマージされた顕著なコンテンツを有するマージされたページ画像を含み、他のセットは８ページをマージし、他のセットは１６ページをマージし、以下同様である。このように、一実施形態では、マージされたページ画像はエンハンス（enhanced）され、文書ランドマークを強調し、通常のテキストを反強調（de-emphasize）する。
【００２５】
かかるマージ画像を表示することにより、ディスプレイのリフレッシュレートとシステムフレームレートの限界を解消することができる。例として、組み合わされたハードウェア／ソフトウェアシステムが毎秒３０ページサイズの画像を描画（render）及び表示することができる場合、ユーザは、３０枚のマージされた画像であって各画像は連続する４ページの顕著なコンテンツを含む画像を作成することにより、毎秒１２０ページの速さを出すことができる。一実施形態では、ページ画像が表示される速さにより、どのセット、つまり、マージされたページ数の組み合わせのいずれかを表示するかが変わる。画像をめくる速さが速くなるにつれて、表示されるページ画像はより多数のページ画像を含むマージページを表すことが可能となる。
【００２６】
一実施形態では、手書きの注釈を表示する際にマージ画像に結合する。あるいは、注釈は特定された顕著なコンテンツ特徴とマージされ、マージ画像の一部になる。何れの場合にも、かかる注釈は表示される。
【００２７】
一実施形態では、ユーザはナビゲーションの速さと方向を制御する。これは、例えば、シャトルホイール（shuttlewheel）等のユーザ入力装置による。
【００２８】
ユーザが高速スキャンの途中で停止したとき、システムは、ユーザが停止を意図した場所との結論がなされるページ（例えば、ユーザの注意を引いたであろう画像）に「ジャンプ戻り（jump  back）」を試みる。
【００２９】
図１は、画像表示プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【００３０】
図１を参照して、本プロセスは画像ベース文書のページの顕著なコンテンツを特定することにより始まる（処理ブロック１０１）。一実施形態では、処理ロジックは、画像ベース文書の各ページのヒストグラムを計算し、そのヒストグラムからの情報に基づいて、各ページの特徴を見つけることにより、顕著なコンテンツを特定する。
【００３１】
画像ベース文書のページの顕著なコンテンツを特定した後、処理ロジックは、その画像ベース文書の複数ページの特定した顕著なコンテンツを単一ページにマージすることにより、マージしたページ画像を生成する（処理ブロック１０２）。
【００３２】
マージページが生成されると、処理ロジックは、画像ベース文書に対応する複数のページ画像から表示するページ画像を選択する（処理ブロック１０３）。その複数ページ画像はマージページ画像を含み、各マージページ画像は１つの画像にマージされた画像ベース文書の複数の連続するページ画像からの顕著なコンテンツを有する。
【００３３】
一実施形態では、表示するページ画像の選択は、選択されたページ画像が順次表示されるべきレートを示す制御情報（例えばユーザ入力）に基づいてページ画像のサブセットを選択することにより実行される。一実施形態では、ページ画像は、１つの画像にマージされた画像ベース文書のいくつかのページ画像からの顕著なコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた画像ベース文書の異なる数のページ画像からの顕著なコンテンツを有するマージページ画像の第２のセットを含む。さらに、一実施形態では、処理ロジックは、文書が表示されるべき速さすなわちレートが１つのレートである場合、マージページ画像の第１のセットを選択し、文書が表示されるレートが別のレートである場合、マージページ画像の第２のセットを選択する。つまり、ユーザが希望する表示の速さに応じて、２種類のマージページを使い分けることができる。
【００３４】
ページ画像を選択した後、処理ロジックはディスプレイに選択されたページ画像を順次表示する（処理ブロック１０４）。選択されたマージ（された）ページ画像を順次表示することにより、文書をディスプレイのリフレッシュレートを超える速さでスキャンすることが可能になる。選択されたページ画像は前向きまたは逆（後ろ）向きの順序で表示される。
【００３５】
選択されたページ画像を順次表示する間、処理ロジックは、入力制御に基づき１つ以上の選択されたページ画像にジャンプバック（ジャンプ戻り）してもよい。処理ロジックは、ページ画像に関連する興味度（interestingness  measure）に基づきページ画像にジャンプバックしてもよい。
【００３６】
以下の説明は文書のページに関することに留意せよ。しかし、ページ画像は文書に由来するものである必要はない。例えば、ページはいくつかのファイルや文書のスタックの画像であってもよい。ここに説明する方法を用いて、特定のコンテンツを探して、いくつかのファイルの検索（ハードドライブの検索等）を実行することもできる。
【００３７】
［ページセグメント化］
高速ナビゲーションを容易にするため、マージページ画像（merged  page  images）が顕著なコンテンツすなわち文書ランドマークで生成される。最初に、マージページ画像を生成する前に、システムは文書ランドマークを特定する。一実施形態では、これは文書が表示されているときにリアルタイムで行われる。他の実施形態では、文書ランドマークの特定は文書が表示される前にオフラインでなされる。セグメント化プロセスは高速で表示すべき全ての文書について実行される。このように、かかるセグメント化の効率的な方法及び所与の文書ランドマークを構成するよい特徴付けが貴重である。
【００３８】
図２は、１つのページの顕著なコンテンツの識別を示す図である。図２を参照して、文書２０１は画像を有する。セグメント化の結果として、文書２０２に示されているように、ページの顕著なコンテンツがタイトル２１０、画像２１１、及びヘディング２１２として特定される。
【００３９】
使用できるセグメント化方法は複数ある。一実施形態では、セグメント化は各ページの水平ヒストグラムに基づく。図３は、セグメント化を実行して１つのページの顕著なコンテンツを識別するプロセスの一実施形態を示すフロー図である。一実施形態では、このプロセスは文書の各ページに実行され、特定された顕著なコンテンツがマージページ画像に含まれる。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【００４０】
図３を参照して、本プロセスは、処理ロジックがページのヒストグラムを計算する（処理ブロック３0１）ことにより始まる。一実施形態では、ヒストグラムは各スキャンラインのページ画像中の非バックグラウンドピクセルのすべての計数を考慮する水平ヒストグラムである。これは、基本的に白い背景ページ上のすべての黒ドットを左に画像シフトすることである。かかるヒストグラムを図４に示した。図４を参照して、各スキャンラインのバーグラフを使用する。バーは左から始まり右に向かって伸びている。一実施形態では、バーは１ピクセル高いだけで、ほとんどはその上下近くのものの長さに近い。しかし、テキストのライン間にあるスキャンラインを表すバーの長さはゼロである。
【００４１】
ヒストグラムを計算した後、処理ロジックは、長さがゼロでないヒストグラムバーの連続ブロックの高さ（通常、ページのテキストのラインの全フォント高さである）と、かかるテキストライン間の間隔を計算する（処理ブロック３０２）。高さと間隔を計算した後、処理ロジックは、ヘッダとフッタを探し（処理ブロック３０３）、カラムを探し（処理ブロック３０４）、ブランク領域を探し（処理ブロック３０５）、データのテーブルを探し（処理ブロック３０６）、グラフィカル画像を探し（処理ブロック３０７）、テキスト領域を探す（処理ブロック３０８）。次に、処理ロジックは、テキストのヘディング、太文字、インデント、ジャスティフィケーション（justification）、ライン高さ、ライン間隔、センタリング等を分析する（処理ブロック３０９）。
【００４２】
言い換えると、ヒストグラムを調べることにより、写真の区別できる「シグネチャ」とその他のグラフィックスとデータテーブルとを特定する。例えば、ページを全体として見て、接続された領域の典型的な幅、平文（plain  text）中のパラグラフを特定する。さらに、ヒストグラムがページの上部に対応することが分かっているので、バーがないことは、ヒストグラムの上部にある最初のバーはある種のヘッダであり、残りのバーは平文に対応することを示している。章とセクションのヘディングを特定するため、太字化とセンタリングされたテキストを検出する。これには、テキストの各ラインのピクセルを調べることが含まれる。一実施形態では、ラインがセンタリングされるか、ほとんど太字になっている場合、ヘディングであると考えられる。白黒間の各遷移の幅を見ることにより比較を行い、ページの典型的な者と比較する。
【００４３】
他のセグメント化ルーチンも利用できることに留意する。これらは、非常に効率的でパラレル化されたアルゴリズムを含む。
【００４４】
［文書表現］
一実施形態では、マージされたページを連続ページのセットに基づき計算する。マージされたページ画像の表示を速くするページセグメント化の結果を表す方法がいくつかある。一実施形態では、ページセグメント化から特定された文書ランドマークはページ画像に組み込まれる。そのページ画像の各々はマージされた複数のページを表す。これらの文書ランドマークは結合されたページ画像上でエンハンス（enhance）される。
【００４５】
一実施形態では、マージ画像は前もって計算され、記憶される。これには、任意の文書に対してシステムが必要とするだろう全てのマージ画像を含む。これは表示時にシステムにかかる要求が最も少ないであろう。
【００４６】
一実施形態では、マージ画像は、２ページ、４ページ、８ページ等、ある値（例えば、２のべき乗）までのマージ結果であり、そのレベルでは約１２種類（セット）のマージ画像がある。このように、５００ページの本を表すには、それぞれ３２ページをマージしたことを表すマージ画像が計算される（及び、それぞれ２、４、８、及び１６ページ）。異なる数のマージページを表す画像を有するマージ画像のセットが、ユーザがどのくらいの遅さまたは速さで文書をナビゲートしているかに基づき、システムにより用いられる。ユーザがゆっくりナビゲートしている場合、２ページを表す画像を有するセットが使用され、一方、ユーザが速くナビゲートしている場合、１６ページを表す画像を有するセットが使用される。文書のサイズに応じて、マージ画像は連続した６４ページまで計算される。
【００４７】
一実施形態では、マージ画像の生成プロセスは、最初にブランク画像を生成し、セグメント化中に発見されたすべての文書ランドマーク要素を取得して、それをブランク画像にペイント（埋め込み）することを含む。その後、マージされた任意のページのテキストを有するまだブランクの領域に対して、システムはその領域を、ページの１つに示された、ぼやかした（wash  out）または色あせさせた（fade）バージョンのテキストで満たす。これにより、単なるテキストよりも文書ランドマークはエンハンス（強調）されたように見える。
【００４８】
図５は、単一のマージされたページに複数のページの顕著な特徴を結合するマージプロセスを示す図である。図５を参照して、ページ５０１はセグメント化され、ページ５０１の特定された顕著なコンテンツはヘディング５０２とセクションタイトル５０３を含む。同様に、ページ５１０はセグメント化され、特定された顕著なコンテンツはヘディング５１１、画像５１２、及びセクションタイトル５１３を含む。ページ５０１とページ５１０の顕著なコンテンツを結合してページ５２０にする。ページ５２０には見えないが、ページ５１０のヘディング５１１はページ５０１のヘディング５０２により幾分見づらくなっている。
【００４９】
複数ページからの文書ランドマークの取扱で難しいのは文書ランドマークが重なる時である。一実施形態では、オーバーラップする顕著なコンテンツの画像は領域が減る順序でペイントされる。この場合、大きな画像は小さな画像を塞がない。これらの画像は、「アルファ値」が減るようにペイントされてもよい（すなわち、透明度が高くなるようにペイントされる）。
【００５０】
図６は、複数ページの顕著な特徴を単一のマージ画像に結合するプロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【００５１】
図６を参照して、本プロセスは、処理ロジックがブランク画像を生成する（処理ブロック６0１）ことにより始まる。次に、処理ロジックは、複数ページの重なった文書ランドマークのセットの位置をきめる（処理ブロック６０２）。（「セット」は単一の文書ランドマークから構成されていてもよいことに留意する。）処理ロジックは次にまだ処理されていない重なったセットがあるかどうか判断する（処理ブロック６０３）。そうであれば、本プロセスは続けて残っている重なった文書ランドマークの１つ以上のセットを処理する。
【００５２】
具体的には、処理ロジックは１つのセットを選択して、サイズを小さくしてそのセット中の文書ランドマークを順序づける（処理ブロック６０４）。次に、処理ロジックは、並べられたセットから次の要素を選択して、透明度が高くなるようにその画像をペイントして、他の１つ以上の文書ランドマークをカバーしているそれらの文書ランドマークが、その「下の」文書ランドマークの部分が十分透明で見えるようにする（処理ブロック６０５）。その後、処理ブロック６０６に進み、処理ロジックは重なった文書ランドマークの現在のセットに残っている要素があるか判断する。そうであれば、処理ブロック６０５に進み、次の要素を選択して画像にペイントする。そうでなければ、処理ブロック６０３に進み、処理ロジックは残っている重なった文書ランドマークのセットがあるか再度テストする。なければ、処理ブロック６０７に進む。
【００５３】
処理ブロック６０７において、処理ロジックは画像のまだペイントされていない領域を集めるか特定する。処理ロジックは、残っているまだペイントされていない領域があるかテストする（処理ブロック６０８）。もしなければ、処理は終了する。残っているまだペイントされていない領域があれば、処理ロジックは任意の順序でそれらについて処理を繰り返す（処理ブロック６０９）。それぞれについて、そのペイントされていない領域にあるマージされる複数ページのいずれかにテキストがあるかテストする（処理ブロック６１０）。なければ、処理ブロック６0８に進み繰り返しを継続する。単一画像にマージされる複数ページのいずれかにテキストがあれば、処理ロジックはそれらのページの１つを任意に選択し、ペイントされていない領域をそのページから取ったテキストのフェードバージョン（faded  version）でペイントする（処理ブロック６１１）、そして処理ブロック６０８に進む。
【００５４】
一実施形態では、マージページ画像のセットの各々はフレッシュなブランクページから生成されることに留意する。例えば、４ページからの顕著な特徴を有するマージページを生成するとき、システムは、各々が２ページからの顕著な特徴を含む２つのマージページを結合しない。そうではなく、システムは４ページの顕著な特徴を結合して１つの新しいページ画像にする。
一実施形態では、マージ画像は定義されたファイル階層スキームに保存され、画像表示に係わるアプリケーションがそれを見つけることができる。
【００５５】
必要なメモリ容量を減らし、必要な時はディスクから画像を読み出すスピードを上げるために、マージ画像の比較的小さなサムネイルを使用してもよい。かかるサムネイルは小さいサイズで記憶でき、文書をユーザがスキャンした時にフルページ画像までスケールアップできる。ユーザがページをめくっている時は速く画像を表示するので、かかるスケーリングからの品質ロスは許容できるであろう。
【００５６】
他のオプションはＪＰＥＧ２０００画像表示スキーム等の画像表示を用いて、ウェーブレットとマージ画像のデルタ情報を記憶する。この表示を用いて、マージされた画像をオンザフライで作ることができる。これにより処理パワーと引き替えにファイルシステムへのアクセスが減少する。
【００５７】
他の実施形態では、マージ画像はリアルタイムに動的に生成し、文書ランドマークの指示を含めることも可能である。
【００５８】
［制御装置］
画像シーケンスをページスキャンまたはナビゲーションするスピードと方向を制御する方法はいくつかある。一実施形態では、ユーザはディスプレイのページ画像領域から目を離さないで、スキャンが前向きか後ろ向きかをいつでも知ることができる。制御装置からの触知性フィードバックはこの目的に非常に有用である。一実施形態では、ユーザは瞬時にかつ信頼性高くスキャンを停止できる。一実施形態では、ユーザは容易にページがスキャンされているレートを感じ（理想的には視覚的及び触知的に）、制御することができる。
【００５９】
一実施形態では、ユーザはページめくりスピードを高い程度で制御できる。これは、画像ベース文書の高速ナビゲーションにおけるサーチの目標に近い時に、特に重要である。すなわち、ユーザは目標または見ていたページに近づくと、一実施形態では、表示されているページめくりはゆっくりになる。
【００６０】
文書の横断を速くする２つの方法がある。第１に、文書の横断時間は、より多くのページ画像をより速く示すことにより、またはより多くのページ数を表すマージ画像を示すことにより速くなる。あるいは、しかし、ページに文書ランドマークがたくさんある場合、一度に示す文書ランドマークは少ない方がよい。一実施形態では、シャトルエクスプレス（ShuttleXpress）コントローラ（いわゆるジョグシャトル）を制御装置として用いる。ページを示しながらスピードを継続的にモニターし、ユーザがシャトルホィールを動かしたりゼロにしたりしたとき、プロセスはユーザが動かした時に見えていたページのあたりに自動的にジャンプバックする。
【００６１】
一実施形態では、システムはスピード制御アルゴリズムを用いて、マージ画像が見えるスピードを制御する。スピード制御アルゴリズムは、スピードコントローラからの信号を受けて、方向、マージレベル（mergeLevel）、レートの値を計算する。ここで、マージレベル（MergeLevel）はマージ画像ごとのページ数を意味し、レートは１秒ごとのマージ画像の数を意味する。
【００６２】
図７は、速さ制御プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【００６３】
図７を参照して、プロセスは、図７でＣＭＤと示した制御信号を処理ロジックが入力することにより始まる。一実施形態では、ＣＭＤである制御信号は−７と７の間の整数である（処理ブロック７０１）。範囲−７〜７は、シャトルエクスプレスコントローラの１５位置を表している。ゼロは「ニュートラル」の停止位置である。
【００６４】
制御信号を入力した後、処理ロジックは（以下に説明するジャンプバックプロセスで使用するため）時刻とＣＭＤを記録する（処理ブロック７０２）。処理ロジックはＣＭＤがゼロに等しいかテストする（処理ブロック７０３）。等しければ、処理ブロック７０４に進み、ページリフレッシュタイマー機能をディスエーブルし、ジャンプバック動作を実行する（処理ブロック７０５）。ジャンプバックプロセスの一実施形態を以下により詳しく説明する。ページリフレッシュタイマー機能も以下でより詳しく説明する。ジャンプバック動作を実行した後、スピード制御プロセスは終了する。
【００６５】
入力制御信号ＣＭＤがゼロに等しくない場合、処理ロジックは、入力制御信号ＣＭＤがゼロより大きければ方向を１に設定し、入力制御信号ＣＭＤがゼロより小さければ方向を−１に設定する。次に、処理ロジックは、入力制御信号ＣＭＤの絶対値が２以下であるかテストする。
【００６６】
数字２を選択したのは、−２，−１，１，２である場合、マージされたページよりも個々のページを示すからであることに留意する。このように、−２〜２の範囲外では、マージされたページの表示は、低い値（−３と３）では小さいマージ量かつ遅いフレームレートで、値が高くなる（−７と７）ほど両者を大きくしておこなう。一実施形態では、最大値において、３秒で文書全体を示すことが望ましい。
【００６７】
ＣＭＤの絶対値が２以下である場合、処理ロジックは、マージレベル（mergeLevel）を１に設定し（処理ブロック７０８）、入力制御信号ＣＭＤの絶対値が１の場合は、１秒ごとに２画像にレートを設定し、入力制御信号ＣＭＤの絶対値が１でない場合は、１秒ごとに４画像にレートを設定し（処理ブロック７０９）、処理ブロック７１２に進む。入力制御信号ＣＭＤの絶対値が２以下である場合、処理ロジックは、入力制御信号ＣＭＤの関数であるマージレベル（mergeLevel）と文書のサイズ（SizeOfDoc）を設定し（処理ブロック７１０）、入力制御信号ＣＭＤの関数としてレートと文書のサイズ（SizeOfDoc）を設定し（処理ブロック７１１）、処理ブロック７１２に進む。一実施形態では、文書のサイズ（SizeOfDoc）は文書が最初にロードされたときに決められた一定値である。上述のとおり、マージレベル（mergeLevel）は文書が大きいと高く、ＣＭＤが最大値において文書全体が３秒で横断できるようにする。
【００６８】
処理ブロック７１２において、処理ロジックは、ページリフレッシュタイマー機能を設定し、レート変数で示されたレートでリフレッシュする。
【００６９】
図８は、画面に示されるページをリフレッシュするページリフレッシュタイマーの制御プロセスを示すフロー図である。プロセスは、上で説明した処理ロジックで初期化（すなわち、レート、方向、マージレベル（mergeLevel）等の値が設定）される。図８を参照して、ページリフレッシュ処理は、図７のスピード制御プロセスで設定された方向変数により指示された方向に次のマージレベル（mergeLevel）のページを示すことを伴う（処理ブロック８０１）。
【００７０】
図９は、ジャンプ戻りプロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【００７１】
図９を参照して、処理は、処理ロジックが変数nPPS（１秒あたりのページ数）を最後の０．２秒での１秒当たりの平均ページに設定する（処理ブロック９０１）。次に、処理ロジックは、変数nMerge（マージレベル数）を０．２秒前のマージレベルに設定する（処理ブロック９０２）。処理ロジックは、変数minJumpBackを設定する。これは、ジャンプバックの最小量を意味し、nPPSに０．２をかけ、マージレベル数（nMerge）を引いたものに等しい。また、maxJumpBackを設定する。これは、ジャンプバックできる最大量を示し、nPPSに０．２をかけ、マージレベルに２をかけたものをたしたものに等しい。処理は、また、最小ジャンプバック量（minJumpBack）と最大ジャンプバック量（maxJumpBack）の間の範囲にある最も興味あるページを計算し（処理ブロック９０４）、以下に説明するフィードバック形式を示すこのページに戻る（処理ロジック９０５）。
【００７２】
あるいは、インターフェイスのようなスクロールバーを使用してもよい。かかる場合、ページ表示の横に沿って、文書内の現在位置を示すバーを使用する。ユーザはこれの上下を（マウス等で）クリックしホールドし、ページシーケンスの中で前後に動かすことができる。ページめくりのスピードは、現在位置からのマウスカーソルの距離と、ユーザがマウスをホールドしている時間の両方に依存する。文書の最初近くに位置し、最後の近くをクリックかつホールドした場合、ページスキャンレートは、徐々にフルスピードまで上昇し、カーソルがホールドされている最後に近い位置に近づくと、徐々に下降する。
【００７３】
［ナビゲーションフィードバック］
一実施形態では、システムは、フィードバックの複数の形式を含み、ユーザが前方または後方のどちらにスキャンしているのか、いつでも示すことができる。スキャンレートが低いと、システムは、ディスプレイを一掃するように見えて次のページを表示する垂直バーを示すことにより、「ページの移り変わり（page  turn）」をシミュレーションする。前方にスキャンしている場合は右から左に一掃（wipe）し、後方にスキャンしている場合は左から右に一掃する。システムは、方向とスピードに応じて変わる、可聴なめくり音（audible  flipping  sound）を出してもよい。
【００７４】
他の実施形態では、システムは自動的に、手書きの注釈やセパレータページ（separator  pages）等の特に重要な文書ランドマークに近づいた時はスキャンを遅くする。これは、それらが比較的広がって分布している場合にのみ行ってもよい。これは「スピードバンプ」と呼ぶ。このように、本システムはユーザが文書ランドマークを明瞭に見ることを欲していると仮定している。
【００７５】
［システム例］
一実施形態では、画像ベース文書の高速ナビゲーションシステムは２つの部分を含む。これらの部分は、同じシステムでも、２つの別々のシステムであってもよい。これらのシステムが利用されるのは一般的な情報処理装置（いわゆるコンピュータ装置）又はペーパーライクディスプレイ等の表示装置内にハードウェアまたはソフトウェアまたはそれらの組み合わせの形態で利用されうる。これらのシステムの例を図１０と１１に示す。図１０は、セグメント化及びマージシステムプロセスを実行するシステムを示す図であり、図１１は、ページ画像を表示するランタイムアプリケーションシステム部分を示す図である。
【００７６】
図１０を参照して、ページ画像１００１は画像データを記憶する。セグメント化ソフトウェア１００２は、メモリに記憶されプロセッサに実行されるが、ページ画像記憶装置１００１から画像を取得して、顕著な特徴の特定を実行する。セグメント化ソフトウェア１００２により顕著な特徴の特定の結果は、マージソフトウェア１００３に送られる。このマージソフトウェア１００３は、メモリに格納され、プロセッサにより実行される。マージソフトウェア１００３は、複数ページの顕著な特徴を結合して単一のマージページにする。マージソフトウェア１００３からのマージ画像（merged  images）は、ページ画像記憶装置１００１に格納される。
【００７７】
図１１は、ランタイムアプリケーションシステムブロック図を示す。図１１を参照して、長期ページ画像記憶装置１１0１はマージ画像を記憶する。長期ページ画像記憶装置１１０１は、図１０のページ画像記憶装置１１０１と同じでも違うメモリでもよい。ランタイムデータ構造のさらに別のリポジトリ１１０２もある。一実施形態では、データ構造１１０２はページ画像１１１０と注釈１１１１を含む。注釈１１１１を含む必要は必ずしもないことに留意する。
【００７８】
アプリケーションソフトウェア１１０５は、メモリに記憶されプロセッサに実行されるが、ディスプレイモジュール１１１３を含む。このディスプレイモジュール１１１３は、データ構造１１０２にアクセスし、ページ画像１１１０と注釈１１１１（もしあれば）をディスプレイモニター１１０３にスピード制御モジュール１１１２により示されたスピードにより表示する。スピード制御モジュール１１１２は、コントローラ１１０４からの制御信号１１０６に応答して、表示されるマージ画像のスピードを修正する。コントローラ１１０４は、マウス、スタイラス、キーボード、シャトルホィール、その他任意の周知のコントローラの１つ以上を含む。コントローラ１１０４からの制御信号は、スピード制御モジュール１１１２に、ディスプレイモジュール１１１３がいかに速くメモリにアクセスしてマージ画像を表示するかを示す。一実施形態では、スピード制御モジュール１１１２は、要求された速さをディスプレイの制御に変換する。ディスプレイモジュール１１１３は、スピード制御モジュール１１１２からこの情報を読み取り、ページ画像（及び注釈）をいかに速く取得するか決定する。このように、ディスプレイモジュール１１１３は、マージ画像のセットを選択して、スピード制御モジュール１１１２からからのスピード制御に基づき表示する。これらの入力に基づき、ディスプレイモジュール１１１３は、フルレゾリューションの個々のページ画像または１つ以上のマージされたページ画像を示す。
【００７９】
一実施形態では、アプリケーションソフトウェア１１０５は、コントローラ１１０４からのマーキング信号１１０７に応答する注釈モジュール１１１４を含む。ユーザはコントローラ１１０４の１つを用いて、画像上に注釈を生成する。例えば、タブレットとスタイラスを有するユーザは、ページに下線を施したり、丸で囲ったり、その他の注釈を付したりすることを欲する。注釈モジュール１１１４は、注釈がされたページに対応するページ画像１１１０とともにその注釈を記憶する。ディスプレイモジュール１１１３は、ページ画像１１００を表示し２つを表示用にマージする時に、データ構造１１０２からの注釈にアクセスする。このように、マージページの格納された画像は修正されない。一実施形態では、ページまたはマージ画像が示されるときはいつも、そのページまたはページセットと関連するすべてのマークも示される。別の実施形態では、記憶またはマージされた画像は修正され、そのマージページの画像に関連する全てのマークを含む。
【００８０】
［機能例］
一実施形態では、システムは付加機能を含む。これには、チャプターの色づけ（chapter  tinting）、サムインデックス（thumb  indexing）、短いアニメーション（ephemeral  animations）、及び短い分離ページ（ephemeral  separation  page）を含む。
【００８１】
一実施形態では、チャプター等のテキストの異なるセクションを識別するため、システムはチャプターの境界に視覚的な手がかりを設けることにより文書自体の画像をエンハンスする。例えば、システムは各チャプターのページの画像に異なる背景色を付加することにより、チャプター色づけを実行してもよい。また、本システムは、一部の本に設けられているような、チャプターサムインデックス（chapter  thumb  indexes）を人工的に設けることにより、サムインデックスを実行する。
【００８２】
一実施形態では、本システムは、高速スキャン中に重要なページに近づくとそれを通知する「フリップブック」スタイルのアニメーション（短いアニメーション）を挿入するのを容易にする。かかるアニメーションが構成される準アニメーションは、ゆっくりまたは止まって見るときにはページ上に現れない。
【００８３】
ここに説明した技術を化体する特定用途装置はいくつかの文書を保持（host）することができる。一実施形態では、本システムは、１つの文書から他の文書への変化を知らせる識別可能な「セパレータページ」（短いアニメーション）挿入して、これによりユーザが他のビューイングメタファー（viewing  metaphor）に切り換えて文書をスキャンする必要を無くす。
【００８４】
［いくつかの高速表示画像の１つにジャンプバックする認識負荷の補償］
ここに説明するナビゲーションシステムが行き当たる問題の１つは、文書のページ画像が高速で表示されている時に、適当な場所に停止することである。ここに説明する高速画像フリッピング（rapid  image  flipping、ＲＩＦ）システムの（一般的なブラウズに沿った）基本的な使用の１つは認識ベースナビゲーションである。ユーザは前に見ていた文書をめくり（flip  through）、特定の「文書ランドマーク」（例えば、或る写真、グラフ等）を探す。ユーザは文書ランドマークを認識すると、システムにめくり（flipping）を停止するように信号をだす。ユーザがその文書を毎秒２００頁で見ているとはまったく考えられない。ユーザが文書ランドマークを認識してシステムに停止するように手で信号を送るまでに、文書ランドマークが含まれた画像はもはや表示されておらず、ユーザが認識したページにジャンプバックを試みることが、システムができる最良のことである。
【００８５】
この問題を解決する簡単な方法は、標準的な「反応時間」をページ画像表示のスピードにかけて、そこまでジャンプバックすることである。しかし、かかるシステムにおけるユーザ反応時間はそれ自体、なかんずくページ画像表示のスピードの関数である。本発明の一実施形態により、この実現をページスキャンシステムの振る舞いに組み込む方法が提供される。
【００８６】
［素朴な解決策］
ユーザが停止したいと欲し、その決定がユーザの神経経路を通ってＲＩＦシステムに届くのにかかる時間は、ここでは「反応時間」と呼ぶ。一実施形態では、「反応時間」は、制御装置が有するユーザの信号への応答を遅らせるヒステリシスを含む。システムは、画像表示（フリッピング）スピードをトラックできる場合、これに反応時間をかけて、だいたいどのページがユーザにページ画像の高速表示を停止させたか見つけることができる。一実施形態では、反応時間のページフリッピング（めくり）スピードは一定ではなく、システムは掛け算をするのではなく、カーブの下の領域を「積分」する。
【００８７】
もちろん、このように反応時間の使用が唯一の近似解である。反応時間は一定でもないし、２００頁／秒で見られているページを区別するほど十分正確ではないからである。しかし、ユーザが認識する文書ランドマークを有する「興味ある」ページを発見するためにどこをサーチするかのアイディアを提供してくれる。興味度（interestingness）の使用を以下に更に詳しく説明する。
【００８８】
新規な解決策
高速な不連続または連続な画像提示システム内の「オペレータが意図した停止点」の推定の精度を向上する方法は、画像提示レートによるオペレータの反応時間の変化の推定を組み込んでいる。反応時間が分かっているので、それに画像フリッピング（めくり）レートをかけて、どのくらいジャンプバックするか決定する。
【００８９】
一実施形態では、ＲＩＦシステムは、反応時間自体が画像フリッピングレートに強く影響されることを考慮したものである。画像のセットを一定として、停止する「文書ランドマーク」も一定として、反応時間は画像提示スピードが大きくなると遅くなる。このように、ＲＩＦシステムの一実施形態では、所望の画像にジャンプバックする時に、この現象を考慮する。
【００９０】
これを、例を用いて更に説明する。毎秒２５画像を見ているときのユーザの反応時間が０．１２５秒であると仮定する。この反応時間は画像表示レートが２倍になるごとに２０％遅くなると仮定する。（正式には、サブリニアなので、これは保守的な仮定である。）表示レートが毎秒２００画像に上がると、ユーザの反応時間は1.23すなわち約1.7のファクタだけ悪くなる。この悪化を考慮せずに、本システムは、（２００頁／秒で表示している場合）２５頁ジャンプバックすることにより、ユーザの反応時間を補償する。しかし、これを考慮すると、ジャンプバックは４２頁になる。ページスピードが２倍になるごとに１０％悪化すると、本システムは２５頁ではなく３３ページジャンプバックする必要がある。これは非常に大きな違いであり、それを考慮に入れるシステムは非常にかけていると思われる。
【００９１】
所望の画像にジャンプバックするにあたり、反応時間の悪化を考慮にいれるため、レートと時間の関数としての距離に関する次の式が始まりとなる。
【００９２】
【数１】
0005298433.tif 000002
ここで、ｄはジャンプバックする画像数であり、ｒは先行の画像表示レートを表し、ｔは反応時間を表す。反応時間が表されている人を反映するサブスクリプトｐを使用する。これは人によって反応時間が異なるからである。
【００９３】
【数２】
0005298433.tif 000003
反応時間自体が画像フリッピングスピードの関数であるとの事実を組み込むため、式をつぎのように精密化する：
【００９４】
【数３】
0005298433.tif 000004
関数tpを分析すると、人はだれでも最低の認識負荷の下で一定の反応時間を有している。これは、認識負荷による時間の増加により考慮される。これは次式のように書き換えることができる：
【００９５】
【数４】
0005298433.tif 000005
ここで、lp(r)は画像フリッピングレートｒにおける人ｐの負荷による遅延である。これを式（３）に代入して、次式が得られる：
【００９６】
【数５】
0005298433.tif 000006
２つの項をより明確にするために書き換えると、最初の項のみが素朴な解決策で考慮されている。次式が得られる：
【００９７】
【数６】
0005298433.tif 000007
この式の最後の項の性質は、認識負荷が高くなった時の反応時間の悪化を表すが、さらに実験して決められる。それは少なくとも線形であるように見える。簡単のため、線形関数であると仮定する。すなわち、与えられた人について、反応時間の付加遅延は画像表示の付加スピードの線形関数である。これは人によって一定であるから、cpを書く。式は興味深い形で書かれる：
【００９８】
【数７】
0005298433.tif 000008
または
【００９９】
【数８】
0005298433.tif 000009
ジャンプバック方法は、この式を使ってユーザの所望の画像を探すために、戻る距離を計算する。
ユーザによって異なる定数は最初の修正プロセスで決定する。かかる修正プロセスは、システムがユーザフィードバックを受け、その定数に到達することができるトレーニングフェーズの実行を含む。かかるトレーニングは周知である。
【０１００】
図１２は、画像表示プロセスの他の実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１０１】
図１２を参照して、本プロセスは画像ベース文書のページの顕著なコンテンツを特定することにより始まる（処理ブロック１２0１）。一実施形態では、処理ロジックは、画像ベース文書の各ページのヒストグラムを計算し、そのヒストグラムからの情報に基づいて特徴を見つけることにより、顕著なコンテンツを特定する。
【０１０２】
画像ベース文書のページの顕著なコンテンツを特定した後、処理ロジックは、その画像ベース文書の複数ページの特定した顕著なコンテンツを単一のマージされたページにマージすることにより、ページ画像を生成する（処理ブロック１２0２）。
【０１０３】
マージページが生成されると、処理ロジックは、画像ベース文書に対応する複数のページ画像から表示するページ画像を選択する（処理ブロック１２0３）。その複数ページ画像はマージページ画像を含み、各マージページ画像は１つの画像にマージされた画像ベース文書の複数の連続するページ画像からの顕著なコンテンツを有する。
【０１０４】
一実施形態では、表示するページ画像の選択は、選択されたページ画像が順次表示されるべきレートを示す制御情報（例えばユーザ入力）に基づいてページ画像のサブセットを選択することにより実行される。一実施形態では、ページ画像は、１つの画像にマージされた画像ベース文書のいくつかのページ画像からの顕著なコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた画像ベース文書の異なる数のページ画像からの顕著なコンテンツを有するマージページ画像の第２のセットを含む。さらに、一実施形態では、処理ロジックは、文書が表示されるべき速さすなわちレートが１つのレートである場合、マージページ画像の第１のセットを選択し、文書が表示されるレートが別のレートである場合、マージページ画像の第２のセットを選択する。
【０１０５】
ページ画像を選択した後、処理ロジックはディスプレイに選択されたページ画像を順次表示する（処理ブロック１２0４）。選択されたページ画像を順次表示することにより、文書をディスプレイのリフレッシュレートを超える速さでスキャンすることが可能になる。選択されたページ画像は前向きまたは逆（後ろ）向きの順序で表示される。
【０１０６】
画像シーケンスを表示しつつ、処理ロジックは、ページ画像のシーケンスを停止するユーザ入力を受け取る（処理ブロック１２０５）。
【０１０７】
ユーザ入力に応答して、処理ロジックは、ユーザがページ画像のシーケンス中で停止しようと意図したが画像のシーケンスの表示スピードとユーザが停止しようと意図した点の指示を出す反応時間がかかったページ画像のシーケンス中の一ページ画像の場所を決定する（処理ブロック１２０６）。一実施形態では、その場所は、画像表示レートとそのユーザに関連する反応時間に基づき選択される。他の実施形態では、その場所は、そこにあるページの興味度（interestingness  measure）に基づいて選択される。
【０１０８】
一実施形態では、処理ロジックは、画像表示レートに基づき複数の利用可能な反応時間からユーザに関連する反応時間を選択する。そのユーザの反応時間の選択は、画像表示レートが１つのレートであるときに第１の反応時間を選択し、画像表示レートが第１のレートと異なる第２のレートであるときに他の反応時間を選択することを含む。反応時間は較正プロセスの結果として設定されてもよい。
【０１０９】
その場所が決定されると、処理ロジックは、自動的に、ページ画像のシーケンス中のその場所にあるそのページ画像にジャンプバックする（処理ブロック１２０７）。
【０１１０】
［興味度に基づくジャンプの精度の向上］
ページ画像中を高速フリッピングしているときに停止する近くされる精度を向上する他の方法は、いろいろなページの「興味度推定（interestingness  estimates）」を組み込むことである。一実施形態では、各ページ画像の区別は他の全てのページに対してランク付けされる。高速フリッピング技術は一度に１頁より多くを示すことが多いので、ユーザが停止することを意図しているのか発見する方法が必要である。
【０１１１】
多数の文書は視覚的には面白くない多数のページとそれより興味深い少数のページから構成されている。文書を高速スキャンしているとき、ユーザの注意は視覚的に興味深いページのみに取られる。このように、一実施形態では、システムは、ページの視覚的特徴を用いて、ユーザがどこで停止することを意図しているかの推定をさらに精密化する（refine）。
【０１１２】
システムの高速フリッピングのユーザは、いくつかの画像の特に顕著な特徴に気がついたと仮定すると、システムはユーザが停止する意図を有している文書のだいたいの部分を反応時間の計算により発見し、近くのページをすべて比較して、そのうちのどれが視覚的に最も興味深いか、または識別性を有しているか判断する。この識別性（distinctiveness）は各ページに対してシステムが計算した「興味度スコア」に基づく。興味度は、文書が含む写真、グラフ、またはテーブルの数やサイズ、コラム数の他のページとの違い、センタリングされたヘディング等を反映する。一実施形態では、反応時間推定だけに基づき、システムは、ユーザが任意の与えられたページで停止しようとする確からしさが与えられた時の反応時間に基づき選択された範囲にあるすべてのページの簡単な確率カーブを生成する。最後に、システムは、反応時間に基づきページの重心近くの興味深いページをその他のページよりも優先するため、確率カーブを興味度の尺度にかける。
【０１１３】
このように、ここに説明した方法は、非常に簡単でドメインによらない特徴発見と興味度または識別性に関して画像をランク付けする重みづけとにより近似画像を発見する。これはビデオ再生、情報可視化、画像ベース文書分析、及びサーベイランスとスパイシステム等の広い分野で応用できる。
【０１１４】
これらの方法は、例えば、前向きまたは後ろ向きにページ中を高速にフリッピングすることにより、文書を見ているときに、ユーザが停止することを意図した場所に「ジャンプバック」する場合に有用であるが、不連続のナビゲーション、すなわち介在するページを示さずに、文書の一部分から他の部分にジャンプする場合にも有用である。
【０１１５】
かかる状況は、ユーザが文書を高速フリッピングしていて、停止したいページを見た時に起こる。ユーザがシステムに停止の信号を送るまでに、所望の停止点から１００頁離れたページを見ているかも知れない。その停止点であるとシステムが推測するところへ戻るのに、ユーザは介在するページを再び見たいとは思わない。再度、ユーザは文書の初めの方にいて、文書の８０％ほど離れたところをみたいとする。ユーザはその領域に直接ジャンプすることを望む。
【０１１６】
［ページの興味度の計算］
ページの興味度を計算するため、システムは、ページを視覚的に区別するまたは停止するのにとくによい場所にする特徴を特定する。かかる特徴には、例えば、チャプターヘディング、セクションヘディング、写真またはグラフの数とサイズ、テーブルの数とサイズ、コラムの数等が含まれる。
【０１１７】
一実施形態では、他の興味深い特徴は、前のページに通常よりも大きなブランク領域があるとの特徴である。多くの文書において、これは新しいチャプターまたはセクションの始まりの印である。特に近くに大きな写真が含まれる場合、セクションの最初のページは実際視覚的に異なっている。しかし、ページは重要な停止場所である。一実施形態では、システムはこれらの特徴の各々に重みづけする。これは、その特徴の一部は他の特徴よりも重要であることを認識し、大きな写真を有するページはセクションヘディングを有するページよりも興味深いと見られるからである。システムは、セクションヘディングを有するページを周囲の興味深い特徴がないページよりも目立たせようとすることに留意する。
【０１１８】
各特徴を重みづけした後、本システムは、その特徴の各々について、文書全体の典型的なページから（または大きな文書の場合は周りのページから）の偏差により各ページをレーティングする。偏差を計算することにより、システムは、視覚的に退屈なページを、多数の写真を有する他のページの束のなかで目立たせることができる。
【０１１９】
最後に、本システムは、各次元のスコアをその次元の重みとかけ、積を足すことにより、トータルページ興味度スコアを計算する。興味度計算は以下により詳しく説明する。
【０１２０】
このトータルページ興味度スコアを用いて、システムは反応時間に基づいて選択されたページの範囲内の、最も興味を引くページを選択する。
【０１２１】
図１３は、画像表示プロセスのさらに別の実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１２２】
図１３を参照して、本プロセスは画像ベース文書のページの顕著なコンテンツを特定することにより始まる（処理ブロック１３0１）。一実施形態では、処理ロジックは、画像ベース文書の各ページのヒストグラムを計算し、そのヒストグラムからの情報に基づいて特徴を見つけることにより、顕著なコンテンツを特定する。
【０１２３】
画像ベース文書のページの顕著なコンテンツを特定した後、処理ロジックは、その画像ベース文書の複数ページの特定した顕著なコンテンツを単一のマージされたページにマージすることにより、ページ画像を生成する（処理ブロック１３0２）。
【０１２４】
マージページが生成されると、処理ロジックは、画像ベース文書に対応する複数のページ画像から表示するページ画像を選択する（処理ブロック１３0３）。その複数ページ画像はマージページ画像を含み、各マージページ画像は１つの画像にマージされた画像ベース文書の複数の連続するページ画像からの顕著なコンテンツを有する。
【０１２５】
一実施形態では、表示するページ画像の選択は、選択されたページ画像が順次表示されるべきレートを示す制御情報（例えばユーザ入力）に基づいてページ画像のサブセットを選択することにより実行される。一実施形態では、ページ画像は、１つの画像にマージされた画像ベース文書のいくつかのページ画像からの顕著なコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた画像ベース文書の異なる数のページ画像からの顕著なコンテンツを有するマージページ画像の第２のセットを含む。さらに、一実施形態では、処理ロジックは、文書が表示されるべき速さすなわちレートが１つのレートである場合、マージページ画像の第１のセットを選択し、文書が表示されるレートが別のレートである場合、マージページ画像の第２のセットを選択する。
【０１２６】
ページ画像を選択した後、処理ロジックはディスプレイに選択されたページ画像を順次表示する（処理ブロック１３0４）。選択されたページ画像を順次表示することにより、文書をディスプレイのリフレッシュレートを超える速さでスキャンすることが可能になる。選択されたページ画像は前向きまたは逆（後ろ）向きの順序で表示される。
【０１２７】
画像シーケンスを表示しつつ、処理ロジックは、ページ画像のシーケンスを停止するユーザ入力を受け取る（処理ブロック１３0５）。
【０１２８】
ユーザ入力に応答して、処理ロジックは、ユーザがページ画像のシーケンス中で停止しようと意図したが画像のシーケンスの表示スピードとユーザが停止しようと意図した点の指示を出す反応時間がかかったページ画像のシーケンス中の一ページ画像の場所を決定する（処理ブロック１３0６）。一実施形態では、その場所は、その場所におけるページ画像の視覚的識別性とそのユーザに関連する反応時間に基づき選択される。他の実施形態では、その場所は画像表示レートに基づき選択される。さらに別の実施形態では、その場所は、確率カーブに基づき特定される。
【０１２９】
一実施形態では、処理ロジックは、画像ベース文書の他のページからの偏差により各ページをレーティングする。視覚的識別性は興味度の尺度に基づき、部分的に、示されてもよい。一実施形態では、処理ロジックは、複数のページ画像の各々に対して興味度尺度を計算し、反応時間に基づいて、識別性尺度とは独立に確率カーブを用いて連続する頁画像の領域を特定し、興味度尺度に確率カーブをかけ、この積に基づいてその場所におけるページ画像を選択する。
【０１３０】
一実施形態では、興味度尺度は各ページ画像の１つ以上の特徴に基づく。かかる場合、処理ロジックは、１つ以上の特徴の各々について、画像ベース文書の他のページからの偏差により各ページをレーティングし、１つ以上の特徴の各々に関連するスコアの組み合わせに基づき各ページのスコアを計算する。一実施形態では、処理ロジックは、特徴の重みを各特徴のスコアにかけて、関連する特徴重みをかけた１つ以上の特徴に関連する積を足して、各ページのスコアを計算する。
【０１３１】
その特徴は、含まれるチャプターヘディング、含まれるセクションヘディング、含まれる写真またはグラフの数、含まれる写真またはグラフのサイズ、含まれるテーブルの数、含まれるテーブルのサイズ、含まれるコラムの数、及びページ画像の前にブランク領域がありそのブランク領域が他の近くのページにあるブランク領域よりも不釣り合いに大きいことからなるグループのうちの１つ以上を含んでも含まなくてもよい。一実施形態では、１つ以上の特徴の各々は重みづけされる。
一実施形態では、処理ロジックは、そのすぐ周辺でその場所のページ画像を含む領域にあるページ画像をランキングする。
【０１３２】
その場所が決定されると、処理ロジックは、自動的に、ページ画像のシーケンス中のその場所にあるそのページ画像にジャンプバックする（処理ブロック１３0７）。
【０１３３】
これは、任意の画像ベース情報空間内の不連続ナビゲーションの場合に拡張できることに留意せよ。ユーザは、文書の初めからその文書の約８０％の点にジャンプしたいと示しているとする。文書の概要や選択するサムネイルのセットがないので、ユーザの表示はだいたいのものであると考えねばならない。一実施形態では、ここに説明した興味度による方法がそれらしい目標を決定するのに特に有用である。
【０１３４】
実際、ほとんど類似した画像のセットのうち最も視覚的に興味を引く画像を発見し見つけるかかる方法は、文書のサマリー作成に非常に有用であり、画像ベースの表現からの情報マイニング（mining）ほど明らかに無関係の領域（domain）でもある。これはビデオ再生、情報可視化、画像ベース文書分析、及びサーベイランスとインテリジェンスサービス（すなわち、スパイ）システム等の広い分野で応用できる。
【０１３５】
［不連続ナビゲーションにおける混乱の回避］
反応時間と文書の様々なページの興味度または重要性の推定方法を用いて、本ＲＩＦシステムは、ユーザの意図する目標ページを合理的にうまく推測し、その推測したページに直接ジャンプすることができる。推測が正しくない場合、システムが遠くまで行きすぎたかどうかユーザには分からず、目標を失ってスクロールして探さなければならない。かかる混乱は大きなフラストレーションとなり、ユーザを戸惑わせる。
【０１３６】
この混乱を回避する方法も説明する。本方法は、新しい場所に不連続にジャンプするときに、システムがその新しい場所に近づくにつれて、複数の画像をめくっていることをシミュレーションして、高速画像フリッピングシステム内に方向を示す目印（orientation  clues）を設ける。これにより、システムが意図された場所の推測に近づくにつれて、複数のページをフリッピングしていることをシミュレーションすることにより、高速フリッピングシステムのユーザは、ユーザが意図した場所へのジャンプが失敗したことを理解する。
【０１３７】
ＲＩＦのページフリッピングメタファーを破ることなく、文書の概要または周辺のページ中のページの場所を提供する多数の方法がある。非常に「ニュートラル」な感じのする方法は、目標ページに直接ジャンプバックするのではなく、高速にフリップバック（flip  back）することである。これにより多数のサイズを縮小した画像の表示を回避できる。
【０１３８】
一実施形態では、システムは、現在の場所とシステムが引き返している場所の間の一連のページを示す。現在の場所と目標ページ（ユーザの意図する場所に関するシステムの推測）との間のユーザが意図している場所をある程度確実に示すことができる限り、一連の画像は現在の場所から始まる必要はない。
【０１３９】
この引き返しのフィードバック中にユーザが意図しているページに気づけば、システムが行きすぎたことが分かる。気づかなければ、システムはまだ十分進んでおらず、正しい方向にナビゲーションを続けることは容易かつ自然である。
【０１４０】
この方法で生じる１つの問題は、面倒であると感じることである。ユーザは、自分が意図する停止点のシステムの推定を見る前に、一連のページ画像が現れるのを２〜３秒待たねばならない場合、それに疲れてしまう。ジャンプバックする場所は推定であり間違っているかも知れないので、いくつかのページを見せることは重要である。一実施形態では、いくつかのページをマージしたページを示すことができるので、システムは、例えば１６頁、８頁、４頁、２頁及び１頁の連続したマージ画像を見せることにより、５つの種類（セット）の画像（例えば、１６頁、８頁、４頁、２頁のマージ画像や１頁）を見せることができる時間内に５つの種類の合計である３１頁分を効果的に見せることができる。本システムは、適当な方向に向かうページの外観を視覚的にシミュレーションすることにより、フィードバックの自然さを更に向上することができる。
【０１４１】
図１４は、画像表示プロセスのさらに別の実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１４２】
図１４を参照して、本プロセスは画像ベース文書のページの顕著なコンテンツを特定することにより始まる（処理ブロック１４0１）。一実施形態では、処理ロジックは、画像ベース文書の各ページのヒストグラムを計算し、そのヒストグラムからの情報に基づいて特徴を見つけることにより、顕著なコンテンツを特定する。
【０１４３】
画像ベース文書のページの顕著なコンテンツを特定した後、処理ロジックは、その画像ベース文書の複数ページの特定した顕著なコンテンツを単一のマージされたページにマージすることにより、ページ画像を生成する（処理ブロック１４0２）。
【０１４４】
マージページが生成されると、処理ロジックは、画像ベース文書に対応する複数のページ画像から表示するページ画像を選択する（処理ブロック１４0３）。その複数ページ画像はマージページ画像を含み、各マージページ画像は１つの画像にマージされた画像ベース文書の複数の連続するページ画像からの顕著なコンテンツを有する。
【０１４５】
一実施形態では、表示するページ画像の選択は、選択されたページ画像が順次表示されるべきレートを示す制御情報（例えばユーザ入力）に基づいてページ画像のサブセットを選択することにより実行される。一実施形態では、ページ画像は、１つの画像にマージされた画像ベース文書のいくつかのページ画像からの顕著なコンテンツを有するマージされたページ画像の第１のセットと、１つの画像にマージされた画像ベース文書の異なる数のページ画像からの顕著なコンテンツを有するマージページ画像の第２のセットを含む。さらに、一実施形態では、処理ロジックは、文書が表示されるべき速さすなわちレートが１つのレートである場合、マージページ画像の第１のセットを選択し、文書が表示されるレートが別のレートである場合、マージページ画像の第２のセットを選択する。
【０１４６】
ページ画像を選択した後、処理ロジックはディスプレイに選択されたページ画像を順次表示する（処理ブロック１４0４）。選択されたページ画像を順次表示することにより、文書をディスプレイのリフレッシュレートを超える速さでスキャンすることが可能になる。選択されたページ画像は前向きまたは逆（後ろ）向きの順序で表示される。
【０１４７】
画像シーケンスを表示しつつ、処理ロジックは、ページ画像のシーケンスを停止するユーザ入力を受け取る（処理ブロック１４0５）。
【０１４８】
ユーザ入力に応答して、処理ロジックは、ページ画像シーケンス中でユーザが停止しようと意図した点を表すページ画像シーケンス中のページ画像の場所を決定する（処理ブロック１４０６）。一実施形態では、その場所は、その場所におけるページ画像の視覚的識別性とそのユーザに関連する反応時間に基づき選択される。他の実施形態では、その場所は画像表示レートに基づき選択される。さらに別の実施形態では、その場所は、確率カーブに基づき特定される。
【０１４９】
その場所が決定されると、処理ロジックは、その場所が近づくにつれて介在する複数のページ画像を表示しつつ、自動的に、ページ画像のシーケンス中のその場所にあるそのページ画像にジャンプバックする（処理ブロック１４0７）。一実施形態では、複数の介在するページ画像は、ジャンプバックするページ画像シーケンス中の場所よりも、そのページ画像の場所に近いページ画像シーケンス中に位置している。一実施形態では、複数の介在するページ画像はマージ画像を有する。一実施形態では、処理ロジックは、複数の介在するページ画像を、適当な方向にページがめくられる外観を視覚的にシミュレーションして、表示する。
【０１５０】
［文書中のページの視覚的興味度の計算アルゴリズム］
かかる高速ページフリッピングシステムがぶつかる問題の１つは、適当な場所に停止することである。ユーザが文書のページ中を高速にフリッピングして１つのページに見つかった文書ランドマークを探す場合、ユーザが気がついた時にはそのページはすでに表示されていなく、止まってシステムにそのことを知らせるときである。前述のとおり、この問題を解決する方法はいくつかある。主に、高速に表示される画像の１つにジャンプするとき、興味を引くページ加えて視覚的に興味を引かないページ（すなわち、視覚的に退屈なページ）もいくつかある。これらはより興味を引くので、ユーザはそのうちの１つに停止したいと思うこともある。それゆえ、ジャンプバックするとき、システムはより興味を引くと考えられるページの１つに停止する。このように、本方法は、ページナビゲーションシステムの振る舞いに興味度尺度を組み込む。文書のページの興味度を決定する可能なアルゴリズムを下に説明する。一実施形態では、一組のページは興味度に基づきスコア付けされる。興味度はその顕著性と識別性を指す。一実施形態では、ページをランク付けするプロセスは２つの動作を有する。第１の動作は各ページを分析して、様々な視覚的特徴によってそのページを特徴づける視覚的構造の重要な部分を発見する。第２の部分は、各ページが様々な次元で他のページから以下に異なるかを決定する。最後に、いくつかの特徴は他の特徴よりも重要なので、システムは各ページの興味度スコアを決定する際に各々に異なった重みづけをする。
【０１５１】
一実施形態では、各ページの興味度スコアはそのページの視覚的特徴に基づく。このように、システムは、ページを視覚的に区別し停止するのに特によい場所とする特徴を特定する。一実施形態では、ページを視覚的に区別する特性のセットには、チャプターヘディング（大きなフォントでセンタリングされていることもある）、セクションヘディング（大きなフォントで行は短い）、ユーザが書いた注釈が含まれている、写真またはグラフの数とサイズ、テーブルの数とサイズ、コラムの数、及び／または前のページにブランクスペースが多くあることが含まれる。前のページのブランクスペースがあることは、チャプターまたはセクションの始めであることを示していることがあることに注意せよ。このように、セクションの最初のページは実際視覚的に区別できないかもしれないが、重要な停止点であり、ブランクスペースが多いということは、新しいチャプターやセクションの始まりを示している。
【０１５２】
興味度を示す特徴を特定すると、本システムのソフトウェアコードがページ画像内のこれらの特徴を発見する。１つのページ上にこの特徴を発見するため、ページ解析またはセクメント化を使用する。かかるページ解析とセグメント化をする周知例は多数ある。本システムは、各ページ上の様々な特徴の存在（またはその不存在）を判断し、各次元についてそのページの数値的スコアを計算する。このように、各ページについて、本システムは、これらの特徴の各々からなる「特徴ベクトル」の値を計算する。例えば、テキストのみのページの「写真カバレッジ（picture  coverage）」スコアはゼロであるが、ページの半分が大きな写真であるページの写真カバレッジは５０である。ほとんどのページの「コラムカウント（column  count）」特徴のスコアは１であるが、少数のページは２つのコラムを有し、コラムカウントは２である。注釈の存在に関しては、一実施形態では、本システムはユーザがマークを残したページの別の領域の数を決定する。
【０１５３】
このように、特徴抽出と記録を用いて、本システムは各ページの各特徴について数値的スコアを計算する。この特徴ベクトルは、そのページの顕著な視覚的特性を特徴付ける。
【０１５４】
次のフェーズは、識別性決定を実行することである。一実施形態では、ページの識別性はそれ自体の特徴のみでなく、周りのページと比較してその特徴がいかにことなるかに依存している。識別性を捕捉するため、本システムは、各特徴（次元）について、そのページがいかに普通でないかを表すスコアを、計算する。一実施形態では、これは２つのフェーズで行われる。最初に、各次元について、本システムはこの次元の全てのページのスコアの「分布」テーブルまたはヒストグラムを計算する。例えば、「グラフィカルカバレッジ（graphical  coverage）」ヒストグラムは、図１７のようなものであり、ほとんどのページが写真を有さず少しのページが大きな写真を有している文書を表している。
【０１５５】
与えられた次元についてスコアがいかに分布しているかの表示を用いて、本システムは、各スコアがいかに普通でないかを示す尺度を計算する。一実施形態では、本システムは、与えられたスコアよりもすべてのページの「モードから遠い」パーセンテージを各スコアに対して計算する。これは次のように実行することができる：最初に、本システムはモード（最も一般的なスコア）を計算し、その関心スコアについて、本システムは、モードのどちら側にそれがあるか決定し、評価しているスコアよりも（同じ方向で）より極端なスコアを有するページがいくつあるかを計算する。これは「逆パーセンテージ（inverse  percentile）」スコアと同様である。それをモードの他の側のモードから離れたスコアより、極端ではないとカウントするために、同じ側のトータルを越える同じスコアのグループに到達するまで、スコアを２倍して、他の極端なスコアの上の各スコアの記録に加える。この結果、そのスコアよりも極端なそのスコアを有するページの数の各スコアを計算できる。ページのトータル数からこれを引いて、その結果をページのトータル数で割ると、与えられたページよりも極端でないページの割合が得られる。明りょうにするため、これに１００をかけて、この次元についての各スコアのパーセンテージランキングを与える。これはスコアを有する任意のページのこの次元についての識別性ランクである。
【０１５６】
プロセスの次のフェーズは重みづけ演算を実行する。特徴が違えば割り当てられる重みづけも異なる。例えば、ページに大きな写真があることは、マイナーなセクションヘディングよりも顕著であろう。一実施形態では、ページの興味度または識別性を計算するにあたり、本システムはすべての次元について興味度スコアを単に合計するのではなく、異なる重みづけをする。テーブル１は１組の特徴について使用される１組の重みづけを表す。
【０１５７】
【表１】
0005298433.tif 000010
本システムは、ページ全体の興味度値を決定するために、特徴ベクトルの値に上記の重みをかけ、その積を合計する。
【０１５８】
一実施形態では、本システムは一定範囲内の興味値を求める。すなわち、本システムは全てのスコアを値の或る範囲に規格化する。一実施形態では、その範囲は０〜１００である。スコアを規格化するため、本システムは、全てのスコアを最大のスコアで割り、所望の範囲の上限値をかける。一実施形態では、この上限値は１００である。
【０１５９】
以下の一連のフローチャートは文書のページの各集まりの相対的「興味度」を計算するためのアルゴリズムを説明するものである。
【０１６０】
基本的なスカラー（量）とデータ構造は以下の通りである：
・nFeatures−ページから抽出する特徴の数であり、これに基づき計算を行う。
・wights[]−様々な特徴の相対的重要性を表すnFeatures個の整数のベクトルである。
・nPages−文書中のページ数である。
・page−少なくとも２つの成分を有するデータ構造である。
・features[]−nFeatures個の整数の配列であり、ページの特徴「scores」を保持するために使用する。
・interestingness−計算する値である。
・pages[]−nPages個のページ構造のベクトルである。
【０１６１】
［スコアリング機能］
特徴を抽出しスコアリングする時、ページはセグメント化され、その構造と興味度計算が行われる様々な特徴の存在とを発見する一実施形態では、これは（ここでは説明しないが、周知である）Segment(page)関数を用いて実行される。この関数は、ページの特徴スコアを計算する関数への入力として必要なそのページのいかなるデータも生成する（例えば、ComputeFeatureValue(page,featureI)関数）。このフェーズの出力により、ページのfeaturesベクトルに各特徴のそのページの「scores」が入れられる。
【０１６２】
図１５は、特徴抽出及びスコアリングプロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１６３】
図１５を参照して、本プロセスは処理ロジックが変数pageIをゼロに設定し（処理ブロック１５０１）、page変数をその文書中のページ数（nPages）についてのページ構造のベクトルpage[]中のpageI位置の値に設定する（処理ブロック１５０２）ことにより始まる。
【０１６４】
次に、処理ロジックはセグメント化プロセスを用いてそのページをセグメント化する。一実施形態では、セグメント化プロセスは、Segment(page)関数により実行される。この関数は多数の周知のセグメント化関数の１つであってもよい（処理ブロック１５０３）。
【０１６５】
セグメント化後、処理ロジックは、nFeatures個の整数のpage.featuresベクトルを生成する。ここで、nFeaturesはページについて抽出された特徴の数を指し、興味どの計算はこれに基づいて行われる（処理ブロック１５０４）。これは、ページの各特徴について計算される特徴スコア値を格納する場所である。また、処理ブロック１５０４の一部として、処理ロジックは、featureI変数の値をゼロに設定する。
【０１６６】
その後、処理ロジックは、page.featuresベクトル中の位置featureIにある値を、ComputeFeatureValue(page,featureI)と呼ばれる手続を呼んだ結果に設定する（処理ブロック１５０５）。この手続は、以下に詳しく説明する。ComputeFeatureValue手続は、セグメント化されたページ情報をfeatureIにより表された特徴のスコアにマップする。
【０１６７】
ComputeFeatureValue手続を実行し、その結果を記憶した後、処理ロジックは、変数featureIの値が計算されている特徴の数引く１に等しいかどうかテストする。等しくなければ、計算する特徴がまだあり、処理ロジックは、処理ブロック１５０７に進み、次に処理ブロック１５０５に進み、次の特徴についてのスコアが計算される。
【０１６８】
そのページの全ての特徴がスコアリングされると、処理ロジックは変数pageIが文書中のページ数（nPages）引く１に等しいかチェックする。等しければプロセスは終了する。等しくなければ、処理ロジックは、変数pageIの値をインクリメントし（処理ブロック１５０９）、処理ブロック１５０２に進み文書の次のページを処理する。
【０１６９】
［ComputeFeatureValue(page,featureI)］
関数ComputeFeatureValue関数の目的は、１つのページのある特徴の存在、不存在、量の生の記述をその特徴のスコアにマッピングすることである。一実施形態では、この関数は、ComputeNColumnsVal(page)、ComputeGraphicsVal(page)、ComputeBlanknessVal(page)等のその他の特徴固有関数（feature  specific  functions）の存在に依存する。これらのそれぞれは具体的な特徴のスコアを計算する。例えば、テキストのみのページの「グラフィックス」スコアはゼロであるが、ページの半分が大きな写真であるページの写真カバレッジは５０である。ほとんどのページの「nColumns」特徴のスコアは１であるが、少数のページは２つのコラムを有し、コラムカウントは２である。注釈の存在に関しては、ユーザがマークを残したページの別の領域の数を決定する。
【０１７０】
図１６は、特徴値算出プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１７１】
図１６を参照して、プロセスは変数pageとfeatureIの値の入力を受け取る（処理ブロック１６０１）。これらの入力を用いて、処理ロジックは、変数featureIの値がコラムカウント特徴（NCOLUMNS_FEATURES）の符号に等しいかテストする（処理ブロック１６０２）。等しければ、処理ロジックは、変数valの値がそのページのコラム数を示すスコアを計算する関数（computeNColumnsVal(page)）の結果と等しく設定し、プロセスは変数valの値を出力する（処理ブロック１６１０）。
【０１７２】
変数featureIの値がコラムカウント特徴の符号と等しくない場合、処理ロジックはその値がグラフィックス特徴（GRAPHICS_FEATURES）を示すかテストする。正しければ、処理ロジックは、変数valの値をグラフィックス特徴のスコアを計算する関数（ComputeGraphicsVal(page)）の実行結果に設定し（処理ブロック１６０５）、プロセスは変数valの値を出力する（処理ブロック１６１０）。
【０１７３】
featureIの値がグラフィックス特徴を表していない場合、処理ロジックは、ブランク特徴に対応するかテストする（処理ブロック１６０６）。正しければ、処理ロジックは、変数valの値をページのブランク特徴のスコアを計算する関数（ComputeBlanknessVal(page)）の計算結果に設定し、プロセスは変数valの値を出力する（処理ブロック１３１0）。一般的に、処理は、featureIの与えられた値に対応する特殊な関数computeXYZVal(page)が呼ばれ、その結果が返されるまで続く。
【０１７４】
［各特徴の分布テーブルの生成］
一実施形態では、各関数の分布テーブルを生成するプロセスは、基本的に、ｘ軸はある特徴の可能なすべてのスコアのセットであり、ｙ軸はそのスコアを示すページ数であるヒストグラムを生成する。アルゴリズムの結果、２つのベクトルmaxValsとdistributionsが作られる。maxValsはnFeatures個の整数のベクトルであり、各特徴について任意のページで見つかるその特徴の最大スコアを与えるものである。distributionは整数のnFeatures個のベクトルのベクトルである。各distribution[i]はmaxVals[i]+１個の整数のベクトルであり、i番目の特徴の分布テーブルを与える。
【０１７５】
図１８は、各特徴の分布テーブル生成プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１７６】
図１８を参照して、フローチャートの上半分の目的（すなわち、処理ブロック１８０８より上）は、各特徴の最大観測値の計算である。本プロセスは、nFeatures個の整数のベクトルmaxValsを生成することにより始まる。このブロックでは、各特徴の最大スコアを記憶し、変数featureIの値を０に設定する（処理ブロック１８０１）。処理ロジックは、変数pageIの値も０に設定し、ベクトルmaxVals中の位置featureIもゼロに設定する（処理ブロック１８０２）。
【０１７７】
処理ロジックは、変数pageの値を位置pageIにあるpages下区取るの値に設定し、変数pageValの値をベクトルpages.features中の位置featuresIにある値に設定することにより、各特徴の最大値を計算する（処理ブロック１８０３）。処理ロジックは、変数pageValの現在の値が、その特徴（maxVals[featureI]）についていままで出てきた最大値よりも大きいかどうかテストする（処理ブロック１８０４）。大きければ、処理ロジックはその特徴の最大値ベクトルエントリーをページ値に設定し（処理ブロック１８０５）、処理ブロック１８０６に送る。なければ、直接処理ブロック１８0６に進む。
【０１７８】
処理ブロック１８０６において、処理ロジックは、変数pageIの値が文書中のページ数−１であるかテストする。等しくなければ、処理ロジックは、変数pageIの値をインクリメントし（処理ブロック１８0７）、処理ブロック１８0３に進み次のページを続けて処理する。変数pageIの値が文書中のページ数−１と同じでなければ、処理ロジックは処理ブロック１８０８に進む。
【０１７９】
処理ロジックは、与えられた特徴の観測された最大値を計算したことになる。この時点で、所望の分布テーブルを生成するプロセスに進む。処理ブロック１８０８において、処理ロジックは、与えられた特徴について、maxVal＋１個の整数のベクトルを生成し、それをdistributionsベクトルのfeatureI番目の位置に格納する。（この新しいベクトルの全ての値はゼロに初期化されていると仮定する。）処理ロジックは変数pageIの値をゼロに設定する。
【０１８０】
次のループの目的は、与えられた特徴のいろいろなスコアを記録し、新しく生成された分布ベクトルにその結果を記憶することである。そうするために、処理ロジックは、変数pageの値を変数pageIの値により指定された場所にあるpagesベクトル中の値に設定し、変数pageValの値を変数featureIの値により指定された場所にあるベクトルpage.features中の値に設定する。pageValは与えられた特徴についてのこのページのスコアを保持している。与えられたスコアの出現は、新しく生成されたベクトル中のスコアのエントリーをインクリメントすることにより記録される（処理ブロック１８０９）。
【０１８１】
その後、処理ロジックは、変数pageIの値が文書中のページ数−１と同じであるかテストする（処理ブロック１８１０）。等しくなければ、処理ロジックは、変数pageIの値を１だけインクリメントし（処理ブロック１８１１）、この特徴の次のページのスコアを記録するために、処理ブロック１８0９に進む。最終ページを処理したら（pageI=nPage-1）、処理ロジックは処理ブロック１８１２に進み、処理ロジックは変数featureIが考えている特徴の数−１であるかテストする。等しくなければ、処理ロジックは、変数featureIの値を１だけインクリメントし（処理ブロック１８１３）、処理ブロック１８0２に進み次の特徴を処理する。等しければ、処理は終了する。
【０１８２】
［各特徴のパーセンテージテーブルの生成］
図１９Ａと図１９Ｂは、各特徴のパーセンテージテーブルの生成プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１８３】
図１９Aと１９Bのプロセスは、興味度計算の中心フェーズである。図１８に示したプロセスの事前実行を前提とするが、それにより計算されるmaxValsテーブルとdistributionsテーブルを使用するからである。各特徴について、本プロセスは、各観測されたスコアをそのスコアの「パーセンテージ」ランキングに変換し、その特徴のそのスコアを示すページが以下に「普通でないか」または「異なるか（distinct）」を示すものである。本プロセスの結果は、percentiles[]と呼ばれる新しいベクトルの生成である。percentiles[]は整数のnFeatures個のベクトルのベクトルである。各percentiles[i]はmaxVals[i]+1個の整数のベクトルであり、i番目の特徴について観測されたスコア全てのパーセンテージランキングを与える。
【０１８４】
図１９Ａと１９Ｂを参照して、本プロセスは、処理ロジックが、変数featureIの値を０に設定することにより始まるが、これはパーセンテージテーブルが計算される視覚的特徴の最初の特徴を表している（処理ブロック１９０１）。他の重要な２つの変数をここで説明する必要がある。変数modeは与えられた特徴の「最も頻度が高い」スコアを表し、変数valIはその特徴の全ての観測されたスコアにわたった範囲を有する。処理ロジックは、変数vaIをゼロに設定する（全てのスコアの範囲の底）。図１９Aと１９Bに示したプロセスは、CalcMode関数（図２０に示し、以下に説明する）の存在を前提としている。この関数は、図１８で計算されたdistributionベクトルから任意の特徴の「最も頻度が高い」スコアを計算する。処理ロジックは、featureIで表された特徴のこの関数をコールして、変数modeの値をその結果に設定する（CalcMode(featureI)）。この特徴の観測されるスコアをすべて保持するほど十分大きい整数の新しいベクトルを生成し、これをpercentilesベクトル中のfeatureI番目の位置に格納する（処理ブロック１９０２）。このベクトルは、この特徴の各スコアについて計算されるパーセンテージランキングを格納する場所である。このプロセスの中心的動作は、処理ブロック１９１９であり、与えられた特徴スコアの「パーセンテージ値」が構成されたベクトルに記憶される。このパーセンテージ値は、与えられたスコアについて、そのスコアよりモードに近いスコアの頻度を表すことを意図している。これが、変数percentileの意味であり、ほとんどの計算するプロセスのタスクである。
【０１８５】
初期化後、本プロセスは、与えられた特著のスコアvalIのパーセンテージランキングを計算することにより始まる。valIの任意の与えられた値は、modeより大きくても、小さくても、等しくてもよい。この３通りの場合は別々に処理される。最初に、処理ロジックは、変数valIの値が変数modeの値より大きいかテストする（処理ブロック１９０３）。
【０１８６】
valIの値がmodeの値よりも大きくない場合、valIの値がmodeの値よりも小さいかどうかテストする（処理ブロック１９０４）。小さくなければ、すなわち、２つの値が等しい場合、処理ロジックは変数percentileの値を０に設定し（valIよりmodeに近いスコアはないことを意味している）、処理ブロック１９１９に進み、処理ロジックはこのパーセンテージランキング（０）を記録する。一方、valIの値がmodeよりも小さい場合、処理ロジックはこの特徴についてより低い、すなわち同じ方向でmodeからより遠い、スコアを有するページの数をカウント始める。変数nOutsideはこのカウントとトラッキングし、処理ロジックはそれを０に初期化する。変数lessIはvalIより小さい可能なスコアにわたる範囲を有し、これも０に初期化される（処理ブロック１９１２）。処理ロジックは、変数lessIの値が変数valIの値よりも（まだ）小さいかテストする（処理ブロック１９１３）。小さければ、処理ロジックは、この特徴についてlessIのスコアを有するページの数だけ、nOutside変数の値を増大する。次に、処理ロジックは、lessIの値をインクリメントし、処理ブロック１９１３に戻り、valI以下のスコアがカバーされたかどうか判断する。カバーされた場合、処理ロジックは、処理ブロック１９１５に進み、この特徴のいくつのページスコアがvalIよりも極端であり、modeの他の側（高い側）にあるかの予測の計算を開始する。この記録は変数nOtherSideに格納される。この変数は０に初期化されている。他の変数は、より高いスコア値にわたる範囲を有する（lessIが低いスコア値の範囲だったのと同様である）。この変数は、moreIとここでは呼ばれ、処理ロジックは、これを観測される最も高いスコアに初期化する。この変数はベクトルmaxValsの位置featureIに格納される（図１８の上半分の処理中に）（処理ブロック１９１５）。目標は、いくつのページスコアがvalIよりも極端かを決定することである。これの達成は、スコアのクランプ（clump）がカウントされる場合valIよりも小さいスコアの数よりもトータルを押し上げるまで、スコアの最大クランプ（或るスコアを示すページの数）を全てカウントすることにより行う。このスコア数はnOutsideに記録される。処理ロジックは、変数nOtherSideの現在の値と次のクランプのサイズ（distributions[featureI][moreI]）を足したものが、nOutsideの値より大きいかテストする（処理ブロック１９１６）。大きくなければ、処理ロジックは、そのクランプ（distributions[featureI][moreI]）のサイズだけnOtherSideを大きくし、次に低いスコアを考慮するため、moreIをデクリメントする（処理ブロック１９１７）。処理は処理ブロック１９１６に戻る。同じスコアを有するページのクランプがnOtherSideに足された場合、nOutsideを越えさせる時、処理ロジックは処理ブロック１９１８に進む。このブロックは後で説明する。ここまでの処理（処理ブロック１９１２から１９１７）は、valIがmodeよりも小さい場合、nOutsideとnOtherSideにvalIよりも極端なスコアの数を含ませる。
【０１８７】
処理ブロック１９０５から１９１０は、valIがmodeよりも大きい場合、同じ結果を達成する。これらはブロック１９１２から１９１７までと多かれ少なかれ同じである。変数moreIの範囲は、valIよりも大きいページスコアの全てのトータルがnOutsideに集積されるので、valIより大きいスコアにある。次に、lessIは、valIより極端なこの特徴の低いページスコアの数の予測をnOtherSideが保持するまで、最も低いスコアの範囲にある。最後に処理ロジックはブロック１９１８に進む。
【０１８８】
ここで、処理ブロック１９１８において、処理ロジックはこのプロセスの中心的計算を実行する。このプロセスは、変数nOutsideにnOutsideとnOtherSideの合計を格納する。これは、この特徴のスコアがvalIよりも極端であるページのトータル数を表す。この数字が高いほど、valIスコアは一般的であり、それを示すいかなるページも退屈である。ページの興味度の予測が求められ、それらの退屈度ではないので、処理ロジックは、valIと同じか極端に低いスコアを有するページの数、すなわちnPages-nOutsideを計算し、この値を変数nInsideに格納する。最後に、処理ロジックは、これをページのトータル数で割って１００をかけてパーセンテージに変換し、この値をpercentile変数に格納する（処理ブロック１９１８）。
【０１８９】
最後に、処理ブロック１９１９において、現在の特徴のvalIスコアのpercentileランキングが、計算されるpercentilesテーブルに格納される。（percentiles[featureI]）は、featureIにより表される特徴のすべての観測されるスコアのパーセンテージランキングのベクトルである。）
処理ロジックは次に、この特徴（maxVals[feature]に記憶されている）の観測されたスコアであって、valIをこの特徴の観測された最大スコアと比較することにより、パーセンテージランキングを計算する必要があるものがあるかどうかテストする。その場合、すなわち、valIがまだmaxVals[featureI]-1に等しい場合、処理ロジックは、valIをインクリメントし、処理ブロック１９０３に進み、新しいvalIの値で表されたスコアのパーセンテージランキングを計算する。
【０１９０】
一方、この特徴の全ての観測されたスコアが考慮された場合、しょりはブロック１９２１に進み、featureIをnFeatures-1と比較することにより、考慮する特徴がまだあるか決定する。まだ特徴がある場合（すなわち、featureIがまだnFeatures-1に等しくない場合）、処理ロジックは特徴インデックスfeatureIをインクリメントし、ブロック１９０２にループバックし、modeと次の特徴の観測されたスコアのパーセンテージランキングとを計算する。考慮する特徴がもうなければ、処理ステップはpercentilesテーブルを完全に満たしている。
【０１９１】
［分布テーブルのモード値の計算］
図２０は、与えられた特徴の分の「モード」値の計算プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１９２】
図２０を参照して、プロセスは、処理ロジックが最頻スコアを計算する特徴を表す入力として変数featureIの値を受け取る（処理ブロック２００１）ことにより始まる。本プロセスはこの特徴の観測されたスコアにわたって繰り返され、どの特徴がそのスコアを表すページを最も多く持つか調べる。処理ロジックは、観測されたスコアにわたって繰り返すvalI変数の値を０に設定し、変数highSoFarの値を０に設定し、変数modeの値を０に設定することにより始まる（処理ブロック２００２）。処理ロジックは、val変数の値を、この特注のvalIのスコアを表すページ数の記録を保持するdistributions[featureI][valI]に設定する（処理ブロック２００３）。
【０１９３】
処理ロジックは変数valの値が変数highSoFarの値よりも大きいかてすとする。この変数は、もちろん、いままでに出現した最も頻度の高いスコアを表すページ数を追跡するものである（処理ブロック２００４）。その場合、処理ロジックは変数modeの値を変数valIの値に設定し、変数highSoFarの値を変数valの値に設定する（処理ブロック２００５）。どの場合にも、変数valIの値を変数featureIの値により指定されたベクトルmaxValsの位置に格納された値と比較することにより、観測されたスコアのすべてがテストされたかテストする（処理ブロック２００６）。等しくなければ、処理ロジックはvalI変数の値をインクリメントし（処理ブロック２００７）、処理ブロック２００３に戻る。等しければ、変数modeの値の出力でプロセスは終了する。この変数は、その特徴の最頻スコアを表す。
【０１９４】
［特徴識別スコアの重みづけ合計として各ページの重要性の計算］
図２１は、各ページの重要性の判断プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０１９５】
フロー図は、内側ループと外側ループよりなり、外側ループはページについて繰り返され、内側ループは特徴について繰り返され、そのページの興味度スコアを計算することが分かる。
【０１９６】
本プロセスは、各ページについて、その様々な特徴スコアの識別性を組み合わせて、そのページ全体としての「興味度」スコアを求める。本プロセスは簡単な「重みづけ合計」計算である。重みは各特徴に割り当てられ、与えられた特徴のページのスコアの「パーセンテージ」ランキングがかけられ、その積が合計される。このアルゴリズムの結果は値page.interstingnessの計算である。
【０１９７】
図２１を参照して、処理ロジックは、変数pageIの値を０に設定し（処理ブロック２１０１）、変数pageの値をpagesベクトルの位置pageIにある値に設定し、変数scoreの値を０に設定し、変数featureIの値を０に設定する（処理ブロック２１０２）。
【０１９８】
主な処理ブロックであるブロック２１０３において、処理ロジックは変数scoreの値を現在の特徴の重みづけ値だけ増大する。処理ロジックは、変数featureValの値を、このページのこの特徴のスコアを表すベクトルpage.features中の位置featureIにある値に設定する。処理ロジックは、percentilesテーブル唐子のスコアの識別性値を抽出し（perctiles[featureI]）、これをpercentile変数に格納する。処理ロジックは、これにweights[featureI]をかけて重みづけし、この積を変数featureScoreに格納する。集積しているscore変数に最終的には加えられる。
【０１９９】
処理ロジックは内側ループを続けるかチェックする。変数featureIの値がnFeatures変数の値−１と等しいかテストする（処理ブロック２１０４）。等しくなければ、処理ロジックは、変数featureIの値を１だけインクリメントし（処理ブロック２１0５）、処理ブロック２１0３に戻る。等しければ、処理ロジックは、変数page.interestingnessの値を変数scoreの値に等しく設定することにより、ページの興味度スコアを格納する。処理ロジックは外側ループを続けるかチェックする。変数pageIの値がnPages変数の値−１と等しいかテストする（処理ブロック２１0７）。等しくなければ、処理ロジックは、変数pageIの値を１だけインクリメントし（処理ブロック２１0８）、処理ブロック２１0１に戻る。等しければ、処理は終了する。
【０２００】
［すべてのページ興味度スコアの規格化］
一実施形態では、すべてのpage.interestingness値は所定範囲に入る。すべてのpage.interestingness値が０と１００の間に入ることを補償するアルゴリズムを以下に説明する。
【０２０１】
図２２は、規格化プロセスの一実施形態を示すフロー図である。このプロセスは、ハードウェア（例えば回路、専用ロジック等）、（汎用コンピュータシステムまたは専用機上で実行される）ソフトウェア、またはこれらの組み合わせを含む処理ロジックにより実行される。
【０２０２】
図２２に示したプロセスは２つのループを含む。最初のループは最大ページ興味度スコアを計算するものであり、max変数に格納される。第２のループは、すべての興味度スコアが０と１００の間の範囲に入るように構成される。
【０２０３】
図２２を参照して、処理ロジックは、最初に、変数pageIとmaxの値を０に設定する（処理ブロック２２０１）。処理ロジックは、次に、page変数の値をpagesベクトル中のpageIの位置にある値に設定し、変数pageScoreの値を変数page.interestingnessの値に設定する（処理ブロック２２０２）。
【０２０４】
処理ロジックは、変数pageScoreの値が変数maxの値よりも大きいかテストする（処理ブロック２２0３）。大きければ、処理ロジックは、変数maxの値を変数pageScoreの値に設定する（処理ブロック２２０４）。次に、処理ロジックは、変数pageIの値が変数nPagesの値−１と等しいかテストすることにより、全てのページについて繰り返しが終わったかテストする（処理ブロック２２０５）。等しくなければ、処理ロジックは、変数pageIの値を１だけインクリメントし（処理ブロック２２0６）、処理ブロック２２0２に戻る。
【０２０５】
全てのページのスコアが調べられたら（pageI=nPage-1）、処理ロジックは第２のループの準備として２つの変数を初期化する。ページ興味度スコアとかけた時に、それらをすべて範囲０から１００にフィットさせるようにスケールする補正ファクタが計算され、変数correctionFactorに格納される。一実施形態では、この補正ファクタは、第１のループで計算され、変数maxに格納された最大の観測された興味度スコアで１００を割って計算される。ページにわたって繰り返しを開始するために、変数pageIは０に設定される（処理ブロック２２０７）。
【０２０６】
処理ブロック２２０８では、処理ロジックは、現在のページの全体的な興味度スコアを次のように補正ファクタでスケールする。現在のページデータ構造がベクトルpagesから抽出され、変数pageに格納される（page=pages[pageI]）。興味度スコアは、補正ファクトとかけられて、その積がデータ構造のフィールドinterestingnessに格納される（page.interestingness*=correctionFactor）。
【０２０７】
処理ロジックは、次に、pageI==nPages-1であるかテストすることにより、このスケーリング動作がすべてのページにわたって繰り返されたかどうか、テストする。まだなら、ページインデックス変数pageIをインクリメントし、処理ブロック２２０８に戻る。終わっていれば、処理は終了する。
【０２０８】
［コンピュータシステム例］
図２３は、ここに記載した１つ以上の動作を実行するコンピュータシステムの例を示すブロック図である。図２３を参照して、コンピュータシステムは、クライアントまたはサーバのコンピュータシステムを含む。このコンピュータシステムは、情報をやりとりする通信メカニズムまたはバス２３１１と、情報を処理する、バス２３１１に結合したプロセッサ２３１２とを有する。プロセッサ２３１２は、例えばペンティアム（商標）プロセッサ等のマイクロプロセッサを含むが、マイクロプロセッサに限定されない。
【０２０９】
本コンピュータシステムは、さらに、プロセッサ２３１２により実行される情報及び命令を格納する、バス２３１１に結合したランダムアクセスメモリ（ＲＡＭ）またはその他のダイナミック記憶装置２３０４（ここではメインメモリと呼ぶ）を有する。メインメモリ２３0４は、プロセッサ２３１２による命令の実行中に、一時的変数やその他の中間情報を記憶するために使用される。
【０２１０】
本コンピュータシステムは、プロセッサ２３１２の静的情報や命令を記憶する、バス２３１１に結合した読み出し専用メモリ（ＲＯＭ）及び／またはその他の静的記憶装置２３0６と、磁気ディスク、光ディスクとその対応するディスクドライブ等であるデータ記憶装置２３0７とを有する。データ記憶装置２３0７は、情報と命令を記憶し、バス２３１１に結合している。
【０２１１】
本コンピュータシステムは、コンピュータのユーザに情報を表示するための、バス２３１１に結合した、陰極線管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）等のディスプレイ装置２３２１に結合している。英数字入力装置２３２２は、英数字その他のキーを含み、バス２３１１に結合され、プロセッサ２３１２に情報とコマンド選択を送る。追加的なユーザ入力装置として、マウス、トラックボール、トラックパッド、スタイラス、またはカーソル、方向キー等のカーソル制御２３２３があり、バス２３１１に結合し、プロセッサ２３１２に方向情報とコマンド選択を送り、ディスプレイ２３２１上のカーソルの動きを制御する。
【０２１２】
バス２３１１に結合した他の装置としてハードコピー装置２３２４がある。このハードコピー装置２３２４は、紙、フィルム、その他のメディア上に、命令、データ、その他の情報を印刷するために使用される。さらに、スピーカ及び／またはマイクロホン等の音声録音再生装置も任意的にバス２３１１に結合しており、コンピュータシステムのオーディオインターフェイスとして機能する。バス２３１１に結合する他の装置として、電話やハンドヘルドパームトップ装置と通信する、有線または無線の通信機能２３２５がある。
【０２１３】
コンピュータシステム２３00のどの構成要素もそれに関連するハードウェアも、本発明で使用してもよい。例えば、一実施形態では、方向及び強度制御信号を生成するジョイスティックやシャットルホィール装置が含まれる。しかし、言うまでもなく、他の構成のコンピュータシステムでは、これらの構成要素の一部または全部を含んでもよい。
【０２１４】
上記の説明を読んだ当業者には本発明の変形例や修正例が明らかになったことは間違いなく、言うまでもなく、上記のどの実施形態も本発明を限定することを目的としたものではない。それゆえ、いろいろな実施形態の詳細の説明は、本発明に本質的であると考えられる特徴のみを記載した請求項の範囲を限定するものではない。
【図面の簡単な説明】
【０２１５】
本発明は、以下の詳細な説明と本発明のいろいろな実施形態を示した添付図面から、よりよく理解できるであろう。しかし、これらの実施形態は、本発明を限定されるものと解してはならず、説明と理解を目的としたものと解すべきである。
【図１】画像表示プロセスの一実施形態を示すフロー図である。
【図２】１つのページの顕著なコンテンツの識別を示す図である。
【図３】セグメント化を実行して１つのページの顕著なコンテンツを識別するプロセスの一実施形態を示すフロー図である。
【図４】ヒストグラムの例を示す図である。
【図５】単一のマージされたページに複数のページの顕著な特徴を結合するマージプロセスを示す図である。
【図６】複数ページの顕著な特徴を単一のマージ画像に結合するプロセスの一実施形態を示すフロー図である。
【図７】速さ制御プロセスの一実施形態を示すフロー図である。
【図８】画面に示されるページをリフレッシュするページリフレッシュタイマーの制御プロセスを示すフロー図である。
【図９】ジャンプ戻りプロセスの一実施形態を示すフロー図である。
【図１０】セグメント化及びマージシステムプロセスを実行するシステムの一実施形態を示す図である。
【図１１】ページ画像を表示するランタイムアプリケーションシステム部分を示す図である。
【図１２】画像表示プロセスの他の実施形態を示すフロー図である。
【図１３】画像表示プロセスのさらに別の実施形態を示すフロー図である。
【図１４】画像表示プロセスのさらに別の実施形態を示すフロー図である。
【図１５】特徴抽出及びスコアリングプロセスの一実施形態を示すフロー図である。
【図１６】特徴値算出プロセスの一実施形態を示すフロー図である。
【図１７】ほとんどのページに写真がなく少しのページに大きな写真がある文書の例である。
【図１８】各特徴の分布テーブル生成プロセスの一実施形態を示すフロー図である。
【図１９Ａ】各特徴の各スコアの百分率ランキングの生成プロセスの一実施形態を示すフロー図である。
【図１９Ｂ】各特徴の各スコアの百分率ランキングの生成プロセスの一実施形態を示すフロー図である。
【図２０】各特徴の「モード」すなわち最頻スコアの計算プロセスの一実施形態を示すフロー図である。
【図２１】各ページの重要性の判断プロセスの一実施形態を示すフロー図である。
【図２２】正規化プロセスの一実施形態を示すフロー図である。
【図２３】１つ以上の動作を実行するコンピュータシステムの例を示すブロック図である。
【符号の説明】
【０２１６】
１００１  ページ画像記憶装置
１００２  セグメント化Ｓ／Ｗ
１００３  マージＳ／Ｗ
１１０１  長期ページ画像記憶
１１０２  データ構造
１１０３  ディスプレイモニター
１１０４  コントローラ
１１０５  フリップアプリケーションソフトウェア
１１０６  制御信号
１１０７  マーキング信号
１１１０  ページ画像
１１１１  走り書き
１１１２  スピード制御モジュール
１１１３  ディスプレイモジュール
１１１４  走り書きモジュール
２３０４  メインメモリ
２３０６  スタティック記憶装置
２３０７  データ記憶装置
２３１２  プロセッサ
２３２１  ディスプレイ
２３２２  英数字入力装置
２３２３  ユーザ入力装置
２３２４  ハードコピー装置
２３２５  ワイヤレス通信機能
【図１】
0005298433.tif 000011
【図２】
0005298433.tif 000012
【図３】
0005298433.tif 000013
【図４】
0005298433.tif 000014
【図５】
0005298433.tif 000015
【図６】
0005298433.tif 000016
【図７】
0005298433.tif 000017
【図８】
0005298433.tif 000018
【図９】
0005298433.tif 000019
【図１０】
0005298433.tif 000020
【図１１】
0005298433.tif 000021
【図１２】
0005298433.tif 000022
【図１３】
0005298433.tif 000023
【図１４】
0005298433.tif 000024
【図１５】
0005298433.tif 000025
【図１６】
0005298433.tif 000026
【図１７】
0005298433.tif 000027
【図１８】
0005298433.tif 000028
【図１９Ａ】
0005298433.tif 000029
【図１９Ｂ】
0005298433.tif 000030
【図２０】
0005298433.tif 000031
【図２１】
0005298433.tif 000032
【図２２】
0005298433.tif 000033
【図２３】
0005298433.tif 000034