(57)【特許請求の範囲】
【請求項１】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置の制御方法であって、
前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させる工程と、
前記表示中の第１オブジェクトを移動させる指示を受け付ける工程と、
前記指示に応じて、前記表示中の第１オブジェクトを移動させるとともに、前記移動させる第１オブジェクトの下位階層に相当する第２オブジェクトを連動して移動させるように表示させる工程と、
前記表示中の第１のオブジェクトを移動させる指示を受け付けたのに応じて、前記移動させる第１オブジェクトの下位階層に相当する第２のオブジェクトを、前記第１オブジェクトのＭ倍（ただし、０＜Ｍ＜１）の大きさのオブジェクトとして表示させる工程とを備え、前記第２オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、前記表示中の第１のオブジェクトを移動させる移動量に対して略Ｎ／Ｍ倍となることを特徴とする画像処理装置の制御方法。
【請求項２】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置の制御方法であって、
前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させる工程と、
前記表示中の第１オブジェクトを移動させる指示を受け付ける工程と、
前記指示に応じて、前記表示中の第１オブジェクトを移動させるとともに、前記移動させる第１オブジェクトの下位階層に相当する第２オブジェクトを連動して移動させるように表示させる工程とを備え、
前記第２オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、Ｎが大きいほど大きくなり、
更に、前記表示中の注目される第１オブジェクトと該注目される第１オブジェクトの下位階層に相当する第２オブジェクトとの親子関係を示し、かつ該注目される第１オブジェクトの下位階層に相当する第２オブジェクト群における前記注目される第２オブジェクトの相対位置を示すインジケータを表示させる工程を備えることを特徴とする画像処理装置の制御方法。
【請求項３】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置の制御方法であって、
前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させる工程と、
前記表示中の第２オブジェクトを移動させる指示を受け付ける工程と、
前記指示に応じて、前記表示中の第２オブジェクトを移動させるとともに、前記移動させる第２オブジェクトの上位階層に相当する第１オブジェクトを連動して移動させるように表示させる工程とを備え、
前記第１オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、Ｎが大きいほど小さくなることを特徴とする画像処理装置の制御方法。
【請求項４】
前記移動させる第２オブジェクトの上位階層に相当する第１オブジェクトを連動して移動させる移動量は、前記表示中の第２のオブジェクトを移動させる移動量に対して略１／Ｎ倍となることを特徴とする請求項３に記載の画像処理装置の制御方法。
【請求項５】
更に、前記表示中の第２のオブジェクトを移動させる指示を受け付けたのに応じて、前記移動させる第２オブジェクトを、前記移動させる第２オブジェクトの上位階層に相当する第１オブジェクトのＭ倍（ただし、１＜Ｍ）の大きさのオブジェクトとして表示させる工程を備え、
前記移動させる第２オブジェクトの下位階層に相当する第１オブジェクトを連動して移動させる移動量は、さらにＭ倍となることを特徴とする請求項４に記載の画像処理装置の制御方法。
【請求項６】
更に、前記表示中の注目される第１オブジェクトと該注目される第１オブジェクトの下位階層に相当する第２オブジェクトとの親子関係を示し、かつ該注目される第１オブジェクトの下位階層に相当する第２オブジェクト群における前記注目される第２オブジェクトの相対位置を示すインジケータを表示させる工程を備えることを特徴とする請求項３乃至５のいずれか１項に記載の画像処理装置の制御方法。
【請求項７】
前記上位階層に属する第１オブジェクトは、前記複数のオブジェクトを前記メタデータを利用した分類条件に従って分類したグループを示すオブジェクトであって、前記下位階層に属する第２オブジェクトは、前記第１オブジェクトが示すグループに属するオブジェクトであることを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置の制御方法。
【請求項８】
前記第１オブジェクトの集合、及び第２のオブジェクトの集合のそれぞれは、各集合に含まれる複数のオブジェクトを整列させたオブジェクト配列であって、
前記第１オブジェクトまたは第２オブジェクトを移動させる指示は、前記第１オブジェクトを整列させたオブジェクト配列、または前記第２オブジェクトを整列させたオブジェクト配列において、配列に含まれるオブジェクトをスクロールさせる指示であることを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置の制御方法。
【請求項９】
コンピュータに、請求項１乃至８に記載された画像処理装置の制御方法の各工程を実行させるためのプログラム。
【請求項１０】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置であって、
表示制御部は、前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させ、
操作検出部は、前記表示中の第１オブジェクトを移動させる指示を検出し、
前記表示制御部は、前記指示に応じて、前記表示中の第１オブジェクトを移動させるとともに、前記移動させる第１オブジェクトの下位階層に相当する第２オブジェクトを連動して移動させ、
更に前記表示制御部は、前記表示中の第１のオブジェクトを移動させる指示を受け付けたのに応じて、前記移動させる第１オブジェクトの下位階層に相当する第２のオブジェクトを、前記第１オブジェクトのＭ倍（ただし、０＜Ｍ＜１）の大きさのオブジェクトとして表示させ、
前記第２オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、前記表示中の第１のオブジェクトを移動させる移動量に対して略Ｎ／Ｍ倍となることを特徴とする画像処理装置。
【請求項１１】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置であって、
表示制御部は、前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させ、
操作検出部は、前記表示中の第１オブジェクトを移動させる指示を検出し、
前記表示制御部は、前記指示に応じて、前記表示中の第１オブジェクトを移動させるとともに、前記移動させる第１オブジェクトの下位階層に相当する第２オブジェクトを連動して移動させるように表示させ、
前記第２オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、Ｎが大きいほど大きくなり、
更に、前記表示中の注目される第１オブジェクトと該注目される第１オブジェクトの下位階層に相当する第２オブジェクトとの親子関係を示し、かつ該注目される第１オブジェクトの下位階層に相当する第２オブジェクト群における前記注目される第２オブジェクトの相対位置を示すインジケータを表示させる工程を備えることを特徴とする画像処理装置。
【請求項１２】
階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置であって、
表示制御部は、前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させ、
操作検出部は、前記表示中の第２オブジェクトを移動させる操作を検出し、
前記表示制御部は、前記操作検出部が検出した操作に応じて、前記表示中の第２オブジェクトを移動させるとともに、前記移動させる第２オブジェクトの上位階層に相当する第１オブジェクトを連動して移動させるように前記表示部に表示させ、
前記第１オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、Ｎが大きいほど小さくなることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のオブジェクトを閲覧するためのユーザインタフェース技術に関する。
【背景技術】
【０００２】
近年、静止画像や動画像、音楽、書籍などの多様かつ膨大なデジタル・オブジェクトを閲覧するためのブラウザには、分かり易さや操作のし易さ、視覚的な良好さが求められている。
【０００３】
上記課題を解決するためのブラウズ機能の１つに、オブジェクトに付加された情報（メタデータ）を利用して異なる視点（軸）でオブジェクトを閲覧できる機能がある。これは、オブジェクトに日付や名前といったメタデータが付与されている場合、日付という軸でオブジェクトを並び替えて閲覧したり、名前という軸でオブジェクトを並び替えて閲覧したりする機能である。
【０００４】
特許文献１では、注目するオブジェクト（コンテンツ）を含む複数の軸のオブジェクト群を、関連付けて表示する発明が開示されている。特許文献１では、複数の軸に基づき集合させた複数のオブジェクトを、軸毎にオブジェクト配列として表示させ、それらに共通して含まれる注目オブジェクトの表示位置を揃えることで、各軸の間に関連があることを示した。また、軸として階層構造を有するメタデータを利用し、階層毎に複数のオブジェクトをオブジェクト配列として表示させ、上位階層において注目するオブジェクトを選択することによって、その下位階層に属するオブジェクト群を閲覧することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１５２５８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の技術では、閲覧しているオブジェクトが、上位階層の同じオブジェクトに属するオブジェクト群全体の中で、どの辺りに存在するのかという相対位置が直感的にわからなかった。
本発明は上記課題を考慮してなされたものであり、階層的に整理されたオブジェクトを閲覧する際、上位階層のオブジェクトに属するオブジェクト群全体の中で、どの辺りに閲覧中のオブジェクトが存在するのかを直感的に把握できる技術の提供を主な目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明の画像処理装置の制御方法は、階層構造を有するメタデータを付与された複数のオブジェクトを、前記メタデータに基づいて上位階層に属する第１オブジェクトの集合と、下位階層に属する第２オブジェクトの集合として表示部に表示させる画像処理装置の制御方法であって、前記上位階層において注目される第１オブジェクトおよび該注目される第１オブジェクトの下位階層に相当する第２オブジェクトを表示させる工程と、前記表示中の第１オブジェクトを移動させる指示を受け付ける工程と、前記指示に応じて、前記表示中の第１オブジェクトを移動させるとともに、前記移動させる第１オブジェクトの下位階層に相当する第２オブジェクトを連動して移動させるように表示させる工程と、前記表示中の第１のオブジェクトを移動させる指示を受け付けたのに応じて、前記移動させる第１オブジェクトの下位階層に相当する第２のオブジェクトを、前記第１オブジェクトのＭ倍（ただし、０＜Ｍ＜１）の大きさのオブジェクトとして表示させる工程とを備え、前記第２オブジェクトを連動して移動させる移動量は、前記注目される第１オブジェクトの下位階層に相当する第２オブジェクト数Ｎに基づいて決定され、前記表示中の第１のオブジェクトを移動させる移動量に対して略Ｎ／Ｍ倍となることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、階層的に整理された状態でオブジェクトを閲覧する際、上位階層のオブジェクトに属するオブジェクト群全体の中で、どの辺りに閲覧しているオブジェクトが存在するのかを直感的に把握できる。
【図面の簡単な説明】
【０００９】
【図１】システム概要図
【図２】ハードおよび機能の構成図
【図３】オブジェクト表示処理のフローチャート
【図４】配列データの一例を示す図
【図５】オブジェクト表示処理の一例を示す図
【図６】表示画像の一例を示す図
【図７】表示画像の一例を示す図
【図８】オブジェクト表示処理のフローチャート
【図９】表示画像の一例を示す図
【図１０】オブジェクト表示変更処理のフローチャート
【図１１】表示画像の一例を示す図
【図１２】表示画像の一例を示す図
【図１３】配列データの一例を示す図
【図１４】表示画像の一例を示す図
【図１５】表示画像の一例を示す図
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
【００１１】
＜第１の実施形態＞
図１は、本実施形態のシステム概要図である。本実施形態ではタブレット型の画像処理装置を想定しており、画像処理装置１００は、タッチスクリーン１０１を装備する。
【００１２】
画像１０２は、本実施形態に適用されるブラウザによって複数のオブジェクトが階層的に表示された画像を示す。この画像１０２は、タッチスクリーン１０１に表示されている。ここで表示されている構造については後述する。操作者はタッチスクリーン１０１に表示されたオブジェクトを、操作者の指またはスタイラスなどの物体１０３を用いて操作する。タッチスクリーン１０１にはスクリーン画面上への上記物体の接触を検知するタッチセンサが搭載されている。本実施形態では、以下、物体１０３によるタッチ操作をタッチセンサが検知することによって、オブジェクトを移動（スクロール）しながら閲覧する場合を説明する。
【００１３】
図２は、本実施形態における画像処理装置１００のハードウェア構成図である。同図において、ＣＰＵ２００は、バス２０３を介して接続する各デバイスを統括的に制御する。ＣＰＵ２００は、読み出し専用メモリ（ＲＯＭ）２０２もしくはストレージ２０７に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム（ＯＳ）をはじめ、本発明に係る各処理プログラム、デバイスドライバ等はＲＯＭ２０２に記憶されており、ランダムアクセスメモリ（ＲＡＭ）２０１に一時記憶され、ＣＰＵ２００によって適宜実行される。ＲＡＭ２０１は高速にアクセス可能なＣＰＵ２００の主メモリ、ワークエリア等の一時記憶領域として用いられる。ここでＯＳおよび各処理プログラム等はストレージ２０７に記憶されていてもよく、その場合は電源投入時にＲＡＭ２０１に適宜読み込まれ、ＣＰＵ２００によって起動される。また、ディスプレイＩ／Ｆ２０４は、画像処理装置１００内部で作成される表示画像をタッチスクリーン１０１が処理可能な信号に変換する。入力Ｉ／Ｆ２０５は、タッチスクリーン１０１のセンサが検知したタッチ位置情報を入力信号として受信し、画像処理装置１００が処理可能な情報に変換する。ストレージＩ／Ｆ２０６は、画像処理装置１００内部で利用可能なデータ形式とストレージ２０７に記憶するためのデータ形式を互いに変換する。ストレージ２０７は、画像処理装置１００で閲覧するための大量のオブジェクトデータを格納できる大容量の情報記憶装置である。本実施形態では、ストレージ２０７自体は、画像処理装置１００内部に搭載されるハードディスクドライブ装置である。ただし、ストレージ２０７としては、例えば、ディスクデバイスやＵＳＢメモリなどの記憶媒体や、インターネット（登録商標）やまたはＵＳＢなどの各種インタフェースを介して接続される外部装置を適用することもできる。さらに複数台のストレージ２０７が並列に適用されていても構わない。これらの場合には、画像処理装置１００は各種ネットワークＩ／Ｆや外部メモリＩ／Ｆなどのインタフェースを含み、それを利用する。
【００１４】
以下、他図を用いて実質的に同じものを説明する場合には同一の符号を付し、その説明を省略する。
【００１５】
図２（Ｂ）は本実施形態における画像処理装置１００の機能ブロック図である。画像処理装置１００は、取得部３００、生成部３０１、表示制御部３０２、操作検出部３０３、伝搬部３０４から構成される。本実施形態では、これらの各機能ブロックは上述したＣＰＵ２００の一部の機能に相当する。本実施形態では、ストレージ２０７には静止画像が記憶されており、これら静止画像をオブジェクトとしてタッチスクリーン１０１に表示し、この画像をユーザが閲覧する。また、これらオブジェクトにはメタデータが付与されている。本実施形態では、少なくとも日付（撮影された「年」「月」「日」および「時間」）の情報を含むメタデータが付与されている。
【００１６】
取得部３００は、表示部としてのタッチスクリーン１０１にオブジェクト群を所定の配列で表示するため、複数のオブジェクトからなるオブジェクト群をストレージ２０７から読み出す。本実施形態では、ローカルに接続された記憶部としてのストレージ２０７の例を示す。ただし、上述したようにネットワーク上に存在するストレージやインターネット上から表示されるオブジェクトをネットワーク経由で読み出すことも可能である。読み出したオブジェクト群およびそのメタデータはＲＡＭ２０１に保持される。この時、読み出したデータがＲＡＭ２０１に対して大きすぎる場合は、読み込むデータを複数に分割し、個々の分割データを順次読み込んで処理しても構わない。または、即座に読み出し可能なスワップデータとしてストレージ２０７に退避させておいても構わない。
【００１７】
生成部３０１は、ＲＡＭ２０１に保持されている日付のメタデータを利用して集合させたオブジェクトを整列し、階層構造に従って同位階層内のオブジェクトをグルーピングし、オブジェクト配列として表示させるための配列データを生成する。本実施形態では、また生成部３０１は、生成した配列データの情報をＲＡＭ２０１に保持する。図４は、生成部３０１が生成する配列データの一例である。
【００１８】
表示制御部３０２は、タッチスクリーン１０１に表示するべき表示画像（画像データ）を生成し、タッチスクリーン１０１に出力する。オブジェクトをオブジェクト配列として表示させる際にはＲＡＭ２０１に保持されているオブジェクト、生成部３０１が生成した配列データの情報を基に、表示画像を生成する。図５（Ａ）に示す画像５００は、表示制御部３０２が生成し、初期画像としてタッチスクリーン１０１に表示される画像の一例である。図５（Ａ）では、オブジェクト５０１は、Ｙｅａｒ／Ｍｏｎｔｈ、Ｄａｙ、Ｃｏｎｔｅｎｔｓの３つのオブジェクト配列５０２、５０３、５０４に階層化され、表示される。さらにオブジェクト配列中の各オブジェクトは、それぞれグルーピングされている。具体的な例で示すと、Ｄａｙ階層のオブジェクト配列５０３のオブジェクト５０１ｅの下位階層に相当するＣｏｎｔｅｎｔｓ階層（オブジェクト配列５０４）中のオブジェクトは、２０１１年１月１５という日付情報のメタデータによってグルーピングされている。すなわち、オブジェクト５０１ｅは２０１１年１月１５日のグループを示す代表オブジェクトである。同様に、オブジェクト５０１ｅは、２０１１年１月という日付情報のメタデータによってグルーピングされ、２０１１年１月を示すオブジェクト５０１ｂの下位階層に属する。このような、各階層のオブジェクトの親子関係は矢印バー５０５ａ、５０５ｂのインジケータによって表現されている。
【００１９】
表示制御部３０２は、表示されたオブジェクトに対して、タッチセンサによる検知を介して物体１０３から移動操作が行われた場合には、伝搬部３０４から得た移動量の情報を基に、新たな画像を生成し、タッチスクリーン１０１に出力する。これにより、本実施形態では、ユーザが表示された画像中のあるオブジェクト配列に対して行う移動操作が、他のオブジェクト配列に伝搬する。そして、直接操作していない配列も含めて全てのオブジェクト配列が、操作したオブジェクトの上下階層に相当するオブジェクトの数に基づいた量だけ連動して移動するように表示画像が更新される。移動と同時に、上下階層のオブジェクトの親子関係を示すインジケータと、各オブジェクトの相対位置が変化し、常に閲覧中のオブジェクトが親であるオブジェクト群全体の中で、どの辺りに存在するのかを明確に表現するように表示画像が生成される。一連のオブジェクト表示処理については後で詳細を説明する。
【００２０】
画像処理装置１００に対する操作は、タッチスクリーン１０１に表示されたオブジェクトを物体１０３でタッチすることによって行う。従ってタッチセンサを搭載したタッチスクリーン１０１は操作部として機能する。操作検出部３０３は、タッチセンサの出力情報に基づいて、オブジェクトに対して行われたフリックやスワイプ、ドラッグなどのタッチ操作を検出し、操作されたオブジェクトとその操作量を示す情報を伝搬部３０４に与える。ここでフリックとは、画面を軽くはじくように指を動かす操作であり、スワイプとは、タッチスクリーン１０１上をタッチした（触れた）状態で指を一定方向にスライドさせる操作である。またドラッグとは、タッチスクリーン１０１をタッチした（触れた）状態のまま指を任意の方向に移動させる操作である。本実施形態における操作検出部３０３は、表示された各オブジェクトをオブジェクト配列の平行方向に、上述したようなタッチ操作することによって、配列内のオブジェクトをスクロール移動させる移動操作を検出する。なお、本実施形態では、オブジェクトを物体１０３でタッチ操作する例を示した。ただし、タッチスクリーン上に物体１０３に見立てたポインタを表示させ、マウスや他のポインティングデバイスを使ってそのポインタを操作することで上記タッチ操作と同様の操作を実行することも可能である。
【００２１】
伝搬部３０４は、検出部３０３から得た情報に従い、ＲＡＭ２０１の配列データを参照して、ユーザによって操作されたオブジェクトが属する階層およびグループを特定する。そして、タッチ操作されたオブジェクトに関連する上位および下位の階層のグループに含まれるオブジェクト数を取得する。伝搬部３０４は、取得したオブジェクト数に従い、各階層のオブジェクト配列毎に表示上の移動量を求め、表示制御部３０２に情報を伝える。
【００２２】
次に、図３（Ａ）のフローチャートに従い、本実施形態における画像処理装置１００のオブジェクト表示処理を説明する。
【００２３】
本実施形態では、画像処理装置１００の電源が投入されたのに従って、オブジェクト表示処理がスタートする。まず、ステップＳ１０において、取得部３００は、表示するオブジェクト群とそのメタデータを取得し、ＲＡＭ２０１に保持する。次にステップＳ１１において、生成部３０１は、取得したオブジェクト群の日付のメタデータを利用して、オブジェクトを「年（Ｙｅａｒ）」、「月（Ｍｏｎｔｈ）」、「日（Ｄａｙ）」、とオブジェクトそのものの一覧に階層化した配列データを生成する。図４は、生成された配列データの一例である。本実施形態のオブジェクトは、デジタルカメラで撮影された静止画像であるとする。各オブジェクトには、デジタルカメラによって、撮影された年月日および時間を示す情報がメタデータとして付与されている。生成部３０１は、まずこの情報を利用し、「年」「月」「日」「時間」という階層毎に、同位階層において付与されたメタデータが共通するそれぞれの画像群を１つのグループとしてグループ化する。そして、階層毎に、各オブジェクトが対応するグループを示すテーブルを配列データとして生成する。例えば、図４の配列データでは、３０２１．ｊｐｇという画像は、「年」の階層では２０１１年のグループ、「月」の階層では１月のグループ、「日」の階層では１５日のグループ、そして「時間」の階層では「９時台」のグループに対応している。さらに、本実施形態では、ステップＳ１２において、生成部３０１は配列データとともに各グループのオブジェクト数をＲＡＭ２０１に保持する。そしてステップＳ１３において、表示制御部３０２は、ＲＡＭ２０１に保持されているオブジェクトの情報、配列データに基づいて表示されるべき画像を生成し、初期画像としてタッチスクリーン１０１に出力する。この時、タッチスクリーン１０１に表示される初期画像の一例が図５（Ａ）である。
【００２４】
図５（Ａ）では、オブジェクト群が、配列データの「月」の階層をグループ毎に表示する配列５０２、「日」の階層をグループ毎に表示する配列５０３、および読み出されたオブジェクトが１枚ずつ表示される配列５０４の３つのオブジェクト配列として表示される。例えば、Ｙｅａｒ／Ｍｏｎｔｈと表示された配列５０２のオブジェクト５０１ａ、オブジェクト５０１ｂ、オブジェクト５０１ｃは、それぞれ２０１１年２月のグループ、２０１１年１月のグループ、２０１０年１２月のグループを示す。同様にＤａｙと表示された配列５０３のオブジェクト５０１ｄ〜５０１ｇは、それぞれ左上に白抜き文字で表示された日付のグループを示す。なお、本実施形態でタッチスクリーン１０１上に表示される初期画像では、図４に示される配列データのうち、事前に設定された「月」「日」「オブジェクト」の３階層を表示するものとする。従ってここでは、「年」「時間」の階層は表示されていない。しかしながら、変形例として配列データに含まれる階層を全て表示してもよく、初期画像の表示前に表示する階層をユーザが選択できるようにしてもよい。この場合、配列データに基づいて得られる全ての情報を反映した表示画像をユーザに提供しているので、ユーザが所望のオブジェクトを検索する上で利用できる情報が最も多いという利点がある。また例えば、オブジェクトが１０以上含まれるグループが存在しない階層は表示しない、などの閾値を決定することもできる。この場合は、後述するように上位階層のオブジェクト配列を移動させることによって下位階層の配列を高速スクロールさせる機能において、上下階層のオブジェクト配列におけるオブジェクトの数の差が小さいために効率が低下することを防ぐという効果がある。さらに、本実施形態では、複数の位置をタッチするマルチタッチ操作を利用することによって、表示されていない階層を表示させることができる。この機能については後で詳細を説明する。
【００２５】
ここまで説明したように、本実施形態では、隣り合うオブジェクト配列について、画面に向かって左側に表示される配列が上位階層に属する第１オブジェクトの集合となり、右側に表示される配列が下位階層に属する第２オブジェクトの集合となる。このとき、第１オブジェクトは、複数の第２オブジェクトからなるグループを示すオブジェクトである。本実施形態の表示画像において、上位階層における各グループを示す第１オブジェクトは、各グループに含まれる下位階層の複数の第２オブジェクトのうち、代表となるオブジェクトのサムネイル画像である。さらに本実施形態では、各グループに含まれる複数の画像オブジェクトのうち、最も古い画像オブジェクト（撮影された日時が最も古い画像）を代表オブジェクトとして表示している。ただし、例えば最も新しいオブジェクトを代表オブジェクトとしても良いし、ユーザが予め設定したオブジェクトや、閲覧回数が多いオブジェクトを代表オブジェクトにしても構わない。
【００２６】
矢印バー５０５ａおよび矢印バー５０５ｂは、上下階層のオブジェクトの親子関係を表現するインジケータである。図５（Ａ）の例では、オブジェクト５０１ｉは、オブジェクト５０１ｅのグループに属し、さらにオブジェクト５０１ｅは、オブジェクト５０１ｂのグループに属していることを示す。すなわち、オブジェクト５０１ｉは、２０１１年１月１５日に撮影された画像であることが矢印バー５０５ａと矢印バー５０５ｂによって直感的に把握できる。さらに、インジケータは、下位階層の第２オブジェクトの、上位階層の第１オブジェクトが示すグループに含まれるオブジェクト群全体に対する相対位置を表現する。本実施形態では、上位階層のグループを示すサムネイル画像（第１オブジェクト）の下位階層側（右側）の短辺の長さが、そのグループに含まれる下位階層の第２オブジェクトの数に対応する。そして、インジケータが、短辺のどの辺りを指し示すかによって、第１オブジェクトが示すグループ全体のうちどの程度の位置に存在する第２オブジェクトを閲覧しているかを視認できる。
【００２７】
図５（Ｂ）で示す表示状態を例に、具体的にインジケータの役割を説明する。表示制御部３０２は、ＲＡＭ２０１から、上位階層の第１オブジェクトが示すグループに含まれるオブジェクト数を取得する。第１オブジェクトとして、オブジェクト５０１ｅが示す２０１１年１月１５日のグループを例に説明すると、図４の配列データの通り、グループに含まれる第２オブジェクトの数は１５である。そして表示制御部３０２は、オブジェクト５０１ｅの下方の端点５０６ａをオブジェクト群の先頭、上方の端点５０６ｂをオブジェクト群の終点に相当させて、矢印バー５０５ｅを表示する。このとき、矢印バー５０５ｂが示す位置が、どちらの端点上あるいは端点の間のいずれの点を指し示しているかが、グループの中の１５のオブジェクト（第２オブジェクト）のうち、大凡どの辺り（何番目）に存在するオブジェクトを閲覧しているかを表現する。例えば、図５（Ｂ）では、矢印バー５０５ｂは、オブジェクト５０１（ｈｅａｄ）を起点に、オブジェクト５０１ｅの下方の端点５０６ａを指し示している。従って、オブジェクト５０１（ｈｅａｄ）は、２０１１年１月１５日グループの１５のオブジェクトの中の最初のオブジェクト、すなわち図４の配列データで１５日の先頭に対応している３０２１．ｊｐｇのサムネイル画像である。本実施形態では、各グループの最も古いオブジェクトを代表オブジェクトとして表示するので、オブジェクト５０１ｅとオブジェクト５０１（ｈｅａｄ）は同じ３０２１．ｊｐｇのサムネイル画像が表示されていることになる。同様に、図５（Ｃ）で示すような表示状態では、表示制御部３０２によって、矢印バー５０５ａは、オブジェクト５０１（ｔａｉｌ）を起点に、オブジェクト５０１ｅの下方の端点５０６ａを指し示すように表示されている。従って、オブジェクト５０１（ｈｅａｄ）は、２０１１年１月１５日グループの１５のオブジェクトの中の最後のオブジェクト、すなわち図４の配列データで１５日の先頭に対応している３０３５．ｊｐｇのサムネイル画像である。なお、図５（Ｂ）および（Ｃ）では、わかりやすいようにオブジェクト５０１（ｈｅａｄ）およびオブジェクト５０１（ｔａｉｌ）には、白抜き文字でグループの先頭および最後の画像であることを表示している。ただし、サムネイル画像の視認性を高めるため、表示を省略することもできる。矢印バー５０５なお、本実施形態では、各オブジェクトに当たるサムネイル画像は、図５（Ｄ）に示すように、幅３２０ｐｉｘｅｌ、高さ２４０ｐｉｘｅｌの長方形として表示される。また、オブジェクト配列において縦に並んだオブジェクトの表示上の間隔（ギャップ値）のギャップは、２５ｐｉｘｅｌであるとする。もちろん、各オブジェクトの表示サイズはこれに限られず、タッチスクリーン１０１の大きさなどによって好ましいサイズで表示することができる。
【００２８】
初期画像の表示が終了すると、ステップＳ１４では、操作検出部３０３によって表示中のオブジェクトに対する移動操作が検出されたかを確認する。表示中のオブジェクトに対する移動操作は、図５（Ａ）の初期画像が表示されている状態で、ユーザが指などの物体１０３で移動（スクロール）したいオブジェクトが属する配列を上下方向にフリックすることによって行う。このとき、必ずしも注目するオブジェクト自体をタッチする必要はなく、オブジェクト配列が表示されている領域に対して操作を行うことで配列内のオブジェクトを移動させることができる。なお、移動操作はスワイプもしくはドラッグでも可能である。いずれの操作も、タッチされた位置に対して移動方向を示すという点で同様に考えることができるので、以降の説明ではフリック操作に基づいて記述する。なお、本実施形態のように、フリックによってオブジェクト配列をスクロールさせる操作が行われる場合には、タッチスクリーン１０１に物体１０３が接触している間の移動量を操作量としてタッチセンサが検出する。スワイプやドラッグによって操作される場合には、タッチ位置の移動を所定間隔で検出し、タッチ位置が更新される毎にステップＳ１４からステップＳ１７の処理を繰り返す。そして所定間隔の間のタッチ位置の移動量を操作量とする。オブジェクトが操作されていない場合（ステップＳ１４でＮＯ）は、更にステップＳ１７へ処理が移行する。オブジェクトが操作された場合（ステップＳ１４でＹＥＳ）は、ステップＳ１５において、オブジェクト移動処理が開始される。
【００２９】
本実施形態のオブジェクト移動処理では、ユーザがあるオブジェクト配列に対して行う移動操作が他のオブジェクト配列に伝搬し、直接操作していない配列も含めて全てのオブジェクト配列がオブジェクト数に基づいた量移動するように表示画像を更新する。このとき、下位階層と上位階層の間に表示されるインジケータは、表示画像の上下方向の中央に固定されているため、各オブジェクト配列が移動するのに伴い、インジケータが指し示す位置が変化する。この変化する量は、各グループに属するオブジェクト数に基づいて決まるオブジェクトの移動量に従うため、インジケータは常に、下位階層のオブジェクトの、上位階層のグループに分類されたオブジェクト群全体に対する相対位置を表現する役割を果たす。図３（Ｂ）のフローチャートに基づいて、本実施形態のオブジェクト移動処理（ステップＳ１５）の処理を具体的に説明する。
【００３０】
オブジェクト移動処理が開始されると、まずステップＳ２０において、操作検出部３０３は、タッチスクリーン１０１のタッチセンサから、タッチされた位置と操作方向、及び操作量の情報を取得する。続けて、操作検出部３０３は、取得した位置情報から操作されているオブジェクト配列を特定する。そして、操作されたオブジェクト配列において注目するオブジェクトと、取得した操作量に基づいて注目するオブジェクトを表示上移動させる移動量の情報をＲＡＭ２０１に保持する。ここで、注目するオブジェクトとは、タッチ操作されたオブジェクト配列において、インジケータの隣に表示されているオブジェクトである。
【００３１】
次に、ステップＳ２１において、伝搬部３０４は、ＲＡＭ２０１上の情報から、注目するオブジェクトが属する階層とグループを特定する。さらにステップＳ２２では、ＲＡＭ２０１に保持された配列データから、注目するオブジェクトの上下階層に相当するオブジェクト数Ｎを取得する。注目するオブジェクトの上下階層に相当するオブジェクト数Ｎとは、注目するオブジェクトが属する上位階層のグループに含まれる全オブジェクト数、および注目するオブジェクトの下位階層に相当する全てのオブジェクト数である。図４の配列データによると、２０１１年０１月１５日のグループはオブジェクト数が１５個であるのでＮ＝１５である。同様に、図４では省略されているが、２０１１年０１月グループのオブジェクト数は１０個であって、Ｎ＝１０であるとする。
【００３２】
続いて、伝搬部３０４は、各オブジェクト配列の表示上の移動量を求める。本実施形態では、上位階層において注目するオブジェクト（第１オブジェクト）がタッチ操作によって１オブジェクト分移動すると、その下位階層のオブジェクト配列は、注目するオブジェクトの下位階層に相当する全ての第２オブジェクトの分、平行移動する。また、下位階層において注目するオブジェクト（第２オブジェクト）が１オブジェクト分移動すると、その上位階層のオブジェクト配列（第１オブジェクト）は、注目するオブジェクトが属するグループの全オブジェクト数に分割された１分割分だけ平行移動する。このように、上下階層のオブジェクト配列が、従属関係にあるグループに含まれるオブジェクト数のギアを有する仮想的な歯車が噛合うように連動する。
【００３３】
ステップＳ２３において、まず伝搬部３０４は、ＲＡＭ２０１から操作されたオブジェクト配列および注目するオブジェクトを表示上移動させる移動量を取得する。そして、その他のオブジェクト配列に対して、伝搬による移動量を決定する。伝搬による移動量は、操作に基づく移動量と注目するオブジェクトの上下階層に相当するオブジェクト数Ｎに基づいて決定される。例えば、図５（Ｂ）から図５（Ｃ）のように、Ｄａｙ階層のオブジェクト配列５０３のオブジェクト５０１ｅを１つ分下方向に移動させる場合を説明する。このとき、オブジェクト５０１ｅが示す２０１１年１月１５日のグループのオブジェクト数はＮ＝１５である。下位階層のオブジェクト配列５０４では、オブジェクト５０１ｅの移動に伴い、矢印バー５０５ｂが２０１１年１月１５日のグループの先頭のオブジェクトを示していた状態から、最後のオブジェクトを示す状態までスクロール移動する。つまり、オブジェクト配列５０４はオブジェクト配列５０３の略Ｎ倍（Ｎ＝１５）のスピードでスクロールされる。また、下位階層が連動する際に、下位階層のオブジェクト配列におけるオブジェクト間のギャップがインジケータを通過する場合には、そのギャップ値の分の補正を連動による移動量に考慮する必要がある。具体的には、本実施形態では、オブジェクトは縦２４０ｐｉｘｅｌのサムネイル画像として表示されているため、このときの操作によって移動されるオブジェクト配列５０３の移動量は２４０ｐｉｘｅｌである。そして、連動するオブジェクト配列５０４の移動量は、２４０ｐｉｘｅｌをＮ＝１５倍した量となる３６００ｐｉｘｅｌに、インジケータを通過するオブジェクト間のギャップ値を考慮した３９５０ｐｉｘｅｌと決定される。このように、上位階層において注目する第１オブジェクトを移動させるのに連動して、下位階層の第２オブジェクトが移動する移動量は、Ｎに基づいて第１オブジェクトの移動量よりも大きくなる。
【００３４】
また、このとき、上位階層のオブジェクト配列も連動してスクロールされる。オブジェクト５０１ｅが属する上位階層の２０１１年１月のグループのオブジェクト数はＮ＝１０である。上位階層のオブジェクト配列５０２では、下位階層でのオブジェクト５０１ｅの移動に伴い、矢印バー５０５ａが２０１１年１月グループの１０のオブジェクトのうち１つ目と２つ目の間を表現する位置を示すように移動する。つまり、オブジェクト配列５０４はオブジェクト配列５０３の略１／Ｎ倍（Ｎ＝１０）のスピードでスクロールされる。また、下位階層のオブジェクト配列におけるオブジェクト間のギャップがインジケータを通過する場合には、そのギャップ値の分の補正を連動による上位階層の移動量に考慮する必要がある。具体的には、下位階層の移動に連動したオブジェクト配列５０２の移動量は、２４０ｐｉｘｅｌの１／Ｎ倍、すなわち１／１０倍である２４ｐｉｘｅｌに決定される。この場合には、下位階層におけるオブジェクト間のギャップがインジケータを通過することがないので、ギャップ値の補正は必要ない。このように、下位階層において注目する第２オブジェクトを移動させるのに連動して、上位階層の第１オブジェクトが移動する移動量は、Ｎに基づいて第２オブジェクトの移動量よりも小さくなる。
【００３５】
このように、伝搬部３０４によって、任意の階層のオブジェクトおよびオブジェクト配列に対する操作が、他の階層のオブジェクト配列に伝搬するように、各オブジェクト配列の移動量が決定される。
【００３６】
次に、ステップＳ２４において、伝搬部３０４は、一連の移動に伴い、最下位層のオブジェクト配列においてグループの境界に相当するオブジェクト間のギャップがインジケータを通過し、インジケータがグループの境界を越える移動が行われるかを判定する。すなわち、上位階層のオブジェクト配列において、少なくもと１つのオブジェクトがインジケータを通過することにより、注目するオブジェクトが変更されるかどうかを判定する。上位階層において注目するオブジェクトが変わると、移動量の決定に用いるべきオブジェクト数Ｎも変更される。従って、最下位層のオブジェクト配列において、グループの境界に相当するオブジェクト同士の間のギャップがインジケータを通過する場合（ステップＳ２４でＹＥＳ）は、ステップＳ２３に戻る。そして、途中からＮが変わることを考慮して、再び各オブジェクト配列の移動量を決定する。なお、インジケータがグループの境界を通過するような移動が行われる場合には、上位階層において注目するオブジェクトが必ず特定できるように表示状態を調整する。例えば、図６（Ａ）のように、インジケータがグループの境界であるギャップ５０７を示して停止する表示状態が生じると、オブジェクト配列５０３において、いずれのオブジェクトに注目するかが特定されない。そのため、次に移動操作を行う際に上位階層のオブジェクト４０１ｅまたはオブジェクト４０１ｆのいずれのグループのオブジェクト数Ｎに基づいて移動量を決定すべきか判断ができない。このような表示状態を避けるため、最下位層においてグループの境界に相当するオブジェクトがインジケータを通過する移動が行われる場合には、インジケータがグループの境界で停止することがないように補正を加えて移動量を決定する。例えば、図６（Ｂ）で示すように、２０１１年１月７日を示すグループの境界に相当するオブジェクト５０８ｂに注目している状態で、配列５０４を下方向にスクロールする場合を考える。このとき、インジケータがグループの境界５０７を示した状態で停止しないように、配列５０４および上位階層の配列５０３の移動量にギャップ値を考慮して調整する。グループ境界のギャップを考慮した上で、配列５０４を下方向に少しでも移動させた場合には、以降のオブジェクト移動処理は図６（Ｃ）で示す表示状態からの操作と見なされて実行される。図６（Ｃ）では、オブジェクト５０８ｂ、５０１ｆの親子関係をしていた矢印バー５０５ｂが、オブジェクト５０８ａ、５０１ｅの親子関係を示す状態に変化している。初期画像がいかなる表示状態であっても、最下位層のオブジェクト配列において、グループの境界に相当するオブジェクト同士の間のギャップがインジケータを通過する場合には同様の調整を行う。これにより、図６（Ａ）で示したような、上位階層において注目するオブジェクトが特定できない表示状態は発生しない。なお、最下位階層において、インジケータがグループの境界には相当しないオブジェクト同士の間のギャップを指し示す位置で停止したとしても、上位階層における注目オブジェクトは特定可能であるので、本実施形態においてはそのような表示状態は禁止されない。
【００３７】
最下位層のオブジェクト配列において、グループの境界に相当するオブジェクトがインジケータを通過しない場合（ステップＳ２４でＮＯ）は、ステップＳ２５に処理が移行する。ステップＳ２５において、表示制御部３０２は、ステップＳ２３で決定された各オブジェクト配列の移動量に基づいて、移動後の画像を生成する。ここで、各オブジェクト配列の移動経過も表示させる場合には、それぞれの移動量を複数分割し、分割された数の画像を生成してもよい。これら複数の画像をタッチスクリーン１０１に順次出力することによって、各オブジェクト配列の移動経過もアニメーション表示可能となる。以上のステップＳ２５までの処理が完了すると、オブジェクト移動処理（ステップＳ１５）は完了し、呼び出し元の処理にその結果がリターンされる。
【００３８】
オブジェクト移動処理（ステップＳ１５）が終了すると、ステップＳ１６において、表示制御部３０２は、生成した画像をタッチスクリーン１０１に出力して表示画像を更新する。表示画像の更新（ステップＳ１６）が終了すると、ステップＳ１７において、オブジェクトの表示処理が終了されたかどうかを判断する。アプリケーションから終了の指示があった場合や、操作検出部３０３がユーザによる所定の終了操作を検出する場合やタッチ位置の移動が検出されなくなった場合には、オブジェクトの表示処理を終了する（ステップＳ１７でＹＥＳ）。引き続きタッチ位置の移動が検出される場合や新たにオブジェクトを移動する操作を検出した場合など、オブジェクト表示処理を終了しない場合（ステップＳ１７でＮＯ）は、再びステップＳ１４に処理が移行する。そして、オブジェクトの表示処理が終了されるまで、オブジェクト移動処理（ステップＳ１５）、表示画像の更新（ステップＳ１６）の処理を繰り返す。なお、本実施形態では、画像処理装置１００の電源が投入されたのに従って、オブジェクト表示処理がスタートした。ただし、アプリケーションの起動時やメニューが選択された事に従って、オブジェクト表示処理をスタートしても構わない。
【００３９】
本実施形態で述べたように、上位階層のグループに含まれる全オブジェクト数に基づいて各オブジェクト配列を連動して移動させることにより、閲覧しているオブジェクトの、上位階層のオブジェクト群全体に対する相対位置を容易に把握できる。さらに、各階層のオブジェクト配列とともに表示されるインジケータによって、上下階層のオブジェクト配列の移動に伴う表示変化を直感的に理解しやすくなる。また本実施形態で示す表示方法は、オブジェクトと離れた所定位置にスクロールバーや通し番号を表示する一般的な方法と比較して、視線移動が少なく、視認負荷が少ないという効果を奏する。
【００４０】
また、本実施形態において、各階層は上述の仮想的な歯車のように連動するため、任意の階層に対する操作が他階層へも波及する。つまり、上位階層のオブジェクト配列を移動操作によってスクロールする場合、下位階層のオブジェクト配列は、上位階層と比較して高速にスクロールさせることが可能となる。これを利用することで、所望のオブジェクトを表示させたい場合等に、別途スクロールバーなどの補助手段を必要とせず、多くのオブジェクトを高速にスクロールさせることが可能となる。さらに、上位階層のオブジェクトを、インジケータとの相対位置を調整して移動させれば、下位階層において所望とするオブジェクトを検索しやすくなる。
【００４１】
本実施形態では、生成部３０１が５階層の配列データを生成し、表示制御部３０２がそのうち３階層のオブジェクト配列を表示する初期画像を生成する例を説明したが、この限りではない。Ｎ個の階層を生成部３０１で生成し、全てを表示したり、上述したように表示する階層を選択したりすることができる。但し、Ｎは２以上の整数である。さらに、本実施形態では、操作検出部３０３がユーザによるタッチまたは複数の位置へのタッチ（以下、マルチタッチ）操作を検知し、表示されていない階層を挿入して表示させたり、表示されている階層を隠したりすることができる。以下、この機能について説明する。
【００４２】
図３（Ａ）のフローチャートのステップＳ１４において、操作検出部３０３は、オブジェクトに対して行われたタッチ操作を検出し、その操作量を求める。このとき、操作検出部３０３は、さらにユーザによるタッチまたはマルチタッチの操作とその操作量を算出し、どのような操作が行われたのかを判定する。検知された操作が表示するオブジェクト配列を変更するための操作であると判定された場合、ステップＳ１５において、表示制御部３０２は、検知した操作に応じて、オブジェクト配列の挿入・削除を行った表示画像を生成する。
【００４３】
図７は、本実施形態による画像処理装置１００の表示画像の一例である。図７（Ａ）は図５（Ａ）と同様の初期画像であって、配列５０２はＭｏｎｔｈ、配列５０３はＤａｙ、配列５０４がＣｏｎｔｅｎｔｓの階層を示す。初期画像においては、表示されていないオブジェクト配列のデータがＲＡＭ２０１には存在することをわかりやすく示すためのチェックマーク７０１ａ、７０１ｂを、該当する配列間に表示させることもできる。まず、図７（Ａ）の３階層が表示されている初期画像において、ユーザはチェックマーク７０１ａが表示されていることにより、配列５０２よりも左にさらに上位階層の配列を表示可能であることを視認できる。そして、図７（Ａ）での物体１０３のように表示画像５００の左端をタッチして、矢印７０２の方向にドラッグする。すると、図７（Ｂ）で示すように、上位階層であるＹｅａｒの階層を示す配列７０５が新たに表示されて、Ｃｏｎｔｅｎｔｓは画面外に追い出される。そして、表示範囲外に下位階層の配列が存在することを示すチェックマーク７０１ｃ、およびＹｅａｒ階層のグループとＭｏｎｔｈの階層のオブジェクトの親子関係を示す矢印バー５０５ｅが新たに表示される。Ｃｏｎｔｅｎｔｓの階層を表示させたい場合には、表示画像５００の右端をタッチして逆方向にドラッグすればよい。また、図７（Ｃ）、図７（Ｄ）で示すように、マルチタッチによる操作によって中間の階層の配列を表示させることもできる。ここでは、ＤａｙとＣｏｎｔｅｎｔｓの間をピンチアウトする操作（タッチスクリーンを並列にタッチした指等の２つの物体によるタッチ位置の間隔を、それぞれのタッチ状態を維持したまま広げる操作）を行うことによって、新たな軸を挿入することも可能である。図７（Ｃ）は、矢印７０３の方向に指を広げる様子を示している。すると、図３（Ｄ）のように、ＤａｙとＣｏｎｔｅｎｔｓの間に新たにＨｏｕｒの階層であるオブジェクト配列が挿入され、Ｍｏｎｔｈの階層は画面外に押し出される。また、対象とするオブジェクト配列にピンチ操作（タッチスクリーンを並列に指等の２つの物体でタッチし、つまむように２点のタッチ位置の間隔を狭める操作）を行うことで、表示中の階層のオブジェクト配列の表示を省略することもできる。この場合の表示画像の遷移は、図７（Ｄ）から図７（Ｃ）への遷移に等しくなる。
【００４４】
本実施形態では、図４で示したように、生成部３０１にて、予め時間階層のグループを配列データとして生成していることで、速やかに挿入されたオブジェクト配列を表示させることができる。ただし、ユーザがオブジェクトを閲覧しているバッググラウンドで、表示されていない階層の配列データを生成してもよい。このようにすると、画像処理装置１００を起動してから初期画像が表示されるまでの処理負荷を軽くし、ユーザは速やかにオブジェクトの閲覧を始めることができる。従って、表示する必要が生じるかどうか不明な配列データを多数生成するために初期画像の生成までに時間がかかり、ユーザにストレスを感じさせることを防ぐ効果がある。この際、バックグラウンドでは、表示中の階層における１グループ単位に属する下位階層のオブジェクトが所定の数より少なければ、いくつかのグループをまとめた上位階層の配列データを用意するようにすることができる。逆に、表示中の階層において、１グループ単位に属する下位階層のオブジェクト数が所定の数よりも多いことに応じて、更に詳細な分類による下位階層の配列データを用意するようにすることもできる。例えば、図７（Ａ）の初期画像において、Ｄａｙの階層のグループには、平均して１００枚以上のオブジェクトが含まれているとする。このような場合、Ｃｏｎｔｅｎｔｓ階層において数個ずつオブジェクトをスクロールしていては、ユーザが所望とするオブジェクトを検索したい時には効率がよくない。しかし、上位のＤａｙ階層をスクロールすると、１００枚以上の画像がまとまって移動してしまい、その中に含まれる所望とするオブジェクトを見つけるのは返って困難になる。このような課題を解決するため、ユーザがオブジェクトを閲覧している間に、バックグラウンド処理として、生成部３０１が、メタデータを用いて下位階層のオブジェクトをグループ化し、Ｈｏｕｒ階層の配列データを生成する。そして、そのバックグラウンド処理の完了にともなってチェックマーク７０１ｂを表示させるように構成することも可能である。これにより、ユーザは、Ｃｏｎｔｅｎｔｓ階層よりは大まかに、かつＤａｙ階層よりは詳細に、オブジェクト配列をスクロールすることが可能となるので、所望とするオブジェクトを見つけやすい。
【００４５】
上述したように、本発明によれば、スクロールする階層によってオブジェクトのスクロール量を調節することができる。従って、このように、適宜表示画像を変更し、表示中の階層よりも上位もしくは下位の階層を表示させられることで、ユーザの希望に沿ったスクロール操作が可能な環境を提供することができる。なお、本実施形態ではタッチスクリーン１０１を操作部とするため、マルチタッチ操作を利用する。ただし、マウスやその他のポインティングデバイスを利用する画像処理装置においては、チェックマーク７０１をダブルクリックするなどの操作で、同じように階層の挿入、削除を指示できる。
【００４６】
なお、本実施形態では、日付のメタデータを用いて配列データを生成するが、日付を用いた配列データの生成以外の実施形態にも適用可能である。例えば、オブジェクトの名前を利用し、アルファベット順でオブジェクトを整列することによって階層やグループを生成する場合にも適用できる。その他の適用例として、オブジェクトにＧＰＳによる位置情報や、ユーザの嗜好、カテゴリといったメタデータが付与されている場合は、それらの情報を利用してオブジェクトを整列させることも考え得る。
【００４７】
また、本実施形態では、ステップＳ１３で表示される初期画像は、前回使用時に最後に表示されていた画像である。これは、公知の履歴機能を用いて実現される。例えば、使用終了時に最下位階層に表示されていたオブジェクトを履歴情報としてストレージ２０７に記憶し、起動時に表示制御部３０２が履歴情報を取得する。そして、今回作成した配列データから該当するオブジェクトを選択し、表示画像に反映させるようにできる。ただし本発明の画像処理装置１００の初期画像は、前回使用時の最後の表示画像に限られず、例えば表示ステップＳ１０において取得されたオブジェクト群のうち、最も新しいオブジェクトを閲覧する状態を表示することもできる。この場合は、履歴情報を保持する必要はなく、配列データを参照する際、常に最も新しいオブジェクトをタッチスクリーン１０１に表示させるために選べばよい。
【００４８】
また、本実施形態では、オブジェクト配列に対する移動操作を縦に整列したオブジェクト配列の上下方向のスクロールとしたが、オブジェクトの集合を表示させる方法はこれに限らない。例えば、図１の１０２で示したように、オブジェクト配列を仮想的な回転体を模して表示し、回転を指示する操作によってオブジェクトを移動させ、伝搬部３０４によって回転量を伝搬するような表示をしてもよい。また、オブジェクト配列はオブジェクトを左右に整列させても構わない。いずれの表示方法においても、ユーザが直感的な操作によって階層的に整理されたオブジェクトの集合を閲覧し、表示されたオブジェクトを移動させることができる。
【００４９】
ここまで説明した第１の実施形態の変形例として、オブジェクトを移動操作する前の段階でオブジェクト配列の表示形態を変更する処理ステップを加えることで、より操作性を向上させることができる。このような変形例の一例として、ユーザが操作対象とするオブジェクト配列を、その階層において注目するオブジェクトを中心に上下方向の中央に表示させるように表示画像を整える例を説明する。
【００５０】
オブジェクトを移動する操作の前に、操作対象となる階層においてオブジェクト配列の表示を変更し、注目するオブジェクトを中心に上下対称に表示するのは、ユーザに対してより操作しやすい環境を提供するためである。上述したように、第１の実施形態では、注目するオブジェクトの上下階層に相当するオブジェクトが、インジケータによって関連付けられ表示される。注目するオブジェクトを指し示すインジケータは、表示画像の上下方向の中央に固定されている。従って、インジケータが短辺の中心を指し示すように、注目するオブジェクトを積極的に移動させることにより、ユーザにとっては視認性が高まり、いずれのグループに属するオブジェクトを閲覧しているのかが直感的に分かりやすいという効果を奏する。また、第１の実施形態では、注目オブジェクトの上下階層に相当するオブジェクトの数に基づいて、移動操作を行った際の各オブジェクト配列の移動量が変化する。従って、所望の結果を得るためには、操作対象となる階層においていずれのオブジェクトに注目しているのかを明確に把握できることが好ましい。注目するオブジェクトの視認性を高めることで、ユーザは所望の結果を得るためのより直感的な操作がしやすくなる。
【００５１】
図８（Ａ）のフローチャートは、変形例における画像処理装置１００のオブジェクト表示処理の処理ステップを示すもので、図３（Ａ）と重複する内容については同番号を付し、説明を省略する。
【００５２】
図８（Ａ）のフローチャートで示されるステップＳ１０からステップＳ１４までの処理は、図３（Ａ）と同様である。この変形例では、ステップＳ１４において、操作検出部３０３が、オブジェクトが操作されたことを検出した場合にはオブジェクト配列が操作された（ステップＳ１４でＹＥＳ）は、ステップＳ１５Ａに進む。そして、オブジェクトが操作されていない場合（ステップＳ１４でＮＯ）には、操作が行われるまで待機する。ステップＳ１５Ａでは、オブジェクト表示変更処理を行う。図８（Ｂ）は、ステップＳ１５Ａにおけるオブジェクト表示変更処理の処理フローを示すフローチャートである。図８（Ｂ）を用いて、本実施形態のオブジェクト表示処理の詳細を説明する。
【００５３】
まずステップＳ２００において、画像処理装置１００の操作検出部３０３は、操作されたオブジェクトが属する階層（オブジェクト配列）を特定する。そして、続くステップＳ２０１において、操作されたオブジェクト配列が既に操作対象として設定されているかどうかの判定を行う。ここで、既に操作対象として設定されているとは、直近で移動操作を行った階層と同じであることをいう。画像処理装置の起動直後の操作であれば、常にＮＯの判定をする。ただし、前回使用時の最後の表示画像と操作情報を、履歴情報として利用可能であれば、それを用いてステップＳ２０１の判定をすることができる。タッチされたオブジェクト配列が既に操作対象として設定済みである場合（ステップＳ２０１でＹＥＳ）は、オブジェクト表示変更処理（ステップＳ１９）は完了し、呼び出し元の処理にその結果がリターンされる。
【００５４】
タッチされた階層が操作対象として設定されている階層ではなかった場合（ステップＳ２０１でＹＥＳ）は、ステップＳ２０２においてタッチされた階層を操作対象の階層として設定し、ＲＡＭ２０１に設定情報を保持する。さらに、ステップＳ２０３において、画像処理装置１００の伝搬部４０３は、操作対象階層における注目するオブジェクトを、上下方向の中央に表示させるように、該当するオブジェクト配列の移動量を求める。この移動に伴い、操作対象のオブジェクト配列は上下対称に表示されるようになる。続くステップＳ２０４では、注目するオブジェクトの上下階層のオブジェクト数Ｎを、ＲＡＭ２０１上の配列データから取得する。ステップＳ２０４を処理した後は、ステップＳ２３からＳ２５の処理が順次行われる。図８（Ｂ）のステップＳ２３からステップＳ２５までの処理は、図３（Ｂ）を用いて説明した第一の実施形態と同様である。そして、ステップＳ２０５において、オブジェクト表示変更処理のために生成した画像を出力し、タッチスクリーン１０１上の表示を更新する。すると、オブジェクト表示変更処理（ステップＳ１５Ａ）は完了し、呼び出し元の処理にその結果がリターンされる。続くステップＳ１５以降の処理ステップは、図３（Ａ）、（Ｂ）のフローチャートにおける処理ステップと同様であるため、説明省略する。
【００５５】
図９は、オブジェクト表示変更処理による表示画像５００の遷移と、各表示状態でのタッチスクリーン１０１と物体１０３の位置関係を示す概要図である。この変形例による表示変更処理による表示画像の遷移を、図９を用いて説明する。図９（Ａ）で示すように、例えば最初に、Ｃｏｎｔｅｎｔｓ階層のオブジェクト配列５０４を移動操作していたとする。そして、図９（Ｂ）で示すように、一旦オブジェクト配列に対するタッチ操作を中止するとする。その場合、特に表示は変更されず、操作が中止された時点での表示状態が保持される。次にこの状態で、Ｄａｙ階層を操作するために、オブジェクト配列５０３をタッチしたとする。この時、伝搬部３０４と表示制御部３０２は、タッチされたオブジェクト配列５０３のオブジェクトが、注目するオブジェクトを中心に上下対称に表示されるように移動させる。また同時に伝搬部３０４は、オブジェクト配列５０３の移動量とオブジェクト数Ｎに基づいて、オブジェクト配列５０２、オブジェクト配列５０４も連動して移動させる。そして各オブジェクト配列の移動量に基づいて、表示制御部３０２において図９（Ｃ）で示す表示画像が生成され、各オブジェクト配列のオブジェクトが注目するオブジェクトを中心に上下対称となって表示更新される。
【００５６】
以上説明した変形例では、オブジェクトを移動操作する前の段階でオブジェクト配列の表示形態を変更する処理として、操作対象オブジェクト配列を注目するオブジェクトを中心に上下対称に表示させた。ただし、表示形態を変更は、この限りではなく、例えば、オブジェクトのサイズを変更することができる。このような変形例の一例として、操作対象とする階層によって、ユーザの閲覧対象となる階層の配列におけるオブジェクトの表示サイズを変更する変形例を説明する。
【００５７】
図面を参照しながら変形例を詳細に説明する。尚、第１の実施形態および既に述べた変形例に準ずる箇所については、その説明を省略する。この変形例においても、図８（Ａ）のフローチャートに従い、オブジェクト表示処理を行う。図３（Ａ）と重複するステップについては同様の処理を行い、ステップＳ１５ＡおよびステップＳ１５では、次のように処理する。
【００５８】
ステップＳ１５Ａにおいては、図１０（Ａ）のフローチャートに示すオブジェクト表示変更処理を実行する。図１０（Ａ）のフローチャートにおいて、まずステップＳ３００では、画像処理装置１００の操作検出部３０３が操作されたオブジェクトが属する階層を特定する。そして、ステップＳ３０１において、ＲＡＭ２０１上の配列データを参照し、特定した階層が最下位の階層であるかが判定される。最下位の階層である場合（ステップＳ３０１でＹＥＳ）には、ステップＳ３０２で変数Ｍに１より大きい数を割り当てる。最下位の階層でなければ（ステップＳ３０１でＮＯ）、ステップＳ３０３において変数Ｍに０＜Ｍ＜１の数を割り当てる。そして、続くステップＳ３０４において、最下位の階層で表示される第２オブジェクトの表示サイズを、上位階層で表示される第１オブジェクトのＭ倍に変更する。ただし、ここで表示サイズとは、サムネイル画像の面積である。ステップＳ３０５においては、変更された表示サイズに基づいて、新たな表示画像を生成する。そして、ステップＳ３０６において、生成された画像を表示制御部３０２がタッチスクリーン１０１に出力し、表示を更新する。図１１（Ａ）は、ユーザが最下位階層の配列５０４のオブジェクトに対して操作を行った場合に更新された表示画像の一例である。オブジェクト５０８を始め、オブジェクト配列５０４の第２オブジェクトが上位階層の第１オブジェクトより大きい表示サイズに変更されている。また、図１１（Ｂ）は、ユーザが上位階層の配列５０３の第１オブジェクトに対して操作を行った場合に更新された表示画像の一例である。オブジェクト５０９を始め、オブジェクト配列５０４の第２オブジェクトが上位階層の第１オブジェクトより小さい表示サイズに変更されている。図１１（Ｂ）のように、表示サイズを変更するのは、上位階層において注目する第１オブジェクトが示すグループに属する下位階層の第２オブジェクトのみであってもよい。ステップＳ１５Ａにおける処理が終了したら、ステップＳ１５のオブジェクト移動処理に進む。この変形例におけるオブジェクト移動処理は、図１０（Ｂ）のフローチャートに従う。図１０（Ｂ）のフローチャートにおいて、ステップＳ２３Ａ以外の処理は全て第１の実施形態と同様に、まず操作されたオブジェクトの移動量を求め（ステップＳ２０）、階層とグループを特定し（ステップ２１）、上位階層のオブジェクト数Ｎを取得する（ステップＳ２２）。
【００５９】
図１０（Ｂ）のステップＳ２３Ａでは、ステップＳ２２で取得したオブジェクト数Ｎとともに、ステップＳ３０４において表示サイズを決定した変数Ｍを利用して、下位階層の第２オブジェクトの移動量を決定する。最下位階層に属する第２オブジェクトが操作によって移動された場合に（１＜Ｍ）、上位階層に属する第１オブジェクトを連動して移動させる移動量は、図３（Ｂ）のステップＳ２３の方法で決定した移動量に対してさらに１／Ｍ倍した量に基づいて決定される。また、上位階層に属する第１オブジェクトが操作によって移動された場合に（０＜Ｍ＜１）、最下位階層に属する第２オブジェクトを連動して移動させる移動量は、図３（Ｂ）のステップＳ２３の方法で決定した移動量に対してさらにＭ倍した量に基づいて決定される。このとき、表示変更されたオブジェクトの表示上の配置やオブジェクト間のギャップ値を考慮した調整が必要となる場合もある。本実施形態において表示サイズが変更されるのは最下位階層のみであるので、最下位階層と隣り合わない上位階層のオブジェクト配列の移動量は、図３（Ｂ）のステップＳ２３の方法で決定される。以降、図８（Ｂ）と同様、ステップＳ２４において、一連の移動に伴い、最下位層のオブジェクト配列においてグループの境界に相当するオブジェクト間のギャップがインジケータを通過し、インジケータがグループの境界を越える移動が行われるかを判定する。そしてステップＳ２５において、移動後の表示画像を生成し、オブジェクト移動処理を終了する。そして、図８（Ａ）のフローチャートに戻り、オブジェクト表示処理が引き続き実行される。
【００６０】
この変形例は、以下のような場合に、特に操作性を向上させる効果を奏する。例えば、オブジェクト配列の第１の実施形態およびその変形例のように、オブジェクトが画像である場合、最も下位のＣｏｎｔｅｎｔｓ階層は、ユーザが１つ１つの画像を閲覧するための階層である。従って、ユーザがＣｏｎｔｅｎｔｓ階層をスクロールする場合には、オブジェクトは内容を詳細に確認できるように大きく表示されることが望ましい。一方で、ユーザが上位階層をスクロールする場合は、下位階層の画像を高速にスクロールしたい場合である。このとき、下位階層のオブジェクトの表示サイズは大きい必要はなく、むしろ小さければ、上位階層におけるスクロール移動量が小さくて済むため、効率が良いという効果がある。変数Ｍを用いることで下位階層のオブジェクト配列における移動量が極端に大きくなることを避ければ、上述したように下位階層におけるスクロール移動の過程を分割してアニメーション等で表示出力する場合にも、ハードウェアにかかる負荷を軽くすることもできる。
【００６１】
なお、ユーザが操作対象とした階層が、最下位の階層であるかどうかによって、最下位階層に表示されるオブジェクトの表示サイズを変更する変形例を説明したが、表示サイズを変更する際の条件は、これに限らない。例えば、上位階層において注目するオブジェクトの下位階層に相当するオブジェクト数がある閾値より大きい場合に、表示サイズを上位階層よりも小さくするように設定することもできる。この場合も同様に、下位階層を高速にスクロールする際の効率をよくするという効果がある。また、同様の効果を得るために、ユーザが最下層のオブジェクト配列のオブジェクトをピンチまたはピンチアウトする操作により、表示サイズを任意に変更させても良い。この場合には、ユーザ自信が直感的な操作で、適切な変数Ｍを設定できるという利点がある。もちろん、下位階層のスクロールの過程を表示せず、一旦オブジェクト配列の表示をリセットして、移動後のオブジェクト配列を表示させることによっても、高速に移動するオブジェクトを表示させるために生じる処理負荷は低減できる。リセットしている間は、背景を表示してもよいし、テキストや仮の画像等を表示させることによって、スクロール中であることを示してもよい。
【００６２】
なお、ここまで説明した第１の実施形態とその変形例では、オブジェクト（画像）が有する撮影日時のメタデータを利用することで階層構造を有する配列データを生成したが、これに限られない。例えば、音楽ファイル（曲）が有するメタデータを利用して階層・グループを生成することもできる。この場合、生成部３０１は、音楽ファイルに付加されているメタデータを利用して、ジャンル、アーティスト、アルバム、曲の順序で配列データを生成し、生成した配列データをＲＡＭ２０１に保持する。表示制御部３０２は、ＲＡＭ２０１に保持されている配列データから表示画像を生成し、タッチスクリーン１０１に出力する。表示制御部３０２で生成される表示画像１２００の一例を図１２に示す。オブジェクト配列１２０２からオブジェクト配列１２０５は、配列データの各階層に対応するものとする。ユーザは、適当な階層のオブジェクト配列をスクロールして、所望とする音楽ファイル（曲）を示すオブジェクト最下位階層の配列１２０５に表示させる。なお、表示されるオブジェクトは、テキストであっても、アーティストの写真やアルバムジャケットなどのサムネイル画像であってもよい。そして例えば、配列１２０５において注目するオブジェクトに対応する音楽ファイルを、再生させる。または、配列１２０５に表示させた中からタッチ操作などにより選択したオブジェクトに対応する音楽ファイルを再生させる。このような構成によって、新しいミュージックブラウザのインタフェースを提供することが可能となる。また、同様に書籍ファイルのジャンルや著作者名、出版元などの情報のメタデータを利用すれば、電子ブック端末における書籍ファイルの管理用インタフェースを提供することも可能である。
【００６３】
＜第２の実施形態＞
第１の実施形態では、画像オブジェクトが有する撮影日時という１種類のメタデータを利用し、階層構造の配列データを生成した。これに対し、第２の実施形態では、オブジェクトが有する複数種類のメタデータを分類条件として階層化およびグループ化に利用し、階層構造を有する配列データを生成する実施形態を説明する。第２の実施形態においても、システム概要図、ハードウェア構成図、機能ブロック図、メインのフローチャートは、図１〜図３を用いて説明した第１の実施形態と同様である。第２の実施形態においても、他図を用いて説明されたものには同一の符号を付し、その説明を省略する。
【００６４】
図１３は、第２の実施形態において、生成部３０１が生成する配列データ（ステップＳ１１）の一例である。生成部３０１は、画像オブジェクトが有する撮影日時を示す情報および撮影されたイベントを示す情報の２種類のメタデータを分類条件として階層化・グループ化に利用する。ここで、撮影されたイベントを示す情報のメタデータは、デジタルカメラに搭載された撮影画像のカテゴライズ機能等、公知の技術によって予め画像オブジェクトに付与されたメタデータである。これらのようなメタデータを用い「年、イベント、オブジェクト」ならびに「イベント、年、オブジェクト」についてもそれぞれ階層化・グループ化を行い、配列データを生成する。このように、２種類のメタデータを利用した場合では、いずれのメタデータを上位階層とするかによって、階層化に２つのパターンが生じる。図１３（Ａ）に示す「年、イベント、オブジェクト」の配列データの場合には、まず最上位の階層１３０１ａは、撮影日時の情報によって撮影年毎にグループ化されている。さらに、その下位に相当する階層１３０２ａは、各撮影年グループの中でそれぞれ、撮影されたイベントを示す情報によってイベント毎にグループ化されている。そして、最下位の階層１３０３０ａでは、上位階層のグループに対応する２つのメタ―データの条件を満たすオブジェクトが対応付けられている。ただし、本実施形態において、同じグループ内の複数のオブジェクトは、撮影日時順に並べることとする。一方、図１３（Ｂ）で示す「イベント、年、オブジェクト」の配列データの場合には、まず最上位の階層１３０１ｂは、撮影されたイベントを示す情報によってイベント毎にグループ化されている。そして、その下位に相当する、各イベントグループの中でそれぞれ、撮影日時を示す情報によって撮影年毎にグループ化されている。そして、最下位の階層１３０３ｂでは、上位階層のグループに対応する２つのメタ―データの条件を満たすオブジェクトが対応付けられている。同じ２つの条件を満たすオブジェクトは同じになるが、前後のグループに対応するオブジェクトは異なる。例えば、図１３（Ａ）の配列データでは、２０１０年の運動会の前には２０１０年の花火大会の画像のグループが対応する。一方で、図１３（Ｂ）の配列データでは、２０１０年の運動会の前は２００９年の運動会のグループが対応する。
【００６５】
表示制御部３０２が、図１３（Ａ）の配列データを用いて生成する表示画像（ステップＳ２５）がタッチスクリーン１０１に出力され、表示されたものが、図１４（Ａ）である。階層１３０１ａ、１３０２ａ、１３０３ａは、オブジェクト配列１４０１ａ、１４０２ａ、１４０３ａに対応している。そして、Ｙｅａｒの階層においては２０１０年のグループが、Ｅｖｅｎｔの階層においては運動会のグループが注目するオブジェクトとして、インジケータに関連付けられて表示されている。同様に、図１３（Ｂ）の配列データを用いて生成する表示画像が表示されたものが、図１４（Ｂ）である。第２の実施形態においても、上位階層において注目する第１オブジェクトを移動させるのに連動して、下位階層の第２オブジェクトが移動する移動量は、Ｎに基づいて第１オブジェクトの移動量よりも大きくなる。また、下位階層において注目する第２オブジェクトを移動させるのに連動して、上位階層の第１オブジェクトが移動する移動量は、Ｎに基づいて第２オブジェクトの移動量よりも小さくなる。すなわち、各階層のオブジェクト配列を移動（スクロール）させたときの移動量が、注目するオブジェクトの上下階層に属するオブジェクトの数Ｎに応じて、他の階層に伝搬し、全てのオブジェクト配列が連動して移動する。これを利用して、上位階層のオブジェクト配列を移動操作することで、下位階層のオブジェクト配列を高速にスクロールさせることが可能となる。また、インジケータは、上位階層において注目する第１オブジェクトと、その下位階層に属する第２オブジェクトの親子関係を示すとともに、閲覧している第２オブジェクトの、グループ全体に対する相対位置を表現する。従って、上位階層のオブジェクトを、インジケータとの相対位置を調整して移動させれば、下位階層において所望とするオブジェクトを検索しやすくなる。
【００６６】
本実施形態では、上述したように、配列データに２つのパターンがあるため、図１４（Ａ）の表示画像、あるいは図１４（Ｂ）の表示画像においてオブジェクト配列をスクロールしたそれぞれの場合では、閲覧できるオブジェクトの順序が異なる。従って、ユーザは「どのような画像を見たいか」によって、いずれの配列データに基づいたオブジェクト配列の配置を用いるかを切替えることが可能である。本実施形態において、表示中のオブジェクト配列を入れ替える操作は、マルチタッチ操作によって行う。例えば、図１４（Ａ）の画像で、２０１０年の運動会の画像を閲覧しているとする状態で、ユーザが「運動会の写真を数年分まとめて見たい」という希望があったとする。ことのとき、ユーザはＹｅａｒの階層の配列１４０１ａとＥｖｅｎｔの階層の配列１４０２ａを同時にタッチし、矢印１４０４の方向に回転させる。すると、画像が図１４（Ｂ）のように遷移する。このとき、Ｙｅａｒの階層においては２０１０年のグループが、Ｅｖｅｎｔの階層においては運動会のグループが注目するオブジェクトとして、変わらずにインジケータに関連付けられて表示されている。従って、図１４の例では、Ｃｏｎｔｅｎｔｓ階層である配列１４０３ａと配列１４０３ｂに表示されているオブジェクトは、マルチタッチによる操作直後では変化しない。表示されるオブジェクト配列を入れ替えた後に、いずれかのオブジェクト配列に対し移動操作を行うと、並び合うグループが変化したため、２０１０年の運動会に続いて２００９年、２００８年の運動会の画像を閲覧することが可能になる。ただし、例えば、マルチタッチ操作の際にタッチしたオブジェクトを、遷移後の表示画像における注目オブジェクトとしても構わない。この場合には、遷移後の表示画像において、注目するオブジェクトを改めて選択する必要がなくなるという利点がある。
【００６７】
なお、図１３（Ｂ）の配列データの例には、２０１１年の運動会の写真は含まれていない。従って本実施形態では、２０１０年の運動会の後には、配列データの順序に従って２００８年のクリスマスの画像のグループが表示される。ただし、本実施形態の構成は上位階層のメタデータによる条件にあう画像のうち、下位階層のメタデータによる条件にあう画像を絞り込んで所望の構成の画像を検索する画像処理装置に利用することも可能である。その場合には、最上位のＥｖｅｎｔの階層において運動会のグループに注目すると、下位の、Ｙｅａｒの階層のオブジェクト配列においては２００８年、２００９年、２０１０年のそれぞれ運動会を示す３つのグループしか表示されない。
【００６８】
以上、本実施形態で述べたように、複数の種類のメタデータを有するオブジェクトを階層化およびグループ化した配列データを生成することで、ユーザは所望の条件に合う画像をまとめて閲覧することができる。さらに、マルチタッチ操作を用いた軸の入れ換えを実現することによって、意図に合わせて画像を並べる条件を変更することができ、さらに操作性を高めることができる。なお、本実施形態においても第１の実施形態同様の変形例を用いることができる。すなわち、オブジェクトを移動操作する前の段階でオブジェクト配列の表示形態を変更する処理ステップを加えることで、より操作性を向上させることができる。その際、操作対象となるオブジェクト配列を、注目するオブジェクトを中心とした上下対象に表示させることで、注目するオブジェクトをより明確に示すことができる。また、操作対象となるオブジェクト配列に応じて、最下位階層に属するオブジェクトの表示サイズを変更することで、画像オブジェクトの内容をより詳細に確認できたり、効率よくスクロールさせたりすることができる。
【００６９】
なお、ここまで説明した本実施形態では、画像オブジェクトを扱ったが、例えば、テレビ放送の番組情報が持つメタデータを利用して階層・クループを生成することもできる。この場合、生成部３０１は、ＴＶ番組に付加されているメタデータを利用して、配列データを生成しＲＡＭ２０１に保持する。表示制御部３０２は、ＲＡＭ２０１に保持されている情報から表示画像を生成し、タッチスクリーン１０１に出力する。
【００７０】
図１５に、表示制御部３０２で作成される表示画像１５００の例を示す。図１５（Ａ）は、生成部３０１が、チャンネル、時間、番組の順序で、番組情報を階層化した配列データに基づく表示画像１５００である。従って、ユーザは同じチャンネルで放送されるテレビ番組の情報を時系列順に閲覧していくことができる。一方で、図１５（Ｂ）は、生成部３０１が、時間、チャンネル、番組の順序で、番組情報を階層化した配列データに基づく表示画像１５００である。この場合、ユーザは同じ時間帯に放送されているテレビ番組の情報をチャンネル順に閲覧していくことができる。本実施形態では、生成部３０１が、これらの配列データの複数パターンを予め生成してくため、ユーザはマルチタッチ操作によって、オブジェクト配列を入れ替える操作を行うと、速やかに表示画像が更新される。また、配列データに用いるメタデータの種類は時間、チャンネルに限らず、様々なメタデータを利用することでユーザの利便性を向上させることができる。例えば、生成部３０１にて、ジャンル、日時、番組／ｃｈの順序で配列データを生成した場合に、表示制御部３０２で生成される表示画像は図１５（Ｃ）のようになる。第１の実施形態のように、予め、表示されるよりも多くの階層の配列データを生成しておき、マルチタッチ操作によって、適宜オブジェクト配列を挿入・削除して表示画像をカスタマイズすることが可能であってもよい。その場合、ユーザの嗜好に合わせた多くのパターンの表示画像を提供できる。以上、本変形形態で示した構成にすることによって、新しい電子番組表（ＥＰＧ：Ｅｌｅｃｔｒｏｎｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅ）のインタフェースを提供することが可能となる。
【００７１】
＜他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005939756.tif 000002
【図２】
0005939756.tif 000003
【図３】
0005939756.tif 000004
【図４】
0005939756.tif 000005
【図５】
0005939756.tif 000006
【図６】
0005939756.tif 000007
【図７】
0005939756.tif 000008
【図８】
0005939756.tif 000009
【図９】
0005939756.tif 000010
【図１０】
0005939756.tif 000011
【図１１】
0005939756.tif 000012
【図１２】
0005939756.tif 000013
【図１３】
0005939756.tif 000014
【図１４】
0005939756.tif 000015
【図１５】
0005939756.tif 000016