(57)【要約】【課題】現実空間に仮想空間物体を重畳して提示する複合現実感装置において、想定されていない現実物体がユーザの視野内に出現した場合であっても、当該現実物体によるオクルージョン問題を回避可能な複合現実感装置を提供すること。【解決手段】障害物検出部１０３５により障害物の存在する位置を検出する。そして、その障害物によってオクルージョン問題が発生する領域を障害範囲設定手段１０３６で求め、障害範囲に存在するＣＧオブジェクトについて表示位置又は方法を変更する。【選択図】  図１
2004234253.tif 000002
【特許請求の範囲】
【請求項１】
所定の視点位置から観察される現実空間に、前記所定の視点位置から観察される仮想物体の画像を合成して提示する複合現実感呈示方法において、
前記現実空間中に出現した現実物体を検出する障害物検出ステップと、
前記現実物体によって少なくとも一部が隠される仮想物体を検出する隠れ仮想物体検出ステップと、
前記隠れ仮想物体検出ステップが検出した仮想物体の画像の表示位置又は表示方法を変更する変更ステップを有することを特徴とする複合現実感呈示方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複合現実感呈示方法に関し、特に実写画像とコンピュータグラフィックス（ＣＧ）を代表とする仮想空間画像とのオクルージョン（隠れ）が問題となる複合現実感呈示方法に関するものである。
【０００２】
【従来の技術】
近年、コンピュータの性能向上や位置検出技術等の発達により、複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）技術を用いたアプリケーションが各種提案されてきている。複合現実感（ＭＲ）技術とは、現実空間又は現実空間画像上に仮想空間画像を合成した複合現実空間をユーザに体験させるための技術である。
【０００３】
ＭＲ技術を利用したアプリケーションとしては、例えば現在空き地となっている場所に仮想のビルをＣＧにより実現したり、テーブル（現実空間）の上で体長１５センチの怪獣（仮想空間画像）を動かす、等を挙げることができる。
【０００４】
このような複合現実空間を実現するには、現実空間も仮想空間も３次元空間であるため、現実空間座標系内に静止したワールド座標系を想定し、このワールド座標系内でビルや怪獣といった３次元仮想空間画像を配置、表示することになる。ただし、現実空間画像を仮想空間画像と合成する場合には、合成表示する現実空間画像（実写映像）と仮想空間画像（ＣＧ画像）は同じ点（視点）から同じ画角で観察される画像でなくてはならない。
【０００５】
例えば、ビデオシースルータイプの頭部装着型表示装置（ＨＭＤ）を用いてユーザが複合現実感を体験する場合、現実空間画像はＨＭＤに取り付けられたビデオカメラで撮影されることが多く、またカメラの画角は固定であることが多いので、カメラの位置と向きをリアルタイムで計測し、カメラの位置に対応付けられたワールド座標系内の点から見た仮想空間画像を合成表示する。
【０００６】
しかしながら、上述のように現実空間及び仮想空間は３次元空間であるため、奥行きが存在する。そのため、実写映像とＣＧの合成にはオクルージョン問題（隠れ問題）が存在する。これは本来、現実空間にある物体（現実物体）の裏側に隠れて見えないはずの仮想空間の物体（仮想物体（ＣＧオブジェクト））が見えてしまうという問題である。
【０００７】
この問題を防ぐためには、それ自体は透明だが、それに遮られ裏側に隠れたＣＧオブジェクトは見えない、という特徴を持った仮想物体を、現実空間画像中に存在する現実物体と全く同じように仮想空間に配置すればよい。
【０００８】
しかし、この方法で完全にオクルージョン問題を解決するには、透明仮想物体の位置と、対応する現実物体との位置合わせを正確に行う必要がある。そのためには、現実空間を精密に三次元計測必要があり、実際には非常に困難であるか不可能であり、非現実的である。
【０００９】
たとえば、ＭＲ技術を用いたボードゲームを考える。ここでいうボードゲームとは、ゲームの進行はボード上で行われ、ボード外の場所は使わないか、あるいはプレイヤーの持ち札、持ち駒、また全員で使用する山札、銀行にあるお札等の単なる「置き場」としてしか使用しないゲームを指す。このようなボードゲームでは、ＣＧオブジェクトが表示される範囲は限定的で、ボード上のみである。
【００１０】
そして、その範囲内においてはオクルージョン問題が発生しないか、予め透明なＣＧオブジェクトを用意することにより、前述の方法でオクルージョン問題を回避できるものとする。実際、遊戯用カードを用いたＭＲゲームや、ＣＧオブジェクトそのものをコマとする双六ゲーム等、多くのボードゲームにおいては妥当な仮定である。
【００１１】
【発明が解決しようとする課題】
ところがこのような仮定をおいても、プレイヤーが手をボード上に出した場合など、想定されていない現実物体がボード上の空間に現れた場合、本来、隠れて見えないはずのＣＧオブジェクトが見えてしまうというオクルージョン問題が発生する。
【００１２】
本発明はこのような従来技術の問題点に鑑みなされたものであり、その目的は、現実空間に仮想空間物体を重畳して提示する複合現実感呈示方法において、想定されていない現実物体がユーザの視野内に出現した場合であっても、当該現実物体によるオクルージョン問題を回避可能な複合現実感呈示方法を提供することにある。
【００１３】
【課題を解決するための手段】
上述の目的を達成するため、本発明による複合現実感呈示方法は、所定の視点位置から観察される現実空間に、所定の視点位置から観察される仮想物体の画像を合成して提示する複合現実感呈示方法において、現実空間中に出現した現実物体を検出する障害物検出ステップと、現実物体によって少なくとも一部が隠される仮想物体を検出する隠れ仮想物体検出ステップと、隠れ仮想物体検出ステップが検出した仮想物体の画像の表示位置又は表示方法を変更する変更ステップを有することを特徴とする。
【００１４】
【発明の実施の形態】
本発明は、現実空間中に出現した現実物体を検出し、現実物体によって少なくとも一部が隠される仮想物体を検出して、この仮想物体の画像の表示位置又は表示方法を変更することを特徴とする複合現実感呈示方法である。
このような本発明は、具体的に願書に添付する図面に示す構成及び処理において、以下の実施形態と対応して実現できる。
【００１５】
以下、添付図面を参照して本発明をその好適な実施形態に基づいて詳細に説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態に係る複合現実感システム（ＭＲシステム）の構成例を示す図である。
【００１６】
この例では、ゲームボード１０１の上でゲームが進行する。プレイヤーが装着するシースルー型のＨＭＤ１０２は図示しない位置姿勢センサを備えており、ユーザの視点情報を取得できる。ここではビデオシースルー型を想定して説明するが、光学シースルータイプのＨＭＤでも本発明は適用可能である。また位置姿勢センサ付きＨＭＤでなくとも、固定されたカメラとディスプレイでもよい。この場合、視点位置は設置されたカメラの位置に固定で、この位置から見た映像がディスプレイに表示されることになる。
【００１７】
ゲームコンソールまたはＰＣ１０３はＨＭＤ１０２と接続され、ゲームの進行状態等さまざまな情報を処理する。なお、ゲームコンソール又はＰＣ１０３は、ＣＰＵ、ＲＯＭ、ＲＡＭ、外部記憶装置（ＨＤＤ、ＦＤ、ＣＤ／ＤＶＤドライブ等）及び、各種入出力インタフェースを有する汎用的なコンピュータ機器であり、ＲＯＭ及び／又は外部記憶装置に記憶されたソフトウェアプログラムをＣＰＵが実行し、機器内部の構成要素を制御することによって以下に説明する処理を実現する。なお、処理の一部又は全部をハードウェアによって実現しても良い。
【００１８】
ＨＭＤ１０２に設けられたカメラで撮影された実写映像は、ビデオキャプチャカード等を用いて実写映像取得部１０３１によって、ゲームコンソールまたはＰＣ１０３に取り込まれる。同時にプレイヤーの視点情報はＨＭＤ１０２の位置姿勢センサに接続された視点位置検出部１０３４により取得され、ＣＧ生成部１０３２によりプレイヤーの視点から見た仮想物体（ＣＧオブジェクト）がレンダリングされる。レンダリングされたＣＧオブジェクト画像は、実写・ＣＧ合成表示部１０３３により、さきに実写映像取得部１０３１によって得られた、現実空間画像である実写映像と合成され、ＨＭＤ１０２に表示される。
【００１９】
なお、説明を簡単にするため詳細な説明は行わないが、実写、ＣＧ合成表示部１０３３は、プレイヤーがＨＭＤ１０２で立体視できるよう、右目用と左目用の合成画像を生成する。
【００２０】
プレイヤーは、合成画像を見ることにより、ゲームボード１０１上にＣＧオブジェクト１０４が存在しているかのように見える。また、ゲームボード１０１上に存在する現実物体１０５に位置及び形状が対応する透明仮想物体を仮想空間に配置することにより、現実物体１０５と仮想物体１０４とのオクルージョン問題は精度良く解決される。
ここまでが一般的なＭＲシステム（複合現実感システム）の構成である。
【００２１】
しかしこのままでは、前述の課題のとおり、ゲームボード１０１上にプレイヤーが手をかざしたときに本来手の後ろ側にあって見えないはずのＣＧオブジェクト１０４が見えてしまうという、オクルージョン問題が発生する。
【００２２】
そこで、本実施形態に係るＭＲシステムでは、ゲームコンソール又はＰＣ１０３に、障害物検知部１０３５、障害範囲設定部１０３６、障害回避戦略設定部１０３７を設け、このオクルージョン問題を解決している。
【００２３】
まず障害物検知部１０３５で障害物（位置が不特定な現実物体）のある部分を特定する。これにはたとえば、ボード１０１の真上からボード１０１を撮影するカメラ１０４０を設け、このカメラ１０４０で撮影した画像を用いて実現することができる。具体的には、プレイヤーの手について考えると、手がボード１０１上の空間に存在していないときの撮影画像と、手が存在している状態の撮影画像のの差分絶対値画像を作ると、人の手が入ってきた部分のみが大きな値を示す。そして、そこで適当な閾値によってこの差分画像を二値化してやることにより、ボード１０１上の手のある範囲（障害物）２０１を特定できる。図２は得られた範囲を示す図である。この検出方法はプレイヤーの手に限らず、任意の障害物検出に適用できる。
【００２４】
次いで障害範囲設定部１０３６では、検出された障害物によってオクルージョン問題が起きうる範囲（障害範囲）を求める。図３は、障害範囲設定部１０３６が設定する障害範囲の例を示したものである。視点位置検出部１０３４によって得られたプレイヤーの視点位置３０１に点光源を配置し、障害物に投影した場合にできる影のある範囲が求める障害範囲３０２である。障害範囲３０２は視点３０１から障害物のある範囲２０１へ外接する線を求めることで得られる。障害範囲は障害物のある範囲２０１も含む。
【００２５】
障害回避戦略設定部１０３７は、ＣＧ生成部１０３２から障害範囲３０２内に存在するＣＧオブジェクトの情報を得、そのＣＧオブジェクトに対する指示をＣＧ生成部１０３２に出す。なお、本実施形態において障害範囲３０２に「存在する」とは、少なくとも一部が含まれることを意味するものとするが、アプリケーションの内容によっては全てが含まれる場合のみを意味するものとしても良い。
【００２６】
指示の内容としては、例えば対象となるＣＧオブジェクトの位置を障害範囲３０２の外に出す、非表示にする、半透明表示する等のいずれかであって良い。どの方法を採用するかはアプリケーションの内容等に応じて適宜定めればよい。また、ここでは指示の内容の例として３つ挙げたが、障害範囲に存在するＣＧオブジェクトに対する指示であればこれら３つに限定されるものではない。
【００２７】
こうして生成されたＣＧと実写取得部１０３１で得られた実写とを実写・ＣＧ合成表示部１０３３で合成してＨＭＤ１０２に表示すると、オクルージョン問題のない複合現実映像が得られる。
【００２８】
（第２の実施形態）
第１の実施形態では、オクルージョン問題を起こすと考えられるＣＧオブジェクトを判断するための障害範囲３０２を、ボード１０１上の２次元平面として求めたが、より精度の良い判断を行うためには、障害範囲３０２を空間として求めることが好ましい。特に、視点位置から発し、障害物２０１に外接してボード１０１の存在する面と交差する直線群と、ボード１０１の４辺に垂直な平面とで切り取られる３次元空間として障害範囲３０２を求めることが最も好ましい。
【００２９】
しかし、特に主としてＣＧキャラクタが２次元上を動くボードゲーム等のアプリケーションにおいては、上述の障害範囲３０２を鉛直上方に掃引した立体を代用することにより、容易な処理で十分な効果を上げることができる。
【００３０】
すなわち、厳密な演算により求まる障害範囲は、上述の障害範囲３０２を鉛直方向に掃引した立体の範囲に含まれ、またボードゲームではオクルージョン問題を引き起こすＣＧオブジェクトの存在範囲はボード表面からせいぜい数十センチ上方までの限られた範囲であり、プレイヤーの視点の高さもボード上数十センチでほぼ一定である。このような条件下では、３次元座標上で正確に求めた障害範囲と、上述の障害範囲３０２を鉛直方向に掃引して得た障害範囲とで比較した場合、障害範囲に存在するＣＧキャラクタを障害範囲の外に移動させるという観点から見ると、どちらも結果としては大差ない。対象となるＣＧキャラクタを半透明表示や透明表示（又は非表示）にする場合においても、同様である。
【００３１】
しかしながら、障害範囲の鉛直方向の詳細な値が必要な場合は、障害物の鉛直方向の位置及び厚みを検出することにより、値を得ることができる。検出方法は任意であるが、本実施形態においては、ゲームボード１０１対向する２辺の各々に垂直でかつ上方に向かう２つの面にフォトインタラプタを配置した構成により検出を行う。このフォトインタラプタアレイは、障害物検知部１０３５に接続される。
【００３２】
図４に具体的な構成例を示す。フォトインタラプタアレイは指向性のあるＬＥＤアレイ４０１と、対応する位置に設置した指向性のあるフォトトランジスタアレイ４０２で構成される。隣接するＬＥＤ（またはフォトトランジスタ）の間隔は障害物（ここでは手）の最小厚みに比べて十分に狭いものとする。ここでフォトインタラプタアレイの間に手を差し出すと、手に光が遮られ、手の存在範囲がわかる。つまり手は光が遮られたセンサ（フォトトランジスタ）と対応するＬＥＤによって定まる柱状空間の内部にあることになる。ただし実際には柱の外側（光が遮られたフォトインタラプタアレイのうち、最上に位置するものと、その上に位置するものの間及び、最下に位置するものと、その下に位置するものの間）に手は少しはみだすので、障害物検知部１０３５はフォトインタラプタアレイ上下１間隔分だけ拡張処理を行う。
【００３３】
こうして得られた柱状空間と、（カメラ１０４０で撮影した画像から前述の手法で得られた）障害物のある範囲２０１を鉛直方向に掃引した空間との論理積をることにより、より詳細に手がボード１０１上の空間中に占める領域（障害物）を特定できる。
【００３４】
そして、このように検出された障害物を用いて障害範囲設定部１０３６が障害範囲を求めればよい。求め方は第１の実施形態の方法でも良いし、第１の実施形態の方法で求めた障害範囲（平面）を鉛直上方に掃引した空間する方法でも、視点位置３０１に点光源を置いた際に障害物で隠される空間を厳密に求める方法でも良い。障害範囲が求まった後の処理は第１の実施形態と同様でよいため、説明は省略する。
【００３５】
【他の実施形態】
上述の実施形態においては、１つの機器から構成されるゲームコンソール又はＰＣ１０３を用いる複合現実感システムについてのみ説明したが、ＰＣ１０３と同等の機能を複数の機器で構成したシステムであっても良い。
【００３６】
尚、前述した実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線／無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを実行することによって同等の機能が達成される場合も本発明に含む。
【００３７】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
【００３８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００３９】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【００４０】
有線／無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムデータファイル）を記憶し、接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。
【００４１】
つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。
【００４２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してホームページからダウンロードさせることによって供給し、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００４３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００４４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００４５】
本発明の実施態様を以下に列挙する。
【００４６】
［実施態様１］  所定の視点位置から観察される現実空間に、前記所定の視点位置から観察される仮想物体の画像を合成して呈示する複合現実感呈示方法において、
前記現実空間中に出現した現実物体を検出する障害物検出ステップと、
前記現実物体によって少なくとも一部が隠される仮想物体を検出する隠れ仮想物体検出ステップと、
前記隠れ仮想物体検出ステップが検出した仮想物体の画像の表示位置又は表示方法を変更する変更ステップを有することを特徴とする複合現実感呈示方法。
【００４７】
［実施態様２］  前記障害物検出ステップが、
前記現実空間を上方から撮影する撮像ステップと、
前記撮像ステップが撮影した画像から前記現実物体の出現を判定する判定ステップを有することを特徴とする実施態様１記載の複合現実感呈示方法。
【００４８】
［実施態様３］  前記判定ステップが、出現した現実物体が前記画像中に占める領域を求めることを特徴とする実施態様２記載の複合現実感呈示方法。
【００４９】
［実施態様４］  前記隠れ仮想物体検出ステップが、前記判定ステップが求めた前記領域と、前記所定の視点位置とを用いて、前記現実物体によって少なくとも一部が隠される仮想物体を検出することを特徴とする実施態様３記載の複合現実感呈示方法。
【００５０】
［実施態様５］  前記障害物検出ステップが、さらに前記現実物体の鉛直上方位置に関する情報を取得する位置検出ステップを有することを特徴とする実施態様２乃至実施態様４のいずれか１項に記載の複合現実感呈示方法。
【００５１】
［実施態様６］  前記判定ステップが、出現した現実物体が前記画像中に占める領域を求め、
前記隠れ仮想物体検出ステップが、前記判定ステップが求めた前記領域と、前記位置検出ステップが検出した前記鉛直上方位置に関する情報と、前記所定の視点位置とを用いて、前記現実物体によって少なくとも一部が隠される仮想物体を検出することを特徴とする実施態様５記載の複合現実感呈示方法。
【００５２】
［実施態様７］  前記変更ステップが、前記隠れ仮想物体検出ステップが検出した仮想物体の画像表示位置を、前記現実物体によって隠されない位置に変更するか、位置を変更せずに半透明又は透明表示とすることを特徴とする実施態様１乃至実施態様６のいずれか１項に記載の複合現実感呈示方法。
【００５３】
【発明の効果】
以上説明したように、本発明によれば、仮想物体を配置すべき空間に存在する障害物を検出し、この障害物によりオクルージョン問題が発生する領域に存在する仮想物体の表示位置又は方法を変更することにより、位置が不特定な現実物体に起因するオクルージョン問題を回避することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る複合現実感システムの構成例を示す図である。
【図２】本発明の第１の実施形態において、差分画像により検出される障害物の範囲の例を表す図である。
【図３】図２の障害物から求められる障害範囲の例を表す図である。
【図４】本発明の第２の実施形態において、障害物の高さ方向の情報を取得する際の構成例を示す図である。
【図１】
2004234253.tif 000003
【図２】
2004234253.tif 000004
【図３】
2004234253.tif 000005
【図４】
2004234253.tif 000006