(57)【要約】【課題】表示環境に応じた適切なコンテンツのグループ化表示を可能にする。【解決手段】コンテンツの表示環境を検出する表示環境検出部と、上記表示環境に基づいて上記コンテンツのクラスタリング条件を設定するクラスタリング条件設定部と、上記クラスタリング条件に従って上記コンテンツのクラスタリングを実行するクラスタリング部と、上記クラスタリングの結果に基づいて上記コンテンツを表示部に表示させる表示制御部とを含む表示制御装置が提供される。【選択図】図１
2014146248.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツの表示環境を検出する表示環境検出部と、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定するクラスタリング条件設定部と、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行するクラスタリング部と、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させる表示制御部と
を備える表示制御装置。
【請求項２】
前記クラスタリング条件設定部は、前記クラスタリングによって生成されるクラスタの粒度が前記表示環境に応じて変化するように前記クラスタリング条件を設定する、請求項１に記載の表示制御装置。
【請求項３】
前記クラスタリング条件設定部は、前記表示部に表示可能なコンテンツの数に応じて前記クラスタの粒度が変化するように前記クラスタリング条件を設定する、請求項２に記載の表示制御装置。
【請求項４】
前記表示環境検出部は、少なくとも前記表示部のサイズを検出し、
前記クラスタリング条件設定部は、前記クラスタの粒度が前記表示部のサイズに応じて変化するように前記クラスタリング条件を設定する、請求項３に記載の表示制御装置。
【請求項５】
前記クラスタリング条件設定部は、前記表示環境に基づいて設定される条件を満たすコンテンツが優先的にクラスタリングされるように前記クラスタリング条件を設定する、請求項１に記載の表示制御装置。
【請求項６】
前記クラスタリング条件設定部は、前記表示環境として検出される属性と共通の属性を有するコンテンツが優先的にクラスタリングされるように前記クラスタリング条件を設定する、請求項５に記載の表示制御装置。
【請求項７】
前記表示制御部は、前記コンテンツの表示中に前記表示環境を検出し、
前記クラスタリング条件設定部は、前記検出された表示環境が変化した場合に前記クラスタリング条件を再設定し、
前記クラスタリング部は、前記クラスタリング条件が再設定された場合に前記クラスタリングを再実行する、請求項１に記載の表示制御装置。
【請求項８】
前記表示制御部は、前記コンテンツを前記クラスタリングによって生成されたクラスタごとに表示させる、請求項１に記載の表示制御装置。
【請求項９】
前記表示制御部は、前記各クラスタの代表コンテンツを他のコンテンツよりも先に表示させる、請求項８に記載の表示制御装置。
【請求項１０】
前記表示制御部は、前記コンテンツをページごとに表示させ、前記各ページに表示されるクラスタの代表コンテンツを表示させる、請求項９に記載の表示制御装置。
【請求項１１】
前記表示制御部は、前記代表コンテンツを、前記他のコンテンツが表示されたときと同じ表示位置に表示させる、請求項１０に記載の表示制御装置。
【請求項１２】
前記表示制御部は、前記各ページの最後に表示されるコンテンツを前記他のコンテンツよりも先に表示させる、請求項１０に記載の表示制御装置。
【請求項１３】
前記表示制御部は、前記代表コンテンツを表示させた後に、前記他のコンテンツを前記代表コンテンツの間に挿入して表示させる、請求項９に記載の表示制御装置。
【請求項１４】
前記表示制御部は、前記コンテンツをページごとに表示させ、表示された前記各クラスタのコンテンツのいずれかが選択された場合に、前記選択されたコンテンツのクラスタを前記ページの先頭に移動させる、請求項８に記載の表示制御装置。
【請求項１５】
前記表示制御部は、表示された前記各クラスタのコンテンツのいずれかが選択された場合に、前記選択されたコンテンツのクラスタでまだ表示されていないコンテンツを、他のクラスタでまだ表示されていないコンテンツよりも先に表示させる、請求項８に記載の表示制御装置。
【請求項１６】
前記表示部を有する端末装置と通信し、前記表示環境を検出するための情報を前記端末装置から受信するとともに、前記コンテンツを表示するための情報を前記端末装置に送信する通信部をさらに備える、請求項１に記載の表示制御装置。
【請求項１７】
前記表示部をさらに備える、請求項１に記載の表示制御装置。
【請求項１８】
コンテンツの表示環境を検出することと、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定することと、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行することと、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させることと
を含む表示制御方法。
【請求項１９】
コンテンツの表示環境を検出する機能と、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定する機能と、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行する機能と、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させる機能と
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、表示制御装置、表示制御方法およびプログラムに関する。
【背景技術】
【０００２】
例えばデジタルカメラで撮影した写真の画像ファイルや文書ファイルなど、ユーザが保持する電子的なコンテンツは増加の一途をたどっている。それゆえ、例えばユーザがコンテンツを閲覧するときに、コンテンツを整理して検索性を高め、ユーザが所望するコンテンツにより早く、より容易にアクセスできるようにする技術が提案されている。例えば特許文献１には、画像コンテンツに含まれる位置情報に基づいてクラスタリングを実行し、クラスタリングの結果と所定のグループ化条件によって画像コンテンツをグループ分けして表示する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２５０６０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の特許文献１に記載された技術では、グループ化条件として、クラスタサイズやコンテンツの密度などをユーザが設定するため、ユーザの好みに応じたコンテンツのグループ化表示が可能である。しかしながら、同じユーザがコンテンツを閲覧する場合であっても、グループ化条件は、必ずしも毎回同じとは限らない。例えば、ユーザがいつ、どこで、誰と、どの装置を使ってコンテンツを閲覧しているかによって、適切なグループ化条件は異なりうる。
【０００５】
そこで、本開示では、表示環境に応じた適切なコンテンツのグループ化表示を可能にする、新規かつ改良された表示制御装置、表示制御方法およびプログラムを提案する。
【課題を解決するための手段】
【０００６】
本開示によれば、コンテンツの表示環境を検出する表示環境検出部と、上記表示環境に基づいて上記コンテンツのクラスタリング条件を設定するクラスタリング条件設定部と、上記クラスタリング条件に従って上記コンテンツのクラスタリングを実行するクラスタリング部と、上記クラスタリングの結果に基づいて上記コンテンツを表示部に表示させる表示制御部とを含む表示制御装置が提供される。
【０００７】
また、本開示によれば、コンテンツの表示環境を検出することと、上記表示環境に基づいて上記コンテンツのクラスタリング条件を設定することと、上記クラスタリング条件に従って上記コンテンツのクラスタリングを実行することと、上記クラスタリングの結果に基づいて上記コンテンツを表示部に表示させることとを含む表示制御方法が提供される。
【０００８】
また、本開示によれば、コンテンツの表示環境を検出する機能と、上記表示環境に基づいて上記コンテンツのクラスタリング条件を設定する機能と、上記クラスタリング条件に従って上記コンテンツのクラスタリングを実行する機能と、上記クラスタリングの結果に基づいて上記コンテンツを表示部に表示させる機能とをコンピュータに実現させるためのプログラムが提供される。
【０００９】
表示環境に基づいてコンテンツのクラスタリング条件を設定し、このクラスタリング条件に基づいてコンテンツをクラスタリングして表示させることで、表示環境に応じて適切にグループ化してコンテンツを表示させることが可能である。
【発明の効果】
【００１０】
以上説明したように本開示によれば、表示環境に応じた適切なコンテンツのグループ化表示ができる。
【図面の簡単な説明】
【００１１】
【図１】本開示の第１の実施形態に係るシステムの概略的な機能構成を示すブロック図である。
【図２】本開示の第１の実施形態に係る処理の例を示すフローチャートである。
【図３】本開示の第１の実施形態においてクラスタの粒度が表示環境に応じて変化するようにクラスタリング条件を設定する例について説明するための図である。
【図４】本開示の第１の実施形態において所定の条件を満たすコンテンツが優先的にクラスタリングされるようにクラスタリング条件を設定する例について説明するためのフローチャートである。
【図５】本開示の第１の実施形態におけるコンテンツの表示の第１の例を示す図である。
【図６】本開示の第１の実施形態におけるコンテンツの表示の第２の例を示す図である。
【図７】本開示の第１の実施形態においてクラスタリング条件を動的に変更する例について説明するためのフローチャートである。
【図８】本開示の第２の実施形態に係る端末装置の概略的な機能構成を示すブロック図である。
【図９】情報処理装置のハードウェア構成を説明するためのブロック図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．第１の実施形態
１−１．機能構成
１−２．処理フロー
１−３．クラスタリング条件設定の例
１−４．コンテンツの表示の例
１−５．クラスタリング条件の動的な変更の例
２．第２の実施形態
３．ハードウェア構成
４．補足
【００１４】
（１．第１の実施形態）
まず、図１〜図７を参照して、本開示の第１の実施形態について説明する。
【００１５】
（１−１．機能構成）
図１は、本開示の第１の実施形態に係るシステムの概略的な機能構成を示すブロック図である。図１を参照すると、システム１０は、サーバ１００と、クライアント２００とを含む。サーバ１００は、有線または無線のネットワークによって互いに接続された１または複数のサーバ装置によって実現され、本実施形態では表示制御装置として機能する。クライアント２００は、例えば携帯電話（スマートフォン）、パーソナルコンピュータ、メディアプレーヤ、またはゲーム機などのユーザが使用する端末装置であり、ユーザがコンテンツを閲覧するためのディスプレイを少なくとも有する。サーバ１００とクライアント２００とは、有線または無線のネットワークによって互いに接続される。
【００１６】
本実施形態において、サーバ装置および端末装置は、例えば後述する情報処理装置のハードウェア構成によって実現されうる。なお、クライアント２００については、コンテンツの閲覧機能を有する各種の公知の端末装置の機能構成をとりうるため、ここでは機能構成の詳細な説明を省略する。
【００１７】
サーバ１００は、例えばＣＰＵ（Central  Processing  Unit）などのプロセッサを用いてソフトウェア的に実現される表示環境検出部１０１、クラスタリング条件設定部１０３、クラスタリング部１０５、および表示制御部１０９と、ネットワーク通信を実行する通信装置によって実現される通信部１１１と、コンテンツデータ１０７が格納されるストレージ装置とを含む。
【００１８】
表示環境検出部１０１は、通信部１１１を介して取得した情報に基づいて、クライアント２００におけるコンテンツの表示環境を検出する。コンテンツの表示環境は、例えば、クライアント２００のディスプレイのサイズ、クライアント２００の処理能力など、クライアント２００の仕様を含みうる。なお、例えばクライアント２００がディスプレイにアプリケーションのためのウインドウを表示する場合、「ディスプレイのサイズ」は、クライアント２００のディスプレイ全体のサイズではなく、コンテンツを閲覧するためのアプリケーションのウインドウのサイズを意味しうる。クライアント２００の仕様を示す情報は、例えばクライアント２００から直接提供されてもよい。あるいは、クライアント２００の仕様を示す情報は、クライアント２００から機種を特定する情報を受信した表示環境検出部１０１が、機種ごとの仕様情報を提供するサーバに問い合わせることによって取得されてもよい。
【００１９】
また、コンテンツの表示環境は、例えば、ユーザがクライアント２００を用いてコンテンツを閲覧する時刻もしくは場所、またはそのときにユーザと一緒にいる人など、コンテンツが表示されるときの状況を含みうる。コンテンツが表示されるときの状況は、例えば、クライアント２００からコンテンツ表示の要求が受信されたときの時刻、その時刻におけるクライアント２００の位置情報、位置情報や機器間通信の結果などに基づいて特定される、クライアント２００の近傍に位置する他の端末装置の情報などによって特定されうる。さらに、コンテンツが表示されるときの状況として、ユーザがコンテンツを閲覧するときの天候が取得されてもよい。この場合、天候は、ユーザがコンテンツを閲覧する時刻および場所の情報を取得した表示環境検出部１０１が、その時刻および場所での天候を、気象情報を提供するサーバに問い合わせることによって取得されてもよい。
【００２０】
クラスタリング条件設定部１０３は、表示環境検出部１０１によって検出された表示環境に基づいて、コンテンツのクラスタリング条件を設定する。クラスタリング部１０５は、クラスタリング条件設定部１０３が設定したクラスタリング条件に従って、コンテンツのクラスタリングを実行する。本実施形態において、コンテンツは、コンテンツデータ１０７としてサーバ１００内に格納されている、例えば画像ファイル、文書ファイル、または音声ファイルなどあらゆる種類のデータでありうる。
【００２１】
クラスタリング部１０５は、例えば、コンテンツの名称（ファイル名）、作成者、更新者、所有者、作成日時、更新日時、データ形式、またはサイズなどのような、データとしての属性に基づいてコンテンツをクラスタリングしてもよい。また、クラスタリング部１０５は、例えば、画像ファイルの被写体の種類、数、もしくは表情、または文書ファイルのタイトルなどのような、それぞれのコンテンツ自体から抽出される情報に基づいてコンテンツをクラスタリングしてもよい。さらに、クラスタリング部１０５は、例えば、画像ファイルに関連付けられた、写真の撮影日、撮影位置、撮影者、もしくは被写体など、文書ファイルに関連付けられた文書の種類、著者、もしくは書籍のジャンルなど、または音声ファイルに関連付けられた楽曲の作曲者、演奏者、ジャンル、もしくは収録アルバムなどのような、それぞれのコンテンツに例えばタグのようなメタデータとして付加された情報に基づいてコンテンツをクラスタリングしてもよい。
【００２２】
コンテンツのクラスタリングは、例えば上記のような情報を特徴空間における特徴量ベクトルに変換し、特徴空間におけるコンテンツ同士の距離やクラスタに含まれるコンテンツの数などに閾値を設定して、類似したコンテンツを同じクラスタに分類することによって実行されうる。この場合、クラスタリング条件は、例えば、特徴量ベクトルの要素に何を設定するか、それぞれの情報をどのように変換して特徴量ベクトルを生成するか、コンテンツをクラスタに分類するときにどのような閾値をどのぐらいの値で設定するか、といったような条件でありうる。クラスタリング条件設定部１０３は、表示環境に基づいて、このようなクラスタリング条件の一部または全部を変更する。なお、クラスタリング条件設定部１０３によるクラスタリング条件の設定の具体的な例については後述する。
【００２３】
表示制御部１０９は、クラスタリング部１０５によるクラスタリングの結果に基づいてコンテンツをディスプレイに表示させる。クラスタリングの結果に基づくコンテンツの表示は、例えば、コンテンツをクラスタごとに表示させることであってもよい。この場合、表示されるクラスタは、クラスタリングによって生成されたクラスタのうちの一部であってもよいし、全部であってもよい。また、クラスタに属するコンテンツは、その全部が表示されてもよいし、一部が代表として表示されてもよい。
【００２４】
なお、ここでいう「コンテンツの表示」は、例えば、コンテンツを示すファイル名などの文字列またはアイコンの一覧表示を含む。また、コンテンツが画像ファイルや文書ファイルである場合、文字列またはアイコンに代えて、またはこれらとともに画像や文書の縮小版が表示されてもよい。さらに、コンテンツがサイズの小さい画像ファイルであるような場合、「コンテンツの表示」がコンテンツそのものの表示を意味してもよい。上記のように、本実施形態において、コンテンツはクライアント２００において表示され、ユーザの閲覧に供される。従って、本実施形態において、表示制御部１０９は、通信部１１１によるネットワーク通信を介してコンテンツの表示を制御する。表示制御部１０９によるコンテンツの表示の具体的な例については後述する。
【００２５】
通信部１１１は、上述の通り、ネットワーク通信を実行する通信装置によって実現されうる。通信部１１１は、例えば、コンテンツの表示要求や、コンテンツの表示環境を検出するための情報をクライアント２００から受信する。また、通信部１１１は、表示制御部１０９の制御に従ってコンテンツを表示するための情報をクライアント２００に送信する。さらに、通信部１１１は、クライアント２００以外のサーバなどと通信してもよい。例えば、通信部１１１は、クライアント２００から受信した情報に基づく表示環境検出部１０１からの問い合わせを他のサーバに送信し、この問い合わせに対する応答をサーバから受信してもよい。これによって、例えば、クライアント２００の仕様や、コンテンツが表示されるときの天候、他の端末装置の位置情報などが取得されうる。また、通信部１１１は、外部のストレージサーバに格納されたコンテンツを取得してもよい。この場合、サーバ１００は、必ずしもコンテンツデータ１０７をもたなくてもよく、一部または全部のコンテンツデータを外部のストレージサーバから取得してもよい。
【００２６】
（１−２．処理フロー）
図２は、本開示の第１の実施形態に係る処理の例を示すフローチャートである。このフローチャートは、クライアント２００からコンテンツの表示要求が受信された場合の、サーバ１００における処理の例を示す。
【００２７】
通信部１１１がコンテンツの表示要求を受信すると、以下のステップＳ１０１およびステップＳ１０３、ステップＳ１０５、ならびにステップＳ１０７の処理が実行された後に、クラスタリング条件設定部１０３によってクラスタリング条件が設定される（ステップＳ１０９）。なお、以下の説明では順を追って説明するが、ステップＳ１０１〜Ｓ１０７の処理は互いに独立に実行されうるため、一部または全部が並行して実行されても、説明とは異なる順序で順次実行されてもよい。
【００２８】
まず、クラスタリング条件設定部１０３は、コンテンツデータ１０７を参照して、コンテンツリストを取得する（ステップＳ１０１）。さらに、クラスタリング条件設定部１０３は、コンテンツリストに含まれるコンテンツを解析して、コンテンツ属性を取得する（ステップＳ１０３）。コンテンツ属性は、例えば、画像ファイル、文書ファイル、または音声ファイルといったようなコンテンツの種類や、ファイル形式などの情報を含む。
【００２９】
なお、ここでクラスタリング条件設定部１０３がコンテンツ属性を取得するのは、コンテンツ属性によって設定すべきクラスタリング条件が異なるためである。例えば、被写体や撮影位置などに関する情報は、画像ファイルに特有でありうる。また、楽曲の作曲者や演奏者、ジャンルなどに関する情報は、音声ファイルに特有でありうる。そこで、クラスタリング条件設定部１０３は、クラスタリングに対象になるコンテンツの属性を取得することによって、設定すべきクラスタリング条件の種類を特定する。
【００３０】
一方、表示環境検出部１０１は、クライアント２００の仕様を検出する（ステップＳ１０５）。上記の通り、クライアント２００の仕様は、例えばクライアント２００から提供される情報から検出されてもよいし、クライアント２００から提供された情報に基づいて表示環境検出部１０１が他のサーバに問い合わせることによって検出されてもよい。表示環境検出部１０１は、検出したクライアントの仕様の情報をクラスタリング条件設定部１０３に提供する。
【００３１】
さらに、表示環境検出部１０１は、コンテンツが表示されるときの状況を検出する（ステップＳ１０７）。上記の通り、コンテンツが表示されるときの状況も、例えばクライアント２００から提供される情報から検出されてもよいし、クライアント２００から提供された情報に基づいて表示環境検出部１０１が他のサーバに問い合わせることによって検出されてもよい。表示環境検出部１０１は、検出した状況の情報をクラスタリング条件設定部１０３に提供する。
【００３２】
なお、図示された例において、表示環境検出部１０１は、表示環境として、クライアント２００の仕様と、コンテンツが表示されるときの状況とを両方検出しているが、他の例では、これらのうちの一方が検出されてもよい。
【００３３】
以上の処理の結果を受けて、クラスタリング条件設定部１０３は、クラスタリング条件を設定する（ステップＳ１０９）。上記の通り、クラスタリング条件は、例えばコンテンツに関する情報を特徴量ベクトルに変換するときの条件や、特徴量ベクトルを用いてコンテンツをクラスタに分類するときの閾値などを含みうる。
【００３４】
次に、クラスタリング部１０５が、設定されたクラスタリング条件に従ってコンテンツのクラスタリングを実行する（ステップＳ１１１）。クラスタリングによって、コンテンツは複数のクラスタに分類されうる。
【００３５】
次に、表示制御部１０９が、クラスタリングの結果に基づいて、コンテンツの表示を制御する（ステップＳ１１３）。上述の通り、本実施形態において表示制御部１０９は、ネットワーク通信を介してクライアント２００におけるコンテンツの表示を制御する。例えば、表示制御部１０９は、コンテンツをクラスタごとに表示させる。表示されるクラスタおよびコンテンツは、その全部が表示されてもよいし、一部が表示されてもよい。
【００３６】
（１−３．クラスタリング条件設定の例）
次に、図３および図４を参照して、本開示の第１の実施形態におけるクラスタリング条件設定の具体的な例について説明する。
【００３７】
図３は、本開示の第１の実施形態においてクラスタの粒度が表示環境に応じて変化するようにクラスタリング条件を設定する例について説明するための図である。
【００３８】
本実施形態において、クラスタリング条件設定部１０３は、コンテンツが分類されるクラスタの数、つまりクラスタの粒度が表示環境に応じて変化するようにクラスタリング条件を設定してもよい。
【００３９】
より具体的には、例えば特徴量ベクトルを用いる場合、設定する特徴量の軸を減らしたり、コンテンツを同じクラスタに分類するための特徴空間での距離の閾値をより大きくしたり、クラスタに含まれるコンテンツの数の閾値をより大きくしたりすれば、コンテンツが分類されるクラスタの数はより少なくなる。つまり、クラスタの粒度が粗くなる。逆に、特徴量の軸を増やしたり、距離の閾値をより小さくしたり、クラスタに含まれるコンテンツの数の閾値をより小さくしたりすれば、コンテンツが分類されるクラスタの数はより多くなる。つまり、クラスタの粒度が細かくなる。
【００４０】
この場合、例えば、クラスタリング条件設定部１０３は、ユーザがコンテンツを閲覧するのに用いるクライアント２００のディスプレイのサイズが小さかったり、処理能力が低かったり、通信状態が不安定であったりする場合に、クラスタの粒度がより粗くなるようにクラスタリング条件を設定してもよい。例えばディスプレイのサイズが小さい場合、クラスタの数が多いと、表示されるコンテンツの全体を把握するために何度も表示のスクロールを繰り返す必要があり、煩雑である。また、処理能力が低かったり、通信状態が不安定であったりする場合、クラスタの数が多いと、各クラスタに分類されたコンテンツを示す画像などをダウンロードして表示させるまでに時間がかかってしまう。このような場合に、クラスタの粒度が粗くなり、クラスタの数が減れば、例えばユーザが各クラスタに分類されたコンテンツの全体を迅速に把握でき、より早く所望のコンテンツが分類されたクラスタを発見できうる。その一方で、クライアント２００が、ディスプレイのサイズも大きく、処理能力も高く、通信状態も安定しているような場合には、クラスタの粒度がより細かくなるようにクラスタリング条件を設定し、詳細に分類されたコンテンツの表示によって、ユーザが所望のコンテンツが分類されたクラスタをさらに早く発見できるようにしてもよい。
【００４１】
上記のようなクラスタリング条件の設定の具体的な例を、図３に示す。表の横軸はコンテンツの種類を示し、縦軸はクライアント２００において表示可能なコンテンツの数（ディスプレイのサイズに依存する表示環境の一例）ごとに設定されるクラスタリング条件を示す。
【００４２】
図示された例では、コンテンツの種類が「写真」（画像ファイル）である場合、表示可能な数が少なければ、撮影日を条件として含むクラスタリングが実行される。この場合、同じまたは近い撮影日をもつ写真であれば、内容に関わらず同じクラスタに分類されるため、クラスタの粒度は粗くなる。一方、表示可能な数が中程度であれば、撮影日に加えてイベントを条件としてクラスタリングが実行される。この場合、同じ撮影日をもつ写真であっても、撮影されたイベントが異なっていれば異なるクラスタに分類されるため、クラスタの粒度は細かくなる。さらに、表示可能な数が多ければ、撮影日に比べてサブイベントを条件としてクラスタリングが実行される。この場合、イベントよりもさらに細かいサブイベント単位でコンテンツがクラスタに分類されるため、クラスタの粒度はさらに細かくなる。
【００４３】
一方、コンテンツの種類が「書籍」（文書ファイル）である場合、表示可能な数が少なければ、書籍のジャンルを条件としてクラスタリングが実行される。また、表示可能な数が中程度であれば、著者名の頭文字のアルファベット群（Ａ〜Ｅ，Ｆ〜Ｊ，・・・）を条件としてクラスタリングが実行される。さらに、表示可能な数が多ければ、著者名の頭文字のアルファベット（Ａ，Ｂ，Ｃ，・・・）を条件としてクラスタリングが実行される。このようにして、書籍についても、表示環境に応じてクラスタの粒度が変化するようにクラスタリング条件が設定されうる。
【００４４】
また、コンテンツの種類が「楽曲」（音声ファイル）である場合、表示可能な数が少なければ、楽曲のジャンルを条件としてクラスタリングが実行される。一方、表示可能な数が中程度であれば、ジャンルに加えてアーティストを条件としてクラスタリングが実行される。さらに、表示可能な数が多ければ、ジャンルおよびアーティストに加えて収録アルバムを条件としてクラスタリングが実行される。このようにして、楽曲についても、表示環境に応じてクラスタの粒度が変化するようにクラスタリング条件が設定されうる。
【００４５】
図４は、本開示の第１の実施形態において所定の条件を満たすコンテンツが優先的にクラスタリングされるようにクラスタリング条件を設定する例について説明するためのフローチャートである。
【００４６】
本実施形態において、クラスタリング条件設定部１０３は、表示環境として検出される、ユーザがコンテンツを閲覧する時刻や場所、天候、一緒にいる人などの情報に基づいて、ユーザによる閲覧の需要が高いと推定されるコンテンツが閲覧されやすいようにクラスタリング条件を設定し、クラスタリングを実行してもよい。ここで、ユーザによる閲覧の需要が高いと推定されるコンテンツは、例えば、表示環境として検出される属性（時刻や場所、天候、一緒にいる人など）と共通の属性を有するコンテンツでありうる。
【００４７】
より具体的には、例えば特徴量ベクトルを用いる場合、設定された条件に対応する情報が特徴量ベクトルの要素に反映されやすくすることで、その条件を満たすコンテンツが条件を満たさないコンテンツとは別のクラスタに分類されやすくなる。また、その条件を満たすコンテンツは、他の条件に応じて細かくクラスタリングされやすくなる一方で、条件を満たさないコンテンツは他の条件が多少異なっても同じクラスタリングに分類されやすくなる。
【００４８】
上記のようなクラスタリング条件が設定される処理の具体的な例を、図４に示す。フローチャートには、クラスタリング条件設定部１０３の処理の一部が示されている。ここで、クラスタリング条件設定部１０３は、表示環境検出部１０１の検出結果を参照して、コンテンツを閲覧しようとしているユーザが一緒にいる人が検出されたか否かを判定する（ステップＳ２０１）。ここで、一緒にいる人が検出されたと判定された場合、クラスタリング条件設定部は、検出された人に関するクラスタリングの優先度が高くなるようにクラスタリング条件を設定する（ステップＳ２０３）。より具体的には、例えば画像ファイルの場合、被写体や一緒にいた人のタグとして検出された人が設定されているか否かによって大きく異なる特徴量ベクトルの要素を設定してもよい。
【００４９】
このような処理によって、コンテンツを閲覧するときに一緒にいる人に関して、優先的にコンテンツがクラスタリングされるようになる。例えば、クラスタリングに優先度を設定しなかった場合には
｛イベント１，イベント２，イベント３，デート１，デート２，イベント４，イベント５｝
というようにクラスタリングされる写真のコンテンツがあったとする。イベント１〜イベント５については、友人Ｘが被写体として写っているか、一緒にいた人として記録されている。一方、デート１，デート２については、恋人Ｙが被写体として写っているか、一緒にいた人として記録されている。
【００５０】
例えば、上記のコンテンツを閲覧するときに、友人Ｘがユーザと一緒にいる場合、図４に示したようなクラスタリング条件設定部１０３の処理によって、友人Ｘに関係するコンテンツが優先的にクラスタリングされる。従って、コンテンツは、例えば
｛イベント１，イベント２，イベント３，デート（１＋２），イベント４，イベント５｝
といったようにクラスタリングされうる。この場合、友人Ｘに関係しないデート１，デート２のクラスタが１つにまとめられる一方で、友人Ｘに関係するイベント１〜イベント５は別個のクラスタになる。これによって、ユーザが友人Ｘとともに、一緒に行ったイベントの写真を閲覧することが容易になる。
【００５１】
一方、上記のコンテンツを閲覧するときに、恋人Ｙがユーザと一緒にいる場合、図４に示したようなクラスタリング条件設定部１０３の処理によって、恋人Ｙに関係するコンテンツが優先的にクラスタリングされる。従って、コンテンツは、例えば
｛イベント（１＋２＋３），デート１，デート２，イベント（４＋５）｝
といったようにクラスタリングされうる。この場合、恋人Ｙに関係しないイベント１〜イベント３およびイベント４，イベント５のクラスタがそれぞれ１つにまとめられる一方で、恋人Ｙに関係するデート１，デート２は別個のクラスタになる。これによって、ユーザが恋人Ｙとともに、一緒に過ごしたデートの写真を閲覧することが容易になる。
【００５２】
なお、図４にはユーザがコンテンツを閲覧するときに一緒にいる人を条件とする処理を例として示したが、同様の処理は、ユーザがコンテンツを閲覧する時刻や場所、天候などについても可能である。
【００５３】
（１−４．コンテンツの表示の例）
次に、図５および図６を参照して、本開示の第１の実施形態におけるコンテンツの表示の具体的な例について説明する。
【００５４】
コンテンツをクラスタリングの結果に基づいて表示することは、コンテンツの検索性を高め、ユーザが所望するコンテンツにより早く、より容易にアクセスするために有効でありうる。ところが、表示の仕方によっては、そのような効果が十分には得られない場合がありうる。
【００５５】
例えば、クラスタＡ〜クラスタＦの６つのクラスタに分類されたコンテンツが表示されるとする。クラスタＡには７つのコンテンツ（Ａ１〜Ａ７）、クラスタＢには５つのコンテンツ（Ｂ１〜Ｂ５）、クラスタＣには６つのコンテンツ（Ｃ１〜Ｃ６）、クラスタＤには４つのコンテンツ（Ｄ１〜Ｄ４）、クラスタＥには５つのコンテンツ（Ｅ１〜Ｅ５）が、それぞれ分類されている。
【００５６】
上記のコンテンツを、１ページに１６のコンテンツを表示することが可能なディスプレイに表示する。この場合、１ページ目にはクラスタＡおよびクラスタＢに分類されたコンテンツと、クラスタＣに分類されたコンテンツの途中まで（Ｃ１〜Ｃ４）とが表示される。また、２ページ目にはクラスタＣに分類されたコンテンツの残り（Ｃ５，Ｃ６）と、クラスタＤおよびクラスタＥに分類されたコンテンツとが表示される。
【００５７】
ここで、各ページにおいて、コンテンツが、分類されたクラスタに関わらず順に表示されるとする。この場合、１ページ目では、まずクラスタＡに分類されるコンテンツ（Ａ１〜Ａ７）が順次表示され、次いでクラスタＢに分類されるコンテンツ（Ｂ１〜Ｂ５）が順次表示され、さらにクラスタＣに分類されるコンテンツ（Ｃ１〜Ｃ４）が順次表示される。
【００５８】
このような表示の仕方でも、サーバ１００とクライアント２００との間の通信速度が十分であり、またサーバ１００およびクライアント２００における処理速度も十分であれば、１ページ目に含まれる３つのクラスタのコンテンツは、比較的短い時間で表示されうる。しかし、実際には、クライアント２００が携帯端末であるなどの理由で通信速度が十分でなかったり、サーバ１００またはクライアント２００での処理速度が十分でなかったりして、コンテンツをすべて表示するまでにある程度の時間がかかることも多い。それゆえ、上記のようにクラスタの順番に従ってコンテンツを表示したのでは、ページの最後のクラスタのコンテンツ（Ｃ１〜Ｃ４）が表示されるまでにかなりの待ち時間が発生することもありうる。
【００５９】
ユーザとしては、必ずしも１ページ目に表示されるコンテンツに所望のコンテンツがあるとは限らないため、できるだけ早く所望のコンテンツの有無を判断し、ないのであれば２ページ目に進むことが望ましい。しかし、上記のように、通信速度や処理速度が十分でない場合には、１ページ目に所望のコンテンツがあるか否かを判断できる状態になるまでに、かなりの間待たされてしまい、コンテンツをクラスタリングしたことによる検索性などの利点が減殺されてしまう可能性がある。
【００６０】
そこで、本開示の第１の実施形態に係るサーバ１００の表示制御部１０９は、例えば以下に示す２つの例のようにしてクラスタリングされたコンテンツの表示を制御してもよい。これによって、コンテンツをクラスタリングしたことによる利点をより活かすことができる。
【００６１】
（第１の例）
図５は、本開示の第１の実施形態におけるコンテンツの表示の第１の例を示す図である。まず、表示制御部１０９は、ページ２００１に、このページに表示されるクラスタＡ〜クラスタＣのそれぞれで先頭に位置するコンテンツ（Ａ１，Ｂ１，Ｃ１）を表示させる。これらのコンテンツは、ページ２００１に表示されるクラスタの代表コンテンツである。代表コンテンツは、例えばファイル名や更新日時などに基づいてコンテンツを配列した結果先頭に位置したコンテンツであってもよいし、クラスタの特徴を最もよく表すコンテンツとして特徴量に基づいて抽出されてもよい。
【００６２】
ここで、最初に表示されるコンテンツ（Ａ１，Ｂ１，Ｃ１）の表示位置は、クラスタに分類されたコンテンツがすべて表示されたときの表示位置と同じである。つまり、この時点では、表示されたコンテンツ（Ａ１，Ｂ１，Ｃ１）の間に、これから表示されるコンテンツ（Ａ２〜Ａ７，Ｂ２〜Ｂ５）の分の間隔が空いている。また、表示制御部１０９は、ページ２００１の最後に表示されるコンテンツ（Ｃ４）を、各クラスタの先頭に位置するコンテンツと同じタイミングで表示していてもよい。
【００６３】
次に、表示制御部１０９は、クラスタＡ〜クラスタＣのそれぞれで２番目に位置するコンテンツ（Ａ２，Ｂ２，Ｃ２）を表示させ、以下各クラスタの３番目以降のコンテンツを同様に順次表示させる。上記のように、既に表示されたコンテンツの間には、これから表示されるコンテンツの分の間隔が空いているため、２番目以降のコンテンツが表示されるときにも、既に表示されたコンテンツの表示位置は変化しない。つまり、この第１の例は、既に表示されたコンテンツの位置を変更しないことによって視認性を維持しつつ、２番目以降のコンテンツを順次表示させる例であるといえる。
【００６４】
ページ２００１に表示される各クラスタの代表コンテンツがまず表示されることによって、ユーザは、ページ２００１にどのようなコンテンツが表示されるかを早い段階で知ることができる。従って、ユーザは、ページ２００１に所望のコンテンツが表示されるか否かについても、早い段階で判断することができる。ページ２００１に所望のコンテンツが表示されないことがわかった場合、ユーザは、クラスタＡ〜クラスタＣの残りのコンテンツのダウンロードを待つことなく、次のページに進んでクラスタＤおよびクラスタＥのコンテンツを表示させることができる。
【００６５】
また、このとき、ページ２００１の最後に表示されるコンテンツ（Ｃ４）が早い段階で表示されていることによって、ユーザは、ページ２００１に表示されるコンテンツの範囲を容易に認識することができる。例えば、ファイルの作成日時や写真の撮影日などの情報を用いて、日付や時刻の順でコンテンツを表示する場合、ページの最後に表示されるコンテンツが早い段階でわかることは有用である。
【００６６】
なお、上記で説明した第１の例は、コンテンツが表示されるページが固定された長さを有し、コンテンツがページ単位で切り替えて表示される場合だけではなく、コンテンツが表示されるページがコンテンツの数に応じた長さを有し、コンテンツが順次スクロールして表示される場合にも適用可能である。この場合、ページの表示範囲に含まれるコンテンツがすべて表示される前にページがスクロールされると、上述したようなコンテンツの段階的な表示は一旦中止され、スクロール後の表示範囲を基準にしてコンテンツの表示の順序が再設定される。このとき、スクロール前後の表示範囲が重複していれば、既に表示されているコンテンツは引き続き表示され、それ以外のコンテンツの中で表示の順序が再設定されてもよい。
【００６７】
（第２の例）
図６は、本開示の第１の実施形態におけるコンテンツの表示の第２の例を示す図である。まず、表示制御部１０９は、ページ２００１に、クラスタリングによって生成されたクラスタＡ〜クラスタＥのそれぞれで先頭に位置するコンテンツ（Ａ１，Ｂ１，Ｃ１，Ｄ１，Ｅ１）を表示させる。上記の第１の例と異なり、先頭のコンテンツは、表示位置の先頭から順に詰めて表示される。
【００６８】
次に、表示制御部１０９は、クラスタＡ〜クラスタＥのそれぞれで２番目に位置するコンテンツ（Ａ２，Ｂ２，Ｃ２，Ｄ２，Ｅ２）を表示させる。このとき、既に表示されたコンテンツ（Ａ１，Ｂ１，Ｃ１，Ｄ１，Ｅ１）のうち、先頭のＡ１以外は、間に追加して表示されるコンテンツが挿入されることによって、表示位置が後ろにずれる。以下、各クラスタの３番目以降のコンテンツが同様に順次表示されるが、その度に、既に表示されたコンテンツの表示位置は、追加して表示されたコンテンツが挿入された分だけ後ろにずれる。
【００６９】
図示された例において、ページ２００１に表示可能なコンテンツの総数は１６であるため、各クラスタの４番目のコンテンツが表示された時点で、コンテンツがページ２００１に入りきれなくなる。その場合、後ろに位置するクラスタ、つまりクラスタＤやクラスタＥのコンテンツの表示がずれていき、最終的には上記の第１の例と同様に、クラスタＡおよびクラスタＢに分類されたコンテンツと、クラスタＣに分類されたコンテンツの途中まで（Ｃ１〜Ｃ４）とがページ２００１に表示されてもよい。あるいは、コンテンツがページ２００１に入りきれなくなった時点で、一旦コンテンツの表示の追加を中断してもよい。
【００７０】
いずれの場合も、例えばユーザがいずれかのクラスタのコンテンツを選択するなどした場合は、そのクラスタのコンテンツが優先的に表示されうる。図示された例では、各クラスタの２番目のコンテンツまでが表示された時点で、ユーザが、クラスタＣに分類されたコンテンツ（Ｃ１，Ｃ２）のいずれかを選択している。この場合、表示制御部１０９は、クラスタＣをページ２００１の先頭に移動させ、クラスタＣの残りのコンテンツ（Ｃ３〜Ｃ６）を優先的に表示させてもよい。このとき、その後ろに表示されるクラスタＤおよびクラスタＥのコンテンツの表示の追加は、一旦中断されてもよい。
【００７１】
クラスタリングによって生成された各クラスタの代表コンテンツがまず表示されることによって、ユーザは、ページ２００１だけではなく、他のページに表示されるクラスタについても、どのようなコンテンツが含まれるかを早い段階で知ることができる。従って、ユーザは、どのクラスタに所望のコンテンツが分類されているかを早い段階で知り、例えば上記のクラスタＣのように優先的に表示させることができる。ただし、この第２の例では、既に表示されたコンテンツの表示位置が他のコンテンツの表示が追加される度に移動するため、視認性は必ずしも第１の例ほどには高くない。
【００７２】
なお、上記で説明した第２の例も、コンテンツが表示されるページが固定された長さを有し、コンテンツがページ単位で切り替えて表示される場合だけではなく、コンテンツが表示されるページがコンテンツの数に応じた長さを有し、コンテンツが順次スクロールして表示される場合にも適用可能である。この場合、ページの表示範囲に含まれるコンテンツがすべて表示される前にページがスクロールされると、上述したようなコンテンツの段階的な表示は一旦中止され、スクロール後の表示範囲を基準にしてコンテンツの表示の順序が再設定される。
【００７３】
上記のような場合、この第２の例では、コンテンツの表示位置が先頭から連続しているため、スクロールはその時点で表示されているコンテンツの範囲で実行されうる。つまり、スクロール後の表示範囲にも、スクロール前に表示されていたコンテンツが少なくとも１つ含まれる。それゆえ、コンテンツの表示の順序は、この残ったコンテンツを基準に再設定されうる。例えば、図６に示された例で、コンテンツの表示の途中でページがスクロールされ、コンテンツ（Ｃ１，Ｃ２，Ｄ１，Ｄ２，Ｅ１，Ｅ２）が表示範囲に残ったとする。このとき、表示範囲から外れたクラスタＡ，Ｂのコンテンツの表示は中止され、表示範囲に残っているクラスタＣ〜Ｅのコンテンツについて、表示の順序が再設定される。結果として、次に表示されるのはコンテンツ（Ｃ３，Ｄ３，Ｅ３）でありうる。
【００７４】
なお、上記の２つの例では、コンテンツを示すアイコンやサムネイルなどの画像がタイル状に表示される場合を例として説明したが、コンテンツの表示形式はこのようなものには限られない。例えば、コンテンツは、アイコンおよび文字列のリストとして表示されてもよい。この場合も、リストの表示順序を上記の２つの例と同様に制御することが可能である。
【００７５】
（１−５．クラスタリング条件の動的な変更の例）
次に、図７を参照して、本開示の第１の実施形態におけるクラスタリング条件の動的な変更の例について説明する。
【００７６】
図７は、本開示の第１の実施形態においてクラスタリング条件を動的に変更する例について説明するためのフローチャートである。
【００７７】
これまでに説明したように、本実施形態では、サーバ１００によって、ユーザがクライアント２００を用いてコンテンツを閲覧するときの表示環境が検出され、表示環境に応じて設定されたクラスタリング条件に従ってクラスタリングが実行される。ここで、表示環境は、コンテンツの閲覧の開始時だけではなく、コンテンツの閲覧中にも刻々と変化しうる。例えば、クライアント２００でコンテンツを閲覧するためのアプリケーションのウインドウのサイズが変更されうる。また、クライアント２００を携帯した状態でユーザが移動して位置情報が変化したり、ユーザが電車に乗り込むことによって位置情報と通信状態とが大きく変化することもありうる。さらに、時間の経過によって、ユーザと一緒にいた人が離れていったり、一緒にいなかった人が近づいてきたり、また天候が変化したりすることもありうる。
【００７８】
そこで、以下の例では、サーバ１００の表示環境検出部１０１が、クライアント２００におけるコンテンツの閲覧中も引き続き表示環境を検出する。表示環境に変化があった場合、表示環境検出部１０１が検出した変化後の表示環境に応じてクラスタリング条件設定部１０３がクラスタリング条件を再設定し、再設定された条件に従ってクラスタリング部１０５がクラスタリングを再実行する。
【００７９】
より具体的には、まず、コンテンツの閲覧開始時に、表示環境検出部１０１が表示環境を検出し（ステップＳ３０１）、検出された表示環境に応じてクラスタリング条件設定部１０３がクラスタリング条件を設定し（ステップＳ３０３）、設定されたクラスタリング条件に従ってクラスタリング部１０５がクラスタリングを実行する（ステップＳ３０５）。さらに、表示制御部１０９が、クラスタリングの結果に基づいて、コンテンツのクライアント２００のディスプレイへの表示を制御する（ステップＳ３０７）。
【００８０】
このコンテンツの表示中の状態において、表示環境検出部１０１はさらに表示環境の検出を実行し（ステップＳ３０９）、クラスタリング条件設定部１０３は検出された表示環境がコンテンツの閲覧開始時（または前回の検出時）に比べて変化したか否かを判定する（ステップＳ３１１）。ステップＳ３１１において判定される表示環境の変化は、例えばアプリケーションのウインドウのサイズの変更、ユーザの位置情報もしくは通信状態の変化、ユーザと一緒にいる人の変化、または天候の変化などでありうる。
【００８１】
上記のステップＳ３１１の判定において、表示環境が変化したと判定された場合、クラスタリング条件設定部１０３がクラスタリング条件を再設定し（ステップＳ３０３）、クラスタリング部１０５が再設定されたクラスタリング条件でクラスタリングを再実行する（ステップＳ３０５）。表示制御部１０９は、再実行されたクラスタリングの結果に従ってコンテンツの表示を制御する（ステップＳ３０７）。
【００８２】
一方、ステップＳ３１１の判定において、表示環境が変化したと判定されなかった場合、表示制御部１０９は、所定の終了条件が満たされるまで（ステップＳ３１３）、コンテンツの表示の制御（ステップＳ３０７）を繰り返す。また、表示環境検出部１０１も、コンテンツの表示が続いている間は、表示環境の検出（ステップＳ３０９）を繰り返す。
【００８３】
このように、コンテンツの閲覧中に発生する表示環境の変化を表示環境検出部１０１が検出することで、変化後の表示環境に応じた適切なコンテンツの表示が可能になる。なお、表示環境検出部１０１によるコンテンツの閲覧中の表示環境の検出は、例えば所定の間隔で定期的に実行されてもよいし、表示制御部１０９がユーザ操作などに応じてコンテンツの表示を変化させるときに実行されてもよい。あるいは、コンテンツの閲覧中の表示環境の検出は、表示環境が変化した場合にクライアント２００が送信する要求に応じて実行されてもよい。
【００８４】
以上で説明した本開示の第１の実施形態では、例えば、ユーザがいつ、どこで、誰と、どの装置を使ってコンテンツを閲覧するかといったことが、コンテンツの表示環境として検出される。この表示環境に応じてクラスタリング条件を設定することで、ユーザにより適切なコンテンツのグループ化表示を提供することが可能である。
【００８５】
例えば、本実施形態のようにサーバ上のコンテンツをクライアントで表示する場合、クライアントである端末装置の種類は場合によって変化しうるため、例えば端末装置の種類を表示環境として検出し、ディスプレイのサイズに合わせてクラスタリングの粒度を調整することは有効である。また、このときに、各クラスタのコンテンツが並列的に表示されるようにすることも、サーバとクライアントとの間の通信やクライアントでの表示処理にかかる時間によってクラスタごとにコンテンツが表示されるタイミングに差が生じるのを防ぐために有効である。
【００８６】
（２．第２の実施形態）
次に、図８を参照して、本開示の第２の実施形態について説明する。
【００８７】
図８は、本開示の第２の実施形態に係る端末装置の概略的な機能構成を示すブロック図である。図８を参照すると、端末装置３００は、例えばＣＰＵなどのプロセッサを用いてソフトウェア的に実現される表示環境検出部３０１、クラスタリング条件設定部１０３、クラスタリング部１０５、および表示制御部１０９と、コンテンツデータ１０７が格納されるストレージ装置と、ディスプレイ３１１とを含む。
【００８８】
端末装置３００は、例えば携帯電話（スマートフォン）、パーソナルコンピュータ、メディアプレーヤ、またはゲーム機などの装置であり、ユーザはディスプレイ３１１を用いてコンテンツを閲覧する。本実施形態では、閲覧されるコンテンツが端末装置３００自体に格納されているため、端末装置３００が、上記の第１の実施形態におけるサーバ１００およびクライアント２００の機能を実現する。
【００８９】
表示環境検出部３０１は、端末装置３００におけるコンテンツの表示環境を検出する。検出されるコンテンツの表示環境は、例えば上記の第１の実施形態において検出されたものと同様でありうる。ただし、本実施形態では、第１の実施形態においてクライアント２００からネットワーク通信を介して取得されたのと同様の情報を、表示環境検出部３０１が内部的に取得する。また、第１の実施形態と同様に、表示環境検出部３０１は、端末装置３００の内部から取得した情報に基づいて、図示しない通信装置を介して外部のサーバに問い合わせることによって表示環境を検出してもよい。
【００９０】
クラスタリング条件設定部１０３、クラスタリング部１０５、コンテンツデータ１０７、および表示制御部１０９については、上記の第１の実施形態と同様であるため、詳細な説明を省略する。なお、表示制御部１０９は、ディスプレイ３１１を、ネットワーク通信を介してではなく、内部的にディスプレイ３１１におけるコンテンツの表示を制御する。
【００９１】
本実施形態では、端末装置自体に格納されているコンテンツを表示させる。この場合も、例えばウインドウのサイズや、ユーザがいつ、どこで、誰とコンテンツを閲覧するかといったことは場合によって変化しうるため、これらを表示環境として検出し、例えば適切なコンテンツが優先的にクラスタリングされて表示されるようにすることは有効である。また、コンテンツがネットワーク通信を経由することなく表示される場合でも、内部的な読み込みや描画などに時間がかかることはありうるため、例えば第１の実施形態で図５および図６を参照して説明したようなコンテンツの表示制御も有効でありうる。
【００９２】
なお、上記の例では、端末装置にコンテンツが格納されている例について説明したが、本開示の実施形態はこのような例には限られない。例えば、コンテンツの一部または全部は外部のストレージサーバに格納されていてもよい。この場合、端末装置は、表示環境を検出するとともに、サーバからコンテンツデータを取得して、クラスタリング条件の設定やクラスタリング、クラスタリングの結果に基づいた表示制御を実行してもよい。
【００９３】
（３．ハードウェア構成）
次に、図９を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図９は、情報処理装置のハードウェア構成を説明するためのブロック図である。図示された情報処理装置９００は、例えば、上記の実施形態における端末装置およびサーバ装置を実現しうる。
【００９４】
情報処理装置９００は、ＣＰＵ（Central  Processing  unit）９０１、ＲＯＭ（Read  Only  Memory）９０３、およびＲＡＭ（Random  Access  Memory）９０５を含む。また、情報処理装置９００は、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３、通信装置９２５を含んでもよい。さらに、情報処理装置９００は、必要に応じて、撮像装置９３３、およびセンサ９３５を含んでもよい。情報処理装置９００は、ＣＰＵ９０１に代えて、またはこれとともに、ＤＳＰ（Digital  Signal  Processor）などの処理回路を有してもよい。
【００９５】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理装置９００内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータなどを記憶する。ＲＡＭ９０５は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。ＣＰＵ９０１、ＲＯＭ９０３、およびＲＡＭ９０５は、ＣＰＵバスなどの内部バスにより構成されるホストバス９０７により相互に接続されている。さらに、ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Peripheral  Component  Interconnect/Interface）バスなどの外部バス９１１に接続されている。
【００９６】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置９００の操作に対応した携帯電話などの外部接続機器９２９であってもよい。入力装置９１５は、ユーザが入力した情報に基づいて入力信号を生成してＣＰＵ９０１に出力する入力制御回路を含む。ユーザは、この入力装置９１５を操作することによって、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりする。
【００９７】
出力装置９１７は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置９１７は、例えば、ＬＣＤ（Liquid  Crystal  Display）、ＰＤＰ（Plasma  Display  Panel）、有機ＥＬ（Electro-Luminescence）ディスプレイなどの表示装置、スピーカおよびヘッドホンなどの音声出力装置、ならびにプリンタ装置などでありうる。出力装置９１７は、情報処理装置９００の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音声として出力したりする。
【００９８】
ストレージ装置９１９は、情報処理装置９００の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Hard  Disk  Drive）などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
【００９９】
ドライブ９２１は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体９２７のためのリーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録を書き込む。
【０１００】
接続ポート９２３は、機器を情報処理装置９００に直接接続するためのポートである。接続ポート９２３は、例えば、ＵＳＢ（Universal  Serial  Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small  Computer  System  Interface）ポートなどでありうる。また、接続ポート９２３は、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（High-Definition  Multimedia  Interface）ポートなどであってもよい。接続ポート９２３に外部接続機器９２９を接続することで、情報処理装置９００と外部接続機器９２９との間で各種のデータが交換されうる。
【０１０１】
通信装置９２５は、例えば、通信ネットワーク９３１に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置９２５は、例えば、有線または無線ＬＡＮ（Local  Area  Network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、またはＷＵＳＢ（Wireless  USB）用の通信カードなどでありうる。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Asymmetric  Digital  Subscriber  Line）用のルータ、または、各種通信用のモデムなどであってもよい。通信装置９２５は、例えば、インターネットや他の通信機器との間で、ＴＣＰ／ＩＰなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置９２５に接続される通信ネットワーク９３１は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信などである。
【０１０２】
撮像装置９３３は、例えば、ＣＣＤ（Charge  Coupled  Device）またはＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置９３３は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
【０１０３】
センサ９３５は、例えば、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサなどの各種のセンサである。センサ９３５は、例えば情報処理装置９００の筐体の姿勢など、情報処理装置９００自体の状態に関する情報や、情報処理装置９００の周辺の明るさや騒音など、情報処理装置９００の周辺環境に関する情報を取得する。また、センサ９３５は、ＧＰＳ（Global  Positioning  System）信号を受信して装置の緯度、経度および高度を測定するＧＰＳセンサを含んでもよい。
【０１０４】
以上、情報処理装置９００のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
【０１０５】
（４．補足）
本開示の実施形態は、例えば、上記で説明したような表示制御装置（サーバまたは端末装置）、システム、表示制御装置またはシステムで実行される表示制御方法、表示制御装置を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
【０１０６】
上記で説明された例では、表示環境検出部が検出したコンテンツの表示環境がリアルタイムでコンテンツのクラスタリング条件に反映されたが、本開示の実施形態はこのような例に限られない。例えば、表示環境検出部は、コンテンツを表示するときに検出した表示環境をサーバまたは端末装置の記憶部に保持しておき、後で同じコンテンツを再び表示するときに読み出してもよい。これによって、例えば、過去にそのコンテンツを見たときの環境（時刻、位置、一緒にいる人など）と同じ環境を反映したクラスタリングで、コンテンツを再び見ることができる。
【０１０７】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）コンテンツの表示環境を検出する表示環境検出部と、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定するクラスタリング条件設定部と、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行するクラスタリング部と、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させる表示制御部と
を備える表示制御装置。
（２）前記クラスタリング条件設定部は、前記クラスタリングによって生成されるクラスタの粒度が前記表示環境に応じて変化するように前記クラスタリング条件を設定する、前記（１）に記載の表示制御装置。
（３）前記クラスタリング条件設定部は、前記表示部に表示可能なコンテンツの数に応じて前記クラスタの粒度が変化するように前記クラスタリング条件を設定する、前記（２）に記載の表示制御装置。
（４）前記表示環境検出部は、少なくとも前記表示部のサイズを検出し、
前記クラスタリング条件設定部は、前記クラスタの粒度が前記表示部のサイズに応じて変化するように前記クラスタリング条件を設定する、前記（３）に記載の表示制御装置。
（５）前記クラスタリング条件設定部は、前記表示環境に基づいて設定される条件を満たすコンテンツが優先的にクラスタリングされるように前記クラスタリング条件を設定する、前記（１）〜（４）のいずれか１項に記載の表示制御装置。
（６）前記クラスタリング条件設定部は、前記表示環境として検出される属性と共通の属性を有するコンテンツが優先的にクラスタリングされるように前記クラスタリング条件を設定する、前記（５）に記載の表示制御装置。
（７）前記表示制御部は、前記コンテンツの表示中に前記表示環境を検出し、
前記クラスタリング条件設定部は、前記検出された表示環境が変化した場合に前記クラスタリング条件を再設定し、
前記クラスタリング部は、前記クラスタリング条件が再設定された場合に前記クラスタリングを再実行する、前記（１）〜（６）のいずれか１項に記載の表示制御装置。
（８）前記表示制御部は、前記コンテンツを前記クラスタリングによって生成されたクラスタごとに表示させる、前記（１）〜（７）のいずれか１項に記載の表示制御装置。
（９）前記表示制御部は、前記各クラスタの代表コンテンツを他のコンテンツよりも先に表示させる、前記（８）に記載の表示制御装置。
（１０）前記表示制御部は、前記コンテンツをページごとに表示させ、前記各ページに表示されるクラスタの代表コンテンツを表示させる、前記（９）に記載の表示制御装置。
（１１）前記表示制御部は、前記代表コンテンツを、前記他のコンテンツが表示されたときと同じ表示位置に表示させる、前記（１０）に記載の表示制御装置。
（１２）前記表示制御部は、前記各ページの最後に表示されるコンテンツを前記他のコンテンツよりも先に表示させる、前記（１０）または（１１）に記載の表示制御装置。
（１３）前記表示制御部は、前記代表コンテンツを表示させた後に、前記他のコンテンツを前記代表コンテンツの間に挿入して表示させる、前記（９）に記載の表示制御装置。
（１４）前記表示制御部は、前記コンテンツをページごとに表示させ、表示された前記各クラスタのコンテンツのいずれかが選択された場合に、前記選択されたコンテンツのクラスタを前記ページの先頭に移動させる、前記（８）〜（１３）のいずれか１項に記載の表示制御装置。
（１５）前記表示制御部は、表示された前記各クラスタのコンテンツのいずれかが選択された場合に、前記選択されたコンテンツのクラスタでまだ表示されていないコンテンツを、他のクラスタでまだ表示されていないコンテンツよりも先に表示させる、前記（８）〜（１４）のいずれか１項に記載の表示制御装置。
（１６）前記表示部を有する端末装置と通信し、前記表示環境を検出するための情報を前記端末装置から受信するとともに、前記コンテンツを表示するための情報を前記端末装置に送信する通信部をさらに備える、前記（１）〜（１５）のいずれか１項に記載の表示制御装置。
（１７）前記表示部をさらに備える、前記（１）〜（１５）のいずれか１項に記載の表示制御装置。
（１８）コンテンツの表示環境を検出することと、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定することと、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行することと、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させることと
を含む表示制御方法。
（１９）コンテンツの表示環境を検出する機能と、
前記表示環境に基づいて前記コンテンツのクラスタリング条件を設定する機能と、
前記クラスタリング条件に従って前記コンテンツのクラスタリングを実行する機能と、
前記クラスタリングの結果に基づいて前記コンテンツを表示部に表示させる機能と
をコンピュータに実現させるためのプログラム。
【０１０８】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【符号の説明】
【０１０９】
１０      システム
１００    サーバ
１０１，３０１    表示環境検出部
１０３    クラスタリング条件設定部
１０５    クラスタリング部
１０９    表示制御部
１１１    通信部
２００    クライアント
３００    端末装置
３１１    表示部
【図１】
2014146248.tif 000003
【図２】
2014146248.tif 000004
【図３】
2014146248.tif 000005
【図４】
2014146248.tif 000006
【図５】
2014146248.tif 000007
【図６】
2014146248.tif 000008
【図７】
2014146248.tif 000009
【図８】
2014146248.tif 000010
【図９】
2014146248.tif 000011