JP2018040822A - ヘッドマウントディスプレイ、制御プログラムおよび制御方法 - Google Patents
ヘッドマウントディスプレイ、制御プログラムおよび制御方法 Download PDFInfo
- Publication number
- JP2018040822A JP2018040822A JP2016172400A JP2016172400A JP2018040822A JP 2018040822 A JP2018040822 A JP 2018040822A JP 2016172400 A JP2016172400 A JP 2016172400A JP 2016172400 A JP2016172400 A JP 2016172400A JP 2018040822 A JP2018040822 A JP 2018040822A
- Authority
- JP
- Japan
- Prior art keywords
- display
- virtual
- image
- pixel
- lcd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
【構成】 HMD10は、LCD14、動きセンサ16、映像メモリ26および表示位置演算部30および画像補間部32を含み、動きセンサの出力に基づいて算出されたHMD10の位置および向きに応じて、仮想空間におけるユーザの視点、LCD14および仮想ディスプレイ100の位置関係を算出する。表示位置演算部は、視点とLCD14の各画素140を通る直線Lが交差する仮想ディスプレイ上の各対応位置110を算出し、各対応位置を含む画素100aの各々に表示された画像データに補間処理を施して、当該画素100aに対応するLCD上の画素に表示(出力)する。【効果】 通常のPCモニタに代えてHMD10を用いることができ、PCモニタを載置するための机上などのスペースを有効に使用することができる。【選択図】 図3
Description
この発明は、ヘッドマウントディスプレイ、制御プログラムおよび制御方法に関し、特にたとえば、仮想空間にオブジェクトを表示させる、ヘッドマウントディスプレイ、制御プログラムおよび制御方法に関する。
背景技術の一例が特許文献1に開示される。この特許文献1に開示されるヘッドマウントディスプレイでは、映像メモリから高精細映像信号を読み出す際に、動き検出センサからの検知結果に応じて高精細映像信号からの一部領域の読み出し位置を移動させる。
しかし、この背景技術のヘッドマウントディスプレイでは、視野の垂直方向の相対的な動きを検知するとともに、視野の水平方向の相対的な動きを検知して、高精細映像信号の読み出し位置を移動させるだけである。また、背景技術のヘッドマウントディスプレイでは、ユーザが前後方向に移動した場合または頭部が回転した場合にも、垂直方向または/および水平方向の相対的な動きに応じて、高精細映像信号の読み出し位置が移動されるだけである。つまり、平面的な動きにしか対応することができない。
たとえば、このような不都合を改善するために、ヘッドマウントディスプレイの前後方向の移動および回転についても検出可能な動き検出センサを設けるとともに、ヘッドマウントディスプレイに接続されたコンピュータにおいて、動き検出センサの出力に基づいて仮想カメラ(視点)の位置および方向を制御して3次元の画像処理を実行することが考えられる。この場合、たとえば、仮想空間に仮想のモニタが配置され、当該仮想のモニタに高精細映像信号に対応する映像が表示される様子が仮想カメラで撮影された(視点から見た)画像がヘッドマウントディスプレイの映像表示部に表示される。
しかしながら、このような3次元の画像処理を実行する場合には、3次元グラフィックス専用のGPUを搭載する必要がある。また、背景技術のような高精細映像信号を処理する場合には、高性能なGPUを用いる必要がある。いずれの場合であっても、ヘッドマウントディスプレイを含む表示システムが高価、大型になってしまうという問題がある。
それゆえに、この発明の主たる目的は、新規な、ヘッドマウントディスプレイ、制御プログラムおよび制御方法を提供することである。
この発明の他の目的は、使用者の目の前に表示装置が置かれている状況を仮想空間において再現することが可能であって、小型かつ安価で消費電力が小さい、ヘッドマウントディスプレイ、制御プログラムおよび制御方法を提供することである。
第1の発明は、ユーザの頭部に装着されるヘッドマウントディスプレイであって、表示部、動きセンサおよび表示位置演算部を備える。表示部は、たとえばLCDである。LCDには、PCなどの信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像が表示される。ただし、LCDに代えて、EL(Electro-Luminescence)ディスプレイが設けられていても良い。動きセンサは、基準位置および基準方向に対するヘッドマウントディスプレイの位置および方向を検出するためのセンサである。ただし、ヘッドマウントディスプレイはユーザの頭部に装着されるため、ユーザの視点の位置および向きを検出するためのセンサとも言える。たとえば、動きセンサは、加速度センサおよびジャイロセンサを含む。表示位置演算部は、ヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および表示部の各第1画素を通る直線が仮想ディスプレイと交差する各交差位置(対応位置)を算出する。そして、表示部は、表示位置演算部によって算出された各交差位置を含む各第2画素に表示された画像の各々を、対応する第1画素の各々に表示する。
第1の発明によれば、表示位置演算部によって算出された各交差位置を含む各第2画素に表示された画像の各々を、対応する第1画素の各々に表示するので、ユーザの動きに応じて、ユーザの視点およびLCDの位置および向きを変化させることにより、ユーザの目の前に表示装置が置かれている状況を再現することができる。したがって、PCモニタを載置するための机上などのスペースを有効に使用することができる。また、第1の発明によれば、ヘッドマウントディスプレイを小型かつ安価で構成するとともに、演算量が少ないので、ヘッドマウントディスプレイの消費電力を低減できる。
第2の発明は、第1の発明に従属するヘッドマウントディスプレイであって、表示位置演算部によって算出された各交差位置に対応する各第2画素を周囲の第2画素を用いて補間する画像補間部をさらに備える。
第2の発明によれば、各交差位置に対応する各第2画素を周囲の第2画素を用いて補間するので、LCDに仮想ディスプレイの画像を適切に表示させることができる。
第3の発明は、第1の発明に従属するヘッドマウントディスプレイであって、信号出力機器から複数の映像信号が入力され、仮想空間には、複数の映像信号に対応する複数の映像をそれぞれ表示する複数の仮想ディスプレイが配置される。
第3の発明によれば、仮想空間に複数の仮想ディスプレイが配置されるので、複数のモニタを配置して作業を行っている状況を再現することができる。このため、複数のモニタを載置するための机上などのスペースを有効に使用することができる。
第4の発明は、第3の発明に従属するヘッドマウントディスプレイであって、動きセンサの出力に基づいて、複数の映像信号に対応する複数の映像のうち、LCDに表示させる一部の映像を選択する映像選択部をさらに備える。
第4の発明によれば、LCDに表示させる一部の映像を選択することができるので、ユーザが所望の画像を見ることができる。
第5の発明は、第3または第4の発明に従属するヘッドマウントディスプレイであって、表示部は、視点から見た場合に、複数の仮想ディスプレイが重なるとき、視点に近い仮想ディスプレイの画像を表示する。
第5の発明によれば、複数の仮想ディスプレイが重なるとき、視点に近い仮想ディスプレイの画像を表示するので、実際に複数のモニタが配置されている状況と同じように表示することができる。
第6の発明は、第3の発明に従属するヘッドマウントディスプレイであって、信号出力機器は、ヘッドマウントディスプレイの前方を撮像するカメラを含み、複数の映像信号のうちの一つが、カメラによって撮像された映像に対応する画像信号である。
第6の発明によれば、LCDに表示される映像と同時に、カメラで撮像した画像をLCDに表示するので、たとえば、仮想ディスプレイに表示された資料とともに、ユーザの周辺に置かれた他の資料などを参照することができる。
第7の発明は、第6の発明に従属するヘッドマウントディスプレイであって、表示部は、カメラによって撮影された画像を仮想ディスプレイの画像の背景画像として表示する。
第7の発明によれば、カメラで撮像した画像を背景画像としてLCDに表示するので、ヘッドマウントディスプレイを装着した状態でも、周囲の状況を視認することができる。したがって、ユーザが移動する場合にも安全である。
第8の発明は、ユーザの頭部に装着されるヘッドマウントディスプレイの制御プログラムであって、ヘッドマウントディスプレイのコンピュータを、信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像を表示する表示部、基準位置および基準方向に対するヘッドマウントディスプレイの位置および方向を検出するための動きセンサ、および動きセンサで検出されたヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および表示部の各第1画素を通る直線が仮想ディスプレイと交差する各交差位置を算出する表示位置演算部として機能させ、表示部は、表示位置演算部によって算出された各交差位置を含む各第2画素に表示された画像の各々を、対応する第1画素の各々に表示する。
第9の発明は、表示部を備え、ユーザの頭部に装着されるヘッドマウントディスプレイの制御方法であって、ヘッドマウントディスプレイのコンピュータは、(a)信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像を表示部に表示させ、(b)基準位置および基準方向に対するヘッドマウントディスプレイの位置および方向を検出し、そして(c)ステップ(b)で検出されたヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および表示部の各第1画素を通る直線が仮想ディスプレイと交差する各交差位置を算出し、ステップ(a)は、ステップ(c)によって算出された各交差位置を含む各第2画素に表示された画像の各々を、対応する第1画素の各々に表示させる。
第8および第9の各発明においても、第1の発明と同様に、PCモニタを載置するための机上などのスペースを有効に使用することができる。
この発明によれば、使用者の目の前に表示装置が置かれている状況を仮想空間において再現することが可能であって、小型かつ安価で消費電力が小さいヘッドマウントディスプレイを提供することができる。
[第1実施例]
図1はこの発明の一実施例であるヘッドマウントディスプレイ(以下、「HMD」という)10およびこのHMD10を装着したユーザを上から見た平面図である。図1を参照して、HMD10は、使用者(ユーザ)の頭部に装着される。
図1はこの発明の一実施例であるヘッドマウントディスプレイ(以下、「HMD」という)10およびこのHMD10を装着したユーザを上から見た平面図である。図1を参照して、HMD10は、使用者(ユーザ)の頭部に装着される。
HMD10は、筐体12、LCD14、動きセンサ16および制御部20を備える。また、図示は省略するが、HMD10は、PCなどの外部の信号出力機器と通信するための通信手段を備える。HMD10の通信手段としては、通信ケーブルのような有線接続手段を用いても良いし、Wi−Fi等を利用した無線LANあるいは近距離無線通信のような無線接続手段を用いてもよい。
筐体12は、動きセンサ16、制御部20および通信手段などのHMD10の各コンポーネントを収容する部材である。また、図示は省略するが、筐体12には、HMD10をユーザの頭部に固定するためのヘッドバンドなどの固定用部材が設けられる。この固定用部材によって、HMD10がユーザの頭部に固定される。さらに、筐体12には、HMD10の主電源をオン/オフするための主電源ボタンが設けられる。
LCD14は、HMD10を装着したユーザの目の前方に配置され、HMD10の表示部として機能する。このLCD14に代えて、EL(Electro-Luminescence)ディスプレイがHMD10に設けられていても良い。LCD14は、平板状であり、正面から見た場合に矩形形状に形成される。ただし、LCD14は曲面状のものを用いることもできる。また、LCD14の表示面(表示領域)の大きさは、HMD10に搭載可能な大きさであり、たとえば2〜6インチ程度である。また、LCD14では、解像度に応じた複数の画素140が格子状に配列される。
図示は省略するが、一般的には、LCD14の表示面(表示領域)は、ユーザの左右の目に対応して、左右の2つの領域(左目の領域と右目の領域)に分離される。そして、LCD14に映像ないし画像を表示する場合には、各領域についての画像データが生成および出力される。ただし、この第1実施例では、LCD14の表示面(表示領域)の全体を単眼で見ている場合について説明する。
図2は図1に示すLCD14の表示面(表示領域)を示す正面図である。第1実施例では、LCD14のアスペクト比は4:3である。たとえば、LCD14では、縦方向(上下方向)にhv個の画素140が配列されるとともに、横方向(左右方向)にhh個の画素140が配列される。ただし、この第1実施例では、各画素140の縦の長さはpvであり、横の長さはphである。
動きセンサ16は、HMD10に内蔵され、HMD10の位置および向きの変化を検出するためのセンサである。ただし、動きセンサ16は、ユーザの頭部に装着されるため、ユーザの視点の位置および視線の向きを検出するためのセンサとも言える。具体的には、動きセンサは、ユーザの頭部(HMD10)の左右方向、上下方向および前後方向の移動およびユーザの頭部(HMD10)の向きを検出(算出)する。ただし、ユーザの頭部(HMD10)の基準の位置および基準の方向は、仮想空間において予め設定されている。この基準の位置からの移動量および基準の方向に対する回転量が動きセンサ16の出力に基づいて算出される。
たとえば、動きセンサ16は、加速度センサおよびジャイロセンサを含む。加速度センサとしては、静電容量式の加速度センサを用いることができる。この第1実施例では、加速度センサは、HMD10の左右の軸方向の加速度、上下の軸方向の加速度および前後の軸方向の加速度のそれぞれを検出する3軸の加速度センサである。また、ジャイロセンサとしては、圧電振動型のジャイロセンサを用いることができる。この第1実施例では、ジャイロセンサは、HMD10の左右方向の軸周りの角速度、上下方向の軸周りに角速度および前後方向の軸周りの角速度のそれぞれを検出する3軸のジャイロセンサである。
また、加速度センサに代えて、ビーコンまたは無線LANを用いて、ユーザの頭部(HMD10)の移動量が算出(検出)されるようにしても良い。たとえば、無線LANを用いる場合には、複数のアクセスポイントと通信する際の電波強度(信号強度)に応じてHMD10と複数のアクセスポイントとの距離が算出され、各アクセスポイントとの距離に基づいてHMD10の位置が算出される。
図示は省略するが、制御部20は、たとえば、汎用のマイクロコンピュータと不揮発性メモリを有する。この不揮発性メモリまたはHMD10の記憶部(図示せず)には、HMD10が表示可能な映像信号の種類(解像度など)を示す固有情報が記憶される。信号出力機器は、HMD10から固有情報を取得し、HMD10が表示可能な映像信号を出力する。
図3は図1に示すHMD10の電気的な構成を示すブロック図である。図3を参照して、HMD10の制御部20は、たとえば、マイクロコンピュータであり、同期分離部22、書込み制御部24、映像メモリ26、読出し制御部28、表示位置演算部30、画像補間部32および同期生成部34を含む。
同期分離部22は、信号出力機器から入力された映像信号に含まれる連続したフレームのデータから、画像データ(映像データ)と、その画像データのフレーム、垂直位置および水平位置を示す同期信号とを分離する。図4はHMD10に入力される映像信号の一例を示す図である。ただし、図4では、1600×1200のUXGAの映像信号が入力される場合を示す。図4に示すように、同期分離部22に入力される映像信号には、画像データの存在範囲を示すデータイネーブル信号および画像データの水平方向のライン毎のデータに対応する信号が含まれる。図4に示す例では、映像信号は、UXGA(1600×1200画素)の解像度であり、0ライン目(最も上側のライン)から1199ライン目(最も下側のライン)までのデータに対応する信号が含まれる。また、各ラインのデータには、水平方向の画素毎のデータが含まれる。図4に示す例では、各ラインのデータには、0番目の画素(最も左側の画素)から1599番目の画素(最も右側の画素)までのデータが含まれる。
なお、図4に示す映像信号は一例であり、映像信号の解像度は、仮想空間に設けるモニタで表示可能な解像度であれば、他の解像度であっても構わない。
同期分離部22で分離された画像データは、その画像データを構成する画素のデータ毎に映像メモリ26に入力される。また、同期分離部22で分離された同期信号は、書込み制御部24に入力される。
図3に戻って、書込み制御部24は、同期分離部22で分離された同期信号に応じて、画像データの各画素のデータが映像メモリに格納される位置を示すメモリアドレス(図5参照)を画像データの各画素のデータについて生成する。
映像メモリ26は、同期分離部22で分離された画素のデータを、書込み制御部24で生成されたその画素のデータに対応するメモリアドレスが示す位置に格納する。ただし、各画素の色毎のデータにメモリアドレスが割り当てられる。図5は映像メモリ26に格納されるデータの一部の例を示す図である。この図5に示すデータは、各画素の色毎のデータであり、各データにメモリアドレスが割り当てられる。
ただし、各データにおいて左側に記載されるアルファベットは、それぞれ赤色(R)、緑色(G)、青色(B)のデータであることを示す。また、括弧内の左側の数字は、フレーム番号を示す。括弧内の中央の数字は、何番目の水平ラインかを示す。括弧内の右側の数字は、何番目の垂直ラインかを示す。たとえば、R(0、1、0)のデータは、フレーム0、1番目の水平ライン、0番目の垂直ラインの画素の赤色のデータを示す。このように、メモリアドレスが指定されることによって、指定されたメモリアドレスに対応する画素のデータが指定される。
また、映像メモリ26は、ループカウンタを使用して複数フレームのデータを格納できるようにしてある。さらに、読出し制御部28からの要求に基づき、指定されたメモリアドレスのデータが映像メモリ26から読み出される。映像メモリ26から読み出されたデータは、画像補間部32に出力される。
図3に戻って、読出し制御部28は、後述する表示位置演算部30の演算結果に応じて、必要なデータのメモリアドレスを生成して、映像メモリ26に出力する。ただし、読出し制御部28は、後述する同期生成部34で生成された同期信号に応じて、映像メモリ26からデータが読み出されるタイミングを制御する。
表示位置演算部30は、動きセンサ16の出力に基づいて、ヘッドマウントディスプレイ10のLCD14のどの画素140(表示位置)に、映像信号に含まれるどの画像データ(画素100aのデータ)を表示するかを計算する。つまり、映像信号に含まれる各画素100aのデータのLCD14における表示位置の情報(位置情報)が計算される。なお、表示位置(位置情報)を計算する方法については、後で詳細に説明する。
画像補間部32は、表示位置演算部30で計算された位置情報を取得し、取得した位置情報に対応する画像データ(各画素100aのデータ)であって、映像メモリ26から出力される画像データに補間処理を施す。なお、補間処理については、後で詳細に説明する。
同期生成部34は、映像メモリ26から出力される画像データをLCD14に出力(表示)する場合の同期信号を生成して、読出し制御部28および画像補間部32に出力する。
ここで、第1実施例で想定される仮想ディスプレイ100およびLCD14の各画素140に表示されるデータについて説明する。図6はこの第1実施例で想定される仮想ディスプレイ100と、ユーザの視点およびLCD14との位置関係を上側から見た図解図である。図7はこの第1実施例で想定される仮想ディスプレイ100と、ユーザの視点およびLCD14との位置関係を右側から見た図解図である。ただし、視点、LCD14および仮想ディスプレイ100は、3次元の仮想空間に配置され、仮想空間における3次元座標で管理される。また、図6および図7は、後述するように、視点、LCD14の中心P1および仮想ディスプレイ100の中心P2が一直線上に並び、視点とLCD14との距離が第1所定距離であり、視点と仮想ディスプレイ100との距離が第2所定距離の場合について示してある。以下、この位置関係を「基準の位置関係」と呼ぶことがある。
図6および図7に示すように、ユーザの視点の前方に、第1所定距離d1(たとえば、数cm)を隔てて、HMD10のLCD14が設けられる。第1実施例では、ユーザが視線を正面に向けている場合において、ユーザの視線(以下、「基準の視線」ということがある)がLCD14の中心P1を通ると仮定してある。ユーザはHMD10を装着するので、ユーザが移動したり、頭部を動かしたりした場合であっても、この第1所定距離d1は固定である。
また、図6および図7に示すように、ユーザが正面を向いている場合に、ユーザの視点の前方に、第1所定距離d1よりも長い第2所定距離d2(たとえば、70〜80cm)を隔てて、仮想ディスプレイ100が設置される。この第1実施例では、ユーザの基準の視線が仮想ディスプレイ100の中心P2を通るように、仮想ディスプレイ100の上下方向および左右方向の位置が決定される。
ただし、仮想ディスプレイ100が配置される位置は一例であり、限定されるべきでない。視点との関係で適宜設定可能である。
たとえば、成人のユーザがHMD10を使用することを想定し、LCD14の表示面の大きさおよび第1所定距離d1は設定される。一般的な成人の水平方向の視界(視野角θ)は150°であり、垂直方向の視界(視野角α)は120°である。したがって、第1実施例では、視野角θが150°に設定されるとともに、視野角αが120°に設定されるように、LCD14の表示面の大きさ(一方の領域の大きさ)および第1所定距離d1が設定される。
第1実施例では、仮想ディスプレイ100に、信号出力機器から入力された映像信号に対応する映像(画像)が表示されると仮定し、その場合に、ユーザの視界に相当する範囲の画像をHMD10のLCD14に表示するようにしてある。
したがって、HMD10を装着したユーザが正面を見ている場合には、仮想ディスプレイ100に表示された映像(画像)を見ることができる。ただし、仮想ディスプレイ100は、3次元の仮想空間において表示される映像の位置および大きさを規定するためのものである。したがって、仮想空間において仮想ディスプレイ100に実際に映像が表示されている訳ではなく、仮想ディスプレイ100に相当する範囲に信号出力機器から入力された映像信号に対応する映像(画像)が表示される。
また、HMD10の使用を開始するとき(リセットしたときも同じ)には、ユーザが正面を向いた状態が仮定される。このとき、ユーザの視点、LCD14の中心P1および仮想ディスプレイ100の中心P2が一直線に並ぶ(基準の位置関係になる)状態が仮定される。その後は、HMD10に搭載された動きセンサ16の出力に応じて、視点およびHMD10(LCD14)の位置および向きが変化され、その変化(視線の移動)に応じて、LCD14に表示される画像も変化される。ただし、ここでは、ユーザの視界の変化によって、ユーザが見える範囲の画像が変化されることを意味し、仮想ディスプレイ100に表示される映像信号に含まれる映像ないし画像の内容が変化されるという意味ではない。
なお、図6に示すように、水平方向においては、範囲Hの外側については、仮想ディスプレイ100の範囲外となり、図7に示すように、垂直方向においては、範囲Vの外側については、仮想ディスプレイ100の範囲外となる。このため、第1実施例では、仮想ディスプレイ100の範囲外については、青色や黒色などの単色の背景画像を表示するようにしてある。
ただし、HMD10を装着したユーザが移動した場合、仮想空間におけるユーザの視点が移動する。この場合、仮想空間におけるユーザの視点と仮想ディスプレイ100との位置関係が変化する。たとえば、仮想空間における仮想ディスプレイ100の位置がユーザの視点に近くなると、LCD14上の仮想ディスプレイ100は大きく表示される。また、仮想空間における仮想ディスプレイ100の位置がユーザの視点から遠くなると、LCD14上の仮想ディスプレイ100は小さく表示される。つまり、LCD14に表示される仮想ディスプレイ100の水平方向の大きさ(範囲H)および仮想ディスプレイ100の垂直方向の大きさ(範囲V)が変化する。
また、仮想空間における仮想ディスプレイ100の位置によっては、LCD14上の仮想ディスプレイ100の一部がLCD14の表示領域からはみ出すことがある。この場合、図示は省略するが、LCD14の表示領域からはみ出した部分は、ユーザの視界の外であるため、ユーザから見えなくてもよい。
なお、仮想ディスプレイ100のサイズは、予め設定されており、たとえば、17〜24インチである。ただし、仮想ディスプレイ100のサイズは、変更可能にされている。たとえば、HMD10の筐体12に仮想ディスプレイ100のサイズを変更するためのボタン(サイズ変更ボタン)が設けられる。この場合、ユーザによってサイズ変更ボタンが操作されると、仮想ディスプレイ100のサイズが段階的に変更される。たとえば、仮想ディスプレイ100のサイズは、映像信号の解像度に応じて変更される。したがって、映像信号の解像度を自動的に検知して、仮想ディスプレイ100のサイズを自動的に変更してもよい。
ここで、上述したように、視点の前方にLCD14が配置され、LCD14のさらに前方に仮想ディスプレイ100が配置されるため、基本的には、LCD14の一画素140に対応する仮想ディスプレイ100の画素100aは複数である。つまり、視点からLCD14の一画素140を通して仮想ディスプレイ100を見た場合、複数の画素100aが含まれる。また、この第1実施例では、ユーザが前後方向に移動したことに応じて、視点と仮想ディスプレイ100との距離が変化する。したがって、HMD10のLCD14に表示される仮想ディスプレイ100の大きさが拡大または縮小される。
このため、この第1実施例では、バイキュービック法により、画素140に表示する画素100aの輝度を補間(補正)するようにしてある。
簡単に説明すると、まず、ユーザの視点、LCD14および仮想ディスプレイ100の位置関係に応じて、LCD14の各画素140に対応する仮想ディスプレイ100上の各位置(対応位置)110の位置座標(位置情報)が演算される。
ただし、上述したように、動きセンサ16の出力に基づいて、視点およびLCD14の位置および向きが変化され、ユーザの視点、LCD14および仮想ディスプレイ100の位置関係は、視点およびLCD14の位置および向きが変化されることに応じて、基準の位置関係から変化される。また、各対応位置110は、ユーザの視点とLCD14の各画素140とを通る直線Lが交差する仮想ディスプレイ100上の各位置(画素100a)である。ただし、視点の向きは視線の向きを意味する。以下、この明細書において同じである。
次に、各対応位置110を含む仮想ディスプレイ100の各画素100aと、各画素100aの周囲の画素100aを用いて補間処理が実行され、LCD14の各画素140に表示する画像の階調が算出される。以下に、詳細な処理方法を説明する。
まず、LCD14の各画素140に対応する仮想ディスプレイ100の各対応位置110を求める方法を説明する。
図8はLCD14の或る画素140に対応する仮想ディスプレイ100上の位置を示す図解図である。図8に示す場合において、LCD14が矩形形状の場合には、仮想空間におけるユーザの視点の座標を(x_eye,y_eye,z_eye)と表現し、視点からLCD14を見た場合において、LCD14の表示面の左上の点(画素)Aの座標を(x_luh,y_luh,z_luh)と表現し、LCD14の表示面の右上の点Bの座標を(x_ruh,y_ruh,z_ruh)と表現し、LCD14の表示面の左下の点Cの座標を(x_ldh,y_ldh,z_ldh)と表現する。この場合、LCD14の表示面の右下の点Dの座標は(x_ruh+x_ldh-x_luh,y_ruh+y_ldh-y_luh,z_ruh+z_ldh-z_luh)と表現することができる。
また、LCD14の水平の解像度(画素数)をH_ppih、垂直の解像度をV_ppihとすると、LCD14の或る画素140(h_pixh,v_pixh)の仮想空間における座標(X_pixh(h_pixh,v_pixh), Y_pixh(h_pixh,v_pixh), Z_pixh(h_pixh,v_pixh))は、以下の数1の方程式で求められる。
[数1]
X_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(x_ruh-x_luh)/H_ppih+(v_pixh+0.5)*(x_ldh-x_luh)/V_ppih+x_luh
Y_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(y_ruh-y_luh)/H_ppih+(v_pixh+0.5)*(y_ldh-y_luh)/V_ppih+y_luh
Z_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(x_ruh-x_luh)/H_ppih+(v_pixh+0.5)*(x_ldh-x_luh)/V_ppih+x_luh
ただし、数1では、LCD14の或る画素140において、輝度(画素)の中心と座標のグリッドがずれているため、画素140の値に0.5を加算してある。なお、仮想空間においては、画素140の横の長さphがX軸方向における長さ「1」に相当し、画素140の縦の長さpvがY軸方向における長さ「1」に相当する。
X_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(x_ruh-x_luh)/H_ppih+(v_pixh+0.5)*(x_ldh-x_luh)/V_ppih+x_luh
Y_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(y_ruh-y_luh)/H_ppih+(v_pixh+0.5)*(y_ldh-y_luh)/V_ppih+y_luh
Z_pixh(h_pixh,v_pixh)=(h_pixh+0.5)*(x_ruh-x_luh)/H_ppih+(v_pixh+0.5)*(x_ldh-x_luh)/V_ppih+x_luh
ただし、数1では、LCD14の或る画素140において、輝度(画素)の中心と座標のグリッドがずれているため、画素140の値に0.5を加算してある。なお、仮想空間においては、画素140の横の長さphがX軸方向における長さ「1」に相当し、画素140の縦の長さpvがY軸方向における長さ「1」に相当する。
上述したユーザの視点の座標と、数1で定義されるLCD14の画素140の空間座標に基づいて、ユーザの視点とLCD14の各画素140とを結ぶ直線L(図6〜図8参照)の方程式は、数2で表すことができる。
[数2]
(x-x_eye)/(X_pixh(h_pixh,v_pixh)-x_eye)
=(y-y_eye)/(Y_pixh(h_pixh,v_pixh)-y_eye)
=(z-z_eye)/(Z_pixh(h_pixh,v_pixh)-z_eye)
また、視点から見た場合において、仮想ディスプレイ100の左上の点(画素)Rの座標を(x_lud,y_lud,z_lud)と表現し、仮想ディスプレイ100の右上の点Sの座標を(x_rud,y_rud,z_rud)と表現し、仮想ディスプレイ100の左下の点Tの座標を(x_ldd,y_ldd,z_ldd)と表現する。この場合、仮想ディスプレイ100の右下の点Uの座標は(x_rud+x_ldd-x_lud,y_rud+y_ldd-y_lud,z_rud+z_ldd-z_lud)と表現することができる。このとき、仮想ディスプレイ100の平面の方程式は、下記の数3で示される。
(x-x_eye)/(X_pixh(h_pixh,v_pixh)-x_eye)
=(y-y_eye)/(Y_pixh(h_pixh,v_pixh)-y_eye)
=(z-z_eye)/(Z_pixh(h_pixh,v_pixh)-z_eye)
また、視点から見た場合において、仮想ディスプレイ100の左上の点(画素)Rの座標を(x_lud,y_lud,z_lud)と表現し、仮想ディスプレイ100の右上の点Sの座標を(x_rud,y_rud,z_rud)と表現し、仮想ディスプレイ100の左下の点Tの座標を(x_ldd,y_ldd,z_ldd)と表現する。この場合、仮想ディスプレイ100の右下の点Uの座標は(x_rud+x_ldd-x_lud,y_rud+y_ldd-y_lud,z_rud+z_ldd-z_lud)と表現することができる。このとき、仮想ディスプレイ100の平面の方程式は、下記の数3で示される。
[数3]
a_disp*x+B_disp*y+C_disp*z+D_disp=0
a_disp=(y_rud-y_lud)(z_ldd-z_lud)-(y_ldd-y_lud)(z_rud-z_lud)
B_disp=(z_rud-z_lud)(x_ldd-x_lud)-(z_ldd-z_lud)(x_rud-x_lud)
C_disp=(x_rud-x_lud)(y_ldd-y_lud)-(x_ldd-x_lud)(y_rud-y_lud)
D_disp=-(a_disp*x_lud+B_disp*y_lud+C_disp*z_lud)
上記の数2および数3から、視点と各画素140を結ぶ直線Lの各々が仮想ディスプレイ100と交差する点を算出することにより、LCD14の各画素140に対応する仮想ディスプレイ100上の各対応位置110が求められる。第1実施例では、LCD14の各画素140には、対応位置110を含む画素100aに表示される画像が表示される。
a_disp*x+B_disp*y+C_disp*z+D_disp=0
a_disp=(y_rud-y_lud)(z_ldd-z_lud)-(y_ldd-y_lud)(z_rud-z_lud)
B_disp=(z_rud-z_lud)(x_ldd-x_lud)-(z_ldd-z_lud)(x_rud-x_lud)
C_disp=(x_rud-x_lud)(y_ldd-y_lud)-(x_ldd-x_lud)(y_rud-y_lud)
D_disp=-(a_disp*x_lud+B_disp*y_lud+C_disp*z_lud)
上記の数2および数3から、視点と各画素140を結ぶ直線Lの各々が仮想ディスプレイ100と交差する点を算出することにより、LCD14の各画素140に対応する仮想ディスプレイ100上の各対応位置110が求められる。第1実施例では、LCD14の各画素140には、対応位置110を含む画素100aに表示される画像が表示される。
なお、仮想空間における視点およびLCD14の位置及び向きの算出処理および各対応位置110の算出処理は、表示位置演算部30で実行される。
次に、画像補間部32で実行されるバイキュービック法を用いた補間処理について説明する。図9は画像補間部32における補間処理を説明するための図解図である。バイキュービック法による補間処理では、求める位置(x,y)の周辺の4×4画素(16画素)を使って、求める位置(x,y)すなわち対応位置110の輝度値が3次式で補間される。
図9に示すように、説明の都合上、対応位置110を含む周辺の画素100aのそれぞれの中心点(輝度の中心)に、座標(0,0)〜(3,3)が割り当てられる。ただし、図9は視点から見た場合の仮想ディスプレイ100の一部であり、横方向にX軸が設定され、縦方向にY軸が設定される。また、図9においては、右方向がX軸のプラス方向に設定され、下方向がY軸のプラス方向に設定される。
また、図9においては、仮想ディスプレイ100の各画素100aの中心点と対応位置110との仮想ディスプレイ100上におけるx方向の距離(差分)をdxとし、y方向の距離(差分)をdyとする。
このように設定した場合、対応位置100を含む画素110aすなわち求める位置(x,y)の輝度の階調tone(x,y)は下記の数4で求められる。
また、この数4に用いられる重みweightは、下記の数5で求められる。ただし、数5で求められる重みweightは、たとえばLCD14のシャープネスの設定が変更されることなどによって変化する。また、数5における“d”は、上記の“dx”または“dy”である。
この補間処理は、LCD14の全ての画素140の対応位置110を含む画素100aについて行われる。ただし、上述した補間処理は、単色の場合を示す。このため、画素100aが複数の色で構成される場合には、色ごとに上記の補間処理が行われる。
なお、上述したように、ユーザの視点とLCD14の画素140を通る直線Lが仮想ディスプレイ100と交差しない場合には、当該画素140には、仮想ディスプレイ100の背景画像が表示される。
この第1実施例によれば、ユーザの動きに応じて、ユーザの視点およびLCD14の位置および向きを変化させることにより、ユーザの視点、LCD14および仮想ディスプレイ100の位置関係を更新し、ユーザの視点とLCD14の画素140を通る直線Lが交差する仮想ディスプレイ100上の対応位置110を含む画素110aを当該画素140に表示し、この処理を各画素140について実行するだけなので、通常のPCモニタに代えてHMD10を用いることができる。したがって、PCモニタを載置するための机上などのスペースを有効に使用することができる。
また、第1実施例によれば、大型かつ高性能で消費電力の大きいGPUをHMD10に搭載したり、そのような高性能なGPUを搭載するPCを用いたりする必要が無い。このため、HMD10を小型かつ安価で構成することができる。また、演算量が少ないので、HMD10の消費電力が低減される。
さらに、第1実施例によれば、HMD10の通信手段として無線接続手段を用いたことによって、HMD10を携行することができる。このため、信号出力機器から離れた場所であっても、HMD10およびそれを用いた表示システムを利用することが可能になる。
なお、第1実施例では、LCD14の表示面が平面である場合を例に挙げて説明したが、これに限定される必要は無く、LCD14の表示面は、曲面であっても良い。また、LCD14の画素140が格子状に配置された場合を例に挙げて説明したが、これに限定される必要は無く、LCD14の画素140がデルタ配列されても良い。これらの場合、仮想ディスプレイ100の平面の方程式と、補間処理の方法とを変えることによって、LCD14の表示面が曲面である場合または画素140がデルタ配列される場合などに上述した処理と同様の処理を行うことができる。
また、第1実施例では、ユーザの視点およびLCD14の位置および向きの変化を検出するために、動きセンサ16が、加速度センサおよび角速度センサを含むようにしたが、これに限定される必要は無い。たとえば、動きセンサ16が、加速度センサまたは角速度センサで構成され、ユーザの視点の位置の変化に応じて、または、ユーザの向きに応じて、LCD14に表示される画像の範囲が変化されてもよい。
さらに、第1実施例では、信号出力機器が外部機器である場合を例に挙げて説明したが、これに限定される必要は無い。たとえば、HMD10に内蔵されるSSDが信号出力機器として機能するようにしても良い。この場合、SSDに記憶される映像ないし画像に対応する映像信号が、SSDから同期分離部22に入力される。
なお、第1実施例では、説明の便宜上、LCD14の表示面の全体を単眼で見ている場合を例に挙げてについて説明したが、HMD10を両眼で使用することもできる。たとえば、右眼用および左目用の画像のそれぞれに同じ処理を行い、LCD14に右眼用および左眼用の画像として同じ画像を表示させても良い。また、右眼用および左眼用の画像のそれぞれに個別に処理を行い、LCD14に右眼用および左眼用の画像として個別の画像を表示させても良い。この場合、右眼用と左眼用の二種類のLCD14および制御部20が設けられる。このようにすれば、左右視差を再現できるためより自然な画像をLCD14に表示させることができる。
[第2実施例]
第2実施例のHMD10では、複数の映像信号が入力され、複数の映像信号の各々に対応する複数の仮想ディスプレイ100が仮想空間に配置されるようにした以外は第1実施例のHMD10と同じであるため、異なる内容について詳細に説明し、重複する内容については説明を省略する、または、簡単に説明することにする。
[第2実施例]
第2実施例のHMD10では、複数の映像信号が入力され、複数の映像信号の各々に対応する複数の仮想ディスプレイ100が仮想空間に配置されるようにした以外は第1実施例のHMD10と同じであるため、異なる内容について詳細に説明し、重複する内容については説明を省略する、または、簡単に説明することにする。
図10は第2実施例におけるHMD10の電気的な構成を示すブロック図である。図10に示すように、第2実施例のHMD10は、二つの制御部(第1制御部20Aおよび第2制御部20B)を含む。
第1制御部20Aおよび第2制御部20Bは、それぞれ、第1実施例で示した同期分離部22、書込み制御部24、映像メモリ26、読出し制御部28、表示位置演算部30および画像補間部32を有する。
また、第2実施例では、HMD10に、映像信号1と、映像信号2との2つの映像信号が入力される。
映像信号1は、第1制御部20Aの同期分離部22Aに入力され、第1制御部20Aの各部で処理される。この場合、第1制御部20Aの画像補間部32Aからは、映像信号1に対応する画像データAが出力される。また、映像信号2は、第2制御部20Bの同期分離部22Bに入力され、第2制御部20Bの各部で処理される。この場合、第2制御部20Bの画像補間部32Bからは、映像信号2に対応する画像データBが出力される。
同期生成部34は、第1制御部20Aの映像メモリ26Aおよび第2制御部20Bの映像メモリ26Bにおいて、或るフレームのデータの書き込みの終わりのタイミングを、そのフレームのデータの読み出しの終わりのタイミングが追い越さないように同期信号を生成する。同期生成部34は、生成した同期信号を、第1制御部20Aの読出し制御部28Aおよび第2制御部20Bの読出し制御部28Bに入力する。
図11は第2実施例の映像メモリ26におけるデータの書込みおよび読出しのタイミングを示す図である。図11に示すように、同期生成部34は、フレームのデータの読み出し周波数よりもフレームのデータの書き込み周波数が大きい場合、データの読み出しの際にフレームの間引きを行うように同期信号を生成する。つまり、フレームのデータの書き込み時間がフレームのデータの読み出し時間よりも短い場合、フレームの間引きが行われる。
また、同期生成部34は、フレームのデータの読み出し周波数よりもフレームのデータの書き込み周波数が小さい場合、データの読み出しの際に同じフレームを続けて読み出すように同期信号を生成する。つまり、フレームのデータの書き込み時間がフレームのデータの読み出し時間よりも長い場合、フレームの間引きが行われる。
なお、同期分離部22から画像補間部32までの処理内容のうち、説明していない部分については第1実施例と同じである。
図10に戻って、画像統合部40には、第1制御部20Aの画像補間部32Aから出力される画像データAおよび第2制御部20Bの画像補間部32Bから出力される画像データBが入力される。また、画像統合部40には、第1制御部20Aの表示位置演算部30Aから出力される仮想ディスプレイ100A上の各対応位置110の位置情報と、第2制御部20Bの表示位置演算部30Bから出力される仮想ディスプレイ100B上の各対応位置110の位置情報とが入力される。画像統合部40は、画像データAおよび画像データBを統合(結合)して、LCD14に出力する。
ただし、映像統合部40に、仮想ディスプレイ100Aおよび仮想ディスプレイ100B上の各対応位置110の位置情報を入力するのは、仮想ディスプレイ100Aおよび仮想ディスプレイ100Bの配置の仕方によっては、視点から見た場合に仮想ディスプレイ100Aおよび仮想ディスプレイ100B上の対応位置110を含む画素100aが重なる場合があるからである。かかる場合には、視点に近い方の画素100aの画像データがLCD14に出力される。
図12は第2実施例のLCD14の表示例を示す図である。図12に示すように、LCD14には、仮想ディスプレイ100Aおよび仮想ディスプレイ100Bが表示される。ただし、仮想ディスプレイ100Aの一部と仮想ディスプレイ100Bの一部とが重なって表示される。図12に示す例では、仮想ディスプレイ100Aは、仮想ディスプレイ100Bよりもユーザの視点に近い位置に配置されるため、重なる位置において、仮想ディスプレイ100Aに表示される画像がLCD14に表示される。
この第2実施例によれば、仮想空間に複数の仮想ディスプレイ100が配置されるので、複数のモニタを配置して作業を行っている状況を再現することができる。このため、複数のモニタを実際に配置する必要がなくなるので、作業スペースを広くとることができる。
なお、第2実施例では、2台の仮想ディスプレイ100Aおよび仮想ディスプレイ100Bが設けられる場合について説明したが、3台以上の仮想ディスプレイが設けられ、各仮想ディスプレイに異なる映像信号が出力されるようにしてもよい。かかる場合には、仮想ディスプレイの数に応じて制御部20が設けられ、映像統合部40は、位置情報に基づいて、仮想ディスプレイが重なる部分についてLCD14に出力する画像データを選択する。
[第3実施例]
第3実施例のHMD10は、第2制御部20Bに代えて、カメラ50を備え、第1制御部20Aから出力される画像データAとカメラ50で撮像された画像に対応する画像データを結合してLCD14に表示させるようにした以外は、第2実施例と同じであるため、異なる内容について説明し、重複した説明については省略する、または簡単に説明することにする。
[第3実施例]
第3実施例のHMD10は、第2制御部20Bに代えて、カメラ50を備え、第1制御部20Aから出力される画像データAとカメラ50で撮像された画像に対応する画像データを結合してLCD14に表示させるようにした以外は、第2実施例と同じであるため、異なる内容について説明し、重複した説明については省略する、または簡単に説明することにする。
図13は第3実施例のHMD10を装着したユーザを上から見た平面図である。図13に示すように、第3実施例のHMD10は、カメラ50を備える。カメラ50は、筐体12の前面に設けられ、HMD10の前方を撮像する。このカメラ50は、撮像素子(イメージセンサ)および位置の調節が可能なフォーカスレンズを有し、撮像素子から取り込んだ可視光としての撮像光を、電気信号へと変換することにより撮像を行う。この撮像素子の例としては、CCD(Charge Coupled Device)イメージセンサ、またはCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の固体撮像素子が挙げられる。
図14は第3実施例におけるHMD10の電気的な構成を示すブロック図である。図14に示すように、第3実施例の画像統合部40には、第2実施例で説明した第2制御部20Bに代えて、カメラ50が接続される。このため、画像統合部40には、第2制御部20Bから出力される画像データBに代えて、カメラ50で撮像した画像(静止画像または動画像)に対応する画像データが入力される。
ただし、第3実施例では、第1制御部20Aから出力される画像データAに対応する仮想ディスプレイ100Aが、カメラ50で撮像した画像の手前(前面)側に表示されるようにしてある。このため、カメラ50で撮像した画像は、仮想ディスプレイ100Aよりも奥(背面)側に表示される。つまり、カメラ50で撮像した映像は、背景画像として表示される。
また、カメラ50で撮像した画像の解像度は、LCD14の解像度と同じ解像度に設定されている。このため、カメラ50で撮像した画像は、補間処理を実行せずに、LCD14の全表示領域に表示(全画面表示)させることができる。
この第3実施例によれば、第2実施例の効果に加えて、カメラ50で撮像した画像を背景画像としてLCD14に表示するので、HMD10を装着した状態でも周囲の状況を視認することができる。したがって、ユーザが移動する場合にも安全である。
また、第3実施例によれば、カメラ50で撮像した画像を背景画像としてLCD14に表示するので、たとえば、仮想ディスプレイ100Aに表示された資料とともに、ユーザの周辺に置かれた他の資料などを参照することができる。
[第4実施例]
第4実施例のHMD10では、複数の映像信号が入力され、仮想ディスプレイ100に表示させる一部の映像信号を選択するようにした以外は第2実施例のHMD10と同じであるため、異なる内容について詳細に説明し、重複する内容については説明を省略する、または、簡単に説明することにする。
[第4実施例]
第4実施例のHMD10では、複数の映像信号が入力され、仮想ディスプレイ100に表示させる一部の映像信号を選択するようにした以外は第2実施例のHMD10と同じであるため、異なる内容について詳細に説明し、重複する内容については説明を省略する、または、簡単に説明することにする。
図15は第4実施例におけるHMD10の電気的な構成を示すブロック図である。図15に示すように、第4実施例のHMD10は、スイッチ60と、映像選択部62とを備える。
スイッチ60は、映像信号が入力される複数の入力ポートと、映像信号を出力する複数の出力ポートとを有する。たとえば、スイッチ60は、5つの入力ポートと、2つの出力ポートとを有する。
スイッチ60の5つの入力ポートには、それぞれ、異なる映像信号(映像信号1〜映像信号5)が入力される。また、スイッチ60は、映像選択部62から出力される映像選択信号に応じて、入力ポートに入力された5つの映像信号1〜5のうち、出力ポートから出力する2つの映像信号を選択する。
また、スイッチ60の一方の出力ポートには、第1制御部20Aの同期分離部22Aが接続される。スイッチ60の他方の出力ポートには、第2制御部20Bの同期分離部22Bが接続される。このため、スイッチ60の一方の出力ポートからは、第1制御部20Aの同期分離部22Aに映像信号が出力される。スイッチ60の他方の出力ポートからは、第2制御部20Bの同期分離部22Bに映像信号が出力される。
映像選択部62には、動きセンサ16が接続され、動きセンサ16の出力が入力される。映像選択部62は、動きセンサ16の出力に基づいて、ユーザの視点およびLCD14の位置および向きを算出し、スイッチ60に入力された複数の映像信号のうち、いずれの映像信号を出力するかを選択するための映像選択信号をスイッチ60に出力する。
図示は省略するが、第4実施例では、5つの映像信号1〜5(入力ポート)に対応して5つの仮想ディスプレイ100A、100B、100C、100D、100Eが仮想空間に配置される。たとえば、仮想ディスプレイ100A〜100Eは横方向に一列に並べて配置される。また、映像信号1は仮想ディスプレイ100Aに表示され、映像信号2は仮想ディスプレイ100Bに表示され、映像信号3は仮想ディスプレイ100Cに表示され、映像信号4は仮想ディスプレイ100Dに表示され、そして、映像信号5は仮想ディスプレイ100Eに表示される。
映像選択部62は、動きセンサ16の出力に基づいて、ユーザの視点およびLCD14の位置および向きを検出(算出)し、ユーザの視界に入る2つの仮想ディスプレイを決定する。そして、決定した仮想ディスプレイに表示される映像信号を選択するための映像選択信号をスイッチ60に出力する。
したがって、ユーザが移動したり、頭部の向きを変化したりすると、これに応じて、映像選択部62は、映像選択信号をスイッチ60に出力する。したがって、ユーザの視点およびLCD14の位置および向きに応じた映像信号が選択され、選択された映像信号が仮想ディスプレイに表示される様子がLCD14に表示される。
この第4実施例によれば、第2実施例の効果に加えて、複数の映像信号のうち、ユーザの視点およびLCD14の位置および向きに応じた一部の映像信号を選択するので、ユーザが所望の映像を見ることができる。
また、第4実施例によれば、選択した一部の映像信号について表示すれば良いため、すべての映像信号を仮想ディスプレイ100に表示するような無駄を省くことができる。
なお、第4実施例では、仮想ディスプレイ100A〜100Eを横一列に配置するようにしたが、これに限定されるべきでない。たとえば、仮想ディスプレイ100A〜100Eを2段に並べてもよい。この場合、仮想ディスプレイ100Aおよび100Bを上段に配置し、仮想ディスプレイ100C〜100Eを下段に配置し、下段の仮想ディスプレイ100C〜100Eのうち、2つの仮想ディスプレイに表示する映像信号を選択するようにしてもよい。また、たとえば、6つの映像信号を入力可能な構成として、6つの仮想ディスプレイを縦(上下)方向に2列に並べるようにしてもよい。かかる場合には、上段の2つの仮想ディスプレイ、中段の2つの仮想ディスプレイ、下段の2つの仮想ディスプレイに表示する映像信号を選択するようにしてもよい。
また、第4実施例に示した態様は、第3実施例にも組み合わせて採用することが可能である。
さらに、上述の各実施例では、映像メモリ26から読み出す画像データに補間処理を施すようにしたが、表示品質を考慮しない場合には、補間処理は施されなくてもよい。
さらにまた、上述の各実施例で挙げた具体的な数値等は一例であり、実際の製品に応じて適宜変更することが可能である。
10 …HMD
12 …筐体
14 …ディスプレイ
16 …動きセンサ
30 …表示位置演算部
32 …画像補間部
12 …筐体
14 …ディスプレイ
16 …動きセンサ
30 …表示位置演算部
32 …画像補間部
Claims (9)
- ユーザの頭部に装着されるヘッドマウントディスプレイであって、
信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像を表示する表示部、
基準位置および基準方向に対する前記ヘッドマウントディスプレイの位置および方向を検出するための動きセンサ、および
前記動きセンサで検出された前記ヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および前記表示部の各第1画素を通る直線が前記仮想ディスプレイと交差する各交差位置を算出する表示位置演算部を備え、
前記表示部は、前記表示位置演算部によって算出された前記各交差位置を含む各第2画素に表示された画像の各々を、対応する前記第1画素の各々に表示する、ヘッドマウントディスプレイ。 - 前記表示位置演算部によって算出された各交差位置に対応する各第2画素を周囲の第2画素を用いて補間する画像補間部をさらに備える、請求項1記載のヘッドマウントディスプレイ。
- 前記信号出力機器から複数の前記映像信号が入力され、
前記仮想空間には、前記複数の映像信号に対応する複数の映像をそれぞれ表示する複数の前記仮想ディスプレイが配置される、請求項1記載のヘッドマウントディスプレイ。 - 前記動きセンサの出力に基づいて、前記複数の前記映像信号に対応する前記複数の映像のうち、前記表示部に表示させる一部の前記映像を選択する映像選択部をさらに備える、請求項3記載のヘッドマウントディスプレイ。
- 前記表示部は、前記視点から見た場合に、前記複数の仮想ディスプレイが重なるとき、前記視点に近い前記仮想ディスプレイの画像を表示する、請求項3または4記載のヘッドマウントディスプレイ。
- 前記信号出力機器は、前記ヘッドマウントディスプレイの前方を撮像するカメラを含み、
前記複数の映像信号のうちの一つが、前記カメラによって撮像された画像に対応する画像信号である、請求項3記載のヘッドマウントディスプレイ。 - 前記表示部は、前記カメラによって撮影された画像を前記仮想ディスプレイの画像の背景画像として表示する、請求項6記載のヘッドマウントディスプレイ。
- ユーザの頭部に装着されるヘッドマウントディスプレイの制御プログラムであって、
前記ヘッドマウントディスプレイのコンピュータを、
信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像を表示する表示部、
基準位置および基準方向に対する前記ヘッドマウントディスプレイの位置および方向を検出するための動きセンサ、および
前記動きセンサで検出された前記ヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および前記表示部の各第1画素を通る直線が前記仮想ディスプレイと交差する各交差位置を算出する表示位置演算部として機能させ、
前記表示部は、前記表示位置演算部によって算出された前記各交差位置を含む各第2画素に表示された画像の各々を、対応する前記第1画素の各々に表示する、ヘッドマウントディスプレイの制御プログラム。 - 表示部を備え、ユーザの頭部に装着されるヘッドマウントディスプレイの制御方法であって、
前記ヘッドマウントディスプレイのコンピュータは、
(a)信号出力機器から入力された映像信号に対応する映像が表示された仮想ディスプレイを含む画像を表示部に表示させ、
(b)基準位置および基準方向に対する前記ヘッドマウントディスプレイの位置および方向を検出し、そして
(c)前記ステップ(b)で検出された前記ヘッドマウントディスプレイの位置および方向に応じて、仮想空間における視点および前記表示部の各第1画素を通る直線が前記仮想ディスプレイと交差する各交差位置を算出し、
前記ステップ(a)は、前記ステップ(c)によって算出された前記各交差位置を含む各第2画素に表示された画像の各々を、対応する前記第1画素の各々に表示させる、ヘッドマウントディスプレイの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016172400A JP2018040822A (ja) | 2016-09-05 | 2016-09-05 | ヘッドマウントディスプレイ、制御プログラムおよび制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016172400A JP2018040822A (ja) | 2016-09-05 | 2016-09-05 | ヘッドマウントディスプレイ、制御プログラムおよび制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018040822A true JP2018040822A (ja) | 2018-03-15 |
Family
ID=61626009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016172400A Pending JP2018040822A (ja) | 2016-09-05 | 2016-09-05 | ヘッドマウントディスプレイ、制御プログラムおよび制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018040822A (ja) |
-
2016
- 2016-09-05 JP JP2016172400A patent/JP2018040822A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4809142B2 (ja) | 立体映像表示装置、及び3d映像−立体映像変換器 | |
JP2017097122A (ja) | 情報処理装置および画像生成方法 | |
JP2014174401A (ja) | 画像表示システム及び頭部装着型表示装置 | |
WO2014199564A1 (en) | Information processing device, imaging device, information processing method, and program | |
US11960086B2 (en) | Image generation device, head-mounted display, and image generation method | |
JP6576536B2 (ja) | 情報処理装置 | |
US20220113543A1 (en) | Head-mounted display and image display method | |
JP2009516205A (ja) | オートステレオスコープ表示装置上で少なくとも1つの画像領域をモノスコープ方式で表現するための方法および機構ならびに該機構を有する情報再現装置 | |
US9495795B2 (en) | Image recording device, three-dimensional image reproducing device, image recording method, and three-dimensional image reproducing method | |
JP6708444B2 (ja) | 画像処理装置および画像処理方法 | |
US20220113794A1 (en) | Display device and image display method | |
US10679589B2 (en) | Image processing system, image processing apparatus, and program for generating anamorphic image data | |
US11973926B2 (en) | Multiview autostereoscopic display using lenticular-based steerable backlighting | |
US20180247392A1 (en) | Information Processing System, Information Processing Apparatus, Output Apparatus, Program, and Recording Medium | |
WO2021079636A1 (ja) | 表示制御装置、表示制御方法及び記録媒体 | |
US10930185B2 (en) | Information processing system, information processing apparatus, output apparatus, program, and recording medium | |
US20140362197A1 (en) | Image processing device, image processing method, and stereoscopic image display device | |
JP2018040822A (ja) | ヘッドマウントディスプレイ、制御プログラムおよび制御方法 | |
JP2000132329A (ja) | 面認識装置、面認識方法及び仮想画像立体合成装置 | |
JP7008521B2 (ja) | 表示装置及び表示システム | |
JP2950160B2 (ja) | 立体映像表示装置 | |
CN112929641B (zh) | 3d图像显示方法、3d显示设备 | |
JP5901376B2 (ja) | 情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法 | |
US10176615B2 (en) | Image processing device, image processing method, and image processing program | |
WO2021110037A1 (zh) | 实现3d图像显示的方法、3d显示设备 |