(57)【要約】  ビデオを符号化する方法及び対応する装置が開示される。ピクチャの少なくとも１つの現在ブロックについて、前記現在ブロックの少なくとも１つの動きベクトル予測子は、ピクチャが表される第１のフォーマットと、ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて調整され、現在ブロックは、調整された動きベクトル予測子を使用して符号化される。ビデオを復号する対応する方法及び装置も開示される。
2019534616.tif 000002
【特許請求の範囲】
【請求項１】
ビデオを符号化する方法であって、ピクチャの少なくとも１つの現在ブロックについて、
符号化に適する第１のフォーマットで表された前記ピクチャにアクセスすることと、
前記第１のフォーマットと、前記ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、前記現在ブロックの少なくとも１つの動きペクトル予測子を調整すること（１６００）と、
前記調整された動きベクトル予測子を使用して前記現在ブロックを符号化すること（１６０１）と
を含む、方法。
【請求項２】
ビデオを復号する方法であって、ピクチャの少なくとも１つの現在ブロックについて、
前記ピクチャがデコーダ出力として表される第１のフォーマットと、前記ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、前記現在ブロックの少なくとも１つの動きベクトル予測子を調整すること（１６０２）と、
前記調整された動きベクトル予測子を使用して前記現在ブロックを復号すること（１６０３）と
を含む、方法。
【請求項３】
ビデオを復号する装置であって、ピクチャの少なくとも１つの現在ブロックについて、
符号化に適する第１のフォーマットで表された前記ピクチャにアクセスする手段と、
前記第１のフォーマットと、前記ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、前記現在ブロックの少なくとも１つの動きペクトル予測子を調整する手段と、
前記調整された動きベクトル予測子を使用して前記現在ブロックを符号化する手段と
を含む、装置。
【請求項４】
ビデオを復号する装置であって、ピクチャの少なくとも１つの現在ブロックについて、
前記ピクチャがデコーダ出力として表される第１のフォーマットと、前記ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、前記現在ブロックの少なくとも１つの動きベクトル予測子を調整する手段と、
前記調整された動きベクトル予測子を使用して前記現在ブロックを復号する手段と
を含む、装置。
【請求項５】
前記第１のフォーマットと前記第２のフォーマットとの前記関係は、前記第１のフォーマットの複数のロケーションの動きベクトルと、前記第２のフォーマットでの複数の対応するロケーションでの動きベクトルとの対応性を含むルックアップテーブルに従って特定される、請求項１若しくは２に記載の方法又は請求項３若しくは４に記載の装置。
【請求項６】
前記ピクチャは、前記ビデオを示す３Ｄサーフェスの投影を表し、前記第１のフォーマットと前記第２のフォーマットとの前記関係は、前記ピクチャへの前記全方位ビデオの少なくとも前記投影を使用する、請求項１、２、若しくは５のいずれか一項に記載の方法又は請求項３〜５のいずれか一項に記載の装置。
【請求項７】
前記現在ブロックの少なくとも１つの動きベクトル予測子を調整することは、
投影空間において、前記動きベクトル予測子を使用して前記現在ブロックの少なくとも１つの点の変位を計算し、前記投影空間における変位点を得ることと、
前記ピクチャに前記変位点を投影することと、
前記投影された変位点の前記ピクチャにおけるロケーションと前記現在ブロックの前記点の前記ピクチャにおけるロケーションとの差として、前記調整された動きベクトル予測子を計算することと
を含む、請求項１、２、５、若しくは６のいずれか一項に記載の方法又は請求項３〜６のいずれか一項に記載の装置。
【請求項８】
前記動きベクトル予測子は、前記ピクチャにおけるブロックからの動きベクトルであり、前記現在のブロックの少なくとも１つの動きベクトル予測子を調整することは、
前記動きベクトル予測子を前記ピクチャのアンカー点に適用することであって、それにより、変位したアンカー点を得る、適用することと、
前記投影空間に、前記現在ブロックの前記点、前記アンカー点、及び前記変位したアンカー点を投影することと、
前記投影された、変位されたアンカー点と前記投影されたアンカー点との差として、投影された動きベクトル予測子を前記投影空間において計算し、前記投影空間において、前記投影された動きベクトル予測子を使用して実行される前記現在ブロックの少なくとも１つの点の変位を計算することと
を更に含む、請求項７に記載の方法。
【請求項９】
前記投影空間は、前記３Ｄサーフェスに接する局所平面である局所レンダリングフレームであり、又は前記投影空間は、前記ビデオを示す前記３Ｄサーフェスに対応する、請求項７若しくは８に記載の方法又は請求項７若しくは８に記載の装置。
【請求項１０】
前記現在ブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、前記調整された動きベクトル予測子を使用して前記現在ブロックを復号することは、
前記調整された動きベクトル予測子を使用して前記現在ブロックの各サブブロックの動きベクトルを計算することと、
各サブブロックに計算された前記動きベクトルを使用して、前記現在ブロックの各サブブロックを復号することと
を含む、請求項２若しくは５〜９のいずれか一項に記載の方法又は請求項４〜９のいずれか一項に記載の装置。
【請求項１１】
前記現在ブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、前記現在ブロックの１つの動きベクトル予測子を調整すること及び前記復号することは、前記動きベクトル予測子を使用して前記現在ブロックの各サブブロックで実行され、前記現在ブロックの各サブブロックで、調整された動きベクトル予測子を送出する、請求項２に記載の方法又は請求項４に記載の装置。
【請求項１２】
コンピュータプログラムがプロセッサにより実行されると、請求項１、２、又は５〜１１のいずれか一項に記載の方法を実行するソフトウェアコード命令を含むコンピュータプログラム製品。
【請求項１３】
コンピュータにより実行されると、前記コンピュータに請求項１、２、又は５〜１１のいずれか一項に記載の方法を実行させる命令を含むコンピュータ可読媒体。
【請求項１４】
符号化ビデオを表すビットストリームであって、
前記ビデオのピクチャの少なくとも１つのブロックを表す符号化データであって、前記ピクチャは、符号化に適する第１のフォーマットで表される、符号化データと、
前記少なくとも１つのブロックの少なくとも１つの動きベクトル予測子を調整する、前記第１のフォーマットにおけるピクセルと、前記ピクチャがレンダリングされる第２のフォーマットにおけるピクセルとの対応性を含むルックアプテーブルを表す符号化データと
を含む、ビットストリーム。
【発明の詳細な説明】
【技術分野】
【０００１】
１．技術分野
ピクチャを符号化して、上記ピクチャが１つ又は複数のピクチャに投射された全方位ビデオを表すビットストリームにする方法及び装置が開示される。対応する復号方法及び装置が更に開示される。
【背景技術】
【０００２】
２．背景
近年、市販の広視野コンテンツ（最高で３６０°）が成長した。そのようなコンテンツは潜在的に、ヘッドマウントディスプレイ（ＨＭＤ）等の没入型表示デバイス、スマートグラス、ＰＣ画面、タブレット、スマートフォン等でコンテンツを見ているユーザによって完全に見えるものではない。それは、所与の瞬間に、ユーザがコンテンツの一部のみを見ていることを意味する。しかしながら、ユーザは通常、頭部の動き、マウスの動き、タッチスクリーン、音声等の様々な手段によってコンテンツ内をナビゲートすることができる。通常、このコンテンツを符号化及び復号することが望ましい。
【発明の概要】
【０００３】
３．概要
本原理の一態様によれば、ビデオを符号化する方法が開示される。そのような方法は、ピクチャの少なくとも１つの現在ブロックについて、
ピクチャが表されている第１のフォーマットと、ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整することと、
上記調整された動きベクトル予測子を使用して上記現在ブロックを符号化することと
を含む。
【０００４】
本開示では、ピクチャのブロックの符号化に使用される動きベクトル予測子の調整のために、符号化されるピクチャとピクチャがレンダリングされるフォーマットとの関係を考慮することができる。したがって、動きベクトル予測子は、例えば、動き補償モードを使用して現在ブロックを符号化することにより適する。したがって、圧縮効率が改善する。
【０００５】
本開示の別の態様によれば、ビデオを復号する方法が開示される。そのような方法は、ピクチャの少なくとも１つの現在ブロックについて、
ピクチャが表されている第１のフォーマットと、ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整することと、
上記調整された動きベクトル予測子を使用して上記現在ブロックを復号することと
を含む。
【０００６】
本開示の一実施形態によれば、上記第１のフォーマットと上記第２のフォーマットとの関係は、上記ピクチャが表されている上記第１のフォーマットにおける複数のロケーションでの動きベクトルと、ピクチャがレンダリングされる上記第２のフォーマットにおける複数の対応するロケーションでの動きベクトルとの対応性を含むルックアップテーブルに従って特定される。したがって、計算の複雑性が低減する。
【０００７】
本開示の別の実施形態によれば、ビデオは全方位ビデオであり、ピクチャは、上記ビデオの２Ｄ投影を表す。
【０００８】
本開示の別の実施形態によれば、上記第１のフォーマットと上記第２のフォーマットとの関係は、少なくとも、上記ピクチャへの上記全方位ビデオの上記投影を使用する。この実施形態では、現在ブロックの動きベクトル予測子の決定に、全方位ビデオの画像を表す３Ｄサーフェスを２Ｄピクチャに投影するのに使用される投影関数によって導入される歪みを考慮することができる。
【０００９】
本開示の別の実施形態によれば、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整することは、
上記動きベクトル予測子を使用して上記現在ブロックの少なくとも１つの点の変位を投影空間において計算し、投影空間における変位点を得ることと、
ピクチャに上記変位点を投影することと、
上記投影された変位点のピクチャにおけるロケーションと上記現在ブロックの上記点のピクチャにおけるロケーションとの差として、上記調整された動きベクトル予測子を計算することと
を含む。
【００１０】
この実施形態によれば、投影空間における符号化のために現在ブロックの点に適用される動きベクトル予測子。次に、変位点はピクチャに投影されて、現在ブロックに適する動きベクトル予測子を計算する。この実施形態によれば、ピクチャへの３Ｄサーフェスの投影により導入される歪みは、現在ブロックの符号化に使用される動きベクトル予測子に適用される。したがって、その結果生成される動きベクトル予測子は、現在ブロックの見掛けの動きにより近い。
【００１１】
本開示の別の実施形態によれば、動きベクトル予測子は、上記ピクチャにおけるブロックからの動きベクトルであり、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整することは、
上記動きベクトル予測子を上記ピクチャのアンカー点に適用して、変位したアンカー点を得ることと、
上記投影空間に上記現在ブロックの上記点、上記アンカー点、及び上記変位したアンカー点を投影することと、
上記投影され、変位したアンカー点と上記投影されたアンカー点との差として、上記投影空間に投影された動きベクトル予測子を計算することと、
投影空間において、上記投影された動きベクトル予測子を使用して実行される上記現在ブロックの少なくとも１つの点の変位を計算することと
を更に含む。
【００１２】
そのような実施形態では、投影関数により動き場に導入される歪みを考慮することができる。そのような実施形態では、動きベクトル成分はピクチャにおいて表され、したがって、動き補償予測を使用した動きベクトル及び現在ブロック情報の予測は、全ての予測が符号化空間、すなわち、２Ｄ空間において実行されるため、より容易である。
【００１３】
本開示の別の実施形態によれば、アンカー点は、
上記現在ブロックの近傍ブロックの中心点である第１の点、
上記近傍ブロックと上記現在ブロックとが共有する上記現在ブロックのエッジ上の上記中心点の投影によって決定される第２の点、
上記現在ブロックの中心点と水平軸又は垂直軸に沿って位置合わせされる、上記第１の点の並進によって決定される第３の点、
上記共有されるエッジ上の上記第３の点の投影によって決定される第４の点、
現在ブロックの上記中心に最も近い点である近傍ブロックの点として決定される第５の点
を含むリストに属する。
【００１４】
２Ｄ画像は３Ｄサーフェスの投影であるため、動きは、２Ｄ画像のブロックにおいて非均一である。したがって、調整された動きベクトル予測子を決定するために動きベクトル予測子が適用される、予測子ブロックに関連する点、いわゆるアンカー点の選択は、結果として生成される調整された動きベクトル予測子に影響する。動きベクトル予測子が関連するブロックに関するアンカー点の位置の選択は、ビットストリームにおいて通知してもよく、又はエンコーダ及びデコーダの両方で同じ方法で特定してもよい。そのような選択は、投影関数のタイプ及び／又は動きベクトル予測子が関連するブロックのピクチャにおけるロケーションに依存し得、その理由は、ピクチャにおける歪みはピクチャ内部で変化し得るためである。
【００１５】
本開示の別の実施形態によれば、投影空間は、３Ｄサーフェスに接する局所平面である局所レンダリングフレームである。
【００１６】
本開示の別の実施形態によれば、投影空間は、上記全方位ビデオを表す３Ｄサーフェスに対応する。この実施形態では、局所レンダリングフレームの投影を３Ｄサーフェスでの投影に近似することにより、調整された動きベクトル予測子の導出プロセスを簡易化することができる。本開示の別の実施形態によれば、動きベクトル予測子は、成分が３Ｄサーフェスで表現される動きベクトルである。
【００１７】
この実施形態によれば、調整された動きベクトル予測子導出プロセスは、変位の計算がピクチャよりも３Ｄ空間において複雑でないため、簡易化される。しかしながら、この実施形態によれば、動き補償予測プロセスは、２Ｄ空間において実行されるべきであるため、より複雑である。
【００１８】
本開示の別の実施形態によれば、現在のブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、上記調整された動きベクトル予測子を使用して上記現在ブロックを符号化することは、
上記調整された動きベクトル予測子を使用して現在ブロックの各サブブロックの動きベクトルを計算することと、
各サブブロックに計算された上記動きベクトルを使用して、上記現在ブロックの各サブブロックを符号化することと
を含む。
【００１９】
この実施形態によれば、投影関数により動き場に導入される歪みは、現在ブロックの各サブブロックで、調整された動きベクトル予測子から動きベクトルを導出することによって考慮される。したがって、現在ブロックのデータの予測に使用される動きベクトルは、例えば、ブロックの中心においてブロック全体に適用される１つの動きベクトルよりも適するため、現在ブロックの予測は改善する。
【００２０】
本開示の別の実施形態によれば、現在ブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、上記調整された動きベクトル予測子を使用して上記現在ブロックを復号することは、
上記調整された動きベクトル予測子を使用して現在ブロックの各サブブロックの動きベクトルを計算することと、
各サブブロックに計算された上記動きベクトルを使用して上記現在ブロックの各サブブロックを復号することと
を含む。
【００２１】
本開示の別の実施形態によれば、現在ブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、上記現在ブロックの１つの動きベクトル予測子を調整すること及び上記符号化することは、上記動きベクトル予測子を使用して上記現在ブロックの各サブブロックで実行され、上記現在ブロックの各サブブロックで、調整された動きベクトル予測子を得る。
【００２２】
この実施形態によれば、投影関数によって動き場に導入される歪みは、本原理に従って調子された動きベクトル予測子を現在ブロックの各サブブロックについて導出することにより、考慮される。したがって、現在ブロックのデータの予測に使用される動きベクトルは、例えば、ブロックの中心においてブロック全体に適用される１つの動きベクトルよりも適するため、現在ブロックの予測は改善する。
【００２３】
本開示の別の実施形態によれば、現在ブロックは、１つ又は複数のピクセルを含むサブブロックに分割され、上記現在ブロックの１つの動きベクトル予測子を調整すること及び上記復号することは、上記動きベクトル予測子を使用して上記現在ブロックの各サブブロックで実行され、上記現在ブロックの各サブブロックで、調整された動きベクトル予測子を送出する。
【００２４】
本開示の別の実施形態によれば、上記動きベクトル予測子が時間的動きベクトル予測である場合又は上記動きベクトル予測子が、上記現在ブロックが使用する基準フレームと異なる基準フレームを使用する場合、開示される符号化及び／又は復号方法は、少なくとも上記投影関数を使用して上記調整された動きベクトル予測子のスケーリングを更に含む。
【００２５】
本開示の別の実施形態によれば、開示される符号化及び／又は復号方法は、
少なくとも上記動きベクトル予測子を含む動きベクトル予測子リストを構築することであって、
上記動きベクトル予測子を調整することは、リスト内の各動きベクトル予測子で実行され、調整された動きベクトル予測子のリストを送出する、構築することと、
調整された動きベクトル予測子の上記リストを枝刈りすることであって、それにより、同一の調整された動きベクトル予測子を除去する、枝刈りすることと
を更に含む。
【００２６】
この実施形態によれば、上記動きベクトル予測子を枝刈りすることは、動きベクトル予測子の修正後、実行されて、動きベクトル予測子リスト内の適する動きベクトル予測子から恩恵を受ける。
【００２７】
本原理の別の態様によれば、ビデオを符号化する装置が開示される。そのような装置は、ピクチャの少なくとも１つの現在ブロックについて、
ピクチャが表されている第１のフォーマットと、ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整する手段と、
上記調整された動きベクトル予測子を使用して上記現在ブロックを符号化する手段とを含む。
【００２８】
本原理の別の態様によれば、ビデオを復号する装置が開示される。そのような装置は、ピクチャの少なくとも１つの現在ブロックについて、
ピクチャが表されている第１のフォーマットと、ピクチャがレンダリングされる第２のフォーマットとの関係に基づいて、上記現在ブロックの少なくとも１つの動きベクトル予測子を調整する手段と、
上記調整された動きベクトル予測子を使用して上記現在ブロックを復号する手段とを含む。
【００２９】
符号化されたビデオを表すビットストリームも開示される。そのようなビットストリームは、上記少なくとも１つのブロックの少なくとも１つの動きベクトル予測子を調整するために、上記ビデオのピクチャの少なくとも１つのブロックを表す符号化データと、上記ピクチャが表されている第１のフォーマットにおけるピクセルとピクチャがレンダリングされる第２のフォーマットにおけるピクセルとの対応性を含むルックアップテーブルを表す符号化データとを含む。
【００３０】
本開示の別の実施形態によれば、ビットストリームは非一時的プロセッサ可読媒体に記憶される。
【００３１】
本実施形態は、上述した方法に従って生成されたビットストリームを送信する装置も提供する。
【００３２】
ビデオを表すビットストリームを復号する装置を含む没入型レンダリングデバイスも開示される。
【００３３】
ビットストリームに符号化された没入型ビデオを没入的にレンダリングするシステムも開示される。そのようなシステムは、少なくとも、
上記ビットストリームをデータネットワークから受信するネットワークインターフェースと、
本明細書において開示される実施形態のいずれか１つによる、上記ビットストリームを復号する装置と、
復号された没入型ビデオをレンダリングする没入型レンダリングデバイスと
を含む。
【００３４】
一実施態様によれば、本明細書において上述したようにビデオを符号化する方法又はビデオを表すビットストリームを復号する方法の様々なステップは、ビデオを符号化する装置又はビデオを表すビットストリームを復号する装置のデータプロセッサによる実行が意図されるソフトウェア命令を含む１つ又は複数のソフトウェアプログラム又はソフトウェアモジュールプログラムによって実施され、これらのソフトウェア命令は、本原理による方法の様々なステップの実行を命令するように設計される。
【００３５】
コンピュータ又はデータプロセッサによって実行することが可能なコンピュータプログラムも開示され、このプログラムは、本明細書において上述したビデオを符号化する方法のステップ又はビデオを表すビットストリームを復号する方法のステップの実行を命令する命令を含む。
【００３６】
このプログラムは、プログラミング言語が何であれ、任意のプログラミング言語を使用することができ、ソースコード、オブジェクトコード、又は部分的にコンパイルされた形態等のソースコードとオブジェクトコードとの間の中間コードの形態、又は何であれ、任意の他の所望の形態であることができる。
【００３７】
情報キャリアは、何であれ、プログラムを記憶可能な任意のエンティティ又は装置であることができる。例えば、キャリアは、ＲＯＭ、例えば、ＣＤ  ＲＯＭ若しくはマイクロ電子回路ＲＯＭ、又はここでも磁気記録手段、例えば、フロッピーディスク若しくはハードディスクドライブ等の記憶手段を含むことができる。
【００３８】
ここでも、情報キャリアは、電気ケーブル若しくは光学ケーブルを介して、無線により、又は他の手段により搬送することができる電気信号又は光学信号等の伝送可能キャリアであることができる。本原理によるプログラムは特に、インターネット型ネットワークにアップロードすることができる。
【００３９】
代替として、情報キャリアは、プログラムが組み込まれる集積回路であることができ、回路は、問題となっている方法を実行するように調整され、又は問題となっている方法の実行に使用される。
【００４０】
一実施形態によれば、本方法／装置は、ソフトウェア構成要素及び／又はハードウェア構成要素によって実施し得る。これに関して、「モジュール」又は「ユニット」なる用語は、本文書では、ソフトウェア構成要素、ハードウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組に等しく対応することができる。
【００４１】
ソフトウェア構成要素は、１つ若しくは複数のコンピュータプログラム、プログラムの１つ若しくは複数のサブプログラム、又はより一般的に、関わるモジュールについて本明細書において後述する機能若しくは１組の機能を実施可能なプログラム若しくはソフトウェアの任意の要素に対応する。そのようなソフトウェア構成要素は、物理的エンティティ（端末、サーバ等）のデータプロセッサによって実行され、この物理的エンティティのハードウェアリソース（メモリ、記録媒体、通信バス、入／出力電子基板、ユーザインターフェース等）にアクセスすることが可能である。
【００４２】
同じように、ハードウェア構成要素は、関わるモジュールについて本明細書において後述する機能又は１組の機能を実施可能なハードウェアユニットの任意の要素に対応する。ハードウェア構成要素は、プログラマブルハードウェア構成要素又はソフトウェア実行用の集積プロセッサ、例えば、集積回路、スマートカード、メモリカード、ファームウェア実行用の電子基板等を有する構成要素であることができる。
【図面の簡単な説明】
【００４３】
４．図面の簡単な説明
【図１】本原理の一実施形態による、全方位ビデオを符号化及び復号する例示的なシステムを示す。
【図２Ａ】球面Ｓから矩形ピクチャＦへの投影の一例を示す。
【図２Ｂ】ピクチャＦのＸＹ平面基準系を示す。
【図２Ｃ】球体Ｓ上の角度基準系を示す。
【図３Ａ】立方体表面Ｓから６つのピクチャへの投影の一例を示す。
【図３Ｂ】立方体基準系を示す。
【図３Ｃ】投影された立方体の再配置された矩形ピクチャを示す。
【図３Ｄ】２Ｄピクチャに投影された立方体の６つの面のレイアウトを示す。
【図４Ａ】全方位ビデオを表す３Ｄサーフェスの投影ピクチャＦにおける移動物体を示す。
【図４Ｂ】投影ピクチャのブロック分割における対応する動きベクトルを示す。
【図５Ａ】本開示の一実施形態による、全方位ビデオをビットストリームに符号化する例示的な方法の流れ図を示す。
【図５Ｂ】本開示の一実施形態による、全方位ビデオをビットストリームに復号する例示的な方法の流れ図を示す。
【図６】符号化する２ＤピクチャのブロックＢＬＫ及びブロックＢＬＫの符号化に利用可能な動きベクトル予測子を示す。
【図７】本開示の一実施形態による、動きベクトル予測子を適応させる例示的な方法の流れ図を示す。
【図８Ａ】図７に示されている動きベクトル予測子を適応させる例示的な方法において使用される、フレーム座標系からレンダリングフレームへの投影を示す。
【図８Ｂ】図７に示されている動きベクトル予測子を適応させる例示的な方法において使用される、レンダリングフレームからフレーム座標系への投影を示す。
【図９Ａ】球体Ｓにおける点の変位及びレンダリングフレームＧにおける対応する変位を示す。
【図９Ｂ】球体Ｓにおける動きの近似を示す。
【図１０】図７を用いて開示された実施形態により動きベクトル予測子の適応での使用が可能なアンカー点を示す。
【図１１】本開示の別の実施形態による、動きベクトル予測子を適応させる例示的な方法の流れ図を示す。
【図１２Ａ】本開示の一実施形態による、適応された動きベクトル予測子が導出されるサブブロックに細分された現在ブロックＢＬＫを示す。
【図１２Ｂ】本開示の別の実施形態による、適応された動きベクトル予測子が導出されるサブブロックに細分された現在ブロックＢＬＫを示す。
【図１３Ａ】現在ブロックＢＬＫの適応された動きベクトル予測子の時間的リスケーリングを示す。
【図１３Ｂ】現在ブロックＢＬＫの適応された動きベクトル予測子の基準フレーム適応リスケーリングを示す。
【図１４】本開示の別の実施形態による、動きベクトル予測子を適応させる例示的な方法の流れ図を示す。
【図１５】アフィン動きベクトルツールの場合の動きベクトル予測子を示す。
【図１６】本開示の一実施形態による、全方位ビデオをビットストリームに符号化する例示的なエンコーダのブロック図を示す。
【図１７】本開示の一実施形態による、全方位ビデオのピクチャを表す２Ｄピクチャの現在ブロックをビットストリームから復号する例示的なデコーダのブロック図を示す。
【図１８】一実施形態による、全方位ビデオをビットストリームに符号化する例示的な装置を示す。
【図１９】一実施形態による、全方位ビデオを表すビットストリームを復号する例示的な装置を示す。
【図２０】本原理の例示的な実施形態の様々な態様を実施し得る例示的なシステムのブロック図を示す。
【図２１】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２２】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２３】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２４】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２５】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２６】本原理の特定の実施形態によるシステムの第１の実施形態を表す。
【図２７】本原理によるシステムの第１の実施形態を表す。
【図２８】本原理によるシステムの第１の実施形態を表す。
【図２９】本原理による没入型ビデオレンダリングデバイスの第１の実施形態を表す。
【図３０】本原理による没入型ビデオレンダリングデバイスの第１の実施形態を表す。
【図３１】本原理による没入型ビデオレンダリングデバイスの第１の実施形態を表す。
【発明を実施するための形態】
【００４４】
５．詳細な説明
図２Ａは、正距円筒図法を使用した、球体として表されるサーフェスＳから１つの矩形ピクチャＦへの投影の一例を示す。
【００４５】
図３Ａは、ここでは立方体として表されるサーフェスＳから６つのピクチャ又は面への投影の別の例を示す。立方体の面は、図３Ｂに示される基準系を用いる場合、図３Ｄに示されるレイアウトを使用して、図３Ｃに示されるような１つのピクチャに再配置することができる。
【００４６】
２Ｄピクチャへの３Ｄサーフェスの投影は、幾何学的歪み等のいくらかの歪みを導入し得る。例えば、直線はもはや直線ではなく、直交座標系はもはや直交しない。全方位ビデオの連続ピクチャ間の動き表現の場合、３Ｄサーフェスにおけるブロック内部の動きは、同質であることができる。しかしながら、３Ｄサーフェスのブロックが２Ｄピクチャに投影される場合、そのような断定はもはや該当しない。
【００４７】
図４Ａは、物体１５０が軌道に沿って移動する全方位ビデオを表す３Ｄサーフェスの投影ピクチャＦを示す。全方位ビデオによって表されるシーンでは、物体１５０は直線に沿って移動する。その結果、投影ピクチャＦにおいて生成される見掛けの動きは、点線として表される。ピクチャＦの任意のブロック分割に生成された動きベクトルを図４Ｂに示す。気付くことができるように、レンダリングされたピクチャにおいて動きが完全に直線である場合であっても、符号化するピクチャＦは非均一な動きベクトルを示す。移動物体１５０の情報を運ぶブロックＡ、Ｂ、Ｃ、及びＤの場合、動きベクトルは全て異なる。
【００４８】
従来のビデオ符号化では、ブロック動きベクトルは、近傍ブロックからの動きベクトル予測を使用して予測的に符号化される。例えば、ブロックＤの動きベクトルは、ブロックＡ、Ｂ、及びＣの動きベクトルから予測される。
【００４９】
２Ｄピクチャ上の３Ｄサーフェスの投影後、ブロックＤの動きベクトルの予測に利用可能な動きベクトル予測子は、そのような予測は符号化に大きな予測残差を生じさせるため、適さないことが分かる。
【００５０】
したがって、全方位ビデオを符号化及び復号する新しい方法及び装置が必要とされている。
【００５１】
広視野コンテンツは、特に、三次元コンピュータグラフィックイメージシーン（３Ｄ  ＣＧＩシーン）、ポイントクラウド、又は没入型ビデオであり得る。例えば、仮想現実（ＶＲ）、３６０、パノラマ、４π、ステラジアン、没入型、全方位、広視野等の多くの用語が、そのような没入型ビデオの設計に使用され得る。
【００５２】
没入型ビデオは通常、「通常の」ビデオのようなピクセル（すなわち、色情報の要素）の二次元アレイである矩形フレームに符号化されたビデオを指す。多くの実施態様では、以下のプロセスを実行し得る。レンダリングするために、フレームはまず、マッピング面（例えば、球体、立方体、ピラミッド）とも呼ばれる凸体の内面にマッピングされ、次に、この凸体の一部は仮想カメラによって捕捉される。仮想カメラによって捕捉された画像は、没入型表示デバイスの画面にレンダリングされる。立体ビデオは、１つ又は２つの矩形フレームに符号化され、２つのマッピング面に投影され、２つのマッピング面は、デバイスの特性に従って２つの仮想カメラによって捕捉されるように結合される。
【００５３】
ピクセルは、フレームにおいてマッピング関数に従って符号化し得る。マッピング関数は、マッピング面に依存し得る。同じマッピング面で、幾つかのマッピング関数が可能である。例えば、立方体の面は、フレーム面内の異なるレイアウトに従って構造化し得る。球体は、例えば、正距円筒図法投影又は心射方位図法投影に従ってマッピングし得る。選択された投影関数から生成されたピクセルの編成は、線の連続性、直交局所フレーム、ピクセル密度を変更又は破り、時間及び空間の周期性を導入する。これらは、ビデオの符号化及び復号に使用される典型的な特徴である。既存の符号化及び復号方法は通常、没入型ビデオの特異性を考慮しない。実際に、没入型ビデオは３６０°ビデオであることができるため、例えば、パンニングは、シーンの内容が変わらない間、符号化に大量のデータが必要な動き及び不連続性を導入する。ビデオフレームを符号化及び復号する間、没入型ビデオの特異性を考慮に入れることは、符号化又は復号方法に価値ある利点をもたらす。
【００５４】
図１は、一実施形態例による符号化及び復号システムの全体像を示す。図１のシステムは機能システムである。前処理モジュール１１０は、符号化デバイス１２０による符号化に向けてコンテンツを準備し得る。前処理モジュール１１０は、複数画像の取得及び共通空間（通常、方向を符号化する場合、３Ｄ球体）における、取得された複数の画像の統合、及び例えば、限定ではなく、正距円筒図法マッピング又は立方体マッピングを使用しての２Ｄフレームへの３Ｄ球体のマッピングを実行し得る。前処理モジュール１１０はまた、入力として特定のフォーマット（例えば、正距円筒図法）の全方位ビデオを受け入れることもでき、ビデオを前処理して、符号化により適するフォーマットにマッピングを変更する。取得されたビデオデータ表現に応じて、前処理モジュール１１０はマッピング空間変更を実行し得る。
【００５５】
符号化デバイス１２０及び符号化方法については、本明細書の他の図に関連して説明する。符号化後、例えば、データは、没入型ビデオデータ又は３Ｄ  ＣＧＩ符号化データを符号化し得、ネットワークインターフェース１３０に送信され、ネットワークインターフェース１３０は通常、例えば、ゲートウェイに存在する任意のネットワークフェースにおいて実施することができる。次に、データは、インターネット等の通信ネットワークを通して送信されるが、任意の他のネットワークも予見可能である。次に、データはネットワークインターフェース１４０を介して受信される。ネットワークインターフェース１４０は、ゲートウェイ、テレビジョン、セットトップボックス、ヘッドマウントディスプレイデバイス、没入型（プロジェクション）ウォール、又は任意の没入型ビデオレンダリングデバイスで実施することができる。
【００５６】
受信後、データは復号デバイス１５０に送信される。復号関数は、以下の図２１〜図３１において説明される処理関数の１つである。次に、復号されたデータはプレーヤ１６０によって処理される。プレーヤ１６０は、レンダリングデバイス１７０に向けてデータを準備し、センサ又はユーザ入力データから外部データを受信し得る。より詳細には、プレーヤ１６０は、レンダリングデバイス１７０によって表示されることになるビデオコンテンツの部分を準備する。復号デバイス１５０及びプレーヤ１６０は、１つのデバイス（例えば、スマートフォン、ゲームコンソール、ＳＴＢ、タブレット、コンピュータ等）に統合し得る。他の実施形態では、プレーヤ１６０はレンダリングデバイス１７０に統合し得る。
【００５７】
幾つかのタイプのシステムが、例えば、没入型ビデオをレンダリングする際、没入型表示デバイスの復号機能、再生機能、及びレンダリング機能を実行することを考え得る。
【００５８】
拡張現実リアリティ、仮想現実、又は拡張仮想コンテンツを処理する第１のシステムを図２１〜図２５に示す。そのようなシステムは、処理機能と、例えば、ヘッドマウントディスプレイ（ＨＭＤ）、タブレット、又はスマートフォンであり得る没入型ビデオレンダリングデバイスとを含み、センサを含み得る。没入型ビデオレンダリングデバイスは、表示デバイスと処理機能との間に追加のインターフェースモジュールを含むこともできる。処理機能は、１つ又は幾つかのデバイスによって実行することができる。それらのデバイスは、没入型ビデオレンダリングデバイスに統合してもよく、又は１つ若しくは幾つかの処理デバイスに統合してもよい。処理デバイスは、１つ又は幾つかのプロセッサと、無線又は有線通信インターフェース等の、没入型ビデオレンダリングデバイスとの通信インターフェースとを含む。
【００５９】
処理デバイスは、インターネット等の広域アクセスネットワークとの第２の通信インターフェースを含むこともでき、直接又はホームゲートウェイ若しくはローカルゲートウェイ等のネットワークデバイスを通してクラウドに配置されたコンテンツにアクセスすることができる。処理デバイスは、Ethernet型のローカルアクセスネットワークインターフェース等の第３のインターフェースを通してローカル記憶装置にアクセスすることもできる。一実施形態では、処理デバイスは、１つ又は幾つかの処理ユニットを有するコンピュータシステムであり得る。別の実施形態では、処理デバイスは、有線若しくは無線リンクを通して没入型ビデオレンダリングデバイスに接続することができるスマートフォン又は没入型ビデオレンダリングデバイス内の筐体に挿入することができ、コネクタを通して又は無線でも同様に没入型ビデオレンダリングデバイスと通信するスマートフォンであり得る。処理デバイスの通信インターフェースは、有線インターフェース（例えば、バスインターフェース、広域ネットワークインターフェース、ローカルエリアネットワークインターフェース）又は無線インターフェース（ＩＥＥＥ８０２．１１インターフェース若しくはBluetooth（登録商標）インターフェース）である。
【００６０】
処理機能が没入型ビデオレンダリングデバイスによって実行される場合、没入型ビデオレンダリングデバイスに、コンテンツを直接、又はゲートウェイを通して受信及び／又は送信するために、ネットワークへのインターフェースを設けることができる。
【００６１】
別の実施形態では、システムは、没入型ビデオレンダリングデバイス及び処理デバイスと通信する補助デバイスを含む。そのような実施形態では、この補助デバイスは、処理機能の少なくとも１つを含むことができる。
【００６２】
没入型ビデオレンダリングデバイスは、１つ又は幾つかのディスプレイを含み得る。デバイスは、そのディスプレイのそれぞれの前にレンズ等の光学系を利用し得る。ディスプレイは、スマートフォン又はタブレットの場合のように、没入型表示デバイスの一部であることもできる。別の実施形態では、ディスプレイ及び光学系は、ユーザが装着することができるヘルメット、眼鏡、又はバイザーに組み込み得る。没入型ビデオレンダリングデバイスは、後述するように、幾つかのセンサを統合することもできる。没入型ビデオレンダリングデバイスは、幾つかのインターフェース又はコネクタを含むこともできる。没入型ビデオレンダリングデバイスは、センサ、処理機能、ハンドヘルド又は他の人体部位関連デバイス又はセンサと通信するために、１つ又は幾つかの無線モジュールを含み得る。
【００６３】
没入型ビデオレンダリングデバイスは、１つ又は幾つかのプロセッサによって実行され、コンテンツを復号又は処理するように構成された処理機能を含むこともできる。ここでコンテンツの処理により、表示することができるコンテンツを準備する全ての機能が理解される。これは、例えば、コンテンツの復号、表示前のコンテンツの統合、及び表示デバイスに合うようなコンテンツの変更を含み得る。
【００６４】
没入型コンテンツレンダリングデバイスの一機能は、仮想ボリュームとして構築されたコンテンツの少なくとも一部を捕捉する仮想カメラを制御することである。システムは、仮想カメラの姿勢を処理するために、ユーザの姿勢、例えば、ユーザの頭部の姿勢を完全又は部分的に追跡する姿勢追跡センサを含み得る。幾つかの位置決めセンサは、ユーザの変位を追跡し得る。システムは、例えば、照明、温度、又は音声状況を測定する、環境に関連する他のセンサを含むこともできる。そのようなセンサは、ユーザの体に関連して、例えば、発汗又は心拍数を測定することもできる。これらのセンサを通して取得された情報は、コンテンツの処理に使用し得る。システムは、ユーザ入力デバイス（例えば、マウス、キーボード、遠隔制御装置、ジョイスティック）を含むこともできる。ユーザ入力デバイスからの情報は、コンテンツの処理、ユーザインターフェースの管理、又は仮想カメラの姿勢の制御に使用し得る。センサ及びユーザ入力デバイスは、有線又は無線通信インターフェースを通して処理デバイス及び／又は没入型レンダリングデバイスと通信する。
【００６５】
図２１〜図２５を使用して、拡張現実、仮想現実、拡張仮想、又は拡張現実から仮想現実までの任意のコンテンツを表示するこの第１のタイプのシステムの幾つかの実施形態について説明する。
【００６６】
図２１は、没入型ビデオを復号、処理、及びレンダリングするシステムの特定の実施形態を示す。システムは、没入型ビデオレンダリングデバイス１０、センサ２０、ユーザ入力デバイス３０、コンピュータ４０、及びゲートウェイ５０（任意選択的）を含む。
【００６７】
図２９に示された没入型ビデオレンダリングデバイス１０は、ディスプレイ１０１を含む。ディスプレイは、例えば、ＯＬＥＤ型又はＬＣＤ型である。没入型ビデオレンダリングデバイス１０は、例えば、ＨＭＤ、タブレット、又はスマートフォンである。デバイス１０は、少なくとも１つのプロセッサ１０４及び少なくとも１つの通信インターフェース１０６と接続されたタッチ面１０２（例えば、タッチパッド又は触覚スクリーン）、カメラ１０３、メモリ１０５を含み得る。少なくとも１つのプロセッサ１０４は、センサ２０から受信した信号を処理する。
【００６８】
センサからの測定値の幾つかは、デバイスの姿勢の計算及び仮想カメラの制御に使用される。姿勢推定に使用されるセンサは、例えば、ジャイロスコープ、加速度計、又はコンパスである。例えば、カメラのリグを使用するより複雑なシステムを使用することもできる。この場合、少なくとも１つのプロセッサは、画像処理を実行して、デバイス１０の姿勢を推定する。幾つかの他の測定値は、環境状況又はユーザの反応に従ってコンテンツを処理するのに使用される。環境及びユーザの観測に使用されるセンサは、例えば、マイクロホン、光センサ、又は接触センサである。例えば、ユーザの目を追跡するビデオカメラのようなより複雑なシステムを使用することもできる。この場合、少なくとも１つのプロセッサは、画像処理を実行して、予期される測定値を操作する。センサ２０及びユーザ入力デバイス３０からのデータは、コンピュータ４０に送信することもでき、コンピュータ４０は、これらのセンサの入力に従ってデータを処理する。
【００６９】
メモリ１０５は、プロセッサ１０４のパラメータ及びコードプログラム命令を含む。メモリ１０５は、センサ２０及びユーザ入力デバイス３０から受信したパラメータを含むこともできる。通信インターフェース１０６は、没入型ビデオレンダリングデバイスがコンピュータ４０と通信できるようにする。処理デバイスの通信インターフェース１０６は、有線インターフェース（例えば、バスインターフェース、広域ネットワークインターフェース、ローカルエリアネットワークインターフェース）又は無線インターフェース（ＩＥＥＥ８０２．１１インターフェース若しくはBluetooth（登録商標）インターフェース）であり得る。
【００７０】
コンピュータ４０は、データ及び任意選択的に制御コマンドを没入型ビデオレンダリングデバイス１０に送信する。コンピュータ４０は、データの処理、すなわち、没入型ビデオレンダリングデバイス１０による表示に向けてのデータの準備を担当する。処理は、専らコンピュータ４０によって行うことができ、又は処理の一部は、コンピュータ及び没入型ビデオレンダリングデバイス１０によって行うことができる。コンピュータ４０は、直接又はゲートウェイ若しくはネットワークインターフェース５０を通してインターネットに接続される。コンピュータ４０は、インターネットから没入型ビデオを表すデータを受信し、これらのデータを処理（例えば、データを復号し、恐らくは没入型ビデオレンダリングデバイス１０によって表示されることになるビデオコンテンツの部分を準備）し、表示に向けて、処理されたデータを没入型ビデオレンダリングデバイス１０に送信する。別の実施形態では、システムは、没入型ビデオを表すデータが記憶されるローカル記憶装置（図示せず）を含むこともでき、上記ローカル記憶装置は、コンピュータ４０にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００７１】
図２２は第２の実施形態を表す。この実施形態では、ＳＴＢ９０は、インターネット等のネットワークに直接（すなわち、ＳＴＢ９０はネットワークインターフェースを含む）又はゲートウェイ５０を介して接続される。ＳＴＢ９０は、無線インターフェース又は有線インターフェースを通して、テレビジョンセット１００又は没入型ビデオレンダリングデバイス２００等のレンダリングデバイスに接続される。ＳＴＢの従来の機能に加えて、ＳＴＢ９０は、テレビジョン１００又は任意の没入型ビデオレンダリングデバイス２００でレンダリングするためにビデオコンテンツを処理する処理機能を含む。これらの処理機能は、コンピュータ４０について説明したものと同じであり、ここで再度説明しない。センサ２０及びユーザ入力デバイス３０も、図２１に関して上述したものと同じタイプのものである。ＳＴＢ９０は、インターネットから没入型ビデオを表すデータを取得する。別の実施形態では、ＳＴＢ９０は、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）から没入型ビデオを表すデータを取得する。
【００７２】
図２３は、図２１に表される実施形態に関連する第３の実施形態を表す。ゲームコンソール６０はコンテンツデータを処理する。ゲームコンソール６０は、データ及び任意選択的に制御コマンドを没入型ビデオレンダリングデバイス１０に送信する。ゲームコンソール６０は、没入型ビデオを表すデータを処理し、処理されたデータを表示に向けて没入型ビデオレンダリングデバイス１０に送信するように構成される。処理は、専らゲームコンソール６０によって行うことができ、又は処理の一部は、没入型ビデオレンダリングデバイス１０によって行うことができる。
【００７３】
ゲームコンソール６０は、直接又はゲートウェイ若しくはネットワークインターフェース５０を通してインターネットに接続される。ゲームコンソール６０は、インターネットから没入型ビデオを表すデータを取得する。別の実施形態では、ゲームコンソール６０は、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）から没入型ビデオを表すデータを取得し、上記ローカル記憶装置は、ゲームコンソール６０にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００７４】
ゲームコンソール６０は、インターネットから没入型ビデオを表すデータを受信し、これらのデータを処理（例えば、データを復号し、恐らくは表示されることになるビデオの部分を準備）し、表示に向けて、処理されたデータを没入型ビデオレンダリングデバイス１０に送信する。ゲームコンソール６０は、センサ２０及びユーザ入力デバイス３０からデータを受信し得、データを使用して、インターネットから又はローカル記憶装置からから取得された没入型ビデオを表すデータを処理し得る。
【００７５】
図２４は、没入型ビデオレンダリングデバイス７０が、筐体７０５に挿入されたスマートフォン７０１によって形成される上記第１のタイプのシステムの第４の実施形態を表す。スマートフォン７０１は、インターネットに接続し得、したがって、インターネットから没入型ビデオを表すデータを取得し得る。別の実施形態では、スマートフォン７０１は、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）から没入型ビデオを表すデータを取得し、上記ローカル記憶装置は、スマートフォン７０１にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００７６】
没入型ビデオレンダリングデバイス７０の好ましい実施形態を与える図３０を参照して、没入型ビデオレンダリングデバイス７０について説明する。没入型ビデオレンダリングデバイス７０は、任意選択的に、少なくとも１つのネットワークインターフェース７０２と、スマートフォン７０１の筐体７０５とを含む。スマートフォン７０１は、スマートフォン及びディスプレイの全ての機能を含む。スマートフォンのディスプレイは、没入型ビデオレンダリングデバイス７０のディスプレイとして使用される。したがって、スマートフォン７０１のディスプレイ以外のディスプレイは含まれない。しかしながら、レンズ等の光学系７０４は、スマートフォンディスプレイでデータを見るために含まれる。スマートフォン７０１は、可能な場合、センサ２０及びユーザ入力デバイス３０から受信されるデータに従って、没入型ビデオを表すデータを処理（例えば、復号し、表示に向けて準備）するように構成される。センサからの測定値の幾つかは、デバイスの姿勢の計算及び仮想カメラの制御に使用される。姿勢推定に使用されるセンサは、例えば、ジャイロスコープ、加速度計、又はコンパスである。例えば、カメラのリグを使用するより複雑なシステムを使用することもできる。この場合、少なくとも１つのプロセッサは、画像処理を実行して、デバイス１０の姿勢を推定する。幾つかの他の測定値は、環境状況又はユーザの反応に従ってコンテンツを処理するのに使用される。環境及びユーザの観測に使用されるセンサは、例えば、マイクロホン、光センサ、又は接触センサである。例えば、ユーザの目を追跡するビデオカメラのようなより複雑なシステムを使用することもできる。この場合、少なくとも１つのプロセッサは、画像処理を実行して、予期される測定値を操作する。
【００７７】
図２５は、没入型ビデオレンダリングデバイス８０が、データコンテンツを処理し表示する全ての機能を含む上記第１のタイプのシステムの第５の実施形態を表す。システムは、没入型ビデオレンダリングデバイス８０、センサ２０、及びユーザ入力デバイス３０を含む。没入型ビデオレンダリングデバイス８０は、可能な場合、センサ２０及びユーザ入力デバイス３０から受信されるデータに従って、没入型ビデオを表すデータを処理（例えば、符号化し、表示に向けて準備）するように構成される。没入型ビデオレンダリングデバイス８０は、インターネットに接続し得、したがって、インターネットから没入型ビデオを表すデータを取得し得る。別の実施形態では、没入型ビデオレンダリングデバイス８０は、没入型ビデオが記憶されたローカル記憶装置（図示せず）から没入型ビデオを表すデータを取得し、上記ローカル記憶装置は、レンダリングデバイス８０にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００７８】
没入型ビデオレンダリングデバイス８０を図３１に示す。没入型ビデオレンダリングデバイスはディスプレイ８０１を含む。ディスプレイは、例えば、少なくとも１つのプロセッサ８０４及び少なくとも１つの通信インターフェース８０６と接続されたＯＬＥＤ又はＬＣＤ型、タッチパッド（任意選択的）８０２、カメラ（任意選択的）８０３、メモリ８０５であることができる。メモリ８０５は、プロセッサ８０４のパラメータ及びコードプログラム命令を含む。メモリ８０５は、センサ２０及びユーザ入力デバイス３０から受信したパラメータを含むこともできる。メモリは、没入型ビデオコンテンツを表すデータを記憶するのに十分、大きいものであることもできる。このため、幾つかのタイプのメモリが存在することができ、メモリ８０５は、１つのメモリであってもよく、又は幾つかのタイプの記憶装置（ＳＤカード、ハードディスク、揮発性又は不揮発性メモリ）であってもよい。通信インターフェース８０６は、没入型ビデオレンダリングデバイスがインターネットネットワークと通信できるようにする。プロセッサ８０４は、ディスプレイ８０１に表示するために、ビデオを表すデータを処理する。カメラ８０３は、画像処理ステップのために環境の画像を捕捉する。データは、没入型ビデオレンダリングデバイスを制御するために、このステップから抽出される。
【００７９】
拡張現実、仮想現実、又は拡張仮想コンテンツを処理する第２のシステムを図２６〜図２８に示す。そのようなシステムは没入型ウォールを含む。
【００８０】
図２６は、第２のタイプのシステムを表す。第２のタイプのシステムは、コンピュータ４０００からデータを受信する没入型（プロジェクション）ウォールであるディスプレイ１０００を含む。コンピュータ４０００は、インターネットから没入型ビデオデータを受信し得る。コンピュータ４０００は通常、直接又はゲートウェイ５０００若しくはネットワークインターフェースを通してインターネットに接続される。別の実施形態では、没入型ビデオデータは、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）からコンピュータ４０００によって取得され、上記ローカル記憶装置は、コンピュータ４０００にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００８１】
このシステムは、センサ２０００及びユーザ入力デバイス３０００を含むこともできる。没入型ウォール１０００は、ＯＬＥＤ又はＬＣＤ型であることができる。没入型ウォール１０００は１つ又は幾つかのカメラを備えることができる。没入型ウォール１０００は、センサ２０００（又は複数のセンサ２０００）から受信したデータを処理し得る。センサ２０００から受信したデータは、照明状況、温度、ユーザの環境、例えば、物体の位置に関連し得る。
【００８２】
没入型ウォール１０００は、ユーザ入力デバイス３０００から受信したデータを処理することもできる。ユーザ入力デバイス３０００は、ユーザの感情についてのフィードバックを与えるために、触覚信号等のデータを送信する。ユーザ入力デバイス３０００の例は、スマートフォン、遠隔制御装置、及びジャイロスコープ機能を有するデバイス等のハンドヘルドデバイスである。
【００８３】
センサ２０００及びユーザ入力デバイス３０００のデータは、コンピュータ４０００に送信することもできる。コンピュータ４０００は、これらのセンサ／ユーザ入力デバイスから受信したデータに従ってビデオデータを処理（例えば、ビデオデータを復号し、表示に向けて準備）し得る。センサ信号は、没入型ウォールの通信インターフェースを通して受信することができる。この通信インターフェースは、Bluetooth型、Wi-Fi型、又は任意の他のタイプの接続、優先的には無線であることができるが、有線接続であることもできる。
【００８４】
コンピュータ４０００は、処理されたデータ及び任意選択的に制御コマンドを没入型ウォール１０００に送信する。コンピュータ４０００は、没入型ウォール１０００によって表示されるようにデータを処理する、すなわち、表示に向けてデータを準備するように構成される。処理は、専らコンピュータ４０００によって行うことができ、又は処理の一部は、コンピュータ４０００及び没入型ウォール１０００によって行うことができる。
【００８５】
図２７は、第２のタイプの別のシステムを表す。このシステムは、ビデオコンテンツを処理（例えば、復号し、表示に向けてデータを準備）し表示するよう構成される没入型（プロジェクション）ウォール６０００を含む。このシステムは、センサ２０００、ユーザ入力デバイス３０００を更に含む。
【００８６】
没入型ウォール６０００は、インターネットからゲートウェイ５０００を通して又はインターネットから直接、没入型ビデオデータを受信する。別の実施形態では、没入型ビデオデータは、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）から没入型ウォール６０００によって取得され、上記ローカル記憶装置は、没入型ウォール６０００にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００８７】
このシステムは、センサ２０００及びユーザ入力デバイス３０００を含むこともできる。没入型ウォール６０００は、ＯＬＥＤ又はＬＣＤ型であることができる。没入型ウォールは１つ又は幾つかのカメラを備えることができる。没入型ウォール６０００は、センサ２０００（又は複数のセンサ２０００）から受信したデータを処理し得る。センサ２０００から受信したデータは、照明状況、温度、ユーザの環境、例えば、物体の位置に関連し得る。
【００８８】
没入型ウォール６０００は、ユーザ入力デバイス３０００から受信したデータを処理することもできる。ユーザ入力デバイス３０００は、ユーザの感情についてのフィードバックを与えるために、触覚信号等のデータを送信する。ユーザ入力デバイス３０００の例は、スマートフォン、遠隔制御装置、及びジャイロスコープ機能を有するデバイス等のハンドヘルドデバイスである。
【００８９】
没入型ウォール６０００は、これらのセンサ／ユーザ入力デバイスから受信したデータに従ってビデオデータを処理（例えば、ビデオデータを復号し、表示に向けて準備）し得る。センサ信号は、没入型ウォールの通信インターフェースを通して受信することができる。この通信インターフェースは、Bluetooth型、Wi-Fi型、又は任意の他のタイプの接続、優先的には無線であることができるが、有線接続であることもできる。没入型ウォール６０００は、センサ及びインターネットと通信するために、少なくとも１つの通信インターフェースを含み得る。
【００９０】
図２８は、没入型ウォールがゲームに使用される第３の実施形態を示す。１つ又は幾つかのゲームコンソール７０００は、好ましくは無線インターフェースを通して没入型ウォール６０００に接続される。没入型ウォール６０００は、インターネットからゲートウェイ５０００を通して又はインターネットから直接、没入型ビデオデータを受信する。別の実施形態では、没入型ビデオデータは、没入型ビデオを表すデータが記憶されたローカル記憶装置（図示せず）から没入型ウォール６０００によって取得され、上記ローカル記憶装置は、没入型ウォール６０００にあってもよく、又は例えば、ローカルエリアネットワーク（図示せず）を通してアクセス可能なローカルサーバにあってもよい。
【００９１】
ゲームコンソール７０００は、命令及びユーザ入力パラメータを没入型ウォール６０００に送信する。没入型ウォール６０００は、表示に向けてコンテンツを準備するために、可能な場合、センサ２０００、ユーザ入力デバイス３０００、ゲームコンソール７０００から受信した入力データに従って没入型ビデオコンテンツを処理する。没入型ウォール６０００は、表示するコンテンツを記憶する内部メモリを含むこともできる。
【００９２】
一実施形態では、全方位ビデオが、ビデオコーデックに適したフォーマットで表された標準矩形フレームＦへの周囲３ＤサーフェスＳの投影を可能にするフォーマットで表されると考える。様々な投影を使用して、３Ｄサーフェスを２Ｄサーフェスに投影することができる。例えば、図２Ａは、例示的な球面Ｓが、正距円筒図法を使用して２ＤフレームＦにマッピングされることを示し、図３Ａは、例示的な立方体表面が、上述したように、立方体マッピングを使用して図３Ｃに示される２Ｄフレームにマッピングされることを示す。ピラミッドマッピング、正二十面体マッピング、又は八面体マッピング等の他のマッピングも３Ｄサーフェスを２Ｄフレームにマッピングすることができる。
【００９３】
次に、２ＤフレームＦは、既存のビデオエンコーダ、例えば、ＶＰ９、ＶＰ１０、ＭＰＥＧ−２、Ｈ．２６４／ＡＶＣ、又はＨ．２６５／ＨＥＶＣに準拠するエンコーダを使用して符号化することができる。２ＤフレームＦは、例えば、調整されたＶＰ９、ＶＰ１０、ＭＰＥＧ−２、Ｈ．２６４／ＡＶＣ、又はＨ．２６５／ＨＥＶＣエンコーダを使用して、全方位ビデオの特性に適応したエンコーダを用いて符号化することもできる。符号化及び復号の後、復号された２Ｄフレームは、対応する３Ｄサーフェス、例えば、正距円筒図法マッピングの場合には球体又は立方体マッピングの場合は立方体に再びマッピングすることができる。次に、３Ｄサーフェスをユーザの視点に対応する「仮想画面」に投影して、最終的にレンダリングされたフレームを得ることができる。２Ｄフレームを復号し、３Ｄサーフェスからレンダリングフレームに投影するステップは、１つのステップに統合することができ、その場合、復号されたフレームの一部は、レンダリングフレームにマッピングされる。本願では、投影空間を使用して、投影が実行されるレンダリングフレーム又は３Ｄサーフェスを指し得る。
【００９４】
標記を簡単にするために、復号された２Ｄフレームを「Ｆ」とも呼び、レンダリングで使用される３ＤサーフェスをＳとも呼ぶことがある。符号化される２Ｄフレーム及び復号される２Ｄフレームが、ビデオ圧縮に起因して異なり得、前処理における３Ｄサーフェス及びレンダリングにおける３Ｄサーフェスも異なり得ることを理解されたい。本願では、「マッピング」及び「投影」なる用語は同義で使用され、「ピクセル」及び「サンプル」なる用語は同義で使用され、「フレーム」及び「ピクチャ」なる用語は同義で使用される。
【００９５】
図５Ａは、本開示の一実施形態による、全方位ビデオをビットストリームに符号化する例示的な方法の流れ図を示す。ここで、全方位ビデオのピクチャが、限定ではなく、上記開示された等の球体又は立方体等の３Ｄサーフェスとして表されることを仮定する。次に、３Ｄサーフェスは、符号化のために、投影関数を使用して少なくとも１つの２Ｄピクチャに投影される。例えば、そのような投影関数は、正距円筒図法投影又は他のタイプの投影関数であることができる。
【００９６】
次に、２Ｄピクチャはブロックに分割され、各ブロックは、例えば、提案されたビデオ圧縮技法を使用して符号化される。
【００９７】
図６は、符号化する２ＤピクチャのブロックＢＬＫ及びブロックＢＬＫの符号化に利用可能な動きベクトル予測子ｄＶを示す。そのような動きベクトル予測子は、現在ブロックＢＬＫの近傍ブロックの符号化された動きベクトルとして導出し得る。図６に示される例では、動きベクトル予測子ｄＶは、ブロックＢＬＫの上部近傍ブロックに符号化された動きベクトルである。
【００９８】
そのような動きベクトル予測子ｄＶは、現在ブロックＢＬＫに割り当てられた動きベクトルの予測に使用し得、又はブロックＢＬＫの予測ブロック残差を計算するために、投影された全方位ビデオの基準フレームにおいて現在ブロックＢＬＫを動き補償するために直接使用し得る。
【００９９】
図５Ａに戻ると、ステップ１６００において、動きベクトル予測子ｄＶは、最小、全方位ビデオを表す３Ｄサーフェスを２Ｄピクチャに投影するのに使用される投影関数を使用して、現在ブロックＢＬＫに適応される。こうして、適応動きベクトル予測子ｄＰが得られる。このプロセスは、現在ブロックＢＬＫの符号化に利用可能な全ての動きベクトル予測子に対して繰り返し得る。次に、利用可能な各動きベクトル予測子の適応動きベクトル予測子が得られる。動きベクトル予測子ｄＶを適応させる更なる詳細については、図７及び図１１に関連して以下に与える。
【０１００】
ステップ１６０１において、現在ブロックＢＬＫは、動きベクトル予測子ｄＶを直接使用する代わりに、例えば、従来のビデオ圧縮技法を使用して適応された動きベクトル予測子ｄＰを使用して符号化される。適応動きベクトル予測子ｄＰは、現在ブロックＢＬＫに割り当てられた動きベクトルの予測に使用し得、又はブロックＢＬＫの予測ブロック残差を計算するために投影された全方位ビデオの基準フレームにおいて現在ブロックＢＬＫを動き補償するために直接使用し得る。
【０１０１】
図５Ｂは、本開示の一実施形態による、符号化された全方位ビデオを表すビットストリームを復号する例示的な方法の流れ図を示す。
【０１０２】
ステップ１６０２において、現在ブロックＢＬＫの符号化に使用される動きベクトル予測子ｄＶは、エンコーダ側で行われたのと同様に、最小、全方位ビデオを表す３Ｄサーフェスを２Ｄピクチャに投影するのに使用された投影関数を使用して適応される。現在ブロックＢＬＫが２つ以上の動きベクトル予測子ｄＶを使用して符号化される場合、現在ブロックＢＬＫの符号化に使用される各動きベクトル予測子は、本原理に従って適応される。
【０１０３】
ステップ１６０３において、現在ブロックＢＬＫは、適応動きベクトル予測子ｄＰ又は複数の適応動きベクトル予測子を使用して復号される。現在ブロックＢＬＫの符号化に使用された符号化モードに応じて、適応動きベクトル予測子ｄＰは、ビットストリームから復号された動きベクトル残差から現在ブロックＢＬＫの動きベクトルを再構築するのに使用し得、又はビットストリームから復号された予測ブロック残差から現在ブロックＢＬＫを再構築するために、投影された全方位ビデオの基準フレームにおいて現在ブロックＢＬＫを動き補償するのに直接使用し得る。
【０１０４】
図７は、本開示の一実施形態による、符号化する現在ブロックＢＬＫの点Ｐの近傍ブロックの動きベクトル予測子ｄＶを適応させる例示的な方法の流れ図を示す。この実施形態によれば、動きベクトル予測子ｄＶの座標は、２ＤピクチャＦの座標基準系で表される。
【０１０５】
ステップ１８００において、符号化する２Ｄピクチャからの点（図８ＡのＦ）を図８ＡにおけるレンダリングフレームＧに投影するための変換Ｔが計算される。図８Ａに示されるように、ピクチャＦからの点ＰをレンダリングフレームＧにおける点Ｐ’’に投影するために、中間３Ｄ空間が使用される。なお、レンダリングフレームＧは、対象点Ｐにセンタリングされた「従来」のカメラによって見たシーンを表す。すなわち、Ｔは、フレームＦを「従来」のフレーム「のように見える」よう変換する。
【０１０６】
変換Ｔの計算について、正距円筒図法投影の場合において以下に開示する。そのような投影関数は以下のように関数ｆを定義し、正規化座標を仮定して、ピクチャＦからの点をＰ（ｘ，ｙ）と示し、球体Ｓの表面からの点をＰ’（θ，ψ）と示す。
ｆ：（ｘ，ｙ）→Ｐ’（θ，ψ）
θ＝２πｘ
ψ＝πｙ
【０１０７】
非正規化座標を用いる場合、点Ｐ’の座標は以下である。
【数１】
2019534616.tif 000003
【０１０８】
したがって、球体の所与の点Ｐ’は、３Ｄ空間からの点Ｐ3dに対応する。Ｐ3dの座標は、
３ｄ：Ｐ’→Ｐ3d
【数２】
2019534616.tif 000004
によって与えられる。
【０１０９】
次に、３Ｄ空間はレンダリングフレームＧにマッピングされる。フレームＧは、ＧにおけるＰの投影Ｐ’’がフレームの中心にあるように選ばれる。フレームＧは、サーフェスＳにＰ’において接する平面へのサーフェスＳの局所投影に対応する。フレームＧを球体Ｓに接して固定するために、回転行列Ｒが、点Ｐ3dがＰ’’＝（０，０）に投影されるように定義される。行列Ｒを固定するために、任意の単位ベクトルＵ＝（ｕｘ，ｕｙ，ｕｚ）が使用され、次に、行列Ｒが推測される。
【数３】
2019534616.tif 000005
ｒ3＝ｒ1×ｒ2
【０１１０】
点Ｐ’の周囲のフレーム向きに不明瞭さがある（ベクトルＵの選択によって与えられる）ことが分かる。Ｕの妥当な選択は、Ｕ＝（１，０，０）であることができる。Ｕの選択は、Ｆ及びＳにおける座標フレーム系の選択に依存する。
【０１１１】
向きを固定することができるフレームＧを見つける別の同等の方法は、点Ｐの回りの３Ｄ軸から平面を導出することであり、
【数４】
2019534616.tif 000006
式中、
【数５】
2019534616.tif 000007
である。
【０１１２】
次に、投影は、原点Ｐ3d並びに局所フレームｄＸ3dPN及びｄＹ3dPNによって定義される局所平面で行われる。
【０１１３】
回転Ｒが固定されると、点Ｐ3dは回転し、次にＧに投影される。
Ｐ’’＝Ｐｒｏｊ（ＲＰ3d）、及び
Ｐｒｏｊ：Ｐ3d→Ｐ’’
【数６】
2019534616.tif 000008
【０１１４】
変換Ｔは最終的に、
Ｔ：Ｐ→Ｐ’’
Ｐ’＝ｆ（Ｐ）
Ｐ’’＝Ｐｒｏｊ（Ｒ３ｄ（Ｐ’））
Ｐ’’＝Ｔ（Ｐ）＝Ｐｒｏｊ（Ｒ３ｄ（ｆ（Ｐ））
として表現することができる。
【０１１５】
逆変換Ｔ-1の計算を以下に開示する。Ｇにおける点Ｐ’’からフレームＦに戻るために、逆変換Ｔ-1が計算される。
Ｔ-1：Ｐ’’→Ｐ
Ｐ3d＝ＲtＰｒｏｊ-1（Ｐ’’）
Ｐ＝ｆ-1（３ｄ-1（ＲtＰｒｏｊ-1（Ｐ’’）））
【０１１６】
レンダリングフレームＧから３Ｄ空間への逆投影は、
Ｐｒｏｊ-1：Ｐ’’→Ｐ3d
【数７】
2019534616.tif 000009
によって与えられる。
【０１１７】
点Ｐ3d（Ｘ，Ｙ，Ｚ）から、標準デカルト座標から極座標への変換を使用して球体パラメータ化に戻ることができる。
３ｄ：Ｐ3d→Ｐ’
【数８】
2019534616.tif 000010
【０１１８】
特異点（通常、極にある）の場合、Ｘ及びＹが０に近いとき、極座標はθ＝０及び
【数９】
2019534616.tif 000011
として直接設定される。
【０１１９】
次に、逆投影関数は、
ｆ-1：Ｐ’（θ，ψ）→Ｐ（ｘ，ｙ）
ｘ＝θ／２π
ｙ＝ψ／π
によって与えられる。
【０１２０】
図８Ａ及び図８Ｂでは、球体のサーフェス上の点（Ｐ’）及び３Ｄ空間における対応する点（Ｐ3d）は一緒に示されている。
【０１２１】
変換Ｔの計算は、投影関数がビデオで固定され、シーケンスレベルで符号化されてから、ビデオ全体に対して１回実行することができる。この計算の結果は、計算の複雑性を低減するために、ＬＵＴ（ルックアップテーブル）に記憶することができる。そのようなＬＵＴは、２Ｄピクチャの各点で、レンダリングフレームＧにおける対応する点を導出できるようにするとともに、この逆を可能にする。
【０１２２】
ステップ１８０１において、現在ブロックＢＬＫの点Ｐは、変換Ｔを使用してレンダリングフレームＧに投影される：Ｐ’’＝Ｔ（Ｐ）。アンカー点Ｖは、変換Ｔを使用してレンダリングフレームＧに投影される：Ｖ’’＝Ｔ（Ｖ）。アンカー点Ｖは、Ｗ＝Ｖ＋ｄＶである動きベクトル予測子ｄＶだけ２ＤピクチャＦにおいて変位する。変位したアンカー点Ｗは、変換Ｔを使用してレンダリングフレームＧに投影される：Ｗ’’＝Ｔ（Ｗ）。構築により、上述したように、Ｐ’’はレンダリングフレームＧの中心にある：Ｐ’’＝［０，０］t。
【０１２３】
ステップ１８０２において、投影された動きベクトル予測子ｄＶ’’はｄＶ’’＝（Ｗ’’−Ｖ’’）として計算される。次に、点Ｐ’’は、Ｑ’’＝Ｐ’’＋ｄＶ’’であるｄＶ’’を使用して変位される。
【０１２４】
ステップ１８０３において、次に点Ｑ’’は、逆変換Ｔ-1を使用して２ＤピクチャＦに逆投影され、Ｑ＝Ｔ-1（Ｑ’’）を与える。
【０１２５】
ステップ１８０４において、次に適応動きベクトル予測子ｄＰが、点Ｑのロケーションと点Ｐとのロケーションとの差として計算される：ｄＰ＝Ｑ−Ｐ。
【０１２６】
したがって、２Ｄピクチャの任意の所与の点Ｐの適応動きベクトル予測子ｄＰは、以下の式（１）を使用して取得し得る：ｄＰ＝Ｑ−Ｐ。
ｄＰ＝ｆ-1（ＲtＰｒｏｊ-1（Ｐ’’＋ｄＰ’’））−Ｐ
ｄＰ＝ｆ-1（ＲtＰｒｏｊ-1（Ｐｒｏｊ（Ｒｆ（Ｐ））＋Ｐｒｏｊ（Ｒｆ（Ｖ＋ｄＶ）−Ｐｒｏｊ（Ｒｆ（Ｖ））））−Ｐ    式（１）
【０１２７】
上記計算では、点Ｖにおける動きベクトルｄＶは、Ｐにおける動きベクトルｄＰを推測するために、レンダリングフレームＧに投影された。図９Ａに示されるように、球体Ｓ上の点｛Ｐ’，Ｖ’，Ｗ’｝は、｛Ｐ’’，Ｖ’’，Ｗ’’｝においてレンダリングフレームＧに投影される。次に、その結果生成された点Ｑ’’は、点Ｑ’において球体Ｓに再び投影され、次に、点ＱにおいてフレームＦに再び投影される。
【０１２８】
該当する場合が多い、点Ｐに近い点Ｖ及びＷの場合、レンダリングフレームＧへの投影は、図９Ｂに示されるように、省略することができる。この場合、点Ｑ’はＱ’＝Ｐ’＋（Ｗ’−Ｖ’）として直接推測することができ、ここで、点｛Ｐ’，Ｑ’，Ｖ’，Ｗ’｝は全て極座標にあり、その理由は、距離ｄ（Ｖ’’，Ｗ’’）が弧長ｄ（Ｖ’，Ｗ’）に略等しいためである。この実施形態によれば、式（１）は次に、式（１ｂ）に簡易化することができる。
ｄＰ＝ｆ-1（Ｐ’＋ｄＰ’）−Ｐ
ｄＰ＝ｆ-1（ｆ（Ｐ）＋ｆ（Ｖ＋ｄＶ）−ｆ（Ｖ））−Ｐ    式（１ｂ）
【０１２９】
図７を用いて開示される実施形態では、動きベクトル予測子ｄＶが２Ｄピクチャのアンカー点Ｖに適用されている。そのようなアンカー点は、動きベクトル予測子ｄＶが使用される近傍ブロックの中心として図６に示されている。しかしながら、動きはブロック内部で非均一であり、アンカー点の選択は、現在ブロックＢＬＫに使用される、生成される適応動きベクトル予測子に影響を有し得る。
【０１３０】
各ブロックが１つの動きベクトルを有すると仮定すると、図１０に示されるように、異なる実施形態によれば、所与の上部ブロックで、適応動きベクトル予測子ｄＰの計算に使用されるアンカー点Ｖは、以下の点の中から選ぶことができる。
−近傍ブロックの中心Ｖ1、
−現在ブロックＢＬＫのエッジにおける中心Ｖ1の投影Ｖ2、
−現在ブロックＢＬＫの中心Ｐと位置合わせされたＶ1へのブロック中心Ｖ1の並進から生じる点Ｖ3、
−現在ブロックＢＬＫのエッジへのＶ3の投影から生じる点Ｖ4、
−近傍ブロックから現在ブロックの中心へ最も近い点Ｖ5。
同様の推論を他の近傍ブロック、例えば、左近傍ブロック、左上近傍ブロックに対して推測することができる。
【０１３１】
図１１は、本開示の別の実施形態による、動きベクトル予測子を適応させる例示的な方法の流れ図である。図９Ｂに示される近似を使用して、動きベクトルの予測を改善する別の方法は、球体Ｓの座標系を使用して動きベクトルを直接表現することである。そのような実施形態では、特に３Ｄサーフェスの連続パラメータ化の場合、何らかの投影関数への動きベクトル予測子のより簡単な適応が可能である。この実施形態によれば、フレームＦにおける点Ｍ（ｘ，ｙ）に、図２Ｂ及び図２Ｃに示される点Ｍ’（θ，ψ）における球体上の角度差として表現される動きベクトルｄＭ＝（ｄθ，ｄψ）が関連付けられる。
【０１３２】
近傍ブロックからの球体上の点Ｐ’における動きベクトル予測子ｄＶ’はそのままｄＶ’＝（ｄθ，ｄψ）である。しかしながら、点Ｐにおける動きベクトルｄＶ’＝（ｄθ，ｄψ）を使用して２Ｄピクチャにおいて現在ブロックＢＬＫを予測するための動き補償は、フレームＦにおける適応動きベクトル予測子ｄＰを得るために、フレームＦの座標系において動きベクトルｄＶ’を投影する必要がある。
【０１３３】
ステップ２２００において、球体上の現在ブロックの点Ｐ’（θ，ψ）は、Ｐ’d＝Ｐ’＋ｄＶである動きベクトル予測子ｄＶにより変位する。
【０１３４】
ステップ２２０１において、変位した点Ｐ’ｄは、図７に関連して上で開示された逆変換Ｔ-1を使用して投影される：Ｐd＝Ｔ-1（Ｐ’d）。
【０１３５】
ステップ２２０２において、点Ｐの適応動きベクトル予測子ｄＰは、ｄＰ＝Ｐd−Ｐとして計算される。
【０１３６】
上で開示した変換Ｔの計算を使用して、ｄＰは以下のように導出することができる。
ｄＰ＝ｆ-1（ＲtＰｒｏｊ-1（Ｐ’＋ｄＶ’））−Ｐ
ｄＰ＝ｆ-1（ＲtＰｒｏｊ-1（ｆ（Ｐ）＋ｄＶ’））−Ｐ    式（２）
【０１３７】
動きベクトルはここで、極座標で表されるため、投影関数に応じて単位が変わる。単位は、投影関数ｆを使用して見つけられる。正距円筒図法投影の場合、ピクチャＦにおける１ピクセルの単位は、２π／幅の角度に対応し、ここで、幅はピクチャ幅である。
【０１３８】
続けて、動きベクトル予測子を適応させる図７を用いて開示される実施形態が、図３Ｄを用いて示される立方体の面のレイアウトを使用する立方体マッピングの場合で開示される。
【０１３９】
前面における現在ブロックの点Ｐ（ｘ，ｙ）を仮定すると、左面にある点Ｖ（ｘ，ｙ）から点Ｐにおける現在ブロックの動きベクトルを予測したい。
【０１４０】
図７において説明されたステップに続き、左面におけるＶ及びＷ＝Ｖ＋ｄＶの投影が計算され、
【数１０】
2019534616.tif 000012
式中、（ｄｕL，ｄｖL）は、左面の動きベクトル予測子ｄＶの座標を表す。次に、点はサーフェスから３Ｄ空間に投影される。
【数１１】
2019534616.tif 000013
【０１４１】
次に、点は、前面の投影を使用してレンダリングフレームＧに投影される。
【数１２】
2019534616.tif 000014
【０１４２】
投影動きベクトル予測子は、前面の点Ｐに適用される。
【数１３】
2019534616.tif 000015
【０１４３】
なお、球体の場合と同様に、幾つかの場合は特異である（一般に、予測子又はベクトル標的が座標系の原点に近い場合）ことに留意すべきである。実際の実施は、ベクトルの最小絶対値に限度を置くことにより、係数ｕ（ｕ＋ｄｕ）による分割の効果を制限する。
【０１４４】
動きベクトル予測子を適応させる図７において説明された実施形態に続き、短焦点距離ビデオの場合についてここで考察する。歪みの従来のモデルは、２Ｄ＋３Ｄ歪みが単純な２Ｄ関数に統合されるブラウン−コンラディモデルを使用することである：（ｘｄ，ｙｄ）＝ｇ（ｘｕ，ｙｕ，Ｓ）、式中、（ｘｄ，ｙｄ）は歪み（フレームＦにおける）後のピクセル座標であり、（ｘｕ，ｙｕ）は歪み（フレームＧにおける）前のピクセル座標である。歪み関数ｇ（）は、組成：ｇ＝ｆ-1〇３ｄ-1〇ｐｒｏｊ-1である。歪み関数ｇ（）は、ブラウン−コンラディモデルを使用して取得し得る。
【０１４５】
関数ｇ-1は、通常、ピクセルが対応する歪みのないピクセルにマッピングされるオフラインプロセスとして、ｇから回復することができ、上記実施形態に適用することができる。逆関数ｇ-1は、常に分析的に可逆的であるわけではなく、数値方法を使用して又はＬＵＴを使用して見つけることができる。
【０１４６】
符号化する現在ブロックＢＬＫを代表する点Ｐを考慮して、符号化する現在ブロックＢＬＫに動きベクトル予測子を適応させる実施形態を上に開示した。例えば、点Ｐは、現在ブロックＢＬＫの中心、ブロックＢＬＫの左上隅のピクセル、又はブロックＢＬＫの任意の他の点であることができる。次に、得られた適応動きベクトル予測子を使用して、ブロックＢＬＫ全体を符号化する。
【０１４７】
しかしながら、２ＤピクチャＦにおける動き場は歪んでいるため、そのようなブロックを符号化するために、現在ブロックＢＬＫのピクセルごと又はピクセル群（例えば、ＨＥＶＣ標準の場合、４×４ピクセルサブブロック）ごとに適応動きベクトル予測子を推測することがより適することがある。したがって、本原理の別の実施形態は、現在ブロックＢＬＫの各サブブロックに適応動きベクトル予測子を導出することである。現在ブロックＢＬＫのサブブロックは、ブロックＢＬＫの１つ又は複数のピクセルを含み得る。
【０１４８】
図１２Ａに示される別の実施形態では、適応動きベクトル予測子ｄＰsbは、図７又は図１１を用いて開示された任意の実施形態による、動きベクトル予測子ｄＶを適応させる方法を各サブブロックに適用することにより、現在ブロックＢＬＫの各サブブロックで導出される。したがって、この実施形態によれば、図７又は図１１を用いて開示された実施形態の点Ｐは、現在処理されているサブブロックの代表点、例えば、サブブロックの中心に対応する。
【０１４９】
図１２Ｂに示される別の実施形態では、適応動きベクトル予測子ｄＰは、現在ブロックの代表である点Ｐを使用して現在ブロックＢＬＫについて図７又は図１１を用いて開示された任意の実施形態により最初に計算され、Ｐは、例えば、ブロックＢＬＫの中心であることができる。次に、ブロックＢＬＫで得られた適応動きベクトル予測子ｄＰを使用して、ブロックの各サブブロックの適応動きベクトル予測子ｄＰsbが推測される。例えば、サブブロックの適応動きベクトル予測子ｄＰsbは、図７又は図１１を用いて開示された任意の実施形態により開示された方法をサブブロックに適用し、初期動きベクトル予測子ｄＶとして現在ブロックＢＬＫの適応動きベクトル予測子ｄＰを使用することによって導出することができる。
【０１５０】
これらの実施形態によれば、少なくとも１つの適応動きベクトル予測子が現在ブロックの各サブブロックに割り当てられる。エンコーダで実行されるレート／歪み最適化に応じて、次に、各サブブロックは、その適応動きベクトル予測子を使用して独立して符号化することができる。又は、現在ブロックＢＬＫは、割り当てられた適応動きベクトル予測子を用いた各サブブロックの動き補償を使用して、現在ブロックの動き補償予測ブロックを計算することにより、サブブロックの全ての適応動きベクトル予測子を使用して符号化することができる。
【０１５１】
動きベクトル予測子を適応させる本原理は、現在ブロックの空間近傍ブロック（上、左、又は左上の近傍）の動き予測子について上で開示された。そのような原理は、現在ブロックの時間的近傍の動きベクトル予測子、すなわち、ビデオシーケンスの前又は次の２Ｄピクチャの同位置ブロックにも同様に適用することができる。
【０１５２】
時間的動き予測子計算の場合、従来、フレームＦ0からの同位置ブロックの動きベクトル予測子ｕ0->nは、図１３Ａに示されるように、係数αtにより、フレームＦkからの現在ブロックの新しい動きベクトル予測子ｕk->nを形成するようにリスケーリングされ、ここで、
【数１４】
2019534616.tif 000016
であり、式中、ｔn、ｔk、及びｔ0はそれぞれ、フレームＦn、Ｆk、及びＦ0の表示時間である。
【０１５３】
同様に、空間近傍ブロックの動きベクトル及び現在ブロックの動きベクトルが同じ基準フレームを使用しない場合、図１３Ｂに示されるように、基準フレーム適応リスケーリングを実行して、空間近傍の動きベクトルｕ0->nをリスケーリングして、現在ブロックの新しい動きベクトル予測子ｕk->nを形成すべきである。従来、近傍ブロックの動きベクトル予測子ｕ0->nが、現在ブロックの基準ピクチャ（図１３ＢにおけるＦn）と異なる基準ピクチャ（図１３ＢにおけるＦm）を使用する場合、動きベクトル予測子ｕ0->nは、αsを用いてリスケーリングされ、ここで、
【数１５】
2019534616.tif 000017
であり、式中、ｔn、ｔk、及びｔmはそれぞれフレームＦn、Ｆk、及びＦmの表示時間である。
【０１５４】
上述したリスケーリング方法を改善するために、そのようなリスケーリングは、３Ｄ空間又はレンダリングフレームＧにおいて実行されて、投影関数により動き場に導入される歪みを考慮に入れることができる。
【０１５５】
図１４は、本開示の別の実施形態による、動きベクトル予測子を適応させる例示的な方法の流れ図を示す。そのような方法は、適応動きベクトル予測子ｄＰが図７又は図１１を用いて開示された任意の実施形態に従って得られると実行することができる。方法は、図７又は図１１を用いて開示された任意の実施形態により動きベクトル予測子を適応させるのと同時に実行することもできる。
【０１５６】
以下に開示される実施形態では、現在ブロックＢＬＫの代表である点をＰと示し、リスケーリングする動きベクトル予測子をｄＰ1と示す。ここで、リスケーリングする動きベクトル予測子ｄＰ1とは、図７又は図１１を用いて開示された任意の実施形態による修正後の動きベクトル予測子ｄＰである。
【０１５７】
この実施形態では、リスケーリングは、動きベクトル予測子を３Ｄサーフェスに投影し（式１ｂを使用して）、リスケーリングし、次に２ＤピクチャＦに戻ることによって行われる。時間的リスケーリングの場合、係数αtを使用し、空間リスケーリングの場合、係数αsを使用する。
【０１５８】
ステップ２５００において、動きベクトルｄＰ1を有する変位点Ｐに対応する点Ｑは、Ｑ’＝ｆ（Ｐ＋ｄＰ1）＝ｆ（Ｑ）による投影関数ｆを使用して３Ｄサーフェスに投影される。
【０１５９】
ステップ２５０１において、Ｑ’のロケーションとＰ’（ｄＰ’＝Ｑ’−Ｐ’）のロケーションとの差である動きベクトル予測子ｄＰ’は、ｄＰ’2＝αiｄＰ’による係数αiを使用してリスケーリングされる。
【０１６０】
ステップ２５０２において、動きベクトルｄＰ2’により変位した点Ｐ’に対応する点Ｑ2’：Ｑ2’＝Ｐ’＋ｄＰ2’＝Ｐ’＋αｉｄＰ’。次に、点Ｑ2’は、Ｑ２＝ｆ-1（Ｑ2’）により２Ｄピクチャに再び投影される。
【０１６１】
ステップ２５０３において、次に、リスケーリングされた適応動きベクトル予測子ｄＰ2は、ｄＰ2＝Ｑ2−Ｐとして、Ｑ2のロケーションとＰのロケーションとの差として計算される。
【０１６２】
リスケーリングは、３Ｄサーフェスに投影する場合において上で開示された。別の実施形態によれば、リスケーリングされた適応動きベクトル予測子ｄＰ2は、点Ｐ’及びＱ’の代わりに点Ｐ’’、Ｑ’’並びに上で開示した変換関数Ｔ及びＴ-1を使用して、レンダリングフレームＧへの投影の場合に得ることができる。
【０１６３】
上記実施形態は、動きベクトル予測子が、図７又は図１１を用いて開示された任意の実施形態に従って修正された後、リスケーリングされる場合において開示された。別の実施形態によれば、そのようなリスケーリングは、図７又は図１１を用いて開示された任意の実施形態に従って動きベクトル予測子の修正を実行するとき、実行することができる。その場合、図１４のステップ２５０１のみが、図７又は図１１を用いて開示されたステップに加えて実行される。
【０１６４】
別の実施形態によれば、現在ブロックＢＬＫの予測に使用されるアフィン動き補償モデルの場合、Ｐ1及びＰ2における２つの動きベクトルを使用して、図１５に示されるように、現在ブロックＢＬＫのアフィン動きを導出する。これらの動きベクトルは、周囲ブロックからの動きベクトル予測子候補を使用して予測される。
【０１６５】
上で開示された動きベクトル予測子を適応させる方法の異なる実施形態は、これらの周囲ブロックの動きベクトル予測子に適用することができる。この実施形態によれば、上で開示されたように動きベクトル予測子を適応させる方法が適用される場合、現在ブロックの中心を使用する代わりに、点Ｖiにおける動きベクトル予測子ｄＶiを使用して、点Ｐiにおける動きベクトルｄＰiを予測する。ここで、Ｐ1及びＰ2はそれぞれ、現在ブロックの左上サブブロックの中心、右上サブブロックをそれぞれ示す。
【０１６６】
上で開示された実施形態では、全方位ビデオを表すサーフェスと２Ｄピクチャとの間の投影及び対応する逆投影は固定され、符号化及びデコーダに既知であり、例えば、投影関数はビットストリームに符号化し得るため、例えば、フレームＦとフレームＧとの間で前後するために各ピクセル若しくはピクセル群に適用される変換を与えるＬＵＴとして、又はフレームＦとサーフェスＳとの間の近似バージョン（式（１ｂ））の場合、式（１）又は式（２）は２Ｄピクチャの個々のピクセルについて予め計算することができる。
【０１６７】
図１６は、例示的なビデオエンコーダ４００を示す概略ブロック図である。そのようなビデオエンコーダ４００は、本原理の一実施形態による、全方位ビデオの投影を表す１組のピクチャのビットストリームへの符号化を実行する。ビデオエンコーダ４００は、ＨＥＶＣコーダに準拠するものとして開示されるが、本原理は、２Ｄピクチャのシーケンスとして、ビデオを処理する任意の２Ｄビデオ符号化方式に適用し得る。
【０１６８】
従来、ビデオエンコーダ４００は、図１６に示されるように、ブロックベースでビデオを符号化する幾つかのモジュールを含み得る。符号化される全方位ビデオから投影されたピクチャを表す２ＤピクチャＩは、エンコーダ４００に入力される。
【０１６９】
まず、細分モジュールは、ピクチャＩを１組のピクセルブロックに分割する。
【０１７０】
後述する符号化プロセスは、ピクチャＩの各ブロックＢＬＫを処理する。使用されるビデオ符号化標準に応じて、そのようなブロックＢＬＫは、Ｈ．２６４／ＡＶＣマクロブロック、ＨＥＶＣ符号化ツリーユニット、上述したユニットの１つからの任意のサブブロック、又はピクチャＩの任意の他のレイアウトの細分に対応し得る。
【０１７１】
後述する符号化及び復号プロセスは、例示を目的とする。幾つかの実施形態によれば、符号化モジュール又は復号モジュールは、以下のモジュールに追加されるか、又は削除されるか、又は以下のモジュールから異なり得る。しかしながら、本明細書に開示される原理はそれでもなお、これらの実施形態に適用することができる。
【０１７２】
エンコーダ４００は、以下のようにピクチャＩの各ブロックＢＬＫの符号化を実行する。エンコーダ４００は、例えば、レート／歪み最適化に基づいて、符号化するピクチャのブロックＢＬＫの符号化モードを選択するモード選択ユニットを含む。
−符号化するピクチャの１つの現在ブロックと基準ピクチャとの間の動きを推定する動き推定モジュール、
−推定された動きを使用して現在ブロックを予測する動き補償モジュール、
−現在ブロックを空間的に予測するイントラ予測モジュール
を含む、そのようなモード選択ユニット。
【０１７３】
モード選択ユニットはまた、例えば、レート／歪み最適化に従ってブロックの細分が必要であるか否かを判断することもできる。その場合、モード選択ユニットは、ブロックＢＬＫの各サブブロックに対して動作する。
【０１７４】
現在ブロックＢＬＫのインター予測の場合、モード選択ユニットは、上で開示された本原理の任意の実施形態により、現在ブロックＢＬＫの近傍ブロックの動きベクトル予測子を適応させる方法を実行し得る。幾つかの動きベクトル予測子が利用可能な場合、例えば、現在ブロックが、左ブロック、上部ブロック、又は左上ブロック等の利用可能な幾つかの近傍ブロックを有する場合、現在ブロックＢＬＫの符号化に利用可能な各動きベクトル予測子は、上述したように適応される。次に、利用可能な各動きベクトル予測子の適応動きベクトル予測子が得られる。その結果生成された適応動きベクトル予測子は次に、現在ブロックＢＬＫの動きベクトル予測子として従来通りに使用される。
【０１７５】
例えば、現在ブロックＢＬＫの適応動きベクトル予測子ｄＰは、動きベクトルｍｖとｄＰとの差として動きベクトル残差を計算することにより、現在ブロックＢＬＫに推定された動きベクトルｍｖを予測するのに使用し得る。次に、エントロピー符号化モジュールによって動きベクトル残差を符号化する。
【０１７６】
別の実施形態によれば、現在ブロックＢＬＫに推定される動きベクトルを予測するために、動きベクトル予測子リストが構築される。次に、動きベクトル予測子は、このリストから選択され、選択された動きベクトル予測子をデコーダに示すデータがビットストリームに符号化される。そのようなデータの符号化コストを低減するために、リストの枝刈り適応が実行される。この枝刈り適応中、幾つかの動きベクトルは、リストに既にある動きベクトルに等しい場合、リストから削除される。
【０１７７】
この実施形態によれば、上で開示された任意の実施形態による動きベクトル予測子の修正後、リストの動きベクトルの比較が実行される。
【０１７８】
適応動きベクトル予測子ｄＰは、ブロックＢＬＫの予測ブロック残差を計算するために、全方位ビデオの基準サーフェスを表す２Ｄ基準フレームにおいて現在ブロックＢＬＫを動き補償することにより、現在ブロックＢＬＫを予測するのに使用することもできる。
【０１７９】
１つ又は複数の符号化モードが現在ブロックＢＬＫに選択されると、モード選択ユニットは、デコーダで同じブロック予測を実行するために、ビットストリームに符号化される予測ブロックＰＲＥＤ及び対応するシンタックス要素を送出する。現在ブロックＢＬＫが分割されていた場合、予測ブロックＰＲＥＤは、各サブブロックについてモード選択ユニットにより送出された１組の予測サブブロックによって形成される。
【０１８０】
次に、元のブロックＢＬＫから予測ブロックＰＲＥＤを減算することにより、残差ブロックＲＥＳが得られる。
【０１８１】
次に、変換処理モジュールが変換された係数の変換ブロックＴＣＯＥＦを送出することにより、残差ブロックＲＥＳが変換される。念のため、変換処理モジュールは、残差ブロックＲＥＳよりも小さいサイズの変換ブロックに対して動作し、変換処理モジュールは、１組の対応する変換ブロックＴＣＯＥＦを送出する。例えば、レート／歪み最適化を実行して、大きな変換ブロックを使用すべきか、それともより小さな変換ブロックを使用すべきかを判断し得る。ＨＥＶＣコーダの場合、変換処理モジュールは、変換ユニット（ＴＵ）と呼ばれるブロックに対して動作する。
【０１８２】
次に、送出された各変換ブロックＴＣＯＥＦは、量子化モジュールが量子化残差変換係数の量子化変換ブロックＱＣＯＥＦを送出することによって量子化される。
【０１８３】
次に、ブロックＱＣＯＥＦのシンタックス要素及び量子化残差変換係数は、エントロピー符号化モジュールに入力されて、ビットストリームＳＴＲの符号化ビデオデータを送出する。
【０１８４】
量子化変換ブロックＱＣＯＥＦの量子化残差変換係数は、量子化変換係数のブロックＴＣＯＥＦＦ’を送出する逆量子化モジュールによって処理される。ブロックＴＣＯＥＦ’は逆変換モジュールに渡されて、残差予測ＲＥＳ’のブロックを再構築する。
【０１８５】
次に、ブロックＢＬＫを再構築したものであるＲＦＣが、予測ブロックＰＲＥＤを再構築された残差予測ブロックＲＥＳ’に加算することによって得られる。再構築ブロックＲＥＣは、ピクチャＩを復号したものＩ’を再構築するためにピクチャ再構築モジュールにより後に使用されるように、メモリに記憶される。ピクチャＩの全てのブロックＢＬＫが符号化されると、ピクチャ再構築モジュールは、再構築ブロックＲＥＣからピクチャＩを復号したものＩ’の再構築を実行する。任意選択的に、デブロックフィルタリングを再構築ピクチャＩ’に適用して、再構築ブロック間のブロックアーチファクトを除去し得る。
【０１８６】
再構築ピクチャＩ’が再構築され、最終的にデブロックされると、生成された再構築ピクチャは、符号化する１組のピクチャの後続ピクチャを符号化するための基準ピクチャとして後に使用するように、基準ピクチャメモリに追加される。
【０１８７】
次に、上述した符号化プロセスから生成されたビットストリームは、ビットストリームＳＴＲから復号された全方位ビデオの没入型レンダリングのために、データネットワークを介して送信され、又はメモリに記憶される。
【０１８８】
上で開示された方法の実施形態のいずれか１つは、本開示の一実施形態により、以下に開示される等の全方位ビデオを表すビットストリームを復号する例示的なデコーダにおいて実施することができる。
【０１８９】
図１７は、本原理を使用して符号化されたビットストリームを復号するように構成された例示的なビデオデコーダ方法を示す概略ブロック図である。上記２Ｄピクチャへの全方位ビデオの投影を表す符号化ピクチャを表すビットストリームＳＴＲは、上記２Ｄピクチャの少なくとも１つの現在ブロックＢＬＫを表す符号化データを含む。そのような現在ブロックは、本開示の一実施形態により符号化されたものであり得る。
【０１９０】
一実施形態によれば、ビットストリームＳＴＲは、投影関数に関連する情報項目を表す符号化データを含むこともできる。
【０１９１】
本明細書に開示されるビデオデコーダ７００は、ＨＥＶＣビデオ符号化標準に従ってピクチャの復号を実行する。しかしながら、本原理は任意のビデオ符号化標準に容易に適用することができる。
【０１９２】
ビデオデコーダ７００は、ビットストリームから符号化ピクチャをピクチャごとに復号し、ブロックごとに各ピクチャを復号することにより全方位ビデオの再構築を実行する。使用されるビデオ圧縮方式に従って、ピクチャ単位又はブロック単位のいずれかでビットストリームを復号するのに並列処理を使用し得る。したがって、ピクチャＩ’は、以下のように、圧縮されたビットストリームから再構築される。
【０１９３】
符号化データは、ピクチャＩ’のブロックを再構築するために、ビデオデコーダ７００のビデオ復号モジュールに渡される。
【０１９４】
図１７に示されるように、符号化データはエントロピー復号モジュールに渡され、エントロピー復号モジュールは、エントロピー復号を実行し、量子化変換係数のブロックＱＣＯＥＦを逆量子化モジュールに送出し、シンタックス要素を予測モジュールに送出する。
【０１９５】
エントロピー復号後、量子化変換係数のブロックＱＣＯＥＦは、逆量子化モジュールによって逆量子化されて、逆量子化変換係数のブロックＴＣＯＥＦ’を送出する。
【０１９６】
逆量子化変換係数のブロックＴＣＯＥＦ’は、残差予測ブロックＲＥＳ’を送出する逆変換モジュールによって逆変換される。
【０１９７】
予測モジュールは、シンタックス要素に従って、現在ブロックがインター予測された場合、動き補償モジュールを使用し、現在ブロックが空間的に予測された場合、イントラ予測モジュールを使用して予測ブロックＰＲＥＤを構築する。
【０１９８】
現在ブロックＢＬＫのインター予測の場合、予測モジュールは、上で開示した本原理の任意の実施形態による、現在ブロックＢＬＫの近傍ブロックの動きベクトル予測子を適応させる方法を実行し得る。幾つかの動きベクトル予測子が利用可能な場合、例えば、現在ブロックが、左ブロック、上部ブロック、又は左上ブロック等の利用可能な幾つかの近傍ブロックを有する場合、現在ブロックＢＬＫの符号化に利用可能な各動きベクトル予測子は、上述したように適応される。次に、利用可能な各動きベクトル予測子の適応動きベクトル予測子が得られる。その結果生成された適応動きベクトル予測子は次に、現在ブロックＢＬＫの動きベクトル予測子として従来通りに使用される。
【０１９９】
例えば、現在ブロックＢＬＫの適応動きベクトル予測子ｄＰは、ビットストリームから復号された動きベクトル残差を適応動きベクトル予測子ｄＰに追加することにより、現在ブロックＢＬＫの動きベクトルｍｖの再構築に使用し得る。
【０２００】
別の実施形態によれば、現在ブロックＢＬＫに推定される動きベクトルを予測するために、動きベクトル予測子リストが構築される。次に、動きベクトル予測子は、このリストから選択され、選択された動きベクトル予測子をデコーダに示すデータがビットストリームに符号化される。そのようなデータの符号化コストを低減するために、リストの枝刈り適応が実行される。この枝刈り適応中、幾つかの動きベクトルは、リストに既にある動きベクトルに等しい場合、リストから削除される。
【０２０１】
この実施形態によれば、上で開示された任意の実施形態による動きベクトル予測子の修正後、リストの動きベクトルの比較が実行される。
【０２０２】
適応動きベクトル予測子ｄＰは、ブロックＢＬＫの予測ブロック残差を計算するために、全方位ビデオの基準サーフェスを表す２Ｄ基準フレームにおいて現在ブロックＢＬＫを動き補償することにより、現在ブロックＢＬＫを予測するのに使用することもできる。
【０２０３】
適応動きベクトル予測子ｄＰは、現在ブロックＢＬＫの予測に使用することもできる。予測ブロックＰＲＥＤは、適応動きベクトル予測子を使用して全方位ビデオの基準サーフェスを表す２Ｄ基準フレームにおいて現在ブロックＢＬＫを動き補償することにより計算し得る。
【０２０４】
次に、予測ブロックＰＲＥＤを再構築残差予測ブロックＲＥＳ’に追加することにより、再構築ブロックＲＥＣが得られる。再構築ブロックＲＥＣは、復号ピクチャＩ’を再構築するピクチャ再構築モジュールにより後に使用されるように、メモリに記憶される。ピクチャＩの全てのブロックが復号されると、ピクチャ再構築モジュールは、再構築ブロックＲＥＣからの復号ピクチャＩ’の再構築を実行する。任意選択的に、デブロックフィルタリングを再構築ピクチャＩ’に適用して、再構築ブロック間のブロックアーチファクトを除去し得る。
【０２０５】
次に、再構築ピクチャＩ’は基準ピクチャメモリに追加されて、復号する１組のピクチャの後続ピクチャを復号するための基準ピクチャとして後に使用される。
【０２０６】
次に、図２０を用いて以下に開示されるように、再構築ピクチャＩ’は、メモリに記憶されるか、又はビデオデコーダ装置７００により没入型レンダリングデバイス（１８１０）に出力される。ビデオデコーダ装置７００は、没入型レンダリングデバイス（１８１０）に含まれてもよい。その場合、再構築ピクチャＩ’は、デコーダ装置により没入型レンダリングデバイス（１８１０）の表示モジュールに出力される。
【０２０７】
実施される没入型レンダリングシステムに従って、開示されるデコーダ装置は、本明細書に開示される等の没入型レンダリングシステムの処理デバイスのいずれか１つ、例えば、コンピュータ（１８４０）、ゲームコンソール、スマートフォン、没入型レンダリングデバイス（１８１０）、又は没入型ウォールに含まれ得る。
【０２０８】
装置デコーダ７００は、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの組合せとして実施し得る。
【０２０９】
図１８は、一実施形態による、全方位ビデオを符号化する装置（４００）の簡易化された構造を示す。そのような装置は、本明細書において上述した本原理による、全方位ビデオを符号化する方法を実施するように構成される。
【０２１０】
一実施形態によれば、エンコーダ装置は、例えば、プロセッサが備えられ、メモリＭＥＭに記憶されたコンピュータプログラムＰＧによって駆動され、本原理による全方位ビデオを符号化する方法を実施する処理ユニットＰＲＯＣを含む。
【０２１１】
初期化時、コンピュータプログラムＰＧのコード命令は、例えば、ＲＡＭ（図示せず）にロードされ、次に、処理ユニットＰＲＯＣのプロセッサによって実行される。処理ユニットＰＲＯＣのプロセッサは、コンピュータプログラムＰＧの命令に従って、本明細書において上述した全方位ビデオを符号化する方法のステップを実施する。
【０２１２】
エンコーダ装置は、符号化ビットストリームＳＴＲをデータネットワークに送信する通信ユニットＣＯＭＯＵＴを含む。
【０２１３】
エンコーダ装置は、符号化するピクチャ又は符号化する全方位ビデオを受信するインターフェースＣＯＭＩＮも含む。
【０２１４】
図１９は、一実施形態による、全方位ビデオを表すビットストリームを復号する装置（７００）の簡易化された構造を示す。そのような装置は、本明細書において上述した本原理による、全方位ビデオを表すビットストリームを復号する方法を実施するように構成される。
【０２１５】
一実施形態によれば、デコーダ装置は、例えば、プロセッサが備えられ、メモリＭＥＭに記憶されたコンピュータプログラムＰＧによって駆動され、本原理による全方位ビデオを表すビットストリームを復号する方法を実施する処理ユニットＰＲＯＣを含む。
【０２１６】
初期化時、コンピュータプログラムＰＧのコード命令は、例えば、ＲＡＭ（図示せず）にロードされ、次に、処理ユニットＰＲＯＣのプロセッサによって実行される。処理ユニットＰＲＯＣのプロセッサは、コンピュータプログラムＰＧの命令に従って、本明細書において上述した全方位ビデオを表すビットストリームを復号する方法のステップを実施する。
【０２１７】
装置は、ビデオデータの再構築されたピクチャをレンダリングデバイスに送信する通信ユニットＣＯＭＯＵＴを含む。
【０２１８】
装置は、データネットワーク、ゲートウェイ、又はセットトップボックスから復号する全方位ビデオを表すビットストリームＳＴＲを受信するインターフェースＣＯＭＩＮも含む。
【０２１９】
装置４００及び７００は、別個のデバイスに又は受信機及び送信機の両方として機能する同じデバイスに配置し得る。
【０２２０】
図２０は、本原理の例示的な実施形態の様々な態様を実施し得る例示的なシステム１７００のブロック図を示す。システム１７００は、後述する様々な構成要素を含むデバイスとして実施し得、上述したプロセスを実行するように構成される。そのようなデバイスの例としては、限定ではなく、ＨＭＤ、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルテレビジョン受信機、パーソナルビデオ記録システム、接続された家電、及びサーバが挙げられる。システム１７００はセンサを含み得、図２０に示され、当業者に既知のように、通信チャネルを介して他の同様のシステムに通信可能に結合されて、上述した例示的なビデオシステムを実施し得る。
【０２２１】
システム１７００は、上述したように様々なプロセスを実施する、内部に配置された命令を実行するように構成される少なくとも１つのプロセッサ１７１０を含み得る。プロセッサ１７１０は、組み込みメモリ、入出力インターフェース、及び当分野で既知の様々な他の回路を含み得る。システム１７００は、少なくとも１つのメモリ１７２０（例えば、揮発性メモリデバイス、不揮発性メモリデバイス）を含むこともできる。システム１７００は、記憶装置１７４０を更に含み得、記憶装置１７４０は、限定ではなく、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、磁気ディスクドライブ、及び／又は光学ディスクドライブを含む不揮発性メモリを含み得る。記憶装置１７４０は、非限定的な例として、内部記憶装置、取り付けられた記憶装置、及び／又はネットワークアクセス可能な記憶装置を含み得る。システム１７００は、データを処理して、符号化ビデオ又は復号ビデオを提供するように構成されるエンコーダ／デコーダモジュール１７３０を含むこともできる。
【０２２２】
エンコーダ／デコーダモジュール１７３０は、デバイスに含まれ得、符号化機能及び／又は復号機能を実行するモジュールを表す。エンコーダ４００及びデコーダ７００は、エンコーダ／デコーダモジュール１７３０において使用し得る。既知のように、デバイスは、符号化モジュール及び復号モジュールの一方又は両方を含み得る。更に、エンコーダ／デコーダモジュール１７３０は、システム１７００の別個の要素として実施されてもよく、又は当業者に既知のように、ハードウェアとソフトウェアとの組合せとしてプロセッサ１７１０内に組み込まれてもよい。
【０２２３】
システム１７００は、ディスプレイ（１７９０）を更に含み得、又は通信チャネルを介してディスプレイに通信可能に結合し得る。ディスプレイは、例えば、ＯＬＥＤ型又はＬＣＤ型である。ディスプレイは没入型（プロジェクション）ウォールであることもでき、これは通常、巨大なサイズである。
【０２２４】
システム１７００は、タッチ面１７８０（例えば、タッチパッド又は触覚スクリーン）及びカメラ１７７０を更に含み得る。プロセッサ１７１０は、システム１７００の一部であることもあれば、又はないこともあるセンサから受信される信号を処理し得る。センサからの測定値の幾つかは、システム１７００の姿勢又はシステム１７００に接続された別のデバイスの姿勢を計算するのに使用することができる。カメラ１７７０は、画像処理のために環境の画像を捕捉し得る。プロセッサ１７１０は、図１に記載のように、前処理機能及び後処理機能を実行することもできる。
【０２２５】
プロセッサ１７１０にロードされて、上述した様々なプロセスを実行するプログラムコードは、記憶装置１７４０に記憶され、続けて、プロセッサ１７１０による実行のためにメモリ１７２０にロードし得る。本原理の例示的な実施形態によれば、プロセッサ１７１０、メモリ１７２０、記憶装置１７４０、及びエンコーダ／デコーダモジュール１７３０の１つ又は複数は、限定ではなく、入力ビデオ、ビットストリーム、式、公式、行列、変数、演算、及び演算論理を含め、本明細書において上述したプロセスの実行中、様々なアイテムの１つ又は複数を記憶し得る。
【０２２６】
システム１７００は、通信チャネル１７６０を介して他のデバイスと通信できるようにする通信インターフェース１７５０を含むこともできる。通信インターフェース１７５０は、限定ではなく、通信チャネル１７６０とデータを送受信するように構成される送受信機を含み得る。通信インターフェースは、限定ではなく、モデム又はネットワークカードを含み得、通信チャネルは、有線及び／又は無線媒体内で実施し得る。システム１７００の様々な構成要素は、限定ではなく、内部バス、ワイヤ、及びプリント回路基板を含め、適した様々な接続を使用して接続又は通信可能に一緒に結合し得る。
【０２２７】
本原理による例示的な実施形態は、プロセッサ１７１０により実施されるコンピュータソフトウェア、ハードウェア、又はハードウェアとソフトウェアとの組合せによって実行し得る。非限定的な例として、本原理による例示的な実施形態は、１つ又は複数の集積回路によって実施し得る。メモリ１７２０は、技術環境に適した任意のタイプであり得、非限定的な例として、光学メモリデバイス、磁気メモリデバイス、半導体ベースのメモリデバイス、固定メモリ、及びリムーバブルメモリ等の任意の適切なデータ記憶技術を使用して実施し得る。プロセッサ１７１０は、技術環境に適切な任意のタイプであり得、非限定的な例として、マイクロプロセッサ、汎用コンピュータ、専用コンピュータ、マルチコアアーキテクチャに基づくプロセッサの１つ又は複数を含み得る。
【０２２８】
様々な方法が上述され、各方法は、記載の方法を達成する１つ又は複数のステップ又は動作を含む。ステップ又は動作の特定の順序が、方法の適宜動作に必要とされる場合を除き、特定のステップ及び／又は動作の順序及び／又は使用は、変更又は結合し得る。
【０２２９】
本明細書に記載される実施態様は、例えば、方法若しくはプロセス、装置、ソフトウェアプログラム、データストリーム、又は信号で実施し得る。一形態の実施態様の文脈でのみ考察される（例えば、方法としてのみ考察される）場合であってさえも、考察された特徴の実施態様は、他の形態（例えば、装置又はプログラム）で実施することもできる。装置は、例えば、適切なハードウェア、ソフトウェア、及びファームウェアで実施し得る。方法は、例えば装置、例えば、コンピュータ、マイクロプロセッサ、集積回路、又はプログラマブル論理デバイスを含め、例えば、一般に処理デバイスを指すプロセッサ等の装置で実施し得る。プロセッサは、例えば、コンピュータ、携帯電話、ポータブル／個人情報端末（「ＰＤＡ」）、及びエンドユーザ間の情報の通信を促進する他のデバイス等の通信デバイスも含む。
【０２３０】
本原理の「一実施形態」、「実施形態」、「一実施態様」、又は「実施態様」、及びその他の変形の言及は、実施形態に関連して記載される特定の特徴、構造、特性等が、本原理の少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書全体を通して様々な場所に出現する語句「一実施形態における」、「実施形態における」、「一実施態様における」、又は「実施態様における」、及び任意の他の変形の出現は、必ずしも全て同じ実施形態を指すわけはない。更に、本願又は本願の特許請求の範囲は、様々な情報を「決定すること」を言及し得る。情報の決定は、例えば、情報の推定、情報の計算、情報の予測、又はメモリからの情報の検索の１つ又は複数を含み得る。
【０２３１】
更に、本願又は本願の特許請求の範囲は、様々な情報に「アクセス」することを言及し得る。情報へのアクセスは、例えば、情報の受信、情報の検索（例えば、メモリからの）、情報の記憶、情報の処理、情報の送信、情報の移動、情報のコピー、情報の消去、情報の計算、情報の決定、情報の予測、又は情報の推定の１つ又は複数を含み得る。
【０２３２】
更に、本願又は本願の特許請求の範囲は、様々な情報を「受信」することを言及し得る。受信は、「アクセス」と同様に、広義の用語であることが意図される。情報の受信は、例えば、情報のアクセス又は情報の検索（例えば、メモリからの）の１つ又は複数を含み得る。更に、「受信」は通常、何らかの形で、例えば、情報の記憶、情報の処理、情報の送信、情報の移動、情報のコピー、情報の消去、情報の計算、情報の決定、情報の予測、又は情報の推定等の動作中、関わり得る。
【０２３３】
当業者には明らかなように、実施態様は、例えば、記憶又は送信し得る情報を搬送するようにフォーマットされた多種多様な信号を生成し得る。情報は、例えば、方法を実行する命令又は記載された実施態様の１つにより生成されるデータを含み得る。例えば、信号は、記載された実施形態のビットストリームを搬送するようフォーマットし得る。そのような信号は、例えば、電磁波（例えば、スペクトルの無線周波部分を使用して）又はベースバンド信号としてフォーマットし得る。フォーマットは、例えば、データストリームを符号化し、符号化されたデータストリームで搬送波を変調することを含み得る。信号が搬送する情報は、例えば、アナログ情報又はデジタル情報であり得る。信号は、既知のように、多種多様な様々な有線又は無線リンクを介して伝送し得る。信号は、プロセッサ可読媒体に記憶し得る。
【図１】
2019534616.tif 000018
【図２Ａ】
2019534616.tif 000019
【図２Ｂ】
2019534616.tif 000020
【図２Ｃ】
2019534616.tif 000021
【図３Ａ】
2019534616.tif 000022
【図３Ｂ】
2019534616.tif 000023
【図３Ｃ】
2019534616.tif 000024
【図３Ｄ】
2019534616.tif 000025
【図４Ａ】
2019534616.tif 000026
【図４Ｂ】
2019534616.tif 000027
【図５Ａ】
2019534616.tif 000028
【図５Ｂ】
2019534616.tif 000029
【図６】
2019534616.tif 000030
【図７】
2019534616.tif 000031
【図８Ａ】
2019534616.tif 000032
【図８Ｂ】
2019534616.tif 000033
【図９Ａ】
2019534616.tif 000034
【図９Ｂ】
2019534616.tif 000035
【図１０】
2019534616.tif 000036
【図１１】
2019534616.tif 000037
【図１２Ａ】
2019534616.tif 000038
【図１２Ｂ】
2019534616.tif 000039
【図１３Ａ】
2019534616.tif 000040
【図１３Ｂ】
2019534616.tif 000041
【図１４】
2019534616.tif 000042
【図１５】
2019534616.tif 000043
【図１６】
2019534616.tif 000044
【図１７】
2019534616.tif 000045
【図１８】
2019534616.tif 000046
【図１９】
2019534616.tif 000047
【図２０】
2019534616.tif 000048
【図２１】
2019534616.tif 000049
【図２２】
2019534616.tif 000050
【図２３】
2019534616.tif 000051
【図２４】
2019534616.tif 000052
【図２５】
2019534616.tif 000053
【図２６】
2019534616.tif 000054
【図２７】
2019534616.tif 000055
【図２８】
2019534616.tif 000056
【図２９】
2019534616.tif 000057
【図３０】
2019534616.tif 000058
【図３１】
2019534616.tif 000059
【国際調査報告】
2019534616.tif 000060
2019534616.tif 000061