IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニー株式会社の特許一覧

特許7400721情報処理装置、情報処理方法及びプログラム
<>
  • 特許-情報処理装置、情報処理方法及びプログラム 図1
  • 特許-情報処理装置、情報処理方法及びプログラム 図2
  • 特許-情報処理装置、情報処理方法及びプログラム 図3
  • 特許-情報処理装置、情報処理方法及びプログラム 図4
  • 特許-情報処理装置、情報処理方法及びプログラム 図5A
  • 特許-情報処理装置、情報処理方法及びプログラム 図5B
  • 特許-情報処理装置、情報処理方法及びプログラム 図6A
  • 特許-情報処理装置、情報処理方法及びプログラム 図6B
  • 特許-情報処理装置、情報処理方法及びプログラム 図7
  • 特許-情報処理装置、情報処理方法及びプログラム 図8
  • 特許-情報処理装置、情報処理方法及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-11
(45)【発行日】2023-12-19
(54)【発明の名称】情報処理装置、情報処理方法及びプログラム
(51)【国際特許分類】
   G09G 5/00 20060101AFI20231212BHJP
   G06F 3/01 20060101ALI20231212BHJP
   G06F 3/0346 20130101ALI20231212BHJP
   G06T 19/00 20110101ALI20231212BHJP
   G09G 5/02 20060101ALI20231212BHJP
   G09G 5/10 20060101ALI20231212BHJP
   G09G 5/373 20060101ALI20231212BHJP
   G09G 5/377 20060101ALI20231212BHJP
【FI】
G09G5/00 510G
G06F3/01 510
G06F3/0346 424
G06T19/00 600
G09G5/00 520V
G09G5/00 550C
G09G5/00 550X
G09G5/02 B
G09G5/10 B
G09G5/373
G09G5/377 100
【請求項の数】 16
(21)【出願番号】P 2020540171
(86)(22)【出願日】2019-07-30
(86)【国際出願番号】 JP2019029783
(87)【国際公開番号】W WO2020044916
(87)【国際公開日】2020-03-05
【審査請求日】2022-06-17
(31)【優先権主張番号】P 2018160161
(32)【優先日】2018-08-29
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110003339
【氏名又は名称】弁理士法人南青山国際特許事務所
(74)【代理人】
【識別番号】100104215
【弁理士】
【氏名又は名称】大森 純一
(74)【代理人】
【識別番号】100196575
【弁理士】
【氏名又は名称】高橋 満
(74)【代理人】
【識別番号】100168181
【弁理士】
【氏名又は名称】中村 哲平
(74)【代理人】
【識別番号】100117330
【弁理士】
【氏名又は名称】折居 章
(74)【代理人】
【識別番号】100160989
【弁理士】
【氏名又は名称】関根 正好
(74)【代理人】
【識別番号】100168745
【弁理士】
【氏名又は名称】金子 彩子
(74)【代理人】
【識別番号】100176131
【弁理士】
【氏名又は名称】金山 慎太郎
(74)【代理人】
【識別番号】100197398
【弁理士】
【氏名又は名称】千葉 絢子
(74)【代理人】
【識別番号】100197619
【弁理士】
【氏名又は名称】白鹿 智久
(72)【発明者】
【氏名】石原 敦
【審査官】橋本 直明
(56)【参考文献】
【文献】特開2000-348201(JP,A)
【文献】国際公開第2015/145541(WO,A1)
【文献】特開2005-275797(JP,A)
【文献】特開2011-091789(JP,A)
【文献】国際公開第2017/135129(WO,A1)
【文献】特表2016-527536(JP,A)
【文献】米国特許出願公開第2017/0178408(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 5/00
G06F 3/01
G06F 3/0346
G06T 19/00
G09G 5/02
G09G 5/10
G09G 5/373
G09G 5/377
(57)【特許請求の範囲】
【請求項1】
ユーザの動き情報を取得する取得部と、
前記取得部により取得された前記ユーザの動き情報に基づいて、仮想空間内にて静止している仮想オブジェクトである静止仮想オブジェクトの画質を決定する決定部と、
前記決定部により決定された画質に基づいて、前記静止仮想オブジェクトの表示を制御する表示制御部と
を具備し、
前記取得部は、
実空間における前記ユーザ又は前記ユーザの周辺環境に関する情報を検知するセンサ部の検知結果に基づいて、前記ユーザの動き情報を取得し、
前記センサ部の検知結果に基づく前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトを表示する表示部の表示座標における前記静止仮想オブジェクトの表示位置を算出し、
前記静止仮想オブジェクトの表示位置の変動を、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報として取得し、
前記決定部は、前記取得部により取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの画質を決定する
情報処理装置。
【請求項2】
請求項1に記載の情報処理装置であって、
前記取得部は、第1のタイミングで表示した前記静止仮想オブジェクトの第1の表示位置と前記第1のタイミングよりも後の第2のタイミングで表示した前記静止仮想オブジェクトの第2の表示位置との差に基づいて、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報を取得する
情報処理装置。
【請求項3】
請求項1に記載の情報処理装置であって、
前記決定部は、前記静止仮想オブジェクトに対する画質として、前記静止仮想オブジェクトの表示位置が変動していない場合は相対的に高い画質を決定し、前記静止仮想オブジェクトの表示位置が変動している場合は相対的に低い画質を決定する
情報処理装置。
【請求項4】
請求項1に記載の情報処理装置であって、
前記決定部は、前記静止仮想オブジェクトに対する画質として、前記表示位置の変動速度が遅い場合は相対的に高い画質を決定し、前記表示位置の変動速度が速い場合は相対的に低い画質を決定する
情報処理装置。
【請求項5】
請求項1に記載の情報処理装置であって、
前記決定部は、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの画質として前記静止仮想オブジェクトの解像度を決定する
情報処理装置。
【請求項6】
請求項1に記載の情報処理装置であって、
前記決定部は、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの画質として前記静止仮想オブジェクトのテクスチャ、表示濃度、透明度、明度、又は色数を決定する
情報処理装置。
【請求項7】
請求項5に記載の情報処理装置であって、
前記決定部により決定された前記静止仮想オブジェクトの解像度に基づいて、フレームバッファに描画を実行する描画部を更に具備し、
前記表示制御部は、前記決定部により決定された解像度に基づいて、前記フレームバッファに描画された前記静止仮想オブジェクトの表示の大きさを制御する
情報処理装置。
【請求項8】
請求項5に記載の情報処理装置であって、
前記決定部は、前記取得部により取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの縦方向の解像度又は横方向の解像度を決定する
情報処理装置。
【請求項9】
請求項1に記載の情報処理装置であって、
同一の画像で画質の異なる複数の前記静止仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを更に具備し、
前記決定部は、前記取得部により取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記仮想オブジェクト保持テーブルに保持された複数の前記静止仮想オブジェクトから1つの前記静止仮想オブジェクトを選択し、
前記表示制御部は、前記決定部により選択された前記静止仮想オブジェクトの表示を制御する
情報処理装置。
【請求項10】
請求項9に記載の情報処理装置であって、
前記仮想オブジェクト保持テーブルは、前記静止仮想オブジェクトをミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する
情報処理装置。
【請求項11】
請求項9に記載の情報処理装置であって、
前記仮想オブジェクト保持テーブルは、前記静止仮想オブジェクトから生成した複数種類の圧縮テクスチャ画像を予め保持する
情報処理装置。
【請求項12】
請求項1に記載の情報処理装置であって、
前記決定部で前記静止仮想オブジェクトを第1の画質から第2の画質に下げる決定をするために用いられる前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に対する第1の閾値と、前記決定部で前記静止仮想オブジェクトを前記第2の画質から前記第1の画質に上げる決定をするために用いられる、前記第1の閾値より小さい前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に対する第2の閾値とを保持する閾値テーブルを更に有し、
前記決定部は、前記取得部により取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報と前記第1の閾値及び前記第2の閾値との比較に基づいて、前記静止仮想オブジェクトの画質を決定する
情報処理装置。
【請求項13】
請求項1に記載の情報処理装置であって、
前記表示制御部により表示が制御された前記静止仮想オブジェクトを表示する透過型表示部
を更に具備する情報処理装置。
【請求項14】
請求項1に記載の情報処理装置であって、
前記表示制御部により表示が制御された前記静止仮想オブジェクトを他の画像と重畳して表示する非透過型表示部
を更に具備する情報処理装置。
【請求項15】
コンピュータにより実行される情報処理方法であって、
ユーザの動き情報を取得する取得ステップと、
前記取得した前記ユーザの動き情報に基づいて、仮想空間内にて静止している仮想オブジェクトである静止仮想オブジェクトの画質を決定する決定ステップと、
前記決定した画質に基づいて、前記静止仮想オブジェクトの表示を制御する表示制御ステップと
を含み、
前記取得ステップは、
実空間における前記ユーザ又は前記ユーザの周辺環境に関する情報を検知するセンサ部の検知結果に基づいて、前記ユーザの動き情報を取得し、
前記センサ部の検知結果に基づく前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトを表示する表示部の表示座標における前記静止仮想オブジェクトの表示位置を算出し、
前記静止仮想オブジェクトの表示位置の変動を、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報として取得し、
前記決定ステップは、前記取得ステップにより取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの画質を決定する
情報処理方法。
【請求項16】
コンピュータに情報処理方法を実行させるプログラムであって、
前記情報処理方法は、
ユーザの動き情報を取得する取得ステップと、
前記取得した前記ユーザの動き情報に基づいて、仮想空間内にて静止している仮想オブジェクトである静止仮想オブジェクトの画質を決定する決定ステップと、
前記決定した画質に基づいて、前記静止仮想オブジェクトの表示を制御する表示制御ステップと
を含み、
前記取得ステップは、
実空間における前記ユーザ又は前記ユーザの周辺環境に関する情報を検知するセンサ部の検知結果に基づいて、前記ユーザの動き情報を取得し、
前記センサ部の検知結果に基づく前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトを表示する表示部の表示座標における前記静止仮想オブジェクトの表示位置を算出し、
前記静止仮想オブジェクトの表示位置の変動を、前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報として取得し、
前記決定ステップは、前記取得ステップにより取得された前記静止仮想オブジェクトの画質を決定するための前記ユーザの動き情報に基づいて、前記静止仮想オブジェクトの画質を決定する
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
近年、情報処理技術及び表示技術の発展に伴い、現実感のある映像を表示する技術が提供されるようになってきている。このような技術として、拡張現実(AR:Augmented Reality)技術がある。AR技術は、実世界に付加的な情報を重畳してユーザに提示する技術であり、AR技術によりユーザに提示される情報は、アノテーションとも呼ばれ、テキスト、アイコン又はアニメーション等、様々な形態の仮想オブジェクトとして可視化される。
【0003】
上述のようなAR技術は、例えば、ユーザの頭部等に装着されるヘッドマウントディスプレイ(Head Mounted Display:以下、「HMD」と称する)等により具現化される。詳細には、HMDは、ユーザに装着された際にユーザの眼前に位置するディスプレイを有し、ユーザの眼前に上述の仮想オブジェクトを表示する。このようなHMDには、上記ディスプレイが非透過である非透過型と、上記ディスプレイが透過する透過型とがある。ディスプレイが透過型であった場合、上述の仮想オブジェクトは、ディスプレイを介してユーザが視認する実空間に重畳されるようにリアルタイムで表示される。AR技術によれば、このように仮想オブジェクトを表示することにより、ユーザに対して、仮想オブジェクトをあたかも実空間に存在する現実物体のように知覚させることができる。例えば、このような透過型のディスプレイを用いたHMDは、下記の特許文献1及び2に開示されている。更に、これらHMDは、ユーザの頭部等に装着されることから、コンパクトな形態を有している。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2016-208380号公報
【文献】特開2016-157458号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
この種の情報処理装置では、リアルな表現をしようとするほど描画負荷が増し、描画負荷に起因して様々な問題が生じる。
【0006】
以上のような事情に鑑み、本技術の目的は、リアルな表現を維持しつつ描画負荷を抑えることができる情報処理装置、情報処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本技術の一形態に係る情報処理装置は、ユーザの動き情報を取得する取得部と、取得部により取得された動き情報に基づいて、仮想オブジェクトの画質を決定する決定部と、決定部により決定された画質に基づいて、仮想オブジェクトの表示を制御する表示制御部とを含む。
【0008】
本技術の一形態に係る情報処理方法は、ユーザの動き情報を取得し、前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御する。
【0009】
本技術の一形態に係るプログラムは、ユーザの動き情報を取得するステップと、前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定するステップと、前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御するステップとをコンピュータに実行させる。
【発明の効果】
【0010】
以上のように、本技術によれば、リアルな表現を維持しつつ描画負荷を抑えることができる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【0011】
図1】本開示の一実施形態に係る情報処理装置1の概要構成を説明するための図である。
図2】同実施形態に係る情報処理装置1の詳細構成の一例を示すブロック図である。
図3】同実施形態に係る解像度決定部102による解像度決定の動作を説明するための示す概念図である。
図4】同実施形態に係る表示制御部106のサイズ変更動作を説明するための概念図である。
図5A】ユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(その1)である。
図5B】ユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(その2)である。
図6A】ユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図(その1)である。
図6B】ユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図(その2)である。
図7図6Aから図6Bに遷移するまでの間の仮想オブジェクト800の視野600内での相対的な移動の様子を示す正面図である。
図8】同実施形態に係る処理フローを示すフローチャートである。
図9】本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。
【発明を実施するための形態】
【0012】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。
<<本開示の実施形態に係る情報処理装置の概要構成>>
まず、本開示の実施形態に係る情報処理装置の概要について、図1を参照して説明する。図1は、本実施形態に係る情報処理装置1の概要構成を説明するための図である。図1に示すように、本実施形態に係る情報処理装置1は、例えば、ユーザ700の頭部に装着される眼鏡型のHMDにより実現される。すなわち、情報処理装置1は、ユーザ700に装着されるウェアラブル装置である。装着時にユーザ700の眼前に位置する眼鏡レンズ部分に相当する表示部16は、眼鏡レンズ部分の外側を視認することができる透過型、又は、眼鏡レンズ部分の外側を視認することができない非透過型ディスプレイであってもよい。なお、以下の説明においては、透過型ディスプレイの表示部16を持つHMDを「スマートアイグラス」と呼ぶ。
【0013】
本実施形態に係る情報処理装置1は、表示部16に仮想オブジェクトを表示することにより、ユーザ700の眼前に仮想オブジェクトを提示することができる。なお、以下の説明においては、仮想オブジェクトとは、ユーザ700によって実空間に存在する現実物体のように知覚することができる仮想物体のことを意味する。更に、本実施形態においては、情報処理装置1の一例であるHMDは、ユーザ700の両眼に対して仮想オブジェクトを表示する形態に限定されるものではなく、ユーザ700の片眼に対してのみ仮想オブジェクトを表示する形態を持っていてもよい。
【0014】
例えば、情報処理装置1がスマートアイグラスである場合を例に説明すると、図1に示すようにユーザ700の頭部に装着された情報処理装置1は、ユーザ700の眼前に、左眼用と右眼用の一対の表示部16A及び表示部16Bが配置されるような構成を持つ。これら表示部16A、16Bには、例えば透過型ディスプレイが用いられ、情報処理装置1は、当該透過型ディスプレイの透過率を制御することで、表示をスルー状態、すなわち透明又は半透明の状態にできる。また、表示部16A、16Bがスルー状態となることで、情報処理装置1を眼鏡のように常時装着する場合であっても、ユーザ700は周囲の実空間を知覚することが可能であるため、ユーザ700の通常の生活に支障を与えることはない。更に、表示部16A及び16Bは、スルー状態のまま、テキストや図等の画像を表示することができ、すなわち、拡張現実(AR)として、実空間に仮想オブジェクトを重畳して表示することができる。このような透過型ディスプレイは、例えば、ハーフミラーや透明な導光板を用いて、透明な導光部等からなる虚像光学系をユーザ700の眼前に保持し、当該虚像光学系の内側に仮想オブジェクトを表示させる。
【0015】
なお、本実施形態においては、非透過型ディスプレイを用いた場合には、表示部16は、情報処理装置1に設けられた外向きカメラ120(詳細については、後述する)で撮像された実空間の撮像画像を表示しつつ、当該実空間の撮像画像に仮想オブジェクトを重畳表示してもよい。
【0016】
更に、本実施形態においては、表示部16は、ユーザ700の網膜に直接的に映像を投影するLED(Light Emitting Diode)光源等として実現されてもよい。すなわち、情報処理装置1は、プロジェクション型のHMDとして実現されてもよい。
【0017】
また、表示部16には、多様なコンテンツが仮想オブジェクトとして表示され得る。仮想オブジェクトは、例えば、ユーザ700へ提示される情報を模式的に示すマーカ(標識等)や、マップ、現実物体を模式的に示す形状(人物、電話機、看板等)等であってもよい。更に、仮想オブジェクトは、映画やビデオクリップ等の動画コンテンツ、デジタルスチルカメラ等で撮像された静止画コンテンツ、電子書籍等のデータ等であってもよい。すなわち、仮想オブジェクトとして表示され得るコンテンツとしては、表示対象となり得るあらゆるものを想定することができる。
【0018】
情報処理装置1には、ユーザ700の周囲の実空間を撮像する外向きカメラ120が設けられている。詳細には、当該外向きカメラ120は、ユーザ700が情報処理装置1を装着した状態において、ユーザ700が視認する方向の実空間を撮像範囲として撮像するように、情報処理装置1に設置されている。なお、外向きカメラ120が複数設けられている場合、これら外向きカメラ120による視差情報からデプス画像(距離画像)を得ることができることから、情報処理装置1は、周囲の環境の情報、例えば、実空間に存在する実物体の形状及び位置関係等を認識することができる。
【0019】
更に、図1には図示していないが、情報処理装置1には、装着時にユーザ700の表情等を撮像する内向きカメラ122(図2 参照)が設けられていてもよい。詳細には、内向きカメラ122は、ユーザ700が情報処理装置1を装着した状態において、ユーザ700の表情やユーザ700の両眼を撮像範囲として撮像するように、情報処理装置1に設置されている。なお、内向きカメラ122が複数設けられている場合、情報処理装置1は、これら内向きカメラ122によって得られた視差情報から、ユーザ700の眼球の位置、瞳孔の位置、視線の向き、及び動き等を精度よく認識することができる。
【0020】
また、図1には図示していないが、情報処理装置1には、音声等を取得するマイクロフォン124(以下、「マイク」と示す。)(図2参照)等の各種センサが設けられていてもよい。更に、図1には図示していないが、情報処理装置1にはスピーカ18(図2参照)が設けられていてもよい。例えば、スピーカ18は、ユーザ700の左右の耳に対応する1対のイヤホンスピーカにいって実現されてもよい。また、このように、情報処理装置1に同種のセンサが複数設けられていてもよい。
【0021】
図1には図示していないが、情報処理装置1には、ユーザ700により入力操作を行うためのボタンやスイッチ等(操作入力部の一例)が設けられていてもよい。更に、情報処理装置1に対するユーザ700の入力操作としては、ボタン等に対する操作だけでなく、音声による入力、手又は頭部によるジェスチャ入力、視線による入力等の様々な入力方式を選択することができる。なお、これら各種の入力方式による入力操作は、情報処理装置1に設けられた各種センサ等により取得されることができる。
【0022】
なお、本実施形態においては、情報処理装置1の形態は図1に示す例に限定されるものではない。例えば、情報処理装置1は、ヘッドバンド型のHMDや、ヘルメットタイプ(例えば、ヘルメットのバイザー部分がディスプレイに相当する)のHMDであってもよい。すなわち、本実施形態においては、情報処理装置1は、ユーザ700に装着されることができるウェアラブル装置であり、装着時にユーザ700の眼前に位置する表示部16を有していれば、特にその形態は限定されるものではない。なお、上述のヘッドバンド型は、ユーザ700の頭部の全周を回るバンドで装着されるタイプのことを意味する。また、当該ヘッドハンド型には、ユーザ700の側頭部だけでなく頭頂部を通るバンドを設ける場合も含まれる。
【0023】
なお、先に説明したように、以下の説明においては、情報処理装置1が透過型ディスプレイを持つスマートアイグラスと呼ばれるHMDである場合を例に挙げて説明する。
【0024】
<<本開示の技術的背景>>
以上、本実施形態に係る情報処理装置1の概要について説明した。続いて、このような情報処理装置1における技術的背景を説明する。
先に説明したように、本実施形態に係る情報処理装置1は、実空間に仮想オブジェクトを重畳表示する。そして、仮想オブジェクトの解像度を高くすることで、実空間に仮想オブジェクトをよりリアルに表現することができる。
【0025】
しかしながら、仮想オブジェクトをリアルに表現しようとすればするほど情報処理装置1での単位時間当たりの描画時間が長くなり、表示フレームレートの低下を引き起こし、例えばアニメーションのコマ落ちなどの品位低下を招く。特に、ユーザ700が静止しながら仮想物体を見ている場合と比べ、ユーザ700が動いている場合、典型的には移動している、キョロキョロしているなどの場合は、仮想オブジェクトが動くように表示されることからユーザ700が上記のコマ落ちなどの品位低下を看過できなくなることもある。
【0026】
加えて、情報処理装置1において、仮想オブジェクトをリアルに表現しようとすればするほどプロセッサのリソースを多く要求するので、発熱量が多くなり、例えばプロセッサが停止する原因となり、或いはユーザ700が火傷するリスクが高まる。特に、上述のようなHMD等からなる情報処理装置1はユーザ700の頭部に装着されるのであるから、火傷するリスクは回避しなければならない。
【0027】
更に、情報処理装置1において、仮想オブジェクトをリアルに表現しようとすればするほどプロセッサのリソースを多く要求することになるので単位時間当たりの電力消費量が多くなり、例えばバッテリの消耗が激しくなる。特に、上述のようなHMD等からなる情報処理装置1は、ユーザ700の頭部に装着されることから、コンパクトな形態を有している。情報処理装置1をコンパクトな形態にするために、情報処理装置1に搭載されるバッテリの容量には制限があり、それに伴いプロセッサ等の処理能力や処理による発熱許容量等についても制限がある。
【0028】
そこで、上述のような技術背景を鑑みて、本発明者らは、ユーザ(ユーザ700)の動き情報を取得し、取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、決定した画質に基づいて、仮想オブジェクトの表示を制御する、本開示の実施形態に係る情報処理装置1を創作するに至った。つまり、ユーザ700が静止しながら仮想オブジェクトを見ている場合と比べ、ユーザ700が動いている場合は仮想オブジェクトの細かい部分までは視認しにくいがコマ落ちなどの品質低下は視認しやすくなってしまう点に着目し、ユーザ700が動いているときに仮想オブジェクトの画質をあえて低下させることで、ユーザ700が動いているときに単位時間当たりの描画時間が長くならないようにして表示フレームレートの低下を防いでコマ落ちなどの品位低下を抑制し、またプロセッサのリソースを多く要求する場面や単位時間当たりの電力消費量が多くなる場面をできる限り減らすことができる。なお、画質が解像度である場合には、一般的に解像度を低下させると描画負荷は低くなるため、本実施形態に係る情報処理装置1においてユーザ700の動き情報に基づいて解像度で仮想オブジェクトの表示を制御することで、それに起因する問題の程度は軽くなる。
【0029】
<<実施形態>>
以上、本開示の技術的背景について説明した。続いて、本開示の実施形態について説明する。本実施形態においては、情報処理装置1は、ユーザであるユーザ700の動き情報(例えば、ユーザ700の位置又は姿勢の変動)を取得し、取得した動き情報に基づいて、仮想オブジェクトの画質(例えば解像度)を決定し、決定した画質に基づいて、仮想オブジェクトの表示を制御する。
【0030】
例えば、情報処理装置1を装着したユーザ700が実空間の中央に仮想オブジェクトが重畳表示された状態を見ていて、その状態からユーザ700が首を左に回していくと仮想オブジェクトが実空間の右方向に移動していく。情報処理装置1は仮想オブジェクトの移動速度をユーザ700の位置又は姿勢の変動として取得し、取得した変動に基づいて仮想オブジェクトの解像度を決定し、仮想オブジェクトはその解像度で表示される。例えば、ユーザ700が首を回しているときには仮想オブジェクトは低い解像度で表示される。一方、ユーザ700が静止すると、すなわち変動が0になると、仮想オブジェクトは高い解像度で表示される。また、ユーザ700が首を回す速さ、すなわち変動に応じて解像度で仮想オブジェクトは表示される。例えば、変動速度が速いときには低い解像度で仮想オブジェクトは表示され、変動速度が遅いときには高い解像度で仮想オブジェクトは表示される。このようにすることで、本実施形態によれば、情報処理装置1は、ユーザ700が動いているときに表示フレームレートの低下を防いでコマ落ちなどの品位低下を抑制し、またプロセッサのリソースを多く要求する場面や単位時間当たりの電力消費量が多くなる場面をできる限り減らしている。
【0031】
<実施形態に係る情報処理装置の詳細構成>
まずは、本実施形態に係る情報処理装置1の詳細構成について図2を参照して説明する。図2は、本実施形態に係る情報処理装置1の詳細構成の一例を示すブロック図である。
図2に示すように、情報処理装置1は、制御部10、センサ部12、記憶部14、表示部16、スピーカ18、通信部20、及び操作入力部22を主に有する。以下に、情報処理装置1の各機能部の詳細について説明する。
【0032】
(制御部10)
制御部10は、演算処理装置及び制御装置として機能し、各種プログラムに従って情報処理装置1内の動作全般を制御する。制御部10は、例えばCPU、GPUといったマイクロプロセッサの電子回路によって実現される。また、制御部10は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)等を含んでいてもよい。例えば、制御部10は、ユーザ700の位置や姿勢の変動に応じて仮想オブジェクトの表示解像度等を動的に変化させるように制御する。詳細には、本実施形態に係る制御部10は、図2に示すように、情報取得部100、解像度決定部102、描画部104及び表示制御部106として機能することができる。以下に、制御部10の各ブロックの詳細について説明する。
【0033】
-情報取得部100-
情報取得部100は、後述するセンサ部12により検知された検知結果を用いてユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得することができる。具体的には、情報取得部100は、例えば、ユーザ700の位置や姿勢、状態を認識するユーザ位置・姿勢認識エンジン、ユーザ700の位置を同定するSLAM(Simultaneous Localization And Mapping)認識エンジン、ユーザ700周辺の実空間におけるデプス情報を認識するデプス認識エンジンを含むことができる。
【0034】
更に、情報取得部100は、ユーザ700の視線検知を行う視線認識エンジン、ユーザ700又はユーザ700の周囲の環境音の認識を行う音声認識エンジン、及び、情報処理装置1(ユーザ700)の絶対位置を認識する位置認識エンジン等を含むこともできる。また、情報取得部100は、実空間における現実物体を認識する実オブジェクト認識エンジン等を含んでもよい。なお、これらの認識エンジンはあくまでも一例であり、本実施形態はこれに限定されるものではない。
【0035】
詳細には、ユーザ位置・姿勢認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の位置や頭部等の姿勢(身体に対する顔の向き、又は、傾きを含む)を認識する。例えば、ユーザ位置・姿勢認識エンジンは、ステレオカメラである外向きカメラ120により撮像された撮像画像及び後述する慣性計測装置(IMU:Inertial Measurement Unit)126により取得されたジャイロ情報や加速度情報等を利用して、ユーザ700の位置や姿勢を推定する自己位置・姿勢推定部として機能する。また、ユーザ位置・姿勢認識エンジンは、後述する方位センサにより取得された方位情報等を利用して、ユーザ700の姿勢等を認識してもよい。なお、ユーザ700の位置・姿勢等の認識アルゴリズムは一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
【0036】
SLAM認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の自己位置の推定とユーザ700の周囲の実空間の地図作成を同時に行い、当該実空間における情報処理装置1の位置を同定する。例えば、SLAM認識エンジン(特に、Visual SLAM)は、外向きカメラ120により撮像された撮像画像に基づき、撮像された現実物体の3次元形状を逐次的に復元する。そして、SLAM認識エンジンは、復元結果を外向きカメラ120の位置及び姿勢の検知結果と関連付けることで、ユーザ700の周囲の実空間の地図の作成と、当該実空間における外向きカメラ120(ユーザ700)の位置及び姿勢の推定とを行う。なお、外向きカメラ120の位置及び姿勢については、例えば、センサ部12に設けられたステレオカメラである外向きカメラ120により撮像された撮像画像及び慣性計測装置126等の各種センサにより検知された検知結果に基づき、相対的な変化を示す情報として推定することも可能である。また、SLAM認識のアルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
【0037】
デプス認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の周囲の実空間におけるデプス情報を認識する。具体的には、デプス認識エンジンは、ToF(Time of Flight)方式を利用して、現実物体からの反射光の戻り時間の測定結果に基づいて、実空間におけるセンサ部12と現実物体との間の距離及び凹凸等の形状情報(デプス情報)を認識することができる。また、デプス認識エンジンは、複数の外向きカメラ120による異なる視点から同一の実空間を撮像対象とした複数の撮像画像上での現実物体の違い(両眼視差)に基づいて、実空間における現実物体の位置及び形状を認識してもよい。なお、デプス情報の認識アルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
【0038】
なお、情報取得部100は、上述したデプス認識エンジンの認識結果及びSLAM認識エンジンの認識結果の両方に基づいて、空間認識(空間把握)を行い、ユーザ700の周囲の3次元の実空間における情報処理装置1の位置及び姿勢(HMDやHMDを装着したユーザ700の位置及び姿勢)を認識することもできる。
【0039】
視線認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の視線検知を行う。例えば、視線認識エンジンは、内向きカメラ122により取得したユーザ700の眼球の撮像画像を解析して、ユーザ700の視線方向を認識する。なお、本実施形態においては、視線検知のアルゴリズムについては特に限定されるものではないが、例えば、目頭と虹彩の位置関係、又は、角膜反射と瞳孔の位置関係に基づいて、ユーザ700の視線方向を認識することが可能である。
【0040】
音声認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700、又は、ユーザ700の周囲の環境音の認識を行う。例えば、音声認識エンジンは、後述するマイク124により取得した収音情報に対してノイズ除去や音源分離等を行い、音声認識、形態素解析、音源認識、又は、騒音レベルの認識等を行うことが可能である。また、音声認識エンジンは、認識された音声情報から、所定の文言を抽出してもよい。
【0041】
位置認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の絶対位置を認識する。例えば、位置認識エンジンは、後述する位置測位部132により測位された位置情報、及び、予め取得した地図情報に基づいて、情報処理装置1の場所(例えば駅、学校、家等)を認識することができる。
【0042】
実オブジェクト認識エンジンは、外向きカメラ120等により撮像された撮像画像等に基づいて、現実物体を認識する機能を有する。例えば、実オブジェクト認識エンジンは、外向きカメラ120により撮像された撮像画像から計算される現実物体の特徴量を、予め登録された現実物体の特徴量と照合することにより、現実物体の種類等を認識する。なお、上記特徴量は、例えば、SIFT(Scale-Invariant FeatureTransform)法、又はRandom Ferns法などの公知の特徴量算出技術によって算出することができる。
【0043】
なお、情報取得部100は、情報処理装置1における処理の状態を示す装置プロファイル(例えば、表示処理速度、センサ部12の検知状態、上述した各種認識エンジンにおける認識フレームレート等)を取得してもよい。更に、情報取得部100は、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示位置、表示面積、表示個数、表示形態(例えば、仮想オブジェクトとして表示されるコンテンツの種別、表示される仮想オブジェクトの移動速度等)を取得してもよい。
【0044】
-解像度決定部102-
解像度決定部102は、情報取得部100により取得されたユーザ700の自己の位置及び姿勢の情報に基づいて、ユーザ700の位置や姿勢の変動(例えば前フレームと現フレーム間の自己位置又は姿勢の差分、単位時間当たりの自己位置又は姿勢の差分、すなわち変動速度)を算出する。
例えば、解像度決定部102は、第1のタイミングで表示した仮想オブジェクト800の第1の表示位置と第1のタイミングよりも後の第2のタイミングで表示した仮想オブジェクト800の第2の表示位置との差に基づいて、ユーザ700のユーザ700の自己の位置及び姿勢の変動の情報を取得する。別言すると、例えば、解像度決定部102は、表示部16に表示された過去の表示フレームと現在の表示フレームの差分を監視し、監視結果に基づいてユーザ700の位置や姿勢の変動を算出する。より詳細には、例えば、解像度決定部102は、表示部16に表示された1つ前の表示フレーム内の仮想オブジェクト800の位置と現在の表示フレーム内の仮想オブジェクト800の位置との差分、例えば単位時間あたり仮想オブジェクト800が移動したpixelの値を監視し、その単位時間あたりのpixelの値をユーザ700の位置や姿勢の変動速度とする。
【0045】
なお、上記の例では、仮想オブジェクト800の位置の差分に基づいて、ユーザ700の位置や姿勢の変動を算出しているが、例えば表示部16内で確認できる他のオブジェクトの位置に基づいて、ユーザ700の位置や姿勢の変動を算出してもよい。典型的には、表示部16に表示された実空間のオブジェクトであって、例えば特徴的なオブジェクトを抽出する処理を行って、特徴的なオブジェクトの位置や姿勢の差分に基づいて、ユーザ700の位置や姿勢の変動を算出してもよい。
【0046】
また、上記の表示オブジェクトを使った算出手法は一例であり、本実施形態はこれに限定されるものではない。例えば、解像度決定部102は、ステレオカメラである外向きカメラ120により撮像された撮像画像及び慣性計測装置に126から取得できる計測された加速度の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。また、上記のSLAM(Simultaneous Localization And Mapping)認識エンジンから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。
【0047】
更に、センサ部12に赤外線センサを搭載し、赤外線センサから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。また、センサ部12にレーザーレンジスキャナを搭載し、レーザーレンジスキャナから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。なお、本実施形態の情報処理装置1では、以上の各種手段の組み合わせによってユーザ700の位置や姿勢の変動を算出してもよい。
【0048】
解像度決定部102は、算出したユーザ700の自己の位置や姿勢の変動に基づいて、表示部16の解像度、つまり表示部16に表示される仮想オブジェクト800の解像度を決定し、描画部104に決定した解像度で描画する命令を出力し、表示制御部106に決定した解像度で表示制御する命令を出力する。
【0049】
図3は本実施形態に係る解像度決定部102による解像度決定の動作を説明するための示す概念図である。
本実施形態に係る解像度決定部102は、ユーザ700の位置や姿勢の変動(前フレームの自己位置と又は姿勢の差分)に基づいて、第1の解像度(1280×720pixel)、第2の解像度(960×540pixel)、第3の解像度(640×360pixel)から仮想オブジェクト800の解像度を決定する。1280×720pixel、960×540pixel及び640×360pixelは、表示部16の座標上、つまりスクリーン座標上の解像度を示している。解像度決定部102は、ユーザ700が静止しているときには高解像である第1の解像度(例えば1280×720pixel)とし、ユーザ700が動いているときには、その速度に応じて中解像度である第2の解像度(例えば960×540pixel)又は低解像度である第3の解像度(例えば640×360pixel)を選択する。なお、2次元表示だけでなく、3次元表示の場合についても同様に解像度を制御してもよい。
【0050】
記憶部14は、解像度決定部102で仮想オブジェクトを第1の解像度から第2の解像度に下げる決定をするために用いられる動き情報に対する第1の閾値と、解像度決定部102で仮想オブジェクトを第2の解像度から第1の解像度に上げる決定をするために用いられる、第1の閾値より小さい動き情報に対する第2の閾値とを保持する閾値テーブルを有する。そして、解像度決定部102は、取得された動き情報と第1の閾値及び第2の閾値との比較に基づいて、仮想オブジェクトの解像度を決定する。
詳細には、記憶部14の閾値テーブルには、第1の閾値α、第2の閾値α、第3の閾値β、第4の閾値βが記憶されている。解像度決定部102は、算出したユーザ700の位置や姿勢の変動と記憶部14に記憶された閾値(α、α、β、β)との比較により、解像度を決定する。
【0051】
第1の閾値αは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり15pixel以上になったかを判断するための閾値である。解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixel)であって変動が15pixel以上になった場合には第1の解像度(1280×720pixel)から第2の解像度(960×540pixel)に解像度を下げる決定をする。
【0052】
第2の閾値αは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり30pixel以上になったかを判断するための閾値である。解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixel)又は第2の解像度(960×540pixel)であって変動が30pixel以上になった場合には第1の解像度(1280×720pixel)又は第2の解像度(960×540pixel)から第3の解像度(640×360pixel)に解像度を下げる決定をする。
【0053】
第3の閾値βは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり10pixel未満になったかを判断する閾値である。解像度決定部102は、前フレームの解像度が第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)であって変動が10pixel以下になった場合には第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)から第1の解像度(1280×720pixel)に解像度を上げる決定をする。
【0054】
第4の閾値βは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり20pixel未満になったかを判断する閾値である。解像度決定部102は、前フレームの解像度が第3の解像度(640×360pixel)であって変動が20pixel以下になった場合には第3の解像度(640×360pixel)から第2の解像度(960×540pixel)に解像度を上げる決定をする。
【0055】
本実施形態に係る情報処理装置1は、解像度を下げる際の解像度低下閾値(第1及び第2の閾値α、α)と解像度を上げる際の解像度向上閾値(第3及び第4の閾値β、β)のうち、第1の閾値αと第3の閾値β、第2の閾値αと第4の閾値βとをそれぞれ異なる値とすることで、仮想オブジェクト800の解像度がユーザ700の動きに応じて頻繁に切り替わり、ユーザ700に違和感を与えることがないようにすることができる。
【0056】
なお、本実施形態に係る情報処理装置1は、解像度を上げる際と下げる際の閾値を同じ値としてもよく、また閾値の数は上記の例に限定するものでもない。また、解像度決定部102は、ユーザ700の位置や姿勢の変動と閾値との比較により解像度を決定しているが、例えばユーザ700の位置や姿勢の変動から解像度を決定する計算式などを用いて解像度を決定してもよく、或いはユーザ700の位置や姿勢の変動と解像度との関係を示すテーブルを予め有し、これらの関係から解像度を決定してもよい。
【0057】
また、解像度決定部102は、第1の解像度と第2の解像度と第3の解像度を、変動に応じて縦方向と横方向とを同じ比で上げ下げしているが、例えばユーザ700の縦方向の動きと横方向の動きの割合に応じて、縦方向の解像度と横方向の解像度の上げ下げの割合を変えてもよい。更に、変動に応じて縦方向のみの解像度を上げ下げし、或いは横方向のみの解像度を上げ下げしてもよい。例えば、解像度決定部102は、センサ部12により検出される加速度の情報から、ユーザ700が歩行していることが検出されたときには、縦方向のみの解像度を下げるようにしてもよい。
【0058】
-描画部104-
描画部104は、フレームバッファを有し、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する。
【0059】
-表示制御部106-
表示制御部106は、解像度決定部102が指定した解像度に基づいて、上記のフレームバッファの読み出し領域を表示部16のサイズに拡大又は縮小し、表示部16への表示を制御する。これにより、表示部16には解像度決定部102で決定された解像度に応じた仮想オブジェクト800が表示される。
【0060】
図4は表示制御部106のサイズ変更動作を説明するための概念図である。図4左は描画部104がフレームバッファに画像を描画した状態を示しており、例えば左上は第1の解像度(1280×720pixel)、左下は第3の解像度(640×360pixel)で描画した状態を示している。表示制御部106は、これらのフレームバッファの画像を表示部16のデバイスのサイズに合わせて表示するように制御する。つまり、解像度決定部102は、フレームバッファに描画された図4左上の第1の解像度(1280×720pixel)の画像は図4右上に示すようにそのままの大きさで表示部16に表示するように表示を制御し、フレームバッファに描画された図4左下の第3の解像度(640×360pixel)の画像は図4右下に示すように縦方向に2倍、横方向に2倍拡大した大きさで表示部16に表示するように表示を制御する。
【0061】
(センサ部12)
センサ部12は、ユーザ700又はユーザ700の周辺環境(実空間)に関する各種情報を取得する機能を有する。例えば、センサ部12は、図2に示されるように、外向きカメラ120、内向きカメラ122、マイク124、慣性計測装置126、赤外線センサ128、方位センサ130、位置測位部132、及び生体センサ134を主に含む。なお、上述したセンサは一例であり、本実施形態はこれに限定されるものではない。また、上述した各種センサは、センサ部12にそれぞれ複数設けられていてもよい。以下に、センサ部12に含まれる各センサの詳細について説明する。
【0062】
-外向きカメラ120及び内向きカメラ122-
先に説明したように、外向きカメラ120はユーザ700の周囲の実空間を撮像し、内向きカメラ122はユーザ700の表情等を撮像し、撮像情報を上述の制御部10に出力する。詳細には、外向きカメラ120及び内向きカメラ122は、撮像レンズ、絞り、ズームレンズ、及びフォーカスレンズ等により構成されるレンズ系、当該レンズ系に対してフォーカス動作やズーム動作を行わせる駆動系を有する。更に、外向きカメラ120及び内向きカメラ122は、上記レンズ系で得られる撮像光を光電変換して撮像信号を生成する固体撮像素子アレイ等をそれぞれ有する。なお、当該固体撮像素子アレイは、例えばCCD(Charge Coupled Device)センサアレイや、CMOS(Complementary Metal Oxide Semiconductor)センサアレイにより実現されてもよい。
【0063】
なお、本実施形態では、制御部10は外向きカメラ120を左右一対のカメラから構成されるステレオカメラとし、ステレオカメラによりユーザと所定の位置との距離を計測し、この計測結果と慣性計測装置126により計測される加速度の変動からユーザの位置や姿勢の変動を推定してもよい。
【0064】
-マイク124-
マイク124は、ユーザ700の音声や周囲の環境音を収音し、収音した音声情報を制御部10に出力する。例えば、マイク124は、ユーザ700が発声した指示を収音し、制御部10に出力する。例えば、制御部10は、マイク124から出力された音声情報を解析することにより、ユーザ700の指示を認識することができる。
【0065】
-慣性計測装置126-
慣性計測装置126は、3軸ジャイロと3軸加速度計によって3次元の角速度と加速度を求める。この慣性計測装置126により検知されたユーザ700の加速度の時系列データを比較することで、加速度の変動を算出できる。制御部10はこの加速度の変動に基づきユーザ700の位置や姿勢の変動を求めることができる。
【0066】
-赤外線センサ128-
赤外線センサ128は、赤外線を検知する。例えば、赤外線センサ128の時系列データを比較することで、ユーザ700の位置や姿勢の変動を推定できる。なお、レーザレンジスキャン(図示を省略)によっても同様に、時系列データを比較することで、ユーザ700の位置や姿勢の変動を推定できる。そして、制御部10はこれらのユーザ700の位置や姿勢の変動に基づきユーザ700の位置や姿勢の変動を求めることができる。
【0067】
-方位センサ130及び位置測位部132-
方位センサ130は、例えば、3軸地磁気センサ(コンパス)により実現され、絶対方向(方位)を検知する。なお、ここで、絶対方位とは、実空間における世界座標系(東西南北)における方位のことをいう。
【0068】
位置測位部132は、外部からの取得信号に基づいて情報処理装置1(ユーザ700)の絶対位置を検知する。なお、ここで、絶対位置とは、実空間における世界座標系(経緯)における位置のことをいう。具体的には、位置測位部132は、例えばGPS(Global Positioning System)測位部により実現され、GPS衛星からの電波を受信して、情報処理装置1(ユーザ700)が存在する位置を検知し、検知した位置情報を制御部10に出力する。また、位置測位部132は、GPSの他、例えばWi-Fi(Wireless Fidelity、登録商標)、Bluetooth(登録商標)、携帯電話・PHS(Personal Handy‐phone System)・スマートフォン等との送受信、又は、近距離通信等により位置を検知するデバイスであってもよい。制御部10は、例えば方位センサ130により検知された絶対方向及び位置測位部132により検知された絶対位置に基づきユーザ700の位置や姿勢の変動を求めることができる。
【0069】
-生体センサ134-
生体センサ134は、ユーザ700の各種生体情報を検知する。具体的には、生体センサ134は、例えば、ユーザ700の身体の一部に直接的又は間接的に装着され、ユーザ700の心拍数、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗等を測定する1つ又は複数のセンサを含む。これら生体センサ134は、検知された生体情報を制御部10に出力する。
【0070】
-その他のセンサ-
更に、本実施形態に係るセンサ部12は、上述したセンサの他に、ユーザ700の周囲の環境温度を検知する温度センサ(図示省略)、ユーザ700の周囲の環境の明るさを検知する照度センサ(図示省略)等を含んでもよい。更に、センサ部12は、ユーザ700の周囲の環境の大気圧を検知する気圧センサ(図示省略)、電波を検知する電波センサ(図示省略)等、様々なセンサを含んでもよい。
【0071】
(記憶部14)
記憶部14は、上述した制御部10が各機能を実行するためのプログラムやパラメータを格納する。例えば、記憶部14は、情報取得部100、解像度決定部102、描画部104及び表示制御部106での処理に用いる認識アルゴリズムや、解像度決定部102で用いる閾値等を閾値テーブルに格納する。
【0072】
(表示部16)
表示部16は、例えば、ホログラム光学技術を用いて表示を行うレンズ部(シースルータイプのディスプレイの一例)、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置等により実現される。
【0073】
(スピーカ18)
スピーカ18は、上述した制御部10の制御に従って、音声信号等を再生する。例えば、スピーカ18は、ユーザ700の左右の耳に対応する1対のイヤホンスピーカ(図示省略)により実現されることができる。
【0074】
(通信部20)
通信部20は、有線/無線により他の装置との間でデータの送受信を行うための通信モジュールである。通信部20は、例えば、有線LAN(Local Area Network)、無線LAN、Wi-Fi(登録商標)、赤外線通信、Bluetooth(登録商標)、近距離/非接触通信等の方式で、外部機器と直接又はネットワークアクセスポイント(図示省略)を介して通信することができる。なお、通信部20は、電波を検知する電波センサとして用いられてもよい。
【0075】
(操作入力部22)
操作入力部22は、スイッチ、ボタン、又は、レバー等の物理的な構造を有する操作部材(図示省略)により実現される。例えば、ユーザ700は、操作入力部22に対して操作を行うことで、情報処理装置1に対して所望の入力を行うことができる。また、操作入力部22により入力された操作の内容は、上述した表示部16によって表示されてもよい。
【0076】
(小括)
以上、本実施形態に係る情報処理装置1の構成について具体的に説明したが、本実施形態に係る情報処理装置1の詳細構成は図2に示す例に限定されるものではない。例えば、情報処理装置1の制御部10の少なくとも一部の処理は、通信部20を介して接続するクラウド上のサーバ(図示省略)において行われてもよい。
【0077】
<実施形態に係る仮想オブジェクトの表示例>
以上、本実施形態に係る情報処理装置1の詳細構成について説明した。続いて、このような情報処理装置1による仮想オブジェクトの表示例について、図5から図7を参照して説明する。
【0078】
本実施形態に係る情報処理装置1は、例えば、ユーザ700が自己の位置や姿勢を変動したことを制御部10が検知したことにより、その変動の期間については表示部16の表示解像度、つまり仮想オブジェクト800の解像度を下げて表示部16に表示することができる。情報処理装置1は、このような仮想オブジェクト800を実空間に重畳して表示する。図5A及び図5Bはユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(上面図)である。図5Aはユーザ700が第1の方向を見ている状態を示し、図5Bはユーザ700がその後左方向に首を回して第2の方向を見ている状態を示している。図5A及び図5B中、符号600はユーザ700が情報処理装置1を介して実空間を見ている視野の範囲を示している。図6A及び図6Bはユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図である。図6A図5Aに対応し、図6B図5Bに対応している。
【0079】
図5A及び図6Aに示す一例ではこの視野600のほぼ中央の所定の距離離れた位置に仮想オブジェクト800が実空間に存在するようにユーザ700には見えている。その後ユーザ700が左方向に首を回して第2の方向を見る状態になると、図5B及び図6Bに示すように、視野600の右側の所定の距離離れた位置に仮想オブジェクト800が実空間に存在するようにユーザ700には見えるようになる。
【0080】
図7に上記の第1の方向を見ている状態から第2の方向を見る状態までの間の仮想オブジェクト800の移動の様子、つまり図6Aから図6Bに遷移するまでの間の仮想オブジェクト800の視野600内での相対的な移動の様子を示す。図7に示すように、仮想オブジェクト800は800Aから800Bまでの間を矢印802の方向に沿って視野600内を相対的に移動していく。本実施形態に係る情報処理装置1は、例えば、視野600内での仮想オブジェクト800の移動速度を算出してユーザ700の首を回す速度、つまりユーザ700の位置や姿勢の変動を推定している。
【0081】
本実施形態に係る情報処理装置1は、ユーザ700が静止した状態では、表示部16に最高の解像度(例えば1280×720pixel)で仮想オブジェクト800を表示し、ユーザ700が動いている間、つまりユーザ700の首を回している最中は、表示部16に静止状態よりも低い解像度(第2の解像度(960×540pixel)又は第3の解像度(640×360pixel))で仮想オブジェクト800を表示する。図6A図6B及び図7の仮想オブジェクト800に記された斜線の密度が解像度の高低を示している。
【0082】
そして、例えば、首を回す速度が小さい場合と、大きい場合とで、解像度の程度を変える。速度が小さい場合には、例えば960×540pixelの解像度で仮想オブジェクト800を表示し、変動速度が大きい場合には、例えば640×360pixelの解像度で仮想オブジェクト800を表示する。
【0083】
なお、上記の例では、ユーザ700の首を回す速度、つまり自己の姿勢の変動を推定しているが、視野600内で仮想オブジェクト800が離れたり、近づいたり、左右等に移動する速度、つまり自己の位置の変動も同様に推定できる。また、自己の位置と姿勢の両方が重なった変動も同様に推定できる。本実施形態では、これらの変動を総称して動き情報と呼ぶ。
【0084】
本実施形態に係る情報処理装置1は、第1のタイミングで表示した仮想オブジェクト800の第1の位置と第1のタイミングよりも後の第2のタイミング、例えば1表示フレーム後のタイミングで表示した仮想オブジェクト800の第2の位置との差に基づいて、ユーザ700の動き情報を推定している。
【0085】
なお、フレーム単位でユーザ700の動き情報を推定してもよいが、例えば時間単位でユーザ700の動き情報を推定してもよく、また別の単位でユーザ700の動き情報を推定してもよい。
【0086】
また、このようなフレームの単位や時間などは情報処理装置1のバッテリ量や発熱温度等に応じて動的に変更するように構成してもよい。更に、ユーザ700が例えば動いているときの仮想オブジェクト800を見ながらフレームの単位や時間を任意に設定できるように構成してもよい。
【0087】
以上のとおり、本実施形態に係る情報処理装置1は、推定した動き情報に基づいて、表示部16の解像度、つまり仮想オブジェクト800の解像度を決定し、このような仮想オブジェクト800を表示部16に表示、つまり実空間に重畳して表示する。
【0088】
<一実施形態に係る情報処理方法>
以上、本実施形態に係る仮想オブジェクト800の表示例について説明した。続いて、本実施形態に係る情報処理方法について、図8を参照して説明する。図8は本実施形態に係る処理フローを示すフローチャートである。図8に示すように、本実施形態に係る情報処理方法には、ステップS100からステップS109までの複数のステップが含まれている。以下に、本実施形態に係る方法に含まれる各ステップの詳細を説明する。なお、情報処理装置1は、以下に示すフロー(ステップ102からステップ116)を、表示する仮想オブジェクト800の表示フレーム毎に行い、表示フレームが変わるごとに繰り返さすこととなる。
【0089】
(ステップS100)
解像度決定部102は、記憶部14に記憶された閾値テーブルより第1の閾値α、第2の閾値α、第3の閾値β、第4の閾値βを読み込む。
【0090】
(ステップS102)
情報取得部100は、センサ部12のステレオカメラである外向きカメラ120及び後述する慣性計測装置(IMU)126から取得したデータからユーザ700の自己位置・姿勢を算出し、推定する。自己位置・姿勢の算出は、例えば外向きカメラ120の画像データから現実世界を認識し、ステレオカメラである外向きカメラ120による測距結果及び慣性計測装置(IMU)126の計測結果から算出することができる。
【0091】
また、情報取得部100は、ユーザ700から仮想オブジェクト800の表示位置までの表示距離及び方向(ユーザ700の姿勢)を算出する。仮想オブジェクト800の表示距離及び方向は、例えば予め仮想オブジェクト800の表示を行うアプリケーションで定義された表示位置と、上記の外向きカメラ120及び慣性計測装置(IMU)126から取得した情報処理装置1(ユーザ700)の自己位置・姿勢情報とに基づいて算出することができる。
【0092】
なお、仮想オブジェクト800は、上記のように算出されたユーザ700の自己位置・姿勢とユーザ700から仮想オブジェクト800の表示位置までの表示距離及び方向とに基づいて表示部16に表示される。
【0093】
(ステップ104)
解像度決定部102は、ステップ102で算出したユーザ700の自己の位置・姿勢の前フレームとの差分、すなわちユーザ700の自己の位置・姿勢の変動がステップ100で読み込んだ解像度低下閾値(α、α)を超えているかを判断する。自己の位置・姿勢の前フレームとの差分が解像度低下閾値(α、α)を超えている場合には、ステップ108に進み、超えていない場合には、ステップ106に進む。
【0094】
(ステップ106)
解像度決定部102は、ステップ102で算出したユーザ700の自己の位置・姿勢の前フレームとの差分、すなわちユーザ700の自己の位置・姿勢の変動がステップ100で読み込んだ解像度向上閾値(β、β)未満であるかを判断する。自己の位置・姿勢の前フレームとの差分が解像度向上閾値(β、β)未満である場合には、ステップ110に進み、そのでない場合には、ステップ116に進む。
【0095】
(ステップ108)
解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixelであって、自己の位置・姿勢の前フレームとの差分が解像度低下閾値αを超えている場合には、第1の解像度(1280×720pixel)から第2の解像度(960×540pixel)に解像度を下げる決定をし、前フレームの解像度が第1の解像度(1280×720pixel又は第2の解像度(960×540pixel)であって、自己の位置・姿勢の前フレームとの差分が解像度低下閾値αを超えている場合には第1の解像度(1280×720pixel又は第2の解像度(960×540pixel)から第3の解像度(640×360pixel)に解像度を下げる決定をし、ステップ112に進む。
【0096】
(ステップ110)
解像度決定部102は、前フレームの解像度が第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)であって、自己の位置・姿勢の前フレームとの差分が解像度向上閾値β未満となった場合には、第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)から第1の解像度(1280×720pixel)に解像度を上げる決定をし、前フレームの解像度が第3の解像度(640×360pixel)であって自己の位置・姿勢の前フレームとの差分が解像度向上閾値βを超えている場合には第3の解像度(640×360pixel)から第2の解像度(960×540pixel)に解像度を上げる決定をし、ステップ112に進む。
【0097】
(ステップ112、ステップ114、ステップ116)
解像度決定部102は、描画部104及び表示制御部106にステップ108又はステップ110で決定した解像度を通知する。描画部104は、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する。表示制御部106は、解像度決定部102が指定した解像度に基づいてフレームバッファの読み出し領域を表示部16のサイズに拡大又は縮小し、表示部16への表示を制御する。
【0098】
これにより、表示部16には解像度決定部102で決定された解像度に応じた仮想オブジェクト800が表示される。
なお、上述したが、情報処理装置1は、以上に示すフロー(ステップ102からステップ116)を、表示する仮想オブジェクト800の表示フレーム毎に行い、表示フレームが変わるごとに繰り返さすこととなる。
【0099】
<<まとめ>>
この種の情報処理装置では、リアルな表現をしようとするほど描画負荷が増す。従って、リアルな表現ほど単位時間当たりの描画時間が長くなり、フレームレートの低下を引き起こし、例えばアニメーションのコマ落ちなどの品位低下を招く。更に、リアルな表現ほどプロセッサのリソースを多く要求するので発熱量が多くなり、例えばプロセッサが停止し、或いはユーザが火傷するリスクが高まる。また、プロセッサのリソースを多く要求するので、単位時間当たりの電力消費量が多くなり、バッテリの消耗が激しくなる。
【0100】
本実施形態に係る情報処理装置1は、ユーザ700が静止しながら仮想オブジェクト800を見ている場合と比べ、ユーザ700が動いている場合、例えば走っている場合や首を回している場合などは仮想オブジェクト800の細かい部分までは視認しなくなるという点に着目したもので、ユーザ700が動いているときには仮想オブジェクト800の解像度を低下させ、ユーザ700の動いている速度に応じて仮想オブジェクト800の解像度の低下の幅を大きくし、描画負荷を低減している。これにより、ユーザ700にリアルな表現を維持しつつ、描画負荷を低くし、描画負荷に起因する問題の程度は軽くしている。これにより、例えば単位時間当たりの描画時間を短くし、フレームレートの低下を防止し、プロセッサの発熱量が少なくしてプロセッサの停止や火傷のリスクを低くし、単位時間当たりの電力消費量を少なくしてバッテリの消耗を抑えることができる。
【0101】
実際に、ユーザが静止した状態である仮想オブジェクトを見た場合と、歩きながら同じ仮想オブジェクトを見た場合のそれぞれについて仮想オブジェクトの解像度を落としていったところ、静止時にじっくり見ると描画品質の違いがわかったが、歩いているときには描画品質の違いを気づきにくいことが確認できた。このことは、つまり解像度が落ちてもリアルな表現を維持していることに他ならない。
【0102】
また、実際に、情報処理装置1において、フレームバッファの解像度を落としながらフラグメントシェーダ(Fragment Shader)の処理時間を落としていったところ、解像度が下がるにつれてフラグメントシェーダの処理時間も短くなったが、所定の処理時間、例えば10msあたりから下げ止まった。これは、解像度によらず、時間がかかる処理、例えばState ChangやglClear等の処理があるためと考えられる。従って、本実施形態に係る情報処理装置1は、解像度の下限に閾値を設けてもよく、例えばその閾値を、解像度を下げてもフラグメントシェーダ(Fragment Shader)の処理時間等の所定の画像処理に要する処理時間が下がらない解像度の値としてもよい。
【0103】
なお、本開示においては、変化させる仮想オブジェクトの画質として、仮想オブジェクトの解像度だけでなく、仮想オブジェクトのテクスチャ(仮想オブジェクトの質感)、表示濃度、透明度、明度、色数等を挙げることができる。
【0104】
<<その他の実施形態>>
本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
【0105】
例えば、図1及び2に示した情報処理装置1において、記憶部14が同一の画像であって画質の異なる複数の仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを有し、解像度決定部102は推定された動き情報に基づいて、仮想オブジェクト保持テーブルに保持された複数の仮想オブジェクトから1つの仮想オブジェクトを選択し、表示制御部106は、解像度決定部102により選択された仮想オブジェクトの表示を制御してもよい。
【0106】
ここで、仮想オブジェクト保持テーブルは、例えば本来の仮想オブジェクト(例えば最高解像度の仮想オブジェクト)をミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する。また、仮想オブジェクト保持テーブルは、例えば本来の仮想オブジェクト(例えば最高解像度の仮想オブジェクト)から生成された複数種類の圧縮テクスチャ画像を予め保持してもよい。また、仮想オブジェクト保持テーブルは、例えば上記のミップマップと複数種類の圧縮テクスチャ画像等の予め保持し、仮想オブジェクトの例えば所定の属性に応じてこれらから選択的に用いられるようにしてもよい。
【0107】
この実施形態に係る情報処理装置1では、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する描画部104は不要となる。表示制御部106が解像度決定部102により選択された仮想オブジェクトの表示を制御すればよい。従って、この実施形態によれば、描画負荷をより低減できることになる。
【0108】
上述の説明においては、透過型ディスプレイを持つスマートアイグラスに適用した場合を例として挙げたが、本開示の実施形態においてはこれに限定されるものではなく、例えば、非透過型ディスプレイを持つHMDやVR(Virtual Reality)、スマーフォフォン等の情報処理装置に適用することもできる。スマートフォンの場合には、例えばナビゲーションのアプリケーションに本開示に係る技術を適用できる。例えば、スマートフォンにおいて、スマートフォンの動き情報を検出し、この動き情報に基づいてナビゲーションの地図上の仮想オブジェクトの解像度を制御すればよい。
また、上記実施形態では、HMDがスタンドアローンで動作する例を示したが、例えばHMDとスマートフォンが連携して本開示に係る技術を実現してもよい。例えば、例えばHMDには透過表示部があり、HMDに無線又は有線で接続されたスマートフォンの制御部がユーザの位置や姿勢の変動の検出、更に解像度の決定等を行うようにしてもよい。
【0109】
<<ハードウェア構成の一例>>
図9は、本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。図9では、情報処理装置900は、上述の情報処理装置1のハードウェア構成の一例を示している。
【0110】
情報処理装置900は、例えば、CPU950と、ROM952と、RAM954と、記録媒体956と、入出力インタフェース958と、操作入力デバイス960とを有する。更に、情報処理装置900は、表示デバイス962と、音声出力デバイス964と、通信インタフェース968と、センサ980とを有する。また、情報処理装置900は、例えば、データの伝送路としてのバス970で各構成要素間を接続する。
【0111】
(CPU950)
CPU950は、例えば、CPU、GPU等の演算回路で構成される、1又は2以上のプロセッサや、各種処理回路等で構成され、情報処理装置900全体を制御する制御部(例えば、上述の制御部10)として機能する。具体的には、CPU950は、情報処理装置900において、例えば、上述の情報取得部100、情報取得部100、解像度決定部102、描画部104及び表示制御部106等の機能を果たす。
【0112】
(ROM952及びRAM954)
ROM952は、CPU950が使用するプログラムや演算パラメータ等の制御用データ等を記憶する。RAM954は、例えば、CPU950により実行されるプログラム等を一時的に記憶する
【0113】
(記録媒体956)
記録媒体956は、上述の記憶部14として機能し、例えば、本実施形態に係る情報処理方法に係るデータや、各種アプリケーション等様々なデータを記憶する。ここで、記録媒体956としては、例えば、ハードディスク等の磁気記録媒体や、フラッシュメモリ等の不揮発性メモリが挙げられる。また、記録媒体956は、情報処理装置900から着脱可能であってもよい。
【0114】
(入出力インタフェース958、操作入力デバイス960、表示デバイス962、音声出力デバイス964)
入出力インタフェース958は、例えば、操作入力デバイス960や、表示デバイス962等を接続する。入出力インタフェース958としては、例えば、USB(Universal Serial Bus)端子や、DVI(Digital Visual Interface)端子、HDMI(High-Definition Multimedia Interface)(登録商標)端子、各種処理回路等が挙げられる。
【0115】
操作入力デバイス960は、情報処理装置900の内部で入出力インタフェース958と接続される。
【0116】
表示デバイス962は、例えば上述の表示部16として機能し、情報処理装置900に備えられ、情報処理装置900の内部で入出力インタフェース958と接続される。表示デバイス962としては、例えば、液晶ディスプレイや有機ELディスプレイ(Organic Electro‐Luminescence Display)等が挙げられる。
【0117】
音声出力デバイス964は、例えば上述のスピーカ18として機能し、例えば、情報処理装置900に備えられ、情報処理装置900の内部で入出力インタフェース958と接続される。
【0118】
なお、入出力インタフェース958が、情報処理装置900の外部の操作入力デバイス(例えば、キーボードやマウス等)や外部の表示デバイス等の、外部デバイスと接続する
ことも可能であることは、言うまでもない。
【0119】
また、入出力インタフェース958は、ドライブ(図示省略)と接続されていてもよい。当該ドライブは、磁気ディスク、光ディスク、又は半導体メモリなどのリムーバブル記録媒体のためのリーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。当該ドライブは、装着されているリムーバブル記録媒体に記録されている情報を読み出して、RAM954に出力する。また、当該ドライブは、装着されているリムーバブル記録媒体に記録を書き込むこともできる。
【0120】
(通信インタフェース968)
通信インタフェース968は、例えば通信ネットワーク(図示省略)を介して(あるいは、直接的に)、他の外部装置と、無線または有線で通信を行うための通信部20として機能する。ここで、通信インタフェース968としては、例えば、通信アンテナ及びRF(Radio Frequency)回路(無線通信)や、IEEE802.15.1ポート及び送受信回路(無線通信)、IEEE802.11ポート及び送受信回路(無線通信)、あるいはLAN(Local Area Network)端子及び送受信回路(有線通信)等が挙げられる。
【0121】
(センサ980)
センサ980は、上述のセンサ部12として機能する。更に、センサ980は、照度センサ等の各種のセンサを更に含んでもよい。
【0122】
以上、情報処理装置900のハードウェア構成の一例を示した。なお、情報処理装置900のハードウェア構成は、図9に示す構成に限られない。詳細には、上記の各構成要素は、汎用的な部材を用いて構成してもよいし、各構成要素の機能に特化したハードウェアにより構成してもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
【0123】
例えば、情報処理装置900は、接続されている外部の通信デバイスを介して外部装置等と通信を行う場合や、スタンドアローンで処理を行う構成である場合には、通信インタフェース968を備えていなくてもよい。また、通信インタフェース968は、複数の通信方式によって、1又は2以上の外部装置と通信を行うことが可能な構成を有していてもよい。また、情報処理装置900は、例えば、記録媒体956や、操作入力デバイス960等を備えない構成をとることも可能である。
【0124】
また、本実施形態に係る情報処理装置900は、例えばクラウドコンピューティング等のように、ネットワークへの接続(または各装置間の通信)を前提とした、複数の装置からなるシステムに適用されてもよい。つまり、上述した本実施形態に係る情報処理装置900は、例えば、複数の装置により本実施形態に係る情報処理方法に係る処理を行う情報処理システムとして実現することも可能である。
【0125】
<<補足>>
また、以上に説明した実施形態は、例えば、コンピュータを本実施形態に係る情報処理装置として機能させるためのプログラム、及びプログラムが記録された一時的でない有形の媒体を含むことができる。また、上記プログラムをインターネット等の通信回線(無線通信も含む)を介して頒布してもよい。
【0126】
更に、上述した各実施形態の処理における各ステップは、必ずしも記載された順序に沿って処理されなくてもよい。例えば、各ステップは、適宜順序が変更されて処理されてもよい。また、各ステップは、時系列的に処理される代わりに、一部並列的に又は個別的に処理されてもよい。更に、各ステップの処理方法についても、必ずしも記載された方法に沿って処理されなくてもよく、例えば、他の機能ブロックによって他の方法で処理されていてもよい。
【0127】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0128】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、又は上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【0129】
なお、以下のような構成も本開示の技術的範囲に属する
【0130】
(1)ユーザの動き情報を取得する取得部と、
前記取得部により取得された動き情報に基づいて、仮想オブジェクトの画質を決定する決定部と、
前記決定部により決定された画質に基づいて、前記仮想オブジェクトの表示を制御する表示制御部と
を具備する情報処理装置
【0131】
(2)(1)に記載の情報処理装置であって、
前記取得部は、前前記仮想オブジェクトの表示位置の変動を、前記ユーザの動き情報として取得する
情報処理装置
【0132】
(3)(2)に記載の情報処理装置であって、
前記取得部は、第1のタイミングで表示した前記仮想オブジェクトの第1の表示位置と前記第1のタイミングよりも後の第2のタイミングで表示した前記仮想オブジェクトの第2の表示位置との差に基づいて、前記ユーザの動き情報を取得する
情報処理装置
【0133】
(4)(1)に記載の情報処理装置であって、
前記取得部は、計測されたユーザの位置情報又は姿勢情報に基づいて、前記ユーザの動き情報を取得する
情報処理装置
【0134】
(5)(1)~(4)のいずれかに記載の情報処理装置であって、
前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトの解像度を決定する
情報処理装置
【0135】
(6)(1)~(5)のいずれかに記載の情報処理装置であって、
前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトのテクスチャ、表示濃度、透明度、明度、又は色数を決定する
(7)(5)に記載の情報処理装置であって、
前記決定部により決定された仮想オブジェクトの解像度に基づいて、フレームバッファに描画を実行する描画部と、を更に有し、
前記表示制御部は、前記決定部により決定された解像度に基づいて、前記フレームバッファに描画された前記仮想オブジェクトの表示の大きさを制御する
情報処理装置
【0136】
(8)(5)又は(7)に記載の情報処理装置であって、
前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクトの縦方向の解像度又は横方向の解像度を決定する
情報処理装置
【0137】
(9)(1)~(4)のいずれかに記載の情報処理装置であって、
同一の画像で画質の異なる複数の前記仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを更に具備し、
前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクト保持テーブルに保持された複数の前記仮想オブジェクトから1つの仮想オブジェクトを選択し、
前記表示制御部は、前記決定部により選択された仮想オブジェクトの表示を制御する
情報処理装置
【0138】
(10)(9)に記載の情報処理装置であって、
前記仮想オブジェクト保持テーブルは、前記仮想オブジェクトをミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する
情報処理装置
【0139】
(11)(8)又は(9)に記載の情報処理装置であって、
前記仮想オブジェクトテーブルは、前記仮想オブジェクトから生成した複数種類の圧縮テクスチャ画像を予め保持する
情報処理装置
【0140】
(12)(1)~(11)のうちいずれかに記載の情報処理装置であって、
前記決定部で前記仮想オブジェクトを第1の画質から第2の画質に下げる決定をするために用いられる前記動き情報に対する第1の閾値と、前記決定部で前記仮想オブジェクトを前記第2の画質から前記第1の画質に上げる決定をするために用いられる、前記第1の閾値より小さい前記動き情報に対する第2の閾値とを保持する閾値テーブルを更に有し、
前記決定部は、前記取得部により取得された動き情報と前記第1の閾値及び前記第2の閾値との比較に基づいて、前記仮想オブジェクトの画質を決定する
情報処理装置
【0141】
(13)(1)~(12)のうちいずれかに記載の情報処理装置であって、
前記表示制御部により表示が制御された前記仮想オブジェクトを表示する透過型表示部
を更に具備する情報処理装置
【0142】
(14)(1)~(12)のうちいずれかに記載の情報処理装置であって、
前記表示制御部により表示が制御された前記仮想オブジェクトを他の画像と重畳して表示する非透過型表示部
を更に具備する情報処理装置
【0143】
(15)(1)のうちいずれかに記載の情報処理装置であって、
前記取得部は、HMD(Head Mounted Display)に備えられたセンサの出力データに基づき、前記HMDの動きの情報を前記ユーザの動き情報として取得し、
前記表示制御部は前記HMDに備えられた表示部上の前記仮想オブジェクトの表示を制御する
情報処理装置(16)ユーザの動き情報を取得し、
前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、
前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御する
情報処理方法
【0144】
(17)ユーザの動き情報を取得するステップと、
前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定するステップと、
前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御するステップと
をコンピュータに実行させるプログラム。
【0145】
なお、以上説明した各形態の特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。
【符号の説明】
【0146】
1 :情報処理装置
10 :制御部
12 :外向きカメラ
12 :センサ部
14 :記憶部
16 :表示部
100 :情報取得部
100 :ステップ
102 :解像度決定部
104 :描画部
106 :表示制御部
120 :外向きカメラ
126 :慣性計測装置
128 :赤外線センサ
700 :ユーザ
800 :仮想オブジェクト
900 :情報処理装置
S100 :ステップ
S102 :ステップ
S109 :ステップ
α1 :第1の閾値(解像度低下閾値)
α2 :第2の閾値(解像度低下閾値)
β1 :第3の閾値(解像度向上閾値)
β2 :第4の閾値(解像度向上閾値)
図1
図2
図3
図4
図5A
図5B
図6A
図6B
図7
図8
図9