WO2024185429A1 - ヘッドマウントディスプレイおよび画像表示方法 - Google Patents
ヘッドマウントディスプレイおよび画像表示方法 Download PDFInfo
- Publication number
- WO2024185429A1 WO2024185429A1 PCT/JP2024/005095 JP2024005095W WO2024185429A1 WO 2024185429 A1 WO2024185429 A1 WO 2024185429A1 JP 2024005095 W JP2024005095 W JP 2024005095W WO 2024185429 A1 WO2024185429 A1 WO 2024185429A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- control surface
- distance
- display
- superimposed image
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 35
- 230000008859 change Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 17
- 230000001133 acceleration Effects 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 52
- 230000033001 locomotion Effects 0.000 abstract description 16
- 238000010586 diagram Methods 0.000 description 26
- 210000003128 head Anatomy 0.000 description 22
- 230000000007 visual effect Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 4
- 240000004050 Pentaglottis sempervirens Species 0.000 description 3
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 3
- 210000000887 face Anatomy 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 201000003152 motion sickness Diseases 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000002194 synthesizing effect Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 210000005069 ears Anatomy 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 208000003464 asthenopia Diseases 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
ヘッドマウントディスプレイの画像処理部は、仮想3次元空間においてユーザ280から実物体354a、354bまでの距離の分布に対応する制御面350を設定する。制御面350は、ユーザ280の動きに応じて更新される。画像処理部はユーザ280から視線方向における制御面までの距離dcに基づき、仮想3次元空間における重畳画像の仮想距離dsを決定し、重畳画像を配置したうえ、仮想カメラから見た様子をシースルー画像上に描画する。
Description
この発明は、視野内に重畳画像を表示するヘッドマウントディスプレイ、および画像表示方法に関する。
対象空間を自由な視点から鑑賞できる画像表示システムが普及している。例えばヘッドマウントディスプレイにパノラマ映像を表示し、ヘッドマウントディスプレイを装着したユーザの視線方向に応じた画像が表示されるようにしたシステムが開発されている。ヘッドマウントディスプレイを利用することで、映像への没入感を高めたり、ゲームなどのアプリケーションの操作性を向上させたりすることができる。
また実空間を撮影するビデオカメラをヘッドマウントディスプレイに設け、その撮影画像にコンピュータグラフィクスを合成することにより、拡張現実(AR:Augmented Reality)や複合現実(MR:Mixed Reality)を実現する技術も実用化されている。あるいは当該撮影画像を即時表示すれば、遮蔽型のヘッドマウントディスプレイであっても、ユーザは周囲の様子を容易に確認できる。さらに光透過型のウェアラブルディスプレイにより、実世界を見ながら情報を確認することも可能になっている。
上記のような技術において、メインとなる実空間や仮想空間の様子を立体視している最中に、ダイアログボックス、ヘルプ画面、コントロールパネル、インジケータなどの各種情報を重畳表示させたい場合がある。そのような重畳画像は表示内容の特性上、2次元のシンプルな構造の窓状の画像を、他の表示と関わりなく前面に出現させるのが一般的である。しかしながらメインの画像を立体視している状況においては、そのような重畳画像が不自然に見えたり、焦点が合いづらかったりすることが起こり得る。場合によっては、ユーザは、映像酔いなどの体調不良に陥る可能性もある。
本発明はこうした課題に鑑みてなされたものであり、その目的は、ヘッドマウントディスプレイなど立体視を実現するディスプレイにおいて、重畳画像を容易かつ自然に視認させることのできる技術を提供することにある。
上記課題を解決するために、本発明のある態様はヘッドマウントディスプレイに関する。このヘッドマウントディスプレイは、立体視を実現するヘッドマウントディスプレイであって、表示対象の仮想3次元空間に、ユーザと実物体の距離の分布に対応する制御面を設定する制御面生成部と、視線方向における前記制御面までの距離に応じて、表示すべき重畳画像の仮想距離を決定する重畳画像制御部と、3次元空間において仮想距離に配置させた状態の重畳画像を含む表示画像のデータを生成する表示画像生成部と、表示画像のデータを表示パネルに出力する出力制御部と、を備えたことを特徴とする。
本発明の別の態様は画像表示方法に関する。この画像表示方法は、立体視を実現するヘッドマウントディスプレイが、表示対象の仮想3次元空間に、ユーザと実物体の距離の分布に対応する制御面を設定するステップと、視線方向における制御面までの距離に応じて、表示すべき重畳画像の仮想距離を決定するステップと、3次元空間において仮想距離に配置させた状態の重畳画像を含む表示画像のデータを生成するステップと、表示画像のデータを表示パネルに出力するステップと、を含むことを特徴とする。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、ヘッドマウントディスプレイなど立体視を実現するディスプレイにおいて、重畳画像を容易かつ自然に視認させることができる。
本実施の形態は、3次元空間の像を立体視している状態で、別途準備された画像を重畳表示させる装置に関する。3次元空間は実空間でも仮想空間でもよい。実空間を表す像はカメラにより撮影された画像でもよいし、光学系を透過してなる像でもよい。すなわち本実施の形態の装置は、重畳画像のみを表示してもよいし、3次元空間の画像を表示しつつ重畳画像を合成してもよい。以後は主に、ヘッドマウントディスプレイに撮影画像を含む画像を表示させつつ、重畳画像を合成する態様について説明する。
図1はヘッドマウントディスプレイ100の外観例を示す。この例においてヘッドマウントディスプレイ100は、出力機構部102および装着機構部104で構成される。装着機構部104は、ユーザが被ることにより頭部を一周し装置の固定を実現する装着バンド106を含む。出力機構部102は、ヘッドマウントディスプレイ100をユーザが装着した状態において左右の目を覆うような形状の筐体108を含み、内部には装着時に目に正対するように表示パネルを備える。
筐体108内部にはさらに、ヘッドマウントディスプレイ100の装着時に表示パネルとユーザの目との間に位置し、画像を拡大して見せる接眼レンズを備える。ヘッドマウントディスプレイ100はさらに、装着時にユーザの耳に対応する位置にスピーカーやイヤホンを備えてよい。またヘッドマウントディスプレイ100はモーションセンサを内蔵し、ヘッドマウントディスプレイ100を装着したユーザの頭部の並進運動や回転運動、ひいては各時刻の位置や姿勢を検出する。
ヘッドマウントディスプレイ100はさらに、筐体108の前面にステレオカメラ110を備える。本実施の形態では、ステレオカメラ110が撮影している動画像を、少ない遅延で表示させることにより、ユーザが向いた方向の実空間の様子をそのまま見せるモードを提供する。以後、このようなモードを「シースルーモード」と呼ぶ。例えばヘッドマウントディスプレイ100は、コンテンツの画像を表示していない期間を自動でシースルーモードとする。
これによりユーザは、コンテンツの開始前、終了後、中断時などに、ヘッドマウントディスプレイ100を外すことなく周囲の状況を確認できる。シースルーモードはこのほか、ユーザが明示的に操作を行ったことを契機として、開始させたり終了させたりしてもよい。これによりコンテンツの鑑賞中であっても、任意のタイミングで一時的に実空間の画像へ表示を切り替えることができ、実世界での突発的な事象に対処するなど必要な作業を行える。なお図示する例でステレオカメラ110は、筐体108の前面下方に設けられているが、その配置は特に限定されない。またステレオカメラ110以外のカメラが設けられていてもよい。
ステレオカメラ110による撮影画像は、コンテンツの画像としても利用できる。例えばカメラの視野にある実物体に合わせた位置、姿勢、動きで、仮想オブジェクトを撮影画像に合成して表示することにより、ARやMRを実現できる。また撮影画像を表示に含めるか否かによらず、撮影画像を解析し、その結果を用いて、描画するオブジェクトの位置、姿勢、動きを決定づけることもできる。
例えば、撮影画像にステレオマッチングを施すことにより、被写体の像の対応点を抽出し、三角測量の原理で被写体の距離を取得してもよい。あるいはVisual SLAM(Simultaneous Localization and Mapping)など周知の技術により、周囲の空間に対するヘッドマウントディスプレイ100、ひいてはユーザの頭部の位置や姿勢を取得してもよい。Visual SLAMは、カメラが搭載された移動体の自己位置推定と環境地図の作成を、撮影画像を用いて同時に行う技術である。これらの処理により、ユーザの視点の位置や視線の向きに対応する視野で仮想世界を描画し表示させることができる。
図2は、本実施の形態における画像表示システムの構成例を示す。画像表示システム10において、ヘッドマウントディスプレイ100は、無線通信またはUSB Type-Cなどの周辺機器を接続するインターフェースによりコンテンツ処理装置200に接続される。コンテンツ処理装置200は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できるゲームなどのオンラインアプリケーションをコンテンツ処理装置200に提供してもよい。
コンテンツ処理装置200は、基本的に、コンテンツを処理して表示画像を生成し、ヘッドマウントディスプレイ100に送信することで表示させる情報処理装置である。典型的にはコンテンツ処理装置200は、ヘッドマウントディスプレイ100を装着したユーザの頭部の位置や姿勢に基づき視点の位置や視線の方向を特定し、それに対応する視野で表示画像を生成する。例えばコンテンツ処理装置200は、電子ゲームを進捗させつつ、ゲームの舞台である仮想世界を表す画像を生成し、VR(仮想現実:Virtual Reality)を実現してもよい。
図3は、本実施の形態の画像表示システム10におけるデータの経路を模式的に示している。ヘッドマウントディスプレイ100は上述のとおり、ステレオカメラ110と表示パネル122を備える。表示パネル122は、液晶ディスプレイや有機ELディスプレイなどの一般的な表示機構を有するパネルである。本実施の形態において表示パネル122は、ユーザの左目および右目に正対する左右の領域に、動画像のフレームを構成する左目用および右目用の画像をそれぞれ表示する。
左目用画像と右目用画像を、両眼の間隔に対応する視差を有するステレオ画像とすることにより、表示対象を立体的に見せることができる。表示パネル122は、左目用のパネルと右目用のパネルを左右に並べてなる2つのパネルで構成してもよいし、左目用画像と右目用画像を左右に接続した画像を表示する1つのパネルであってもよい。
ヘッドマウントディスプレイ100はさらに、画像処理用集積回路120を備える。画像処理用集積回路120は例えば、CPUを含む様々な機能モジュールを搭載したシステムオンチップである。なおヘッドマウントディスプレイ100はこのほか、上述のとおりジャイロセンサ、加速度センサ、角加速度センサなどのモーションセンサや、DRAM(Dynamic Random Access Memory)などのメインメモリ、ユーザに音声を聞かせるオーディオ回路、周辺機器を接続するための周辺機器インターフェース回路などが備えられてよいが、ここでは図示を省略している。
図では、ステレオカメラ110が撮影した画像を表示に含めるケースにおける、2通りのデータ経路を矢印で示している。ARやMRを実現する場合、一般にはステレオカメラ110による撮影画像を、コンテンツを処理する主体に取り込み、そこで仮想オブジェクトと合成して表示画像を生成する。図示する画像表示システム10においてコンテンツを処理する主体はコンテンツ処理装置200のため、矢印Bに示すように、ステレオカメラ110で撮影された画像は、画像処理用集積回路120を経て一旦、コンテンツ処理装置200に送信される。
そして仮想オブジェクトが合成されるなどしてヘッドマウントディスプレイ100に返され、表示パネル122に表示される。一方、シースルーモードの場合、矢印Aに示すように、ステレオカメラ110で撮影された画像を、画像処理用集積回路120で表示に適した画像に補正したうえ表示パネル122に表示させることができる。矢印Aの経路によれば、矢印Bの経路と比較しデータの伝送経路が格段に短くなるため、画像の撮影から表示までの時間を短縮できるとともに、伝送に要する消費電力を軽減させることができる。
ただし本実施の形態におけるシースルーモードのデータ経路を矢印Aに限定する主旨ではない。つまり矢印Bの経路を採用し、ステレオカメラ110により撮影された画像を、一旦、コンテンツ処理装置200に送信してもよい。そして、コンテンツ処理装置200側で表示画像として補正したうえで、ヘッドマウントディスプレイ100に返すことで表示に至る構成としてもよい。
いずれにしろ本実施の形態では好適には、ステレオカメラ110による撮影画像を行単位など1フレームより小さい単位で順次、パイプライン処理することにより、表示までの時間を最小限にする。これにより、頭部の動きに対し映像が遅れて表示され、ユーザが違和感や映像酔いを覚える可能性を低くする。
図4は、ヘッドマウントディスプレイ100が表示するシースルーモードの画像と、重畳画像を合成した画像を模式的に示している。画像250は、シースルーモードにおける画像(以後、シースルー画像と呼ぶ)の1フレームであり、ヘッドマウントディスプレイ100前方の室内の様子を、ステレオカメラ110が撮影した画像に対応する。実際には上述のとおり、同じ物の像が視差分だけ水平方向にずれた、左目用、右目用の画像対が生成され、表示パネル122の左右の領域に表示される。また撮影画像から表示画像を生成する際、適宜画角が補正されるものとする。
当然、ユーザが顔の向きを変化させれば、シースルー画像250の視野も変化する。この状態においてヘッドマウントディスプレイ100は、ユーザからの要求やシステム上の必要性などに応じて、重畳画像254を合成した画像252を表示する。図の例では、ユーザにログインのためのアドレスとパスワードを入力させるダイアログボックスを表示させている。ユーザが、ダイアログボックスに対し必要な情報を入力すると、ヘッドマウントディスプレイ100は重畳画像254を非表示とし、元のシースルー画像250に表示を戻す。
図示するように、立体視を実現している表示画像の一部に重畳画像254を表す場合、表示対象の3次元空間を考慮した設定が必要になる。具体的には、奥行き方向の軸を含めて重畳画像254のオブジェクトの位置を決定し、それに対応する視差で、左右の画像対を生成することが求められる。なお以後の説明では、3次元空間に配置される重畳画像のオブジェクトも「重畳画像」と表現する場合がある。
図5は、3次元空間の奥行き方向の軸を考慮したときの、重畳画像の位置と、左目用、右目用の画像の例を示している。図の上段は、表示画像生成時に構成される仮想的な3次元空間を俯瞰した状態を示している。仮想カメラ260a、260bは、表示画像を生成するための仮想的なレンダリングカメラであり、図の上方向が奥行き方向(仮想カメラ260a、260bからの距離)を表す。重畳画像を表示しない通常状態において、ヘッドマウントディスプレイ100は例えば、仮想空間における所定の距離diにシースルー画像264を配置する。
なお実際には、ステレオカメラ110が撮影したステレオ画像を用い、左目用と右目用の系に対しそれぞれシースルー画像264を配置してよい。重畳画像267を表示する必要が生じたら、ヘッドマウントディスプレイ100は例えば、仮想空間における距離dsに重畳画像266を配置する。シースルー画像264のみの場合、および重畳画像266を追加で配置した場合のどちらにおいても、仮想カメラ260a、264bから見た像を描画することにより、左目用、右目用の表示画像が生成される。
図の下段には、左目用の表示画像268a、右目用の表示画像268bを模式的に示している。ただし両者においてシースルー画像は省略し、重畳画像267のみを表している。仮想カメラ260a、260bが視差を有することにより、重畳画像267は左右の表示画像268a、268bの平面上で、水平方向にずれた位置に表される。当該ずれ量は、3次元空間における重畳画像266の距離dsに依存して変化する。これによりユーザは、重畳画像267に距離感を知覚する。
同図においてシースルー画像264は、同一距離に位置する一平面として示されているが、立体視を実現している場合、実物体の像はその実際の位置に応じて、様々なずれ量で左目用、右目用画像に表される。これによりユーザの認識上、像の位置が奥行き方向に分布を持つことになる。当該分布は、ユーザがいる場所や、向いている方向によって大きく変化し得る。例えば物が置かれていない遠くの壁を見ているユーザが、近くのテーブルへ視線を移したら、当然、像の距離の分布が大きく変化する。
このような不規則な変化に対し、重畳画像266の距離dsを固定とすると、3次元空間の表現上、矛盾が生じる可能性がある。例えば、一部が重畳画像266と重なっている実物体が、距離感としては重畳画像266より手前にあるにも関わらず、重畳画像266に隠蔽されているといった不自然な画像が表示される。このような画像は、目の焦点の合わせづらさや映像酔いの原因となり得る。
空間的に矛盾が生じないよう、重畳画像266を常時、仮想カメラ260a、260bの至近距離に配置することも考えられる。しかしながらこの場合、遠くにのみ実物体があるような視野では、重畳画像266との奥行き方向の距離が離れすぎて、やはり焦点が合わせづらく、見づらさや眼精疲労を起こし得る。このような不具合は、シースルー画像における実物体の像に限らず、光透過型のウェアラブルディスプレイで見える実物体や、仮想世界におけるオブジェクトなどと、重畳画像との位置関係においても同様に起こり得る。
そこで本実施の形態では、重畳画像に与える仮想的な距離を、視野内の3次元空間の状態に応じて決定する。例えばヘッドマウントディスプレイ100は、ユーザから実物体までの距離の分布を取得し、視野内にある実物体までの距離に応じて重畳画像の仮想距離を決定する。これにより、メインの画像世界と重畳画像を矛盾なく融合させることができ、見づらさも抑えることができる。
図6は、本実施の形態において重畳画像の仮想距離を決定する原理を説明するための図である。図は、ユーザ280から広がるシースルー画像の視野282a、282bと、周囲にある実物体(例えば実物体284)の位置関係を、俯瞰図で模式的に示している。シースルー画像の視野が視野282aにあるとき、視野内の実物体はユーザ280の比較的近くに分布している。シースルーモードでは、それらの物体の像がビュースクリーン286aに射影され、表示される。
ビュースクリーン286a上に黒く示したように、重畳画像288aを表す場合、ヘッドマウントディスプレイ100は、3次元空間における重畳画像のオブジェクト290aの仮想距離d1を決定する。この際、ヘッドマウントディスプレイ100は、実物体が分布する範囲の手前に重畳画像のオブジェクト290aが位置するように仮想距離d1を決定する。
ここでユーザ280が頭部を右方向に転回し、シースルー画像の視野が視野282bに変化したとする。視野282bにおいて、実物体は比較的、ユーザ280から遠くに分布している。この状態でビュースクリーン286bに重畳画像288bを表す場合、ヘッドマウントディスプレイ100は、重畳画像のオブジェクト290bの仮想距離d2を新たに決定する。
視野282aと比較し視野282bでは、重畳画像288bの表示領域に対応する画角内で物体が遠くに分布しているため、適切な仮想距離d2は仮想距離d1より大きくなる。このような変化に対し、ヘッドマウントディスプレイ100は、仮想距離の変化の割合と同じ割合で、重畳画像のオブジェクト290bのサイズを縦横双方向に拡大する。これにより、ビュースクリーン286b上での重畳画像288bのサイズは同一に保たれ、仮想距離によらず文字などの見やすさが維持される。
図では視野282aと視野282bを代表的に示しているが、実際には視野282aから視野282bへ変化する過渡期の状態が存在する。ユーザ280が重畳画像を表示させたまま頭部を転回させた場合、仮想距離をD1からD2へ不連続に切り替えると、ユーザ280がそれまで見ていた重畳画像が突然、移動することになり、見づらさや違和感の原因になる。また実物体までの距離の測定ノイズによって重畳画像が細かく変動し、誤作動のように見えてしまう恐れもある。
さらに、実物体の距離取得から仮想距離の導出までに時間を要した結果、ユーザの頭部の転回に対し重畳画像が遅れて移動し、シースルー画像の視野はすでに停止しているにも関わらず重畳画像が動いている状態が発生し得る。そこで本実施の形態では、実物体までのおよその距離の分布を、ユーザを囲む連続した面として継続的に見積もっておくことにより、重畳画像の仮想距離を、ユーザの視線の転回に対し連続的かつ即座に変化させる。
図7は、本実施の形態において重畳画像の仮想距離を決定する具体的な手法を説明するための図である。同図は図6と同様、ユーザ280と周囲にある実物体(例えば実物体354a、354b)を俯瞰した状態を模式的に示している。本実施の形態では、ユーザから実物体までの距離を、ユーザ280を中心とした方位に対する分布として取得し、当該距離の分布におよそ対応する面を制御面350として準備する。制御面350は、実物体までの実際の距離の分布をより低い解像度で表し、さらに平滑化した分布を表す面であり、実物体が存在する領域の境界を大局的に示している。
重畳画像を表示させる期間において、ヘッドマウントディスプレイ100は、制御面350を根拠として、重畳画像のオブジェクト356a、356bを配置する。例えばヘッドマウントディスプレイ100は、ユーザ280の視線方向において、制御面350から所定間隔dgだけ手前(ユーザ280側)に、重畳画像のオブジェクト356a、356bを配置する。間隔dgは固定値でもよいし、ユーザ280の視線方向における制御面350までの距離dcに応じて所定規則で決定される変数でもよい。
制御面350を根拠に、距離dcの大きさに対応するように重畳画像のオブジェクト356a、356bの仮想距離dsを決定することにより、例えば実物体354aが遠くにある視野352aでは、重畳画像のオブジェクト356aも遠くに、実物体354bが近くにある視野352bでは重畳画像のオブジェクト356bも近くに配置される。
制御面350は連続した面のため、ユーザ280が重畳画像を表示させたまま頭部を転回させても、制御面350に合わせて、重畳画像のオブジェクト306a、306bを連続的に移動させることができる。図では制御面350の水平方向の断面を示しているが、制御面350はユーザ280を中心に全方位を囲む面であってよい。視野より広い範囲、好適にはユーザ280から全方位に対し制御面350を準備しておくことで、ユーザが突然振り向くなど視野が急に変化しても、それに追随するように、重畳画像を適正距離に保つことができる。
その結果、ユーザが頭部の転回を停止させた際、シースルー画像の視野は静止しているのに重畳画像の仮想距離dsは調整が完了しておらず、重畳画像のみが動いているといった状況を回避しやすい。多くの場合、ユーザが表示画像に注視するのは頭部を停止させている期間のため、頭部の転回中に重畳画像の仮想距離dsの調整がおよそ完了していることにより、調整過程を意識することがなくなり、ユーザの認知負荷を下げることができる。
上述のとおり制御面350は、実物体の実際の距離の分布を大局的に表した滑らかな面とする。これにより、ユーザ280の頭部の転回において重畳画像が細かく変動したり不連続な動きを見せたりすることがなくなる。このため実物体までの距離を厳密に求める必要がなく、制御面350の生成に要する処理の負荷を抑えられる。例えば、ヘッドマウントディスプレイ100の追跡にVisual SLAMを用いる場合、その結果を流用することで、処理の負荷をさらに抑えることができる。
図8は、Visual SLAMの原理を概説するための図である。カメラ22は移動体に設けられ、視野範囲の実空間26を、位置や姿勢を変えながら動画撮影している。ここで、ある時刻に撮影されたフレーム20aと、時間Δt後に撮影されたフレーム20bで、同じ実物体上のポイント24を表す特徴点28a、28bが抽出されたとする。なお撮影画像中の特徴点は、コーナー検出法等の公知の手法で検出できる。
各フレーム平面における、対応する特徴点28a、28bの位置座標のずれは、時間Δtにおけるカメラ22の位置と姿勢の変化に依存する。具体的には、カメラ22の回転運動および並進運動による変化分を表す行列をそれぞれR、Tとし、各時刻のカメラ22からポイント24までの3次元ベクトルをV1、V2とすると、次の関係式が成り立つ。
V1=R・V2+T
V1=R・V2+T
この関係を利用し、時間的に前後する2つのフレームにおける、対応する特徴点を複数抽出して連立方程式を解くことにより、その間のカメラ22の位置と姿勢の変化を特定できる。また導出結果の誤差を再帰的計算で最小化する処理により、ポイント24など、実空間26における実物体表面の3次元情報を、環境地図として生成できる。なおカメラ22をステレオカメラ110とすると、ポイント24等の3次元位置座標は、各時刻で独立して求められるため、対応点の抽出などの演算がより容易になる。
またVisual SLAMのアルゴリズムは多数、提案されており、そのいずれを採用しても構わない。いずれにしろ図示する原理によれば、動画像のフレームレートと同じレートで、カメラ22の位置や姿勢を導出できるとともに、検出された特徴点の単位で、実物体の3次元位置座標を求めることができる。本実施の形態においては、当該Visual SLAMにより逐次生成されるデータを利用して、実物体までの距離を所定のレートで取得し、制御面に反映させる。
図9は、ヘッドマウントディスプレイ100の内部回路構成を示す。ヘッドマウントディスプレイ100は、CPU(Central Processing Unit)136、GPU(Graphics Processing Unit)138、メインメモリ140、表示部142を含む。これらの各部はバス152を介して相互に接続されている。バス152にはさらに、音声出力部144、通信部146、モーションセンサ148、ステレオカメラ110、および記憶部150が接続される。なおバス152の構成は限定されず、例えば複数のバスをインターフェースで接続した構成としてもよい。
CPU136は、記憶部150に記憶されているオペレーティングシステムを実行することによりヘッドマウントディスプレイ100の全体を制御する。またCPU136は、記憶部150から読み出されてメインメモリ140にロードされた、あるいは通信部146を介してダウンロードされた、各種プログラムを実行する。GPU138は、CPU136からの描画命令にしたがって画像の描画や補正を行う。メインメモリ140は、RAM(Random Access Memory)により構成され、処理に必要なプログラムやデータを記憶する。
表示部142は、図3で示した表示パネル122を含み、ヘッドマウントディスプレイ100を装着したユーザの眼前に画像を表示する。音声出力部144は、ヘッドマウントディスプレイ100の装着時にユーザの耳に対応する位置に設けたスピーカーやイヤホンで構成され、ユーザに音声を聞かせる。
通信部146は、コンテンツ処理装置200との間でデータを送受するためのインターフェースであり、Bluetooth(登録商標)など既知の無線通信技術、あるいは有線通信技術により通信を実現する。モーションセンサ148はジャイロセンサ、加速度センサ、角加速度センサなどを含み、ヘッドマウントディスプレイ100の傾き、加速度、角速度などを取得する。ステレオカメラ110は、図1で示したとおり、周囲の実空間を左右の視点から撮影するビデオカメラの対である。記憶部150はROM(Read Only Memory)などのストレージで構成される。
図10は、本実施の形態のヘッドマウントディスプレイ100が備える、画像処理部の機能ブロックの構成を示している。図示する機能ブロックは、ハードウェア的には、図9に示した回路構成で実現でき、ソフトウェア的には、記憶部150からメインメモリ140にロードした、データ入力機能、データ保持機能、画像処理機能、通信機能などの諸機能を発揮するプログラムで実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
またヘッドマウントディスプレイ100は、図示した以外の機能を有していてもよい。さらに、図示する機能ブロックのうちの一部は、コンテンツ処理装置200が備えていてもよい。ヘッドマウントディスプレイ100において、画像処理部70は、図3の画像処理用集積回路120によって実現し得る。
ヘッドマウントディスプレイ100において画像処理部70は、ステレオカメラ110やモーションセンサ148から各種データを取得するデータ取得部71、制御面を生成する制御面生成部76、制御面の位置情報の分布を記憶する制御面マップ記憶部78、重畳画像の状態を制御する重畳画像制御部88、重畳画像のデータを格納する重畳画像データ記憶部90、表示画像のデータを生成する表示画像生成部80、および、表示画像のデータを出力する出力制御部82を備える。画像処理部70はさらに、ヘッドマウントディスプレイ100や実物体の状態情報を逐次取得する状態情報取得部84、および、実物体の位置に係るデータを格納する物体情報記憶部86を備える。
データ取得部71は、ステレオカメラ110やモーションセンサ148が継続的に取得している各種データを、所定のレートで取得する。詳細にはデータ取得部71は、撮影画像取得部72とセンサデータ取得部74を備える。撮影画像取得部72は、ステレオカメラ110による撮影画像のデータを所定のフレームレートで取得する。センサデータ取得部74は、モーションセンサ148による加速度や角加速度などの計測値のデータを所定のレートで取得する。
状態情報取得部84は、撮影画像取得部72から撮影画像のデータを逐次取得し、上述したVisual SLAMを実行してヘッドマウントディスプレイ100の位置や姿勢、周囲にある実物体の3次元位置情報など、実世界における物体の状態を所定のレートで取得する。状態情報取得部84はまた、センサデータ取得部74からモーションセンサ148による計測値を逐次取得し、Visual SLAMによる解析結果と統合することにより、状態情報の精度を高めてよい。
なお上述した状態情報を逐次取得できる限り、状態情報取得部84が行う実物体の検出手法や、検出結果の表現形式は特に限定されない。例えば状態情報取得部84は、TOF(Time Of Flight)により実物体までの距離を検出してもよい。TOFは、赤外線などの参照光の照射から、反射光の観測までの経過時間に基づき、被写体の距離を求める周知の技術である。物体情報記憶部86は、状態情報取得部84により取得された、実物体の3次元位置情報、例えば環境地図のデータを格納する。状態情報取得部84は最新の取得データに基づき、物体情報記憶部86に格納されたデータを適宜更新、修正してよい。
制御面生成部76は、物体情報記憶部86に格納された実物体の位置情報と、状態情報取得部84が取得しているヘッドマウントディスプレイ100の位置情報に基づき、ヘッドマウントディスプレイ100から実物体までの距離を求め、それに対応するように制御面のデータを生成する。結果として、ユーザが動くなどして実物体との距離に変化が生じると、制御面もそれに応じて変化する。
制御面生成部76は、天井などあらかじめおよその距離が判明している実物体に対応する一部の制御面については、検出された実物体の位置情報によらず固定としてもよい。これにより、特徴点が乏しいなどに起因して実物体の距離の取得精度が低くても、およそ適正な仮想距離を設定できる。制御面生成部76は、ヘッドマウントディスプレイ100、ひいてはユーザの頭部を中心とし、視野より広い所定範囲の方位(好適には全方位)に対し制御面の位置の分布を表した制御面マップを生成し、制御面マップ記憶部78に格納する。
制御面マップに表される制御面の位置情報の表現形式は、ヘッドマウントディスプレイ100からの距離値を一意に定めるパラメータであればよく、距離値自体でなくてよい。例えば位置情報は、ヘッドマウントディスプレイ100から制御面までの距離の逆数で表してもよい。距離の逆数は、左右の画像に生じる視差と比例するため、距離の変動におけるスケールファクタの面で都合がよい。すなわち近くにある物は、距離の少しの変動で視差が大きく変化し、見かけの距離感も大きく影響を受けるのに対し、遠くにある物は、距離の変動幅が同じでも距離感への影響が小さい。
制御面の位置情報を距離の逆数で表すことにより、実物体の遠近に応じて制御面の調整幅の単位を最適化でき、距離の取得精度に対して頑健性のある制御面を安定して設定できる。なお制御面生成部76は好適には、ユーザ自身の手など、実空間において動きを有する実物体の位置情報を制御面設定の根拠から除外する。これにより、動く物に影響されて制御面が変動し、重畳画像へ影響が及ぶのを防止できる。
なおメインの表示対象が仮想空間の場合、状態情報取得部84は、当該仮想空間の構成を規定するゲームなどのプログラム上での設定に応じて環境地図のデータを取得し、物体情報記憶部86に格納しておく。これにより上述と同様、制御面生成部76が制御面を生成する。また光透過型ディスプレイの場合は、ステレオカメラが搭載されていれば、これまで述べたヘッドマウントディスプレイ100と同様の処理で制御面を生成できる。
重畳画像制御部88は、重畳画像の表示が必要な期間において、重畳画像の仮想距離を所定のレートで決定する。上述のとおり重畳画像制御部88は基本的に、制御面の手前に重畳画像を配置する。このため重畳画像制御部88は、まず制御面マップ記憶部78から最新の制御面マップを読み出し、対応する制御面を生成する。そして重畳画像制御部88は、ヘッドマウントディスプレイ100、ひいてはユーザの視線の方向における、ユーザから制御面までの距離を求める。
ここで視線方向における制御面までの距離とは、厳密に仮想カメラの光軸における制御面までの距離に限らず、制御面のうち視野に対応する領域とユーザの頭部の間隔を表す数値であればよい。例えば重畳画像制御部88は、ビュースクリーン上の異なる画素から所定数の仮想的な光線(レイ)を発生させ、各方向における制御面までの距離を求めたうえ、それらを平均して最終的な距離を導出してもよい。この処理には、コンピュータグラフィクスの描画で用いられるレイトレーシングを応用できる。
重畳画像制御部88は、そのように求めた制御面までの距離に応じて、所定の規則で重畳画像の仮想距離を決定する。仮想距離が制御面までの距離より小さく、制御面までの距離の増減に対応するように増減する限り、その決定規則は特に限定されない。上述のとおり仮想距離は、制御面から所定間隔だけ手前までの距離としてもよいし、制御面までの距離の所定割合の距離などとしてもよい。重畳画像制御部88は、仮想距離を所定の時間間隔で決定する。この際、重畳画像制御部88は、仮想距離のそれまでの時間変化に基づき時間方向のフィルタリング処理を施し、最新の仮想距離を決定してよい。これにより、さらに滑らかに重畳画像を変位させることができる。
なお仮想距離には、ユーザの見やすさを踏まえ適正範囲を設定しておく。重畳画像制御部88は、当初算出した仮想距離が適正範囲を下回る場合は適正範囲の下限に、適正範囲を上回る場合は適正範囲の上限に、最終的な仮想距離を決定する。例えば適正範囲の下限は0.5m、上限は1.2mなどとする。重畳画像制御部88はまた、決定した仮想距離に応じて、3次元空間での重畳画像のサイズを決定する。具体的には重畳画像制御部88は、仮想距離が大きいほど、重畳画像のサイズを大きくする。これにより、仮想距離によらず重畳画像の見かけ上のサイズ(表示画像上でのサイズ)を同一とし、文字などの視認性が変化しないようにする。
同時に表示すべき重畳画像が複数、存在し、その距離感を異ならせる必要があるとき、重畳画像制御部88は、視線方向におけるそれらの間隔を、ユーザから制御面までの距離に応じて適切に変化させる。定性的には、ユーザから制御面までの距離が小さければ重畳画像同士の間隔を狭め、ユーザから制御面までの距離が大きければ重畳画像同士の間隔を広げる。これにより重畳画像の遠近によらず、重畳画像同士の距離感が適切に知覚されるようにする。
重畳画像データ記憶部90は、重畳画像の描画に必要なモデルデータを格納する。重畳画像データ記憶部90は例えば、重畳画像に表す文字データ、文字や図形の配置、背景の形状、表示画像上でのサイズ、色などのデータを、重畳画像の識別情報と対応づけて格納する。重畳画像データ記憶部90はまた、重畳画像ごとに、仮想距離の決定規則や、同時に表示すべき重畳画像、両者の位置関係などに係るデータを格納してよい。
表示画像生成部80はシースルーモードにおいて、シースルー画像からなる表示画像のデータを生成する。ただし上述のとおり、表示画像生成部80が生成するメインの画像はシースルー画像に限らない。表示画像生成部80はまた、重畳画像の表示が必要な期間において、重畳画像データ記憶部90から対応するデータを読み出し、決定された仮想距離に配置させた重畳画像を含む表示画像を生成する。具体的には表示画像生成部80は、仮想距離に対応するずれ量(視差)で、左目用、右目用の表示画像に重畳画像を表す。
出力制御部82は、表示画像生成部80から表示画像のデータを取得し、所定の処理を施して表示パネル122に出力する。当該表示画像は、左目用、右目用の画像対で構成され、場合によってそれぞれに重畳画像が合成されている。出力制御部82は、接眼レンズを介して見たときに歪みのない画像が視認されるように、歪曲収差や色収差を打ち消す方向に表示画像を補正してよい。出力制御部82はそのほか、表示パネル122に対応する各種データ変換を行ってよい。
次に、以上の構成によって実現できるヘッドマウントディスプレイ100の動作を説明する。図11は、ヘッドマウントディスプレイ100の画像処理部70が、シースルーモードにおいて重畳画像を表示する処理手順を示すフローチャートである。このフローチャートは、ユーザがヘッドマウントディスプレイ100を装着した状態で、何らかの契機によりシースルーモードが開始されたタイミングで開始される。
なお図示する手順と並行して、データ取得部71は、ステレオカメラ110による撮影画像と、モーションセンサ148による計測値(センサデータ)を継続して取得しているとする。また状態情報取得部84は、撮影画像のデータを用いてVisual SLAMを実行し、ヘッドマウントディスプレイ100の位置や姿勢を追跡し環境地図を生成しているとする。表示画像生成部80は、最新の撮影画像を用いてシースルー画像のデータを生成し、表示パネル122に表示させる処理を開始する(S10)。
一方、制御面生成部76は、所定の制御面マップを初期状態として準備する(S12)。例えば制御面生成部76は、全方位で同じ位置情報の値を有する制御面マップを初期状態として設定する。これは制御面の初期状態を球の内面としていることに対応する。このとき球の半径は、一般的なプレイエリアの範囲などを考慮し2mなどとする。そして制御面生成部76は、制御面マップを更新するか否かを決定し、更新する場合(S14のY)、物体情報記憶部86に格納される実物体の3次元位置情報とヘッドマウントディスプレイ100の位置情報に基づき、制御面マップを更新する(S16)。
制御面生成部76は例えば、ヘッドマウントディスプレイ100、すなわちユーザの頭部の速度が、動いていると見なせる所定値以上の期間に限り、制御面マップの更新を決定する。ユーザが動いている期間は多くの場合、ヘッドマウントディスプレイ100と実物体との距離に変化があるため、制御面の更新が必要となる。ユーザが静止している期間であっても、Visual SLAMの処理により実物体の3次元情報は適宜更新、修正され得る。それを即座に制御面に反映させると、重畳画像を表示させている期間において仮想距離が変化し、静止しつつ画像に注目しているユーザが重畳画像の変化に気づく可能性が高くなる。
ユーザが動いている期間に限定して制御面マップを更新することにより、ユーザに気づかれずに制御面を適正化できる可能性が高くなる。ユーザが静止しており制御面マップを更新しない期間においては(S14のN)、制御面生成部76はS16の更新処理をスキップする。制御面生成部76はその後も、更新期間において制御面マップを更新する処理を繰り返す(S14、S16)。
重畳画像を表示させる必要が生じたら(S18のY)、重畳画像制御部88は、最新の制御面マップに基づき制御面を生成する。そして重畳画像制御部88は、ヘッドマウントディスプレイ100の姿勢に基づくユーザの視線方向において、ユーザから制御面までの距離を導出したうえ重畳画像の仮想距離を決定する(S20)。この際、重畳画像制御部88は、決定した仮想距離に基づき、3次元空間での重畳画像のサイズも決定する。
表示画像生成部80は、ヘッドマウントディスプレイ100の位置および姿勢に対応する仮想カメラから重畳画像を見た様子を描画し、シースルー画像に重畳させたうえ、出力制御部82を介して表示パネル122に出力する(S22)。上述のとおり、出力制御部82はS22において、ヘッドマウントディスプレイ100の接眼レンズの歪みに応じた補正を施すなど必要な処理を行ってよい。
シースルーモードを終了させる必要がなければ(S24のN)、画像処理部70は、S14~S22の処理を繰り返す。ただし重畳画像を表示しない期間においては(S18のN)、S20、S22の処理をスキップする。シースルーモードを終了させる必要が生じたら、画像処理部70は全ての処理を終了させる(S24のY)。
撮影画像のフレームが順次収集されVisual SLAMが進捗するにつれ、実物体の位置情報が新たに取得されたり、修正されたりする。制御面生成部76がそれに応じて制御面マップを更新することにより、周囲にある実物体の位置に対応する制御面が構築される。特徴点が乏しい壁などの実物体に対応する制御面については、初期状態から更新されない可能性もあるが、初期状態の制御面を適切に設定しておくことにより、更新の有無によらずおよそ適切な位置に重畳画像を表すことができる。
図12は、制御面マップのデータ形式としてキューブマップを用いる例を説明するための図である。(a)は方位(緯度、経度)を変数とする極座標系とキューブマップの面の関係を示している。キューブマップの面302は、任意の半径を有する極座標系300に外接する仮想的な立方体を構成する面である。極座標系300の中心は、ヘッドマウントディスプレイ100の重心など、頭部の位置として設定される所定の代表点304とする。
極座標系300においてある方位を表す座標306は、代表点304から座標306への直線がキューブマップの面302で交わる位置308にマッピングされる。(b)は、キューブマップの面302を6面の展開図で示している。キューブマップの面302における2次元の位置座標は、代表点304からの方位と一対一の関係を有する。つまりキューブマップの各画素に対しパラメータの値を表すことにより、方位とパラメータが対応づけられる。
このようなキューブマッピング技術は、パノラマ画像を2次元データに展開する手段の一つとして知られている。本実施の形態では、キューブマップの画素値を制御面の位置情報とした制御面マップを生成する。ただし制御面マップのデータ形式はキューブマップに限定されず、例えば極座標系を用いてもよいし、円柱面やトーラス面などパノラマ画像を表現する手法のいずれを応用してもよい。ただしキューブマップはその他の表現形式と比較し、演算やデータ読み出しにかかる負荷が低く、境界条件の調整も容易である。
なお制御面の位置情報は、マップ上に離散的に表すのに限らず、方位に対する連続関数で表してもよい。例えば制御面生成部76は、実物体の3次元位置座標に球面調和関数をフィッティングさせ制御面の位置情報としてもよい。この場合、位置情報をキューブマップなどの2次元分布で表す態様に比べ、次数によっては演算負荷が減る可能性がある。またデータを格納するためのメモリ容量や読み出しにかかる負荷を軽減できる。
キューブマップを用いる場合、制御面生成部76はまず、代表点304を始点に、実物体310表面に検出された特徴点の3次元位置座標までの距離Rとその方位を求める。そして制御面生成部76は、それらのデータに基づき、マップ上の各画素に対応する離散的な方位に対し制御面の位置情報を決定し、マップ平面に書き込む。制御面マップの解像度は、例えばキューブマップの各面に対し64×64画素などとする。
実物体310の特徴点が、マップに位置情報を表すべき方位にあるとは限らないため、制御面生成部76は周囲の特徴点の位置座標を用いて、所定の方位の位置情報をフィルタ処理により導出する。さらに制御面生成部76は、時間方向にもフィルタ処理を施して制御面の位置情報を決定することにより、新たに得られた実物体の位置座標や、距離の測定値のノイズなどにより、制御面が急に変化しないようにする。
上述のとおり重畳画像の仮想距離を滑らかに変化させるため、制御面は実物体の距離の分布を踏襲しつつも表面に急な凹凸のない滑らかな面とすることが望ましい。そこで制御面生成部76は、制御面の位置情報の勾配の変化(2階微分)が所定範囲内に収まるように、JOR法(Jacobi Over Relaxation Method)等を用いて制御面マップにフィルタ処理を施す。
図13は、制御面生成部76が制御面マップに施すフィルタ処理の例を説明するための図である。(a)、(b)の上段は、制御面マップにおける位置情報p(例えばヘッドマウントディスプレイ100からの距離の逆数)の、横方向(x方向)の変化例を、下段は、制御面マップのうち対応する領域の2次元(x方向、y方向)の画素列を模式的に示している。
(a)に示すフィルタリング前の位置情報分布では、位置x1とx2近傍で位置情報pが大きく変化することにより、隣接する画素で勾配の変化が大きくなる。これに対し制御面生成部76は(b)に示すように、位置情報pの変化を周囲の画素に波及させて勾配の変化を所定値以下に抑えつつ、変化の波及範囲wが所定値内に収まるようにフィルタ処理を施す。例えば制御面生成部76は、次の漸化式を所定回数、実行する。
ここでPは、制御面マップにおける全画素の位置情報pを1次元の数列で表した位置情報ベクトルである。Aは位置情報ベクトルPの各要素(各位置情報p)のラプラシアン、すなわちx方向、y方向の2階微分の和を求めるための行列である。つまり(A・P)は実質的には、マップ平面の各画素に対し4近傍のラプラシアンフィルタを適用した結果を表す。
ωは、ヘッドマウントディスプレイ100が動いている期間にのみ、フィルタリング操作を有効とするための係数である。例えばヘッドマウントディスプレイ100の速度が、静止していると見なせる所定範囲内にあればω=0、それ以外であればω=1とする。ただしヘッドマウントディスプレイ100の速度に応じてωを0から1まで漸増させることにより、速度の境界値付近での連続性を担保してもよい。係数ωにより、ユーザが静止し、表示画像を注視している可能性の高い期間に制御面が調整され、重畳画像が不自然に動いて見えないようにする。なおヘッドマウントディスプレイ100が静止しているか否かの判定に用いるパラメータ(係数ωを制御するパラメータ)は、ヘッドマウントディスプレイ100の速度に限らず、ヘッドマウントディスプレイ100の角速度または加速度としてもよいし、速度、角速度、加速度の2つ以上の組み合わせとしてもよい 。
Dは、各位置情報のラプラシアンに応じて、フィルタ処理による調整量をそれぞれ制御するための対角行列である。図14は、i番目の位置情報piのラプラシアンΔpiの変化に対する、対応する対角要素Diの変化の例を示している。この例では要素Diは、Δpiがしきい値Lth以下のときは0、しきい値Lthを越えたら、Δpiの増加に応じて漸増し1で飽和する値としている。ただしΔpiに対する要素Diの変化は線形に限らない。このようなDiを対角要素とする行列Dによれば、対応する位置情報piの勾配の変化が大きいときは大きい幅で位置情報piの調整がなされ、しきい値Lth以下に収まった時点で調整が停止する。
制御面生成部76はフィルタ処理を所定の頻度で実施し、1回のフィルタ処理において上記漸化式を所定回数、適用することにより、位置情報pの変化を周囲の画素に波及させ勾配の変化を均していく。例えば制御面生成部76は、1/30秒ごとにフィルタ処理を実行し、1回のフィルタ処理で上記演算を最大8回実施する。このようなフィルタ処理により、制御面マップにおける位置情報pの勾配の変化は、およそしきい値Lthより小さい値に均される。また漸化式の演算回数に上限を設けることにより、凹凸の波及範囲を限定する。
これにより、実物体までの距離の分布を踏襲しつつ、急な凹凸を抑えた制御面を生成でき、およそ実物体の距離範囲に対応する距離感で重畳画像を表現できる。キューブマップを用いた場合、各面を構成する位置情報は連続したメモリ領域に格納される。したがって位置情報ベクトルPの生成が容易であり高速演算を実現しやすい。なおしきい値Lthは、周囲の環境などに応じて適正値をあらかじめ設定しておく。ここでしきい値Lthは、制御面マップ全体で固定値としてもよいし、マップ平面で分布を設けてもよい。
図15は、複数の重畳画像を異なる距離で表す際の仮想距離の決定原理を説明するための図である。(a)は、表示画像370のうち重畳画像のみを模式的に示している。ただし実際には、視差を有する右目用、左目用の表示画像が生成される。この例で表示画像370は、2つの重畳画像372a、372bを上下に配置した構成を有する。例えば画像平面の中央に表示される重畳画像372aは、入力を受け付けている主たる画像であり、上方の重畳画像372bは、別のメニューを呼び出すための副次的な画像である。
この場合、重畳画像372aを重畳画像372bより近い距離で表すことにより、2つの重畳画像の主従関係を直感的に理解させることができる。ただし重畳画像の表示内容や、距離に差を設ける目的は特に限定されない。いずれにしろこのように複数の重畳画像の距離に差を設ける場合、ユーザが一見してその差を認識できることが肝要である。例えば重畳画像372a、372bをユーザの近くに表す場合、両者の間隔が比較的小さくても前後関係は容易に認識できる。一方、重畳画像372a、372bを遠くに表す場合、近くに表す場合と同じ間隔で配置すると、両者の前後関係を認識しづらくなる。
そこで制御面生成部76は、制御面に基づくユーザからの仮想距離に応じて、重畳画像同士の間隔を調整する。(b)は2つのケースにおける重畳画像同士の相対距離を表している。定性的には、重畳画像376a、376bのようにユーザ374からの仮想距離が小さいとき、制御面生成部76は両者の間隔aを狭くする。重畳画像378a、378bのようにユーザ374からの仮想距離が大きいとき、制御面生成部76は両者の間隔a’を広くする。例えば制御面生成部76は、同時に表すべき重畳画像のうちいずれかの仮想距離を制御面に基づき決定し、当該仮想距離に基づき重畳画像同士の間隔を決定する。
図の例ではまず重畳画像376aの仮想距離dsを決定し、それに応じて間隔aを決定することで、重畳画像376bの仮想距離がds+aと定まる。仮想距離と重畳画像同士の間隔との関係は、上記性質を満たせば特に限定されず、比例関係などでもよい。また同時に表示させる重畳画像の数は2つに限定されない。このような重畳画像同士の間隔調整により、重畳画像の遠近によらず前後関係を一見して認識させることができ、各重畳画像の役割を奥行き方向の配置により表すことが容易になる。
以上述べた本実施の形態によれば、立体視を実現するヘッドマウントディスプレイにおいて、視野内の3次元空間における物体の距離の分布に対応するように制御面を生成し、視線方向におけるユーザから制御面までの距離に応じて、重畳画像の仮想距離を決定する。これにより、その特性上、隠蔽が好ましくない重畳画像を、3次元空間においても物体の手前にあるようにして、自然に見せることができる。また物体と同程度の距離に重畳画像を配置することにより焦点が合わせやすい。結果としてユーザは、重畳画像の表示前と同様の感覚で、無理なく重畳画像を視認できる。
また仮想距離決定の根拠とする、連続かつ滑らかな面を制御面として準備しておくことにより、重畳画像を表示させた状態でユーザが頭部を転回させても、重畳画像を滑らかに変位させることができる。制御面をユーザからの広い範囲の方向に対し準備することで、急な振り向きなどにも追随できる。ユーザが頭部を転回している期間に調整を進捗させ、頭部の停止時には調整を完了させることが可能なため、ユーザが表示に着目する状況においては、常に適正な位置に重畳画像が表示されることになる。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
以上のように本発明は、ヘッドマウントディスプレイ、ゲーム機などの画像表示システムに利用可能である。
10 画像表示システム、 70 画像処理部、 72 撮影画像取得部、 74 センサデータ取得部、 76 制御面生成部、 78 制御面マップ記憶部、 80 表示画像生成部、 82 出力制御部、 84 状態情報取得部、 86 物体情報記憶部、 88 重畳画像制御部、 90 重畳画像データ記憶部、 100 ヘッドマウントディスプレイ、 110 ステレオカメラ、 120 画像処理用集積回路、 122 表示パネル、 136 CPU、 138 GPU、 200 コンテンツ処理装置。
Claims (10)
- 立体視を実現するヘッドマウントディスプレイであって、
表示対象の仮想3次元空間に、ユーザと実物体の距離の分布に対応する制御面を設定する制御面生成部と、
視線方向における前記制御面までの距離に応じて、表示すべき重畳画像の仮想距離を決定する重畳画像制御部と、
前記3次元空間において前記仮想距離に配置させた状態の前記重畳画像を含む表示画像のデータを生成する表示画像生成部と、
前記表示画像のデータを表示パネルに出力する出力制御部と、
を備えたことを特徴とするヘッドマウントディスプレイ。 - 前記制御面生成部は、ユーザの頭部を中心とする所定範囲の方位に対し前記制御面の位置情報の分布を表した制御面マップを、前記距離の分布の変化に応じて更新し、
前記重畳画像制御部は、前記制御面マップに基づき生成した前記制御面に基づき、前記仮想距離を決定することを特徴とする請求項1に記載のヘッドマウントディスプレイ。 - 前記制御面生成部は前記制御面マップとして、ユーザの頭部を中心とする仮想的な立方体の面で構成されるキューブマップに、前記制御面の位置情報の分布を表すことを特徴とする請求項2に記載のヘッドマウントディスプレイ。
- 搭載されたカメラによる撮影画像に基づき前記ヘッドマウントディスプレイと実物体の3次元位置情報を逐次取得する状態情報取得部をさらに備え、
前記制御面生成部は、前記3次元位置情報の変化に基づき前記制御面マップを更新することを特徴とする請求項2または3に記載のヘッドマウントディスプレイ。 - 前記制御面生成部は、ユーザの頭部の速度、角速度、加速度の少なくとも1つが所定値以上の期間に限定して、前記制御面マップを更新することを特徴とする請求項4に記載のヘッドマウントディスプレイ。
- 前記制御面生成部は、前記制御面マップにおいて、前記位置情報を表す数値の2階微分値を軽減させるフィルタ処理を、所定の頻度で実施することを特徴とする請求項2または3に記載のヘッドマウントディスプレイ。
- 前記重畳画像制御部は、前記制御面までの距離に応じて、表示すべき複数の重畳画像の視線方向における間隔を変化させることを特徴とする請求項1から3のいずれかに記載のヘッドマウントディスプレイ。
- 前記重畳画像制御部は、前記仮想距離を所定の時間間隔で決定するとともに、当該仮想距離の時間変化に基づき時間方向のフィルタリング処理を施すことを特徴とする請求項1から3のいずれかに記載のヘッドマウントディスプレイ。
- 立体視を実現するヘッドマウントディスプレイが、
表示対象の仮想3次元空間に、ユーザと実物体の距離の分布に対応する制御面を設定するステップと、
視線方向における前記制御面までの距離に応じて、表示すべき重畳画像の仮想距離を決定するステップと、
前記3次元空間において前記仮想距離に配置させた状態の前記重畳画像を含む表示画像のデータを生成するステップと、
前記表示画像のデータを表示パネルに出力するステップと、
を含むことを特徴とする画像表示方法。 - 立体視を実現するヘッドマウントディスプレイにおいて、
表示対象の仮想3次元空間に、ユーザと実物体の距離の分布に対応する制御面を設定する機能と、
視線方向における前記制御面までの距離に応じて、表示すべき重畳画像の仮想距離を決定する機能と、
前記3次元空間において前記仮想距離に配置させた状態の前記重畳画像を含む表示画像のデータを生成する機能と、
前記表示画像のデータを表示パネルに出力する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023033694A JP2024125699A (ja) | 2023-03-06 | ヘッドマウントディスプレイおよび画像表示方法 | |
JP2023-033694 | 2023-03-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024185429A1 true WO2024185429A1 (ja) | 2024-09-12 |
Family
ID=92674468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2024/005095 WO2024185429A1 (ja) | 2023-03-06 | 2024-02-14 | ヘッドマウントディスプレイおよび画像表示方法 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024185429A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11202256A (ja) * | 1998-01-20 | 1999-07-30 | Ricoh Co Ltd | 頭部搭載型画像表示装置 |
WO2019193696A1 (ja) * | 2018-04-04 | 2019-10-10 | 株式会社ソニー・インタラクティブエンタテインメント | 基準画像生成装置、表示画像生成装置、基準画像生成方法、および表示画像生成方法 |
US11451758B1 (en) * | 2020-02-12 | 2022-09-20 | Meta Platforms Technologies, Llc | Systems, methods, and media for colorizing grayscale images |
JP2023000947A (ja) * | 2021-06-18 | 2023-01-04 | ヤフー株式会社 | 表示制御装置、表示制御方法および表示制御プログラム |
-
2024
- 2024-02-14 WO PCT/JP2024/005095 patent/WO2024185429A1/ja unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11202256A (ja) * | 1998-01-20 | 1999-07-30 | Ricoh Co Ltd | 頭部搭載型画像表示装置 |
WO2019193696A1 (ja) * | 2018-04-04 | 2019-10-10 | 株式会社ソニー・インタラクティブエンタテインメント | 基準画像生成装置、表示画像生成装置、基準画像生成方法、および表示画像生成方法 |
US11451758B1 (en) * | 2020-02-12 | 2022-09-20 | Meta Platforms Technologies, Llc | Systems, methods, and media for colorizing grayscale images |
JP2023000947A (ja) * | 2021-06-18 | 2023-01-04 | ヤフー株式会社 | 表示制御装置、表示制御方法および表示制御プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11914147B2 (en) | Image generation apparatus and image generation method using frequency lower than display frame rate | |
US11184597B2 (en) | Information processing device, image generation method, and head-mounted display | |
US10999412B2 (en) | Sharing mediated reality content | |
CN104536579A (zh) | 交互式三维实景与数字图像高速融合处理系统及处理方法 | |
JP7030010B2 (ja) | 立体映像奥行き圧縮装置および立体映像奥行き圧縮プログラム | |
WO2019063976A1 (en) | VISIOCASQUE SYSTEM | |
US9918066B2 (en) | Methods and systems for producing a magnified 3D image | |
CN111007939A (zh) | 一种基于深度感知的虚拟现实系统空间定位方法 | |
CN108153417B (zh) | 画面补偿方法及采用该方法的头戴式显示装置 | |
US11187895B2 (en) | Content generation apparatus and method | |
WO2014069090A1 (ja) | 画像表示装置及び画像表示方法、並びにコンピューター・プログラム | |
JP2024019911A (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
WO2024185429A1 (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
JP2024125699A (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
CN115202475A (zh) | 显示方法、装置、电子设备及计算机可读存储介质 | |
WO2024185428A1 (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
JP2024125698A (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
JP2024015868A (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
CN108881892A (zh) | 用于桌面式虚拟现实系统的防眩晕方法、系统 | |
US20240278113A1 (en) | Display image generation device and image display method | |
US20240073400A1 (en) | Information processing apparatus and information processing method | |
US20170052684A1 (en) | Display control apparatus, display control method, and program | |
CN115623186A (zh) | 虚拟现实模拟器以及计算机可读取记录介质 |