IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ソニー・コンピュータエンタテインメントの特許一覧

<>
  • 特許-画像生成装置および画像生成方法 図1
  • 特許-画像生成装置および画像生成方法 図2
  • 特許-画像生成装置および画像生成方法 図3
  • 特許-画像生成装置および画像生成方法 図4A
  • 特許-画像生成装置および画像生成方法 図4B
  • 特許-画像生成装置および画像生成方法 図5A
  • 特許-画像生成装置および画像生成方法 図5B
  • 特許-画像生成装置および画像生成方法 図6
  • 特許-画像生成装置および画像生成方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-13
(45)【発行日】2024-03-22
(54)【発明の名称】画像生成装置および画像生成方法
(51)【国際特許分類】
   G09G 5/00 20060101AFI20240314BHJP
   G09G 5/377 20060101ALI20240314BHJP
   H04N 5/64 20060101ALI20240314BHJP
【FI】
G09G5/00 510A
G09G5/377 100
H04N5/64 511A
【請求項の数】 7
(21)【出願番号】P 2022508679
(86)(22)【出願日】2020-03-17
(86)【国際出願番号】 JP2020011798
(87)【国際公開番号】W WO2021186581
(87)【国際公開日】2021-09-23
【審査請求日】2023-01-20
(73)【特許権者】
【識別番号】310021766
【氏名又は名称】株式会社ソニー・インタラクティブエンタテインメント
(74)【代理人】
【識別番号】100105924
【弁理士】
【氏名又は名称】森下 賢樹
(74)【代理人】
【識別番号】100109047
【弁理士】
【氏名又は名称】村田 雄祐
(74)【代理人】
【識別番号】100109081
【弁理士】
【氏名又は名称】三木 友由
(74)【代理人】
【識別番号】100134256
【弁理士】
【氏名又は名称】青木 武司
(72)【発明者】
【氏名】大橋 良徳
【審査官】村上 遼太
(56)【参考文献】
【文献】特表2015-509230(JP,A)
【文献】特開2019-004471(JP,A)
【文献】特開2019-053423(JP,A)
【文献】特開2019-152794(JP,A)
【文献】特表2013-517579(JP,A)
【文献】国際公開第2019/176577(WO,A1)
【文献】米国特許出願公開第2016/0125644(US,A1)
【文献】米国特許出願公開第2015/0116354(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09G3/00-G09G5/42
G02F1/133
H04N5/64
(57)【特許請求の範囲】
【請求項1】
透過型ディスプレイに表示される画像を生成する画像生成装置であって、
現実空間に重畳される画像を生成する際、前記現実空間に映る仮想オブジェクトの影の領域が相対的に暗く見えるように、前記仮想オブジェクトが重畳されない背景領域を所定の輝度の背景色で描画した画像を生成し、
前記仮想オブジェクトをレンダリングするとともに、前記現実空間のメッシュ構造をレンダリングし、前記現実空間のメッシュ構造に映る前記仮想オブジェクトの影をレンダリングするレンダリング部と、
前記背景領域が一律に所定の輝度の背景色になるように、全画素の色を底上げする画素値変換部と、
前記仮想オブジェクトの影の領域を判別し、影以外の背景領域を前記背景色に設定し、影の領域を背景色以下の輝度の色に設定する影・背景処理部とを含むことを特徴とする画像生成装置。
【請求項2】
全画素の色の底上げに応じて、前記透過型ディスプレイの手前に設けられた調光素子の透過率を下げるように調整する透過率制御部をさらに含むことを特徴とする請求項に記載の画像生成装置。
【請求項3】
前記透過型ディスプレイの手前に設けられた調光素子の透過率に合わせて、前記透過型ディスプレイの外界側に設けられた別の調光素子の透過率を調整することを特徴とする請求項に記載の画像生成装置。
【請求項4】
前記レンダリング部は、前記仮想オブジェクトをレンダリングするとともに、仮想光源を想定して前記現実空間のメッシュ構造をレンダリングすることにより、前記メッシュ構造に当てられた仮想光源による光を反映した背景色で前記背景領域をレンダリングし、前記現実空間のメッシュ構造に映る前記仮想オブジェクトの影をレンダリングすることを特徴とする請求項1に記載の画像生成装置。
【請求項5】
レンダリングされた画像全体の輝度のダイナミックレンジまたは現実空間の輝度にもとづいて、レンダリングされた画像のトーンカーブを調整するポストプロセス部をさらに含むことを特徴とする請求項に記載の画像生成装置。
【請求項6】
透過型ディスプレイに表示される画像を生成する画像生成方法であって、
現実空間に重畳される画像を生成する際、前記現実空間に映る仮想オブジェクトの影の領域が相対的に暗く見えるように、前記仮想オブジェクトが重畳されない背景領域を所定の輝度の背景色で描画した画像を生成し、
前記仮想オブジェクトをレンダリングするとともに、前記現実空間のメッシュ構造をレンダリングし、前記現実空間のメッシュ構造に映る前記仮想オブジェクトの影をレンダリングし、
前記背景領域が一律に所定の輝度の背景色になるように、全画素の色を底上げし、
前記仮想オブジェクトの影の領域を判別し、影以外の背景領域を前記背景色に設定し、影の領域を背景色以下の輝度の色に設定することを特徴とする画像生成方法。
【請求項7】
透過型ディスプレイに表示される画像を生成するプログラムであって、
現実空間に重畳される画像を生成する際、前記現実空間に映る仮想オブジェクトの影の領域が相対的に暗く見えるように、前記仮想オブジェクトが重畳されない背景領域を所定の輝度の背景色で描画した画像を生成する機能と、
前記仮想オブジェクトをレンダリングするとともに、前記現実空間のメッシュ構造をレンダリングし、前記現実空間のメッシュ構造に映る前記仮想オブジェクトの影をレンダリングするレンダリング機能と、
前記背景領域が一律に所定の輝度の背景色になるように、全画素の色を底上げする画素値変換機能と、
前記仮想オブジェクトの影の領域を判別し、影以外の背景領域を前記背景色に設定し、影の領域を背景色以下の輝度の色に設定する影・背景処理機能とをコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、画像生成技術に関する。
【背景技術】
【0002】
ヘッドマウントディスプレイを装着したユーザの視線方向に合わせて仮想現実(VR(Virtual Reality))の映像をヘッドマウントディスプレイに表示することが行われている。ヘッドマウントディスプレイが非透過型である場合、ヘッドマウントディスプレイに表示される映像以外はユーザは見ないため、映像世界への没入感が高まる。
【0003】
非透過型ヘッドマウントディスプレイを装着したユーザは外界を直接見ることができないが、光学透過型ヘッドマウントディスプレイでは、外界を見ながら、外界に重畳されたコンピュータグラフィックス(CG(Computer Graphics))の画像を見ることができる。
【0004】
光学透過型ヘッドマウントディスプレイは、CGによって生成された仮想世界のオブジェクトを外界に重畳させることで拡張現実(AR(Augmented Reality))の映像を生成して表示する。拡張現実の映像は、現実世界から切り離された仮想現実とは違って、現実世界が仮想オブジェクトで拡張されたものであり、ユーザは現実世界とのつながりを意識しつつ、仮想世界を体験することができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
透過型ヘッドマウントディスプレイでは、外界にCG画像を重畳するが、CG画像の黒色は透過扱いになる。黒色を重畳しようとしても、透過になってしまうため、仮想オブジェクトの影を描画して表示することができない。影を表示するためには影の領域だけ輝度を落として暗くする必要があるが、調光素子を用いて透過型ヘッドマウントディスプレイの光学素子の全体を一律に遮光はできても、影の領域だけを部分的に遮光することはできない。仮に透過率を部分的に変えられる調光素子を実現できたとしても、接眼位置にある調光素子は目の焦点で輝度を変えるものであるため、現実世界で輝度が下がっているようには見えず、現実空間に落ちる仮想オブジェクトの影を表現することはできない。
【0006】
本発明はこうした課題に鑑みてなされたものであり、その目的は、現実空間に重畳される仮想オブジェクトの影を表現することができる画像生成技術を提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様の画像生成装置は、透過型ディスプレイに表示される画像を生成する画像生成装置であって、現実空間に重畳される画像を生成する際、前記現実空間に映る仮想オブジェクトの影の領域が相対的に暗く見えるように、前記仮想オブジェクトが重畳されない背景領域を所定の輝度の背景色で描画した画像を生成する。
【0008】
本発明の別の態様は、画像生成方法である。この方法は、透過型ディスプレイに表示される画像を生成する画像生成方法であって、現実空間に重畳される画像を生成する際、前記現実空間に映る仮想オブジェクトの影の領域が相対的に暗く見えるように、前記仮想オブジェクトが重畳されない背景領域を所定の輝度の背景色で描画した画像を生成する。
【0009】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0010】
本発明によれば、現実空間に重畳される仮想オブジェクトの影を表現することができる。
【図面の簡単な説明】
【0011】
図1】第1の実施の形態に係る透過型ディスプレイの構成図である。
図2】第1の実施の形態に係る画像生成装置の構成図である。
図3】透過型ヘッドマウントディスプレイを透過して見える外界の現実空間を示す図である。
図4A】従来手法によってレンダリングされる仮想空間の仮想オブジェクト400を示す図である。
図4B】従来手法によって、透過される現実空間に仮想オブジェクト400が重畳される様子を示す図である。
図5A】本実施の形態の画像生成方法によってレンダリングされる仮想オブジェクト400を示す図である。
図5B】本実施の形態の画像生成方法によって、透過される現実空間に仮想オブジェクト400が重畳される様子を示す図である。
図6】本実施の形態の画像生成手順を示すフローチャートである。
図7】第2の実施の形態に係る画像生成装置の構成図である。
【発明を実施するための形態】
【0012】
図1は、第1の実施の形態に係る透過型ディスプレイ100の構成図である。
【0013】
透過型ヘッドマウントディスプレイ200は、「ウェアラブルディスプレイ」の一例である。ここでは、透過型ヘッドマウントディスプレイ200に表示される画像の生成方法を説明するが、本実施の形態の画像生成方法は、狭義の透過型ヘッドマウントディスプレイ200に限らず、めがね、めがね型ディスプレイ、めがね型カメラ、ヘッドフォン、ヘッドセット(マイクつきヘッドフォン)、イヤホン、イヤリング、耳かけカメラ、帽子、カメラつき帽子、ヘアバンドなどを装着した場合にも適用することができる。
【0014】
透過型ヘッドマウントディスプレイ200は、透過型ディスプレイ100、第一調光素子110および第二調光素子120を含む。視点130から見て、透過型ディスプレイ100の外界側に第一調光素子110が設けられ、透過型ディスプレイ100の手前に第二調光素子120が設けられる。第一調光素子110および第二調光素子120は、一例として液晶デバイス、エレクトロクロミックデバイスなどである。
【0015】
透過型ディスプレイ100は、ハーフミラー等により、CGなどの映像を表示しながら、光学的に外界を透過して見ることができる光学素子である。
【0016】
第一調光素子110は外界の強い光を遮光するために設けられる。透過型ヘッドマウントディスプレイ200を屋外のような明るい場所で使用するときは第一調光素子110の透過率を下げることで遮光する。外光の強い環境での使用を前提としないのであれば、第一調光素子110は必須の構成ではない。
【0017】
第二調光素子120は透過型ディスプレイ100に表示されるCG画像の輝度を調整するために設けられる。後述のように仮想オブジェクトの影を表現するために透過型ディスプレイ100の輝度を全体的に底上げするため、第二調光素子120の透過率を下げて透過型ディスプレイ100の輝度を下げる。背景領域の輝度が明るくなることに問題がなければ、第二調光素子120は必須の構成ではない。
【0018】
ユーザは視点130から外界を第一調光素子110、透過型ディスプレイ100、第二調光素子120を通して見る。
【0019】
図2は、第1の実施の形態に係る画像生成装置300の構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【0020】
透過型ヘッドマウントディスプレイ200は、無線または有線で画像生成装置300に接続される。画像生成装置300は、透過型ヘッドマウントディスプレイ200の姿勢情報を参照して、透過型ヘッドマウントディスプレイ200に表示するべき画像を描画し、透過型ヘッドマウントディスプレイ200に伝送する。
【0021】
画像生成装置300の構成を透過型ヘッドマウントディスプレイ200に内蔵させて一体化してもよく、あるいは画像生成装置300の構成の少なくとも一部を透過型ヘッドマウントディスプレイ200に搭載してもよい。また、画像生成装置300の少なくとも一部の機能を、ネットワークを介して画像生成装置300に接続されたサーバに実装してもよい。
【0022】
空間認識部10は、外界の現実空間の認識を行い、現実空間をポリゴンメッシュ構造でモデル化し、現実空間のメッシュデータをレンダリング部20に与える。現実世界の物体の形状情報や奥行き情報は、現実世界の空間を3Dスキャンして空間認識することで得られる。たとえば、赤外線パターン、Structured Light、TOF(Time Of Flight)などの方式のデプスセンサを用いて現実空間の奥行き情報を取得したり、ステレオカメラの視差情報から現実空間の奥行き情報を取得することができる。このように現実空間はあらかじめ3Dスキャンされ、ポリゴンメッシュ構造でモデリングされる。
【0023】
レンダリング部20は、仮想空間の仮想オブジェクトをレンダリングするとともに、空間認識部10により生成された現実空間のメッシュ構造をレンダリングし、現実空間のメッシュ構造に映る仮想オブジェクトの影をレンダリングする。
【0024】
より具体的には、レンダリング部20は、仮想オブジェクトをレンダリングしてカラー値を画素バッファ32に保存するとともに、現実空間のメッシュ構造をたとえば白(RGB(255,255,255))でレンダリングして画素バッファ32に保存する。仮想空間の仮想オブジェクトはレンダリングされてカラー値が生成されるが、現実空間の壁、床、天井、静止物体などの現実のオブジェクトはレンダリングされても、色情報は生成されずに白一色で描画される。
【0025】
さらに、レンダリング部20は、仮想オブジェクトが現実空間のメッシュ構造に落とす影をたとえば黒(RGB(0,0,0))やアルファ値を設定した半透明の色でレンダリングして画素バッファ32に保存する。
【0026】
影を反映する方法として他にも、シャドウマッピングやレイトレーシングを使って影をレンダリングし、影のみポストプロセスなどで暗めに重畳する方法もある。
【0027】
ここでは仮想オブジェクトの影を例として挙げたが、仮想オブジェクトが現実空間へ与える光に関する表現は影以外にもいろいろ考えられる。レンダリング部20は、現実空間に対する仮想空間の光に関する表現、具体的には仮想オブジェクトが現実オブジェクトに落とす影や現実空間への仮想オブジェクトの映り込み、手前にある仮想空間のオブジェクトの背後が透けて見える表現、仮想空間における仮想の光源によるライティング表現などを半透明のCG画像として描画する。たとえばシャドウマッピングは光源からの深度マップを平面に投影する方法やレイトレーシングなどの手法を用いて影や映り込みを描画することができる。仮想オブジェクトの影や映り込みの半透明CG画像を現実空間に重畳することで現実空間に対する仮想オブジェクトの影や映り込みを表現することができる。現実空間のオブジェクトは白一色でレンダリングされているため、影や映り込みが描画された領域とは区別することができる。
【0028】
レンダリング部20が仮想空間の仮想オブジェクトや現実空間のポリゴンメッシュをレンダリングする際、これらのオブジェクトの奥行き値をシーンデプスバッファ34に書き込み、オブジェクト間の前後関係を判定する。オブジェクトが描画されない画素はシーンデプスバッファ34において具体的なデプス値が書き込まれず、シーンデプス値は無限大(不定)である。
【0029】
レンダリング部20は、現実空間のメッシュ構造をレンダリングする際、実空間デプスバッファ36の対応する画素位置にデプス値を書き込む。レンダリング部20は、現実空間のメッシュ構造に影をレンダリングすることもあるが、その場合は実空間デプスバッファ36の対応する画素位置にデプス値が既に書き込まれていることに留意する。実空間デプスバッファ36にデプス値を書き込む代わりに、所定の値、たとえば1を書き込んでもよい。実空間デプスバッファ36において、現実空間のメッシュ構造がレンダリングされない画素位置にはデプス値または1が書き込まれないため、初期値(たとえば無限大やゼロ)のままである。
【0030】
シーンデプスバッファ34とは別に実空間デプスバッファ36を設ける理由は、仮想オブジェクトを重畳せずに現実空間をそのまま透過させる領域(「背景領域」と呼ぶ)と、仮想オブジェクトが描画される領域を区別するためである。
【0031】
透過率制御部45は、透過型ヘッドマウントディスプレイ200の第一調光素子110および第二調光素子120の透過率を必要に応じて制御する。後述のように、仮想オブジェクトの影が相対的に暗く見えるように、仮想オブジェクトを重畳させずに現実空間がそのまま透過する背景領域をグレーの背景色で光らせるため、透過型ヘッドマウントディスプレイ200の透過型ディスプレイ100の輝度を全体的に下げる必要がある。そこで、透過率制御部45は、背景領域が発光していないように見えるように、第二調光素子120の透過率を下げる調整を行う。
【0032】
第二調光素子120の透過率を下げることで、透過型ディスプレイ100の輝度、階調、鮮やかさが犠牲になるため、透過率制御部45は、影を表現する必要がない場合、第二調光素子120を完全透過にする。
【0033】
透過率制御部45は、レンダリング部20により生成されるCG画像の輝度のダイナミックレンジを参照して、第二調光素子120の透過率を動的に変えてもよい。透過率制御部45は、影を濃く見せるために背景色の輝度を上げた場合は、それに合わせて第二調光素子120の透過率を下げる調整を行ってもよい。
【0034】
また、透過率制御部45は、外光の影響が強い屋外などで利用する場合、外光の強度に応じて、第一調光素子110の透過率を下げる調整を行い、透過型ディスプレイ100に表示されるCG画像が見えやすくなるように遮光する。
【0035】
さらに、透過率制御部45は、第二調光素子120の透過率に合わせて、第一調光素子110の透過率を調整してもよい。第二調光素子120の透過率を下げて暗くする場合、第一調光素子110の透過率を上げて、外界の光をより多く取り入れることができる。
【0036】
ポストプロセス部40は、レンダリング部20により生成された仮想空間と現実空間の描画データに対して、仮想オブジェクトの影を表示するための処理を実行する。
【0037】
画素値変換部50は、仮想オブジェクトを重畳させずに現実空間をそのまま透過させる背景領域の色(「背景色」と呼ぶ)がグレー(たとえばRGB(20,20,20))になるように、画素バッファ32に格納された全画素のカラー値を次式によって底上げし、変換後の各画素のカラー値を画素バッファ32に保存する。
RGB’=RGB*(255-20)/255+20
ここで、RGBは各画素の元のRGB各色の値であり、RGB’は各画素の変換後のRGB各色の値である。この変換により、白(RGB(255,255,255))は白のままに残して、階調をスケーリングにより落として、全体的に(20,20,20)だけ底上げすることができる。
【0038】
影・背景処理部60は、実空間デプスバッファ36を参照して、仮想オブジェクトの影の領域を判別して黒(RGB(0,0,0))で上書きするとともに、影以外の背景領域を判別して背景色(RGB(20,20,20))で塗りつぶす処理を行う。
【0039】
影の領域の判別方法は次のようにして行う。まず実空間デプスバッファ36にデプス値または1が書き込まれている領域は、現実空間が描画されているので仮想オブジェクトの影が映る可能性がある。影が映っていない現実空間の領域は白で描画されている。そこで、実空間デプスバッファ36にデプス値または1が書き込まれており、かつ、色が白ではない領域が影であると判別する。影・背景処理部60は、影と判別された領域を黒(RGB(0,0,0))で上書きし、その領域を透過させる。影の色は、背景色(RGB(20,20,20))以下であればよいので、黒(RGB(0,0,0)に限らず、RGB(20,20,20)~RGB(0,0,0)の間で調整してもよい。また、影の境界をアンチエイリアシングしてもよい。
【0040】
実空間デプスバッファ36にデプス値または1が書き込まれており、かつ、影ではない領域は、背景領域であり、何も重畳されない領域であるから、背景色(RGB(20,20,20))で上書きする。これにより、背景領域は全体的に弱く光るようになり、透過する影の領域は相対的に暗く見えるため、現実空間に仮想オブジェクトの影が映っているように見える。
【0041】
ポストプロセス部40は、これ以外にも、被写界深度調整、トーンマッピング、アンチエイリアシングなどのポストプロセスを施し、CG画像が自然で滑らかに見えるように後処理してもよい。
【0042】
リプロジェクション部70は、ポストプロセスが施されたCG画像に対してリプロジェクション処理を施し、透過型ヘッドマウントディスプレイ200の最新の視点位置と視線方向から見える画像に変換する。
【0043】
ここで、リプロジェクションについて説明する。透過型ヘッドマウントディスプレイ200にヘッドトラッキング機能をもたせて、ユーザの頭部の動きと連動して視点や視線方向を変えて仮想現実の映像を生成した場合、仮想現実の映像の生成から表示までに遅延があるため、映像生成時に前提としたユーザの頭部の向きと、映像を透過型ヘッドマウントディスプレイ200に表示した時点でのユーザの頭部の向きとの間でずれが発生し、ユーザは酔ったような感覚(「VR酔い(Virtual Reality Sickness)」などと呼ばれる)に陥ることがある。
【0044】
そこで、「タイムワープ」または「リプロジェクション」と呼ばれる処理を行い、レンダリングした画像を透過型ヘッドマウントディスプレイ200の最新の位置と姿勢に合わせて補正することで人間がずれを感知しにくいようにする。
【0045】
歪み処理部86は、リプロジェクション処理が施されたCG画像に対して透過型ヘッドマウントディスプレイ200の光学系で生じる歪みに合わせて画像を変形(distortion)させて歪ませる処理を施し、歪み処理が施されたCG画像を表示部90に供給する。
【0046】
表示部90は、生成されたCG画像を透過型ヘッドマウントディスプレイ200に伝送して透過型ヘッドマウントディスプレイ200にCG画像を表示させる。
【0047】
表示部90により提供されるCG画像は、透過型ヘッドマウントディスプレイ200の透過型ディスプレイ100に表示され、現実空間に重畳される。これによりユーザは現実空間の一部にCG画像が重畳された拡張現実画像を見ることができる。
【0048】
図3図4A図4B図5A、および図5Bの例を参照して本実施の形態の画像生成方法を説明する。
【0049】
図3は、透過型ヘッドマウントディスプレイ200を透過して見える外界の現実空間を示す図である。窓のある会議室にテーブル、椅子、ホワイトボードが設置されている。空間認識部10は、この現実空間の空間認識を行ってポリゴンメッシュデータを生成する。
【0050】
図4Aは、従来手法によってレンダリングされる仮想空間の仮想オブジェクト400を示す図である。ここでは、比較のため、仮想オブジェクト400に影をつけない場合を示す。仮想オブジェクト400が存在しない背景領域420は黒で塗りつぶされ、透過型ディスプレイ100に表示される際は、黒の背景領域420は透過され、現実空間がそのまま透過されて見える。
【0051】
図4Bは、従来手法によって、透過される現実空間に仮想オブジェクト400が重畳される様子を示す図である。
【0052】
従来手法では、レンダリングされた仮想オブジェクト400が現実空間に重畳され、背景領域は透過されて現実空間がそのまま見えるため、仮想オブジェクト400が現実空間とは切り離されて独立して存在しているような不自然さが感じられる。
【0053】
図5Aは、本実施の形態の画像生成方法によってレンダリングされる仮想オブジェクト400を示す図である。
【0054】
本実施の形態では、レンダリング部20は、仮想オブジェクト400をレンダリングするとともに、現実空間のメッシュ構造を白でレンダリングし、現実空間のメッシュ構造に映る仮想オブジェクトの影410を黒でレンダリングする。画素値変換部50は、仮想オブジェクト400の影410以外の背景領域420をグレーで塗りつぶす。
【0055】
図5Bは、本実施の形態の画像生成方法によって、透過される現実空間に仮想オブジェクト400が重畳される様子を示す図である。
【0056】
影410以外の背景領域はグレーで現実空間に重畳されるが、仮想オブジェクト400の影410は黒色のため透過される。影410以外の背景領域が弱く光るため、仮想オブジェクト400の影410は相対的に暗く見える。本実施の形態の画像生成方法では、仮想オブジェクト400の影410が現実空間に映っているかのような表現ができるため、仮想オブジェクト400が現実空間から切り離されているのではなく、仮想オブジェクト400があたかも現実空間に存在しているような自然さが感じられる。
【0057】
図6は、本実施の形態の画像生成手順を示すフローチャートである。
【0058】
空間認識部10は、外界の現実空間を認識し、メッシュデータを生成する(S10)。
【0059】
レンダリング部20は、現実空間のメッシュを白でレンダリングし、仮想空間の仮想オブジェクトをカラー値でレンダリングする(S20)。さらに、レンダリング部20は、現実空間のメッシュに映る仮想オブジェクトの影を黒でレンダリングする(S30)。
【0060】
画素値変換部50は、レンダリング結果の全画素を背景色がグレーになるように底上げする(S40)。影・背景処理部60は、影を黒で上書きし、影以外の背景領域を背景色のグレーで上書きする(S50)。
【0061】
リプロジェクション部70は、レンダリング結果の画像に対してリプロジェクション処理を施す(S60)。歪み処理部80は、リプロジェクション処理された画像に歪み処理を施す(S70)。
【0062】
表示部90は、透過される現実空間にレンダリングされた画像を重畳表示する(S80)。背景領域がやや明るく表示され、透過される影の領域は相対的に暗くなるため、現実空間に影が落ちているように見える。
【0063】
次に第2の実施の形態の画像生成装置300を説明する。第2の実施の形態では、背景領域の画素値を一律に底上げするのではなく、仮想光源から現実空間に映る光と影をレンダリングすることで、現実空間に映る仮想オブジェクトの影を表現する。
【0064】
図7は、第2の実施の形態に係る画像生成装置300の構成図である。
【0065】
空間認識部10は、外界の現実空間の認識を行い、現実空間をポリゴンメッシュ構造でモデル化し、現実空間のメッシュデータをレンダリング部20に与える。
【0066】
レンダリング部20は、仮想空間の仮想オブジェクトをレンダリングするとともに、仮想光源を想定して空間認識部10により生成された現実空間のメッシュ構造をレンダリングし、現実空間のメッシュ構造に映る仮想オブジェクトの影をレンダリングする。仮想光源は、光源推定を行って、現実空間の光源の位置と合わせてもよい。たとえば、屋外であれば、日時とその場所の天気にもとづいて太陽の位置と光源の種類や明るさを決めてもよい。
【0067】
より具体的には、レンダリング部20は,仮想オブジェクトをレンダリングしてカラー値を画素バッファ32に保存するとともに、現実空間のメッシュのマテリアルまたはテクスチャの色をたとえば暗いグレー(RGB(10,10,10))であると仮定して、メッシュへの仮想光源からの光の当たり方を反映したカラー値を求め、画素バッファ32に保存する。
【0068】
さらに、レンダリング部20は、仮想オブジェクトが現実空間のメッシュ構造に落とす影をたとえば黒(RGB(0,0,0))やアルファ値を設定した半透明の色でレンダリングして画素バッファ32に保存する。
【0069】
最終的な影の輝度は、出力されるCG画像の輝度のダイナミックレンジを参照して決めればよい。レンダリング時の光源などの設定によっては、最終的な影の輝度がRGB(10,10,10)よりも明るくなり、影の周囲はさらに明るくなることもあり得る。その場合、CG画像中の最も暗い部分がRGB(0,0,0)になるようにブラックレベル補正をしてもよい。また、CG画像が全体的に暗い場合、影の部分がRGB(0,0,0)であっても、その周囲の輝度がわずかに明るいだけであることもある。その場合、影の部部の色はRGB(0,0,0)のままで、それ以外の部分の色のレンジを広げるように、トーンカーブを調整して全体の輝度を上げてもよい。
【0070】
レンダリング部20が仮想空間の仮想オブジェクトや現実空間のポリゴンメッシュをレンダリングする際、これらのオブジェクトの奥行き値をシーンデプスバッファ34に書き込み、オブジェクト間の前後関係を判定する。
【0071】
ポストプロセス部40は、透過される現実空間の輝度にもとづいて、レンダリング結果のCG画像にアフターエフェクト処理を施す。たとえば、現実空間が暗い場合、出力されるCG画像も暗くなるようにCG画像のトーンカーブを調整する。
【0072】
透過率制御部45、リプロジェクション部70、歪み処理部80、および表示部90の動作については実施の形態と同じであるから、ここでは説明を省略する。
【0073】
第2の実施の形態の画像生成装置300によれば、現実空間のメッシュの形状に合わせて仮想光源による光の当たり具合をレンダリングするため、全画素を底上げする必要がなく、影の部分の輝度を他の部分よりも下げるようなレンダリングをして出力すればよい。したがって、透過型ヘッドマウントディスプレイ200において第二調光素子120も不要になる。
【0074】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0075】
上記の説明では、透過型ヘッドマウントディスプレイ200を例に、仮想オブジェクトの影を表現する画像生成技術を説明したが、この画像生成技術は、透過型ヘッドマウントディスプレイ200に限らず、透過型ディスプレイ全般に適用することができる。たとえば、タブレットサイズの透過型ディスプレイをかざして外界に重畳される仮想世界を見たり、現実のオブジェクトが存在する空間に透過型ディスプレイを設置し、透過型ディスプレイを通して向こう側にある現実のオブジェクトに重畳される仮想世界を見ることも行われている。接眼位置に装着されるヘッドマウントディスプレイに限らず、離れた位置から見る透過型ディスプレイにおいても、本発明の画像生成技術を適用して、仮想オブジェクトの影を表現することができる。
【産業上の利用可能性】
【0076】
この発明は、画像生成技術に利用できる。
【符号の説明】
【0077】
10 空間認識部、 20 レンダリング部、 30 画像データ記憶部、 32 画素バッファ、 34 シーンデプスバッファ、 36 実空間デプスバッファ、 40 ポストプロセス部、 45 透過率制御部、 50 画素値変換部、 60 影・背景処理部、 70 リプロジェクション部、 80 歪み処理部、 90 表示部、 100 透過型ディスプレイ、 110 第一調光素子、 120 第二調光素子、 130 視点、 200 透過型ヘッドマウントディスプレイ、 300 画像生成装置。
図1
図2
図3
図4A
図4B
図5A
図5B
図6
図7