(57)【要約】【課題】仮想オブジェクトの表示の乱れに起因する不快感をより軽減することが可能な情報処理装置、情報処理方法及びプログラムを提供する。【解決手段】実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、を備える情報処理装置。【選択図】図１
2017047178.tif 000002
【特許請求の範囲】
【請求項１】
実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、
前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、
を備える情報処理装置。
【請求項２】
前記出力制御部は、前記予測精度が高いほど対応する前記実オブジェクトとの関連性が高くなるよう前記仮想オブジェクトを表示させ、前記予測精度が低いほど対応する前記実オブジェクトとの関連性が低くなるよう前記仮想オブジェクトを表示させるための情報を出力する、請求項１に記載の情報処理装置。
【請求項３】
前記出力制御部は、前記予測精度が低いほど前記仮想オブジェクトをぼかして表示させるための情報を出力する、請求項１に記載の情報処理装置。
【請求項４】
前記出力制御部は、前記仮想オブジェクトにモーションブラーを付加して表示させるための情報を出力する、請求項３に記載の情報処理装置。
【請求項５】
前記出力制御部は、前記仮想オブジェクトの外縁部ほど希薄に表示させるための情報を出力する、請求項３に記載の情報処理装置。
【請求項６】
前記出力制御部は、前記予測精度に応じて前記仮想オブジェクトの大きさを変化させる、請求項２に記載の情報処理装置。
【請求項７】
前記出力制御部は、前記予測精度に応じて前記仮想オブジェクトに適用する描画エフェクトを変化させる、請求項２に記載の情報処理装置。
【請求項８】
前記出力制御部は、前記仮想オブジェクトの表示を前記予測精度が低い要因に応じた表示にさせるための情報を出力する、請求項１に記載の情報処理装置。
【請求項９】
前記出力制御部は、前記要因が視点の動きに起因するものである場合、前記仮想オブジェクトを非表示にさせるための情報を出力する、請求項８に記載の情報処理装置。
【請求項１０】
前記出力制御部は、前記要因が前記実オブジェクトの動きに起因するものである場合、前記仮想オブジェクトにモーションブラーを付加して表示させるための情報を出力する、請求項８に記載の情報処理装置。
【請求項１１】
前記予測精度推定部は、前記位置又は姿勢の予測に用いられる対象物の、動きの大きさ又は規則性の少なくともいずれかに基づいて前記予測精度を推定する、請求項１に記載の情報処理装置。
【請求項１２】
前記対象物は、前記実オブジェクトである、請求項１１に記載の情報処理装置。
【請求項１３】
前記対象物は、前記表示部である、請求項１１に記載の情報処理装置。
【請求項１４】
前記対象物は、ユーザの眼である、請求項１１に記載の情報処理装置。
【請求項１５】
前記位置又は姿勢の予測は、予測のための情報が検知される時点から前記仮想オブジェクトが表示される時点までの時間に係る予測である、請求項１に記載の情報処理装置。
【請求項１６】
前記予測精度に応じて前記時間の長さを制御する時間制御部をさらに備える、請求項１５に記載の情報処理装置。
【請求項１７】
前記予測精度推定部は、前記時間が長いほど前記予測精度が低く、前記時間が短いほど前記予測精度が高いと推定する、請求項１５に記載の情報処理装置。
【請求項１８】
前記出力制御部は、予測された前記実オブジェクトの位置に対応する位置に、又は予測された前記実オブジェクトの姿勢に対応する姿勢で前記仮想オブジェクトを表示させるための情報を出力する、請求項１に記載の情報処理装置。
【請求項１９】
実オブジェクトの位置又は姿勢の予測に係る予測精度をプロセッサにより推定することと、
前記予測精度の推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力することと、
を含む情報処理方法。
【請求項２０】
コンピュータを、
実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、
前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、実世界に付加的な情報を重畳してユーザに提示する拡張現実（ＡＲ：Augmented  Reality）と呼ばれる技術が注目されている。ＡＲ技術においてユーザに提示される情報は、アノテーションとも呼ばれ、テキスト、アイコンまたはアニメーションなど様々な形態の仮想的なオブジェクトを用いて可視化され得る。【０００３】
ＡＲの仮想オブジェクト（仮想物体）は、概して、実オブジェクトの表面に表示されたり、実オブジェクトの上空に浮遊させて表示されたりする等、実オブジェクトに紐付けて表示される。そのため、実オブジェクトの位置又は姿勢の変化に、仮想オブジェクトの表示を適切に追随させることが望ましい。そのような要求を満たす技術のひとつとして、下記特許文献１では、実オブジェクトの位置又は姿勢を認識し、認識結果に基づいて仮想オブジェクトを表示する際に、認識の安定度に応じて表示を変化させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２２１２５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１に開示された技術では、依然として仮想オブジェクトの表示の乱れが生じる場合があった。例えば、認識が安定している場合であっても、適切な表示制御がなされずに仮想オブジェクトの表示が乱れ、ユーザが不快感を覚える場合があった。そこで、本開示では、仮想オブジェクトの表示の乱れに起因する不快感をより軽減することが可能な、新規かつ改良された情報処理装置、情報処理方法及びプログラムを提案する。
【課題を解決するための手段】
【０００６】
本開示によれば、実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、を備える情報処理装置が提供される。【０００７】
また、本開示によれば、実オブジェクトの位置又は姿勢の予測に係る予測精度をプロセッサにより推定することと、前記予測精度の推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力することと、を含む情報処理方法が提供される。【０００８】
また、本開示によれば、コンピュータを、実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、として機能させるためのプログラムが提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、仮想オブジェクトの表示の乱れに起因する不快感をより軽減することが可能である。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１０】
【図１】本開示の一実施形態に係る情報処理装置の外観構成の一例を示す図である。
【図２】技術的課題を説明するための説明図である。
【図３】技術的課題を説明するための説明図である。
【図４】技術的課題を説明するための説明図である。
【図５】第１の実施形態に係る情報処理装置の論理的な構成の一例を示すブロック図である。
【図６】同実施形態に係る情報処理装置において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【図７】同実施形態に係るＵＩ例を説明するための説明図である。
【図８】同実施形態に係るＵＩ例を説明するための説明図である。
【図９】同実施形態に係るＵＩ例を説明するための説明図である。
【図１０】同実施形態に係るＵＩ例を説明するための説明図である。
【図１１】同実施形態に係るＵＩ例を説明するための説明図である。
【図１２】同実施形態に係るＵＩ例を説明するための説明図である。
【図１３】同実施形態に係る情報処理装置において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【図１４】同実施形態に係る情報処理装置において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【図１５】同実施形態に係るＵＩ例を説明するための説明図である。
【図１６】同実施形態に係る情報処理装置において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【図１７】同実施形態に係るＵＩ例を説明するための説明図である。
【図１８】同実施形態に係るＵＩ例を説明するための説明図である。
【図１９】同実施形態に係る情報処理装置において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【図２０】同実施形態に係るＵＩ例を説明するための説明図である。
【図２１】同実施形態に係るＵＩ例を説明するための説明図である。
【図２２】同実施形態に係るＵＩ例を説明するための説明図である。
【図２３】同実施形態に係るＨＭＤの論理的な構成の一例を示すブロック図である。
【図２４】同実施形態に係るＨＭＤの論理的な構成の一例を示すブロック図である。
【図２５】同実施形態に係るＨＭＤの論理的な構成の一例を示すブロック図である。
【図２６】変形例に係る情報処理装置の論理的な構成の一例を示すブロック図である。
【図２７】同実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１２】
なお、説明は以下の順序で行うものとする。
１．はじめに
１．１．外観構成例
１．２．技術的課題
２．第１の実施形態
２．１．構成例
２．２．処理の流れ
２．３．ＵＩ例
３．シースルー型ＨＭＤへの適用例
３．１．構成例１
３．２．構成例２
３．３．構成例３
４．変形例
５．ハードウェア構成例
６．まとめ
【００１３】
＜＜１．はじめに＞＞
＜１．１．外観構成例＞
まず、図１を参照して、本開示の一実施形態に係る情報処理装置の外観構成の一例について説明する。
【００１４】
図１は、本実施形態に係る情報処理装置１の外観構成の一例を示す図である。図１に示す情報処理装置１は、スマートグラスまたはＨＭＤ（Head  Ｍｏｕｎｔｅｄ  Display）とも称される装置である。情報処理装置１は、例えばユーザの頭部を周回するようなフレーム構造の装着ユニット５０を持ち、装着ユニット５０によりユーザの頭に固定される。そしてこの情報処理装置１は、図１に示すような装着状態において、ユーザの眼前に、左眼用と右眼用の一対の表示部２０Ａ及び２０Ｂが配置される構成とされている。この表示部２０には、例えば透過型のディスプレイが用いられ、情報処理装置１は透過型のディスプレイの透過率を制御することで、スルー状態、即ち透明または半透明の状態にできる。表示部２０がスルー状態とされることで、情報処理装置１を眼鏡のようにユーザが常時装着していても、通常の生活には支障がない。
【００１５】
表示部２０は、透明または半透明の状態のまま、テキストや図等の画像を表示することで、実空間の風景にＡＲの仮想オブジェクトを重畳表示することができる。即ち、情報処理装置１は、透過型のＨＭＤとして実現されてもよい。なお、透過型のＨＭＤにおいては、図１に示したように、装着ユニット５０により情報処理装置１がユーザの頭に固定されて、ユーザの両眼と表示部２０との相対的な位置関係が固定化されることが望ましい。相対的な位置関係が変化すると、仮想オブジェクトを表示すべきディスプレイ上の位置が変化し得るためである。
【００１６】
また、表示部２０は、撮像部１０Ａ及び１０Ｂで撮像された実空間の撮像画像を表示しつつ、当該実空間の撮像画像に仮想オブジェクトを重畳表示することも可能である。また、表示部２０は、撮像部１０Ａ及び１０Ｂであたかも仮想空間を撮像したかのような画像を表示しつつ、当該仮想空間の画像に仮想オブジェクトを重畳表示することも可能である。即ち、情報処理装置１は、没入型（ビデオスルー型）のＨＭＤとして実現されてもよい。
【００１７】
他にも、表示部２０は、ユーザの網膜に直接的に画像を投影するＬＥＤ光源等として実現されてもよい。即ち、情報処理装置１は、プロジェクション型のＨＭＤとして実現されてもよい。
【００１８】
表示部２０には、多様なコンテンツが仮想オブジェクトとして表示され得る。コンテンツは、例えば映画やビデオクリップなどの動画コンテンツ、デジタルスチルカメラ等で撮像された静止画コンテンツ、電子書籍等のデータであってもよい。また、かかるコンテンツは、ユーザがパーソナルコンピュータ等で作成した画像データ、テキストデータ、表計算データ等のコンピュータユースのデータ、ゲームプログラムに基づくゲーム画像など、表示対象となるあらゆるデータが想定される。
【００１９】
撮像部１０Ａ及び１０Ｂは、ユーザが情報処理装置１を装着した状態において、ユーザが視認する方向の実空間を撮像範囲として撮像するように配置されている。撮像部１０Ａ及び１０Ｂは、ユーザが視認する方向の距離を示す情報（以下、深度情報とも称する）も取得可能なステレオカメラとして実現されてもよい。撮像部１０Ａ及び１０Ｂがステレオカメラとして実現される場合、情報処理装置１は、実空間に存在する実物体の形状及び姿勢を精度よく認識することが可能である。以下では、撮像部１０Ａ及び１０Ｂを、外向きステレオカメラ１０とも称する。
【００２０】
一方で、撮像部１０Ｃ及び１０Ｄは、ユーザが情報処理装置１を装着した状態において、ユーザの方向、より詳しくはユーザの両眼を撮像範囲として撮像するように配置されている。撮像部１０Ｃ及び１０Ｄは、ユーザの両眼の方向の深度情報も取得可能なステレオカメラとして実現されてもよい。撮像部１０Ｃ及び１０Ｄがステレオカメラとして実現される場合、情報処理装置１は、ユーザの眼球の位置、瞳孔の位置、及び視線の向き等をより精度よく認識することが可能である。以下では、撮像部１０Ｃ及び１０Ｄを、内向きステレオカメラ１０とも称する。
【００２１】
また、図１では図示していないが、情報処理装置１は、スピーカ又はイヤホンスピーカを有していてもよい。また、情報処理装置１は、外部音声を取得するマイクロフォンを有していてもよい。
【００２２】
なお、図１に示す情報処理装置１の外観は一例であり、情報処理装置１をユーザが装着するための構造は多様に考えられる。情報処理装置１は、一般に眼鏡型、あるいは頭部装着型とされる装着ユニットで形成されればよく、少なくとも本実施の形態としては、ユーザの眼前に近接して表示部２０が設けられていればよい。また、表示部２０は、両眼に対応して一対設けられる他、片側の眼に対応して１つ設けられる構成でもよい。
【００２３】
また、スピーカ又はイヤホンスピーカも、左右の耳に対応して２つ設けられてもよいし、片方の耳に対応して１つ設けられてもよい。また、マイクロフォンも、ひとつ以上設けられてもよいし、その配置は任意である。
【００２４】
以上、本実施形態に係る情報処理装置１の外観構成の一例について説明した。
【００２５】
なお、以下では、一例として、情報処理装置１が透過型のＨＭＤとして実現される場合を想定して説明する。情報処理装置１の表示部２０（透過型ディスプレイ）に表示される像（透過して視認される背景及び重畳表示される仮想オブジェクトを含む）を、以下では実空間画像とも称する。
【００２６】
＜１．２．技術的課題＞
続いて、図２〜図４を参照して、技術的課題を説明する。
【００２７】
図２〜図４は、技術的課題を説明するための説明図である。図２では、実空間画像に含まれる実オブジェクトの位置又は姿勢の変化の一例を示している。図中、左から右へ時間は流れる。
【００２８】
情報処理装置１は、実オブジェクト７０の位置又は姿勢の変化を予測しながら、予測した位置又は姿勢に対応する位置又は姿勢で、仮想オブジェクトを表示するものとする。そのために、まず、情報処理装置１は、時刻Ｔ０において、実空間画像６０Ａに含まれる実オブジェクト７０に関する情報を検知（センシング）する。例えば、情報処理装置１は、ユーザ視点での実空間の様子をカメラで撮像し、デジタルデータとして読み出す。次いで、情報処理装置１は、時刻Ｔ１において、時刻Ｔ０において検知した情報に基づいて、時刻Ｔ２における実オブジェクト７０の位置又は姿勢の変化を予測する。例えば、情報処理装置１は、撮像画像に基づいて実オブジェクト７０を認識して、認識した実オブジェクト７０の位置又は姿勢の変化を予測する。そして、情報処理装置１は、時刻Ｔ２において、予測結果に基づいて実空間画像６０Ｂ内に仮想オブジェクト８０を表示する。
【００２９】
ここで注目すべきは、予測のための情報を検知した時刻Ｔ０から仮想オブジェクト８０を表示する時刻Ｔ２までの間に時間（即ち、タイムラグ）があることである。このタイムラグにおける実オブジェクト７０の予測が精度よく行われない場合、仮想オブジェクト８０が本来表示すべき位置又は姿勢からずれた位置又は姿勢で表示されてしまう、という表示の乱れが生じ、ユーザに混乱又は不快感を与えてしまい得る。以下、図３及び図４を参照して、この点について説明する。
【００３０】
図３では、予測が精度よく行われた場合に、時刻Ｔ２において表示される実空間画像６０Ｃの一例を示している。実空間画像６０Ｃに示すように、仮想オブジェクト８０は、実オブジェクト７０の位置に正確に重畳されている。このため、ユーザに混乱又は不快感を与えることはない。
【００３１】
図４では、予測が精度よく行われなかった場合に、時刻Ｔ２において表示される実空間画像６０Ｄの一例を示している。実空間画像６０Ｄに示すように、仮想オブジェクト８０は、実オブジェクト７０の位置から離れた位置に表示されている。このような表示ずれは、ユーザに混乱又は不快感を与えてしまう。
【００３２】
同様の技術的課題は、透過型のディスプレイを有する装置以外にも、非透過型のディスプレイを有する、例えばビデオスルー型のＨＭＤにも同様に生じ得る。例えば、実空間の様子をリアルタイムにディスプレイに表示しつつ、並行して予測した位置又は姿勢に仮想オブジェクトを表示する形態においては、上述した表示の乱れが同様に生じ得る。
【００３３】
このような課題に関し、上記特許文献１に記載された技術では表示の乱れを十分に抑制することが困難であると考えられる。例えば、認識が安定している場合であっても、予測の精度が低い場合には、仮想オブジェクトの表示が乱れる場合がある。例えば、実オブジェクトが不規則に動作している場合に、表示の乱れが顕著に生じ得る。また、上記特許文献１では、時刻Ｔ２において、時刻Ｔ０において撮像された実空間の画像に仮想オブジェクトが重畳表示されていた。即ち、上記特許文献１に記載された技術は、時刻Ｔ０と時刻Ｔ２とのタイムラグの間に実オブジェクトが移動したり姿勢が変化したりすることが考慮されていないので、上記説明した技術的課題を解決し得るものではない。
【００３４】
そこで、上記事情を一着眼点にして本開示の一実施形態に係る情報処理装置１を創作するに至った。本実施形態に係る情報処理装置１は、上記タイムラグに係る予測精度に基づく表示制御を行うことで、仮想オブジェクトの表示の乱れを抑制し、また表示が乱れる場合であっても、ユーザに与える混乱又は不快感を軽減することができる。
【００３５】
なお、以下では、時刻Ｔ０を検知時刻とも称し、時刻Ｔ２を表示時刻とも称する。
【００３６】
＜＜２．第１の実施形態＞＞
まず、図５を参照して、第１の実施形態に係る情報処理装置の構成の一例を説明する。
【００３７】
＜２．１．構成例＞
図５は、本実施形態に係る情報処理装置の論理的な構成の一例を示すブロック図である。図５に示すように、本実施形態に係る情報処理装置１は、実オブジェクト検知部１００、実オブジェクト認識部１２０、実オブジェクト予測部１４０、視点検知部２００、視点認識部２２０、視点予測部２４０、描画遅延検知部３００、視界内状態予測部４００、予測精度推定部５００、出力制御部６００及び表示部７００を含む。
【００３８】
（実オブジェクト検知部１００）
実オブジェクト検知部１００は、検知時刻Ｔ０における実オブジェクトに関する情報を検知する機能を有する。例えば、実オブジェクト検知部１００は、実オブジェクトをセンシング対象とするセンサにより検知された情報を取得する。そのようなセンサとしては、例えばカメラ、デプスセンサ、赤外線センサ、電波センサなどが挙げられる。なお、図１に示した例においては、実オブジェクト検知部１００は外向きステレオカメラ１０として実現され得る。
【００３９】
（実オブジェクト認識部１２０）
実オブジェクト認識部１２０は、実オブジェクト検知部１００により取得された情報に基づいて、実オブジェクトを認識する機能を有する。実オブジェクト認識部１２０は、実オブジェクトの位置又は姿勢を認識する。実オブジェクトの位置又は姿勢とは、世界座標系における実オブジェクトの位置又は姿勢を意味するものとする。世界座標系は、実空間内で固定的に定義される絶対的な座標を表す座標系である。
【００４０】
実オブジェクトの認識には、多様な手法が採用され得る。
【００４１】
例えば、実オブジェクトの認識は、撮像画像から計算される特徴量を、予め登録された実オブジェクトの特徴量と照合することにより行われてもよい。特徴量は、例えばＳＩＦＴ法またはＲａｎｄｏｍ  Ｆｅｒｎｓ法などの公知の特徴量算出技術によって算出され得る。
【００４２】
また、実オブジェクトの認識は、実オブジェクトに付された既知の図形若しくは記号、人工マーカ（例えば、バーコード若しくはＱＲコード（登録商標））又は自然マーカなどを認識することにより行われてもよい。
【００４３】
他にも、実オブジェクトの認識は、ステレオカメラにより得られる画像に基づく、画素毎の深度情報及び当該深度情報の信頼度に基づいて行われてもよい。例えば、実オブジェクト認識部１２０は、異なる視点から同一の実空間を撮像対象とした複数の撮像画像上での実物体の違い（両眼視差）に基づいて、実オブジェクトの位置及び形状（即ち、撮像部からみた実空間の凹凸）を認識する。なお、ステレオ画像認識の特性上、色合い等の変化が少ない領域に係る深度情報の信頼度が低下し得る。深度情報は、ＴｏＦ（Time  of  Flight）方式のデプスセンサ等の任意の技術を用いて取得されてもよい。
【００４４】
（実オブジェクト予測部１４０）
実オブジェクト予測部１４０は、実オブジェクト認識部１２０による認識結果に基づいて、表示時刻Ｔ２における実オブジェクトに関する予測を行う機能を有する。例えば、実オブジェクト予測部１４０は、表示時刻Ｔ２における実オブジェクトの位置又は姿勢を予測する機能を有する。そのために、実オブジェクト予測部１４０は、認識された実オブジェクトの位置又は姿勢のログを蓄積しておき、蓄積されたログに基づいて予測を行う。以下に、予測方法の一例を説明する。
【００４５】
例えば、実オブジェクト予測部１４０は、時刻ｔ０において座標（xt0，yt0，zt0）にある実オブジェクトが、時刻ｔにおいて存在する位置を次式で予測する。
【００４６】
（xt，yt，zt）＝（xt0＋Vxt0（t−t0），yt0＋Vyt0（t−t0），zt0＋Vzt0（t−t0））
・・・（１）
【００４７】
上記数式（１）は、時刻ｔ０において、実オブジェクトが速度Vt0＝（Vxt0，Vyt0，Vzt0)で移動している場合に、時刻ｔまでの間等速直線運動をすると仮定して予測する場合に用いられる。
【００４８】
（視点検知部２００）
視点検知部２００は、検知時刻Ｔ０における視点に関する情報を検知する機能を有する。視点は、ユーザの眼の位置又は姿勢（即ち、視線の向き）を意味していてもよいし、表示部７００の位置又は姿勢を意味していてもよいし、これらの双方を含んでいてもよい。例えば、視点検知部２００は、ユーザ又は情報処理装置１自身をセンシング対象とするセンサにより検知された情報を取得する。そのようなセンサとしては、例えばカメラ、デプスセンサ、ジャイロセンサ、加速度センサ、ＧＮＳＳ（Global  Navigation  Satellite  System）などが挙げられる。なお、図１に示した例においては、視点検知部２００は、内向きステレオカメラ１０及び外向きステレオカメラ１０として実現され得る。例えば、内向きステレオカメラ１０による撮像画像は、顔上の相対座標系に対して目がどちらを向いているかを認識するために用いられ得る。また、外向きステレオカメラ１０による撮像画像は、外界の特徴点の移動を認識し、世界座標系における視点（即ち、頭）の移動を認識するため（即ち、後述するＳＬＡＭ法のため）に用いられ得る。これらの認識は、後述する視点認識部２２０により行われる。
【００４９】
（視点認識部２２０）
視点認識部２２０は、視点検知部２００により取得された情報に基づいて、視点の位置又は姿勢を認識する機能を有する。視点の位置又は姿勢とは、世界座標系における視点の位置又は姿勢を意味するものとする。
【００５０】
視点の認識には、多様な手法が採用され得る。
【００５１】
例えば、視点の認識は、ＳｆＭ（Structure  from  Motion）法またはＳＬＡＭ（Simultaneous  Localization  And  Mapping）法などの公知の画像認識技術により行われてもよい。その場合、視点の認識は、例えば情報処理装置１の装置固有の座標系に対する基準環境（実空間）の座標系の相対的な位置および姿勢の認識により行われる。例えば、ＳＬＡＭ法が利用される場合、情報処理装置１のプロセッサが、装置の位置、姿勢、速度および角速度、ならびに撮像画像に含まれる少なくとも１つの特徴点の位置を含む状態変数を、拡張カルマンフィルタの原理に基づいて撮像画像のフレームごとに更新する。これによって、装置の位置および姿勢を基準とする基準環境の位置および姿勢を、単眼カメラからの入力画像を利用して認識することができる。なお、ＳＬＡＭ法の詳しい説明は、例えば“Real-Time  Simultaneous  Localization  and  Mapping  with  a  Single  Camera”（Andrew  J.Davison，Proceedings  of  the  9th  IEEE  International  Conference  on  Computer  Vision  Volume  2,  2003,  pp.1403-1410）に記載されている。
【００５２】
他にも、視点の認識は、撮像部の実空間における相対的な位置および姿勢を認識するものであればどのようなものであってもよい。例えば、撮像部に設けられうる深度センサからの深度データに基づいて環境認識行列が認識されてもよい。また、赤外線測距システムまたはモーションキャプチャシステムなどの環境認識システムからの出力データに基づいて環境認識行列が認識されてもよい。こうした技術の一例は、例えばS.Izadi,  et  al,  KinectFusion:  Real-time  3D  Reconstruction  and  Interaction  Using  a  Moving  Depth  Camera,  ACM  Symposium  on  User  Interface  Software  and  Technology,  2011に記載されているが、この例には限られず、公知の様々な技術が利用可能である。
【００５３】
あるいは、視点の認識は、実空間を撮像した一連のフレーム画像のステッチング解析によって、各フレーム画像の相対的な位置関係を特定することによって行われてもよい。この場合、ステッチング解析は、基底平面上に各フレーム画像を貼りつける２次元ステッチング解析、または空間内の任意の位置に各フレーム画像を貼りつける３次元ステッチング解析でありうる。
【００５４】
さらに、視点の認識は、情報処理装置１に含まれる加速度センサ又はジャイロセンサ等の慣性センサを併用して行われてもよい。その場合、より高速に視点が認識され得る。また、高速にユーザ（カメラ位置）が動いたことによる動きボケなどで、撮像画像に基づく視点の認識が困難な場合にも、ある程度の精度で認識することが可能である。
【００５５】
（視点予測部２４０）
視点予測部２４０は、視点認識部２２０による認識結果に基づいて、表示時刻Ｔ２における視点に関する予測を行う機能を有する。例えば、視点予測部２４０は、表示時刻Ｔ２における視点の位置又は姿勢を予測する。そのために、視点予測部２４０は、認識された視点の位置又は姿勢のログを蓄積しておき、蓄積されたログに基づいて予測を行う。具体的な予測方法としては、実オブジェクト予測部１４０に関して上記説明したものと同様の予測方法が採用され得る。
【００５６】
（描画遅延検知部３００）
描画遅延検知部３００は、検知時刻Ｔ０と表示時刻Ｔ２とのタイムラグを検知する機能を有する。タイムラグは所定値であってもよいし、動的に変化していてもよい。タイムラグの長さは、検知時刻Ｔ０から表示時刻Ｔ２までの間に行われる各種処理の処理時間によって変動し得る。例えば処理負荷が低い時にはタイムラグが短くなり、処理負荷が高い場合にはタイムラグが長くなり得る。また、各種処理を実行するＣＰＵ、ＧＰＵ、センサ等の動作周波数設定、省電力設定のＯＮ／ＯＦＦ等によってもタイムラグの長さは変動し得る。例えば、描画遅延検知部３００は、各種処理の処理負荷、動作周波数設定、省電力設定のＯＮ／ＯＦＦ等に基づいて、タイムラグを検知し得る。
【００５７】
（視界内状態予測部４００）
視界内状態予測部４００は、表示時刻Ｔ２においてユーザの視界（即ち、実空間画像内）に映る実オブジェクトの位置又は姿勢を予測する機能を有する。この予測は、予測のための情報が検知される時点Ｔ０から仮想オブジェクトが表示される時点Ｔ２までのタイムラグに係る予測である。視界内状態予測部４００は、このタイムラグの間に、実オブジェクトがどのように動き、視点がどのように動くか、という実オブジェクト予測部１４０及び視点予測部２４０による予測結果に基づいて、予測を行う。なお、ユーザの視界に映る実オブジェクトの位置又は姿勢とは、ユーザの眼から見た表示部７００の表示面上の実オブジェクトの位置又は姿勢を意味するものとする。
【００５８】
（予測精度推定部５００）
予測精度推定部５００は、表示部７００に映る（例えば、透過型ディスプレイを透過する、又は非透過型ディスプレイに表示される）実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する機能を有する。具体的には、予測精度推定部５００は、視界内状態予測部４００による予測の精度を推定する。また、予測精度推定部５００は、予測精度が低い場合に、低い要因を推定してもよい。
【００５９】
予測精度の推定方法は多様に考えられる。
【００６０】
例えば、予測精度推定部５００は、検知時刻Ｔ０と表示時刻Ｔ２とのタイムラグに基づいて予測精度を推定してもよい。例えば、予測精度推定部５００は、タイムラグが長いほど予測精度が低く、タイムラグが短いほど予測精度が高いと推定する。タイムラグが長いほど、誤差が生じる可能性が高まるためである。他にも、予測精度推定部５００は、タイムラグが閾値以上である場合に予測精度が低いと判定し、タイムラグが閾値未満である場合に予測精度が高いと判定してもよい。
【００６１】
例えば、予測精度推定部５００は、実オブジェクト又は視点の位置又は姿勢の予測に用いられる対象物の、動きの大きさ又は規則性の少なくともいずれかに基づいて予測精度を推定してもよい。具体的には、予測精度推定部５００は、対象物の動きが大きいほど予測精度を低く推定し、対象物の動きが小さいほど予測精度を高く推定する。同様に、予測精度推定部５００は、対象物の動きの規則性が低いほど予測精度を低く推定し、対象物の動きの規則性が高いほど予測精度を高く推定する。タイムラグの場合と同様に、閾値が用いられてもよい。なお、ここでいう対象物とは、例えば実オブジェクト、表示部７００、及びユーザの眼等を指す。即ち、予測精度推定部５００は、実オブジェクトの動きの大きさ又は規則性に基づいて予測精度を推定してもよい。また、予測精度推定部５００は、表示部７００の動きの大きさ又は規則性に基づいて予測精度を推定してもよい。また、予測精度推定部５００は、ユーザの眼の動きの大きさ又は規則性に基づいて予測精度を推定してもよい。
【００６２】
（出力制御部６００）
出力制御部６００は、表示部７００による仮想オブジェクトの表示処理（描画処理）を制御する。詳しくは、出力制御部６００は、視界内状態予測部４００により予測された実オブジェクトの位置に対応する位置に、又は視界内状態予測部４００により予測された実オブジェクトの姿勢に対応する姿勢で、仮想オブジェクトを表示させる。これにより、例えば実オブジェクトの表面に仮想オブジェクトを重畳的に表示したり、実オブジェクトの上空に仮想オブジェクトを紐付けて表示したりすることが可能となる。
【００６３】
ここで、仮想オブジェクトの表示位置は、ユーザが知覚する実空間における位置（即ち、世界座標系における位置）を意味していてもよいし、表示部７００（例えば、透過型のディスプレイ）上の位置（即ち、画面上の座標）を意味していてもよい。ただし、いずれを意味するかによって、仮想オブジェクトの表示は異なり得る。例えば、ユーザが知覚する位置としては遠近感があっても、表示部７００上では同じ位置に表示されている場合がある。
【００６４】
出力制御部６００は、予測精度推定部５００による推定結果に基づいて、実オブジェクトに対応する仮想オブジェクトの表示を制御する。予測精度が高いほど表示の乱れが生じにくく、予測精度が低いほど表示の乱れが生じやすいためである。出力制御部６００は、予測精度を加味した表示を行うことで、仮想オブジェクトの表示の乱れをより抑制することが可能となる。
【００６５】
例えば、出力制御部６００は、予測精度が高いほど対応する実オブジェクトとの関連性が高くなるよう仮想オブジェクトを表示させ、予測精度が低いほど対応する実オブジェクトとの関連性が低くなるよう仮想オブジェクトを表示させてもよい。予測精度が低いほど、例えば実オブジェクトから離れた位置に仮想オブジェクトが表示される等の表示の乱れが発生し得るためである。そのような場合に、関連性が低く（例えば、おおまかに）表示されることで、実オブジェクトから離れた位置に仮想オブジェクトが表示される場合であっても、ユーザは関連性をおおまかに把握することが可能である。このように、仮想オブジェクトの表示が乱れる場合であっても、その影響を関連性が低い表示により軽減することが可能となる。予測精度が高い場合は、関連性が高く表示されることで、ユーザは関連性を明確に把握することが可能である。このような表示制御に係る具体的なＵＩ例は、図７〜図１１を参照して後に詳しく説明する。例えば、図７に関しては、関連性が高い表示とは仮想オブジェクトを小さく表示することを指し、関連性が低い表示とは仮想オブジェクトを大きく表示することを指す。仮想オブジェクトが小さく表示されるほど、仮想オブジェクトに実オブジェクトが隙間なく収まることとなり、高い関連性が表現される。一方で、仮想オブジェクトが大きく表示されるほど、仮想オブジェクトに実オブジェクトが隙間を設けて収まることとなり、低い関連性が表現される。他の例として、図１１に関しては、関連性が高い表示とはモーションブラー処理を適用しない表示を指し、関連性が低い表示とはモーションブラー処理を適用する表示を指す。仮想オブジェクトにモーションブラー処理が適用されない場合、仮想オブジェクトの表示位置が明確になり、実オブジェクトとの関連性が明確に（即ち、高く）表現される。仮想オブジェクトにモーションブラー処理が適用される場合、仮想オブジェクトの表示位置が曖昧になり、実オブジェクトとの関連性が曖昧に（即ち、低く）表現される。
【００６６】
例えば、出力制御部６００は、予測精度が高いほど仮想オブジェクトを明確に表示させ、予測精度が低いほど仮想オブジェクトを曖昧に表示させてもよい。より具体的には、出力制御部６００は、予測精度が低いほど仮想オブジェクトをぼかして表示させてもよい。予測精度が低いほど、例えば実オブジェクトから離れた位置に仮想オブジェクトが表示される等の表示の乱れが発生し得るためである。そのような場合に、仮想オブジェクトそのものが曖昧に（例えば、薄く）表示されることで、実オブジェクトから離れた位置に仮想オブジェクトが表示される場合であっても、そのずれの印象を弱めることが可能である。このように、仮想オブジェクトの表示が乱れる場合であっても、その影響を曖昧な表示により軽減することが可能となる。予測精度が高い場合は、適切な位置に仮想オブジェクトが明確に表示されることが可能である。このような表示制御に係る具体的なＵＩ例は、図１０〜図１２を参照して後に詳しく説明する。
【００６７】
出力制御部６００は、仮想オブジェクトの表示を予測精度が低い要因に応じた表示にさせてもよい。例えば、出力制御部６００は、表示の乱れの影響をより軽減することが可能な描画手法を、要因に応じて選択する。これにより、仮想オブジェクトの表示が乱れる場合であっても、その影響を軽減することが可能となる。
【００６８】
具体的なＵＩ例については、後に詳しく説明する。
【００６９】
なお、上記では、出力制御部６００は、仮想オブジェクトの表示を制御すると説明したが、より詳しくは、出力制御部６００は、表示部７００に仮想オブジェクトを表示させるための情報を出力する。その場合、出力制御部６００は、仮想オブジェクトを描画する領域、姿勢、大きさ等を決定して、仮想オブジェクトをレンダリングした画像情報を生成し、生成した画像情報を出力する。そして、表示部７００は、この画像情報に基づいて表示を行う。
【００７０】
（表示部７００）
表示部７００は、ユーザへ情報を表示する機能を有する。表示部７００は、出力制御部６００による制御に基づき仮想オブジェクトを表示する。表示部７００は、実空間にある実オブジェクトを透過しつつ仮想オブジェクトを表示する透過型の表示装置であってもよい。その場合、情報処理装置１は、図１に示した透過型のＨＭＤとして実現され、表示部７００は、図１に示した表示部２０Ａ及び２０Ｂとして実現される。また、表示部７００は、撮像された実オブジェクトをリアルタイムに表示しつつ仮想オブジェクトをさらに表示する非透過型の表示装置であってもよい。その場合、情報処理装置１は、没入型（ビデオスルー型）のＨＭＤとして実現され得る。
【００７１】
（補足）
図５では、各構成要素が同一の装置内に含まれる例を示したが、本技術はかかる例に限定されない。例えば、情報処理装置１の各構成要素は、複数の装置に分離して含まれていてもよく、例えば情報処理を行うサーバと入出力を行うクライアントとに分離して含まれ得る。また、各種センサは、環境設置型の装置であってもよい。また、描画遅延検知部３００が検知するタイムラグには、例えば通信遅延等が含まれてもよい。
【００７２】
以下に、情報処理装置１としての機能が複数の装置の協働により実現される場合における、各構成要素がどのような装置に含まれるかの一例を示す。ここでは、ＨＭＤのような表示部７００を有する装置をローカルとも称し、クラウド上のサーバ等のローカル以外の装置を外部とも称する。
【００７３】
実オブジェクト検知部１００は、ローカルに含まれてもよいし、外部に含まれてもよい。例えば、車の窓ガラスが表示部７００として機能する場合に、車外のカメラが実オブジェクト検知部１００として機能し得る。
【００７４】
実オブジェクト認識部１２０は、ローカルに含まれてもよいし、外部に含まれてもよい。例えば、認識処理の全部がクラウド上で行われてもよいし、一部の負荷の大きい認識処理がクラウド上で行われてもよい。
【００７５】
実オブジェクト予測部１４０は、ローカルに含まれてもよいし、外部に含まれてもよい。ただし、実オブジェクト予測部１４０が外部に含まれる場合、レイテンシが大きくなるため予測が困難になり得る。
【００７６】
視点検知部２００は、ローカルに含まれてもよいし、外部に含まれてもよい。例えば、車の窓ガラスが表示部７００として機能する場合に、アイウェアに含まれるセンサが視点検知部２００として機能し得る。
【００７７】
視点認識部２２０は、ローカルに含まれてもよいし、外部に含まれてもよい。ただし、視点認識部２２０は、視点検知部２００と同じ側に含まれることが望ましい。
【００７８】
視点予測部２４０は、ローカルに含まれてもよいし、外部に含まれてもよい。ただし、視点予測部２４０が外部に含まれる場合、レイテンシが大きくなるため予測が困難になり得る。
【００７９】
描画遅延検知部３００は、ローカルに含まれることが望ましい。ローカルと外部との通信遅延等も含めて遅延を検知するためである。
【００８０】
視界内状態予測部４００は、ローカルに含まれてもよいし、外部に含まれてもよい。ただし、視界内状態予測部４００が外部に含まれる場合、レイテンシが大きくなるため予測が困難になり得る。
【００８１】
予測精度推定部５００は、ローカルに含まれてもよいし、外部に含まれてもよい。ただし、予測精度推定部５００が外部に含まれる場合、レイテンシが大きくなるため予測が困難になり得る。
【００８２】
出力制御部６００は、ローカルに含まれてもよいし、ローカル及び外部の双方に含まれてもよい。例えば、仮想オブジェクトの描画はクラウド上で行われ、仮想オブジェクトの出力位置合わせがローカルで行われてもよい。
【００８３】
以上、本実施形態に係る情報処理装置１の構成例を説明した。続いて、図６を参照して、情報処理装置１において実行される処理の流れを説明する。
【００８４】
＜２．２．処理の流れ＞
図６は、本実施形態に係る情報処理装置１において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【００８５】
図６に示すように、まず、実オブジェクト認識部１２０は、検知時刻Ｔ０において実オブジェクト検知部１００により検知された情報に基づいて、実オブジェクトの位置又は姿勢を認識する（ステップＳ１０２）。次いで、実オブジェクト予測部１４０は、表示時刻Ｔ２における実オブジェクトの位置又は姿勢を予測する（ステップＳ１０４）。
【００８６】
また、視点認識部２２０は、検知時刻Ｔ０において視点検知部２００により検知された情報に基づいて、視点の位置又は姿勢を認識する（ステップＳ１０６）。次いで、視点予測部２４０は、表示時刻Ｔ２における視点の位置又は姿勢を予測する（ステップＳ１０８）。
【００８７】
そして、視界内状態予測部４００は、実オブジェクト予測部１４０及び視点予測部２４０による予測結果に基づいて、視界内の実オブジェクトの位置又は姿勢を予測する（ステップＳ１１０）。次に、予測精度推定部５００は、予測精度を推定する（ステップＳ１１２）。予測精度の演算のために、描画遅延検知部３００は、タイムラグの長さを検知してもよい。
【００８８】
次いで、出力制御部６００は、予測精度は閾値より高いか否かを判定する（ステップＳ１１４）。高いと判定された場合（ステップＳ１１４／ＹＥＳ）、出力制御部６００は、通常の表示方法を用いて、表示部７００に仮想オブジェクトを表示させる（ステップＳ１１６）。例えば、出力制御部６００は、実オブジェクトとの関連性が高く表現された仮想オブジェクトを表示する。一方で、低いと判定された場合（ステップＳ１１４／ＮＯ）、出力制御部６００は、精度が低い場合の表示方法を用いて、表示部７００に仮想オブジェクトを表示させる（ステップＳ１１８）。例えば、出力制御部６００は、実オブジェクトとの関連性が低く表現された仮想オブジェクトを表示する。
【００８９】
その後、処理が継続される場合（ステップＳ１２０／ＮＯ）、処理は再度ステップＳ１０２に戻り、継続されない場合（ステップＳ１２０／ＹＥＳ）、処理は終了する。
【００９０】
以上、処理の流れの一例について説明した。
【００９１】
＜２．３．ＵＩ例＞
続いて、図７〜２２を参照して、ＵＩ例について詳しく説明する。
【００９２】
（１）予測精度に応じたＵＩの変化
まず、予測精度に応じたＵＩの変化について説明する。
【００９３】
・仮想オブジェクトの大きさの変化
情報処理装置１（例えば、出力制御部６００）は、予測精度に応じて仮想オブジェクトの大きさを変化させてもよい。例えば、情報処理装置１は、表示すべき領域を含むように、予測精度が低いほど仮想オブジェクトを大きく表示する。また、情報処理装置１は、表示すべき領域に含まれるように、予測精度が低いほど仮想オブジェクトを小さく表示する。このような処理により、表示すべき領域から外れた位置に仮想オブジェクトが表示されることが防止されるので、表示の乱れが抑制される。以下、前者については図７を参照し、後者については図８を参照して、具体的に説明する。
【００９４】
図７は、本実施形態に係るＵＩ例を説明するための説明図である。本ＵＩ例は、実オブジェクトが収まるような仮想オブジェクトを表示するアプリケーションを想定したＵＩ例である。例えば、予測精度が高い場合、情報処理装置１は、実空間画像６０Ａに示すように、仮想オブジェクト８０を小さく表示する。実空間画像６０Ａを参照すると、予測精度が高いため、小さい表示であっても、仮想オブジェクト８０内に実オブジェクト７０が収まっている。一方で、予測精度が低い場合、情報処理装置１は、実空間画像６０Ｂに示すように、仮想オブジェクト８０を大きく表示する。実空間画像６０Ｂを参照すると、予測精度が低いため、実オブジェクト７０の位置は仮想オブジェクト８０の中心から外れている一方、仮想オブジェクト内に実オブジェクト７０が収まっている。このような処理により、仮想オブジェクト８０内に少なくとも実オブジェクト７０が収まることとなる。
【００９５】
図８は、本実施形態に係るＵＩ例を説明するための説明図である。本ＵＩ例は、掲示板に仮想的なポスターを重ねて表示するアプリケーションを想定したＵＩ例である。例えば、予測精度が高い場合、情報処理装置１は、実空間画像６０Ａに示すように、掲示板７０の板面と同程度のサイズでポスター８０を表示する。一方で、予測精度が低い場合、情報処理装置１は、実空間画像６０Ｂに示すように、掲示板７０の板面よりも小さいサイズでポスター８０を表示する。このような処理により、掲示板７０の板面に少なくともポスター８０が重なって表示されることとなる。
【００９６】
・仮想オブジェクトの表示／非表示
情報処理装置１（例えば、出力制御部６００）は、予測精度に応じて仮想オブジェクトの表示／非表示を切り替えてもよい。例えば、情報処理装置１は、予測精度が高い場合は仮想オブジェクトを表示して、低い場合は仮想オブジェクトを非表示にする。これにより、予測精度が低い場合に少なくとも表示の乱れの発生を抑止することが可能となる。この点について、図９を参照して説明する。
【００９７】
図９は、本実施形態に係るＵＩ例を説明するための説明図である。本ＵＩ例は、図７と同様に、実オブジェクトが収まるような仮想オブジェクトを表示するアプリケーションを想定したＵＩ例である。例えば、予測精度が高い場合、情報処理装置１は、実空間画像６０Ａに示すように、仮想オブジェクト８０を小さく表示する。実空間画像６０Ａを参照すると、予測精度が高いため、小さい表示であっても、仮想オブジェクト８０内に実オブジェクト７０が収まっている。一方で、予測精度が低い場合、情報処理装置１は、実空間画像６０Ｂに示すように、仮想オブジェクト８０を表示しない。このような処理により、少なくとも表示の乱れを抑止することが可能となる。
【００９８】
・仮想オブジェクトの描画エフェクトの変化
情報処理装置１（例えば、出力制御部６００）は、予測精度に応じて仮想オブジェクトに適用する描画エフェクトを変化させてもよい。例えば、情報処理装置１は、予測精度が低いほど仮想オブジェクトの境界を曖昧にするアニメーションを適用する。これにより、仮想オブジェクトの表示が乱れる場合であっても、その影響を軽減することが可能となる。採用される描画エフェクトは多様に考えられる。以下では、その典型的な例として、図１０及び図１１を参照してモーションブラー処理について説明し、図１２を参照してマスク処理について説明する。
【００９９】
（モーションブラー処理）
情報処理装置１は、仮想オブジェクトにモーションブラー処理を適用し、仮想オブジェクトにモーションブラーを付加して表示させ得る。まず、図１０を参照して、モーションブラー処理の適用方針を説明する。
【０１００】
図１０は、本実施形態に係るＵＩ例を説明するための説明図である。仮想オブジェクト８０Ａが、デフォルトの表示であるものとする。情報処理装置１は、視界内における仮想オブジェクト８０Ａの移動方向８１への移動量の予測精度が低下すると、所定量又は一瞬だけ移動方向８１へのモーションブラー処理を適用した仮想オブジェクト８０Ｂを描画する。これにより、仮想オブジェクトの境界が曖昧になる。情報処理装置１は、予測精度が回復した場合、モーションブラー処理の適用を停止した仮想オブジェクト８０Ｃを再度描画する。
【０１０１】
以上、モーションブラー処理の適用方針を説明した。続いて、図１１を参照してモーションブラー処理の具体例を説明する。
【０１０２】
図１１は、本実施形態に係るＵＩ例を説明するための説明図である。本ＵＩ例は、実オブジェクトに対して吹き出しを表示するアプリケーションを想定したＵＩ例である。例えば、予測精度が高い場合、情報処理装置１は、実空間画像６０Ａに示すように、モーションブラー処理を適用せず吹き出し８０を明確に表示する。実空間画像６０Ａを参照すると、予測精度が高いため、吹き出し８０が正しく人物７０を指している。一方で、予測精度が低い場合、情報処理装置１は、実空間画像６０Ｂに示すように、モーションブラー処理を適用した吹き出し８０を表示する。実空間画像６０Ｂを参照すると、予測精度が低いため、吹き出し８０が指す位置は人物７０から外れている一方、吹き出し８０が指す位置が曖昧に表示されているため、その表示ずれが目立っていない。その上、人物７０の動きに追従するようにモーションブラー処理が適用されているので、吹き出し８０が人物７０に追従することが表現されている。このような処理により、表示の乱れの影響を軽減することが可能となる。
【０１０３】
（マスク処理）
情報処理装置１は、例えば仮想オブジェクトにマスク処理を適用し、仮想オブジェクトの外縁部ほど希薄に表示させ得る。以下、図１２を参照して、マスク処理の適用方針を説明する。
【０１０４】
図１２は、本実施形態に係るＵＩ例を説明するための説明図である。仮想オブジェクト８０Ａが、デフォルトの表示であるものとする。情報処理装置１は、視界内における仮想オブジェクト８０Ａの動きに関する予測精度が低下すると、仮想オブジェクトを覆うサイズの円８２を描画して重畳することで、境界が曖昧になった仮想オブジェクト８０Ｂを描画する。円８２は、外縁部ほど透過率が低く、中心ほど透過率が高いことが望ましい。その場合、仮想オブジェクト８０Ｂに示すように、境界ほど曖昧になる表示が実現される。情報処理装置１は、予測精度が回復した場合、マスク処理の適用を停止した仮想オブジェクト８０Ｃを再度描画する。
【０１０５】
（２）精度低下要因に応じた描画手法の変化
続いて、精度低下要因に応じた描画手法の変化について説明する。
【０１０６】
情報処理装置１（出力制御部６００）は、予測精度が低い要因に応じて仮想オブジェクトの描画手法を変化させてもよい。例えば、予測精度が低い要因が、視点の動きに起因するもの（例えば、視点が大きく動いたこと等）である場合、情報処理装置１は、仮想オブジェクトを非表示にする。一方で、予測精度が低い要因が、実オブジェクトの動きに起因するもの（例えば、実オブジェクトが大きく動いたこと等）である場合、情報処理装置１は、仮想オブジェクトにモーションブラー処理を適用する。以下、図１３を参照して、精度低下要因に応じた描画手法の変化に関する処理の流れを説明する。
【０１０７】
図１３は、本実施形態に係る情報処理装置１において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。ステップＳ２０２〜Ｓ２１６に係る処理は、図６を参照して上記説明したＳ１０２〜Ｓ１１６に係る処理と同様であるため、ここでの詳細な説明は省略する。
【０１０８】
ステップＳ２１４において、予測精度が低いと判定された場合（ステップＳ２１４／ＮＯ）、予測精度推定部５００は、予測精度が低い要因を推定する（ステップＳ２１８）。
【０１０９】
予測精度が低い要因が、視点が大きく動いていることであると推定された場合（ステップＳ２２０／ＹＥＳ）、出力制御部６００は、仮想オブジェクトを非表示にする（ステップＳ２２２）。一方で、予測精度が低い要因が、実オブジェクトが大きく動いていること等であって、視点が大きく動いていることではないと推定された場合（ステップＳ２２０／ＮＯ）、出力制御部６００は、仮想オブジェクトにモーションブラー処理を適用する（ステップＳ２２４）。
【０１１０】
その後、処理が継続される場合（ステップＳ２２６／ＮＯ）、処理は再度ステップＳ２０２に戻り、継続されない場合（ステップＳ２２６／ＹＥＳ）、処理は終了する。
【０１１１】
（３）状況に応じた表示の変化
続いて、状況に応じた表示の変化について説明する。
【０１１２】
情報処理装置１（出力制御部６００）は、多様な情報に基づいて仮想オブジェクトの表示を制御し得る。例えば、情報処理装置１は、ユーザに関する情報、仮想オブジェクトに関する情報、実オブジェクトに関する情報、環境に関する情報、又は情報処理装置１に関する情報等に基づいて、仮想オブジェクトの表示を制御し得る。
【０１１３】
ユーザに関する情報としては、例えば注視点（視線又は焦点）、行動認識結果（静止、歩く、走る、階段昇降、自動車運転、スポーツの種別）、移動速度、生体情報（心拍、体温、発汗、血圧、発汗、脈拍、呼吸、瞬目、眼球運動、凝視時間、瞳孔径の大きさ、血圧、脳波、体動、体位、皮膚温度、皮膚電気抵抗、ＭＶ（マイクロバイブレーション）、筋電位、ＳＰＯ２（血中酸素飽和度））、感情推定結果（喜怒哀楽）、ユーザの姿勢、ユーザの位置、ユーザ設定（手入力）等が挙げられる。
【０１１４】
仮想オブジェクトに関する情報としては、例えば表示サイズ、表示位置、表示の姿勢、表示のアニメ―ション態様（移動速度、移動方向、軌道、更新頻度）、コンテンツの属性（種類、重要度、優先度、アプリケーション種類（ブラウザ、マップ、メーラー、ＩＭＥ、ＳＮＳ））、解像度、色等が挙げられる。
【０１１５】
実オブジェクトに関する情報に関する情報としては、例えば実オブジェクトの種別、形状、位置、姿勢、材質、色等が挙げられる。
【０１１６】
環境に関する情報としては、背景（重要な情報、背景色）、照度、場所（屋内、屋外、シチュエーション（ジオフェンス）、行動履歴（慣れた場所にいるかどうか）、周辺状況（他者、車などの有無、密度）、時間、高度、気温、風向き、風量等が挙げられる。
【０１１７】
情報処理装置１に関する情報としては、ディスプレイ解像度、ディスプレイ方式、センサの有無、ＩＤ、バッテリー残量、バッテリー容量、外部記憶媒体スロットの有無、通信方式、音響特性、イメージャの特性、３Ｄ撮影性能、３Ｄ表示性能、デバイスの姿勢、デバイスの位置等が挙げられる。情報処理装置１がＨＭＤとして実現される場合、情報処理装置１に関する情報は、ＨＭＤ方式を含み得る。また、情報処理装置１がウェアラブルデバイスとして実現される場合、情報処理装置１に関する情報は、ウェアラブルデバイスの装着状態（装着、非装着、装着箇所）、装着位置等を含み得る。
【０１１８】
以下では、一例として、仮想オブジェクトに関する情報に応じた表示の変化の具体例を説明する。
【０１１９】
・コンテンツの内容に応じた表示の変化
図１４は、本実施形態に係る情報処理装置１において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【０１２０】
図１４に示すように、出力制御部６００は、コンテンツが２次元であり、テキストである場合（ステップＳ３０２／ＹＥＳ且つステップＳ３０４／ＹＥＳ）、仮想オブジェクトにモーションブラー処理を適用しない（ステップＳ３０６）。モーションブラー処理が適用されると、テキストが読み辛くなるためである。一方で、出力制御部６００は、コンテンツが２次元でない、又はテキストでない場合（ステップＳ３０２／ＮＯ又はステップＳ３０４／ＮＯ）、仮想オブジェクトにモーションブラー処理を適用する（ステップＳ３０８）。
【０１２１】
以上により処理は終了する。なお、コンテンツが３Ｄである場合、後に説明する３Ｄ用の表示制御処理が実行されてもよい。
【０１２２】
・仮想オブジェクトの表示位置に応じた表示の変化
例えば、情報処理装置１（例えば、出力制御部６００）は、ユーザの位置と仮想オブジェクトの表示位置（実空間における位置）との距離に応じて、仮想オブジェクトの表示を変化させてもよい。以下では、仮想オブジェクトのコンテンツは３次元であるものとする。
【０１２３】
図１５は、本実施形態に係るＵＩ例を説明するための説明図である。自転車に乗っているユーザ９０の前方の視界９１に仮想オブジェクトが表示される状況を想定する。図１５に示すように、９０の前方の空間は、ユーザからの距離がγまでの空間９２、γからβまでの空間９３、βからαまでの空間９４、及びα以上の空間９５に区分けされる。なお、α、β及びγの値は所定値であってもよいし、例えばユーザの移動速度等に応じて変動してもよい。情報処理装置１は、仮想オブジェクトの表示位置がどの空間に属するかに応じて、適用する描画手法を切り替え得る。以下、図１６を参照して、詳しい処理の流れを説明する。
【０１２４】
図１６は、本実施形態に係る情報処理装置１において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【０１２５】
図１６に示すように、出力制御部６００は、ユーザから仮想オブジェクトの表示位置までの距離がαを超える場合（ステップＳ４０２／ＹＥＳ）、仮想オブジェクトにモーションブラー処理又はマスク処理を適用する（ステップＳ４０４）。
【０１２６】
また、出力制御部６００は、ユーザから仮想オブジェクトの表示位置までの距離がαを下回り（ステップＳ４０２／ＮＯ）、且つβを超える場合（ステップＳ４０６／ＹＥＳ）、仮想オブジェクトにアルファフェード処理又はワイヤー処理を適用する（ステップＳ４０８）。
【０１２７】
また、出力制御部６００は、ユーザから仮想オブジェクトの表示位置までの距離がβを下回り（ステップＳ４０６／ＮＯ）、且つγを超える場合（ステップＳ４１０／ＹＥＳ）、仮想オブジェクトに高速スクロール処理を適用する（ステップＳ４１２）。高速スクロール処理については、後に詳しく説明する。
【０１２８】
また、出力制御部６００は、ユーザから仮想オブジェクトの表示位置までの距離がγを下回る場合（ステップＳ４１０／ＮＯ、且つステップＳ４１４／ＹＥＳ）、仮想オブジェクトを非表示にする（ステップＳ４１６）。
【０１２９】
また、出力制御部６００は、ユーザから仮想オブジェクトの表示位置までの距離がγを下回らない場合（ステップＳ４１４／ＮＯ）、仮想オブジェクトにスケール調整、輝度値調整、色変化等を適用する。本ステップは、例えば仮想オブジェクトが表示面上に貼り付く等、距離を有さない場合等に実行され得る。
【０１３０】
以上により、処理は終了する。
【０１３１】
続いて、図１７及び図１８を参照して、高速スクロール処理について説明する。図１７及び図１８は、本実施形態に係るＵＩ例を説明するための説明図である。
【０１３２】
図１７は、高速スクロール処理が適用されていないＵＩ例を示している。図１７に示した実空間画像６０Ａでは、歩行中のユーザの前方を歩行する人物が含まれており、仮想オブジェクトとして複数の標識８０が等間隔に表示されている。標識８０の実空間における位置が固定であるとすると、ユーザが移動した場合、その移動量に応じて標識８０の表示面上の位置は変化する。図１７に示した例では、ユーザは実空間画像６０Ａの奥行き方向に並んだ標識８０に並行して移動しているので、ユーザの移動に応じて標識８０は画枠に向かって移動し、画枠から外に出ると非表示となる。そのため、実空間画像６０Ａでは、画枠に重なる標識８０については画枠内の一部分のみが表示されている。
【０１３３】
図１８は、高速スクロール処理が適用されているＵＩ例を示している。図１８に示した実空間画像６０Ｂでは、自転車で走行中のユーザの前方を自転車で走行する人物が含まれており、図１７と同様に複数の標識８０が表示されている。ただし、図１８に示した例では、図１７に示した例と比較して、ユーザの移動速度が速いので、標識８０が画枠に向かって移動する速度が速い。そのため、図１８に示した例では、標識８０が画枠に向かって移動する際に、画枠に近づくほど標識８０が加速して（間隔が開いて）曖昧に表示されている。即ち、ユーザが標識８０に近づくほど標識８０が加速する。これにより、画枠に近い標識８０は早く画枠から外れることとなるので、画枠に重なる標識８０について画枠内の一部分のみが表示される時間が短くなる。また、人間が、同じ速度で動く物体であっても遠くの物体ほど遅く近くの物体ほど速いと認知するという観点から、仮想オブジェクトがユーザに近づいて画枠に近くなるほど加速して曖昧に表示されることは、仮想オブジェクトの表示の不自然さを軽減する効果がある。なお、標識８０が加速する際、標識８０の実空間における位置が一時的に変動してもよい。
【０１３４】
（４）設定用ＵＩ
続いて、設定用ＵＩについて説明する。
【０１３５】
情報処理装置１（例えば、出力制御部６００）は、仮想オブジェクトの表示に関する設定用の画面を表示してもよい。ユーザは、設定用ＵＩを用いて、モーションブラーの強さや、高速スクロール処理の加速度等を設定することができる。以下、図１９〜図２２を参照して、設定用ＵＩの表示に係る処理の流れ及びＵＩ例について説明する。
【０１３６】
図１９は、本実施形態に係る情報処理装置１において実行される仮想オブジェクトの表示制御処理の流れの一例を示すフローチャートである。
【０１３７】
図１９に示すように、まず、出力制御部６００は、メニューＵＩを表示する（ステップＳ５０２）。メニューＵＩの一例を図２０に示す。図２０は、本実施形態に係るＵＩ例を説明するための説明図である。図２０に示すように、実空間画像６０Ａには、仮想オブジェクトとして、メニューアイテム８０Ａ〜８０Ｃが表示されている。メニューアイテム８０Ａは、ムービー再生のためのメニューアイテムである。メニューアイテム８０Ｂは、表示設定のためのメニューアイテムである。メニューアイテム８０Ｃは、ゲーム実行のためのメニューアイテムである。
【０１３８】
ユーザによりメニューアイテム８０Ｂが選択されると、出力制御部６００は、設定用ＵＩを表示する（ステップＳ５０４）。そして、情報処理装置１（例えば、実オブジェクト認識部１２０又は視点検知部２００）は、ユーザ設定を受け付けて（ステップＳ５０６）、設定を完了する（ステップＳ５０８）。ここでは、図２１及び図２２を参照して、ユーザ設定の受け付けについて説明する。
【０１３９】
図２１は、本実施形態に係るＵＩ例を説明するための説明図である。実空間画像６０Ｂでは、モーションブラーを適用する範囲又は強弱を設定するための設定用ＵＩとして、アイコン８０Ｄ〜８０Ｆが表示されている。これらのアイコンは、ユーザの周囲の実空間に固定されているものとする。アイコン８０Ｄが選択されると、モーションブラーの強度が６．０となる。アイコン８０Ｅが選択されると、モーションブラーの強度が６．２となる。アイコン８０Ｆが選択されると、モーションブラーの強度が６．４となる。なお、これらの数字はあくまで一例である。ユーザは、頭部を左右に振ってアイコン８０Ｄ〜８０Ｆのいずれかを正面に位置させる、又は視線をアイコン８０Ｄ〜８０Ｆのいずれかに向けることで、アイコンの選択を行い、モーションブラーの強度を設定することができる。
【０１４０】
図２２は、本実施形態に係るＵＩ例を説明するための説明図である。実空間画像６０Ｃでは、モーションブラーを適用する範囲又は強弱を設定するための設定用ＵＩとして、アイコン８０Ｇ〜８０Ｉが表示されている。これらのアイコンは、ユーザの周囲の実空間に固定されているものとする。アイコン８０Ｈは、モーションブラーの強度の設定値を示している。アイコン８０Ｇが選択されると、アイコン８０Ｈにおけるモーションブラーの強度の設定値が減少する。アイコン８０Ｉが選択されると、アイコン８０Ｈにおけるモーションブラーの強度の設定値が増加する。アイコン８０Ｈが選択されると、モーションブラーの強度の設定が完了される。ユーザは、頭部を左右に振ってアイコン８０Ｇ〜８０Ｉのいずれかを正面に位置させる、又は視線をアイコン８０Ｇ〜８０Ｉのいずれかに向けることで、アイコンの選択を行い、モーションブラーの強度を設定することができる。
【０１４１】
以上、本実施形態に係る情報処理装置１により提供されるＵＩ例を説明した。
【０１４２】
＜＜３．シースルー型ＨＭＤへの適用例＞＞
続いて、上記説明した第１の実施形態に係る情報処理装置１を、シースルー型ＨＭＤとして実現した場合の構成例を説明する。
【０１４３】
＜３．１．構成例１＞
図２３は、本実施形態に係るＨＭＤ１の論理的な構成の一例を示すブロック図である。図２３に示すように、本実施形態に係るＨＭＤ１は、図５を参照して上記説明した情報処理装置１の構成を基本として、さらに詳細な構成要素を有している。以下、各々の構成要素について詳しく説明する。
【０１４４】
実オブジェクト検知部１００は、カメラ１０２を含む。カメラ１０２は、実空間の画像を撮像するデバイスである。カメラ１０２は、ＨＭＤ１の装着時にユーザの視界（前方）を撮像するように設置される。カメラ１０２は、撮像画像、及び撮像時刻のタイムスタンプを、実オブジェクト認識処理部１２２に提供する。
【０１４５】
実オブジェクト認識部１２０は、実オブジェクト認識処理部１２２及び実オブジェクト辞書１２４を含む。実オブジェクト認識処理部１２２は、カメラ１０２により取得された実空間の情報と、実オブジェクト辞書１２４に登録されている実オブジェクトの特徴とを比較し、重畳対象の実オブジェクトを発見及び認識する。実オブジェクト認識処理部１２２は、認識した実オブジェクトの位置又は姿勢と、認識に用いた情報に付与されたタイムスタンプを、実オブジェクト予測処理部１４２に提供する。実オブジェクト辞書１２４は、重畳対象の実オブジェクトの特徴を記録したデータである。例えば、実オブジェクト辞書１２４は、実オブジェクトをカメラ１０２で撮影した際に得られる特徴点の情報を含み得る。
【０１４６】
実オブジェクト予測部１４０は、実オブジェクト予測処理部１４２及び実オブジェクト認識履歴１４４を含む。実オブジェクト予測処理部１４２は、実オブジェクト認識処理部１２２が認識した実オブジェクトの位置又は姿勢と、実オブジェクト認識履歴１４４とを参照し、実オブジェクトの移動又は姿勢の変化を推定する。実オブジェクト予測処理部１４２は、推定結果に基づいて、表示時刻Ｔ２における実オブジェクトの位置又は姿勢を推定する。実オブジェクト予測処理部１４２は、実オブジェクト認識処理部１２２から提供されたタイムスタンプが示す時刻をＴ０とし、描画遅延検知部３００が出力する遅延ΔＴをＴ０に加えた時刻をＴ２と仮定して予測を行う。例えば、実オブジェクト予測処理部１４２は、実オブジェクトがＴ０からＴ２まで等速直線運動を行うと仮定して予測する。実オブジェクト予測処理部１４２は、予測した実オブジェクトの位置又は姿勢、及び予測に利用した時刻Ｔ０のタイムスタンプを、視界内状態予測処理部４０２へ提供する。実オブジェクト認識履歴１４４は、実オブジェクト認識処理部１２２から提供された、過去数回分の実オブジェクトの位置又は姿勢の認識結果、及びそれに付随するタイムスタンプの履歴である。
【０１４７】
視点検知部２００は、加速度センサ２０２及びジャイロセンサ２０４を含む。加速度センサ２０２は、視点移動を検知するため、ＨＭＤ１にかかる加速度を取得するセンサである。加速度センサ２０２は、取得した加速度と、取得した時刻のタイムスタンプを視点認識処理部２２２に提供する。ジャイロセンサ２０４は、ＨＭＤ１の角速度を取得するセンサである。ジャイロセンサ２０４は、取得した角速度と、取得した時刻のタイムスタンプを視点認識処理部２２２に提供する。
【０１４８】
視点認識部２２０は、視点認識処理部２２２を含む。視点認識処理部２２２は、加速度センサ２０２及びジャイロセンサ２０４により取得された加速度及び角速度に基づいて、ユーザの視点の位置又は姿勢を認識する。視点認識処理部２２２は、認識結果、及び認識に用いたセンサ情報に付与されたタイムスタンプを、視点予測処理部２４２に提供する。
【０１４９】
視点予測部２４０は、視点予測処理部２４２及び視点認識履歴２４４を含む。視点予測処理部２４２は、視点認識処理部２２２の認識結果と視点認識履歴２４４とを参照し、視点の位置又は姿勢（向き）の変化を推定する。視点予測処理部２４２は、推定結果に基づいて、時刻Ｔ２における視点の位置又は姿勢を推定する。視点予測処理部２４２は、視点認識処理部２２２から提供されたタイムスタンプが示す時刻をＴ０とし、描画遅延検知部３００が出力する遅延ΔＴをＴ０に加えた時刻をＴ２と仮定して予測を行う。例えば、視点予測処理部２４２は、視点がＴ０からＴ２まで等速直線運動を行うと仮定して予測する。視点予測処理部２４２は、予測した視点の位置又は姿勢、及び予測に利用した時刻Ｔ０のタイムスタンプを、視界内状態予測処理部４０２へ提供する。視点認識履歴２４４は、視点認識処理部２２２から提供された、過去数回分の視点の位置又は姿勢の認識結果、及びそれに付随するタイムスタンプの履歴である。
【０１５０】
描画遅延検知部３００は、表示時刻Ｔ２が検知時刻Ｔ０に対してどの程度遅延しているかを検知する。描画遅延検知部３００は、実オブジェクト検知部１００及び視点検知部２００のそれぞれが実空間の情報を取得した時点のタイムスタンプと、取得した情報を元にディスプレイコントローラ７０４が画像を出力する時点のタイムスタンプを比較し、その差分を遅延（ΔＴ）として検知する。描画遅延検知部３００は、検知した遅延を、実オブジェクト予測部１４０、視点予測部２４０、及び視界内状態予測部４００のそれぞれに提供する。
【０１５１】
視界内状態予測部４００は、視界内状態予測処理部４０２を含む。視界内状態予測処理部４０２は、実オブジェクト予測処理部１４２が予測した移動後の実オブジェクトの位置又は姿勢と、視点予測処理部２４２が予測した移動後の視点の位置又は姿勢に基づいて、視界内の状態を予測する。詳しくは、視界内状態予測処理部４０２は、ディスプレイコントローラ７０４の画像出力のタイミング（表示時刻Ｔ２）において、仮想オブジェクトの重畳対象の実オブジェクトが、視界内のどの位置にどの姿勢で存在するかを予測する。
【０１５２】
予測精度推定部５００は、予測精度推定処理部５０２、予測関連情報履歴５０４及び精度低下要因推定部５０６を含む。予測精度推定処理部５０２は、視界内状態予測処理部４０２が行なった予測の精度を示す情報をアプリケーション６０４に提供する。予測関連情報履歴５０４は、予測精度推定処理部５０２が推定の際に使用した情報のログである。例えば、予測関連情報履歴５０４は、視界内状態予測処理部４０２の予測結果、予測に利用された実オブジェクト又は視点の位置又姿勢及びその各々に付随するタイムスタンプ、描画遅延検知部３００が出力した遅延ΔＴを含み得る。精度低下要因推定部５０６は、予測精度推定処理部５０２が、予測精度が低いと判断した場合に、予測精度が低下した要因を推定し、推定結果を示す情報をアプリケーション６０４に提供する。例えば、精度低下要因推定部５０６は、予測関連情報履歴５０４を参照し、実オブジェクトが不規則に動いているために予測精度が低い、ユーザが頭を大きく動かし視点が動いているために予測精度が低いといった要因を推定する。
【０１５３】
出力制御部６００は、ＧＰＵ６０２及びアプリケーション６０４を含む。ＧＰＵ６０２は、画像処理に関連する様々な演算を実行する処理装置である。ＧＰＵ６０２は、アプリケーション６０４の指示に基づき描画を行い、描画結果をディスプレイコントローラ７０４へ提供する。アプリケーション６０４は、ユーザが使用する主機能を提供するソフトウェアである。アプリケーション６０４は、機能の一つとして、実空間上の実オブジェクトに仮想オブジェクトを重畳して表示するＵＩを提供する。アプリケーション６０４は、仮想オブジェクトを表示するにあたり、どのような仮想オブジェクトをどのような表現でどこに描画するかを決定し、ＧＰＵ６０２に描画命令を発行することで描画を実施する。アプリケーション６０４は、仮想オブジェクトの表示内容を、予測精度推定処理部５０２の予測結果、及び精度低下要因推定部５０６の推定結果に応じて変化させる。
【０１５４】
表示部７００は、ディスプレイ７０２及びディスプレイコントローラ７０４を含む。ディスプレイ７０２は、ディスプレイコントローラ７０４の出力信号を受け、映像を表示するデバイスである。ディスプレイコントローラ７０４は、ＧＰＵ６０２の描画結果を受け、ディスプレイ７０２に映像信号を出力するデバイスである。ディスプレイコントローラ７０４は、信号を出力する際、出力タイミングの時刻を示す情報をタイムスタンプとして出力し、描画遅延検知部３００へ提供する。
【０１５５】
以上、ＨＭＤ１の構成例を説明した。ただし、本技術は、ＨＭＤ１は、上記説明した構成例以外の構成を取り得る。以下、その一例を説明する。
【０１５６】
＜３．２．構成例２＞
図２４は、本実施形態に係るＨＭＤ１の論理的な構成の一例を示すブロック図である。図２４に示すように、本構成例に係るＨＭＤ１は、実オブジェクト検知部１００に関し図２３に示した構成例と相違する。以下、相違点について説明する。
【０１５７】
実オブジェクト検知部１００は、カメラ１０２及びデプスセンサ１０４を含む。デプスセンサ１０４は、奥行き情報を取得するセンサである。デプスセンサ１０４は、カメラ１０２と同一の方向の奥行き情報を取得するように設置される。デプスセンサ１０４は、取得した奥行き情報、及び取得した時刻のタイムスタンプを、実オブジェクト認識処理部１２２に提供する。なお、カメラ１０２及びデプスセンサ１０４としての機能は、ステレオカメラとして実現されてもよい。
【０１５８】
実オブジェクト認識処理部１２２は、カメラ１０２及びデプスセンサ１０４により取得された実空間の情報と、実オブジェクト辞書１２４に登録されている実オブジェクトの特徴とを比較し、重畳対象の実オブジェクトを発見及び認識する。また、実オブジェクト辞書１２４は、実オブジェクトをカメラ１０２で撮影した際に得られる特徴点の情報、及び実オブジェクトの立体形状に関する情報を含み得る。
【０１５９】
＜３．３．構成例３＞
図２５は、本実施形態に係るＨＭＤ１の論理的な構成の一例を示すブロック図である。図２５に示すように、本構成例に係るＨＭＤ１は、視点検知部２００に関し図２３に示した構成例と相違する。以下、相違点について説明する。
【０１６０】
視点検知部２００は、加速度センサ２０２、ジャイロセンサ２０４及びカメラ２０６を含む。カメラ２０６は、ユーザの両眼を撮像範囲として設置される。カメラ２０６は、取得した撮像画像と、取得した時刻のタイムスタンプを視点認識処理部２２２に提供する。
【０１６１】
視点認識処理部２２２は、加速度センサ２０２、ジャイロセンサ２０４、及びカメラ２０６により取得された、加速度、角速度及び撮像画像に基づいて、ユーザの視点の位置又は姿勢を認識する。
【０１６２】
＜＜４．変形例＞＞
続いて、本実施形態に係る情報処理装置１の変形例を説明する。本変形例に係る情報処理装置１は、予測精度に応じてタイムラグの長さを調整する。
【０１６３】
図２６は、本変形例に係る情報処理装置１の論理的な構成の一例を示すブロック図である。図２６に示すように、本変形例に係る情報処理装置１は、図５に示した構成要素に加えて、時間制御部８００を含む。
【０１６４】
時間制御部８００は、予測精度に応じてタイムラグの長さを制御する機能を有する。上述したように、タイムラグが短いと予測精度の向上が期待される。そのため、時間制御部８００は、予測精度が十分でない場合にタイムラグを短くし、予測精度が過度である場合にタイムラグを長くする。これにより、時間制御部８００は、望ましい予測精度を維持することができる。なお、時間制御部８００は、例えばＣＰＵ、ＧＰＵ、又はセンサ等の動作速度を上げる又は下げることで、タイムラグの長さを制御し得る。もちろん、時間制御部８００は、動作速度を変えずにタイムラグの長さを制御してもよい。
【０１６５】
ここで、動作速度を上げると消費電力が増大し得る。そのため、タイムラグの長さの制御を別の観点から言えば、時間制御部８００は、情報処理装置１の消費電力を制御することで、タイムラグの長さを制御してもよい。例えば、時間制御部８００は、予測精度推定部５００が推定する予測精度が閾値を超える範囲で電力消費を制御する。具体的には、時間制御部８００は、予測精度が閾値を下回る場合に消費電力を上げて動作速度を高速化し、予測精度が閾値を超える場合に消費電力を下げて動作速度を低速化する。これにより、いたずらに消費電力が増大することを防止しつつ、予測精度を維持することができる。
【０１６６】
なお、消費電力を削減するための技術のひとつとして、情報処理装置１（例えば、出力制御部６００）は、例えばユーザが注目している領域に表示される仮想オブジェクト又は注目している仮想オブジェクトに関する処理を、他よりも優先してもよい。例えば、情報処理装置１は、他の仮想オブジェクトに関する処理の処理速度（フレームレート等）を低下させてもよい。これにより、ユーザビリディが低下しない範囲で、省電力化が実現される。
【０１６７】
また、情報処理装置１は、動作モードとして通常モードと省電力モードとを有していてもよい。具体的には、情報処理装置１は、通常モードにおいては、消費電力を上げて動作速度を高速化する。また、情報処理装置１は、省電力モードにおいては、消費電力を下げて動作速度を低速化する。例えば、情報処理装置１は、屋内であれば充電が容易であるため通常モードで動作し、屋外であれば省電力モードで動作する、といった動作の切り替えを、自動的に行ってもよい。
【０１６８】
＜＜５．ハードウェア構成例＞＞
最後に、図２７を参照して、本実施形態に係る情報処理装置のハードウェア構成について説明する。図２７は、本実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。なお、図２７に示す情報処理装置９００は、例えば、図５、図２３〜図２６にそれぞれ示した情報処理装置１を実現し得る。本実施形態に係る情報処理装置１による情報処理は、ソフトウェアと、以下に説明するハードウェアとの協働により実現される。
【０１６９】
図２７に示すように、情報処理装置９００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３及びホストバス９０４ａを備える。また、情報処理装置９００は、ブリッジ９０４、外部バス９０４ｂ、インタフェース９０５、入力装置９０６、出力装置９０７、ストレージ装置９０８、ドライブ９０９、接続ポート９１１及び通信装置９１３を備える。情報処理装置９００は、ＣＰＵ９０１に代えて、又はこれとともに、ＤＳＰ若しくはＡＳＩＣ等の処理回路を有してもよい。
【０１７０】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置９００内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。ＣＰＵ９０１は、例えば、図５、図２３〜図２６にそれぞれ示した実オブジェクト認識部１２０、実オブジェクト予測部１４０、視点認識部２２０、視点予測部２４０、描画遅延検知部３００、視界内状態予測部４００、予測精度推定部５００、及び出力制御部６００を形成し得る。また、ＣＰＵ９０１は、例えば、図２６に示した時間制御部８００を形成し得る。
【０１７１】
ＣＰＵ９０１、ＲＯＭ９０２及びＲＡＭ９０３は、ＣＰＵバスなどを含むホストバス９０４ａにより相互に接続されている。ホストバス９０４ａは、ブリッジ９０４を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９０４ｂに接続されている。なお、必ずしもホストバス９０４ａ、ブリッジ９０４および外部バス９０４ｂを分離構成する必要はなく、１つのバスにこれらの機能を実装してもよい。
【０１７２】
入力装置９０６は、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバー等、ユーザによって情報が入力される装置によって実現される。また、入力装置９０６は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置９００の操作に対応した携帯電話やＰＤＡ等の外部接続機器であってもよい。さらに、入力装置９０６は、例えば、上記の入力手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などを含んでいてもよい。情報処理装置９００のユーザは、この入力装置９０６を操作することにより、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０１７３】
他にも、入力装置９０６は、ユーザに関する情報を検知する装置により形成され得る。例えば、入力装置９０６は、画像センサ（例えば、カメラ）、深度センサ（例えば、ステレオカメラ）、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサ、測距センサ、力センサ等の各種のセンサを含み得る。また、入力装置９０６は、情報処理装置９００の姿勢、移動速度等、情報処理装置９００自身の状態に関する情報や、情報処理装置９００の周辺の明るさや騒音等、情報処理装置９００の周辺環境に関する情報を取得してもよい。また、入力装置９０６は、ＧＮＳＳ（Global  Navigation  Satellite  System）衛星からのＧＮＳＳ信号（例えば、ＧＰＳ（Global  Positioning  System）衛星からのＧＰＳ信号）を受信して装置の緯度、経度及び高度を含む位置情報を測定するＧＮＳＳモジュールを含んでもよい。また、位置情報に関しては、入力装置９０６は、Ｗｉ−Ｆｉ（登録商標）、携帯電話・ＰＨＳ・スマートフォン等との送受信、または近距離通信等により位置を検知するものであってもよい。
【０１７４】
入力装置９０６は、例えば、図５、図２３〜図２６にそれぞれ示した実オブジェクト検知部１００及び視点検知部２００を形成し得る。
【０１７５】
出力装置９０７は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で形成される。このような装置として、ＣＲＴディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ＥＬディスプレイ装置、レーザープロジェクタ、ＬＥＤプロジェクタ及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置９０７は、例えば、情報処理装置９００が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置９００が行った各種処理により得られた結果を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。上記表示装置は、例えば、図５、図２３〜図２６にそれぞれ示した表示部７００を形成し得る。
【０１７６】
ストレージ装置９０８は、情報処理装置９００の記憶部の一例として形成されたデータ格納用の装置である。ストレージ装置９０８は、例えば、ＨＤＤ等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により実現される。ストレージ装置９０８は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置９０８は、ＣＰＵ９０１が実行するプログラムや各種データ及び外部から取得した各種のデータ等を格納する。
【０１７７】
ドライブ９０９は、記憶媒体用リーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９０９は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、ＲＡＭ９０３に出力する。また、ドライブ９０９は、リムーバブル記憶媒体に情報を書き込むこともできる。
【０１７８】
接続ポート９１１は、外部機器と接続されるインタフェースであって、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などによりデータ伝送可能な外部機器との接続口である。
【０１７９】
通信装置９１３は、例えば、ネットワーク９２０に接続するための通信デバイス等で形成された通信インタフェースである。通信装置９１３は、例えば、有線若しくは無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又はＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カード等である。また、通信装置９１３は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ又は各種通信用のモデム等であってもよい。この通信装置９１３は、例えば、インターネットや他の通信機器との間で、例えばＴＣＰ／ＩＰ等の所定のプロトコルに則して信号等を送受信することができる。
【０１８０】
なお、ネットワーク９２０は、ネットワーク９２０に接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、ネットワーク９２０は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ｅｔｈｅｒｎｅｔ（登録商標）を含む各種のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを含んでもよい。また、ネットワーク９２０は、ＩＰ−ＶＰＮ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ−Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）などの専用回線網を含んでもよい。
【０１８１】
以上、本実施形態に係る情報処理装置９００の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて実現されていてもよいし、各構成要素の機能に特化したハードウェアにより実現されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
【０１８２】
なお、上述のような本実施形態に係る情報処理装置９００の各機能を実現するためのコンピュータプログラムを作製し、ＰＣ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
【０１８３】
＜＜６．まとめ＞＞
以上、図１〜図２７を参照して、本開示の一実施形態について詳細に説明した。上記説明したように、情報処理装置１は、表示部７００に映る実オブジェクトの位置又は姿勢の予測に係る予測精度を推定して、推定結果に基づいて実オブジェクトに対応する仮想オブジェクトを表示させる。予測精度が高いほど表示の乱れが生じにくく、予測精度が低いほど表示の乱れが生じやすい。そのため、情報処理装置１は、予測精度を加味した表示を行うことで、仮想オブジェクトの表示の乱れを抑制し、表示の乱れに起因する不快感をより軽減することが可能となる。
【０１８４】
また、情報処理装置１は、予測精度が高いほど仮想オブジェクトの表示が明確になり、予測精度が低いほど仮想オブジェクトの表示が曖昧になるようにする。これにより、仮想オブジェクトの表示にずれが発生すると見込まれる場合であっても、その影響を曖昧な表示により軽減して、ユーザの混乱又は不快感を軽減することができる。
【０１８５】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１８６】
例えば、上記実施形態では、情報処理装置１は仮想オブジェクトの位置又は姿勢を制御するものとして、位置と姿勢とを択一的に記載したが、本技術は係る例に限定されない。情報処理装置１は、位置及び姿勢の双方を制御してもよい。その場合、上記説明において、実オブジェクト及び仮想オブジェクトの位置及び姿勢に関して記載された「又は」を「及び」に読み替えればよい。
【０１８７】
また、本明細書においてフローチャート及びシーケンス図を用いて説明した処理は、必ずしも図示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。
【０１８８】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０１８９】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、
前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、
を備える情報処理装置。
（２）
前記出力制御部は、前記予測精度が高いほど対応する前記実オブジェクトとの関連性が高くなるよう前記仮想オブジェクトを表示させ、前記予測精度が低いほど対応する前記実オブジェクトとの関連性が低くなるよう前記仮想オブジェクトを表示させるための情報を出力する、前記（１）に記載の情報処理装置。
（３）
前記出力制御部は、前記予測精度が低いほど前記仮想オブジェクトをぼかして表示させるための情報を出力する、前記（１）又は（２）に記載の情報処理装置。
（４）
前記出力制御部は、前記仮想オブジェクトにモーションブラーを付加して表示させるための情報を出力する、前記（３）に記載の情報処理装置。
（５）
前記出力制御部は、前記仮想オブジェクトの外縁部ほど希薄に表示させるための情報を出力する、前記（３）に記載の情報処理装置。
（６）
前記出力制御部は、前記予測精度に応じて前記仮想オブジェクトの大きさを変化させる、前記（２）〜（５）のいずれか一項に記載の情報処理装置。
（７）
前記出力制御部は、前記予測精度に応じて前記仮想オブジェクトに適用する描画エフェクトを変化させる、前記（２）〜（６）のいずれか一項に記載の情報処理装置。
（８）
前記出力制御部は、前記仮想オブジェクトの表示を前記予測精度が低い要因に応じた表示にさせるための情報を出力する、前記（１）〜（７）のいずれか一項に記載の情報処理装置。
（９）
前記出力制御部は、前記要因が視点の動きに起因するものである場合、前記仮想オブジェクトを非表示にさせるための情報を出力する、前記（８）に記載の情報処理装置。
（１０）
前記出力制御部は、前記要因が前記実オブジェクトの動きに起因するものである場合、前記仮想オブジェクトにモーションブラーを付加して表示させるための情報を出力する、前記（８）に記載の情報処理装置。
（１１）
前記予測精度推定部は、前記位置又は姿勢の予測に用いられる対象物の、動きの大きさ又は規則性の少なくともいずれかに基づいて前記予測精度を推定する、前記（１）〜（１０）のいずれか一項に記載の情報処理装置。
（１２）
前記対象物は、前記実オブジェクトである、前記（１１）に記載の情報処理装置。
（１３）
前記対象物は、前記表示部である、前記（１１）又は（１２）に記載の情報処理装置。
（１４）
前記対象物は、ユーザの眼である、前記（１１）〜（１３）のいずれか一項に記載の情報処理装置。
（１５）
前記位置又は姿勢の予測は、予測のための情報が検知される時点から前記仮想オブジェクトが表示される時点までの時間に係る予測である、前記（１）〜（１４）のいずれか一項に記載の情報処理装置。
（１６）
前記予測精度に応じて前記時間の長さを制御する時間制御部をさらに備える、前記（１５）に記載の情報処理装置。
（１７）
前記時間制御部は、前記情報処理装置の消費電力を制御することで、前記時間の長さを制御する、前記（１６）に記載の情報処理装置。
（１８）
前記予測精度推定部は、前記時間が長いほど前記予測精度が低く、前記時間が短いほど前記予測精度が高いと推定する、前記（１５）〜（１７）のいずれか一項に記載の情報処理装置。
（１９）
前記出力制御部は、予測された前記実オブジェクトの位置に対応する位置に、又は予測された前記実オブジェクトの姿勢に対応する姿勢で前記仮想オブジェクトを表示させるための情報を出力する、前記（１）〜（１８）のいずれか一項に記載の情報処理装置。
（２０）
前記表示部は、実空間にある前記実オブジェクトを透過しつつ前記仮想オブジェクトを表示する透過型の表示装置である、前記（１）〜（１９）のいずれか一項に記載の情報処理装置。
（２１）
前記表示部は、撮像された前記実オブジェクトをリアルタイムに表示しつつ前記仮想オブジェクトをさらに表示する非透過型の表示装置である、前記（１）〜（１９）のいずれか一項に記載の情報処理装置。
（２２）
実オブジェクトの位置又は姿勢の予測に係る予測精度をプロセッサにより推定することと、
前記予測精度の推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力することと、
を含む情報処理方法。
（２３）
コンピュータを、
実オブジェクトの位置又は姿勢の予測に係る予測精度を推定する予測精度推定部と、
前記予測精度推定部による推定結果に基づいて、前記実オブジェクトに対応する仮想オブジェクトを表示部に表示させるための情報を出力する出力制御部と、
として機能させるためのプログラム。
【符号の説明】
【０１９０】
１        情報処理装置
１００    実オブジェクト検知部
１２０    実オブジェクト認識部
１４０    実オブジェクト予測部
２００    視点検知部
２２０    視点認識部
２４０    視点予測部
３００    描画遅延検知部
４００    視界内状態予測部
５００    予測精度推定部
６００    出力制御部
７００    表示部
８００    時間制御部
【図１】
2017047178.tif 000003
【図２】
2017047178.tif 000004
【図３】
2017047178.tif 000005
【図４】
2017047178.tif 000006
【図５】
2017047178.tif 000007
【図６】
2017047178.tif 000008
【図７】
2017047178.tif 000009
【図８】
2017047178.tif 000010
【図９】
2017047178.tif 000011
【図１０】
2017047178.tif 000012
【図１１】
2017047178.tif 000013
【図１２】
2017047178.tif 000014
【図１３】
2017047178.tif 000015
【図１４】
2017047178.tif 000016
【図１５】
2017047178.tif 000017
【図１６】
2017047178.tif 000018
【図１７】
2017047178.tif 000019
【図１８】
2017047178.tif 000020
【図１９】
2017047178.tif 000021
【図２０】
2017047178.tif 000022
【図２１】
2017047178.tif 000023
【図２２】
2017047178.tif 000024
【図２３】
2017047178.tif 000025
【図２４】
2017047178.tif 000026
【図２５】
2017047178.tif 000027
【図２６】
2017047178.tif 000028
【図２７】
2017047178.tif 000029
【国際調査報告】
2017047178.tif 000030
2017047178.tif 000031