A.実施形態:
A−1.HMDの構成:
図1は、本発明の一実施形態におけるHMD(頭部装着型表示装置、Head Mounted Display)100の外観構成を示す図である。HMD100は、使用者の頭部に装着された状態で使用者に虚像を視認させる画像表示部20(表示部)と、画像表示部20を制御する制御装置10(制御部)と、を備える表示装置である。制御装置10は、使用者の操作を取得するための各種の入力デバイスを備え、使用者がHMD100を操作するためのコントローラーとして機能する。
画像表示部20は、使用者の頭部に装着される装着体であり、本実施形態では眼鏡形状を有する。画像表示部20は、右保持部21と、左保持部23と、前部フレーム27とを有する本体に、右表示ユニット22と、左表示ユニット24と、右導光板26と、左導光板28とを備える。
右保持部21および左保持部23は、それぞれ、前部フレーム27の両端部から後方に延び、眼鏡のテンプル(つる)のように、使用者の頭部に画像表示部20を保持する。ここで、前部フレーム27の両端部のうち、画像表示部20の装着状態において使用者の右側に位置する端部を端部ERとし、使用者の左側に位置する端部を端部ELとする。右保持部21は、前部フレーム27の端部ERから、画像表示部20の装着状態における使用者の右側頭部に対応する位置まで延伸して設けられている。左保持部23は、前部フレーム27の端部ELから、画像表示部20の装着状態における使用者の左側頭部に対応する位置まで延伸して設けられている。
右導光板26および左導光板28は、前部フレーム27に設けられている。右導光板26は、画像表示部20の装着状態における使用者の右眼の眼前に位置し、右眼に画像を視認させる。左導光板28は、画像表示部20の装着状態における使用者の左眼の眼前に位置し、左眼に画像を視認させる。
前部フレーム27は、右導光板26の一端と左導光板28の一端とを互いに連結した形状を有する。この連結位置は、画像表示部20の装着状態における使用者の眉間の位置に対応する。前部フレーム27には、右導光板26と左導光板28との連結位置において、画像表示部20の装着状態において使用者の鼻に当接する鼻当て部が設けられていてもよい。この場合、鼻当て部と右保持部21と左保持部23とによって、画像表示部20を使用者の頭部に保持できる。また、右保持部21および左保持部23に対して、画像表示部20の装着状態において使用者の後頭部に接するベルトを連結してもよい。この場合、ベルトによって画像表示部20を使用者の頭部に強固に保持できる。
右表示ユニット22は、右導光板26による画像の表示を行う。右表示ユニット22は、右保持部21に設けられ、画像表示部20の装着状態における使用者の右側頭部の近傍に位置する。左表示ユニット24は、左導光板28による画像の表示を行う。左表示ユニット24は、左保持部23に設けられ、画像表示部20の装着状態における使用者の左側頭部の近傍に位置する。なお、右表示ユニット22および左表示ユニット24を総称して「表示駆動部」とも呼ぶ。
本実施形態の右導光板26および左導光板28は、光透過性の樹脂等によって形成される光学部(例えばプリズム)であり、右表示ユニット22および左表示ユニット24が出力する画像光を使用者の眼に導く。なお、右導光板26および左導光板28の表面には、調光板が設けられてもよい。調光板は、光の波長域により透過率が異なる薄板状の光学素子であり、いわゆる波長フィルターとして機能する。調光板は、例えば、前部フレーム27の表面(使用者の眼と対向する面とは反対側の面)を覆うように配置される。調光板の光学特性を適宜選択することにより、可視光、赤外光、および紫外光等の任意の波長域の光の透過率を調整することができ、外部から右導光板26および左導光板28に入射し、右導光板26および左導光板28を透過する外光の光量を調整できる。
画像表示部20は、右表示ユニット22および左表示ユニット24がそれぞれ生成する画像光を、右導光板26および左導光板28に導き、この画像光によって虚像を使用者に視認させる(これを「画像を表示する」とも呼ぶ)。使用者の前方から右導光板26および左導光板28を透過して外光が使用者の眼に入射する場合、使用者の眼には、虚像を構成する画像光と、外光とが入射する。このため、使用者における虚像の視認性は、外光の強さに影響を受ける。
このため、例えば前部フレーム27に調光板を装着し、調光板の光学特性を適宜選択あるいは調整することによって、虚像の視認のしやすさを調整することができる。典型的な例では、HMD100を装着した使用者が少なくとも外の景色を視認できる程度の光透過性を有する調光板を選択することができる。調光板を用いると、右導光板26および左導光板28を保護し、右導光板26および左導光板28の損傷や汚れの付着等を抑制する効果が期待できる。調光板は、前部フレーム27、あるいは、右導光板26および左導光板28のそれぞれに対して着脱可能としてもよい。また、複数種類の調光板を交換して着脱可能としてもよく、調光板を省略してもよい。
カメラ61は、画像表示部20の前部フレーム27に配置されている。カメラ61は、前部フレーム27の前面において、右導光板26および左導光板28を透過する外光を遮らない位置に設けられる。図1の例では、カメラ61は、前部フレーム27の端部ER側に配置されている。カメラ61は、前部フレーム27の端部EL側に配置されていてもよく、右導光板26と左導光板28との連結部に配置されていてもよい。
カメラ61は、CCDやCMOS等の撮像素子、および、撮像レンズ等を備えるデジタルカメラである。本実施形態のカメラ61は単眼カメラであるが、ステレオカメラを採用してもよい。カメラ61は、HMD100の表側方向、換言すれば、画像表示部20の装着状態において使用者が視認する視界方向の、少なくとも一部の外景(実空間)を撮像する。換言すれば、カメラ61は、使用者の視界と重なる範囲または方向を撮像し、使用者が視認する方向を撮像する。カメラ61の画角の広さは適宜設定できる。本実施形態では、カメラ61の画角の広さは、使用者が右導光板26および左導光板28を透過して視認可能な使用者の視界の全体を撮像するように設定される。カメラ61は、制御部150(図5)の制御に従って撮像を実行し、得られた撮像データーを制御部150へ出力する。なお、カメラ61は、制御部150と協働することにより「取得部」として機能する。
内側カメラ62は、カメラ61と同様に、CCDやCMOS等の撮像素子、および、撮像レンズ等を備えるデジタルカメラである。内側カメラ62は、HMD100の内側方向、換言すれば、画像表示部20の装着状態における使用者と対向する方向を撮像する。本実施形態の内側カメラ62は、使用者の右眼を撮像するための内側カメラと、左眼を撮像するための内側カメラと、を含んでいる。内側カメラ62の画角の広さは、カメラ61と同様に適宜設定できる。ただし、内側カメラ62の画角の広さは、使用者の右眼または左眼の全体を撮像可能な範囲に設定されることが好ましい。内側カメラ62は、カメラ61と同様に、制御部150(図5)の制御に従って撮像を実行し、得られた撮像データーを制御部150へ出力する。なお、内側カメラ62は、制御部150と協働することにより「視線検出部」として機能する。
HMD100は、予め設定された測定方向に位置する測定対象物までの距離を検出する測距センサーを備えていてもよい。測距センサーは、例えば、前部フレーム27の右導光板26と左導光板28との連結部分に配置することができる。測距センサーの測定方向は、MD100の表側方向(カメラ61の撮像方向と重複する方向)とすることができる。測距センサーは、例えば、LEDやレーザーダイオード等の発光部と、光源が発する光が測定対象物に反射する反射光を受光する受光部と、により構成できる。この場合、三角測距処理や、時間差に基づく測距処理により距離を求める。測距センサーは、例えば、超音波を発する発信部と、測定対象物で反射する超音波を受信する受信部と、により構成してもよい。この場合、時間差に基づく測距処理により距離を求める。測距センサーはカメラ61と同様に、制御部150により制御され、検出結果を制御部150へ出力する。
図2は、画像表示部20が備える光学系の構成を示す要部平面図である。説明の便宜上、図2には使用者の右眼REおよび左眼LEを図示する。図2に示すように、右表示ユニット22と左表示ユニット24とは、左右対称に構成されている。
右眼REに虚像を視認させる構成として、右表示ユニット22は、OLED(Organic Light Emitting Diode)ユニット221と、右光学系251とを備える。OLEDユニット221は、画像光を発する。右光学系251は、レンズ群等を備え、OLEDユニット221が発する画像光Lを右導光板26へと導く。
OLEDユニット221は、OLEDパネル223と、OLEDパネル223を駆動するOLED駆動回路225とを有する。OLEDパネル223は、有機エレクトロルミネッセンスにより発光し、R(赤)、G(緑)、B(青)の色光をそれぞれ発する発光素子により構成される自発光型の表示パネルである。OLEDパネル223は、R、G、Bの素子を1個ずつ含む単位を1画素とした複数の画素が、マトリクス状に配置されている。
OLED駆動回路225は、制御部150(図5)の制御に従って、OLEDパネル223が備える発光素子の選択および通電を実行し、発光素子を発光させる。OLED駆動回路225は、OLEDパネル223の裏面、すなわち発光面の裏側に、ボンディング等により固定されている。OLED駆動回路225は、例えばOLEDパネル223を駆動する半導体デバイスで構成され、OLEDパネル223の裏面に固定される基板に実装されてもよい。この基板には、後述する温度センサー217が実装される。なお、OLEDパネル223は、白色に発光する発光素子をマトリクス状に配置し、R、G、Bの各色に対応するカラーフィルターを重ねて配置する構成を採用してもよい。また、R、G、Bの色光をそれぞれ放射する発光素子に加えて、W(白)の光を放射する発光素子を備えるWRGB構成のOLEDパネル223が採用されてもよい。
右光学系251は、OLEDパネル223から射出された画像光Lを並行状態の光束にするコリメートレンズを有する。コリメートレンズにより並行状態の光束にされた画像光Lは、右導光板26に入射する。右導光板26の内部において光を導く光路には、画像光Lを反射する複数の反射面が形成される。画像光Lは、右導光板26の内部で複数回の反射を経て右眼RE側に導かれる。右導光板26には、右眼REの眼前に位置するハーフミラー261(反射面)が形成される。画像光Lは、ハーフミラー261で反射後、右導光板26から右眼REへと射出され、この画像光Lが右眼REの網膜で像を結ぶことで、使用者に虚像を視認させる。
左眼LEに虚像を視認させる構成として、左表示ユニット24は、OLEDユニット241と、左光学系252とを備える。OLEDユニット241は画像光を発する。左光学系252は、レンズ群等を備え、OLEDユニット241が発する画像光Lを左導光板28へと導く。OLEDユニット241は、OLEDパネル243と、OLEDパネル243を駆動するOLED駆動回路245を有する。各部の詳細は、OLEDユニット221、OLEDパネル223、OLED駆動回路225と同じである。OLEDパネル243の裏面に固定される基板には、温度センサー239が実装される。また、左光学系252の詳細は右光学系251と同じである。
以上説明した構成によれば、HMD100は、シースルー型の表示装置として機能することができる。すなわち使用者の右眼REには、ハーフミラー261で反射した画像光Lと、右導光板26を透過した外光OLとが入射する。使用者の左眼LEには、ハーフミラー281で反射した画像光Lと、左導光板28を透過した外光OLとが入射する。このように、HMD100は、内部で処理した画像の画像光Lと外光OLとを重ねて使用者の眼に入射させる。この結果、使用者にとっては、右導光板26および左導光板28を透かして外景(実世界)が見えると共に、この外景に重なるようにして画像光Lによる虚像が視認される。
なお、ハーフミラー261およびハーフミラー281は、右表示ユニット22および左表示ユニット24がそれぞれ出力する画像光を反射して画像を取り出す「画像取り出し部」として機能する。また、右光学系251および右導光板26を総称して「右導光部」とも呼び、左光学系252および左導光板28を総称して「左導光部」とも呼ぶ。右導光部および左導光部の構成は、上述した例に限定されず、画像光を用いて使用者の眼前に虚像を形成する限りにおいて任意の方式を用いることができる。例えば、右導光部および左導光部には、回折格子を用いてもよいし、半透過反射膜を用いてもよい。
図1において、制御装置10と画像表示部20とは、接続ケーブル40によって接続される。接続ケーブル40は、制御装置10の下部に設けられるコネクターに着脱可能に接続され、左保持部23の先端から、画像表示部20内部の各種回路に接続する。接続ケーブル40には、デジタルデータを伝送するメタルケーブルまたは光ファイバーケーブルを有する。接続ケーブル40にはさらに、アナログデータを伝送するメタルケーブルを含んでもよい。接続ケーブル40の途中には、コネクター46が設けられている。
コネクター46は、ステレオミニプラグを接続するジャックであり、コネクター46と制御装置10とは、例えばアナログ音声信号を伝送するラインで接続される。コネクター46には、ステレオヘッドホンを構成する右イヤホン32および左イヤホン34と、マイク63を有するヘッドセット30とが接続されている。マイク63は、例えば図1に示すように、マイク63の集音部が使用者の視線方向を向くように配置されている。マイク63は、音声を集音し、音声信号を音声インターフェイス182(図5)に出力する。マイク63は、モノラルマイクであってもステレオマイクであってもよく、指向性を有するマイクであっても無指向性のマイクであってもよい。
制御装置10は、使用者に対する入出力インターフェイスとして、ボタン11と、LEDインジケーター12と、十字キー13と、トラックパッド14と、上下キー15と、切替スイッチ16と、電源スイッチ18とを備える。
ボタン11は、制御装置10が実行するOS(オペレーティングシステム)143(図6)の操作等を行うためのメニューキー、ホームキー、戻るキー等を含む。本実施形態のボタン11は、これらのキーやスイッチのうちの押圧操作により変位するタイプのボタンである。LEDインジケーター12は、HMD100の動作状態に対応して点灯あるいは消灯する。十字キー13は、上下左右および中央部分にそれぞれ対応するキーへのタッチまたは押圧操作を検出して、検出内容に応じた信号を出力する。本実施形態の十字キー13は、中央に円形形状の決定ボタンが配置され、その上下左右方向に、上ボタン、下ボタン、左ボタン、右ボタンがそれぞれ配置されている。各ボタンには種々の態様を採用でき、例えば静電容量式のボタンであってもよく、機械接点式のボタンであってもよい。
トラックパッド14は、接触操作を検出する操作面を有し、操作面への接触操作を検出して、検出内容に応じた信号を出力する。接触操作の検出方法には、静電式、圧力検出式、光学式等の種々の方法を採用できる。上下キー15は、ヘッドセット30のイヤホンから出力する音量を増減させるための指示操作や、画像表示部20における輝度を増減させるための指示操作を検出する。切替スイッチ16は、上下キー15の指示対象(音量、輝度)の切り替え操作を検出する。電源スイッチ18は、HMD100の電源のオンオフ(ON、OFF)の切り替え操作を検出する。電源スイッチ18としては、例えばスライドスイッチを採用できる。
図3は、使用者から見た画像表示部20の要部構成を示す図である。図3では、接続ケーブル40、右イヤホン32、左イヤホン34の図示を省略している。図3の状態では、右導光板26および左導光板28の裏側が視認できると共に、右眼REに画像光を照射するためのハーフミラー261、および、左眼LEに画像光を照射するためのハーフミラー281が略四角形の領域として視認できる。使用者は、これらハーフミラー261、281を含む左右の導光板26、28の全体を透過して外景を視認すると共に、ハーフミラー261、281の位置に矩形の表示画像を視認する。
図4は、カメラ61の画角を説明するための図である。図4では、カメラ61と、使用者の右眼REおよび左眼LEとを平面視で模式的に示すと共に、カメラ61の画角(撮像範囲)をCで示す。なお、カメラ61の画角Cは図示のように水平方向に拡がっているほか、一般的なデジタルカメラと同様に鉛直方向にも拡がっている。
上述のようにカメラ61は、画像表示部20において右側の端部に配置され、使用者の視線の方向(すなわち使用者の前方)を撮像する。このためカメラ61の光軸は、右眼REおよび左眼LEの視線方向を含む方向とされる。使用者がHMD100を装着した状態で視認できる外景は、無限遠とは限らない。例えば、使用者が両眼で対象物OBを注視すると、使用者の視線は、図中の符号RD、LDに示すように、対象物OBに向けられる。この場合、使用者から対象物OBまでの距離は、30cm〜10m程度であることが多く、1m〜4mであることがより多い。そこで、HMD100について、通常使用時における使用者から対象物OBまでの距離の上限および下限の目安を定めてもよい。この目安は、予め求められHMD100にプリセットされていてもよいし、使用者が設定してもよい。カメラ61の光軸および画角は、このような通常使用時における対象物OBまでの距離が、設定された上限および下限の目安に相当する場合において対象物OBが画角に含まれるように設定されることが好ましい。
なお、一般的に、人間の視野角は水平方向におよそ200度、垂直方向におよそ125度とされる。そのうち情報受容能力に優れる有効視野は水平方向に30度、垂直方向に20度程度である。人間が注視する注視点が迅速に安定して見える安定注視野は、水平方向に60〜90度、垂直方向に45〜70度程度とされている。この場合、注視点が対象物OB(図4)であるとき、視線RD、LDを中心として水平方向に30度、垂直方向に20度程度が有効視野である。また、水平方向に60〜90度、垂直方向に45〜70度程度が安定注視野である。使用者が画像表示部20を透過して右導光板26および左導光板28を透過して視認する実際の視野を、実視野(FOV:Field Of View)と呼ぶ。実視野は、視野角および安定注視野より狭いが、有効視野より広い。
本実施形態のカメラ61の画角Cは、使用者の視野より広い範囲を撮像可能に設定される。カメラ61の画角Cは、少なくとも使用者の有効視野より広い範囲を撮像可能に設定されることが好ましく、実視野よりも広い範囲を撮像可能に設定されることがより好ましい。カメラ61の画角Cは、使用者の安定注視野より広い範囲を撮像可能に設定されることがさらに好ましく、使用者の両眼の視野角よりも広い範囲を撮像可能に設定されることが最も好ましい。このため、カメラ61には、撮像レンズとしていわゆる広角レンズを備え、広い画角を撮像できる構成としてもよい。広角レンズには、超広角レンズ、準広角レンズと呼ばれるレンズを含んでもよい。また、カメラ61には、単焦点レンズを含んでもよく、ズームレンズを含んでもよく、複数のレンズからなるレンズ群を含んでもよい。
図5は、HMD100の構成を機能的に示すブロック図である。制御装置10は、プログラムを実行してHMD100を制御するメインプロセッサー140と、記憶部と、入出力部と、センサー類と、インターフェイスと、電源部130とを備える。メインプロセッサー140には、これらの記憶部、入出力部、センサー類、インターフェイス、電源部130がそれぞれ接続されている。メインプロセッサー140は、制御装置10が内蔵しているコントローラー基板120に実装されている。
記憶部には、メモリー118と、不揮発性記憶部121とが含まれている。メモリー118は、メインプロセッサー140によって実行されるコンピュータープログラム、および、処理されるデーターを一時的に記憶するワークエリアを構成する。不揮発性記憶部121は、フラッシュメモリーやeMMC(embedded Multi Media Card)で構成される。不揮発性記憶部121は、メインプロセッサー140が実行するコンピュータープログラムや、メインプロセッサー140によって処理される各種のデーターを記憶する。本実施形態において、これらの記憶部はコントローラー基板120に実装されている。
入出力部には、トラックパッド14と、操作部110とが含まれている。操作部110には、上述したボタン11と、LEDインジケーター12と、十字キー13と、トラックパッド14と、上下キー15と、切替スイッチ16と、電源スイッチ18とが含まれる。メインプロセッサー140は、これら各入出力部を制御すると共に、各入出力部から出力される信号を取得する。
センサー類には、6軸センサー111と、磁気センサー113と、GPS(Global Positioning System)115とが含まれている。6軸センサー111は、3軸加速度センサーと3軸ジャイロ(角速度)センサーとを備えるモーションセンサー(慣性センサー)である。6軸センサー111は、これらセンサーがモジュール化されたIMU(Inertial Measurement Unit)を採用してもよい。磁気センサー113は、例えば、3軸の地磁気センサーである。GPS115は、図示しないGPSアンテナを備え、GPS衛星から送信される無線信号を受信して、制御装置10の現在位置の座標を検出する。これらセンサー類(6軸センサー111、磁気センサー113、GPS115)は、検出値を予め指定されたサンプリング周波数に従って、メインプロセッサー140へと出力する。各センサーが検出値を出力するタイミングは、メインプロセッサー140からの指示に応じてもよい。
インターフェイスには、通信部117と、音声コーデック180と、外部コネクター184と、外部メモリーインターフェイス186と、USB(Universal Serial Bus)コネクター188と、センサーハブ192と、FPGA194と、インターフェイス196とが含まれている。これらは、外部とのインターフェイスとして機能する。通信部117は、HMD100と外部機器との間における無線通信を実行する。通信部117は、図示しないアンテナ、RF回路、ベースバンド回路、通信制御回路等を備えて構成され、あるいはこれらが統合されたデバイスとして構成されている。通信部117は、例えば、Bluetooth(登録商標)、Wi−Fiを含む無線LAN等の規格に準拠した無線通信を行う。
音声コーデック180は、音声インターフェイス182に接続され、音声インターフェイス182を介して入出力される音声信号のエンコード/デコードを行う。また、音声コーデック180は、内蔵されているヘッドセット30を介して入出力される音声を加工処理する機能を備えていてもよい。さらに、音声コーデック180は、内蔵されているヘッドセット30を介して入出力される音声信号について、アナログ音声信号からデジタル音声データーへの変換を行うA/Dコンバーター、および、その逆の変換を行うD/Aコンバーターを備えてもよい。A/Dコンバーターは、マイク63を介して入力されるアナログ音声信号を、デジタル音声データーに変換してメインプロセッサー140へ出力する。D/Aコンバーターは、メインプロセッサー140から出力されるデジタル音声データーをアナログ音声信号に変換して、右イヤホン32および左イヤホン34へと出力する。音声インターフェイス182は、ヘッドセット30との間で、音声信号を入出力するインターフェイスである。
外部コネクター184は、メインプロセッサー140に対して、メインプロセッサー140と通信する外部装置(例えば、パーソナルコンピューター、スマートフォン、ゲーム機器等)を接続するためのコネクターである。外部コネクター184に接続された外部装置は、コンテンツの供給元となり得るほか、メインプロセッサー140が実行するコンピュータープログラムのデバッグや、HMD100の動作ログの収集に使用できる。外部コネクター184は種々の態様を採用できる。外部コネクター184としては、例えば、USBインターフェイス、マイクロUSBインターフェイス、メモリーカード用インターフェイス等の有線接続に対応したインターフェイスや、無線LANインターフェイス、Bluetoothインターフェイス等の無線接続に対応したインターフェイスを採用できる。
外部メモリーインターフェイス186は、可搬型のメモリーデバイスを接続可能なインターフェイスである。外部メモリーインターフェイス186は、例えば、カード型記録媒体を装着してデーターの読み書きを行うメモリーカードスロットと、インターフェイス回路とを含む。カード型記録媒体のサイズ、形状、規格等は適宜選択できる。USBコネクター188は、USB規格に準拠したメモリーデバイス、スマートフォン、パーソナルコンピューター等を接続可能なインターフェイスである。USBコネクター188は、例えば、USB規格に準拠したコネクターと、インターフェイス回路とを含む。USBコネクター188のサイズ、形状、USB規格のバージョン等は適宜選択できる。
また、HMD100は、バイブレーター19を備える。バイブレーター19は、図示しないモーターと、偏芯した回転子等を備え、メインプロセッサー140の制御に従って振動を発声する。HMD100は、例えば、操作部110に対する操作を検出した場合や、HMD100の電源がオンオフされた場合等に所定の振動パターンでバイブレーター19により振動を発生させる。
センサーハブ192およびFPGA194は、インターフェイス(I/F)196を介して画像表示部20に接続されている。センサーハブ192は、画像表示部20が備える各種センサーの検出値を取得して、メインプロセッサー140に出力する。FPGA194は、メインプロセッサー140と画像表示部20の各部との間で送受信されるデーターの処理およびインターフェイス196を介した伝送を実行する。インターフェイス196は、画像表示部20の右表示ユニット22と、左表示ユニット24とに対してそれぞれ接続されている。本実施形態の例では、左保持部23に接続ケーブル40が接続され、この接続ケーブル40に繋がる配線が画像表示部20内部に敷設され、右表示ユニット22と左表示ユニット24とのそれぞれが、制御装置10のインターフェイス196に接続される。
電源部130には、バッテリー132と、電源制御回路134とが含まれている。電源部130は、制御装置10が動作するための電力を供給する。バッテリー132は、充電可能な電池である。電源制御回路134は、バッテリー132の残容量の検出と、OS143への充電の制御を行う。電源制御回路134は、メインプロセッサー140に接続され、バッテリー132の残容量の検出値や、バッテリー132の電圧の検出値をメインプロセッサー140へと出力する。なお、電源部130が供給する電力に基づいて、制御装置10から画像表示部20へと電力を供給してもよい。電源部130から制御装置10の各部および画像表示部20への電力の供給状態を、メインプロセッサー140により制御可能な構成としてもよい。
右表示ユニット22は、表示ユニット基板210と、OLEDユニット221と、カメラ61と、照度センサー65と、LEDインジケーター67と、温度センサー217とを備える。表示ユニット基板210には、インターフェイス196に接続されるインターフェイス(I/F)211と、受信部(Rx)213と、EEPROM(Electrically Erasable Programmable Read-Only Memory)215とが実装されている。受信部213は、インターフェイス211を介して制御装置10から入力されるデーターを受信する。受信部213は、OLEDユニット221で表示する画像の画像データーを受信した場合に、受信した画像データーをOLED駆動回路225(図2)へと出力する。
EEPROM215は、各種のデーターをメインプロセッサー140が読み取り可能な態様で記憶する。EEPROM215は、例えば、画像表示部20のOLEDユニット221、241の発光特性や表示特性に関するデーター、右表示ユニット22または左表示ユニット24のセンサー特性に関するデーター等を記憶する。具体的には、例えば、OLEDユニット221、241のガンマ補正に係るパラメーター、後述する温度センサー217、239の検出値を補償するデーター等を記憶する。これらのデーターは、HMD100の工場出荷時の検査によって生成され、EEPROM215に書き込まれる。出荷後は、メインプロセッサー140がEEPROM215のデーターを読み込んで各種の処理に利用する。
カメラ61は、インターフェイス211を介して入力される信号に従って撮像を実行し、撮像画像データーあるいは撮像結果を表す信号を制御装置10へと出力する。照度センサー65は、図1に示すように、前部フレーム27の端部ERに設けられ、画像表示部20を装着する使用者の前方からの外光を受光するように配置される。照度センサー65は、受光量(受光強度)に対応した検出値を出力する。LEDインジケーター67は、図1に示すように、前部フレーム27の端部ERにおいてカメラ61の近傍に配置される。LEDインジケーター67は、カメラ61による撮像を実行中に点灯して、撮像中であることを報知する。
温度センサー217は、温度を検出し、検出した温度に対応する電圧値あるいは抵抗値を出力する。温度センサー217は、OLEDパネル223(図3)の裏面側に実装される。温度センサー217は、例えばOLED駆動回路225と同一の基板に実装されてもよい。この構成により、温度センサー217は主としてOLEDパネル223の温度を検出する。なお、温度センサー217は、OLEDパネル223あるいはOLED駆動回路225に内蔵されてもよい。例えば、OLEDパネル223がSi−OLEDとしてOLED駆動回路225と共に統合半導体チップ上の集積回路として実装される場合、この半導体チップに温度センサー217を実装してもよい。
左表示ユニット24は、表示ユニット基板230と、OLEDユニット241と、温度センサー239とを備える。表示ユニット基板230には、インターフェイス196に接続されるインターフェイス(I/F)231と、受信部(Rx)233と、6軸センサー235と、磁気センサー237とが実装されている。受信部233は、インターフェイス231を介して制御装置10から入力されるデーターを受信する。受信部233は、OLEDユニット241で表示する画像の画像データーを受信した場合に、受信した画像データーをOLED駆動回路245(図2)へと出力する。
6軸センサー235は、3軸加速度センサーおよび3軸ジャイロ(角速度)センサーを備えるモーションセンサー(慣性センサー)である。6軸センサー235は、上記のセンサーがモジュール化されたIMUを採用してもよい。磁気センサー237は、例えば、3軸の地磁気センサーである。温度センサー239は、温度を検出し、検出した温度に対応する電圧値あるいは抵抗値を出力する。温度センサー239は、OLEDパネル243(図3)の裏面側に実装される。温度センサー239は、例えばOLED駆動回路245と同一の基板に実装されてもよい。この構成により、温度センサー239は主としてOLEDパネル243の温度を検出する。温度センサー239は、OLEDパネル243あるいはOLED駆動回路245に内蔵されてもよい。詳細は温度センサー217と同様である。
右表示ユニット22のカメラ61、照度センサー65、温度センサー217と、左表示ユニット24の6軸センサー235、磁気センサー237、温度センサー239は、制御装置10のセンサーハブ192に接続される。センサーハブ192は、メインプロセッサー140の制御に従って各センサーのサンプリング周期の設定および初期化を行う。センサーハブ192は、各センサーのサンプリング周期に合わせて、各センサーへの通電、制御データーの送信、検出値の取得等を実行する。センサーハブ192は、予め設定されたタイミングで、右表示ユニット22および左表示ユニット24が備える各センサーの検出値をメインプロセッサー140へ出力する。センサーハブ192は、各センサーの検出値を一時的に保持するキャッシュ機能を備えてもよい。センサーハブ192は、各センサーの検出値の信号形式やデーター形式の変換機能(例えば、統一形式への変換機能)を備えてもよい。センサーハブ192は、メインプロセッサー140の制御に従ってLEDインジケーター67への通電を開始および停止させることで、LEDインジケーター67を点灯または消灯させる。
図6は、HMD100の制御機能部の構成を機能的に示すブロック図である。HMD100の制御機能部は、記憶部122と、制御部150とを備える。記憶部122は、不揮発性記憶部121(図5)により構成される論理的な記憶部である。図6では記憶部122のみを使用する例を示すが、不揮発性記憶部121に組み合わせてEEPROM215やメモリー118が使用されてもよい。また、制御部150は、メインプロセッサー140がコンピュータープログラムを実行することにより、すなわち、ハードウェアとソフトウェアとが協働することにより構成される。
記憶部122には、制御部150における処理に供する種々のデーターが記憶されている。具体的には、本実施形態の記憶部122には、設定データー123と、コンテンツデーター124と、デフォルト表示面設定126と、変化パラメーター128とが記憶されている。デフォルト表示面設定126の詳細は後述する。変化パラメーター128は、後述の表示面設定処理において設定されるパラメーターであり、初期状態では0が格納されている。
設定データー123は、HMD100の動作に係る各種の設定値を含む。例えば、設定データー123には、制御部150がHMD100を制御する際のパラメーター、行列式、演算式、LUT(Look Up Table)等が含まれている。
コンテンツデーター124には、制御部150の制御によって画像表示部20が表示する画像や映像を含むコンテンツのデーター(画像データー、映像データー、音声データー等)が含まれている。なお、コンテンツデーター124には、双方向型のコンテンツのデーターが含まれてもよい。双方向型のコンテンツとは、制御装置10によって使用者の操作を取得して、取得した操作内容に応じた処理を制御部150が実行し、処理内容に応じたコンテンツを画像表示部20に表示するタイプのコンテンツを意味する。この場合、コンテンツのデーターには、使用者の操作を取得するためのメニュー画面の画像データー、メニュー画面に含まれる項目に対応する処理を定めるデーター等を含みうる。
制御部150は、記憶部122が記憶しているデーターを利用して各種処理を実行することにより、OS143、画像処理部145、表示制御部147、撮像制御部149、拡張現実感処理部151、表示面設定部152としての機能を実行する。本実施形態では、OS143以外の各機能部は、OS143上で実行されるアプリケーションプログラムとして構成されている。
画像処理部145は、画像表示部20により表示する画像/映像の画像データーに基づいて、右表示ユニット22および左表示ユニット24に送信する信号を生成する。画像処理部145が生成する信号は、垂直同期信号、水平同期信号、クロック信号、アナログ画像信号等であってもよい。画像処理部145は、メインプロセッサー140がコンピュータープログラムをじっこうして実現される構成のほか、メインプロセッサー140とは別のハードウェア(例えば、DSP(Digital Signal Processor))で構成してもよい。
なお、画像処理部145は、必要に応じて、解像度変換処理、画像調整処理、2D/3D変換処理等を実行してもよい。解像度変換処理は、画像データーの解像度を右表示ユニット22および左表示ユニット24に適した解像度へと変換する処理である。画像調整処理は、画像データーの輝度や彩度を調整する処理である。2D/3D変換処理は、三次元画像データーから二次元画像データーを生成し、あるいは、二次元画像データーから三次元画像データーを生成する処理である。画像処理部145は、これらの処理を実行した場合、処理後の画像データーに基づき画像を表示するための信号を生成し、接続ケーブル40を介して画像表示部20へと送信する。
表示制御部147は、右表示ユニット22および左表示ユニット24を制御する制御信号を生成し、この制御信号により、右表示ユニット22および左表示ユニット24のそれぞれによる画像光の生成と射出とを制御する。具体的には、表示制御部147は、OLED駆動回路225、245を制御して、OLEDパネル223、243による画像の表示を実行させる。表示制御部147は、画像処理部145が出力する信号に基づいて、OLED駆動回路225、245がOLEDパネル223、243に描画するタイミングの制御、OLEDパネル223、243の輝度の制御等を行う。
撮像制御部149は、カメラ61を制御して撮像を実行させ、撮像画像データーを生成し、記憶部122に一時的に記憶させる。また、カメラ61が撮像画像データーを生成する回路を含むカメラユニットとして構成される場合、撮像制御部149は、撮像画像データーをカメラ61から取得して、記憶部122に一時的に記憶させる。
拡張現実感処理部151は、拡張現実感処理を実行する。拡張現実感処理は、仮想オブジェクトを表す虚像を画像表示部20に形成させるための処理であり、以下の手順a1〜a3を含む。ここで、「仮想オブジェクト」とは、現実に使用者を取り巻く周囲の環境(以降、単に「実空間」とも呼ぶ。)には実在しないオブジェクト(画像、文字、図形記号等)を意味する。この仮想オブジェクトは、使用者からの入力を受け付けるための仮想的な入力面や、使用者に対して使用者が行うべき作業手順や作業内容等を案内するための仮想的な案内面を形成することができる。
(a1)拡張現実感処理部151は、虚像形成の対象となる仮想オブジェクトを決定する。この仮想オブジェクトは、例えば、制御部150において実行中のアプリケーションに依存して決定され得る。例えば、実行中のアプリケーションが製造業等で使用される作業支援アプリである場合、使用者が次に行うべき作業手順を表す図形や記号や文字や画像、作業支援アプリを操作するためのソフトウェアキーボードやボタン、等が仮想オブジェクトになり得る。例えば、実行中のアプリケーションが通話アプリである場合、通話相手の情報を表す文字や、通話相手の画像、通話アプリを操作するためのソフトウェアキーボードやボタン、等が仮想オブジェクトになり得る。なお、ここで言う画像には、静止画と動画の両方を含む。
(a2)拡張現実感処理部151は、デフォルト表示面設定126により定まるデフォルト表示面に、手順a1で決定した仮想オブジェクトを表示させるための画像データーを生成する。具体的には、拡張現実感処理部151は、HMD100を装着した状態の使用者がデフォルト表示面に仮想オブジェクトを表す虚像を視認するように、位置および傾きを調整した仮想オブジェクトを配置し、かつ、他の部分に黒色を配置した画像データーを生成する。なお、拡張現実感処理部151は、仮想オブジェクトの位置および傾きの調整のために、手順a1で決定した仮想オブジェクトに対して、拡大、縮小、回転、台形補正等の画像処理を施してもよい。
(a3)拡張現実感処理部151は、手順a2で生成した画像データーを画像処理部145へ送信する。画像処理部145は、受信した画像データーに対して、上述の処理を実行する。
図7は、デフォルト表示面について説明する図である。手順a1〜a3で説明した拡張現実感処理が実行された結果、HMD100を装着した状態の使用者は、自身の眼前の領域AR1(図7、破線で図示した矩形)に、手順a1で決定された仮想オブジェクト(図形、記号、文字、画像等)を視認することができる。すなわち、図示した領域AR1がデフォルト表示面となる。デフォルト表示面AR1は、使用者の視界内における、重心位置Dと、面の傾きDx,Dy,Dzにより特定される。デフォルト表示面設定126(図6)には、このデフォルト表示面AR1を特定するためのパラメーターとして、重心位置Dと、面の傾きDx,Dy,Dzとが予め記憶されている。
表示面設定部152(図6)は、後述の表示面設定処理を実行することにより、図7で説明したデフォルト表示面から、使用者が指定した任意の表示面へと仮想オブジェクトの表示面を変更することができる。
A−2.表示面設定処理:
図8は、表示面設定処理の手順を示すフローチャートである。表示面設定処理は、図7で説明したデフォルト表示面から、使用者が指定した任意の表示面へと仮想オブジェクトの表示面を変更する処理である。表示面設定処理は、制御装置10の表示面設定部152により実行される。
ステップS100において表示面設定部152は、使用者から表示面設定処理の開始指示があったか否かを判定する。開始指示は、任意の態様で与えられうる。例えば、OS143の画面上に作成されたアイコンの選択実行や、音声によるコマンドを用いた開始指示、ジェスチャーによるコマンドを用いた開始指示等を利用できる。表示面設定処理の開始指示は、OS143にインストールされている任意のコンピュータープログラムからの呼び出しの形式で与えられてもよい。表示面設定処理の開始指示がない場合(ステップS100:NO)、表示面設定部152は、ステップS100に戻って監視を継続する。
表示面設定処理の開始指示があった場合(ステップS100:YES)、ステップS102において表示面設定部152は、表示面設定モードに移行する。まず、表示面設定部152は、使用者の視線の方向を取得する。具体的には、表示面設定部152は、内側カメラ62により撮影された使用者の右眼の画像および左眼の画像をそれぞれ解析し、黒目の向きを取得する。表示面設定部152は、取得した黒目の向きから使用者の視線の方向を推定する。
図9は、表示面設定処理のステップS104〜S108について説明する図である。図9以降の図では、HMD100を装着した使用者と、使用者の手とを鉛直方向上側(使用者の頭頂部側)から図示している。ステップS104において表示面設定部152は、カメラ61に、取得した視線の方向を三次元スキャン(三次元認識)させる。図1および図5で説明した本実施形態のカメラ61は、レーザー光射出部を備えており、HMD100の表側方向(画像表示部20の装着状態において使用者が視認する視界方向)を三次元スキャンすることができる。
具体的には、カメラ61は、レーザー光射出部から、スリット状のレーザー光をHMD100の表側方向へと射出する。カメラ61は、射出したレーザー光の反射光を、CCDまたはCMOSの撮像素子を用いて受光する。カメラ61は、三角測距の原理を用いて被写体との距離情報を取得し、三次元データー化する。また、カメラ61は、受光データーを回転フィルターで分光することで、同一のCCDまたはCMOSによって所定解像度のカラー画像データーも取得する。例えば、図9の例では、表示面設定部152は、カメラ61に視線の方向LSを三次元スキャンさせることで、使用者の手hdの三次元データーと、カラー画像データーとを取得することができる。本ステップで得られた三次元データーとカラー画像データーとは「実空間の情報」として機能する。
ステップS106において表示面設定部152は、三次元スキャンの有効範囲内に何らかの物体があるか否かを判定する。具体的には、表示面設定部152は、ステップS104で得られた三次元データーを参照し、三次元データーに含まれている物体を検出する。なお、三次元データーに複数の物体(例えば、複数の手、手と置物等)が含まれている場合、本ステップでは全ての物体を検出する。物体がない場合(ステップS106:NO)、表示面設定部152は、ステップS102に遷移して使用者の視線の方向を再取得する。この際、表示面設定部152は、物体が検出されなかった旨や、視線の方向の移動を誘導するためのメッセージを使用者に通知してもよい。通知は、文字等の表示、音声等の任意の態様を採用できる。
物体がある場合(ステップS106:YES)、ステップS108において表示面設定部152は、検出した物体のうちの1つについて、当該物体が基準面を含むか否かを判定する。本実施形態の表示面設定部152は、以下の条件b1、b2の両方を満たす場合に、当該物体が基準面を含むと判定する。なお、表示面設定部152は、例示した条件b1、b2の他にも種々の条件を用いて基準面を含むか否かの判定を行うことができる。なお、条件b1、b2は「予め定められた条件」に相当する。
(b1)判定対象の物体が、第1の範囲内の平面度を有する面を含むこと。第1の範囲は、適宜設定できるが、例えば人間の手のような多少の凹凸のある物体を許容し、かつ、人間の顔のような凹凸の大きい物体については許容しない範囲とされることが好ましい。第1の範囲を適切に設定することにより、表示面設定部152は、誤認識を抑制することができる。
(b2)判定対象の物体における上記面の面積が、第2の値以上であること。第2の値は、適宜設定できるが、例えば使用者から遠く離れた場所にいる第三者の手や顔、任意の物体等については除外できる値とされることが好ましい。第2の値を適切に設定することにより、表示面設定部152は、誤認識を抑制することができる。
例えば、図9の例では、表示面設定部152は、検出した物体(使用者の手hd)の手のひら、および、そろえられた指からなる平面CA(図9、破線)を、基準面CAと認定する。なお、図9の例では基準面CAは楕円形状であるが、基準面の形状に特に制限はなく、任意の形状を採り得る。
判定対象の物体が基準面を含まない場合(ステップS108:NO)、表示面設定部152は、検出した他の物体について、ステップS108の判定を順次行っていく。なお、検出した全ての物体が基準面を含まなかった場合、表示面設定部152は、ステップS102に遷移して使用者の視線の方向を再取得してもよい。この際、表示面設定部152は、物体が検出されなかった旨のメッセージや、視線の方向の移動を誘導するためのメッセージを使用者に通知してもよい。
なお、表示面設定部152は、ステップS108の判定を、検出した物体のうち、特定の特徴を含む物体に限って実施してもよい。特定の特徴として、例えば、人間の手、使用者の手、所定形状の物体、所定のパターンを有する情報を含んだ画像等を採用できる。人間の手とは、使用者、第三者問わない人間の手である。使用者の手とは、HMD100を現在使用している使用者自身の手を意味し、指紋や掌紋を照合することで判定できる。所定形状の物体とは、例えば、スマートフォン(矩形形状のデバイス)や、手帳(矩形形状の媒体)、時計の文字盤(矩形形状や円形状のデバイス)、うちわ(円形状の媒体)、ペン(細長い円筒形状の媒体)等を採用し得る。所定のパターンを有する情報を含んだ画像とは、例えば、QRコード(登録商標)等の二次元コード、マーカー等を採用し得る。使用者の手を認識するための指紋や掌紋、所定形状の物体を認識するための物体のパターン、所定のパターンを有する情報を含んだ画像を認識するための画像内のパターンについては、記憶部122に予め記憶されていてもよく、ネットワークを介してHMD100に接続されている外部装置(例えばクラウドサーバー)に予め記憶されていてもよい。このようにすれば、これら特定の特徴を含む物体に限りステップS108の処理が実行されるため、表示面設定処理を効率化することができる。
図10は、表示面設定処理のステップS110について説明する図である。図8において判定対象の物体が基準面CAを含む場合(ステップS108:YES)、ステップS110において表示面設定部152は、デフォルト表示面(図7)に対する基準面CAの重心位置と、平面傾きとの変化パラメーターを求める。基準面CAの重心位置は、使用者の視界内における基準面CAの重心位置Cである(図10、黒丸)。基準面CAの平面傾きは、使用者の視界内における傾きCx,Cy,Czである(図10、黒丸から延びる矢印)。このため、ステップS110において表示面設定部152は、使用者の視界内における、
・デフォルト表示面の重心位置Dから基準面CAの重心位置Cへの変化量と、
・デフォルト表示面の傾きDxから基準面CAの傾きCxへの変化量と、
・デフォルト表示面の傾きDyから基準面CAの傾きCyへの変化量と、
・デフォルト表示面の傾きDzから基準面CAの傾きCzへの変化量と、
をそれぞれ求め、これらをセットにして変化パラメーターとする。
図8のステップS112において表示面設定部152は、求めた変化パラメーターに基づいて仮想オブジェクトの表示面を設定する。具体的には、表示面設定部152は、ステップS110で求めた変化パラメーター(重心位置の変化量、傾きx,y,zの変化量の各々)を、変化パラメーター128(図6)に記憶させる。変化パラメーター128に初期値(0)以外の値が格納されている場合、上述した拡張現実感処理の手順a2において拡張現実感処理部151は、デフォルト表示面設定126(重心位置D、面の傾きDx,Dy,Dz)を、変化パラメーター128(重心位置の変化量、傾きx,y,zの変化量の各々)で補正することにより定まる表示面に対して、手順a1で決定した仮想オブジェクトを表示させるための画像データーを生成する。
図11は、補正後の表示面について説明する図である。変化パラメーター128を用いた拡張現実感処理(手順a1〜a3)が実行された結果、HMD100を装着した状態の使用者は、基準面CAの重心位置Cと同じ重心位置、かつ、基準面CAの傾きCx,Cy,Czと同じ傾きの領域AR2(図11、破線で図示した矩形)に、手順a1で決定された仮想オブジェクト(図形、記号、文字、画像等)を視認することができる。
なお、上述した例では、1つの仮想オブジェクトの表示面だけを例示して説明したが、表示面設定部152は、複数の仮想オブジェクトの表示面についても、上記と同様の方法を用いて設定することができる。複数の仮想オブジェクトの表示面には、例えば、使用者が行うべき作業手順や作業内容等を案内する案内面用の表示面と、使用者がHMD100を操作するために用いる操作面用の表示面等、性質の異なる表示面が含まれていてもよい。また、複数の仮想オブジェクトの表示面には、同じ性質の表示面が含まれていてもよい。
以上のように、本実施形態によれば、制御部150の表示面設定部152は、使用者が視認する仮想オブジェクトの位置および傾きを、実空間にある基準面CAの位置Cおよび傾きCx,Cy,Czに基づいて変更する(図8、ステップS112)。このため使用者は、表示面設定モード中に基準面CAの位置Cおよび傾きCx,Cy,Czを調整する(例えば、手の位置や傾きを変える)ことによって、虚像として視認する仮想オブジェクトの位置および傾き、換言すれば、仮想オブジェクトの表示面AR2の位置および傾きを、意図するように調整することができる。
また、本実施形態によれば、使用者が虚像として視認する仮想オブジェクトの位置および傾き(仮想オブジェクトの表示面AR2の位置および傾き)は、実空間にある基準面CAの位置Cおよび傾きCx,Cy,Czと同じとなる(図8、ステップS112)。このため使用者は、仮想オブジェクトの位置および傾きの調整を直感的に行うことができる。
さらに、本実施形態によれば、取得部(カメラ61)は、使用者の視線の方向LSに相当する実空間の情報(三次元データー、カラー画像データー)だけを取得する(ステップS104)。換言すれば、取得部は、使用者の視線の方向LSに相当しない実空間の情報の取得を省略する。このため、取得部により取得された実空間の情報における情報量を低減することができる。この結果、制御部150の表示面設定部152による解析(ステップS108、S110)時の処理負荷を低減することができる。
A−3.付加処理:
表示面設定処理において、表示面設定部152は、次に例示する処理c1,c2を付加的に実行してもよい。処理c1,c2は、単独で付加されてもよく、組み合わせて付加されてもよい。
(c1)仮想オブジェクトの表示面の再変更:
図12は、仮想オブジェクトの表示面の再変更について説明する図である。図8で説明した表示面設定処理を終了後、使用者による第1の動作の検出に応じて、表示面設定部152は、表示面設定処理を再び実行することで、仮想オブジェクトの表示面の位置および傾きを、新たに求めた基準面の位置および傾きに基づいて再変更してもよい。第1の動作とは、予め任意に定めておくことができる。例えば、図12に示すように、手hdを所定の形(図の例では、親指を立てる形)にする動作、指を所定の形にする動作、手hdの向きや表裏を変える動作、所定のジェスチャー、所定内容の発話(音声コマンド)等を採用できる。なお、表示面設定部152は、前回の表示面設定処理により設定された仮想オブジェクトの表示面AR2の近傍で第1の動作を検出した場合に限って、表示面設定処理を再び実行してもよい。
この再変更の場合、表示面設定部152は、新たに求めた変化パラメーターによって変化パラメーター128を上書きしてもよいし、変化パラメーター128に時刻や版数と共に、新たに求めた変化パラメーターを記憶させてもよい。
このようにすれば、制御部150の表示面設定部152は、第1の動作を契機として仮想オブジェクトの位置および傾き(仮想オブジェクトの表示面AR2の位置および傾き)を再変更するため、使用者における利便性を向上させることができる。
(c2)仮想オブジェクトの表示態様の変更:
図12および図14は、仮想オブジェクトの表示態様の変更について説明する図である。図8で説明した表示面設定処理を終了後、使用者による第2の動作の検出に応じて、拡張現実感処理部151は、仮想オブジェクトの表示態様を変更してもよい。表示態様とは、仮想オブジェクトの表示の有無、仮想オブジェクトの大きさ、仮想オブジェクトの色彩、仮想オブジェクトの透過度、仮想オブジェクトの明るさ、仮想オブジェクトの内容等である。第2の動作とは、予め任意に定めておくことができ、手hdを所定の形にする動作、指を所定の形にする動作、手hdの向きや表裏を変える動作、所定のジェスチャー、所定内容の発話(音声コマンド)等を採用できる。例えば、図13の例では、手hdのページをめくる動作により、仮想オブジェクトOBの内容(具体的には、表示されているページ)が変更される。例えば、図14の例では、手hdの拳を握る動作により、仮想オブジェクトOBが非表示に変更される。
このようにすれば、制御部150の拡張現実感処理部151は、第2の動作を契機として仮想オブジェクトの表示態様を変更するため、使用者における利便性を向上させることができる。
B.変形例:
上記実施形態において、ハードウェアによって実現されるとした構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されるとした構成の一部をハードウェアに置き換えるようにしてもよい。その他、以下のような変形も可能である。
・変形例1:
上記実施形態では、HMDの構成について例示した。しかし、HMDの構成は、本発明の要旨を逸脱しない範囲において任意に定めることが可能であり、例えば、構成要素の追加・削除・変換等を行うことができる。
上記実施形態では、右導光板26および左導光板28が外光を透過する、いわゆる透過型のHMD100について説明した。しかし、本発明は、例えば、外景を視認できない状態で画像を表示する、いわゆる非透過型のHMD100に適用することもできる。また、これらのHMD100では、上記実施形態で説明した実空間に重畳して画像を表示するAR表示のほか、撮像した実空間の画像と仮想画像とを組み合わせて表示するMR(Mixed Reality)表示、あるいは、仮想空間を表示するVR(Virtual Reality)表示を行うこともできる。また本発明は、AR、MR、VR表示のいずれも行わない装置にも適用できる。
上記実施形態では、制御装置10および画像表示部20の機能部について説明したが、これらは任意に変更することができる。例えば、次のような態様を採用してもよい。制御装置10に記憶部122および制御部150を搭載し、画像表示部20には表示機能のみを搭載する態様。制御装置10と画像表示部20との両方に、記憶部122および制御部150を搭載する態様。制御装置10と画像表示部20とを一体化した態様。この場合、例えば、画像表示部20に制御装置10の構成要素が全て含まれ、眼鏡型のウェアラブルコンピューターとして構成される。制御装置10の代わりにスマートフォンや携帯型ゲーム機器を使用する態様。制御装置10と画像表示部20とを無線通信により接続し、接続ケーブル40を配した態様。この場合、例えば、制御装置10や画像表示部20に対する給電についても無線で実施してよい。
・変形例2:
上記実施形態では、制御装置の構成について例示した。しかし、制御装置の構成は、本発明の要旨を逸脱しない範囲において任意に定めることが可能であり、例えば、構成要素の追加・削除・変換等を行うことができる。
上記実施形態では、制御装置10が備える入力手段の一例について説明した。しかし、制御装置10は、例示した一部の入力手段を省略して構成されてもよく、上述しない他の入力手段を備えていてもよい。例えば、制御装置10は、操作スティック、キーボード、マウス等を備えていてもよい。例えば、制御装置10は、使用者の身体の動き等に対応付けられたコマンドを解釈する入力手段を備えていてもよい。使用者の身体の動き等とは、例えば、視線を検出する視線検出、手の動きを検出するジェスチャー検出、足の動きを検出するフットスイッチ等により取得できる。なお、視線検出は、例えば、画像表示部20の内側を撮像するカメラにより実現できる。ジェスチャー検出は、例えば、カメラ61により経時的に撮影された画像を解析することにより実現できる。
上記実施形態では、制御部150は、メインプロセッサー140が記憶部122内のコンピュータープログラムを実行することにより動作するとした。しかし、制御部150は種々の構成を採用することができる。例えば、コンピュータープログラムは、記憶部122に代えて、または記憶部122と共に、不揮発性記憶部121、EEPROM215、メモリー118、他の外部記憶装置(各種インターフェイスに挿入されているUSBメモリー等の記憶装置、ネットワークを介して接続されているサーバー等の外部装置を含む)に格納されていてもよい。また、制御部150の各機能は、当該機能を実現するために設計されたASIC(Application Specific Integrated Circuit)を用いて実現されてもよい。
・変形例3:
上記実施形態では、画像表示部の構成について例示した。しかし、画像表示部の構成は、本発明の要旨を逸脱しない範囲において任意に定めることが可能であり、例えば、構成要素の追加・削除・変換等を行うことができる。
図15は、変形例の画像表示部が備える光学系の構成を示す要部平面図である。変形例の画像表示部では、使用者の右眼REに対応したOLEDユニット221aと、左眼LEに対応したOLEDユニット241aと、が設けられている。右眼REに対応したOLEDユニット221aは、白色で発色するOLEDパネル223aと、OLEDパネル223aを駆動して発光させるOLED駆動回路225とを備えている。OLEDパネル223aと右光学系251との間には、変調素子227(変調装置)が配置されている。変調素子227は、例えば、透過型液晶パネルで構成され、OLEDパネル223aが発する光を変調して画像光Lを生成する。変調素子227を透過して変調された画像光Lは、右導光板26によって右眼REに導かれる。
左眼LEに対応したOLEDユニット241aは、白色で発光するOLEDパネル243aと、OLEDパネル243aを駆動して発光させるOLED駆動回路245とを備えている。OLEDパネル243aと左光学系252との間には、変調素子247(変調装置)が配置されている。変調素子247は、例えば、透過型液晶パネルで構成され、OLEDパネル243aが発する光を変調して画像光Lを生成する。変調素子247を透過して変調された画像光Lは、左導光板28によって左眼LEに導かれる。変調素子227、247は、図示しない液晶ドライバー回路に接続される。この液晶ドライバー回路(変調装置駆動部)は、例えば変調素子227、247の近傍に配置される基板に実装される。
変形例の画像表示部によれば、右表示ユニット22および左表示ユニット24は、それぞれ、光源部としてのOLEDパネル223a、243aと、光源部が発する光を変調して複数の色光を含む画像光を出力する変調素子227、247と、を備える映像素子として構成される。なお、OLEDパネル223a、243aが発する光を変調する変調装置は、透過型液晶パネルが採用される構成に限定されない。例えば、透過型液晶パネルに代えて反射型液晶パネルを用いてもよいし、デジタル・マイクロミラー・デバイスを用いてもよいし、レーザー網膜投影型のHMD100としてもよい。
上記実施形態では、眼鏡型の画像表示部20について説明したが、画像表示部20の態様は任意に変更することができる。例えば、画像表示部20を帽子のように装着する態様としてもよく、ヘルメット等の身体防護具に内蔵された態様としてもよい。また、画像表示部20を、自動車や飛行機等の車両、またはその他の交通手段に搭載されるHUD(Head Up Display)として構成してもよい。
上記実施形態では、画像光を使用者の眼に導く光学系として、右導光板26および左導光板28の一部に、ハーフミラー261、281により虚像が形成される構成を例示した。しかし、この構成は任意に変更することができる。たとえば、右導光板26および左導光板28の全面(または大部分)を占める領域に虚像が形成されてもよい。この場合、画像の表示位置を変化させる動作によって画像を縮小してもよい。また、本発明の光学素子は、ハーフミラー261、281を有する右導光板26および左導光板28に限定されず、画像光を使用者の眼に入射させる光学部品(例えば、回折格子、プリズム、ホログラフィー等)を用いる限り任意の態様を採用できる。
・変形例4:
上記実施形態では、表示面設定処理の手順について例示した。しかし、表示面設定処理の手順は、本発明の要旨を逸脱しない範囲において任意に定めることが可能であり、例えば、実行されるステップの追加・削除、ステップ内における処理内容の変更等を行うことができる。
上記実施形態では、基準面および仮想オブジェクトの表示面の位置を特定するために、重心位置を用いた。しかし、基準面および仮想オブジェクトの表示面の位置を特定できる限りにおいて、任意の情報を利用できる。例えば、重心位置に代えて基準面および仮想オブジェクトの表示面の端点(例えば、左側上部の点)を利用してもよいし、重心位置に代えて基準面および仮想オブジェクトの表示面の枠を利用してもよい。また、例えば、基準面および仮想オブジェクトの表示面の重心位置と、端点とを両方利用してもよい。
上記実施形態では、拡張現実感処理部151は、デフォルト表示面設定126(重心位置D、面の傾きDx,Dy,Dz)と、変化パラメーター128(重心位置の変化量、傾きx,y,zの変化量の各々)とを利用することで、補正後の仮想オブジェクトの表示面の位置および傾きを、基準面の位置および傾きと同じになるように制御した。しかし、拡張現実感処理部151は、補正後の仮想オブジェクトの表示面の位置および傾きを、基準面CAの位置Cおよび傾きCx,Cy,Czに基づいて変更する限りにおいて、任意の態様を採用できる。例えば、拡張現実感処理部151は、変化パラメーター128に何らかの係数を掛けてもよい。
上記実施形態では、カメラ61は、使用者の視線の方向を三次元スキャン(三次元認識)した。しかし、カメラ61は、自身が認識可能な全ての範囲を三次元スキャンしてもよい。なお、上記実施形態の三次元スキャンの方法はあくまで一例であり、他の方法を採用することもできる。
上記実施形態では、表示面設定部152は、条件b1(第1の範囲内の平面度)および条件b2(面積が第2の値以上)を用いて、基準面の判定を行った。しかし、表示面設定部152は、条件b1、b2のいずれか一方、または両方を省略してもよい。
上記実施形態の条件b2(面積が第2の値以上)に関し、表示面設定部152は、複数のモード(例えば、通常モード、微小面検出モード)を利用可能であってもよい。採用されるモードの指定は、例えば使用者の指示に応じて行われる。微小面検出モードの場合、表示面設定部152は、条件b2における第2の値を、通常モードの場合の第2の値よりも小さく設定する。このようにすれば、表示面設定部152は、使用者の指示に応じて、小さな面をも基準面として、表示面設定処理を実行することができる。
上記実施形態の条件b2(面積が第2の値以上)に代えて、表示面設定部152は、判定対象の物体における面と、利用者との間の距離が、所定範囲内であることを採用してもよい。所定範囲とは任意に決定することができるが、例えば、20cm〜80cm程度に設定することができる。このようにしても表示面設定部152は、上記実施形態と同様に、誤認識を抑制することができる。
上記実施形態では、指紋や掌紋を照合することで使用者自身の手を認識し、当該使用者の手に限ってステップS108の判定を実施してもよいとした。使用者自身の手の認識の方法として、指紋や掌紋に代えて、広角カメラの撮像画像を画像認識してもよい。この場合、HMD100は、カメラ61に代えて、またはカメラ61と共に広角カメラを備える構成とする。表示面設定部152は、広角カメラの撮像画像を画像認識し、判定対象の物体(手)がHMD100の使用者から伸びていると判定した場合に、判定対象の物体(手)は、当該使用者の手であると判定できる。
上記実施形態において、表示面設定部152は、人間の手であるか否かの判断をカメラ61により撮像された画像を画像解析することで行った。しかし、表示面設定部152は、人間の手であるか否かの判断を、HMD100に搭載された温度検出部(サーモグラフィー)の検出結果に拠って行ってもよい。
上記実施形態では、表示面設定部152は、複数の仮想オブジェクトの表示面について、表示面設定処理を介して設定可能であるとした。この複数の仮想オブジェクトの表示面の設定にあたって、表示面設定部152は、例えば、使用者の右手を基準面とした第1の表示面と、使用者の左手を基準面とした第2の表示面と、を設定してもよい。これら複数の仮想オブジェクトの表示面は、表示面設定処理をシリアルに実行することで順次設定されてもよく、表示面設定処理をパラレルに実行することで同時に設定されてもよい。
上記実施形態では、拡張現実感処理部151は、変化パラメーター128に初期値以外の値が格納されている場合、即時に、変化パラメーター128で補正した表示面に対して仮想オブジェクトを表示させた。しかし、拡張現実感処理部151は、変化パラメーター128に初期値以外の値が格納されてから所定時間経過後に上述した処理を実行してもよい。このようにすれば、拡張現実感処理部151は、変化パラメーター128に初期値以外の値が格納(図8、ステップS112)されてから、補正された表示面に対して仮想オブジェクトが表示されるまでの時間に遅延を生じさせることができる。なお、この遅延時間は、使用者やHMD100にインストールされているアプリケーションからの要求によって、適宜設定可能とされてもよい。
上記実施形態の表示面設定処理では、二次元の仮想オブジェクトの表示面を対象として説明した。しかし、表示面設定部152は、三次元の仮想オブジェクトの表示面を設定可能であってもよい。三次元の仮想オブジェクトの表示面とは、例えば、三次元の仮想オブジェクトの重心位置Aと、三次元の仮想オブジェクトの基準点の向きAx,Ay,Azと、三次元の仮想オブジェクトの大きさAsと、により特定できる。上述した表示面設定処理において、表示面設定部152は、人間の手のひらを第1基準面とし、手のひらから伸びる各指の腹面を第2基準面(親指の腹)〜第6基準面(小指の腹)として、三次元の仮想オブジェクトの重心位置、向き、大きさを特定できる。このようにすれば、表示面設定部152は、二次元の仮想オブジェクトの表示面だけでなく、三次元の仮想オブジェクトの表示面についても、使用者の意図するように調整することができる。
・変形例5:
本発明は、上述の実施形態や実施例、変形例に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態、実施例、変形例中の技術的特徴は、上述の課題の一部または全部を解決するために、あるいは、上述の効果の一部または全部を達成するために、適宜、差し替えや組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。