次に、本実施例2にかかるコンテンツ表示装置の構成について説明する。図2は、本実施例2にかかるコンテンツ表示装置100の構成を示す図である。図2に示すように、このコンテンツ表示装置100は、コンテンツ収集部110、通信部120、生活ログ収集部130、入力部140、出力部150を有する。また、コンテンツ表示装置100は、インターフェース部160、記憶部170、制御部180を有する。
このうち、コンテンツ収集部110は、デジタルカメラ、スキャナ、ICレコーダ等に接続し、コンテンツを収集する処理部である。コンテンツ収集部110は、例えば、デジタルカメラ、スキャナ、ICレコーダとデータ通信を行って情報を取得するASIC(Application Specific Integrated Curcuit)等に対応する。コンテンツ収集部110が収集するコンテンツは、映像データ、画像データ、音声データを含む。
通信部120は、ネットワークを介して接続された他の装置とデータ通信を実行する処理部である。例えば、通信部120は、各種の映像、画像、音声を配信するサーバ装置との間でデータ通信を実行するASICや通信用カード等に対応する。
生活ログ収集部130は、例えば、GPS(Global Positioning System)ロガー、加速度計、歩数計、脈拍計、血圧計、携帯電話等に接続し、利用者の行動を記録した履歴情報を収集する処理部である。履歴情報は、利用者の移動軌跡、時間毎の利用者の加速度、時間毎の利用者の脈拍、時間毎の利用者の血圧、携帯電話の発着信履歴等を含む。その他にも、履歴情報は、利用者によるコンピュータの操作時間の変化、電子マネーによる出金記録、定期券の区間を含んでもよい。生活ログ収集部130は、GPSロガー、加速度計、歩数計、脈拍計、血圧計、携帯電話等とデータ通信を行うASIC等に対応する。
入力部140は、キーボードやマウスに対応する。利用者は、入力部140を操作して、各種の情報をコンテンツ表示装置100に入力する。例えば、利用者は、ディスプレイに表示される経路の表示時間、進行方向、進行速度を入力する。
出力部150は、ディスプレイまたはモニタ、スピーカ等の出力装置に対応する。出力部150は、制御部180から各種の情報を取得し、取得した情報を表示する。例えば、出力部150は、制御部180から経路や経路上に配置されたコンテンツの情報を取得し、取得した情報を表示する。
記憶部170は、各種の情報を記憶する記憶部である。記憶部150は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
記憶部170は、コンテンツデータ171、生活ログデータ172、コンテンツ配置データ173、仮想地形データ174を有する。コンテンツデータ171は、映像データ、画像データ、音声データ等のコンテンツと、記録装置がコンテンツを記録した日時とを対応付けて記憶する。ここで、記録装置は、デジタルカメラ、スキャナ、ICレコーダ等に対応する。
生活ログデータ172は、利用者の行動を記録した履歴情報を記憶する。コンテンツ配置データ173は、経路に配置するコンテンツの配置位置を記憶する。仮想地形データ174は、経路の情報と、経路に配置される景色の情報とを記憶する。
制御部180は、例えば、ASIC(Application Specific Integrated Curcuit)や、FPGA(Field Programmable Gate Array)などの集積装置、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路である。
制御部180は、データ取得部181、公共コンテンツ選択部182、乱数発生部183、コンテンツ配置部184、仮想地形生成部185、画像合成部186を有する。
データ取得部181は、コンテンツ収集部110からコンテンツを取得し、取得したコンテンツをコンテンツデータ171に登録する。また、データ取得部181は、生活ログ収集部130から履歴情報を取得し、取得した履歴情報を生活ログデータ172に登録する。
公共コンテンツ選択部182は、時代を代表・象徴するコンテンツを取得し、取得したコンテンツをコンテンツデータ171に登録する処理部である。時代を代表するコンテンツは、例えば、事件の映像等に対応する。
例えば、公共コンテンツ選択部182は、通信部120を介して、映像・画像・音声を管理するサーバ装置とデータ通信を実行する。かかるサーバ装置は、映像・画像・音声と、映像・画像・音声をクライアントに配信した配信回数とを対応付けた配信情報を公共コンテンツ選択部182に出力する。
公共コンテンツ選択部182は、配信情報に基づいて、配信回数が規定回数以上となる映像・画像・音声を検索し、検索した映像・画像・音声をコンテンツデータ171に登録する。なお、公共コンテンツ選択部182は、上記の手法以外の周知技術を利用して、時代を代表するコンテンツを取得してもよい。
乱数発生部183は、0〜9の数字を無作為に選択することで乱数を生成する処理部である。乱数発生部183は、生成した乱数をコンテンツ配置部184および仮想地形生成部185に出力する。
コンテンツ配置部184は、コンテンツデータ171からコンテンツを取得し、コンテンツの特徴に基づいて、コンテンツの三次元空間上の位置を特定する処理部である。コンテンツ配置部184は、コンテンツとコンテンツの位置とを対応付けた情報を、コンテンツ配置データ173に登録する。コンテンツ配置部184の具体的な説明は後述する。
仮想地形生成部185は、生活ログデータ172に登録された履歴情報を取得し、取得した履歴情報を基にして、経路の形状を特定する処理部である。仮想地形生成部185は、特定した経路の情報を仮想地形データ174に登録する。仮想地形生成部185の具体的な説明は後述する。
画像合成部186は、仮想的な経路上にコンテンツを配置した画像を生成し、生成した画像を出力部150に出力する処理部である。画像合成部186は、入力部140から表示時間を受け付け、表示時間に対応する経路やコンテンツの画像を生成する。また、入力部140からの指示に応じて、表示時間よりも先の時間に対応する画像または後の時間に対応する画像を順次生成する。画像合成部186の具体的な説明は後述する。
次に、図2の記憶部170に格納されるコンテンツデータ171、生活ログデータ172、コンテンツ配置データ173、仮想地形データ174のデータ構造について順に説明する。図3は、コンテンツデータ171のデータ構造の一例を示す図である。図3に示すように、コンテンツデータ171は、ファイル本体と、記録日時とを対応付けて記録する。ファイル本体において、「○○.mpg」は映像データであり、「○○.jpg」は画像データであり、「○○.mp3」は音声データである。
記録日時は、記録装置がコンテンツを記録した日時に対応する。例えば、図3の1段目では、ファイル本体「xxx.jpg」の記録日時は、「2008年10月05日07時54分32秒」となる。
図4は、生活ログデータ172のデータ構造の一例を示す図である。ここでは一例として、生活ログデータ172が記録する履歴情報を、時間毎に利用者の位置を記録した移動軌跡とする。図4に示すように、生活ログデータ172は、記録日時と、利用者の緯度・経度とを対応付けて記録する。例えば、図4の1段目を参照すると、「2008年10月05日07時30分」における利用者の位置は、緯度「35度43分36秒」経度「139度35分50秒」となる。
図5は、コンテンツ配置データ173のデータ構造の一例を示す図である。図5に示すように、コンテンツ配置データ173は、ファイル本体と、日時と、距離(L)と、角度(θ)とを対応付けて記録する。日時は、コンテンツデータ171の記録日時に対応する。
図6は、図5に示した距離(L)と角度(θ)を説明するための図である。図6に示すように、距離(L)は、経路の中心とコンテンツの中心との距離である。角度(θ)は、経路の中心とコンテンツの中心とを繋ぐ線と、経路の面とのなす角度である。
仮想地形データ174は、経路データと景色データを有する。図7は、経路データのデータ構造の一例を示す図である。図7に示すように、経路データは、日時と曲率(R)と起伏(H)とを対応付けて記録する。本実施例2にかかる経路は、時間軸を基準に生成されるため、日時によって経路の位置が一意に特定される。
図8は、図7に示した曲率(R)と角度(θ)を説明するための図である。図8に示すように、曲率(R)は経路の曲がり具合を示す量である。起伏(H)は、基準となる経路の中心と、該当する経路の中心との距離を示す。
図9は、景色データのデータ構造の一例を示す図である。図9に示すように、景色データは、日時と物体と補助情報とを対応付けて記録する。このうち、物体は、看板、木、山などの画像である。例えば、「SignTypeA」は看板の画像に対応し、「TreeTypeC」は木の画像に対応し、「MtTypeD」は山の画像に対応する。
補助情報は、各画像に関する補助的な情報である。例えば、物体「SignTypeA」の補助情報は、看板に記載する文字「平成20年」が補助情報として格納されている。なお、「TreeTypeC」、「MtTypeD」の補助情報は、物体の経路上の位置が補助情報として格納されている。
次に、コンテンツ配置部184がコンテンツの三次元空間上の位置を特定する処理を具体的に説明する。コンテンツの三次元空間上の位置を特定する要素は、日時と、距離(L)と、角度(θ)を含む。このうち、日時は、コンテンツデータ171において、コンテンツに対応付けられた記録日時をそのまま利用する。
例えば、コンテンツ配置部184は、記録日時「2008年10月05日07時54分32秒」に対応するコンテンツの日時を、そのまま「2008年10月05日07時54分32秒」とする。
また、コンテンツ配置部184は、以下の式(1)、式(2)を用いて、距離(L)、角度(θ)を算出する。
L=C・・・(1)
θ=s/86400・π・・・(2)
式(1)に含まれるCは、任意の定数であり、利用者が予め定めておく。式(2)に含まれるsは、コンテンツの記録日時に対応する日における零時からの経過秒数に対応する。例えば、記録日時「2008年10月05日07時54分32秒」に対応する10月5日における零時からの経過秒数は、28472秒となる。
コンテンツ配置部184は、コンテンツデータ171に含まれるコンテンツ毎に、日時、距離(L)、角度(θ)を特定し、日時、距離(L)、角度(θ)とコンテンツとを対応付けてコンテンツ配置データ173に登録する。
次に、仮想地形生成部185が経路の曲率、経路の形状を特定する処理について具体的に説明する。例えば、仮想地形生成部185は、生活ログデータ172を参照し、一ヶ月毎に利用者が平均的に存在する位置を算出する。図10は、利用者が平均的に存在する位置の一例を示す図である。図10において、利用者が平均的に存在する位置は、目的地から勤務先までを結ぶ移動軌跡によって示される。
図10に示すように、利用者が通学・通勤等の日常生活を送っていた場合、一ヶ月程度の大局的な時間幅で見ると、利用者が平均的に存在する位置はある程度絞られる。利用者が平均的に存在する位置と比較して、利用者の位置が大幅に異なる場合、利用者に進学、転勤、転居等の人生のイベントが発生したものと推定できる。
例えば、仮想地形生成部185は、日時毎に、利用者が平均的に存在する位置と、利用者の存在する位置とを比較することで、比較した位置が所定の距離以上はなれている日時を特定する。以下の説明において、比較した位置が所定の距離以上はなれている日時をイベント発生日時と表記する。
仮想地形生成部180は、経路データとイベント発生日時とを比較し、イベント発生日時に対応する経路データの曲率(R)または起伏(H)に値を登録する。例えば、仮想地形生成部180は、複数の数値を含む数値群の中からランダムに値を選択し、選択した値を経路データの曲率(R)または起伏(H)に登録する。なお、経路データの曲率(R)、起伏(H)の初期値を0とする。
次に、画像合成部186が経路にコンテンツを配置した画像を生成する処理について具体的に説明する。利用者は、入力部140を操作して、任意の表示時間Tと変化時間ΔTを画像合成部186に入力する。経路は時間軸にしたがって変化するので、変化時間ΔTが大きいほど、経路の移動速度は速くなる。ここでは一例として、画像合成部186が、表示時間Tから過去に向かって、経路とコンテンツを表示する場合について説明する。
画像合成部186は、表示時間Tから変化時間ΔTを減算した値で表示時間Tの値を更新し、時間T〜T−Dに含まれるコンテンツと経路の情報をコンテンツ配置データ173、仮想地形データ174から検索する。ここでDは、所定の時間である。三次元空間上の利用者の視点位置をTとすると、T〜T−Dは視野の範囲に対応する。図11は、表示時間Tと時間Dとの関係を示す図である。
画像合成部186は、時間T〜T−Dに含まれるコンテンツと経路の情報を三次元空間に配置する。画像合成部186は、時間T〜T−Dに含まれるコンテンツと経路の情報を配置した後に、表示時間Tから変化時間ΔTを減算した値で表示時間Tの値を更新し、上記の処理を繰り返し実行する。
続いて、画像合成部186が、時間T〜T−Dに含まれるコンテンツと経路の情報を三次元空間に配置する処理について説明する。ここでは説明の便宜上、時間Tの値を時間tに格納する。まず、画像合成部186は、下記の式(3)、式(4)、式(5)を用いて、経路の形状に対応するx、y、zを算出する。
x=x+Δtsin(r)・・・(3)
y=y+Δtcos(r)・・・(4)
z=z+h・・・(5)
式(3)、式(4)に含まれるΔtは、任意の時間幅であり、rは曲率に対応する。式(5)に含まれるhは、起伏に対応する。画像合成部186は、算出したx、y、zを中心とする所定幅の経路を生成する。
続いて、画像合成部186は、経路上にコンテンツを配置する。画像合成部186は、時間tと、コンテンツ配置データ171とを比較し、時間tに対応するコンテンツ、距離(L)、角度(θ)を対応付けて検出する。ここで、コンテンツは、図5に示したファイル本体に対応する。画像合成部186は、下記の式(6)、式(7)、式(8)を用いて、コンテンツの配置位置X、Y、Zを算出する。
X=x+Lcos(r)cos(θ)・・・(6)
Y=y+Lsin(r)cos(θ)・・・(7)
Z=z+Lsin(θ)・・・(8)
画像合成部186は、式(6)〜(8)によって算出した配置位置X、Y、Zに、時間tに対応するコンテンツを配置する。
また、画像合成部186は、時間tに対応する物体を図9に示した景色データから取得し、取得した物体に対応する補助情報に基づいて、物体を配置する。時間tに対応する物体が存在しない場合、画像合成部186は、物体の配置を実行しない。
画像合成部186は、下記の式(9)、式(10)、式(11)を用いて、曲率r、起伏h、時間tの値を更新する。
r=r+R(t)・・・(9)
h=h+H(t)・・・(10)
t=t−Δt・・・(11)
式(9)に含まれるR(t)は、図7に示した経路データの時間tに対応する曲率(R)を返す関数である。式(10)に含まれるH(t)は、経路データの時間tに対応する起伏(H)を返す関数である。画像合成部186は、式(11)によって算出される時間tの値が、時間TからDを減算した値以下となるまで、上記の処理を繰り返し実行する。
図12は、画像合成部186が生成する画像の一例を示す図である。図12に示すように、経路には複数のコンテンツが配置されている。また、経路上に、コンテンツ以外の景色も配置される。利用者が指定する変化時間ΔTにしたがって、画像合成部186が経路上を前進または後退する画像を順次生成することで、ディプレイ上には、カーレースゲームのような画像が流れる。
なお、画像合成部186は、コンテンツが音声データの場合、音声の一部をスピーカに出力してもよい。画像合成部186は、時間Tと音声データの記録日時が一致した場合に、記録日時の一致する音声データの一部をスピーカに出力させる。
画像合成部186は、音声データをスキャンし、最も大きい音量を含む部分の音声を出力してもよいし、記録開始時間から所定時間後までの音声データを出力してもよい。
次に、本実施例2にかかるコンテンツ表示装置100の処理手順について説明する。図13は、本実施例2にかかるコンテンツ表示装置100の処理手順を示すフローチャートである。図13に示すように、このコンテンツ表示装置100は、閲覧開始要求を受け付け(ステップS101)、時間Tを受け付ける(ステップS102)。また、コンテンツ表示装置100は、変化時間ΔTを受け付ける(ステップS103)。
コンテンツ表示装置100は、T−ΔTの値をTに代入し(ステップS104)、配置処理を実行する(ステップS105)。コンテンツ表示装置100は、視点位置をTとして、二次元画面に仮想空間を表示し(ステップS106)、処理を継続するか否かを判定する(ステップS107)。コンテンツ表示装置100は、処理を継続する場合に(ステップS108,Yes)、ステップS103に移行し、処理を再開する。コンテンツ表示装置100は、処理を継続しない場合に(ステップS108,No)、処理を終了する。
次に、図13のステップS105に示した配置処理の処理手順について説明する。図14は、配置処理の処理手順を示すフローチャートである。画像合成部186は、時間Tの値をtに代入し(ステップS201)、曲率r、起伏h、経路の形状x、y、zの値を0に設定する(ステップS202)。
画像合成部186は、T−ΔTの値がtの値以上であるか否かを判定し(ステップS203)、T−ΔTの値がtの値以上の場合(ステップS204,Yes)、配置処理を終了する。
一方、画像合成部186は、T−ΔTの値がtの値未満の場合(ステップS204,No)、xの値とΔtsin(r)の値を加算したものをxに代入する(ステップS205)。また、画像合成部186は、yの値とΔtsin(r)の値を加算したものをyに代入し(ステップS206)、zの値と起伏hの値を加算したものをzに代入する(ステップS207)。
画像合成部186は、x、y、zの値を基にして経路の形状を生成し(ステップS208)、時間tに対応するコンテンツまたは物体が存在するか否かを判定する(ステップS209)。画像合成部186は、時間tに対応するコンテンツまたは物体が存在する場合に(ステップS210,Yes)、時間tに対応するコンテンツまたは物体を取得し、コンテンツに対応する距離L、角度θを取得する(ステップS211)。
画像合成部186は、xの値とLcos(r)cos(θ)の値を加算したものをXに代入し(ステップS212)、yの値とLsin(r)cos(θ)の値を加算したものをYに代入する(ステップS213)。また、画像合成部186は、zの値とLsin(θ)の値を加算したものをZに代入する(ステップS214)。
画像合成部186は、X、Y、Zの値を基にして、コンテンツを配置する(ステップS215)。ステップS215において、画像合成部186が、時間tに対応する物体を取得している場合、物体のパラメータに基づいて物体を配置する。
画像合成部186は、rの値とR(t)の値とを加算したものをrに代入する(ステップS216)。また、画像合成部186は、tの値からΔtの値を減算したものをtに代入し(ステップS217)、ステップS204に移行し処理を再開する。
上述してきたように、本実施例2にかかるコンテンツ表示装置100は、利用者の行動を記録した履歴情報から経路の形状を補正し、コンテンツの記録日時等を含む特徴に基づいて、コンテンツを経路上に配置する。したがって、仮想的ではあるが、経路とコンテンツとが対応付けられているため、利用者はコンテンツの配置位置を記憶することが容易となり、利用者がコンテンツを検索する場合も効率的に目的のコンテンツを検索することができる。
また、コンテンツ表示装置100は、仮想空間に特徴的な地形を生成するため、利用者が経路を辿ってコンテンツを検索する作業を繰り返すことで、特定のコンテンツが何処に位置するかを容易に把握することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例1、2以外にも種々の異なる形態にて実施されてよいものである。そこで、以下では実施例3として本発明に含まれる他の実施例を説明する。
まず、コンテンツの三次元空間上の位置を特定する要素のうち、距離(L)と角度(θ)の特定方法について説明する。上記の実施例2において、コンテンツ配置部184は、上記の式(1)、式(2)を用いて距離(L)と角度(θ)を算出していたがこれに限定されるものではない。以下において、距離(L)と角度(θ)を特定する各種の方法について説明する。
コンテンツ配置部184は、距離(L)と角度(θ)をランダムな値にしてもよい。コンテンツ配置部184は、以下の式(12)、式(13)を用いて距離(L)、角度(θ)を算出する。
L=C1+Rnd(C2)・・・(12)
θ=Rnd(π)・・・(13)
式(12)、(13)に含まれるRnd(x)は、0〜xまでの範囲で、ランダムな値を返す関数である。xは、正数である。C1、C2は定数である。
コンテンツ配置部184は、みよう絵等の周知技術を用いてコンテンツの色傾向を判定し、コンテンツの色傾向に基づいて、距離(L)と角度(θ)を特定してもよい。例えば、コンテンツ配置部184は、色傾向と、距離(L)の値、角度(θ)の値とを組合せたテーブルを保持し、色傾向の判定結果と、テーブルとを比較してコンテンツの距離(L)と角度(θ)を特定する。
コンテンツ配置部184は、コンテンツを記録した位置に基づいて、距離(L)と角度(θ)を特定してもよい。例えば、コンテンツ配置部184は、利用者の自宅の位置座標を保持しておき、コンテンツを記録した位置が自宅の東方向の場合、角度(θ)を0〜π/2とし、自宅の西方向の場合、角度(θ)をπ/2〜πとしてもよい。
コンテンツ配置部184は、コンテンツに含まれる人物の特定を行い、特定した人物に基づいて、距離(L)と角度(θ)を特定してもよい。例えば、コンテンツ配置部184は、人物と、距離(L)の値、角度(θ)の値とを組合せたテーブルを保持し、人物の判定結果と、テーブルとを比較してコンテンツの距離(L)と角度(θ)を特定する。
コンテンツ配置部184が、コンテンツに含まれる人物を特定する方法は如何なる周知技術を用いても構わない。例えば、コンテンツ収集部110が、メールによりコンテンツを取得している場合、コンテンツ配置部184は、メールの送信元となる端末装置の利用者をコンテンツの人物として特定してもよい。
その他にも、コンテンツ配置部184は、コンテンツに含まれる被写体の顔パラメータや、コンテンツの中身そのものを適当なハッシュ関数を用いて数値化し、距離(L)および角度(θ)を特定しても良い。
次に、仮想地形生成部185がイベント発生日時を特定する方法について説明する。上記の実施例2において、仮想地形生成部185は、利用者が平均的に存在する位置と、利用者の位置とを比較して、イベント発生日時を特定していたがこれに限定されるものではない。以下において、イベント発生日時を特定する各種の方法について説明する。
仮想地形生成部185は、利用者の生活リズムに基づいて、イベント発生日時を特定してもよい。利用者は加速度計を身につけ、生活ログ収集部130は、加速度計から時間毎の利用者の加速度を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。図15は、時間毎の利用者の加速度の一例を示す図である。
仮想地形生成部185は、時間毎の利用者の平均的な加速度を算出しておく。例えば、仮想地形生成部185は、時間毎に、平均的な加速度と加速度との差を算出し、算出した差が閾値以上となる日時をイベント発生日時として特定してもよい。
仮想地形生成部185は、コンテンツに含まれる人物等に基づいて、イベント発生日時を特定してもよい。仮想地形生成部185は、コンテンツに含まれる人物を特定し、コンテンツ毎の人物の出現頻度を算出する。例えば、仮想地形生成部185は、時系列的に連続するコンテンツを比較し、コンテンツに含まれる人物の出現頻度が閾値以上変化する日時を、イベント発生日時として特定する。
なお、仮想地形生成部185は、コンテンツが音声データの場合、周波数解析などを実行してコンテンツに含まれる人物を特定し、人物の出現頻度を特定する。また、メールによりコンテンツを取得している場合、仮想地形生成部185は、メールに添付された文書に含まれる人物やプロジェクト等に基づいて、コンテンツに含まれる人物を特定する。また、コンテンツがWebページにて掲載されていた場合、仮想地形生成部185は、コンテンツに対応付けられた記事に含まれる人物に基づいて、コンテンツに含まれる人物を特定する。
仮想地形生成部185は、携帯電話の発着信履歴に基づいて、イベント発生日時を特定してもよい。生活ログ収集部130は、携帯電話の発着信履歴を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。ここで、発着信履歴は、利用者が会話した人物と、会話した日時とが対応付けられている。
例えば、仮想地形生成部185は、生活ログデータ172に記憶された履歴情報に基づいて、所定の時間毎に、利用者が最も多く会話した人物を特定する。そして、仮想地形生成部185は、利用者が最も多く会話した人物が変化した日時を、イベント発生日時として特定する。
仮想地形生成部185は、利用者が操作したPC(Personal Computer)の操作時間の変化に基づいて、イベント発生日時を特定してもよい。例えば、生活ログ収集部130は、時間毎のPCの操作時間を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。
例えば、仮想地形生成部185は、一日の平均的なPCの操作時間を算出しておく。そして、仮想地形生成部185は、一日の平均的なPCの操作時間と、任意の日のPCの操作時間とを比較し、各操作時間の差が閾値以上となる日を特定し、特定した日をイベント発生日時とする。
仮想地形生成部185は、利用者がPCで作業した作業内容の変化に基づいて、イベント発生日時を特定してもよい。例えば、生活ログ収集部130は、所定の時間毎に、PC上で起動されたアプリケーションの種別とアプリケーションの起動回数を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。
例えば、仮想地形生成部185は、一日のアプリケーション毎の起動回数の平均値を算出する。仮想地形生成部185は、アプリケーション毎の起動回数の平均値と、任意の日のアプリケーション毎の起動回数とを比較し、各起動回数の差が閾値以上となる日を特定し、特定した日をイベント発生日時とする。
仮想地形生成部185は、出金記録の変化に基づいて、イベント発生日時を特定してもよい。例えば、生活ログ収集部130は、時間毎の出金金額を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。
例えば、仮想地形生成部185は、一ヶ月の出金金額の平均値を算出する。仮想地形生成部185は、出金金額の平均値と、任意の一ヶ月の出金金額とを比較し、各出金金額の差が閾値以上となる月を特定する。仮想地形生成部185は、特定した月に含まれる任意の日時をイベント発生日時とする。
仮想地形生成部185は、定期券の区間の変化に基づいて、イベント発生日時を特定してもよい。例えば、生活ログ収集部130は、利用者が購入した定期券の購入履歴を履歴情報として取得し、履歴情報を生活ログデータ172に登録する。この履歴情報は、利用者が購入した定期券の区間と購入日時が、時系列に並んでいるものとする。例えば、仮想地形生成部185は、履歴情報に記録された前後の定期券の区間を比較し、定期券の区間が異なる購入日時を、イベント発生日時として特定する。なお、仮想地形生成部185は、ランダムにイベント発生日時を特定してもよい。
次に、画像合成部186が表示する経路のその他の例について説明する。上述した実施例2では、経路は***であったがこれに限定されるものではない。例えば、家族等でコンテンツを共有する場合、結婚や子供の独立に合わせて、経路を結合・分岐してもよい。図16は、結合・分岐する経路の一例を示す図である。
図16に示すように、コンテンツ表示装置100は、結婚する前は、利用者の経路と利用者の配偶者の経路を別々に生成するが、結婚後は、利用者の経路と配偶者の経路を一本の経路に結合して、家族の経路を生成する。また、結婚後において第一子が独立した場合には、家族の経路を、夫婦の経路と、第一子の経路に分岐する。図16に示す例では、第一子の経路はその後、第一子の配偶者の経路と結合する。
経路の結合・分割は、複数の経路の始点もしくは終点の時間を一致させることで実現できる。例えば、画像合成部186は、利用者の経路の終点の時間と、配偶者の経路の終点の時間を一致させることで、利用者の経路と配偶者の経路を結合する。また、画像合成部186は、家族の経路の終点の時間と、第一子の経路の始点の時間と、夫婦の経路の始点の時間を一致させることで、家族の経路を、第一子の経路、夫婦の経路に分岐させる。
ところで、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、コンテンツ収集部110、通信部120、生活ログ収集部130、入力部140、出力部150を、コンテンツ表示装置100の外部装置としてネットワーク経由で接続するようにしてもよい。また、データ取得部181、公共コンテンツ選択部182、乱数発生部183、コンテンツ配置部184、仮想地形生成部185、画像合成部186を別の装置がそれぞれ有し、ネットワーク接続されて協働し、コンテンツ表示装置100の機能を実現してもよい。
なお、このコンテンツ表示装置100は、既知の情報処理装置に、上述した各処理部181〜186の各機能を搭載することによって実現することもできる。既知の情報処理装置は、例えば、パーソナルコンピュータ、ワークステーション、携帯電話、PHS端末、移動体通信端末またはPDA等に対応する。
ところで、図2に示した本実施例にかかるコンテンツ表示装置100の構成は、要旨を逸脱しない範囲で種々に変更することができる。例えば、コンテンツ表示装置100の制御部180の機能をソフトウェアとして実装し、これをコンピュータで実行することにより、制御部180と同等の機能を実現することもできる。以下に、制御部180の機能をソフトウェアとして実装したコンテンツ表示プログラムを実行するコンピュータの一例を示す。
図17は、コンテンツ表示プログラムを実行するコンピュータを示す機能ブロック図である。このコンピュータ200は、各種演算処理を実行するCPU(Central Processing Unit)210と、ユーザからのデータの入力を受け付ける入力装置220と、モニタ230を有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る媒体読取り装置240と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置250を有する。また、コンピュータ200は、各種情報を一時記憶するRAM(Random Access Memory)260と、ハードディスク装置270を有する。各装置210〜270は、バス280に接続される。
そして、ハードディスク装置270には、図2に示した制御部180と同様の機能を有するコンテンツ表示プログラム271と、図2の記憶部170に記憶される各種データに対応する制御データ272とが記憶される。なお、制御データ272を、適宜分散させ、ネットワークを介して接続された他のコンピュータに記憶させておくこともできる。
CPU210がコンテンツ表示プログラム271をハードディスク装置270から読み出してRAM260に展開することにより、コンテンツ表示プログラム271は、コンテンツ表示プロセス261として機能するようになる。そして、コンテンツ表示プロセス261は、制御データ272から読み出した情報等を適宜RAM260上の自身に割当てられた領域に展開し、この展開したデータ等に基づいて各種データ処理を実行する。
なお、上記のコンテンツ表示プログラム271は、必ずしもハードディスク装置270に格納されている必要はなく、CD−ROM等の記憶媒体に記憶されたプログラムを、コンピュータ200が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等にこのプログラムを記憶させておき、コンピュータ200がこれらからプログラムを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)時間の推移を仮想的な経路として生成し、利用者の行動を記録した履歴情報に基づいて、前記利用者の行動が変化した時間に対応する前記経路の形状を変化させる経路生成部と、
記録装置がコンテンツを記録した時間に基づいて、前記コンテンツを前記経路に配置するコンテンツ配置部と、
前記経路と当該経路に配置されたコンテンツとを表示する表示部と
を有することを特徴とするコンテンツ表示装置。
(付記2)前記表示部は、表示時間を取得し、当該表示時間を含む所定の時間幅に対応する経路と当該経路に配置されたコンテンツとを表示することを特徴とする付記1に記載のコンテンツ表示装置。
(付記3)時代を象徴するコンテンツを取得する取得部を更に有し、前記コンテンツ配置部は、前記記録装置が記録したコンテンツと前記時代を象徴するコンテンツとを前記経路に配置することを特徴とする付記1または2に記載のコンテンツ表示装置。
(付記4)前記記録装置が記録するコンテンツは、映像情報、画像情報、音声情報を含み、前記表示部は、前記コンテンツに含まれる映像情報、画像情報または音声情報のうち、どの情報を表示するかを指定する条件を取得した場合に、当該条件に対応する映像情報、画像情報または音声情報を表示することを特徴とする付記1、2または3に記載のコンテンツ表示装置。
(付記5)前記表示部は、前記所定の時間幅に対応する経路と当該経路に配置されたコンテンツを表示し、前記コンテンツに音声情報が含まれる場合に、当該音声情報の一部を出力することを特徴とする付記4に記載のコンテンツ表示装置。
(付記6)コンテンツ表示装置が、
位置と時間とを対応付けた経路を生成し、利用者の行動を記録した履歴情報に基づいて前記経路の形状を補正する経路補ステップと、
記録装置がコンテンツを記録した時間と前記コンテンツの特徴に基づいて、前記コンテンツを前記経路に配置するコンテンツ配置ステップと
を実行することを特徴とするコンテンツ表示方法。
(付記7)前記表示ステップは、表示時間を取得し、当該表示時間を含む所定の時間幅に対応する経路と当該経路に配置されたコンテンツとを表示することを特徴とする付記6に記載のコンテンツ表示方法。
(付記8)時代を象徴するコンテンツを取得する取得ステップを更に実行し、前記コンテンツ配置ステップは、前記記録装置が記録したコンテンツと前記時代を象徴するコンテンツとを前記経路に配置することを特徴とする付記6または7に記載のコンテンツ表示方法。
(付記9)前記記録装置が記録するコンテンツは、映像情報、画像情報、音声情報を含み、前記表示ステップは、前記コンテンツに含まれる映像情報、画像情報または音声情報のうち、どの情報を表示するかを指定する条件を取得した場合に、当該条件に対応する映像情報、画像情報または音声情報を表示することを特徴とする付記6、7または8に記載のコンテンツ表示方法。
(付記10)前記表示ステップは、前記所定の時間幅に対応する経路と当該経路に配置されたコンテンツを表示し、前記コンテンツに音声情報が含まれる場合に、当該音声情報の一部を出力することを特徴とする付記9に記載のコンテンツ表示方法。
(付記11)コンピュータに、
時間の推移を仮想的な経路として生成し、利用者の行動を記録した履歴情報に基づいて、前記利用者の行動が変化した時間に対応する前記経路の形状を変化させる経路生成手順と、
記録装置がコンテンツを記録した時間に基づいて、前記コンテンツを前記経路に配置するコンテンツ配置手順と、
前記経路と当該経路に配置されたコンテンツとを表示する表示手順と
を実行させることを特徴とするコンテンツ表示プログラム。
(付記12)前記表示手順は、表示時間を取得し、当該表示時間を含む所定の時間幅に対応する経路と当該経路に配置されたコンテンツとを表示することを特徴とする付記11に記載のコンテンツ表示プログラム。
(付記13)時代を象徴するコンテンツを取得する取得手順を更にコンピュータに実行させ、前記コンテンツ配置手順は、前記記録装置が記録したコンテンツと前記時代を象徴するコンテンツとを前記経路に配置することを特徴とする付記11または12に記載のコンテンツ表示プログラム。
(付記14)前記記録装置が記録するコンテンツは、映像情報、画像情報、音声情報を含み、前記表示手順は、前記コンテンツに含まれる映像情報、画像情報または音声情報のうち、どの情報を表示するかを指定する条件を取得した場合に、当該条件に対応する映像情報、画像情報または音声情報を表示することを特徴とする付記11、12または13に記載のコンテンツ表示プログラム。
(付記15)前記表示手順は、前記所定の時間幅に対応する経路と当該経路に配置されたコンテンツを表示し、前記コンテンツに音声情報が含まれる場合に、当該音声情報の一部を出力することを特徴とする付記14に記載のコンテンツ表示プログラム。