(57)【特許請求の範囲】
【請求項１】
撮像装置と通信を確立し撮影画像のデータを取得する通信部と、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行する再送要求生成部と、
取得されたデータを用いて撮影画像の解析を行う画像解析部と、
前記解析の結果に基づき出力データを生成して出力する出力データ生成部と、
前記解析の結果に基づき、前記許容時間の設定値を調整する処理条件調整部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記処理条件調整部は、前記解析の結果が、必要な精度が得られていることを示す所定の条件を満たしているとき、前記許容時間を短縮するように設定値を調整することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記処理条件調整部は、前記解析の精度が所定値になるときの前記許容時間を、調整後の設定値とすることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記処理条件調整部は、撮影画像平面における所定の領域の前記解析の精度が所定値になるときの前記許容時間を、調整後の設定値とすることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
撮像装置と通信を確立し撮影画像のデータを取得する通信部と、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行する再送要求生成部と、
前記許容時間の設定値に応じて撮影画像の解析のアルゴリズムを切り替える処理条件調整部と、
取得されたデータを用いて、前記アルゴリズムで撮影画像の解析を行う画像解析部と、
前記解析の結果に基づき出力データを生成して出力する出力データ生成部と、
を備えることを特徴とする情報処理装置。
【請求項６】
前記再送要求生成部は、前記許容時間の設定値に係る情報を前記撮像装置に送信することにより、前記撮像装置における撮影画像のデータ処理の態様を変化させることを特徴とする請求項１から５のいずれかに記載の情報処理装置。
【請求項７】
撮像装置と、前記撮像装置と通信を確立し撮影画像を用いた情報処理を実施する情報処理装置と、を含み、
前記情報処理装置は、
前記撮影画像のデータを取得し前記情報処理装置へ送信する通信部と、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行する再送要求生成部と、
取得されたデータを用いて撮影画像の解析を行う画像解析部と、
前記解析の結果に基づき出力データを生成して出力する出力データ生成部と、
前記解析の結果に基づき、前記許容時間の設定値を調整する処理条件調整部と、
を備え、
前記撮像装置は、
撮影画像のデータを取得し前記情報処理装置へ送信する通信部と、
前記情報処理装置から発行された前記再送要求に応じて該当データの再送を制御する再送制御部と、
前記情報処理装置において調整された前記許容時間の設定値を取得し、当該設定値に基づき撮影画像のデータ処理の態様を変化させる処理条件調整部と、
を備えることを特徴とする情報処理システム。
【請求項８】
前記処理条件調整部は、前記許容時間の設定値に基づき、撮影画像のデータの送信時の圧縮率を変化させることを特徴とする請求項７に記載の情報処理システム。
【請求項９】
前記処理条件調整部は、前記許容時間の設定値に基づき、撮影画像を表す複数解像度の画像データのうち、送信対象の解像度を変化させることを特徴とする請求項７に記載の情報処理システム。
【請求項１０】
撮像装置と通信を確立し撮影画像のデータを取得するステップと、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行するステップと、
取得されたデータを用いて撮影画像の解析を行うステップと、
前記解析の結果に基づき出力データを生成して出力するステップと、
前記解析の結果に基づき、前記許容時間の設定値を調整するステップと、
を含むことを特徴とする情報処理装置による情報処理方法。
【請求項１１】
撮像装置と通信を確立し撮影画像のデータを取得するステップと、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行するステップと、
取得されたデータを用いて撮影画像の解析を行うステップと、
前記解析の結果に基づき出力データを生成して出力するステップと、
を含み、
前記解析を行うステップは、前記許容時間の設定値に応じて、用いるアルゴリズムが切り替えられることを特徴とする情報処理装置による情報処理方法。
【請求項１２】
撮像装置と通信を確立し撮影画像のデータを取得する機能と、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行する機能と、
取得されたデータを用いて撮影画像の解析を行う機能と、
前記解析の結果に基づき出力データを生成して出力する機能と、
前記解析の結果に基づき、前記許容時間の設定値を調整する機能と、
コンピュータに実現させることを特徴とするコンピュータプログラム。
【請求項１３】
撮像装置と通信を確立し撮影画像のデータを取得する機能と、
前記撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に前記撮像装置に再送要求を発行する機能と、
前記許容時間の設定値に応じて撮影画像の解析のアルゴリズムを切り替える機能と、
取得されたデータを用いて、前記アルゴリズムで撮影画像の解析を行う機能と、
前記解析の結果に基づき出力データを生成して出力する機能と、
コンピュータに実現させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像を利用して情報処理を行う情報処理装置、情報処理システム、およびそれらでなされる情報処理方法に関する。
【背景技術】
【０００２】
ユーザをビデオカメラで撮影し、その像を別の画像で置換してディスプレイに表示するゲームが知られている（例えば、特許文献１参照）。また、ビデオカメラで撮影された口や手の動きをアプリケーションの操作指示として受け取るユーザインターフェースシステムも知られている。このように、実世界を撮影しその動きに反応する仮想世界を表示させたり、何らかの情報処理を行ったりする技術は、小型の携帯端末からレジャー施設まで、その規模によらず幅広い分野で利用されている。
【０００３】
その一例として、ヘッドマウントディスプレイにパノラマ映像を表示し、ヘッドマウントディスプレイを装着したユーザが頭部を回転させると視線方向に応じたパノラマ画像が表示されるようにしたシステムも開発されている。ヘッドマウントディスプレイを利用することで、映像への没入感を高めたり、ゲームなどのアプリケーションの操作性を向上させたりすることができる。また、ヘッドマウントディスプレイを装着したユーザが物理的に移動することで、映像として表示された空間内を仮想的に歩き回ることのできるウォークスルーシステムも開発されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】欧州特許出願公開第０９９９５１８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
臨場感のある画像表現を実現したり、情報処理を高精度に行ったりするためには、撮影画像の解像度やフレームレートを高くすることが望ましい。一方、そのようにして扱うべきデータサイズが増えると、データ伝送や画像解析の負荷が増え、画像表示までに要する時間が増加する。その結果、実際の動きと表示にずれが生じるなどして、ユーザに違和感を与えることもあり得る。また伝送帯域を圧迫することによりデータの欠落が生じやすくなり、画像解析の精度がかえって悪化することもあり得る。
【０００６】
本発明はこうした課題に鑑みてなされたものであり、その目的は、撮影画像データの伝送および解析を伴う情報処理において、即時性を損なわずに良好な処理結果を取得できる技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様は情報処理装置に関する。この情報処理装置は、撮像装置と通信を確立し撮影画像のデータを取得する通信部と、撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に撮像装置に再送要求を発行する再送要求生成部と、取得されたデータを用いて撮影画像の解析を行う画像解析部と、解析の結果に基づき出力データを生成して出力する出力データ生成部と、解析の結果に基づき、許容時間の設定値を調整する処理条件調整部と、を備えることを特徴とする。
【０００８】
本発明の別の態様も情報処理装置に関する。この情報処理装置は、撮像装置と通信を確立し撮影画像のデータを取得する通信部と、撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に撮像装置に再送要求を発行する再送要求生成部と、許容時間の設定値に応じて撮影画像の解析のアルゴリズムを切り替える処理条件調整部と、取得されたデータを用いて、アルゴリズムで撮影画像の解析を行う画像解析部と、解析の結果に基づき出力データを生成して出力する出力データ生成部と、を備えることを特徴とする
【０００９】
本発明のさらに別の態様は情報処理システムに関する。この情報処理システムは、撮像装置と、当該撮像装置と通信を確立し撮影画像を用いた情報処理を実施する情報処理装置と、を含み、情報処理装置は、撮影画像のデータを取得し情報処理装置へ送信する通信部と、撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に撮像装置に再送要求を発行する再送要求生成部と、取得されたデータを用いて撮影画像の解析を行う画像解析部と、解析の結果に基づき出力データを生成して出力する出力データ生成部と、解析の結果に基づき、許容時間の設定値を調整する処理条件調整部と、を備え、撮像装置は、撮影画像のデータを取得し情報処理装置へ送信する通信部と、情報処理装置から発行された再送要求に応じて該当データの再送を制御する再送制御部と、情報処理装置において調整された許容時間の設定値を取得し、当該設定値に基づき撮影画像のデータ処理の態様を変化させる処理条件調整部と、を備えることを特徴とする。
【００１０】
本発明のさらに別の態様は撮像装置に関する。この撮像装置は、撮影画像のデータを取得するデータ取得部と、情報処理装置と通信を確立し撮影画像のデータを送信する通信部と、情報処理装置が設定された許容時間内に発行した、撮影画像のデータのうち取得されなかった部分の再送要求に応じて、該当データの再送を制御する再送制御部と、情報処理装置において調整された許容時間の設定値を取得し、当該設定値に基づき撮影画像のデータ処理の態様を変化させる処理条件調整部と、を備えることを特徴とする。
【００１１】
本発明のさらに別の態様はヘッドマウントディスプレイに関する。このヘッドマウントディスプレイは、上述の撮像装置と、情報処理装置から、撮影画像に基づき生成された表示画像のデータを取得し表示するディスプレイと、を備えたことを特徴とする。
【００１２】
本発明のさらに別の態様は情報処理方法に関する。この情報処理方法は情報処理装置が、撮像装置と通信を確立し撮影画像のデータを取得するステップと、撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に撮像装置に再送要求を発行するステップと、取得されたデータを用いて撮影画像の解析を行うステップと、解析の結果に基づき出力データを生成して出力するステップと、解析の結果に基づき、許容時間の設定値を調整するステップと、を含むことを特徴とする。
【００１３】
本発明のさらに別の態様も情報処理方法に関する。この情報処理方法は情報処理装置が、撮像装置と通信を確立し撮影画像のデータを取得するステップと、撮影画像のデータのうち取得されなかった部分について、設定された許容時間内に撮像装置に再送要求を発行するステップと、取得されたデータを用いて撮影画像の解析を行うステップと、解析の結果に基づき出力データを生成して出力するステップと、を含み、解析を行うステップは、許容時間の設定値に応じて、用いるアルゴリズムが切り替えられることを特徴とする。
【００１４】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１５】
本発明によれば、撮影画像データの伝送および解析を伴う情報処理において、即時性を損なわずに良好な処理結果を取得できる。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態のヘッドマウントディスプレイの外観図である。
【図２】本実施の形態のヘッドマウントディスプレイの回路構成図である。
【図３】本実施の形態の情報処理システムの構成図である。
【図４】本実施の形態の情報処理装置の内部回路構成を示す図である。
【図５】本実施の形態におけるヘッドマウントディスプレイが、カメラが撮影した画像を送信する際のデータ構造を模式的に示す図である。
【図６】本実施の形態における情報処理装置がヘッドマウントディスプレイから受信した画像のデータ構造を模式的に示す図である。
【図７】本実施の形態の画像データ伝送において、再送処理に許容される時間に対するデータの欠落率を定性的に表す図である。
【図８】本実施の形態におけるヘッドマウントディスプレイの機能ブロックの構成を示す図である。
【図９】本実施の形態における情報処理装置の機能ブロックの構成を示す図である。
【図１０】本実施の形態においてヘッドマウントディスプレイから情報処理装置へ送信されるパケットのデータ構造例を示す図である。
【図１１】本実施の形態において情報処理装置の欠落情報生成部が生成する欠落情報のデータ構造を例示す図である。
【図１２】本実施の形態において情報処理装置の欠落情報生成部が生成する欠落情報のデータ構造を例示す図である。
【図１３】本実施の形態において態情報処理装置の欠落情報生成部が生成する欠落情報のデータ構造を例示す図である。
【図１４】本実施の形態の画像データ伝送における許容時間と解析精度の関係を説明するための図である。
【図１５】本実施の形態において、画像解析の精度によって、損失したパケットの再送許容時間を調整する機能を有する情報処理装置の機能ブロックの構成を示す図である。
【図１６】本実施の形態において、損失したパケットの再送許容時間によって内部の処理条件を調整する機能を有するヘッドマウントディスプレイの機能ブロックの構成を示す図である。
【図１７】本実施の形態において情報処理装置が撮影画像のデータに基づき出力データを生成する処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
本実施の形態では、撮影装置によって撮影された画像を用いて情報処理を行い、その結果を即時表示するシステムにおいて、伝送時にデータが欠落しても最大限のパフォーマンスを発揮できるようにする。この限りにおいて撮像装置や表示装置の形態は特に限定されないが、ここではカメラを備えたヘッドマウントディスプレイを例に説明する。ヘッドマウントディスプレイによって撮影された画像を利用して、それを装着したユーザの頭部の動きに対応するように視野が変化する画像を描画し表示させるのは、時間的な制約の厳しさの観点で好適な例である。ただし撮像装置と表示装置が別の筐体を有していても、本実施の形態を同様に適用できる。
【００１８】
図１は、本実施の形態におけるヘッドマウントディスプレイの外観形状の例を示している。この例においてヘッドマウントディスプレイ１００は、出力機構部１０２および装着機構部１０４で構成される。装着機構部１０４は、ユーザが被ることにより頭部を一周し装置の固定を実現する装着バンド１０６を含む。装着バンド１０６はユーザの頭囲に合わせて長さの調節が可能な素材または構造とする。例えばゴムなどの弾性体としてもよいし、バックルや歯車などを利用してもよい。
【００１９】
出力機構部１０２は、ヘッドマウントディスプレイ１００をユーザが装着した状態において両眼を覆うような形状の筐体１０８を含み、内部には装着時に目に正対するように表示パネルを備える。表示パネルは液晶パネルや有機ＥＬパネルなどで実現する。筐体１０８内部にはさらに、ヘッドマウントディスプレイ１００の装着時に表示パネルとユーザの目との間に位置し、広い視野で画像が視認されるようにする一対のレンズを備える。またヘッドマウントディスプレイ１００はさらに、装着時にユーザの耳に対応する位置にスピーカーやイヤホンを備えてよい。
【００２０】
ヘッドマウントディスプレイ１００は、出力機構部１０２の前面にカメラ１１０を備える。カメラ１１０はＣＣＤ（Charge Coupled Device）またはＣＭＯＳ（Complementary Metal Oxide Semiconductor）等の撮像素子を備え、ヘッドマウントディスプレイ１００を装着したユーザの顔の向きに対応する視野で、実空間を所定のフレームレートで撮影する。なおカメラ１１０はヘッドマウントディスプレイ１００の前面に１つのみ設けられてもよいし、既知の間隔を有するように２つのカメラを左右に配置したステレオカメラとしてもよい。またカメラ１１０の配置は特に限定されない。
【００２１】
カメラ１１０が撮影した画像は、ヘッドマウントディスプレイ１００における表示画像の少なくとも一部として使用できるほか、仮想世界の生成に必要な画像解析のための入力データとすることもできる。例えば撮影画像をそのまま表示画像とすれば、ユーザは目の前の実空間を直接見ているのと同じ状態となる。また、視野内にある机などの実物体上に滞留したり実物体とインタラクションしたりするオブジェクトを撮影画像上に描画して表示画像とすることにより、ＡＲ（Augmented Reality：拡張現実）を実現できる。
【００２２】
さらに、ヘッドマウントディスプレイ１００を装着したユーザの頭部の位置や姿勢を撮影画像から特定し、それに対応するように視野を変化させて仮想世界を描画することによりＶＲ（Virtual Reality：仮想現実）も実現できる。撮影画像からカメラの位置や姿勢を推定する技術には、ｖ−ＳＬＡＭ(Visual Simultaneous Localization And Mapping)などの一般的な技術を適用できる。頭部の回転角や傾きは、ヘッドマウントディスプレイ１００に内蔵または外付けされたモーションセンサによって計測してもよい。撮影画像の解析結果とモーションセンサの計測値を相補完的に利用してもよい。
【００２３】
図２は、ヘッドマウントディスプレイ１００の回路構成を示している。制御部１０は、画像信号、センサ信号などの信号や、命令やデータを処理して出力するメインプロセッサである。カメラ１１０は撮影画像のデータを制御部１０に供給する。ディスプレイ３０は液晶ディスプレイなどであり、制御部１０から画像信号を受け取り表示する。
【００２４】
通信制御部４０は、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、制御部１０から入力されるデータを外部に送信する。通信制御部４０は、また、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、外部からデータを受信し、制御部１０に出力する。記憶部５０は、制御部１０が処理するデータやパラメータ、操作信号などを一時的に記憶する。
【００２５】
モーションセンサ６４は、ヘッドマウントディスプレイ１００の回転角や傾きなどの姿勢情報を検出する。モーションセンサ６４は、ジャイロセンサ、加速度センサ、地磁気センサなどを適宜組み合わせて実現される。外部入出力端子インターフェース７０は、ＵＳＢ（Universal Serial Bus）コントローラなどの周辺機器を接続するためのインターフェースである。外部メモリ７２は、フラッシュメモリなどの外部メモリである。制御部１０は、画像や音声データをディスプレイ３０や図示しないヘッドホンに供給して出力させたり、通信制御部４０に供給して外部に送信させたりすることができる。
【００２６】
図３は、本実施の形態に係る情報処理システムの構成図である。ヘッドマウントディスプレイ１００は、図２のアンテナ４４等を介して、Bluetooth（登録商標）プロトコルやＩＥＥＥ８０２．１１プロトコルなどの通信プロトコルにより情報処理装置２００と通信を確立する。情報処理装置２００は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できるゲームなどのオンラインアプリケーションを情報処理装置２００に提供してもよい。ヘッドマウントディスプレイ１００は、情報処理装置２００の代わりに、コンピュータや携帯端末に接続されてもよい。
【００２７】
情報処理装置２００は基本的に、ヘッドマウントディスプレイ１００のカメラ１１０が撮影した画像のデータを順次受信し、所定の処理を実施したうえ表示画像を生成してヘッドマウントディスプレイ１００に送信する処理をフレームごとに繰り返す。これによりヘッドマウントディスプレイ１００には、ユーザの顔の向きに応じた視野で、ＡＲやＶＲなど様々な画像が表示される。なおこのような表示の最終目的は、ゲーム、仮想体験、動画鑑賞など様々に考えられる。
【００２８】
図４は情報処理装置２００の内部回路構成を示している。情報処理装置２００は、ＣＰＵ（Central Processing Unit）２２２、ＧＰＵ（Graphics Processing Unit)２２４、メインメモリ２２６を含む。これらの各部は、バス２３０を介して相互に接続されている。バス２３０にはさらに入出力インターフェース２２８が接続されている。
【００２９】
入出力インターフェース２２８には、ＵＳＢやＩＥＥＥ１３９４などの周辺機器インターフェースや有線又は無線ＬＡＮなどのネットワークインターフェースからなる通信部２３２、ハードディスクドライブや不揮発性メモリなどの記憶部２３４、図示しない表示装置やスピーカーなどへ画像や音声のデータを出力する出力部２３６、図示しない入力装置などからデータを入力する入力部２３８、磁気ディスク、光ディスクまたは半導体メモリなどのリムーバブル記録媒体を駆動する記録媒体駆動部２４０が接続される。
【００３０】
ＣＰＵ２２２は、記憶部２３４に記憶されているオペレーティングシステムを実行することにより情報処理装置２００の全体を制御する。ＣＰＵ２２２はまた、リムーバブル記録媒体から読み出されてメインメモリ２２６にロードされた、あるいは通信部２３２を介してダウンロードされた各種プログラムを実行する。ＧＰＵ２２４は、ジオメトリエンジンの機能とレンダリングプロセッサの機能とを有し、ＣＰＵ２２２からの描画命令に従って描画処理を行う。メインメモリ２２６はＲＡＭ（Random Access Memory）により構成され、処理に必要なプログラムやデータを記憶する。
【００３１】
図５は、ヘッドマウントディスプレイ１００が、カメラ１１０が撮影した画像を送信する際のデータ構造を模式的に示している。カメラ１１０をステレオカメラで構成した場合、左視点の撮影画像８０ａと右視点の撮影画像８０ｂとの対が所定のフレームレートで取得される。ヘッドマウントディスプレイ１００は撮像素子の走査順に対応するように、画像の左上から順に、取得された画像データを所定の送信単位でパケット化して情報処理装置２００に送信する。
【００３２】
同図は、左視点の撮影画像８０ａの左上からＬ１、Ｌ２、Ｌ３、・・・、右視点の撮影画像８０ｂの左上からＲ１、Ｒ２、Ｒ３、・・・、なる送信単位でパケット化されることを表している。各送信単位のデータは、所定のフォーマットで圧縮符号化され、左視点の撮影画像８０ａのデータ、右視点の撮影画像８０ｂのデータが交互に送出される。すなわち送信単位Ｌ１、Ｒ１、Ｌ２、Ｒ２、Ｌ３、Ｒ３、・・・・のデータが、この順にデータストリームとして送信される。
【００３３】
なお各送信単位を構成する画素の行数、列数は、採用する符号化方式との親和性を踏まえて決定する。また図示する例では簡単のため、送信単位の画像の面積および１パケットに含まれる符号化された画像のデータサイズを、どちらも均等に表しているが、可変長符号化方式を採用する場合、そのどちらかが不均等になってよい。
【００３４】
図６は、情報処理装置２００がヘッドマウントディスプレイ１００から受信した画像のデータ構造を模式的に示している。図５で説明したように、ヘッドマウントディスプレイ１００からは、左視点の撮影画像、右視点の撮影画像のデータが、所定の送信単位で交互に送信される。したがって本来であれば、図の上段に示すように送信単位Ｌ１、Ｒ１、Ｌ２、Ｒ２、Ｌ３、Ｒ３、・・・・のデータが、この順にデータストリームとして取得される。
【００３５】
情報処理装置２００は、このように順次送信されるデータを復号し、画像平面上の元の位置と対応づけるようにバッファメモリに展開していくことで、元の撮影画像、すなわち左視点の撮影画像８２ａ、右視点の撮影画像８２ｂを復元していく。ところが通信状況などによって、伝送中にパケットが失われることがある。同図では、送信単位Ｒ２、Ｌ３が伝送されていないことを網掛けで示している。このとき、復元された撮影画像８２ａ、８２ｂは当然、不完全なものとなる。
【００３６】
このような場合の対処方として従来、損失したパケットの再送を送信元に要求するＡＲＱ（Automatic repeat-request）の機能がある。ＡＲＱは誤り訂正手法の１つとして、ＲＴＰ（Real-time Transport Protocol）やＴＣＰ(Transmission Control Protocol)などの通信プロトコルに実装される。この機能により、再送されたパケットを取得できれば、損失を含めた誤り訂正を確実に行える。一方で、再送要求信号の送信および該当データのパケット再送のために時間を消費することになる。また、そのようにしても再送されたパケットが再度、損失する可能性もある。
【００３７】
図７は、画像データを伝送する際、再送処理に許容される時間に対するデータの欠落率を定性的に表している。図示するように、許容時間が長いほど個々の再送処理に余裕が生じるうえ、同一データの複数回のパケット損失にも対応できる確率が増えるため、結果としてデータの欠落率が低くなる。一方、本実施の形態のように撮影画像を用いて何らかの情報処理を行ったうえ、実際の動きに対応するように動く画像を表示することを想定した場合、データ伝送に許容される時間は極めて短い。
【００３８】
そこで、許容時間を限定しても、その間に送信された画像データを最大限に活用して画像解析を適正に行えるようにする。具体的には、画像上でのデータの欠落箇所を明示することにより、画像解析やその後の情報処理で、該当箇所を他と区別して扱えるようにする。一般的に、ＡＲＱなどデータ伝送に係る処理は、互いの通信機構によって他の処理と独立に制御される。本実施の形態では、そのような伝送に係るパラメータを、ゲームなどのアプリケーションが実装する解析機能と有機的に結びつけることにより、データ伝送を含めた即時性と処理の精度とのバランスを良好にする。またそのようなしくみを利用して、処理精度の観点から許容時間を調整したり、許容時間によって定まるデータの欠落率に応じて処理のアルゴリズムを適切に切り替えたりすることもできる。
【００３９】
図８は、本実施の形態におけるヘッドマウントディスプレイ１００の機能ブロックの構成を示している。同図および後述する図９に示す機能ブロックは、ハードウェア的には、図２や図４で示した各種機構で実現でき、ソフトウェア的には、記録媒体などからメモリにロードした、データ解析機能、画像処理機能などの諸機能を発揮するプログラムで実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００４０】
ヘッドマウントディスプレイ１００はカメラ１１０により撮影画像を取得するデータ取得部１２０、撮影画像を符号化する符号化部１２２、符号化したデータを一時格納するバッファ１２４、情報処理装置２００とデータの送受信を行うインターフェースである通信部１２６、情報処理装置２００からの再送要求を処理する再送制御部１２８、表示画像等を出力するデータ出力部１３０を含む。
【００４１】
データ取得部１２０は図２のカメラ１１０、制御部１０などで構成され、視野空間を所定のフレームレートで撮影した画像のデータを取得する。カメラ１１０を図１に示したようにステレオカメラで構成した場合、撮影画像は、ヘッドマウントディスプレイ１００を装着しているユーザの左眼、右眼に対応する視野を有する一対の視差画像となる。ただし本実施の形態をそれに限る主旨ではなく、単眼カメラにより一視点の動画を撮影してもよい。データ取得部１２０は、画素値を取得できた画素から順に、当該画素値を符号化部１２２に供給する。
【００４２】
符号化部１２２は制御部１０などで構成され、データ取得部１２０が取得した撮影画像のデータを、ＪＰＥＧなど所定の符号化方式により圧縮符号化する。バッファ１２４は記憶部５０により構成され、圧縮符号化された撮影画像のデータを再送要求に備えて一時保存する。通信部１２６は、通信制御部４０やアンテナ４４などにより構成され、圧縮符号化された撮影画像のデータを、送信単位ごとにパケット化して情報処理装置２００へ送信する。図５で示したように、撮像素子によってデータが取得できた順に符号化し、送信単位でパケット化して送信していくことにより、撮影画像を低レイテンシで伝送できる。
【００４３】
通信部１２６はまた、情報処理装置２００がパケット損失を検出した際に発行した、当該パケットの再送要求を受信し、再送制御部１２８に通知する。再送制御部１２８は、再送要求において指定されたパケットに対応する送信単位のデータをバッファ１２４から読み出し、通信部１２６に供給する。通信部１２６が当該データを再度パケット化して送信することにより、損失パケットに対する再送処理が実現される。通信部１２６はさらに、情報処理装置２００から送信された表示画像や出力音声のデータを受信し、データ出力部１３０に供給する。データ出力部１３０は制御部１０やディスプレイ３０などで構成され、表示画像の表示や音声出力を実施する。
【００４４】
図９は、本実施の形態における情報処理装置２００の機能ブロックの構成を示している。情報処理装置２００は、ヘッドマウントディスプレイ１００とデータの送受信を行うインターフェースである通信部２５０、ヘッドマウントディスプレイ１００から送信されたパケットを解析するパケット解析部２５２、損失したパケットの再送要求を生成する再送要求生成部２５４、送信された撮影画像のデータを一時格納するバッファ２５６、データ欠落の発生状況に係る情報を生成する欠落情報生成部２５８、撮影画像のデータを復号する復号部２６０、復号された撮影画像に対し所定の解析を行う画像解析部２６２、解析結果を用いて所定の情報処理を実施する情報処理部２６４、および、表示画像等、出力すべきデータを生成する出力データ生成部２６６を含む。
【００４５】
通信部２５０は、図４の通信部２３２およびＣＰＵ２２２などにより構成され、ヘッドマウントディスプレイ１００から送信された、撮影画像のデータからなるパケットを受信する。また通信部２５０は、再送要求生成部２５４が生成したパケットの再送要求、および出力データ生成部２６６が生成した表示画像や出力音声のデータを、ヘッドマウントディスプレイ１００に送信する。
【００４６】
パケット解析部２５２はＣＰＵ２２２などにより構成され、ヘッドマウントディスプレイ１００から送信されたパケットを順次取得し、それを解析する。具体的には、パケットごとに付与される識別情報（以後、「パケットＩＤ」と呼ぶ）に基づき、データ伝送において損失したパケットを検出する。また、パケットＩＤなどを含むヘッダ情報とデータ本体とを分離し、後者を画像平面上の位置と対応づけてバッファ２５６に格納する。
【００４７】
パケットの損失が発生している場合、パケット解析部２５２は再送要求生成部２５４に、そのパケットＩＤを通知する。再送要求生成部２５４はＣＰＵ２２２などにより構成され、損失したパケットＩＤを含む再送要求を生成する。当該再送要求は通信部２５０を介してヘッドマウントディスプレイ１００に送信される。図６の例では、「Ｒ２」や「Ｌ３」などの送信単位に対応するパケットを指定して再送要求が発行される。
【００４８】
再送要求生成部２５４は、損失したパケットが取得できるまで再送要求を繰り返してよいが、指定したパケットが取得できないまま所定の許容時間を経過したらタイムアウトと判定し、以後、そのパケットについての再送要求は行わない。そのため再送要求生成部２５４は、許容時間の設定値を内部のメモリに保持する。欠落情報生成部２５８はＣＰＵ２２２などにより構成され、上記許容時間が経過しても取得できなかったデータに係る情報（以後、「欠落情報」と呼ぶ）を生成する。
【００４９】
欠落情報は基本的に、画像上のどの位置でどの程度のデータ欠落が発生しているかを示す。欠落情報生成部２５８はそのため、欠落している送信単位のデータに係る情報をパケット解析部２５２から逐次取得し、許容時間満了のタイミングを再送要求生成部２５４から取得することで、最終的にデータが欠落した箇所を特定する。送信順が先の箇所ほど許容時間も早く満了するため、欠落情報は、対応する領域の処理開始と同期させて生成できる。生成された欠落情報は順次、復号部２６０に供給される。
【００５０】
復号部２６０はＣＰＵ２２２などにより構成され、バッファ２５６からデータ本体を順次、読み出し、復号していくことにより撮影画像を復元する。パケット解析部２５２、バッファ２５６、復号部２６０により、図６で示したようなデータの変遷が順次実現される。この際、欠落情報生成部２５８から取得した欠落情報において、欠落箇所とされている画素には、所定の無効データを代入する。復号部２６０は、復元した撮影画像のデータと欠落情報を対応づけて画像解析部２６２に供給する。
【００５１】
画像解析部２６２はＣＰＵ２２２などにより構成され、復号部２６０が復元した撮影画像のデータに対し所定の画像解析を施す。ここでなされる解析内容は、後段の情報処理の内容、撮影の目的、表示の内容などによって様々に考えられる。例えばユーザ頭部の位置および姿勢を取得するため、上述のｖ−ＳＬＡＭを実施したり、被写体の実空間での位置を取得するため、左右の視差画像を用いてステレオマッチングを行いデプス画像を生成したりする。デプス画像とは、被写体のカメラからの距離を、撮影画像上の対応する像の画素値として表した画像であり、視差画像から対応点を抽出し、両者間の視差に基づき三角測量の原理で距離を算出することによって得られる。
【００５２】
あるいはデプス画像を用いて被写空間にある実物体の３次元モデリングを行う。実物体を、計算上の３次元空間におけるオブジェクトとしてモデル化することにより、仮想オブジェクトと実物体がインタラクションするＡＲを実現できる。あるいは所定の形状や色を有する実物体の像をテンプレートマッチングにより検出したり、顔など細部の特徴に基づき人や物を認識したりしてもよい。
【００５３】
画像解析部２６２は、このような画像解析において欠落情報を参照し、パケット損失によりデータが欠落している箇所について、他の領域と処理内容を適宜差別化する。例えば、デプス画像生成のための対応点探索対象や物体検出のためのテンプレートマッチングの対象など、解析対象の領域から、データが欠落している箇所を除外する。または他と同様に解析したうえ、データが欠落している箇所についての結果を出力しないようにしたり、その箇所の精度が低い可能性があることを示す付加情報を生成したりしてもよい。
【００５４】
なおここで「データが欠落している箇所」とは、真にデータがない箇所でもよいし、画像平面を所定規則で分割したとき欠落率が所定のしきい値より高い領域などでもよい。いずれにしろ「データが欠落している箇所」を画像解析部２６２が認識し、解析処理自体、あるいは解析結果の利用形態を他と差別化できるようにすることにより、データの欠落による処理精度の悪化を最小限に抑えることができる。
【００５５】
すなわちデータが得られていないため低い精度で解析された領域が、その他の領域の解析結果と同様に扱われることにより、画像全体で処理の精度が下がってしまうのを防止できる。また、対応点探索などの解析対象から除外することにより、結果への反映が好ましくない余計な処理を削減できる。これらの対処を保障することにより、再送要求に対する許容時間を短くしても悪影響が抑えられ、精度と即時性の両立を図れる。
【００５６】
情報処理部２６４はＣＰＵ２２２などにより構成され、画像解析の結果を利用してゲームなど所定の情報処理を実施する。上述のとおり、その内容は特に限定されない。情報処理部２６４は、データ欠落により解析精度が低い可能性があるとして画像解析部２６２により示された箇所の解析結果を、他と差別化して扱ってもよい。例えばそのような箇所にエッジが含まれる被写体を計算対象から除外したり、そのような箇所にオブジェクトを描画しないようにしたりする。このようにすることで、一部領域の解析精度の悪化が他の処理に伝播しないようにしたり、ユーザの視線を別の箇所に誘導したりできる。
【００５７】
出力データ生成部２６６はＣＰＵ２２２、ＧＰＵ２２４などにより構成され、情報処理部２６４による処理の結果、ヘッドマウントディスプレイ１００に表示すべき画像や出力すべき音声のデータを生成する。例えばユーザの頭部の動きに応じて視野が変化する仮想世界を描画したり、当該仮想世界での音声データを生成したりする。生成したデータは通信部２５０を介してヘッドマウントディスプレイ１００に順次、送信される。
【００５８】
図１０は、本実施の形態においてヘッドマウントディスプレイ１００から情報処理装置２００へ送信されるパケットのデータ構造例を示している。図示するパケット９０は、図５および図６の上段に示したパケット列のうちの１つを表しており、これにより撮影画像の送信単位１つ分のデータが送信される。パケット９０はパケット情報部９２および画像データ部９４により構成される。パケット情報部９２は、「パケットＩＤ」、「パケット長」、「送信時刻」、・・・などの、いわゆるヘッダ情報を含む。
【００５９】
「パケットＩＤ」は撮影画像の１フレームに対し生成される全パケットに一意に与えられる識別情報である。例えば、送信単位にラスタ順に与えた、「０」、「１」、「２」、・・・など昇順の番号でもよいし、画像平面における二次元の位置座標でもよい。あるいは、画像をメモリに展開した際の各送信単位の先頭アドレスなどでもよい。また図５、６に示したように、左視点、右視点の撮影画像を交互に送信する場合にはさらに、どちらの画像のパケットかを区別する識別子を付加する。
【００６０】
「パケット長」はこのパケット９０のデータサイズである。「送信時刻」はヘッドマウントディスプレイ１００から当該パケット９０を送信した時刻を示すタイムスタンプである。パケット情報部９２にはこのほか、採用する通信プロトコルによってそれ以外の情報を適宜含めてよい。
【００６１】
画像データ部９４には、ヘッドマウントディスプレイ１００の符号化部１２２が圧縮符号化した、撮影画像の送信単位のデータが格納される。パケット解析部２５２は、送信されたパケット９０をパケット情報部９２および画像データ部９４に分割し、後者のデータを画像上の位置に対応づけてバッファ２５６に格納する。各データの画像上の位置は、パケットＩＤの付与規則に係る情報をヘッドマウントディスプレイ１００と共有しておくことにより、パケットＩＤに基づき特定できる。したがってバッファ２５６には、損失せずに取得できたパケット内のデータが、画像上の位置と対応づけて格納される。
【００６２】
パケット解析部２５２はまた、パケット情報部９２のパケットＩＤを、送信された順序に照らして確認していくことにより、パケットの損失を検出する。例えばパケットＩＤとして昇順の番号を付与する場合は、パケットの到着順とパケットＩＤを比較することにより抜けを検出できる。パケット解析部２５２は、このようにして検出した損失パケットのＩＤを再送要求生成部２５４に通知することで再送要求を生成させる。損失パケットの情報、あるいはそのデータの画像上の位置に係る最新情報は、欠落情報生成部２５８にも通知しておくことにより、許容時間の満了に伴い欠落情報が生成されるようにする。
【００６３】
図１１は、情報処理装置２００の欠落情報生成部２５８が生成する欠落情報のデータ構造を例示している。この例では、バッファ２５６に含まれる、画像データの記憶領域３０２のうち、損失したパケットに対応するデータを格納すべき領域のアドレスを直接示している。すなわち欠落情報３００は、欠落箇所の「先頭アドレス」と「データ長」で構成される。欠落箇所は、１パケットで送信されるデータ、すなわち送信単位を最小粒度として認識される。そしてパケットが連続して失われると、欠落情報３００における「データ長」の数値が大きくなる。
【００６４】
この例では、（先頭アドレス，データ長）の順に、（３００１，１５００）、（１３５０１，３０００）、（２１００１，１５００）、・・・なるデータが欠落していることを示している。これを画像データの記憶領域３０２に表すと、網掛けされた部分、すなわち３００１バイト〜４５００バイトの１５００バイト分、１３５０１バイト〜１６５００バイトの３０００バイト分、２１００１バイト〜２６５００バイトの１５００バイト分、・・・といった箇所のデータが欠落していることがわかる。画像データの記憶領域３０２は画像平面と対応づけられるため、記憶領域のアドレスを示すことは、ひいては画像平面の対応箇所を指定していることになる。
【００６５】
仮に送信単位を１５００バイトとすると、この例は、３パケット目、１０および１１パケット目、１５パケット目が失われていることを意味する。欠落情報生成部２５８は、そのような損失パケットのＩＤから（先頭アドレス，データ長）のセットを導出することにより欠落情報３００を生成する。そして当該欠落情報を参照し、復号部２６０が画素値として無効データを代入したり、画像解析部２６２が他と差別化して解析を行ったりする。
【００６６】
図１２は、情報処理装置２００の欠落情報生成部２５８が生成する欠落情報のデータ構造の別の例を示している。この例では、画像平面を分割してなるブロックごとにデータの欠落率を示している。具体的には欠落情報３０４は、ヘッダ情報３０６ａ、および欠落情報本体３０６ｂにより構成される。ヘッダ情報３０６ａは、画像平面３０８を等分割してなるブロックの「行数」と「列数」、および画像の「総データ長」で構成される。
【００６７】
図示する例では、画像平面３０８を６行８列に分割している。また総データ長は１Ｍバイトである。画像平面の分割数は解析内容や撮影画像の特性などによって決定する。欠落情報本体３０６ｂは、「行」番号、「列」番号からなるブロックの座標と、各ブロックの「データ長」、およびデータの「欠落率」により構成される。行番号、列番号は画像平面３０８の各ブロックに示したように、それらの対で１つのブロックを表す。画像平面を６行８列に分割した場合、行番号は０から５、列番号は０から７の範囲となる。
【００６８】
ブロックのデータ長は、各ブロックに含まれる、圧縮符号化されたデータのサイズを表す。可変長符号化をした場合、図示するようにデータ長がブロックごとに異なる。欠落率は、ブロック内で欠落しているデータの割合を表す。例えば０行０列のブロックは、２００００バイトのデータのうちの１０％、すなわち２０００バイトのデータが欠落していることが示されている。
【００６９】
図１１で示した欠落情報は、データが欠落している部分のアドレスを直接、表すため、より細かい粒度で解析処理の差別化を行える一方で、断続的な欠落が増えるほどエントリー数が増加し欠落情報のデータサイズが大きくなる。図１２の欠落情報３０４は、欠落の程度を所定面積の領域単位で捉えることにより、欠落情報のデータサイズを一定にできる。そのため、画像解析に低解像度画像を用いる場合など、細かい粒度での情報を重要視しない場合は同図のフォーマットが有利となる。
【００７０】
図１３は、情報処理装置２００の欠落情報生成部２５８が生成する欠落情報のデータ構造のさらに別の例を示している。この例は図１２の場合と同様、画像データを分割してなるブロックごとにデータの欠落率を示しているが、ブロックの分割基準として、画像上の面積の代わりに符号化されたデータのサイズを固定としている。すなわち画像データの記憶領域３１４に示すように、記憶領域上でアドレスを均等分割していることになる。この場合も欠落情報３１０は、ヘッダ情報３１２ａ、および欠落情報本体３１２ｂにより構成される。
【００７１】
ヘッダ情報３１２ａは、分割単位である１ブロックの「データ長」、そのように分割されてなる「ブロック数」、および画像の「総データ長」で構成される。図示する例では、２４０ｋバイトの画像データを１０ｋバイトごとに分割した結果、記憶領域３１４が２４個のブロックに分割されていることを示している。分割単位のデータ長は解析内容や撮影画像の特性などによって決定する。
【００７２】
欠落情報本体３１２ｂは、各ブロックの「先頭アドレス」と、各ブロックにおけるデータの「欠落率」により構成される。例えば先頭アドレスが「０」のブロックは、１０ｋバイトのデータのうちの２０％、すなわち２０００バイトのデータが欠落していることが示されている。図１１の場合と同様、画像データの記憶領域３１４は画像平面と対応づけられるため、記憶領域の各ブロックのデータ欠落率は、画像平面の対応する領域のデータ欠落率を示していることになる。
【００７３】
図１２の場合と同様、この例でも、１つのパケットで送られる送信単位の粒度より大きい粒度で欠落の程度を表すため、欠落状況に関わらず欠落情報のサイズを固定にできる。また可変長符号化をした場合、分割単位をデータサイズで規定することにより、圧縮後のデータサイズが大きい領域ほど、１ブロックに対応する画像上の面積が小さくなる。したがって高周波数成分を含むなど画像構成が複雑な部分ほど、より細かい単位でデータ欠落の状況を解析処理に反映させることができる。
【００７４】
図１１〜１３で示した欠落情報は上述のとおり、それぞれに特性を有するため、撮影対象となる空間の構造、実施する画像解析の内容、それに用いる画像の解像度、解析に求められる精度、メモリ容量や処理性能などハードウェアの特性などに応じて、最適な形式を選択する。例えば顔認識などより細かい特徴を抽出する必要がある場合は、図１１で示した形式で、被写空間にあるテーブルの面などを大まかにモデリングする場合は図１２や図１３で示した形式で、欠落情報を生成することが考えられる。
【００７５】
これまで述べた実施形態では、あらかじめ定められた許容時間において損失したパケットの再送要求を行い、そのようにしてもデータが得られなかった箇所について欠落情報を生成した。それを踏まえて画像解析を行うことにより、許容時間が限定的であってもベストエフォートとしての解析結果を取得するとともに、精度が低いと考えられる解析結果を他と区別して扱うことにより、解析結果全体に影響が及ぶのを防ぐことができる。ここで許容時間は、被写空間における動きと表示される画像の動きのずれが認識されないような時間が上限となる。
【００７６】
一方、図７に示したように、許容時間が短いほどデータの欠落率は増加するため、許容時間の短縮が解析精度の悪化を招くことにもなる。図１４は、許容時間と解析精度の関係を説明するための図である。同図（ａ）はデータ欠落率の変化に対する解析精度の変化、（ｂ）は図７と同様、再送要求に許容される時間の変化に対するデータ欠落率の変化を、それぞれ例示している。（ａ）に示す例では、データ欠落率がＤ１からＤ２に増加しても、解析精度の変化はＡ１からＡ２のように比較的小さい。解析精度がＡ２であっても後段の情報処理や表示に大きな影響を与えない場合、欠落率がＤ２であっても許容されることになる。
【００７７】
この場合、（ｂ）に示すように、再送要求の許容時間をＬ１からＬ２に変更しても、情報処理には悪影響を及ぼさないといえる。このように許容時間を短縮できれば、表示の即時性を高めたり、その他の情報処理や伝送に、より多くのリソースを使ったりすることができる。そこでこのような関係を利用して、画像解析の精度の変化によって再送要求の許容時間を調整するしくみを設けてもよい。逆に、与えられた許容時間で画像解析のアルゴリズムを最適化してもよい。さらに、最適化した許容時間に応じてヘッドマウントディスプレイ１００における符号化処理のパラメータを調整してもよい。
【００７８】
図１５は、画像解析の精度によって、損失したパケットの再送許容時間を調整する機能を有する情報処理装置の機能ブロックの構成を示している。なお図９で示した情報処理装置２００と同じ機能を有するブロックには同じ符号を付し、適宜、説明を省略する。情報処理装置２００ａは、図９の情報処理装置２００と同様、通信部２５０、パケット解析部２５２、バッファ２５６、欠落情報生成部２５８、復号部２６０、情報処理部２６４、出力データ生成部２６６を含む。情報処理装置２００ａはさらに、再送要求生成部２５４ａ、画像解析部２６２ａ、処理条件調整部２６８を含む。
【００７９】
再送要求生成部２５４ａ、画像解析部２６２ａの基本的な機能は、図９で示した情報処理装置２００の再送要求生成部２５４、画像解析部２６２と同様である。ただし画像解析部２６２ａは、自らが行った画像解析処理の精度を処理条件調整部２６８にフィードバックする。処理条件調整部２６８は当該処理の精度とデータの欠落情報とを対応づけたうえ、必要な精度が維持される範囲での欠落率を許容するように、許容時間の設定値を調整する。再送要求生成部２５４ａはそのような許容時間の調整を受け付ける。
【００８０】
図１４に示した例で、解析精度に許容される下限をＡ２とすると、処理条件調整部２６８は、精度がＡ２を下回らない欠落率の範囲内で、許容時間をＬ２の方向に下げていく。例えば、新たなフレームの受信タイミングで、許容時間の設定値を所定の刻み幅ΔＬだけ下げ、当該許容時間内で再送要求を実施する。許容時間が減少することによりデータの欠落率は増加するが、そのようにして取得した新たなフレームの画像を解析したとき、精度がＡ２を下回らなければ、さらに許容時間を下げていく。精度がＡ２に到達するまでこれを繰り返すことにより、必要な精度を維持できる許容時間の最短値が得られる。
【００８１】
なおこのように徐々に許容時間を下げていき、精度が下限に達した時点での許容時間を設定値とする手法以外に、許容時間をある程度大きな範囲で変化させて許容時間と解析精度の関係を取得し、解析精度の下限に対応する許容時間を推定してもよい。いずれにしろこのような調整処理は、情報処理装置やヘッドマウントディスプレイの開発時や製造時のみならず、ユーザによるシステムの運用時にも行える。
【００８２】
すなわち適切な精度を維持できる最短の許容時間は、カメラの撮像素子の感度、カメラ内部でのデータ補正処理、符号化処理、通信環境、情報処理装置の処理性能などハードウェアに依存するほか、画像解析の内容、周囲の明るさ、撮影条件、被写空間における物の量や色などの状況にも依存する。これは、図１４で示した各グラフがそれらの条件で変化するためである。したがって、様々なタイミングで許容時間を最適化することにより、処理精度への影響を最小限に、伝送環境を最適化できる。
【００８３】
例えばユーザが情報処理装置２００ａを用いて電子ゲームを実施する際、その初期段階においてバックグラウンドで許容時間を調整すれば、ゲームの内容と実際の運用環境に即した最適条件での処理を実現できる。なお「解析精度」は画像解析の正確性を表す何らかの指標であればよく、図１４で示したように連続して得られるような数値でなくてもよい。
【００８４】
すなわち精度の観点から許容時間の是非を判定するための境界が設定できれば、その境界が数値で与えられなくてもよい。例えば、本来検出されるべき手などの実物体が検出されたか否か、といった２つの事象を「解析精度」としてもよい。この場合、これらの事象の変わり目が境界であり、当該実物体が検出される状態で最も短い許容時間を求めればよい。実際に設定する許容時間は、そのようにして取得された時間に所定のマージンを加算した値でもよい。画像解析がデプス画像の生成であれば、対応点が検出されたか否か、といった２つの事象でもよいし、対応点を検出したときの類似度の画像平均などの数値でもよい。
【００８５】
また、そのような解析精度を画像平面における分布として取得してもよい。このようにすると、解析精度がどこで悪化しているか、といった情報に応じて許容時間をよりきめ細かく調整できる。例えば、重要度の低い画像端で精度が下限を下回っても、より重要な画像中心、あるいは追跡対象が存在する領域などにおいて精度が維持されているのであれば、さらに許容時間を短縮する、といったことが可能になる。このようにして許容時間を最適化したら、それに応じてヘッドマウントディスプレイ１００における各種処理の条件を調整するようにしてもよい。
【００８６】
図１６は、損失したパケットの再送許容時間によって内部の処理条件を調整する機能を有するヘッドマウントディスプレイ１００の機能ブロックの構成を示している。なお図８で示したヘッドマウントディスプレイ１００と同じ機能を有するブロックには同じ符号を付し、適宜、説明を省略する。ヘッドマウントディスプレイ１００ａは、図８のヘッドマウントディスプレイ１００と同様、データ取得部１２０、バッファ１２４、再送制御部１２８、データ出力部１３０を含む。ヘッドマウントディスプレイ１００ａはさらに、符号化部１２２ａ、通信部１２６ａ、および処理条件調整部１３２を含む。
【００８７】
符号化部１２２ａ、通信部１２６ａの基本的な機能は、図８で示した符号化部１２２、通信部１２６と同様である。ただしこの例では、パケット再送の許容時間によって圧縮符号化に用いるパラメータを調整する。このため情報処理装置２００の再送要求生成部２５４ａは、処理条件調整部２６８によって最終的に決定された許容時間の情報をヘッドマウントディスプレイ１００ａに送信し、ヘッドマウントディスプレイ１００ａの通信部１２６ａはそれを受信する。そして処理条件調整部１３２は、当該許容時間に応じて符号化パラメータを決定し、符号化部１２２ａに設定する。
【００８８】
処理条件調整部１３２は例えば、圧縮率を調整する。定性的には、許容時間を長くしデータ欠落率を小さくしないと解析精度が得られないような不利な状況では、圧縮率を高くする。これによりサイズを小さくすれば、１フレームあたりに伝送されるパケット数が少なくなり、同じ損失率でも再送すべきパケット数を小さくできる。このような条件で再度、許容時間の調整を行えば、許容時間を小さくできる可能性もある。
【００８９】
逆に、許容時間を短くしても解析精度が得られる良好な状況では、圧縮率を低くすることにより画質の劣化を抑えられる。符号化方式自体を、圧縮率が小さく画質の劣化が少ないものに切り替えてもよい。これにより、ヘッドマウントディスプレイ１００ａにおける符号化のための処理の負荷を抑えられる。ヘッドマウントディスプレイ１００ａを有線による電源供給としない場合、処理負荷の軽減は消費電力低減による電池持続時間の向上にもつながる。
【００９０】
したがって、例えば周囲が明るく画像解析の精度が得られやすい、といった状況を、最適化された許容時間に基づき特定し、それに応じて圧縮率を調整することにより、画質の向上や電池消費の節約なども達成できる。処理条件調整部１３２は、許容時間と、符号化パラメータあるいは符号化方式とを対応づけた情報を内部のメモリに保持し、情報処理装置２００ａから送信された許容時間に対応して設定された処理条件を特定したうえ、符号化部１２２ａに通知する。
【００９１】
符号化部１２２ａは通知された条件で撮影画像の圧縮符号化を実施する。なお処理条件調整部１３２による調整対象は、符号化パラメータや符号化方式に限らない。例えばデータ取得部１２０が、撮影画像の原画像を段階的に縮小し、解像度の異なる撮影画像を生成するような機能をＩＳＰ(Image Signal Processor)などに含む場合、処理条件調整部１３２は、そこで生成される画像の解像度、あるいは情報処理装置２００に送信すべき画像の解像度を、調整された許容時間に応じて切り替えてもよい。
【００９２】
この場合、調整後の許容時間が長いほど、すなわち許容時間を長くしデータ欠落率を小さくしないと解析精度が得られないような状況であるほど、低解像度の画像データを送信することにより、１フレームあたりのパケット数を減らし、データの欠落率を抑えることができる。そして再度、許容時間の調整を行えば、許容時間を小さくできる可能性もある。
【００９３】
なお上述のとおり、周囲が明るいほど画像解析の精度が得られやすいことを利用し、情報処理装置２００ａにおける許容時間の調整に照度の計測値を利用してもよい。この場合、ヘッドマウントディスプレイ１００に図示しない照度センサを設け、その計測値を情報処理装置２００に送信する。情報処理装置２００は、得られた照度が高いほど、許容時間を短縮する方向に調整する。上述のような解析精度に基づく調整と組み合わせ、多角的な観点から最適な許容時間を求めてもよい。
【００９４】
これまで述べた再送処理に対する許容時間は、従来、通信プロトコルにおいて設定され、アプリケーションとは独立していた。この設定を、アプリケーションによって導入される画像解析の精度に基づき調整できるようにすることで、ハードウェアの更新や撮影環境の変化に柔軟に対応できる伝送態様を提供できる。一方、逆方向のアプローチとして、通信プロトコルで設定された許容時間に応じて画像解析のアルゴリズムを切り替えるようにしてもよい。
【００９５】
つまり、図１４の（ｂ）において許容時間が与えられたとき、それに対応するデータの欠落率で十分な解析精度を示す（ａ）のグラフが得られるような解析アルゴリズムに切り替える。欠落率が低くても解析精度が得られるアルゴリズムとは、定性的には、処理の感度が低いアルゴリズムと考えられる。例えばエッジ検出のフィルタをＳｏｂｅｌフィルタからＰｒｅｗｉｔｔフィルタ、Ｒｏｂｅｒｔｓフィルタ、と切り替えていくことにより、データ欠落部分の影響を抑え、許容時間が十分になくてもある程度の精度を維持することができる。逆に許容時間が比較的長い場合はデータの欠落率を低く抑えられるため、感度の高いアルゴリズムを用いることにより、より正確な結果を得ることができる。
【００９６】
この場合、情報処理装置２００ａの処理条件調整部２６８は、許容時間と解析アルゴリズムとを対応づけた情報を内部のメモリに保持し、再送要求生成部２５４ａに設定された許容時間に対応するアルゴリズムを特定したうえ、画像解析部２６２ａに通知する。画像解析部２６２ａは通知されたアルゴリズムを用いて撮影画像を解析する。このようにすることで、通信プロトコルやハードウェアの仕様が変更されたりバージョンアップされたりしても、それによる影響が画像解析、ひいては情報処理や表示内容に及ばないようにすることができる。
【００９７】
なお解析アルゴリズムは、固定値として与えられた許容時間に対応させて切り替えるのみならず、環境等に応じて調整された許容時間に対応させることも考えられる。例えば上述のように照度を測定する機構を設けた場合、許容時間を照度に応じて調整し、調整された許容時間に対し適切なアルゴリズムを選択できる。照度以外に、カメラ１１０において自動調整機能が実装される、露出、絞り値、シャッタースピード、ホワイトバランスなどの撮影条件を決定づける環境依存の各種パラメータを情報処理装置２００ａにて取得し、それに応じて許容時間の調整を行ったうえ適切なアルゴリズムを選択してもよい。
【００９８】
次に、以上述べた構成によって実現できる情報処理装置の動作を説明する。図１７は、本実施の形態において情報処理装置が撮影画像のデータに基づき出力データを生成する処理手順を示すフローチャートである。なお同図は、図１５で説明した許容時間の調整機能を含む情報処理装置２００ａの動作を示しているが、図９で示した調整機能を含まない情報処理装置２００を想定した場合、Ｓ２２、Ｓ２４の処理が省略される。
【００９９】
まず、ユーザが情報処理装置２００ａやヘッドマウントディスプレイ１００の電源を投入するなどして処理の開始を要求すると、ヘッドマウントディスプレイ１００のカメラ１１０により撮影が開始される。情報処理装置２００ａの通信部２５０は、ヘッドマウントディスプレイ１００から撮影画像の第１フレームのデータを含むパケットを取得する（Ｓ１０）。データは上述のとおり送信単位で徐々に送られるため、Ｓ１０の処理は実際には、後続の処理と並行して行われる。Ｓ１６の再送要求や、Ｓ１８の欠落情報生成処理も同様である。
【０１００】
パケット解析部２５２は、パケットを取得した順に、撮影画像のデータをバッファ２５６に格納していくとともに、パケットＩＤと送信順を比較するなどして損失したパケットを検出する（Ｓ１２）。再送要求生成部２５４ａは、パケット損失が検出されたタイミングで当該パケットの再送のための経過時間の計測を開始する。経過時間が再送の許容時間以内であれば（Ｓ１４のＹ）、再送要求生成部２５４ａは当該パケットの再送要求を生成し、通信部２５０を介してヘッドマウントディスプレイ１００に送信する（Ｓ１６）。損失したパケットについては許容時間を満了するまでＳ１０、Ｓ１２、Ｓ１６の処理を繰り返す。
【０１０１】
経過時間が許容時間を過ぎていたら再送要求は行わず（Ｓ１４のＮ）、欠落情報生成部２５８が当該パケットに対応するデータが欠落している旨を示す欠落情報を生成する（Ｓ１８）。復号部２６０および画像解析部２６２ａは、当該欠落情報を参照しながら、画像中、データが欠落している箇所について他と区別して復号処理、解析処理を行う（Ｓ２０）。具体的には、復号部２６０は撮影画像のデータをバッファ２５６から取得し復号していくとともに、データが欠落している箇所の画素値に無効データを代入する。
【０１０２】
画像解析部２６２ａは、データが欠落している箇所を解析対象や結果の出力対象から除外したり、その箇所に係る解析結果の精度が低い可能性がある旨を示す付加情報を生成したりする。なお欠落情報のフォーマットや画像解析の内容などによっては、復号部２６０および画像解析部２６２ａのどちらかのみが、上述したようなデータ欠落への対処を行うようにしてもよい。
【０１０３】
画像解析の結果、精度が所定の下限を上回っている場合（Ｓ２２のＮ）、処理条件調整部２６８は再送処理の許容時間を短縮する方向に、再送要求生成部２５４ａにおける設定を調整する（Ｓ２４）。精度が所定の下限に達している場合は（Ｓ２２のＹ）、許容時間の調整は行わない。なお、精度が最初から下限を下回っている場合は、許容時間を延長する方向に調整することで、解析精度を適正化してもよい。ただしこの場合は、撮影から表示までのレイテンシの観点で、許容時間の上限を別途定めておく必要がある。
【０１０４】
情報処理部２６４は、画像解析の結果等を用いて情報処理を行い、出力データ生成部２６６がその結果を表示画像や音声などの出力データとして生成する（Ｓ２６）。当該出力データは通信部２５０からヘッドマウントディスプレイ１００に送信され、出力される。ユーザからの入力などにより処理を停止させる必要がなければ、撮影画像の後続フレームについてＳ１０〜Ｓ２６の処理を繰り返す（Ｓ２８のＮ）。処理を停止させる必要が生じたら全ての処理を終える（Ｓ２８のＹ）。
【０１０５】
以上述べた本実施の形態によれば、撮影画像のデータを無線通信により取得し情報処理を行うシステムにおいて、取得できなかったデータと画像上の位置とを関連づけた欠落情報を生成する。そして画像解析や情報処理において、データが欠落している箇所を他と差別化して処理する。これにより、出力データを生成するまでの様々な処理において、データが欠落している箇所の処理結果が他の領域の結果と同様に扱われ、出力結果全体に悪影響が及ぶのを防ぐことができる。
【０１０６】
また解析内容によっては、データの欠落部分を避けて処理する、といった方策が可能になるため、データが正常に得られている領域の解析精度を維持できるとともに、余計な処理を省くことにより処理の負荷を軽減できる。データ欠落に対しこれらの対策を施すことにより、データ伝送中のパケット損失に応じた再送要求に許容される時間を限定しても、処理の精度を極力維持することができる。結果として、処理結果の精度と出力の即時性のバランスを良好にできる。
【０１０７】
また、画像解析の精度とパケットの再送要求に許容される時間との関係、という独特の知見に基づき、許容時間、解析アルゴリズム、符号化処理のパラメータ、などを調整する。例えば精度が得られることが保障される範囲内で許容時間を短縮する方向に調整することにより、結果への影響を少なく処理の高速化を実現できる。またそのようにして調整された許容時間は、解析精度の得られにくさといった撮影画像の特性を反映しているため、それを踏まえて伝送前の符号化処理を適正化することにより、撮影環境等に応じた最適な送信形態を実現できる。許容時間に応じて解析アルゴリズムを切り替えることも同様に、通信環境を含め与えられた環境に対して最もよい結果が得られる条件での処理が可能になる。
【０１０８】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１０９】
３０  ディスプレイ、  ４０  通信制御部、  ４４  アンテナ、  １００  ヘッドマウントディスプレイ、  １１０  カメラ、  １２０  データ取得部、  １２２  符号化部、  １２４  バッファ、  １２６  通信部、  １２８  再送制御部、  １３０  データ出力部、  １３２  処理条件調整部、  ２００  情報処理装置、  ２２２  ＣＰＵ、  ２２４  ＧＰＵ、  ２２６  メインメモリ、  ２５０  通信部、  ２５２  パケット解析部、  ２５４  再送要求生成部、  ２５６  バッファ、  ２５８  欠落情報生成部、  ２６０  復号部、  ２６２  画像解析部、  ２６４  情報処理部、  ２６６  出力データ生成部、  ２６８  処理条件調整部。
【図１】
0006533761.tif 000002
【図２】
0006533761.tif 000003
【図３】
0006533761.tif 000004
【図４】
0006533761.tif 000005
【図５】
0006533761.tif 000006
【図６】
0006533761.tif 000007
【図７】
0006533761.tif 000008
【図８】
0006533761.tif 000009
【図９】
0006533761.tif 000010
【図１０】
0006533761.tif 000011
【図１１】
0006533761.tif 000012
【図１２】
0006533761.tif 000013
【図１３】
0006533761.tif 000014
【図１４】
0006533761.tif 000015
【図１５】
0006533761.tif 000016
【図１６】
0006533761.tif 000017
【図１７】
0006533761.tif 000018