実施の形態1
本実施の形態では、人の位置を時間に対して記録した位置履歴に基づき滞在場所、移動経路を特定する。そして広がりを有する場所の概念および時間的つながりを考慮することにより、人の行動に基づく様々な情報を提示する。提供できる情報は、ユーザ個人の移動履歴に関するもののほか、複数のユーザの移動履歴を統合した結果得られる場所の情報も含まれる。以後の説明では、そのような人の行動に基づく場所の情報もまた行動情報と表現する。なお本実施の形態において「人」は適宜、「動物」、「乗り物」など移動するあらゆる物に置き換えることができる。
図1は本実施の形態におけるデータ処理の流れの概略を示している。本実施の形態におけるデータ処理の流れは、位置履歴取得、移動履歴生成、行動情報生成、の3つの段階に大別される。位置履歴取得処理(S1)は、人の位置情報をリアルタイムに記録して位置履歴とする。ここで位置履歴とは、人の位置座標を所定の時間間隔で所定の時間分、記録し続けたデータである。位置履歴の単位は1日、1回の外出、1回の旅行など、その総時間は様々でよく、装置やユーザによって指定される。S1の位置履歴取得処理によって1単位の位置履歴2を生成する。
移動履歴生成処理(S2)は、位置履歴2を解析し、滞在場所、移動経路、訪問回数など、位置履歴2の単なる位置座標の羅列に、人の行動としての意味づけを行い、分類、統合した結果として移動履歴4を生成する。移動履歴の単位も位置履歴と同じく、様々あり得る。行動情報生成処理(S3)は、移動履歴4をユーザ所望の形式で行動情報7として可視化する。行動情報7の形式によっては複数単位の移動履歴6を入力データとして用いる。S1からS3の処理は連続した流れで実行してもよいし、それぞれの出力データを記憶装置に保存しておき、ユーザの指示などにより個別に実行してもよい。また、3段階のうち前者2つ、あるいは後者2つのみを連続して実行するなどでもよい。
なおS1の位置履歴取得処理は、GPS受信機能を備えた携帯電話やカーナビゲーションシステムなど一般的な装置や手法を用いて衛星などを利用して実現できるため、説明を省略する。以後、移動履歴生成処理(S2)および行動情報生成処理(S3)について説明する。
図2は本実施の形態における情報処理装置10の構成を示している。情報処理装置10は、ユーザからの指示入力を受け付ける指示入力受付部12、位置履歴を解析して移動履歴を生成する位置履歴解析部14、移動履歴に基づき行動情報を生成する行動情報生成部16、行動情報を出力する出力部18を含む。さらに情報処理装置10は、位置履歴解析部14の解析対象である位置履歴を記憶する位置履歴記憶部20、解析に用いる各種パラメータを記憶する解析条件記憶部22、解析結果である移動履歴を格納する移動履歴記憶部24を含む。
図2などにおいて、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
指示入力受付部12は、解析する位置履歴のファイル指定や、行動情報の提示に係る指示をユーザより受け付ける。受け付けた情報は、内容によって適宜、位置履歴解析部14または行動情報生成部16に供給される。指示入力受付部12は、マウス、キーボード、タッチパネル、ボタンなど、一般的な入力装置で実現してよい。
位置履歴解析部14は、位置履歴記憶部20から、指定された位置履歴のファイルを読み出し、解析条件記憶部22に格納されたパラメータを用いて解析する。具体的には時刻と位置座標からなるデータ列を、時間軸上での滞在区間、移動区間に分類し、区間ごとに元のデータ列を評価することにより、時間の流れと滞在場所の空間の広がりを考慮した移動履歴の情報を生成する。生成した結果は移動履歴記憶部24に格納する。
行動情報生成部16は、位置履歴解析部14が生成した移動履歴を移動履歴記憶部24から読み出し、ユーザが指示入力受付部12に指示した内容に従う形式で行動情報を生成する。行動情報の形式としては、(1)1単位または複数単位の移動履歴における滞在場所と移動経路を図形で表し可視化する、(2)複数単位の移動履歴から条件に合致するものを検索する、(3)複数単位の移動履歴を統合して場所や経路の傾向を提示する、といった例が考えられる。具体例は後に述べる。
出力部18は行動情報生成部16が生成した、画像データやテキストデータで構成される行動情報を出力する。出力部18は、情報処理装置10が備えた表示装置やプリンタなどの出力装置とそのコントローラなどで構成する。なお図2に示すように情報処理装置10はネットワークを介して情報提供サーバ8と接続し、行動情報の生成に必要な情報を取得したり、情報提供サーバ8に処理の一部を要求したりしてもよい。具体例は後に述べるが、このような態様においては情報処理装置10と情報提供サーバ8を含む情報処理システムとして本実施の形態を構成する。
図3は位置履歴解析部14の構成をより詳細に示している。位置履歴解析部14は、位置履歴取得部26、速度履歴算出部28、分類部30、統合部32、および情報形成部34を含む。位置履歴取得部26は、指示入力受付部12から指定された位置履歴ファイルの情報を取得し、位置履歴記憶部20から当該位置履歴のファイルを読み出す。以後の説明では位置履歴に記録される位置座標は(緯度,経度)で表されるとするが、位置履歴の記録手段によっては、地図上のx座標、y座標など、別の表現手法でも同様の処理を適用できる。
速度履歴算出部28は、位置履歴に基づき各時刻の速度を速度履歴として求める。速度を求める前、電波障害など何らかの理由で位置座標のデータの一部が抜けていた場合には、前後の位置座標を元にデータ補間を行う。また異常値を除外するため、求めた速度履歴の平滑化処理を行う。これらの前後処理より以後の解析の精度を高める。
分類部30は、速度履歴に対してしきい値判定を行うことにより、位置履歴における時間軸、ひいては各時刻に対応する位置座標のデータを、滞在区間と移動区間に分類する。詳細は後に述べるが、本実施の形態ではしきい値を複数設定することにより、複数の分類パターンを生成する。これにより、飛行機による移動、車による移動、徒歩による移動、など速度のスケールの違いによる場所の抽象度の違いを考慮した解析結果が得られる。
統合部32は、分類部30が速度に基づき滞在区間と移動区間に分類した時間の流れを、各区間における位置座標にフィードバックすることにより、別のタイミングの滞在区間でも同じ場所への滞在とみなされる区間を検出し、必要に応じて当該滞在区間を統合する。具体的には、各滞在区間における位置座標の分布を図形で近似し、その重なり具合と時間の連続性によって、同じ場所への滞在か、また一回の滞在とみなすか、を決定する。統合した滞在区間に対し、さらに位置座標の分布を評価していくことにより、最終的な滞在区間、移動区間が時間経過に対して決定する。統合部32はさらに、統合すべき滞在区間の指定をユーザより受け付け、それに応じて当該滞在区間とそれに挟まれる移動区間を統合してもよい。
情報形成部34は、そのようにして得られた各滞在区間および移動区間における位置座標や速度値の集合を評価し、各区間について所定の情報を導出する。さらに、別の機会であっても同じ場所への滞在であれば、それぞれの滞在区間の情報をまとめ、場所に対する情報とする。ここで導出する情報の項目は後に例示する。情報形成部34は、得られた情報を移動履歴として移動履歴記憶部24に格納する。
図4は速度履歴算出部28が算出する速度履歴の具体例を示している。速度履歴40は、時間変化(横軸)に対する速度の変化で表される。このような速度履歴は上述のとおり、位置座標の補間、速度の算出、平滑化処理によって得られる。位置座標の補間は、(緯度、経度)で表される2次元座標を時刻順に結んだ線におけるデータ欠損部分に対し、直線補間やスプライン補間など既存の技術を適用することにより行う。各時刻の速度は、基本的には前の時刻からの位置座標の変化量を時間間隔で除算することによって得られる。このとき、最終的にメルカトル図法の地図を用いて情報提示を行う場合などは、(緯度、経度)のパラメータを地図上の(x座標、y座標)に変換しておく。
時刻・・・,t−1,t,t+1、・・・に位置情報を取得したとすると、時刻tの緯度lo(t)および経度la(t)をメルカトル図法における2次元座標、x(t)およびy(t)に変換する式は次の通りである。
x(t)=lo(t)×π/180.0f
y(t)=asinh(tan(la(t)×π/180.0f)
各時刻に対して速度が得られたら、その時間変化に対し平滑化処理を施すことにより異常値を除外する。平滑化処理はメディアンフィルタなど既存の手法を適用することによって実行する。このようにして得られた速度履歴40に対し、速度しきい値Vthと、継続時間しきい値Tthを設定する。そして分類部30は、速度が速度しきい値Vthを下回る状態が継続時間しきい値Tth以上継続した区間を滞在区間として抽出する。図4においては「第1滞在」、「第2滞在」、「第3滞在」、「第4滞在」、「第5滞在」の5つの滞在区間が抽出されている。継続時間しきい値Tthを導入することにより、信号待ちの状態など滞在として抽出するのに望ましくない短時間の停滞を抽出対象から除外することができる。
速度しきい値はあらかじめ複数設定しておき、解析条件記憶部22に、継続時間しきい値Tthとともに格納しておく。そして分類部30は、速度しきい値の大きい方から順にしきい値判定を行っていく。図5は、4つの速度しきい値を設定した場合に抽出される滞在区間の関係を示しており横方向が時間経過を表している。同図において、第1速度しきい値、第2速度しきい値、第3速度しきい値、第4速度しきい値はこの順で値が大きいものとする。
まず解析対象の位置履歴が記録された全期間41における速度に対し、第1速度しきい値を適用して上述のようにしきい値判定を行い、滞在区間42aを抽出する。次に、抽出した滞在区間42aの速度のみに対し、次に大きい第2速度しきい値でしきい値判定を行い滞在区間42bを抽出する。さらに滞在区間42bの速度のみに対し第3速度しきい値でしきい値判定を行い滞在区間42cを抽出する。同様に滞在区間42cに対し第4速度しきい値でしきい値判定を行い滞在区間42dを抽出する。
このような処理により、滞在区間のパターンが4つ生成される。このとき、速度しきい値が大きい上位の滞在区間パターンは、速度しきい値が小さい下位の滞在区間パターンを包含する。なお設定する速度しきい値の数は4に限らない。本実施の形態において複数の速度しきい値を導入するのは、滞在場所の抽象度を提示する情報に応じて切り替えるためである。例えば複数の国を飛行機で移動して旅行した場合の位置履歴を処理対象としたとき、飛行速度付近の速度しきい値に対する滞在区間のパターンを用いれば、訪問国や都市の単位で滞在場所を示すことができる。一方、歩行速度付近の速度しきい値に対する滞在区間のパターンを用いれば、各国の訪問地において散策時に立ち寄った建物などの単位で滞在場所を示すことができる。
複数の速度しきい値によって飛行速度から徒歩速度までしきい値を多段階で設定することにより、電車や車など移動手段による距離感の違いに応じて場所の抽象度を多段階に変化させることができる。いずれの場合も、図5に示すように時間経過に対して滞在区間が抽出されるため、訪問回数や滞在区間までの移動経路なども含め、滞在する、という停滞した行動を時間の流れの中に組み入れ、移動履歴として表現することができる。
上記のように抽出した滞在区間を、元の位置履歴に基づき統合する。図6は統合部32が滞在区間を統合する様子を表している。図5と同様、横方向に時間の経過を表しており、上段は統合前の滞在区間パターン44、下段は統合後の滞在区間パターン46である。同図では便宜上、滞在区間の前後の区間を移動区間としているが、最終的な移動区間は、統合後に最終的な滞在区間パターンが決定した後に決定する。まず統合前の滞在区間パターン44では、時刻t1からt2の「第1滞在」、時刻t3からt4の「第2滞在」、時刻t5からt6の「第3滞在」、が滞在区間として抽出されたとする。
分類部30が行う滞在区間の抽出は、速度にのみ基づいている。一方、公園、遊園地、ゴルフ場、競技場など、広い敷地ではあるが一つの場所とみなされる場所に滞在している場合、例えその中で走ったりカートに乗って移動していたとしても、一つの場所に対する滞在として捉えることが望ましい場合がある。そのため、速度による滞在区間抽出結果を位置座標の情報にフィードバックすることにより、空間の観点から滞在区間を評価し、必要に応じて滞在区間を統合したり、時を改めた滞在であっても同じ場所への滞在として記録する。
具体的には、各滞在区間における位置座標の分布の重なり具合から、同じ場所への滞在であるか否かを判定し、さらにそれらの滞在区間の間に別の場所への滞在区間が存在していないときは、当該場所への1回の滞在であると判断して滞在区間を統合する。図6の例では、「第1滞在」、「第2滞在」、「第3滞在」が、時刻t1からt6の1つの滞在区間「第1滞在」へ統合されている。実際の統合処理は、「第1滞在」、「第2滞在」をまず統合し、その結果得られた滞在区間と「第3滞在」を統合するようにしてもよい。最終的に得られた統合後の「第1滞在」における位置座標の集合を用いることにより、場所の空間的広がりを特定することもできる。
図7は、滞在区間を統合する手法を説明する図である。上述のとおり統合処理には、速度履歴に基づく滞在区間パターンと、その元のデータである位置履歴の情報を用いる。図7の左の図は、各時刻における位置座標を時刻順に結んだ移動履歴線48を示している。同図におけるt1からt6のパラメータは、図6において示した各時刻に対応している。すなわち、時刻t1からt2の間の点線は滞在区間「第1滞在」、時刻t3からt4の間の一点鎖線は滞在区間「第2滞在」、時刻t5からt6の二点鎖線は滞在区間「第3滞在」としてそれぞれ抽出された区間を表している。実線は上述のとおりそれ以外の区間であり、統合前は移動区間と考えられる。
このような移動履歴線48の平面において、各滞在区間に含まれる位置座標の分布を所定の図形で近似する。例えば、全ての位置座標を包含する図形を導出する。そして図形同士の重なり割合が、あらかじめ定めた重なり割合しきい値を超えていた場合に、当該図形に対応する滞在区間は同じ場所への滞在であると判断する。重なり割合しきい値は、解析条件記憶部22に格納しておき、統合部32が読み出す。この場合、位置座標の異常値が求める図形に大きく影響するため、位置履歴のデータに対し平滑化処理を施すことが望ましい。また速度履歴を求める場合と同様、必要に応じて座標変換を行っておく。
近似に用いる図形は長方形や楕円形などからあらかじめ定めておく。楕円形は長方形と比較し、角の領域がないため実際の位置座標の分布に近くなることが多い。一方、長方形は計算が容易である。したがって求める精度や計算負荷などの点から適宜選択しておく。図7の例では、「第1滞在」、「第2滞在」、「第3滞在」の各滞在区間に対して楕円50a、50b、50cがそれぞれ導出されている。楕円形を適用する場合、まず各滞在区間に含まれる位置座標を平均して重心の座標を求める。そして次のように楕円の回転角度を求める。まず重心座標を(mx,my)としたとき、2次の共分散行列は次の式で与えられる。
ここで(x(p),y(p))は各位置座標を表す。当該行列の固有値λは次の式によって算出される。
そして固有値λを用いて、次の式から楕円の傾きθを求める。
次に各滞在区間に含まれる位置座標を、重心を中心として楕円の傾きθだけ傾きと逆方向に回転させる。図8はそのようにして、元の位置座標の分布を楕円の傾きが0となるように回転させた様子を示している。分布52は元の位置座標の点集合、分布54は回転後の位置座標の点集合を表している。このようにして得られた分布54において、重心(mx,my)からの距離がx軸の両方向において最大となる点のx座標、すなわちxmin、xmaxと、y軸の両方向において最大となる点のy座標、すなわちymin、ymaxとから、楕円の式は次のように求めることができる。
ここでa=(xmax−xmin)/2、b=(ymax−ymin)/2である。次にこのようにして求めた、滞在区間に対応する図形同士の面積の重なり割合を求める。例えば各楕円をプロットした画像上でラスタスキャンを行うことにより画素の内外判定を行う。図形の内部にあり、かつ複数の図形で共通する画素の数が、重なる部分の面積に対応する。あるいは、楕円や長方形など図形を表す数式から論理的に計算してもよい。そして、ある滞在区間に対応する図形の面積のうち他の図形に重なる部分の割合が、あらかじめ定めた重なり割合しきい値を超えるとき、2つの図形に対応する滞在区間は同じ場所への滞在であると判定する。
ここでこれらの滞在区間が、別の場所への滞在を挟まず、移動区間のみを挟んだ連続した滞在であった場合、図6に示すように滞在区間を統合し1回の滞在とする。一方、別の場所への滞在を挟んでいる場合は、同じ場所への別の機会の滞在とする。滞在区間を統合した場合、今度は統合後の滞在区間における位置座標の分布を上述と同様に図形で近似し、その他の滞在区間に対応する図形との重なり割合を求める。この処理を全ての滞在区間について繰り返すことにより、滞在区間パターンを正確に取得できるほか、「滞在」という行為を「場所」に対して紐づけることができる。
次にこれまで述べた構成による移動履歴生成のための動作を説明する。図9は位置履歴解析部14が位置履歴を解析する手順を示すフローチャートである。まず指示入力受付部12がユーザからの解析指示を受け付けると、位置履歴取得部26は、指定された位置履歴のファイルを位置履歴記憶部20から読み出す(S10)。すると速度履歴算出部28は、必要に応じてデータの欠損部分を補間した後、各時刻における速度を算出し、平滑化処理を行うことにより速度履歴を得る(S12)。
次に分類部30は、複数の速度しきい値と継続時間しきい値を解析条件記憶部22から読み出し、最も大きい速度しきい値を設定してしきい値判定を行い滞在区間を抽出することにより、滞在区間パターンを導出する(S14、S16)。統合部32は、当該滞在区間パターンにおける各滞在区間に含まれる位置座標を位置履歴より取得し、その分布を図形で近似する(S18)。そして、重なり割合しきい値を解析条件記憶部22から読み出したうえ、重なり割合が当該しきい値を超える図形を検出したら(S20のY)、当該図形に対応する滞在区間の間に別の滞在区間が存在せずに連続しているか否かを確認する(S22)。
連続していたら(S22のY)、当該滞在区間を統合して1つの滞在区間とする(S24)。連続していなければ(S22のN)、滞在区間はそのままとし、同一の場所への滞在であることを記録する(S26)。S18からS26までの処理を、全ての滞在区間に対して繰り返す(S28のN、S18、S20、S22、S24、S26)。S24で滞在区間を統合した場合は、統合後の滞在区間に対しても新たに統合判定を行う。そして全ての滞在区間について判定されたら(S28のY)、次に大きい速度しきい値で滞在区間を抽出し、統合判定を行う(S30のN、S14、S16、18、S20、S22、S24、S26、S28)。以上の処理を全ての速度しきい値で繰り返したら処理を終了する(S30のY)。
そして情報形成部34は、上述の処理で得られた、各速度しきい値に対応する複数の滞在区間パターンと、元の位置履歴、途中で取得した速度履歴などを用いて、あらかじめ定めた情報項目に対応する演算処理を行い、最終的な移動履歴の情報を生成する。ここで生成する情報の項目例を次に示す。
まず主項目として、滞在、移動を含む解析対象の総時間、滞在場所の数、「場所A」、「場所B」など場所ごとの滞在データを含む。また場所ごとの滞在データの副項目として訪問回数、1回目、2回目など訪問ごとの滞在データを含む。さらに訪問ごとの滞在データの副項目として、解析に使用した速度しきい値、場所の抽出において対象となった、上位の速度しきい値で抽出された上位の場所、滞在の開始時刻および終了時刻、位置履歴に記録された位置座標のうち当該場所に含まれる座標の数、平均速度、平均高度、平均緯度、平均経度、場所の範囲を含む。
ここで場所の範囲は、滞在区間に含まれる位置の分布を長方形で近似した場合、長方形の左上の座標と辺の長さで表すことができる。楕円形で近似した場合は、重心(mx,my)、長軸と短軸の長さ(2aおよび2b)、傾き角度θで表すことができる。また平均高度は、元の位置履歴において各時刻の高度が記録されている場合に算出できる。それぞれの項目の値は簡単な数式で算出できるため具体的な説明は省略する。
以上のような、個人の位置履歴の情報から得られる個人的な移動履歴の情報に、さらに一般的な情報を付加してもよい。例えば情報提供サーバ8として、任意の緯度、経度に対して周辺の風景写真を提供するサーバや、その他の情報を提供するデータベースにネットワークを介して接続し、滞在場所や位置に対応して流通している情報の数を取得する。そして次に定義される関心度を場所ごとに算出する
関心度=情報の数/場所の面積
すなわち関心度は、場所に対して一般に提供される情報の密度を表し、対象とする場所に対する世間的な関心の度合いを示す指標である。このように個人のイベントから一般的な傾向まで多くの観点から得た、場所を中心とした情報を相互に関連付けることにより、情報の検索効率や、様々な情報のマッシュアップ表示による利便性が向上する。特に、位置履歴として与えられる位置座標の羅列に、場所、滞在/移動の行為、それらの時間的順序の観点から意味づけを行うことにより、これまでにない情報提示、情報検索の態様を実現することが可能になる。
なお上の表はあくまで例示であり、例えば地名や施設名など、情報処理装置10自身や情報提供サーバ8のデータベースを検索することによって位置座標などに基づき取得できる情報は、適宜移動履歴に含めてよい。以後の説明では、位置履歴を解析することによって得られたデータを包括的に移動履歴と呼ぶほか、例えば一項目など個々のデータも場合によって移動履歴と呼ぶ。
次に、以上のようにして得られた移動履歴に基づき行動情報生成部16が生成する行動情報について説明する。図10は行動情報生成部16の構成を詳細に示している。行動情報生成部16は、移動履歴表示や移動履歴検索のための画像を生成する表示画像生成部130、移動履歴を地図上に表したとき当該地図の縮尺変化を受け付ける縮尺変化指示受付部131、地図の縮尺に応じて表示する移動履歴の滞在/移動パターンを変化させる分類パターン切り替え部132、ユーザより検索キーの入力を受け付ける検索キー受付部133、検索キーに応じて移動履歴を検索する検索部134を含む。
行動情報生成部16はさらに、移動履歴を表示する際に必要となる図形を記憶した移動履歴図形記憶部135、写真データやカレンダーの図形データなど、移動履歴のいずれかの項目に紐づけるデータを記憶した付加情報記憶部136、分類パターンを切り替えるための、地図の縮尺の範囲と用いる分類パターンとを対応づけた縮尺・分類対応情報を記憶した縮尺・分類対応記憶部137を含む。
表示画像生成部130は、行動情報として表示する画像のデータを生成する。例えば、地図上に滞在場所と移動経路の図形を表した移動履歴表示画像、移動履歴を検索キーによって検索する際の検索キー入力画像と検索結果表示画像などのデータを生成する。生成した画像データは、出力部18を介して表示画像として出力される。画像の生成に必要なデータは、移動履歴図形記憶部135や付加情報記憶部136から読み出す。移動履歴図形記憶部135には、滞在場所を示す図形、移動経路を示す図形などの他、地図のデータも格納しておく。ユーザは指示入力受付部12を介して、それらの画像の種類と場合によっては移動履歴を選択する指示を入力し、表示画像生成部130はそれに応じた表示画像のデータを生成する。
縮尺変化指示受付部131は、ユーザが指示入力受付部12を介して入力した、表示中の地図の縮尺を変化させる指示を受け付ける。受け付けた情報は表示画像生成部130に供給することにより、表示する地図の縮尺を変化させた画像データを生成させる。さらに同じ情報を分類パターン切り替え部132に供給する。分類パターン切り替え部132は、縮尺・分類対応記憶部137の縮尺・分類対応情報を参照し、縮尺率が、分類パターンを切り替えるべきしきい値を超えたか否かを判定する。具体例は後に述べるが、本実施の形態では複数の速度しきい値に対し、複数の滞在/移動区間の分類パターンを生成している。あらかじめ表示する縮尺率の範囲と分類パターンを対応づけておくことにより、地図の縮尺率と、移動履歴として表示する分類パターンとを連動させる。
分類パターン切り替え部132は、分類パターンを切り替える判定をした場合に、表示画像生成部130にその旨を通知する。このとき例えば、切り替え後の分類パターンの識別情報などを通知する。表示画像生成部130は、切り替え後の移動履歴を移動履歴記憶部24より新たに読み出し図形などによって表示することにより、移動履歴の表示を切り替える。
検索キー受付部133は、検索入力画像が表示されている状態でユーザが指示入力受付部12を介して入力した検索キーを受け付ける。検索キーは文字列のほか、地図上の範囲を示すカーソルなどでもよい。具体例は後に述べる。検索キーが入力されたら、検索キー受付部133は当該検索キーを検索部134に供給する。検索部134は、移動履歴記憶部24を当該検索キーに基づき検索し、該当する移動履歴のデータを読み出す。読み出したデータを表示画像生成部130に与えることにより、表示画像生成部130は、検索結果として移動履歴を表示した画像のデータを生成する。
なお行動情報生成部16は、上述の、移動履歴を表示する機能、縮尺率に応じて分類パターンを切り替える機能、検索機能の全てを備えていなくてもよく、また、日記やスケジュール管理など図示しない別のアプリケーションの機能モジュールとの組み合わせで同様の機能を備えていてもよい。次に表示画像生成部130が生成する画像の具体例を説明する。図11および図12は、ユーザの一回の旅行に対する移動履歴を、滞在場所および移動経路の観点から画像化して行動情報とした例を示している。この場合、滞在場所と移動経路を区別して表示することにより、移動履歴の可視性を向上させている。ここで図11の移動履歴表示画像60aと図12の移動履歴表示画像60bはどちらも、同じ旅行中の移動履歴を表しているが、上述のように、滞在区間を抽出する際の速度しきい値が異なる。
図11は速度しきい値を200km/hとすることにより、飛行機で移動している区間とそれ以外の区間で移動と滞在の区別がなされる。それに対し図12は速度しきい値を20km/hとすることにより、乗り物で移動している区間と徒歩または止まっている区間で移動と滞在の区別がなされる。両者の基準ではその距離感も異なるため、表示する距離の縮尺を変化させる。すなわち前者の速度しきい値では図11の移動履歴表示画像60aのように国単位のスケールになり、後者の速度しきい値では図12の移動履歴表示画像60bのように個々の施設や道路単位のスケールになる。
このように、移動履歴を画像として表示する場合は、滞在区間の抽出に用いた速度しきい値と画像上の距離のスケールが連動するようにし、動的にユーザのイベントを抽象化する。なお図11および図12では対応する縮尺の地図上に移動履歴を表しているが、本実施の形態をそれに限定する趣旨ではない。例えば経路の詳細な情報が必要でない場合などは、複数の滞在場所の位置関係と訪問した順序を矢印で示すのみでもよい。いずれの場合も、速度しきい値と滞在場所の抽象度を連動させることができる。
図11の移動履歴表示画像60aは移動履歴図62aおよび縮尺変更レバー70を含む。移動履歴図62aは世界地図上で滞在した場所を2重の円64aで表し、その間の移動経路を線66aで表している。滞在場所を表す円64aは、滞在区間における位置座標の分布の重心を中心とし、当該滞在場所の滞在時間の合計を半径として表している。これにより、位置を表す2次元平面に時間の要素を加えて表示することができる。
また移動経路を表す線66aは、移動区間において記録された位置座標を時間順に結ぶことによって得られる。ただし図11の移動履歴図62aのように詳細な経路が重要でないなどの状況に応じて、滞在場所を直線で結ぶなど表示の切替えを行ってもよい。いずれの場合も移動方向を矢印によって表すことにより、滞在場所への訪問順序が明確となる。さらに各滞在場所を訪問した回数を文字68aで示している。この表示により、複数の場所をどのような経路で何度訪問したかを一見して把握することができる。
縮尺変更レバー70は、ユーザが指示入力受付部12を介して移動履歴図62aの地図の縮尺を調整するためのグラフィックスである。ユーザがポインティングデバイスなどで縮尺変更レバー70を上下に変化させると、移動履歴図62aの地図の縮尺が連続的に変化する。そして地図の縮尺が大きくなり所定のしきい値を超えたとき、図12の移動履歴表示画像60bを表示する。
すなわち縮尺率に設定したしきい値によって、異なる速度しきい値によって分類された滞在区間のパターンへ表示を切り替える。そのためにはあらかじめ、縮尺率の範囲と、速度しきい値との対応づけを行っておく。これにより、縮尺率の変化に連動して、シームレスに表示する移動履歴を切り替えることができる。当然、速度しきい値の設定によっては、図11から図12へ至る間に、表示する移動履歴を多段階に切り替えてよい。
図12の移動履歴表示画像60bも、移動履歴図62bおよび縮尺変更レバー70を含み、移動履歴図62bには、滞在場所を表す円64bと移動経路を表す線66b、および滞在場所を訪問した回数を示す文字68bが表示されている。図12の移動履歴図62bは図示するように道路が表示される縮尺率であるため、記録された位置座標を結んだ線として移動経路を表すことにより、移動中にどの道路を通ったかが明確になる。
図13は、行動情報生成部16が生成する行動情報の別の例を示している。この例は、移動履歴記憶部24に格納された複数単位の移動履歴から、条件に合致する移動履歴を検索する検索画面を表示する。検索対象は、移動履歴記憶部24に格納された全ての移動履歴でもよいし、ユーザにより指定された期間内に位置履歴が記録された移動履歴などでもよい。図13の例は、地図上の位置を検索キーとしたときの検索結果を表す画像である。この状態となる前にまず行動情報生成部16は、移動履歴検索画像72に地図74を表示しておく。当該地図74は、指示入力受付部12を介してユーザが表示範囲や縮尺を変更可能とする。
さらに同地図74上に、指示入力受付部12を介してユーザが移動させることのできるカーソル76を表示する。カーソル76は、地図上の所定の範囲を指定できるように円形とする。このカーソル76によってユーザは、検索キーとなる位置を指定する。具体的にはカーソル76を所望の場所に移動させ、指示入力受付部12の決定ボタンを押下するなどして決定入力を行うと、行動情報生成部16は、カーソル76の範囲内に滞在場所を含む移動履歴を、移動履歴記憶部24から読み出す。
そして、図11、12で示したのと同様に、読み出した移動履歴に基づき、地図74上に当該移動履歴に含まれる滞在場所と経路を図形表示する。この際、複数の移動履歴が該当する場合は、図形の色や形を変化させることによって区別する。さらに移動履歴の項目のうち所定の項目を文字情報78として表示する。図13では、移動履歴の経路を表す図形の凡例として、当該移動履歴の元となる位置履歴が記録された日時、総時間、滞在場所の個数が表示されている。
このように移動履歴を検索可能とすることで、過去に膨大な位置履歴を記録したユーザであっても、ある場所へ滞在した移動履歴を容易に見つけ出すことができる。例えば旅行の計画を立てる際、過去に同じ方面へ旅行したときの履歴を検索することで、そのときの移動経路や立ち寄った店などの情報を取得すれば、過去の経験を踏まえた計画が立てられる。なお移動履歴は地図上に表示しなくてもよく、店舗などが描かれたイラストや航空写真などの上に表示してもよいし、移動経路を単独で表示してもよい。また滞在場所を色の濃淡や図形などで表した滞在場所の分布のみを表示してもよい。
図13は地図上の位置を検索キーとした場合を説明した。このように本実施の形態では移動履歴の情報のひとつとして滞在場所を抽出するため、場所を、移動履歴、ひいては個人のイベントのメタデータとすることができる。図14はそのような態様を実現するための別の画像例を説明する図である。この例では、移動履歴記憶部24に記憶した移動履歴を、対応する位置履歴を記録した日にちごとにまとめ、さらに各日にちに撮影した写真のデータを付加情報として加えたデータを用いている。写真以外に、各日にちに取得した動画や絵などの画像データや音楽などの音声データを付加情報としてもよい。
図14の移動履歴検索画像80は、日にちをマス目で展開したカレンダー82を含み、各日にちのマス目には、「10月」の欄83に示すように、その日に撮影した写真をサムネイル表示する(図中、網掛けされた矩形)。ユーザが指示入力受付部12を介してポイントした月のみ写真を表示してもよい。そして、ある月を選択したうえで、ユーザが移動履歴検索画像80のメニュー選択ウィンドウ84から「場所で検索」という項目を選択すると、検索キー入力ウィンドウ86が表示されるようにする。検索キー入力ウィンドウ86は図のとおり、検索キーたる場所の中心位置の緯度および経度、および範囲(半径)を、ユーザが文字列で入力するための領域である。この入力情報は、図13のカーソル76と同じ機能を果たし、ユーザが検索を実行する指示入力を行うと、図13と同様の移動履歴の図形や各種情報を表示する。ただし検索対象の移動履歴は、カレンダー82で選択された月に記録されたもののみとする。
図14の場合は、ユーザがカレンダー82上に表示された写真を確認することで、検索対象の移動履歴の絞り込みを行うことができる。ユーザは見つけ出したいイベントが何月に行われたかを写真によって確認していき、10月に所望のイベント時の写真を見つけたら、その月を選択した状態で、検索キーである場所の情報を入力する。写真の画像は人間の記憶を呼び戻すのに有用な情報であるため、それを用いて移動履歴の絞り込みを行うことにより、効率的に所望の移動履歴へたどり着くことができる。またカレンダーの日付とも関連付けることにより、日記やスケジュール管理としての機能を持たせることができる。
図15は、行動情報生成部16が生成する行動情報の別の例を示している。この例では、移動履歴記憶部24に格納された、一人のユーザの複数単位の移動履歴を統合し、場所に係る新たな情報を生成している。統合対象は、移動履歴記憶部24に格納された全ての移動履歴でもよいし、ユーザにより指定された期間内に位置履歴が記録された移動履歴などでもよい。さらにユーザが、地図上あるいは文字列入力などにより所望の領域を選択すると、行動情報生成部16は当該領域に滞在場所が含まれる移動履歴を移動履歴記憶部24から読み出す。
そして読み出した複数単位の移動履歴における滞在場所やそこまでの経路を、全て一画像上に表示する。図15の立ち寄り場所表示画像90の例では、ユーザが選択した領域の地図92と、その領域において過去に滞在した場所を表す図形94、経路を表す線96を表示している。複数単位の移動履歴において同じ場所に滞在していたら、図形94は1つだけ表示する。経路を表す線96も同様である。あるいは訪問回数にしきい値を設定し、あまり行かない場所、よく行く場所などを色分けして表示してもよい。図15の立ち寄り場所表示画像90はそれのみでも、過去に立ち寄った店を一見して把握できる、という意味で有用であるが、本実施の形態ではこの情報を利用してさらに行動情報を生成する。
例えばネットワークを介して接続した情報提供サーバ8などから、該当領域やその周辺に存在する店の情報を取得する。そして図15で示した情報を利用し、ユーザがまだ行ったことのない店をピックアップしてリスト表示したり地図上にマークを記したりする。あるいはユーザがよく行く店と同じカテゴリでまだ行っていない店を該当領域の周辺も含めてリスト表示したり地図上に表示したりする。店のピックアップには、よく使う経路を考慮してもよい。さらによく行く店のうち、セールや催しを実施している店の情報が取得できたら、図15の立ち寄り場所表示画像90において図形94を強調表示したり、文字情報を付加したりする。
このように個人の行動パターンを踏まえたうえでネットワーク上で開示されている情報を取得し、表示することで、ユーザにとって有用である可能性の高い情報のみを効率よく提示することができる。上述は一人の移動履歴に基づく行動情報生成であったが、それを複数の人に応用することができる。
図16は複数の人の移動履歴に基づき情報を提供するシステムの構成を示している。情報提供システム100は、複数の情報処理装置10a、10b、10c、10dと、情報提供サーバ8で構成する。情報処理装置10a、10b、10c、10dは、図2で示した情報処理装置10と同じ構成でよい。またその数は図に示すものに限らず、例えばソーシャルネットワーキングサービス(SNS)などに参加しているユーザが操作する端末の数などとなる。情報提供サーバ8はコミュニティサイトを運営する側のサーバであり、データベース生成部102、データベース120、および情報提供部104を含む。
データベース生成部102は、複数の情報処理装置10a〜10dから送信される、移動履歴の所定の項目を受信する個別情報取得部106、各移動履歴を統合してデータベース120に格納する情報統合部108を含む。個別情報取得部106が、移動履歴として個人の滞在場所と滞在経路の情報を取得し、情報統合部108が地図上の領域ごとに複数のユーザの移動履歴のデータを統合すると、図15と同様の行動情報を、複数の人の移動履歴より取得できる。情報処理装置10a〜10dから送信する情報には、旅行、散歩、通勤など移動履歴ごとに実際のシチュエーションの情報を付加しておく。情報統合部108は当該シチュエーションごとに、送信された移動履歴を統合してデータベース120に格納する。
情報提供部104は、情報処理装置10a〜10dから送信される、情報の提示に係る問い合わせを受信する問い合わせ取得部110、問い合わせ内容に応じてデータベース120から必要な情報を取得して所定の形式に整形する検索部112、および、問い合わせを送信した情報処理装置10a〜10dに結果を送信する結果送信部114を含む。情報処理装置10a〜10dからは、領域指定やシチュエーションの指定、またお勧めの店などユーザが取得したい情報項目を含んだ問い合わせの信号を送信する。
検索部112は、問い合わせ信号に含まれた領域やシチュエーションに該当する移動履歴の情報をデータベース120から検索する。これは図15で示したのと同様の情報であるが、複数の人の移動履歴に基づいているため、人気の店やあまり知られていない裏道などの情報を含んでいる。そこで、問い合わせ元のユーザから送信された当該ユーザの個人的な移動履歴と比較することにより、当該ユーザは未踏であるが人気のある場所を提示すことができる。提示時は、上述した、当該場所に対する関心度の情報を付加してもよい。
さらに別の例として、複数の移動履歴から高速道路上での平均速度を算出し、曜日、時間帯、季節などで分類することにより、それぞれの時間における渋滞情報を提示することができる。例えばユーザが情報処理装置10aから、旅行で予定されている経路を問い合わせとして送信すると、情報提供サーバ8は、同じシチュエーションにおける同一経路のうち渋滞箇所の情報を送信する。また、渋滞箇所の始点と終点を通る経路を含む移動履歴をデータベース120から検索し、迂回路やその平均速度を送信してもよい。
このように複数の人の移動履歴を蓄積し、それを利用して情報を提供することにより、名前などを用いた検索では分かりづらい、店の人気の度合いや、個人ではわかり得なかった情報を取得することができる。また移動履歴を元にした情報であるため、個々の店の情報より、移動経路や時間帯を含めたより総合的な情報を得ることができ、旅行の日程にそのまま適用したり、ランチよりディナーが人気であるといった時間的に細かい情報を得たりすることができる。また個人による移動履歴の送信によって自動的にデータベースのアップデートがなされるため、常に最新の情報を提供することができる。
以上述べた本実施の形態によれば、一定の時間間隔で記録した位置履歴を、速度に基づき滞在、移動に分類する。そして分類結果を位置履歴における位置座標にフィードバックして滞在区間を適宜統合することにより、分類結果の精度を上げるとともに滞在場所を明確にする。このとき単に滞在場所を明らかにするばかりでなく、時間軸上で移動、滞在の区間を明確にすることで、人の行為の時間的流れを把握でき、多様な項目からなる移動履歴の情報を取得することができる。また、移動履歴、ひいていは個人のイベントに、場所、経路、時間帯などの情報をタグとして紐づけることができ、検索が効率化し情報管理が容易になる。また位置履歴を移動履歴に変換することによりデータをまとめることができ、データサイズを効率的に削減することができる。
また、複数の速度しきい値で分類パターンを生成することにより、提示したい情報によって場所の抽象度を変化させる。例えば移動履歴を図形表示する際、距離の縮尺に応じて分類パターンを切り替えて表示することにより、表示させる情報を、縮尺指定のみによって適応的に変化させることができる。結果として、ユーザは所望の情報を効率的に取得できる。さらに、移動履歴とネットワーク上で流通している情報とを組み合わせることによって、場所に関する様々な情報提示が可能となる。また複数の人の移動履歴を集積し、滞在場所や経路などの情報を統合することにより、お勧めの場所や渋滞情報を常に新しい情報に基づき提示することができる。
実施の形態2
実施の形態1では、位置履歴を解析することにより滞在場所や移動経路などの移動履歴を生成し、地図上などに図形で表示することにより移動履歴を可視化した。ことのき、表示する地図の縮尺の変化に応じて、異なる速度しきい値で抽出した滞在区間と移動区間の分類パターンへ切り替えることにより、縮尺に応じてシームレスに滞在場所の抽象度を切り替えた。本実施の形態は、滞在場所と経路を地図上に図形表示する点が実施の形態1と共通するが、滞在場所を階層化し、表示する階層によって地図の縮尺および表示領域を切り替える。本実施の形態の情報処理装置は、実施の形態1で図2を参照して説明したのと同様の構成で実現できるが、行動情報生成部16の構成が実施の形態1と異なる。以後、実施の形態1と共通する部分は適宜図示および説明を省略する。
図17は本実施の形態における行動情報生成部16の構成を詳細に示している。行動情報生成部16は、移動履歴の滞在場所に基づき樹状図を生成する樹状図生成部140、同時に表示する滞在場所に基づき表示する地図の縮尺および表示領域を決定する画面構成決定部142、表示する縮尺および領域に応じた表示画像のデータを生成する表示画像生成部144、生成した表示画像のデータを記憶する表示画像記憶部148、ユーザからの指示に応じて表示する画像を切り替える表示画像切り替え部146を含む。
樹状図生成部140は、ユーザが指示入力受付部12を介して指定した移動履歴を移動履歴記憶部24より読み出し、滞在場所とその位置、時間の長さ、時刻に基づき階層的クラスタリングを行い樹状図(デンドログラム)を生成することにより、滞在場所を階層化する。そのためにはあらかじめ、一つの画面に表示する最大の滞在場所数、すなわちクラスタ数をN個と定めておく。そして距離が近いN個のクラスタをマージし、上位のクラスタとする。ここでクラスタの距離とは、位置履歴に記録された位置座標のうち各クラスタに含まれる位置座標の分布の重心同士の距離、または分布を図形で近似した際の輪郭の距離または時間距離などである。これを繰り返すことにより樹状図が完成する。ここで生成するクラスタは、地図を表示したときに滞在場所として図形表示する。
画面構成決定部142は、樹状図生成部140が生成した樹状図を、最上層から最下層までの全ての経路について降下探索していき、同時に表示するクラスタの数がN個となるような階層を決定していくことにより、必要な画面構成を決定する。このとき、どの階層の画像においてもN個のクラスタが画面に収まるように、画像の縮尺率と表示領域を決定する。表示画像生成部144は、画面構成決定部142が決定した縮尺および表示領域の地図と、そこに表示するクラスタを表す図形とからなる表示画像のデータを生成し、表示画像記憶部148に格納する。上位の階層ほど滞在場所がまとめられているため、地図も広域に渡る表示となる。
表示画像切り替え部146はまず初期画像のデータを表示画像記憶部148から読み出しを出力部18に供給する。例えば最上位の階層、すなわち最も広域の地図を初期画像とするなど、初期画像に用いる画像の階層をあらかじめ決定しおく。そしてユーザが指示入力受付部12を介して、表示されたクラスタのいずれかを選択する入力を行うと、選択されたクラスタにまとめられていた一つ下の層のクラスタを一度に表示する画像へ表示を切り替える。
図18は樹状図と表示画像の関係を説明する図である。以後の説明では、複数の滞在場所をまとめたクラスタも広義の滞在場所とする。樹状図150は、滞在場所A、B、C、D、E、F、Gの7つの滞在場所を含む移動履歴に基づき、1画面に表示する滞在場所が3個となるように生成されたものである。このような樹状図に対し、滞在場所CおよびDをまとめて滞在場所A’とする。 また滞在場所A’と滞在場所AおよびBをまとめて滞在場所A”とする。また滞在場所Fと滞在場所Gをまとめて滞在場所B”とする。
そして最も広域の地図である第1画像には、実線で示されるように、滞在場所A”、滞在場所E、滞在場所B”の3つの滞在場所が表示される。ここで滞在場所A”が選択されると、点線で示されるように、滞在場所A、B、および滞在場所A’が表示される。さらに滞在場所A’が選択されると、一点鎖線で示されるように、滞在場所CおよびDが表示される。滞在場所B”が選択されると、2点鎖線で示されるように、滞在場所FおよびGが表示される。従って、滞在場所A〜Gにそれぞれ対応する7つの画像と、それより縮尺が小さく、それぞれ3つの滞在場所が表示できる4つの画像をあらかじめ生成しておけば、必要な縮尺および表示領域を全て網羅することができる。
次に、これまで述べた構成による動作を説明する。図19は移動履歴を表示するための表示画像の生成および表示時の処理手順を示すフローチャートである。まずユーザが指示入力受付部12を介して移動履歴のファイル指定とともに移動履歴の表示を指示する入力を行うと(S40)、樹状図生成部140は移動履歴記憶部24から移動履歴のファイルを読み出し(S42)、それに記録された滞在場所の位置関係などに基づき階層的クラスタリングを行い樹状図を生成する(S44)。
すると画面構成決定部142は樹状図を最上層から下位層へ探索していき、1つの画像に表示される滞在場所が最大N個となるように、必要な画像と階層の関係を決定するとともに、各画像における滞在場所全てが、画像中心から所定割合の面積に収まるように各画像の縮尺率を決定する(S46)。なお最下層の画像は滞在場所を1つだけ表示するため、対応する滞在区間に含まれ位置履歴に記録された位置座標の分布や、それを近似した図形が、画像中心から所定割合の面積に収まるように各画像の縮尺率を決定する。表示画像生成部144はその情報を取得し、各階層に対応する画像のデータを生成して表示画像記憶部148に格納する(S48)。このとき、用いる地図のデータはネットワークを介してダウンロードしてもよい。
表示画像切り替え部146は、最初に表示する最上層の画像データを表示画像記憶部148から読み出し表示する(S50)。S48において最上層の画像データから生成するようにしておけば、表示画像生成部144が後続の画像データをバックグラウンドで生成しているうちに、表示画像切り替え部146がS50の表示を開始することができる。ユーザから表示終了の指示がなく、表示画像に含まれる滞在場所の図形のいずれかを選択する指示入力がなされたら(S52のN、S54のY)、表示画像切り替え部146は当該選択された滞在場所の下位層の画像へ表示を切り替える(S56、S50)。
滞在場所の選択入力がなされないうちは同じ画像の表示を継続する(S54のN、S50)。ユーザから表示終了の指示入力がなされるまでS50からS56の処理を繰り返す(S52のN、S54、S56、S50)。表示終了の指示がなされたら処理を終了する(S52のY)。なお最上層以外の画像が表示されている状態では、S54において一つ上の層へ画像を戻す指示も受け付ける。このため、例えば画像上に樹状図や階層を把握できる図を表示させ、上の層を選択する入力ができるようにしてもよいし、あらかじめ指示入力受付部12のボタン(不図示)などにそのような機能を割り付けておいてもよい。
地図表示を伴うアプリケーションにおいて、ユーザによる地図の縮尺変更や表示領域の平行移動を可能とした場合、一般的には縮尺を変更する操作と表示領域を移動する操作は独立している。そのためユーザは、所望の領域を所望の縮尺率で見たいとき、画面を見ながら両者を調整していく必要がある。そのため、地図の縮尺を上げていったら意図していたのと異なる領域が表示されてしまったり、所望の領域を見失ったり、といったことが日常的に起こり得る。
また、ネットワークに接続して地図の画像データをダウンロードするような態様では特に、ユーザのそのような細かい調整のたびに、新たな画像を表示するための様々な処理が必要となり、操作してから新たな画像が表示されるまでに時間がかかる。装置の処理性能やネットワーク回線の状態によっては、この時間は看過できない程度になり、ユーザにとってはストレスとなり得る。
本実施の形態では上述のとおり、移動履歴の滞在場所に着目し、その数と位置関係とに基づき分類し階層化することにより、滞在場所がバランスよく表示される表示領域と縮尺をあらかじめ決定する。そしてある滞在場所を選択すると、下層の画像が表示されるようにすることで、ユーザが望む縮尺および表示領域へ表示を直接切り替えることができる。またあらかじめ表示画像が定まっているため、画像データのダウンロードなどを先に行っておき切り替え処理と独立して表示画像を生成しておくことにより、表示の切り替えに要する処理が少なくてすみ、ユーザの操作と表示との間にタイムラグが発生しにくい。
図20から図22は、実際に表示する画像の例を示している。この例は、1回の旅行における移動履歴を表示しており、速度しきい値を25km/hとして滞在/移動区間を分類している。この分類によって、徒歩以下の速度のときを滞在、それより速いときを車などによる移動、ととらえることができる。そして上述のように、1画面に表示する滞在場所の最大数を3とし、1画面において表示する滞在場所が地図の中央から75%の面積に収まるように地図の縮尺率を決定している。
図20の階層化移動履歴表示画像150aは最上層の画像であり、地図152上に、滞在場所を表す2重円図形154a、移動経路を表す2重線図形156を表している。表示手法は実施の形態1で述べたのと同様である。階層化移動履歴表示画像150aはさらに、樹状図表示欄158aを含む。樹状図表示欄158aには、滞在場所を階層的クラスタリングにより分類した結果の樹状図が示される。樹状図の各リーフノードは移動履歴に含まれる最小単位の滞在場所に対応するため、各場所に滞在した日時と時間など滞在に係る情報を移動履歴から読み出し表示する。
図20の階層化移動履歴表示画像150aに対応する階層は、樹状図表示欄158aの樹状図の線を太線とすることで明確にする。あるいは線の色を変化させてもよい。同図においては、リーフノードに示した場所の番号で[0]、[1]、[2]、[3]の滞在場所をまとめたクラスタ、[6]の滞在場所、[4]と[5]の滞在場所をまとめたクラスタ、を3つの滞在場所として示している。階層化移動履歴表示画像150aではさらに、指示入力受付部12によってユーザが動かすことのできるキャラクタ160aを表示する。当該キャラクタは、滞在場所の選択などに用いる。
図20の状態ではキャラクタ160aは2重円図形154aの滞在場所にいるが、この滞在場所が樹状図のどの階層に対応しているかを、樹状図表示欄158aの太線のうち最も太い線で表す。この例では、現在、[0]、[1]、[2]、[3]の滞在場所をまとめたクラスタを選択中であることがわかる。さらに選択中の滞在場所の近傍には、1つ下の層のクラスタ数を表す図形を表示する。図20の例では、小さい2重円162aを3つ表示することで下層のクラスタの数が3つであることを表している。これは[1]の滞在場所、[3]の滞在場所、および[0]と[2]をまとめたクラスタに対応する。
この状態でユーザが選択を決定する指示を入力すると、図21に示す画像が表示される。図21の階層化移動履歴表示画像150bで示される地図は、図20において選択された滞在場所の近傍を表しており、上述のように、選択された滞在場所の下層のクラスタが画像全体の75%の領域に収まるような縮尺率を有する。階層化移動履歴表示画像150bの表示手法は図20の階層化移動履歴表示画像150aと同様であるが、滞在場所として[1]の滞在場所、[3]の滞在場所、および[0]と[2]をまとめたクラスタが表示されている。そのため、樹状図表示欄158bの対応する階層が太線で示されている。
表示中の滞在場所のうち、現在キャラクタ160bがいる2重円図形154bの滞在場所は、複数の滞在場所をまとめたクラスタではなく最小単位の滞在場所にあたるため、その下の層には1つのクラスタのみが存在することが小さい2重円162bの個数で表されている。また樹状図表示欄158bでは、対応する滞在場所の情報が太線で表され下線が施されている。この状態でユーザが選択を決定する指示を入力すると、図22に示す画像が表示される。
図22の階層化移動履歴表示画像150cは、図21において選択された滞在場所の近傍の地図を表示している。当該画像は最小単位の滞在場所を1つ含む画像であるため、上述したように表示される地図は、滞在場所に対応する滞在区間に含まれ、位置履歴に記録された位置座標の分布が75%の領域に収まるような縮尺率を有する。表示手法は図20、21と同様であるが、最小単位の滞在場所であるため1重円図形164で滞在場所を表示している。また樹状図表示欄158cでは対応する滞在場所の情報が太線で表され下線が施されている。
本実施の形態は上述のとおり、上位の階層の画像に含まれる滞在場所の一つを選択すると、選択された滞在場所の下層の滞在場所が所定の範囲に入る表示領域と縮尺率を有する地図が表示されるようにする。このとき表示する地図に対する視点の方向は、真上以外に斜めでもよくユーザまたはシステムで自由に設定してよい。したがって樹状図を生成することにより、必要な地図のデータを具体的に決定することができる。表示画像切り替え部146は、そのように決定した複数の地図をそれぞれ独立に扱い、切り替えて表示するようにしてもよいが、各画像を1枚の画像として統合し、視点を切り替える、という発想で画像の切り替えを実現してもよい。
図23はその場合に生成される画像と視点の関係を説明する図である。同図において「地図4」は最上層の画像、「地図1」、「地図2」、「地図3」はその下の階層の画像である。上述のとおり、「地図4」の特定の場所の縮尺率を上げた地図が「地図1」、「地図2」、「地図3」であるため、「地図4」の中には「地図1」、「地図2」、「地図3」に対応する領域が存在する。そこで図のように、下位層の地図である「地図1」、「地図2」、「地図3」を、上位層の地図である「地図4」上の対応する領域に貼り付ける。
「地図1」、「地図2」、「地図3」は縮尺率の高い地図であるため、地図4の対応する領域より詳細な情報が記載されている。したがって、部分的に詳細な箇所がある1枚の地図ができる。このようにして生成された地図に対し、視点170を設定する。そして初期画像として表示する最上層の画像「地図4」全体が視野と重なる視点を、画像平面であるx座標、y座標と、視点の高さであるz座標で定義する。同様に「地図1」、「地図2」、「地図3」についても、全体が視野と重なる視点をそれぞれ定義しておく。「地図1」、「地図2」、「地図3」を表示する視点のz座標は、「地図4」を表示する視点のz座標より小さくなる。
1枚の画像データと、各地図に対応する視点の座標は、表示画像記憶部148に格納しておく。表示画像切り替え部146は、1枚の画像に対する視点の変化として画像の切り替えを行う。そして視点の移動が完了したら、対応する滞在場所などの図形を重ねて表示するようにする。視点を定義することによって表示画像を決定する手法は、コンピュータグラフィックスなどの分野で一般的に用いられる技術を適用できる。このように視点の移動で画像を切り替えると、例えば上位の画像で滞在場所を選択したとき、そこにズームアップしていくように表現することができ、シームレスで自然な切り替えが可能になる。
以上述べた本実施の形態によれば、地図上に滞在場所や移動経路を表示する態様において、最小単位の滞在場所を階層的クラスタリングによって分類し樹状図を生成する。そしてあらかじめ定めた、1つの画像に表示するクラスタの数とその位置に基づき表示する地図の縮尺および表示領域を決定し、表示する画像データをあらかじめ生成しておく。そして、ある画像表示時に滞在場所の一つが選択されると、当該滞在場所にまとめられていた下層の滞在場所を含み、その表示に適した縮尺の画像へ表示を切り替えるようにする。このようにすることでユーザは、所望の縮尺率、所望の表示領域へ表示を容易に移行させることができる。また、表示画像のデータをあらかじめ決めておくことができるため、縮尺率や表示領域を変化させるたびに画像データをダウンロードするなどの処理が必要なくなり、応答性のよい表示を行える。
さらに、下層の画像で表示する地図を上層の画像で表示する地図の上に貼り付けた1枚の画像のデータを生成しておき、画像を切り替える際は、当該1枚の画像に対する視点を移動させるようにする。これにより、表示画像の縮尺を変化させる場合であっても、必要最低限の画像データでシームレスな画像遷移が可能となる。
実施の形態3
実施の形態1および2では、位置履歴から移動履歴を導出し、地図上などに図形で表示することにより移動履歴を可視化した。本実施の形態では、旅行などにおいて撮影した複数の写真から選択した写真を、自動で切り替えて順次表示するスライドショー、またはエフェクトやBGMを付けて再生する動画などにおいて、表示する写真を移動履歴の情報を利用して選択する。選択した写真は、移動履歴に即しているため、移動履歴の画像表示とともに表示することも可能になる。本実施の形態の情報処理装置は、実施の形態1で図2を参照して説明したのと同様の構成で実現できるが、行動情報生成部16の構成が実施の形態1および2と異なる。以後、実施の形態1および2と共通する部分は適宜図示および説明を省略する。
図24は本実施の形態における行動情報生成部16の構成を詳細に示している。行動情報生成部16は、ユーザが指定した写真の画像データを取得する画像データ取得部210、ユーザが撮影した写真の画像データを記憶した画像データ記憶部212、ユーザが指定した移動履歴から写真の枚数を決定する表示枚数決定部214、決定した枚数の写真を選択しデータを抽出する画像選択部216、写真や移動履歴などを含む表示画像のデータを生成する表示画像生成部218を含む。
画像データ取得部210は、ユーザが指示入力受付部12を介してファイル指定した一連の写真のデータを、画像データ記憶部212から読み出す。画像データ取得部210はさらに、必要に応じて情報提供サーバ8から画像データを取得する。表示枚数決定部214は、ユーザが指示入力受付部12を介して指定した、写真データに対応した移動履歴または写真の付加情報として提供される位置情報を移動履歴記憶部24から読み出す。そして移動履歴のうち開始から終了までの時間軸における滞在区間と移動区間を考慮し、各滞在区間、移動区間に対して表示する写真枚数を決定する。
枚数の決定には、滞在/移動の重要度、各区間の時間割合、各区間において撮影された写真の枚数を考慮する。そのため表示枚数決定部214は、画像データ取得部210から、写真のデータの付加情報のうち、各写真の撮影時刻を取得する。そして移動履歴における各区間の開始時刻、終了時刻と、写真の撮影時刻とから、各区間に撮影された写真の枚数を導出する。そのようなパラメータを用いて各区間に対する写真の表示枚数を決定する具体的な手法は後に述べる。
画像選択部216は、画像データ取得部210が取得した複数の写真を時系列順に並べ、表示枚数決定部214の決定に従い各区間に撮影された写真の中から表示する写真を選択する。このとき写真の内容を考慮して選択する。例えば人物写真と風景写真のバランスや、写真のデータに付加された撮影状況などの情報を考慮する。表示画像生成部218は、選択された写真のデータを画像選択部216から取得し、枠をつけたりクロスフェードなどのエフェクトをかけたうえ、出力部18へ写真の画像を順番に出力する。これにより出力部18である表示画面には、選択されたコンテンツを基に構成される動画表示が実現できる。
なお表示画像生成部218は、選択された写真のみを順次表示していくばかりでなく、後に例示するように移動履歴とともに表示するようにしてもよい。すなわち本実施の形態では移動履歴の区間ごとに写真を選択しているため、移動履歴の滞在場所や移動経路との対応が取れている。したがってその対応関係を利用してスライドショーと移動履歴が同時に表示されるような態様を容易に実現できる。
次に表示枚数決定部214が、表示する写真の枚数を決定する手法を説明する。図25は移動履歴における時間軸上の各区間に対し、表示する写真の枚数を決定する手法を説明する図である。同図は横方向が時間軸であり、n番目の滞在区間「滞在(n)」、n番目の移動区間「移動(n)」、n+1番目の滞在区間「滞在(n+1)」、n+1番目の移動区間「移動(n+1)」、・・・というように滞在区間と移動区間が交互に並ぶ。一方、画像データ記憶部212には、複数の撮影写真220の画像データが撮影された順番などでまとめて格納されている。
そこで写真を撮影時刻によって移動履歴の各区間に分類することにより、写真の内容からは判断しづらい、人の行動と写真との関連付けを行う。そして各区間から表示する写真を選択することにより、総表示時間を限定しても、ある滞在場所の写真から唐突に別の滞在場所の写真へ表示が移行したりすることなく、時間的連続性を保ったスライドショーが実現できる。
まず、あらかじめ定めたスライドショーの総表示時間と1枚当たりの表示時間とから、全表示枚数N_allを決定する。一方、移動区間と滞在区間において表示する枚数の割合l_move,l_stayもあらかじめ定めておく。ここでl_move+l_stay=1である。移動履歴の総時間に対する各区間の時間の割合T(n)と、撮影された全写真枚数に対する各区間に撮影された写真の枚数の割合S(n)を、移動履歴および写真のデータからそれぞれ導出する。これらのパラメータを用いて、n番目の移動区間において表示する写真の枚数N_move(n)、およびn番目の滞在区間において表示する写真の枚数N_stay(n)を以下のように決定する。
N_move(n)=N_all×l_move×α×T(n)×β×(m+S(n))
N_stay(n)=N_all×l_stay×α×T(n)×β×(m+S(n))
ここでαおよびβはそれぞれ、パラメータT(n)およびS(n)の反映係数であり、相対的に変化させることによって、各区間の時間の割合または各区間に撮影された写真枚数のいずれを優先させて表示枚数を決定するかを調節することができる。またmは、撮影された写真の枚数S(n)が0であったときでも表示枚数を0としないための定数である。表示枚数は自然数であるため、端数が出た場合は例えば最も撮影枚数の多かった区間の表示枚数を1枚増やし、その他の区間は切り捨てる。
次に画像選択部216が、表示する写真を選択する手法を説明する。図26は移動履歴におけるある区間に撮影された写真の中から所定枚数の写真を選択する手法を説明する図である。同図は横方向が時間軸であり、ある区間、すなわち移動区間「移動(n)」または滞在区間「滞在(n)」のみを示している。下段がこの区間で撮影された写真の並びであり、その枚数は上式のS(n)に相当する。そして上段がそこから選択された写真の並びであり、その枚数は表示枚数決定部214が決定した、N_move(n)またはN_stay(n)である。
このとき、例えば1枚おきなど写真の並びに基づく所定の規則で選択したり、乱数を発生させてランダムに選択したりすることが考えられるが、写真の内容を考慮せずに選択することによって、ユーザがあまり望まない傾向の写真ばかりが選択されてしまうこともあり得る。またスライドショーの性質上、旅行などのイベントの要所を捉えた内容の写真がバランスよく選択されることが望ましい。そこで本実施の形態では、人物が写っている写真とそれ以外の写真とをあらかじめ分類することにより、例えば人物写真と風景写真がバランスよく表示されるようにする。
そのためにまず、図26下段の撮影された写真に対し、顔認識技術を用いて顔検出を行う。そして顔が検出された写真を人物写真、それ以外を非人物写真として分類する。旅行などで撮影した写真であれば、非人物写真は風景写真であることが多い。一方、全表示写真のうち人物写真の枚数の割合H(0≦H≦1)の値をあらかじめ定めておく。この値は、情報処理装置10において固定としてもよいし、ユーザが調整できるようにしてもよい。すると各区間における人物写真の表示枚数Va(n)と非人物写真の表示枚数Vb(n)は次のように求められる。
Va(n)=H×(N_move(n)またはN_stay(n))
Vb(n)=(1−H)×(N_move(n)またはN_stay(n))
なお端数は1枚分としてどちらかに割り当ててもよいし切り捨ててもよい。画像選択部216は最終的な枚数がVa(n)、Vb(n)となるように、人物写真、非人物写真を選択していく。それには、人物写真、非人物写真のそれぞれに対し次のような処理を施す。まず、撮影された写真の並びのうち、時間的に最も近い2枚の写真をピックアップして比較し、美麗写真判定によってそのどちらかを選択候補から除く。他に同じ近さの2枚の写真があればそれらも比較してどちらかを選択候補から除く。残った写真の中でさらに時間的に最も近い2枚の写真をピックアップしてそのどちらかを選択候補から除く。
このような処理を、最終的な表示枚数Va(n)またはVb(n)の写真が残るまで繰り返す。時間的に近い写真は構図が似ている可能性が高いため、このように選択候補を除いていくことにより、似た構図の写真が重複して選択されるのを防止できるほか、時間的にまんべんなく選択することができる。
ここで美麗写真判定とは、あらかじめ定めた指標で写真の内容に優劣をつけるものであり、複数の指標を用いる場合は、例えばそれぞれの指標について所定の規則で点数をつけ合計得点を算出して比較する。例えば人物写真の場合、人物写真を抽出するための顔認識の結果を用い、画面に占める正面を向いた顔の合計面積の割合が多いほど高得点とする。また正面を向いた顔の個数、すなわち人数を組み合わせると、人数が多くそれぞれの顔が大きく写っている写真や、顔の合計面積が同じ場合に人が少ない写真を高得点とするなどの調整が可能となる。また、顔認識の結果得られる、人種、性別、年齢などの属性を基に、できるだけ多くの人が偏りなく登場するようにしてもよい。
このような顔認識結果を用いるほか、EV(Exposure Value)値、シャッター速度、画角など、各写真のデータに付与されている付加情報を利用してもよい。例えばシャッター速度の速い写真を高得点とすることでぶれていない写真を選択しやすくすることができ、非人物写真では広角の写真を高得点とすることで風景写真を選択しやすくできる。このように人物写真と非人物写真で得点をつける規則を異ならせてもよい。
また、撮影された非人物写真の枚数が、非人物写真の表示枚数Vb(n)に満たない場合、画像選択部216はその旨を画像データ取得部210に通知し、画像データ取得部210は情報提供サーバ8から、無料または有料で提供されている写真を所定の手続きによってダウンロードしてもよい。または、オフラインで保持するコンテンツ集などから読み出してもよい。このとき画像データ取得部210は、移動履歴および位置履歴を参照し、写真が足りない区間に含まれる位置座標の緯度、経度などを指定することによって、当該区間の写真としてふさわしいものを取得することが望ましい。
このため情報提供サーバ8は、緯度、経度など位置に対して写真が分類されているデータベースを有することが望ましい。ただし緯度、経度など詳細な設定でなくとも、移動履歴の各区間に対応づけた地名や施設名などに基づき、ネットワーク上で写真を検索して取得しても、同様の効果が得られる。撮影した人物写真の枚数が人物写真の表示枚数Va(n)に満たないときも、情報提供サーバ8から取得した写真で補填するようにしてもよい。
次にこれまで述べた構成による動作を説明する。図27は移動履歴の情報を伴う写真でスライドショーを実施する処理手順を示している。まずユーザが移動履歴とその移動において撮影した写真のデータを指定しスライドショーを開始する指示入力を指示入力受付部12を介して行うと(S60)、画像データ取得部210と表示枚数決定部214はそれぞれ、画像データ記憶部212および移動履歴記憶部24から、指定された写真のデータと移動履歴を読み出す(S62)。そして表示枚数決定部214は、移動履歴に含まれる滞在、移動の区間ごとに写真の表示枚数を上述のように決定する(S64)。
次に画像選択部216は、画像データ取得部210から処理対象の写真のデータを取得したあと、全ての写真に対して顔認識処理を施し、人物写真と非人物写真とに分類する(S66)。そして区間ごとに、人物写真と非人物写真の枚数の比が所定の値となるように、各分類から写真を選択する(S68)。もし撮影した写真がその区間の表示枚数に達していなかったら(S70のN)、画像選択部216が画像データ取得部210にその旨を通知することにより、画像データ取得部210は、その区間の位置情報に基づき情報提供サーバ8から不足する枚数の写真をダウンロードする(S72)。
表示する写真が揃ったら(S70のYまたはS72)、表示画像生成部218は、撮影時刻の順で写真を切り替える画像を生成し、出力部18に出力することでスライドショーが表示される(S74)。なお同一区間内では演出上、撮影時刻の順とは異なる順序で写真を表示してもよい。例えば人物写真、風景写真を交互に表示するように順序を入れ替えてもよい。
次に表示画像生成部218が生成する表示画像の例を示す。この例では実施の形態2で説明した移動履歴の地図表示を利用し、履歴を踏襲して地図上を移動するキャラクタと同期させて、選択した写真をスライドショーの形式で表示させることにより、臨場感のある表現を実現する。上述のとおり、本実施の形態では移動履歴の各区間に対応させて写真を選択しているため、このように移動履歴と併せてスライドショーを展開することが容易にできる。ただし本実施の形態をこれに限る趣旨ではなく、選択した写真のみを所定時間で切り替えて表示するなどでもよい。また地図以外にイラストや航空写真など地表を表す図形であれば地図でなくてもよい。
図28〜30は移動履歴とスライドショーを同期させて表示する形態において表示される画像の例を示している。なお実際は連続した動きで表現されるが、同図ではそのうちの数フレームを抽出して示している。また用いた移動履歴は実施の形態2の図20〜22で例示したものと同じである。すなわち1回または複数回の旅行において各地で撮影した写真から上述のように選択した写真をスライドショーで表示する。まず図28上段の移動履歴表示画像230は、実施の形態2で説明したのと同様、地図232上に移動経路を表す図形236と滞在場所を表す図形238を表示している。またキャラクタ234も表示されているが、実施の形態2と異なり、キャラクタ234は移動履歴に基づき移動する。
キャラクタ234のアニメーション表示は既存の技術を用いることができる。図28上段の移動履歴表示画像230は、キャラクタ234が移動経路を通り図形238が表す滞在場所へ到着した時点の表示画像である。移動履歴の時間軸で考えると、キャラクタ234は移動履歴の最初の移動区間のデータに従い地図上を移動し、最初の滞在区間へ到達したことになる。このようにキャラクタ234が、ある滞在場所に到着したら、同図下段のような滞在期間写真表示画像240に表示を切り替える。
滞在期間写真表示画像240は、主領域244に写真を表示し、それより面積の小さい副領域242にキャラクタの現在地である当該滞在場所の地図を示す。この地図の画像は、実施の形態2における最下層の画像に対応する。主領域244においては、対応する滞在区間に対して選択された写真を、所定時間ごとに切り替えて表示する。これにより滞在場所と写真との対応が明確に把握できる。
選択された写真を全て表示したら、図29上段のような移動期間写真表示画像250に表示を切り替える。移動期間写真表示画像250は、主領域252に移動履歴を表した地図を表示し、副領域254に写真を表示する。主領域252の地図上にはキャラクタ256も表示する。移動履歴の時間軸では、キャラクタ256は前の滞在区間を出て到達した移動区間のデータに従い地図上を移動する。副領域254では、そのキャラクタの動きに同期させ、当該移動区間に対して選択された写真を、所定時間ごとに切り替えて表示する。なおキャラクタ256が移動する速度を、移動区間の道のりの長さと写真1枚当たりの表示時間から決定することにより、各移動区間の移動と写真の表示が同時に終わるようにする。
移動期間写真表示画像250で主領域252に表示している地図は、キャラクタ256が滞在場所から出た直後は、実施の形態2における最下層の画像である。キャラクタ256が移動履歴のデータに従い当該滞在場所から離れていったら、実施の形態2における一つ上の層の地図に表示を切り替える。このような制御をするため、滞在場所から離れる方向にキャラクタ256が移動した場合の縮小方向画像切り替え境界258をあらかじめ定めておく。
縮小方向画像切り替え境界258は実際には表示しないが、同図に示すとおりキャラクタ256が画面からはずれる前の位置に設定しておくことにより、連続性を保持して画像の縮尺および表示領域を適切に切り替えることができる。そのようにして切り替えた画像が図29下段の動期間写真表示画像260である。このときも主領域262には移動履歴を表した地図を表示し、副領域264に写真を表示する。
主領域に表示する地図は上段の移動期間写真表示画像250で表示した地図より上層の地図である。そのような階層がわかるように、実施の形態2で表したのと同様の樹状図269をさらに表示してもよい。移動期間写真表示画像250と同様に、時間経過とともにキャラクタ266は移動経路上を移動し、それに伴い副領域264の写真も切り替えて表示する。このようにすることで、キャラクタ266が移動している経路の風景などが臨場感をもって表示される。撮影した写真が足りなくても、情報提供サーバ8から取得した当該場所の風景写真などを表示を含めることにより、違和感のない表現が可能となる。
そしてキャラクタ266が次の滞在場所に近づいたら、当該滞在場所に対応する最下層の地図へ表示を切り替える。このような制御をするため、滞在場所へ近づく方向にキャラクタ266が移動した場合の拡大方向画像切り替え境界268をあらかじめ定めておく。拡大方向画像切り替え境界268も実際には表示しない。キャラクタ266が当該境界を越えたら、実施の形態2で説明した下の層の画像へ表示を切り替えることにより、連続性を保ちながら適切な縮尺率と表示領域の画像を容易に表示できる。
そのようにして切り替えた画像が図30上段の移動期間写真表示画像270である。このときも主領域272には移動履歴を表した地図を表示し、副領域274に写真を表示する。この画像でキャラクタ276が滞在場所に入ったときに、移動履歴における1つの移動区間が終了する。この時点で、当該移動区間に対して選択した写真は全て表示されている。そして図30下段の滞在期間写真表示画面280が表示される。図28下段の滞在期間写真表示画像240と同様、滞在期間写真表示画面280も主領域282に写真を表示し、副領域284に滞在場所の地図を示す。そして主領域282において、対応する滞在区間に対して選択された写真を、所定時間ごとに切り替えて表示する。
このような処理を、移動履歴の全ての移動区間、滞在区間で繰り返すことにより、地図上の場所を指し示すキャラクタの動きに同期したスライドショーが実現できる。これにより、旅行のように時間幅を持ったイベントの滞在、移動、といった個々の行為に沿って、バランスよく写真を表示していくことができる。
ただし旅行のようなイベントでは、帰路において写真を撮影する頻度が減ることが往々にしてあり得る。このような場合、スライドショーの終わりに近づくにつれ表示内容が貧弱になってしまうことが考えられる。そこで、キャラクタが全行程の移動を終えたら、全ての行程を総括するように、所定枚数の写真を用いてさらにスライドショーを表示してもよい。このとき表示する写真は、本編でキャラクタとともに表示する写真とは別に選択してもよい。
ただし選択のためのアルゴリズムは同じでよく、例えば前述の全表示枚数N_allを少なく設定するのみで、総括用の写真をバランスよく選択できる。一方、顔検出結果を利用し、顔の写っていない写真、顔が1つ写っている写真、顔が2つ写っている写真、・・・というように分類して、美麗写真判定によりそれぞれの分類から所定枚数の写真を選択するなど、総括に適した条件で選択するようにしてもよい。また、選択条件はユーザが調節できるようにしてもよい。例えば上述のように顔の数で分類していく場合、選択対象となる写真の顔の最大数を家族の人数にすることにより、家族以外の人が多く写っている写真を総括から除外し、まとまりのあるスライドショーが実現できる。
なお上述の例は全て、静止画である写真を処理の対象としていたが、音声や動画など時間的な長さを有するデータにも応用が可能である。この場合、各区間において表示する写真の枚数を、動画や音声の長さに置き換える。そしてデータの最初や真ん中部分から、各区間に対して決定した長さ分のデータを抽出する。それを、地図上を移動するキャラクタとともに出力することにより、滞在、移動のそれぞれに対応した音声や動画を表現することができる。写真と動画を区間によって切り替えたり、スライドショーに音声を加えたりと、写真、音声、動画を組み合わせてもよい。また写真以外にコンピュータグラフィックスや手書きの絵をスキャナで取り込んだもの、詩やメモなどのテキストデータなどでもよい。
以上述べた本実施の形態によれば、位置履歴を記録したイベントにおいて撮影した写真の一部をスライドショーとして表示する。この際、位置履歴から導出した移動履歴における移動区間や滞在区間の時間割合、各区間で撮影した写真の枚数、移動区間と滞在区間で表示したい写真の割合、に基づき表示枚数を区間ごとに定め、写真を選択する。これにより、滞在、移動という個々の行為の実際の状況に即した写真選択が行える。
また写真の選択には、顔認識技術を導入し、人物写真か非人物写真かを分類するのみならず、顔領域が写っている面積割合や人数なども導出し、選択する際の基準とする。また人物写真と非人物写真の枚数の比をあらかじめ定めておくことにより、バリエーションに富んだ写真を選択できる。写真を選択する際の基準には、写真の付加情報も用い、様々な角度から評価することにより、表示するのに望ましい写真の予測精度を向上させる。これらのことから、総表示時間が限定的であっても、偏りや抜けなどが少なく、旅行などのイベントにおける各状況を忠実に反映したスライドショーの表示が可能となる。
また移動履歴に基づき写真選択を行っているため、移動履歴の情報と関連付けることが容易である。このことを利用して、地図上を移動履歴の通りに移動するキャラクタの動きと表示する写真の同期をとった表現手法も実現できる。このように地図の表示領域の移動と表示写真の切り替えを適切なタイミングで同時に制御することにより、単なるスライドショーに収まらない、臨場感のある新規な表現が実現できる。
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば上述の実施の形態において位置履歴は、所定の時間間隔で位置座標を記録したデータとしたが、時刻と位置とを対応づけた情報であれば、時間間隔は一定でなくてもよい。例えばカメラ、ビデオカメラ、ボイスレコーダ、PDA(Personal Digital Assistants)などの携帯端末などで各種データを記録したときに付加情報として記録される記録時間と記録位置の情報を用いても、同様に移動履歴を取得することができる。
また実施の形態3では、コンテンツを選択する時間区分として、位置座標の時間変化から得られる速度に基づき、時間を滞在区間、移動区間に区分けしたが、時間を区分けできれば利用するデータは限定されない。例えば脈拍計を備えた携帯機器を保持しつつコンテンツを取得し、脈拍の時間変化を基に、脈拍が所定のしきい値を超えた時間、しきい値以下の時間、で時間を区分けするなどでもよい。