説明

画像生成システム、プログラム及び情報記憶媒体

【課題】 ナビゲーション用キャラクタを用いた直感的な手法でユーザを目的地に誘導することができる画像生成システム、プログラム及び情報記憶媒体等の提供。
【解決手段】 画像生成システムは、ウェアラブルセンサのセンサ情報を取得するセンサ情報取得部110と、センサ情報に基づいてユーザの位置情報を特定するユーザ情報特定部120と、ナビゲーション用のキャラクタを目的地に移動させるキャラクタ制御部170と、ユーザの位置情報に基づいてキャラクタとユーザの仮想マップ上での位置関係情報を特定する位置関係情報特定部160と、ナビゲーション画像を表示画像として生成する画像生成部180とを含み、キャラクタ制御部170は位置関係情報に基づいてキャラクタを制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像生成システム、プログラム及び情報記憶媒体等に関する。
【背景技術】
【0002】
近年、携帯電話やPDA等の携帯電子機器を用いて、タウン情報・マップ情報を提供するサービスが展開されている。具体的には例えば、ナビゲーションサービスや、店舗情報提供サービス等が挙げられる。ナビゲーションサービスにおいては、ユーザの現在位置をGPS等の手段を用いて取得した上で、地図上にユーザ位置・目的地の位置・目的地までの経路情報等を表示することで、ユーザを目的地に案内する。
【0003】
しかし、このようなシステムにおいては、ユーザの視点(視線方向)が頻繁に上下してしまうという問題がある。つまり、歩行中(ここでは歩行者向けサービスを想定している)は進行方向に視線を向けていることが安全上好ましい。それに対して、ナビゲーションサービスの画面(地図画面)を参照するためには、例えば手で把持している携帯電子機器に目を落とす必要がある。よって、ナビゲーションサービスを利用しつつ歩行をすることは、安全上問題があり、ユーザも煩わしさを感じてしまう。さらに、地図を読むのが苦手なユーザもおり、地図のみによるナビゲーションは場合によってはわかりにくいという問題があった。
【0004】
また、ユーザの視点を変えずに情報を提供する手法として、HMD(ヘッドマウントディスプレイ・ユーザの頭部に装着して用いる画像表示装置)を用いてユーザの視界内に表示画面を重畳する手法がある。特許文献1では、ユーザの頭部の動きに応じて、HMDにおいて表示される画像を制御する手法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平10−341387号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
携帯電子機器を用いたナビゲーションサービスでは、視点を頻繁に変更する必要がある上、地図画面によるナビゲーションは直感的でなく、場合によってはわかりにくいという問題がある。また、特許文献1の手法のようにHMDを用いることで、視点が頻繁に変更されるという問題は解決されうるが、特許文献1ではナビゲーションサービスに関する技術は記載されていない。
【0007】
本発明の幾つかの態様によれば、ナビゲーション用のキャラクタを用いた直感的な手法でユーザを目的地に誘導することができる画像生成システム、プログラム及び情報記憶媒体等を提供できる。
【課題を解決するための手段】
【0008】
本発明の一態様は、ユーザのウェアラブルセンサからのセンサ情報を取得するセンサ情報取得部と、前記センサ情報に基づいて、仮想マップ上での前記ユーザの位置情報を特定するユーザ情報特定部と、前記ユーザを前記仮想マップ上の目的地に誘導するナビゲーション用のキャラクタを、前記目的地に向かって移動させる制御を行うキャラクタ制御部と、前記ユーザの前記位置情報に基づいて、前記キャラクタと前記ユーザとの前記仮想マップ上での位置関係情報を特定する位置関係情報特定部と、前記キャラクタを用いて前記ユーザを前記目的地に誘導するナビゲーション画像を、表示画像として生成する画像生成部と、を含み、前記キャラクタ制御部は、前記キャラクタと前記ユーザの前記位置関係情報に基づいて、前記キャラクタを制御する画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【0009】
本発明の一態様では、センサ情報からユーザの位置情報を特定し、仮想マップ上でのユーザとキャラクタの位置関係情報を特定する。そしてナビゲーション用のキャラクタを用いたナビゲーション画像を生成するとともに、特定した位置関係情報に基づいてキャラクタを制御する。よって、キャラクタを用いた直感的な手法でユーザを目的地に誘導することができるナビゲーションシステムを実現すること等が可能になる。
【0010】
また、本発明の一態様では、前記位置関係情報特定部は、前記ユーザの位置に対して設定される第1〜第Nの距離エリアのいずれの距離エリアに、前記キャラクタが位置するかを判断し、前記キャラクタ制御部は、前記第1〜第N(Nは2以上の整数)の距離エリアのいずれの距離エリアに前記キャラクタが位置するかに応じて、前記キャラクタを制御してもよい。
【0011】
これにより、ユーザの位置に対して複数の距離エリアを設定し、距離エリアに基づいたキャラクタ制御等が可能になる。ここで、Nは2以上の整数であり、Nが大きくなるにつれて、ユーザの位置から離れる方向の距離エリアを示すこととする。
【0012】
また、本発明の一態様では、前記キャラクタ制御部は、前記ユーザからの距離が最も遠い距離エリアである前記第Nの距離エリアに前記キャラクタが位置すると判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行ってもよい。
【0013】
これにより、ユーザとキャラクタとの距離が大きいときには、キャラクタをユーザの方に向かって移動させる制御ができるため、ユーザがキャラクタを追尾しない等の状況に対応すること等が可能になる。
【0014】
また、本発明の一態様では、前記キャラクタ制御部は、前記ユーザからの距離が前記第Nの距離エリアよりも近い距離エリアである第N−1の距離エリアに前記キャラクタが位置すると判断された場合には、前記キャラクタを前記目的地の方に向かって移動させる制御を行ってもよい。
【0015】
これにより、ユーザとキャラクタとの距離が適度に離れている場合には、キャラクタを目的地に向かって移動させることで、ユーザを目的地に誘導すること等が可能になる。
【0016】
また、本発明の一態様では、前記キャラクタ制御部は、前記ユーザからの距離が前記第N−1の距離エリアよりも近い距離エリアである第N−2の距離エリアに前記キャラクタが位置すると判断された場合には、前記第N−1の距離エリアに前記キャラクタが位置すると判断された場合よりも速い速度で、前記キャラクタを前記目的地の方に向かって移動させる制御を行ってもよい。
【0017】
これにより、ユーザとキャラクタとの距離が近すぎる場合には、キャラクタの移動速度を通常の場合よりも大きくすることで、ユーザとキャラクタの適度な距離を確保すること等が可能になる。
【0018】
また、本発明の一態様では、前記キャラクタ制御部は、前記キャラクタが前記目的地に到着した後に、前記ユーザからの距離が最も近い距離エリアである前記第1の距離エリアに前記キャラクタが位置すると判断された場合に、前記ユーザが前記目的地に到着したと判断してもよい。
【0019】
これにより、ユーザに対して設定される第1の距離エリアを用いて、ユーザが目的地に到着したか否かの判定を行うことが可能になる。
【0020】
また、本発明の一態様では、前記キャラクタ制御部は、前記センサ情報に基づき前記ユーザが移動を停止したと判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行ってもよい。
【0021】
これにより、ユーザがキャラクタを追尾しない場合には、ユーザの近くにキャラクタを移動させ、追尾を促すこと等が可能になる。
【0022】
また、本発明の一態様では、前記キャラクタ制御部は、前記センサ情報に基づき前記ユーザが前記キャラクタから離れる方向に移動したと判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行ってもよい。
【0023】
これにより、ユーザがキャラクタから離れる場合には、ユーザの近くにキャラクタを移動させ、追尾を促すこと等が可能になる。
【0024】
また、本発明の一態様では、前記ユーザ情報特定部は、前記センサ情報に基づいて、前記ユーザの方向情報を特定し、前記位置関係情報特定部は、前記方向情報に基づいて、前記キャラクタが前記ユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判断し、前記画像生成部は、前記キャラクタが前記所定の判定範囲内に位置しないと判断された場合には、前記キャラクタの存在方向を示す存在方向情報が表示される前記ナビゲーション画像を生成してもよい。
【0025】
これにより、ユーザの視野範囲に基づいて設けられた所定の判定範囲内にキャラクタが位置しなかった場合には、キャラクタの存在方向情報を表示できるため、ユーザがキャラクタを画面上でとらえること等を容易化できる。
【0026】
また、本発明の一態様では、前記画像生成部は、前記キャラクタの存在方向を示す矢印画像が前記存在方向情報として表示される前記ナビゲーション画像を生成してもよい。
【0027】
これにより、存在方向情報として、矢印画像等を表示することが可能になる。
【0028】
また、本発明の一態様では、前記画像生成部は、前記キャラクタと前記ユーザの前記位置関係情報に基づいて、前記キャラクタのサイズ及び前記キャラクタの表示位置の少なくも一方が変化する前記ナビゲーション画像を生成してもよい。
【0029】
これにより、ユーザとキャラクタとの位置関係情報に基づいて、キャラクタのサイズや表示位置を変更することができるため、ユーザとキャラクタとの位置関係を反映させた画像を生成すること等が可能になる。
【0030】
また、本発明の一態様では、前記ユーザ情報特定部は、前記センサ情報に基づいて、前記ユーザの方向情報を特定し、前記位置関係情報特定部は、前記方向情報に基づいて、前記キャラクタが前記ユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判断し、前記画像生成部は、前記キャラクタが前記所定の判定範囲内に位置すると判断された場合には、前記位置関係情報特定部により特定された位置関係に対応する画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成してもよい。
【0031】
これにより、位置関係情報により特定される位置関係に対応する画像上位置にキャラクタを表示することができるため、キャラクタが表示される画像上位置を用いてユーザにキャラクタとの位置関係を反映させること等が可能になる。
【0032】
また、本発明の一態様では、前記画像生成部は、前記仮想マップ上での前記ユーザの前記視野範囲をθ2とした場合に、前記仮想マップ上でθ2に対応する視野範囲を、θ2>θ1を満たすθ1の画角で外界視界に重畳される画像を生成してもよい。
【0033】
これにより、ナビゲーション画像の画角に比べて、仮想マップ上での視野範囲を広く設定できるため、ユーザの視線方向が変化した場合にも、ナビゲーション画像上にキャラクタを表示すること等が可能になる。
【0034】
また、本発明の一態様では、前記ユーザ情報特定部は、前記センサ情報に基づいて、前記ユーザの頭部方向又は視線方向を前記方向情報として特定し、前記画像生成部は、前記キャラクタが前記所定の判定範囲内に位置すると判断され、かつ、前記頭部方向又は前記視線方向の右側領域に前記キャラクタが位置すると判断された場合には、右側画像領域の前記画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成するとともに、前記キャラクタが前記所定の判定範囲内に位置すると判断され、かつ、前記頭部方向又は前記視線方向の左側領域に前記キャラクタが位置すると判断された場合には、左側画像領域の前記画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成してもよい。
【0035】
これにより、仮想マップ上でのユーザの頭部方向又は視線方向に対してキャラクタが右方向に位置する場合には右側画像領域にキャラクを表示し、頭部方向又は視線方向に対して左方向に位置する場合には左側画像領域にキャラクタを表示することが可能になり、ユーザが使い易いナビゲーション画像を生成できるようになる。
【0036】
また、本発明の一態様では、前記キャラクタ制御部は、ナビゲーションのスタート地点と最終目的地の間に設定された中間目的地に向かって、前記キャラクタを移動させる制御を行ってもよい。
【0037】
これにより、中間目的地を設定し、中間目的地を経由して最終目的地に到達するキャラクタの制御を行うこと等が可能になる。
【0038】
また、本発明の一態様では、前記画像生成部は、前記中間目的地に前記ユーザが到着したと判断された場合には、前記中間目的地での目標移動方向情報が表示される前記ナビゲーション画像を生成してもよい。
【0039】
これにより、ユーザが中間目的地に到着したと判断された場合には、次の目的地の方向を表す情報である目標移動方向情報をナビゲーション画像に表示すること等が可能になる。
【0040】
また、本発明の一態様では、前記画像生成部は、前記表示画像として、ヘッドマウントディスプレイに表示される画像を生成してもよい。
【0041】
これにより、ヘッドマウントディスプレイを表示装置として用いることが可能になる。
【0042】
また、本発明の一態様では、前記ヘッドマウントディスプレイは、外界視界に前記ナビゲーション画像を重畳して表示するシースルー型のヘッドマウントディスプレイであり、前記画像生成部は、前記表示画像として、前記ヘッドマウントディスプレイに表示される画像を生成してもよい。
【0043】
これにより、シースルー型のヘッドマウントディスプレイを表示装置として用いることが可能になる。
【図面の簡単な説明】
【0044】
【図1】地図を用いたナビゲーションサービスの表示画像の例。
【図2】本実施形態の表示画像の例。
【図3】キャラクタが目的地に向かって移動する様子を説明する図。
【図4】図4(A)、図4(B)は本実施形態のシステム構成例。
【図5】進行方向を推定する手法を説明する図。
【図6】ユーザの頭部方向にキャラクタが位置する場合の表示画像の例。
【図7】図7(A)、図7(B)はユーザの頭部方向から左右にずれた位置にキャラクタが存在する場合の表示画像の例。
【図8】図8(A)〜図8(D)は仮想マップ上でのユーザの視野範囲内にキャラクタが位置しない場合の表示画像の例。
【図9】ユーザとキャラクタとの距離が大きい場合の表示画像の例。
【図10】存在方向情報として3D矢印を用いる例。
【図11】キャラクタの足下にグリッド線を表示する例。
【図12】ユーザから見た外界視界の視野範囲と、表示画像の画角を説明する図。
【図13】ユーザに対して設定される距離エリアの例。
【図14】距離エリアごとのキャラクタ制御の手法を説明する図。
【図15】図15(A)、図15(B)は目標移動方向情報を用いた表示画像の例。
【図16】スタート地点と目的地から経路を設定する例。
【図17】図17(A)は案内開始時の表示画像の例、図17(B)は案内中の表示画像の例。
【図18】図18(A)〜図18(C)はユーザがキャラクタを追尾しない場合の表示画像の例。
【図19】ユーザに対して追尾を促す表示画像の例。
【図20】仮想マップ上でのユーザの視野範囲と、右側領域・左側領域を説明する図。
【図21】表示画像における右側画像領域・左側画像領域を説明する図。
【図22】ユーザから見た表示画像の画角と、右側画像領域・左側画像領域を説明する図。
【図23】本実施形態のメイン処理を説明するフローチャート。
【図24】本実施形態のサブ処理を説明するフローチャート。
【図25】中間目的地において目標移動方向情報を表示する場合の処理を説明するフローチャート。
【発明を実施するための形態】
【0045】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0046】
1.本実施形態の手法
【0047】
まず、本実施形態の手法について説明する。近年の携帯電子機器(例えば携帯電話等)では、多くのナビゲーションサービス(ここでは歩行者用ナビゲーションを想定しているが、カーナビゲーションシステムであってもよい)が提供されている。例えば、目的地を入力することで、ユーザの現在位置から目的地までの経路を検索し、経路に沿った案内画面を表示するサービス等である。
【0048】
しかし、このようなシステムでは、ユーザの進行方向と案内画面の表示される方向(携帯電子機器の表示部がある方向)が異なる。そのため、ユーザは進行方向をみて、安全を確認したり、視界内にある建物等を確認したりしつつ、携帯電子機器に視線を向けてナビゲーション画面を参照する必要がある。これはユーザにとって非常に煩わしく負担になる。
【0049】
また、現在のナビゲーションシステムは、例えば図1に示すように、地図を用いてナビゲーションを行うことがほとんどである。図1のA1のように現在位置を表示しつつ、A2のように目的地までの経路を表示することで、ユーザを目的地に案内する。しかし、地図を読むことが苦手なユーザも多く、また、地図の倍率によっては目的地(もしくは目的地までの経路)がわかりにくいケースもある。
【0050】
そこで本出願人は以下のような手法を提案する。ユーザの視点変更の頻度を抑えるために、図2に示すような、外界視界の上に表示画面(ナビゲーション画面)を重畳するような表示装置を採用する。これは例えばHMD等を用いることで実現できる。また、地図を用いたナビゲーションではなく、ナビゲーション用のキャラクタを表示する。そして、キャラクタを用いたナビゲーションを行う。具体的には例えば、図3に示すように、目的地に向かって移動していくキャラクタを追いかけるようなシステムが想定される。このようにすることで、ユーザは表示画面内にキャラクタをとらえ、キャラクタの動きに合わせて歩いていくだけで、目的地に到達することが可能になる。よって、頻繁な視線変更を行う必要なく、直感的な手法でナビゲーションを行うことができるため、ユーザの負担を軽減することが可能になる。
【0051】
以下、システム構成例を説明し、その後、キャラクタによるナビゲーションシステムの詳細について説明する。そして、本実施形態の作用効果を説明し、最後にフローチャートを用いて本実施形態の処理の詳細について説明する。
【0052】
2.システム構成例
【0053】
図4(A)においてユーザ10は携帯電子機器20を所持している。また、HMD(Head Mounted Display)11を頭部の一方の目の近傍に装着している。さらにウェアラブルセンサとして種々のセンサを身につけている。具体的には、屋内外センサ510や、周辺温度センサ511、腕装着型の脈拍(心拍数)センサ521、携帯電子機器20に設けられるGPS(Global Position System)センサ550や加速度センサ551、HMD11に設けられる方位センサ560等を装着している。
【0054】
携帯電子機器20(モバイルコンピュータ)は、PDA(Personal Digital Assistant)、ノート型PCなどの携帯情報端末であり、例えばプロセッサ(CPU)、メモリ、操作パネル、通信装置、或いはディスプレイ(サブディスプレイ)などを備える。この携帯電子機器20は、例えばセンサからのセンサ情報を収集する機能、収集したセンサ情報に基づいて演算処理を行う機能、演算結果に基づいて制御対象機器(HMD等)の制御(表示制御等)を行ったり外部のデータベースから情報を取り込む機能、外部と通信を行う機能などを有することができる。なお携帯電子機器20は、携帯電話、腕時計、或いはポータブルオーディオなどとして兼用される機器であってもよい。
【0055】
HMD11(広義には情報提示部)は、ユーザの一方の眼の近傍に装着されると共にディスプレイ部の大きさが瞳孔の大きさよりも小さくなるように設定され、いわゆるシースルービューアの情報表示部として機能する。
【0056】
屋内外センサ510は、ユーザが屋内にいるのか屋外にいるのかを検知するセンサであり、例えば超音波を照射し、天井等により超音波が反射して戻ってくるまでの時間を計測する。但し屋内外センサ510は、超音波方式に限らず、アクティブ光方式、パッシブ紫外線方式、パッシブ赤外線方式、パッシブ騒音方式のセンサであってもよい。
【0057】
周囲温度センサ511は、例えばサーミスタ、放射温度計、熱電対などを用いて外界温度を計測する。脈拍(心拍数)センサ521は、手首又は指又は耳に装着し、例えば拍動に伴う血流の変化を赤外光の透過率や反射率の変化で計測する。GPSセンサ550はユーザの位置(場所)を検知するセンサである。なおGPSセンサ550の代わりに携帯電話の位置情報サービスや周辺にある無線LANの位置情報を利用してもよい。加速度センサ551は、例えば3軸の加速度情報を検知する。方位センサ560は、例えば地磁気センサ等であり、センサの向いている方位を角度(0°〜360°)で計測する。
【0058】
次に、図4(B)に本実施形態の画像生成システムの構成例を示す。画像生成システム100は、センサ情報取得部110と、ユーザ情報特定部120と、記憶部130と、I/F部140と、経路設定部150と、位置関係情報特定部160と、キャラクタ制御部170と、画像生成部180と、情報記憶媒体190と、を含む。画像生成システム100は、図4(B)の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。なお本実施形態の画像生成システム100の一部又は全部の機能は、例えば携帯電子機器551により実現される。但し、画像生成システム100の一部又は全部の機能を、HMD11により実現したり、携帯電子機器551とは異なる電子機器により実現してもよい。
【0059】
ここで、ウェアラブルセンサ13は図4(A)を用いて上述したGPSセンサや加速度センサ等のユーザが装着しているセンサである。操作部15は、例えばユーザが所持する携帯電子機器20に設けられるボタン等である。なお、操作部15はHMD11に設けられてもよい。表示部17はHMD11に設けられる。
【0060】
次に各部の接続について説明する。センサ情報取得部110は、ユーザのウェアラブルセンサ13からのセンサ情報を取得するとともに、ユーザ情報特定部120に接続されている。ユーザ情報特定部120は、経路設定部150と、位置関係情報特定部160とに接続されている。記憶部130は、経路設定部150と接続されている。I/F部140は、操作部15からの操作情報等を受け取るとともに、経路設定部150と接続されている。経路設定部150は、キャラクタ制御部170と接続されている。位置関係情報特定部160は、キャラクタ制御部170と相互に接続されているとともに、画像生成部180に接続されている。画像生成部180は、生成した画像を表示部17に表示する。
【0061】
次に各部で行われる処理について説明する。センサ情報取得部110は、ウェアラブルセンサ13からの種々のセンサ情報を受信する。
【0062】
ユーザ情報特定部120は、センサ情報取得部110で取得したセンサ情報に基づいて、ユーザ情報を特定する。ここでユーザ情報とは、ユーザの位置情報や、ユーザの方向を表す方向情報や、ユーザの識別情報等である。ここで、ユーザの位置情報は、例えばマップ上(仮想マップ上)での現在位置の情報などである。方向情報は、例えばユーザの頭部方向情報や、進行方向情報、視線方向情報などである。具体的には例えば、GPS550や加速度センサ551等からユーザの位置情報を取得し、方位センサ560等から方向情報を取得する。また、識別情報は脈拍(心拍数)センサ521等から取得する。
【0063】
ここで、方向情報の取得手法について説明する。上述したように方向情報には頭部方向情報、視線方向情報、進行方向情報等がある。頭部方向とは、ユーザの頭部に装着された方位センサからユーザの頭部方向を判別することで求めることができる。視線方向とは、ユーザの視線の方向を表すものであり、例えば、黒目と白目での光の反射率の違い等を利用して、眼球部分の反射率を検出することで黒目部分の向いている方向を判別し、視線方向としてもよい。
【0064】
また、進行方向とは、ユーザが移動しているときの移動の方向、またはユーザが今後移動すると予測される移動方向であり、例えば、GPSによるユーザ位置の履歴を参照し、ユーザの動きベクトル(例えば第kの時点での位置と第kの時点よりも後の第k+1の時点での位置の間のベクトル)から求めてもよい。ただし、進行方向の求め方はこれに限定されるものではない。例えば、上述した視線方向をそのまま進行方向として用いてもよい。或いは、後述するマップ記憶部132に記憶されているマップ情報と、GPSセンサ550や加速度センサ551等から取得されたユーザの位置情報から、ユーザが移動している道路を判別し、道路の方向を進行方向としてもよい。具体的には図5に示したように、ユーザの位置情報とマップ情報から、ユーザが移動している道路が図5のD1で示した道路であると判別する。その場合には、進行方向は道路の方向であるD2とすればよい。なお、道路の上り方向(例えばD2)と下り方向(例えばD3)のどちらを進行方向とするかの判断手法は任意である。例えば、D2とD3のうち、視線方向に近い方向のものを進行方向にしてもよい。
【0065】
記憶部130は、種々の情報を記憶するとともに、各部のワーク領域となるものであり、その機能はRAM等のメモリーやHDD(ハードディスクドライブ)などにより実現できる。記憶部130のマップ記憶部132は、マップ情報を記憶する。例えば、本実施形態の画像生成システムが日本国内のナビゲーションサービスに用いられるとすれば、日本全国のナビゲーションに適した倍率のマップ情報を保持している。記憶部130はその他にも、キャラクタ情報等を記憶してもよい。
【0066】
I/F部140は、操作部15からの操作情報を受信する。ここで操作情報とは、ユーザによる目的地の設定情報等が考えられる。その他、ナビゲーションに関する情報を設定するための操作情報(例えばキャラクタの移動速度の設定等)を受信してもよい。
【0067】
経路設定部150は、マップ情報、ユーザの位置情報及び操作情報に基づいて、ユーザの現在位置から目的地までの経路情報を生成する。具体的には例えば、後述する図16のように、ナビ開始地点(図16のC1)と目的地(最終目的地、C2)が入力された際に、第1、第2の中間目的地(C4、C5)を設定し、図16に示すような経路(C3)を設定する処理を行う。
【0068】
位置関係情報特定部160は、マップ上におけるユーザとキャラクタとの位置関係情報を特定する。具体的には、ユーザ情報特定部120からのユーザ情報により、マップ上におけるユーザの現在位置の情報と方向情報を取得する。また、キャラクタ制御部170からの情報に基づいて、マップ上でのキャラクタの位置情報を取得する。これにより、マップ上でのユーザとキャラクタの位置関係情報(距離及び、ユーザから見たキャラクタのいる方向等)を特定し、画像生成部180に送信する。
【0069】
キャラクタ制御部170は、経路設定部150により設定された経路、及び、位置関係情報特定部160により特定されたユーザとキャラクタの位置関係情報に基づいて、キャラクタの移動等を制御する。具体的な制御手法については後述する。
【0070】
画像生成部180は、位置関係情報特定部160により特定されたユーザとキャラクタの位置関係情報に基づいて、表示画像(ナビゲーション画像)を生成する。具体的な表示画像の生成手法については後述する。
【0071】
情報記憶媒体190(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、メモリーカード(EEPROM、ROM等)、光ディスク(DVD、CD等)、或いはHDD(ハードディスクドライブ)などにより実現できる。画像生成システム100は、情報記憶媒体190に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体190には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0072】
3.キャラクタによるナビゲーションシステム
【0073】
次にキャラクタを用いたナビゲーションシステムの詳細について図6〜図22を用いて説明する。
【0074】
3.1 仮想マップ上の位置関係情報と表示画像の生成
【0075】
まず、ユーザとキャラクタの位置関係情報に基づいて表示画像を生成する手法について説明する。ナビゲーション用のキャラクタは、経路設定部150で設定された経路を、仮想マップ上で目的地に向かって移動する。なお、ユーザとの位置関係情報に応じて移動速度や挙動が変化するが、それについては次項で説明する。ここではそのときのシチュエーション等は考慮せず、単純に位置関係情報から画像情報を生成する手法について述べるものとする。
【0076】
ユーザとキャラクタの位置関係情報と生成される表示画像との対応を示したものが図6〜図9である。図6〜図9からわかるように、ユーザとキャラクタの間の距離情報及び、ユーザの頭部方向(視線方向)に対するキャラクタの方向情報に応じて、表示形態が変化する。
【0077】
図6に示したように、ユーザの頭部方向に対応する位置にキャラクタが存在する場合には、表示画面の中央にキャラクタが表示される。それに対して、図7(A)及び図7(B)に示したように、ユーザの頭部方向に対してキャラクタが左右どちらかにずれた位置に存在する場合には、画面上でも対応する側にずれた位置にキャラクタが表示されることになる。
【0078】
また、図8(A)〜図8(D)に示したように、仮想マップ上におけるユーザの視界(ここでは180°弱であるものとする)から外れる位置にキャラクタがいる場合には、表示画面にはキャラクタは表示されず、キャラクタの存在方向を示す存在方向情報が表示されることになる。ここで、存在方向情報とは、図8(A)〜図8(D)に示すように矢印であってもよい。矢印は単純に左右を表す矢印であってもよいし、図8(A)〜図8(D)のようにより詳細な方向を表す矢印にしてもよい。また、図10に示したように、遠近法を用いた3Dの矢印を用いてもよい。
【0079】
また、図9に示したように、マップ上でユーザとキャラクタとの間の距離が大きくなると、それに従いキャラクタの表示を小さくする。このようにすることで、ユーザに対して、キャラクタが離れていっていることを伝える。この場合、図11に示したように、表示画面にグリッド線を表示してもよい。そして、キャラクタの移動にあわせてグリッド線を移動させることで、キャラクタが移動していることを明確に表現することが出来る。
【0080】
以上に示したように、左右にずれた場合、距離が変化した場合及び視界から外れた場合の3通りの対処を行うことで、ユーザとキャラクタの位置関係情報に基づいて表示画像を生成することが可能になる。さらにここで、「視界から外れる」ことの意味について検討する。本実施形態では、図12に示したように、外界視界に対して、表示画面が小さいケースを想定している。そのため、外界視界を見る際の画角(図12のB1、人間の視野角であり歩行時には約110°〜160°程度)に比べて、表示画像の画角(図12のB2)は非常に小さく、例えば表示画像の画角は約9°程度しかないこともある。このとき、表示画像の画角を厳密に適用するのであれば、仮想マップ上でも、ユーザの視界は9°程度に抑える必要がある。このようにすることで、図12の画面において、ユーザが顔を動かしたときに、外界視界で見えた物体と表示画像内の物体の動き(画面上での位置ずれ)が対応付けられることになり、実際の物理現象に沿った自然な画像となる。
【0081】
しかし、仮想マップ上で視界を小さく限定してしまうと、ほんの少し視線方向を移動させただけで、すぐにキャラクタが視界から外れてしまうことになる。それでは、キャラクタを追いかけることで目的地に誘導するというサービスの提供は困難であり、好ましくない。そこで実際には、上述したようにマップ上での視界は180°に近い広さになっている。このようにすることで、キャラクタが視界から外れる可能性が低くなり、ナビゲーションに利用することが容易になる。なお、マップ上での視界を、表示画像の画角に比べて大きくすることにより、外界視界内の物体と、表示画像内の物体の動きが対応しなくなる(視線方向を変化させたとき、外界視界内の物体は大きく動くのに対して、表示画像内の物体の動きは小さい)が、実用上不自然に感じることはない。つまり、「視界から外れる」とは、マップ上での視野範囲(もしくは視野範囲に基づいて設けられる所定の判定範囲)から外れることを意味するものとして取り扱う。
【0082】
また、ユーザの視線方向には個人差があることが考えられる(人によってはまっすぐ向いているつもりでも傾いている可能性がある)が、システムの起動時に、キャリブレーションを行うことで、個人差を吸収することが出来る。キャリブレーションとは、例えば、起動時にユーザが向いている方向を基準に初期値を設定するような処理が考えられる。
【0083】
3.2 エリア設定
【0084】
次に、キャラクタの制御として、エリア分割を行う手法について説明する。エリア分割の例を図13に示す。
【0085】
図13に示したように、例えばエリア1〜エリア4(広義には第1〜第Nの距離エリア)まで、マップ上でのユーザの位置を中心とした同心円状のエリアを設定する(ただし、エリア4はエリア3の外側の領域全てであり、厳密には同心円ではない)。エリアは、ユーザーの位置からの距離に応じて設定されていれば良く、エリアの形状は円形以外にも例えば四角形や三角形や星型、或いはそれらの混合型などでも良く、種々の変形例がある。
【0086】
本実施形態においては、キャラクタを追いかけることで、ユーザを目的地に案内する。また、表示形態は前項に示したように、ユーザとキャラクタとの位置関係情報に基づいて決定される。そのため、キャラクタはユーザの少し前を目的地に向かって移動している状況が基本となる。
【0087】
よって、ユーザとの距離が適切であるエリア3(広義には第N−1の距離エリア)では、キャラクタは通常の速度(初期値を用いてもよいし、ユーザにより設定されてもよい)で目的地に向かって移動を続ける。
【0088】
また、エリア3よりもユーザに近いエリア2(広義には第N−1の距離エリア)では、ユーザとの距離が近いと判断し、距離を大きくするためにエリア3の場合よりも高速で目的地に向かって移動する。なお、エリア2及びエリア3にキャラクタがいる場合にも、キャラクタが目的地に到着した場合には移動を終了してユーザの到着を待つ。
【0089】
エリア2よりもユーザに近いエリア1(広義には第1の距離エリア)では、キャラクタが目的地に到着していない場合には、ユーザとの距離を大きくする必要があるため、高速で目的地に移動する。また、キャラクタが目的地に到着している場合には、ユーザが目的地(キャラクタの位置)に近づいて、結果としてキャラクタがエリア1の範囲に入ったことを持って、ユーザが目的地に到着したと判断する。
【0090】
エリア3よりも遠いエリア4(広義には第Nの距離エリア)にキャラクタがいる場合には、ナビゲーション中に何か問題が発生した(ユーザがキャラクタについてきていない等)と判断し、キャラクタをユーザの現在位置へ移動させる。この際には、問題の発生を想定しているため、移動速度を最高に設定する。
【0091】
以上の制御を行うことで、ユーザから見やすい距離を保った上で、ユーザがついてこない(または道を間違えた)等の問題にも対処可能な態様でキャラクタを制御することが可能になる。なお、以上の制御をまとめたものが図14である。
【0092】
3.3 中間目的地におけるマップ表示
【0093】
次に、中間目的地付近でのマップ表示について説明する。中間目的地とは、例えば交差点等で曲がる場合が考えられる。この際、キャラクタが止まらずに目的地(次の中間目的地や最終目的地)に向かってしまっては、ユーザの視界からキャラクタが外れてしまったり、視界から外れなくても、まっすぐキャラクタの後についていくことが困難になってしまったりする。そのため、交差点等で曲がる場合には、その地点を中間目的地に設定し、中間目的地で一旦キャラクタを待機させる必要がある。
【0094】
その際、図15(A)のような単純な十字路であれば、キャラクタについていくだけで正しい道を選択可能であるが(正面か、左右かの違いさえ区別できればよい)、図15(B)のように、五叉路の場合には、正面と右に加えて、右斜め前方にも道があり、これらが区別できないと正しい道を選択できない。
【0095】
しかしながら、上述したように、表示画像の画角と、マップ上での視界(視野角)は大きく異なるため、キャラクタの表示される位置と、目的の方向とが必ずしも一致するとは限らない。よって、キャラクタのみを表示していたのでは、図15(B)のような複雑な分岐の道路においては、十分正確なナビゲーションは困難である。
【0096】
そこで、本実施形態では、ユーザが中間目的地に到着したタイミングで、キャラクタの表示から地図の表示へと切り替える制御を行う。具体的には図3の画面から、図15(A)や図15(B)の画面へと切り替える。図15(B)の画面を表示することで、例えば右から何本目の道に進めばよい、等の情報を簡単に提示することが出来る。なお、切り替えのタイミングは3.2項で上述したように、キャラクタが当該中間目的地に到着しており、かつ、エリア1に入ったタイミングとすればよい。
【0097】
このようにすることで、通常はキャラクタによる直感的なナビゲーションを行った上で、キャラクタによるナビゲーションが困難な状況では、進むべき道がわかりやすいマップを表示することが出来るため、より正確なナビゲーションが可能となる。
【0098】
3.4 ナビゲーションの例
【0099】
次に、具体的な仮想ルートマップを用いたナビゲーションの一例について説明する。ここで用いる仮想マップを図16に示す。図16のC1がスタート地点であり、C2が目的地に設定されたものとする。この場合、経路設定部150は例えば、C4、C5を中間目的地としたC3のルートを経路として設定する。
【0100】
この場合、まず、ナビゲーションが開始されると、図17(A)に示すように、キャラクタが画面内に表れ、案内を始める旨をユーザに伝える。そして、C1から第1の中間目的地C4に向かって移動を開始する。すると図17(B)に示すように、キャラクタはユーザに対して背を向けているため、キャラクタの背面が画面に表示され、移動につれ徐々にキャラクタが小さくなっていく。キャラクタの移動にあわせてユーザが移動を開始すると、ユーザとキャラクタの位置関係情報に基づいてキャラクタの移動速度や挙動が変化する。詳細については上述したとおりである。もしキャラクタがユーザの視界から外れてしまった場合には、上述したように、矢印等の存在方向情報を表示する。
【0101】
キャラクタが第1の中間目的地C4に到着し、かつ、ユーザとの距離が小さくなる(エリア1にキャラクタが入る)と、システムはユーザが第1の中間目的地に到着したと判断し、上述したように、図15(A)、図15(B)の交差点用のマップ表示に切り替わり、左折を指示する。
【0102】
そして、一定時間マップを表示したら(もしくは、ユーザが正しい道の方向に向かって移動を始めた時点でもよい)再びキャラクタの表示に切り替わる。第1の中間目的地C4から第2の中間目的地C5へのナビゲーションも同様である。第2の中間目的地にユーザが到着したと判断したら、マップ表示に切り替わり、今度は右折を指示する。
【0103】
そして、最終目的地C2にキャラクタが到着したらその場で、ユーザの到着を待ち、ユーザがキャラクタに近づくことで、キャラクタがエリア1に入ったら、システムは最終目的地にユーザが到着したと判断し、ナビゲーションを終了する。
【0104】
以上が、問題がなくナビゲーションが終了した場合の流れである。途中でユーザが立ち止まってしまった場合は、図18(A)〜図18(C)のように、キャラクタは目的地への移動を中止し、ユーザの近くまで戻ってくる。具体的にはキャラクタの移動により、キャラクタがエリア4に入ってしまうケースも考えられるし、キャラクタが目的地で待機している場合には、ユーザとの位置関係が変化しないことを検出するケースも考えられる。この場合には、経路設定部150により設定した経路は変更する必要がないため、ユーザの近くに移動したキャラクタは既存の経路に沿ってナビゲーションを再開する。
【0105】
また、ユーザが道を間違えたり、キャラクタから遠ざかってしまった場合にも図18(A)〜図18(C)のような対処を行う。この場合も、エリア4に入ったことをトリガーに処理を開始してもよいし、ユーザとの位置関係情報に基づいて、距離が増大したことをトリガーにしてもよい。また、既存の経路からユーザが外れたことをトリガーにしてもよい。これらの場合には、経路設定部150により設定された経路からユーザが外れてしまっている可能性があるため、ユーザの現在位置と目的地(最終目的地)とから、再度経路を設定する必要が生じる。
【0106】
以上のナビゲーションにおいては、キャラクタのモーションを変化させたり、アイコンを表示したり、サウンドをならしたりしてもよい。例えば、図17(A)のように案内開始を文字(もしくは音声)で知らせたり、移動中に時々ユーザの方を振り返ったり、目的地に到着することでキャラクタに喜んだりさせてもよい。このようにすることで、より自然にナビゲーションを行うことが可能になる。
【0107】
以上の本実施形態では、画像生成システム100は、図4に示したように、ユーザが装着するウェアラブルセンサ13からのセンサ情報を取得するセンサ情報取得部110と、センサ情報に基づいて仮想マップ上でのユーザの位置情報を特定するユーザ情報特定部120と、ナビゲーション用キャラクタを目的地に向かって移動させる制御を行うキャラクタ制御部170と、ナビゲーション画像を生成する画像生成部180と、を含む。そして、キャラクタ制御部170は、キャラクタとユーザとの位置関係情報に基づいて、キャラクタを制御する。
【0108】
ここで、ユーザ情報特定部120で特定されるユーザ情報とは、ユーザの現在位置を表す位置情報、ユーザの方向情報、ユーザの識別情報等である。また、方向情報は、ユーザの頭部方向や進行方向、視線方向等である。また、仮想マップとは、現実空間の地図(マップ)に対応して、計算上設けられる2次元又は3次元の仮想的な空間のことである。
【0109】
また、画像生成部180において生成されるナビゲーション画像とは、キャラクタを用いてユーザを目的地に誘導するための画像である。ただし、後述するように、マップ上でのユーザの視野範囲からキャラクタが外れた場合や、中間目的地に到着したと判断された場合等、キャラクタが表示されない画像を生成するケースもある。
【0110】
これにより、センサからのセンサ情報に基づいて仮想マップ上でのユーザの位置情報を特定するとともに、仮想マップ上に配置されるキャラクタの位置を特定することで、キャラクタとユーザとの位置関係情報を特定することができる。そして、ナビゲーション画像を生成するとともに、特定した位置関係情報に基づいてキャラクタの制御を行う。よって、例えば図19に示したように、ユーザにキャラクタを追尾することを促し、キャラクタを目的地へ移動させる制御を行うことで、キャラクタを追いかけるだけでユーザが目的地に到達できるようなナビゲーションサービスを実現することが可能になる。
【0111】
また、位置関係情報特定部160は、ユーザの位置を基準として第1〜第Nの距離エリアを設定してもよい。そして、どの距離エリアにキャラクタがいるかの判定を行う。位置関係情報特定部160の判定に基づいて、キャラクタ制御部170は、キャラクタの制御を行ってもよい。
【0112】
これにより、図13に示したように、ユーザの位置に対して複数の距離エリアを設定し、いずれの距離エリアにキャラクタがいるかの判断に基づいて、キャラクタの挙動を制御することが可能になる。よって、例えば図13のように同心円状に距離エリアを設定した場合には、ユーザとキャラクタとの間の距離情報から容易に位置関係情報を特定することができ、簡単な処理でキャラクタを制御することができる。ただし、距離エリアとは、ユーザの位置を基準として距離に応じて設定されるエリアであればよく、同心円状に限定されるものではない。具体的には例えば、ユーザの位置を中心(重心等)とする多角形の領域を距離エリアに設定してもよい。また、ユーザの位置を距離エリアの重心とする必要もなく、例えば、弦の中点をユーザの位置とするような半円形の距離エリアを設定してもよい。
【0113】
また、キャラクタ制御部170は、ユーザからの距離が最も遠い距離エリアである第Nの距離エリアに、キャラクタが位置すると判断された場合には、キャラクタをユーザの方に向かって移動させる制御を行ってもよい。これは図13の例でいえば、エリア4にキャラクタが位置する場合に相当する。
【0114】
これにより、ユーザとキャラクタとの間の距離が大きい場合には、キャラクタをユーザの近くに移動させる制御を行うことが可能になる。キャラクタとの距離が大きいとは、ユーザがキャラクタを追尾していないケースが想定される。そのため、一旦目的地への移動を中止して、図18(C)のようにユーザに対して追尾を促すことで、円滑なナビゲーションを実現することができる。
【0115】
また、キャラクタ制御部170は、第N−1の距離エリアにキャラクタが位置すると判断された場合には、キャラクタを目的地に向かって移動させる制御を行う。そして、第N−2の距離エリアにキャラクタが位置すると判断された場合には、キャラクタ制御部170は、第N−1の距離エリアの場合よりも速い速度で、キャラクタを目的地に向かって移動させる制御を行う。
【0116】
ここで、第N−1の距離エリアとは、第Nの距離エリアよりも、ユーザからの距離が近い距離エリアであり、第N−2の距離エリアとは、第N−1の距離エリアよりも、ユーザからの距離が近い距離エリアである。これは図13の例でいえば、第N−1の距離エリアがエリア3であり、第N−2の距離エリアがエリア2に相当する。
【0117】
これにより、ユーザとキャラクタとの間の距離が適切に保たれている場合には(ここでは第N−1の距離エリアを想定)、ユーザは適切にキャラクタを追尾していると考えられるため、キャラクタを目的地に向かって移動させることで、ナビゲーションを行うことができる。また、ユーザとキャラクタとの間の距離が近すぎる場合には、より速い速度で目的地に向かって移動させることで、適切な距離をとることができる。なお、本実施形態ではキャラクタの背中を追いかけることでナビゲーションを行うため、例えば、キャラクタより速く歩いてキャラクタを追い越してしまってはナビゲーションができない。そのため、ユーザとキャラクタとの間は適切な距離をあけることが、円滑なナビゲーションを行うために必要な条件となる。
【0118】
また、キャラクタ制御部170は、キャラクタが目的地に到着しており、かつ、ユーザからの距離が最も近い距離エリアである第1の距離エリアにキャラクタが位置すると判断された場合に、ユーザが目的地に到着したと判断してもよい。これは図13の例でいえば、エリア1にキャラクタが位置する場合に相当する。
【0119】
これにより、キャラクタの制御に用いられる距離エリアを利用して、目的地に到着したか否かの判断を行うことが可能になる。
【0120】
また、キャラクタ制御部170は、ユーザが移動を停止したと判断された場合には、キャラクタをユーザの方に向かって移動させる制御を行ってもよい。また、ユーザがキャラクタから離れる方向に移動したと判断された場合には、キャラクタをユーザの方に向かって移動させる制御を行ってもよい。具体的には図18(A)〜図18(C)のようなキャラクタ制御を行う。
【0121】
これにより、ユーザが停止したりキャラクタから離れたりする状況、つまり、ユーザがキャラクタの追尾をやめてしまったという状況を適切に把握することができる。そして、その際にキャラクタをユーザの方に向かって移動させ、図18(C)のように追尾を促すことで、ナビゲーションを続行することが可能になる。
【0122】
また、ユーザ情報特定部120は、センサ情報に基づいてユーザの方向情報を特定する。そして、位置関係情報特定部160は、方向情報に基づいてキャラクタがユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判定する。画像生成部180は、キャラクタが所定の判定範囲内に存在しないと判断された場合には、存在方向情報が表示されるナビゲーション画面を生成してもよい。
【0123】
ここで、存在方向情報とは、キャラクタの存在方向を示す情報のことであり、具体的には例えば図8(A)〜図8(D)や図10に示すような矢印画像であってもよい。
【0124】
これにより、マップ上でのユーザの視野範囲に基づいて設けられる所定の判定範囲内からキャラクタが外れてしまった場合にも、ユーザによるキャラクタの再発見を容易にできる。上述してきたように、本実施形態ではキャラクタを追いかけることによりユーザを目的地に誘導するため、ユーザに対して提示されるナビゲーション画像にキャラクタが表示されないことは大きな問題となる。ここで示したように、存在方向情報を表示することで上記問題を解消することが可能になる。
【0125】
また、画像生成部180は、キャラクタとユーザの位置関係情報に基づいて、キャラクタのサイズ及びキャラクタの表示位置の少なくとも一方が変化するナビゲーション画像を生成してもよい。
【0126】
これにより、図7(A)、図7(B)に示したように、ユーザの頭部方向(視線方向)に対してキャラクタのマップ上での位置が左右にずれた場合には、ナビゲーション画像上でも中心から左右にずれた位置にキャラクタを表示することができる。また、図9に示したように、ユーザとキャラクタとの間の距離が大きいときには、キャラクタを小さく表示することができる。よって、ユーザとキャラクタのマップ上での位置関係情報を適切にナビゲーション画像に反映した形態でナビゲーションを行うことができる。
【0127】
また、ユーザ情報特定部120は、センサ情報に基づいてユーザの方向情報を特定し、位置関係情報特定部160は、方向情報に基づいて、キャラクタがユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判断する。そして、画像生成部180は、キャラクタが所定の判定範囲内に位置すると判断された場合には、位置関係情報に対応する画像上位置にキャラクタを表示したナビゲーション画像を生成してもよい。
【0128】
これにより、図6〜図7(B)に示したように、所定の判定範囲内にキャラクタが位置すると判断された場合には、キャラクタとユーザとの位置関係情報に基づいて、キャラクタの画像上位置を変更することができる。よって、ユーザに対して、キャラクタとの位置関係を反映した形でナビゲーション画像を提示することができるため、キャラクタの後を追いかける形式のナビゲーションサービスを円滑に実行することが可能になる。
【0129】
また、画像生成部180は、仮想マップ上でのユーザの視野範囲をθ2とした場合に、仮想マップ上でθ2に対応する視野範囲を、θ2>θ1を満たすθ1の画角で外界視界に重畳される画像を生成してもよい。
【0130】
これにより、図12に示したように、外界視界(人間の視野角、図12のB1に相当)に比べて、表示画像の画角θ1(B2に相当)が小さくなるように設定された場合にも、マップ上での視野範囲はθ1よりも大きいθ2に設定することが可能になる。図12を用いて上述したように、本実施形態では例えば、シースルー型のHMD等を用いて、外界視界に外界視界よりも小さい表示画像を重畳するケースを想定している(ただし、これに限定されるものではない)。そのため、表示画像の画角は非常に小さくなってしまい、マップ上での視野範囲θ2をθ1と同等にしてしまうと、ユーザが視線方向をわずかに変化させただけでも表示画像からキャラクタが外れやすくなってしまう。そこで、θ2をθ1よりも大きく設定することで、ユーザの視線方向が変化した場合にも、表示画像内にキャラクタをとらえやすくすることが可能になる。
【0131】
また、ユーザ情報特定部120は、センサ情報に基づいてユーザの頭部方向又は視線方向を方向情報として特定する。そして、画像生成部180は、キャラクタがマップ上でのユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置し、かつ、頭部方向又は視線方向の右側領域にキャラクタが位置すると判断された場合には、右側画像領域の画像上位置にキャラクタを表示したナビゲーション画像を生成してもよい。また、同様に、キャラクタがマップ上での所定の判定範囲内に位置し、かつ、頭部方向又は視線方向の左側領域にキャラクタが位置すると判断された場合には、左側画像領域の画像上位置にキャラクタを表示したナビゲーション画像を生成してもよい。
【0132】
ここで、右側領域とは、図20に示したように、マップ上での所定の判定範囲を、ユーザの頭部方向又は視線方向を通り地面(重力方向に垂直な面)に垂直な平面により分割した場合に、ユーザから見て頭部方向又は視線方向より右側にある領域である。左側領域は、同様に頭部方向又は視線方向より左側にある領域である。なお、図20においては平面的に描かれているが、右側領域及び左側領域は3次元の領域を前提とする。ただし2次元マップを用いる場合は平面であってもよい。
【0133】
また、右側画像領域とは、図21に示したように、表示画像を画像の縦軸に平行な直線で分割した際の、分割線より右側にある領域である。左側画像領域は、同様に分割線より左側にある領域である。
【0134】
これにより、図6〜図7(B)に示したように、マップ上でのユーザの方向情報に対するキャラクタの左右の位置(位置関係情報)に基づいて、表示画像における表示位置を変更することが可能になる。なお、上述したようにθ2>θ1が成り立つような状況では、この処理は、図20における右側領域及び左側領域(所定の判定範囲)に存在するキャラクタを、図22における右側画像領域(D1)及び左側画像領域(D2)にマッピングする処理に相当する。θ2は、例えば180°弱の大きさを持つのに対し、表示画像のユーザから見た画角(θ1、D3+D4)は例えば9°程度しかない。つまり、θ2の範囲のキャラクタをθ2より狭いθ1の範囲にマッピングする処理を行うことになる。具体的には、右側領域の右端にキャラクタが位置する場合には、右側画像領域の右端にキャラクタを表示するとともに、左側領域の左端にキャラクタが位置する場合には、左側画像領域の左端にキャラクタを表示する。そして、その間に位置する場合には、所定の判定範囲における位置と、画像上位置とが一対一に対応するようなマッピングを行う。さらに具体的には、例えば位置関係が線形に対応するようなマッピングを行えばよい。
【0135】
また、キャラクタ制御部170は、ナビゲーションのスタート地点と最終目的地との間に設定された中間目的地に向かって、キャラクタを移動させる制御を行ってもよい。
【0136】
これにより、中間目的地を設定し、設定した中間目的地を経由して最終目的地へ移動するキャラクタ制御を行うことができる。図16のC4やC5に示したように、交差点で曲がるような場合には、キャラクタがユーザを待たずに曲がってしまうと、ユーザはキャラクタが視界から外れてしまったり、まっすぐ追いかけることができなくなってしまう。そこで、そのような地点を中間目的地に設定し、中間目的地を当面の目的地としてキャラクタを制御するとともに、中間目的地でユーザの到着まで待機することで、円滑なナビゲーションが可能になる。
【0137】
また、画像生成部180は、ユーザが中間目的地に到着したと判断された場合には、中間目的地における目標移動方向情報が表示されるナビゲーション画面を生成してもよい。
【0138】
目標移動方向情報とは、中間目的地から見た次の目的地(中間目的地でもよいし、最終目的地でもよい)に到達するための方向を示す情報であり、具体的には例えば、図15(A)、図15(B)に示すようなマップ情報であってもよい。
【0139】
これにより、中間目的地に到着した場合には、目標移動方向情報を表示することで、よりユーザにとってわかりやすい形でナビゲーションを行うことが可能になる。具体的には、上述したように、キャラクタだけを表示していたのでは、左右の厳密な角度までは正確に表現できず、複雑な分岐の道路等の案内には十分でない。そこで、そのような場合には、マップ等の目標移動方向情報を表示することで、ユーザの理解を助ける必要がある。なお、ユーザが中間目的地に到着したか否かの判定は、キャラクタが中間目的地に到着しており、かつ、キャラクタが第1の距離エリアに位置するか否かで行えばよい。
【0140】
また、画像生成部180は、表示画像として、ヘッドマウントディスプレイに表示される画像を生成してもよい。具体的には例えば、ヘッドマウントディスプレイは、外界視界にナビゲーション画像を重畳して表示するシースルー型のヘッドマウントディスプレイであってもよい。ただし、ヘッドマウントディスプレイはこれに限定されるものではなく、二眼式の外界視界を直接見ることができない構成(つまり、外界視界はカメラで撮影したものをユーザに提示するビデオシースルー型のヘッドマウントディスプレイ等)であってもよい。
【0141】
これにより、ヘッドマウントディスプレイを表示装置として用いることが可能になり、ユーザの視線方向を頻繁に変化させる必要がなくなる。これは、ヘッドマウントディスプレイは視線をあまり動かさずとも、外界視界とナビゲーション画像との両方を見ることが可能であることによる。例えば、携帯電子機器の画面にナビゲーション画像を表示するようなシステムでは、進行方向と携帯電子機器の画面とを交互に参照する必要があり、ユーザにとって安全でなく、かつ、煩わしいものであったが、そのような問題を解消することができる。
【0142】
また、本実施形態の手法は、センサ情報取得部110と、ユーザ情報特定部120と、キャラクタ制御部170と、位置関係情報特定部160と、画像生成部180として、コンピュータを機能させるプログラムに関係する。センサ情報取得部110は、ユーザのウェアラブルセンサからのセンサ情報を取得する。ユーザ情報特定部120は、センサ情報に基づいて、仮想マップ上でのユーザの位置情報を特定する。キャラクタ制御部170は、ナビゲーション用キャラクタを目的地に向かって移動させる制御を行う。位置関係情報特定部160は、キャラクタとユーザのマップ上での位置関係情報を特定する。画像生成部180は、ナビゲーション画像を生成する。そしてキャラクタ制御部170は、ユーザとキャラクタの位置関係情報に基づいて、キャラクタを制御する。
【0143】
これにより、画像生成システムのとどまらず、プログラムにも本実施形態の手法を適用し、上述の効果を得ることが可能になる。
【0144】
4.処理の詳細
【0145】
図23及び図24のフローチャートを用いて、本実施形態の処理の詳細について説明する。図23の処理がメイン処理となり、特に問題が生じていないケースの処理となる。また、図24の処理がサブ処理となり、ユーザが立ち止まってしまった等の問題が生じた際の処理となる。サブ処理を監視するスレッドが常時動いており、サブ処理の条件を満たした場合にはメイン処理を停止してサブ処理による割り込みが行われる。
【0146】
まず、図23のメイン処理から説明する。この処理が開始されると、まず、サブ処理を別スレッドで起動する(S101)。そして、ナビゲーションを開始して(S103)、ユーザとの距離がエリア2の範囲内かの判定を行う(S105)。これはキャラクタがエリア1にいる場合も含むものとする。S105でエリア2の範囲内にいると判定された場合には、キャラクタを通常よりも速い速度であるS2で目的地へ移動させる(S107)。S105でエリア2の範囲外と判定された場合には、次に、ユーザとの距離がエリア3の範囲内かの判定を行う(S109)。エリア3の範囲内である場合には、通常の速度であるS3で目的地へ移動させる(S111)。S109でエリア3の範囲外(つまりエリア4)と判定された場合には、最高の速度であるS4でエリア1に移動させ、ユーザに追尾を促す(S113)。
【0147】
そして、S107もしくはS111において、目的地への移動を行った場合には、キャラクタが目的地に着いたかの判定を行う(S115)。ここで、目的地に着いていない場合にはS103に戻ることになる。なお、キャラクタの移動中はS103〜S115のループを繰り返すことになる。
【0148】
S115で目的地に着いていると判定された場合には、目的地で待機して(S117)、ユーザが到着したか(キャラクタがエリア1の範囲内か)の判定を行い(S119)、ユーザが到着していない場合にはS117に戻り待機する。
【0149】
S119でユーザが目的地に到着したと判定された場合には、到着した目的地が最終目的地かの判定を行い(S121)、そうでない場合、つまり、到着したのが中間目的地だった場合には、S103に戻って次の目的地に向けて処理を続ける。S121において、到着したのが最終目的地だった場合には処理を終了し、サブ処理のスレッドを停止する(S123)。
【0150】
次に、図24のサブ処理について説明する。この処理が開始されると、まず、ユーザが立ち止まったかの判定が行われる(S201)。立ち止まっていると判定された場合には、メイン処理を停止し(S207)、最高の速度であるS4でエリア1に移動し、ユーザに追尾を促す(S209)。そして、割り込み処理を終了し、メイン処理をS103から再開させる。
【0151】
S201において、立ち止まっていないと判定された場合には、キャラクタがユーザの視界からはずれたかの判定を行う(S203)。視界から外れた場合には、メイン処理を停止し(S207)、キャラクタの存在方向を表す存在方向情報を表示する(S211)。具体的には上述したように図10のような矢印等を表示する。そして、割り込み処理を終了し、メイン処理をS103から再開させる。
【0152】
S203において、ユーザの視界からキャラクタが外れていないと判断された場合には、ユーザがキャラクタから離れていったかの判定が行われる(S205)。ユーザがキャラクタから離れていった場合には、メイン処理を停止し(S207)、最高の速度であるS4でエリア1に移動し、ユーザに追尾を促す(S209)。そして、割り込み処理を終了し、メイン処理をS103から再開させる。
【0153】
また、上述した中間目的地におけるマップ表示を行う場合のメイン処理のフローチャートを図25に示す。図23、図25から明らかなように、S322のステップ以外は図23と同様であるため、詳細な説明は省略する。この場合、S321において到着した目的地が最終目的地でなかった場合、つまり、中間目的地に到着したと判断された場合に、S303に戻る前に、一定時間だけ曲がる方向を表すマップ画面を表示する(S322)。なお、サブ処理については図24と同様であるため説明は省略する。
【0154】
以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また画像生成システムの構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【0155】
100 画像生成システム、110 センサ情報取得部、120 ユーザ情報特定部、
130 記憶部、132 マップ記憶部、140 I/F部、150 経路設定部、
160 位置関係情報特定部、170 キャラクタ制御部、180 画像生成部、
190 情報記憶媒体

【特許請求の範囲】
【請求項1】
ユーザのウェアラブルセンサからのセンサ情報を取得するセンサ情報取得部と、
前記センサ情報に基づいて、仮想マップ上での前記ユーザの位置情報を特定するユーザ情報特定部と、
前記ユーザを前記仮想マップ上の目的地に誘導するナビゲーション用のキャラクタを、前記目的地に向かって移動させる制御を行うキャラクタ制御部と、
前記ユーザの前記位置情報に基づいて、前記キャラクタと前記ユーザとの前記仮想マップ上での位置関係情報を特定する位置関係情報特定部と、
前記キャラクタを用いて前記ユーザを前記目的地に誘導するナビゲーション画像を、表示画像として生成する画像生成部と、
を含み、
前記キャラクタ制御部は、
前記キャラクタと前記ユーザの前記位置関係情報に基づいて、前記キャラクタを制御することを特徴とする画像生成システム。
【請求項2】
請求項1において、
前記位置関係情報特定部は、
前記ユーザの位置に対して設定される第1〜第N(Nは2以上の整数)の距離エリアのいずれの距離エリアに、前記キャラクタが位置するかを判断し、
前記キャラクタ制御部は、
前記第1〜第Nの距離エリアのいずれの距離エリアに前記キャラクタが位置するかに応じて、前記キャラクタを制御することを特徴とする画像生成システム。
【請求項3】
請求項2において、
前記キャラクタ制御部は、
前記ユーザからの距離が最も遠い距離エリアである前記第Nの距離エリアに前記キャラクタが位置すると判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行うことを特徴とする画像生成システム。
【請求項4】
請求項3において、
前記キャラクタ制御部は、
前記ユーザからの距離が前記第Nの距離エリアよりも近い距離エリアである第N−1の距離エリアに前記キャラクタが位置すると判断された場合には、前記キャラクタを前記目的地の方に向かって移動させる制御を行うことを特徴とする画像生成システム。
【請求項5】
請求項4において、
前記キャラクタ制御部は、
前記ユーザからの距離が前記第N−1の距離エリアよりも近い距離エリアである第N−2の距離エリアに前記キャラクタが位置すると判断された場合には、前記第N−1の距離エリアに前記キャラクタが位置すると判断された場合よりも速い速度で、前記キャラクタを前記目的地の方に向かって移動させる制御を行うことを特徴とする画像生成システム。
【請求項6】
請求項2乃至5のいずれかにおいて、
前記キャラクタ制御部は、
前記キャラクタが前記目的地に到着した後に、前記ユーザからの距離が最も近い距離エリアである前記第1の距離エリアに前記キャラクタが位置すると判断された場合に、前記ユーザが前記目的地に到着したと判断することを特徴とする画像生成システム。
【請求項7】
請求項1乃至6のいずれかにおいて、
前記キャラクタ制御部は、
前記ユーザが移動を停止したと前記センサ情報に基づき判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行うことを特徴とする画像生成システム。
【請求項8】
請求項1乃至7のいずれかにおいて、
前記キャラクタ制御部は、
前記ユーザが前記キャラクタから離れる方向に移動したと前記センサ情報に基づき判断された場合には、前記キャラクタを前記ユーザの方に向かって移動させる制御を行うことを特徴とする画像生成システム。
【請求項9】
請求項1乃至8のいずれかにおいて、
前記ユーザ情報特定部は、
前記センサ情報に基づいて、前記ユーザの方向情報を特定し、
前記位置関係情報特定部は、
前記方向情報に基づいて、前記キャラクタが前記ユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判断し、
前記画像生成部は、
前記キャラクタが前記所定の判定範囲内に位置しないと判断された場合には、前記キャラクタの存在方向を示す存在方向情報が表示される前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項10】
請求項9において、
前記画像生成部は、
前記キャラクタの存在方向を示す矢印画像が前記存在方向情報として表示される前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項11】
請求項1乃至10のいずれかにおいて、
前記画像生成部は、
前記キャラクタと前記ユーザの前記位置関係情報に基づいて、前記キャラクタのサイズ及び前記キャラクタの表示位置の少なくも一方が変化する前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項12】
請求項11において、
前記ユーザ情報特定部は、
前記センサ情報に基づいて、前記ユーザの方向情報を特定し、
前記位置関係情報特定部は、
前記方向情報に基づいて、前記キャラクタが前記ユーザの視野範囲に基づいて設けられる所定の判定範囲内に位置するか否かを判断し、
前記画像生成部は、
前記キャラクタが前記所定の判定範囲内に位置すると判断された場合には、前記位置関係情報特定部により特定された位置関係に対応する画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項13】
請求項12において、
前記画像生成部は、
前記仮想マップ上での前記ユーザの前記視野範囲をθ2とした場合に、前記仮想マップ上でθ2に対応する視野範囲を、θ2>θ1を満たすθ1の画角で外界視界に重畳される画像を生成することを特徴とする画像生成システム。
【請求項14】
請求項12又は13において、
前記ユーザ情報特定部は、
前記センサ情報に基づいて、前記ユーザの頭部方向又は視線方向を前記方向情報として特定し、
前記画像生成部は、
前記キャラクタが前記所定の判定範囲内に位置すると判断され、かつ、前記頭部方向又は前記視線方向の右側領域に前記キャラクタが位置すると判断された場合には、右側画像領域の前記画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成するとともに、
前記キャラクタが前記所定の判定範囲内に位置すると判断され、かつ、前記頭部方向又は前記視線方向の左側領域に前記キャラクタが位置すると判断された場合には、左側画像領域の前記画像上位置に前記キャラクタが表示された前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項15】
請求項1乃至14のいずれかにおいて、
前記キャラクタ制御部は、
ナビゲーションのスタート地点と最終目的地の間に設定された中間目的地に向かって、前記キャラクタを移動させる制御を行うことを特徴とする画像生成システム。
【請求項16】
請求項15において、
前記画像生成部は、
前記中間目的地に前記ユーザが到着したと判断された場合には、前記中間目的地での目標移動方向情報が表示される前記ナビゲーション画像を生成することを特徴とする画像生成システム。
【請求項17】
請求項1乃至16のいずれかにおいて、
前記画像生成部は、
前記表示画像として、ヘッドマウントディスプレイに表示される画像を生成することを特徴とする画像生成システム。
【請求項18】
請求項17において、
前記ヘッドマウントディスプレイは、
外界視界に前記ナビゲーション画像を重畳して表示するシースルー型のヘッドマウントディスプレイであり、
前記画像生成部は、
前記表示画像として、前記ヘッドマウントディスプレイに表示される画像を生成することを特徴とする画像生成システム。
【請求項19】
ユーザのウェアラブルセンサからのセンサ情報を取得するセンサ情報取得部と、
前記センサ情報に基づいて、仮想マップ上での前記ユーザの位置情報を特定するユーザ情報特定部と、
前記ユーザを前記仮想マップ上の目的地に誘導するナビゲーション用のキャラクタを、前記目的地に向かって移動させる制御を行うキャラクタ制御部と、
前記ユーザの前記位置情報に基づいて、前記キャラクタと前記ユーザの前記仮想マップ上での位置関係情報を特定する位置関係情報特定部と、
前記キャラクタを用いて前記ユーザを前記目的地に誘導するナビゲーション画像を生成する画像生成部として、
コンピュータを機能させ、
前記キャラクタ制御部は、
前記キャラクタと前記ユーザの前記位置関係情報に基づいて、前記キャラクタを制御することを特徴とするプログラム。
【請求項20】
コンピュータ読み取り可能な情報記憶媒体であって、請求項19に記載のプログラムを記憶したことを特徴とする情報記憶媒体。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図2】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−63253(P2012−63253A)
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願番号】特願2010−207787(P2010−207787)
【出願日】平成22年9月16日(2010.9.16)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】