(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-29
(45)【発行日】2023-10-10
(54)【発明の名称】ハイブリッドビデオコード化のためのエンコーダ、デコーダ、方法、およびビデオビットストリーム、ならびにコンピュータプログラム
(51)【国際特許分類】
H04N 19/117 20140101AFI20231002BHJP
H04N 19/159 20140101ALI20231002BHJP
H04N 19/523 20140101ALI20231002BHJP
H04N 19/59 20140101ALI20231002BHJP
H04N 19/80 20140101ALI20231002BHJP
【FI】
H04N19/117
H04N19/159
H04N19/523
H04N19/59
H04N19/80
(21)【出願番号】P 2021555161
(86)(22)【出願日】2020-03-12
(86)【国際出願番号】 EP2020056730
(87)【国際公開番号】W WO2020182965
(87)【国際公開日】2020-09-17
【審査請求日】2021-11-12
(32)【優先日】2019-03-12
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500341779
【氏名又は名称】フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(74)【代理人】
【識別番号】100134119
【氏名又は名称】奥町 哲行
(72)【発明者】
【氏名】ブロス・ベンジャミン
(72)【発明者】
【氏名】ヴィンケン・マーティン
(72)【発明者】
【氏名】ヘンケル・アナスタシア
(72)【発明者】
【氏名】カイデル・パウル
(72)【発明者】
【氏名】ズパンチッチ・イヴァン
(72)【発明者】
【氏名】シュヴァルツ・ハイコー
(72)【発明者】
【氏名】マルペ・デトレフ
(72)【発明者】
【氏名】ヴィーガンド・トーマス
【審査官】久保 光宏
(56)【参考文献】
【文献】国際公開第2018/067848(WO,A1)
【文献】特表2018-530244(JP,A)
【文献】大久保 榮 監修,「インプレス標準教科書シリーズ H.265/HEVC教科書」,初版,日本,株式会社インプレスジャパン,2013年10月21日,第17,18,57,58頁,ISBN: 978-4-8443-3468-2.
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
CSDB(日本国特許庁)
学術文献等データベース(日本国特許庁)
IEEEXplore(IEEE)
(57)【特許請求の範囲】
【請求項1】
ビデオエンコーダ(500)であって、
ピクチャのコード化ユニット(585)に対して、Adaptive Motion Vector Resolution(AMVR)モードの指示とインター予測モードが並行移動インターまたはアフィンであるかの指示とを備える少なくとも2つのシンタックス要素(520)を決定し、
前記コード化ユニット(585)の動き補償予測のために、指示された前記AMVRモードと前記インター予測モードが並行移動インターまたはアフィンであるかの前記指示とに依存して、水平または垂直方向にハーフサンプル位置(412;415)でサンプルを取得するために、6タップ補間フィルタおよび8タップ補間フィルタを備える複数のFIR補間フィルタからFIR補間フィルタ(540)を選択し、
前記ハーフサンプル位置(412;415)で前記サンプルを取得するために、前記コード化ユニット(585)のサンプルに選択された前記FIR補間フィルタ(540)を適用し、
前記
ピクチャの符号化された表現(514)として、前記
少なくとも2つのシンタックス要素(520)を含むビットストリームを提供する
ように構成される、
ビデオエンコーダ(500)。
【請求項2】
ビデオデコーダ(700)であって、
ビデオビットストリームから、
ピクチャのコード化ユニット(785)に対してAdaptive Motion Vector Resolution(AMVR)モードの指示とインター予測モードが並行移動インターまたはアフィンであるかの指示とを備える少なくとも2つのシンタックス要素(520)を識別し、
前記コード化ユニット(785)の動き補償予測のために、指示された前記AMVRモードと前記インター予測モードが並行移動インターまたはアフィンであるかの前記指示とに依存して、水平または垂直方向にハーフサンプル位置(412;415)でサンプルを取得するために、6タップ補間フィルタまたは8タップ補間フィルタを備える複数のFIR補間フィルタからFIR補間フィルタを選択し、
前記ハーフサンプル位置(412;415)で前記サンプルを取得するために、選択されたFIR補間フィルタ(540)
を前記
コード化ユニット(785)
のサンプルに適用する
ように構成される、
ビデオデコーダ(700)。
【請求項3】
前記8タップ補間フィルタは、フィルタ係数-1,4,-11,40,40,-11,4,-1を有し、前記6タップ補間フィルタは、フィルタ係数3,9,20,20,9,3を有する、請求項
2に記載の
ビデオデコーダ(700)。
【請求項4】
前記複数のFIR補間フィルタは、2以上の6タップフィルタを備える、請求項
2に記載の
ビデオデコーダ(700)。
【請求項5】
前記少なくとも2つのシンタックス要素のいずれも、選択された前記FIR補間フィルタを示すために明示的に専用ではない、請求項
2に記載の
ビデオデコーダ(700)。
【請求項6】
前記ビデオデコーダ(700)は、前記ピクチャの異なるコード化ユニットに対して個別にFIR補間フィルタ(540)を選択するように構成される、請求項
2に記載の
ビデオデコーダ(700)。
【請求項7】
少なくとも2つのシンタックス要素は、前記コード化ユニットのサイズをさらに備える、請求項
6に記載の
ビデオデコーダ(700)。
【請求項8】
前記少なくとも2つのシンタックス要素は、参照ピクチャの特性を示すシンタックス要素をさらに備える、請求項2に記載のビデオデコーダ(700)。
【請求項9】
ビデオ
符号化の方法であって、
ピクチャのコード化ユニット(585)に対して、Adaptive Motion Vector Resolution(AMVR)モードの指示とインター予測モードが並行移動インターまたはアフィンであるかの指示とを備える少なくとも2つのシンタックス要素(520)を決定す
ることと、
前記コード化ユニット(585)の動き補償予測のために、指示された前記AMVRモードと前記インター予測モードが並行移動インターまたはアフィンであるかの前記指示とに依存して、水平または垂直方向にハーフサンプル位置(412;415)でサンプルを取得するために、6タップ補間フィルタおよび8タップ補間フィルタを備える複数のFIR補間フィルタからFIR補間フィルタ(540)を選択することと、
前記ハーフサンプル位置(412;415)で前記サンプルを取得するために、前記コード化ユニット(585)のサンプルに選択された前記FIR補間フィルタ(540)を適用することと、
前記
ピクチャの符号化された表現
(514)として、前記
少なくとも2つのシンタックス要素(520)を含むビットストリームを提供することと
を含む、方法。
【請求項10】
ビデオ
復号の方法であって、
ビットストリームから、
ピクチャのコード化ユニット(785)に対してAdaptive Motion Vector Resolution(AMVR)モードの指示とインター予測モードが並行移動インターまたはアフィンであるかの指示とを備える少なくとも2つのシンタックス要素(520)を識別することと、
前記コード化ユニット(785)の動き補償予測のために、指示された前記AMVRモードと前記インター予測モードが並行移動インターまたはアフィンであるかの前記指示とに依存して、水平または垂直方向にハーフサンプル位置(412;415)でサンプルを取得するために、6タップ補間フィルタまたは8タップ補間フィルタを備える複数のFIR補間フィルタからFIR補間フィルタを選択することと、
前記ハーフサンプル位置(412;415)で前記サンプルを取得するために、選択された前記FIR補間フィルタ(540)を前記
コード化ユニット(785)
のサンプルに適用す
ることと
を含む、方
法。
【請求項11】
コンピュータプログラムであって、前記コンピュータプログラムがコンピュータ上で実行されるときに請求項
9または10のいずれか一項に記載の方法を実行するための、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明による実施形態は、ハイブリッドビデオコード化用のエンコーダおよびデコーダに関する。本発明によるさらなる実施形態は、ハイブリッドビデオコード化の方法に関する。本発明によるさらなる実施形態は、ハイブリッドビデオコード化のためのビデオビットストリームに関する。
【背景技術】
【0002】
すべての最新のビデオコード化規格は、動きベクトル(MV)の分数サンプル精度を備えた動き補償予測(MCP)を使用する。分数サンプル位置における参照ピクチャのサンプル値を求めるために、補間フィルタが用いられる。
【0003】
4分の1ルーマサンプルの動きベクトル精度を使用する高効率ビデオコード化(HEVC)規格では、様々な1次元有限インパルス応答(FIR)フィルタを使用して計算される15個の分数ルーマサンプル位置がある。しかしながら、各分数サンプル位置について、補間フィルタは固定されている。
【0004】
また、各分数サンプル位置に対して固定の補間フィルタを有する代わりに、1組の補間フィルタから各分数サンプル位置に対して補間フィルタを選択することも可能である。スライスレベルで異なる補間フィルタ間の切り替えを可能にする手法には、Non-separable Adaptive Interpolation Filter(AIF)[1]、分離可能適応補間フィルタ(SAIF)[2]、Switched Interpolation Filtering with Offset(SIFO)[3]、およびEnhanced Adaptive Interpolation Filter(EAIF)[4]が含まれる。補間フィルタ係数はスライスごとに明示的にシグナリングされる(AIF、SAIF、EAIFなど)か、または(SIFOの場合のように)所定の補間フィルタのセットのうちのどの補間フィルタが使用されるかが示される。
【0005】
最新のVersatile Video Coding(VVC)規格[5]の現在のドラフトは、いわゆるAdaptive Motion Vector Resolution(AMVR)をサポートしている。AMVRを使用して、動きベクトル予測子(MVP)と動きベクトル差分(MVD)の両方の精度を、以下の可能性の中から一緒に選択することができる:
-4分の1サンプル(QPEL):4分の1ルーマサンプルの動きベクトル精度、
-フルサンプル(FPEL):ルーマサンプルの動きベクトル精度、
-4サンプル(4PEL):4つのルーマサンプルの動きベクトル精度。
【0006】
所望の精度を選択するために、追加のシンタックス要素がビットストリームで送信される。双予測の場合、示された精度はlist0とlist1の両方に適用される。AMVRはスキップモードおよびマージモードでは利用できない。さらに、すべてのMVDが0に等しい場合、AMVRは利用できない。QPEL以外の精度が使用される場合、MVを得るためにMVDを加算する前に、MVPは最初に指定された精度に丸められる。
【0007】
本開示のいくつかの実施形態は、上述の概念のうちの1つまたは複数を実施してもよく、またはその文脈において使用可能であってもよい。例えば、実施形態は、HEVCまたはVVC規格を実装することができ、AMVRおよび上述のMV精度を使用することができる。
【0008】
ビットレート、複雑さ、およびハイブリッドビデオコード化の達成可能な品質の間の改善されたトレードオフを提供する、ビデオデータを符号化、復号、および送信するための概念が望まれている。
【発明の概要】
【0009】
本開示の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)用のエンコーダに関し、エンコーダは入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、エンコーダは、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を決定し、1つまたは複数のシンタックス要素によって記述される特性(たとえば、1つまたは複数のシンタックス要素によってシグナリングされるデコーダ設定、または1つまたは複数のシンタックス要素によってシグナリングされるビデオシーケンスの部分の特性)に基づいて、(例えば、デコーダによって)ビデオシーケンスの部分に適用される処理方式(例えば、補間フィルタ)を選択し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプル(例えば、ビデオシーケンスに関連する、例えば、サンプル、例えば、分数サンプル)を取得するためのものであり、所与の符号化されたインデックス値が1つまたは複数のシンタックス要素によって記述される特性に応じて(例えば、1つまたは複数のシンタックス要素に応じて)異なる処理方式を表す(例えば、関連する)ように、(1つまたは複数のシンタックス要素に依存して)選択された処理方式を示すインデックスを符号化し、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素および符号化されたインデックスを含むビットストリームを提供する(例えば、送信する、アップロードする、ファイルとして保存する)ように構成される。
【0010】
部分の特性に基づいて部分に適用される処理方式を選択することにより、例えば部分の特性に従って、適用される処理方式を部分に適合させることが可能になる。例えば、ビデオシーケンスの異なる部分に対して異なる処理方式を選択することができる。例えば、特定の処理方式は、特に効率的な符号化を容易にするため、および/または所与の特性を有する部分の符号化された表現の、特に高品質を容易にするために適合され得るため、特定の処理方式は、所与の特性を有する部分を符号化するのに特に有益であり得る。したがって、部分の特性に応じて処理方式を選択する(例えば、可能な処理方式のセットを部分の特性に適合させることができる)ことにより、ビデオシーケンスの符号化の全体的な効率および品質を同時に向上させることができる。符号化の効率は、符号化の低い計算労力を指す場合もあれば、符号化された情報の高い圧縮率を指す場合もある。
【0011】
選択された処理方式を示す符号化されたインデックスを提供することにより、その部分の適切な復号が保証され得る。符号化されたインデックスの所与の値は、部分の特性に応じて、異なる処理方式を表すことができるため、エンコーダは、特性に従ってインデックスの符号化を適合させることができる。例えば、符号化されたインデックスの可能な値の数は、その特性を有する部分に適用可能な処理方式の数に制限され得る。したがって、選択可能な処理方式(例えば、異なる特性に関連する)の総数が多い場合でも、符号化されたインデックスは、少ないビット数を必要とすることがある(これは、例えば、現在考慮されている部分の実際の特性の観点から選択可能な処理方式の数に適合させることができる)。したがって、エンコーダは、インデックスを効率的に符号化するために、1つまたは複数のシンタックス要素を決定することによってエンコーダに利用可能な部分の特性に関する知識を活用することができる。したがって、特性に従って処理方式を選択する(特性は、利用可能な異なる処理方式の総数と比較した場合に、現在考慮されている部分の可能な処理方式の数を減らすことができる)ことと、特性に応じてインデックスを符号化することとの組み合わせは、選択された処理方式がビットストリーム内で示され得るが、符号化の全体的な効率を高めることができる。
【0012】
一実施形態によれば、エンコーダは、1つまたは複数のシンタックス要素によって記述される特性に応じて、インデックス値を符号化されたインデックス値にマッピングするマッピング規則を適合させるように構成される。特性に応じてマッピング規則を適応させることにより、所与の符号化されたインデックス値が特性に応じて異なる処理方式を表すように、インデックスが符号化され得ることが保証され得る。
【0013】
一実施形態によれば、エンコーダは、選択された処理方式を示す符号化されたインデックスを提供するために使用されるビンの数を、1つまたは複数のシンタックス要素によって記述される特性に応じて適応させるように構成される。したがって、エンコーダは、ビンの数を、特性に対して許容可能な処理方式の数に適合させることができ、その結果、エンコーダは、少数の処理方式が特性に対して許容可能な場合、少数のビンを使用することができ、したがって、ビットストリームのサイズを縮小する。
【0014】
一実施形態によれば、エンコーダは、1つまたは複数のシンタックス要素によって記述される特性の観点から許容可能な処理方式のセットを決定し、決定されたセットから処理方式を選択するように構成される。特性を考慮して許容可能な処理方式のセットを決定することによって、エンコーダは、1つまたは複数のシンタックス要素から選択可能な処理方式に関する情報を推論することができる。したがって、エンコーダは、処理方式を選択するために、1つまたは複数のシンタックス要素を決定することから既に利用可能な情報を使用し、したがって、符号化の効率を高める。さらに、処理方式を選択するために処理方式のセットに依存することにより、許容可能な処理方式の数を処理方式のセットに制限することができ、それにより、インデックスを符号化されたインデックスの小さいサイズに符号化することが可能になる。
【0015】
一実施形態によれば、エンコーダは、ビデオシーケンスの部分に対して単一の処理方式が許容可能であるかどうかを判定し、ビデオシーケンスの一部に対して単一の処理方式(例えば、空間フィルタまたは補間フィルタ)のみが許容可能であるという発見に応じて、符号化されたインデックスの包含を選択的に省略するように構成される。したがって、エンコーダは、例えば、部分の特性から、部分に対して単一の処理方式が許容可能であると推論し、部分に適用される処理方式として単一の処理方式を選択することができる。符号化されたインデックスをビットストリームに含めることを省略すると、ビットストリームのサイズを縮小することができる。
【0016】
一実施形態によれば、エンコーダは、符号化されたインデックス値を表すビンの数が、ビデオシーケンスの部分に許容可能な処理方式の数に適合されるように、インデックス値を符号化されたインデックス値にマッピングするマッピング規則を選択するように構成される。したがって、エンコーダは、ビンの数を、部分に対して許容可能な処理方式の数に適合させることができ、その結果、符号化されたインデックスは、少数の処理方式が部分に対して許容可能な場合、少数のビンを有することができ、したがって、ビットストリームのサイズを縮小する。
【0017】
一実施形態によれば、エンコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0018】
一実施形態によれば、エンコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。したがって、フィルタを個別に選択することができ、フィルタを選択するための柔軟性が高まり、その結果、フィルタのセットを部分の特性に非常に正確に適合させることができる。
【0019】
一実施形態によれば、エンコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択するように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたはピクチャの異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。したがって、処理方式の選択は、異なるブロックの個々の特性を考慮することができ、したがって、ブロックの符号化の向上、またはコード化効率、またはビットストリームのサイズの縮小を容易にする。
【0020】
一実施形態によれば、エンコーダは、所与の符号化されたインデックス値が動きベクトル精度(これは、例えば、ビットストリーム内のシンタックス要素を使用してシグナリングされることができ、例えば、以下の値:QPEL、HPEL、FPEL、4PELのうちの1つを取り出すことができる)に応じて異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを符号化する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される。したがって、インデックスの符号化は、MV精度、例えばMV精度に許容可能な処理方式の数に依存し得る。MV精度のいくつかの設定に関して、許容可能な処理方式の数は他のものよりも少なくてもよく、これはビットストリームのサイズを縮小する効率的な方法である。
【0021】
一実施形態によれば、エンコーダでは、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0022】
一実施形態によれば、エンコーダは、所与の符号化されたインデックス値が動きベクトルの分数部分(または複数の分数部分)に応じて、異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを符号化する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される(例えば、異なる符号化方式は、考慮される部分のすべての動きベクトルが整数サンプル位置、例えば、ルーマサンプル位置を指すか、指さないかに依存して、使用される)。したがって、エンコーダは、インデックスの符号化を、動きベクトルの分数部分に許容可能な処理方式の数に適合させることができる。動きベクトルの分数部分は部分から決定され得るので、これはビットストリームのサイズを縮小する効率的な方法である。
【0023】
一実施形態によれば、エンコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)とフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定し、決定されたセットから処理方式を選択するように構成される。例えば、最大MV精度では、1つの特に効率的な処理方式があり得るので、処理方式のセットを決定しないことが有益であり得るが、最大またはフルサンプルMV精度では、選択可能な処理方式のいずれも適用できない可能性があるため、処理方式の選択は不要であり得る。対照的に、最大MV精度とフルサンプルまたは最小MV精度との間のMV精度の場合、処理方式をその部分の特性に適合させることが特に有益であり得る。
【0024】
一実施形態によれば、エンコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)、第2のFIRフィルタリング、および第3のFIRフィルタリングの間で選択するためのインデックス(処理方式インデックス、if_idx)を符号化するように構成される。
【0025】
一実施形態によれば、エンコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)と第2のFIRフィルタリングとの間で選択するためのインデックス(処理方式インデックス、if_idx)を符号化するように構成される。
【0026】
一実施形態によれば、エンコーダは、異なる特性(例えば、より強いローパス特性対より弱いローパス特性)を有する処理方式(例えば、補間フィルタ)間で選択する(例えば、切替える)ように構成される。例えば、強いローパス特性を有する処理方式またはフィルタは、高周波数ノイズ成分を減衰させることができ、その結果、ビデオシーケンスの符号化された表現の品質を向上させることができる。
【0027】
一実施形態によれば、エンコーダは、動きベクトル精度および分数サンプル位置または動きベクトルの分数部分(または複数の分数部分)に応じてマッピング規則を選択するように構成される。したがって、エンコーダは、インデックスの符号化を、MV精度および動きベクトルの分数部分に許容可能な処理方式の数に適合させることができる。MV精度および動きベクトルの分数部分は、1つまたは複数のシンタックス要素から決定され得るため、これらの特性を使用して、許容可能な処理方式の数を決定し、それに応じてマッピング規則を選択することは非常に効率的であり得る。
一実施形態によれば、エンコーダは、動きベクトル精度に応じて、利用可能な処理方式のセット(例えば、補間フィルタ)を決定するように構成される。
【0028】
一実施形態によれば、エンコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能の間で選択するように構成される(例えば、処理方式を記述するインデックス要素または補間フィルタは、ハーフサンプル動きベクトル分解能が選択された場合に選択的に含まれ、処理方式を記述するインデックス要素は、例えば、他の場合には省略される)。
【0029】
一実施形態によれば、エンコーダにおいて、処理方式は、1つまたは複数のFIRフィルタを備える。FIRフィルタは、ビデオシーケンスを処理するための特に安定したフィルタである。
【0030】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)用のエンコーダに関し、エンコーダは入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、エンコーダは、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を決定し、1つまたは複数のシンタックス要素によって記述される特性(たとえば、1つまたは複数のシンタックス要素によってシグナリングされるデコーダ設定、または1つまたは複数のシンタックス要素によってシグナリングされるビデオシーケンスの部分の特性)に基づいて、(例えば、デコーダによって)ビデオシーケンスの部分に適用される処理方式(例えば、補間フィルタ)を選択し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプル(例えば、ビデオシーケンスに関連する、例えば、サンプル、例えば、分数サンプル)を取得するためのものであり、1つまたは複数のシンタックス要素によって記述される特性に応じて(例えば、1つまたは複数のシンタックス要素に応じて)選択された処理方式を示す符号化されたインデックスを提供するために使用されるエントロピーコード化方式を選択し(例えば、エントロピーコード化方式によって記述されたビンの数は、1つまたは複数の考慮されるシンタックス要素の観点から、1つの処理方式のみが許容可能である場合、ゼロに等しくてもよい)、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含み、符号化されたインデックスを含む(例えば、ビンの選択された数がゼロより大きい場合)ビットストリームを提供する(例えば、送信する、アップロードする、ファイルとして保存する)ように構成される。
【0031】
部分の特性に基づいて部分に適用される処理方式を選択することは、前の態様に関して説明したのと同等の機能および利点を提供する。さらに、エントロピーコード化方式を特性に応じて選択することにより、符号化されたインデックスの提供を特性に適合させることができる。例えば、符号化されたインデックスの可能な値の数は、その特性を有する部分に適用可能な処理方式の数に制限され得る。したがって、符号化されたインデックスは、異なる部分に対して選択可能な処理方式の総数が多い場合であっても、ビットストリーム内に低ビット数を必要とするか、またはビットを必要としないことがある。したがって、1つまたは複数のシンタックス要素を決定することによってエンコーダに利用可能な部分の特性に関する知識に基づいてエントロピーコード化方式を選択することは、符号化されたインデックスの効率的な提供を提供することができる。したがって、特性に従ってプロセス方式とエントロピー符号化方式の両方を選択すると、選択された処理方式がビットストリームに示されても、符号化の全体的な効率が向上する可能性がある。
【0032】
一実施形態によれば、エンコーダにおいて、エントロピーコード化方式は、符号化されたインデックスを提供するための2値化方式を含む。エントロピーコード化方式は特性に応じて選択されるため、2値化方式は特性に応じて適合させることができ、その結果、2値化方式は符号化されたインデックスの特に短い表現を提供することができる。
【0033】
一実施形態によれば、エンコーダにおいて、2値化方式は、符号化されたインデックスを提供するために使用されるビンの数を含む。したがって、符号化されたインデックスを提供するために使用されるビンの数は、特性に従って適合されることができ、その結果、エンコーダは、効率的な符号化を提供するように、符号化されたインデックスを提供するために少数のビンを選択し得るか、またはビンを選択することができない。
【0034】
一実施形態によれば、エンコーダは、1つまたは複数のシンタックス要素によって記述される特性に応じて、インデックス値を符号化されたインデックス値にマッピングするマッピング規則を適合させるように構成される。
【0035】
一実施形態によれば、エンコーダは、選択された処理方式を示す符号化されたインデックスを提供するために使用されるビンの数を、1つまたは複数のシンタックス要素によって記述される特性に応じて適応させるように構成される。
【0036】
一実施形態によれば、エンコーダは、1つまたは複数のシンタックス要素によって記述される特性の観点から許容可能な処理方式のセットを決定し、決定されたセットから処理方式を選択するように構成される。
【0037】
一実施形態によれば、エンコーダは、ビデオシーケンスの部分に対して単一の処理方式が許容可能であるかどうかを判定し、ビデオシーケンスの一部に対して単一の処理方式(例えば、空間フィルタまたは補間フィルタ)のみが許容可能であるという発見に応じて、符号化されたインデックスの包含を選択的に省略するように構成される。
【0038】
一実施形態によれば、エンコーダは、符号化されたインデックス値を表すビンの数が、ビデオシーケンスの部分に許容可能な処理方式の数に適合されるように、インデックス値を符号化されたインデックス値にマッピングするマッピング規則を選択するように構成される。
【0039】
一実施形態によれば、エンコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0040】
一実施形態によれば、エンコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。
【0041】
一実施形態によれば、エンコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択するように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたは「ピクチャ」の異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。
【0042】
一実施形態によれば、エンコーダは、所与の符号化されたインデックス値が動きベクトル精度(これは、例えば、ビットストリーム内のシンタックス要素を使用してシグナリングされることができ、例えば、以下の値:QPEL、HPEL、FPEL、4PELのうちの1つを取り出すことができる)に応じて異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを符号化する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される。
【0043】
一実施形態によれば、エンコーダでは、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0044】
一実施形態によれば、エンコーダは、所与の符号化されたインデックス値が動きベクトルの分数部分(または複数の分数部分)に応じて、異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを符号化する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される(例えば、異なる符号化方式は、考慮される部分のすべての動きベクトルが整数サンプル位置、例えば、ルーマサンプル位置を指すか、指さないかに依存して、使用される)。
【0045】
一実施形態によれば、エンコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)とフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定し、決定されたセットから処理方式を選択するように構成される。
【0046】
一実施形態によれば、エンコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)、第2のFIRフィルタリング、および第3のFIRフィルタリングの間で選択するためのインデックス(処理方式インデックス、if_idx)を符号化するように構成される。
【0047】
一実施形態によれば、エンコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)と第2のFIRフィルタリングとの間で選択するためのインデックス(処理方式インデックス、if_idx)を符号化するように構成される。
【0048】
一実施形態によれば、エンコーダは、異なる特性(例えば、より強いローパス特性対より弱いローパス特性)を有する処理方式(例えば、補間フィルタ)間で選択する(例えば、切替える)ように構成される。
【0049】
一実施形態によれば、エンコーダは、動きベクトル精度および分数サンプル位置または動きベクトルの分数部分(または複数の分数部分)に応じてマッピング規則を選択するように構成される。
一実施形態によれば、エンコーダは、動きベクトル精度に応じて、利用可能な処理方式のセット(例えば、補間フィルタ)を決定するように構成される。
【0050】
一実施形態によれば、エンコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能の間で選択するように構成される(例えば、処理方式を記述するインデックス要素または補間フィルタは、ハーフサンプル動きベクトル分解能が選択された場合に選択的に含まれ、処理方式を記述するインデックス要素は、例えば、他の場合には省略される)。
一実施形態によれば、エンコーダにおいて、処理方式は、1つまたは複数のFIRフィルタを備える。
【0051】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)用のデコーダに関し、デコーダはビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、デコーダは、ビデオシーケンスの符号化された表現としてビットストリームを取得し(例えば、受信、ダウンロード、ファイルから開く)、ビットストリームから、ビデオシーケンスの部分(例えば、ブロック)(および符号化されたインデックス)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を識別し、1つまたは複数のシンタックス要素とインデックス(符号化された形式のビットストリームに含まれ得る)とに基づいて、ビデオシーケンスの部分のための処理方式(例えば、エンコーダによって選択された、例えば補間フィルタ)を識別し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測(例えば、ビデオシーケンスに関する、例えば、サンプル、例えば、分数サンプル)のためのサンプルを取得するためであり、デコーダは、1つまたは複数のシンタックス要素に応じて(例えば、1つまたは複数のシンタックス要素の値に応じて)、所与の符号化されたインデックス値に異なる処理方式を割り当てるように構成され、識別された処理方式をビデオシーケンスの部分に適用するように構成される。
【0052】
デコーダは、シンタックス要素およびインデックスに基づいて部分のための処理方式を識別するという考えに基づいているが、インデックスの値を表す所与の符号化されたインデックス値は、様々な処理方式に関連付けられてもよい。処理方式の識別は、シンタックス要素に応じて符号化されたインデックス値に処理方式を割り当てることによって達成され得る。したがって、デコーダは、符号化されたインデックス値に関連付けられ得る異なる処理方式から処理方式を識別するために、シンタックス要素によって提供される情報を使用することができる。所与の符号化されたインデックス値をいくつかの処理方式に割り当てることができるので、ビットストリームの情報密度は特に高くてもよく、依然としてデコーダは処理方式を識別することができる。
【0053】
一実施形態によれば、デコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0054】
一実施形態によれば、デコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。
【0055】
一実施形態によれば、デコーダは、動きベクトルの分数部分(または複数の分数部分)に応じて(例えば、1つまたは複数の動きベクトルの分数部分に応じて)フィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される(例えば、動きベクトル終点がフルサンプル位置にあるか、または検討中の方向のフルサンプル位置にある場合、第1のフィルタを選択することによって、また、動きベクトル終点がフルサンプル間にあるか、または検討中の方向のフルサンプル間にある場合、第1のフィルタとは異なる第2のフィルタを選択することによって)。
【0056】
一実施形態によれば、デコーダは、動きベクトルの分数部分(または複数の分数部分)に応じて、第1の方向(例えば、x)のフィルタリング用と第2の方向(例えば、y)のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される。
【0057】
一実施形態によれば、デコーダは、動きベクトルの(1つまたは複数またはすべての)分数部分(または複数の分数部分)がフルサンプル上にある方向のフィルタリングに、より強いローパスフィルタリングが適用されるように、第1の方向のフィルタリング用と第2の方向のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される(例えば、ハーフサンプルの正確な動きベクトル(複数可)がフルサンプル位置(複数可)を指す場合)(動きベクトルの分数部分(複数可)がフルサンプル間にある方向に適用されるフィルタリングと比較して)。
【0058】
一実施形態によれば、デコーダは、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)に応じて、シンタックス要素(例えば、補間フィルタインデックスif_idx)または所定のフィルタによってシグナリングされるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する、例えば、フィルタリング方向ごとに個別に)ように構成される(例えば、シンタックス要素によってシグナリングされるフィルタは、例えば、第1の方向の位置座標を考慮するとき、例えば、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)がフルサンプル間にある場合、第1の方向のフィルタリングのために選択され、また所定のフィルタは、例えば、第2の方向の位置座標を考慮するとき、例えば、動きベクトルのすべての分数部分(または複数の分数部分)がフルサンプル上にある場合、第1の方向とは異なる第2の方向のフィルタリングのために選択される)。
【0059】
一実施形態によれば、デコーダは、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)に応じて、第1のシンタックス要素(例えば、補間フィルタインデックスif_idx)、またはフィルタシンタックス要素によってシグナリングされた第2のフィルタによってシグナリングされる第1のフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する、例えば、フィルタリング方向ごとに個別に)ように構成される(例えば、フィルタシンタックス要素によってシグナリングされる第1のフィルタは、例えば、第1の方向の位置座標を考慮するとき、例えば、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)がフルサンプル間にある場合、第1の方向のフィルタリングのために選択され、また、例えば、フィルタシンタックス要素によってシグナリングされる第2のフィルタは、例えば、第2の方向の位置座標を考慮するとき、例えば、動きベクトルのすべての分数部分(または複数の分数部分)がフルサンプル上にある場合、第1の方向とは異なる第2の方向のフィルタリングのために選択される)。
【0060】
一実施形態によれば、デコーダは、マージモードで隣接ブロックからフィルタ選択を引き継ぐように構成される(例えば、動きベクトルが隣接ブロックの動きベクトルと同一であるかどうかに応じて選択的に)。
【0061】
一実施形態によれば、デコーダにおいて、選択された(例えば、適用された)処理方式は、ルーマ成分の(例えば、空間)フィルタリングおよび/またはクロマ成分の(例えば、空間)フィルタリングを定義する。
一実施形態によれば、デコーダは、予測モードに応じてフィルタを選択する(例えば、適用する)ように構成される。
【0062】
一実施形態によれば、デコーダは、符号化されたインデックス値を、1つまたは複数のシンタックス要素に応じて処理方式を示す指示(例えば、インデックス値)にマッピングするマッピング規則を適合させるように構成される。
【0063】
一実施形態によれば、デコーダは、選択された処理方式を示す符号化されたインデックスを識別するために使用されるビンの数を、1つまたは複数のシンタックス要素に応じて適応させるように構成される。
【0064】
一実施形態によれば、デコーダは、適用される処理方式が1つまたは複数のシンタックス要素およびインデックスに基づいて識別される1つまたは複数のシンタックス要素の観点から許容可能な処理方式のセットを決定するように構成される。
【0065】
一実施形態によれば、デコーダは、ビデオシーケンスの部分に対して単一の処理方式が許容可能であるかどうかを判定し、ビデオシーケンスの一部に対して単一の処理方式(例えば、空間フィルタまたは補間フィルタ)のみが許容可能であるという発見に応じて、符号化されたインデックスの識別を選択的に省略するように構成される。
【0066】
一実施形態によれば、デコーダは、符号化されたインデックス値を表すビンの数がビデオシーケンスの一部に許容可能な処理方式の数に適合するように、符号化されたインデックス値を、処理方式を示す指示(例えば、インデックス値)にマッピングするマッピング規則を選択するように構成される。
【0067】
一実施形態によれば、デコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択する(例えば、適用する)ように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたは「ピクチャ」の異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。
【0068】
一実施形態によれば、デコーダは、所与の符号化されたインデックス値が動きベクトル精度(これは、例えば、ビットストリーム内のシンタックス要素を使用してシグナリングされることができ、例えば、以下の値:QPEL、HPEL、FPEL、4PELのうちの1つを取り出すことができる)に応じて異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを復号する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される。
【0069】
一実施形態によれば、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0070】
一実施形態によれば、デコーダは、所与の符号化されたインデックス値が動きベクトルの分数部分(または複数の分数部分)に応じて、異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを復号する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される(例えば、異なる符号化方式は、考慮される部分のすべての動きベクトルが整数サンプル位置、例えば、ルーマサンプル位置を指すか、指さないかに依存して、使用される)。
【0071】
一実施形態によれば、デコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)と、適用される処理方式が識別されるフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定するように構成される。
【0072】
一実施形態によれば、デコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)、第2のFIRフィルタリング、および第3のFIRの間で選択するためのインデックス(処理方式インデックス、if_idx)を復号するように構成される。
【0073】
一実施形態によれば、デコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)と第2のFIRフィルタリングとの間で選択するためのインデックス(処理方式インデックス、if_idx)を復号するように構成される。
【0074】
一実施形態によれば、デコーダは、異なる特性(例えば、より強いローパス特性対より弱いローパス特性)を有する処理方式(例えば、補間フィルタ)を適用するように構成される。
【0075】
一実施形態によれば、デコーダは、動きベクトル精度および分数サンプル位置または動きベクトルの分数部分(または複数の分数部分)に応じてマッピング規則を選択するように構成される。
一実施形態によれば、デコーダは、動きベクトル精度に応じて、利用可能な処理方式のセット(例えば、補間フィルタ)を決定するように構成される。
【0076】
一実施形態によれば、デコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能のうちの1つを適用するように構成される(例えば、処理方式を記述するインデックス要素または補間フィルタは、ハーフサンプル動きベクトル分解能が選択された場合にビットストリームに選択的に含まれ、処理方式を記述するインデックス要素は、例えば、他の場合には省略される)。
一実施形態によれば、デコーダにおいて、処理方式は、1つまたは複数のFIRフィルタを備える。
【0077】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)用のデコーダに関し、デコーダはビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、デコーダは、ビデオシーケンスの符号化された表現としてビットストリームを取得し(例えば、受信、ダウンロード、ファイルから開く)、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別し、1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)に応じて、ビデオシーケンスの部分(例えば、ブロック)のための処理方式(例えば、補間フィルタ、例えば、エンコーダによって選択された)を示す符号化されたインデックスを提供するためのビットストリームに使用されるエントロピーコード化方式を決定し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測(例えば、ビデオシーケンスに関する、例えば、サンプル、例えば、分数サンプル)のためのサンプルを取得するためであり、決定されたエントロピーコード化方式がゼロより大きいビンの数を規定する場合、ビットストリーム内で符号化されたインデックスを識別し、インデックスを復号し、1つまたは複数のシンタックス要素に基づいて、かつ決定されたコード化方式によって規定されたビンの数がゼロより大きい場合は、復号されたインデックスに基づいて、処理方式を識別し(例えば選択する)(または、決定されたビンの数がゼロである場合のみ、1つまたは複数のシンタックス要素に基づいて処理方式を識別する)、識別された処理方式をビデオシーケンスの部分に適用するように構成される。
【0078】
デコーダは、シンタックス要素に基づいてエントロピーコード化方式を決定することによって、部分のための処理方式を識別するという考えに基づいている。決定されたエントロピーコード化方式から、デコーダは、処理方式を識別する方法を推測し得る。エントロピーコード化方式によって規定されたビンの数がゼロより大きい場合、識別することによって、デコーダは、ビンの数とは無関係にエントロピーコード化方式によってビットストリームに符号化された情報を推測し得る。言い換えれば、デコーダは、ビンの数が0であるという情報を、処理方式を識別するために使用することができる。さらに、デコーダは、処理方式を識別するためにシンタックス要素およびインデックスを使用することができるため、デコーダは、所与の符号化されたインデックス値が様々な処理方式に関連付けられ得る場合でも、処理方式を識別することができる。したがって、デコーダは、処理方式に関する情報を送信するためのビットストリーム内のビンの数が少ないか、または0であっても、処理方式を識別することができる。
一実施形態によれば、デコーダにおいて、エントロピーコード化方式は、符号化されたインデックスを提供するために使用される2値化方式を含む。
一実施形態によれば、デコーダにおいて、2値化方式は、符号化されたインデックスを提供するために使用されるビンの数を含む。
【0079】
一実施形態によれば、デコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0080】
一実施形態によれば、デコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。
【0081】
一実施形態によれば、デコーダは、動きベクトルの分数部分(または複数の分数部分)に応じて(例えば、1つまたは複数の動きベクトルの分数部分に応じて)フィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される(例えば、動きベクトル終点がフルサンプル位置にあるか、または検討中の方向のフルサンプル位置にある場合、第1のフィルタを選択することによって、また、動きベクトル終点がフルサンプル間にあるか、または検討中の方向のフルサンプル間にある場合、第1のフィルタとは異なる第2のフィルタを選択することによって)。
【0082】
一実施形態によれば、デコーダは、動きベクトルの分数部分(または複数の分数部分)に応じて、第1の方向(例えば、x)のフィルタリング用と第2の方向(例えば、y)のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される。
【0083】
一実施形態によれば、デコーダは、動きベクトルの(1つまたは複数またはすべての)分数部分(または複数の分数部分)がフルサンプル上にある方向のフィルタリングに、より強いローパスフィルタリングが適用されるように、第1の方向のフィルタリング用と第2の方向のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される(例えば、ハーフサンプルの正確な動きベクトル(複数可)がフルサンプル位置(複数可)を指す場合)(動きベクトルの分数部分(複数可)がフルサンプル間にある方向に適用されるフィルタリングと比較して)。
【0084】
一実施形態によれば、デコーダは、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)に応じて、シンタックス要素(例えば、補間フィルタインデックスif_idx)または所定のフィルタによってシグナリングされるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する、例えば、フィルタリング方向ごとに個別に)ように構成される(例えば、シンタックス要素によってシグナリングされるフィルタは、例えば、第1の方向の位置座標を考慮するとき、例えば、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)がフルサンプル間にある場合、第1の方向のフィルタリングのために選択され、また所定のフィルタは、例えば、第2の方向の位置座標を考慮するとき、例えば、動きベクトルのすべての分数部分(または複数の分数部分)がフルサンプル上にある場合、第1の方向とは異なる第2の方向のフィルタリングのために選択される)。
【0085】
一実施形態によれば、デコーダは、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)に応じて、第1のシンタックス要素(例えば、補間フィルタインデックスif_idx)、またはフィルタシンタックス要素によってシグナリングされた第2のフィルタによってシグナリングされる第1のフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する、例えば、フィルタリング方向ごとに個別に)ように構成される(例えば、フィルタシンタックス要素によってシグナリングされる第1のフィルタは、例えば、第1の方向の位置座標を考慮するとき、例えば、動きベクトルの1つまたは複数の分数部分(または複数の分数部分)がフルサンプル間にある場合、第1の方向のフィルタリングのために選択され、また、例えば、フィルタシンタックス要素によってシグナリングされる第2のフィルタは、例えば、第2の方向の位置座標を考慮するとき、例えば、動きベクトルのすべての分数部分(または複数の分数部分)がフルサンプル上にある場合、第1の方向とは異なる第2の方向のフィルタリングのために選択される)。
【0086】
一実施形態によれば、デコーダは、マージモードで隣接ブロックからフィルタ選択を引き継ぐように構成される(例えば、動きベクトルが隣接ブロックの動きベクトルと同一であるかどうかに応じて選択的に)。
【0087】
一実施形態によれば、デコーダにおいて、選択された(例えば、適用された)処理方式は、ルーマ成分の(例えば、空間)フィルタリングおよび/またはクロマ成分の(例えば、空間)フィルタリングを定義する。
一実施形態によれば、デコーダは、予測モードに応じてフィルタを選択する(例えば、適用する)ように構成される。
【0088】
一実施形態によれば、デコーダは、符号化されたインデックス値を、1つまたは複数のシンタックス要素に応じて処理方式を示す指示(例えば、インデックス値)にマッピングするマッピング規則を適合させるように構成される。
【0089】
一実施形態によれば、デコーダは、選択された処理方式を示す符号化されたインデックスを識別するために使用されるビンの数を、1つまたは複数のシンタックス要素に応じて適応させるように構成される。
【0090】
一実施形態によれば、デコーダは、適用される処理方式が1つまたは複数のシンタックス要素およびインデックスに基づいて識別される1つまたは複数のシンタックス要素の観点から許容可能な処理方式のセットを決定するように構成される。
【0091】
一実施形態によれば、デコーダは、ビデオシーケンスの部分に対して単一の処理方式が許容可能であるかどうかを判定し、ビデオシーケンスの一部に対して単一の処理方式(例えば、空間フィルタまたは補間フィルタ)のみが許容可能であるという発見に応じて、符号化されたインデックスの識別を選択的に省略するように構成される。
【0092】
一実施形態によれば、デコーダは、符号化されたインデックス値を表すビンの数がビデオシーケンスの一部に許容可能な処理方式の数に適合するように、符号化されたインデックス値を、処理方式を示す指示(例えば、インデックス値)にマッピングするマッピング規則を選択するように構成される。
【0093】
一実施形態によれば、デコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択する(例えば、適用する)ように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたは「ピクチャ」の異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。
【0094】
一実施形態によれば、デコーダは、所与の符号化されたインデックス値が動きベクトル精度(これは、例えば、ビットストリーム内のシンタックス要素を使用してシグナリングされることができ、例えば、以下の値:QPEL、HPEL、FPEL、4PELのうちの1つを取り出すことができる)に応じて異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを復号する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される。
【0095】
一実施形態によれば、デコーダでは、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0096】
一実施形態によれば、デコーダは、所与の符号化されたインデックス値が動きベクトルの分数部分(または複数の分数部分)に応じて、異なる処理方式を表す(例えば、関連付けられる)ように、選択された処理方式を示すインデックスを復号する(例えば、1つまたは複数のシンタックス要素に応じて)ように構成される(例えば、異なる符号化方式は、考慮される部分のすべての動きベクトルが整数サンプル位置、例えば、ルーマサンプル位置を指すか、指さないかに依存して、使用される)。
【0097】
一実施形態によれば、デコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)と、適用される処理方式が識別されるフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定するように構成される。
【0098】
一実施形態によれば、デコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)、第2のFIRフィルタリング、および第3のFIRの間で選択するためのインデックス(処理方式インデックス、if_idx)を復号するように構成される。
【0099】
一実施形態によれば、デコーダは、第1のFIRフィルタリング(例えば、HEVCフィルタリング)(例えば、HEVC 8タップフィルタリング)と第2のFIRフィルタリングとの間で選択するためのインデックス(処理方式インデックス、if_idx)を復号するように構成される。
【0100】
一実施形態によれば、デコーダは、異なる特性(例えば、より強いローパス特性対より弱いローパス特性)を有する処理方式(例えば、補間フィルタ)を適用するように構成される。
【0101】
一実施形態によれば、デコーダは、動きベクトル精度および分数サンプル位置または動きベクトルの分数部分(または複数の分数部分)に応じてマッピング規則を選択するように構成される。
一実施形態によれば、デコーダは、動きベクトル精度に応じて、利用可能な処理方式のセット(例えば、補間フィルタ)を決定するように構成される。
【0102】
一実施形態によれば、デコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能のうちの1つを適用するように構成される(例えば、処理方式を記述するインデックス要素または補間フィルタは、ハーフサンプル動きベクトル分解能が選択された場合にビットストリームに選択的に含まれ、処理方式を記述するインデックス要素は、例えば、他の場合には省略される)。
一実施形態によれば、処理方式は、1つまたは複数のFIRフィルタを備える。
【0103】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)の方法に関し、方法は入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、(例えば、エンコーダによって実行される方法)、方法は、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を決定することと、1つまたは複数のシンタックス要素によって記述される特性(たとえば、1つまたは複数のシンタックス要素によってシグナリングされるデコーダ設定、または1つまたは複数のシンタックス要素によってシグナリングされるビデオシーケンスの部分の特性)に基づいて、(例えば、デコーダによって)ビデオシーケンスの部分に適用される処理方式(例えば、補間フィルタ)を選択することと、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプル(例えば、ビデオシーケンスに関連する、例えば、サンプル、例えば、分数サンプル)を取得するためのものであり、所与の符号化されたインデックス値が1つまたは複数のシンタックス要素によって記述される特性に応じて(例えば、1つまたは複数のシンタックス要素に応じて)異なる処理方式を表す(例えば、関連する)ように、(1つまたは複数のシンタックス要素に依存して)選択された処理方式を示すインデックスを符号化することと、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素および符号化されたインデックスを含むビットストリームを提供する(例えば、送信する、アップロードする、ファイルとして保存する)こととを含む。
【0104】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)の方法に関し、方法は入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供し、(例えばエンコーダによって実行される方法)、方法は、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を決定することと、1つまたは複数のシンタックス要素によって記述される特性(たとえば、1つまたは複数のシンタックス要素によってシグナリングされるデコーダ設定、または1つまたは複数のシンタックス要素によってシグナリングされるビデオシーケンスの部分の特性)に基づいて、(例えば、デコーダによって)ビデオシーケンスの部分に適用される処理方式(例えば、補間フィルタ)を選択することと、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプル(例えば、ビデオシーケンスに関連する、例えば、サンプル、例えば、分数サンプル)を取得するためのものであり、1つまたは複数のシンタックス要素によって記述される特性に応じて(例えば、1つまたは複数のシンタックス要素に応じて)選択された処理方式を示す符号化されたインデックスを提供するために使用されるエントロピーコード化方式を選択することと(例えば、エントロピーコード化方式によって記述されたビンの数は、1つまたは複数の考慮されるシンタックス要素の観点から、1つの処理方式のみが許容可能である場合、ゼロに等しくてもよい)、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含み、符号化されたインデックスを含む(例えば、ビンの選択された数がゼロより大きい場合)ビットストリームを提供することと(例えば、送信する、アップロードする、ファイルとして保存する)を含む。
【0105】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)の方法に関し、方法はビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、(例えば、デコーダによって実行される方法)、方法は、ビデオシーケンスの符号化された表現としてビットストリームを取得することと(例えば、受信、ダウンロード、ファイルから開く)、ビットストリームから、ビデオシーケンスの部分(例えば、ブロック)(および符号化されたインデックス)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を識別することと、1つまたは複数のシンタックス要素とインデックス(符号化された形式のビットストリームに含まれ得る)とに基づいて、ビデオシーケンスの部分のための処理方式(例えば、エンコーダによって選択された、例えば補間フィルタ)を識別することと、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測(例えば、ビデオシーケンスに関する、例えば、サンプル、例えば、分数サンプル)のためのサンプルを取得するためであり、方法は、1つまたは複数のシンタックス要素に応じて(例えば、1つまたは複数のシンタックス要素の値に応じて)、所与の符号化されたインデックス値に異なる処理方式を割り当て、識別された処理方式をビデオシーケンスの部分に適用することとを含む。
【0106】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)の方法に関し、方法はビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、(例えば、デコーダによって実行される方法)、方法は、ビデオシーケンスの符号化された表現としてビットストリームを取得することと(例えば、受信、ダウンロード、ファイルから開く)、ビットストリームから、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を識別することと、1つまたは複数のシンタックス要素に応じて、ビデオシーケンスの部分のための処理方式(例えば、補間フィルタ、例えば、エンコーダによって選択された)を示す符号化されたインデックスを提供するためのビットストリームに使用されるエントロピーコード化方式を決定し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測(例えば、ビデオシーケンスに関する、例えば、サンプル、例えば、分数サンプル)のためのサンプルを取得するためであり、決定されたエントロピーコード化方式がゼロより大きいビンの数を規定する場合、ビットストリーム内で符号化されたインデックスを識別することと、インデックスを復号し、1つまたは複数のシンタックス要素に基づいて、かつ決定されたエントロピーコード化方式によって規定されたビンの数がゼロより大きい場合は、復号されたインデックスに基づいて、処理方式を識別する(例えば、選択する)ことと(または、決定されたビンの数がゼロである場合のみ、1つまたは複数のシンタックス要素に基づいて処理方式を識別する)、識別された処理方式をビデオシーケンスの部分に適用することとを含む。
【0107】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)のためのビデオビットストリームに関し、ビデオビットストリームはビデオシーケンスを記述し(例えば、ビデオシーケンスの符号化された表現の形式で)、ビデオビットストリームは、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を含み、ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式インデックスビットストリーム要素(例えば、ビデオデコーダによって使用される補間フィルタを記述する、例えば、if_idx)を含み、処理方式インデックスビットストリーム要素(たとえば、ビデオデコーダによって実行されるフィルタリングまたは補間フィルタを記述する)の存在は、1つまたは複数の他のシンタックス要素に依存して変化する(たとえば、処理方式インデックスビットストリーム要素は、別のシンタックス要素の第1の値、または複数の他のシンタックス要素の値の第1の組み合わせに対して存在し、例えば、処理方式インデックスビットストリーム要素は、別のシンタックス要素の第2の値に対して、または複数の他のシンタックス要素の値の第2の組み合わせに対して省略される)。
【0108】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)のためのビデオビットストリームに関し、ビデオビットストリームはビデオシーケンスを記述し(例えば、ビデオシーケンスの符号化された表現の形式で)、ビデオビットストリームは、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を含み、ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式インデックスビットストリーム要素(例えば、ビデオデコーダによって使用される補間フィルタを記述する、例えば、if_idx)を含み、処理方式インデックスビットストリーム要素のビンの数は、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素に依存して変化する(例えば、処理方式インデックスビットストリーム要素のビンの数は、ビデオシーケンスの部分に許容可能な処理方式数に適合されるように、例えば、処理方式インデックスビットストリーム要素のビンの数がゼロに等しくなるように、例えば、ビデオシーケンスの部分に1つの処理方式しか許容可能でない場合は、処理方式インデックスビットストリーム要素は省略される)。
【0109】
本開示の別の態様は、ハイブリッドビデオコード化(例えば、予測を伴うビデオコード化および予測エラーの変換コード化)のためのビデオビットストリームに関し、ビデオビットストリームはビデオシーケンスを記述し(例えば、ビデオシーケンスの符号化された表現の形式で)、ビデオビットストリームは、ビデオシーケンスの部分(例えば、ブロック)に関連する1つまたは複数のシンタックス要素(例えば、動きベクトル精度シンタックス要素)を含み、ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式インデックスビットストリーム要素(例えば、ビデオデコーダによって使用される補間フィルタを記述する、例えば、if_idx)を含み、処理方式インデックスビットストリーム要素のコードワード(例えば、符号化されたインデックス値)の意味は、ビデオシーケンスの一部に関連する1つまたは複数のシンタックス要素に依存して変化する(例えば、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素に応じて、所与の符号化されたインデックス値に異なる処理方式が割り当てられるように)。
【0110】
本開示の別の態様は、ハイブリッドビデオコード化のデコーダに関し、デコーダはビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、デコーダは、ビデオシーケンスの符号化された表現としてビットストリームを取得し、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別し、1つまたは複数のシンタックス要素に応じて、ビデオシーケンスの部分のための処理方式を選択し、処理方式は、部分の特性および動きベクトルの分数部分によって完全に指定され(特性は1つまたは複数のシンタックス要素によって記述される)、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためであり、識別された処理方式をビデオシーケンスの部分に適用するように構成される。
【0111】
デコーダは、1つまたは複数のシンタックス要素に基づいて処理方式を選択することができるため、デコーダは、処理方式に特に専用のシンタックス要素を必要とせずに、部分のための処理方式を選択することができる。したがって、デコーダは、処理方式がビットストリームに明示的に示されていなくても処理方式を選択することができ、その結果、ビットストリームは特に小さくなり得る。デコーダが処理方式を取得するために1つまたは複数のシンタックス要素を使用するとき、デコーダは、1つまたは複数のシンタックス要素によって提供される粒度で処理方式を選択することができる。したがって、デコーダは、ビットストリーム内に追加のビットを必要とせずに、細かい粒度で処理方式を選択するために、ビットストリーム内に既に提供されている情報を効率的に使用することができる。動きベクトルの分数部分は、動きベクトルが動き補償予測に使用され得るため、サンプルを特に正確に取得するために使用される処理方式を特徴付けることができる。したがって、処理方式は、動きベクトルの分数部分に基づいて迅速かつ確実に選択され得る。
【0112】
一実施形態によれば、処理方式を指定する部分の特性は、動きベクトル精度、(処理方式によって取得される)サンプルの分数位置、および部分に使用される予測モードのうちの1つまたは2つまたはすべてに関する。処理方式は、動き補償予測のためのサンプルを取得するためのものであり得るため、MV精度は、部分に使用される適切な処理方式に関する正確なヒントを提供し得る。フルサンプル、ハーフサンプル、および4分の1サンプル位置に異なる処理方式を使用することができるため、サンプルの分数位置は、許容可能な処理方式の数を制限するか、または処理方式を指定することさえできる。動きベクトル精度、サンプルの分数位置、および予測モードのうちの1つまたは複数またはすべては、ビデオシーケンスの一部を復号するための1つまたは複数のシンタックス要素によって示され得る。したがって、デコーダメインは、既に利用可能な情報から処理方式を推測する。
【0113】
一実施形態によれば、部分は、予測ユニット(PU)またはコード化ユニット(CU)であり、デコーダは、ビデオシーケンスの異なる部分に対して個別に処理方式を選択するように構成される。異なる予測ユニットまたはコード化ユニットに対して個別に処理方式を選択することにより、特に細かい粒度でビデオシーケンスのローカル特性に処理方式を適合させることが可能になる。この正確な適応は、特に小さいサイズのビットストリームからの部分の復号を可能にし、および/または特に高速の復号を可能にすることができる。処理方式が1つまたは複数のシンタックス要素に応じて選択されるため、ビットストリームのサイズを増加させることなく、異なる予測ユニットまたはコード化ユニットに対して個別に処理方式を決定することが可能である。
一実施形態によれば、デコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、デコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0114】
本開示の別の態様は、ハイブリッドビデオコード化のデコーダに関し、デコーダはビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、デコーダは、ビデオシーケンスの符号化された表現としてビットストリームを取得し、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別し、動きベクトル精度に応じて、ビデオシーケンスの部分のための処理方式を選択し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためであり、識別された処理方式をビデオシーケンスの部分に適用するように構成される。
【0115】
一実施形態によれば、デコーダは、動きベクトル精度および(処理方式によって取得される)サンプルの分数位置に依存して処理方式を選択するように構成される。
一実施形態によれば、デコーダは、部分に使用される予測モードにさらに応じて処理方式を選択するように構成される。
【0116】
一実施形態によれば、部分は、予測ユニット(PU)またはコード化ユニット(CU)であり、デコーダは、ビデオシーケンスの異なる部分に対して個別に処理方式を選択するように構成される。異なる予測ユニットまたはコード化ユニットに対して個別に処理方式を選択することにより、特に細かい粒度でビデオシーケンスのローカル特性に処理方式を適合させることが可能になる。この正確な適応は、特に小さいサイズのビットストリームからの部分の復号を可能にし、および/または特に高速の復号を可能にすることができる。処理方式が1つまたは複数のシンタックス要素に応じて選択されるため、ビットストリームのサイズを増加させることなく、異なる予測ユニットまたはコード化ユニットに対して個別に処理方式を決定することが可能である。
一実施形態によれば、デコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、デコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0117】
本開示の別の態様は、ハイブリッドビデオコード化のデコーダに関し、デコーダはビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、デコーダは、ビデオシーケンスの符号化された表現としてビットストリームを取得し、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別し、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素に応じて、ビデオシーケンスの部分のための処理方式を決定し、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためであり、識別された処理方式をビデオシーケンスの部分に適用するように構成される。
一実施形態によれば、デコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、デコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0118】
一実施形態によれば、デコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0119】
一実施形態によれば、デコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。
【0120】
一実施形態によれば、デコーダは、動きベクトルの分数部分(または複数の分数部分)に応じて、第1の方向(例えば、x)のフィルタリング用と第2の方向(例えば、y)のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される。
【0121】
一実施形態によれば、デコーダは、動きベクトルの(1つまたは複数またはすべての)分数部分(または複数の分数部分)がフルサンプル上にある方向のフィルタリングに、より強いローパスフィルタリングが適用されるように、第1の方向のフィルタリング用と第2の方向のフィルタリング用に異なるフィルタ(例えば、補間フィルタ)を選択する(例えば、適用する)ように構成される(例えば、ハーフサンプルの正確な動きベクトル(複数可)がフルサンプル位置(複数可)を指す場合)(動きベクトルの分数部分(複数可)がフルサンプル間にある方向に適用されるフィルタリングと比較して)。
【0122】
一実施形態によれば、デコーダは、マージモードで隣接ブロックからフィルタ選択を引き継ぐように構成される(例えば、動きベクトルが隣接ブロックの動きベクトルと同一であるかどうかに応じて選択的に)。
【0123】
一実施形態によれば、デコーダにおいて、選択された(例えば、適用された)処理方式は、ルーマ成分の(例えば、空間)フィルタリングおよび/またはクロマ成分の(例えば、空間)フィルタリングを定義する。
【0124】
一実施形態によれば、デコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択する(例えば、適用する)ように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたは「ピクチャ」の異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。
【0125】
一実施形態によれば、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0126】
一実施形態によれば、デコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)と、適用される処理方式が識別されるフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定するように構成される。
【0127】
一実施形態によれば、デコーダは、異なる特性(例えば、より強いローパス特性対より弱いローパス特性)を有する処理方式(例えば、補間フィルタ)を適用するように構成される。
【0128】
一実施形態によれば、デコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、または4サンプル動きベクトル分解能のうちの1つを適用するように構成される。
一実施形態によれば、デコーダにおいて、処理方式は、1つまたは複数のFIRフィルタを備える。
【0129】
本開示の別の態様は、ハイブリッドビデオコード化のエンコーダに関し、エンコーダは入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、エンコーダは、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定し、1つまたは複数のシンタックス要素によって記述される特性に基づいて、ビデオシーケンスの部分に適用される処理方式を選択し、処理方式は部分の特性および動きベクトルの分数部分によって完全に指定され、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためのものであり、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供するように構成される。
【0130】
一実施形態によれば、1つまたは複数のシンタックス要素によって記述される特性は、動きベクトル精度、(処理方式によって取得される)サンプルの分数位置、およびその部分に使用される予測モードのうちの1つまたは2つまたはすべてに関する。
【0131】
一実施形態によれば、部分は、予測ユニット(PU)またはコード化ユニット(CU)であり、エンコーダは、ビデオシーケンスの異なる部分に対して個別に処理方式を選択するように構成される。
一実施形態によれば、エンコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、エンコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0132】
本開示の別の態様は、ハイブリッドビデオコード化のエンコーダに関し、エンコーダは入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、エンコーダは、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定し、1つまたは複数のシンタックス要素によって記述される動きベクトル精度に基づいて、ビデオシーケンスの部分に適用される処理方式を選択し、処理方式は部分の特性および動きベクトルの分数部分によって完全に指定され、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供するように構成される。
【0133】
一実施形態によれば、エンコーダは、動きベクトル精度および(処理方式によって取得される)サンプルの分数位置に基づいて処理方式を選択するように構成される。
一実施形態によれば、エンコーダは、部分に使用される予測モードにさらに応じて処理方式を選択するように構成される。
【0134】
一実施形態によれば、部分は、予測ユニット(PU)またはコード化ユニット(CU)であり、エンコーダは、ビデオシーケンスの異なる部分に対して個別に処理方式を選択するように構成される。
一実施形態によれば、エンコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、エンコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0135】
本開示の別の態様は、ハイブリッドビデオコード化のエンコーダに関し、エンコーダは入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、エンコーダは、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定し、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素によって記述される動きベクトル精度に基づいて、ビデオシーケンスの部分に適用される処理方式を選択し、処理方式は部分の特性および動きベクトルの分数部分によって完全に指定され、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供するように構成される。
一実施形態によれば、エンコーダは、ビデオシーケンスの異なる部分の同じ分数サンプル位置に対して異なる処理方式を使用するように構成される。
一実施形態によれば、エンコーダは、ローカル画像特性に適応するためにPUまたはCUレベルで処理方式を切り替えるように構成される。
一実施形態によれば、1つまたは複数のシンタックス要素のいずれも、処理方式を示すために明示的に専用ではない。
【0136】
一実施形態によれば、エンコーダは、1つまたは複数のシンタックス要素によって記述される特性の観点から許容可能な処理方式のセットを決定し、決定されたセットから処理方式を選択するように構成される。
【0137】
一実施形態によれば、エンコーダにおいて、処理方式はフィルタ(例えば、補間フィルタ)またはフィルタのセット(例えば、補間フィルタ)(例えば、動きベクトルの分数部分によってパラメータ化される)である。
【0138】
一実施形態によれば、エンコーダでは、フィルタのセット内のフィルタは、ビデオシーケンスの部分に分離可能に適用可能(例えば、空間方向、例えばx方向および/またはy方向に順次適用可能な1次元フィルタ)である。
【0139】
一実施形態によれば、エンコーダは、ビデオフレームまたはピクチャ内の異なるブロック(例えば、異なる予測ユニットPUおよび/またはコード化ユニットCUおよび/またはコード化ツリーユニットCTU)に対して異なる処理方式(例えば、異なる補間フィルタ)を選択するように構成される(ビデオシーケンスの異なる部分または単一のビデオフレームまたはピクチャの異なる部分の同じ分数サンプル位置に対して異なる補間フィルタ)。
【0140】
一実施形態によれば、エンコーダでは、1つまたは複数のシンタックス要素は、動きベクトル精度(例えば、クォーターサンプル、ハーフサンプル、フルサンプル)、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数(たとえば、単予測の1つの仮説、双予測の2つの仮説)、予測モード(たとえば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、組み合わされたインター/イントラ)、コード化された残差信号の可用性(例えば、コード化ブロックフラグ)、コード化された残差信号のスペクトル特性、参照ピクチャ信号(例えば、動きデータによって定義された参照ブロック、参照ブロック内の共同配置された予測ユニットPUからのブロックエッジ、参照信号の高または低周波数特性)、ループフィルタデータ(たとえば、サンプル適応オフセットフィルタSAOからのエッジオフセットまたはバンドオフセット分類、デブロッキングフィルタの決定および境界強度)、動きベクトル長(たとえば、長い動きベクトルまたは特定の方向のための追加の平滑化フィルタのみを有効にする)、または適応動きベクトル分解能モード、のうちの少なくとも1つを含む。
【0141】
一実施形態によれば、エンコーダは、最大動きベクトル精度(例えば、前述の動きベクトル精度よりも細かいサブサンプル動きベクトル分解能、例えば、QPEL)と最小動きベクトル精度(例えば4PEL)との間の動きベクトル精度(例えば、サブサンプル動きベクトル精度、例えば、HPEL)、または最大動きベクトル精度(例えば、QPEL)とフルサンプル動きベクトル精度(例えばFPEL)との間の動きベクトル精度(例えば、HPEL)について処理方式のセット(例えば、「複数の可能性の符号化」)を選択的に決定し、決定されたセットから処理方式を選択するように構成される。
【0142】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法はビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、方法は、ビデオシーケンスの符号化された表現としてビットストリームを取得することと、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別することと、1つまたは複数のシンタックス要素に応じて、ビデオシーケンスの部分のための処理方式を選択することであって、処理方式は、部分の特性および動きベクトルの分数部分によって完全に指定され、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためである、ことと、識別された処理方式をビデオシーケンスの部分に適用することとを含む。
【0143】
一実施形態によれば、エンコーダは、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能の間で選択するように構成される。
【0144】
一実施形態によれば、エンコーダにおいて、処理方式は、1つまたは複数のFIRフィルタを備える。FIRフィルタは、ビデオシーケンスを処理するための特に安定したフィルタである。
【0145】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法はビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、方法は、ビデオシーケンスの符号化された表現としてビットストリームを取得することと、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別することと、動きベクトル精度に応じて、ビデオシーケンスの部分のための処理方式を選択することであって、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためである、ことと、識別された処理方式をビデオシーケンスの部分に適用することとを含む。
【0146】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法はビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するためであり、方法は、ビデオシーケンスの符号化された表現としてビットストリームを取得することと、ビットストリームから、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を識別することと、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素に応じて、ビデオシーケンスの部分のための処理方式を決定することであって、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためである、ことと、識別された処理方式をビデオシーケンスの部分に適用する、を含む。
【0147】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法は入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、方法は、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定することと、1つまたは複数のシンタックス要素によって記述される特性に基づいて、ビデオシーケンスの部分に適用される処理方式を選択することであって、処理方式は部分の特性および動きベクトルの分数部分によって完全に指定され、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためのものである、ことと、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供することとを含む。
【0148】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法は入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、方法は、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定することと、1つまたは複数のシンタックス要素によって記述される動きベクトル精度に基づいて、ビデオシーケンスの部分に適用される処理方式を選択することであって、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためのものである、ことと、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供することとを含む。
【0149】
本開示の別の態様は、ハイブリッドビデオコード化の方法に関し、方法は入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するためであり、方法は、ビデオシーケンスの部分に関連する1つまたは複数のシンタックス要素を決定することと、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素によって記述される特性に基づいて、ビデオシーケンスの部分に適用される処理方式を選択することであって、処理方式は、ビデオシーケンスの部分内の整数および/または分数位置での動き補償予測のためのサンプルを取得するためのものである、ことと、ビデオシーケンスの符号化された表現として、1つまたは複数のシンタックス要素を含むビットストリームを提供することとを含む。
【0150】
本開示の別の態様は、コンピュータプログラムがコンピュータ上で動作するときにハイブリッドビデオコード化のための記載された方法のいずれかを実行するためのコンピュータプログラムに関する。
【0151】
記載されたデコーダは、エンコーダに関して記載されたものと同様の機能および利点を提供し、その逆も同様であり、エンコーダの特徴を参照するエンコーダの機能および利点は、デコーダの対応する特徴に同等に適用され、復号は符号化に置き換わり、その逆も同様である。例えば、エンコーダの特徴が、特に小さいサイズのビットストリームにおける情報の符号化または効率的な符号化を可能にする場合、デコーダの対応する特徴は、小さいサイズのビットストリームまたは効率的な復号からそれぞれ情報を導出することを可能にすることができる。言い換えれば、エンコーダに関して本明細書で開示された特徴、機能、および詳細のいずれかは、個別に、および組み合わせて、デコーダに任意選択的に含まれてもよく、逆もまた同様である。
【0152】
ハイブリッドビデオコード化のための記載された方法は、上述したエンコーダおよびデコーダと同じ考えに依存し、同等または同等の機能および利点を提供する。方法は、任意選択的に、対応するエンコーダおよびデコーダに関して本明細書に記載された特徴、機能、および詳細のいずれかと組み合わされてもよい(または補足されてもよい)。ハイブリッドビデオコード化のための方法は、個別に、またはそれらの任意の組み合わせで、言及された特徴、機能、および詳細と任意選択的に組み合わせることができる。
【図面の簡単な説明】
【0153】
本開示の実施形態は、添付の図面および図を参照して本明細書で説明される。
【
図1】開示された概念を実装することができるエンコーダの概略図である。
【
図2】開示された概念を実装することができるデコーダの概略図である。
【
図3】一実施形態によるエンコーダまたはデコーダによって使用される信号を示す図である。
【
図4】一実施形態による動き補償予測に使用することができる分数サンプル位置を示す図である。
【
図5】一実施形態によるエンコーダを示す図である。
【
図6】別の実施形態によるエンコーダを示す図である。
【
図8】別の実施形態によるデコーダを示す図である。
【
図9】一実施形態によるハイブリッドビデオコード化の方法のフローチャートである。
【
図10】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図11】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図12】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図13】別の実施形態によるエンコーダを示す図である。
【
図14】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図15】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図16】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図17】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図18】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【
図19】別の実施形態によるハイブリッドビデオコード化の方法のフローチャートを示す。
【発明を実施するための形態】
【0154】
以下では、異なる発明の実施形態および態様を説明する。
また、さらなる実施形態は、添付の特許請求の範囲によって定義される。
【0155】
特許請求の範囲によって定義される任意の実施形態は、本明細書に記載の詳細(特徴および機能)のいずれかによって補足することができることに留意されたい。
また、本明細書に記載の実施形態は、個別に使用することができ、特許請求の範囲に含まれる特徴のいずれかによって補足することもできる。
【0156】
また、本明細書に記載の個々の態様は、個別にまたは組み合わせて使用することができることに留意されたい。したがって、詳細は、態様の別の1つに詳細を追加することなく、個々の態様のそれぞれに追加することができる。
【0157】
本開示は、ビデオエンコーダ(入力ビデオ信号の符号化された表現を提供するための装置)およびビデオデコーダ(符号化された表現に基づいてビデオ信号の復号表現を提供するための装置)で使用可能な機能を明示的または暗黙的に記述することにも留意されたい。したがって、本明細書に記載された特徴のいずれも、ビデオエンコーダの文脈およびビデオデコーダの文脈において使用され得る。
【0158】
さらに、方法に関連して本明細書で開示される特徴および機能は、(そのような機能を実行するように構成された)装置で使用することもできる。さらに、装置に関して本明細書に開示された任意の特徴および機能を、対応する方法で使用することもできる。言い換えれば、本明細書に開示された方法は、装置に関して説明された特徴および機能のいずれかによって補完することができる。
【0159】
また、本明細書で説明される特徴および機能のいずれも、「実装の代替案」などの他のセクションで説明されるように、ハードウェアもしくはソフトウェアで、またはハードウェアとソフトウェアの組み合わせを使用して実装することができる。
【0160】
さらに、本明細書に記載された特徴およびシンタックス要素のいずれも、個別におよび組み合わせてビデオビットストリームに任意選択的に導入することができる。
【0161】
以下の説明では、実施形態を詳細に説明するが、実施形態は、多種多様なビデオエンコーダおよびビデオデコーダに組み込まれ得る多くの適用可能な概念を提供することを理解されたい。説明された特定の実施形態は、本概念を実装および使用するための特定の方法の単なる例示であり、実施形態の範囲を限定するものではない。以下の実施形態の説明では、同じもしくは類似の要素または同じ機能を有する要素には同じ参照符号が付され、または同じ名称で識別され、同じ参照番号が付され、または同じ名称で識別される要素の繰り返しの説明は通常省略される。したがって、同じもしくは類似の参照番号を有するか、または同じ名称で識別される要素について提供される説明は、相互に交換可能であるか、または異なる実施形態において互いに適用され得る。以下の説明では、本開示の実施形態のより完全な説明を提供するために複数の詳細が示される。しかしながら、これらの具体的な詳細なしに他の実施形態を実施することができることは当業者には明らかであろう。他の例では、本明細書に説明される例を不明瞭にすることを避けるために、周知の構造および装置は、詳細ではなくブロック図の形態で示す。また、本明細書に説明する異なる実施形態の特徴は、特記しない限り、互いに組み合わせることができる。
【0162】
1.コード化フレームワークの例
以下の図面の説明は、本発明の実施形態を組み込むことができるコード化フレームワークの例を形成するために、ビデオのピクチャをコード化するためのブロックベースの予測コーデックのエンコーダおよびデコーダの説明の提示から始まる。それぞれのエンコーダおよびデコーダは、
図1~
図3に関して説明される。以下では、本発明の概念の実施形態の説明を、そのような概念を
図1および
図2のエンコーダおよびデコーダにそれぞれどのように組み込むことができるかに関する説明と共に提示するが、後続の
図4以降で説明した実施形態は、
図1および
図2のエンコーダおよびデコーダの基礎となるコード化フレームワークに従って動作しないエンコーダおよびデコーダを形成するためにも使用され得る。
【0163】
図1は、変換ベースの残差コード化を例示的に使用して、ピクチャ12をデータストリーム14に予測的にコード化するための装置を示す。装置またはエンコーダは、参照符号10を使用して示されている。
図2は、対応するデコーダ20、すなわち、やはり変換ベースの残差復号を使用してデータストリーム14からピクチャ12’を予測的に復号するように構成された装置20を示し、アポストロフィは、デコーダ20によって再構成されたピクチャ12’が、予測残差信号の量子化によって導入されるコード化損失に関して、装置10によって最初に符号化されたピクチャ12から逸脱していることを示すために使用されている。
図1および
図2は、例示的に、変換ベースの予測残差コード化を使用するが、本出願の実施形態は、この種の予測残差コード化に限定されない。これは、以下に概説されるように、
図1および
図2に関して説明される他の詳細にも当てはまる。
【0164】
エンコーダ10は、予測残差信号を空間-スペクトル変換し、このようにして得られた予測残差信号をデータストリーム14に符号化するように構成される。同様に、デコーダ20は、データストリーム14からの予測残差信号を復号し、このようにして得られた予測残差信号をスペクトル-空間変換するように構成される。
【0165】
内部的に、エンコーダ10は、元の信号、すなわちピクチャ12からの予測信号26の偏差を測定するために予測残差24を生成する予測残差信号形成器22を備えることができる。予測残差信号形成器22は、例えば、元の信号から、すなわちピクチャ12から予測信号を減算する減算器であってもよい。次いで、エンコーダ10は、同じくエンコーダ10に含まれる量子化器32によって量子化されるスペクトル領域予測残差信号24’を取得するために、予測残差信号24を空間-スペクトル変換する変換器28をさらに備える。このように量子化された予測残差信号24’’は、ビットストリーム14にコード化される。この目的のために、エンコーダ10は、任意選択的に、データストリーム14に変換および量子化される予測残差信号をエントロピーコード化するエントロピーコーダ34を備えることができる。予測信号26は、データストリーム14に符号化され、データストリーム14から復号可能な予測残差信号24’’に基づいて、エンコーダ10の予測段36によって生成される。この目的のために、予測段36は、
図1に示すように、量子化損失以外の信号24’に対応するスペクトル領域予測残差信号24’’’を得るように、予測残差信号24’’を逆量子化する逆量子化器38と、量子化損失以外の元の予測残差信号24に対応する予測残差信号24’’’’を取得するために、後者の予測残差信号24’’’を逆変換、すなわちスペクトル-空間変換する逆変換器40とを内部に備えることができる。次いで、予測段36の結合器42は、再構成信号46、すなわち元の信号12の再構成を取得するために、加算などによって予測信号26と予測残差信号24’’’’とを再結合する。再構成信号46は、信号12’に対応することができる。次に、予測段36の予測モジュール44は、例えば、空間予測、すなわちピクチャ内予測、および/または時間予測、すなわちピクチャ間予測を使用して、信号46に基づいて予測信号26を生成する。
【0166】
同様に、
図2に示すように、デコーダ20は、予測段36に対応する構成要素から内部に構成され、予測段に対応する方法で相互接続されてもよい。特に、デコーダ20のエントロピーデコーダ50は、データストリームから量子化されたスペクトル領域予測残差信号24’’をエントロピー復号することができ、その際、逆量子化器52、逆変換器54、結合器56、および予測モジュール58は相互接続され、予測段36のモジュールに関して上述した方法で協働し、予測残差信号24’’に基づいて再構成信号を回復し、その結果、
図2に示すように、結合器56の出力は再構成信号、すなわちピクチャ12’をもたらす。
【0167】
上記では具体的に説明されていないが、エンコーダ10は、例えば、いくつかのレートおよび歪み関連基準、すなわちコード化コストを最適化する方法などのいくつかの最適化方式に従って、例えば、予測モード、動きパラメータなどを含むいくつかの符号化パラメータを設定することができることは容易に明らかである。例えば、エンコーダ10およびデコーダ20ならびに対応するモジュール44、58はそれぞれ、イントラコード化モードおよびインターコード化モードなどの異なる予測モードをサポートすることができる。エンコーダおよびデコーダがこれらの予測モードタイプを切り替える粒度は、それぞれピクチャ12および12’のコード化セグメントまたはコード化ブロックへの細分化に対応し得る。これらのコード化セグメントの単位で、例えば、ピクチャは、イントラコード化されているブロックとインターコード化されているブロックとに細分され得る。イントラコード化ブロックは、以下により詳細に概説されるように、それぞれのブロックの空間的な既にコード化/復号された近傍に基づいて予測される。いくつかのイントラコード化モードが存在し、それぞれのイントラコード化セグメントに対して選択されてもよく、それぞれの方向性イントラコード化モードに固有の特定の方向に沿って近傍のサンプル値を外挿することによってそれぞれのセグメントが、それぞれのイントラコード化されたセグメントへ満たされる方向性または角度イントラコード化モードを含む。イントラコード化モードはまた、例えば、1つまたは複数のさらなるモードも含むことができ、それぞれのイントラコード化ブロックの予測がそれぞれのイントラコード化セグメント内のすべてのサンプルにDC値を割り当てるDCコード化モード、および/またはそれぞれのブロックの予測が、隣接するサンプルに基づいて、2次元線形関数によって定義された平面のチルト駆動およびオフセットを有するそれぞれのイントラコード化ブロックのサンプル位置にわたる2次元線形関数によって記述されたサンプル値の空間分布であると近似または決定される平面イントラコード化モードなどである。これと比較して、インターコード化ブロックは、例えば時間的に予測され得る。インターコード化ブロックの場合、データストリーム内で動きベクトルをシグナリングすることができ、動きベクトルは、ピクチャ12が属するビデオの以前にコード化されたピクチャの部分の空間変位を示し、以前にコード化/復号されたピクチャは、それぞれのインターコード化ブロックの予測信号を取得するためにサンプリングされる。これは、量子化スペクトル領域予測残差信号24’’を表すエントロピーコード化変換係数レベルなど、データストリーム14に含まれる残差信号コード化に加えて、データストリーム14は、コード化モードを様々なブロックに割り当てるためのコード化モードパラメータ、インターコード化セグメントの動きパラメータなど、ブロックのいくつかの予測パラメータ、およびピクチャ12および12’のそれぞれのセグメントへの細分化を制御およびシグナリングするためのパラメータなどの任意選択のさらなるパラメータを符号化することができることを意味する。デコーダ20は、これらのパラメータを使用して、エンコーダが行ったのと同じ方法でピクチャを細分化し、セグメントに同じ予測モードを割り当て、同じ予測を実行して同じ予測信号をもたらす。
【0168】
図3は、一方では再構成信号、すなわち再構成ピクチャ12’と、他方ではデータストリーム14でシグナリングされる予測残差信号24’’’’と予測信号26との組み合わせ、との間の関係を示している。既に上述したように、組み合わせは加算であってもよい。予測信号26は、
図3では、ピクチャ領域を、線影を使用して例示的に示されるイントラコード化ブロックと、線影を使用せずに例示的に示されるインターコード化ブロックとに細分化したものとして示されている。細分化は、正方形ブロックまたは非正方形ブロックの行および列へのピクチャエリアの規則的な細分化、またはクワッドツリー細分化などのような、ツリールートブロックから様々なサイズの複数のリーフブロックへのピクチャ12のマルチツリー細分化などの任意の細分化であってもよく、それらの混合が
図3に示されており、
図3では、ピクチャエリアは、ツリールートブロックの行および列に最初に細分化され、次いで、再帰的マルチツリー細分化に従って1つまたは複数のリーフブロックにさらに細分化される。例えば、ピクチャ12、12’は、例えば、コード化ツリーブロックを表すことができるコード化ブロック80、82に細分することができ、より小さいコード化ブロック83にさらに細分することができる。
【0169】
この場合も、データストリーム14は、イントラコード化ブロック80のためにコード化されたイントラコード化モードを有することがあり、これは、サポートされているいくつかのイントラコード化モードのうちの1つを、それぞれのイントラコード化ブロック80へ割り当てる。インターコード化ブロック82の場合、データストリーム14は、コード化された1つまたは複数の動きパラメータを有することができる。一般的に言えば、インターコード化ブロック82は、時間的にコード化されることに限定されない。あるいは、インターコード化ブロック82は、ピクチャ12が属するビデオの以前にコード化されたピクチャ、またはエンコーダおよびデコーダがそれぞれスケーラブルなエンコーダおよびデコーダである場合には、別のビューまたは階層的に下位のレイヤのピクチャなど、現在のピクチャ12自体を超える、以前に符号化された部分から予測された任意のブロックであってもよい。
【0170】
図3の予測残差信号24’’’’も、ピクチャ領域のブロック84への細分化として示されている。これらのブロックは、コード化ブロック80および82と区別するために、変換ブロックと呼ばれる場合がある。実際には、
図3は、エンコーダ10およびデコーダ20が、ピクチャ12およびピクチャ12’のブロックへの2つの異なる細分化、すなわち、コード化ブロック80および82への一方の細分化、および変換ブロック84への他方の細分化を使用し得ることを示している。両方の細分化は同じであってもよく、すなわち、各コード化ブロック80および82は同時に変換ブロック84を形成してもよいが、
図3は、例えば、ブロック80および82の2つのブロック間の任意の境界が2つのブロック84間の境界を覆うように、変換ブロック84への細分化がコード化ブロック80、82への細分化の拡張を形成する、あるいは、各ブロック80、82は、変換ブロック84のうちの1つと一致するか、または変換ブロック84のクラスタと一致する場合を示す。しかしながら、変換ブロック84が代替的にブロック80、82間のブロック境界を横切ることができるように、これらの細分化はまた、互いに独立して決定または選択されてもよい。したがって、変換ブロック84への細分化に関する限り、ブロック80、82への細分化に関して提示されたものと同様の記述が真であり、すなわち、ブロック84は、(行および列への配置の有無にかかわらず)ブロックへのピクチャエリアの規則的な細分化の結果、ピクチャエリアの再帰的マルチツリー細分化の結果、またはそれらの組み合わせ、または任意の他の種類のブロック化であり得る。なお、ブロック80、82、および84は、正方形、長方形、または任意の他の形状に限定されないことに留意されたい。
【0171】
図3はさらに、予測信号26と予測残差信号24’’’’との組み合わせが再構成信号12’を直接もたらすことを示している。しかしながら、代替実施形態によれば、複数の予測信号26を予測残差信号24’’’’と組み合わせてピクチャ12’にすることができることに留意されたい。
【0172】
すでに上で概説したように、
図1~
図3は、本出願によるエンコーダおよびデコーダの特定の例を形成するために、以下でさらに説明する本発明の概念を実施することができる例として提示されている。その限りにおいて、
図1および
図2のエンコーダおよびデコーダはそれぞれ、本明細書で後述するエンコーダおよびデコーダの可能な実装形態を表すことができる。しかしながら、
図1および
図2は単なる例である。しかしながら、本出願の実施形態によるエンコーダは、以下でより詳細に概説される概念を使用してピクチャ12のブロックベースの符号化を実行することができる。同様に、本出願の実施形態によるデコーダは、以下でさらに概説されるコード化概念を使用してデータストリーム14からピクチャ12’のブロックベースの復号を実行することができるが、例えば、
図2のデコーダ20とは、同じピクチャ12’を
図3に関して説明したのとは異なる方法でブロックに細分する点、および/または、それが変換領域ではあるが、例えば空間領域ではデータストリーム14から予測残差を導出しない点で、異なり得る。
【0173】
2.
図4による分数サンプル
本開示の実施形態は、予測モジュール44、58によって適用され得るようなピクチャ間予測の一例であり得る動き補償予測の概念の一部であり得る。MCPは、分数サンプル精度で行われ得る。例えば、サンプルは、ピクチャまたはビデオシーケンスの画素または位置を参照することがあり、フルサンプル位置は、ピクチャまたはビデオシーケンスにおいてシグナリングされた位置を参照し、分数サンプル位置は、フルサンプル位置間の位置を参照し得る。
【0174】
図4は、4分の1サンプルルーマ補間の整数サンプル401(大文字の網掛けブロック)および分数サンプル位置411(小文字の非網掛けブロック)を示す。
図4に示すサンプルは、ビデオシーケンスの部分400を形成するか、または部分の一部であり得る。さらに、4分の1サンプル分解能での分数サンプル位置411は、非陰影ブロックおよび小文字で示されている。例えば、部分400は、ルーマコード化ブロックを表してもよく、またはルーマコード化ブロックの一部であってもよい。したがって、
図4は、4分の1サンプルルーマ補間のための方式を表すことができる。しかしながら、ルーマコード化ブロックは、MCPの文脈において使用され得るコード化ブロックの一例にすぎない。MCPはまた、クロマサンプル、またはカラープレーンの他の方式、例えば3つのカラープレーンを使用するビデオシーケンスのサンプルを使用して実行されてもよい。例えば、4分の1サンプル分解能を有する分数サンプル位置411は、ハーフサンプル位置415および4分の1サンプル位置417を含む。
【0175】
分数サンプル位置411は、補間フィルタによってフルサンプル401から取得することができる。補間フィルタのための異なる方式が可能であり得る。補間フィルタのための方式は、補間フィルタのセットを提供することができ、補間フィルタの各々は、1つまたは複数の特定の分数サンプル位置を取得するための規則を表す。
【0176】
補間フィルタの一例として、15個の分数ルーマサンプル位置、例えばブロック412の非陰影分数サンプル位置を取得するためにHEVCで使用される方式が、
図4に関して説明される。補間フィルタのためのHEVC方式は、表1に列挙されたFIRフィルタを利用する。
【0177】
2.1 HEVCにおける補間フィルタ
4分の1のルーマサンプルの動きベクトル精度を使用するHEVCでは、様々な1次元FIRフィルタを使用して計算される15個の分数ルーマサンプル位置(例えば、
図4に示すように)がある。しかしながら、各分数サンプル位置について、補間フィルタは固定されている。
【0178】
【0179】
この方式は、ハーフサンプル(HPEL)位置に対して1つの対称8タップフィルタh[i]を含み、位置b0,0は、整数サンプル位置A-3,0からA4,0を水平方向にフィルタリングすることによって計算され、位置h0,0は、整数サンプル位置A0,-3からA0,4を垂直方向にフィルタリングすることによって計算され、位置j0,0は、上述したように水平方向のフィルタリングによってHPEL位置b0,-3からb0,4をまず計算し、続いて同じ8タップフィルタを使用してこれらを垂直方向にフィルタリングすることによって計算される。
b0,0=Σi=-3..4 Ai,0 h[i],h0,0=Σj=-3..4 A0,j h[j],j0,0=Σj=-3..4 b0,j h[j]
【0180】
4分の1サンプル(QPEL)位置に対する係数q[i]を有する1つの非対称7タップフィルタ:この場合も、1つの分数サンプル成分のみを有する位置は、垂直方向または水平方向の最も近い整数サンプル位置の1Dフィルタリングによって計算される。
a0,0=Σi=-3..3 Ai,0 q[i],c0,0=Σi=-2..4 Ai,0 q[1-i]
d0,0=Σj=-3..3 A0,j q[j],n0,0=Σj=-2..4 A0,j q[1-j]
【0181】
他のすべてのQPEL位置は、最近傍分数サンプル位置の垂直フィルタリングによって計算される。垂直HPEL成分を有する位置では、HPEL 8タップフィルタが使用される。
【0182】
j0,0=Σj=-3..4 a0,j h[j] or i0,0=Σj=-3..4 a0,j h[j],k0,0=Σj=-3..4 c0,j h[j]
垂直QPEL成分を有する位置については、QPEL 7タップフィルタが使用される。
e0,0=Σj=-3..4 a0,j h[j],f0,0=Σj=-3..4 b0,j h[j],g0,0=Σj=-3..4 c0,j h[j]
【0183】
p0,0=Σj=-2..4 a0,j q[1-j],q0,0=Σj=-2..4 b0,j q[1-j],r0,0=Σj=-2..4 c0,j q[1-j]
この方式を適用して、
図4に示すような分数サンプル位置を得ることができる。
【0184】
3.
図5、
図6、および
図13によるエンコーダ
図5は、一実施形態によるハイブリッドビデオコード化のためのエンコーダ500を示す。エンコーダ500は、入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現514を提供するように構成される。エンコーダ500は、例えばシンタックス決定モジュール521によって、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定するように構成される。さらに、エンコーダ500は、1つまたは複数のシンタックス要素520によって記述される特性に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択するように構成される。例えば、エンコーダ500は、処理方式540を選択するための処理方式選択器541を備える。処理方式540は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測のために、サンプル、例えばサンプル401、411、415、417を取得するためのものである。エンコーダは、例えばインデックスエンコーダ561によってインデックス550を符号化するように構成され、インデックス550は、所与の符号化されたインデックス値が1つまたは複数のシンタックス要素520によって記述される特性に応じて異なる処理方式を表すように、選択された処理方式540を示す。さらに、エンコーダ500は、ビデオシーケンスの符号化された表現514として、1つまたは複数のシンタックス要素520および符号化されたインデックス560を含むビットストリームを提供するように構成される。例えば、エンコーダ500は、符号化された表現514を提供するための、例えばエントロピーコーダなどのコーダ590を備える。インデックスエンコーダ561は、コーダ590の一部であってもよいし、別個であってもよい。
【0185】
図6は、さらなる実施形態によるハイブリッドビデオコード化のためのエンコーダ600を示す。エンコーダ600は、入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現614を提供するように構成される。エンコーダ600は、例えばシンタックス決定モジュール521によって、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定するように構成される。さらに、エンコーダ500は、1つまたは複数のシンタックス要素520によって記述される特性に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択するように構成される。例えば、エンコーダ500は、処理方式540を選択するための処理方式選択器541を備える。処理方式540は、ビデオシーケンスの部分内の整数および/または分数位置における動き補償予測のために、サンプル、例えばサンプル401、411、415を取得するためのものである。エンコーダ600は、1つまたは複数のシンタックス要素520によって記述される特性に応じて、選択された処理方式540を示す符号化されたインデックス660を提供するために使用されるエントロピーコード化方式662を選択するように構成される。さらに、エンコーダ600は、ビデオシーケンスの符号化された表現614として、1つまたは複数のシンタックス要素520を含み、符号化されたインデックス660を含むビットストリームを提供するように構成される。符号化されたインデックス値は、符号化されたインデックス660の値を表すことができる。
【0186】
図13は、さらなる実施形態によるハイブリッドビデオコード化のためのエンコーダ1300を示す。エンコーダ1300は、入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現1314を提供するように構成される。エンコーダ1300は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定するように構成される。
【0187】
一実施形態によれば、エンコーダ1300は、1つまたは複数のシンタックス要素520によって記述される特性に基づいてビデオシーケンスの部分585に適用される処理方式540を選択するように構成され、処理方式は、部分(585)の特性および動きベクトルの分数部分によって完全に指定され、処理方式540は、ビデオシーケンスの部分585内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。
【0188】
代替実施形態によれば、エンコーダ1300は、1つまたは複数のシンタックス要素520によって記述される動きベクトル精度に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択するように構成される。
【0189】
別の代替実施形態によれば、エンコーダ1300は、PU粒度またはCU粒度で、1つまたは複数のシンタックス要素520によって記述される特性に基づいてビデオシーケンスの部分585に適用される処理方式540を選択するように構成される。
【0190】
さらに、エンコーダ1300は、ビデオシーケンスの符号化された表現1314として、1つまたは複数のシンタックス要素520を含むビットストリームを提供するように構成される。
【0191】
一実施形態によれば、エンコーダ1300は、決定された1つまたは複数のシンタックス要素520がHEPLのMV精度を示す場合、および予測モードが並行移動-インター、並行移動マージ、および結合インター/イントラのうちの1つである場合、取得されるサンプルのHPEL位置のための標準的な処理方式以外の別の処理方式を選択するように構成される。
【0192】
以下の説明は、特に明記しない限り、
図5によるエンコーダ500、
図6によるエンコーダ600、および
図13によるエンコーダ1300に同等に適用される。
【0193】
例えば、エンコーダ500、600、1300は、入力ビデオコンテンツとしてビデオシーケンスを受信し、複数のビデオフレームを含み得るビデオシーケンスの符号化された表現514、614、1314を提供する。シンタックス決定モジュール521は、例えばビデオシーケンスもしくはそのビデオフレームを分割することによって、またはビデオシーケンスを分割するためのモジュールから部分585を取得することによって、ビデオシーケンスの部分585を取得することができる。部分585は、例えば、
図3に関して説明したように、例えば、コード化ツリーユニットまたはコード化ユニットまたはコード化ツリーブロックまたはコード化ブロックへのビデオシーケンスの区分化の結果であり得る。例えば、部分585は、例えば
図1または
図2の予測モジュール44、58によって、ピクチャ間またはピクチャ内予測に使用されるビデオシーケンスの区分化から生じ得る。シンタックス決定モジュール521は、ビデオシーケンスの部分585および任意選択でさらなる部分に基づいて、1つまたは複数のシンタックス要素520をさらに決定することができる。
【0194】
エンコーダ500、600、1300は、任意選択的に、破線矢印によって示されるように予測信号を取得するために処理方式540を部分585に適用するための処理モジュール544を備える。例えば、予測信号は、ビデオシーケンスの符号化された表現514、614、1314を取得するために使用され得る。例えば、入力ビデオコンテンツ512の符号化された表現514、614、1314への符号化は、
図1のエンコーダ10に関して説明した方式に従って実行することができ、ピクチャ12はビデオコンテンツ512を表すことができ、ビットストリーム14は符号化された表現514、614、1314を含むことができる。例えば、処理モジュール544は、予測モジュール44を備えることができ、または予測モジュール44に対応することができ、その結果、処理方式540は、予測信号26を提供するために、例えば、説明の導入部分で紹介されたAMVRを使用するために、MCP用の処理方式540を使用することができる予測モジュール44の入力を表すことができる。
【0195】
一実施形態によれば、処理方式540は、フィルタまたはフィルタのセットである。例えば、1つまたは複数のフィルタは、FIRフィルタ、例えば補間フィルタであってもよい。
【0196】
例えば、処理方式540は、セクション2.1で説明した8タップフィルタおよび7タップフィルタなどの補間フィルタ、または同様の補間フィルタであってもよく、例えばMCPのための分数サンプル位置を取得するために使用されてもよい。本発明の実施形態では、2つの追加の1D 6タップローパスFIRフィルタがサポートされてもよく、HEVC 8タップフィルタの代わりに適用されてもよい(表2に記載されている係数h[i]を伴う)。以下では、補間フィルタが処理方式の一例として機能し得る。
【0197】
例えば、処理方式540は、ローパス特性またはハイパス特性などのスペクトル特性を有することができ、その結果、エンコーダ500、600、1300は、異なる特性を有する処理方式の間で選択するように構成することができる。
一実施形態によれば、エンコーダ500、600は、ビデオフレームまたはピクチャ内の異なるブロックに対して異なる処理方式を選択するように構成される。
【0198】
例えば、ビデオシーケンスのビデオフレームは、例えばエンコーダ500、600、1300によって、例えば
図3のブロック80、82、83によって示されるように、複数のブロックまたは部分に分割され得る。例えば、エンコーダ500、600、1300は、部分80、82、83の各々について予測信号26を取得することができる。エンコーダ500、600、1300は、ビデオフレームの異なる部分に対して個別に処理方式540を選択することができる。これに関連して、ビデオフレームの部分またはブロックは、コード化ツリーブロックまたはコード化ツリーユニット、例えばコード化ブロック80または82など、ビデオフレームの分割の最初の再帰から生じる規則的なサイズのブロックまたは第1レベルのブロックを指すことができる。また、エンコーダ500、600、1300は、そのような部分または第1レベルのブロックまたはコード化ツリーユニットの異なるサブ部分、例えばコード化ブロック83に対して異なる処理方式を選択することができる。エンコーダ500、600、1300は、コード化ブロックまたはコード化ユニットの異なる部分またはブロックに対して異なる処理方式を選択することさえできる。
【0199】
したがって、エンコーダ500、600、1300は、ビデオシーケンスのピクチャまたはビデオフレームの細かい粒度で補間フィルタを適合させることができ、1つのスライス、タイル、またはピクチャ内のローカル特性への適合、すなわちスライスまたはタイルまたはピクチャのサイズよりも小さい粒度での適合を可能にする。
【0200】
したがって、エンコーダ500、600、1300は、ブロックサイズまたはブロック形状などの部分585のサイズまたは形状に関する情報を決定し、この情報を1つまたは複数のシンタックス要素520として提供することができる。また、エンコーダ500、600、1300は、ピクチャ内またはピクチャ間予測モデルの文脈で使用され得るさらなるパラメータを決定または取得し得る。例えば、エンコーダ500、600、1300は、例えば、部分585を符号化するための予測信号を取得するために処理モジュール544によって、部分585に適用されるMV精度を決定することができる。
【0201】
したがって、1つまたは複数のシンタックス要素520は、動きベクトル精度、分数サンプル位置、ブロックサイズ、ブロック形状、予測仮説の数、予測モード、コード化された残差信号の可用性、コード化された残差信号のスペクトル特性、参照ピクチャ信号、ループフィルタデータ、動きベクトル長、または適応動きベクトル分解能モードのうちの少なくとも1つを含み得る。
【0202】
例えば、エンコーダ500、600、1300は、既に決定された特性または処理ステップから処理方式540を推定することができ、これは、1つまたは複数のシンタックス要素520によって示され得る。例えば、HEVCやVVCのマージモードの場合、選択されたマージ候補から使用する補間フィルタを継承してもよい。別の実施形態では、明示的なシグナリングによって、マージ候補から継承された補間フィルタを上書きすることが可能であり得る。
【0203】
一実施形態によれば、エンコーダ500,600,1300は、1つまたは複数のシンタックス要素によって記述される特性の観点から許容可能な処理方式のセットを決定し、決定されたセットから処理方式540を選択するように構成される。例えば、処理方式選択器541は、ビデオシーケンス、または特に部分585の効率的な符号化を得るために、処理方式のエンティティのどの処理方式が部分585と互換性があるか、または部分585に有利に適用され得るかを、1つまたは複数のシンタックス要素520から推測することができる。
【0204】
言い換えれば、1つまたは複数のシンタックス要素520によって示される部分585の1つまたは複数の特性に応じて、部分585に対して1つまたは複数の処理方式が利用可能または許容可能または選択可能である。したがって、部分585には、単一の処理方式のみが許容され得る。この場合、エンコーダ500、600は、処理方式540として許容可能な処理方式のみを選択してもよい。処理方式は、この場合、1つまたは複数のシンタックス要素520から一意に識別され得るため、エンコーダ500、600は、ビットストリームにおける冗長情報およびシグナリングオーバーヘッドを回避するために、符号化された表現514、614における符号化されたインデックス550,560の提供をスキップし得る。部分585に複数の処理方式が許容可能である場合、エンコーダは、許容可能な処理方式を部分585に許容可能な処理方式のセットとして決定し、この処理方式のセットから処理方式540を選択することができる。後者の場合、エンコーダ500、600は、選択された処理方式540を示すために、符号化された表現514、614内の符号化されたインデックス560、660を符号化することができる。セクション6で説明した実施形態は、そのような実施形態の一例であり得る。
【0205】
したがって、場合によっては、処理方式または補間フィルタは、適用された処理方式または補間フィルタを明示的にシグナリングする必要なしに、ビデオフレームの異なる部分に適合させることができる。したがって、符号化された表現514、516を含むビットストリームにおいて追加のビットは必要とされない場合がある。
【0206】
エンコーダ1300に対応し得る実施形態によれば、処理方式は、すべての場合において、1つまたは複数のシンタックス要素によって記述される特性に基づいて一意に決定され、その結果、処理方式540に専用の符号化されたインデックスを有する符号化された表現1314内の処理方式540の明示的な指示は必要とされない。したがって、実施形態によれば、エンコーダ1300は、符号化されたインデックスを符号化するかどうかを決定する必要がなくてもよく、または符号化方式を選択する必要がなくてもよい。
【0207】
一実施形態によれば、エンコーダ500、600、1300は、動きベクトル精度に応じて利用可能な処理方式のセットを決定するように構成される。例えば、利用可能な(または許容可能な)補間フィルタセットは、(専用のシンタックス要素を使用してシグナリングされる)ブロックに対して選択された動きベクトル精度によって決定され得る。
【0208】
例えば、1つまたは複数のシンタックス要素520は、例えば、表3に関してセクション6.1.2で説明したMV精度をシグナリングするための方式を使用することによって、部分585に対して選択されたMV精度を示すことができる。
【0209】
一実施形態によれば、エンコーダ500、600、1300は、4分の1サンプル動きベクトル分解能、ハーフサンプル動きベクトル分解能、フルサンプル動きベクトル分解能、および4サンプル動きベクトル分解能の間で選択するように構成される。
【0210】
一実施形態によれば、エンコーダ500、600、1300は、最大動きベクトル精度と最小動きベクトル精度との間の動きベクトル精度、または最大動きベクトル精度とフルサンプル動きベクトル精度との間の動きベクトル精度について、処理方式のセットを選択的に決定し、決定されたセットから処理方式540を選択するように構成される。
【0211】
例えば、一実施形態では、ルーマサンプルの半分の精度では、補間フィルタの複数のセットをサポートすることができ、他のすべての可能な動きベクトル精度では、補間フィルタのデフォルトセットを使用することができる。
【0212】
エンコーダ500、600の一実施形態によれば、AMVRモードがHPEL精度を示す場合(amvr mode=2)、補間フィルタは、CUごとに1つのシンタックス要素(if_idx)によって明示的にシグナリングされ得る。
if_idxが0に等しい場合、それは、HEVC補間フィルタのフィルタ係数h[i]がHPEL位置を生成するために使用されることを示す。
【0213】
if_idxが1に等しい場合、それは、HPEL位置を生成するためにフラットトップフィルタ(以下の表を参照)のフィルタ係数h[i]が使用されることを示す。
if_idxが2に等しい場合、それは、ガウスフィルタのフィルタ係数h[i](以下の表を参照)がHPEL位置を生成するために使用されることを示す。
【0214】
CUがマージモードでコード化され、動きベクトルを修正せずに隣接ブロックから動きベクトルをコピーすることによってマージ候補が生成されるとき、インデックスif_idxもコピーされる。if_idxが0より大きい場合、HPEL位置は、2つの非HEVCフィルタ(フラットトップまたはガウス)のうちの1つを使用してフィルタリングされる。
【0215】
【0216】
符号化されたインデックス560、660を取得するために、エンコーダ500、600は、インデックス550または選択された処理方式540を示すインデックスを符号化されたインデックス560、660にマッピングするマッピング規則を適用することができる。例えば、マッピング規則は2値化方式に対応し得る。エンコーダ500、600は、符号化されたインデックス560、660が低ビット数を必要とするように、いくつかの許容可能な処理方式に応じて符号化されたインデックス560、660を適合させることができる。
【0217】
例えば、エンコーダ500、600は、動きベクトル精度および/または動きベクトルの分数サンプル位置または分数部分に応じて処理方式、したがってマッピング規則を選択することができる。
【0218】
エンコーダ500、600は、例えばマッピング規則を適合させることによって、1つまたは複数のシンタックス要素520によって記述される特性に応じて、符号化されたインデックス560、660を提供するために使用されるビンの数をさらに適合させることができる。
【0219】
したがって、エンコーダ500、600は、符号化されたインデックス値を表すビンの数が、ビデオシーケンスの部分585に許容可能な処理方式の数に適合されるように、インデックス値を符号化されたインデックス値にマッピングするマッピング規則を選択する。
【0220】
例えば、符号化されたインデックス560を提供するために使用されるビンの数は、特性の観点から許容される処理方式の数に依存し得る。例えば、1つの処理方式のみが許容される場合、ビンの数は0であってもよい。表2は、符号化されたインデックス560、660のための3つの許容可能な処理方式および最大3つのビンの例を、インデックス値を符号化されたインデックス値にマッピングするための対応するマッピング規則と共に示す。
【0221】
例えば、表2は、if_idxを符号化されたインデックス値にマッピングするためのマッピング規則の一実施形態を示す。マッピング規則は、異なるMV精度に対して異なり得る。
【0222】
表2に記載されている実施形態では、補間フィルタは、HPEL位置に対してのみ修正されてもよい。動きベクトルが整数ルーマサンプル位置を指し示す場合、すべての場合において補間フィルタは使用されない。動きベクトルがフルサンプルx(またはy)位置およびハーフサンプルy(またはx)位置を表す参照ピクチャ位置を指す場合、選択されたハーフペルフィルタは垂直(または水平方向)にのみ適用される。さらに、ルーマ成分のフィルタリングのみが影響を受け、クロマ成分については、従来のクロマ補間フィルタがすべての場合に使用される。
【0223】
if_idxインデックスは、例えば表2に示されるように、インデックス550に対応することができ、if_idxの2値化値は符号化されたインデックス560、660に対応することができる。したがって、インデックスエンコーダ561は、2値化方式、例えば、表2の最後の列に示される2値化方式に基づいて、インデックス550から符号化されたインデックス560を導出することができる。エンコーダ600の文脈では、表2の最後の列に示されている2値化方式は、エントロピーコード化方式662に対応するか、またはコード化方式選択器661によって選択されたエントロピーコード化方式662の一部であってもよく、それに基づいて、コーダ690は、例えば、表2に示された2値化値、またはその符号化された表現にに対応し得る、符号化されたインデックス660を提供することができる。例えば、エンコーダ600がエントロピーコード化方式662を選択することができる特性は、MV精度に対応することができる。したがって、表2は、シンタックス要素520のうちの1つまたは複数が、部分585のMV精度がHPELであることを示す場合の例を示す。
【0224】
一実施形態によれば、エンコーダ500、600は、ビデオシーケンスの部分585に対して単一の処理方式540が許容可能であるかどうかを決定し、ビデオシーケンスの部分585に対して単一の処理方式540のみが許容可能であるという発見に応じて、符号化されたインデックスの包含を選択的に省略するように構成される。例えば、エンコーダ500は、符号化された表現514への符号化されたインデックス560の包含を省略することができる。エンコーダ600は、例えば、符号化された表現614に符号化されたインデックス660が含まれないこと、またはビットストリーム内の符号化されたインデックス660に使用されるビンまたはビットの数が0であることを示すエントロピーコード化方式662を選択することができる。
【0225】
一実施形態によれば、適応フィルタ選択は、クロマ成分に拡張される。例えば、エンコーダ500、600は、クロマ成分の特性に応じて処理方式540を選択することができる。クロマ成分は、ルーマコード化ブロックに関連付けられ得るクロマコード化ブロックの一部であり得る。例えば、部分585は、ルーマコード化ブロックの一部および/またはクロマコード化ブロックの一部であってもよい。
4.
図7および
図8によるデコーダ
【0226】
図7は、一実施形態によるハイブリッドビデオコード化のためのデコーダ700を示す。デコーダ700は、ビデオシーケンスの符号化された表現714に基づいて出力ビデオコンテンツ712を提供するように構成される。符号化された表現714は、エンコーダ500、600、1300によって提供される符号化された表現514、614、1314に対応することができる。デコーダ700は、ビデオシーケンスの符号化された表現714としてビットストリームを取得するように構成され、ビットストリームから、入力ビデオコンテンツ512の部分585に対応し得るビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別するように構成される。
【0227】
一実施形態によれば、デコーダ700は、エンコーダ500、600によって符号化された表現714に符号化されている可能性がある、1つまたは複数のシンタックス要素520を識別するためのシンタックス識別子721を備える。さらに、デコーダ700は、1つまたは複数のシンタックス要素520およびインデックス550に基づいてビデオシーケンスの部分785の処理方式540を識別するように構成され、処理方式540は、ビデオシーケンスの部分785内の整数401および/または分数位置411、415、417で動き補償予測のためのサンプル401、411、415、417を取得するためのものであり、デコーダ700は、1つまたは複数のシンタックス要素520に応じて、所与の符号化されたインデックス値に異なる処理方式を割り当てるように構成される。
【0228】
例えば、処理方式選択器741は、1つまたは複数のシンタックス要素520に基づいて符号化された表現714からインデックス550を決定することができ、その後、処理方式540を決定するために1つまたは複数のシンタックス要素520および/またはインデックス550を使用することができる。1つまたは複数のシンタックス要素520に応じて、処理方式選択器741はまた、符号化された表現714および1つ以上のシンタックス要素520がインデックス550を含まないと推測してもよく、1つ以上のシンタックス要素520からインデックス550を推定してもよい。
【0229】
代替実施形態によれば、デコーダ700は、1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785の処理方式540を選択するように構成され、処理方式は、部分785の特性および動きベクトルの分数部分によって完全に指定され、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。
別の代替実施形態によれば、デコーダ700は、動きベクトル精度に応じて、ビデオシーケンスの部分785の処理方式540を選択するように構成される。
【0230】
別の代替実施形態によれば、デコーダ700は、PU粒度またはCU粒度で、かつ1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785の処理方式540を決定するように構成される。
さらに、デコーダ700は、例えば処理モジュール744によって、識別された処理方式540をビデオシーケンスの部分785に適用するように構成される。
【0231】
図8は、別の実施形態によるハイブリッドビデオコード化のためのデコーダ800を示す。デコーダ800は、ビデオシーケンスの符号化された表現714に基づいて出力ビデオコンテンツ812を提供するように構成される。符号化された表現714は、エンコーダ500、600によって提供される符号化された表現514、614に対応することができる。デコーダ800は、ビデオシーケンスの符号化された表現714としてビットストリームを取得するように構成され、ビットストリームから、入力ビデオコンテンツ512の部分585に対応し得るビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別するように構成される。例えば、デコーダ700は、エンコーダ500、600によって符号化された表現714に符号化されている可能性がある、1つまたは複数のシンタックス要素520を識別するためのシンタックス識別子821を備える。さらに、デコーダ800は、1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785の処理方式540を示す符号化されたインデックスを提供するためにビットストリームで使用されるエントロピーコード化方式662を決定するように構成され、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。例えば、デコーダ800は、コード化方式選択器861を備え、コード化方式選択器は、エンコーダ600のコード化方式選択器661に対応してもよく、1つまたは複数のシンタックス要素520に基づいてコード化方式662を決定する。デコーダ800は、決定されたエントロピーコード化方式662がゼロより大きいビンの数を規定する場合、ビットストリームにおいて、符号化されたインデックスを識別し、例えば処理方式選択器841によってインデックスを復号するようにさらに構成される。デコーダ800は、決定されたコード化方式によって規定されたビンの数がゼロより大きい場合、1つまたは複数のシンタックス要素520に基づいて、および復号されたインデックスに基づいて処理方式540を識別するようにさらに構成される。例えば、処理方式選択器841は、処理方式540を識別してもよい。さらに、デコーダ800は、例えば処理モジュール744に対応することができる処理モジュール844によって、識別された処理方式540をビデオシーケンスの部分785に適用するように構成される。
【0232】
デコーダ700、800は、出力ビデオコンテンツ712、812が量子化損失などのコード化損失を除いて入力ビデオコンテンツ512に対応することができるように、入力ビデオコンテンツ512に基づいてエンコーダ500、600によって提供された符号化された表現514、614、1314から出力ビデオコンテンツ712、812を取得することができる。したがって、エンコーダ500、600およびその特徴の説明は、いくつかのプロセスが逆に実行されてもよいが、同等にデコーダ700、800に適用されてもよい。例えば、符号化を参照するエンコーダ500、600の特徴は、復号を参照するデコーダ700、800の特徴に対応し得る。
【0233】
例えば、デコーダ700、800は、エンコーダ500、600、1300によって提供されるように、符号化された表現714、814、1314から1つまたは複数のシンタックス要素520を読み取り、または復号することができる。したがって、エンコーダ500、600、1300およびデコーダ700、800、1300は、1つまたは複数のシンタックス要素520から処理方式540を決定するために同等の仮定または知識を適用することができる。
【0234】
例えば、符号化されたインデックス560、660は、デコーダ700、800が1つまたは複数のシンタックス要素520から推定できない情報を示すことができ、その結果、デコーダ700、800のいくつかの実施形態は、符号化されたインデックス560、660に基づいて処理方式540を決定することができる。例えば、デコーダ700、800のいくつかの実施形態は、例えばデコーダ700、800が1つまたは複数のシンタックス要素520からいくつかの処理方式が許容可能であると推論する場合、インデックス、例えばインデックス550を取得するために符号化された表現714、814から符号化されたインデックス560、660を復号することができる。しかしながら、デコーダ700のすべての実施形態が、いくつかの処理方式が許容可能であるかどうかを推定するように構成されているわけではないことが指摘される。デコーダ700のいくつかの実施形態は、例えば、すべての場合において、または1つまたは複数のシンタックス要素520の指示とは無関係に、符号化された表現1314の1つまたは複数のシンタックス要素から処理方式540を推論するように構成され得る。したがって、デコーダ700の実施形態は、処理方式540に明示的に専用のインデックスを復号することなく、1つまたは複数のシンタックス要素520から処理方式540を推測することができる。
【0235】
したがって、1つまたは複数のシンタックス要素520、処理方式540、部分585、インデックス550、任意選択的に符号化されたインデックス560、660およびエンコーダ500、600、1300のさらなる詳細の特徴、機能、利点、および例は、要素の説明は明示的に繰り返されないが、等価的にデコーダ700、800に適用され得る。
【0236】
例えば、デコーダ700、800は、
図2のデコーダ20に実装されてもよい。例えば、処理モジュール744,844は、予測モジュール58を備えることができ、または予測モジュール58に対応することができ、その結果、処理方式540は、予測信号59を提供するためにMCPのための処理方式540を使用することができる予測モジュール58のための入力を表すことができる。エンコーダ500、600とデコーダ700、800との間の関係は、セクション1で説明したように、エンコーダ10とデコーダ20との間の関係に対応し得る。
【0237】
一実施形態によれば、デコーダ700、800は、ビデオシーケンスの部分785に対して単一の処理方式540が許容可能であるかどうかを決定し、ビデオシーケンスの部分785に対して単一の処理方式540のみが許容可能であるという発見に応じて、符号化されたインデックスの識別を選択的に省略するように構成される。
【0238】
例えば、デコーダ700は、単一の処理方式540が部分785に対して許容可能であるかどうかを、1つまたは複数のシンタックス要素520に基づいて決定することができる。結果に応じて、デコーダ700は、符号化されたインデックス560、660に対応することができる符号化されたインデックスを識別もしくは復号することができ、またはデコーダ700は、符号化されたインデックスの識別を省略またはスキップすることができ、部分785に対して単一の許容可能な処理方式を選択することができる。
【0239】
さらなる例によれば、デコーダ800は、エントロピーコード化方式662から、符号化された表現814から符号化されたインデックスを復号するかどうかを推定することができる。符号化されたインデックスが復号される場合、デコーダ800は、符号化されたインデックス560、660に対応し得る符号化されたインデックスを復号して、インデックス550に対応し得るインデックスを決定し、インデックスに基づいて処理方式540を決定することができる。復号される符号化されたインデックスがない場合、デコーダ800は、符号化されたインデックスの復号を省略またはスキップし、1つまたは複数のシンタックス要素520に基づいて処理方式540を決定することができる。
【0240】
一実施形態によれば、デコーダ700、800は、動きベクトルの分数部分に応じてフィルタを選択するように構成される。例えば、動きベクトルは、2つの異なる方向を参照する2つの成分によって表され得る。例えば、動きベクトルは水平成分および垂直成分によって表されてもよい。水平および垂直は、ピクチャまたはビデオフレームの平面内の2つの直交する方向を表すことができる。したがって、動きベクトルの分数部分は、分数分解能を有するMVの成分を指すことができる。
【0241】
一実施形態によれば、デコーダ700、800は、動きベクトルの分数部分に応じて、第1の方向のフィルタリングと第2の方向のフィルタリングとのために異なるフィルタを選択するように構成される。例えば、デコーダ700、800は、第1の方向のMVの成分を表すMVの第1の成分と、第2の方向のMVの成分を表すMVの第2の成分とに従って、異なるフィルタを選択することができる。
【0242】
符号化された表現514、614,714、1314は、エンコーダ500、600、1300によって提供されるビデオビットストリームの部分であってもよく、ビデオビットストリームは、入力ビデオコンテンツのビデオシーケンスの複数の部分の符号化された表現を含む。
【0243】
一実施形態によれば、ハイブリッドビデオコード化のためのビデオビットストリームであって、ビデオシーケンスを記述するビデオビットストリームは、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を含む。ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式540インデックスビットストリーム要素を含み、処理方式540インデックスビットストリーム要素の存在は、1つまたは複数の他のシンタックス要素520に依存して変化する。例えば、ビデオビットストリームは、符号化された表現514、614、714に対応し得るか、またはそれらを含み得る。
【0244】
一実施形態によれば、ハイブリッドビデオコード化のためのビデオビットストリームであって、ビデオシーケンスを記述するビデオビットストリームは、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を含む。ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式540のインデックスビットストリーム要素を含み、処理方式540のインデックスビットストリーム要素のビンの数は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520に応じて変化する。例えば、ビデオビットストリームは、符号化された表現514、614、714に対応し得るか、またはそれらを含み得る。
【0245】
一実施形態によれば、ハイブリッドビデオコード化のためのビデオビットストリームであって、ビデオシーケンスを記述するビデオビットストリームは、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を含む。ビデオビットストリームは、ビデオシーケンスの部分の少なくともいくつかのための処理方式540のインデックスビットストリーム要素を含み、処理方式540のインデックスビットストリーム要素のコードワードの意味は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520に応じて変化する。例えば、ビデオビットストリームは、符号化された表現514、614、714に対応し得るか、またはそれらを含み得る。
5.
図9、
図10、
図11、および
図12によるハイブリッドビデオコード化のための方法
【0246】
図9は、一実施形態によるハイブリッドビデオコード化のための方法5000のフローチャートを示す。入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現514を提供するための方法5000であって、方法5000は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定するステップ5001を含む。ステップ5002は、ビデオシーケンスの部分585に適用される処理方式540を、1つまたは複数のシンタックス要素520上で記述される特性に基づいて選択することを含み、処理方式540は、ビデオシーケンスの部分585内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。ステップ5003は、所与の符号化されたインデックス値が、1つまたは複数のシンタックス要素520によって記述される特性に応じて異なる処理方式を表すように、選択された処理方式540を示すインデックスを符号化することを含む。ステップ5004は、ビデオシーケンスの符号化された表現として、1つ以上のシンタックス要素520と符号化されたインデックスとを含むビットストリームを提供することを含む。
【0247】
図10は、一実施形態によるハイブリッドビデオコード化のための方法6000のフローチャートを示す。入力ビデオコンテンツに基づいてビデオシーケンスの符号化された表現を提供するための方法600であって、方法600は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定するステップ6001を含む。ステップ6002は、ビデオシーケンスの部分585に適用される処理方式540を、1つまたは複数のシンタックス要素520上で記述される特性に基づいて選択することを含み、処理方式540は、ビデオシーケンスの部分585内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。ステップ6003は、1つまたは複数のシンタックス要素520によって記述される特性に応じて、選択された処理方式540を示す符号化されたインデックスを提供するために使用されるエントロピーコード化方式を選択することを含む。ステップ6004は、ビデオシーケンスの符号化された表現として、1つ以上のシンタックス要素520を含み、符号化されたインデックスを含むビットストリームを提供することを含む。
【0248】
図11は、一実施形態によるハイブリッドビデオコード化のための方法7000のフローチャートを示す。ビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するための方法7000であって、方法7000は、ビデオシーケンスの符号化された表現としてビットストリームを取得するステップ7001を含む。ステップ7002は、ビットストリームから、ビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別することを含む。ステップ7003は、1つまたは複数のシンタックス要素520およびインデックスに基づいてビデオシーケンスの部分785の処理方式540を識別することを含み、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものであり、方法は、1つまたは複数のシンタックス要素520に応じて、所与の符号化されたインデックス値に異なる処理方式を割り当てる。ステップ7004は、識別された処理方式540をビデオシーケンスの部分785に適用することを含む。
【0249】
図12は、一実施形態によるハイブリッドビデオコード化のための方法8000のフローチャートを示す。ビデオシーケンスの符号化された表現に基づいて出力ビデオコンテンツを提供するための方法8000であって、方法8000は、ビデオシーケンスの符号化された表現としてビットストリームを取得するステップ8001を含む。ステップ8002は、ビットストリームから、ビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別することを含む。ステップ8003は、1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785の処理方式540を示す符号化されたインデックスを提供するためにビットストリームで使用されるエントロピーコード化方式を決定することを含み、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置で動き補償予測のためのサンプル401、411、415、417を取得するためのものである。ステップ8004は、決定されたエントロピーコード化方式がゼロより大きいビンの数を規定する場合、ビットストリームにおいて、符号化されたインデックスを識別し、インデックスを復号することを含む。ステップ8005は、決定されたエントロピーコード化方式によって規定されたビンの数がゼロより大きい場合、処理方式540を、1つまたは複数のシンタックス要素520に基づいて、かつ復号されたインデックスに基づいて識別することを含む。ステップ8006は、識別された処理方式540をビデオシーケンスの部分785に適用することを含む。
【0250】
図14は、一実施形態によるハイブリッドビデオコード化のための方法7100のフローチャートを示す。方法7100は、ビデオシーケンスの符号化された表現1314に基づいて出力ビデオコンテンツ712を提供するためであり、方法7100は、ビデオシーケンスの符号化された表現714としてビットストリームを取得する7101ことと、ビットストリームから、ビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別する7102ことと、1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785のための処理方式540を選択する7103ことであって、処理方式は、部分785の特性および動きベクトルの分数部分によって完全に指定され、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためである、ことと、識別された処理方式540をビデオシーケンスの部分785に適用する7104こととを含む。
【0251】
図15は、一実施形態によるハイブリッドビデオコード化のための方法7200のフローチャートを示す。方法7200は、ビデオシーケンスの符号化された表現1314に基づいて出力ビデオコンテンツ712を提供するためであり、方法7200は、ビデオシーケンスの符号化された表現714としてビットストリームを取得する7201ことと、ビットストリームから、ビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別する7202ことと、動きベクトル精度に応じて、ビデオシーケンスの部分785のための処理方式540を選択する7203ことであって、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためである、ことと、識別された処理方式540をビデオシーケンスの部分785に適用する7204こととを含む。
【0252】
図16は、一実施形態によるハイブリッドビデオコード化のための方法7300のフローチャートを示す。方法7300は、ビデオシーケンスの符号化された表現1314に基づいて出力ビデオコンテンツ712を提供するためであり、方法7300は、ビデオシーケンスの符号化された表現714としてビットストリームを取得する7301ことと、ビットストリームから、ビデオシーケンスの部分785に関連する1つまたは複数のシンタックス要素520を識別する7302ことと、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素520に応じて、ビデオシーケンスの部分785のための処理方式540を決定する7303ことであって、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためである、ことと、
識別された処理方式540をビデオシーケンスの部分785に適用する7304こととを含む。
【0253】
図17は、一実施形態によるハイブリッドビデオコード化のための方法1310のフローチャートを示す。方法1310は入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現1314を提供するためであって、方法1310は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定する1311ことと、1つまたは複数のシンタックス要素520によって記述される特性に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択する1312ことであって、処理方式は部分585の特性および動きベクトルの分数部分によって完全に指定され、処理方式540は、ビデオシーケンスの部分585内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためのものである、ことと、ビデオシーケンスの符号化された表現1314として、1つまたは複数のシンタックス要素520を含むビットストリームを提供する1313こととを含む。
【0254】
図18は、一実施形態によるハイブリッドビデオコード化のための方法1320のフローチャートを示す。方法1320は入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現1314を提供するためであり、方法1320は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定する1321ことと、1つまたは複数のシンタックス要素520によって記述される動きベクトル精度に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択する1322ことであって、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためのものである、ことと、ビデオシーケンスの符号化された表現1314として、1つまたは複数のシンタックス要素520を含むビットストリームを提供する1323こととを含む。
【0255】
図19は、一実施形態によるハイブリッドビデオコード化のための方法1330のフローチャートを示す。方法1330は、入力ビデオコンテンツ512に基づいてビデオシーケンスの符号化された表現1314を提供するためであり、方法1330は、ビデオシーケンスの部分585に関連する1つまたは複数のシンタックス要素520を決定する1331ことと、PU粒度またはCU粒度を用いて、1つまたは複数のシンタックス要素520によって記述される特性に基づいて、ビデオシーケンスの部分585に適用される処理方式540を選択する1332ことであって、処理方式540は、ビデオシーケンスの部分785内の整数および/または分数位置での動き補償予測のためのサンプル401、411、415、417を取得するためのものである、ことと、ビデオシーケンスの符号化された表現1314として、1つまたは複数のシンタックス要素520を含むビットストリームを提供する1333こととを含む。
6.さらなる実施形態
【0256】
現在のVVCドラフト[5]を含む多くの、または場合によってはすべての現在のビデオコード化規格では、補間フィルタは、各分数サンプル位置に対して固定される。(本明細書での「分数サンプル位置」は、4つの周囲のFPELまたは整数位置の間の相対位置を指す)。本発明の実施形態は、ビデオシーケンスの異なる部分(例えば、部分)の同じ分数サンプル位置に対して異なる補間フィルタ(例えば処理方式)を使用することを可能にする。切替補間フィルタのための前述の手法(「本発明の背景技術」の項を参照)は、粗い粒度(すなわち、スライスレベル)でのみ異なる補間フィルタ間の切換を可能にするという欠点、および、場合によっては(AIFおよびその変形例に関して)個々のFIRフィルタ係数を送信することによって、選択が明示的にシグナリングされ得るという欠点を有する。
【0257】
補間フィルタを細かい粒度(例えば、PU/CU、またはCTUレベル)で切り替えることを可能にすることにより、ローカルの画像特性(例えば、高精度HEVC補間フィルタに加えて、異なる特性を有するフィルタ、例えば高周波ノイズ成分を減衰させるためのより強いローパス特性を有するフィルタを使用することが有益であり得る)によりよく適合させることができる。しかしながら、各PUのために使用される補間フィルタの明示的なシグナリングは、必要とされるビットレートの観点から、高すぎる場合があり得る。したがって、本発明の実施形態は、デコーダ(例えば、それらは、符号化された表現514、614、1314の一部であり得る1つまたは複数のシンタックス要素520によって示されるため)にも知られているビデオシーケンスの所与の部分または領域(例えば、PU/CU、CTU、スライス、フレームなど)の特性に従って、ビデオシーケンスの部分または領域に利用可能な補間フィルタを制限することによってこのシグナリングオーバーヘッドを回避する。1つの補間フィルタのみが利用可能なままである場合、さらなるシグナリングは必要ない。複数が利用可能なままである場合、利用可能な補間フィルタのうちのどれが使用されるかのみが送信されてもよい。(本明細書および以下では、「補間フィルタ」は、所与の、場合によっては分数サンプル位置で基準サンプルを取得するために適用される任意の信号処理のより広い意味を意味し、FPEL位置のフィルタリングも含み得ることに留意されたい。)
【0258】
本発明の実施形態によれば、使用される補間フィルタの変更は、現在のブロックが(他の復号されたシンタックス要素の値によって与えられる)特定の特性を有する場合にのみ可能であり得る。この場合、以下の2つのケースを区別することができる。
【0259】
ケース1:(他のシンタックス要素によって決定される)ブロックの所与の特性に対して、補間フィルタの1つの特定のセットのみがサポートされる。ここで、「補間フィルタのセット」という用語は、実際に使用されるフィルタがサブサンプル位置にも依存するという事実を指す(サブサンプル精度を有する従来のビデオコード化の場合のように)。次に、特性は、使用される補間フィルタのセットを決定し、動きベクトルの分数部分は、実際のフィルタ(またはフィルタリングが分離可能フィルタによって指定される場合は水平および垂直フィルタ)を決定する。補間フィルタは、ブロックおよび動きベクトルの分数部分の特性によって完全に指定されるので、この場合、追加のシンタックス要素は送信されない。
【0260】
ケース2:ブロックの所与の特性に対して複数セットの補間フィルタがサポートされる。この場合、補間フィルタのセットは、対応するシンタックス要素(例えば、サポートされているセットのリストへのインデックス)をコード化することによって選択することができる。(選択されたセットから)使用される補間フィルタは、動きベクトルの分数部分によって再び決定され得る。
【0261】
両方の場合が同じピクチャでサポートされ得ることに留意されたい。これは、第1の特性を有するブロックに対して、固定された補間フィルタのセットを使用することができることを意味する(このセットは、従来の補間フィルタのセットと同じであってもよく、または従来のセットから逸脱してもよい)。また、第2の特性を有するブロックの場合、補間フィルタの複数のセットがサポートされてもよく、選択されたフィルタは、送信されたフィルタインデックス(または任意の他の手段)によって決定される。さらに、ブロックは第3の特性を有してもよく、この場合、他のセットの補間フィルタ(1つまたは複数)が使用されてもよい。
利用可能な補間フィルタを制限するために使用され得るビデオシーケンスの部分または領域(ビデオシーケンスの部分)のこれらの特性は、以下を含む。
【0262】
-MV精度(例えば、QPEL、HPEL、FPELなど)、すなわち、異なる動きベクトル精度に対して異なる補間フィルタセットがサポートされる可能性がある
-分数サンプル位置
-ブロックサイズ、またはより一般的にはブロック形状
-予測仮説の数(すなわち、単予測の場合は1、双予測の場合は2などである)、例えば単予測のみの追加の平滑化フィルタ
-予測モード(例えば、並行移動インター、アフィンインター、並行移動マージ、アフィンマージ、結合インター/イントラ)
-コード化された残差信号の可用性(例えば、HEVCにおけるようなコード化ブロックフラグ)
-コード化された残差信号のスペクトル特性
-参照ピクチャ信号(動きデータによって定義される参照ブロック)、例えば、
・参照ブロック内の共同配置されたPUからのブロックエッジ
・参照信号の高周波特性または低周波特性
-ループフィルタデータ、例えば、
・サンプル適応オフセットフィルタ(SAO)
からのエッジオフセットまたは帯域オフセット分類
・デブロッキングフィルタの決定および境界強度
-MV長さ、例えば、長いMVまたは特定の方向に対してのみ追加の平滑化フィルタを可能にする
これらの特性(例えば、MV精度および分数サンプル位置)の2つ以上の組み合わせも可能である(上記参照)。
【0263】
本発明の一実施形態では、利用可能な補間フィルタはMV精度に直接リンクされてもよい。特に、(HEVCまたはVVC補間フィルタに関して)追加のまたは異なる補間フィルタは、特定のMV精度(例えば、HPEL)を使用して符号化され、例えばHPEL位置にのみ適用されるブロックに対してのみ利用可能であり得る。MV精度のシグナリングは、この場合、VVCのAMVR(Sec.6.1.2参照)と同様の方式を使用することができる。1つの補間フィルタ(すなわち、対応するHEVCまたはVVC補間フィルタを置き換える)のみが利用可能である場合、さらなるシグナリングは必要ない。2つ以上の補間フィルタが利用可能である場合、所与のMV精度を使用するブロックについてのみ、使用された補間フィルタの指示がシグナリングされ得るが、他のすべてのブロックについては、シグナリングは変更されない。
【0264】
本発明の一実施形態では、HEVCまたはVVCのマージモードの場合、使用される補間フィルタは、選択されたマージ候補から継承されてもよい。別の実施形態では、明示的なシグナリングによって、マージ候補から継承された補間フィルタを上書きすることが可能であり得る。
6.1 本発明のさらなる実施形態
【0265】
本発明の一実施形態では、利用可能な補間フィルタのセットは、(専用のシンタックス要素を使用してシグナリングされる)ブロックに対して選択された動きベクトル精度によって決定され得る。ルーマサンプルの半分の精度では、補間フィルタの複数のセットがサポートされ得るが、他のすべての可能な動きベクトル精度では、補間フィルタのデフォルトセットが使用される。
6.1.1 補間フィルタセット
【0266】
本発明の実施形態では、2つの追加の1D 6タップローパスFIRフィルタがサポートされてもよく、これは(上述の係数h[i]を有する)HEVC 8タップフィルタの代わりに適用されてもよい。
6.1.2 信号伝達
【0267】
HPEL分解能による現在のVVCドラフトからの切り捨てられた単項2値化を有するAMVR CUシンタックスの拡張であって、追加のビンに1つのCABAC文脈を追加する拡張:
-インデックスは、少なくとも1つのMVDが0より大きい場合にのみ存在する
-インデックスが0に等しい場合、QPEL精度およびHEVC補間フィルタを示す
【0268】
-インデックスが1に等しい場合、すべてのMVDがHPEL MV精度を有し、HPEL精度に丸められたMVPに追加される前にQPEL精度にシフトされなければならないことを示す。
インデックスが2または3に等しい場合、それぞれFPELまたは4PEL精度を示し、補間フィルタは適用されない。
【0269】
【0270】
QPELと他の精度とを切り替える第1のビンの文脈は、現在のブロックの左および上に隣接ブロックのAMVRモードの値に応じて3つの文脈の中から選択することができる。両方の隣接ブロックがQPEL AMVRモードを有する場合、文脈は0であり、そうでない場合、1つの隣接ブロックのみがQPEL AMVRモードを使用していない場合、文脈は1であり、そうでない場合(両方の隣接ブロックがQPEL AMVRモードを使用していない)、文脈は2である。
【0271】
AMVRモードがHPEL精度を示す場合(amvrモード=2)、補間フィルタは、CUごとに1つのシンタックス要素(if_idx)によって明示的にシグナリングされ得る。
if_idxが0に等しい場合、それは、HEVC補間フィルタのフィルタ係数h[i]がHPEL位置を生成するために使用されることを示す。
【0272】
if_idxが1に等しい場合、それは、HPEL位置を生成するためにフラットトップフィルタ(セクション3の表2を参照)のフィルタ係数h[i]が使用されることを示す。
【0273】
if_idxが2に等しい場合、それは、HPEL位置を生成するためにガウスフィルタ(セクション3の表2を参照)のフィルタ係数h[i]が使用されることを示す。
【0274】
CUがマージモードでコード化され、動きベクトルを修正せずに隣接ブロックから動きベクトルをコピーすることによってマージ候補が生成される場合、インデックスif_idxもコピーされる。if_idxが0より大きい場合、HPEL位置は、2つの非HEVCフィルタ(フラットトップまたはガウス)のうちの1つを使用してフィルタリングされる。
【0275】
この特定の実施形態では、補間フィルタは、HPEL位置に対してのみ修正されてもよい。動きベクトルが整数ルーマサンプル位置を指し示す場合、すべての場合において補間フィルタは使用されない。動きベクトルがフルサンプルx(またはy)位置およびハーフサンプルy(またはx)位置を表す参照ピクチャ位置を指す場合、選択されたハーフペルフィルタは垂直(または水平方向)にのみ適用される。さらに、ルーマ成分のフィルタリングのみが影響を受け、クロマ成分については、従来のクロマ補間フィルタがすべての場合に使用される。
説明される実施形態の可能な変更は、以下の態様を含むことができる。
【0276】
HPEL精度のための補間フィルタのセットはまた、フルサンプル位置のための修正されたフィルタを含む。すなわち、ハーフサンプルの正確な動きベクトルがx(またはy)方向のフルサンプル位置を指す場合、水平(または垂直)方向のより強いローパスフィルタリングも適用され得る。
【0277】
全ルーマサンプルまたは4ルーマサンプルの動きベクトル精度が選択された場合、参照サンプルのフィルタリングも適用され得る。このとき、単一のフィルタまたは複数のフィルタのいずれかをサポートすることができる。
適応フィルタ選択は、クロマ成分に拡張される。
選択されたフィルタは、単予測が使用されるか双予測が使用されるかにさらに依存する。
7.実装の代替案:
【0278】
いくつかの態様は、装置の文脈で説明されているが、これらの態様は、対応する方法の説明も表しており、ブロックまたは装置は、方法ステップまたは方法ステップの特徴に対応することは明らかである。同様に、方法ステップの文脈で説明される態様は、対応するブロックまたは対応する装置のアイテムまたは特徴の記述も表す。方法ステップの一部または全部は、例えば、マイクロ処理部、プログラム可能なコンピュータまたは電子回路のようなハードウェア装置によって(または使用して)実行されてもよい。いくつかの実施形態では、最も重要な方法ステップの1つ以上は、そのような装置によって実行されてもよい。
【0279】
特定の実装要件に応じて、本発明の実施形態は、ハードウェアまたはソフトウェアで実装することができる。実施形態は、中に格納される電子的に読み取り可能な制御信号を有し、各方法が実行されるようにプログラム可能なコンピュータシステムと協働する(または協働可能な)、例えばフロッピーディスク、DVD、ブルーレイ、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリなどのデジタル記憶媒体を使用して実行することができる。したがって、デジタル記憶媒体はコンピュータ可読であってもよい。
【0280】
本発明によるいくつかの実施形態は、プログラム可能なコンピュータシステムと協働して、本明細書に記載の方法の1つが実行されるような、電子的に読み取り可能な制御信号を有するデータキャリアを備える。
【0281】
一般に、本発明の実施形態は、コンピュータプログラム製品がコンピュータ上で動作するときに、本方法の1つを実行するように動作するプログラムコードを有するコンピュータプログラム製品として実施することができる。プログラムコードは、例えば、機械読み取り可能なキャリアに格納することができる。
他の実施形態は、本明細書に記載の方法の1つを実行するためのコンピュータプログラムを含み、機械読み取り可能なキャリアに格納される。
【0282】
換言すれば、本発明の方法の実施形態は、コンピュータプログラムがコンピュータ上で実行されるときに、本明細書に記載の方法の1つを実行するためのプログラムコードを有するコンピュータプログラムである。
【0283】
したがって、本発明の方法の更なる実施形態は、本明細書に記載の方法のうちの1つを実行するためのコンピュータプログラムを含み、そこに記録される、データキャリア(またはデジタル記憶媒体またはコンピュータ可読媒体)である。データキャリア、デジタル記憶媒体または記録媒体は、典型的には有形および/または非一時的である。
【0284】
したがって、本発明の方法の更なる実施形態は、本明細書に記載の方法のうちの1つを実行するためのコンピュータプログラムを表すデータストリームまたは信号のシーケンスである。データストリームまたは信号のシーケンスは、例えば、データ通信接続、例えばインターネットを介して転送されるように構成することができる。
【0285】
更なる実施形態は、本明細書に記載の方法のうちの1つを実行するように構成された、または適用される処理手段、例えばコンピュータまたはプログラマブル論理装置を含む。
更なる実施形態は、本明細書で説明される方法の1つを実行するためのコンピュータプログラムがインストールされたコンピュータを含む。
【0286】
本発明による更なる実施形態は、本明細書で説明される方法の1つを実行するためのコンピュータプログラムを受信機に転送(例えば、電子的にまたは光学的に)するように構成された装置またはシステムを含む。受信機は、例えば、コンピュータ、モバイル装置、メモリ装置などであってもよい。この装置またはシステムは、例えば、コンピュータプログラムを受信機に転送するためのファイルサーバを備えることができる。
【0287】
いくつかの実施形態では、プログラマブルロジック装置(例えば、フィールドプログラマブルゲートアレイ)を使用して、本明細書に記載の方法の機能の一部または全部を実行することができる。いくつかの実施形態では、フィールドプログラマブルゲートアレイは、本明細書で説明する方法の1つを実行するためにマイクロ処理部と協働することができる。一般に、これらの方法は、好ましくは、任意のハードウェア装置によって実行される。
【0288】
本明細書に記載の装置は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組み合わせを使用して実装することができる。
本明細書に記載の装置、または本明細書に記載の装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアで実装されてもよい。
【0289】
ここに記載された方法は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組み合わせを使用して実行されてもよい。
【0290】
本明細書に記載の方法、または本明細書に記載の装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアによって実行されてもよい。
【0291】
上述の実施形態は、本発明の原理の単なる例示である。本明細書に記載された構成および詳細の修正および変形は、他の当業者には明らかであることが理解される。したがって、本明細書の実施形態の説明および説明として提示された特定の詳細によってではなく、差し迫った特許請求の範囲によってのみ限定されることが意図される。
【0292】
参考文献
[1] Yuri Vatis, Bernd Edler, Dieu Thanh Nguyen, Joern Ostermann, “Two-dimensional non-separable Adaptive Wiener Interpolation Filter for H.264/AVC”, ITU-T SG 16/Q.6 Doc. VCEG-Z17, Busan, South Korea, April 2005.
【0293】
[2] S. Wittmann, T. Wedi, “Separable Adaptive Interpolation Filter,” document COM16-C219, ITU-T, June 2007.
【0294】
[3] M. Karczewicz, Y. Ye, and P. Chen, “Switched interpolation filter with offset,” document COM16-C463, ITU-T, Apr. 2008.
【0295】
[4] Y. Ye and M. Karczewicz, “Enhanced Adaptive Interpolation Filter,” document COM16-C464, ITU-T, Apr. 2008.
【0296】
[5] B. Bross, J. Chen, S. Liu (editors), “Versatile Video Coding (Draft 4),” document JVET-M1001, Jan. 2019.