(57)【要約】損失のある無線リンクのためのデータ復元技術を実施するシステム、装置及び方法が開示される。送信機は、ビデオストリームを符号化し、符号化されたビデオストリームを受信機に無線送信するように構成されており、ビデオストリームは、バーチャルリアリティ（ＶＲ）レンダリング環境を表す。送信機は、周波数に基づいて、ビデオストリームを複数のサブストリーム成分に分割する。動きベクトルパラメータをビデオストリームのみの最低周波数のサブストリーム成分について計算し、低いＭＣＳレベルを使用して、これらの動きベクトルパラメータを受信機に送信する。受信機が動きベクトルパラメータを受信するが、所定のチャンクの最低周波数成分を受信しない場合に、受信機は、動きベクトルパラメータを使用して、前のビデオフレームの対応するチャンクから外挿することによって、所定のチャンクの最低周波数成分を再構成する。【選択図】図５
2021508962.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
送信機と、
受信機と、
を備え、
前記送信機は、
ビデオストリームを、前記ビデオストリームの異なる周波数範囲に対応する複数のサブストリーム成分に分割することと、
前記ビデオストリームの最低周波数のサブストリーム成分について動きベクトルパラメータを計算することと、
第１変調符号化方式（ＭＣＳ）レベルで前記動きベクトルパラメータを前記受信機に送信することであって、前記第１ＭＣＳレベルは第１閾値未満である、ことと、
を行うように構成されている、
システム。
【請求項２】
前記受信機は、ビデオフレームの所定のチャンクについて所定の最低周波数のサブストリーム成分を受信していないことに応じて、受信した動きベクトルパラメータに基づいて、前のビデオフレームの対応するチャンクの最低周波数のサブストリーム成分から外挿することによって、前記所定のチャンクの前記所定の最低周波数のサブストリーム成分を再構成するように構成されている、
請求項１のシステム。
【請求項３】
前記送信機は、前記最低周波数のサブストリーム成分を第２ＭＣＳレベルで送信するように構成されており、前記第１ＭＣＳレベルは前記第２ＭＣＳレベルよりも低い、
請求項１のシステム。
【請求項４】
前記受信機は、所定の動きベクトルパラメータセットを受信しないことに応じて、１つ以上の前の動きベクトルパラメータセットから外挿することによって、前記所定の動きベクトルパラメータセットを再生成するように構成されている、
請求項１のシステム。
【請求項５】
前記送信機は、前記動きベクトルパラメータをビームフォーミングトランザクションに埋め込むように構成されている、
請求項１のシステム。
【請求項６】
前記送信機は、前記動きベクトルパラメータのデータ量が第２閾値未満である場合に、前記動きベクトルパラメータを前記ビームフォーミングトランザクションに埋め込むように構成されている、
請求項５のシステム。
【請求項７】
前記システムは、前記動きベクトルを肯定応答トランザクションに埋め込むように構成されている、
請求項１のシステム。
【請求項８】
ビデオストリームを、前記ビデオストリームの異なる周波数範囲に対応する複数のサブストリーム成分に分割することと、
前記ビデオストリームの最低周波数のサブストリーム成分について動きベクトルパラメータを計算することと、
第１変調符号化方式（ＭＣＳ）レベルで前記動きベクトルパラメータを受信機に送信することであって、前記第１ＭＣＳレベルは第１閾値未満である、ことと、を含む、
方法。
【請求項９】
前記方法は、ビデオフレームの所定のチャンクについて所定の最低周波数のサブストリーム成分を受信していないことに応じて、受信した動きベクトルパラメータに基づいて、前のビデオフレームの対応するチャンクの最低周波数のサブストリーム成分から外挿することによって、前記所定のチャンクの前記所定の最低周波数のサブストリーム成分を再構成することをさらに含む、
請求項８の方法。
【請求項１０】
第２ＭＣＳレベルで前記最低周波数のサブストリーム成分を送信することをさらに含み、前記第１ＭＣＳレベルは前記第２ＭＣＳレベルよりも低い、
請求項８の方法。
【請求項１１】
前記方法は、所定の動きベクトルパラメータセットを受信しないことに応じて、１つ以上の前の動きベクトルパラメータセットから外挿することによって、前記所定の動きベクトルパラメータセットを再生成することをさらに含む、
請求項８の方法。
【請求項１２】
前記動きベクトルパラメータをビームフォーミングトランザクションに埋め込むことをさらに含む、
請求項８の方法。
【請求項１３】
前記動きベクトルパラメータのデータ量が第２閾値未満である場合に、前記動きベクトルパラメータを前記ビームフォーミングトランザクションに埋め込むことをさらに含む、
請求項１２の方法。
【請求項１４】
前記動きベクトルを肯定応答トランザクションに埋め込むことをさらに含む、
請求項８の方法。
【請求項１５】
処理ユニットと、
メモリと、
を備える送信機であって、
前記送信機は、
ビデオストリームを、前記ビデオストリームの異なる周波数範囲に対応する複数のサブストリーム成分に分割することと、
前記ビデオストリームの最低周波数のサブストリーム成分について動きベクトルパラメータを計算することと、
第１変調符号化方式（ＭＣＳ）レベルで前記動きベクトルパラメータを受信機に送信することであって、前記第１ＭＣＳレベルは第１閾値未満である、ことと、
を行うように構成されている、
送信機。
【請求項１６】
前記送信機は、第２ＭＣＳレベルで前記最低周波数のサブストリーム成分を送信するように構成されており、前記第１ＭＣＳレベルは前記第２ＭＣＳレベルよりも低い、
請求項１５の送信機。
【請求項１７】
前記第１ＭＣＳレベルは０である、
請求項１６の送信機。
【請求項１８】
前記送信機は、前記動きベクトルパラメータをビームフォーミングトランザクションに埋め込むように構成されている、
請求項１５の送信機。
【請求項１９】
前記送信機は、前記動きベクトルパラメータのデータ量が第２閾値未満の場合に、前記動きベクトルパラメータを前記ビームフォーミングトランザクションに埋め込むように構成されている、
請求項１８の送信機。
【請求項２０】
前記送信機は、前記動きベクトルを肯定応答トランザクションに埋め込むように構成されている、
請求項１５の送信機。
【発明の詳細な説明】
【背景技術】
【０００１】
（関連技術の説明）
無線通信リンクを使用して、コンピュータ（又は他のデバイス）からバーチャルリアリティ（ＶＲ）ヘッドセット（又はヘッドマウントディスプレイ（ＨＭＤ））にビデオストリームを送信することができる。ＶＲビデオストリームを無線送信することにより、コンピュータとＨＭＤを装着しているユーザとの間のケーブル接続が不要になるので、ユーザによる自由な移動が可能になる。コンピュータとＨＭＤとの間の従来のケーブル接続には、通常、１つ以上のデータケーブルと、１つ以上の電源ケーブルと、が含まれる。ユーザが、ケーブルテザー無しに、ケーブルを避けることを意識せずに動き回るのを可能にすることによって、より没入感のあるＶＲシステムが実現する。また、ＶＲビデオストリームを無線で送信することによって、従来よりも幅広い用途でＶＲシステムを利用することができる。
【０００２】
しかしながら、ＶＲアプリケーションは、通常、ビデオデータをバッファリングしない低レイテンシのアプリケーションである。例えば、ユーザが頭を動かすと、これがＨＭＤ又はコンソールによって検出され、その後にレンダリングされるビデオフレームが、ユーザの新たな視聴位置を反映するように更新される。また、リンクの状態を変更すると、ビデオの品質に影響を与える可能性がある。リンクの品質が低下し、ビデオデータが失われたり破損した場合、ユーザエクスペリエンスが粗末なものになる可能性がある。したがって、データの無線ストリーミングのための改良された技術が望まれている。
【０００３】
本明細書で説明する方法及びメカニズムの利点は、添付の図面と併せて以下の説明を参照することによって、より良く理解することができる。
【図面の簡単な説明】
【０００４】
【図１】システムの一実施形態のブロック図である。
【図２】無線バーチャルリアリティ（ＶＲ）システムの一実施形態のブロック図である。
【図３】ビデオフレームのシーケンスについての動きベクトルのセットの一実施形態のブロック図である。
【図４】ビデオフレームの損失部分の高解像度バージョンを隣接する部分から外挿する一実施形態のブロック図である。
【図５】ビデオストリームの低周波数のサブストリーム成分から動きベクトル成分を生成するロジックの一実施形態のブロック図である。
【図６】ビデオストリームの低周波数成分についての動きベクトルパラメータを計算して送信する方法の一実施形態を示す一般化されたフロー図である。
【図７】ビデオフレームの低周波数のサブストリーム成分の動きベクトルパラメータを使用して、ビデオフレームの損失チャンクを再構成する方法の一実施形態を示す一般化されたフロー図である。
【図８】ビデオフレームの低周波数のサブストリーム成分の動きベクトルパラメータをビームフォーミング又はＡＣＫトランザクションに埋め込む方法の一実施形態を示す一般化されたフロー図である。
【図９】ビデオフレームのブロックの高周波数成分を隣接するブロックから再構成する方法の一実施形態を示す一般化されたフロー図である。
【図１０】ビデオストリームを送信するためのＭＣＳレベルを選択する方法の一実施形態を示す一般化されたフロー図である。
【発明を実施するための形態】
【０００５】
以下の説明では、本明細書で提示される方法及びメカニズムの十分な理解を提供するために、多くの具体的な詳細が述べられている。しかしながら、当業者は、これらの具体的な詳細無しに様々な実施形態が実施され得ることを認識すべきである。いくつかの例では、本明細書で説明するアプローチを曖昧にすることを避けるために、周知の構造、コンポーネント、信号、コンピュータプログラム命令及び技術を詳細に示していない。説明を簡単且つ明確にするために、図に示された要素が必ずしも縮尺通りに描かれていないことを理解されたい。例えば、いくつかの要素の寸法が、他の要素に対して誇張されている場合がある。
【０００６】
損失のある無線リンクのためのデータ復元技術を実装するための様々なシステム、装置、方法及びコンピュータ可読媒体を本明細書に開示する。一実施形態では、無線通信システムは、無線リンクを介して通信する送信機及び受信機（例えば、ヘッドマウントディスプレイ（ＨＭＤ））を含む。一実施形態では、送信機は、ビデオストリームを符号化し、符号化されたビデオストリームを受信機に無線送信するように構成されている。一実施形態では、ビデオストリームは、バーチャルリアリティ（ＶＲ）レンダリング環境を表す。
【０００７】
一実施形態では、ビデオデータを無線送信する場合、送信機は、低解像度成分のみを受信機に送信する。低解像度成分は、低周波数成分又はＤＣ成分とも呼ばれる。この低解像度成分をロバストな低変調符号化方式（ＭＣＳ）レベルで送信する。したがって、低解像度成分を、難しいリンク（challenging link）を介して受信する確率が高い。また、ＤＣ成分のみについて動き推定データ（例えば、動きベクトルパラメータ）を計算する。これにより、動き推定データが、元のビデオフレーム全体について計算する場合よりもはるかに小さくなる。一実施形態では、動き推定データは、低解像度成分に使用されたＭＣＳレベルよりもさらに低いＭＣＳレベル（例えば、ＭＣＳレベル０）を使用して受信機に転送される。ビームフォーミング中等のようにＭＣＳ  ０を使用して受信機と通信する場合には、常に、ＤＣ成分の動き推定データが信号に埋め込まれる。ＨＭＤが動き推定データを受信するがＤＣ成分を受信しない場合、ＨＭＤは、動き推定データを使用して、前のビデオフレームから現在のＤＣ成分を外挿によって推定（extrapolate）する。これにより、ＨＭＤが、損失したデータチャンクを詳細にではないが大まかに再構成することを可能にするため、ユーザは、損失したチャンクに気付かない。
【０００８】
動き推定データのサイズを縮小する低解像度成分から動き推定データを生成するので、この動き推定データを、ビームフォーミングトランザクション又は肯定応答（ＡＣＫ）トランザクションに埋め込むことができる。これらのトランザクションは、通常、ＭＣＳ  ０を使用して転送され、リンク状態に対してロバストである。ビームフォーミングトランザクション及びＡＣＫトランザクションは、ＨＭＤによって受信される可能性が最も高いため、ＭＣＳ  ０で送信される。また、動き推定データがこれらのトランザクションに埋め込まれている場合、動き推定データは、ＨＭＤによって受信される可能性が高くなる。或いは、動き推定データを、独自のＭＣＳ  ０トランザクションで送信することができる。一実施形態では、動き推定データが十分に小さい（すなわち、閾値未満）場合、動き推定データは、他のトランザクションによって送信される。
【０００９】
一実施形態では、動き推定データを損失した場合、ＨＭＤは、動き推定データフロー外挿（motion estimation data flow extrapolation）を行うことができる。例えば、ＨＭＤが前の２つのフレームの動き推定データを受信し、フローがある方向に移動する場合に、ＨＭＤは、検出された方向に沿って外挿（extrapolates）し、現在のフレームの損失した動き推定データを再生成する。この例では、ＨＭＤは、次の動きベクトルが前の動きベクトルと同じ方向にあることを予測する。次に、ＨＭＤは、再生成された動き推定データから低周波数成分を復元することができる。
【００１０】
別の実施形態では、１つの無線パケットを損失した場合に、これは、通常、ビデオフレームの小さな部分に相当する。例えば、ビデオフレーム全体で１０００パケットが送信される場合、１つのパケットは、フレーム全体の０．１％を含む。フレームの損失したチャンクを再構成する場合、その部分を、必ずしも高解像度で再構成する必要がない。損失したチャンクの低解像度での再構成は、典型的に、ユーザに対して目立った欠陥又はアーティファクトを生成しない。しかし、チャンクが失われ、ブラックボックスを使用して表示する場合、ユーザは、ビデオフレーム内のこの欠陥に気付くであろう。さらなる実施形態では、これらの技術を利用して、ビデオフレームの小さな部分のみの高解像度成分を損失する場合のシナリオを緩和する。その小さい部分の低周波数成分を受信して、その小さい部分を囲む高解像度成分を受信する場合に、ＨＭＤは、損失した高解像度成分を再生成するために、隣接する高解像度成分と、損失したチャンクの低解像度成分と、を使用して外挿することができる。
【００１１】
図１を参照すると、システム１００の一実施形態のブロック図が示されている。システム１００は、互いに無線通信するように動作可能な第１通信装置（例えば、送信機１０５）と、第２通信装置（例えば、受信機１１０）と、を少なくとも含む。なお、受信機１１０は、データ及び／又は肯定応答を送信機１０５に送信することができることに留意されたい。したがって、送信機１０５及び受信機１１０は、トランシーバと呼ばれる場合もあることに留意されたい。一実施形態では、送信機１０５及び受信機１１０は、無認可の６０ギガヘルツ（ＧＨｚ）の周波数帯域を介して無線通信する。例えば、送信機１０５及び受信機１１０は、電気電子学会（ＩＥＥＥ）８０２．１１ａｄ規格（すなわち、ＷｉＧｉｇ）に従って通信することができる。他の実施形態では、送信機１０５及び受信機１１０は、他の周波数帯を介して、及び／又は、他の無線通信規格に準拠することによって、無線通信することができる。
【００１２】
例えば６０ＧＨｚの周波数帯等の極めて高い周波数（ＥＨＦ）帯域内で動作する無線通信デバイスは、比較的小さいアンテナを用いて信号を送受信することが可能である。しかしながら、このような信号は、低周波数帯域を介した送信に比べて高い大気減衰を受けることになる。このような減衰の影響を低減し、通信範囲を拡大するために、ＥＨＦデバイスは、通常、ビームフォーミング技術を組み込む。例えば、ＩＥＥＥ８０２．１１ａｄ仕様は、無線局がリモート局と最適な送信及び／又は受信アンテナの組み合わせをテストし交渉する、セクタレベルスイープ（ＳＬＳ）とも呼ばれるビームフォーミングトレーニング手順を詳述している。様々な実施形態では、送信機１０５及び受信機１１０は、ビームフォーミングトレーニング手順を定期的に実行して、無線データ送信のための最適な送信及び／又は受信アンテナの組み合わせを決定するように構成されている。
【００１３】
送信機１０５及び受信機１１０は、任意のタイプの通信デバイス及び／又はコンピューティングデバイスを表す。例えば、様々な実施形態では、送信機１０５及び／又は受信機１１０は、携帯電話、タブレット、コンピュータ、サーバ、テレビ、ゲーム機、ヘッドマウントディスプレイ（ＨＭＤ）、別のタイプのディスプレイ、ルータ、又は、他のタイプのコンピューティングデバイス若しくは通信デバイスであってもよい。様々な実施形態では、システム１００は、レイテンシセンシティブアプリケーション（latency sensitive applications）を実行するように構成されている。例えば、一実施形態では、システム１００は、レンダリングされた仮想環境のフレームを送信機１０５から受信機１１０に無線送信するためのバーチャルリアリティ（ＶＲ）アプリケーションを実行する。他の実施形態では、他のタイプのレイテンシセンシティブアプリケーションを、本明細書で説明する方法及びメカニズムを利用するシステム１００によって実行することができる。
【００１４】
一実施形態では、送信機１０５は、無線周波数（ＲＦ）トランシーバモジュール１２５と、プロセッサ１３０と、メモリ１３５と、アンテナ１４０と、を少なくとも含む。ＲＦトランシーバモジュール１２５は、ＲＦ信号を送信及び受信するように構成されている。一実施形態では、ＲＦトランシーバモジュール１２５は、６０ＧＨｚ帯域の１つ以上のチャネルを介して信号を無線で送信及び受信するように動作可能なミリ波トランシーバモジュールである。ＲＦトランシーバモジュール１２５は、ベースバンド信号を無線送信用のＲＦ信号に変換し、ＲＦ信号を、送信機１０５によるデータ抽出のためにベースバンド信号に変換する。ＲＦトランシーバモジュール１２５は、説明のために単一のユニットとして示されていることに留意されたい。ＲＦトランシーバモジュール１２５は、実施形態に応じて、任意の数の異なるユニット（例えば、チップ）で実装可能であることを理解されたい。同様に、プロセッサ１３０及びメモリ１３５の各々は、送信機１０５の一部として実装可能な任意の数及びタイプのプロセッサ及びメモリデバイスを表す。
【００１５】
また、送信機１０５は、ＲＦ信号を送信及び受信するためのアンテナ１４０を含む。アンテナ１４０は、無線信号の送信及び受信の指向性を変更するように構成可能な、フェーズドアレイ、単一の素子アンテナ、切り替えビームアンテナのセット等の１つ以上のアンテナを表す。一例として、アンテナ１４０は、１つ以上のアンテナアレイを含み、アンテナアレイ内の各アンテナの振幅又は位相は、このアレイ内の他のアンテナから独立して構成することができる。アンテナ１４０は、送信機１０５の外部にあるように示されているが、様々な実施形態では、アンテナ１４０は、送信機１０５の内部に含まれてもよいことを理解されたい。さらに、送信機１０５は、図を不明瞭にしないように図示されていない任意の数の他のコンポーネントを含むことができることを理解されたい。送信機１０５と同様に、受信機１１０内に実装されるコンポーネントは、ＲＦトランシーバモジュール１４５と、プロセッサ１５０と、メモリ１５５と、アンテナ１６０と、を少なくとも含み、これらは送信機１０５について上述したコンポーネントに類似している。受信機１１０は、他のコンポーネント（例えば、ディスプレイ）を含んでもよいし、他のコンポーネントに接続されてもよいことを理解されたい。
【００１６】
送信機１０５と受信機１１０との間のリンクは、環境の変化によって変動する容量特性を有する。様々な実施形態では、送信機１０５は、ビデオストリームを複数のサブストリーム成分に分割するように構成されており、各サブストリーム成分は、ビデオストリームの別々の周波数範囲に対応する。ビデオストリームを複数の成分に分割するために送信機によって利用される技術は、実施形態によって変えることができる。一実施形態では、送信機は、連続圧縮を利用して、ビデオストリームを、低品質のサブストリームと、１つ以上の連続する高品質のサブストリームと、に分割する。高品質のサブストリームの数は、実施形態によって変えることができる。高品質のサブストリームの各々は、正常に復号されるために、低品質のサブストリームの全ての受信が成功することを必要とする。高品質のサブストリームは、低品質のサブストリームに対して効果的なインクリメンタル拡張（incremental enhancements）である。「低品質」のサブストリームは、「低周波数」のサブストリームとも呼ばれることに留意されたい。同様に、「高品質」のサブストリームは、「高周波数」のサブストリームとも呼ばれる。また、上記の用語に関連して、「サブストリーム」という用語は、「成分」、「ストリーム」、「要素」又は「サブセットビットストリーム」と互換的に使用することができることに留意されたい。
【００１７】
送信機１０５は、サブストリーム成分を別々に受信機１１０に送信し、異なるサブストリーム成分に対して異なる変調符号化方式（ＭＣＳ）レベルを利用することができる。一実施形態では、送信機１０５は、ビデオストリームの最低周波数のサブストリーム成分を送信するために比較的低いＭＣＳレベルを利用して、この比較的低いＭＣＳレベルが、この最低周波数のサブストリーム成分が受信機１１０によって受信される確率を高めるのに役立つ。
【００１８】
しかしながら、場合によっては、ビデオストリームの最低周波数のサブストリーム成分でさえも、チャネル状態が悪いために伝送中に失われる可能性がある。したがって、このシナリオを緩和するために、送信機１０５は、最低周波数のサブストリーム成分のみから動き推定データ（例えば、動きベクトルパラメータ）を計算し、この動き推定データを、低いロバストなＭＣＳレベルを使用して受信機１１０に送信するように構成されている。一実施形態では、送信機１０５は、最低周波数のサブストリーム成分に利用されるＭＣＳレベルよりも低いＭＣＳレベルを、動き推定データに使用する。動き推定データを最低周波数のサブストリーム成分のみから計算するので、動き推定データが小さくなる傾向がある。一実施形態では、動き推定データのサイズが閾値を下回る場合には、動き推定データは、ビームフォーミング又は肯定応答（ＡＣＫ）トランザクションに埋め込まれる。ビームフォーミングトランザクションは、通常、ＭＣＳレベル０を使用して送信され、トランザクションが正常に受信される確率を上げる。
【００１９】
様々な技術のうち何れかを、最低周波数のサブストリーム成分のみについて動き推定データを生成するために利用することができる。例えば、一実施形態では、動き推定データは、ビデオフレームについてのグローバル動きベクトルと、ビデオフレームの一部についてのローカル動きベクトルと、を含むことができる。グローバルモーションは、一般に、カメラのパンニング（panning）、タイリング（tiling）、ズームイン又はズームアウト、回転、他のアクションによって発生する動き等のビデオフレーム全体の動きを表す。本明細書で使用する場合、「動きベクトル」という用語は、所定のビデオフレームの少なくとも一部の座標から参照フレーム内の当該一部の座標へのオフセットを指定する二次元ベクトルとして定義される。例えば、一実施形態では、ローカル動きベクトルは、２つのビデオフレーム間のブロック（例えば、マクロブロック）の水平方向及び垂直方向の動きを示すｘ座標及びｙ座標のセットとして表される。
【００２０】
一実施形態では、受信機１１０が、所定のビデオフレームの所定のチャンクについての最低周波数のサブストリーム成分を受信せず、この最低周波数のサブストリーム成分の動き推定データを受信する場合には、受信機１１０は、動き推定データを利用して、前のビデオフレーム内の対応するチャンクから外挿することによって、所定のチャンクを再構成する。これにより、受信機１１０は、低品質ではあるが、所定のチャンクを再構成することができる。しかしながら、新たなフレームが現在のフレームのすぐ後に表示されることから、ユーザは、低品質のチャンクによるアーティファクトに気付くことが殆どない。所定のチャンクを再構成することは、所定のチャンクを空白のままして、ユーザに表示されるビデオフレームにより顕著な欠陥が発生するよりも優れた解決策である。本明細書で使用する場合、「外挿」という用語は、既知のデータの傾向から未知の値を推測することによって値の範囲を拡張することとして定義される。
【００２１】
一実施形態では、動き推定データを損失した場合、受信機１１０は、動きベクトルフロー外挿を実行する。例えば、受信機１１０が前の２つのフレームの動き推定データを受信する場合であって、フローがある方向に移動する場合に、受信機１１０は、検出した方向沿に沿って外挿し、現在のフレームの損失した動き推定データを再生成する。この例では、受信機１１０は、次の動きベクトルが前の動きベクトルと同じ方向になることを予測する。次に、受信機１１０は、再生成された動き推定データから低周波数のサブストリーム成分を復元することができる。
【００２２】
別の実施形態では、１つの無線パケットを損失した場合、これは、通常、ビデオフレームの小さな部分に相当する。本実施形態では、ビデオフレームの小さな部分を損失した場合に、受信機１１０は、ビデオフレームのこの部分を再構成する。フレームの損失したチャンクを再構成する場合、その部分を必ずしも高解像度で再構成する必要がない。この低解像度の再構成は、通常、ユーザに対して目立った欠陥又はアーティファクトを生成しない。しかし、チャンクを損失し、ブラックボックスを使用して表示する場合には、ユーザは、ビデオフレームのこの欠陥に気付く可能性が高い。ビデオフレームのチャンクの低周波数成分を受信して、その小さな部分を囲む高解像度成分を受信した場合に、受信機１１０は、隣接する高解像度成分と、損失したチャンクの低解像度成分とを使用して外挿し、損失した高解像度成分を再生成することができる。
【００２３】
図２を参照すると、無線バーチャルリアリティ（ＶＲ）システム２００の一実施形態のブロック図が示されている。システム２００は、コンピュータ２１０と、ヘッドマウントディスプレイ（ＨＭＤ）２２０と、を少なくとも含む。コンピュータ２１０は、１つ以上のプロセッサと、メモリデバイスと、入出力（Ｉ／Ｏ）デバイスと、ＲＦコンポーネントと、アンテナと、パーソナルコンピュータ又は他のコンピューティングデバイスを示す他のコンポーネントと、を含む任意のタイプのコンピューティングデバイスを表す。他の実施形態では、パーソナルコンピュータの他に、他のコンピューティングデバイスを用いて、ビデオデータを無線でヘッドマウントディスプレイ（ＨＭＤ）２２０に送信することができる。例えば、コンピュータ２１０は、ゲーム機、スマートフォン、セットトップボックス、テレビ、ビデオストリーミングデバイス、ウェアラブルデバイス、テーマパークのアミューズメントライドのコンポーネント、又は、他のものであってもよい。
【００２４】
コンピュータ２１０及びＨＭＤ２２０の各々は、無線通信するための回路及び／又はコンポーネントを含む。なお、コンピュータ２１０は、外部アンテナを有するように示されているが、これは単にビデオデータが無線送信されていることを表すために示されていることを理解されたい。また、コンピュータ２１０は、コンピュータ２１０の外部ケースの内側にアンテナを含むことができることを理解されたい。さらに、コンピュータ２１０は、有線電源接続を使用して電力を供給され得るが、ＨＭＤ  ２２０は、通常、バッテリによって電力供給される。或いは、コンピュータ２１０は、バッテリによって電力供給されるラップトップコンピュータであってもよい。
【００２５】
一実施形態では、コンピュータ２１０は、ＨＭＤ２２０を装着したユーザに提示されるＶＲ環境の表現を動的にレンダリングするように構成された回路を含む。例えば、一実施形態では、コンピュータ２１０は、ＶＲ環境をレンダリングするための１つ以上のグラフィックス処理ユニット（ＧＰＵ）を含む。他の実施形態では、コンピュータ２１０は、中央処理装置（ＣＰＵ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）又は他のプロセッサタイプを含む、他のタイプのプロセッサを含むことができる。ＨＭＤ２２０は、レンダリングされたＶＲ環境のフレームを生成するために、コンピュータ２１０によって送信された圧縮ビットストリームを受信し、復号化する回路を含む。次に、ＨＭＤ２２０は、生成されたフレームを、ＨＭＤ２２０内に統合されたディスプレイに送る。
【００２６】
仮想環境のビデオストリームのフレームをレンダリングした後に、コンピュータ２１０のビデオエンコーダは、レンダリングされたフレームをＮ個の成分に分割する。次に、Ｎ個の成分の各々を別々にＨＭＤ２２０に送信することができる。Ｎ個の成分の各々は、異なる周波数、ビットレート、品質、及び／又は、解像度でビデオを表す。一実施形態では、レンダリングされた各フレームを複数回処理して、別々の低品質／ビットレート及び高品質／ビットレートのストリームを生成し、高品質のストリームは、低品質のストリームの派生である。このプロセスは、低品質／高品質の２つのストリームに限定されず、異なる品質／ビットレートのＮ個のストリームを生成するために使用することもできる逐次近似である。一実施形態では、レンダリングされたフレームを、低いビットレートのストリームを生成するために第１圧縮率で処理する。本実施形態では、高いビットレートのストリームは、より低い第２圧縮率で、低いビットレートのストリーム及び元のストリームのデルタから生成される。
【００２７】
一実施形態では、ビデオエンコーダは、周波数に基づいて、レンダリングされたビデオフレームを複数の成分に分割する。次に、ビデオエンコーダは、ビデオフレームの最低周波数成分から動き推定データ（例えば、動きベクトルフィールド）を生成する。次いで、メディアアクセス制御（ＭＡＣ）レイヤユニットは、動き推定データを変調し、無線リンクを介してＨＭＤ２２０に送信するためのロバストな変調符号化方式（ＭＣＳ）レベルを選択する。「ＭＣＳレベル」は、「ＭＣＳインデックス」とも呼ばれることに留意されたい。
【００２８】
例えば、一実施形態では、ＭＣＳレベル０を使用して、動き推定データを変調し、ＨＭＤ２２０に送信する。ＭＣＳレベル０は、バイナリ位相シフトキーイング（ＢＰＳＫ）を用いて１シンボル当たり１ビットを符号化し、信頼性の低いＭＣＳと比較して、復調器を誤った決定に至らせるのにより多くのノイズ又は歪みを必要とすることから、ロバストな変調である。ＭＣＳレベル０は、低い伝送速度を犠牲にして、チャネルエラーに対する保護を提供する。他のＭＣＳレベルは、他のタイプの変調を利用する。例えば、ＭＣＳレベル２は、直交位相シフトキーイング（ＱＰＳＫ）変調を使用し、ＭＣＳレベル４は、１６直交振幅変調（ＱＡＭ）を使用し、ＭＣＳレベル７は、６４ＱＡＭを使用する。概して、ＭＣＳレベルが増加すると、ビットレートが増加するが、信号のレジリエンシ（復元力）が低下する。換言すれば、より高いレジリエンス及びより低いデータレートは、比較的低いＭＣＳレベルによって達成され、より低いレジリエンス及びより高いデータレートは、比較的高いＭＣＳレベルによって達成される。
【００２９】
一実施形態では、ＨＭＤ２２０が所定のビデオフレームの所定のチャンクについて最低周波数のサブストリーム成分を受信せず、この最低周波数のサブストリーム成分の動き推定データを受信する場合に、ＨＭＤ２２０は、動き推定データを利用して、前のビデオフレーム内の対応するチャンクから外挿することによって、所定のチャンクを再構成する。これにより、ＨＭＤ２２０は、低い品質ではあるが、所定のチャンクを再構成することができる。しかしながら、新たなフレームがその後すぐに表示されることから、ユーザは、低品質のチャンクによるアーティファクトに気付くことが殆どない。所定のチャンクを再構成することは、所定のチャンクを空白のままにして、ユーザに表示されるビデオフレームにより顕著な欠陥が発生するよりも優れた解決策である。
【００３０】
図３を参照すると、ビデオフレーム３０５Ａ〜３０５Ｄのシーケンスについての動きベクトル３１５Ａ〜３１５Ｃのセットの一実施形態のブロック図が示されている。フレーム３０５Ａ〜３０５Ｄは、ビデオシーケンスの連続するフレームを表す。ボックス３１０Ａは、フレーム３０５Ａ内の画素の個々のブロックを表す。ボックス３１０Ａは、マクロブロックとも呼ばれる。矢印３１５Ａは、ビデオシーケンスがフレーム３０５Ａから３０５Ｂに移動するときのボックス３１０Ａ内のイメージの既知の動きを表す。矢印３１５Ａによって示される既知の動きは、動きベクトルによって定義されてもよい。動きベクトル３１５Ａ〜３１５Ｃは、後続のフレームにおけるボックス３１０の動きの方向を指すが、別の実施形態では、動きベクトルは、イメージの動きに対向する方向を指すように定義されてもよいことに留意されたい。例えば、いくつかの圧縮規格では、マクロブロックに関連する動きベクトルは、参照フレーム内のそのブロックのソースを指す。
【００３１】
一実施形態では、ボックス３１０Ｂ〜３１０Ｄを、動きベクトル３１５Ａ〜３１５Ｃを用いて後続のフレームで追跡することができる。例えば、動きベクトル３１５Ａは、フレーム３０５Ａ内のボックス３１０Ａと比較して、フレーム３０５Ｂ内のボックス３１０Ｂの位置の変化を示す。同様に、動きベクトル３１５Ｂは、フレーム３０５Ｂ内のボックス３１０Ｂと比較して、フレーム３１０Ｃ内のボックス３１０Ｃの位置の変化を示す。また、動きベクトル３１５Ｃは、フレーム３０５Ｃ内のボックス３１０Ｃと比較して、フレーム３１０Ｄ内のボックス３１０Ｄの位置の変化を示す。別の実施形態では、動きベクトルを、所定のフレームから前のフレームまでのブロックの逆方向の動きを追跡するように定義することができる。
【００３２】
受信機（例えば、図２のＨＭＤ２２０）が所定の動きベクトル成分（例えば、動きベクトル３１５Ｃ）を受信しない場合、受信機は、損失した動きベクトル成分を再生成するために、動きベクトルフロー外挿を実行するように構成されている。例えば、受信機が動きベクトル３１５Ａ〜３１５Ｂを受信し、フローがある方向に移動する場合に、受信機は、検出した方向に沿って外挿し、損失した動きベクトル成分３１５Ｃを再生成する。したがって、受信機は、動きベクトル成分３１５Ｃが前の動きベクトル成分３１５Ａ〜３１５Ｂと同じ方向になることを予測する。次に、受信機は、再生成された動きベクトル成分３１５Ｃから、フレーム３０５Ｄの低周波数のサブストリーム成分を復元することができる。
【００３３】
図４を参照すると、ビデオフレーム４０５の損失した部分の高解像度バージョンを、隣接する部分から外挿する一実施形態のブロック図が示されている。一実施形態では、ビデオフレーム４０５は、送信機から受信機（例えば、ＨＭＤ）への無線リンクを介して無線送信されるビデオフレームを表す。一実施形態では、ビデオフレーム４０５は、送信機から受信機に一度に一部が送信される。ビデオフレーム４０５の小さな領域を図４に示し、小さな領域を部分４１５Ａ〜４１５Ｉで構成し、これらの各部分を送信機から受信機に別々に送信する。一実施形態では、受信したビデオフレーム４０５の各部分４１５Ａ〜４１５Ｉを複数のサブストリーム成分に分割し、各サブストリーム成分を受信機に別々に送信する。例えば、一実施形態では、各部分４１５Ａ〜４１５Ｉを高解像度（ＨＲ）成分及び低解像度（ＬＲ）成分に分割し、ＨＲ成分及びＬＲ成分を受信機に別々に送信する。なお、ＨＲ成分は高周波数成分とも呼ばれ、ＬＲ成分は低周波数成分とも呼ばれることに留意されたい。他の実施形態では、各部分４１５Ａ〜４１５Ｉを、元の部分の異なる周波数範囲を表す他の数のサブストリーム成分に分割することができる。所定の部分のＨＲ成分が受信されない場合、受信機は、隣接する部分のＨＲ成分から外挿することによって、所定の部分のＨＲ成分を再構成するように構成されている。
【００３４】
部分４１５Ａ〜４１５Ｄ及び部分４１５Ｆ〜４１５ＩのＨＲラベルは、高解像度成分がビデオフレーム４０５のこれらの部分について受信されたことを示す。部分４１５ＥのラベルＬＲは、低解像度成分のみがビデオフレーム４０５のこの部分について受信されたことを示す。したがって、部分４１５Ｅについて受信されていない高解像度成分に基づいて、受信機は、隣接する部分４１５Ａ〜４１５Ｄ及び４１５Ｆ〜４１５ＩのＨＲ成分から外挿することによって、部分４１５ＥのＨＲ成分を再構成するように構成されている。
【００３５】
図５を参照すると、ビデオストリームの低周波数のサブストリーム成分から動きベクトル成分を生成するためのロジック５００の一実施形態のブロック図が示されている。一実施形態では、送信機（例えば、図２のコンピュータ２１０）のビデオエンコーダ（すなわち、コーデック）は、ソースビデオデータ５０５を受信し、抽出ユニット５１０は、ソースビデオデータ５０５を複数のサブセットビットストリーム５１５Ａ〜５１５Ｎに分割する。サブセットビットストリーム５１５Ａ〜５１５Ｎの数は、実施形態によって変えることができる。異なるサブセットビットストリーム５１５Ａ〜５１５Ｎは、送信機から受信機に別々に送信される。第１サブセットビットストリーム５１５Ａは、ビデオフレームの低周波数成分を含む。ビデオフレームの低周波数成分は、ビデオフレームの低解像度成分とも呼ばれることに留意されたい。
【００３６】
一実施形態では、連続するビデオフレームの第１サブセットビットストリーム５１５Ａ及び第１サブセットビットストリーム５２５Ａが分析される。例えば、前のフレームの第１サブセットビットストリーム５２５Ａ及び現在のフレームの第１サブセットビットストリーム５１５Ａは、比較ユニット５３０に提供される。他の実施形態では、複数の前のフレームの第１サブセットビットストリームを比較ユニット５３０に提供することができる。比較ユニット５３０は、連続的な（back-to-back）第１サブセットビットストリーム５２５Ａ，５１５Ａの比較に基づいて、動きベクトル成分５３５を生成するように構成されている。次に、この動きベクトル成分５３５は、低くロバストなＭＣＳレベル（例えば、ＭＣＳレベル０）を使用して受信機に送信される。低くロバストなＭＣＳレベルで動きベクトル成分５３５を送信することによって、送信機は、困難なリンク状態の間でさえも、動きベクトル成分５３５が受信機によって受信される確率を増加させている。受信機が所定のフレームについて何れのサブセットビットストリーム５１５Ａ〜５１５Ｎも受信しないが、所定のフレームの低周波数成分の動きベクトル成分５３５を受信する場合には、受信機は、動きベクトル成分５３５から所定のフレームの低周波数成分を再構成する。
【００３７】
図６を参照すると、ビデオストリームの低周波数成分について動きベクトルパラメータを計算して送信する方法６００の一実施形態が示されている。説明のために、本実施形態のステップ及び図７〜図１０のステップを順番に示す。しかしながら、説明する方法の様々な実施形態では、説明する要素のうち１つ以上を同時に実行してもよいし、図示した順序と異なる順序で実行してもよいし、完全に省略してもよいことに留意されたい。必要に応じて、他の追加の要素も実行される。本明細書で説明する様々なシステム又は装置の何れも、方法６００を実施するように構成されている。
【００３８】
送信機は、ビデオストリームを複数のサブストリーム成分に分割する（ブロック６０５）。例えば、送信機は、ビデオストリームをＮ個のサブストリーム成分に分割し、第１サブストリーム成分は、ビデオストリームの最高周波数成分を含み、第２サブストリーム成分は、次に高い範囲の周波数成分を含み、第Ｎサブストリーム成分は、ビデオストリームの最低周波数成分を含む等である。次に、送信機は、ビデオストリームの最低周波数のサブストリーム成分のみについて動きベクトルパラメータを計算する（ブロック６１０）。動きベクトルパラメータは、最低周波数のサブストリーム成分の部分に関連するグローバル動きベクトル及び／又はローカル動きベクトルを含むことができる。次いで、送信機は、第１変調符号化方式（ＭＣＳ）レベルを使用して動きベクトルパラメータを受信機に送信し、第１ＭＣＳレベルは、閾値を下回る（ブロック６１５）。一実施形態では、閾値は１であり、送信機は、ＭＣＳレベル０を使用して動きベクトルを送信する。他の実施形態では、閾値は他の値であってもよい。低いＭＣＳレベルを使用して動きベクトルを送信することによって、送信機は、動きベクトルが受信機によって受信される尤度（likelihood）を増加させている。ブロック６１５の後に、方法６００は終了する。
【００３９】
図７を参照すると、ビデオフレームの低周波数のサブストリーム成分の動きベクトルパラメータを使用して、ビデオフレームの損失したチャンクを再構成する方法７００の一実施形態が示されている。受信機は、ビデオフレームの所定のチャンクの低周波数のサブストリーム成分を受信することなく、ビデオフレームの低周波数のサブストリーム成分の動きベクトルパラメータを受信する（ブロック７０５）。所定のチャンクの低周波数成分を再送信することを要求するのではなく、受信機は、受信した動きベクトルパラメータに基づいて、前のビデオフレームの対応するチャンクから外挿することによってビデオストリームの所定のチャンクを再構成する（ブロック７１０）。受信機が所定のチャンクの再送信を要求する場合、この要求を送信して所定のチャンクの受信を待機するまでのレイテンシによって、その時間内に新たなフレームが表示される可能性が高いことから、特定のチャンクが使用できなくなる場合がある。次に、受信機は、再構成された所定のチャンクを含むビデオフレームをディスプレイに送る（ブロック７１５）。ブロック７１５の後に、方法７００は終了する。動きベクトルパラメータを使用して所定のチャンクを再構成することによって、受信機は、レイテンシ要件を満たしながら、ビデオフレームの所定のチャンクの再構成されたバージョンを表示することができる。
【００４０】
図８を参照すると、ビデオフレームの低周波数のサブストリーム成分の動きベクトルパラメータをビームフォーミング又はＡＣＫトランザクションに埋め込む方法８００の一実施形態が示されている。送信機は、周波数に基づいてビデオフレームを複数の成分に分割する（ブロック８０５）。次に、送信機は、現在のビデオフレームの低周波数成分を、前の１つ以上のビデオフレームの低周波数成分と比較することに基づいて、低周波数成分から動きベクトルパラメータを生成する（ブロック８１０）。次いで、動きベクトルパラメータのデータ量が閾値を下回る場合（条件ブロック８１５：Ｙｅｓ）、送信機は、ビームフォーミング又は肯定応答（ＡＣＫ）トランザクションに動きベクトルパラメータを埋め込む（ブロック８２０）。動きベクトルパラメータのデータ量が閾値以上の場合（条件ブロック８１５：Ｎｏ）、送信機は、動きベクトルパラメータを別のトランザクションに送信する（ブロック８２５）。ブロック８２０，８２５の後に、方法８００は終了する。方法８００は、ビデオシーケンスのフレーム毎に繰り返すことができることに留意されたい。
【００４１】
図９を参照すると、ビデオフレームのブロックの高周波数成分を隣接するブロックから再構成する方法９００の一実施形態が示されている。受信機は、ビデオフレームの所定のブロックの低周波数成分のみを、所定のブロックの他の周波数成分を受信することなく受信する（ブロック９０５）。受信機は、ビデオフレームの隣接するブロックの高周波数成分から外挿することによって、所定のブロックの失われた高周波数成分を再構成する（ブロック９１０）。ブロック９１０の後に、方法９００は終了する。
【００４２】
図１０を参照すると、ビデオストリームを送信するためのＭＣＳレベルを選択する方法１０００の一実施形態が示されている。ビデオエンコーダは、ビデオストリームを、少なくとも低周波数のサブストリーム成分を含む複数のサブストリーム成分に分割する（ブロック１００５）。ビデオエンコーダは、低周波数のサブストリーム成分のみから動きベクトルパラメータを生成する（ブロック１０１０）。送信機は、第１ＭＣＳレベルを使用して、低周波数のサブストリーム成分の動きベクトルパラメータを送信する（ブロック１０１５）。一実施形態では、第１ＭＣＳレベルは、ＭＣＳレベル０である。送信機は、低くロバストなＭＣＳレベルを用いて動きベクトルを送信することによって、低周波数のサブストリーム成分の動きベクトルパラメータが受信機によって受信される尤度を増加させる。また、送信機は、第２ＭＣＳレベルを使用して低周波数のサブストリーム成分を送信し、第１ＭＣＳレベルは、第２ＭＣＳレベルよりも低い（ブロック１０２０）。ブロック１０２０の後に、方法１０００は終了する。また、送信機は、所望のレベルのロバスト性に基づいてサブストリーム成分を適切なＭＣＳレベルにマッピングするために、任意の適切なスキームを用いて、異なるＭＣＳレベルで他のサブストリーム成分を送信することができることに留意されたい。
【００４３】
様々な実施形態では、本明細書で説明した方法及び／又はメカニズムを実施するために、ソフトウェアアプリケーションのプログラム命令が使用される。例えば、汎用プロセッサ又は専用プロセッサによって実行可能なプログラム命令が考えられる。様々な実施形態では、このようなプログラム命令は、高水準プログラミング言語で表すことができる。他の実施形態では、プログラム命令は、高水準プログラミング言語からバイナリ、中間表現又は他の形式にコンパイルすることができる。或いは、ハードウェアの動作や設計を記述するプログラム命令が書き込まれてもよい。このようなプログラム命令は、例えばＣ等の高水準プログラミング言語によって表すことができる。或いは、例えばＶｅｒｉｌｏｇ等のハードウェア設計言語（ＨＤＬ）を使用することができる。様々な実施形態では、プログラム命令は、様々な非一時的なコンピュータ可読記憶媒体の何れかに記憶される。記憶媒体は、使用中にコンピューティングシステムによってアクセス可能であり、プログラム実行のためにコンピューティングシステムにプログラム命令を提供する。一般的に、このようなコンピューティングシステムは、少なくとも１つのメモリと、プログラム命令を実行するように構成された１つ以上のプロセッサと、を含む。
【００４４】
上述した実施形態は、実装の単なる非限定的な例に過ぎないことを強調しておきたい。上記の開示が十分に理解されると、当業者には多くの変形及び修正が明らかになるであろう。以下の特許請求の範囲は、このような変形及び修正の全てを包含すると解釈されることが意図されている。
【図１】
2021508962.tif 000003
【図２】
2021508962.tif 000004
【図３】
2021508962.tif 000005
【図４】
2021508962.tif 000006
【図５】
2021508962.tif 000007
【図６】
2021508962.tif 000008
【図７】
2021508962.tif 000009
【図８】
2021508962.tif 000010
【図９】
2021508962.tif 000011
【図１０】
2021508962.tif 000012
【国際調査報告】
2021508962.tif 000013
2021508962.tif 000014