(57)【要約】【課題】仮想世界と現実世界の一体感のある拡張現実映像を生成する。【解決手段】レンダリング部２３２は、仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成する。重畳部２３４は、現実空間の撮影画像にコンピュータグラフィックス画像を重畳して仮の重畳画像を生成する。クロマキー生成部２３５は、現実空間の撮影画像の奥行き情報にもとづいてコンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成する。クロマキー生成部２３５は、仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしない。【選択図】図１０
2020064592.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリング部と、
現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する重畳部と、
前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成部と、
前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成部とを含み、
前記クロマキー生成部は、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしないことを特徴とする画像生成装置。
【請求項２】
前記現実空間に対する前記仮想空間の光に関する表現は、前記現実空間のオブジェクトに対する前記仮想空間のオブジェクトの影または映り込み、前記仮想空間のオブジェクトの背後が透けて見える表現、および前記仮想空間における仮想の光源によるライティング表現の少なくとも一つであることを特徴とする請求項１に記載の画像生成装置。
【請求項３】
前記レンダリング部は、前記現実空間を空間認識することで得られるポリゴンメッシュ構造を変形して仮想空間がレンダリングされる空き領域を生成した上で、変形されたポリゴンメッシュ構造にもとづいて前記現実空間のオブジェクトをレンダリングすることを特徴とする請求項１に記載の画像生成装置。
【請求項４】
前記仮の重畳画像にポストプロセスを施すポストプロセス部をさらに含み、
前記合成部は、ポストプロセスが施された前記仮の重畳画像に対して、ポストプロセスが施されていない前記クロマキー画像によってマスクをかけることにより、前記合成クロマキー画像を生成することを特徴とする請求項１から３のいずれかに記載の画像生成装置。
【請求項５】
ポストプロセスが施された前記仮の重畳画像および前記クロマキー画像を新たな視点位置または視線方向に合うように変換するリプロジェクション部をさらに含み、
前記合成部は、リプロジェクション処理が施された前記仮の重畳画像に対してリプロジェクション処理が施された前記クロマキー画像によってマスクをかけることにより、前記合成クロマキー画像を生成することを特徴とする請求項１から４のいずれかに記載の画像生成装置。
【請求項６】
前記重畳部が前記仮の重畳画像を生成する際に利用する前記現実空間の撮影画像は、前記拡張現実画像を生成するために利用される前記現実空間の撮影画像よりも解像度が低いことを特徴とする請求項１から５のいずれかに記載の画像生成装置。
【請求項７】
前記現実空間に対する前記仮想空間の光に関する表現は半透明のコンピュータグラフィックス画像として、前記解像度が低い撮影画像に重畳されることを特徴とする請求項６に記載の画像生成装置。
【請求項８】
ヘッドマウントディスプレイと画像生成装置を含む画像生成システムであって、
前記画像生成装置は、
仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリング部と、
前記ヘッドマウントディスプレイから伝送される現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する第１の重畳部と、
前記ヘッドマウントディスプレイから伝送される前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成部と、
前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成部とを含み、
前記ヘッドマウントディスプレイは、
前記現実空間の撮影画像に、前記画像生成装置から伝送される前記合成クロマキー画像を合成することにより、拡張現実画像を生成する第２の重畳部とを含み、
前記クロマキー生成部は、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしないことを特徴とする画像生成システム。
【請求項９】
仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリングステップと、
現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する重畳ステップと、
前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成ステップと、
前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成ステップとを含み、
前記クロマキー生成ステップは、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしないことを特徴とする画像生成方法。
【請求項１０】
仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリング機能と、
現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する重畳機能と、
前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成機能と、
前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成機能とをコンピュータに実現させ、
前記クロマキー生成機能は、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしないことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像を生成する装置、システムおよび方法に関する。
【背景技術】
【０００２】
ゲーム機に接続されたヘッドマウントディスプレイを頭部に装着して、ヘッドマウントディスプレイに表示された画面を見ながら、コントローラなどを操作してゲームプレイすることが行われている。ヘッドマウントディスプレイを装着すると、ヘッドマウントディスプレイに表示される映像以外はユーザは見ないため、映像世界への没入感が高まり、ゲームのエンタテインメント性を一層高める効果がある。また、ヘッドマウントディスプレイに仮想現実（ＶＲ(Virtual Reality)）の映像を表示させ、ヘッドマウントディスプレイを装着したユーザが頭部を回転させると、３６０度見渡せる全周囲の仮想空間が表示されるようにすると、さらに映像への没入感が高まり、ゲームなどのアプリケーションの操作性も向上する。
【０００３】
また、非透過型ヘッドマウントディスプレイを装着したユーザは外界を直接見ることができなくなるが、ヘッドマウントディスプレイに搭載されたカメラによって外界の映像を撮影してディスプレイパネルに表示することのできるビデオ透過（ビデオシースルー）型ヘッドマウントディスプレイもある。ビデオ透過型ヘッドマウントディスプレイでは、カメラで撮影される外界の映像にコンピュータグラフィックス（ＣＧ(Computer Graphics)）によって生成された仮想世界のオブジェクトを重畳させることで拡張現実（ＡＲ(Augmented Reality)）の映像を生成して表示することもできる。拡張現実の映像は、現実世界から切り離された仮想現実とは違って、現実世界が仮想オブジェクトで拡張されたものであり、ユーザは現実世界とのつながりを意識しつつ、仮想世界を体験することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
カメラ画像にＣＧによって生成された仮想オブジェクトを重畳させて拡張現実の映像を生成してヘッドマウントディスプレイに表示する場合、画像に対するポストプロセスの影響によって仮想オブジェクトの境界にエイリアシングが発生し、仮想世界と現実世界の境界が目立ち、一体感のあるＡＲ映像にならないことがある。また、仮想オブジェクトが現実空間に落とす影や現実空間への仮想オブジェクトの映り込みをＡＲ映像に反映させなければ、仮想世界と現実世界の一体感が得られず、仮想オブジェクトが現実世界の中で浮いているように見えてしまう。
【０００５】
本発明はこうした課題に鑑みてなされたものであり、その目的は、拡張現実の映像の品質を向上させることのできる画像生成装置、画像生成システム、および画像生成方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の画像生成装置は、仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリング部と、現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する重畳部と、前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成部と、前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成部とを含む。前記クロマキー生成部は、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしない。
【０００７】
本発明の別の態様は、画像生成システムである。この画像生成システムは、ヘッドマウントディスプレイと画像生成装置を含む画像生成システムであって、前記画像生成装置は、仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリング部と、前記ヘッドマウントディスプレイから伝送される現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する第１の重畳部と、前記ヘッドマウントディスプレイから伝送される前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成部と、前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成部とを含む。前記ヘッドマウントディスプレイは、前記現実空間の撮影画像に、前記画像生成装置から伝送される前記合成クロマキー画像を合成することにより、拡張現実画像を生成する第２の重畳部とを含む。前記クロマキー生成部は、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしない。
【０００８】
本発明のさらに別の態様は、画像生成方法である。この方法は、仮想空間のオブジェクトおよび現実空間のオブジェクトをレンダリングするとともに、前記現実空間に対する前記仮想空間の光に関する表現をレンダリングしてコンピュータグラフィックス画像を生成するレンダリングステップと、現実空間の撮影画像に前記コンピュータグラフィックス画像を重畳して仮の重畳画像を生成する重畳ステップと、前記現実空間の撮影画像の奥行き情報にもとづいて前記コンピュータグラフィックス画像をクロマキー処理してクロマキー画像を生成するクロマキー生成ステップと、前記仮の重畳画像に対して前記クロマキー画像によってマスクをかけることにより、前記現実空間の撮影画像に重畳して拡張現実画像を生成するために利用される合成クロマキー画像を生成する合成ステップとを含む。前記クロマキー生成ステップは、前記仮想空間のオブジェクトがレンダリングされていない現実空間の領域をクロマキー領域とする一方、前記仮想空間の光に関する表現が存在する現実空間の領域はクロマキー領域とはしない。
【０００９】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１０】
本発明によれば、拡張現実の映像の品質を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】ヘッドマウントディスプレイの外観図である。
【図２】本実施の形態に係る画像生成システムの構成図である。
【図３】図１のヘッドマウントディスプレイに搭載されたカメラにより撮影されるカメラ画像の例を説明する図である。
【図４】図３のカメラ画像にＣＧによる仮想オブジェクトを重畳した拡張現実画像を説明する図である。
【図５】図４の拡張現実画像に対してユーザが仮想オブジェクトに手を伸ばしている様子を示す図である。
【図６】クロマキー合成に利用されるＣＧ画像を説明する図である。
【図７】前提技術に係るヘッドマウントディスプレイの機能構成図である。
【図８】前提技術に係る画像生成装置の機能構成図である。
【図９】カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための前提技術に係る画像生成システムの構成を説明する図である。
【図１０】第１の実施の形態に係る画像生成装置の機能構成図である。
【図１１】カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための第１の実施の形態に係る画像生成システムの構成を説明する図である。
【図１２】第１の実施の形態に係る画像生成システムによってカメラ画像にＣＧ画像を重畳した拡張現実画像を説明する図である。
【図１３】第１の実施の形態に係る画像生成システムによって利用される合成ＣＧクロマキー画像を説明する図である。
【図１４】現実空間のポリゴンメッシュを変形して壁に穴を空ける例を説明する図である。
【図１５】現実空間の壁の穴に仮想オブジェクトが描画された例を説明する図である。
【図１６】第２の実施の形態に係る画像生成装置の機能構成図である。
【図１７】カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための第２の実施の形態に係る画像生成システムの構成を説明する図である。
【発明を実施するための形態】
【００１２】
図１は、ヘッドマウントディスプレイ１００の外観図である。ヘッドマウントディスプレイ１００は、ユーザの頭部に装着してディスプレイに表示される静止画や動画などを鑑賞し、ヘッドホンから出力される音声や音楽などを聴くための表示装置である。
【００１３】
ヘッドマウントディスプレイ１００に内蔵または外付けされたジャイロセンサや加速度センサなどによりヘッドマウントディスプレイ１００を装着したユーザの頭部の位置情報と頭部の回転角や傾きなどの姿勢（orientation）情報を計測することができる。
【００１４】
ヘッドマウントディスプレイ１００にはカメラユニットが搭載されており、ユーザがヘッドマウントディスプレイ１００を装着している間、外界を撮影することができる。
【００１５】
ヘッドマウントディスプレイ１００は、「ウェアラブルディスプレイ」の一例である。ここでは、ヘッドマウントディスプレイ１００に表示される画像の生成方法を説明するが、本実施の形態の画像生成方法は、狭義のヘッドマウントディスプレイ１００に限らず、めがね、めがね型ディスプレイ、めがね型カメラ、ヘッドフォン、ヘッドセット（マイクつきヘッドフォン）、イヤホン、イヤリング、耳かけカメラ、帽子、カメラつき帽子、ヘアバンドなどを装着した場合にも適用することができる。
【００１６】
図２は、本実施の形態に係る画像生成システムの構成図である。ヘッドマウントディスプレイ１００は、一例として、映像・音声をデジタル信号で伝送する通信インタフェースの標準規格であるＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）などのインタフェース３００で画像生成装置２００に接続される。
【００１７】
画像生成装置２００は、ヘッドマウントディスプレイ１００の現在の位置・姿勢情報から、映像の生成から表示までの遅延を考慮してヘッドマウントディスプレイ１００の位置・姿勢情報を予測し、ヘッドマウントディスプレイ１００の予測位置・姿勢情報を前提としてヘッドマウントディスプレイ１００に表示されるべき画像を描画し、ヘッドマウントディスプレイ１００に伝送する。
【００１８】
画像生成装置２００の一例はゲーム機である。画像生成装置２００は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できるゲームなどのオンラインアプリケーションを画像生成装置２００に提供してもよい。ヘッドマウントディスプレイ１００は、画像生成装置２００の代わりに、コンピュータや携帯端末に接続されてもよい。
【００１９】
図３〜図６を参照してカメラ画像にＣＧによる仮想オブジェクトを重畳した拡張現実画像について説明する。
【００２０】
図３は、ヘッドマウントディスプレイ１００に搭載されたカメラにより撮影されるカメラ画像の例を説明する図である。このカメラ画像は部屋を背景としてテーブルとその上にあるバスケット４００を撮影したものである。テーブルの表面には花柄の模様が付けられている。カメラ画像において背景はほとんど変化しないが、テーブルの上にあるバスケット４００はユーザが手を伸ばして動かすこともある。
【００２１】
図４は、図３のカメラ画像にＣＧによる仮想オブジェクトを重畳した拡張現実画像を説明する図である。テーブルの上にある現実のオブジェクトであるバスケット４００は、ＣＧによって生成された仮想オブジェクトであるティーポット４１０によって置き換えられ、カメラ画像にティーポット４１０が重畳される。これにより、ユーザは現実空間に仮想オブジェクトが描かれた拡張現実画像をヘッドマウントディスプレイ１００で見ることができる。
【００２２】
図５は、図４の拡張現実画像に対してユーザが仮想オブジェクトに手を伸ばしている様子を示す図である。拡張現実画像をヘッドマウントディスプレイ１００で見ているユーザが仮想オブジェクトであるティーポット４１０を触ろうとすると、ユーザの手がヘッドマウントディスプレイ１００に搭載されたカメラで撮影されるため、カメラ画像には手４２０が写り込む。手４２０が写り込んだカメラ画像に仮想オブジェクトであるティーポット４１０が重畳される。このとき、手４２０の上にティーポット４１０が重畳されて手４２０が見えなくなるなど不自然な拡張現実画像にならないように、ティーポット４１０と手４２０の位置関係を奥行き情報を用いて正しく判定する必要がある。
【００２３】
そこで、カメラ画像の奥行き（デプス）情報を用いて、カメラ画像に写り込んだ物体と仮想オブジェクトの位置関係を判定し、奥行きを正しく反映した描画を行う。部屋の背景や既に存在がわかっているバスケット４００についてはあらかじめ奥行きがわかっているので、仮想オブジェクトとの位置関係はあらかじめ判定しておくことができるが、ユーザが手や足を伸ばしたときや、ユーザ以外の動体（たとえば、他人や犬、猫など）が視野に入ってくる場合などは、あらかじめ奥行きがわかっていないので、カメラ画像のデプス情報から奥行きをその都度判定する必要がある。
【００２４】
一般に、ＣＧ画像をカメラ画像に重畳する際、ＣＧ画像において背景など描画されない領域を特定の一色に塗りつぶしたクロマキー画像を作成し、クロマキー合成に利用する。クロマキーとして特定された色の領域（「クロマキー領域」と呼ぶ）は透明になるため、クロマキー画像をカメラ画像に重畳すると、クロマキー領域にはカメラ画像が表示される。
【００２５】
図６は、クロマキー合成に利用されるＣＧ画像を説明する図である。図５の状態において、背景がクロマキーの特定色（たとえば赤）に塗りつぶされている。また、カメラ画像に写り込んだ手４２０がティーポット４１０よりも手前にあることから、ティーポット４１０の領域の内、手４２０によって隠れる領域もクロマキーの特定色に塗りつぶされている。このクロマキー画像をカメラ画像に重畳すると、クロマキーの特定色の部分は透明であるため、カメラ画像が残り、図５の拡張現実画像が得られる。
【００２６】
図７は、前提技術に係るヘッドマウントディスプレイ１００の機能構成図である。
【００２７】
制御部１０は、画像信号、センサ信号などの信号や、命令やデータを処理して出力するメインプロセッサである。入力インタフェース２０は、ユーザからの操作信号や設定信号を受け付け、制御部１０に供給する。出力インタフェース３０は、制御部１０から画像信号を受け取り、ディスプレイパネル３２に表示する。
【００２８】
通信制御部４０は、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、制御部１０から入力されるデータを外部に送信する。通信制御部４０は、また、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、外部からデータを受信し、制御部１０に出力する。
【００２９】
記憶部５０は、制御部１０が処理するデータやパラメータ、操作信号などを一時的に記憶する。
【００３０】
姿勢センサ６４は、ヘッドマウントディスプレイ１００の位置情報と、ヘッドマウントディスプレイ１００の回転角や傾きなどの姿勢情報を検出する。姿勢センサ６４は、ジャイロセンサ、加速度センサ、角加速度センサなどを適宜組み合わせて実現される。３軸地磁気センサ、３軸加速度センサおよび３軸ジャイロ（角速度）センサの少なくとも１つ以上を組み合わせたモーションセンサを用いて、ユーザの頭部の前後、左右、上下の動きを検出してもよい。
【００３１】
外部入出力端子インタフェース７０は、ＵＳＢ（Universal Serial Bus）コントローラなどの周辺機器を接続するためのインタフェースである。外部メモリ７２は、フラッシュメモリなどの外部メモリである。
【００３２】
カメラユニット８０は、レンズ、イメージセンサ、測距センサなど撮影に必要な構成を含み、撮影された外界の映像と奥行き情報を制御部１０に供給する。制御部１０は、カメラユニット８０のフォーカスやズームなどを制御する。
【００３３】
画像信号処理部８２は、カメラユニット８０により撮影されたＲａｗ画像に対してＲＧＢ変換（デモザイク処理）、ホワイトバランス、色補正、ノイズリダクションなどの画像信号処理（ＩＳＰ(Image Signal Processing)）を施し、さらにカメラユニット８０の光学系による歪みなどを取り除く歪み補正処理を施す。画像信号処理部８２は画像信号処理および歪み補正処理が施されたカメラ画像を制御部１０に供給する。
【００３４】
リプロジェクション部８４は、姿勢センサ６４が検出したヘッドマウントディスプレイ１００の最新の位置・姿勢情報にもとづき、カメラ画像に対してリプロジェクション処理を施し、ヘッドマウントディスプレイ１００の最新の視点位置・視線方向から見える画像に変換する。
【００３５】
歪み処理部８６は、リプロジェクション処理が施されたカメラ画像に対してヘッドマウントディスプレイ１００の光学系で生じる歪みに合わせて画像を変形（distortion）させて歪ませる処理を施し、歪み処理が施されたカメラ画像を制御部１０に供給する。
【００３６】
ＡＲ重畳部８８は、歪み処理が施されたカメラ画像に画像生成装置２００により生成されたＣＧ画像を重畳することで拡張現実画像を生成し、制御部１０に供給する。
【００３７】
ＨＤＭＩ送受信部９０は、ＨＤＭＩにしたがって映像・音声のデジタル信号を画像生成装置２００との間で送受信する。ＨＤＭＩ送受信部９０は、画像信号処理部８２により画像信号処理および歪み補正処理が施されたＲＧＢ画像と奥行き情報を制御部１０から受け取り、ＨＤＭＩ伝送路で画像生成装置２００に送信する。ＨＤＭＩ送受信部９０は、画像生成装置２００により生成された画像をＨＤＭＩ伝送路で画像生成装置２００から受信し、制御部１０に供給する。
【００３８】
制御部１０は、画像やテキストデータを出力インタフェース３０に供給してディスプレイパネル３２に表示させたり、通信制御部４０に供給して外部に送信させることができる。
【００３９】
姿勢センサ６４が検出したヘッドマウントディスプレイ１００の現在の位置・姿勢情報は、通信制御部４０または外部入出力端子インタフェース７０を介して画像生成装置２００に通知される。あるいは、ＨＤＭＩ送受信部９０がヘッドマウントディスプレイ１００の現在の位置・姿勢情報を画像生成装置２００に送信してもよい。
【００４０】
図８は、前提技術に係る画像生成装置２００の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００４１】
画像生成装置２００の少なくとも一部の機能をヘッドマウントディスプレイ１００に実装してもよい。あるいは、画像生成装置２００の少なくとも一部の機能を、ネットワークを介して画像生成装置２００に接続されたサーバに実装してもよい。
【００４２】
位置・姿勢取得部２１０は、ヘッドマウントディスプレイ１００の現在の位置・姿勢情報をヘッドマウントディスプレイ１００から取得する。
【００４３】
視点・視線設定部２２０は、位置・姿勢取得部２１０により取得されたヘッドマウントディスプレイ１００の位置・姿勢情報を用いて、ユーザの視点位置および視線方向を設定する。
【００４４】
ＨＤＭＩ送受信部２８０は、ヘッドマウントディスプレイ１００からカメラユニット８０により撮影された現実空間の映像の奥行き情報を受信し、デプス取得部２５０に供給する。
【００４５】
画像生成部２３０は、画像記憶部２６０からコンピュータグラフィックスの生成に必要なデータを読み出し、仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成し、デプス取得部２５０から提供される現実空間のカメラ画像の奥行き情報にもとづいてＣＧ画像からクロマキー画像を生成し、画像記憶部２６０に出力する。
【００４６】
画像生成部２３０は、レンダリング部２３２と、クロマキー生成部２３５と、ポストプロセス部２３６と、リプロジェクション部２４０と、歪み処理部２４２とを含む。
【００４７】
レンダリング部２３２は、視点・視線設定部２２０によって設定されたユーザの視点位置および視線方向にしたがって、ヘッドマウントディスプレイ１００を装着したユーザの視点位置から視線方向に見える仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成し、クロマキー生成部２３５に与える。
【００４８】
クロマキー生成部２３５は、デプス取得部２５０から与えられたカメラ画像の奥行き情報にもとづいてＣＧ画像からクロマキー画像を生成する。具体的には、現実空間のオブジェクトと仮想空間のオブジェクトの位置関係を判定し、ＣＧ画像において仮想オブジェクトの背景や仮想オブジェクトよりも手前にある現実空間のオブジェクトの部分を特定の１色（たとえば赤色）に塗りつぶしたクロマキー画像（「ＣＧクロマキー画像」と呼ぶ）を生成する。
【００４９】
ポストプロセス部２３６は、ＣＧクロマキー画像に対して、被写界深度調整、トーンマッピング、アンチエイリアシングなどのポストプロセスを施し、ＣＧクロマキー画像が自然で滑らかに見えるように後処理する。
【００５０】
リプロジェクション部２４０は、位置・姿勢取得部２１０からヘッドマウントディスプレイ１００の最新の位置・姿勢情報を受け取り、ポストプロセスが施されたＣＧクロマキー画像に対してリプロジェクション処理を施し、ヘッドマウントディスプレイ１００の最新の視点位置・視線方向から見える画像に変換する。
【００５１】
ここで、リプロジェクションについて説明する。ヘッドマウントディスプレイ１００にヘッドトラッキング機能をもたせて、ユーザの頭部の動きと連動して視点や視線方向を変えて仮想現実の映像を生成した場合、仮想現実の映像の生成から表示までに遅延があるため、映像生成時に前提としたユーザの頭部の向きと、映像をヘッドマウントディスプレイ１００に表示した時点でのユーザの頭部の向きとの間でずれが発生し、ユーザは酔ったような感覚（「ＶＲ酔い（Virtual Reality Sickness）」などと呼ばれる）に陥ることがある。
【００５２】
このように、ヘッドマウントディスプレイ１００の動きを検知し、ＣＰＵが描画コマンドを発行し、ＧＰＵ（Graphics Processing Unit）がレンダリングを実行し、描画された画像がヘッドマウントディスプレイ１００に出力されるまでには時間がかかる。描画がたとえば６０ｆｐｓ（フレーム／秒）のフレームレートで行われており、ヘッドマウントディスプレイ１００の動きを検知してから画像を出力するまでに１フレーム分の遅れが生じるとする。これはフレームレート６０ｆｐｓのもとでは、１６．６７ミリ秒ほどであり、人間がずれを感知するには十分な時間である。
【００５３】
そこで、「タイムワープ」または「リプロジェクション」と呼ばれる処理を行い、レンダリングした画像をヘッドマウントディスプレイ１００の最新の位置と姿勢に合わせて補正することで人間がずれを感知しにくいようにする。
【００５４】
歪み処理部２４２は、リプロジェクション処理が施されたＣＧクロマキー画像に対してヘッドマウントディスプレイ１００の光学系で生じる歪みに合わせて画像を変形（distortion）させて歪ませる処理を施し、画像記憶部２６０に記憶する。
【００５５】
ＨＤＭＩ送受信部２８０は、画像記憶部２６０から画像生成部２３０により生成されたＣＧクロマキー画像のフレームデータを読み出し、ＨＤＭＩにしたがってヘッドマウントディスプレイ１００に伝送する。
【００５６】
図９は、カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための前提技術に係る画像生成システムの構成を説明する図である。ここでは、説明を簡単にするため、拡張現実画像を生成するためのヘッドマウントディスプレイ１００と画像生成装置２００の主な構成を図示して説明する。
【００５７】
ヘッドマウントディスプレイ１００のカメラユニット８０により撮影された外界のカメラ画像とデプス情報は画像信号処理部８２に供給される。画像信号処理部８２は、カメラ画像に対して画像信号処理と歪み補正処理を施し、リプロジェクション部８４に与える。画像信号処理部８２は、デプス情報を画像生成装置２００に送信し、クロマキー生成部２３５に供給する。
【００５８】
画像生成装置２００のレンダリング部２３２は、ヘッドマウントディスプレイ１００を装着したユーザの視点位置・視線方向から見た仮想オブジェクトを生成し、クロマキー生成部２３５に与える。
【００５９】
クロマキー生成部２３５は、デプス情報にもとづきＣＧ画像からＣＧクロマキー画像を生成する。ポストプロセス部２３６はＣＧクロマキー画像にポストプロセスを施す。リプロジェクション部２４０はポストプロセスが施されたＣＧクロマキー画像を最新の視点位置・視線方向に合うように変換する。歪み処理部２４２はリプロジェクション後のＣＧクロマキー画像に歪み処理を施す。歪み処理後の最終的なＲＧＢ画像はヘッドマウントディスプレイ１００に送信され、ＡＲ重畳部８８に供給される。このＲＧＢ画像は、カメラ画像が重畳されるべき領域がクロマキー合成で指定する１色（たとえば赤色）で塗りつぶされた画像である。クロマキーに指定される１色についてはＣＧ画像として利用できないため、ＣＧ画像ではクロマキーに指定される１色を避けて別の色を使って表現する。たとえばクロマキー色と同じ色をＣＧ画像で使いたい場合、クロマキー色の１ビットを変更して用いればよい。
【００６０】
ヘッドマウントディスプレイ１００のリプロジェクション部８４は、画像信号処理と歪み補正処理が施されたカメラ画像を最新の視点位置・視線方向に合うように変換し、歪み処理部８６に供給する。歪み処理部８６はリプロジェクション後のカメラ画像に歪み処理を施す。ＡＲ重畳部８８は、画像生成装置２００から供給されるＣＧクロマキー画像を歪み処理後のカメラ画像に重畳することにより、拡張現実画像を生成する。生成された拡張現実画像は、ディスプレイパネル３２に表示される。
【００６１】
上述の前提技術に係る画像生成システムでは、クロマキー生成部２３５により生成されたＣＧクロマキー画像がポストプロセス部２３６によるポストプロセス、リプロジェクション部２４０によるリプロジェクション処理、歪み処理部２４２により歪み処理を受けるため、仮想オブジェクトの境界においてエイリアシングが発生したり、実際にはない偽色が発生し、ＡＲ重畳部８８によってカメラ画像に重畳されるときに不自然さが目立つようになる。また、一般的な画像の伝送インタフェースはＲＧＢには対応するが、アルファ値を含めたＲＧＢＡには対応しておらず、アルファ値を伝送できないことから半透明のＣＧ画像は表現できないという制約も受ける。仮想オブジェクトが現実空間に落とす影や現実空間への仮想オブジェクトの映り込みを表現するためには、半透明のＣＧ画像をカメラ画像に合成する必要がある。
【００６２】
以下、前提技術に係る画像生成システムにおける課題を克服したいくつかの実施の形態に係る画像生成システムを説明するが、前提技術と重複する説明は適宜省略し、前提技術から改善した構成について説明する。
【００６３】
第１の実施の形態について説明する。ヘッドマウントディスプレイ１００の構成は図７に示したものと同じである。
【００６４】
図１０は、第１の実施の形態に係る画像生成装置２００の機能構成図である。
【００６５】
ＨＤＭＩ送受信部２８０は、ヘッドマウントディスプレイ１００からカメラユニット８０により撮影されたカメラ画像とデプス情報を受信し、カメラ画像をカメラ画像取得部２５２に、デプス情報をデプス取得部２５０に供給する。なお、このデプス情報は、現実空間のカメラ画像の奥行き情報であり、「カメラデプス情報」と呼ぶ。
【００６６】
画像生成部２３０は、画像記憶部２６０からコンピュータグラフィックスの生成に必要なデータを読み出し、仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成し、カメラ画像取得部２５２から提供されるカメラ画像にＣＧ画像を重畳して仮の重畳画像を生成するとともに、デプス取得部２５０から提供されるカメラデプス情報にもとづいてＣＧ画像からクロマキー画像を生成する。仮の重畳画像にはポストプロセス、リプロジェクション処理、歪み処理を施し、クロマキー画像にはリプロジェクション処理、歪み処理を施す。クロマキー画像にはポストプロセスを施さないことに留意する。最後にクロマキー画像で仮の重畳画像をマスクすることにより、最終的な合成ＣＧクロマキー画像を生成して画像記憶部２６０に出力する。
【００６７】
画像生成部２３０は、レンダリング部２３２と、重畳部２３４と、クロマキー生成部２３５と、ポストプロセス部２３６と、リプロジェクション部２４０ａ、２４０ｂと、歪み処理部２４２ａ、２４２ｂと、合成部２４４とを含む。
【００６８】
レンダリング部２３２は、視点・視線設定部２２０によって設定されたユーザの視点位置および視線方向にしたがって、ヘッドマウントディスプレイ１００を装着したユーザの視点位置から視線方向に見える仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成する。レンダリング部２３２が仮想空間のオブジェクトをレンダリングする際、仮想オブジェクトの奥行き情報（「シーンデプス情報」と呼ぶ）を仮想空間レンダリング用のデプスバッファ（「シーンデプスバッファ」と呼ぶ）に書き込み、仮想オブジェクト間の前後関係を判定する。仮想オブジェクトが描画されない画素はシーンデプスバッファにおいて具体的なデプス値が書き込まれず、シーンデプス値は無限大（不定）である。
【００６９】
さらにレンダリング部２３２は、カメラユニット８０によって撮影される現実空間の現実オブジェクトをレンダリングする。現実世界の物体の形状情報や奥行き情報は、現実世界の空間を３Ｄスキャンして空間認識することで得られる。たとえば、赤外線パターン、Ｓｔｒｕｃｔｕｒｅｄ  Ｌｉｇｈｔ、ＴＯＦ（Time Of Flight）などの方式のデプスセンサを用いて現実空間の奥行き情報を取得したり、ステレオカメラの視差情報から現実空間の奥行き情報を取得することができる。このように現実空間はあらかじめ３Ｄスキャンされ、ポリゴンメッシュ構造でモデリングされる。レンダリング部２３２により、現実空間の壁、床、天井、静止物体などがレンダリングされるが、色情報は設けずに白一色で描画する。レンダリング部２３２が現実空間のオブジェクトをレンダリングする際、現実オブジェクトの奥行き情報（「実空間デプス情報」と呼ぶ）を現実空間レンダリング用のデプスバッファ（「実空間デプスバッファと呼ぶ」）に書き込み、現実オブジェクト間の前後関係を判定する。
【００７０】
シーンデプスバッファとは別に実空間デプスバッファを設ける理由は、現実空間のレンダリングの際にシーンデプスバッファにデプス値を書き込んだ場合、シーンデプス値と実空間デプス値の区別がつかなくなり、クロマキー領域とするか否かを判断できなくなるからである。
【００７１】
レンダリング部２３２は、現実空間に対する仮想空間の光に関する表現、具体的には仮想オブジェクトが現実オブジェクトに落とす影や現実空間への仮想オブジェクトの映り込み、手前にある仮想空間のオブジェクトの背後が透けて見える表現、仮想空間における仮想の光源によるライティング表現などを半透明のＣＧ画像として描画する。たとえばシャドウマッピングは光源からの深度マップを平面に投影する方法やレイトレーシングなどの手法を用いて影や映り込みを描画することができる。仮想オブジェクトの影や映り込みの半透明ＣＧ画像を現実空間の低解像度のカメラ画像に重畳することで現実空間に対する仮想オブジェクトの影や映り込みを表現することができる。現実空間のオブジェクトは白一色でレンダリングされているため、影や映り込みが描画された領域とは区別することができる。現実空間のレンダリング領域はクロマキー領域に指定されるが、影や映り込みが描画された領域はクロマキー領域には指定されない。
【００７２】
レンダリング部２３２は、仮想オブジェクトと仮想オブジェクトの影や映り込みなど仮想空間の光に関する表現が描画されたＣＧ画像を重畳部２３４とクロマキー生成部２３５に与える。
【００７３】
重畳部２３４は、カメラ画像取得部２５２から与えられた低解像度で遅延のあるカメラ画像にＣＧ画像を重畳して仮の重畳画像を生成し、ポストプロセス部２３６に与える。重畳部２３４は、シーンデプス値が無限大の領域（すなわち仮想オブジェクトが描画されていない領域）であって、実空間デプス値が書き込まれている領域に低解像度で遅延のあるカメラ画像を重畳する。これにより、影や映り込みが半透明で描画されているＣＧ画像に対して影や映り込みの色情報を残したまま低解像度で遅延のあるカメラ画像が重畳される。すなわち影や映り込みの色情報と低解像度で遅延のあるカメラ画像の色情報がアルファ合成される。
【００７４】
ここで、実空間デプス値が書き込まれておらず、シーンデプス値が書き込まれた領域にはカメラ画像が重畳されないことに留意する。後述のように現実空間のメッシュ構造を変形して穴などの空き領域を設けた場合、空き領域には実空間デプス値が書き込まれず、シーンデプス値が書き込まれているため、クロマキー色にはならないから、カメラ画像は重畳されない。代わりに空き領域に仮想空間をレンダリングして空き領域から向こう側が見えるような効果を与えることも可能になる。
【００７５】
ポストプロセス部２３６は、仮の重畳画像に対してポストプロセスを施し、仮の重畳画像が自然で滑らかに見えるように後処理する。
【００７６】
第１のリプロジェクション部２４０ａは、位置・姿勢取得部２１０からヘッドマウントディスプレイ１００の最新の位置・姿勢情報を受け取り、ポストプロセスが施された仮の重畳画像に対してリプロジェクション処理を施し、ヘッドマウントディスプレイ１００の最新の視点位置・視線方向から見える画像に変換する。
【００７７】
第１の歪み処理部２４２ａは、リプロジェクション処理が施された仮の重畳画像に対して歪み処理を施し、合成部２４４に与える。
【００７８】
クロマキー生成部２３５は、デプス取得部２５０から与えられたカメラデプス情報、レンダリング部２３２から与えられたシーンデプス情報および実空間デプス情報にもとづいてクロマキー画像を生成する。具体的には、シーンデプス値が無限大、または、実空間デプス値が書き込まれている領域で、かつ、影や映り込みの描画領域以外の領域をクロマキー色に塗りつぶし、また、カメラデプス情報とシーンデプス情報を参照して仮想オブジェクトよりも手前にある現実オブジェクトの部分をクロマキー色に塗りつぶしたクロマキー画像を生成する。
【００７９】
クロマキー画像にはポストプロセスを施さない。
【００８０】
第２のリプロジェクション部２４０ｂは、位置・姿勢取得部２１０からヘッドマウントディスプレイ１００の最新の位置・姿勢情報を受け取り、クロマキー画像に対してリプロジェクション処理を施し、ヘッドマウントディスプレイ１００の最新の視点位置・視線方向から見える画像に変換する。
【００８１】
第２の歪み処理部２４２ｂは、リプロジェクション処理が施されたクロマキー画像に対して歪み処理を施し、合成部２４４に与える。
【００８２】
合成部２４４は、仮の重畳画像に対してクロマキー画像をマスクとして用いて合成し、合成ＣＧクロマキー画像を生成し、画像記憶部２６０に記憶する。
【００８３】
ここで、第１のリプロジェクション部２４０ａが仮の重畳画像に対してリプロジェクション処理を施す場合と、第１の歪み処理部２４２ａがリプロジェクション処理後の仮の重畳画像に対して歪み処理を施す場合は、ピクセルのサンプリング時に一般にバイリニア補間などの補間処理が行われる。それに対して、第２のリプロジェクション部２４０ｂがクロマキー画像に対してリプロジェクション処理を施す場合と、第２の歪み処理部２４２ｂがリプロジェクション処理後のクロマキー画像に対して歪み処理を施す場合は、ピクセルのサンプリング時にポイントサンプリングが行われる。クロマキー画像に対してバイリニア補間などの補間処理を行うと、クロマキー色が非クロマキー色に混合されて別の色になってしまい、クロマキー画像の意味がなくなるからである。
【００８４】
クロマキー画像に対するリプロジェクション処理と歪み処理において、上記のポイントサンプリング以外に以下の二つの方法を用いてもよい。第１の方法は、サンプリング時にクロマキー色と非クロマキー色の間でバイリニア補間を行って中間色のピクセル値をいったん算出するが、所定の閾値を設けて、補間後のピクセル値が閾値以下である場合は、ピクセル値をクロマキー色に設定し、補間後のピクセル値が閾値を超える場合は、ピクセル値を元の非クロマキー色に設定する。この方法によれば、補間によって生じる中間色は捨てられ、閾値を超えるかどうかで、クロマキー色になるか、元の非クロマキー色になるかが決まるため、クロマキー色が非クロマキー色に混合されることはない。
【００８５】
第２の方法は、クロマキー画像を生成する際に、（ｕ，ｖ）が参照するポイントの近傍４ピクセルをサンプリングして、近傍４ピクセルのすべてがクロマキーの条件に当てはまる場合にクロマキー色に設定し、近傍４ピクセルのいずれかがクロマキーの条件に当てはまらない場合はクロマキー色には設定しない。近傍ピクセルの選び方として４ピクセル以外に９ピクセルを選んでもよい。この方法によれば、エッジ境界部分がクロマキー色によって塗りつぶされないようになるため、ＣＧ画像とカメラ画像が境界付近でより自然に融合して見える。
【００８６】
ＨＤＭＩ送受信部２８０は、画像記憶部２６０から画像生成部２３０により生成された合成ＣＧクロマキー画像のフレームデータを読み出し、ＨＤＭＩにしたがってヘッドマウントディスプレイ１００に伝送する。
【００８７】
図１１は、カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための第１の実施の形態に係る画像生成システムの構成を説明する図である。
【００８８】
ヘッドマウントディスプレイ１００のカメラユニット８０により撮影された外界のカメラ画像とカメラデプス情報は画像信号処理部８２に供給される。画像信号処理部８２は、低遅延かつ高解像度のカメラ画像に対して画像信号処理と歪み補正処理を施し、リプロジェクション部８４に与える。さらに、画像信号処理部８２は、画像信号処理と歪み補正処理が施されたカメラ画像とカメラデプス情報を画像生成装置２００に送信し、カメラ画像は重畳部２３４に、カメラデプス情報はクロマキー生成部２３５に供給される。画像生成装置２００に送信されるカメラ画像は遅延があり、低解像度である。
【００８９】
画像生成装置２００のレンダリング部２３２は、現実空間の現実オブジェクトをレンダリングするとともに、ヘッドマウントディスプレイ１００を装着したユーザの視点位置・視線方向から見た仮想オブジェクトを生成し、現実空間に対する仮想空間の光に関する表現、具体的には仮想オブジェクトが現実オブジェクトに落とす影や仮想オブジェクトの映り込み、仮想オブジェクトの半透明化、仮想光源によるライティング表現などをレンダリングする。レンダリング部２３２は、生成されたＣＧ画像を重畳部２３４に与え、シーンデプス情報と実空間デプス情報をクロマキー生成部２３５に与える。
【００９０】
重畳部２３４は、ＣＧ画像にカメラ画像を重畳し、仮の重畳画像を生成し、ポストプロセス部２３６に与える。ここで、ヘッドマウントディスプレイ１００から提供されるカメラ画像は低解像度で遅延があってもよい。なぜなら、仮の重畳画像におけるカメラ画像の部分はクロマキー画像でマスクされて最終的には消去されるからである。重畳部２３４は、シーンデプス値は書き込まれていないが、実空間デプス値が書き込まれている領域にカメラ画像を重畳する。したがって、仮想オブジェクトが描画されていない領域と、影や映り込みなど仮想空間の光に関する表現が描画されている領域にカメラ画像が重畳される。影や映り込みなど仮想空間の光に関する表現が描画されている領域では影や映り込みなど仮想空間の光に関する表現の色情報が半透明のＣＧ画像として低解像度のカメラ画像に合成される。
【００９１】
ポストプロセス部２３６は仮の重畳画像にポストプロセスを施す。リプロジェクション部２４０ａはポストプロセスが施された仮の重畳画像を最新の視点位置・視線方向に合うように変換する。歪み処理部２４２ａはリプロジェクション後の仮の重畳画像に歪み処理を施し、合成部２４４に与える。
【００９２】
クロマキー生成部２３５は、カメラデプス情報、シーンデプス情報および実空間デプス情報にもとづきクロマキー画像を生成する。シーンデプス値が書き込まれていない領域はクロマキー色に塗りつぶされるが、影や映り込みなど仮想空間の光に関する表現が描画されている半透明のＣＧ領域はクロマキー色に塗りつぶされない。また、カメラデプス情報とシーンデプス情報にもとづいて現実空間のオブジェクトと仮想空間のオブジェクトの位置関係がリアルタイムで判定され、仮想オブジェクトよりも手前にある現実の移動物体（手やボールなど）の部分がクロマキー色に塗りつぶされる。リプロジェクション部２４０ｂはクロマキー画像を最新の視点位置・視線方向に合うように変換する。歪み処理部２４２ｂはリプロジェクション後のクロマキー画像に歪み処理を施し、合成部２４４に与える。
【００９３】
合成部２４４は、クロマキー画像で仮の重畳画像をマスクすることで合成ＣＧクロマキー画像を生成する。ここで、仮の重畳画像はポストプロセスを施されているため、滑らかな画像となっており、カメラ画像とＣＧ画像の境界は目立たない。他方、クロマキー画像はポストプロセスが施されていないため、仮想オブジェクトの境界にエイリアシングや偽色が発生していない。したがって、ポストプロセスが施されていないクロマキー画像でポストプロセスが施された重畳画像をマスクすれば、仮想オブジェクトの境界にエイリアシングや偽色がなく、かつ自然で滑らかな合成ＣＧクロマキー画像が合成される。
【００９４】
シーンデプス値が無限大であっても、影や映り込みが描画されている半透明のＣＧ領域はクロマキー色で塗りつぶされないため、影や映り込みの半透明のＣＧ領域は低解像度のカメラ画像に重畳された状態で合成ＣＧクロマキー画像の中に残される。
【００９５】
合成ＣＧクロマキー画像は特定の１色がクロマキーに指定されたＲＧＢ画像としてヘッドマウントディスプレイ１００に送信され、ＡＲ重畳部８８に供給される。
【００９６】
ヘッドマウントディスプレイ１００のリプロジェクション部８４は、画像信号処理と歪み補正処理が施された低遅延かつ高解像度のカメラ画像を最新の視点位置・視線方向に合うように変換し、歪み処理部８６に供給する。歪み処理部８６はリプロジェクション後の低遅延かつ高解像度のカメラ画像に歪み処理を施す。ＡＲ重畳部８８は、画像生成装置２００から供給される合成ＣＧクロマキー画像を歪み処理後の低遅延かつ高解像度のカメラ画像に重畳することにより、拡張現実画像を生成する。生成された拡張現実画像は、ディスプレイパネル３２に表示される。クロマキー色が指定された領域にはヘッドマウントディスプレイ１００側で低遅延かつ高解像度のカメラ画像が重畳される。
【００９７】
図１２は、第１の実施の形態に係る画像生成システムによってカメラ画像にＣＧ画像を重畳した拡張現実画像を説明する図である。図５と同様、ユーザが仮想オブジェクトであるティーポット４１０を触ろうとしており、手４２０が写り込んだカメラ画像に仮想オブジェクトであるティーポット４１０が重畳される。仮想オブジェクトであるティーポット４１０が現実のテーブルに落とす影４１２が半透明ＣＧとしてカメラ画像に重畳される形で描画されている。そのため影４１２の描画領域には現実のテーブル表面の花柄が透けて見える。
【００９８】
図１３は、第１の実施の形態に係る画像生成システムによって利用される合成ＣＧクロマキー画像を説明する図である。合成ＣＧクロマキー画像は、仮想オブジェクト（ここではティーポット）の描画領域と仮想オブジェクトの影や映り込みの描画領域（ここではティーポットが花柄のテーブル表面に落とす影）がＣＧであり、それ以外はクロマキー色で塗りつぶされている。また、仮想オブジェクトよりも手前に現実の移動物体（ここではユーザの手）がある場合は手前の移動物体の部分もクロマキー色で塗りつぶされる。
【００９９】
図１３の合成ＣＧクロマキー画像がヘッドマウントディスプレイ１００側で高解像度のカメラ画像に重畳されることで図１２の拡張現実画像が生成される。ティーポット４１０の影の部分は低解像度のカメラ画像と合成されているが、それ以外のカメラ画像はユーザの手の領域も含めて高解像度であることに留意する。
【０１００】
第１の実施の形態の画像生成システムを用いれば、現実空間の壁や天井、テーブルなどに仮想的に穴を空けてＣＧ画像を重畳することもできる。これを図１４および図１５を参照して説明する。
【０１０１】
図１４は、現実空間のポリゴンメッシュを変形して壁に穴を空ける例を説明する図である。３Ｄスキャンによって現実空間のポリゴンメッシュが得られるが、これを変形することで図１４のように壁に穴４３０を設けることができる。穴４３０の別の表現方法として、アルファマスクのあるテクスチャを利用してもよい。
【０１０２】
穴４３０には現実空間の物体が何も存在していないため、レンダリング部２３２が現実空間のレンダリングをする際、実空間デプスバッファの穴４３０に対応する領域にはデプス情報が書き込まれない。一方、レンダリング部２３２は、穴４３０に仮想的なオブジェクトをレンダリングすることができ、その際、シーンデプスバッファの穴４３０に対応する領域にデプス情報が書き込まれる。したがって、重畳部２３４がカメラ画像をＣＧ画像に重畳する際、実空間デプス値が設定されていない穴４３０にはカメラ画像が重畳されることがなく、シーンデプス値が設定されている穴４３０にＣＧ画像が表示される。
【０１０３】
図１５は、現実空間の壁の穴に仮想オブジェクトが描画された例を説明する図である。図１４の穴４３０に対応して図１５では仮想的な穴４４０がＣＧで描画され、仮想的な穴４４０の向こう側に仮想的な自動車がＣＧで描画されている。
【０１０４】
第１の実施の形態の画像生成システムによれば、カメラ画像とＣＧ画像の境界の違和感をポストプロセスによって緩和するとともに、クロマキー画像にはポストプロセスを施さないため、エイリアシングや偽色のないクロマキー画像を生成して、高品質の合成ＣＧクロマキー画像を生成できる。この合成ＣＧクロマキー画像をカメラ画像に重畳して拡張現実画像を生成するため、不自然さのない拡張現実画像を生成できる。また、ＣＧ画像に半透明部分がある場合もカメラ画像に重畳してポスト処理する際に半透明処理を施すことができるので、半透明部分もレンダリングによるレイテンシはあるが表現することができる。また、合成ＣＧクロマキー画像は、特定の１色をクロマキーとしたＲＧＢ画像であるため、ＲＧＢ画像を伝送することのできるＨＤＭＩなどの一般的な通信インタフェースで伝送することができる。
【０１０５】
なお、上記の説明では、合成ＣＧクロマキー画像は、特定の１色をクロマキーとしたＲＧＢ画像であったが、クロマキー画像のクロマキー色をＲＧＢＡのアルファ成分に格納してもよい。即ち、ポストプロセスの中間処理までは、画像のクロマキー色となる部分をＲＧＢＡのアルファ成分を透過にして処理を行い、ポストプロセスの最終段階でアルファ成分が透過である部分の色をクロマキー色に置き換えてもよい。これにより、仮の重畳画像とクロマキー画像を格納するために二つの別個のフレームバッファを使う必要がなくなり、一つのフレームバッファ上で仮の重畳画像とクロマキー画像の処理を行うことができる。
【０１０６】
第２の実施の形態について説明する。ヘッドマウントディスプレイ１００の構成は基本的には図７に示したものと同じであるが、リプロジェクション部８４は、カメラ画像用の第１のリプロジェクション部８４ａと合成ＣＧクロマキー画像用の第２のリプロジェクション部８４ｂを有する。
【０１０７】
図１６は、第２の実施の形態に係る画像生成装置２００の機能構成図である。
【０１０８】
ＨＤＭＩ送受信部２８０は、ヘッドマウントディスプレイ１００からカメラユニット８０により撮影されたカメラ画像とデプス情報を受信し、カメラ画像をカメラ画像取得部２５２に、デプス情報をデプス取得部２５０に供給する。
【０１０９】
画像生成部２３０は、画像記憶部２６０からコンピュータグラフィックスの生成に必要なデータを読み出し、仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成し、カメラ画像取得部２５２から提供されるカメラ画像にＣＧ画像を重畳して仮の重畳画像を生成するとともに、デプス取得部２５０から提供されるカメラデプス情報にもとづいてＣＧ画像からクロマキー画像を生成する。仮の重畳画像にはポストプロセスを施すが、クロマキー画像にはポストプロセスを施さない。最後にクロマキー画像で仮の重畳画像をマスクすることにより、最終的な合成ＣＧクロマキー画像を生成して画像記憶部２６０に出力する。
【０１１０】
画像生成部２３０は、レンダリング部２３２と、重畳部２３４と、クロマキー生成部２３５と、ポストプロセス部２３６と、合成部２４４とを含む。
【０１１１】
レンダリング部２３２は、視点・視線設定部２２０によって設定されたユーザの視点位置および視線方向にしたがって、ヘッドマウントディスプレイ１００を装着したユーザの視点位置から視線方向に見える仮想空間のオブジェクトをレンダリングしてＣＧ画像を生成する。レンダリング部２３２が仮想空間のオブジェクトをレンダリングする際、シーンデプス情報をシーンデプスバッファに書き込む。
【０１１２】
さらにレンダリング部２３２は、カメラユニット８０によって撮影される現実空間の現実オブジェクトをレンダリングする。レンダリング部２３２が現実空間のオブジェクトをレンダリングする際、現実オブジェクトの実空間デプス情報を実空間デプスバッファに書き込む。
【０１１３】
レンダリング部２３２は、仮想オブジェクトと仮想オブジェクトの影や映り込みなど仮想空間の光に関する表現が描画されたＣＧ画像を重畳部２３４とクロマキー生成部２３５に与える。
【０１１４】
重畳部２３４は、カメラ画像取得部２５２から与えられた低解像度で遅延のあるカメラ画像にＣＧ画像を重畳して仮の重畳画像を生成し、ポストプロセス部２３６に与える。重畳部２３４は、シーンデプス値が無限大の領域であって、実空間デプス値が書き込まれている領域に低解像度で遅延のあるカメラ画像を重畳する。
【０１１５】
ポストプロセス部２３６は、仮の重畳画像に対してポストプロセスを施し、仮の重畳画像が自然で滑らかに見えるように後処理する。
【０１１６】
クロマキー生成部２３５は、デプス取得部２５０から与えられたカメラデプス情報、レンダリング部２３２から与えられたシーンデプス情報および実空間デプス情報にもとづいてクロマキー画像を生成する。
【０１１７】
合成部２４４は、仮の重畳画像に対してクロマキー画像をマスクとして用いて合成し、合成ＣＧクロマキー画像を生成し、画像記憶部２６０に記憶する。
【０１１８】
ＨＤＭＩ送受信部２８０は、画像記憶部２６０から画像生成部２３０により生成された合成ＣＧクロマキー画像のフレームデータを読み出し、ＨＤＭＩにしたがってヘッドマウントディスプレイ１００に伝送する。
【０１１９】
図１７は、カメラ画像にＣＧ画像を重畳して拡張現実画像を生成するための第２の実施の形態に係る画像生成システムの構成を説明する図である。
【０１２０】
ヘッドマウントディスプレイ１００のカメラユニット８０により撮影された外界のカメラ画像とカメラデプス情報は画像信号処理部８２に供給される。画像信号処理部８２は、低遅延かつ高解像度のカメラ画像に対して画像信号処理と歪み補正処理を施し、リプロジェクション部８４に与える。さらに、画像信号処理部８２は、画像信号処理と歪み補正処理が施されたカメラ画像とカメラデプス情報を画像生成装置２００に送信し、カメラ画像は重畳部２３４に、デプス情報はクロマキー生成部２３５に供給される。画像生成装置２００に送信されるカメラ画像は遅延があり、低解像度である。
【０１２１】
画像生成装置２００のレンダリング部２３２は、現実空間の現実オブジェクトをレンダリングするとともに、ヘッドマウントディスプレイ１００を装着したユーザの視点位置・視線方向から見た仮想オブジェクトを生成し、仮想オブジェクトが現実オブジェクトに落とす影や仮想オブジェクトの映り込みなどのライティング表現をレンダリングする。レンダリング部２３２は、生成されたＣＧ画像を重畳部２３４に与え、シーンデプス情報と実空間デプス情報をクロマキー生成部２３５に与える。
【０１２２】
重畳部２３４は、ＣＧ画像にカメラ画像を重畳し、仮の重畳画像を生成し、ポストプロセス部２３６に与える。第１の実施の形態と同様、ヘッドマウントディスプレイ１００から提供されるカメラ画像は低解像度で遅延があってもよい。
【０１２３】
ポストプロセス部２３６は仮の重畳画像にポストプロセスを施し、合成部２４４に与える。
【０１２４】
クロマキー生成部２３５は、カメラデプス情報、シーンデプス情報および実空間デプス情報にもとづきクロマキー画像を生成し、合成部２４４に与える。
【０１２５】
合成部２４４は、クロマキー画像で重畳画像をマスクすることで合成ＣＧクロマキー画像を生成する。第１の実施の形態と同様、ポストプロセスが施されていないクロマキー画像でポストプロセスが施された重畳画像をマスクすれば、仮想オブジェクトの境界にエイリアシングや偽色がなく、かつ自然で滑らかな合成ＣＧクロマキー画像が合成される。
【０１２６】
合成ＣＧクロマキー画像は特定の１色がクロマキーに指定されたＲＧＢ画像としてヘッドマウントディスプレイ１００に送信され、リプロジェクション部８４ｂに供給される。
【０１２７】
ヘッドマウントディスプレイ１００の第１のリプロジェクション部８４ａは、画像信号処理と歪み補正処理が施された低遅延かつ高解像度のカメラ画像を最新の視点位置・視線方向に合うように変換し、ＡＲ重畳部８８に供給する。
【０１２８】
ヘッドマウントディスプレイ１００の第２のリプロジェクション部８４ｂは、合成ＣＧクロマキー画像を最新の視点位置・視線方向に合うように変換し、ＡＲ重畳部８８に供給する。
【０１２９】
ここで、ヘッドマウントディスプレイ１００において、カメラ画像用の第１のリプロジェクション部８４ａと合成ＣＧクロマキー画像用の第２のリプロジェクション部８４ｂに分かれているのは、画像生成装置２００のレンダリングには時間がかかり、リプロジェクションによって補正すべき差分量が異なるからである。たとえば、第１のリプロジェクション部８４ａで１フレーム先のリプロジェクションを行うのに対して、第２のリプロジェクション部８４ｂでは２フレーム先のリプロジェクションを行う必要がある。
【０１３０】
ＡＲ重畳部８８は、第２のリプロジェクション部８４ｂによりリプロジェクション処理が施された合成ＣＧクロマキー画像を、第１のリプロジェクション部８４ａによりリプロジェクション処理が施された低遅延かつ高解像度のカメラ画像に重畳することにより、拡張現実画像を生成し、歪み処理部８６に供給する。クロマキー色が指定された領域にはヘッドマウントディスプレイ１００側で低遅延かつ高解像度のカメラ画像が重畳される。
【０１３１】
歪み処理部８６は拡張現実画像に歪み処理を施す。生成された拡張現実画像は、ディスプレイパネル３２に表示される。
【０１３２】
第２の実施の形態の画像生成システムによれば、第１の実施の形態と同様に、合成ＣＧクロマキー画像をカメラ画像に重畳して拡張現実画像を生成するため、不自然さのない拡張現実画像を生成できるという利点の他、次の利点がある。第１の実施の形態とは異なり、ヘッドマウントディスプレイ１００側でカメラ画像と合成ＣＧクロマキー画像に対してリプロジェクション処理を施すため、ディスプレイパネル３２に表示する直前の視点位置・視線方向に合うようにカメラ画像と合成ＣＧクロマキー画像を変換でき、高い精度で追従性のある拡張現実画像を提供できる。また、画像生成装置２００側のリプロジェクション処理の負担を軽減できるので、画像生成装置２００側ではレンダリングにより多くのリソースをかけることができる。
【０１３３】
第１の実施の形態および第２の実施の形態において、クロマキー画像にはポストプロセス部２３６によるポストプロセスを施さない構成を説明したが、変形例として、クロマキー画像に対して視点合わせやスケーリングのためにポストプロセスを適用する構成としてもよい。この場合、画素を補間する際に周囲の画素の平均値を使うなどの方法を採用すると、境界の色がクロマキー色とは異なる色に変わってしまう。そこでクロマキー色を変えないようにポストプロセスを適用することが必要である。あるいは、境界の色が変わってしまうような通常のポストプロセスをクロマキー画像に適用した後、元のクロマキー色と完全に一致する領域のみをマスクとして利用するようにしてもよい。
【０１３４】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１３５】
上記の説明では、ポストプロセスとして、被写界深度調整、トーンマッピング、アンチエイリアシングなどの処理を例示したが、歪み処理、単純な拡大・縮小、台形変換なども含めてポストプロセスと呼んでもよい。
【符号の説明】
【０１３６】
１０  制御部、  ２０  入力インタフェース、  ３０  出力インタフェース、  ３２  ディスプレイパネル、  ４０  通信制御部、  ４２  ネットワークアダプタ、  ４４  アンテナ、  ５０  記憶部、  ６４  姿勢センサ、  ７０  外部入出力端子インタフェース、  ７２  外部メモリ、  ８０  カメラユニット、  ８２  画像信号処理部、  ８４  リプロジェクション部、  ８６  歪み処理部、  ８８  ＡＲ重畳部、  １００  ヘッドマウントディスプレイ、  ２００  画像生成装置、  ２１０  位置・姿勢取得部、  ２２０  視点・視線設定部、  ２３０  画像生成部、  ２３２  レンダリング部、  ２３４  重畳部、  ２３５  クロマキー生成部、  ２３６  ポストプロセス部、  ２３８  シーンデプスバッファ、  ２３９  実空間デプスバッファ、  ２４０  リプロジェクション部、  ２４２  歪み処理部、  ２４４  合成部、  ２５０  デプス取得部、  ２５２  カメラ画像取得部、  ２６０  画像記憶部、  ２８０  ＨＤＭＩ送受信部、  ３００  インタフェース。
【図１】
2020064592.tif 000003
【図２】
2020064592.tif 000004
【図３】
2020064592.tif 000005
【図４】
2020064592.tif 000006
【図５】
2020064592.tif 000007
【図６】
2020064592.tif 000008
【図７】
2020064592.tif 000009
【図８】
2020064592.tif 000010
【図９】
2020064592.tif 000011
【図１０】
2020064592.tif 000012
【図１１】
2020064592.tif 000013
【図１２】
2020064592.tif 000014
【図１３】
2020064592.tif 000015
【図１４】
2020064592.tif 000016
【図１５】
2020064592.tif 000017
【図１６】
2020064592.tif 000018
【図１７】
2020064592.tif 000019