(57)【要約】      （修正有）【課題】基準となる位置を指定してその近くに文字列が存在するページを検索する。【解決手段】要求されたオブジェクトが配置されている画像を、検索対象の画像中において選択する情報処理装置において、検索対象の画像について、位置情報を入力する位置情報入力部１０１及び該画像中に要求されるオブジェクトを特定する特定情報を入力する特定情報入力部１０２と、対象の画像中の前記特定されたオブジェクトが配置されている位置と基準位置との距離を取得する距離取得部１０５と、前記取得した距離に基づいて、画像を選択する画像選択部１０６とを備える。【選択図】図１
2013011955.tif 000002
【特許請求の範囲】
【請求項１】
検索対象の画像について、該画像中の基準位置を示す位置情報及び該画像中に要求されるオブジェクトを特定する特定情報を入力する入力手段と、
前記検索対象の画像中において、前記特定されたオブジェクトが配置されている位置と前記基準位置との距離に基づいて、画像を選択する選択手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記検索対象の画像は複数の画像からなり、前記特定されたオブジェクトが配置されている画像が複数含まれる場合には、前記選択手段は、前記特定されたオブジェクトが配置されている位置と前記基準位置との距離が小さい順に画像を選択することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記距離とは、前記検索対象の画像を座標平面としたときの、該座標平面上における基準位置の座標と前記特定されたオブジェクトが配置されている位置の座標との間の距離であることを特徴とする請求項１又は２のいずれか１項に記載の情報処理装置。
【請求項４】
前記選択手段は、前記検索対象の画像を複数のエリアに分割し、該分割された複数のエリアのうち、前記基準位置が属するエリアと前記特定されたオブジェクトが配置されている位置の属するエリアとの関係から、前記距離を取得することを特徴とする請求項１乃至２のいずれか１項に記載の情報処理装置。
【請求項５】
前記距離とは、基準位置エリアを中心として、８方向を囲む大きさの異なる環状の複数のエリアに対し、基準位置からの離れる程大きくなるよう定義した距離のうち、前記特定されたオブジェクトが配置されている位置が属するエリアに定義された距離であることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記画像は文書ファイルを構成するページであり、前記オブジェクトは文字列であることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記選択した画像を表示する表示手段を更に備え、
前記検索対象の画像は、前記表示手段における画面にその一部が表示され、
前記選択手段は、前記検索対象の画像中において、前記画面に表示される一部の範囲を選択することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記検索対象の画像は、スクロールすることにより前記表示手段における画面にその一部の範囲が表示されることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項１乃至８
のいずれか１項に記載の情報処理装置として機能させることを特徴とするプログラム。
【請求項１０】
請求項９に記載のプログラムを記録したことを特徴とするコンピュータが読み取り可能なプログラム記録媒体。
【請求項１１】
入力手段により、検索対象の画像について、該画像中の基準となる基準位置を示す位置情報及び該画像中に要求されるオブジェクトを特定する特定情報を入力する入力工程と、
選択手段により、前記検索対象の画像中において、前記特定されたオブジェクトが配置されている位置と前記基準位置との距離に基づいて、画像を選択する選択工程と
を有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが指定した位置とオブジェクトとの距離を利用した検索を行う情報処理装置及びその制御方法、プログラム、コンピュータが読み取り可能なプログラム記録媒体に関する。
【背景技術】
【０００２】
従来、プレゼンテーション資料や文書ファイルからユーザによって指定された文字列を検索する方法が知られている。例えば、ユーザがあるページを選択する場合には、上記検索方法によって検索された文字列を含むページを候補とし、その候補の中から所望のページを選択する等が考えられる。
特許文献１には、プレゼンテーション資料から所望のページを検索するために、音声認識によって検索文字列を指定して検索を行うことが開示されている。ここでは検索文字列を含むページが縮小画像の一覧として表示され、ユーザはその一覧から所望のページを選択する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２６８６６７
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら特許文献１では、ユーザが過去に見たことがある画像について、画像中に含まれる文字列などのオブジェクトがどのあたりに配置されていたかを記憶していても、その位置までを有効利用して検索はしていない。
本発明は上記課題に鑑みてなされたものであり、画像中に含まれるオブジェクトの概ねの位置を記憶している場合に、その画像を効率よく検索する１技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、請求項１に記載の発明は、検索対象の画像について、該画像中の基準となる基準位置を示す位置情報及び該画像中に要求されるオブジェクトを特定する特定情報を入力する入力手段と、前記検索対象の画像中において、前記特定されたオブジェクトが配置されている位置と前記基準位置との距離に基づいて、画像を選択する選択手段とを有することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、画像中に含まれるオブジェクトの概ねの位置を記憶している場合に、その画像を効率よく検索することが可能になる。
【図面の簡単な説明】
【０００７】
【図１】機能及び制御の構成を示すブロック図
【図２】検索処理のフローチャート
【図３】検索対象のプレゼンテーション資料の１スライドを示した模式図
【図４】プレンテーション資料の一例を示した図
【図５】検索条件の入力処理の一例を模式的に示した図
【図６】距離取得を示す模式図
【図７】コンテンツの文字ごとに位置情報とサイズ情報を付与した例を示した模式図
【図８】基準位置と文字列との最小距離を取得する処理のフローチャート
【図９】複数の画像を対象に検索する場合の処理のフローチャート
【図１０】複数画像に対して基準位置と文字列の位置の距離を取得した場合の、各距離を表した模式図
【図１１】候補として選択された検索結果の表示の一例を示す図
【図１２】検索対象の文書ファイルの１ページを示した模式図
【図１３】文書ファイルの１ページを複数のエリアに分割しエリア識別ビットによって管理する一例を示した模式図
【図１４】エリア識別ビットの照合によって、基準位置と文字列の位置との距離が近い画像のグループを決定する処理のフローチャート
【図１５】文書ファイルの１ページを複数のエリアに分割しエリア識別ビットによって管理する一例を示した模式図
【図１６】基準位置と文字列との距離を取得する処理のフローチャート
【図１７】各エリアに基準位置との距離を定義する処理のフローチャート
【発明を実施するための形態】
【０００８】
以下、図面を参照しながら本発明の好適な実施例について説明する。
【０００９】
図１（ａ）は、本発明の実施形態の構成を示すブロック図である。
【００１０】
位置情報入力部１０１は、検索対象の画像について、基準位置を入力する。特定情報入力部１０２は、要求されるオブジェクトを特定する情報を入力する。
【００１１】
検索処理部１０３は、画像データベース（ＤＢ）１０４が保持する検索対象の画像の中から、特定されたオブジェクトが配置されている画像を検出する。
距離取得部１０５は、検索処理部１０３によって検出された画像上において特定されたオブジェクトが配置されている位置と、位置情報入力部１０１に入力された基準位置との距離を取得する。
【００１２】
画像選択部１０６は、距離取得部１０５が取得した距離に基づいて画像を選択する。結果表示部１０７は、画像選択部１０６が選択した画像を検索結果として表示する。
【００１３】
図１（ｂ）は、図１（ａ）の構成を本発明の典型的な実施形態であるコンピューティングシステムで実現する際の制御構成を示すブロック図である。
【００１４】
コンピュータ装置１０８におけるＣＰＵ１０９は、システムバス１１２を介して接続する各デバイスを総括的に制御する。ＣＰＵ１０９は、読み出し専用メモリ（ＲＯＭ）１１０もしくはハードディスク（ＨＤ）１１９に記憶された、あるいは外部メモリディスクドライブ１２０より供給される処理ステップやプログラムを読み出して実行する。同様に、ＣＰＵ１０９は、図２、図９などのフローチャートに示された工程を実行でき、検索処理部１０３、距離取得部１０５、画像選択部１０６として機能する。その際、ランダムアクセスメモリ（ＲＡＭ）１１１は高速にアクセス可能なＣＰＵ１０９の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【００１５】
ここで、ＨＤ１１９は、画像などのデータファイルや、オペレーティングシステム、アプリケーションなどにおける、コンピュータによって実行可能な工程をプログラムとして格納し、コンピュータ装置１０８によって実行されるデバイスドライバなどを格納する。
【００１６】
ディスクドライブ１２０は、そこへ挿入されたディスクデバイスからのデータを読み出し、そのディスクデバイスへデータの書き込みを行うためのインターフェースである。このディスクドライブ１２０を用いて、コンピュータによって実行可能な処理ステップや画像などのデータファイルがコンピュータ装置１０８に取り込まれ、ＨＤ１１９に格納される。従ってＨＤ１１９又はディスクドライブ１２０に挿入された記録媒体は、画像ＤＢ１０４としての機能を担う。
【００１７】
ＲＯＭ１１０は、基本Ｉ／Ｏ、スタートアップ、或いはキーボード１１５からのキーストローク受け付けのような基本的なシステム機能のための、コンピュータによって実行可能な不変の処理ステップを格納する。
【００１８】
また、キーボードコントローラ（ＫＢＣ）１１３は、キーボード（ＫＢ）１１５やマウス、タッチパネル、レーザポインタ等のようなポインティングデバイス１１４からの指示入力を制御する。従って位置情報入力部１０１及び特定情報入力部１０２として機能する。
【００１９】
ディスプレイコントローラ（ＤＳＰＣ）１１６は、ディスプレイ（ＤＳＰ）１１７の表示を制御することで、結果表示部１０７として機能する。ディスクコントローラ（ＤＫＣ）１１８は、ＨＤ１１９及びディスクドライブ１２０とのアクセスを制御する。
【００２０】
図１に示した構成による本実施形態が、基準位置とオブジェクトの画像上での位置との距離に基づいて画像を選択する基本的な処理内容を、具体的な実施形態に従って説明する。
【００２１】
＜第１の実施形態＞
第１の実施形態では、複数のスライドで構成されるプレゼンテーション資料から所望のスライドを選択する例を示す。
【００２２】
第１の実施形態における検索対象となるプレゼンテーション資料の１枚のスライドを模式的に図３に示す。３０１は、１枚のスライドが表示装置に表示されている画面の図であり、３０６は画面３０１に対応するドキュメントのＸＭＬデータを表す。画像３０２〜３０５はスライドの構成要素であり、それぞれ段落３０７〜３１０に対応する。構成要素（ｔｉｔｌｅ、ｆｉｇｕｒｅ）は、構成要素の種類（ｔｙｐｅ）、座標（ｏｆｆｓｅｔ）、サイズ（ｓｉｚｅ）、レイヤ（ｌａｙｅｒ）等の属性情報とコンテンツを持つ。レイヤ属性とは、構成要素の背面から前面への重ね合わせ順序である。ここでは数値が小さいほど背面に配置されるものとする。なお、レイヤ属性を設ける代わりに構成要素の記述順で重ね合わせ順序を表現してもよい。また、図３の画面３０１においてはスライドの左上隅を、スライドを座標平面としたときの原点（０，０）とした。
【００２３】
次に、ユーザが所望しているスライドを選択する選択処理を、図２のフローチャートを参照して説明する。
【００２４】
図４に、検索対象となるプレンテーション資料の一例を示す。スライド４０１〜４０８のそれぞれは、プレゼンテーション資料に含まれるスライドを示しており、スライド４０１〜４０８は順に１〜８枚目であるとする。ここでは、スライド４０２、４０３、４０４、４０６、４０７の中に文字列「ロードマップ」が含まれている。本実施形態では、ユーザが「ロードマップ」という文字列を検索条件として用い、その文字列が配置されているスライドを検索したい場合を考える。ユーザはスライド４０６を検索したいと考えており、文字列「ロードマップ」が右段上部にあったことを記憶しているとする。
【００２５】
図２のステップＳ０１では、キーボードコントローラ１１３の機能部としての位置情報入力部１０１と特定情報入力部１０２の入力を受理し、ステップＳ０２に移る。
【００２６】
図２のステップＳ０１における検索条件の入力処理の一例を、図５に示す。まずユーザは、基準となる位置情報として、所望する画像において検索条件のオブジェクト（文字列など）が配置されていた概ねの位置を、記憶を頼りに入力する。すなわち、ここでの基準位置とは、所望の画像において検索条件のオブジェクトが配置されていたとユーザが記憶している位置である。つまり、検索の結果得られる画像において、検索条件のオブジェクトが配置されていることが要求される位置の基準位置であり、言い換えると、ユーザは基準位置の近くにオブジェクトが配置されている画像を所望している。図５（ａ）では、ユーザが所望するスライド４０６において文字列「ロードマップ」が配置されていた右段上部の位置にマウスカーソル５０１をセットすることで、基準となる位置情報が入力される。位置情報は座標として保存される。なお、位置情報の入力にはポインティングデバイス１１４を用いることができる。また、キーボード１１５によって操作をしても、マイクから音声で「右上」などと発声して入力してもよい。（ｂ）では、右クリックによりメニュー５０２が表示される。メニュー５０２の中から検索を選択すると、検索文字列を入力するフォーム５０３が表示される。フォーム５０３にロードマップと入力し、エンターキーやリターンキーを押すことで検索が実行される。メニュー５０２やその他の表示部分に実行ボタンを備え、マウスカーソル５０１によるクリック操作で実行を指示しても構わない。
【００２７】
次に、ステップＳ０２では、ＣＰＵ１０９（その機能部としての検索処理部１０３）が、検索対象の画像が保存されている画像ＤＢ１０４を参照し、特定情報入力部１０２に入力された特定情報の示すオブジェクトが配置されている画像を検出する。更に、ＣＰＵ１０９（その機能部としての距離取得部１０５）が、検出された画像に含まれる上記オブジェクトの配置位置と、入力された基準位置との距離を取得して、ステップＳ０３に移る。
【００２８】
ステップＳ０２において、まず検索処理部１０３は、文字列や図形などのオブジェクトを公知の検索手段によって検索する。検索対象となる画像とは、例えばプレゼンテーション資料や文書ファイルなどのドキュメントを構成する、スライドやページである。そして、ドキュメントは１つの画像又は複数の画像で構成される。また、ドキュメントが複数存在してもよい。検索の結果として得られる情報は、オブジェクトが含まれるドキュメントと、そのドキュメント内の画像、その画像中のオブジェクトの配置位置の情報である。位置情報は、画像中のいずれかの場所（例えば左上）を起点とした座標情報を用いてもよいし、文字列であれば行数、文字数などの情報を利用した座標情報を用いてもよい。距離取得部１０５は、このように得られた位置情報と基準位置の情報から、その距離を取得する。ここでの距離とは、座標平面上における、基準位置座標とオブジェクトが配置されている位置の座標との間の距離である。
【００２９】
図６は、第１の実施形態において取得する距離を示す模式図である。図３の３０１を再び利用して、更に説明する。座標６０１は、ユーザが入力した位置であり、例えばマウスを右クリックした位置に相当する。座標６０２は、文字列「ロードマップ」が含まれる構成要素の座標であり、図３における段落３０９で示される位置情報に相当する。距離取得部１０５は、座標６０１と座標６０２の２点間の距離を計算する。Ｘ軸、Ｙ軸に従った座標として座標６０１を（ｘ１，ｙ１）、座標６０２を（ｘ２，ｙ２）とすると、距離Ｄ  は以下のように定義できる。
【００３０】
Ｄ＝√｛（ｘ１−ｘ２）＊（ｘ１−ｘ２）＋（ｙ１−ｙ２）＊（ｙ１−ｙ２）｝
なお、距離Ｄの求め方は上記に限らない。例えば、図３のＸＭＬデータ３０６などから得られるスライドのレイヤ構造を利用し、背面に配置されている構成要素ほど基準位置とオブジェクトの配置位置との距離が大きくなるよう重みを付けた距離を定義することもできる。
【００３１】
更に、図７は、コンテンツに含まれるオブジェクトの構成要素（ここでは文字）ごとに位置情報とサイズ情報を付与した例を示した模式図である。７０１は図３の３０６においてＸＭＬで表現した内容を抽出したものである。一方、７０２は、コンテンツの文字ごとに位置情報とサイズ情報が付与したものの一部である。例えば、文字「ロ」の位置情報（左上隅の座標）は（１４０，２０）であり、サイズは（８，８）である。位置情報とサイズ情報の付与は、事前に行ってもよいし、検索処理部１０３による検索の直前に行っても、検索後に検索されたオブジェクトに対してのみ行ってもよい。また、各文字の位置情報やサイズ情報の抽出は既存の技術を用いることができる。
【００３２】
このようにコンテンツの文字ごとに位置情報とサイズ情報を付与しておくことで、各文字の実際の位置を基準とした詳細な距離計算が可能になる。第１の実施形態における処理を、図８のフローチャートを参照して説明する。
【００３３】
図８のステップＳ８０１では、オブジェクト（文字列）を構成する最後の文字を処理したかどうかを確認し、未処理であればステップＳ８０２に移り、既に処理した場合には終了する。
【００３４】
ステップＳ８０２では、距離計算処理の対象とする文字を決定する。文字列を構成する全ての文字を計算する場合には、先頭から順に次の文字を選べばよい。また、適宜文字を間引いたり、文字列の先頭・中間・最後の文字のみを対象にしたりなど、速やかに計算処理するための工夫をしても構わない。例として、文字列「ロードマップ」の先頭文字「ロ」を、距離計算処理の対象として決定したとする。処理対象の文字を決定したら、ステップＳ８０３に移る。
【００３５】
ステップＳ８０３では、ユーザの入力位置と処理対象の文字の位置との距離Ｄを求める。７０２のように、処理対象文字「ロ」の位置情報（座標）は（１４０，２０）であり、サイズは（８，８）である。従って、ステップＳ０１でユーザが入力した基準位置座標と、座標（１４０，２０）によって距離Ｄを求めることができる。なお、ここで計算に用いた位置情報は、文字の左上隅の座標であったが、これに限られない。例えば文字サイズが大きければ、文字の中心の座標を用いる方が、よりユーザが認識している文字の位置に近い場合がある。その場合には、文字のサイズの情報から文字の中心の座標を求め、距離Ｄの計算に用いる。例としている文字「ロ」の場合には、文字サイズが（８，８）であることから、中心の座標は（１４４，２４）であるとがわかる。同様に、文字のサイズの情報を用いて文字の四隅の座標を求め、四隅それぞれについてまたは基準位置に近いと思われるいくつかについて基準位置座標との距離Ｄを計算し、最も小さいものを選ぶこともできる。距離Ｄを求めたら、ステップＳ８０４に移る。
【００３６】
ステップＳ８０４では、既に処理した文字で求めた距離Ｄの最小値と、処理中の文字での距離Ｄを比較し、小さい方を新たな最小値として保持し、ステップＳ８０１に戻る。処理が終了した時点で、保持している最小値をその文字列と基準位置の距離とする。
【００３７】
最後に、図２のステップＳ０３では、ＣＰＵ１０９の機能部としての画像選択部１０６が、距離取得部１０５が取得した距離に基づいて、要求されたオブジェクトが配置されている画像を選択し、終了する。例えば、距離が最も小さい画像を選択するように定める。基準位置は、所望の画像において検索条件となる文字列が配置されていたとユーザが記憶している位置であり、ユーザは基準位置の近くにオブジェクトが配置されている画像を所望している。つまり、取得した距離が最も小さい画像を選択することで、ユーザが望んだ条件に最も適合した画像を得ることができる。従って、第１の実施形態においては、スライド４０６が選択される。なお、変形例としては他の方法を採用してもよく、例えば、ある閾値よりも距離が小さい画像を選択してもよい。この場合、複数の画像が選択され得るが、ユーザの記憶を頼りに入力された基準位置に対して、ある許容範囲内にオブジェクトが配置されている画像を適切に選択することができる。
【００３８】
なお、要求されたオブジェクトが配置されている画像が、ドキュメント中に複数含まれていた場合には、取得された距離の小さい順に候補として選択する構成としてもよい。この構成によれば、ユーザの記憶が曖昧で、基準となる位置情報の入力が最適ではなかった場合でも、所望の画像である可能性の高い画像から順に候補として選ばれるので、速やかに所望の画像を得ることができる。複数のスライドに検索文字列が検出された場合の本実施形態の処理ステップを、図９示すフローチャートに従って説明する。
【００３９】
図９（ａ）は、図２に対応する検索処理のフローチャートであり、ステップＳ９０２において、位置情報入力部１０１と特定情報入力部１０２の入力を受理し、ステップＳ９０２に移る。
【００４０】
ステップＳ９０２では、検索処理部１０３が、検索対象の画像が保存されている画像ＤＢ１０４を参照し、特定情報入力部１０２に入力された特定情報の示すオブジェクトが配置されている画像を複数検出する。
【００４１】
ここで、図９（ｂ）はステップＳ９０２の処理を更に説明したフローチャートである。ステップＳ９０２ａでは、検出された全ての画像について順次距離を取得する処理を行ったかどうかを確認し、未処理であればステップＳ９０２ｂに移り、処理済みであれば終了してステップＳ９０３に移る。ステップＳ９０２ｂでは、次に処理をする画像を順次決定し、ステップＳ９０２ｃに移る。ステップＳ９０２ｃでは、決定した現在の画像において、図８の処理ステップによって基準位置と文字列との最小距離を取得し、ステップＳ９０２ａに戻る。
【００４２】
ステップＳ９０３では、画像選択部１０６が、距離取得部１０５が取得した各スライドにおける距離が小さい順に、要求されたオブジェクトが配置されている画像をソートして保持し、ステップＳ９０４に移る。
【００４３】
ステップＳ９０４では、ソートされた順に画像を選択し、ステップＳ９０５に移る。ステップＳ９０５では、ディスプレイコントローラ（ＤＳＰＣ）１１６の機能部である結果表示部１０７によって選択された画像を表示し、ステップＳ９０６に移る。ステップＳ９０６では、表示された画像で選択を決定するかを確認し、決定でなければステップＳ９０４に戻り、決定すれば終了する。
【００４４】
図１０に、文字列の位置に基づいて距離を計算した場合のユーザの入力位置（黒丸）と各文字列との距離（矢印付きの直線）を、模式的に示す。検索の結果、文字列「ロードマップ」が配置されていたスライドに注目している。
【００４５】
位置情報を利用しないで文字列「ロードマップ」で検索すると、その検索結果としては、「ロードマップ」を含むスライドが予め決まったページ順に表示される。よって、スライド４０２、４０３、４０４、４０６、４０７の順に表示される。この場合には、ユーザが所望するスライド４０６は最初には表示されず、４番目に表示されることになる。それに対して、本実施形態による検索の場合、上記距離はスライド４０６において最も小さく、スライド４０３、４０４、４０７、４０２の順に距離が大きくなる。
【００４６】
このようにオブジェクト（文字列）が存在する位置に基づいて距離を計算し、距離が小さい順に候補とすることにより、実際のユーザの感覚と一致した検索結果を提供できる。
【００４７】
図９（ａ）のステップＳ９０５における検索結果の表示の一例を図１１に示す。ここでは、２番目の候補であるスライド４０３が表示されている状態を示している。操作ボタン１１０１及び操作ボタン１１０２は、候補となるスライドを順に閲覧するためのスライド送りを指示するボタンである。ステップＳ９０６において、選択の決定を示す場合には、例えばダブルクリック操作によって通常のスライド閲覧画面に戻るなどの処理をすればよい。
【００４８】
第１の実施形態では、スライドに含まれるコンテンツの文字列を要求されたオブジェクトとする例を示したが、オブジェクトは文字列に限らず、例えば楕円や四角形といった図形や画像の要素であっても構わない。その場合にも、ＸＭＬデータ等から得られる位置情報やサイズ情報からオブジェクトの四隅や中心位置の座標を求め、座標平面上での基準位置座標との間の距離Ｄを計算することができる。また、事前に画像の内容を特定できる識別情報を登録すれば、写真などの画像をオブジェクトとして用いた場合に、その内容で特定することも可能である。
【００４９】
＜第２の実施形態＞
第２の実施形態では、複数のページで構成される文書ファイルから所望のページを選択する例を示す。図１２に、検索対象の文書ファイルの１ページを模式的に示す。第１の実施形態と同様「ロードマップ」という文字列を要求し、検索条件に用いる場合を示している。
【００５０】
更に、第２の実施形態では、文書ファイルの１ページを複数のエリアに分割して、分割された各エリアにエリア識別ビットを割り当てることで管理する。距離取得ステップでは、基準位置と要求された文字列が属するエリアの識別ビットを照合し、その異同を判断する。従って、第１の実施形態のように座標平面上の距離を計算するよりも簡易かつ高速に距離を得ることができる。分割されたエリアにエリア識別ビットを割り当てる方法の一例を、図１３に示す。
【００５１】
図１３（ａ）において、まずページを縦に２分割し、上のエリアには０、下のエリアには１というエリア識別ビットを割り当てる。次に、（ｂ）において、更にページを横に２分割し、左側に０、右側に１と識別ビットを２桁目に割り当てる。この作業を（ｃ）、（ｄ）のように分割された各領域に対して繰り返していく。本実施形態では、例として１ページを１６分割して４桁のエリア識別ビットを割り当てた。
【００５２】
ユーザが所望するページを選択する処理は、第１の実施形態と同様に図２又は図９のフローチャートに沿って実行される。検索条件の入力処理は、図５で説明した処理で行うことができる。図１３に示すように、本実施形態においてマウスカーソル１３０１がセットされた位置は、４桁のエリア識別ビットが割り当てられた１６のエリアのうち、識別ビットが１１００のエリア１３０２である。第２の実施形態では、この１１００というエリア識別ビットが、基準となる位置情報として保存される。
【００５３】
次に、エリア識別ビットによって定義された基準位置と検索文字列の位置との距離を取得する処理を、図１４のフローチャートを参照して説明する。第２の実施形態では、エリア識別ビットを先頭から照合し、共通する桁が多いエリアに属するという関係を基に、ページ上における距離が近いと定義する。
【００５４】
図１４のステップＳ１４０１では、基準位置及び処理中のページにおいて検索文字列が配置されている位置が属するエリアのエリア識別ビットを取得して、ステップＳ１４０２に移る。この文字列を検索する方法は、公知の検索技術によることができる。検出された文字列が複数のエリアにまたがる場合には、文字列の先頭文字の位置や中間の文字の位置などを検索文字列の位置として定義してもよい。
【００５５】
ステップＳ１４０２では、変数ｎに１を代入して次に移る。ステップＳ１４０３では、基準位置と、検索文字列の配置位置が属するエリア識別ビットを照合して、ステップＳ１４０４に移る。
【００５６】
ステップＳ１４０４では、照合したエリア識別ビットのｎ桁目が共通であったかどうかを確認し、共通であればステップＳ１４０５に移り、異なった場合にはステップＳ１４０７に移る。初回は必ずｎ＝１桁目を確認する。
【００５７】
ステップＳ１４０５では、ｎを１カウントアップして次のステップに移る。ステップＳ１４０６では、エリア識別ビットの最後の桁を既に確認していればステップＳ１４０７に移り、まだであればステップＳ１４０４に戻る。
【００５８】
ステップＳ１４０７では、現在処理中の画像をＬｅｖｅｌ：ｎと定義して画像を保持し、終了する。
【００５９】
図２のステップＳ０２における画像選択では、図１４のステップＳ１４０７で保持された画像を選択する。複数の画像が検出されていた場合には、図９のステップＳ９０３においてｎの降順にソートする。従って、ステップＳ９０４の画像選択ステップでは、所望するページである可能性の高い順に候補を選ぶことができる。あるｎに対して複数の画像が選択される場合には、結果表示部１０７に縮小画像を一覧表示してユーザに提示もよいし、ページ番号順に候補として選択してもよい。
【００６０】
＜第３の実施形態＞
第３の実施形態では、第２の実施形態と同様、エリア識別ビットによって取得した距離に基づいて、複数のページで構成される文書ファイルから所望のページを選択する例を示す。
【００６１】
図１５は、第３の実施形態において、文書ファイルの１ページを複数のエリアに分割しエリア識別ビットによって管理する一例を示した模式図である。
【００６２】
図１５においても、例として１ページを４行４列に１６分割した例を示している。第３の実施形態では、左上隅を０として、行方向では右が大きく列方向には下が大きくなるように１５までの数を２進数で各エリアに割り当てている。従って、１６分割された各エリアに４桁のエリア識別ビットが割り当てられる。任意にｒ行ｃ列に分割した場合にも、順番に２進数による個別のエリア識別ビットを割り当てることができる。
【００６３】
ユーザが閲覧を希望するページを選択する処理は、図２又は図９のフローチャートに沿って実行される。検索条件の入力処理は、図５で説明した処理で行うことができる。図１５おいて、マウスカーソル１５０１がセットされたエリアは、識別ビットが１０１０に当たる。本実施形態では、このエリアが基準位置エリア１５０２となる。
【００６４】
第３の実施例では、図１５における基準位置エリア１５０２を距離０として定義する。そして、エリア１５０２の８方向を囲むように接する環状エリア１５０３を距離１として定義し、同様に１５０３を囲むように接する環状エリア１５０４を距離２と定義する。このように、基準位置エリアを中心にした大きさの異なる環状エリアに距離の関係を定義すれば、検索文字列が配置されている位置と基準位置との距離という概念の下で、分割されたエリアを扱うことができる。すなわち、ここでエリアの距離の関係とは、基準位置エリアを中心として、８方向を囲む大きさの異なる環状の複数のエリアに対し、基準位置からの離れる程大きくなるよう定義したものである。従って、検索文字列が配置されている位置と基準位置との距離は、検索文字列が配置されている位置が属するエリアに定義された距離によって判断することができる。
【００６５】
第３の実施形態において、基準位置と検索文字列との距離を取得する処理を図１６のフローチャートを参照して説明する。
【００６６】
ステップＳ１６０１では、基準位置及び処理中のページにおいて検索文字列が配置されている位置が属するエリアのエリア識別ビットを取得して、ステップＳ１６０２に移る。文字列を検索する方法は、他の実施形態と同様公知の検索技術によることができる。検出された文字列が複数のエリアにまたがる場合には、文字列の先頭文字の位置や中間の文字の位置などを検索文字列の位置として定義してもよい。
【００６７】
ステップＳ１６０２では、処理中のページの１６分割された各エリアの関係より距離を定義して、ステップＳ１６０３に移る。距離の定義方法は、図１７で説明する。
【００６８】
図１６に戻ると、ステップＳ１６０３では、変数Ｎに０を代入して次に移る。ステップＳ１６０３では、ステップＳ１６０１で取得したエリア識別ビットと、ステップＳ１６０２で定義した距離を照合し、検索文字列が配置されているエリアの距離を確認し、ステップＳ１６０５に移る。
【００６９】
ステップＳ１６０５において、距離Ｎエリアに検索文字列が存在するかどうかを確認する。初回は必ずＮ＝０の基準位置エリアを確認する。確認の結果、存在すればステップＳ１６０７に移り、存在しなければステップＳ１６０６に移る。ステップＳ１６０６では、Ｎを１カウントアップして、ステップＳ１６０５に戻る。このように、基準位置に近いエリアから優先して検索文字列が存在するかを確認するため、１ページ中の複数個所に検索文字列が含まれている場合でも、より基準位置に近い位置をもって距離を判断することができる。
【００７０】
ステップＳ１６０７では、処理中のページを距離Ｎと定義して保持し、終了する。
【００７１】
ここで、第３の実施形態における、各エリアに基準位置との距離を定義する処理について、図１７のフローチャートを参照して説明する。ここでは、一般化して１ページをｒ行ｃ列のエリアに分割した場合を考える。
【００７２】
ステップＳ１７０１では、まず基準位置のエリア識別ビットを距離０と定義して、Ｓ１７０２に移る。ステップＳ１７０２では、変数ｄに０を代入して、ステップＳ１７０３に移る。
【００７３】
ステップＳ１７０３では、２進法による識別ビットの演算で、距離ｄエリアに±１したエリアを抽出し、距離ｄ＋１のエリアとして定義して、ステップＳ１７０４に移る。
【００７４】
ステップＳ１７０４では、この時点で未定義のエリアの識別ビットから、定義済みの距離ｄ及びｄ＋１エリアの識別ビットに、２進法による演算で±ｃ（ｃは列数）したエリアを抽出し、距離ｄ＋１のエリアとして定義し、ステップＳ１７０４に移る。
【００７５】
ステップＳ１７０５では、ページ中の全てのエリアに距離を定義する処理をしたかを確認し、未処理のエリアがあればＳ１７０６に移り、全て処理済みであれば終了する。ステップＳ１７０６では、変数ｄを１カウントアップして、ステップＳ１７０３に戻る。
【００７６】
図２のステップＳ０２における画像選択ステップでは、図１６のステップＳ１６０７で保持されたページを選択する。複数のページが検出されていた場合には、図９のステップＳ９０３において定義された距離の小さい順にページをソートする。従って、ステップＳ９０４のページ選択では、所望するページである可能性の高い順に候補を選ぶことができる。ある距離Ｎのグループに対して複数の画像が選択される場合には、結果表示部１０７に縮小画像を一覧表示してユーザに提示もよいし、ページ番号順に候補として選択してもよい。
【００７７】
なお、第３の実施形態においては、基準位置エリアは分割されたエリアのうちの１つを指定したが、変形例として複数のエリアを指定することもできる。その際、位置情報入力部１０１への入力としては、例えばポインティングデバイス１１４によって直線や閉曲線などの図形を描くことができる。距離０として定義する基準位置エリアは、描かれた図形がまたがる複数のエリアとしてもよいし、図形によって囲まれたエリアとしてもよい。各エリアに基準位置との距離を定義する処理は、図１７のフローチャートに従い、距離が定義されたエリアを取り囲むエリアを順に選び、次に大きな距離を定義していけばよい。
【００７８】
＜その他の実施例＞
上記第１から第３の実施形態では、位置情報入力部１０１への入力はポインティングデバイス１１４によって１点を入力していたが、複数の点を基準位置として入力してもよい。その際には、複数の基準位置に対して共通するオブジェクトを特定してもよいし、異なるオブジェクトを特定し、それぞれが各基準位置近くに配置されている画像を検索する構成としてもよい。これらの構成は、例えば１つの検索条件に基づいて選択された候補の中から、更に残りの検索条件に基づいて候補を絞っていくことで実現される。
【００７９】
また、要求されたオブジェクトが配置されている画像が、検索処理部１０３による検索によって１つしか検出されなかった場合に、画像選択部１０６の機能に基準位置とオブジェクトが配置されている位置との距離に基づいた処理を更に付加してもよい。例えば、第１の実施形態の基準位置とオブジェクトが配置されている位置との距離に閾値を設け、選択された画像において距離取得部１０５が取得した距離が閾値よりも距離が大きい場合には、アラート又はエラーを表示することもできる。これは、唯一検出された画像であっても、ユーザが記憶している所望の画像ではない場合には有効な構成となる。
【００８０】
なお、前述したように、本発明の目的は、本実施形態を実現するするソフトウェアの処理ステップを記録したディスクデバイスを始めとする記録媒体を、ディスクドライブ１２０によってコンピュータ装置１０８に供給することによっても達成される。この場合、記録媒体から読み出された処理ステップ自体が前述した実施形態の機能を実現することになり、その処理ステップを記憶した記録媒体は本発明を構成することになる。記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００８１】
また、ＣＰＵ１０９が読出した処理ステップの指示に基づき、ＣＰＵ１０９上で稼働しているオペレーティングシステムなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８２】
同様に、記録媒体から読出された処理ステップが、コンピュータ装置１０８に挿入された機能拡張ボードや接続された機能拡張ユニットに備わるメモリに書込まれた後、それらに備わるＣＰＵなどが実際の処理の一部又は全部を行う場合も含まれる。
【００８３】
さらに、本発明の情報処理装置は、ドキュメントを電子ブックとして画面に表示し操作することが可能な携帯端末装置によっても実現される。その際、ドキュメント全体のうちの一部が画面に表示されることによって、その表示範囲が１つのページとしてユーザに認識される場合には、その表示される範囲を１画像として、本発明による画像選択処理が実現される。すなわち、検索対象の画像であるドキュメント全体の中において、画面に表示するための画像を選択することができる。
【００８４】
ドキュメント全体のうち画面に表示される範囲は、表示される文字の大きさや行数を指定するという方法で決定されてもよい。この方法では、ドキュメントを指定された文字の大きさや行数で表示した場合に表示手段の画面に収まる範囲を１つのページの単位として、ドキュメントが複数のページに分割される。本発明は、分割された各ページを１画像として、前述の実施形態と同様の処理を行う。
【００８５】
また、ドキュメント全体のうち画面に表示される範囲は、ドキュメントをスクロールすることで画面に表示される範囲が変化する方法で決定されてもよい。この方法では、ドキュメントを上下または左右に移動させる、すなわちスクロールすることによって、画面に収まりきらない範囲を表示させる。従って、あるオブジェクトが表示画面上の概ねどの辺りに配置されていたかというユーザの記憶において、スクロールに平行した方向の位置情報はスクロールした際の加減に依存して異なる。そのため、ユーザが指定した基準位置と要求されるオブジェクトの配置位置の距離を求める際には、スクロールに直交する方向に限定して考慮してもよい。座標を用いて距離を計算する場合は、スクロールに直交する方向に沿った軸上の座標を用いて計算を行う。またエリアを分割する場合は、スクロールに直交する方向を複数に分割したエリアのうち、基準位置が属するエリアと前記特定されたオブジェクトが配置されている位置の属するエリアを取得して、その距離を求めることができる。
【図１】
2013011955.tif 000003
【図２】
2013011955.tif 000004
【図３】
2013011955.tif 000005
【図４】
2013011955.tif 000006
【図５】
2013011955.tif 000007
【図６】
2013011955.tif 000008
【図７】
2013011955.tif 000009
【図８】
2013011955.tif 000010
【図９】
2013011955.tif 000011
【図１０】
2013011955.tif 000012
【図１１】
2013011955.tif 000013
【図１２】
2013011955.tif 000014
【図１３】
2013011955.tif 000015
【図１４】
2013011955.tif 000016
【図１５】
2013011955.tif 000017
【図１６】
2013011955.tif 000018
【図１７】
2013011955.tif 000019