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

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

▶ インターデジタル マディソン パテント ホールディングスの特許一覧

特許7008903適応イントラ予測による全方位映像符号化および復号のための方法および装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-14
(45)【発行日】2022-01-25
(54)【発明の名称】適応イントラ予測による全方位映像符号化および復号のための方法および装置
(51)【国際特許分類】
   H04N 19/593 20140101AFI20220118BHJP
   H04N 19/597 20140101ALI20220118BHJP
   H04N 19/70 20140101ALI20220118BHJP
【FI】
H04N19/593
H04N19/597
H04N19/70
【請求項の数】 20
(21)【出願番号】P 2019516216
(86)(22)【出願日】2017-09-28
(65)【公表番号】
(43)【公表日】2019-10-17
(86)【国際出願番号】 EP2017074672
(87)【国際公開番号】W WO2018060358
(87)【国際公開日】2018-04-05
【審査請求日】2020-09-25
(31)【優先権主張番号】16306269.8
(32)【優先日】2016-09-30
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】319002876
【氏名又は名称】インターデジタル マディソン パテント ホールディングス, エスアーエス
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】ラケイプ,ファビアン
(72)【発明者】
【氏名】ギャルピン,フランク
(72)【発明者】
【氏名】ボルデ,フィリップ
【審査官】岩井 健二
(56)【参考文献】
【文献】特表2014-507857(JP,A)
【文献】米国特許出願公開第2016/0112704(US,A1)
【文献】Philippe Hanhart, Yuwen He, and Yan Ye,AHG8: Reference samples derivation using geometry padding for intra coding,Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-D0092,4th Meeting: Chengdu, CN,2016年10月,pp.1-6
【文献】中馬 高明 他,円弧に沿った両方向イントラ予測の検討,PCSJ/IMPS 2014,2014年,P-2-05 ,pp.1-2
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
映像データを符号化する方法であって、
符号化に適した第1のフォーマットで表現される2Dピクチャであり、第2のフォーマットでレンダリングするための前記2Dピクチャの第1のブロックに関するイントラ予測のための方向性モードであって、前記第2のフォーマットにレンダリングするためのレンダリング空間内の前記方向性モードにアクセスすることと
前記第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定することと
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬することと
前記方向性モードを符号化することと、
前記第1のブロックと前記予測されたブロックとの差を符号化することと、
含む、方法。
【請求項2】
前記第1のフォーマットと前記第2のフォーマットとの間のマッピングは、ビットストリームでシグナリングされる、請求項1に記載の方法。
【請求項3】
前記第1のブロックにおける第1のサンプル位置を、前記2Dピクチャ内の前記第1のブロックに対応する前記レンダリング空間内の第2のブロックにおける第2のサンプル位置へマッピングすることと、
前記第2のサンプル位置および前記方向性モードに基づいて、前記レンダリング空間内の前記第2のブロックに隣接する第3の位置を決定することと、
前記2Dピクチャ内の前記第1のブロックに隣接する第4の位置へ前記第3の位置をマッピングすることと、
を更に含み、前記第4の位置におけるサンプルは、前記ブロックにおける前記第1のサンプル位置を予測するための参照サンプルとして用いられる、請求項1に記載の方法。
【請求項4】
記第2のブロックに隣接する前記第3の位置を決定することは、前記レンダリング空間内の前記方向性モードに基づく、請求項3に記載の方法。
【請求項5】
前記方向性モードおよび前記2Dピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付けるルックアップテーブルにアクセスすること
を更に含む、請求項1に記載の方法。
【請求項6】
第2のブロックに関するルックアップテーブルは、前記第2のブロックが前記第1のブロックよりも小さい場合、前記第1のブロックに関する前記ルックアップテーブルの左上部分である、請求項5に記載の方法。
【請求項7】
前記方向性モードおよび前記2Dピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付ける関数の1または複数のパラメータにアクセスすることを更に含む、請求項1に記載の方法。
【請求項8】
映像データを符号化する装置であって、
符号化に適した第1のフォーマットで表現される2Dピクチャであり、第2のフォーマットでレンダリングするための前記2Dピクチャの第1のブロックに関するイントラ予測のための方向性モードであって、前記第2のフォーマットにレンダリングするためのレンダリング空間内の前記方向性モードにアクセスし、
前記第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定し、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬し、
前記方向性モードを符号化し、
前記第1のブロックと前記予測されたブロックとの差を符号化する
ように構成された1または複数のプロセッサを備える、装置。
【請求項9】
前記1または複数のプロセッサは更に、前記第1のブロックにおける第1のサンプル位置を、前記2Dピクチャ内の前記第1のブロックに対応するレンダリング空間内の第2のブロックにおける第2のサンプル位置へマッピングし、
前記第2のサンプル位置および前記方向性モードに基づいて、前記レンダリング空間内の前記第2のブロックに隣接する第3の位置を決定し、
前記2Dピクチャ内の前記第1のブロックに隣接する第4の位置へ前記第3の位置をマッピングするように構成され、前記第4の位置におけるサンプルは、前記ブロックにおける前記第1のサンプル位置を予測するための参照サンプルとして用いられる、請求項8に記載の装置。
【請求項10】
前記第2のブロックに隣接する前記第3の位置を決定することは、前記レンダリング空間内の前記方向性モードに基づく、請求項9に記載の装置。
【請求項11】
前記1または複数のプロセッサは更に、
前記方向性モードおよび前記2Dピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付けるルックアップテーブルにアクセスするように構成される、請求項8に記載の装置。
【請求項12】
映像データを復号する方法であって、
デコーダ出力のために第1のフォーマットで表現される2Dピクチャであって、復号されたバージョンを第2のフォーマットでレンダリングするための前記2Dピクチャの第1のブロックに関するイントラ予測のための方向性モードであって、前記第2のフォーマットにレンダリングするためのレンダリング空間内の前記方向性モードにアクセスすることと、
前記第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定することと、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬することと、
前記予測されたブロックを用いて前記第1のブロックを復号することと、
を含む、方法。
【請求項13】
前記2Dピクチャの前記復号されたバージョンは、前記マッピングに対応する逆マッピングによって表示ピクチャを生成するために用いられる、請求項12に記載の方法。
【請求項14】
前記第1のブロックにおける第1のサンプル位置を、前記2Dピクチャ内の前記第1のブロックに対応する前記レンダリング空間内の第2のブロックにおける第2のサンプル位置へマッピングすることと、
前記第2のサンプル位置および前記方向性モードに基づいて、前記レンダリング空間内の前記第2のブロックに隣接する第3の位置を決定することと、
前記2Dピクチャ内の前記第1のブロックに隣接する第4の位置へ前記第3の位置をマッピングすることと、
を更に含み、前記第4の位置におけるサンプルは、前記ブロックにおける前記第1のサンプル位置を予測するための参照サンプルとして用いられる、請求項12に記載の方法。
【請求項15】
前記第2のブロックに隣接する前記第3の位置を決定することは、前記レンダリング空間内の前記方向性モードに基づく、請求項14に記載の方法。
【請求項16】
前記方向性モードおよび前記2Dピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付けるルックアップテーブルにアクセスすること
を更に含む、請求項12に記載の方法。
【請求項17】
前記方向性モードおよび前記2Dピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付ける関数の1または複数のパラメータにアクセスすることを更に含む、請求項12に記載の方法。
【請求項18】
映像データを復号する装置であって、
デコーダ出力のために第1のフォーマットで表現される2Dピクチャであって、復号されたバージョンを第2のフォーマットでレンダリングするための前記2Dピクチャの第1のブロックに関するイントラ予測のための方向性モードであって、前記第2のフォーマットにレンダリングするためのレンダリング空間内の前記方向性モードにアクセスし、
前記第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定し、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬し、
前記予測されたブロックを用いて前記第1のブロックを復号する
ように構成された1または複数のプロセッサを備える、装置。
【請求項19】
前記1または複数のプロセッサは更に、
前記第1のブロックにおける第1のサンプル位置を、前記2Dピクチャ内の前記第1のブロックに対応するレンダリング空間内の第2のブロックにおける第2のサンプル位置へマッピングし、
前記第2のサンプル位置および前記方向性モードに基づいて、前記レンダリング空間内の前記第2のブロックに隣接する第3の位置を決定し、
前記2Dピクチャ内の前記第1のブロックに隣接する第4の位置へ前記第3の位置をマッピングする
ように構成され、前記第4の位置におけるサンプルは、前記ブロックにおける前記第1のサンプル位置を予測するための参照サンプルとして用いられる、請求項18に記載の装置。
【請求項20】
前記第2のブロックに隣接する前記第3の位置を決定することは、前記レンダリング空間内の前記方向性モードに基づく、請求項19に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本実施形態は一般に、映像符号化および復号のための方法および装置に関し、特に、適応イントラ予測による映像符号化および復号のための方法および装置に関する。
【背景技術】
【0002】
[0002] 昨今、利用可能な広視野コンテンツ(最大360°)は増加している。そのようなコンテンツは、たとえば頭部搭載型ディスプレイ(HMD)、スマートグラス、PCスクリーン、タブレット、スマートフォンなどの没入型表示デバイスにおいてコンテンツを視聴するユーザによって完全に可視ではない可能性がある。すなわち、所与の瞬間に、ユーザはコンテンツの一部しか見ていないことがある。しかし、ユーザは一般に、たとえば頭部運動、マウス運動、タッチスクリーン、音声などの様々な手段によってコンテンツ内で操縦することができる。一般に、このコンテンツを符号化および復号することが望ましい。
【発明の概要】
【課題を解決するための手段】
【0003】
[0003] 本原理の一般態様によると、映像データを符号化する方法が提示され、方法は、ピクチャの第1のブロックに関するイントラ予測のための方向性モードにアクセスすることと、第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定することと、第1のブロックに関する予測されたブロックを形成するために、アクセスされた方向性モードに基づく非直曲線に沿って、複数の参照サンプルの各々を第1のブロック内のサンプル位置のセットへ伝搬することと、方向性モードを符号化することと、第1のブロックと予測されたブロックとの差を符号化することと、を備える。
【0004】
[0004] 本原理の他の態様によると、映像データを符号化する装置が提供され、装置は、少なくとも1つのメモリと、ピクチャの第1のブロックに関するイントラ予測のための方向性モードにアクセスし、第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定し、第1のブロックに関する予測されたブロックを形成するために、アクセスされた方向性モードに基づく非直曲線に沿って、複数の参照サンプルの各々を第1のブロック内のサンプル位置のセットへ伝搬し、方向性モードを符号化し、第1のブロックと予測されたブロックとの差を符号化するように構成された1または複数のプロセッサと、を備える。
【0005】
[0005] ピクチャは第1のフォーマットで表現されてよく、そのピクチャに関連する取得されたピクチャは、第2のフォーマットで表現され得る。非直曲線は、第1のフォーマットと第2のフォーマットとの間のマッピングに更に基づいてよい。第1のフォーマットは2D長方形フォーマットであってよく、第2のフォーマットは3D球体フォーマットまたはキューブフォーマットであってよく、マッピングは、エクイレクタングラーマッピング、キューブマッピング、ピラミッド形マッピング、正二十面体マッピング、または八面体マッピングであってよい。取得されたピクチャは、マッピングを通してピクチャを生成するために用いられ得る。第1のフォーマットと第2のフォーマットとの間のマッピングは、ビットストリームでシグナリングされ得る。
【0006】
[0006] 本原理の他の一般態様によると、映像データを復号する方法が提示され、方法は、ピクチャの第1のブロックに関するイントラ予測のための方向性モデルにアクセスすることと、第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定することと、第1のブロックに関する予測されたブロックを形成するために、アクセスされた方向性モードに基づく非直曲線に沿って、複数の参照サンプルの各々を第1のブロック内のサンプル位置のセットへ伝搬することと、予測されたブロックを用いて第1のブロックを復号することと、を備える。
【0007】
[0007] 本原理の他の態様によると、映像データを復号する装置が提供され、装置は、少なくとも1つのメモリと、ピクチャの第1のブロックに関するイントラ予測のための方向性モデルにアクセスし、第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定し、第1のブロックに関する予測されたブロックを形成するために、アクセスされた方向性モードに基づく非直曲線に沿って、複数の参照サンプルの各々を第1のブロック内のサンプル位置のセットへ伝搬し、予測されたブロックを用いて第1のブロックを復号するように構成された1または複数のプロセッサと、を備える。
【0008】
[0008] 復号されたピクチャは、第1のフォーマットで表現されてよく、復号されたピクチャに関連する表示ピクチャは、第2のフォーマットで表現され得る。非直曲線は、第1のフォーマットと第2のフォーマットとの間のマッピングに更に基づいてよい。第1のフォーマットは2D長方形フォーマットであってよく、第2のフォーマットは3D球体フォーマットまたはキューブフォーマットであってよく、マッピングは、エクイレクタングラーマッピング、キューブマッピング、ピラミッド形マッピング、正二十面体マッピング、または八面体マッピングであってよい。復号されたピクチャは、逆マッピングを通して表示ピクチャを生成するために用いられ得る。
【0009】
[0009] 予測のための参照サンプルを決定するために、第1のブロック内の第1のサンプル位置は、レンダリング空間における第2のブロック内の第2のサンプル位置にマッピングされてよく、レンダリング空間における第2のブロックは、ピクチャにおける第1のブロックに対応し、第2のサンプル位置および方向性モードに基づいて、第2のブロックに隣接する第3の位置がレンダリング空間において決定され、その後、第3の位置は、ピクチャ内の第1のブロックに隣接する第4の位置へマッピングされてよく、第4の位置におけるサンプルは、ブロック内の第1のサンプル位置を予測するための参照サンプルとして用いられる。方向性モードに対応する方向は、レンダリング空間において他の方向に変換されてよく、第2のブロックに隣接する第3の位置は、他の方向に基づき決定され得る。
【0010】
[0010] 計算を迅速化するために、ルックアップテーブルは、予測される第1のブロック内のサンプル位置を、対応する参照サンプル位置に関連付けてよい。ルックアップは、方向性モードおよびピクチャ内の第1のブロックの位置およびサイズに依存してよい。第2のブロックに関するルックアップテーブルは、第2のブロックが第1のブロックよりも小さい場合、第1のブロックに関するルックアップテーブルの副部分、たとえば左上部分であってよい。
【0011】
[0011] 他の実施形態において、関数は、予測される第1のブロック内のサンプル位置を、対応する参照サンプル位置に関連付けてよく、関数の1または複数のパラメータは、方向性モードおよびピクチャ内の第1のブロックの位置およびサイズに依存してよい。
【0012】
[0012] 本原理の他の態様によると、ビットストリームは、ピクチャの第1のブロックに関して符号化されたイントラ予測のための方向性モードと、ピクチャの第1のブロックと第1のブロックに関する予測されたブロックとの間の差の符号化とを含むようにフォーマット化され、予測されたブロックは、非直曲線に沿って、複数の参照サンプルの各々を第1のブロック内のサンプル位置のセットへ伝搬することによって形成され、非直曲線は、アクセスされた方向性モードに基づき、複数の参照サンプルは、第1のブロックに隣接する再構成ブロック内にある。
【0013】
[0013] 本実施形態は、上述した方法に従って映像データを符号化または復号するための装置も提供する。本実施形態は、上述した方法に従って生成されたビットストリームを伝送するための装置も提供する。
【0014】
[0014] 本実施形態は、上述した方法に従って映像データを符号化または復号するための命令が格納されたコンピュータ可読記憶媒体も提供する。本実施形態は、上述した方法に従って生成されたビットストリームが格納されたコンピュータ可読記憶媒体も提供する。
【図面の簡単な説明】
【0015】
図1】[0015]本原理の実施形態に係る、全方位映像を符号化および復号するための典型的なシステムを示す。
図2】[0016]図2Aは、典型的な球体表面Sがエクイレクタングラー投影を用いて2DフレームFにマッピングされることを示し、図2Bは、典型的なキューブ表面がキューブマッピングを用いて図2Cに示すように2Dフレームにマッピングされることを示す。
図3】[0017]典型的な逆エクイレクタングラーマッピングを示す。
図4】[0018]図4Aは、3D表面からレンダリングされたフレームGに点が投影されることを示し、図4Bは、投影の近似を示す。
図5】[0019]典型的なHEVC映像エンコーダのブロック図を示す。
図6】[0020]図6Aは、HEVCにおいて利用可能な35のイントラ予測モードのセットを示し、図6Bは、参照サンプルが、角予測モードによって示された方向に沿ってコピーされる様子を示す。
図7】[0021]典型的なHEVC映像デコーダのブロック図を示す。
図8】[0022]レンダリングされたフレームにおける直線が、符号化されるフレームにおいて直線に見えない例を示す。
図9】[0023]本原理の実施形態に係る、イントラ予測器を配置するための典型的な実装を示す。
図10】[0024]本原理の実施形態に係る、イントラ予測のためのイントラ予測器を配置するための典型的な方法を示す。
図11】[0025]図11Aは、ブロックの中心において特定の方向に生じた曲線の例を矢印で示し、図11Bは、曲線に沿ったイントラ予測の他の例を示す。
図12】[0026]本原理の典型的な実施形態に係る、全方位映像に適用されたイントラ予測をエンコーダ側において実行するための典型的な方法を示す。
図13】[0027]HEVCに関する平面モードを示す。
図14】[0028]様々な予測角度に関して、エクイレクタングラーマッピングのための提案された新たな方向性イントラモードを用いる予測の例を示す。
図15】[0029]エクイレクタングラーフレームにおける典型的なブロックを示す。
図16】[0030]参照サンプルの位置を示す。
図17】[0031]本原理の典型的な実施形態の様々な態様が実装され得る典型的なシステムのブロック図を示す。
図18】[0032]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図19】[0033]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図20】[0034]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図21】[0035]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図22】[0036]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図23】[0037]本原理の特定の実施形態に係る、システムの第1の実施形態を表す。
図24】[0038]本原理に係るシステムの第1の実施形態を表す。
図25】[0039]本原理に係るシステムの第1の実施形態を表す。
図26】[0040]本原理に係る没入型映像レンダリングデバイスの第1の実施形態を表す。
図27】[0041]本原理に係る没入型映像レンダリングデバイスの第1の実施形態を表す。
図28】[0042]本原理に係る没入型映像レンダリングデバイスの第1の実施形態を表す。
【発明を実施するための形態】
【0016】
[0043] 広視野コンテンツは、とりわけ、3次元コンピュータグラフィック画像シーン(3D CGIシーン)、点群、または没入型映像であってよい。そのような没入型映像を意図するために、たとえば仮想現実(VR)、360、パノラマ、4π、ステラジアン、没入型、全方位、広視野など多数の用語が用いられ得る。
【0017】
[0044] 没入型映像は一般に、「通常の」映像のようにピクセル(すなわち、色情報の要素)の2次元アレイである長方形フレームに符号化された映像を指す。多くの実装において、以下のプロセスが実行され得る。レンダリングのために、フレームは最初に、マッピング表面とも称される凸面ボリューム(たとえば球体、キューブ、ピラミッド)の内側表面にマッピングされ、次に、このボリュームの一部が仮想カメラによって捕捉される。仮想カメラによって捕捉された画像は、没入型表示デバイスのスクリーンにレンダリングされる。立体映像は、1または2つの長方形フレームに符号化され、結合される2つのマッピング表面に投影され、デバイス特性に従って2つの仮想カメラによって捕捉される。
【0018】
[0045] ピクセルは、フレームにおけるマッピング機能に従って符号化され得る。マッピング機能は、マッピング表面に依存してよい。同じマッピング表面の場合、いくつかのマッピング機能が可能である。たとえば、キューブの面は、フレーム表面内の様々なレイアウトに従って構成され得る。球体は、たとえばエクイレクタングラー投影またはグノモン投影に従ってマッピングされ得る。選択された投影機能の結果生じるピクセルの組織化は、直線連続性、正規直交ローカルフレーム、ピクセル密度を変更または破壊し、時間および空間における周期性をもたらす。これらは、映像を符号化および復号するために用いられる一般的な特徴である。既存の符号化および復号方法は、通常、没入型映像の特異性を考慮に入れない。実際、没入型映像は360°映像であり得るため、たとえばパニングによって、シーンのコンテンツが変化しない時にも大量のデータの符号化を必要とする動きおよび非連続性が生み出される。没入型映像の特異性を考慮に入れて映像フレームを符号化および復号することは、符号化または復号方法に有益な利点をもたらす。
【0019】
[0046] 図1は、典型的な実施形態に係る符号化および復号システムの全体的概観を示す。図1のシステムは、機能システムである。前処理モジュール110は、符号化デバイス120によって符号化するためのコンテンツを作成してよい。前処理モジュール110は、マルチ画像取得を実行し、取得した複数の画像を共通空間(一般に、方向を符号化する場合、3D球体)において合成し、限定されるものではないがたとえばエクイレクタングラーマッピングまたはキューブマッピングを用いて、3D球体を2Dフレームにマッピングしてよい。前処理モジュール110はまた、特定のフォーマット(たとえばエクイレクタングラー)の全方位映像を入力として受け入れ得、マッピングを符号化により適したフォーマットに変更するために映像を前処理する。取得した映像データ表現に依存して、前処理モジュール110は、マッピング空間の変更を実行してよい。
【0020】
[0047] 符号化デバイス120および符号化方法は、本明細書の他の図面に関して説明される。符号化の後、たとえば没入型映像データまたは3D CGI符号化データを符号化し得るデータは、たとえばゲートウェイ内に存在する任意のネットワークインタフェースに一般的に実装され得るネットワークインタフェース130へ送信される。データはその後、たとえばインターネットなどの通信ネットワークを介して伝送されるが、他の任意のネットワークが予見され得る。その後データは、ネットワークインタフェース140を介して受信される。ネットワークインタフェース140は、ゲートウェイ、テレビ、セットトップボックス、頭部搭載型表示デバイス、没入型(投影)壁、または任意の没入型映像レンダリングデバイスに実装され得る。
【0021】
[0048] 受信後、データは、復号デバイス150へ送信される。復号機能は、以下の図18~28において説明される処理機能の1つである。復号データは、その後、プレーヤ160によって処理される。プレーヤ160は、レンダリングデバイス170のためのデータを作成し、センサまたはユーザの入力データから外部データを受信してよい。正確には、プレーヤ160は、レンダリングデバイス170によって表示しようとする映像コンテンツの一部を作成する。復号デバイス150およびプレーヤ160は、単一デバイス(たとえばスマートフォン、ゲーム機、STB、タブレット、コンピュータなど)に統合され得る。他の実施形態において、プレーヤ160は、レンダリングデバイス170に統合され得る。
【0022】
[0049] たとえば没入型映像をレンダリングする時に没入型表示デバイスの復号、再生、およびレンダリング機能を実行するために、いくつかの種類のシステムが考えられ得る。
【0023】
[0050] 拡張現実、仮想現実、または拡張仮想コンテンツを処理するための第1のシステムが図18~22に示される。そのようなシステムは、処理機能、たとえば頭部搭載型ディスプレイ(HMD)、タブレット、またはスマートフォンであってよくセンサを備え得る没入型映像レンダリングデバイスを備える。没入型映像レンダリングデバイスは、表示デバイスと処理機能との間の追加のインタフェースモジュールも備えてよい。処理機能は、1または複数のデバイスによって実行され得る。これらは、没入型映像レンダリングデバイスに統合されてよく、あるいは1または複数の処理デバイスに統合され得る。処理デバイスは、1または複数のプロセッサ、およびたとえば無線または有線通信インタフェースなどの没入型映像レンダリングデバイスとの通信インタフェースを備える。
【0024】
[0051] また処理デバイスは、たとえばインターネットなどの広域アクセスネットワークとの第2の通信インタフェースも備え、たとえばホームまたはローカルゲートウェイなどのネットワークデバイスを介して、または直接、クラウドにあるコンテンツにアクセスしてよい。処理デバイスは、たとえばイーサネットタイプのローカルアクセスネットワークインタフェースなどの第3のインタフェースを介してローカルストレージにアクセスしてもよい。実施形態において、処理デバイスは、1または複数の処理ユニットを有するコンピュータシステムであってよい。他の実施形態において、処理デバイスは、有線または無線リンクを介して没入型映像レンダリングデバイスに接続され得る、あるいは没入型映像レンダリングデバイス内のハウジングに挿入され、コネクタを介してまたは無線でこれと通信することができるスマートフォンであってよい。処理デバイスの通信インタフェースは、有線インタフェース(たとえばバスインタフェース、広域ネットワークインタフェース、ローカルエリアネットワークインタフェース)または無線インタフェース(たとえばIEEE802.11インタフェース、またはBluetooth(登録商標)インタフェースなど)である。
【0025】
[0052] 処理機能が没入型映像レンダリングデバイスによって実行される場合、ゲートウェイを介して、または直接コンテンツを受信および/または伝送するためのネットワークとのインタフェースが没入型映像レンダリングデバイスに提供され得る。
【0026】
[0053] 他の実施形態において、システムは、没入型映像レンダリングデバイスおよび処理デバイスと通信する補助デバイスを備える。そのような実施形態において、補助デバイスは、処理機能の少なくとも1つを含んでよい。
【0027】
[0054] 没入型映像レンダリングデバイスは、1または複数のディスプレイを備えてよい。デバイスは、自身のディスプレイの各々の前部において、たとえばレンズなどの光学部品を用いてよい。ディスプレイは、スマートフォンまたはタブレットのケース内など、没入型表示デバイスの一部であってもよい。他の実施形態において、ディスプレイおよび光学部品は、ユーザが装着することができるヘルメット、グラス、またはバイザーに組み込まれ得る。没入型映像レンダリングデバイスは、後述するように、いくつかのセンサを統合してもよい。没入型映像レンダリングデバイスは、いくつかのインタフェースまたはコネクタも備えてよい。没入型映像レンダリングデバイスは、センサ、処理機能、ハンドヘルドまたは他の身体部位関連デバイスまたはセンサと通信するために、1または複数の無線モジュールを備えてよい。
【0028】
[0055] 没入型映像レンダリングデバイスは、1または複数のプロセッサによって実行され、コンテンツを復号またはコンテンツを処理するように構成された処理機能も備えてよい。ここでコンテンツを処理することは、表示され得るコンテンツを作成するための全機能として理解される。これはたとえば、コンテンツを復号すること、コンテンツを表示する前に合成すること、および表示デバイスに適合するようにコンテンツを修正することを備えてよい。
【0029】
[0056] 没入型コンテンツレンダリングデバイスの機能の1つは、仮想ボリュームとして構成されたコンテンツの少なくとも一部を捕捉する仮想カメラを制御することである。システムは、仮想カメラの姿勢を処理するために、ユーザの姿勢、たとえばユーザの頭部の姿勢を全体的または部分的に追跡する姿勢追跡センサを備えてよい。いくつかの位置決めセンサは、ユーザの変位を追跡してよい。システムは、たとえば照明、温度、または音条件を測定するために、環境に関連する他のセンサも備えてよい。そのようなセンサは、たとえば発汗率または心拍数を測定するために、ユーザの身体にも関連してよい。これらのセンサによって取得された情報は、コンテンツを処理するために用いられ得る。システムは、ユーザ入力デバイス(たとえばマウス、キーボード、リモートコントロール、ジョイスティック)も備えてよい。ユーザ入力デバイスからの情報は、コンテンツを処理し、ユーザインタフェースを管理し、または仮想カメラの姿勢を制御するために用いられ得る。センサおよびユーザ入力デバイスは、有線または無線通信インタフェースを介して、処理デバイスおよび/または没入型レンダリングデバイスと通信する。
【0030】
[0057] 図18~22を用いて、拡張現実、仮想現実、拡張仮想、または拡張現実から仮想現実までの任意のコンテンツを表示するための第1の種類のシステムについて、いくつかの実施形態が説明される。
【0031】
[0058] 図18は、没入型映像を復号、処理、およびレンダリングするように構成されたシステムの特定の実施形態を示す。システムは、没入型映像レンダリングデバイス10、センサ20、ユーザ入力デバイス30、コンピュータ40、およびゲートウェイ50(任意選択)を備える。
【0032】
[0059] 図26に示す没入型映像レンダリングデバイス10は、ディスプレイ101を備える。ディスプレイは、たとえばOLEDまたはLCDタイプである。没入型映像レンダリングデバイス10は、たとえばHMD、タブレット、またはスマートフォンである。デバイス10は、タッチ表面102(たとえばタッチパッドまたは触覚スクリーン)、カメラ103、少なくとも1つのプロセッサ104と接続状態にあるメモリ105、および少なくとも1つの通信インタフェース106を備えてよい。少なくとも1つのプロセッサ104は、センサ20から受信した信号を処理する。
【0033】
[0060] センサからの測定値のいくつかは、デバイスの姿勢を計算し、仮想カメラを制御するために用いられる。姿勢推定のために用いられるセンサは、たとえばジャイロスコープ、加速度計、またはコンパスである。たとえばカメラのリグを用いる、より複雑なシステムが用いられてもよい。この場合、少なくとも1つのプロセッサは、デバイス10の姿勢を推定するために画像処理を実行する。他のいくつかの測定値は、環境条件またはユーザの反応に従ってコンテンツを処理するために用いられる。環境およびユーザを観察するために用いられるセンサは、たとえばマイクロフォン、光センサ、または接触センサである。たとえばユーザの視線を追跡するビデオカメラなどのように、より複雑なシステムが用いられてもよい。この場合、少なくとも1つのプロセッサは、予想される測定を操作するために画像処理を実行する。センサ20およびユーザ入力デバイス30からのデータもまたコンピュータ40へ伝送されてよく、コンピュータ40は、これらのセンサの入力に従ってデータを処理する。
【0034】
[0061] メモリ105は、プロセッサ104のためのパラメータおよびコードプログラム命令を含む。メモリ105は、センサ20およびユーザ入力デバイス30から受信したパラメータも備えてよい。通信インタフェース106は、没入型映像レンダリングデバイスがコンピュータ40と通信することを可能にする。処理デバイスの通信インタフェース106は、有線インタフェース(たとえばバスインタフェース、広域ネットワークインタフェース、ローカルエリアネットワークインタフェース)または無線インタフェース(たとえばIEEE 802.11インタフェース、またはBluetooth(登録商標)インタフェースなど)であってよい。
【0035】
[0062] コンピュータ40は、没入型映像レンダリングデバイス10へデータを送信し、任意選択的に、没入型映像レンダリングデバイス10へのコマンドを制御する。コンピュータ40は、データの処理を担い、すなわち、没入型映像レンダリングデバイス10によって表示するためのデータを作成する。処理は、コンピュータ40のみによって行われてよく、あるいは処理の一部がコンピュータによって行われ、一部が没入型映像レンダリングデバイス10によって行われ得る。コンピュータ40は、直接、またはゲートウェイまたはネットワークインタフェース50を介して、インターネットに接続される。コンピュータ40は、インターネットから没入型映像を表現するデータを受信し、これらのデータを処理(たとえばデータを復号し、場合によっては、没入型映像レンダリングデバイス10によって表示しようとする映像コンテンツの一部を作成)し、処理したデータを表示のために没入型映像レンダリングデバイス10へ送信する。他の実施形態において、システムは、没入型映像を表現するデータが格納されるローカルストレージ(不図示)も備えてよく、上記ローカルストレージは、コンピュータ40に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0036】
[0063] 図19は、第2の実施形態を表す。この実施形態において、STB90は、たとえばインターネットなどのネットワークに直接接続され(すなわちSTB90がネットワークインタフェースを備え)、またはゲートウェイ50を介して接続される。STB90は、たとえばテレビセット100または没入型映像レンダリングデバイス200などのレンダリングデバイスへ、無線インタフェースまたは有線インタフェースを介して接続される。STBの典型的な機能に加え、STB90は、テレビ100または任意の没入型映像レンダリングデバイス200にレンダリングするための映像コンテンツを処理するための処理機能を備える。これらの処理機能は、コンピュータ40に関して説明したものと同じであり、ここで再び説明することはない。センサ20およびユーザ入力デバイス30もまた、図18に関して上述したものと同じ種類のものである。STB90は、インターネットから没入型映像を表現するデータを取得する。他の実施形態において、STB90は、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型映像を表現するデータを取得する。
【0037】
[0064] 図20は、図18に示す実施形態に関連する第3の実施形態を表す。ゲーム機60は、コンテンツデータを処理する。ゲーム機60は、没入型映像レンダリングデバイス10へデータを送信し、任意選択的に没入型映像レンダリングデバイス10へのコマンドを制御する。ゲーム機60は、没入型映像を表現するデータを処理し、処理したデータを表示のために没入型映像レンダリングデバイス10へ送信するように構成される。処理は、ゲーム機60のみによって行われてよく、あるいは処理の一部が没入型映像レンダリングデバイス10によって行われてもよい。
【0038】
[0065] ゲーム機60は、直接、またはゲートウェイまたはネットワークインタフェース50を介して、インターネットに接続される。ゲーム機60は、インターネットから没入型映像を表現するデータを取得する。他の実施形態において、ゲーム機60は、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型映像を表現するデータを取得し、上記ローカルストレージは、ゲーム機60に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0039】
[0066] ゲーム機60は、インターネットから没入型映像を表現するデータを受信し、これらのデータを処理(たとえばこれらを復号し、場合によっては、表示しようとする映像の一部を作成)し、処理したデータを表示のために没入型映像レンダリングデバイス10へ送信する。ゲーム機60は、センサ20およびユーザ入力デバイス30からデータを受信し、それらを用いて、インターネットまたはローカルストレージから取得した没入型映像を表現するデータを処理してよい。
【0040】
[0067] 図21は、上記第1の種類のシステムの第4の実施形態を表し、ここで没入型映像レンダリングデバイス70は、ハウジング705に挿入されたスマートフォン701によって形成される。スマートフォン701は、インターネットに接続され得るので、インターネットから没入型映像を表現するデータを取得してよい。他の実施形態において、スマートフォン701は、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型映像を表現するデータを取得し、上記ローカルストレージは、スマートフォン701に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0041】
[0068] 没入型映像レンダリングデバイス70は、没入型映像レンダリングデバイス70の好適な実施形態を示す図27を参照して説明される。これは任意選択的に、少なくとも1つのネットワークインタフェース702およびスマートフォン701のためのハウジング705を備える。スマートフォン701は、スマートフォンおよびディスプレイの全機能を備える。スマートフォンのディスプレイは、没入型映像レンダリングデバイス70のディスプレイとして用いられる。したがって、スマートフォン701のディスプレイ以外のディスプレイは含まれない。ただし、スマートフォンディスプレイ上のデータを見るために、たとえばレンズなどの光学部品704が含まれる。スマートフォン701は、場合によってはセンサ20およびユーザ入力デバイス30から受信したデータに従って、没入型映像を表現するデータを処理(たとえば復号し、表示用に作成)するように構成される。センサからの測定値のいくつかは、デバイスの姿勢を計算し、仮想カメラを制御するために用いられる。姿勢推定のために用いられるセンサは、たとえばジャイロスコープ、加速度計、またはコンパスである。たとえばカメラのリグを用いる、より複雑なシステムが用いられてもよい。この場合、少なくとも1つのプロセッサは、デバイス10の姿勢を推定するために画像処理を実行する。他のいくつかの測定値は、環境条件またはユーザの反応に従ってコンテンツを処理するために用いられる。環境およびユーザを観察するために用いられるセンサは、たとえばマイクロフォン、光センサ、または接触センサである。たとえばユーザの視線を追跡するビデオカメラなど、より複雑なシステムが用いられてもよい。この場合、少なくとも1つのプロセッサは、予定された測定を操作するために画像処理を実行する。
【0042】
[0069] 図22は、上記第1の種類のシステムの第5の実施形態を表し、ここで没入型映像レンダリングデバイス80は、データコンテンツを処理および表示するための全機能を備える。システムは、没入型映像レンダリングデバイス80、センサ20、およびユーザ入力デバイス30を備える。没入型映像レンダリングデバイス80は、場合によってはセンサ20およびユーザ入力デバイス30から受信したデータに従って、没入型映像を表現するデータを処理(たとえば復号し、表示用に作成)するように構成される。没入型映像レンダリングデバイス80は、インターネットに接続され得るので、インターネットから没入型映像を表現するデータを取得してよい。他の実施形態において、没入型映像レンダリングデバイス80は、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型映像を表現するデータを取得し、上記ローカルストレージは、レンダリングデバイス80に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0043】
[0070] 没入型映像レンダリングデバイス80は、図28に示される。没入型映像レンダリングデバイスは、ディスプレイ801を備える。ディスプレイは、たとえばOLEDまたはLCDタイプ、タッチパッド(任意選択)802、カメラ(任意選択)803、少なくとも1つのプロセッサ804と接続状態にあるメモリ805、および少なくとも1つの通信インタフェース806から成ってよい。メモリ805は、プロセッサ804のためのパラメータおよびコードプログラム命令を備える。メモリ805は、センサ20およびユーザ入力デバイス30から受信したパラメータも備えてよい。またメモリは、没入型映像コンテンツを表現するデータを格納するのに足るほど大きくあってよい。このため、いくつかの種類のメモリが存在してよく、メモリ805は、単一メモリであるか、あるいは数種類のストレージ(SDカード、ハードディスク、揮発性または不揮発性メモリなど)であってよい。通信インタフェース806は、没入型映像レンダリングデバイスがインターネットネットワークと通信することを可能にする。プロセッサ804は、ディスプレイ801に表示するために映像を表現するデータを処理する。カメラ803は、画像処理ステップに関して環境の画像を捕捉する。没入型映像レンダリングデバイスを制御するために、このステップからデータが抽出される。
【0044】
[0071] 拡張現実、仮想現実、または拡張仮想コンテンツを処理するための第2のシステムが図23~25に示される。そのようなシステムは、没入型壁を備える。
【0045】
[0072] 図23は、第2の種類のシステムを表す。このシステムは、コンピュータ4000からデータを受信する没入型(投影)壁であるディスプレイ1000を備える。コンピュータ4000は、インターネットから没入型映像データを受信する。コンピュータ4000は通常、直接またはゲートウェイ5000またはネットワークインタフェースを介してインターネットに接続される。他の実施形態において、没入型映像データは、没入型映像を表現するデータが格納されたローカルストレージ(不図示)からコンピュータ4000によって取得され、上記ローカルストレージは、コンピュータ4000に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0046】
[0073] このシステムは、センサ2000およびユーザ入力デバイス3000も備えてよい。没入型壁1000は、OLEDまたはLCDタイプであってよい。没入型壁1000は、1または複数のカメラを備えてよい。没入型壁1000は、センサ2000(または複数のセンサ2000)から受信したデータを処理してよい。センサ2000から受信したデータは、照明条件、温度、ユーザの環境、たとえば物体の位置に関連してよい。
【0047】
[0074] 没入型壁1000は、ユーザ入力デバイス3000から受信したデータも処理してよい。ユーザ入力デバイス3000は、ユーザ感情に関するフィードバックを与えるために、たとえば触覚信号などのデータを送信する。ユーザ入力デバイス3000の例は、たとえばスマートフォン、リモートコントロール、およびジャイロスコープ機能を有するデバイスなどのハンドヘルドデバイスである。
【0048】
[0075] センサ2000およびユーザ入力デバイス3000のデータは、コンピュータ4000へ伝送されてもよい。コンピュータ4000は、これらのセンサ/ユーザ入力デバイスから受信したデータに従って映像データを処理(たとえば復号し、表示用に作成)してよい。センサ信号は、没入型壁の通信インタフェースを介して受信され得る。この通信インタフェースは、Bluetoothタイプ、WIFIタイプ、または他の任意の種類の接続であってよく、優先的には無線であるが、有線接続であってもよい。
【0049】
[0076] コンピュータ4000は、処理されたデータを没入型壁1000へ送信し、任意選択的に、没入型壁1000へのコマンドを制御する。コンピュータ4000は、没入型壁1000によって表示されるようにデータを処理、すなわち表示用に作成するように構成される。処理は、コンピュータ4000のみによって行われてよく、あるいは処理の一部がコンピュータ4000によって行われ、一部が没入型壁1000によって行われ得る。
【0050】
[0077] 図24は、第2の種類の他のシステムを表す。このシステムは、映像コンテンツを処理(たとえば復号し、表示用のデータを作成)および表示するように構成された没入型(投影)壁6000を備える。このシステムは更に、センサ2000、ユーザ入力デバイス3000を備える。
【0051】
[0078] 没入型壁6000は、ゲートウェイ5000を介してインターネットから、またはインターネットから直接、没入型映像データを受信する。他の実施形態において、没入型映像データは、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型壁6000によって取得され、上記ローカルストレージは、没入型壁6000に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0052】
[0079] このシステムは、センサ2000およびユーザ入力デバイス3000も備えてよい。没入型壁6000は、OLEDまたはLCDタイプであってよい。没入型壁6000は、1または複数のカメラを備えてよい。没入型壁6000は、センサ2000(または複数のセンサ2000)から受信したデータを処理してよい。センサ2000から受信したデータは、照明条件、温度、ユーザの環境、たとえば物体の位置に関連してよい。
【0053】
[0080] 没入型壁6000は、ユーザ入力デバイス3000から受信したデータを処理してもよい。ユーザ入力デバイス3000は、ユーザ感情におけるフィードバックを与えるために、たとえば触覚信号などのデータを送信する。ユーザ入力デバイス3000の例は、たとえばスマートフォン、リモートコントロール、およびジャイロスコープ機能を有するデバイスなどのハンドヘルドデバイスである。
【0054】
[0081] 没入型壁6000は、これらのセンサ/ユーザ入力デバイスから受信したデータに従って映像データを処理(たとえば復号し、表示用に作成)してよい。センサ信号は、没入型壁の通信インタフェースを介して受信され得る。この通信インタフェースは、Bluetoothタイプ、WIFIタイプ、または他の任意の種類の接続であってよく、優先的には無線であるが、有線接続であってもよい。没入型壁6000は、センサおよびインターネットと通信するために少なくとも1つの通信インタフェースを備えてよい。
【0055】
[0082] 図25は、没入型壁がゲームのために用いられる第3の実施形態を示す。1または複数のゲーム機7000は、好適には無線インタフェースを介して没入型壁6000に接続される。没入型壁6000は、ゲートウェイ5000を介してインターネットから、またはインターネットから直接、没入型映像データを受信する。他の実施形態において、没入型映像データは、没入型映像を表現するデータが格納されたローカルストレージ(不図示)から没入型壁6000によって取得され、上記ローカルストレージは、没入型壁6000に、またはたとえばローカルエリアネットワークを介してアクセス可能なローカルサーバ(不図示)にあってよい。
【0056】
[0083] ゲーム機7000は、命令およびユーザ入力パラメータを没入型壁6000へ送信する。没入型壁6000は、表示用のコンテンツを作成するために、場合によってはセンサ2000およびユーザ入力デバイス3000およびゲーム機7000から受信した入力データに従って、没入型映像コンテンツを処理する。没入型壁6000は、表示されるコンテンツを格納するための内部メモリも備えてよい。
【0057】
[0084] 1つの実施形態において、全方位映像は、映像コーデックに適したフォーマットで表現される標準長方形フレームFへの周囲の3D表面Sの投影を可能にするフォーマットで表現されると考えられる。3D表面を2D表面に投影するために、様々な投影が用いられ得る。たとえば図2Aは、典型的な球体表面Sがエクイレクタングラー投影を用いて2DフレームFにマッピングされることを示し、図2Bは、典型的なキューブ表面がキューブマッピングを用いて図2Cに示すように2Dフレームにマッピングされることを示す。たとえばピラミッド形、正二十面体、または八面体マッピングなど他のマッピングが、3D表面を2Dフレームにマッピングすることができる。
【0058】
[0085] 2DフレームFはその後、たとえばVP9、VP10、MPEG-2、H.264/AVC、またはH.265/HEVCに準拠するエンコーダなど既存の映像エンコーダを用いて符号化され得る。2DフレームFは、たとえば調整されたVP9、VP10、MPEG-2、H.264/AVC、またはH.265/HEVCエンコーダを用いて、全方位映像の特性に対応するエンコーダによって符号化されてもよい。符号化および復号の後、復号された2Dフレームは、対応する3D表面、たとえばエクイレクタングラーマッピングの場合は球体、またはキューブマッピングの場合はキューブに再びマッピングされ得る。3D表面はその後、最終的なレンダリングされたフレームを得るために、ユーザの視点に対応する「仮想スクリーン」に投影され得る。2Dフレームを復号し、3D表面からレンダリングされたフレームへ投影するステップは単一ステップに結合されてよく、この場合、復号されたフレームの一部がレンダリングされたフレームにマッピングされる。
【0059】
[0086] 簡潔な表記として、復号された2Dフレームを「F」とも称し、レンダリングに用いられる3D表面をSとも称することとする。理解すべき点として、符号化される2Dフレームおよび復号される2Dフレームは、映像圧縮によって異なってよく、前処理における3D表面およびレンダリングにおける3D表面もまた異なってよい。本出願において、「マッピング」および「投影」という用語は相互置換的に用いられ、「ピクセル」および「サンプル」という用語は相互置換的に用いられ、「フレーム」および「ピクチャ」という用語は相互置換的に用いられる。
【0060】
[0087] エクイレクタングラーマッピング
【0061】
[0088] 図3は、2Dフレームがレンダリングされたフレームにマッピングされる、典型的な逆エクイレクタングラーマッピングを示す。図3Aは、(「エクイレクタングラーフレーム」とも称される)復号されたフレームにおけるx-y座標内の点Pを示す。図3Bは、θ―φ極座標を用いて、Pからレンダリングの2D表面にマッピングされた点P’を示す。図3Cは、デカルト座標を用いて、3Dレンダリング空間S内のP’に対応する点P3dを示す。図3Dは、ローカルレンダリングフレームGにおける、P3dにおいて表面に接するローカル面に投影されたP3dの結果生じるP”を示す。構成によって、P”はフレームの中心である。ローカルレンダリングフレームGは、多くの場合ユーザが何を見たいかに基づいて、たとえばHMDまたはユーザのハンドヘルドデバイスが指すものに基づいて、2DフレームFの一部に対応する。ローカルレンダリングフレームGは、ローカルレンダリングバージョンとも称される。
【0062】
[0089] PからP’、P’からP3d、およびP3dからP”へのマッピングは、それぞれ「f」、「3d」、および「pro/」と記される。図3において、逆エクイレクタングラーマッピングは、例示の目的で複数のステップ(「/」、「3d」、および「pro/」)において示される。逆エクイレクタングラーマッピングは、たとえば「/」、「3d」、および「pro/」を1または2つのステップに結合することによって、より少ないステップで実行され得る。
【0063】
[0090] 数学的に、マッピング「/」は、正規座標を仮定して、フレームF内のピクセルM(x,y)が点M’(θ,φ)において2Dパラメトリック面にマッピングされた場合、
【数1】


と表すことができる。非正規化座標の場合、
【数2】

である。
【0064】
[0091] 点M’(θ,φ)から座標M3dの3D表面へのマッピング「3d」は、以下のように表すことができる。
【数3】
【0065】
[0092] 点M3dからフレームFへ戻すために、逆変換T-1を計算する。
【数4】

3D表面S上の点M3d(X,Y,Z)から、極変換への標準デカルト座標を用いて2Dパラメータフレームへ戻すことができる。
【数5】

更に2DフレームFへ戻すために、
【数6】

を用いることができる。
【0066】
[0093] (一般に、極における)特異点に関して、xおよびyが0に近い場合、
【数7】

を直接設定してよい。ただし、モジュラーケースの場合、特別に対処すべきである。
【0067】
[0094] 図4Aは、3D表面からレンダリングされたフレームGへ点が投影されること(「pro/」)を示す。Gにおいてローカルレンダリングフレームから見た点Q’がP’に近い場合、表面Sに接する平面は、その表面自体によって近似され得る。図4Bにおいて、表面Q’上のQの画像によってQ”が近似され得ることを示す。
【0068】
[0095] 3D空間から2D表面への投影は多くの場合、何らかのエフェクトまたは変化をもたらし、これは、従来の平面符号化に関して得られるものと同様の品質/ビットレートのトレードオフで得られた映像を符号化することが困難であり得る。これらのエフェクトまたは変化は、以下を含んでよい。
‐強度のジオメトリ歪み
・直線が直線ではなくなる。
・直交座標系が直交ではなくなる。
‐不均一なピクセル密度:符号化されるフレーム内のピクセルは必ずしも、符号化される表面上で同じサイズ(すなわち、レンダリング段階の画像において同じサイズ)を表すわけではない。
‐強度の不連続性:フレームレイアウトは、2つの隣接するピクセル間で強度の不連続性をもたらし得る。
‐何らかの周期性がフレーム内に(たとえば1つの境界から対向する境界まで)生じ得る。
【0069】
[0096] 表1は、様々なマッピングに関するいくつかの変化を挙げる。
【表1】
【0070】
[0097] 以下、全方位映像の符号化および復号を説明するためにHEVCエンコーダおよびデコーダが主に用いられる。ただし本原理は、他のエンコーダまたはデコーダに適用されてよい。
【0071】
[0098] 図5は、典型的なHEVCエンコーダ500を示す。1または複数のピクチャによって映像シーケンスを符号化するために、ピクチャは1または複数のスライスに分割され、各スライスは、1または複数のスライスセグメントを含んでよい。スライスセグメントは、符号化ユニット、予測ユニット、および変換ユニットに組織される。
【0072】
[0099] 本出願において、「再構成」および「復号」という用語は相互置換的に用いられ得る。必ずではないが多くの場合、「再構成」という用語はエンコーダ側で用いられ、「復号」はデコーダ側で用いられる。
【0073】
[0100] HEVC仕様書は、「ブロック」と「ユニット」とを区別し、「ブロック」は、サンプルアレイにおける特定のエリア(たとえば輝度、Y)を称し、「ユニット」は、全ての符号化色成分(Y、Cb、Cr、またはモノクローム)の共在ブロック、シンタックス要素、およびブロックに関連する予測データ(たとえば動きベクトル)を含む。
【0074】
[0101] 符号化の場合、ピクチャは、構成可能なサイズを有する正方形の符号化ツリーブロック(CTB)に分割され、符号化ツリーブロックの連続セットは、スライスにグループ化される。符号化ツリーユニット(CTU)は、符号化色成分のCTBを含む。CTBは、符号化ブロック(CB)に分割する4分木の根であり、符号化ブロックは、1または複数の予測ブロック(PB)に分割され、変換ブロック(TB)に分割する4分木の根を形成する。符号化ブロック、予測ブロック、および変換ブロックに対応して、符号化ユニット(CU)は、予測ユニット(PU)および木構造セットの変換ユニット(TU)を含み、PUは、全ての色成分に関する予測情報を含み、TUは、各色成分に関する残差符号化シンタックス構造を含む。輝度成分のCB、PB、およびTBのサイズは、対応するCU、PU、およびTUに適用される。本出願において、「ブロック」という用語は、CTU、CU、PU、TU、CB、PB、およびTBのいずれかを指すように用いられ得る。また、「ブロック」は、H.264/AVCまたは他の映像符号化規格に記載されるようなマクロブロック、分割、およびサブブロックを指すように、より一般的には様々なサイズのデータのアレイを指すように用いられてもよい。
【0075】
[0102] 典型的なエンコーダ500において、ピクチャは、後述するようにエンコーダ要素によって符号化される。符号化されるピクチャは、CUのユニットにおいて処理される。各CUは、イントラまたはインターモードのいずれかを用いて符号化される。CUがイントラモードで符号化される場合、イントラ予測を実行する(560)。インターモードの場合、運動推定(575)および補償(570)が実行される。エンコーダは、CUを符号化するためにイントラモードまたはインターモードのどちらを用いるかを決定(505)し、予測モードフラグによってイントラ/インター決定を示す。予測残差は、元の画像ブロックから予測されたブロックを引算すること(510)によって計算される。
【0076】
[0103] イントラモードにおけるCUは、同じスライス内の再構成された隣接サンプルから予測される。図6Aに示すように、DC、平面、および33の角予測モードを含む、35のイントラ予測モードのセットがHEVCにおいて利用可能である。イントラ予測参照は、現在のブロックに隣接する行および列から再構成される。参照は、過去に再構成されたブロックから利用可能なサンプルを用いて水平および垂直方向におけるブロックサイズの2倍以上に及ぶ。角予測モードがイントラ予測に用いられる場合、参照サンプルは、図6Bの例に示すように、角予測モードによって示された方向に沿ってコピーされ得る。角予測モードは、本出願において、方向性予測モードとも称される。
【0077】
[0104] 現在のブロックに関して適用可能な輝度イントラ予測モードは、2つの異なるオプションを用いて符号化され得る。適用可能なモードが3つの最確モード(MPM)の構成リストに含まれる場合、モードは、MPMリスト内のインデックスによってシグナリングされる。そうでない場合、モードは、モードインデックスの固定長2値化によってシグナリングされる。3つの最確モードは、上および左の隣接ブロックのイントラ予測モードから導出される。
【0078】
[0105] インターCUの場合、対応する符号化ブロックは、1または複数の予測ブロックに更に分割される。インター予測は、PBレベルで実行され、対応するPUは、どのようにインター予測が実行されるかに関する情報を含む。
【0079】
[0106] 動き情報(すなわち、動きベクトルおよび参照ピクチャインデックス)は、2つの方法、すなわち「融合モード」および「高度な動きベクトル予測(AMVP)」でシグナリングされ得る。
【0080】
[0107] 融合モードにおいて、映像エンコーダまたはデコーダは、既に符号化されたブロックに基づいて候補リストを組み立て、映像エンコーダは、候補リスト内の候補の1つに関するインデックスをシグナリングする。デコーダ側において、動きベクトル(MV)および参照ピクチャインデックスは、シグナリングされた候補に基づいて再構成される。
【0081】
[0108] AMVPにおいて、映像エンコーダまたはデコーダは、既に符号化されたブロックから決定された動きベクトルに基づいて候補リストを組み立てる。映像エンコーダはその後、動きベクトル予測子(MVP)を識別するために候補リスト内のインデックスをシグナリングし、動きベクトル差分(MVD)をシグナリングする。デコーダ側において、動きベクトル(MV)は、MVP+MVDとして再構成される。
【0082】
[0109] HEVCにおいて、動き補償のための動き情報の精度は、輝度成分に関して(クオータペルまたは1/4ペルとも称される)4分の1サンプル、および彩度成分に関して(1/8ペルとも称される)8分の1サンプルである。7タップまたは8タップ補間フィルタは、分数サンプル位置の補間のために用いられ、すなわち、水平および垂直方向の両方におけるサンプル位置全体の1/4、1/2、および3/4が輝度に関してアドレス指定され得る。
【0083】
[0110] その後、予測残差が変換(525)および量子化(530)される。量子化された変換係数、ならびに動きベクトルおよび他のシンタックス要素は、ビットストリームを出力するためにエントロピー符号化(545)される。エンコーダは、変換をスキップし、4×4TUベースで無変換残差信号に直接量子化を適用してもよい。エンコーダは、変換および量子化の両方を回避してもよく、すなわち残差は、変換または量子化プロセスの適用なしで直接符号化される。直接PCM符号化において、予測は適用されず、符号化ユニットサンプルはビットストリームに直接符号化される。
【0084】
[0111] エンコーダは、更なる予測のための参照を提供するために、符号化されたブロックを復号する。量子化された変換係数は、予測残差を復号するために、逆量子化(540)および逆変換(550)される。復号された予測残差と予測されたブロックとを結合(555)すると、画像ブロックが再構成される。ループ内フィルタ(565)は、たとえば符号化アーチファクトを低減するためのデブロッキング/SAOフィルタリングを実行するために、再構成されたピクチャに適用される。フィルタされた画像は、参照ピクチャバッファ(580)に格納される。
【0085】
[0112] 図7は、典型的なHEVC映像デコーダ700のブロック図を示す。典型的なデコーダ700において、ビットストリームは、後述するようにデコーダ要素によって復号される。映像デコーダ700は一般に、映像データの符号化の一部として映像復号を実行する、図5に示すような符号化パスと互恵的な復号パスを実行する。
【0086】
[0113] 具体的には、デコーダの入力は、映像エンコーダ500によって生成され得る映像ビットストリームを含む。ビットストリームは最初に、変換係数、動きベクトル、および他の符号化情報を得るためにエントロピー復号(730)される。変換係数は、予測残差を復号するために、逆量子化(740)および逆変換(750)される。復号された予測残差と予測されたブロックとを結合(755)すると、画像ブロックが再構成される。予測されたブロックは、イントラ予測(760)または動き補償された予測(すなわちインター予測)(775)から得られ得る(770)。上述したように、AMVPおよび融合モード技術は、動き補償のための動きベクトルを導出するために用いられてよく、これは、参照ブロックのサブ整数サンプルに関する補間値を計算するために補間フィルタを用いてよい。ループ内フィルタ(765)は、再構成された画像に適用される。フィルタされた画像は、参照ピクチャバッファ(780)に格納される。
【0087】
[0114] 図6Aおよび図6Bに示すように、イントラ予測は、現在のブロックを予測するために過去に再構成された参照ピクセルの因果的形状においてピクセルを利用し、たとえば参照ピクセルは、図6Bに示すような方向に沿ってコピーされ得る。
【0088】
[0115] イントラ直進伝搬モードは、画像および映像内の多くの剛直テクスチャ(たとえば建物、直線エッジを含む物体)の近似に適している。したがって、方向性モードは通常、予測ブロックにわたる画像コンテンツ分布が主な方向を示す場合に効率的である。しかし、エクイレクタングラーマッピングされたコンテンツのように球体表面からワープされた短焦点距離画像または複数の画像の場合、マッピングまたはパースペクティブ歪みによって、物体は歪むことがあり、主な方向は非直曲線を辿る傾向がある。
【0089】
[0116] 図8は、レンダリングされたフレームにおける直線(820)が、符号化されるフレームにおいて直線に見えない(810)例を示す。具体的には、図8は、現在の予測ブロック(830)および対応する参照サンプル(850)のローカルマッピングおよびレンダリングを示す。ローカルマッピングおよびレンダリングにおいて、予測ブロック周囲の小部分のみがレンダリングバージョンにマッピングされる。左の画像は、符号化される典型的なエクイレクタングラーフレームFの切り取られた一部である。右の画像は、典型的なレンダリングされたフレームにおける切り取られた一部であり、予測ブロックのローカルレンダリングバージョン(840)を示す。エクイレクタングラーフレームにおける予測ブロック(830)の隣接サンプル(850)は、レンダリングされたフレームGにおける隣接エリア(860)にマッピングされる。参照フレーム(870)は、予測ブロックの中心に中心がある。矢印(880)は、レンダリングバージョンが符号化される場合、従来のエンコーダによって選択され得る可能性のある方向性モードを示す。
【0090】
[0117] 直線は、予測ブロック(830)においてもはや直線ではなくなるので、HEVCにおいて定義されたような方向性イントラ予測は、エクイレクタングラーコンテンツにおける非直曲線を有するブロックのためにはあまり効率が良いとは言えない。
【0091】
[0118] 補償効率を高めるために、全方位映像にイントラ予測を適合することを提案する。特に、イントラ予測子、すなわち、修正されたジオメトリ、たとえばイントラ予測を改善するために符号化されるエクイレクタングラー画像のジオメトリを考慮に入れることによって、予測ブロック内のピクセルを予測するために選択された方向に沿ってコピーされた参照サンプルが選択され得る。
【0092】
[0119] 1つの実施形態において、2DフレームFにおける予測ブロックは、レンダリング空間にマッピングされる。その後、直線イントラ予測方向に基づいて、2Dフレーム内の予測ブロックに対応して、レンダリング空間内のブロックにおけるピクセルに関して参照サンプルが計算される。その後、レンダリング空間内の参照サンプルに対応して、2Dフレーム内の参照サンプルを特定することができる。
【0093】
[0120] 参照サンプルは、整数サンプル位置、または分数サンプル位置にあってよい。分数サンプル参照サンプルの場合、直線方向性モードの場合と同様、補間が適用され得る。また、参照サンプルは、より良好な予測子を提供する可能性が高い滑らかな信号を伝搬するために、ローパスカーネルを用いて事前フィルタされ得る。
【0094】
[0121] 一般性を損なうことなく、予測ブロックの中心における参照フレームを有する予測ブロックのローカルレンダリングを考える。図9に示すように、現在の予測ブロックの周囲のサンプルLは、レンダリングされたフレームGにおけるサンプルL”に投影され、現在のブロックは、レンダリングされたブロックに投影され、3Dレンダリング表面Sに接する区画は、現在のブロックの中心である。
【0095】
[0122] 図10は、本原理の実施形態に係る、イントラ予測のためのイントラ予測子を特定するための典型的な方法1000を示す。イントラ予測はエンコーダおよびデコーダの両方で実行されるので、方法1000は、エンコーダおよびデコーダの両方において用いられ得る。簡単な表記として、エンコーダまたはデコーダのいずれかを称するために「コーダ」を用いる。HEVCにおいて、イントラ予測ブロックBに関して、単一イントラ予測がアクセスされる(1005)。ステップ1010において、コーダは、P’を計算(910)し、その後、ブロックBの中心Pに関するP3dを計算する。
【数8】

コーダはその後、ブロックBの点P3dにおいて表面に接する平面Gを得る(920)。構成によって、Proj:P3d→P”=[0 0]である。
【0096】
[0123] ブロックB周囲の因果的近隣Lに関して、コーダは、対応する近隣L’、L3d、および平面G上の投影L”を計算する(1020)。
【数9】

【0097】
[0124] 現在のブロックBのピクセルMに関して、コーダは、M’を計算し、その後M3dを計算する(1030、910)。3D表面上の点M3dはその後、点M”において平面Gに投影される(920)。
【数10】
【0098】
[0125] エンコーダにおいて試験される、またはデコーダにおいてビットストリームから復号される方向d”に関して、点M”について、コーダは、方向d”において点M”を通過する直線M”+a*d”と、V”における投影された近隣L”との交点を特定する(1040)。
【数11】

【0099】
[0126] 式(11)における方向d”は、レンダリング空間における方向であり、2D符号化または復号フレームにおける方向dから導出され得る。方向d”を計算するために、コーダは、Q’を計算し、その後、ピクセルQ=P+edに関してQ3dを計算してよく、eは小ステップであり、
【数12】

であり、点Q”において平面GにQ3dを投影する。
【数13】
【0100】
[0127] その後、方向d”は
【数14】


として計算され得る。レンダリングされたフレームGにおける全てのピクセルM”に同じ方向d”が適用され得る。このアプローチの利点の1つは、ブロック内のパターンがブロック全体で一貫することである。
【0101】
[0128] 符号化または復号されるフレーム内の参照ピクセルを特定するために、V”が再びV3d内の表面に、その後V’に投影される(930)。
【数15】

その後、フレームFにおけるVの原像として、Vの座標を計算する(940)。
【数16】

その結果生じる点は、その後、方向dにおけるピクセルMに関するイントラ予測子として用いられる(1050)。
【0102】
[0129] ブロックのピクセルに関して、ピクセルの位置および方向dが与えられると、イントラ予測子は事前計算することができ、その結果は、ルックアップテーブル(LUT)に格納され得る。ルックアップテーブルを用いる場合、方法1000は簡略化され得る。たとえば、ステップ1010~1040は、ルックアップテーブルにアクセスすることで置き換えることができ、ステップ1050において、予測ブロック内の特定の位置に関する参照サンプルは、ルックアップテーブルに基づいて特定され得る。
【0103】
[0130] 新たなイントラ予測は、ブロックに関するイントラ予測方向に基づいて導出された非直曲線(または変形曲線)に沿ってブロック内のサンプルを予測するものであると分かる。変形曲線は、(アンカー点とも称される)特定の位置、たとえば予測ブロックの中心またはその左角に参照フレームを設定することによって計算され得る。方向d”を導出するために用いられるアンカー点は、他の点、たとえば左上角部から選択されてもよい。図11Aは、矢印(1110)によって示す、ブロックの中心における特定の方向dに関して導出された曲線の例を示す。
【0104】
[0131] ここで、ローカルレンダリングフレームGにおける参照サンプルは直線に基づいて選択され、2D符号化または復号フレームと比べて直進伝搬モードが作用しやすい。逆マッピングに基づいて選択された参照サンプルは、マッピングによって生じた変形を反映する。図11Aに示すように、矢印(1110)によって示すような方向dは、新たなイントラ予測方向を反映するために非直曲線(1120、1130)に適合される。この実施形態において、参照サンプルおよび参照サンプルにおける方向の両方が適合される。フレームGにおける方向は、全ての参照サンプルについて同じであり、よってフレームFにおいて様々である。
【0105】
[0132] 上記において、直線交差を実行するために、フレームFにおける方向dが、レンダリングされたフレームGにおける方向d”に変換される。他の実施形態において、方向dはGにおいて直接、すなわち現在のブロックの予測の方向として直接d”を符号化するように表され得る。この場合、ローカルレンダリングフレームGの選択は、既知であり、エンコーダとデコーダとの間で同期されなければならない。
【0106】
[0133] 他の実施形態において、参照サンプルに沿って方向が近似され、エクイレクタングラー領域に直接方向性モードが適用され得る。ここで曲線は、参照サンプル位置において平行であり、図11Bの例に示すように、その後、マッピング関数に依存して変形される。この場合、参照サンプルにおける方向は、フレームFにおいて同じであるが、フレームGにおいて異なる。
【0107】
[0134] この実施形態において、予測の方向は、個々のピクセルMに関してフレームFにおいて表される。したがって、ローカルレンダリングフレームGにおける予測の方向d”を計算するために、コーダはN’を計算し、その後、N=M+edに関するN3dを計算し、eは、ブロックのピクセルに関する小ステップである。
【数17】

その後、点N”における平面GにN3dを投影する。
【数18】
【0108】
[0135] 方向d”は、M”において計算され得る。
【数19】

d”は、ピクセルM”の位置によって変わるので、様々なサンプルに関するレンダリングされたフレームGにおける方向d”は同じではない。
【0109】
[0136] 図12は、本原理の典型的な実施形態に係る、エンコーダ側で全方位映像に適合されたイントラ予測を実行するための典型的な方法1200を示す。エンコーダは、画像ブロック(1210)を入力として受け入れる。エンコーダは、たとえば全方位映像のために適合されたイントラ予測を用いるか否かを示すフラグwarped_intraなどのユーザ入力も入手する。
【0110】
[0137] ブロックを入手(1220)した後、エンコーダは、どの近隣サンプルがイントラ予測のための参照サンプルとして用いられるかを決定(1230)する。参照サンプルは、イントラ予測を改善するためにコンテンツを滑らかにするようにフィルタ(1240)され、または分数サンプル位置を取得するために補間され得る。フラグwarped_intra(1245)が真である場合、エンコーダは、新たな曲線方向を有効化する。具体的には、エンコーダは、新たな方向を提供するために、たとえば既定のLUTとしてワーピングパラメータを、または上述したように関数「f()」、「projO」、または「3d()」を計算するためのマッピングパラメータを入手(1250)してよい。新たな方向は、イントラ予測を実行(1260)するために用いられる。ブロックに関するRD(レート歪み)コストが計算(1270)され得る。エンコーダは、イントラ予測または他の試験されたイントラ予測モードに基づいて、使用する最適予測モードを決定(1280)する。予測ブロックに関して選択された予測モードおよびRDコストが出力(1290)され得る。エンコーダは、必要に応じて画像内のブロックにわたりループしてよい。エンコーダが新たなイントラ方向を選択すると、エンコーダは、予測されたブロックを形成するために新たなイントラ方向を用いてイントラ予測を実行し、現在のブロックに関する新たなイントラモードおよび予測残差(すなわち現在の予測ブロックと予測されたブロックとの差)を符号化する。
【0111】
[0138] デコーダ側において、warped_intraフラグが真に設定された場合、どの予測モードが設定されたかに基づいて新たなイントラ予測モードが選択され得る。新たな予測モードが選択されると、デコーダは、たとえば上述したように、新たなイントラ予測モードに基づいて、ブロックの復号を続行する。
【0112】
[0139] シグナリング
【0113】
[0140] 第1の実施形態によると、デコーダは、特定の種類の全方位映像コンテンツに専用である。マッピング機能はデフォルトによってアクティブ化され、すなわち、ブロックは常に、上述した方法の1つを用いて「湾曲した」線を用いて予測される。
【0114】
[0141] 第2の実施形態によると、デコーダは、様々なレイアウトに適合してよい。デコーダは、高レベルシンタックスを介して現在のレイアウトのインデックスを受信する。その後ブロックは、シグナリングされたマッピング機能に従って、上述した方法の1つを用いて「湾曲した」線を用いて予測される。
【0115】
[0142] 他の実施形態によると、マッピング機能は伝送されてよく、デコーダは対応する方向を再現する。その後ブロックは、伝送されたマッピング機能に従って、上述した方法の1つを用いて「湾曲した」線を用いて予測される。
【0116】
[0143] 他の実施形態によると、マッピング機能は、ブロック、スライス、またはシーケンスレベルで直接シグナリングされる。
【0117】
[0144] 他の実施形態によると、変形パラメータは、ブロック、スライス、またはシーケンスレベルで定義されたディクショナリとして伝送される。
【0118】
[0145] 球体に符号化されるフレームをマッピングするために選択された特定のレイアウトは、通常、シーケンスによって固定され、たとえばSPS(シーケンスパラメータセット)においてシーケンスレベルでシグナリングされ得る。
【0119】
[0146] マッピング機能に関して、情報を取得するいくつかの方法が用いられ得る。
・エクイレクタングラーフレーム全体にわたる変形をシグナリングするために、デコーダ側にルックアップテーブルが実装され得る。ここでデコーダまたはエンコーダは必ずしも、イントラ予測中にレンダリングされたフレームGと2DフレームFとの間で投影を実行する必要はなく、変形はフレームFに直接適用される。
・デコーダは、直線モードを適用するためにフレームGに投影を再現し、その後、フレームFに再び投影してよい。
・多数のマッピング機能が存在する。デコーダは、たとえば映像パラメータセット、シーケンスパラメータセット、ピクチャパラメータセットなどのパラメータセットを介して、たとえばビットストリームで伝送されたインデックスに基づいて、主要マッピング機能を決定してよい。
【0120】
[0147] 上述した全方位映像のためのマッピングに加えて、変形は、短焦点距離からも生じ得る。この場合、グローバル焦点距離値および必要な歪みパラメータは、シーケンス全体を駆動する、たとえば映像パラメータセット(VPS)またはシーケンスパラメータセット(SPS)などの高レベルシンタックスを介して伝導され得る。焦点距離が映像に沿って変化する場合、これらの値は、ピクチャパラメータセットに含まれ得る。他の実施形態によると、情報は、スライスまたはブロックレベルで伝送され得る。
【0121】
[0148] たとえば予測されたブロックを形成するために因果的参照サンプルの平均値で予測されたブロックを埋めるDCモードなど、他の伝搬方法も存在する。この場合、新たな種類のコンテンツがモードの効率を変更することはない。しかし、たとえばH.265/HEVCにおける平面モード、または平面モードH.264/AVCなどの高度な技術は、現在のブロック表面の滑らかな予測を生成するために参照サンプル間のピクセル値の変動を利用する。これらのモードに関して、エクイレクタングラーマッピングは、そのようなモードの効率を低下させ得る。
【0122】
[0149] 平面モードの場合、図13の例に示すように、予測されるブロック内のピクセル値は4つのピクセルに直接依存する。平面モードを全方位映像に適合させるために、垂直および水平方向からのピクセルに頼るのではなく、関連する参照ピクセル位置を指すために、上述したように計算された曲線が用いられ得る。
【0123】
[0150] 新たなツールは、参照サンプル変動を利用し、たとえばPDPCと呼ばれる位置依存イントラ予測コンビネーション、およびMPIと呼ばれるマルチパラメータイントラ予測などの改善された方法によって予測ブロックを埋める。これらのモードは、方向性モードに関して導出された変形曲線の後に続くピクセルを指すことによって適合され得る。
【0124】
[0151] 図14は、左上から右下へ-15°、-30°、-45°、-60°、-75°、-90°、-105°、-120°、-135°(0°が水平方向に対応する)の様々な予測角度に関する、エクイレクタングラーマッピングに関して提案された新たな方向性のイントラモードを用いる予測の例を示す。その結果生じる予測されたブロックは、図15に示す位置におけるエクイレクタングラーフレームから計算される。曲線はエクイレクタングラーマッピングのジオメトリと一致することが分かる。
【0125】
[0152] 予測ブロックにおける個々のピクセルに関して、L形状からコピーするための参照サンプルが上述した方法によって与えられる。マッピングが一定かつ既知である場合、関数またはLUTは、予測プロセスを迅速化するために事前計算され得る。表2は、45°の予測角度に関する典型的なLUTの一部を示し、LUT内の位置(x,y)におけるエントリは、ブロック内の位置(x,y)におけるサンプルについて用いるための参照サンプルの一部を表す。LUTに基づいて、参照サンプルはコピーされ、予測されたブロックを形成するために予測ブロック内の対応するサンプル位置に伝搬され得る。参照サンプルの位置を表す数字は、図16に示される。図16に示すように、負の値は左列の参照サンプルに対応し、正の値は上段の参照サンプルに対応する。
【0126】
[0153] 様々なブロックサイズに関して同じルックアップテーブルが用いられ得る。エンコーダまたはデコーダは、特定のブロック位置および方向に関して最大ブロックサイズの1つのルックアップテーブルしか必要とせず、最大ブロックサイズよりも小さいブロックに関するルックアップテーブルは、最大サイズのLUTの左上部分を用いて得られ得る。
【表2】
【0127】
[0154] エクイレクタングラーマッピングの場合、ルックアップテーブルは、ブロックの縦の位置のみを用いて説明され得る。また、ルックアップテーブルは、画像の第1の半分のみに関して説明され、第2の半分は、画像の第1の半分に関するインデックスを左右反転することによって推定される。
【0128】
[0155] 予測ブロックにおける位置と参照サンプル位置との対応性は、たとえば二次関数を用いて上記LUTを近似する解析関数によって表すこともできる。近似は常に正確であるわけではない。LUTまたは解析関数は、イントラ予測方向、予測ブロックのブロック位置/サイズを前提として、エンコーダまたはデコーダにおいて導出または事前計算され得る。したがってエンコーダは、イントラ予測ブロックに関する単一の方向性モードを伝送するだけでよいが、イントラ予測は、イントラ予測ブロックに関してエンコーダまたはデコーダにおける様々な変形曲線を辿り得る。
【0129】
[0156] 提案された方法は、古典的に用いられる直線方向ではなく曲線的イントラ伝搬を画定する一般原理に頼る。いくつかの実施形態によると、曲線的伝搬は、既存のイントラモードに追加される新たな方向性イントラモードとして示され得る。他の実施形態において、これらは、既存のコーデックにおける対応するイントラモードに代替し得る。
【0130】
[0157] たとえば、二次曲線は、映像の種類、考慮される予測ブロックの位置およびサイズに依存して、他のイントラモードとして追加され得る。映像が広角/短焦点距離を用いたショットであった他の例において、何らかの歪みが直線を変形させ得る。歪みを低減させるために、場合によっては円筒補正が用いられる。映像が歪んでいる場合、曲線的イントラ予測は多くの場合、特に境界線上の変形した曲線に沿って参照ピクセルを伝搬することによって、圧縮効率を高めることができる。
【0131】
[0158] 短焦点距離映像の場合、歪みに関する古典的モデルは、Brown-Conradyモデルを用いることであり、ここで2D+3Dの歪みが単純な2D関数(xd,yd)=g(x,y,S)に合成され、式中、(xd,yd)は歪み後の(フレームFにおける)ピクセル座標であり、(x,y)は歪み前の(フレームGにおける)ピクセル座標である。歪み関数g()は、合成g=f-1 o 3d-1 o proj-1である。歪み関数g()は、Brown-Conradyモデルを用いて得られ得る。
【0132】
[0159] 関数g-1は、通常、ピクセルが、対応する歪みのないピクセルにマッピングされるオフラインプロセスとして、gから復元され得、上記実施形態に適用する。逆関数g-1は、常に分析的に可逆であるわけではなく、数値方法またはLUTを用いて求めることができる。
【0133】
[0160] 留意すべき点として、本実施形態において、予測ブロックに関して単一のイントラ予測方向が伝送される。単一方向に基づいて、エンコーダまたはデコーダは、上述したようなマッピングおよびブロックの位置に基づくイントラ予測のために用いられる、図11Aおよび図11Bに示すような変形曲線を導出し得る。ブロックの位置はビットストリームにおいて既に示されているので、ブロックの位置に関して追加のシンタックスは必要ではない。マッピングは一般に、頻繁に変化しない。したがってマッピングは、ピクチャレベル、シーケンスレベル、または映像レベルで伝送されてよく、これは非常に小さなオーバヘッドしかもたらさない。よって、曲線に関するパラメータはブロックレベルで伝送される必要があり得るため、本実施形態は、イントラ予測が実行され得る曲線に関するパラメータを符号化するよりも効率的である。
【0134】
[0161] 上記において、全方位映像に関して、エクイレクタングラーマッピングを用いる、すなわち3D表面が球体であると考えられる様々な実施形態を説明する。留意すべき点として、本原理は、凸面を有する他の3D表面、および限定されるものではないがたとえば非常に大きな視野(魚眼レンズのように非常に小さな焦点距離)で取得された平面画像など他の種類の映像に適用することができる。一般には、本原理は、境界付近で画像を湾曲させる傾向を持つ非常に短い焦点距離で捕捉されたシーンまたは符号化される平面フレームへの表面のマッピングに起因する、歪みコンテンツを含む画像/映像に適用され得る。
【0135】
[0162] 図17は、本原理の典型的な実施形態の様々な態様が実装され得る典型的なシステム1700のブロック図を示す。システム1700は、後述する様々な構成要素を含むデバイスとして具体化されてよく、上述したプロセスを実行するように構成される。そのようなデバイスの例は、HMD、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルテレビ受信機、パーソナル映像記録システム、接続された家電機器、およびサーバを含むがこれに限定されない。システム1700はセンサを備えてよく、上述した典型的な映像システムを実装するために、図17に示し当業者に知られるように通信チャネルを介して他の同様のシステムに通信可能に結合され得る。
【0136】
[0163] システム1700は、上述したように様々なプロセスを実行するために、そこにロードされた命令を実行するように構成された少なくとも1つのプロセッサ1710を含んでよい。プロセッサ1710は、埋込型メモリ、入力出力インタフェース、および当該技術において既知であるような他の様々な回路を含んでよい。システム1700は、少なくとも1つのメモリ1720(たとえば揮発性メモリデバイス、不揮発性メモリデバイス)も含んでよい。システム1700は、EEPROM、ROM、PROM、RAM、DRAM、SRAM、フラッシュ、磁気ディスクドライブ、および/または光ディスクドライブを含むがこれに限定されない不揮発性メモリを含み得るストレージデバイス1740を更に含んでよい。ストレージデバイス1740は、非限定的な例として、内部ストレージデバイス、取付け型ストレージデバイス、および/またはネットワークアクセス可能ストレージデバイスを備えてよい。システム1700は、符号化された映像または復号された映像を提供するためにデータを処理するように構成されたエンコーダ/デコーダモジュール1730も含んでよい。
【0137】
[0164] エンコーダ/デコーダモジュール1730は、符号化および/または復号機能を実行するためにデバイスに含まれ得るモジュール(複数も可)を表す。エンコーダ500およびデコーダ700は、エンコーダ/デコーダモジュール1730において用いられ得る。既知であるように、デバイスは、符号化および復号モジュールの1または両方を含んでよい。またエンコーダ/デコーダモジュール1730は、システム1700の別々の要素として実装されてよく、あるいは当業者に知られるようにハードウェアとソフトウェアとの組み合わせとしてプロセッサ1710に組み込まれてもよい。
【0138】
[0165] システム1700は、ディスプレイ(1790)を更に含んでよく、あるいは通信チャネルを介してディスプレイに通信可能に結合され得る。ディスプレイは、たとえばOLEDまたはLCDタイプである。ディスプレイは、多くの場合大きなサイズである没入型(投影)壁であってもよい。
【0139】
[0166] システム1700は更に、タッチ表面1780(たとえばタッチパッドまたは触覚スクリーン)およびカメラ1770を備えてよい。プロセッサ1710は、システム1700の一部であってもそうでなくてもよいセンサから受信した信号を処理してよい。センサからの測定値のいくつかは、システム1700またはシステム1700に接続された他のデバイスの姿勢を計算するために用いられ得る。カメラ1770は、画像処理に関して環境の画像を捕捉し得る。プロセッサ1710は、図1において説明したような前処理および後処理機能も実行してよい。
【0140】
[0167] 上述した様々なプロセスを実行するためにプロセッサ1710にロードされるプログラムコードは、ストレージデバイス1740に格納され、その後、プロセッサ1710による実行のためにメモリ1720にロードされ得る。本原理の典型的な実施形態によると、プロセッサ(複数も可)1710、メモリ1720、ストレージデバイス1740、およびエンコーダ/デコーダモジュール1730の1または複数は、上述したプロセスの実行中、入力映像、ビットストリーム、等式、式、マトリックス、変数、動作、および動作ロジックを含むがこれに限定されない様々な項目の1または複数を格納してよい。
【0141】
[0168] システム1700は、通信チャネル1760を介して他のデバイスとの通信を可能にする通信インタフェース1750も含んでよい。通信インタフェース1750は、通信チャネル1760からのデータを送受信するように構成されたトランシーバを含んでよいが、これに限定されない。通信インタフェースは、モデムまたはネットワークカードを含んでよいがこれに限定されず、通信チャネルは、有線および/または無線媒体内に実装され得る。システム1700の様々な構成要素は、内部バス、ワイヤ、および印刷回路基板を含むがこれに限定されない様々な適切な接続を用いて互いに接続または通信可能に結合され得る。
【0142】
[0169] 本原理に係る典型的な実施形態は、プロセッサ1710によって実装されるコンピュータソフトウェアによって、またはハードウェアによって、またはハードウェアとソフトウェアとの組み合わせによって実行され得る。非限定的な例として、本原理に係る典型的な実施形態は、1または複数の集積回路によって実装され得る。メモリ1720は、技術環境に適した任意の種類のものであってよく、非限定的な例としてたとえば光メモリデバイス、磁気メモリデバイス、半導体ベースのメモリデバイス、固定メモリおよび取外し可能メモリなど任意の適当なデータストレージ技術を用いて実装され得る。プロセッサ1710は、技術環境に適した任意の種類のものであってよく、非限定的な例としてマイクロプロセッサ、汎用コンピュータ、専用コンピュータ、およびマルチコアアーキテクチャに基づいたプロセッサの1または複数を包含してよい。
【0143】
[0170] 様々な方法が上述され、方法の各々は、説明された方法を実現するための1または複数のステップまたはアクションを備える。方法の適切な動作のために特定の順序のステップまたはアクションが必要とされない限り、特定のステップおよび/またはアクションの順序および/または使用は、変更または結合されてよい。
【0144】
[0171] 本明細書で説明される実装は、たとえば方法またはプロセス、装置、ソフトウェアプログラム、データストリーム、または信号に実装され得る。単一形式の実装の文脈でしか説明されない(たとえば方法としてのみ説明される)場合でも、説明される特徴の実装は、他の形式(たとえば装置またはプログラム)で実装されてもよい。装置は、たとえば適当なハードウェア、ソフトウェア、およびファームウェアに実装され得る。方法はたとえば、たとえばコンピュータ、マイクロプロセッサ、集積回路、またはプログラマブル論理デバイスを含む、一般に処理デバイスを指すたとえばプロセッサなどの装置に実装され得る。またプロセッサは、たとえばコンピュータ、携帯電話、ポータブル/パーソナルデジタルアシスタント(「PDA」)、およびエンドユーザ間での情報の通信を容易にする他のデバイスなどの通信デバイスも含む。
【0145】
[0172] 本原理の「1つの実施形態」または「実施形態」または「1つの実装」または「実装」、ならびにそれらの他の変形例への言及は、実施形態に関して説明される特定の特徴、構造、特性などが、本原理の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書を通して様々な箇所に見られる、「1つの実施形態において」または「実施形態において」または「1つの実装において」または「実装において」といった表現、ならびに他の任意の変形例の出現は、必ずしも全てが同じ実施形態を指すわけではない。
【0146】
[0173] また、本出願またはクレームは、様々な情報を「決定すること」に言及し得る。情報を決定することは、たとえば情報を推定すること、情報を計算すること、情報を予測すること、または情報をメモリから取得することの1または複数を含んでよい。
【0147】
[0174] また、本出願またはクレームは、様々な情報に「アクセスすること」に言及し得る。情報にアクセスすることは、たとえば情報を受信すること、情報を(たとえばメモリから)取得すること、情報を格納すること、情報を処理すること、情報を伝送すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、または情報を推定することの1または複数を含んでよい。
【0148】
[0175] また、本出願またはクレームは、様々な情報を「受信すること」に言及し得る。「受信すること」は、「アクセスすること」と同様、幅広い表現であることが意図される。情報を受信することは、たとえば、情報にアクセスすること、または情報を(たとえばメモリから)取得することの1または複数を含んでよい。また「受信すること」は一般に、たとえば情報を格納すること、情報を処理すること、情報を伝送すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、または情報を推定することなどの動作中に何かと必要とされる。
【0149】
[0176] 当業者には明らかであるように、実装は、たとえば格納または伝送され得る情報を搬送するためにフォーマット化された様々な信号を生成してよい。情報はたとえば、方法を実行するための命令、または説明された実装の1つによって生成されたデータを含んでよい。たとえば信号は、説明された実施形態のビットストリームを搬送するためにフォーマット化され得る。そのような信号はたとえば、(たとえばスペクトルの無線周波数部分を用いて)電磁波として、またはベースバンド信号としてフォーマット化され得る。フォーマット化は、たとえばデータストリームを符号化し、符号化されたデータストリームによって搬送波を変調することを含んでよい。信号が搬送する情報はたとえば、アナログまたはデジタル情報であってよい。信号は、既知であるように、様々な有線または無線リンクを介して伝送され得る。信号は、プロセッサ可読媒体に格納され得る。
[付記1]
映像データを符号化する方法であって、
符号化に適した第1のフォーマットで表現され、第2のフォーマットでレンダリングするためのピクチャの第1のブロックに関するイントラ予測のための方向性モードにアクセスすること(1005)と、
前記第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定すること(1050、1230)と、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬すること(1260)と、
前記方向性モードを符号化することと、
前記第1のブロックと前記予測されたブロックとの差を符号化することと、
を備える、方法。
[付記2]
映像データを符号化する装置(1700)であって、
少なくとも1つのメモリと、
符号化に適した第1のフォーマットで表現され、第2のフォーマットでレンダリングするためのピクチャの第1のブロックに関するイントラ予測のための方向性モードにアクセスし、
前記第1のブロックに隣接する再構成ブロックにおける複数の参照サンプルを決定し、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬し、
前記方向性モードを符号化し、
前記第1のブロックと前記予測されたブロックとの差を符号化する
ように構成された1または複数のプロセッサと、
を備える、装置。
[付記3]
前記第1のフォーマットと前記第2のフォーマットとの間のマッピングは、ビットストリームでシグナリングされる、付記1に記載の方法または付記2に記載の装置。
[付記4]
映像データを復号する方法であって、
デコーダ出力のために第1のフォーマットで表現されたピクチャであって、復号されたバージョンを第2のフォーマットでレンダリングするためのピクチャの第1のブロックに関するイントラ予測のための方向性モデルにアクセスすること(1005)と、
前記第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定すること(1050)と、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬することと、
前記予測されたブロックを用いて前記第1のブロックを復号することと、
を備える、方法。
[付記5]
映像データを復号する装置(1700)であって、
少なくとも1つのメモリと、
デコーダ出力のために第1のフォーマットで表現されたピクチャであって、復号されたバージョンを第2のフォーマットでレンダリングするためのピクチャの第1のブロックに関するイントラ予測のための方向性モデルにアクセスし、
前記第1のブロックに隣接する復号されたブロックにおける複数の参照サンプルを決定し、
前記第1のブロックに関する予測されたブロックを形成するために、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づく非直曲線に沿って、前記複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬し、
前記予測されたブロックを用いて前記第1のブロックを復号するように構成された1または複数のプロセッサと、
を備える、装置。
[付記6]
前記ピクチャの前記復号されたバージョンは、前記マッピングに対応する逆マッピングによって表示ピクチャを生成するために用いられる、付記4に記載の方法または付記5に記載の装置。
[付記7]
前記第1のブロックにおける第1のサンプル位置を、前記ピクチャ内の前記第1のブロックに対応するレンダリング空間内の第2のブロックにおける第2のサンプル位置へマッピングすること(910、920)と、
前記第2のサンプル位置および前記方向性モードに基づいて、前記レンダリング空間内の前記第2のブロックに隣接する第3の位置を決定することと、
前記ピクチャ内の前記第1のブロックに隣接する第4の位置へ前記第3の位置をマッピングすること(930、940)と、
を更に備え、またはそのために更に構成され、
前記第4の位置におけるサンプルは、前記ブロックにおける前記第1のサンプル位置を予測するための参照サンプルとして用いられる、付記1、3、4、および6のいずれか1つに記載の方法、または付記2、5、および6のいずれか1つに記載の装置。
[付記8]
前記方向性モードに対応する方向は、前記レンダリング空間において他の方向に変換され、前記第2のブロックに隣接する第3の位置を決定することは、前記他の方向に基づく、付記7に記載の方法または付記7に記載の装置。
[付記9]
前記方向性モードおよび前記ピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付けるルックアップテーブルにアクセスすること
を更に備える、付記1、3、4、および6~8のいずれか1つに記載の方法、またはそのために更に構成される、付記2および5~8のいずれか1つに記載の装置。
[付記10]
第2のブロックに関するルックアップテーブルは、前記第2のブロックが前記第1のブロックよりも小さい場合、前記第1のブロックに関する前記ルックアップテーブルの左上部分である、付記9に記載の方法または付記9に記載の装置。
[付記11]
前記方向性モードおよび前記ピクチャにおける前記第1のブロックの位置およびサイズに基づいて、予測される前記第1のブロック内のサンプル位置を対応する参照サンプル位置に関連付ける関数の1または複数のパラメータにアクセスすることを更に備える、付記1、3、4、および6~10のいずれか1つに記載の方法、またはそのために更に構成される、付記2および5~10のいずれか1つに記載の装置。
[付記12]
符号化された映像を表現するビットストリームであって、
符号化に適した第1のフォーマットで表現され、第2のフォーマットでレンダリングするためのピクチャの第1のブロックに関して符号化されたイントラ予測のための方向性モードと、
前記ピクチャの前記第1のブロックと前記第1のブロックに関する予測されたブロックとの間の差の符号化と、
を備え、
前記予測されたブロックは、非直曲線に沿って、複数の参照サンプルの各々を前記第1のブロック内のサンプル位置のセットへ伝搬することによって形成され、
前記非直曲線は、前記アクセスされた方向性モードおよび前記第1のフォーマットと前記第2のフォーマットとの間のマッピングに基づき、
前記複数の参照サンプルは、前記第1のブロックに隣接する再構成ブロック内にある、ビットストリーム。
[付記13]
コンピュータプログラムが1または複数のプロセッサによって実行されると、付記1、3、4、および6~11のいずれか1つに記載の方法を実行するためのソフトウェアコード命令を備える、コンピュータプログラム製品。
[付記14]
コンピュータによって実行されると、付記1、3、4、および6~11のいずれか1つに記載の方法を前記コンピュータに実行させる命令を備える、コンピュータ可読媒体。
図1
図2A
図2B
図2C
図3
図4
図5
図6
図7
図8
図9
図10
図11A
図11B
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28