(58)【調査した分野】(Int.Cl.,DB名)
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記携帯端末装置は、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、
前記撮影装置により撮影された前記特徴点集合の各々を認識し、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、
前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するものであり、該複合現実画像を生成するにあたって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行され、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記携帯端末装置は、所定時間ごとに、前記撮影装置により撮影された前記特徴点集合の各々を認識し、前記視点位置を決定し、前記複合現実画像を生成する、
複合現実システム。
前記携帯端末装置は、前記複合現実画像を生成するにあたって、前記仮想カメラの視野範囲内に前記第1の仮想オブジェクトと前記第2の仮想オブジェクトが重複する場合において、該第2の仮想オブジェクトの前記視点位置からの奥行距離が該第1の仮想オブジェクトよりも大きい場合、該重複した部分が除かれた該第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する、請求項1に記載の複合現実システム。
前記複合現実システムは、前記所定の実空間に配置された4つの前記特徴点集合を含み、該特徴点集合の各々は、実空間上の仮想的な矩形の4つの頂点位置に対応する位置関係を有し、かつ予め定められた垂直方向の距離及び予め定められた水平方向の距離離れて配置される、請求項1又は2に記載の複合現実システム。
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置に実行させるプログラムであって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記プログラムは、前記携帯端末装置に、
前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定するステップと、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータ、該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップであって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行される、ステップと、
を実行させ、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記プログラムは、前記携帯端末装置に、所定時間ごとに、前記特徴点集合の各々を認識するステップと、前記視点位置を決定するステップと、前記複合現実画像を生成するステップと、を実行させる、
プログラム。
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおける携帯端末装置であって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記携帯端末装置は、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、
前記撮影装置により撮影された前記特徴点集合の各々を認識し、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、
前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するものであり、該複合現実画像を生成するにあたって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行され、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記携帯端末装置は、所定時間ごとに、前記撮影装置により撮影された前記特徴点集合の各々を認識し、前記視点位置を決定し、前記複合現実画像を生成する、
携帯端末装置。
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置により実行される方法であって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定するステップと、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータ、該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップであって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行されるステップと、
を含み、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記携帯端末装置により、所定時間ごとに、前記特徴点集合の各々を認識するステップと、前記視点位置を決定するステップと、前記複合現実画像を生成するステップと、が実行される、
方法。
サーバ、並びに所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記サーバは、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、
前記携帯端末装置は、
前記撮影装置により撮影された前記特徴点集合の各々を認識し、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、
前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するものであり、該複合現実画像を生成するにあたって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行され、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記携帯端末装置は、所定時間ごとに、前記撮影装置により撮影された前記特徴点集合の各々を認識し、前記視点位置を決定し、前記複合現実画像を生成する、
複合現実システム。
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記携帯端末装置は、
予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、
前記撮影装置により撮影された前記特徴点集合の各々を認識し、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、前記第1の仮想オブジェクトの位置姿勢情報を決定し、
前記第1の仮想オブジェクトのデータ及び前記第2の仮想オブジェクトのデータに基づいて、実空間の撮影画像に視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するものであり、該複合現実画像を生成するにあたって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行され、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記携帯端末装置は、所定時間ごとに、前記撮影装置により撮影された前記特徴点集合の各々を認識し、前記第1の仮想オブジェクトの位置姿勢情報を決定し、前記複合現実画像を生成する、
複合現実システム。
所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置に実行させるプログラムであって、
前記複合現実システムは、
前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、
前記プログラムは、前記携帯端末装置に、
前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、
認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトの位置姿勢情報を決定するステップと、
前記第1の仮想オブジェクトのデータ及び前記実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータに基づいて、実空間の撮影画像に視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップであって、該第1の仮想オブジェクトについてはインビシブルな描画処理が実行されるステップと、
を実行させ、
前記複合現実システムは、5以上の前記特徴点集合を含み、
前記プログラムは、前記携帯端末装置に、所定時間ごとに、前記特徴点集合の各々を認識するステップと、前記第1の仮想オブジェクトの位置姿勢情報を決定するステップと、前記複合現実画像を生成するステップと、を実行させる、
プログラム。
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来、MR技術が対象とするものはセンサの観測範囲内での実空間であり、広域空間でMRを実現することは難しかった。例えば、屋外において、ビル群の間を仮想的な巨大ロボットが飛行するようなMRを実現することは難しかった。
【0006】
本発明は、このような課題を解決するためになされたものであり、屋外などの比較的広域な空間を対象として、ユーザに、その場所に応じたMRを体験させることが可能な複合現実システム等を提供することを主目的とする。
【課題を解決するための手段】
【0007】
上記の目的を達成するために、本発明の一態様としてのシステムは、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記携帯端末装置は、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、前記撮影装置により撮影された前記特徴点集合の各々を認識し、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する、ことを特徴とする。
【0008】
また、本発明において好ましくは、前記携帯端末装置は、前記複合現実画像を生成するにあたって、前記仮想カメラの視野範囲内に前記第1の仮想オブジェクトと前記第2の仮想オブジェクトが重複する場合において、該第2の仮想オブジェクトの前記視点位置からの奥行距離が該第1の仮想オブジェクトよりも大きい場合、該重複した部分が除かれた該第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する。
【0009】
また、本発明において好ましくは、前記複合現実システムは、5以上の前記特徴点集合を含み、前記携帯端末装置は、所定時間ごとに、前記撮影装置により撮影された前記特徴点集合の各々を認識し、前記視点位置を決定し、前記複合現実画像を生成する。
【0010】
また、本発明において好ましくは、前記複合現実システムは、前記所定の実空間に配置された4つの前記特徴点集合を含み、該特徴点集合の各々は、実空間上の仮想的な矩形の4つの頂点位置に対応する位置関係を有し、かつ予め定められた垂直方向の距離及び予め定められた水平方向の距離離れて配置される。
【0011】
また、本発明において好ましくは、1又は複数の前記特徴点集合が、水平方向に離れて設置された複数の棒状体の各々に、固定して取り付けられる。
【0012】
また、本発明において好ましくは、前記特徴点集合の各々は、光を透過する材料で形成される透過部材に固定して取り付けられる。
【0013】
また、本発明において好ましくは、前記特徴点集合の各々は、ワイヤーを用いて固定して取り付けられる。
【0014】
また、本発明において好ましくは、前記特徴点集合は、ポスター、絵、写真、ArUcoマーカ、ARマーカ、2次元コード、又はデータマトリックスである。
【0015】
上記の目的を達成するために、本発明の一態様としてのプログラムは、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置に実行させるプログラムであって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記プログラムは、前記携帯端末装置に、前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定するステップと、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータ、該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップと、を実行させることを特徴とする。
【0016】
また、上記の目的を達成するために、本発明の一態様としての携帯端末装置は、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおける携帯端末装置であって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記携帯端末装置は、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、前記撮影装置により撮影された前記特徴点集合の各々を認識し、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する、ことを特徴とする。
【0017】
また、上記の目的を達成するために、本発明の一態様としての方法は、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置により実行される方法であって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定するステップと、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータ、該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップと、を含むことを特徴とする。
【0018】
また、上記の目的を達成するために、本発明の一態様としてのシステムは、サーバ、並びに所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記サーバは、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、前記携帯端末装置は、前記撮影装置により撮影された前記特徴点集合の各々を認識し、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、実空間における前記撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、前記第1の仮想オブジェクトのデータ、前記第2の仮想オブジェクトのデータ、及び前記視点位置に基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する、ことを特徴とする。
【0019】
また、上記の目的を達成するために、本発明の一態様としてのシステムは、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムであって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記携帯端末装置は、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトのデータと該実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータとを記憶するとともに、前記所定の実空間に配置された前記特徴点集合の各々の仮想空間における配置位置姿勢情報を記憶し、前記撮影装置により撮影された前記特徴点集合の各々を認識し、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々の前記配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、前記第1の仮想オブジェクトの位置姿勢情報を決定し、前記第1の仮想オブジェクトのデータ及び前記第2の仮想オブジェクトのデータに基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成する、ことを特徴とする。
【0020】
また、上記の目的を達成するために、本発明の一態様としてのプログラムは、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、実空間の撮影画像に実空間に対応する仮想空間に配置される仮想オブジェクトの画像を重畳させた複合現実画像を該ディスプレイに表示するための複合現実システムにおいて、該携帯端末装置に実行させるプログラムであって、前記複合現実システムは、前記所定の実空間内に配置された複数の特徴点集合を含み、該特徴点集合は、各々を識別可能な識別可能情報を含み、該複数の特徴点集合のうちの少なくとも3つの該特徴点集合は予め定められた位置関係を有するように配置され、前記プログラムは、前記携帯端末装置に、前記撮影装置により撮影された前記特徴点集合の各々を認識するステップと、認識した前記特徴点集合の一部又は全部の各々の前記識別可能情報から取得された該特徴点集合の各々が配置された仮想空間における配置位置姿勢情報、及び該特徴点集合の形状及び大きさから決定される該特徴点集合の各々に対する前記携帯端末装置の相対位置姿勢情報に基づいて、予め取得された前記所定の実空間内に存在する実オブジェクトに対応するものであり仮想空間を定めるものである第1の仮想オブジェクトの位置姿勢情報を決定するステップと、前記第1の仮想オブジェクトのデータ及び前記実オブジェクトに対応しない仮想空間における第2の仮想オブジェクトのデータに基づいて、実空間の撮影画像に該視点位置に応じた前記第2の仮想オブジェクトの画像を重畳させた複合現実画像を生成するステップと、を実行させることを特徴とする。
【発明の効果】
【0021】
本発明によれば、屋外などの比較的広域な空間を対象として、ユーザに、その場所に応じたMRを体験させることができる。
【発明を実施するための形態】
【0023】
以下、図面を参照して、ユーザに対して仮想空間と現実空間とを融合した複合現実空間を提供する複合現実(MR)システムについて説明する。本明細書においては、説明の便宜上、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成についての重複説明を省略する場合がある。なお各図において同一の符号は、特に言及が無い限り同一又は相当部分を示すものとする。
【0024】
本実施形態によるMRシステムは、例えばスマートフォンの画面を通してユーザが視認する実空間の撮影画像に対して、実空間に対応する仮想空間に配置される仮想空間上のオブジェクトである仮想オブジェクトを重畳させて描画することにより、ユーザにMRを体験させる。
【0025】
図1は、本発明の一実施形態の複合現実システム(MRシステム)1の一部を示す模式図である。本発明の実施形態によるMRシステム1は、予め定められた所定の実空間(実空間50)において実現する。実空間50は、予め定められた屋外の実空間であり、該空間内には、現実世界におけるオブジェクトである実オブジェクトが存在する。実オブジェクトは、例えば建物、橋、壁などの構造物であり、実空間内に固定されたものである。ただし、移動可能な物を実オブジェクトに含めてもよい。また、実空間50は、屋外の実空間の代わりに屋内の実空間であってもよいし、屋内の実空間を一部に含んでいてもよい。
【0026】
MRシステム1は、
図1に示すように、携帯端末装置2と、実空間50内に配置された複数の特徴点集合4を含む特徴点集合群3とを含む。
【0027】
図2は本発明の一実施形態の携帯端末装置2のハードウェア構成を示すブロック図である。携帯端末装置2は、プロセッサ11、入力装置12、表示装置13、撮影装置14、記憶装置15、及び通信装置16を備える。これらの各構成装置はバス17によって接続される。なお、バス17と各構成装置との間には必要に応じてインタフェースが介在しているものとする。本実施形態において、携帯端末装置2はスマートフォンである。ただし、携帯端末装置2は、上記の構成を備える携帯可能な端末であれば、タブレット型コンピュータ、タッチパッド等の接触型入力装置を備えるコンピュータなどの端末とすることができる。
【0028】
プロセッサ11は、携帯端末装置2全体の動作を制御する。例えばプロセッサ11は、CPUである。なお、プロセッサ11としては、MPU等の電子回路が用いられてもよい。プロセッサ11は、記憶装置15に格納されているプログラムやデータを読み込んで実行することにより、様々な処理を実行する。1つの例では、プロセッサ11は、複数のプロセッサから構成される。
【0029】
入力装置12は、携帯端末装置2に対するユーザからの入力を受け付けるユーザインタフェースである。表示装置(ディスプレイ)13は、プロセッサ11の制御に従って、アプリケーション画面や撮影装置14によって撮影された画像などを携帯端末装置2のユーザに表示するものである。本実施形態においては、スマートフォンである携帯端末装置2は入力装置12としてタッチパネルを備え、タッチパネルは表示装置13としても機能し、入力装置12と表示装置13は一体となった構造である。ただし、入力装置12と表示装置13は、別の位置に配置される別個の形態であってもよい。この場合、入力装置12は、例えばタッチパッド又はボタンなどとすることができ、表示装置13は、液晶ディスプレイ、有機ELを用いたディスプレイ、又はプラズマディスプレイなどとすることができる。
【0030】
撮影装置(撮像装置)14は、実空間の静止画又は動画を撮影(撮像)するものであり、撮影した画像又は動画データを記憶装置15に格納する。撮影装置14は、例えばイメージセンサなどから構成されるカメラである。
【0031】
記憶装置15は、揮発性メモリであるRAM及び不揮発性メモリであるROMを含む、一般的なスマートフォンが備える記憶装置である。記憶装置15は、外部メモリを含むこともできる。
【0032】
1つの例では、記憶装置15は、主記憶装置及び補助記憶装置を含む。主記憶装置は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、プロセッサ11が情報を処理する際の記憶領域及び作業領域として用いられる。補助記憶装置は、様々なプログラムや、各プログラムの実行に際してプロセッサ11が使用するデータを格納する。補助記憶装置は、例えばハードディスク装置であるが、情報を格納できるものであればいかなる不揮発性ストレージ又は不揮発性メモリであってもよく、着脱可能なものであっても構わない。補助記憶装置は、例えば、オペレーティングシステム(OS)、ミドルウェア、アプリケーションプログラム、これらのプログラムの実行に伴って参照され得る各種データなどを格納する。
【0033】
通信装置16は、インターネットなどのネットワークを介して他のコンピュータとの間でデータの授受を行う。例えば通信装置16は、移動体通信や無線LAN等の無線通信を行い、ネットワークへ接続する。1つの例では、通信装置16によって、プログラムをサーバからダウンロードして、記憶装置15に格納する。ただし、通信装置16は、イーサネット(登録商標)ケーブル等を用いた有線通信を行ってもよい。他のコンピュータとの間でデータの送受信を行わない場合、携帯端末装置2は通信装置16を備えなくてもよい。
【0034】
特徴点集合4は、局所特徴点集合を示すものであり、本実施形態では、特徴点集合4は、ArUcoマーカ(非特許文献1)である。特徴点集合4は、予め実空間50内に固定して配置される。特徴点集合4の各々は、一意の識別情報(ID)と紐付けられている。ただし、特徴点集合4の各々は、各々の特徴点集合4を識別可能な識別可能情報を含むものであればよい。識別情報は、識別可能情報の1つの例示である。また、特徴点集合4は、ArUcoマーカに限定されない。
【0035】
図3は、本発明の一実施形態の特徴点集合4を示す図である。特徴点集合4は、白色と黒色の正方形から構成され、全体として正方形の形状を有する。特徴点集合4の外縁を構成する位置には黒色の正方形が配置される。各々の特徴点集合4は、白色と黒色の正方形の配置位置が異なり、該配置位置に応じたID(例えばID番号)が割り当てられる。特徴点集合4は、例えば、表面が平らな金属製の板に顔料を用いて印刷されたもの又は印刷されたものが他の支持物に取り付けられたものであり、太陽光の反射防止のためのコーティングが施される。
【0036】
特徴点集合4は、特徴点集合4の各々を識別することができるものであり、かつ実空間50内に固定して配置されるものであればよく、上記の例示に限定されない。特徴点集合4は、特徴点集合4自体のパターンが印刷されたものであってもよいし、特徴点集合4自体のパターンを含むものが印刷されたものであってもよい。特徴点集合4は、例えば一辺10cmの正方形の形状である。
【0037】
図1に示すように、特徴点集合群3は、4つの特徴点集合4を含み、特徴点集合4の各々は、水平方向に離れて設置された一対の棒状体41の各々に、垂直方向に離れて固定して取り付けられる。棒状体41は、例えば固定式のポール又は柱であり、地面に固定して取り付けられる。特徴点集合群3が含む特徴点集合4の各々は、実空間50上の仮想的な矩形の4つの頂点位置に対応する位置関係を有し、予め定められた垂直方向の距離及び予め定められた水平方向の距離離れて配置される。仮想的な矩形を構成する2辺は、鉛直方向(垂直方向)及び水平方向に平行であることが好ましい。なお、特徴点集合群3は、複数の特徴点集合4を表すものである。特徴点集合群3は、局所的に存在する複数の特徴点集合4を示すこともできるし、又は撮影装置14が撮影する1つの撮影画像内に収まる複数の特徴点集合4を示すこともできる。またMRシステム1は、複数の特徴点集合群3を含むこともできる。
【0038】
本実施形態においては、実空間50は、渋谷駅周辺全域のような、数キロメートル四方の範囲のエリアである。
図4は、本発明の一実施形態の実空間50の一部を示す模式図である。実空間50は、ビルなどの実オブジェクト51を含む。
【0039】
仮想空間60は実空間50に対応付けられた仮想的な空間であり、実空間50上の位置と仮想空間60上の位置は1対1で対応付けられる。MRシステム1は、仮想空間60において実空間50内にある実オブジェクト51を表す3次元空間データを用いる。したがって、3次元空間データは、実空間50に対応付けされた仮想空間60を定めるものであり、実オブジェクト51の3次元形状を表すものである。3次元空間データは、予め取得されるものであり、各々が仮想空間60における3次元位置情報を有する基本単位である3次元形状要素から構成される。この基本単位を3次元形状要素と表現する。本実施形態では、3次元形状要素として3次元メッシュを用いる。したがって、3次元空間データは3次元メッシュから構成される。3次元メッシュは、1又は複数のポリゴンから形成され、各々の3次元メッシュを構成するポリゴンの頂点の少なくとも1つは3次元位置情報を有する。ただし、3次元形状要素は、点群データなどとすることもできる。
【0040】
3次元形状要素が有する3次元位置情報は、実空間50上の位置情報に対応する仮想空間60上の位置情報である。ここでの実空間50上の位置情報は、例えば、緯度、経度、高度、方向を含む6DoF(6軸)の値であり、仮想空間60上の位置情報も、対応する6DoFの値である。
【0041】
近年、本実施形態の実空間50が対象とする比較的広域なエリアの3次元メッシュデータは、様々な企業から提供されており、比較的簡易に精密な3次元メッシュデータを取得することが可能である。
【0042】
このような3次元メッシュデータは、例えば以下のように予め取得される。最初に、高精度なレーザスキャナを用いることにより、実空間50内の実オブジェクト51の3次元形状を示す点群データを予め取得する。
図5は、実空間50に対応付けられた仮想空間60における点群データの一例を示す。点群データのそれぞれは、例えば3次元座標(x、y、z)を有し、実空間50に対応付けられた仮想空間60内に配置される。なお点群データのそれぞれは、色情報を有する色付き点群データである。続いて、既知の方法を用いて、上記のように取得された色付き点群データから各点群を頂点としたポリゴンが形成される。3次元メッシュは、当該ポリゴンから形成される。ただし、3次元空間データを構成する3次元形状要素は、色情報を有する必要はないため、上記例示において、点群データは色情報を有していなくてもよい。他の例では、3次元メッシュは、実空間50内における複数の撮影画像から、既知の方法を用いて生成される。
【0043】
図5は、
図4に示す実空間50に対応する仮想空間60を示し、実空間50内に存在する実オブジェクト51に対応する仮想オブジェクトである第1の仮想オブジェクト61を示す。仮想空間60に配置されるオブジェクトは、すべて仮想オブジェクトであるが、説明の便宜上、実オブジェクト51に対応する仮想オブジェクトを第1の仮想オブジェクト61と呼び、実オブジェクト51に対応しない仮想オブジェクト、すなわち実空間50内に存在しない仮想オブジェクトを第2の仮想オブジェクト62と呼ぶ。したがって、3次元空間データは、第1の仮想オブジェクト61のデータであり、第1の仮想オブジェクト61のデータにより仮想空間60は定められる。本実施形態では、例えば3次元空間データの座標は、仮想空間60の座標と同義である。
【0044】
仮想空間60の位置は、
図5に示すような3次元座標(x、y、z)を含む6DoFを用いて特定される。ただし、
図5に示す仮想空間60上の3次元座標は1つの例示であって、3次元座標の原点はいずれの場所に設定してもよいし、各座標軸はお互いに直交していればいずれの方向としてもよい。或いは、仮想空間60の位置は、他の座標系を用いて、3次元位置を特定してもよい。
【0045】
図6は、本発明の一実施形態の携帯端末装置2の機能ブロック図である。携帯端末装置2は、アプリケーション部21を備える。アプリケーション部21は、認識部22、位置決定部23、画像生成部24、及び画像表示部25を備える。本実施形態においては、プロセッサ11によりプログラムが実行されることによりこれらの機能が実現される。本実施形態においては、各種機能がプログラム読み込みにより実現されるため、1つのパート(機能)の一部を他のパートが有していてもよい。ただし、各機能の一部又は全部を実現するための電子回路等を構成することによりハードウェアによってもこれらの機能は実現してもよい。
【0046】
携帯端末装置2は、OSがインストールされるとともに、ユーザにMRを体験させるための当該OS上で動作させるアプリケーションがインストールされている。アプリケーション部21は、当該アプリケーションに対応するものであり、アプリケーションプログラムとして記憶装置15に記憶される。
【0047】
記憶装置15は、実空間50内に存在する実オブジェクト51に対応する仮想空間60における第1の仮想オブジェクト61のデータと仮想空間60における第2の仮想オブジェクト62のデータとを記憶する。本実施形態では、第2の仮想オブジェクト62のデータも3次元メッシュにより形成され、第2の仮想オブジェクトのデータが含む位置情報は、3次元空間データの座標で表現される又は3次元空間データの座標と紐付けられる。1つの例では、第2の仮想オブジェクト62は、仮想的なキャラクタ又は仮想的なアイテムである。
図7は、第2の仮想オブジェクト62の画像の一例である。1つの例では、第2の仮想オブジェクト62のデータは、位置及び時間の少なくとも一方に応じて形状、大きさ、及び向きの少なくとも1つが変化する仮想オブジェクトのデータである。
【0048】
記憶装置15は、特徴点集合4の各々のIDと、特徴点集合4の各々が配置された、実空間50上の位置情報に対応する仮想空間60における配置位置情報とが関連付けられた特徴点集合位置データを記憶する。ここでの配置位置情報は、3次元空間データの座標で表現される又は3次元空間データの座標と紐付けられるものである。また配置位置情報は、正確には配置位置姿勢情報であり、例えば6DoF(6軸自由度)の値である。したがって、例えば配置位置情報(配置位置姿勢情報)は、第1の仮想オブジェクト61の所定の位置(仮想空間60の原点)を原点とする特徴点集合4の位置姿勢情報である。なお、一般的にArUcoを使用する場合と同様にして、記憶装置15は、ArUcoを利用するためのソフトウェアモジュールを記憶しており、アプリケーション部21は、本モジュールを用いて、特徴点集合4の各々とIDとを対応付ける。
【0049】
1つの例では、記憶装置15は3次元空間データを3次元空間データベースとして機能させるためのプログラムとともに記憶する。例えばこの場合、アプリケーション部21は、認識した特徴点集合4の各々のIDの組み合わせを用いて3次元空間データベースに問い合わせることにより、該IDの組み合わせに応じた3次元空間データを取得する。
【0050】
アプリケーション部21は、ユーザ操作などによりアプリケーションが起動すると、撮影装置14を起動する。認識部22は、撮影装置14により撮影された特徴点集合4の各々を認識する。例えば、認識部22は、特徴点集合4の外縁及び白色と黒色の正方形の配置位置から特徴点集合4を認識するとともに該特徴点集合4のIDを認識する。好ましくは、認識部22は、所定時間ごとに、例えば0.5秒ごとに、撮影装置14により撮影された特徴点集合4の各々を認識する。
【0051】
位置決定部23は、実空間50における撮影装置14の位置及び撮影方向に対応する仮想空間60における仮想カメラの視点位置を決定する。位置決定部23が決定する仮想カメラの視点位置は、例えば仮想空間60上に6DoF(6軸自由度)で表される。例えば、仮想カメラの画角は、実際の撮影装置14の画角に応じて決定される。
【0052】
1つの例では、アプリケーション部21は、撮影装置14が所定の数量以上の特徴点集合4を撮影しているか否かを判定し、撮影装置14が所定の数量以上の特徴点集合4を撮影していると判定した場合、位置決定部23は、仮想カメラの視点位置を決定する。例えば、アプリケーション部21は、認識部22が3つ以上の特徴点集合4を認識した場合、位置決定部23は、仮想カメラの視点位置を決定する。
【0053】
位置決定部23は、認識した特徴点集合4のIDと記憶装置15が記憶する特徴点集合位置データとを用いて、該特徴点集合4が配置された配置位置情報を取得する。また位置決定部23は、認識した特徴点集合4の形状及び大きさから該特徴点集合4に対する携帯端末装置2の相対位置を示す相対位置情報を決定する。相対位置情報は、正確には相対位置姿勢情報であり、例えば相対位置としての6DoFを含む情報であり、特徴点集合4に対する携帯端末装置2(撮影装置14)の3次元位置及び向いている方向を含む。したがって、例えば相対位置情報(相対位置姿勢情報)は、仮想カメラの位置を原点とする特徴点集合4の位置姿勢情報である。位置決定部23は、認識した特徴点集合4の各々について、配置位置情報を取得し、携帯端末装置2と特徴点集合4との相対位置を示す相対位置情報を決定する。位置決定部23は、取得した配置位置情報及び決定した相対位置情報に基づいて、仮想カメラの視点位置(6DoF)を決定する。
【0054】
1つの例では、位置決定部23は、認識した特徴点集合4の各々についての配置位置情報及び相対位置情報を用いて、仮の仮想カメラの視点位置(6DoF)を各々算出する。位置決定部23は、算出された複数の6DoFの平均値を用いて、仮想カメラの視点位置を決定する。或いは、位置決定部23は、算出された複数の6DoFの中央値を用いて、仮想カメラの視点位置を決定する。或いは、位置決定部23は、算出された複数の6DoFをパーティクルフィルタ(非特許文献4)などの推定モデルに入力することにより、仮想カメラの視点位置を決定する。
【0055】
1つの例では、位置決定部23は、上記の例示の代わりに、又は追加して、既知の特徴点集合4の配置関係を用いて、仮想カメラの視点位置を決定する。ここで、特徴点集合4の各々は、予め定められた垂直方向及び水平方向の距離離れて配置されるため、一の特徴点集合4の位置から、他の特徴点集合4の位置を導き出すことができる。1つの例では、位置決定部23は、認識した特徴点集合4の各々について相対位置情報を決定すると、認識した特徴点集合4により構成される第1の仮想的な矩形を決定する。一方、位置決定部23は、認識した特徴点集合4の各々についての配置位置情報を取得し、取得した配置位置情報から構成される第2の仮想的な矩形を決定する。位置決定部23は、第2の仮想的な矩形の配置位置情報と、第2の仮想的な矩形に対する第1の仮想的な矩形の形状及び大きさとを用いて、仮想カメラの視点位置を決定する。
【0056】
他の例では、位置決定部23は、仮の仮想カメラの視点位置を一の特徴点集合4の配置位置情報及び相対位置情報を用いて算出された6DoFとした場合、該特徴点集合4から導き出した他の特徴点集合4の位置と、撮影装置14による撮影画像から特定される他の特徴点集合4の位置との差分を算出する。位置決定部23は、算出された6DoFの各々のうち、算出した差分が所定範囲内であった6DoFを抽出し、該6DoFの平均値若しくは中央値を用いて、又は該6DoFを既知の推定モデルに入力して、仮想カメラの視点位置を決定する。或いは、位置決定部23は、算出された6DoFの各々に対して、算出した差分に応じて重み付けを行い、重み付けを行った6DoFの平均値若しくは中央値を用いて、又は該6DoFを既知の推定モデルに入力して、仮想カメラの視点位置を決定する。或いは、位置決定部23は、算出されたDoFに基づいて仮想カメラの視点位置を決定した後、既知の特徴点集合群3の配置関係を用いて、当該仮想カメラの視点位置を補正する。
【0057】
1つの例では、位置決定部23は、特徴点集合4に対する携帯端末装置2の相対位置を以下のように決定する。特徴点集合4の各々の大きさ及び形状は、予め定められている。位置決定部23は、既知の方法を用いて、特徴点集合4を画像として認識し、特徴点集合4の輪郭を認識し、特徴点集合座標系からカメラ座標系へ変換するための座標変換行列を算出する。位置決定部23は、算出された座標変換行列を用いて、撮影装置14による撮影画像中の特徴点集合4のカメラ座標系における位置及び姿勢を算出し、特徴点集合4の撮影装置14に対する相対的な位置(6DoF)を決定する。
【0058】
1つの例では、位置決定部23は、特徴点集合4に対する携帯端末装置2の相対位置を以下のように決定する。位置決定部23は、撮像された画像中に含まれる対象物の検出のために回転や移動に強いロバストな特徴量である局所特徴量を用いた既知の方法(非特許文献2、3)を用いる。本例示において、記憶装置15は、特徴点集合4の各々のテンプレート画像を特徴点集合4のIDに関連付けて記憶する。位置決定部23は、局所特徴量を用いて、テンプレート画像と撮影装置14による撮影画像間の射影(回転、拡大縮小、変形など)を求めることにより、相対的な位置(6DoF)を決定する。ここで、局所特徴量とは、点、エッジ、小さいイメージ・パッチなど、画像内に見られるパターンや際立つ構造のことを指す。具体的には、テンプレート画像の四隅の点と、局所特徴量を用いて求めたホモグラフィ行列を利用して、射影を推定する。ホモグラフィ行列とは、ある平面を、射影変換を用いて別の平面に射影する際のパラメータを指す。
【0059】
仮想カメラの視点位置は、6DoFを用いて算出され決定されるが、同等の情報を含む他のフォーマットの位置情報を用いてもよい。
【0060】
画像生成部24は、記憶装置15が記憶する第1の仮想オブジェクト61のデータ及び第2の仮想オブジェクト62のデータ、並びに位置決定部23が決定した仮想カメラの視点位置に基づいて、実空間50の撮影画像に該視点位置に応じた第2の仮想オブジェクト62の画像を重畳させた複合現実画像を生成する。画像表示部25は、生成された複合現実画像を含むアプリケーション画面を表示装置13に表示する。
【0061】
1つの例では、画像生成部24は、位置決定部23が決定した仮想カメラの視点位置に対応する第1の仮想オブジェクト61のデータ及び第2の仮想オブジェクト62のデータを読み込み、実空間50の撮影画像に該視点位置に応じた第2の仮想オブジェクト62の画像を重畳させた複合現実画像を生成する。複合現実画像の生成にあたっては、特許文献1や非特許文献5に示すような既知の方法を用いることができる。
【0062】
図8は、実空間50の撮影画像に
図7に示す第2の仮想オブジェクト62の画像を重畳させた複合現実画像の一例である。画像生成部24は、仮想カメラの視野範囲内に第1の仮想オブジェクト61と第2の仮想オブジェクト62が重複する場合において、第2の仮想オブジェクト62の仮想カメラの視点位置からの奥行距離が第1の仮想オブジェクト61よりも大きい場合、該重複した部分が除かれた第2の仮想オブジェクト62の画像を重畳させた複合現実画像を生成する。例えば、画像生成部24は、第1の仮想オブジェクト61についてはインビジブルなメッシュとして描画処理を行い、第2の仮想オブジェクト62については通常の描画処理を実行する。これにより、上記重複した部分においては、第2の仮想オブジェクト62よりも仮想カメラの視点位置が近い第1の仮想オブジェクト61のインビジブルな描画処理が実行されることになる。なお、仮想カメラの視野範囲は、撮影装置14の画角に応じて決定される。
【0063】
図8は、一部が削られて表示される第2の仮想オブジェクト62を示す。
図8において、第2の仮想オブジェクト62は実オブジェクト51であるビルの向こう側に存在するように表示されていることが確認できる。
【0064】
1つの例では、画像生成部24は、所定のフレームレートで複合現実画像を生成することにより、MR動画を生成する。1つの例では、撮影装置14が特徴点集合4を認識しない場合や仮想カメラの視点位置が決定されない場合、画像表示部25は、実空間50の撮影画像をそのまま複合現実画像として表示する。
【0065】
本実施形態では、アプリケーション部21の各部の動作から、MRシステム1は、撮影装置14が撮影する1つの撮影画像内に収まる少なくとも3つの特徴点集合4を含む必要がある。特徴点集合群3が含む特徴点集合4のうち仮想的な矩形の隣接する頂点位置に対応する2つの特徴点集合4の垂直方向の距離及び水平方向の距離は、該特徴点集合群3から既定距離離れたときの撮影装置14の画角に基づいて決定される。
【0066】
図9は、本発明の一実施形態のMRシステム1における携帯端末装置2と特徴点集合群3が含む特徴点集合4の位置関係を説明する図である。
図9において、距離hは棒状体41に固定された特徴点集合4間の距離を表し、距離wは、一対の棒状体41の上側に固定された特徴点集合間4の距離又は下側に固定された特徴点集合間4の距離を表す。距離dは、特徴点集合群3からの撮影装置14(携帯端末装置2)の距離を表す。特徴点集合4間の距離は、例えば特徴点集合4の中心間の距離であり、特徴点集合群3からの距離は、例えば特徴点集合群3が含む特徴点集合4が構成する仮想的な矩形(平面)からの距離である。例えば距離dは、MRシステム1がMR体験を得ようとするユーザに対して推奨する該ユーザの特徴点集合群3からの距離である。
【0067】
1つの例では、撮影装置14の垂直画角がα度、水平画角がβ度の場合、距離hの最大値h
maxと距離wの最大値w
maxは、各々以下の式により決定される。
(1)
h≦h
max、w≦w
maxとなるように各特徴点集合4を配置することにより、撮影装置14が特徴点集合群3から距離d離れたときに、撮影装置14は、1つの撮影画像内に特徴点集合群3が含む特徴点集合4を収めることが可能となる。位置決定部23がより精度よく位置を算出するためには、特徴点集合4間の距離を大きくすることが好ましいため、h=h
max、w=w
maxとなるように各特徴点集合4を配置することが好ましい。1つの例では、d=2m、α=63度、β=50度の場合、h=1.2m、w=0.9mである。
【0068】
次に、本発明の一実施形態によるMRシステム1の情報処理について
図10に示したフローチャートを用いて説明する。
図10に示す情報処理は、プログラムを携帯端末装置2に実行させることで実現される。本処理においては、携帯端末装置2を持っているユーザは実空間50内におり、ユーザによりアプリケーション部21の機能を含むアプリケーションが起動された状態にある。1つの例では、当該アプリケーションが起動されている間、携帯端末装置2は、本フローチャートの処理を定期的に実行する。
【0069】
ステップ101で、携帯端末装置2は、携帯端末装置2の撮影装置14が撮影する撮影画像から特徴点集合4を3つ以上認識できるか否かを判定する。特徴点集合4を3つ以上認識した場合、本処理はステップ102へ進み、特徴点集合4を3つ未満認識した場合、本処理は終了する。
【0070】
次にステップ102で、携帯端末装置2は、認識した特徴点集合4のIDの各々と記憶装置15が記憶する特徴点集合位置データとを用いて、該特徴点集合4の各々が配置された配置位置情報を取得する。携帯端末装置2は、認識した特徴点集合4の形状及び大きさから該特徴点集合4の各々に対する携帯端末装置2の相対位置を示す相対位置情報を決定する。
【0071】
次にステップ103で、携帯端末装置2は、認識した特徴点集合4の各々についての配置位置情報及び相対位置情報の各々に基づいて、仮想カメラの視点位置を決定する。
【0072】
次にステップ104で、携帯端末装置2は、仮想カメラの視野範囲内で第2の仮想オブジェクト62が有るか否かを判定する。第2の仮想オブジェクト62が有る場合、本処理はステップ105へ進み、第2の仮想オブジェクト62が無い場合、本処理は終了する。ステップ105で、携帯端末装置2は、第1の仮想オブジェクト61のデータ、第2の仮想オブジェクト62のデータ、及び決定された仮想カメラの視点位置に基づいて、実空間50の撮影画像に該視点位置に応じた第2の仮想オブジェクト62の画像を重畳させた複合現実画像を生成する。本処理を終了する場合、携帯端末装置2は、実空間50の撮影画像をそのまま複合現実画像として表示する。
【0073】
次に、本発明の実施形態によるMRシステム1(携帯端末装置2)の主な作用効果について説明する。本実施形態では、MRシステム1は、所定の実空間50内に複数の特徴点集合4を含み、該特徴点集合4の各々は、実空間50上の仮想的な矩形の4つの頂点位置に対応する位置に、予め定められた垂直方向の距離及び水平方向の距離離れて配置される。また記憶装置15は、実空間50内にある実オブジェクト51を表し仮想空間60を定める3次元空間データを記憶するとともに、各特徴点集合4の配置位置情報を記憶し、該配置位置情報は3次元空間データに紐づけられたものである。
【0074】
携帯端末装置2は、特徴点集合4を認識することにより、認識した特徴点集合4の各々の配置位置情報を取得する。一方、携帯端末装置2は、認識した特徴点集合4の各々の撮影画像における形状及び大きさから該特徴点集合4の各々に対する携帯端末装置2の相対位置を示す相対位置情報(6DoF)を決定する。携帯端末装置2は、認識した特徴点集合4の各々の配置位置情報及び相対位置情報に基づいてカメラの視点位置(6DoF)を決定し、実空間50の撮影画像に仮想カメラの視点位置に応じた複合現実画像を生成する。
【0075】
このように、MRシステム1においては、3次元空間データ(仮想空間60)の座標を用いて実オブジェクト51と特徴点集合4の位置を紐付けられるため、携帯端末装置2は、特徴点集合4を認識することにより、認識した特徴点集合4の仮想空間60における配置位置情報を取得することができる。また本実施形態では、配置位置情報と特徴点集合4に対する携帯端末装置2の相対位置情報を用いて、ユーザにより操作されている撮影装置14(自己位置)に対応する仮想カメラの視点位置(6DoF)を決定することが可能である。
【0076】
また本実施形態では、携帯端末装置2は、特徴点集合4の各々から仮の仮想カメラの視点位置(6DoF)を各々算出した後で、算出した6DoFの各々に基づいて仮想カメラの視点位置を決定する。仮想カメラの視点位置の精度は、複合現実画像を生成する上で非常に重要である。このような構成とすることにより、本実施形態では、より精度よく仮想カメラの視点位置を決定することが可能となる。また本実施形態では、携帯端末装置2は、更に既知の特徴点集合群3の配置関係を用いて、仮想カメラの視点位置を決定する。これにより、より精度よく仮想カメラの視点位置を決定することが可能となる。この場合、携帯端末装置2が仮想カメラの視点位置を決定する上で、より正確にかつ速く演算するために、特徴点集合群3を構成する隣接する特徴点集合4は、鉛直方向(垂直方向)及び水平方向に実質的に平行であることが好ましい。
【0077】
また本実施形態では、携帯端末装置2は、複合現実画像を生成するにあたって、第1の仮想オブジェクト61についてはインビジブルなメッシュとして描画処理を行い、第2の仮想オブジェクト62については通常の描画処理を実行する。このような構成とすることにより、本実施形態では、第2の仮想オブジェクト62を表示するときの実オブジェクト51とのより精度の高い幾何学的整合性(前後関係、オクルージョンなど)を実現することが可能となる。複合現実画像における幾何学的整合性は、第2の仮想オブジェクト62にリアリティを与えるうえで、極めて重要である。
【0078】
上記の作用効果は、特に言及が無い限り、他の実施形態や他の実施例においても同様である。
【0079】
本発明の他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現するプログラムや該プログラムを格納したコンピュータ読み取り可能な記憶媒体とすることもできる。また他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現する方法とすることもできる。また他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現するプログラムをコンピュータに供給することができるサーバとすることもできる。また他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現する仮想マシンとすることもできる。また他の実施形態では、MRシステム1における特徴点集合4の配置構造とすることもできる。
【0080】
以下に本発明の実施形態の変形例について説明する。以下で述べる変形例は、矛盾が生じない限りにおいて、適宜組み合わせて本発明の任意の実施形態に適用することができる。
【0081】
1つの変形例では、特徴点集合4は、2次元コードであるか、又は2次元コードを含む。例えば特徴点集合4は、QRコード(登録商標)又はデータマトリックスである。更なる1つの変形例では、特徴点集合4としての2次元コードは、識別可能情報として、緯度、経度、アングル等を示す識別子を含む。この場合、2次元コードを認識した携帯端末装置2は、取得した識別可能情報から直接特徴点集合4の配置位置情報を取得することができる。この場合、記憶装置15は、特徴点集合位置データを記憶しなくてもよい。
【0082】
1つの変形例では、特徴点集合4は、既知のARマーカである。
【0083】
1つの変形例では、各々を識別可能な異なる特徴点の空間的な分散を有するポスター、絵、写真などを特徴点集合4として用いる。認識部22及び位置決定部23は、前述の局所特徴量を用いた既知の方法(非特許文献2、3)を用いる。この場合、局所特徴量が識別可能情報となる。本変形例において、記憶装置15は、特徴点集合4の各々のテンプレート画像を特徴点集合4のIDに関連付けて記憶する。認識部22は、撮影装置14により撮影された特徴点集合4から局所特徴量を抽出し、特徴点集合4の各々のテンプレート画像と照合することにより、特徴点集合4の各々のIDを認識する。位置決定部23は、認識した特徴点集合4のIDと記憶装置15が記憶する特徴点集合位置データとを用いて、該特徴点集合4が配置された配置位置情報を取得する。また位置決定部23は、局所特徴量を用いて、テンプレート画像と撮影装置14による撮影画像間の射影(回転、拡大縮小、変形など)を求めることにより、特徴点集合4に対する携帯端末装置2の相対位置情報を決定する。位置決定部23は、認識した特徴点集合4の各々について、配置位置情報を取得して相対位置情報を決定し、当該配置位置情報及び相対位置情報に基づいて、仮想カメラの視点位置を決定する。
【0084】
1つの変形例では、特徴点集合群3は、予め定められた位置関係を有するように配置された3つの特徴点集合4を含む。例えば、実空間50において水平方向に離れて設置された一対の棒状体41のうちの一方の棒状体41には2つの特徴点集合4が固定して取り付けられ、他方の棒状体41には1つの特徴点集合4が固定して取り付けられる。本実施形態では、特徴点集合群3が予め位置関係が定められた3つの特徴点集合4を含むことにより、位置決定部23は、既知の特徴点集合群3の配置関係を用いて、仮想カメラの視点位置を決定することが可能となる。この場合の3つの特徴点集合4は、実空間50上の仮想的な矩形の4つの頂点のうちの3つの頂点位置に対応する位置関係を有するように配置されることが好ましい。
【0085】
1つの変形例では、MRシステム1は、実空間50において水平方向に離れて設置された3以上の棒状体41の各々に固定して取り付けられた、複数の特徴点集合4を含む。各棒状体41においては、複数の特徴点集合4が垂直方向に離れて固定して取り付けられる。ただし、一部の棒状体41は、1つの特徴点集合4のみが取り付けられてもよい。
【0086】
1つの変形例では、特徴点集合4の各々は、光を透過する材料で形成される透過部材42に固定して取り付けられる。透過部材42は、例えば、可視光線のほぼ全域を透過するガラスや樹脂であり、窓ガラスのような構造物の一部でもよいし、ガラス板のような持ち運び可能なものでもよい。
図11は、窓ガラスに固定して取り付けられた特徴点集合群3を示す図である。
【0087】
1つの変形例では、特徴点集合4の各々は、ワイヤーを用いて固定して取り付けられる。ただし、ワイヤーと同等の機能を有する部材を用いて、実空間50に固定してもよい。
【0088】
1つの変形例では、MRシステム1は、5以上の特徴点集合4を含む特徴点集合群3を含む。例えば、特徴点集合群3は20の特徴点集合4から構成される。本変形例では、撮影装置14が1つの撮影画像内に、特徴点集合群3が含む特徴点集合4のすべてを収めることができない場合を想定する。
【0089】
認識部22は、所定時間ごとに、撮影装置14の撮影画像内に含まれる特徴点集合4の各々を認識する。位置決定部23は、所定時間ごとに、認識した特徴点集合4の各々の配置位置情報及び相対位置情報に基づいてカメラの視点位置(6DoF)を決定する。画像生成部24は、第1の仮想オブジェクト61のデータ及び第2の仮想オブジェクト62のデータ、並びに所定時間ごとに位置決定部23が決定した仮想カメラの視点位置に基づいて、実空間50の撮影画像に仮想カメラの視点位置に応じた複合現実画像を生成する。
【0090】
このように、撮影装置14が複数の特徴点集合4を認識した後、ユーザの移動により撮影装置14の撮影位置が移動したとき、携帯端末装置2は、他の複数の特徴点集合4を認識する。このような構成とすることにより、携帯端末装置2は、実空間50内のユーザの移動に伴って、複数の特徴点集合4を順次切り替えながらキャリブレーションする「ローミング処理」を行うことが可能となる。このように、本変形例では、撮影装置14が撮影する複数の特徴点集合4が時間に応じて変化する状況であっても、携帯端末装置2は自己位置(6DoF)を連続的に算出することが可能となる。これにより、実空間50内を移動するユーザに対して、MR体験を提供し続けることが可能となる。
【0091】
本変形例において、位置決定部23は、認識した特徴点集合4のうちの一部の特徴点集合4の各々の配置位置情報及び相対位置情報に基づいてカメラの視点位置(6DoF)を決定してもよい。例えば、撮影画像内の特徴点集合4のサイズが所定の大きさ以上の特徴点集合4の各々の配置位置情報及び相対位置情報に基づいてカメラの視点位置(6DoF)を決定してもよい。
【0092】
1つの変形例では、
図11に示すように、MRシステム1は、第1の特徴点集合群3a、第2の特徴点集合群3b、第3の特徴点集合群3c、及び第4の特徴点集合群3dを含む複数の特徴点集合群3を含む。本変形例において、各特徴点集合群3はお互いに異なる特徴点集合4を含むが、複数の特徴点集合群3が同一の特徴点集合4を含む。例えば、第1の特徴点集合群3aは、第2の特徴点集合群3bが含む特徴点集合4と、第2の特徴点集合群3bが含まない特徴点集合4を含む。
【0093】
認識部22は、所定時間ごとに、撮影装置14の撮影画像内に含まれる特徴点集合4の各々を認識する。アプリケーション部21は、認識した特徴点集合群3のうちの一の特徴点集合群3を基準特徴点集合群3として選択する。位置決定部23は、基準特徴点集合群3が含む特徴点集合4の各々についての相対位置情報を決定すると、認識した特徴点集合4により構成される第1の仮想的な矩形を決定する。一方、位置決定部23は、認識した特徴点集合4の各々についての配置位置情報を取得し、取得した配置位置情報から構成される第2の仮想的な矩形を決定する。位置決定部23は、第2の仮想的な矩形の配置位置情報と、第2の仮想的な矩形に対する第1の仮想的な矩形の形状及び大きさとを用いて、仮想カメラの視点位置を決定する。
【0094】
1つの例では、認識部22が特徴点集合4の各々を認識するごとに、アプリケーション部21は、基準特徴点集合群3を選択する。1つの例では、アプリケーション部21は、撮影画像に含まれる特徴点集合4がより多い特徴点集合群3を、基準特徴点集合群3として選択する。1つの例では、上記選択方法の代わりに、又はこれに加えて、アプリケーション部21は、撮影画像の中央部分に含まれる特徴点集合4がより多い特徴点集合群3を、基準特徴点集合群3として選択する。1つの例では、上記選択方法の代わりに、又はこれに加えて、アプリケーション部21は、撮影画像に含まれる特徴点集合4のサイズが大きい特徴点集合4の比率がより多い特徴点集合群3を、基準特徴点集合群3として選択する。
【0095】
このように、撮影装置14により基準特徴点集合群3が含む特徴点集合4を認識した後、ユーザの移動により撮影装置14の撮影位置が移動したとき、携帯端末装置2は、他の基準特徴点集合群3が含む特徴点集合4を認識する。このような構成とすることにより、携帯端末装置2は、実空間50内のユーザの移動に伴って、特徴点集合群3を順次切り替えながらキャリブレーションする「ローミング処理」を行うことが可能となる。このように、本変形例では、撮影装置14が撮影する複数の特徴点集合4が時間に応じて変化する状況であっても、携帯端末装置2は自己位置(6DoF)を連続的に算出することが可能となる。これにより、実空間50内を移動するユーザに対して、MR体験を提供し続けることが可能となる。
【0096】
なお、1つの特徴点集合群3は、6つの特徴点集合4を含むものとしてもよいし、9つの特徴点集合4を含むものとしてもよい。
【0097】
1つの変形例では、携帯端末装置2(位置決定部23)は、仮想カメラの視点位置を仮想空間60上の所定位置(例えば、予め定めた6DoF)に固定し、3次元空間データの座標の位置を動的に決定する。携帯端末装置2は、カメラの視点位置を決定する代わりに、第1の仮想オブジェクト61の3次元位置情報を決定する。例えば携帯端末装置2は、3次元空間データの座標を決定する。これに伴って、特徴点集合4の座標及び第2の仮想オブジェクト62の座標も変更される。
【0098】
1つの変形例では、配置位置情報(配置位置姿勢情報)又は相対位置情報(相対位置姿勢情報)は、6DoFの値の代わりに、クオータニオンの値を用いる。
【0099】
1つの変形例では、
図12に示すように、MRシステム1は、複数の携帯端末装置2と、サーバ6と備え、携帯端末装置2及びサーバ6は、インターネットなどのネットワーク8に接続され、互いに通信可能である。サーバ6は、一般的なサーバが備える構成を備える。例えば、サーバ6は、各部を制御するCPU等のプロセッサと、ROMやRAM等の記憶素子やハードディスクドライブ等の記憶装置と、ディスプレイ等の表示装置と、マウス、キーボード、タッチパネル等の入力装置と、ネットワークボード等の通信装置とを備える。これらの構成要素はバスを介して接続される。
【0100】
サーバ6が備える記憶装置は、第1の仮想オブジェクト61のデータ(3次元空間データ)及び第2の仮想オブジェクト62のデータを記憶する。携帯端末装置2の記憶装置15は、サーバ6が記憶するデータを記憶しなくてもよい。例えば、サーバ6は、3次元空間データを3次元空間データベースとして機能させるためのプログラムとともに記憶し、携帯端末装置2からの問い合わせに応じて、3次元空間データを携帯端末装置2に送信する。サーバ6が備える記憶装置は、携帯端末装置2の記憶装置15の代わりに、特徴点集合位置データを記憶してもよい。
【0101】
更なる1つの変形例では、MRシステム1の携帯端末装置2の動作は、サーバ6が提供するWebアプリにより実現される。例えば、サーバ6は、アプリケーション部21の機能をすべて備え、アプリケーション部21の動作で用いる各種データも併せて記憶する。この場合、サーバ6は、アプリケーション部21に対応するWebアプリを携帯端末装置2に提供する。携帯端末装置2は、該携帯端末装置2に予めインストールされたWebアプリが起動されると、サーバ6上のWebアプリへアクセスする。携帯端末装置2は、サーバ6と通信することにより、アプリケーション部21の機能を携帯端末装置2上で実現する。
【0102】
以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。また以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。
【解決手段】本発明は、所定の実空間内にいるユーザに対して仮想オブジェクトを表示するためのディスプレイ及び実空間を撮影する撮影装置を有する携帯端末装置を含み、複合現実画像を該ディスプレイに表示するための複合現実システムであって、複合現実システムは、所定の実空間内に配置された複数の特徴点集合を含み、携帯端末装置は、撮影装置により撮影された特徴点集合の各々を認識し、該特徴点集合の各々の配置位置姿勢情報及び該特徴点集合の各々に対する携帯端末装置の相対位置姿勢情報に基づいて、実空間における撮影装置の位置及び撮影方向に対応する仮想空間における仮想カメラの視点位置を決定し、実空間の撮影画像に該視点位置に応じた仮想オブジェクトの画像を重畳させた複合現実画像を生成する。