(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
外景を撮像する第１撮像部と、
画像を表示する画像表示部を有する画像表示装置と、
シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、を記憶する記憶部を備え、
前記シナリオ情報は、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含み、前記所定の条件は、前記第１撮像部によって撮像された撮像画像の中から予め設定された特定対象の検出であり、前記所定の情報の提示は、前記所定の条件に対応付けられた画像の表示であり、
前記機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含み、
前記画像表示装置は、
前記シナリオ情報と前記機器情報とを取得する情報取得部と、
前記シナリオ情報を実行する場合に、前記画像表示装置のハードウェアの仕様を表す情報を表す表示装置情報と前記機器情報との比較を行ない、実行する前記シナリオ情報が含む前記所定の情報の提示または受付をすることを、前記比較に基づいて変更する制御情報変更部と、
を備える、情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、さらに、
前記シナリオ情報を生成する生成部を備え、
前記機器情報は、前記生成部のハードウェアの仕様を表す情報を含む、情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記機器情報は、前記第１撮像部のハードウェアの仕様を表す情報と、前記画像の表示を実行する前記画像表示部のハードウェアの仕様を表す情報と、を含む、情報処理装置。
【請求項４】
請求項２または請求項３に記載の情報処理装置であって、
前記第１撮像部は、前記特定対象までの距離を測定し、
前記画像の表示は、測定された距離の位置に視認されるような三次元画像の表示として実行される、情報処理装置。
【請求項５】
請求項１から請求項４までのいずれか一項に記載の情報処理装置であって、
前記シナリオ情報は、音声出力の情報を含み、
前記所定の条件は、前記音声出力のタイミングを含み、
前記機器情報は、前記音声出力を実行する音声出力部のハードウェアの仕様を表す情報を含む、情報処理装置。
【請求項６】
請求項１に記載の情報処理装置であって、
前記画像表示部は、使用者の頭部に装着され、外景を透過可能であり、
前記画像表示装置は、さらに、
前記外景の一部を撮像する第２撮像部と、
撮像された撮像画像から検出された特定対象の位置に対応付けて前記画像の表示を前記画像表示部に実行させる画像設定部と、を備える、情報処理装置。
【請求項７】
情報処理装置の制御方法であって、
外景を撮像する工程と、
シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、を記憶する工程と、
画像表示部に画像を表示する工程と、を備え、
前記シナリオ情報は、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含み、前記所定の条件は、前記撮像された撮像画像の中から予め設定された特定対象を検出することであり、前記所定の情報の提示は、前記所定の条件に対応付けられた画像の表示であり、
前記機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含み、
更に、前記情報処理装置の制御方法は、
前記シナリオ情報と前記機器情報とを取得する工程と、
前記シナリオ情報を実行する場合に、前記画像表示部に画像を表示するハードウェアの仕様を表す情報を表す表示装置情報と前記機器情報との比較を行ない、実行する前記シナリオ情報が含む前記所定の情報の提示または受付をすることを、前記比較に基づいて変更する工程と、
を備える情報処理装置の制御方法。
【請求項８】
情報処理装置のためのコンピュータープログラムであって、
撮像部を用いて外景を撮像する撮像機能と、
画像表示部に画像を表示する表示機能と、
シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、を記憶部に記憶する記憶機能と、をコンピューターに実現させ、
前記シナリオ情報は、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含み、前記所定の条件は、前記撮像された撮像画像の中から予め設定された特定対象を検出することであり、前記所定の情報の提示は、前記所定の条件に対応付けられた画像の表示であり、
前記機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含み、
更に、前記情報処理装置ためのコンピュータプログラムは、
前記シナリオ情報と前記機器情報とを取得する機能と、
前記シナリオ情報を実行する場合に、前記画像表示部に画像を表示するハードウェアの仕様を表す情報を表す表示装置情報と前記機器情報との比較を行ない、実行する前記シナリオ情報が含む前記所定の情報の提示または受付をすることを、前記比較に基づいて変更する機能と、をコンピューターに実現させる、コンピュータープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置の技術に関する。
【背景技術】
【０００２】
従来、特許文献１に記載されているように、ビデオ撮影された被写体の動作の内、一部の動作に対応させて生成した画像を、ビデオ撮影された被写体の動画に同期させて表示させる表示装置が知られている。また、特許文献２には、第１のプロセッサが画像データを生成し、生成した画像データをディスプレイシステムに供給することと、第２のプロセッサが撮像された使用者のジェスチャーとポイント座標とを第１のプロセッサへと供給することと、を行なう方法が記載されている。この方法では、第１のプロセッサは、撮像された使用者のジェスチャーに基づいて、各種操作を行なう。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２３００８６号公報
【特許文献２】特表２０１４−５１４６５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１および特許文献２には、撮像した対象に基づいて画像データが生成されることについては開示されていない。また、画像データに基づく画像の表示などの何らかの処理が実行される場合に、処理を実行する機器の性能の相違によって、例えば、動画の処理速度が遅いなどといった不具合が生じるおそれがあった。そのほか、従来の情報処理装置では、その小型化や、低コスト化、省資源化、製造の容易化、使い勝手の向上等が望まれていた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態として実現することが可能である。即ち、実施の形態の１つとして、情報処理装置が提供される。この情報処理装置は、外景を撮像する第１撮像部と、画像を表示する画像表示部を有する画像表示装置と、シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、を記憶する記憶部を備える。ここで、前記シナリオ情報は、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含み、前記所定の条件は、前記第１撮像部によって撮像された撮像画像の中から予め設定された特定対象の検出であり、前記所定の情報の提示は、前記所定の条件に対応付けられた画像の表示であり、前記機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含む。更に、前記画像表示装置は、前記シナリオ情報と前記機器情報とを取得する情報取得部と、前記シナリオ情報を実行する場合に、前記画像表示装置のハードウェアの仕様を表す情報を表す表示装置情報と前記機器情報との比較を行ない、実行する前記シナリオ情報が含む前記所定の情報の提示または受付をすることを、前記比較に基づいて変更する制御情報変更部と、を備える。
【０００６】
（１）本発明の一形態によれば、情報処理装置が提供される。この情報処理装置は、シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、記憶する記憶部を備え；前記シナリオ情報は、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含み；前記機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含む。この形態の情報処理装置によれば、記憶部に記憶されたシナリオ情報が他の情報処理装置で実行された場合に、記憶部に記憶されたシナリオ情報が実行されるために必要な機器について機器情報が参照される。シナリオ情報を実行する機器は、機器情報を参照することで、シナリオ情報を実行する自身と機器情報に記憶された各種機器の性能に違いがあっても、不具合を抑制したシナリオ情報に含まれる所定の情報の提示または受付を実行できる。
【０００７】
（２）上記形態の情報処理装置において、さらに；前記シナリオ情報を生成する生成部を備え；前記機器情報は、前記生成部のハードウェアの仕様を表す情報を含んでもよい。この形態の情報処理装置によれば、シナリオ情報が生成されるときに、簡便に機器情報が作成される。
【０００８】
（３）上記形態の情報処理装置において、さらに；外景を撮像する第１撮像部を備え；前記所定の条件は、撮像された撮像画像の中から予め設定された特定対象の検出であり、前記所定の情報の提示は、前記所定の条件に対応付けられた画像の表示であってもよい。この形態の情報処理装置によれば、第１撮像部の撮像範囲の中からシナリオ情報に含まれる所定の条件としての特定対象の検出が作成され、所定の情報の提示としての画像の表示が作成されるため、使用者は、表示したい画像としての被写体を撮像するだけでシナリオ情報を生成でき、シナリオ情報を生成する際の使用者の使い勝手が向上する。
【０００９】
（４）上記形態の情報処理装置において、前記機器情報は、前記第１撮像部のハードウェアの仕様を表す情報と、前記画像の表示を実行する画像表示部のハードウェアに関する情報と、を含んでもよい。この形態の情報処理装置によれば、シナリオ情報を実行する装置の画像表示部のハードウェアに関する情報と、機器情報の第１撮像部のハードウェアの仕様を表す情報と、の違いによるシナリオ情報が実行されたときの所定の情報の提示としての表示画像の不具合を抑制できる。
【００１０】
（５）上記形態の情報処理装置において、前記第１撮像部は、前記特定対象までの距離を測定し；前記画像の表示は、測定された距離の位置に視認されるような三次元画像の表示として実行されてもよい。この形態の情報処理装置によれば、撮像範囲の中に含まれる特定対象までの距離を含む画像が自動的に作成され、距離の情報に基づく画像が作成されるため、使用者は、簡便に立体的な画像を含むシナリオ情報を生成でき、シナリオ情報を生成する際の使用者の使い勝手がより向上する。
【００１１】
（６）上記形態の情報処理装置において、前記シナリオ情報は、音声出力の情報を含み；前記所定の条件は、前記音声出力のタイミングを含み；前記機器情報は、前記音声出力を実行する音声出力部のハードウェアの仕様を表す情報を含んでもよい。この形態の情報処理装置によれば、シナリオ情報に含まれる所定の情報の提示として、画像表示の処理に加えて、音声出力の処理も含まれるため、使用者の利便性が向上する。
【００１２】
（７）本発明の他の形態によれば、画像を表示する画像表示部を有する画像表示装置が提供される。この画像表示装置は、上記形態の情報処理装置に含まれる前記シナリオ情報と前記機器情報とを取得する情報取得部と；画像シナリオ情報を実行する場合に、前記画像表示装置の性能の情報を表す表示装置情報と前記機器情報との比較を行ない、実行する前記シナリオ情報の前記所定の情報の提示または受付を、前記比較に基づいて変更する制御情報変更部と；を備える。この形態の画像表示装置によれば、他の情報処理装置によって生成されたシナリオ情報を実行する場合に、シナリオ情報を生成した情報処理装置が有する機器を画像表示装置が有していなくても、画像表示装置が有する機器に対応させてシナリオ情報を実行する。これにより、シナリオ情報を実行する画像表示装置のそれぞれに対応させてシナリオ情報が生成される必要がなく、シナリオ情報を生成する情報処理装置が限定されないため、シナリオ情報の生成や提供を行なう者の使い勝手が向上する。また、シナリオ情報を実行する画像表示装置の機器に応じてシナリオ情報が実行されるため、シナリオ情報を実行する使用者の利便性を向上させることができる。
【００１３】
（８）上記形態の画像表示装置において、前記画像表示部は、使用者の頭部に装着され、外景を透過可能であり；前記画像表示装置は、さらに；前記外景の一部を撮像する第２撮像部と；撮像された撮像画像から検出された特定対象の位置に対応付けて前記画像の表示を前記画像表示部に実行させる画像設定部と、を備えてもよい。この形態の画像表示装置によれば、現実の特定対象と所定の情報の提示として表示される表示画像とをより対応付けて使用者に視認させることができ、使用者の使い勝手が向上する。
【００１４】
上述した本発明の各形態の有する複数の構成要素はすべてが必須のものではなく、上述の課題の一部または全部を解決するため、あるいは、本明細書に記載された効果の一部または全部を達成するために、適宜、前記複数の構成要素の一部の構成要素について、その変更、削除、新たな他の構成要素との差し替え、限定内容の一部削除を行なうことが可能である。また、上述の課題の一部または全部を解決するため、あるいは、本明細書に記載された効果の一部または全部を達成するために、上述した本発明の一形態に含まれる技術的特徴の一部または全部を上述した本発明の他の形態に含まれる技術的特徴の一部または全部と組み合わせて、本発明の独立した一形態とすることも可能である。
【００１５】
記憶部は、例えば、シナリオ情報と、前記シナリオ情報に対応付けられた機器情報と、を記憶してもよい。シナリオ情報は、例えば、所定の条件が満たされることを他の情報処理装置が判定する場合に、前記他の情報処理装置が所定の情報の提示または受付を実行するように構成された情報を含んでもよい。機器情報は、前記他の情報処理装置が前記所定の条件が満たされることを判定すること、および、前記所定の情報の提示または受付をすることのうち少なくとも１つを実行する場合に求められる前記他の情報処理装置のハードウェアの仕様を表す情報を含んでもよい。こうした装置は、例えば、情報処理装置として実現できるが、情報処理装置以外の他の装置としても実現可能である。このような形態によれば、装置の操作性の向上および簡易化、装置の一体化や、装置を使用する使用者の利便性の向上、等の種々の課題の少なくとも１つを解決することができる。前述した情報処理装置の各形態の技術的特徴の一部または全部は、いずれもこの装置に適用することが可能である。
【００１６】
本発明は、情報処理装置以外の種々の形態で実現することも可能である。例えば、画像表示装置、頭部装着型表示装置、情報処理装置と画像表示装置と頭部装着型表示装置の制御方法、情報処理システム、画像表示システム、制御システム、および、情報処理装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号等の形態で実現できる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１実施形態における情報処理装置としての頭部装着型表示装置（ＨＭＤ）の外観構成を示す説明図である。
【図２】画像表示部のカメラが被写体であるペットボトルを撮像している状態のイメージ図である。
【図３】第１実施形態におけるＨＭＤの構成を機能的に示すブロック図である。
【図４】シナリオデータ管理テーブルが含むオブジェクト情報の一例を示す説明図である。
【図５】ＡＲシナリオ作成処理の流れを示すフローチャートである。
【図６】使用者がＡＲシナリオを作成するときのカメラの撮像画像を示す説明図である。
【図７】使用者がＡＲシナリオを作成するときのカメラの撮像画像を示す説明図である。
【図８】使用者がＡＲシナリオを作成するときのカメラの撮像画像を示す説明図である。
【図９】第２実施形態におけるＡＲシナリオを実行する装置としてのＨＭＤの構成を機能的に示すブロック図である。
【図１０】ＡＲシナリオ実行処理の流れを示すフローチャートである。
【図１１】情報テーブル確認処理の流れを示すフローチャートである。
【図１２】表示関連実行処理の流れを示すフローチャートである。
【図１３】物体認識処理の流れを示すフローチャートである。
【図１４】物体認識処理の流れを示すフローチャートである。
【図１５】ＵＩデータ出力処理の流れを示すフローチャートである。
【図１６】キャップ装着シナリオの流れを示すフローチャートである。
【図１７】撮像画像の中からペットボトルとキャップとが検出された場合に使用者が視認する視野を示す説明図である。
【図１８】検出されたペットボトルやキャップに対応付けられている画像が画像表示部に表示された場合に使用者が視認する視野を示す説明図である。
【図１９】キャップを回転させるための画像が画像表示部に表示された場合に使用者が視認する視野を示す説明図である。
【図２０】文字画像が画像表示部に表示される表示関連実行処理が行なわれた場合に使用者が視認する視野を示す説明図である。
【図２１】第３実施形態におけるＡＲシナリオ実行処理の流れを示すフローチャートである。
【図２２】オブジェクト実行処理の流れを示すフローチャートである。
【図２３】第３実施形態のオブジェクト実行処理における各処理の内容を示す一覧表である。
【図２４】第１条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。
【図２５】第１条件が検出された場合に使用者が視認する視野を示す説明図である。
【図２６】第２条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。
【図２７】第２条件が検出された場合に使用者が視認する視野を示す説明図である。
【図２８】第３条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。
【図２９】第３条件が検出された場合に使用者が視認する視野を示す説明図である。
【図３０】第４条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。
【図３１】第４条件が検出された場合に使用者が視認する視野を示す説明図である。
【図３２】第４条件が検出された後に文字画像が表示された場合に使用者が視認する視野を示す説明図である。
【図３３】第４実施形態におけるＡＲシナリオ作成処理の流れを示すフローチャートである。
【図３４】変形例におけるＨＭＤの外観構成を示す説明図である。
【発明を実施するための形態】
【００１８】
次に、本発明の実施の形態を実施形態に基づいて以下の順序で説明する。
Ａ．第１実施形態：
Ａ−１．情報処理装置の構成：
Ａ−２．ＡＲシナリオ作成処理：
Ｂ．第２実施形態：
Ｂ−１．ＡＲシナリオを実行する装置の構成：
Ｂ−２．ＡＲシナリオ実行処理：
Ｃ．第３実施形態：
Ｄ．第４実施形態：
Ｅ．変形例：
【００１９】
Ａ．第１実施形態：
Ａ−１．情報処理装置の構成：
図１は、本発明の第１実施形態における情報処理装置としての頭部装着型表示装置１００（ＨＭＤ１００）の外観構成を示す説明図である。ＨＭＤ１００は、頭部に装着する表示装置であり、ヘッドマウントディスプレイ（Head Mounted Display、ＨＭＤ）とも呼ばれる。本実施形態のＨＭＤ１００は、使用者が、虚像を視認すると同時に外景も直接視認可能な光学透過型の頭部装着型表示装置である。本実施形態のＨＭＤ１００は、請求項における情報処理装置に相当する。
【００２０】
ＨＭＤ１００は、使用者の頭部に装着された状態において使用者に虚像を視認させる画像表示部２０と、画像表示部２０を制御する制御部１０（コントローラー１０）と、を備えている。
【００２１】
画像表示部２０は、使用者の頭部に装着される装着体であり、本実施形態では眼鏡形状を有している。画像表示部２０は、右保持部２１と、右表示駆動部２２と、左保持部２３と、左表示駆動部２４と、右光学像表示部２６と、左光学像表示部２８と、カメラ６１と、赤外線ＬＥＤ６４と、ＴＯＦセンサー６３と、マイク６９と、を含んでいる。右光学像表示部２６および左光学像表示部２８は、それぞれ、使用者が画像表示部２０を装着した際に使用者の右および左の眼前に位置するように配置されている。右光学像表示部２６の一端と左光学像表示部２８の一端とは、使用者が画像表示部２０を装着した際の使用者の眉間に対応する位置で、互いに接続されている。
【００２２】
右保持部２１は、右光学像表示部２６の他端である端部ＥＲから、使用者が画像表示部２０を装着した際の使用者の側頭部に対応する位置にかけて、延伸して設けられた部材である。同様に、左保持部２３は、左光学像表示部２８の他端である端部ＥＬから、使用者が画像表示部２０を装着した際の使用者の側頭部に対応する位置にかけて、延伸して設けられた部材である。右保持部２１および左保持部２３は、眼鏡のテンプル（つる）のようにして、使用者の頭部に画像表示部２０を保持する。
【００２３】
右表示駆動部２２と左表示駆動部２４とは、使用者が画像表示部２０を装着した際の使用者の頭部に対向する側に配置されている。なお、以降では、右保持部２１および左保持部２３を総称して単に「保持部」とも呼び、右表示駆動部２２および左表示駆動部２４を総称して単に「表示駆動部」とも呼び、右光学像表示部２６および左光学像表示部２８を総称して単に「光学像表示部」とも呼ぶ。
【００２４】
表示駆動部２２，２４は、液晶ディスプレイ２４１，２４２（Liquid Crystal Display、以下「ＬＣＤ２４１，２４２」とも呼ぶ）や投写光学系２５１，２５２等を含む（図９参照）。表示駆動部２２，２４の構成の詳細は後述する。光学部材としての光学像表示部２６，２８は、導光板２６１，２６２（図２参照）と調光板とを含んでいる。導光板２６１，２６２は、光透過性の樹脂材料等によって形成され、表示駆動部２２，２４から出力された画像光を使用者の眼に導く。調光板は、薄板状の光学素子であり、使用者の眼の側とは反対の側である画像表示部２０の表側を覆うように配置されている。調光板は、導光板２６１，２６２を保護し、導光板２６１，２６２の損傷や汚れの付着等を抑制する。また、調光板の光透過率を調整することによって、使用者の眼に入る外光量を調整して虚像の視認のしやすさを調整できる。なお、調光板は省略可能である。
【００２５】
カメラ６１は、使用者が画像表示部２０を装着した際の使用者の眉間に対応する位置に配置されている。そのため、カメラ６１は、使用者が画像表示部２０を頭部に装着した状態において、使用者の視線方向の外部の景色である外景を撮像し、撮像画像を取得する。カメラ６１は、撮像した外景のＲ成分とＧ成分とＢ成分とのそれぞれのデータとしてのＲＧＢデータを後述する制御部１０のセンサー制御部１４５に送信する。詳細については後述するが、取得された撮像画像の中の特定の対象を元として、設定された順序に沿って静止画像や動画の表示や音声出力を含むＡＲ（Augmented  Reality）シナリオが生成される。生成されたＡＲシナリオは、本実施形態のＨＭＤ１００や撮像部を有するＨＭＤ１００と異なる画像表示装置などで実行されると、ＡＲシナリオを実行する画像表示装置の撮像部が撮像した撮像画像の中から検出された対象物に対応付けて、本実施形態のＨＭＤ１００が生成したＡＲシナリオが再生される。本実施形態のカメラ６１は、単眼カメラであるが、ステレオカメラであってもよい。また、複数のカメラ６１によって複数の撮像画像が取得されてもよい。カメラ６１は、請求項における第１撮像部に相当する。ＡＲシナリオは、請求項におけるシナリオ情報に相当する。
【００２６】
赤外線ＬＥＤ６４およびＴＯＦセンサー６３は、カメラ６１と隣り合う位置である使用者が画像表示部２０を装着した際の使用者の眉間に対応する位置に配置されている。赤外線ＬＥＤ６４は、赤外線を発光する発光ダイオード（Light Emitting Diode ，LED）である。ＴＯＦセンサー６３は、赤外線ＬＥＤ６４が発光した赤外線が特定の対象に反射した反射光を検出する。なお、赤外線ＬＥＤ６４とＴＯＦセンサー６３とを合わせて、距離センサー６５とも呼ぶ。距離センサー６５は、物体の表面で反射した赤外線反射光の無数の点のデータを制御部１０のセンサー制御部１４５に送信する。なお、他の実施形態では、複数の距離センサー６５が用いられてもよいし、本実施形態とは異なる方法によってカメラ６１の撮像範囲の中の被写体までの距離が測定されてもよい。なお、以降では、測定された距離をＤ成分として、ＲＧＢデータに合わせて、ＲＧＢＤデータともいう。
【００２７】
図２は、画像表示部２０のカメラ６１が被写体であるペットボトルＰＴを撮像している状態のイメージ図である。図２には、画像表示部２０を頭部に装着した使用者ＵＳが、キャップＣＰが装着されていないペットボトルＰＴに、右手に保持したキャップＣＰを装着させようとしている状態が示されている。この状態では、画像表示部２０のカメラ６１は、カメラ６１の画角θの範囲の外景を撮像できる。
【００２８】
マイク６９は、外部の音声を取得する装置である。マイク６９は、使用者が画像表示部２０を装着した際の右表示駆動部２２における使用者と対向する側の反対側（外側）に形成されている。
【００２９】
画像表示部２０は、さらに、画像表示部２０を制御部１０に接続するための接続部４０を有している。接続部４０は、制御部１０に接続される本体コード４８と、右コード４２と、左コード４４と、連結部材４６と、を含んでいる。右コード４２と左コード４４とは、本体コード４８が２本に分岐したコードである。右コード４２は、右保持部２１の延伸方向の先端部ＡＰから右保持部２１の筐体内に挿入され、右表示駆動部２２に接続されている。同様に、左コード４４は、左保持部２３の延伸方向の先端部ＡＰから左保持部２３の筐体内に挿入され、左表示駆動部２４に接続されている。連結部材４６は、本体コード４８と、右コード４２および左コード４４と、の分岐点に設けられ、イヤホンプラグ３０を接続するためのジャックを有している。イヤホンプラグ３０からは、右イヤホン３２および左イヤホン３４が延伸している。
【００３０】
画像表示部２０と制御部１０とは、接続部４０を介して各種信号の伝送を行なう。本体コード４８における連結部材４６とは反対側の端部と、制御部１０と、のそれぞれには、互いに嵌合するコネクター（図示しない）が設けられている。本体コード４８のコネクターと制御部１０のコネクターとの嵌合／嵌合解除により、制御部１０と画像表示部２０とが接続されたり切り離されたりする。右コード４２と、左コード４４と、本体コード４８とには、例えば、金属ケーブルや光ファイバーを採用できる。
【００３１】
制御部１０は、ＨＭＤ１００を制御するための装置である。制御部１０は、決定キー１１と、点灯部１２と、表示切替キー１３と、トラックパッド１４と、輝度切替キー１５と、方向キー１６と、メニューキー１７と、電源スイッチ１８と、を含んでいる。決定キー１１は、押下操作を検出して、制御部１０で操作された内容を決定する信号を出力する。点灯部１２は、ＨＭＤ１００の動作状態を、その発光状態によって通知する。ＨＭＤ１００の動作状態としては、例えば、電源のＯＮ／ＯＦＦ等がある。点灯部１２としては、例えば、ＬＥＤが用いられる。表示切替キー１３は、押下操作を検出して、例えば、コンテンツ動画の表示モードを３Ｄと２Ｄとに切り替える信号を出力する。トラックパッド１４は、トラックパッド１４の操作面上での使用者の指の操作を検出して、検出内容に応じた信号を出力する。トラックパッド１４としては、静電式や圧力検出式、光学式といった種々のトラックパッドを採用できる。輝度切替キー１５は、押下操作を検出して、画像表示部２０の輝度を増減する信号を出力する。方向キー１６は、上下左右方向に対応するキーへの押下操作を検出して、検出内容に応じた信号を出力する。電源スイッチ１８は、スイッチのスライド操作を検出することで、ＨＭＤ１００の電源投入状態を切り替える。
【００３２】
図３は、第１実施形態におけるＨＭＤ１００の構成を機能的に示すブロック図である。図３に示すように、画像表示部２０は、カメラ６１と、距離センサー６５としてのＴＯＦセンサー６３および赤外線ＬＥＤ６４と、マイク６９と、を備えている。なお、図３では、画像表示部２０によって使用者に視認させる虚像を生成するための機能およびＣＰＵ１４０における虚像の生成に関連する機能の一部については、図示を省略している。以降では、画像表示部２０が虚像を生成することを、単に、画像を表示するともいい、生成される虚像を、単に、表示画像ともいう。
【００３３】
制御部１０は、ＣＰＵ１４０と、操作部１３５と、インターフェイス１８０と、データ記憶部１２０と、電源１３０と、ＲＯＭ１２１と、ＲＡＭ１２２と、を有している。操作部１３５は、使用者による操作を受け付け、決定キー１１、表示切替キー１３、トラックパッド１４、輝度切替キー１５、方向キー１６、メニューキー１７、電源スイッチ１８、から構成されている。インターフェイス１８０は、制御部１０に対して、コンテンツの供給元となる種々の外部機器ＯＡを接続するためのインターフェイスである。外部機器ＯＡとしては、例えば、パーソナルコンピューター（ＰＣ）や携帯電話端末、ゲーム端末等、がある。インターフェイス１８０としては、例えば、ＵＳＢインターフェイス、マイクロＵＳＢインターフェイス、メモリーカード用インターフェイス等、を用いることができる。
【００３４】
電源１３０は、ＨＭＤ１００の各部に電力を供給する。電源１３０としては、例えば二次電池を用いることができる。ＲＯＭ１２１は、種々のコンピュータープログラムを格納している。ＣＰＵ１４０は、ＲＯＭ１２１に格納されているコンピュータープログラムを読み出し、ＲＡＭ１２２に書き込みを実行することにより、種々のコンピュータープログラムを実行する。ＣＰＵ１４０は、ＡＲシナリオ制御部１４１と、物体トラッキング部１４２と、物体認識部１４３と、３Ｄモデル生成部１４４と、センサー制御部１４５と、ＵＩ制御部１４６と、ＡＲシナリオ操作設定部１４７と、付加情報取得部１４８と、不要画像消去部１４９と、ＡＲ画像抽出部１５１と、を有している。
【００３５】
センサー制御部１４５は、カメラ６１から送信された撮像画像のＲＧＢデータと、距離センサー６５から送信された撮像範囲の無数の点のデータと、を取得する。センサー制御部１４５は、カメラ６１および距離センサー６５から取得したデータを、物体トラッキング部１４２と三次元モデル生成部１４４（３Ｄモデル生成部１４４）とのそれぞれに送信する。また、センサー制御部１４５は、ＵＩ制御部１４６から送信された制御信号に基づいて、カメラ６１および距離センサー６５を制御する。
【００３６】
３Ｄモデル生成部１４４は、ＡＲシナリオ制御部１４１から送信される制御信号に基づいて、センサー制御部１４５から送信された撮像画像のＲＧＢデータと距離センサー６５の距離データと用いて、撮像範囲の中の対象について、三次元モデル（３Ｄモデル）を生成する。３Ｄモデル生成部１４４は、距離センサー６５によって取得された距離データに基づいて、撮像範囲の物体の形状を取得し、取得した物体の形状における同一の境界を検出して、３Ｄモデルを生成する。また、３Ｄモデル生成部１４４は、撮像画像のＲＧＢデータに基づいて、生成した３Ｄモデルに着色する。３Ｄモデル生成部１４４は、生成した着色済みの３Ｄモデルと、検出した同一の境界のデータと、を物体認識部１４３へと送信する。
【００３７】
物体認識部１４３は、ＡＲシナリオ制御部１４１から送信される制御信号に基づいて、３Ｄモデル生成部１４４によって生成された３Ｄモデルおよび検出された同一の境界のデータを用いて、連続している境界のデータを有する３Ｄモデルを１つの物体として認識する。換言すれば、物体認識部１４３は、連続していない境界のデータに基づいて、３Ｄモデルを切り離して、１つ１つの物体として認識する。また、物体認識部１４３は、ＡＲシナリオ制御部１４１を介して、後述するデータ記憶部１２０に記憶された人体のパーツ（例えば、手や足）の情報を取得する。物体認識部１４３は、認識した物体に対して、取得した人体のパーツの情報を基にパターンマッチングや統計的識別法を用いることで、３Ｄモデルの中から人体を抽出する。
【００３８】
物体トラッキング部１４２は、ＡＲシナリオ制御部１４１から送信される制御信号に基づいて、認識された物体の１つ１つの内、カメラ６１が撮像している間に動いている物体の動きを特定する。物体トラッキング部１４２は、動いている物体（移動物体）と動いていない物体（静止物体）とを特定する情報を、ＵＩ制御部１４６およびＡＲシナリオ制御部１４１へと送信する。
【００３９】
ＵＩ制御部１４６は、マイク６９が取得した音声や操作部１３５が受け付けた操作に基づいて、画像表示部２０、イヤホン３２，３４、および、ＣＰＵ１４０に含まれる各部へと制御信号を送信する。例えば、ＵＩ制御部１４６は、操作部１３５が受け付けた操作に基づいて、カメラ６１および距離センサー６５を制御する制御信号をセンサー制御部１４５へと送信する。また、物体トラッキング部１４２から送信された特定した物体について、物体のそれぞれを使用者が選択して操作できるように、物体のそれぞれを画像表示部２０に表示するための画像信号を画像表示部２０へと送信する。また、ＵＩ制御部１４６は、後述するＡＲシナリオ作成処理において、マイク６９によって取得された音声を自動的に文字画像へと変換するテキスト変換部１５２を有している。テキスト変換部１５２は、取得された音声を音声認識して、対応する文字画像へと変換する。
【００４０】
ＡＲシナリオ操作設定部１４７は、ＨＭＤ１００によって作成されたＡＲシナリオが操作する状況について設定する。なお、ＡＲシナリオには、使用者によってＡＲシナリオに挿入された音声や文字画像などが含まれる。ＡＲシナリオ操作設定部１４７は、例えば、生成された動画に対応付けられている対象物が、ＡＲシナリオを実行可能な装置が撮像した撮像範囲の中から、画像認識によって現実の対象として検出された場合などに、装置がＡＲシナリオを実行できるように設定する。また、ＡＲシナリオ操作設定部１４７は、ＡＲシナリオを実行可能な装置が撮像した撮像範囲において、予め設定された特定の物体が検出されることにより、実行されるＡＲシナリオにおける複数の分岐などを設定する。なお、ＡＲシナリオが実行されている場合に、撮像範囲の中から検出された現実の対象に対応付けられて表示され、実行されているＡＲシナリオに含まれる画像をＡＲ画像とも呼ぶ。
【００４１】
付加情報取得部１４８は、ＵＩ制御部１４６から送信されるユーザーインターフェース（ＵＩ）としての操作部１３５が受け付けた操作信号やマイク６９が取得した音声と、ＡＲシナリオ制御部１４１から送信される制御信号とに基づいて、ＡＲシナリオに付加する情報を取得する。ＡＲシナリオに付加される情報としては、例えば、操作部１３５が受け付けた操作によって設定される画像の拡大または縮小といった表示方法の設定や、マイク６９が取得した音声が変換されたテキストの挿入などがある。
【００４２】
ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成するために、ＣＰＵ１４０の各部を制御する。ＡＲシナリオ制御部１４１は、物体トラッキング部１４２によって特定された移動物体および静止物体と、ＵＩが受け付けた操作と、に基づいて、ＡＲ画像として生成される物体とＡＲ画像として生成されない物体と区別し、区別した結果を不要画像消去部１４９およびＡＲ画像抽出部１５１へと送信する。また、ＡＲシナリオ制御部１４１は、データ記憶部１２０と各種データを送受信することにより、既に作成されたＡＲシナリオを読み込んで編集したり、新規で作成したＡＲシナリオをデータ記憶部１２０に記憶させたりする。
【００４３】
不要画像消去部１４９は、ＡＲシナリオ制御部１４１およびＡＲシナリオ操作設定部１４７から送信された制御信号に基づいて、特定された物体の内、ＡＲ画像として生成されない物体の画像を消去する。換言すれば、不要画像消去部１４９は、撮像画像の中から、ＡＲ画像として生成する物体を選択するともいえる。不要画像消去部１４９は、不要な物体として消去した画像の画像信号をＡＲシナリオ制御部１４１へと送信する。本実施形態では、操作部１３５が所定の操作を受け付けない場合には、不要画像消去部１４９は、撮像された人間の体を不要な物体として自動的に消去する。なお、他の実施形態では、不要画像消去部１４９は、自動的に人間の体などを消去する必要はない。
【００４４】
ＡＲ画像抽出部１５１は、ＡＲシナリオ制御部１４１から送信された制御信号に基づいて、ＡＲ画像としてＡＲシナリオに表示させる物体を抽出して、画像を生成する。ＡＲ画像抽出部１５１は、距離センサー６５によって取得された距離データに基づいて、ＡＲ画像を三次元の画像として生成する。また、ＡＲ画像抽出部１５１は、カメラ６１によって取得されたＲＧＢデータに基づいて、生成したＡＲ画像に着色を行なう。ＡＲ画像抽出部１５１は、抽出したＡＲ画像として生成する物体を特定する信号をＡＲシナリオ制御部１４１へと送信する。また、ＡＲ画像抽出部１５１は、操作部１３５を介して所定の操作を受け付けることにより、データ記憶部１２０に記憶された特定の物体を、自動的にＡＲ画像として生成する物体として抽出できる。抽出される物体としては、例えば、ＣＡＤ（computer  aided  design）によって作成された図面によって特定される物体などがある。
【００４５】
ＡＲシナリオ制御部１４１は、不要画像消去部１４９から送信された不要な物体として消去された画像の画像信号と、ＡＲ画像抽出部１５１によって抽出されたＡＲ画像の画像信号と、を受信して、ＡＲシナリオを作成する。ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成する場合に、ＡＲシナリオを作成した情報処理装置としてのＨＭＤ１００の各種機器の性能を表す機器情報テーブルＴＢ１を作成する。機器情報テーブルＴＢ１には、ＨＭＤ１００が備える各種機器の性能として、カメラ６１の性能としての解像度や画角、画像表示部２０の表示領域や解像度、ＣＰＵ１４０の処理能力、距離センサー６５の画角や測定距離の精度、ＲＯＭ１２１およびＲＡＭ１２２の能力などが含まれている。
【００４６】
また、ＡＲシナリオ制御部１４１は、ＡＲシナリオが実行されるときのＡＲ画像の表示などの実行される各種処理のトリガーとなる条件と、条件の検出に応じて定まる順序に沿って実行されるＡＲ画像の表示などのオブジェクト情報と、を含むシナリオデータ管理テーブルＴＢ２も作成する。オブジェクト情報は、実行される処理のデータ（例えば、ＡＲ画像）と、データを出力させる処理を実行するための制御に必要な制御情報と、を含んでいる。言い換えると、ＡＲシナリオは、実行される各種処理の順序を実現するための条件と、オブジェクト情報とを含むシナリオデータ管理テーブルＴＢ２を有している。ＡＲシナリオ制御部１４１は、シナリオデータ管理テーブルＴＢ２を有するＡＲシナリオが実行された場合に、ＡＲシナリオを実行する装置が有する機器の性能に対応させてシナリオデータ管理テーブルＴＢ２に含まれる制御情報を変更できるように、機器情報テーブルＴＢ１を当該制御情報に対応付けて作成する。なお、本明細書におけるオブジェクト情報が含む出力されるデータとは、画像の表示や音声の出力などに加え、音声の入力を受け付ける状態に変化させるといった入力を待機する状態も含む。
【００４７】
図４は、シナリオデータ管理テーブルＴＢ２が含むオブジェクト情報の一例を示す説明図である。図４に示すように、オブジェクト情報は、ＡＲシナリオが実行されたときの後述する処理である表示関連実行処理（図４の表示関連）、物体認識処理（図４の物体認識）、ＵＩデータ出力処理（図４のＵＩ）に区分されている。オブジェクト情報では、出力されるデータと当該データを出力するための制御情報とが対応付けられている。本実施形態のオブジェクト情報では、ＡＲシナリオを実行する装置の性能に関係する情報が制御情報として記憶されている。例えば、１つのオブジェクト情報としては、オブジェクトの名称がキャップであり、種別が３Ｄモデルであり、当該制御情報としての特徴点の座標が（Ｘ１，Ｙ１，Ｚ１）として特定され、画像として表示される場合に特徴点の座標が（Ｘ２，Ｙ２，Ｚ２）に設定されて表示され、画像として表示される際の表示領域のサイズが表示領域全体の大きさを１としたときにＳ１（＜１）倍の大きさとして表示される。この制御情報に対応した３Ｄモデルの画像データは、データの欄に示されたキャップＣＰである。この制御情報は、表示関連および物体認識の対象として記憶されている。なお、図４に示すデータの内の「ＣＰ」については、説明のために便宜上示した記号であり、データとしては記憶されていない。なお、本実施形態では、制御情報とデータとが対応付けて記憶されているが、他の実施形態では、制御情報とデータとは別々の情報として記憶されていてもよい。また、本実施形態では、特徴点の座標として、ＣＧ（computer graphics）空間（モデル空間）の座標として記憶されているが、他の実施形態では、それ以外の空間の座標として記憶されていてもよいし、２次元の座標として記憶されていてもよい。また、機器情報テーブルＴＢ１は、ＣＧ空間の座標における１ピクセルと実空間の座標における単位面積との対応情報を有している。機器情報テーブルＴＢ１が当該対応情報を有することで、実空間での１ミリメートル（ｍｍ）当たりのピクセル数、または、１ピクセル当たりの実空間での長さの関係を対応付けることができる。
【００４８】
図４に示す表示関連の内のオブジェクト名称が表示ナビ１では、種別が文字画像であるため、ＡＲシナリオが実行されているときにデータの「キャップを・・・」の文字画像が表示される。また、図４に示す物体認識は、撮像範囲から検出された対象を認識するデータについてであり、オブジェクト名称がペットボトルの例では、３ＤモデルとしてのペットボトルＰＴが撮像範囲から検出されると物体認識が開始される。特徴点としての座標（Ｘ４，Ｙ４，Ｚ４）の位置を基準としてペットボトルＰＴの検出が判断される。ペットボトルＰＴの変形がないため、制御情報の物体形状変化として、固定が記憶されている。また、許容認識精度としてペットボトルＰＴを検出する際の誤差がＳ４（ｍｍ）まで許容される。撮像範囲からペットボトルＰＴの検出を終了するか否かとして、終了時の状態であるキャップＣＰ装着後が記憶されている。
【００４９】
図４に示すＵＩの内のオブジェクト名称が音声ナビ２では、データとして記憶された「キャップをＡＲ画像の・・・」が種別として記憶された音声として主力される。当該音声が録音された時間または再生される時間としての録音時間がＳ５（ｓ）として記憶されている。また、音声ナビ２には、代替テキストへのリンクが有りとして記憶されているため、ＡＲシナリオを実行している装置が音声を出力する機器を備えていない場合に、音声として出力される予定のデータが文字画像として表示される。図４に示すＵＩの内のオブジェクト名称が入力確認１では、種別が音声認識であるため、ＡＲシナリオが実行されているときにマイクなどの音声取得が可能な機器によって、データとして記憶された「はい」の音声を取得する。また、入力確認１では、入力受付へのリンクが有りとして記憶されているため、ＡＲシナリオを実行している装置が音声を取得する機器を備えていない場合に、音声として入力される予定のデータをキーボードやマウスといった他のＵＩからの操作をとして受け付けることもできる。
【００５０】
ＡＲシナリオ制御部１４１は、作成した機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを関連付けて、データ記憶部１２０に記憶させる。ＡＲシナリオ制御部１４１が機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを関連付けて記憶することで、ＡＲシナリオが実行される装置の性能と、ＡＲシナリオを作成した情報処理装置との性能と、に違いがある場合でも、所定の順序に沿って、不具合を抑制したＡＲシナリオが実行される。なお、ＡＲシナリオ制御部１４１は、請求項における生成部に相当し、データ記憶部１２０は、請求項における記憶部に相当する。また、本実施形態では、ＡＲシナリオは、画像シナリオである。
【００５１】
Ａ−２．ＡＲシナリオ作成処理：
図５は、ＡＲシナリオ作成処理の流れを示すフローチャートである。ＡＲシナリオ作成処理は、カメラ６１を有する情報処理装置としてのＨＭＤ１００によってＡＲシナリオが作成される処理である。ＨＭＤ１００のＡＲシナリオ制御部１４１は、機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを対応付けてデータ記憶部１２０に記憶させて、ＡＲシナリオを作成する。
【００５２】
ＡＲシナリオ作成処理では、初めに、ＡＲシナリオ制御部１４１がＡＲシナリオを作成する情報処理装置としてのＨＭＤ１００の機器情報テーブルＴＢ１を作成する（ステップＳ１１）。ＡＲシナリオ制御部１４１は、ＨＭＤ１００におけるカメラ６１の性能、距離センサー６５の性能、マイク６９の性能、ＲＯＭ１２１およびＲＡＭ１２２の性能、および、ＨＭＤ１００が対応しているＵＩについての機器情報テーブルＴＢ１を作成する。これら各種機器の性能として、例えば、カメラ６１の解像度やカメラ６１の画角、または内部パラメーターなどが挙げられ、距離センサー６５の撮像範囲の被写体の対象までの距離として測定した深度の精度などが挙げられる。なお、カメラ６１の内部パラメーターとは、カメラ６１に含まれるイメージセンサーの１画素あたりの横方向・縦方向のそれぞれの長さ（または、それぞれの方向の画素密度）とカメラ６１の焦点距離とに基づいて画素数で表現された焦点距離、および、カメラ６１の光軸とイメージセンサーとの交点を原点とするときのイメージセンサーの中心座標である。
【００５３】
ＡＲシナリオ制御部１４１は、機器情報テーブルＴＢ１を作成すると、ＡＲシナリオを作成するためのカメラ６１を用いた外景の撮像およびマイク６９を用いた外部音声の取得である録音を開始する（ステップＳ１３）。本実施形態では、図２に示したように、ＡＲシナリオ制御部１４１は、ＨＭＤ１００を装着した使用者ＵＳが、キャップＣＰが装着されていないペットボトルＰＴにキャップＣＰを装着させるためのＡＲシナリオを作成する。
【００５４】
図６ないし図８は、使用者ＵＳがＡＲシナリオを作成するときのカメラ６１の撮像画像ＩＭＧを示す説明図である。図６から図８までの各図には、図２に示すように、使用者ＵＳがペットボトルＰＴにキャップＣＰを装着させるときに、装着したＨＭＤ１００のカメラ６１が撮像した動画の内の撮像画像ＩＭＧが示されている。本実施形態では、画像表示部２０を装着した使用者ＵＳのカメラ６１の撮像画像ＩＭＧが使用者ＵＳの視野と同じ範囲になるように、カメラ６１の画角が設定されている。
【００５５】
図６には、互いに装着されていないペットボトルＰＴとキャップＣＰとが撮像された撮像画像ＩＭＧが示されている。本実施形態では、使用者ＵＳがペットボトルＰＴに装着されていないキャップＣＰを、ペットボトルＰＴに装着するＡＲシナリオが作成される。
【００５６】
図７には、キャップＣＰをペットボトルＰＴに装着するために、使用者ＵＳが、キャップＣＰを右手ＲＨで保持して、ペットボトルＰＴにおけるキャップＣＰを装着させる場所である開口部ＰＴａに移動させようとしている途中の状態の撮像画像ＩＭＧが示されている。また、本実施形態では、図７に示すキャップＣＰをペットボトルＰＴの開口部ＰＴａに移動させるときに、使用者ＵＳは、「キャップを開口部の位置に移動させてください」と発言する。そのため、ＨＭＤ１００のマイク６９は、使用者ＵＳの発言を外部音声として取得する。
【００５７】
図８には、使用者ＵＳが、キャップＣＰをペットボトルＰＴの開口部ＰＴａに移動させた後に、キャップＣＰをペットボトルＰＴの開口部ＰＴａの中心軸を中心として、上面から見たときに時計回り（以降では、単に、「時計回り」とも言う）の方向へと回転させているときの状態の撮像画像ＩＭＧが示されている。
【００５８】
図５のステップＳ１３の処理が行なわれた後、操作部１３５は、撮像および録音を終了する所定の操作の受付を待機する（ステップＳ１５）。撮像および録音を終了する所定の操作が受け付けられない場合には（ステップＳ１５：ＮＯ）、ＡＲシナリオ制御部１４１は、引き続き、ＡＲシナリオを作成するための撮像および録音を実行し、所定の操作の受付を待機する（ステップＳ１３）。ステップＳ１５の処理において、使用者が、ペットボトルＰＴにキャップＣＰを装着させ、さらにキャップＣＰを回転させてペットボトルＰＴにキャップＣＰを固定させた後に、操作部１３５が所定の操作を受け付けると（ステップＳ１５：ＹＥＳ）、ＡＲシナリオ制御部１４１は、撮像および録音を終了する。
【００５９】
ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成するための撮像および録音を終了すると、撮像画像に基づいて、表示関連のシナリオデータ管理テーブルＴＢ２を作成する（ステップＳ１７）。本実施形態では、ＡＲシナリオ制御部１４１は、撮像した被写体や録音によって取得した音声を時系列の経過に沿って、被写体や音声のそれぞれに対して、図４に示すデータを作成する。例えば、キャップＣＰの動きについて、不要画像消去部１４９は、不要な物体として認識した使用者ＵＳの右手ＲＨを撮像画像から削除する。その後、ＡＲ画像抽出部１５１は、右手ＲＨが撮像されていない状態のキャップＣＰの画像に基づいて、右手ＲＨに保持されて撮像されていないキャップＣＰの部分の画像を作成する。ＡＲシナリオ制御部１４１は、撮像されたキャップＣＰに対してエッジ検出などを行なうことで、自動的に図４に示す特徴点、表示位置、表示領域のサイズを設定する。操作部１３５が所定の操作を受け付けることで、ＡＲシナリオ制御部１４１は、特徴点、表示位置、表示領域のサイズを変更できる。また、ＡＲシナリオ制御部１４１は、作成したキャップＣＰのデータに対して、例えば、不要だと使用者に判断される特定のマークなどの画像を削除したり、付加することもできる。また、ＡＲシナリオ制御部１４１は、各処理の前後関係を変更することで、ＡＲシナリオが実行される場合の順序を変更できる。
【００６０】
図５のステップＳ１７の処理の後、ＡＲシナリオ制御部１４１は、撮像画像に含まれる被写体に対しての全ての表示関連のシナリオデータ管理テーブルＴＢ２を作成したか否かを判定する（ステップＳ１９）。ＡＲシナリオ制御部１４１は、全ての表示関連のシナリオデータ管理テーブルＴＢ２を作成していないと判定した場合には（ステップＳ１９：ＮＯ）、引き続き、まだ作成していない表示関連のシナリオデータ管理テーブルＴＢ２を作成する。換言すると、ＡＲシナリオ制御部１４１は、作成していない表示関連のデータがある場合には、当該データについてのシナリオデータ管理テーブルＴＢ２を作成する。本実施形態では、ＡＲシナリオ制御部１４１は、図４に示すオブジェクト名称が「キャップ」のシナリオデータ管理テーブルＴＢ２を作成した後に、まだシナリオデータ管理テーブルＴＢ２として作成されていない図４に示す「表示ナビ１」の表示関連のシナリオデータ管理テーブルＴＢ２を作成する。ＡＲシナリオ制御部１４１は、録音された「キャップを開口部の位置に移動させてください」の音声を基として、表示画像としての図４に示すデータを作成する。本実施形態では、操作部１３５が使用者から操作を受け付けることで、ＡＲシナリオ制御部１４１は、作成するデータの内の一部である「開口部」に対して、撮像されたキャップＣＰの画像を置換した文字画像を作成する。
【００６１】
図５のステップＳ１９の処理において、ＡＲシナリオ制御部１４１は、全ての表示関連のシナリオデータ管理テーブルＴＢ２を作成したと判定した場合には（ステップＳ１９：ＹＥＳ）、次に、物体認識のシナリオデータ管理テーブルＴＢ２を作成する（ステップＳ２１）。本実施形態では、ＡＲシナリオ制御部１４１は、静止している被写体であるペットボトルＰＴを、ＡＲシナリオが実行されているときの撮像画像から検出して物体認識する対象としてのシナリオデータ管理テーブルＴＢ２のオブジェクト情報を作成する。操作部１３５が所定の操作を受け付けることにより、ＡＲシナリオ制御部１４１は、カメラ６１の撮像画像の中から、物体認識する対象を選択する。物体認識部１４３によって１つ１つの物体が切り離されて認識されているため、操作部１３５が操作されて、撮像画像の中のペットボトルＰＴの一部が選択されると、ＡＲシナリオ制御部１４１は、ペットボトルＰＴ全体を物体認識する対象として選択する。ＡＲシナリオ制御部１４１は、カメラ６１によって撮像されたペットボトルＰＴに形状変化がなかったため、自動的に、図４に示す物体形状変化を「固定」として設定する。また、ＡＲシナリオ制御部１４１は、図４に示す許容認識精度として、撮像されたペットボトルＰＴに大きさにと比例した寸法を自動的に設定する。また、本実施形態では、キャップＣＰがペットボトルＰＴの開口部ＰＴａに装着されて時計回りに回された後に撮像が終了しているため、ＡＲシナリオ制御部１４１は、操作部１３５が所定の操作を受け付けることで、図４に示す終了時の状態を、「キャップ装着後」として設定する。なお、キャップＣＰとペットボトルＰＴとは、請求項における特定対象に相当する。
【００６２】
図５のステップＳ２１の処理の後、ＡＲシナリオ制御部１４１は、全ての物体認識のシナリオデータ管理テーブルＴＢ２を作成したか否かを判定する（ステップＳ２３）。ＡＲシナリオ制御部１４１は、全ての物体認識のシナリオデータ管理テーブルＴＢ２を作成していないと判定した場合には（ステップＳ２３：ＮＯ）、引き続き、残りの物体認識のシナリオデータ管理テーブルＴＢ２を作成する（ステップＳ２１）。
【００６３】
ステップＳ２３の処理において、ＡＲシナリオ制御部１４１は、全ての物体認識のシナリオデータ管理テーブルＴＢ２を作成したと判定した場合には（ステップＳ２３：ＹＥＳ）、次に、ＵＩのシナリオデータ管理テーブルＴＢ２を作成する（ステップＳ２５）。本実施形態では、作成する物体認識のシナリオデータ管理テーブルＴＢ２は、図４に示すオブジェクト情報が「キャップＣＰ」のデータおよび「ペットボトル」のデータのみであり、他に作成するシナリオデータ管理テーブルＴＢ２がないため、ＡＲシナリオ制御部１４１は、ステップＳ２５の処理を行なう。ＡＲシナリオ制御部１４１は、図４に示す「音声ナビ２」を、ＵＩのシナリオデータ管理テーブルＴＢ２のオブジェクト情報として作成する。ＡＲシナリオ制御部１４１は、録音された「キャップを開口部の位置に移動させてください」の音声を基として、ＡＲシナリオが実行されている場合に音声として出力される図４に示すデータを作成する。本実施形態では、操作部１３５が所定の操作を受け付け、マイク６９が所定の音声を取得することにより、ＡＲシナリオ制御部１４１は、録音された音声の内の一部である「開口部」を、「ＡＲ画像」に置換した音声データを作成する。本実施形態では、ＵＩのシナリオデータ管理テーブルＴＢ２のオブジェクト情報が作成されているときに、操作部１３５が所定の操作を受け付けて、録音された音声が再生されているときの「開口部」の前後である２点を指定することで、ＡＲシナリオ制御部１４１は、２点間に存在する音声を別の音声に置換できる。ＡＲシナリオ制御部１４１は、ＵＩのオブジェクト情報が作成されているときに、マイク６９が「ＡＲ画像」の音声を新規に取得することで、ＡＲシナリオ制御部１４１は、録音された「開口部」に、新規に取得された音声である「ＡＲ画像」を置換できる。本実施形態では、ＡＲシナリオ制御部１４１によって作成されるシナリオデータ管理テーブルＴＢ２のオブジェクト情報の一例として、図４に示すデータが挙げられる。また、ＡＲシナリオ制御部１４１は、操作部１３５が所定の操作を受け付けることで、作成した音声データを、ＡＲシナリオを実行する装置が音声を出力できる機器を備えていない場合に、文字画像を表示する代替手段の設定としての図４に示す代替テキストへのリンクを「有り」に設定する。
【００６４】
図５のステップＳ２５の処理の後、ＡＲシナリオ制御部１４１は、全てのＵＩのシナリオデータ管理テーブルＴＢ２を作成したか否かを判定する（ステップＳ２７）。ＡＲシナリオ制御部１４１は、全てのＵＩのシナリオデータ管理テーブルＴＢ２を作成していないと判定した場合には（ステップＳ２７：ＮＯ）、引き続き、残りのＵＩのシナリオデータ管理テーブルＴＢ２を作成する（ステップＳ２５）。本実施形態では、ＡＲシナリオ制御部１４１は、ＵＩのシナリオデータ管理テーブルＴＢ２として図４に示すオブジェクト名称が「音声ナビ２」のデータを作成した後に、まだ作成されていないシナリオデータ管理テーブルＴＢ２としての図４に示す「入力確認」のＵＩのデータを作成する。ＡＲシナリオ制御部１４１は、操作部１３５が所定の操作を受け付けることにより、図４に示す「入力確認１」のシナリオデータ管理テーブルＴＢ２のオブジェクト情報を作成する。「入力確認１」は、ＡＲシナリオが実行されているときに、ＡＲシナリオに沿った動作を使用者が終了したときに入力される「はい」の音声データである。本実施形態では、入力確認１として設定されるデータは音声データであるため、ＡＲシナリオ制御部１４１は、ＡＲシナリオを実行している装置に音声を取得する機器が備えられていない場合に、例えばキーボードなどの他のＵＩが操作を検出できるように、図４に示す入力受付のリンクを「有り」に設定する。
【００６５】
図５のステップＳ２７の処理において、ＡＲシナリオ制御部１４１は、全てのＵＩのシナリオデータ管理テーブルＴＢ２を作成したと判定した場合には（ステップＳ２７：ＹＥＳ）、次に、作成した機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２と対応付けたＡＲシナリオをデータ記憶部１２０に記憶させて（ステップＳ２９）、ＣＰＵ１４０は、ＡＲ作成シナリオ処理を終了する。
【００６６】
以上説明したように、本実施形態のＨＭＤ１００では、データ記憶部１２０は、ＡＲ画像を含むＡＲシナリオを作成した情報処理装置としてのＨＭＤ１００の各種機器の性能を表す機器情報テーブルＴＢ１を記憶している。また、データ記憶部１２０は、ＡＲシナリオが実行されるときのＡＲ画像の表示などのトリガーとなる条件と、条件の検出に応じて定まる順序に沿って実行されるオブジェクト情報と、を含むシナリオデータ管理テーブルＴＢ２を機器情報テーブルＴＢ１と対応付けて記憶している。ＡＲシナリオが実行された場合に、機器情報テーブルＴＢ１は、ＡＲシナリオを実行する装置が有する機器の性能に対応させてシナリオデータ管理テーブルＴＢ２に含まれる制御情報を変更できるように当該制御情報に対応付けられて記憶されている。そのため、本実施形態のＨＭＤ１００のデータ記憶部１２０に記憶されたＡＲシナリオが他の装置で実行された場合に、データ記憶部１２０に記憶されたＡＲシナリオが実行されるために必要な機器について機器情報テーブルＴＢ１を参照できる。ＡＲシナリオを実行する装置は、機器情報テーブルＴＢ１を参照することで、ＡＲシナリオを実行する装置と機器情報テーブルＴＢ１に記憶された各種機器の性能に違いがあっても、不具合を抑制したＡＲシナリオを所定の順序に沿って実行できる。ここでいう不具合としては、例えば、処理速度の遅延、解像度の問題、認識する被写体までの距離の精度、他の装置に対応しているＵＩなどが挙げられる。
【００６７】
また、本実施形態のＨＭＤ１００では、ＡＲシナリオ制御部１４１が機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを含むＡＲシナリオを作成する。機器情報テーブルＴＢ１は、ＡＲシナリオを作成した情報処理装置としてのＨＭＤ１００の機器の性能を表す情報である。そのため、本実施形態のＨＭＤ１００では、ＡＲシナリオが作成されるときに、簡便に機器情報テーブルＴＢ１が作成される。
【００６８】
また、本実施形態のＨＭＤ１００では、作成されるＡＲシナリオに含まれる１つの処理では、カメラ６１の撮像画像の中から検出された被写体の位置に対応付けられて画像が表示されるように作成される。そのため、本実施形態のＨＭＤ１００では、カメラ６１の撮像範囲の中からＡＲシナリオに含まれるＡＲ画像が作成されるため、使用者は、ＡＲ画像として作成したい被写体を撮像するだけでＡＲシナリオを作成でき、ＡＲシナリオを作成する際の使用者の使い勝手が向上する。
【００６９】
また、本実施形態のＨＭＤ１００では、機器情報テーブルＴＢ１にカメラ６１の性能の情報が含まれているため、ＡＲシナリオを実行する装置の画像表示部の性能と、機器情報テーブルＴＢ１のカメラ６１の性能と、の違いによるＡＲシナリオ実行時の表示画像の不具合を抑制できる。
【００７０】
また、本実施形態のＨＭＤ１００では、機器情報テーブルＴＢ１には、撮像範囲の中の被写体までの距離を測定する距離センサー６５の画角や測定距離の精度といった性能が含まれている。そのため、本実施形態のＨＭＤ１００では、距離センサー６５の撮像範囲の中に含まれる被写体までの距離を含むＡＲ画像が自動的に作成され、距離の情報に基づくＡＲ画像が作成されるため、使用者は、簡便に立体的なＡＲ画像を含むＡＲシナリオを作成でき、ＡＲシナリオを作成する際の使用者の使い勝手がより向上する。
【００７１】
また、本実施形態のＨＭＤ１００では、ＡＲシナリオは、音声を出力するＵＩデータ出力処理を含み、機器情報テーブルＴＢ１には、音声を出力するＵＩデータ出力処理を行なうために必要な機器の性能の情報が含まれている。そのため、本実施形態のＨＭＤ１００では、ＡＲシナリオに含まれる画像表示の処理に加えて、音声出力の処理も含まれるため、使用者の利便性が向上する。
【００７２】
Ｂ．第２実施形態：
Ｂ−１．ＡＲシナリオを実行する装置の構成：
図９は、第２実施形態におけるＡＲシナリオを実行する装置としてのＨＭＤ１００ａの構成を機能的に示すブロック図である。第２実施形態のＨＭＤ１００ａは、第１実施形態のＨＭＤ１００と比較して、画像表示部２０ａが１０軸センサー６６を有することと、制御部１０ａのＣＰＵ１４０ａが機器設定部１６８、方向特定部１６６、画像設定部１６５を有すること、とが異なり、ＨＭＤ１００ａの他の構成は、第１実施形態のＨＭＤ１００と同じである。なお、図９では、図３に示す第１実施形態のＡＲシナリオ制御部１４１、物体トラッキング部１４２、物体認識部１４３、３Ｄモデル生成部１４４、センサー制御部１４５、ＵＩ制御部１４６、ＡＲシナリオ操作設定部１４７、付加情報取得部１４８、不要画像消去部１４９、ＡＲ画像抽出部１５１を合わせて、シナリオ作成部１６４として示している。また、図９では、図３で図示を省略されていた画像表示部２０ａにおける虚像を生成するための機能と、ＣＰＵ１４０ａが有する虚像の生成に関連する機能と、が図示されている。
【００７３】
画像表示部２０ａが有する１０軸センサー６６は、加速度（３軸）、角速度（３軸）、地磁気（３軸）、および、気圧（１軸）を検出するセンサーである。１０軸センサー６６は、画像表示部２０ａにおける右表示駆動部２２の近くに内蔵されており、画像表示部２０ａが使用者の頭部に装着されているときには、使用者の頭部の動きや位置を検出する。
【００７４】
図９に示すように、制御部１０ａは、データ記憶部１２０と、操作部１３５と、ＲＯＭ１２１と、ＲＡＭ１２１と、電源１３０と、インターフェイス１８０と、ＣＰＵ１４０ａと、送信部５１（Ｔｘ５１）と、送信部５２（Ｔｘ５２）と、を有する。ＣＰＵ１４０ａは、ＲＯＭ１２１に格納されているコンピュータープログラムを読み出し、ＲＡＭ１２２に書き込みを実行することにより、オペレーティングシステム１５０（ＯＳ１５０）、表示制御部１９０、画像処理部１６０、画像設定部１６５、機器設定部１６８、シナリオ作成部１６４、および、方向特定部１６６として機能する。
【００７５】
表示制御部１９０は、右表示駆動部２２および左表示駆動部２４を制御する制御信号を生成する。具体的には、表示制御部１９０は、制御信号により、右ＬＣＤ制御部２１１による右ＬＣＤ２４１の駆動ＯＮ／ＯＦＦ、右バックライト制御部２０１による右バックライト２２１の駆動ＯＮ／ＯＦＦ、左ＬＣＤ制御部２１２による左ＬＣＤ２４２の駆動ＯＮ／ＯＦＦ、左バックライト制御部２０２による左バックライト２２２の駆動ＯＮ／ＯＦＦなど、を個別に制御する。これにより、表示制御部１９０は、右表示駆動部２２および左表示駆動部２４のそれぞれによる画像光の生成および射出を制御する。例えば、表示制御部１９０は、右表示駆動部２２および左表示駆動部２４の両方に画像光を生成させたり、一方のみに画像光を生成させたり、両方共に画像光を生成させなかったりする。
【００７６】
表示制御部１９０は、右ＬＣＤ制御部２１１と左ＬＣＤ制御部２１２とに対する制御信号のそれぞれを、送信部５１および５２を介して送信する。また、表示制御部１９０は、右バックライト制御部２０１と左バックライト制御部２０２とに対する制御信号のそれぞれを送信する。
【００７７】
画像処理部１６０は、コンテンツに含まれる画像信号やＡＲシナリオに含まれる画像信号を取得する。画像処理部１６０は、取得した画像信号から、垂直同期信号ＶＳｙｎｃや水平同期信号ＨＳｙｎｃ等の同期信号を分離する。また、画像処理部１６０は、分離した垂直同期信号ＶＳｙｎｃや水平同期信号ＨＳｙｎｃの周期に応じて、ＰＬＬ（Phase Locked Loop）回路等（図示しない）を利用してクロック信号ＰＣＬＫを生成する。画像処理部１６０は、同期信号が分離されたアナログ画像信号を、Ａ／Ｄ変換回路等（図示しない）を用いてディジタル画像信号に変換する。その後、画像処理部１６０は、変換後のディジタル画像信号を、対象画像の画像データ（ＲＧＢデータ）として、１フレームごとにデータ記憶部１２０内のＤＲＡＭに格納する。なお、画像処理部１６０は、必要に応じて、画像データに対して、解像度変換処理、輝度、彩度の調整といった種々の色調補正処理、キーストーン補正処理等の画像処理を実行してもよい。
【００７８】
画像処理部１６０は、生成されたクロック信号ＰＣＬＫ、垂直同期信号ＶＳｙｎｃ、水平同期信号ＨＳｙｎｃ、ＤＲＡＭに格納された画像データ、のそれぞれを、送信部５１、５２を介して送信する。なお、送信部５１を介して送信される画像データを「右眼用画像データ」とも呼び、送信部５２を介して送信される画像データを「左眼用画像データ」とも呼ぶ。送信部５１、５２は、制御部１０と画像表示部２０との間におけるシリアル伝送のためのトランシーバーとして機能する。
【００７９】
方向特定部１６６は、１０軸センサー６６によって検出された加速度等に基づいて、画像表示部２０ａの位置や向きの変化を算出する。算出された画像表示部２０ａの位置や向きの変化は、後述する機器設定部１６８によって画像表示部２０ａに表示される画像の表示位置の補正等に用いられる。
【００８０】
機器設定部１６８は、ＡＲシナリオを実行するＨＭＤ１００ａが有する各種機器（例えば、カメラ６１など）の性能を表す実行装置情報テーブルＴＢ３を作成する。また、機器設定部１６８は、データ記憶部１２０に記憶された機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを含むＡＲシナリオを取得する。機器設定部１６８は、作成した実行装置情報テーブルＴＢ３と取得したＡＲシナリオの機器情報テーブルＴＢ１とを比較する。機器設定部１６８は、ＡＲシナリオを実行するために必要なＨＭＤ１００ａが有する各種機器の性能の内、実行するＡＲシナリオを作成した情報処理装置の機器情報テーブルＴＢ１に含まれる機器の性能と異なる機器があるか否かを判定する。機器設定部１６８は、機器情報テーブルＴＢ１に含まれる機器の性能と異なる機器をＨＭＤ１００ａが有していると判定した場合には、機器情報テーブルＴＢ１に関連付けられているシナリオデータ管理テーブルＴＢ２のデータを変更する。詳細については後述するが、データの変更としては、例えば、ＡＲシナリオを作成した情報処理装置のカメラ６１の解像度がＡＲシナリオを実行するＨＭＤ１００ａのカメラ６１ａの解像度よりも高い場合には、機器設定部１６８は、シナリオデータ管理テーブルＴＢ２に含まれるオブジェクト情報の制御情報に含まれる解像度を小さくした後に、画像表示部２０ａに当該データに基づく画像を表示させる。換言すると、機器設定部１６８は、実行するＡＲシナリオの機器情報テーブルＴＢ１とＡＲシナリオを実行するＨＭＤ１００ａの実行装置情報テーブルＴＢ３との違いに応じて、実行するＡＲシナリオのシナリオデータ管理テーブルＴＢ２の制御情報を変更する。なお、機器設定部１６８は、請求項における情報取得部と制御情報変更部とに相当する。カメラ６１ａは、請求項における第２撮像部に相当する。
【００８１】
画像設定部１６５は、画像表示部２０ａに表示させる画像（表示画像）の各種設定を行なう。例えば、画像設定部１６５は、表示画像の表示位置や表示画像の大きさや表示画像の輝度などを設定したり、表示画像を使用者に立体的に視認させるために視差を形成するように右眼用画像データと左眼用画像データとを設定する。第２実施形態では、カメラ６１ａの画角は、画像表示部２０ａを装着した使用者が正面を見ているときの視野と同じになるように設定されている。そのため、画像設定部１６５は、機器設定部１６８によって撮像画像の中から検出された物体の位置に対応付けてＡＲシナリオに含まれるＡＲ画像を画像表示部２０ａに表示させることができる。
【００８２】
Ｂ−２．ＡＲシナリオ実行処理：
図１０は、ＡＲシナリオ実行処理の流れを示すフローチャートである。ＡＲシナリオ実行処理は、ＨＭＤ１００ａのＣＰＵ１４０ａが、データ記憶部１２０に記憶されたＡＲシナリオを実行することで、ＡＲシナリオに含まれるＡＲ画像や音声が出力される処理である。ＡＲシナリオ実行処理では、初めに、機器設定部１６８が、ＡＲシナリオを実行するＨＭＤ１００ａの実行装置情報テーブルＴＢ３を作成または確認する情報テーブル確認処理を行なう（ステップＳ４０）。
【００８３】
図１１は、情報テーブル確認処理の流れを示すフローチャートである。情報テーブル確認処理では、初めに、機器設定部１６８が、ＡＲシナリオを実行する実行装置としてのＨＭＤ１００ａの実行装置情報テーブルＴＢ３があるか否かを判定する（ステップＳ４１）。ＨＭＤ１００ａでは、過去にＡＲシナリオが実行されておらず、ＨＭＤ１００ａが実行装置情報テーブルＴＢ３を有していない場合には（ステップＳ４１：ＮＯ）、機器設定部１６８は、ＡＲシナリオを実行するために必要な情報としてのＨＭＤ１００ａの機器とＯＳとの入力を操作部１３５によって受け付ける（ステップＳ４３）。機器設定部１６８は、所定の操作画面を画像表示部２０ａに表示させることで、使用者への操作部１３５を介した入力を促す。次に、機器設定部１６８は、実行しようとしているＡＲシナリオが、入力された機器やＯＳに対応しているか否かを判定する（ステップＳ４５）。機器設定部１６８は、実行しようとしているＡＲシナリオが入力された機器やＯＳに対応していると判定した場合には（ステップＳ４５：ＹＥＳ）、ＡＲシナリオを実行するためのアプリケーションプログラムインターフェイス（ＡＰＩ）を設定する（ステップＳ４７）。その後、機器設定部１６８は、実行しようとしているＡＲシナリオに対応した実行装置情報テーブルＴＢ３を設定して（ステップＳ４９）、情報テーブル確認処理を終了する。
【００８４】
ステップＳ４１の処理において、既にＡＲシナリオが実行されていた場合には、ＨＭＤ１００ａは、実行しようとするＡＲシナリオに対応した実行装置情報テーブルＴＢ３を有しているため（ステップＳ４１：ＹＥＳ）、機器設定部１６８は、既に有している実行装置情報テーブルＴＢ３を、ＡＲシナリオを実行するための実行装置情報テーブルＴＢ３として設定する（ステップＳ４９）。ステップＳ４５の処理において、機器設定部１６８は、実行しようとしているＡＲシナリオに、入力された機器やＯＳが対応していないと判定した場合には（ステップＳ４５：ＮＯ）、実行装置情報テーブルＴＢ３を作成せずに、ＣＰＵ１４０ａは、情報テーブル確認処理を終了する。
【００８５】
情報テーブル確認処理が終了すると（図１０のステップＳ４０）、機器設定部１６８は、情報テーブル確認処理が行なわれたＡＲシナリオがＨＭＤ１００ａによって実行可能か否かを判定する（ステップＳ３２）。ＡＲシナリオが実行可能ではないと判定されると（ステップＳ３２：ＮＯ）、ＣＰＵ１４０ａは、ＡＲシナリオ実行処理を終了する。ＡＲシナリオが実行可能であると判定されると（ステップＳ３２：ＹＥＳ）、ＣＰＵ１４０ａは、画像表示部２０ａに画像を表示させるための表示関連実行処理を行なう（ステップＳ５０）。
【００８６】
図１２は、表示関連実行処理の流れを示すフローチャートである。表示関連実行処理では、初めに、機器設定部１６８は、実行されるＡＲシナリオが画像表示部２０ａに表示させるＡＲ画像などの表示画像を含んでいるか否かを判定する（ステップＳ５１）。実行されるＡＲシナリオに表示画像データが含まれていないと判定された場合には（ステップＳ５１：ＮＯ）、ＣＰＵ１４０ａは、画像表示部２０ａに画像を表示させずに、表示関連実行処理を終了する。
【００８７】
ステップＳ５１の処理において、機器設定部１６８は、実行されるＡＲシナリオが表示画像を含んでいると判定した場合には（ステップＳ５１：ＹＥＳ）、当該表示画像のシナリオデータ管理テーブルＴＢ２のオブジェクト情報（例えば、図４）を取得する（ステップＳ５３）。機器設定部１６８は、取得したオブジェクト情報の内から表示画像の種別を特定する（ステップＳ５５）。次に、機器設定部１６８は、作成された実行装置情報テーブルＴＢ３において画像を表示するための機器の動作環境と、実行されるＡＲシナリオを作成した情報処理装置の機器情報テーブルＴＢ１において画像を表示するための機器の動作環境と、を読み込む（ステップＳ５７）。その後、機器設定部１６８は、読み込んだ動作環境を比較することで、オブジェクト情報のデータとして記憶されている画像を表示可能な表示可能領域や画像の解像度と、作成した実行装置情報テーブルＴＢ３に記憶された画像表示部２０ａが画像を表示可能な表示可能領域や解像度と、が同じであるか否かを判定する。換言すると、機器設定部１６８は、シナリオデータ管理テーブルＴＢ２の制御情報に記憶されたディスプレイの大きさや解像度と、画像表示部２０ａのディスプレイの大きさや解像度と、が同じであるか否かを判定する。
【００８８】
機器設定部１６８は、表示可能領域と解像度との少なくとも一方が同じでないと判定した場合には（ステップＳ５９：ＮＯ）、表示画像を画像表示部２０ａに表示する際の表示領域や解像度を変更する（ステップＳ６１）。画像の表示領域や解像度の変更として、例えば、ＡＲシナリオを実行する画像表示部２０ａの表示可能領域が小さく、かつ、解像度が低い場合には、機器設定部１６８は、表示画像に基づく画像の表示領域を小さくし、表示画像の画素を間引いて解像度を落としたりする。
【００８９】
機器設定部１６８は、ステップＳ６１の処理を行なった後、ＡＲシナリオを実行するＨＭＤ１００ａの画像を表示するための処理性能が、機器情報テーブルＴＢ１に記憶された処理性能以上であるか否かを判定する（ステップＳ６３）。また、ステップＳ５９の処理において、機器設定部１６８は、機器情報テーブルＴＢ１における表示可能領域および解像度と、実行装置情報テーブルＴＢ３における表示可能領域および解像度と、が同じであると判定した場合には、ステップＳ６１の処理を行なわずに、ステップＳ６３の処理を行なう。
【００９０】
機器設定部１６８は、ＨＭＤ１００ａの画像を表示するための処理性能が機器情報テーブルＴＢ１に記憶された処理性能以上ではないと判定した場合には（ステップＳ６３：ＮＯ）、画像表示部２０ａに表示画像を表示させる際の表示形式を変更する（ステップＳ６５）。ステップＳ６３およびステップＳ６５でいう画像を表示させるための処理性能とは、メモリの容量やコンピューターの処理速度を表すＭＩＰＳ（million  instructions  per  second）などが一例として挙げられる。表示形式を変更する方法の一例として、機器設定部１６８は、表示画像のデータの一部を間引いたり、表示画像が動画である場合にフレームレートを大きくしたり、表示画像の外枠の部分のみを表示したりする方法が挙げられる。
【００９１】
ステップＳ６５の処理が行なわれると、画像設定部１６５は、機器設定部１６８によって変更された表示画像データに基づく画像を画像表示部２０ａに表示させ（ステップＳ６７）、ＣＰＵ１４０ａは、表示関連実行処理を終了する。また、ステップＳ６３の処理において、ＨＭＤ１００ａの画像を表示するための処理性能が機器情報テーブルＴＢ１に記憶された処理性能以上であると判定した場合には（ステップＳ６３：ＹＥＳ）、機器設定部１６８は、表示画像の表示形式を変更せずに、表示画像を画像表示部２０ａに表示させる。
【００９２】
図１０のステップＳ５０の表示関連実行処理が終了すると、機器設定部１６８は、ＡＲシナリオを実行しているＨＭＤ１００ａが撮像している撮像範囲からＡＲシナリオに関連する被写体を検出する物体認識処理を実行する（ステップＳ７０）。
【００９３】
図１３および図１４は、物体認識処理の流れを示すフローチャートである。物体認識処理では、初めに、機器設定部１６８は、実行されるＡＲシナリオに、ＡＲシナリオを実行するＨＭＤ１００ａのカメラ６１ａの撮像画像に含まれる特定の対象として検出する物体認識データがあるか否かを判定する（ステップＳ７１）。実行されるＡＲシナリオに物体認識データがないと判定された場合には（ステップＳ７１：ＮＯ）、ＣＰＵ１４０ａは、物体認識処理を終了する。
【００９４】
ステップＳ７１の処理において、機器設定部１６８は、実行するＡＲシナリオに物体認識データが１つ以上あると判定した場合には（ステップＳ７１：ＹＥＳ）、当該物体認識のシナリオデータ管理テーブルＴＢ２のオブジェクト情報（例えば、図４）を取得する（ステップＳ７３）。機器設定部１６８は、取得したオブジェクト情報の内から物体認識の種類を特定する（ステップＳ７５）。物体認識の種類としては、例えば、撮像画像から検出される画像としての対象や、撮像画像の中から検出された対象を追跡するトラッキングの対象が挙げられる。次に、機器設定部１６８は、作成された実行装置情報テーブルＴＢ３において物体認識を行なうための機器の動作環境と、実行されるＡＲシナリオを作成した情報処理装置の機器情報テーブルＴＢ１において物体認識を行なうための機器の動作環境と、を読み込む（ステップＳ７７）。
【００９５】
機器設定部１６８は、ステップＳ７７の処理を行なうと、ＡＲシナリオを実行するＨＭＤ１００ａが撮像画像から検出された対象までの距離を測定する距離センサーを有しているか否かを判定する（ステップＳ７９）。機器設定部１６８は、実行装置情報テーブルＴＢ３を参照して、ＨＭＤ１００ａが距離センサーを有していないと判定した場合には（ステップＳ７９：ＮＯ）、カメラ６１ａだけで物体認識処理を行なうか否かを判定する（ステップＳ８０）。機器設定部１６８は、操作部１３５が受け付けた所定の操作に基づいて、ステップＳ８０の処理を決定する。カメラ６１ａだけで物体認識処理を行わないと判定された場合には（ステップＳ８０：ＮＯ）、ＣＰＵ１４０ａは、物体認識処理を終了する。ステップＳ８０の処理において、機器設定部１６８は、カメラ６１ａだけで物体認識処理を行なうと判定した場合には（ステップＳ８０：ＹＥＳ）、後述する図１４のステップＳ８９の処理を実行する。
【００９６】
図１３のステップＳ７９の処理において、機器設定部１６８は、ＨＭＤ１００ａが距離センサーを有していると判定した場合には（ステップＳ７９：ＹＥＳ）、距離センサーの内で最も撮像画像に含まれる対象までの測定距離の精度が高い距離センサーを、物体認識処理で使用する距離センサーとして決定する（ステップＳ８１）。なお、ステップＳ８１の処理において、ＨＭＤ１００ａが１つの距離センサーしか有していない場合には、当該センサーが物体認識処理において使用されるセンサーとして決定される。
【００９７】
次に、機器設定部１６８は、物体認識処理に使用すると決定した距離センサーの精度が機器情報テーブルＴＢ１にＡＲシナリオを作成した情報処理装置の距離センサーの精度以上であるか否かを判定する（ステップＳ８３）。機器設定部１６８は、使用する距離センサーの精度が機器情報テーブルＴＢ１に記憶された距離センサーの精度以上でないと判定した場合には（ステップＳ８３：ＮＯ）、当該距離センサーを使用して物体認識処理を行なった場合に認識する物体に誤差が発生する可能性があることを示す画像を画像表示部２０ａに表示させる（ステップＳ８５）。次に、機器設定部１６８は、操作部１３５が所定の操作を受け付けることにより、物体認識に誤差がある可能性を含んだ状態で物体認識処理を続行するか否かを決定する（ステップＳ８７）。物体認識処理を続行しない操作を受け付けた場合には（ステップＳ８７：ＮＯ）、ＣＰＵ１４０ａは、物体認識処理を終了する。
【００９８】
ステップＳ８７の処理において、物体認識処理を続行する操作を受け付けた場合（ステップＳ８７：ＹＥＳ）、撮像画像の中から物体を認識する検出対象の外観情報を、オブジェクト情報（例えば、図４）のデータから取得する（図１４のステップＳ８９）。なお、同じように、図１３のステップＳ８３の処理において、機器設定部１６８は、物体認識処理に使用する距離センサーの精度が機器情報テーブルＴＢ１に記憶された距離センサーの精度以上であると判定した場合には（ステップＳ８３：ＹＥＳ）、検出対象の外観情報をオブジェクト情報のデータから取得する（ステップＳ８９）。オブジェクト情報のデータから取得される検出対象としては、例えば、３Ｄモデルであったり、２次元の平面的な画像が挙げられる。
【００９９】
ステップＳ８９の処理が行なわれると、カメラ６１ａは、外景を撮像する（ステップＳ９１）。次に、機器設定部１６８は、撮像された撮像画像に対してパターンマッチングや統計的識別法を行なうことで、撮像画像の中から検出対象の候補を検出する。機器設定部１６８は、撮像画像の中から検出対象の外観情報と同じ対象を、精度を落として処理速度を高めることで、検出対象の候補として検出する。次に、機器設定部１６８は、検出した検出対象の候補と検出対象の外観情報とを比較することで、検出した検出対象の候補の類似度を算出し、算出した類似度に基づいて、検出対象の候補を検出対象として扱うか否かを判定する（ステップＳ９７）。類似度は、オブジェクト情報の制御情報に含まれる１つの情報として記憶されている。また、機器設定部１６８は、機器情報テーブルＴＢ１と実行装置情報テーブルＴＢ３とにおける撮像部の解像度等の性能に応じて、類似度を判定するための閾値を変更してもよい。
【０１００】
ステップＳ９７の処理において、機器設定部１６８は、検出対象の候補と検出対象との類似度が閾値以上ではなく、検出対象の候補を検出対象として扱わないと判定した場合には（ステップＳ９７：ＮＯ）、後述するステップＳ１１３の処理を行なう。ステップＳ９７の処理において、機器設定部１６８は、検出対象の候補と検出対象との類似度が閾値以上の場合には（ステップＳ９７：ＹＥＳ）、検出対象の候補を検出対象として検出する（ステップＳ９９）。その後、機器設定部１６８は、撮像画像の中から検出した検出対象を追跡するトラッキングを実行するか否かを、オブジェクト情報の制御情報に基づいて判定する（ステップＳ１０３）。検出対象のトラッキングを実行しないと判定された場合には（ステップＳ１０３：ＮＯ）、ＣＰＵ１４０ａは、検出された検出対象を物体認識して、物体認識処理を終了する。
【０１０１】
ステップＳ１０３の処理において、機器設定部１６８は、検出対象のトラッキングを実行すると判定した場合には（ステップＳ１０３：ＹＥＳ）、撮像画像から検出される検出対象の動きを検出する（ステップＳ１０５）。その後、方向特定部１６６は、１０軸センサー６６から検出される画像表示部２０ａの加速度等に基づいて、画像表示部２０ａを装着している使用者の頭部の動きを検出する（ステップＳ１０７）。機器設定部１６８は、検出した検出対象の動きと検出された使用者の頭部の動きとに基づいて、画像表示部２０ａと検出対象との相対位置の関係を算出する（ステップＳ１０９）。なお、第２実施形態では、ＨＭＤ１００ａのカメラ６１ａの画角と、画像表示部２０ａを装着した使用者の視野と、が同じになるように予め設定されている。機器設定部１６８は、ステップＳ１０９の処理を行なうと、算出した相対位置の関係に基づいて、画像表示部２０ａに対する検出対象の位置のトラッキングを実行する（ステップＳ１１１）。
【０１０２】
その後、機器設定部１６８は、実行されるＡＲシナリオに含まれる全ての物体認識データに対しての処理を行なったか否かを判定する（ステップＳ１１３）。機器設定部１６８は、全ての物体認識データに対しての処理を行なっていないと判定した場合には（ステップＳ１１３：ＮＯ）、処理を行なっていない物体認識データについてステップＳ８９以降の処理を行なう。ステップＳ１１３の処理において、全ての物体認識データについての処理が行なわれたと判定された場合（ステップＳ１１３：ＹＥＳ）、ＣＰＵ１４０ａは、物体認識処理を終了する。
【０１０３】
図１０のステップＳ７０の物体認識処理が終了すると、機器設定部１６８は、ＡＲシナリオを実行しているＨＭＤ１００ａに対応しているＵＩを用いてデータを出力するＵＩデータ出力処理を実行する（ステップＳ１２０）。
【０１０４】
図１５は、ＵＩデータ出力処理の流れを示すフローチャートである。ＵＩデータ出力処理では、初めに、機器設定部１６８は、実行されるＡＲシナリオに、ＡＲシナリオを実行するＨＭＤ１００ａに対応しているＵＩを用いて出力する出力データがあるか否かを判定する（ステップＳ１２１）。実行されるＡＲシナリオにＵＩの出力データがないと判定された場合には（ステップＳ１２１：ＮＯ）、ＣＰＵ１４０ａは、ＵＩデータ出力処理を終了する。
【０１０５】
ステップＳ１２１の処理において、機器設定部１６８は、実行するＡＲシナリオにＵＩの出力データがあると判定した場合には（ステップＳ１２１：ＹＥＳ）、ＵＩの出力データのオブジェクト情報の制御情報（例えば、図４）を取得する（ステップＳ１２３）。次に、機器設定部１６８は、出力データを出力するＵＩを特定する（ステップＳ１２５）。特定されるＵＩとしては、例えば、音声を出力するイヤホン３２，３４などが挙げられる。次に、機器設定部１６８は、実行装置情報テーブルＴＢ３における出力データを出力するためのＵＩの動作環境と、実行されるＡＲシナリオを作成した情報処理装置の機器情報テーブルＴＢ１におけるＵＩの動作環境と、を読み込む（ステップＳ１２７）。機器設定部１６８は、出力データを出力するための機器情報テーブルＴＢ１のＵＩと対応するＵＩ（以下、単に「対応ＵＩ」とも呼ぶ）が実行装置情報テーブルＴＢ３に存在するか否かを判定する（ステップＳ１２９）。機器設定部１６８は、対応ＵＩがないと判定した場合には（ステップＳ１２９：ＮＯ）、出力データを出力可能なＵＩである代替ＵＩがあるか否かを判定する（ステップＳ１３１）。機器設定部１６８は、代替ＵＩがあるか否かの判定として、出力される出力データのオブジェクト情報に、代替ＵＩに関連する制御情報（例えば、図４の「代替テキストへのリンク」や「入力受付へのリンク」）が含まれているか否かを確認する。
【０１０６】
ステップＳ１３１の処理において、機器設定部１６８は、代替ＵＩがあると判定した場合には（ステップＳ１３１：ＹＥＳ）、代替ＵＩを用いて出力データを出力し（ステップＳ１３５）、ＣＰＵ１４０ａは、ＵＩデータ出力処理を終了する。ステップＳ１３１の処理において、機器設定部１６８は、代替ＵＩがないと判定した場合には（ステップＳ１３１：ＮＯ）、出力データを出力するための代替ＵＩがない旨を使用者に報知して（ステップＳ１３７）、ＣＰＵ１４０ａは、ＵＩデータ出力処理を終了する。報知の方法としては、画像表示部２０ａに出力データを出力できない文字画像を表示させる方法や、イヤホン３２，３４を介して出力データを出力できない音声を出力させたりする方法がある。
【０１０７】
ステップＳ１２９の処理において、機器設定部１６８は、対応ＵＩがあると判定した場合には（ステップＳ１２９：ＹＥＳ）、対応ＵＩを用いて出力データを出力し（ステップＳ１３３）、ＣＰＵ１４０ａは、ＵＩデータ出力処理を終了する。
【０１０８】
ＣＰＵ１４０ａは、図１０のステップＳ１２０の処理を行なうと、ＡＲシナリオに含まれる表関連実行処理、物体認識処理、ＵＩデータ出力処理、以外のその他の処理を実行する（ステップＳ３４）。その他の処理とは、実行されるＡＲシナリオの機器情報テーブルＴＢ１やシナリオデータ管理テーブルＴＢ２と関係のない処理である。その他の処理としては、例えば、外部環境に合わせた画像表示部２０ａの輝度の設定や出力する音声の音量の設定などが挙げられる。
【０１０９】
ステップＳ３６の処理において、ＣＰＵ１４０ａは、実行するＡＲシナリオを実行するための条件の内の終了条件を満たしたか否かを判定する（ステップＳ３６）。ここで、終了条件とは、例えば、後述する「はい」の音声の取得や、第３実施形態において説明する図２３の第５条件などである。ＣＰＵ１４０ａは、終了条件を満たすと判定した場合には（ステップＳ３６：ＹＥＳ）、ＡＲシナリオ実行処理を終了する。
【０１１０】
ステップＳ３６の処理において、ＣＰＵ１４０ａは、終了条件を満たしていないと判定した場合には（ステップＳ３６：ＮＯ）、実行するＡＲシナリオの順序に沿ってステップＳ５０以降の処理を繰り返す。処理が繰り返される例として、物体認識処理が行なわれた後に、撮像画像の中における認識された物体に関連付けてＡＲ画像が画像表示部２０ａに表示される場合などが挙げられる。
【０１１１】
以降では、ＡＲシナリオの一例であるキャップ装着シナリオが実行された場合を例に挙げて、ＡＲシナリオ実行処理について説明する。図１６は、キャップ装着シナリオの流れを示すフローチャートである。キャップ装着シナリオは、キャップＣＰが装着されていないペットボトルＰＴの開口部ＰＴａへとキャップＣＰを移動させて装着させることを、使用者に促す作業支援動画である。図１６には、図１０に示すＡＲシナリオ実行処理において、ステップＳ５０以降の処理が示されている。図１６に示すように、ＡＲシナリオの順序に沿った処理は、必ずしも、表示関連実行処理、物体認識処理、ＵＩデータ出力処理、その他の処理の順に実行されるように設定されていない。そのため、ＡＲシナリオの順序に沿って次に実行されるように設定された処理がない場合には、ＡＲシナリオに設定された処理があるまでは、設定されていない処理は飛ばされる。
【０１１２】
ＨＭＤ１００ａがキャップ装着シナリオを実行すると、初めに、機器設定部１６８は、実行装置情報テーブルＴＢ３を確認し（図１０のステップＳ４０）、ＨＭＤ１００ａがキャップ装着シナリオを実行可能か否か判定する（ステップＳ３２）。ＨＭＤ１００ａがキャップ装着シナリオを実行可能であると判定された場合に（ステップＳ３２：ＹＥＳ）、ＣＰＵ１４０ａは、撮像画像の中からペットボトルＰＴとキャップＣＰとを検出する物体認識処理を行なう（図１６のステップＳ１４１）。
【０１１３】
図１７は、撮像画像の中からペットボトルＰＴとキャップＣＰとが検出された場合に使用者が視認する視野ＶＲを示す説明図である。図１７には、ペットボトルＰＴとペットボトルＰＴに装着されていないキャップＣＰとを使用者が視認している視野ＶＲが示されている。ＣＰＵ１４０ａは、図１７に示すように、ペットボトルＰＴとキャップＣＰとの物体認識処理を行なうと、次に、使用者にキャップＣＰを移動させるための画像を画像表示部２０ａに表示させる表示関連実行処理を行なう（図１６のステップＳ１４３）。
【０１１４】
図１８は、検出されたペットボトルＰＴやキャップＣＰに対応付けられている画像が画像表示部２０ａに表示された場合に使用者が視認する視野ＶＲを示す説明図である。図１８には、表示関連実行処理によって画像表示部２０ａの画像表示最大領域ＰＮ内に文字画像ＴＸ１と、カーソル画像ＣＳ１と、キャップ画像ＩＭ１と、が表示された場合に使用者が視認する視野ＶＲが示されている。なお、図１８および以降の図において破線で示される画像表示最大領域ＰＮは、画像表示部２０ａが画像を表示できる最大領域の外枠が便宜上示された破線であり、使用者には視認されない。
【０１１５】
文字画像ＴＸ１は、キャップＣＰをペットボトルＰＴの開口部ＰＴａへの移動を促す画像である。文字画像ＴＸ１が画像表示最大領域ＰＮにおいて表示される位置は、画像表示最大領域ＰＮの右上と予め定められている。また、文字画像ＴＸ１に含まれる文字のフォントの大きさは、画像表示最大領域ＰＮの画素数との関係で予め定められている。カーソル画像ＣＳ１は、物体認識されたキャップＣＰからペットボトルＰＴの開口部ＰＴａまでを矢印で指す画像である。機器設定部１６８は、キャップＣＰの特徴点と、ペットボトルＰＴにおける開口部ＰＴａの特徴点とを特定することで、画像表示最大領域ＰＮにカーソル画像ＣＳ１を表示できる。キャップ画像ＩＭ１は、物体認識された実物のキャップＣＰの移動後を表すＡＲ画像である。第２実施形態では、キャップ画像ＩＭ１は、キャップＣＰの外観形状のみが表された画像であり、輝度が調整されて半手透明の画像として画像表示最大領域ＰＮに表示されている。そのため、使用者は、キャップ画像ＩＭ１と重畳している物体認識されたペットボトルＰＴの開口部ＰＴａを視認できる。キャップ画像ＩＭ１は、物体認識されたペットボトルＰＴにおける開口部ＰＴａの特徴点に対応付けて画像表示最大領域ＰＮに表示される。
【０１１６】
ＣＰＵ１４０ａは、表示関連実行処理を行なうと（図１６のステップＳ１４３）、キャップＣＰを移動させるための音声を出力するＵＩデータ出力処理を行なう（ステップＳ１４５）。ＣＰＵ１４０ａは、ＵＩデータ出力処理として、物体認識されたキャップＣＰをペットボトルＰＴにおける開口部ＰＴａへの移動を促す「キャップをキャップ画像の位置まで移動させて」の音声を、イヤホン３２，３４を介して出力させる。
【０１１７】
次に、ＣＰＵ１４０ａは、キャップＣＰがペットボトルＰＴの開口部ＰＴａへと移動された後のキャップＣＰの位置の物体認識処理を行なう（ステップＳ１４９）。言い換えると、ＣＰＵ１４０ａは、撮像画像において、実物のキャップＣＰがペットボトルＰＴの開口部ＰＴａに移動したことの検出を待機する。ＣＰＵ１４０ａは、キャップＣＰがペットボトルＰＴの開口部ＰＴａに移動した物体認識を行なった後に、キャップＣＰをペットボトルＰＴに対して回転させるための画像を画像表示部２０ａに表示させる表示関連実行処理を行なう（ステップＳ１４９）。
【０１１８】
図１９は、キャップＣＰを回転させるための画像が画像表示部２０ａに表示された場合に使用者が視認する視野ＶＲを示す説明図である。図１９に示すように、キャップＣＰの移動が認識された後に、画像表示部２０ａにカーソル画像ＣＳ２が表示される。カーソル画像ＣＳ２は、ペットボトルＰＴにおける開口部ＰＴａに移動されたキャップＣＰを時計回りに回転させることを使用者に促す矢印の画像である。ＣＰＵ１４０ａは、カーソル画像ＣＳ２を画像表示最大領域ＰＮに表示させる表示関連実行処理を行なった後（図１６のステップＳ１４９）、キャップＣＰをペットボトルＰＴに対して回転させるための音声を出力するＵＩデータ出力処理を行なう（ステップＳ１５３）。ＣＰＵ１４０ａは、ＵＩデータ出力処理として、キャップＣＰをカーソル画像ＣＳ２に沿って時計回りに回転させることを使用者に促す「キャップを矢印の方向に回してね」の音声を、イヤホン３２，３４を介して出力させる。
【０１１９】
ＣＰＵ１４０ａは、ＵＩデータ出力処理を行なった後（ステップＳ１５３）、ＡＲシナリオとしてのキャップ装着シナリオの終了を使用者に問う画像を画像表示部２０ａに表示させる表示関連実行処理を行なう（ステップＳ１５３）。ＣＰＵ１４０ａは、ＵＩデータ出力処理としての「キャップを矢印の方向に回してね」の音声が出力された後、表示関連実行処理として、所定の時間（例えば、３秒）が経過してから、キャップ装着シナリオの終了を使用者に問う文字画像ＴＸ２を画像表示最大領域ＰＮに表示させる。
【０１２０】
図２０は、文字画像ＴＸ２が画像表示部２０ａに表示される表示関連実行処理が行なわれた場合に使用者が視認する視野ＶＲを示す説明図である。ＣＰＵ１４０ａは、表示関連実行処理として、文字画像ＴＸ２を、予め定められている画像表示最大領域ＰＮにおける右上の位置に表示させる。文字画像ＴＸ２は、キャップ装着シナリオの終了を、外部音声としてマイク６９が受け付けるＵＩの処理を表す画像である。
【０１２１】
その後、ＣＰＵ１４０ａは、ＡＲシナリオとしてのキャップ装着シナリオの終了の音声の入力を受け付けるＵＩデータ出力処理を行なう（図１６のステップＳ１５５）。ＵＩデータ出力処理として、マイク６９が「はい」の音声を取得すると、ＵＩデータ出力処理を終了し、ＣＰＵ１４０ａは、全ての処理を実行したか否かを判定する（図１０のステップＳ３６）。キャップ装着ＡＲシナリオでは、「はい」の音声が取得されると、全ての設定された処理が実行されたため（ステップＳ３６：ＹＥＳ）、ＣＰＵ１４０ａは、ＡＲシナリオとしてのキャップ装着シナリオ実行処理を終了する。なお、キャップ装着シナリオでは、ＵＩデータ出力処理において、マイク６９が「はい」の音声を取得しない場合には、ＣＰＵ１４０ａは、引き続き、音声の取得を待機する。
【０１２２】
以上説明したように、第２実施形態のＨＭＤ１００ａでは、機器設定部１６８は、ＡＲシナリオを実行するＨＭＤ１００ａが有する各種機器の性能を表す実行装置情報テーブルＴＢ３を作成し、データ記憶部１２０に記憶された機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを含むＡＲシナリオを取得する。機器設定部１６８は、実行装置情報テーブルＴＢ３と機器情報テーブルＴＢ１とを比較する。その比較の結果、機器設定部１６８は、機器情報テーブルＴＢ１に含まれる機器の性能と異なる機器をＨＭＤ１００ａが有している場合には、機器情報テーブルＴＢ１に関連付けられているシナリオデータ管理テーブルＴＢ２に含まれるオブジェクト情報の制御情報を変更する。そのため、第２実施形態のＨＭＤ１００ａでは、他の情報処理装置によって作成されたＡＲシナリオを実行する場合に、ＡＲシナリオを作成した情報処理装置が有する機器をＨＭＤ１００ａが有していなくても、ＨＭＤ１００ａが有する機器に対応させてＡＲシナリオを実行する。これにより、ＡＲシナリオを実行する画像表示装置であるＨＭＤ１００ａのそれぞれに対応させてＡＲシナリオが作成される必要がなく、ＡＲシナリオを作成する情報処理装置が限定されないため、ＡＲシナリオの作成や提供を行なう者の使い勝手が向上する。また、ＡＲシナリオを実行する画像表示装置であるＨＭＤ１００ａの機器に応じてＡＲシナリオが実行されるため、ＡＲシナリオを実行する使用者の利便性を向上させることができる。
【０１２３】
また、第２実施形態のＨＭＤ１００ａでは、画像設定部１６５は、カメラ６１ａによって撮像された撮像画像の中から検出された現実のペットボトルＰＴやキャップＣＰの位置に合わせてＡＲ画像を表示させる。そのため、第２実施形態のＨＭＤ１００ａでは、現実の対象物と表示画像とをより対応付けて使用者に視認させることができ、使用者の使い勝手が向上する。
【０１２４】
Ｃ．第３実施形態：
図２１は、第３実施形態におけるＡＲシナリオ実行処理の流れを示すフローチャートである。第３実施形態のＡＲシナリオ実行処理では、第２実施形態のＡＲシナリオ実行処理のステップＳ５０，Ｓ７０，Ｓ１２０，Ｓ３４，Ｓ３６の処理に代わりに、オブジェクト実行処理Ｓ１６０を備える点が異なる。そのため、第３実施形態では、第２実施形態のＡＲシナリオ実行処理と同じ処理については、説明を省略する。オブジェクト実行処理では、予め設定された設定条件が検出されると、検出された設定条件に対応付けられたオブジェクト情報に含まれるデータの処理が行なわれる。オブジェクト実行処理では、表示関連や物体認識といったオブジェクト情報の種類に関わらず、検出された物体認識をトリガーとする設定条件に応じて、ＡＲシナリオの順序に沿った表示関連とＵＩとのデータ処理が実行される。
【０１２５】
図２２は、オブジェクト実行処理の流れを示すフローチャートである。図２３は、第３実施形態のオブジェクト実行処理における各処理の内容を示す一覧表である。図２３には、ＡＲシナリオの順序を定める条件の内容（検出内容／判定内容）が示されている。第３実施形態では、シナリオデータ管理テーブルＴＢ２は、シナリオ制御情報として、図２３に示すデータ、および、後述する図２４，２６，２８，３０に示すデータを含んでいる。第３実施形態では、物体認識される複数の特定の対象として、２つの特定の対象を認識し、２つの特定の対象の内、１つの第１物体としてのキャップＣＰと、もう一方の第２物体としてのペットボトルＰＴとの少なくとも一方、が物体認識された場合を例に挙げて説明する。なお、他の実施形態では、設定条件を含むＡＲシナリオの順序を定める条件の数については、限りはなく、また、検出される特定の対象の数は、１つであってもよいし、３つ以上であってもよい。
【０１２６】
オブジェクト実行処理では、初めに、ＨＭＤ１００ａの機器設定部１６８が、第１物体としてのキャップＣＰと第２物体としてのペットボトルＰＴとを撮像範囲から検出する物体認識の処理を開始する（ステップＳ１６１）。次に、機器設定部１６８は、図２３に示す第１条件として、第２物体のペットボトルＰＴのみを検出したか否かを判定する（図２２のステップＳ１６３）。機器設定部１６８は、第１条件を検出していないと判定した場合には（ステップＳ１６３：ＮＯ）、後述するステップＳ１６７の処理を行なう。ステップＳ１６３の処理において、機器設定部１６８は、第１条件を検出したと判定した場合には（ステップＳ１６３：ＹＥＳ）、第１条件に対応した表示関連およびＵＩのデータ処理を行なう（ステップＳ１６５）。
【０１２７】
図２４は、第１条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。図２５は、第１条件が検出された場合に使用者が視認する視野ＶＲを示す説明図である。機器設定部１６８は、第１条件を検出すると、図２４に示すように、表示関連の処理として、検出された実物のペットボトルＰＴの開口部ＰＴａに、図２５に示すキャップ画像ＩＭ１を画像表示最大領域ＰＮに表示させる。さらに、機器設定部１６８は、キャップ画像ＩＭ１が表示されたペットボトルＰＴの開口部ＰＴａを指す矢印のカーソル画像ＣＳ３も画像表示最大領域ＰＮに表示させる。また、機器設定部１６８は、図２４に示すように、ＵＩの処理として、「キャップを矢印の方向に移動させてください」の音声を、イヤホン３２，３４を介して出力させる。さらに、機器設定部１６８は、図２５に示すように、出力した音声と同じ「キャップを矢印の方向に移動させてください」の文字画像ＴＸ３を画像表示最大領域ＰＮに表示させる。なお、機器設定部１６８は、第１条件を検出しても、マイク６９が何らかの音声を検出する音声受付の処理を行なわない。
【０１２８】
機器設定部１６８は、検出した第１条件に対応した処理を行なうと（図２２のステップＳ１６５）、図２３に示す第２条件として、第１物体のキャップＣＰのみを検出したか否かを判定する（図２２のステップＳ１６７）。機器設定部１６８は、第２条件を検出していないと判定した場合には（ステップＳ１６７：ＮＯ）、後述するステップＳ１７１の処理を行なう。ステップＳ１６７の処理において、機器設定部１６８は、第２条件を検出したと判定した場合には（ステップＳ１６７：ＹＥＳ）、第２条件に対応した表示関連およびＵＩのデータ処理を行なう（ステップＳ１６９）。
【０１２９】
図２６は、第２条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。図２７は、第２条件が検出された場合に使用者が視認する視野ＶＲを示す説明図である。機器設定部１６８は、第２条件を検出すると、図２６および図２７に示すように、表示関連の処理として、検出された実物のキャップＣＰとは異なる位置に、第２物体のペットボトルＰＴのボトル画像ＩＭ２を画像表示最大領域ＰＮに表示させる。さらに、機器設定部１６８は、図２７に示すように、ペットボトルＰＴのボトル画像ＩＭ２の開口部ＰＴａに重畳された第１物体のキャップＣＰのキャップ画像ＩＭ１を画像表示最大領域ＰＮに表示させる。換言すると、機器設定部１６８は、ＡＲシナリオが手順に沿って最後まで実行された場合のキャップＣＰとペットボトルＰＴとの最終状態での位置関係を表すキャップ画像ＩＭ１とボトル画像ＩＭ２とを画像表示最大領域ＰＮに表示させる。さらに、機器設定部１６８は、キャップ画像ＩＭ１が表示されたペットボトルＰＴの開口部ＰＴａを指す矢印のカーソル画像ＣＳ３も画像表示最大領域ＰＮに表示させる。また、機器設定部１６８は、ＵＩの処理として、第１条件を検出したときと同じ「キャップを矢印の方向に移動させてください」の音声としてイヤホン３２，３４を介して出力させる。さらに、機器設定部１６８は、図２７に示すように、文字画像ＴＸ３を画像表示最大領域ＰＮに表示させる。
【０１３０】
機器設定部１６８は、検出した第２条件に対応した処理を行なうと（図２２のステップＳ１６９）、図２３に示す第３条件として、互いに離れた第１物体としてのキャップＣＰと第２物体としてのペットボトルＰＴとを検出しているか否かを判定する（図２２のステップＳ１７１）。機器設定部１６８は、第３条件を検出していないと判定した場合には（ステップＳ１７１：ＮＯ）、後述するステップＳ１７５の処理を行なう。ステップＳ１７１の処理において、機器設定部１６８は、第３条件を検出したと判定した場合には（ステップＳ１７１：ＹＥＳ）、第３条件に対応した表示関連およびＵＩのデータ処理を行なう（ステップＳ１７３）。
【０１３１】
図２８は、第３条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。図２９は、第３条件が検出された場合に使用者が視認する視野ＶＲを示す説明図である。機器設定部１６８は、第３条件を検出すると、図２８および図２９に示すように、表示関連の処理として、検出された実物の第２物体のペットボトルＰＴの開口部ＰＴａに第１物体のキャップＣＰのキャップ画像ＩＭ１を重畳するように画像表示最大領域ＰＮに表示させる。さらに、機器設定部１６８は、検出された実物のキャップＣＰからペットボトルＰＴの開口部ＰＴａまでを指し示すカーソル画像ＣＳ１を画像表示最大領域ＰＮに表示させる。また、機器設定部１６８は、ＵＩの処理として、第１条件を検出したときと同じ「キャップを矢印の方向に移動させてください」の音声としてイヤホン３２，３４を介して出力させる。さらに、機器設定部１６８は、図２９に示すように、文字画像ＴＸ３を画像表示最大領域ＰＮに表示させる。
【０１３２】
機器設定部１６８は、検出した第３条件に対応した処理を行なうと（図２２のステップＳ１７３）、図２３に示す第４条件として、第２物体のペットボトルＰＴの開口部ＰＴａに第１物体のキャップＣＰが装着された状態を検出しているか否かを判定する（ステップＳ１７５）。機器設定部１６８は、第４条件を検出していないと判定した場合には（ステップＳ１７５：ＮＯ）、後述するステップＳ１７９の処理を行なう。ステップＳ１７５の処理において、機器設定部１６８は、第４条件を検出したと判定した場合には（ステップＳ１７７：ＹＥＳ）、第４条件に対応した表示関連およびＵＩのデータ処理を行なう。
【０１３３】
図３０は、第４条件に対応付けられて実行される表示関連およびＵＩの処理内容を示す一覧表である。図３１は、第４条件が検出された場合に使用者が視認する視野ＶＲを示す説明図である。機器設定部１６８は、第４条件を検出すると、図３０および図３１に示すように、表示関連の処理として、検出された実物のキャップＣＰをペットボトルＰＴの上から見たときに時計回りに回転を促す矢印のカーソル画像ＣＳ２を画像表示最大領域ＰＮに表示させる。また、機器設定部１６８は、ＵＩの処理として、「キャップを矢印の方に回して閉めてください」の音声としてイヤホン３２，３４を介して出力させる。さらに、機器設定部１６８は、図３１に示すように、出力した音声と同じ内容を表す文字画像ＴＸ４を画像表示最大領域ＰＮに表示させる。その後、さらに、機器設定部１６８は、「閉めたら「終了」と言ってください」の音声としてイヤホン３２，３４を介して出力させる。さらに、機器設定部１６８は、出力した音声の「閉めたら「終了」と言ってください」と同じ内容を表す文字画像ＴＸ５を画像表示最大領域ＰＮに表示させる。図３２は、第４条件が検出された後に文字画像ＴＸ５が表示された場合に使用者が視認する視野ＶＲを示す説明図である。
【０１３４】
機器設定部１６８は、検出した第４条件に対応した処理を行なうと（図２２のステップＳ１７７）、図２３に示す第５条件として、第４条件に対応した処理が行なわれた後に、所定の音声としての「終了」（図３０，３２）の音声をマイク６９が検出したか否かを判定する（図２２のステップＳ１７９）。機器設定部１６８は、第５条件を検出していないと判定した場合には（ステップＳ１７９：ＮＯ）、ステップＳ１６３以降の処理を繰り返す。ステップＳ１７９の処理において、機器設定部１６８は、第５条件を検出したと判定した場合には（ステップＳ１７９：ＹＥＳ）、機器設定部１６８は、オブジェクト実行処理を終了する。なお、第１条件等は、請求項における所定の条件に相当する。また、キャップ画像ＩＭ１の表示や予め設定された音声の検出は、請求項における所定の情報の提示または受付に相当する。
【０１３５】
以上説明したように、第３実施形態のＨＭＤ１００ａでは、データ記憶部１２０に記憶されたＡＲシナリオは、第１条件などのオブジェクト処理を実行するための条件の情報を含んでいる。このように、ＡＲシナリオ実行処理では、物体認識やトラッキングのオブジェクト情報の検出を条件として、表示関連およびＵＩの処理が行なわれる。なお、実行される処理と、実行される処理に対応付けられた物体認識などの設定条件と、の関係については種々変形可能である。
【０１３６】
Ｄ．第４実施形態：
図３３は、第４実施形態におけるＡＲシナリオ作成処理の流れを示すフローチャートである。第４実施形態のＡＲシナリオ作成処理では、図５に示す第１実施形態のＡＲシナリオ作成処理と比較して、色情報および距離情報を含むＲＧＢＤデータと、マイク６９が取得した音声データと、を区別してシナリオデータ管理テーブルＴＢ２を作成する点が異なる。具体的には、第３実施形態のＡＲシナリオ作成処理は、図５に示すＡＲシナリオ作成処理におけるステップＳ１７からステップＳ２７までの処理の代わりに、図３３に示すステップＳ１８１からステップＳ２０１までの処理を有する。そのため、第４実施形態では、第１実施形態のＡＲシナリオ作成処理と同じ処理についての説明を省略する。
【０１３７】
第４実施形態のＡＲシナリオ作成処理では、撮像および録音を終了する所定の操作をＨＭＤ１００の操作部１３５が受け付け、ＡＲシナリオ制御部１４１は、撮像および録音を終了すると（ステップＳ１５：ＹＥＳ）、撮像および録音によって取得したデータを記憶する。これにより、撮像および録音を行なう装置がＡＲシナリオの作成を行なえなくても、ＨＭＤ１００は、撮像および録音のデータを取得することで、ＡＲシナリオを作成できる。なお、他の実施形態では、ステップＳ１８１の処理がなくてもよい。
【０１３８】
ＡＲシナリオ制御部１４１は、撮像および録音によって取得したデータをＲＧＢＤデータと音声データとに分別する（ステップＳ１８３）。ＡＲシナリオ制御部１４１は、分別したデータのそれぞれがＲＧＢＤデータまたは音声データであるかを判定する（ステップＳ１８５）。ＡＲシナリオ制御部１４１は、ＲＧＤＢデータと判定したデータに対して（ステップＳ１８５：ＲＧＤＢデータ）、物体認識部１４３を用いて、撮像範囲に含まれる物体を１つ１つの物体として認識し、認識した物体に対して、パターンマッチングなどによって人体のパーツなどを抽出する（ステップＳ１８７）。
【０１３９】
ＡＲシナリオ制御部１４１は、認識した物体の１つ１つに対して、物体トラッキング部１４２を用いて、移動物体と静止物体とを特定し、移動物体をトラッキングするトラッキング処理を行なう（ステップＳ１８９）。ＡＲシナリオ制御部１４１は、３Ｄモデル生成部１４４を用いて、特定した移動物体と静止物体とのそれぞれに対して、センサー制御部１４５が取得したＲＧＢデータと距離センサー６５が取得した距離データとを用いて、３Ｄモデルや２Ｄモデルを作成する（ステップＳ１９１）。
【０１４０】
ＡＲシナリオ制御部１４１は、作成したモデルのそれぞれを別々のデータとして、データ記憶部１２０に記憶させる（ステップＳ１９３）。この時点では、例えば、第１実施形態におけるキャップＣＰのモデルとペットボトルＰＴのモデルとは、何の関係性も有していない状態でデータ記憶部１２０に記憶されている。その後、ＡＲシナリオ制御部１４１は、後述するステップＳ２０１の処理を行なう。
【０１４１】
ステップＳ１８５の処理において、ＡＲシナリオ制御部１４１は、音声データと判定したデータに対して（ステップＳ１８３：音声データ）、ＵＩ制御部１４６を用いて、音声認識を行なう（ステップＳ１９５）。ＡＲシナリオ制御部１４１は、音声認識したデータに対して、ＡＲシナリオが実行される場合に、ＵＩ制御部１４６を用いて出力する音声データを作成したり、テキスト変換部１５２を用いて画像表示最大領域ＰＮに表示させる文字画像を作成したりする（ステップＳ１９７）。
【０１４２】
ＡＲシナリオ制御部１４１は、作成した音声データや文字画像のそれぞれを別々のデータとして、データ記憶部１２０に記憶させる（ステップＳ１９７）。この時点では、例えば、第１実施形態の文字画像ＴＸ１と、音声として出力される文字画像ＴＸ１の内容と、は何の関係性も有していない状態でデータ記憶部１２０に記憶されている。
【０１４３】
その後、ＡＲシナリオ制御部１４１は、ステップＳ１９３の処理によって作成したモデルのデータと、ステップＳ１９９の処理によって作成した音声等のデータと、を用いて、シナリオデータ管理テーブルＴＢ２を作成する（ステップＳ２０１）。ＡＲシナリオ制御部１４１は、ＡＲシナリオが実行されるための条件と、条件が満たされるときに実行される情報の提示や受付と、を含むシナリオデータ管理テーブルＴＢ２を作成する。当該処理によって、別々に作成されたモデルや音声データなどが関連付けられる。
【０１４４】
ＡＲシナリオ制御部１４１は、作成したシナリオデータ管理テーブルＴＢ２と、ステップＳ１１の処理によって作成された機器情報テーブルＴＢ１とを対応付けたＡＲシナリオをデータ記憶部１２０に記憶する（ステップＳ２９）。このように、撮像や録音によって取得されたデータの処理によって作成されるシナリオデータ管理テーブルＴＢ２やＡＲシナリオの作成方法については種々変形可能である。
【０１４５】
Ｅ．変形例：
なお、この発明は上記実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば、次のような変形も可能である。
【０１４６】
Ｅ−１．変形例１：
上記第１実施形態では、ＡＲシナリオを作成する情報処理装置として、ＨＭＤ１００を例に挙げて説明したが、情報処理装置は、種々変形可能である。例えば、ＡＲシナリオを作成する情報処理装置は、撮像部としてのカメラを備えるＰＣなどであってもよい。また、情報処理装置は、撮像部として複数のカメラや複数の距離センサーを備える情報システムであってもよい。
【０１４７】
上記第１実施形態では、情報処理装置としてのＨＭＤ１００がＡＲシナリオを作成したが、情報処理装置は、必ずしもＡＲシナリオを作成する必要はない。例えば、情報処理装置は、機器情報テーブルＴＢ１とシナリオデータ管理テーブルＴＢ２とを対応付けてハードディスクなどの記憶部に記憶している機器であればよく、サーバーなどであってもよい。
【０１４８】
上記第１実施形態では、ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成した情報処理装置としてのＨＭＤ１００の機器情報テーブルＴＢ１を作成したが、作成する機器情報テーブルＴＢ１については、種々変形可能である。また、ＡＲシナリオ制御部１４１は、機器情報テーブルＴＢ１として、ＡＲシナリオを作成する際に使用されていない機器の性能を作成してもよい。ＡＲシナリオを作成する際に使用されていない機器の性能が機器情報テーブルＴＢ１として作成されることで、ＡＲシナリオ実行処理における代替ＵＩ（図１５のステップＳ１３１）の選択を迅速にできる。
【０１４９】
機器情報テーブルＴＢ１に含まれる情報は、必ずしもＡＲシナリオを作成した機器の性能（「作成機器性能」とも呼ぶ）を表すものであるとは限らない。当該ＡＲシナリオを実行するのに最適なＨＭＤの性能、ＨＭＤに含まれる各機器（各デバイス）の種類、ＨＭＤに含まれる各機器（各デバイス）の性能（「実行機器性能」とも呼ぶ）であってもよい。作成機器性能と実行機器性能を包括して、ＨＭＤ（情報処理装置の一例）がＡＲシナリオを実行するのに求められるハードウェアの仕様と表記する。
機器情報テーブルＴＢ１の役割の簡単な例を示すと以下（１）、（２）の通りである。
（１）機器情報テーブルＴＢ１は、物体認識に区分けされた或るオブジェクト情報に対応付けて、「カメラおよび距離センサー」を示す情報を有している。これにより、当該シナリオ情報を実行するＨＭＤに対して、カメラと距離センサーとを組み合わせて、当該オブジェクトについて物体認識処理を実行することが望ましいことを伝えることができる。カメラしか備えないＨＭＤは、機器情報テーブルＴＢ１と自己の機器情報テーブルＴＢ３との比較により、当該シナリオ情報を実行しないようにすることもできるし、誤差が生じることをユーザーが承諾した場合にカメラだけで当該オブジェクトについて物体認識をするようにすることもできる。
（２）機器情報テーブルＴＢ１は、物体認識に区分けされた或るオブジェクト情報に対応づけて、「カメラ」を示す情報を有している。これにより、当該シナリオ情報を実行するＨＭＤに対して、当該オブジェクトについて物体認識処理を実行するのにカメラを用いれば足りること、またはカメラおよび距離センサーを組み合わせて用いればより好ましいこと、を伝えることができる。
【０１５０】
上記第１実施形態の図４では、シナリオデータ管理テーブルＴＢ２に含まれるオブジェクト情報の一例について説明したが、オブジェクト情報やシナリオデータ管理テーブルＴＢ２については、種々変形可能である。上記実施形態では、オブジェクト情報が表示関連、物体認識、ＵＩに区別されたが、区別される必要もなく、また、この３つの区分よりも多く区分されてもよい。例えば、ＡＲシナリオの順序に沿って、第１の処理、第２の処理のように、表示関連や物体認識の区別がされずに、時系列に沿った処理のオブジェクト情報として扱われてもよい。また、オブジェクト情報では、図４に示すように、制御情報とデータとが分けて関連付けられていたが、オブジェクト情報のデータ構造については、種々変形可能である。例えば、オブジェクト情報のデータ構造として、制御情報とデータとが分けられていなくてもよいし、制御情報とデータとに並列な別なカテゴリーによって分けられていてもよい。
【０１５１】
また、上記第１実施形態のオブジェクト情報では、図４に示すように、制御情報に含まれる位置情報は、特徴点の座標に基づく情報であったが、位置情報の形態については、種々変形可能である。例えば、位置情報は、データとしての３Ｄモデルの重心であってもよいし、物体認識によって検出される物体の内の撮像された部分によって特徴点が設定されてもよいし、操作部１３５が操作されることで任意に決定されてもよい。
【０１５２】
上記第１実施形態のＡＲシナリオ作成処理では、ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成するために、外景の撮像および外部音声の取得が行なったが（図５のステップＳ１３）、外部音声を取得する必要はない。また、ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成するために、外景の撮像と外部音声の取得と異なる操作として、例えば、操作部１３５のキーボードに入力された文字を文字画像として取得してもよい。また、ＡＲシナリオ制御部１４１は、作成された複数のＡＲシナリオを組み合わせて１つのＡＲシナリオとして作成してもよいし、ＡＲシナリオが実行されているときに、検出された検出対象によってＡＲシナリオが分岐するように設定してもよい。
【０１５３】
上記第１実施形態では、ＡＲシナリオ制御部１４１は、ＡＲシナリオを作成した情報処理装置としてのＨＭＤ１００の各種機器の性能を表す機器情報テーブルＴＢ１を作成するが、機器情報テーブルＴＢ１の代わりの情報を作成してもよい。例えば、ＡＲシナリオ制御部１４１は、各種機器の性能に依存しない標準化された対応情報を、機器情報テーブルＴＢ１の代わりに作成してもよいし、機器情報テーブルＴＢ１に加えて作成してもよい。また、ＡＲシナリオ制御部１４１は、標準化された対応情報に代えて、標準化された対応情報と機器情報テーブルＴＢ１との変換係数を作成してもよい。この変形例では、例えば、実物としてのペットボトルＰＴが物体認識され、物体認識されたペットボトルＰＴに合わせてキャップＣＰのキャップ画像ＩＭ１が表示される場合に、ペットボトルＰＴまでの距離がわかれば、ペットボトルＰＴの大きさに合わせたキャップ画像ＩＭ１が表示される。具体的には、ペットボトルＰＴの大きさに対して、釣り合いの取れた大小関係を構成するキャップ画像ＩＭ１が表示される。
【０１５４】
Ｅ−２．変形例２：
上記第２実施形態では、ＡＲシナリオを実行する画像表示装置として、ＨＭＤ１００ａを例に挙げて説明したが、画像表示装置は、種々変形可能である。例えば、ＡＲシナリオを実行する画像表示装置として、画像を表示可能なスマートフォンやＰＣであってもよい。また、画像を表示可能な画像表示部を有する情報システムであってもよい。また、画像表示装置としてのＨＭＤ１００ａは、ＡＲシナリオを記憶したデータ記憶部１２０を有しておらず、例えば、無線通信などによってサーバー等から取得したＡＲシナリオを実行してもよい。
【０１５５】
上記第２実施形態では、ＡＲシナリオを実行するＨＭＤ１００ａは、画像表示部２０ａを装着した使用者の頭部の動きを検出する１０軸センサー６６を有していたが、必ずしも有していなくてもよい。ＨＭＤ１００ａは、１０軸センサー６６の代わりに、角速度を検出するジャイロセンサーなどであってもよい。
【０１５６】
上記第２実施形態の図１１に示す情報テーブル確認処理では、機器設定部１６８は、ＡＲシナリオを実行するＨＭＤ１００ａの機器とＯＳとの入力を操作部１３５によって受け付けたが（ステップＳ４３）、ＡＲシナリオを実行する画像表示装置の機器の性能の確認の方法については、種々変形可能である。例えば、機器設定部１６８は、ＨＭＤ１００ａがＡＲシナリオを実行すると決定した場合に、ＨＭＤ１００ａの実行装置情報テーブルＴＢ３を自動的に作成してもよい。
【０１５７】
上記第２実施形態の図１３に示す物体認識処理では、ＡＲシナリオを実行するＨＭＤ１００ａが有する距離センサー６５の精度によって処理が変わったが（ステップＳ８３からステップＳ８７まで）、距離センサー６５の精度によって行なわれる処理については、種々変形可能である。例えば、機器設定部１６８は、距離センサー６５の精度にかかわらず、誤差の発生を報知せずに、物体認識処理を続行してもよい。また、物体認識処理において、発生する誤差について所定の閾値が予め設定されており、誤差と閾値との関係によって、ＡＲシナリオの実行の有無が判定されてもよい。
【０１５８】
上記第２実施形態の図１０に示すＡＲシナリオ実行処理では、ＡＲシナリオが実行されている途中での終了について記載しなかったが、所定の操作を受け付けることで、ＣＰＵ１４０ａは、実行しているＡＲシナリオを途中で強制終了させてもよい。
【０１５９】
上記実施形態では、外景を撮像するカメラ６１，６１ａや撮像された特定対象までの距離を測定する距離センサー６５の一例を挙げたが、これらのセンサーについては、種々変形可能である。例えば、撮像部としてステレオカメラが用いられた場合には、ステレオカメラによって撮像された特定対象までの距離が測定される。ステレオカメラは、安価であり、明るい場所での計測に優れている特徴を有する。また、撮像された特定対象までの距離を測定する方法として、ストラクチャードライト法（structured light method）が用いられてもよい。ストラクチャードライト法は、物体の表面に特殊な設計の光パターンを投射し、その被投射パターンの変形を分析することによって奥行き（即ち、物体の表面上の点とカメラとの距離）を推定することによって、物体の３次元形状を復元する方法である。ストラクチャードライト法は、計測精度が高く、近距離計測に優れている特徴を有する。また、撮像された特定対象までの距離を測定する方法として、ＴＯＦ（Time Of Flight）が用いられてもよい。ＴＯＦは、特定対象までの距離を測定する処理の負担が少なく、移動物体をトラッキングする計測に向いている。また、ＴＯＦは、距離の大小に伴う感度の低下が少ないという特徴を有する。
【０１６０】
Ｅ−３．変形例３：
上記実施形態では、制御部１０に操作部１３５が形成されたが、操作部１３５の態様については種々変形可能である。例えば、制御部１０とは別体で操作部１３５であるユーザーインターフェースがある態様でもよい。この場合に、操作部１３５は、電源１３０等が形成された制御部１０とは別体であるため、小型化でき、使用者の操作性が向上する。また、操作部の動きを検出する１０軸センサー６６を操作部１３５に形成して、検出した動きに基づいて各種操作が行なわれることで、使用者は、感覚的にＨＭＤ１００の操作ができる。
【０１６１】
例えば、画像光生成部は、有機ＥＬ（有機エレクトロルミネッセンス、Organic Electro-Luminescence）のディスプレイと、有機ＥＬ制御部とを備える構成としてもよい。また、例えば、画像生成部は、ＬＣＤに代えて、ＬＣＯＳ（Liquid crystal on silicon, LCoS は登録商標）や、デジタル・マイクロミラー・デバイス等を用いることもできる。また、例えば、レーザー網膜投影型のヘッドマウントディスプレイに対して本発明を適用することも可能である。レーザー網膜投影型の場合、画像表示最大領域ＰＮは、使用者の眼に認識される画像領域として定義できる。また、画像表示最大領域ＰＮは、各画素に形成されたＭＥＭＳシャッターを開閉するＭＥＭＳシャッター方式のディスプレイによって構成されてもよい。
【０１６２】
また、例えば、ＨＭＤ１００は、光学像表示部が使用者の眼の一部分のみを覆う態様、換言すれば、光学像表示部が使用者の眼を完全に覆わない態様のヘッドマウントディスプレイとしてもよい。また、ＨＭＤ１００は、いわゆる単眼タイプのヘッドマウントディスプレイであるとしてもよい。また、ＨＭＤ１００の代わりに、使用者の頭部に装着されるのではなく、双眼鏡のように使用者が手で位置を固定するハンドヘルドディスプレイが画像表示装置として用いられてもよい。また、ＨＭＤ１００は、両眼タイプの光学透過型であるとしているが、本発明は、例えば、ビデオ透過型といった他の形式の頭部装着型表示装置にも同様に適用可能である。
【０１６３】
また、ＨＭＤ１００は、他の装置から受信した画像信号に基づく画像を表示するためだけの表示装置と用いられてもよい。具体的には、デスクトップ型のＰＣのモニターに相当する表示装置として用いられ、例えば、デスクトップ型のＰＣから画像信号を受信することで、画像表示部２０の画像表示最大領域ＰＮに画像が表示されてもよい。
【０１６４】
また、ＨＭＤ１００は、システムの一部として機能するように用いられてもよい。例えば、航空機を含むシステムの一部の機能を実行するための装置としてＨＭＤ１００が用いられてもよいし、ＨＭＤ１００が用いられるシステムとしては、航空機を含むシステムに限られず、自動車や自転車など含むシステムであってもよい。
【０１６５】
図３４は、変形例におけるＨＭＤの外観構成を示す説明図である。図３４（Ａ）の例の場合、図１に示したＨＭＤ１００との違いは、画像表示部２０ｘが、右光学像表示部２６に代えて右光学像表示部２６ｘを備える点と、左光学像表示部２８に代えて左光学像表示部２８ｘを備える点である。右光学像表示部２６ｘは、上記実施形態の光学部材よりも小さく形成され、ＨＭＤ１００ｘの装着時における使用者の右眼の斜め上に配置されている。同様に、左光学像表示部２８ｘは、上記実施形態の光学部材よりも小さく形成され、ＨＭＤ１００ｘの装着時における使用者の左眼の斜め上に配置されている。図３４（Ｂ）の例の場合、図１に示したＨＭＤ１００との違いは、画像表示部２０ｙが、右光学像表示部２６に代えて右光学像表示部２６ｙを備える点と、左光学像表示部２８に代えて左光学像表示部２８ｙを備える点である。右光学像表示部２６ｙは、上記実施形態の光学部材よりも小さく形成され、ヘッドマウントディスプレイの装着時における使用者の右眼の斜め下に配置されている。左光学像表示部２８ｙは、上記実施形態の光学部材よりも小さく形成され、ヘッドマウントディスプレイの装着時における使用者の左眼の斜め下に配置されている。このように、光学像表示部は使用者の眼の近傍に配置されていれば足りる。また、光学像表示部を形成する光学部材の大きさも任意であり、光学像表示部が使用者の眼の一部分のみを覆う態様、換言すれば、光学像表示部が使用者の眼を完全に覆わない態様のＨＭＤとして実現できる。
【０１６６】
また、イヤホンは耳掛け型やヘッドバンド型を採用してもよく、省略してもよい。また、例えば、自動車や飛行機等の車両に搭載されるヘッドマウントディスプレイとして構成されてもよい。また、例えば、ヘルメット等の身体防護具に内蔵されたヘッドマウントディスプレイとして構成されてもよい。
【０１６７】
上記実施形態におけるＨＭＤ１００の構成は、あくまで一例であり、種々変形可能である。例えば、制御部１０に設けられた方向キー１６やトラックパッド１４の一方を省略したり、方向キー１６やトラックパッド１４に加えてまたは方向キー１６やトラックパッド１４に代えて操作用スティック等の他の操作用インターフェイスを設けたりしてもよい。また、制御部１０は、キーボードやマウス等の入力デバイスを接続可能な構成であり、キーボードやマウスから入力を受け付けるものとしてもよい。
【０１６８】
また、画像表示部として、眼鏡のように装着する画像表示部２０に代えて、例えば帽子のように装着する画像表示部といった他の方式の画像表示部が採用されてもよい。また、イヤホン３２，３４は適宜省略可能である。
【０１６９】
また、上記実施形態において、ＨＭＤ１００は、使用者の左右の眼に同じ画像を表わす画像光を導いて使用者に二次元画像を視認させるとしてもよいし、使用者の左右の眼に異なる画像を表わす画像光を導いて使用者に三次元画像を視認させるとしてもよい。
【０１７０】
また、上記実施形態において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。例えば、上記実施形態では、画像処理部１６０や音声処理部１７０は、ＣＰＵ１４０がコンピュータープログラムを読み出して実行することにより実現されるとしているが、これらの機能部はハードウェア回路により実現されるとしてもよい。
【０１７１】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア（コンピュータープログラム）は、コンピューター読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピューター内の内部記憶装置や、ハードディスク等のコンピューターに固定されている外部記憶装置も含んでいる。
【０１７２】
また、上記実施形態では、図１、図３、図９に示すように、制御部１０と画像表示部２０とが別々の構成として形成されているが、制御部１０と画像表示部２０との構成については、これに限られず、種々変形可能である。例えば、画像表示部２０の内部に、制御部１０に形成された構成の全てが形成されてもよいし、一部が形成されてもよい。また、上記実施形態における電源１３０が単独で形成されて、交換可能な構成であってもよいし、制御部１０に形成された構成が重複して画像表示部２０に形成されていてもよい。例えば、図３および図９に示すＣＰＵ１４０が制御部１０と画像表示部２０との両方に形成されていてもよいし、制御部１０に形成されたＣＰＵ１４０と画像表示部２０に形成されたＣＰＵとが行なう機能が別々に分けられている構成としてもよい。
【０１７３】
また、制御部１０と画像表示部２０とが一体化して、使用者の衣服に取り付けられるウェアラブルコンピューターの態様であってもよい。
【０１７４】
本発明は、上記実施形態や変形例に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態、変形例中の技術的特徴は、上述の課題の一部または全部を解決するために、あるいは、上述の効果の一部または全部を達成するために、適宜、差し替えや、組み合わせを行なうことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【符号の説明】
【０１７５】
１０…制御部
１１…決定キー
１２…点灯部
１３…表示切替キー
１４…トラックパッド
１５…輝度切替キー
１６…方向キー
１７…メニューキー
１８…電源スイッチ
２０…画像表示部
２１…右保持部
２２…右表示駆動部
２３…左保持部
２４…左表示駆動部
２６…右光学像表示部
２８…左光学像表示部
３０…イヤホンプラグ
３２…右イヤホン
３４…左イヤホン
４０…接続部
４２…右コード
４４…左コード
４６…連結部材
４８…本体コード
５１，５２…送信部
６１…カメラ（第１撮像部）
６１ａ…カメラ（第２撮像部）
６３…ＴＯＦセンサー
６４…赤外線ＬＥＤ
６５…距離センサー
６６…１０軸センサー
６９…マイク
１００…ＨＭＤ（情報処理装置）
１００ａ…ＨＭＤ（画像表示装置）
１２０…データ記憶部（記憶部）
１２１…ＲＯＭ
１２２…ＲＡＭ
１３０…電源
１３５…操作部
１４０…ＣＰＵ
１４１…ＡＲシナリオ制御部（生成部）
１４２…物体トラッキング部
１４３…物体認識部
１４４…３Ｄモデル生成部
１４５…センサー制御部
１４６…ＵＩ制御部
１４７…ＡＲシナリオ操作設定部
１４８…付加情報取得部
１４９…不要画像消去部
１５０…オペレーティングシステム
１５１…ＡＲ画像抽出部
１５２…テキスト変換部
１６０…画像処理部
１６４…シナリオ作成部
１６５…画像設定部
１６６…方向特定部
１６８…機器設定部（情報取得部、制御情報変更部）
１７０…音声処理部
１８０…インターフェイス
１９０…表示制御部
２０１…右バックライト制御部
２０２…左バックライト制御部
２１１…右ＬＣＤ制御部
２１２…左ＬＣＤ制御部
２２１…右バックライト
２２２…左バックライト
２４１…右ＬＣＤ
２４２…左ＬＣＤ
２５１…右投写光学系
２５２…左投写光学系
２６１…右導光板
２６２…左導光板
ＡＰ…保持部の先端部
ＥＬ…左光学像表示部の端部
ＥＲ…右光学像表示部の端部
ＨＳｙｎｃ…水平同期信号
ＩＭ１…キャップ画像
ＩＭ２…ボトル画像
ＩＭＧ…撮像画像
ＯＡ…外部機器
ＰＣＬＫ…クロック信号
ＶＳｙｎｃ…垂直同期信号
ＰＮ…画像表示最大領域
ＣＰ…キャップ（特定対象）
ＰＴ…ペットボトル（特定対象）
ＰＴａ…ペットボトルの開口部
ＲＨ…右手
ＴＢ１…機器情報テーブル（機器情報）
ＴＢ２…シナリオデータ管理テーブル
ＴＢ３…実行装置情報（表示装置情報）
ＣＳ１，ＣＳ２，ＣＳ３…カーソル画像
ＴＸ１，ＴＸ２，ＴＸ３，ＴＸ４，ＴＸ５…文字画像
ＵＳ…使用者
ＶＲ…視野
【図１】
0006572600.tif 000002
【図２】
0006572600.tif 000003
【図３】
0006572600.tif 000004
【図４】
0006572600.tif 000005
【図５】
0006572600.tif 000006
【図６】
0006572600.tif 000007
【図７】
0006572600.tif 000008
【図８】
0006572600.tif 000009
【図９】
0006572600.tif 000010
【図１０】
0006572600.tif 000011
【図１１】
0006572600.tif 000012
【図１２】
0006572600.tif 000013
【図１３】
0006572600.tif 000014
【図１４】
0006572600.tif 000015
【図１５】
0006572600.tif 000016
【図１６】
0006572600.tif 000017
【図１７】
0006572600.tif 000018
【図１８】
0006572600.tif 000019
【図１９】
0006572600.tif 000020
【図２０】
0006572600.tif 000021
【図２１】
0006572600.tif 000022
【図２２】
0006572600.tif 000023
【図２３】
0006572600.tif 000024
【図２４】
0006572600.tif 000025
【図２５】
0006572600.tif 000026
【図２６】
0006572600.tif 000027
【図２７】
0006572600.tif 000028
【図２８】
0006572600.tif 000029
【図２９】
0006572600.tif 000030
【図３０】
0006572600.tif 000031
【図３１】
0006572600.tif 000032
【図３２】
0006572600.tif 000033
【図３３】
0006572600.tif 000034
【図３４】
0006572600.tif 000035