(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023025054
(43)【公開日】2023-02-21
(54)【発明の名称】ピクチャの符号化および復号の方法およびデバイス
(51)【国際特許分類】
H04N 19/70 20140101AFI20230214BHJP
H04N 19/82 20140101ALI20230214BHJP
【FI】
H04N19/70
H04N19/82
【審査請求】有
【請求項の数】38
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022182959
(22)【出願日】2022-11-15
(62)【分割の表示】P 2019565239の分割
【原出願日】2018-05-17
(31)【優先権主張番号】17305626.8
(32)【優先日】2017-05-31
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】17306011.2
(32)【優先日】2017-07-28
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】18305335.4
(32)【優先日】2018-03-26
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】18305386.7
(32)【優先日】2018-03-30
(33)【優先権主張国・地域又は機関】EP
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.Blu-ray
(71)【出願人】
【識別番号】319002876
【氏名又は名称】インターデジタル マディソン パテント ホールディングス, エスアーエス
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】ボルデ,フィリップ
(72)【発明者】
【氏名】チェン,ヤ
(72)【発明者】
【氏名】ラケイプ,ファビアン
(72)【発明者】
【氏名】ギャルピン,フランク
(57)【要約】 (修正有)
【課題】効率的なフィルタ・パラメータのシグナリング方法、復号器及び符号器を提供する。
【解決手段】復号方法は、フィルタ・パラメータの複数の候補セットをビットストリームから復号することと、ピクチャの現行ブロックに関して、フィルタ・パラメータの候補セットのうちの1つを識別するインデックスをビットストリームから復号することと、現行ブロックをビットストリームから復号することと、復号されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて復号された現行ブロックをフィルタリングすることと、を含む。
【選択図】
図13A
【特許請求の範囲】
【請求項1】
-フィルタ・パラメータの複数の候補セットをビットストリームから復号することと、
-ピクチャ部分の現行ブロックに関して、フィルタ・パラメータの前記候補セットのうちの1つを識別するインデックスを前記ビットストリームから復号することと、
-前記現行ブロックを前記ビットストリームから復号することと、
-前記復号されたインデックスによって識別されるフィルタ・パラメータの前記候補セットを用いて前記復号された現行ブロックをフィルタリングすることであって、前記現行ブロックの前記インデックスの最大値は、前記現行ブロックの前に復号されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である、フィルタリングすることと
を含む方法。
【請求項2】
フィルタ・パラメータの前記複数の候補セットは、復号順で最初に復号される前記ピクチャ部分のブロックに関連するビットストリームの部分から復号される、請求項1に記載の方法。
【請求項3】
フィルタ・パラメータの複数の候補セットを表すデータを前記ビットストリームから復号することを含む、請求項1または2のいずれか1項に記載の方法。
【請求項4】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で前記ビットストリームから復号される、請求項1から3のいずれか1項に記載の方法。
【請求項5】
前記現行ブロックをフィルタリングする前に、フィルタ・パラメータの前記候補セットを並べ換えることをさらに含む、請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記現行ブロックのすぐ左に配置されたブロックが使用可能である時にそのようなブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記セットが最初にリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5に記載の方法。
【請求項7】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記候補セットが、前記現行ブロックの前に復号されたブロックと前記現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5または6に記載の方法。
【請求項8】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、前記現行ブロックの前に復号された前記ブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5から7のいずれか1項に記載の方法。
【請求項9】
前記現行ブロックの前に復号されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、前記現行ブロックの後に復号する前記ピクチャ部分のブロックの個数と前記現行ブロックの前に復号されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5から7のいずれか1項に記載の方法。
【請求項10】
フィルタ・パラメータの前記複数の候補セット内に、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入することをさらに含む、請求項1から9のいずれか1項に記載の方法。
【請求項11】
ブロックがフィルタリングされないことを指定するフィルタ・パラメータの前記候補セットは、事前定義の位置のフィルタ・パラメータの前記候補セットの間に挿入される、請求項10に記載の方法。
【請求項12】
-再構成されたブロックと呼ばれる、ピクチャ部分の現行ブロックの再構成されたバージョンを判定することと、
-フィルタ・パラメータの複数の候補セットを入手し、フィルタ・パラメータの前記候補セットのうちの1つを識別する、前記現行ブロックのインデックスを判定することと、
-前記インデックスによって識別されるフィルタ・パラメータの前記複数の候補セットのうちのフィルタ・パラメータの前記候補セットを用いて、前記再構成されたブロックをフィルタリングすることであって、前記現行ブロックの前記インデックスの最大値は、前記現行ブロックの前に再構成されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である、フィルタリングすることと、
-ビットストリーム内で、フィルタ・パラメータの前記複数の候補セット、前記現行ブロック、および前記インデックスを符号化することと
を含む方法。
【請求項13】
フィルタ・パラメータの前記複数の候補セットは、前記現行ブロックが属するスライスのスライス・ヘッダ内で符号化される、請求項12に記載の方法。
【請求項14】
フィルタ・パラメータの前記複数の候補セットは、符号化順で最初に符号化する前記ピクチャ部分のブロックに関連する前記ビットストリームの部分内で符号化される、請求項12に記載の方法。
【請求項15】
前記ビットストリーム内で、フィルタ・パラメータの複数の候補セットを表すデータを符号化することを含む、請求項12から14のいずれか1項に記載の方法。
【請求項16】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で前記ビットストリーム内で符号化される、請求項12から14のいずれか1項に記載の方法。
【請求項17】
前記現行ブロックをコーディングする前に、フィルタ・パラメータの前記候補セットを並べ換えることをさらに含む、請求項12から16のいずれか1項に記載の方法。
【請求項18】
-フィルタ・パラメータの複数の候補セットをビットストリームから復号する手段と、
-ピクチャ部分の現行ブロックに関して、フィルタ・パラメータの前記候補セットのうちの1つを識別するインデックスを前記ビットストリームから復号する手段と、
-前記現行ブロックを前記ビットストリームから復号する手段と、
-前記復号されたインデックスによって識別されるフィルタ・パラメータの前記候補セットを用いて前記復号された現行ブロックをフィルタリングする手段であって、前記現行ブロックの前記インデックスの最大値は、前記現行ブロックの前に復号されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である、フィルタリングする手段と
を含む復号器。
【請求項19】
フィルタ・パラメータの前記複数の候補セットは、復号順で最初に復号される前記ピクチャ部分のブロックに関連するビットストリームの部分から復号される、請求項18に記載の復号器。
【請求項20】
フィルタ・パラメータの複数の候補セットを表すデータを前記ビットストリームから復号する手段を含む、請求項18から19のいずれか1項に記載の復号器。
【請求項21】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で前記ビットストリームから復号される、請求項18から20のいずれか1項に記載の復号器。
【請求項22】
前記現行ブロックをフィルタリングする前に、フィルタ・パラメータの前記候補セットを並べ換える手段をさらに含む、請求項18から21のいずれか1項に記載の復号器。
【請求項23】
前記現行ブロックのすぐ左に配置されたブロックが使用可能である時にそのようなブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記セットが最初にリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項22に記載の復号器。
【請求項24】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記候補セットが、前記現行ブロックの前に復号されたブロックと前記現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項22または23に記載の復号器。
【請求項25】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、前記現行ブロックの前に復号された前記ブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項22から24のいずれか1項に記載の復号器。
【請求項26】
前記現行ブロックの前に復号されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、前記現行ブロックの後に復号する前記ピクチャ部分のブロックの個数と前記現行ブロックの前に復号されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項22から24のいずれか1項に記載の復号器。
【請求項27】
フィルタ・パラメータの前記複数の候補セット内に、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入する手段をさらに含む、請求項18から26のいずれか1項に記載の復号器。
【請求項28】
ブロックがフィルタリングされないことを指定するフィルタ・パラメータの前記候補セットは、事前定義の位置のフィルタ・パラメータの前記候補セットの間に挿入される、請求項27に記載の復号器。
【請求項29】
-再構成されたブロックと呼ばれる、ピクチャ部分の現行ブロックの再構成されたバージョンを判定する手段と、
-フィルタ・パラメータの複数の候補セットを入手し、フィルタ・パラメータの前記候補セットのうちの1つを識別する、前記現行ブロックのインデックスを判定する手段と、
-前記インデックスによって識別されるフィルタ・パラメータの前記複数の候補セットのうちのフィルタ・パラメータの前記候補セットを用いて、前記再構成されたブロックをフィルタリングする手段であって、前記現行ブロックの前記インデックスの最大値は、前記現行ブロックの前に再構成されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である、フィルタリングする手段と、
-ビットストリーム内で、フィルタ・パラメータの前記複数の候補セット、前記現行ブロック、および前記インデックスを符号化する手段と
を含む符号器。
【請求項30】
フィルタ・パラメータの前記複数の候補セットは、前記現行ブロックが属するスライスのスライス・ヘッダ内で符号化される、請求項29に記載の符号器。
【請求項31】
フィルタ・パラメータの前記複数の候補セットは、符号化順で最初に符号化する前記ピクチャ部分のブロックに関連する前記ビットストリームの部分内で符号化される、請求項29に記載の符号器。
【請求項32】
前記ビットストリーム内で、フィルタ・パラメータの複数の候補セットを表すデータを符号化する手段を含む、請求項29から31のいずれか1項に記載の符号器。
【請求項33】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で前記ビットストリーム内で符号化される、請求項29から31のいずれか1項に記載の符号器。
【請求項34】
前記現行ブロックをコーディングする前に、フィルタ・パラメータの前記候補セットを並べ換える手段をさらに含む、請求項29から33のいずれか1項に記載の符号器。
【発明の詳細な説明】
【技術分野】
【0001】
本原理は、全般的には、ピクチャ部分のブロックを符号化し、復号する方法およびデバイスに関し、より具体的には、ループ内フィルタリング、たとえばサンプル適応オフセット・フィルタリングを用いるピクチャの符号化および復号の方法およびデバイスに関する。
【背景技術】
【0002】
高い圧縮効率を達成するために、ビデオ・コーディング方式は、通常、ビデオ・コンテンツ内の空間冗長性および時間冗長性を活用するために予測および変換を使用する。一般に、イントラ予測またはインター予測が、イントラ・フレーム相関またはインター・フレーム相関を活用するのに使用され、その後、しばしば残差と表される、元の画像内のサンプルのグループと予測された画像内のサンプルのグループとの間の差が、変換され、量子化され、エントロピ・コーディングされる。ビデオを再構成するために、圧縮されたデータが、予測、変換、量子化、およびエントロピ・コーディングに対応する逆プロセスによって復号される。
【0003】
伝統的なビデオ・コーディング方式は、再構成された画像の品質を改善するためにループ内フィルタリング・プロセスを含む。ループ内フィルタリングは、デブロッキング・フィルタリング(DF)、HEVCのサンプル適応オフセット(SAO)フィルタリング、および/またはウィーナー・フィルタなどの適応ループ・フィルタリングALFなど、複数のフィルタリング・プロセスを含むことができる。これらのフィルタは、この順序でまたは異なる順序で連続して適用され得る。サンプル適応オフセット・フィルタリング・プロセスは、文書ITU-T H.265、表題「High Efficiency Video Coding」(2015年4月の版)のセクション8.7.3に記載されている。SAOフィルタリングは、コーディング・アーティファクト、たとえばリンギング・アーティファクトまたはバンディング・アーティファクトを減らすために、いくつかの再構成されたサンプルにオフセットを加算することを含む。SAOフィルタリングが使用可能にされる(またはアクティブ化される)時には、2タイプのフィルタリングすなわち、エッジ・オフセット(EO)タイプまたはバンド・オフセット(BO)タイプが実行され得る。SAOフィルタリングは、まず、あるCTB(コーディング・ツリー・ブロック)のサンプルを複数のカテゴリに分類することと、各サンプルに、そのカテゴリに依存する特定のオフセットを加算することとによってサンプル歪みを減らす。したがって、色成分ごとのSAOパラメータのセット(たとえばオフセット、おそらくはオフセット符号、フィルタ・タイプなどを含むSAOパラメータのセット)が、符号器側で判定され、CTU(コーディング・ツリー・ユニット)の他の構文要素の後に、CTUレベルで符号化される。帯域幅を節約するために、SAOパラメータは、必ずしもCTUごとに符号化されるのではない。したがって、CTUでは、隣接するCTUからそのSAOパラメータを継承することができる。SAOパラメータのこの復号モードは、マージ・モード(merge mode)と呼ばれる。より正確には、HEVCでは、CTUは、
図1に示されているように、その真上(マージ・アップ)またはすぐ左(マージ・レフト)に配置されたCTUからそのSAOパラメータを継承することができる。この図では、SAOパラメータのセットは、効果的に、CTU 0、2、および6に関して符号化される。他のCTUは、そのSAOパラメータを継承する。一例として、CTU 1、4、および5は、CTU 0からそのSAOパラメータを継承し、CTU 3は、CTU 2からそのSAOパラメータを継承し、CTU 7は、CTU 6からそのSAOパラメータを継承する。
【0004】
CTUは、ラスタ・スキャン順で符号化/復号されるので、マージに関するSAOパラメータの候補セットの選択は、制限される。一例として、CTU 3は、そのSAOパラメータをCTU 2から継承することだけができ、CTU 1、4、5は、そのSAOパラメータをCTU 0から継承することだけができる。CTU 7は、そのSAOパラメータをCTU 6から直接に(マージ・レフト)またはCTU 2から間接に(すなわち CTU 3を介して、マージ・アップ)継承することができる。したがって、
図1のCTUのほとんどが、単一のCTUからそのSAOパラメータを継承することだけができるが、3セットのSAOパラメータがビットストリーム内で符号化された(すなわち、CTU 0、2、および6ごとに1セットのSAOパラメータ)ので、この方法は非効率的である。
【発明の概要】
【0005】
-フィルタ・パラメータの複数の候補セットをビットストリームから復号することと、
-ピクチャの現行ブロック(現在ブロック:current block)に関して、フィルタ・パラメータの候補セットのうちの1つを識別するインデックスをビットストリームから復号することと、
-現行ブロックをビットストリームから復号することと、
-復号されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて復号された現行ブロックをフィルタリングすることと
を含む、ピクチャ部分のブロックを復号する復号方法が開示される。
【0006】
-フィルタ・パラメータの複数の候補セットをビットストリームから復号する手段と、
-ピクチャの現行ブロックに関して、フィルタ・パラメータの候補セットのうちの1つを識別するインデックスをビットストリームから復号する手段と、
-現行ブロックをビットストリームから復号する手段と、
-復号されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて復号された現行ブロックをフィルタリングする手段と
を含む復号デバイスも開示される。
【0007】
変形形態では、ビットストリームにアクセスするように構成された通信インターフェースと、
-フィルタ・パラメータの複数の候補セットをアクセスされたビットストリームから復号し、
-ピクチャの現行ブロックに関して、フィルタ・パラメータの候補セットのうちの1つを識別するインデックスをアクセスされたビットストリームから復号し、
-現行ブロックをアクセスされたビットストリームから復号し、
-復号されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて復号された現行ブロックをフィルタリングする
ように構成された少なくとも1つのプロセッサとを含む復号デバイスが開示される。
【0008】
以下の実施形態は、上で開示された復号方法および復号デバイスにあてはまる。
【0009】
特定の実施形態では、フィルタ・パラメータの複数の候補セットは、現行ブロックが属するスライスのスライス・ヘッダから復号される。
【0010】
有利なことに、フィルタ・パラメータの複数の候補セットは、復号順で最初に復号されるピクチャ部分のブロックに関連するビットストリームの部分から復号される。
【0011】
別の特定の実施形態では、復号方法は、ビットストリームから、フィルタ・パラメータの複数の候補セットを表すデータを復号することをさらに含む。
【0012】
有利なことに、フィルタ・パラメータの複数の候補セットの候補セットは、その使用の順序でビットストリームから復号される。
【0013】
特定の実施形態では、現行ブロックのインデックスの最大値は、現行ブロックの前に復号されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である。
【0014】
別の特定の実施形態では、復号方法は、現行ブロックをフィルタリングする前に、フィルタ・パラメータの候補セットを並べ換えることをさらに含む。
【0015】
有利なことに、現行ブロックのすぐ左に配置されたブロックが使用可能である時にそのようなブロックをフィルタリングするのに使用されるフィルタ・パラメータのセットが最初にリストされるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0016】
有利なことに、現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの候補セットが、現行ブロックの前に復号されたブロックと現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0017】
有利なことに、現行ブロックの前に復号されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0018】
有利なことに、現行ブロックの前に復号されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、現行ブロックの後に復号するピクチャ部分のブロックの個数と現行ブロックの前に復号されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0019】
有利なことに、この方法は、フィルタ・パラメータの複数の候補セット内に、フィルタ・パラメータの事前定義の候補セット、たとえばブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入することをさらに含む。
【0020】
有利なことに、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットは、事前定義の位置のフィルタ・パラメータの候補セットの間に挿入される。
【0021】
特定の実施形態では、フィルタ・パラメータの前記複数の候補セットは、フィルタ・ルマ・パラメータを含み、この方法は、フィルタ・クロマ・パラメータの別の複数の候補セットとフィルタ・クロマ・パラメータの候補セットのうちの1つを識別する別のインデックスとを復号することをさらに含む。復号された現行ブロック・ルマ・サンプルのフィルタリングは、復号されたインデックスによって識別されるフィルタ・ルマ・パラメータの候補セットを用いて行われ、復号された現行ブロック・クロマ・サンプルのフィルタリングは、復号された別のインデックスによって識別されるフィルタ・クロマ・パラメータの候補セットを用いて行われる。
【0022】
-再構成されたブロックと呼ばれる、ピクチャ部分の現行ブロックの再構成されたバージョンを判定することと、
-フィルタ・パラメータの複数の候補セットを入手し、フィルタ・パラメータの候補セットのうちの1つを識別する、現行ブロックのインデックスを判定することと、
-インデックスによって識別されるフィルタ・パラメータの複数の候補セットのうちのフィルタ・パラメータの候補セットを用いて、再構成されたブロックをフィルタリングすることと、
-ビットストリーム内で、フィルタ・パラメータの複数の候補セット、現行ブロック、およびインデックスを符号化することと
を含む、ピクチャ部分のブロックを符号化する符号化方法も開示される。
【0023】
-再構成されたブロックと呼ばれる、ピクチャ部分の現行ブロックの再構成されたバージョンを判定する手段と、
-フィルタ・パラメータの複数の候補セットを入手し、フィルタ・パラメータの候補セットのうちの1つを識別する、現行ブロックのインデックスを判定する手段と、
-インデックスによって識別されるフィルタ・パラメータの複数の候補セットのうちのフィルタ・パラメータの候補セットを用いて、再構成されたブロックをフィルタリングする手段と、
-ビットストリーム内で、フィルタ・パラメータの複数の候補セット、現行ブロック、およびインデックスを符号化する手段と
を含む符号化デバイスも開示される。
【0024】
変形形態では、ピクチャ部分にアクセスするように構成された通信インターフェースと、
-再構成されたブロックと呼ばれる、アクセスされたピクチャ部分の現行ブロックの再構成されたバージョンを判定し、
-フィルタ・パラメータの複数の候補セットを入手し、フィルタ・パラメータの候補セットのうちの1つを識別する、現行ブロックのインデックスを判定し、
-インデックスによって識別されるフィルタ・パラメータの複数の候補セットのうちのフィルタ・パラメータの候補セットを用いて、再構成されたブロックをフィルタリングし、
-ビットストリーム内で、フィルタ・パラメータの複数の候補セット、現行ブロック、およびインデックスを符号化する
ように構成された少なくとも1つのプロセッサとを含む符号化デバイスが開示される。
【0025】
フィルタ・パラメータの複数の候補セットを表すコーディングされたデータと、ピクチャ部分の少なくとも1つの現行ブロックを表すコーディングされたデータと、フィルタ・パラメータの候補セットのうちで現行ブロックの復号されたバージョンのフィルタリングに使用される候補セットを識別する少なくとも1つのインデックスを表すコーディングされたデータとを含む、ピクチャ部分のブロックを表すビットストリームも開示される。
【0026】
変形形態では、ピクチャ部分のブロックを表すビットストリームをその上に記憶された非一時的プロセッサ可読媒体が開示される。ビットストリームは、フィルタ・パラメータの複数の候補セットを表すコーディングされたデータと、ピクチャ部分の少なくとも1つの現行ブロックを表すコーディングされたデータと、フィルタ・パラメータの候補セットのうちで現行ブロックの復号されたバージョンのフィルタリングに使用される候補セットを識別する少なくとも1つのインデックスを表すコーディングされたデータとを含む。
【0027】
-フィルタ・パラメータの複数の候補セットを表すコーディングされたデータを送信することと、
-ピクチャ部分の少なくとも1つの現行ブロックを表すコーディングされたデータを送信することと、
-フィルタ・パラメータの候補セットのうちで現行ブロックの復号されたバージョンのフィルタリングに使用される候補セットを識別する少なくとも1つのインデックスを表すコーディングされたデータを送信することと
を含む送信方法が開示される。
【0028】
-フィルタ・パラメータの複数の候補セットを表すコーディングされたデータを送信するための手段と、
-ピクチャ部分の少なくとも1つの現行ブロックを表すコーディングされたデータを送信するための手段と、
-フィルタ・パラメータの候補セットのうちで現行ブロックの復号されたバージョンのフィルタリングに使用される候補セットを識別する少なくとも1つのインデックスを表すコーディングされたデータを送信するための手段と
を含む送信デバイスが開示される。
【0029】
ピクチャ部分にアクセスするように構成された通信インターフェースと、
-フィルタ・パラメータの複数の候補セットを表すコーディングされたデータを送信し、
-ピクチャ部分の少なくとも1つの現行ブロックを表すコーディングされたデータを送信し、
-フィルタ・パラメータの候補セットのうちで現行ブロックの復号されたバージョンのフィルタリングに使用される候補セットを識別する少なくとも1つのインデックスを表すコーディングされたデータを送信する
ように構成された少なくとも1つのプロセッサとを含む送信デバイスが開示される。
【0030】
以下の実施形態は、上で開示されたコーディング方法、コーディング・デバイス、ビットストリーム、プロセッサ可読媒体、送信方法、および送信デバイスにあてはまる。
【0031】
有利なことに、フィルタ・パラメータの複数の候補セットは、現行ブロックが属するスライスのスライス・ヘッダ内で符号化される。
【0032】
有利なことに、フィルタ・パラメータの複数の候補セットは、符号化順で最初に符号化するピクチャ部分のブロックに関連するビットストリームの部分内で符号化される。
【0033】
有利なことに、ビットストリーム内で、フィルタ・パラメータの複数の候補セットを表すデータを符号化することを含むこと。
【0034】
有利なことに、フィルタ・パラメータの複数の候補セットの候補セットは、その使用の順序でビットストリーム内で符号化される。
【0035】
有利なことに、現行ブロックのインデックスの最大値は、現行ブロックの前に符号化されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の増加関数である。
【0036】
有利なことに、現行ブロックをコーディングする前に、フィルタ・パラメータの候補セットを並べ換えることをさらに含むこと。
【0037】
有利なことに、現行ブロックのすぐ左に配置されたブロックが使用可能である時にそのようなブロックをフィルタリングするのに使用されるフィルタ・パラメータのセットが最初にリストされるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0038】
有利なことに、現行ブロックの前に符号化されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの候補セットが、現行ブロックの前に符号化されたブロックと現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0039】
有利なことに、現行ブロックの前に符号化されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、現行ブロックの前に符号化されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0040】
有利なことに、現行ブロックの前に符号化されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、現行ブロックの後に符号化されたピクチャ部分のブロックの個数と現行ブロックの前に符号化されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの候補セットは並べ換えられる。
【0041】
有利なことに、この方法は、フィルタ・パラメータの複数の候補セット内に、フィルタ・パラメータの事前定義の候補セット、たとえば、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入することをさらに含む。
【0042】
有利なことに、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットは、事前定義の位置のフィルタ・パラメータの候補セットの間に挿入される。
【0043】
特定の実施形態では、フィルタ・パラメータの前記複数の候補セットは、フィルタ・ルマ・パラメータを含み、この方法は、フィルタ・クロマ・パラメータの別の複数の候補セットを入手することと、フィルタ・クロマ・パラメータの候補セットのうちの1つを識別する現行ブロックの別のインデックスを判定することとをさらに含む。再構成されたブロック・ルマ・サンプルのフィルタリングは、インデックスによって識別されるフィルタ・ルマ・パラメータの候補セットを用いて行われ、再構成されたブロック・クロマ・サンプルのフィルタリングは、別のインデックスによって識別されるフィルタ・クロマ・パラメータの候補セットを用いて行われる。この方法は、ビットストリーム内で、フィルタ・ルマ・パラメータの複数の候補セットおよびフィルタ・クロマ・パラメータの別の複数の候補セットと、現行ブロックと、インデックスとを符号化することをさらに含む。
【図面の簡単な説明】
【0044】
【
図1】従来技術による、上または左に配置された隣接するCTUからそのSAOパラメータを継承するCTUを示す図である。
【
図2】特定の非限定的な実施形態による、ビットストリーム内でピクチャを符号化するように構成された送信器の例示的なアーキテクチャを表す図である。
【
図3】本原理による符号化方法を実行するように適合された例示的なビデオ符号器を示す図である。
【
図4】従来技術による、EO(エッジ・オフセット)サンプル分類の4つの1D方向パターンを示す絵図の例を示す図である。
【
図5】従来技術による、関連する開始バンド位置および4つの連続するバンドのオフセットと共にBO(バンド・オフセット)を示す絵図の例を示す図である。
【
図6A】特定の非限定的な実施形態による、ビットストリーム内でピクチャ部分のブロックを符号化する方法を表す流れ図である。
【
図6B】特定の非限定的な実施形態による、ビットストリーム内でピクチャ部分のブロックを符号化する方法を表す流れ図である。
【
図6C】特定の非限定的な実施形態による、ビットストリーム内でピクチャ部分のブロックを符号化する方法を表す流れ図である。
【
図7】本原理による、フィルタ・パラメータの複数の候補セットを参照するピクチャ部分のブロックを示す絵図の例を示す図である。
【
図8】本原理による、ピクチャ部分のブロックを表すビットストリームの絵図の例を示す図であり、フィルタ・パラメータの複数の候補セットは、第1のブロックに関連する構文要素を用いてシグナリングされる。
【
図9】フィルタ・パラメータの複数の候補セットを入手し、ピクチャ部分のブロックごとにインデックスを判定する方法を表す流れ図である。
【
図10】ピクチャ部分のブロックの異なるスキャンを示す絵図の例を示す図である。
【
図11】特定の非限定的な実施形態による、ビットストリームからピクチャを復号するように構成された受信器の例示的なアーキテクチャを示す図である。
【
図12】本原理による復号方法を実行するように適合された例示的なビデオ復号器を示す図である。
【
図13A】特定の非限定的な実施形態による、ビットストリームからピクチャ部分のブロックを復号する方法を表す流れ図である。
【
図13B】特定の非限定的な実施形態による、ビットストリームからピクチャ部分のブロックを復号する方法を表す流れ図である。
【
図13C】特定の非限定的な実施形態による、ビットストリームからピクチャ部分のブロックを復号する方法を表す流れ図である。
【
図14】本原理による、フィルタ・パラメータの複数の候補セットを参照するピクチャ部分のブロックを示す絵図の例を示す図である。
【
図15】本原理による、フィルタ・パラメータの複数の候補セットを参照するピクチャ部分のブロックを示す別の絵図の例を示す図である。
【
図16】フィルタ・ブロックのサイズおよび形状がCTUのサイズおよび形状とは異なる場合の、1つのCTUブロックとフィルタ・ブロック・サイズとを示す絵図の例を示す図である。
【
図17】フィルタ・ブロック・サイズが長方形である場合の、フィルタ・ブロック・マップを示す絵図の例を示す図である。
【発明を実施するための形態】
【0045】
図面および説明が、本原理の明瞭な理解に関係する要素を示すために単純化されると同時に、明瞭さのために通常の符号化/復号デバイスに見られる多数の他の要素を除去していることを理解されたい。用語第1および第2が、本明細書で様々な要素を記述するのに使用される場合があるが、これらの要素が、これらの用語によって限定されてはならないことを理解されたい。これらの用語は、ある要素を別の要素から区別するためにのみ使用される。
【0046】
ピクチャは、モノクローム・フォーマットのルマ・サンプルのアレイ、4:2:0、4:2:2、および4:4:4カラー・フォーマットのルマ・サンプルのアレイおよびクロマ・サンプルの2つの対応するアレイ、または、より一般的には緑、赤、青などの3つの色成分のアレイである。一般に、「ブロック」は、サンプル・アレイ(たとえば、ルマY)内の特定のエリアに対処し、「ユニット」は、すべての色成分(たとえば、ルマYとおそらくクロマCbおよびクロマCr)の同一位置に配置されたブロックを含む。スライスは、HEVCコーディング・ツリー・ユニットまたはH.264マクロブロック・ユニットなど、整数個数の基本コーディング・ユニットである。スライスは、完全なピクチャならびにその一部からなるものとすることができる。各スライスは、1つまたは複数のスライス・セグメントを含むことができる。
【0047】
以下では、単語「再構成された」および「復号された」が、交換可能に使用され得る。必ずではないが通常、「再構成された」は符号器側で使用され、「復号された」は、復号器側で使用される。用語「復号された」または「再構成された」が、ビットストリームが部分的に「復号され」または「再構成され」、たとえばデブロッキング・フィルタリングの後であるがSAOフィルタリングの前に入手される信号を意味する場合があり、再構成されたサンプルが、表示に使用される最終的な復号された出力とは異なる場合があることに留意されたい。我々は、用語「画像」、「ピクチャ」、および「フレーム」を交換可能に使用する場合もある。
【0048】
様々な実施形態を、HEVC標準規格に関して説明する。しかし、本原理は、HEVCに限定されず、たとえば、HEVCまたはFormat Range Extension(RExt)、Scalability Extension(SHVC)、Multi-View Extension(MV-HEVC)などのHEVC extensionおよびH.266を含む他の標準規格、勧告、およびその拡張に適用され得る。様々な実施形態は、ピクチャ部分のブロック、たとえばスライスのブロックの符号化/復号に関して説明される。これらは、ピクチャ全体またはピクチャのシーケンス全体を符号化/復号するために適用され得る。
【0049】
様々な方法が上で説明され、方法のそれぞれは、説明される方法を達成するために1つまたは複数のステップまたはアクションを含む。ステップまたはアクションの特定の順序が、方法の正しい動作のために要求されない限り、特定のステップおよび/またはアクションの順序および/または使用を変更し、または組み合わせることができる。
【0050】
図2は、特定の非限定的な実施形態による、ビットストリーム内でピクチャを符号化するように構成された送信器1000の例示的なアーキテクチャを表す。
【0051】
送信器1000は、内部メモリ1030(たとえば、RAM、ROM、および/またはEPROM)と一緒に1つまたは複数のプロセッサ1005を含み、プロセッサ1005は、たとえば、CPU、GPU、および/またはDSP(デジタル信号プロセッサの英語頭字語)を含むことができる。送信器1000は、出力情報を表示し、かつ/またはユーザがコマンドおよび/もしくはデータを入力することを可能にするようにそれぞれ適合された1つまたは複数の通信インターフェース1010(たとえば、キーボード、マウス、タッチパッド、ウェブカム)と、送信器1000の外部であってもよい電源1020とを含む。送信器1000は、1つまたは複数のネットワーク・インターフェース(図示せず)を含むこともできる。符号器モジュール1040は、コーディング機能を実行するためにデバイス内に含まれ得るモジュールを表す。さらに、当業者に既知のように、符号器モジュール1040は、送信器1000の別々の要素として実施され得、あるいは、ハードウェアとソフトウェアとの組合せとしてプロセッサ(1つまたは複数)1005内に組み込まれ得る。
【0052】
ピクチャは、ソースから入手され得る。異なる実施形態によれば、ソースは、下記とすることができるが、これに限定はされない。
-ローカル・メモリ、たとえば、ビデオ・メモリ、RAM、フラッシュ・メモリ、ハード・ディスク、
-ストレージ・インターフェース、たとえば、マス・ストレージ、ROM、光ディスク、または磁気サポートとのインターフェース、
-通信インターフェース、たとえば、有線インターフェース(たとえば、バス・インターフェース、広域ネットワーク・インターフェース、ローカル・エリア・ネットワーク・インターフェース)または無線インターフェース(IEEE 802.11インターフェースまたはBluetoothインターフェースなど)、
-ピクチャ取込回路(たとえば、たとえばCCD(すなわち、電荷結合素子)またはCMOS(すなわち、相補型金属酸化膜半導体)などのセンサ)。
【0053】
異なる実施形態によれば、ビットストリームは、宛先に送られ得る。一例として、ビットストリームは、リモート・メモリまたはローカル・メモリ内、たとえばビデオ・メモリまたはRAM、ハード・ディスク内に記憶され得る。変形形態では、ビットストリームは、ストレージ・インターフェース、たとえば、マス・ストレージ、ROM、フラッシュ・メモリ、光ディスク、または磁気サポートとのインターフェースに送られ、かつ/または通信インターフェース、たとえばポイント・ツー・ポイント・リンク、通信バス、ポイント・ツー・マルチポイント・リンク、またはブロードキャスト・ネットワークへのインターフェースを介して送信される。
【0054】
例示的で非限定的な実施形態によれば、送信器1000は、メモリ1030内に記憶されたコンピュータ・プログラムをさらに含む。コンピュータ・プログラムは、命令を含み、この命令は、送信器1000、具体的にはプロセッサ1005によって実行される時に、送信器1000が
図6Aから
図6Cを参照して説明される符号化方法を実行することを可能にする。変形形態によれば、コンピュータ・プログラムは、送信器1000の外部で非一時的デジタル・データ・サポート上、たとえば、すべて当技術分野で既知の、HDD、CD-ROM、DVD、読取専用および/もしくはDVDドライブならびに/または書込可能DVDドライブなどの外部記憶媒体上に記憶される。したがって、送信器1000は、コンピュータ・プログラムを読み取る機構を含む。さらに、送信器1000は、対応するUniversal Serial Bus(USB)ポート(図示せず)を介して1つまたは複数のUSBタイプのストレージ・デバイス(たとえば、「メモリ・スティック」)にアクセスすることができる。
【0055】
例示的で非限定的な実施形態によれば、送信器1000は、下記とすることができるが、これに限定はされない。
-モバイル・デバイス、
-通信デバイス、
-ゲーム・デバイス、
-タブレット(またはタブレット・コンピュータ)、
-ラップトップ、
-静止画カメラ、
-ビデオ・カメラ、
-符号化チップまたは符号化デバイス/装置、
-静止画サーバ、
-ビデオ・サーバ(たとえば、ブロードキャスト・サーバ、ビデオオンデマンド・サーバ、またはウェブ・サーバ)。
【0056】
図3は、
図6Aから
図6Cの符号化方法を実行するように適合された例示的なビデオ符号器100、たとえばHEVCビデオ符号器を示す。ビデオ符号器100は、送信器1000またはそのような送信器1000の一部の例である。
【0057】
コーディングに関して、ピクチャは、通常は基本コーディング・ユニット、たとえばHEVCのコーディング・ツリー・ユニット(CTU)またはH.264のマクロブロック・ユニットに区分される。おそらく連続する基本コーディング・ユニットのセットが、スライスにグループ化される。基本コーディング・ユニットは、すべての色成分の基本コーディング・ブロックを含む。HEVCでは、最小のルマ・コーディング・ツリー・ブロック(CTB)サイズ16×16が、以前のビデオ・コーディング標準規格で使用されたマクロブロック・サイズに対応する。用語CTUおよびCTBが、本明細書で符号化/復号方法および符号化/復号装置を記述するのに使用されるが、これらの方法および装置が、これらの特定の用語によって限定されてはならず、これらの特定の用語が、他の標準規格で異なって表される(たとえば、マクロブロック、コーディング・ブロック)可能性があることを理解されたい。
【0058】
HEVCでは、CTBは、コーディング・ブロック(CB)への四分木区分のルートであり、コーディング・ブロックは、1つまたは複数の予測ブロック(PB)に区分され、変換ブロック(TB)への四分木区分のルートを形成する。コーディング・ブロック、予測ブロック、および変換ブロックに対応して、コーディング・ユニット(CU)は、予測ユニット(PU)と、変換ユニット(TU)の木構造セットとを含み、PUは、すべての色成分の予測情報を含み、TUは、色成分ごとの残差コーディング構文構造を含む。ルマ成分のCB、PB、およびTBのサイズは、対応するCU、PU、およびTUにあてはまる。本願では、用語「ブロック」または「ピクチャ・ブロック」は、CTU、CU、PU、TU、CB、PB、およびTBのいずれを指すのにも使用され得る。さらに、用語「ブロック」または「ピクチャ・ブロック」は、H.264/AVCまたは他のビデオ・コーディング標準規格で指定されるマクロブロック、パーティション、およびサブブロックを指すのに使用され得、より一般的には様々なサイズのサンプルのアレイを指すのに使用され得る。
【0059】
例示的な符号器100では、ピクチャは、下で説明する符号器要素によって符号化される。符号化されるピクチャは、CU単位で処理される。各CUは、イントラ・モードまたはインター・モードのいずれかを使用して符号化される。CUがイントラ・モードで符号化される時に、符号器要素は、イントラ予測(160)を実行する。インター・モードでは、動き推定(175)および動き補償(170)が実行される。符号器は、イントラ・モードまたはインター・モードのどちらをCUの符号化に使用すべきかを判断し(105)、予測モード・フラグによってイントラ/インター判断を示す。残差が、元のピクチャ・ブロックから予測されたサンプル・ブロック(プレディクタとも称する)を減算する(110)ことによって計算される。
【0060】
イントラ・モードのCUは、同一スライス内の再構成された隣接するサンプルから予測される。DCモード、平面モード、および33個の角度予測モードを含む35個のイントラ予測モードのセットが、HEVCで使用可能である。イントラ予測参照は、現行ブロックに隣接する行および列から再構成される。参照は、以前に再構成されたブロックから使用可能なサンプルを使用して、水平方向および垂直方向のブロック・サイズの2倍にわたって延びる。角度予測モードがイントラ予測に使用される時に、参照サンプルは、角度予測モードによって示される方向に沿ってコピーされ得る。
【0061】
現行ブロックに適用可能なルマ・イントラ予測モードは、2つの異なるオプションを使用してコーディングされ得る。適用可能なモードが、3つのmost probable mode(MPM)の構成されたリストに含まれる場合に、モードは、MPMリスト内のインデックスによってシグナリングされる。そうではない場合には、モードは、モード・インデックスの固定長2値化によってシグナリングされる。3つのmost probable modeは、上および左の隣接するブロックのイントラ予測モードから導出される。
【0062】
インターCUに関して、対応するコーディング・ブロックは、1つまたは複数の予測ブロックにさらに区分される。インター予測は、BPレベルで実行され、対応するPUは、インター予測がどのように実行されるのかに関する情報を含む。
【0063】
HEVCでは、動き補償の動き情報の精度は、ルマ成分に関して1/4サンプル、クロマ成分に関して1/8サンプルである。7タップまたは8タップの補間フィルタが、分数サンプル・サンプル位置の補間に使用される、すなわち、水平方向と垂直方向との両方のフル・サンプル位置の1/4、1/2、および3/4が、ルマに関してアドレッシングされ得る。
【0064】
残差が変換され(125)、量子化される(130)。量子化された変換係数ならびに動きベクトルおよび他の構文要素がエントロピ・コーディング(145)されて、ビットストリームを出力する。符号器は、変換をスキップし、4×4TUに基づいて、変換されていない残差信号に直接に量子化を適用することもできる。符号器は、変換と量子化との両方を迂回することもできる、すなわち、残差は、変換プロセスまたは量子化プロセスの的用なしで直接にコーディングされる。直接PCMコーディングでは、予測は適用されず、コーディング・ユニット・サンプルは、ビットストリームに直接にコーディングされる。
【0065】
符号器は、復号ループを含み、したがって、さらなる予測の参照を提供するために符号化されたブロックを復号する。量子化された変換係数は、残差を復号するために、逆量子化され(140)、逆変換される(150)。ピクチャ・ブロックは、復号された残差と予測されたサンプル・ブロックとを組み合わせる(155)ことによって再構成される。ループ内フィルタ(165)が、たとえばコーディング・アーティファクトを減らすためにデブロッキング/SAO(サンプル適応オフセット)フィルタリングを実行するために、再構成されたピクチャに適用される。フィルタリングされたピクチャは、参照ピクチャ・バッファ(180)に記憶され、他のピクチャの参照として使用され得る。
【0066】
HEVCでは、SAOフィルタリングは、ビデオ・レベル、スライス・レベル、およびCTBレベルでアクティブ化され、非アクティブ化され得る。2つのSAOモードすなわち、エッジ・オフセット(EO)およびバンド・オフセット(BO)が指定される。EOに関して、サンプル分類は、フィルタリングされるピクチャ内の局所方向構造に基づく。BOに関して、サンプル分類は、サンプル値に基づく。EOまたはBOのパラメータは、隣接物から明示的にコーディングされまたは導出され得る(マージ・アップまたはマージ・レフト)。SAOは、ルマ成分およびクロマ成分に適用され得、SAOモードは、Cb成分およびCr成分に関して同一である。SAOパラメータは、色成分ごとに個別に構成される。より正確には、SAOパラメータのセット(すなわち、オフセット、SAOタイプ(EO、BO、および非アクティブ化)、EOの場合のクラス、およびBOの場合のバンド位置)が、CTUレベルで符号化される。
【0067】
SAOフィルタリングがCTBに関してアクティブ化される場合に、そのCTB内のサンプルは、NC個のカテゴリ、たとえばHEVCではNC=5個のカテゴリに分類される。カテゴリc(s)内のサンプルsに関して、サンプルは、s=s+off(c(s))に調整され得、ここで、off(n)は、カテゴリnのオフセット値である。HEVCでは、4つ(=NC-1)のみのカテゴリのオフセット値が、ビットストリームから復号され、他のオフセット値には0がセットされる。BOに関して、絶対オフセット値および符号が復号される。EOに関して、絶対オフセット値だけが復号され、符号は、カテゴリから推論される(カテゴリ1および2に関しては正の符号、カテゴリ3および4に関しては負の符号)。
【0068】
エッジ・オフセット
EOは、
図4に示されているように、サンプル分類に関して4つの1D方向パターンすなわち、水平、垂直、斜め135°、および斜め45°を使用し、
図4では、ラベル「p
c」が、現行サンプルを表し、ラベル「p
0」および「p
1」が、2つの隣接するサンプルを表す。4つのEOクラスは、方向に基づいて指定され、各EOクラスは、1つの方向に対応する。EOを使用可能にするCTBごとに1つのみの選択されたEOクラスは、ビットストリーム内でサイド情報としてシグナリングされる。
【表1】
表1
【0069】
所与のEOクラスに関して、CTBの内部の各サンプルは、局所勾配に基づいて、5つ(NC=5)のカテゴリのうちの1つに分類される。具体的には、「pc」としてラベルを付けられた現行サンプル値は、選択された1D方向に沿った2つの隣接物と比較される。サンプルの分類ルールを、表1に要約する。カテゴリ1および4は、それぞれ選択された1Dパターンに沿った局所的な谷および局所的なピークに関連し、カテゴリ2および3は、それぞれ選択された1Dパターンに沿った凹状角および凸状角に関連する。正のオフセットが、カテゴリ1および2に関して使用され、負のオフセットが、カテゴリ3および4に関して使用される。
【0070】
現行サンプル値が、カテゴリ1~4に属さない場合(すなわち、現行サンプル値が、その2つの隣接物と同一ではない場合、またはp0<pc<p1もしくはp0>pc>p1である場合)には、現行サンプル値はカテゴリ0に含まれ、SAOは適用されない(すなわち、オフセットは0である)。カテゴリ1~4に関しては、オフセットが符号化される。より正確には、カテゴリごとに1つの絶対値の、4つのオフセットの絶対値が、符号器によってシグナリングされる。オフセットの符号は、符号化されないが、対応するEOカテゴリから暗黙のうちに導出される。
【0071】
バンド・オフセット
BOに関して、サンプル値の範囲(たとえば、8ビットで0~255)は、32個のバンドに均等に分割される。1つのオフセットが、その値が同一のバンドに属するすべてのサンプルに加算される。HEVCでは、(NC-1)=4個の連続するバンドのオフセットおよび開始バンド位置だけが、
図5に示されているように復号器にシグナリングされる。この図では、開始バンドは、18番目のバンドであり、符号化されるオフセット値は、{0,0,2,3}である。開始バンド位置(すなわち、インデックス)は、32個のバンド内の符号化されるオフセットと共に、第1のバンドの位置を示す。1つのオフセットが、(NC-1)個のバンドのそれぞれについてコーディングされ、残りのバンドは、0と等しいオフセットを有する。開始バンド位置が最後のバンド位置に近い時には、バンドが循環バッファとして管理されるので、オフセット値は、不連続なバンドに対応することができる。BOに関して、この4つのシグナリングされるバンドを、4つのカテゴリと考えることができ、残りのバンドを、別のカテゴリと考えることができる。本願では、我々は、用語「バンド」および「カテゴリ」を交換可能に使用する。HEVCでのBOに関して、オフセットは、4つのバンドに関して符号化される。より正確には、4つのオフセットの絶対値(4つのバンドのそれぞれについて1つの絶対値)が、符号器によってシグナリングされる。オフセットの符号も、符号器によってシグナリングされる。
【0072】
図6Aは、特定の非限定的な実施形態による、ビットストリーム内でピクチャ部分のブロックを符号化する方法の流れ図を表す。ピクチャ部分は、ピクチャ全体またはその部分の一部、たとえばスライスとすることができる。
【0073】
この方法は、ステップS100で始まる。ステップS110では、たとえば符号器100などの送信器1000が、ピクチャ部分の現行ブロックにアクセスする。
【0074】
ステップS120では、送信器が、再構成されたブロックとも命名される、アクセスされたブロックの再構成されたバージョンを判定する。再構成されたブロックは、通常、ルマ・ブロックすなわちルマ・サンプルのブロックと、クロマ・ブロックすなわちクロマ・サンプルのブロックとを含む。再構成されたブロックの判定は、必ずではないが通常、部分的な符号化(おそらくはエントロピ・コーディングなし)とそれに続く復号とを含む。部分的な符号化は、残差のブロックを入手するためにアクセスされたブロックからプレディクタを減算することと、残差のブロックを変換係数のブロックに変換することと、変換係数の量子化されたブロックを入手するために量子化ステップ・サイズを用いて係数のブロックを量子化することとを含む。符号器側でのブロックの復号は、必ずではないが通常、残差のブロックを入手するために変換係数の量子化されたブロックを逆量子化し、逆変換することと、再構成されたブロックを入手するために残差のブロックにプレディクタを加算することとを含む。この方法は、ステップS130に継続する前に、すべての再構成されたブロックからなる再構成されたピクチャ部分を入手するために、ピクチャ部分のすべてのブロックにわたってステップS110およびS120をループすることができる。
【0075】
ステップS130では、送信器が、両方の成分ルマとクロマとに関するフィルタ・パラメータの複数の候補セットを入手し、さらに、複数の候補セットの中で、ステップS140で再構成されたブロックのフィルタリングに使用される1つの候補セットを識別するインデックス(merge_idx)をピクチャ部分のブロックごとに判定する。フィルタ・パラメータのセットは、少なくとも1つのフィルタ・パラメータを含む。
【0076】
フィルタ・パラメータの複数の候補セットは、オフラインで判定され、したがってメモリから入手され得る。変形形態では、フィルタ・パラメータの複数の候補セットは、
図9によって示されるように、ピクチャ部分の内容から、RDOと称するレート-歪み最適化(Rate-Distortion Optimization)によってオンザフライで判定される。この後者の場合に、復号方法に関して開示される異なる変形形態(たとえば、
図13AのステップS250に関して開示される、リスト内の候補セットの並べ換え)は、コーディング・レートを判定する時にもあてはまる。この目的で、最良のレート-歪みトレードオフをもたらす候補セットのリストが選択される。特定の実施形態では、候補セットのリストは、OFF候補セットと称するフィルタ・パラメータの特定の候補セットを含む。一例として、OFF候補は、候補セットのリスト内で事前定義の位置、たとえば2番目の位置に置かれる。
【0077】
インデックスは、ピクチャ部分のブロックごとにも判定され、前記インデックスは、複数の候補セットの中で、再構成されたブロックのフィルタリングに使用される1つの候補セットを識別する。インデックスは、RDOによっても判定され得る。候補セットのリストの並べ換えの場合に、インデックスの判定は、リスト並べ換えの後に行われる。
【0078】
ステップS140では、送信器が、ステップS130で判定されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて、再構成されたブロックをフィルタリングする。インデックスmerge_idxがOFF候補を識別する場合には、そのブロックは、ステップS140ではフィルタリングされない。特定の実施形態では、フィルタは、SAOフィルタであり、
図3を参照して開示されたフィルタリング・ステップが、適用される。この方法は、ステップS150に継続する前に、ピクチャ部分のすべてのブロックをフィルタリングするために、すべてのこれらのブロックにわたってステップS140をループすることができる。
【0079】
ステップS150では、送信器が、ビットストリーム内でフィルタ・パラメータの複数の候補セットを符号化する。
図7を参照すると、フィルタ・パラメータの3つの候補セットが符号化される(c-0、c-1、およびc-2)。
図7の右側のピクチャ部分の各ブロックは、そのフィルタ・パラメータを3つの候補セットのうちの1つから継承する。
図7では、ブロックBlk_0、Blk_1、Blk_4、およびBlk_5が、同一のフィルタ・パラメータすなわち、候補セットc-0のフィルタ・パラメータを有し、ブロックBlk_2およびBlk_3が、同一のフィルタ・パラメータすなわち、候補セットc-1のフィルタ・パラメータを有し、ブロックBlk_6およびBlk_7が、同一のフィルタ・パラメータすなわち、候補セットc-2のフィルタ・パラメータを有する。ステップS130で入手されるリスト内にOFF候補が存在する場合に、OFF候補は、ビットストリーム内で符号化されるのではなく、復号器側で候補セットのリストに追加される。
図7では、明瞭さのために、使用される候補セットは、元の候補セット・リスト順の番号によって参照される。リストの並べ換えの場合には、2つのブロックがフィルタリングに同一の候補セットを使用する場合であっても、コーディングされるインデックス(merge_idx)の値が、この2つのブロックに関して異なる場合がある。逆に、インデックスの値を判定する前のリストの並べ換えの故に、2つのブロックが、2つの異なる候補セットに対応する、コーディングされるインデックスの同一の値を有する場合がある。
【0080】
有利なことに、フィルタ・パラメータの複数の候補セットは、スライスのヘッダ内で符号化される。変形形態では、フィルタ・パラメータの複数の候補セットは、符号化される順序でピクチャ部分の最初のブロック(たとえば、
図7のBlk_0)のレベルで符号化される。一例として、
図8では、フィルタ・パラメータの3つの候補セットが、最初のブロック、Blk_0の構文要素と共に符号化される。
【0081】
別の実施形態では、送信器が、前記ビットストリーム内で、フィルタ・パラメータの複数の候補セットのデータ表現を符号化する。一例として、符号化されるデータnum_sao_cand_minus1は、符号化されるフィルタ・パラメータの候補セットの個数から1を引いたものである。num_sao_cand_minus1の値は、必ず、1つのピクチャ部分、たとえば1つのスライス内のブロックの個数から1を引いたものより小さいので、構文要素num_sao_cand_minus1を表すビットの個数は、log2(1つのピクチャ部分内のブロックの個数引く1)より小さい。
【0082】
SAOフィルタリングに関するHEVCタイプの構文の例を、表2および表3に示す。表2によれば、num_sao_cand_minus1が符号化された後に、SAOパラメータの各候補セットが符号化される。表2の例では、候補セット、ここではOFF候補は、推論され、コーディングされない。候補が推論されない場合には、構文は、表3に示されているように変更される。表4は、本原理によるSAOパラメータの候補セットの符号化を示す。
【0083】
SAOパラメータは、以下の通りである。
【0084】
1と等しいslice_sao_luma_flag(スライス・ヘッダ内で符号化される)は、SAOが現行スライス内のルマ成分に関して使用可能にされ、ルマ成分のSAOパラメータが存在することを指定し、0と等しいslice_sao_luma_flagは、SAOが現行スライス内のルマ成分に関して使用不能にされ、ルマ成分のSAOパラメータが存在しないことを指定する。
【0085】
1と等しいslice_sao_chroma_flag(スライス・ヘッダ内で符号化される)は、SAOが現行スライス内のクロマ成分に関して使用可能にされ、クロマ成分のSAOパラメータが存在することを指定し、0と等しいslice_sao_chroma_flagは、SAOが現行スライス内のクロマ成分に関して使用不能にされ、クロマ成分のSAOパラメータが存在しないことを指定する。
【0086】
sao_type_idx_lumaは、ルマ成分のオフセット・タイプを指定する。
【0087】
sao_type_idx_chromaは、クロマ成分のオフセット・タイプを指定する。
【0088】
SaoTypeIdx[cIdx][idxCand]は、色成分cIdxの候補セットidxCandのオフセット・タイプを指定する(0不適用、バンド・オフセット、またはエッジ・オフセット)。一例として、値0は、SAOフィルタリングが適用されないことを示し、値1は、SAOフィルタリングがバンド・オフセットを用いて適用されることを示し、値2は、SAOフィルタリングがエッジ・オフセットを用いて適用されることを示す。SaoTypeIdx[cIdx][idxCand]は、sao_type_idx_luma構文要素およびsao_type_idx_chroma構文要素から導出される。SaoTypeIdx[0][idxCand]は、sao_type_idx_lumaと等しくなるようにセットされ、SaoTypeIdx[cIdx][idxCand]は、cIdx=1または2に関してsao_type_idx_chromaと等しくなるようにセットされる。
【0089】
sao_offset_abs[cIdx][idxCand][i]は、色成分cIdxの候補セットidxCandのi番目のカテゴリのオフセット値を指定する。
【0090】
sao_offset_sign[cIdx][idxCand][i]は、色成分cIdxの候補セットidxCandのi番目のカテゴリのオフセット値の符号を指定する。
【0091】
sao_band_position[cIdx][idxCand]は、SaoTypeIdx[cIdx][idxCand]がバンド・オフセットと等しい時に、サンプル範囲の最初のバンド・オフセットの値を指定する。
【0092】
sao_eo_class_lumaは、ルマ成分のエッジ・オフセット・クラスを指定する。
【0093】
sao_eo_class_chromaは、クロマ成分のエッジ・オフセット・クラスを指定する。
【表2】
表2
【表3】
表3
【表4】
表4
【0094】
ステップS160では、送信器が、ビットストリーム内で、現行ブロックとステップS130で判定されたインデックス(merge_idx)とを符号化する。ここでの符号化は、エントロピ・コーディングを指す。その結果、現行ブロック、より正確にはコーディング・パラメータ(たとえば、コーディング・モード、可能な動きベクトルなど)を伴うステップS120で入手された変換係数が、たとえばContext-adaptive binary arithmetic coding(CABAC)またはContext-adaptive variable-length coding(CAVLC)を使用して、ビットストリーム内でエントロピ・コーディングされる。座標(rx,ry)のブロックに関するインデックスmerge_idxの符号化は、OFF候補セットが候補セットのリストに存在する場合には表5によって示され、OFF候補セットが候補セットのリストに存在しない場合には表6によって示される。インデックスは、たとえば、HEVC標準規格の9.3.3.2で指定されるTruncated Rice(TR)2値化を使用して、cMax=idx_maxを用いて符号化される。idx_maxは、復号器側で同一の形で判定される。idx_maxは、所与のブロックのインデックスの最大の可能な値を表すことができる。
【0095】
図8を参照すると、インデックスは、ブロック(merge_idx)ごとに符号化される。このインデックスは、フィルタ・パラメータの候補セットのうちの1つを識別する。一実施形態では、すべてのブロックがマージ・モードである、すなわち、すべてのブロックが、フィルタ・パラメータの候補セットのうちの1つからそのフィルタ・パラメータを継承する。これは、いくつかのビットを節約することを可能にする。というのは、あるブロックに関して、そのブロックがマージ・モードであるか否か、すなわち、そのブロックが隣接ブロックからそのフィルタ・パラメータを継承するか否かを示すフラグを符号化する必要がないからである。具体的には、SAOパラメータが隣接CTUの対応するSAOパラメータから導出されることを指定するHEVCフラグsao_merge_left_flagおよびsao_merge_up_flagを符号化する必要はない。
【0096】
OFF候補セットが候補セットのリストに存在しない場合には、merge_idxは、最初のブロックBlk_0に関して推論され得、したがって、符号化されない(表6のif (rx==0 and ry==0) {…}を参照されたい)。
【表5】
表5
【表6】
表6
【0097】
この方法は、対応するインデックスと共にピクチャ部分のすべてのブロックを符号化するために、ピクチャ部分のすべてのブロックにわたってステップS160をループすることができる。
【0098】
この方法は、ステップS180で終了する。
【0099】
本原理は、SAOフィルタに適用され得るが、このタイプのフィルタに制限はされず、少なくとも1つのフィルタ・パラメータのセットがブロック・レベルで定義されなければならない他のフィルタに適用され得る。
【0100】
図6Aの実施形態では、フィルタ・パラメータの候補セットの単一のリスト内でルマ・フィルタ・パラメータおよびクロマ・フィルタ・パラメータの候補セットを識別する単一のインデックスが符号化される。実際には、表4に示されているように、フィルタ・パラメータの候補セットは、ルマ成分に関するパラメータ(たとえば、sao_offset_abs[0][idxCand][i])およびクロマ成分に関するパラメータ(たとえば、sao_offset_abs[1][idxCand][i])を含む。
図6Aの方法の変形形態を、
図6Bに示す。この変形形態では、ルマ成分およびクロマ成分が、別々に処理される。この動作モードを、デュアル・モードと呼ぶ。デュアル・モードでは、第1のインデックスと第2のインデックスとが符号化される。第1のインデックスは、フィルタ・ルマ・パラメータの候補セットの第1のリスト内のルマ・フィルタ・パラメータの候補セットを識別し、第2のインデックスは、フィルタ・クロマ・パラメータの候補セットの第2のリスト内のクロマ・フィルタ・パラメータの候補セットを識別する。
図6Aのステップと同一の
図6Bのステップは、同一の符号によって識別される。
【0101】
この方法は、ステップS100で始まる。ステップS110では、たとえば符号器100などの送信器1000が、ピクチャ部分の現行ブロックにアクセスする。
【0102】
ステップS120では、送信器が、アクセスされたブロックの再構成されたバージョンすなわち再構成されたルマ・ブロックおよび再構成されたクロマ・ブロック(1つまたは複数)を判定する。
【0103】
ステップS132では、送信器が、フィルタ・ルマ・パラメータの第1の複数の候補セットを入手し、ピクチャ部分のブロックごとに第1のインデックス(merge_idx_luma)をさらに判定する。第1のインデックスは、第1の複数の候補セットの中で1つの候補セットを識別する。
【0104】
ステップS134では、送信器が、フィルタ・クロマ・パラメータの第2の複数の候補セットを入手し、ピクチャ部分のブロックごとに第2のインデックス(merge_idx_chroma)をさらに判定する。第2のインデックスは、第2の複数の候補セットの中で1つの候補セットを識別する。
【0105】
S130に関して開示される変形形態は、ステップS132とステップS134との両方に適用される。
【0106】
ステップS142では、送信器が、第1のインデックスによって識別されるフィルタ・ルマ・パラメータの候補セットを用いて、再構成されたルマ・ブロックをフィルタリングする。
【0107】
ステップS144では、送信器が、第2のインデックスによって識別されるフィルタ・クロマ・パラメータの候補セットを用いて、再構成されたクロマ・ブロック(1つまたは複数)をフィルタリングする。
【0108】
この方法は、すべてのブロックをフィルタリングするために、ピクチャ部分のすべてのブロックにわたってステップS142およびステップS144をループすることができる。ステップS140に関して開示される変形形態は、ステップS142およびステップS144に適用される。
【0109】
ステップS155では、送信器が、フィルタ・ルマ・パラメータの第1の複数の候補セットとフィルタ・クロマ・パラメータの第2の複数の候補セットとをビットストリーム内で符号化する。S150の変形形態は、ステップS155に適用される。
【0110】
SAOフィルタリングに関するHEVCタイプの構文の例を、表7および表8に示す。
【表7】
表7
【0111】
num_sao_cand_1_minus1は、ルマ候補の個数から1を引いたものである。
【0112】
num_sao_cand_2_minus1は、クロマ候補の個数から1を引いたものである。
【0113】
num_sao_cand_2_delta_absおよびnum_sao_cand_2_delta_signは、下記のようにnum_sao_cand_2_minus1の値を導出することを可能にする。
num_sao_cand_2_minus1=num_sao_cand_1_minus1+(1-2*num_sao_cand_2_delta_sign)*num_sao_cand_2_delta_abs
【表8】
表8
【0114】
ステップS165では、送信器が、ビットストリーム内で、現行ブロック(より正確には、ルマ成分およびクロマ成分)と、ステップS132およびS134で判定された第1および第2のインデックス(merge_idx_lumaおよびmerge_idx_chroma)とを符号化する。候補セットのリストの並べ換えは、ルマ成分とクロマ成分とに関して別々に行われ得る。変形形態では、並べ換えは共通である。たとえば、並べ換えは、まず、ルマ成分に関する候補セットのリストに関して行われ、クロマ成分(1つまたは複数)に関する候補セットのリストは、同一の形で並べ換えられる。
【0115】
図6Cに示されたステップS160の特定の実施形態では、デュアル・モードが、現行シーケンス(たとえば、SPS(シーケンス・パラメータ・セットの英語頭字語)内で符号化される)に関して、現行ピクチャ(たとえば、PPS(ピクチャ・パラメータ・セットの英語頭字語)内で符号化される)に関して、または現行スライス(たとえば、スライス・ヘッダ内で符号化されまたはスライスの最初のブロック内で符号化される)に関して使用可能にされるか否かを示すフラグが符号化される。そのようなフラグの例が、表9で言及されるslice_dual_mergeである。
【0116】
別の変形形態では、デュアル・モードが現行シーケンス、現行ピクチャ、現行スライスに関して使用可能にされるか否かを示すフラグは符号化されず、デュアル・モードは、デフォルトですべてのスライスに関して使用可能にされる。
【0117】
変形形態では、デュアル・モードが、現行シーケンス、現行ピクチャ、または現行スライスに関して使用可能にされるものとして示される場合に、ステップS1600で、デュアル・モードが現行ブロックに関して使用可能にされる(すなわち、現行ブロックがインデックスの前に符号化される)かどうかを示す別のフラグ(表9のdual_mode_block_enabled)が符号化される。
【0118】
デュアル・モードが現行ブロックに関して使用可能にされる(dual_mode_block_enabledが真または1と等しい)場合には、ステップS1610で、2つのインデックスmerge_idx_1およびmerge_idx_2(1つはルマ、1つはクロマに関する)が、現行ブロックに関して符号化される。そうではない、すなわち、dual_mode_block_enabledが偽または0と等しい場合には、ステップS1620で、第1の複数の候補セット内の1つの候補セットおよび第2の複数の候補セット内の1つの候補セットを識別する単一のインデックスが、現行ブロックに関して符号化される。
【0119】
符号器側では、ルマ・インデックスおよびクロマ・インデックスが同一である場合に、符号化方法は、dual_mode_block_enabledに偽をセットする。インデックスが異なる場合には、符号化方法は、dual_mode_block_enabledに真をセットする。この後者の場合に、値は、merge_idx_chromaに関して絶対に使用されない、すなわち、merge_idx_lumaの値である。この情報は、1ビットを節約するのに使用され得る。この場合に、我々は、両方のインデックスに関して同一の値を符号化することができるが、この同一の値は、復号器側では、1つはmerge_idx_luma、1つはmerge_idx_chromaの、2つの異なる値と解釈される。より正確には、merge_idx_chromaは、復号された値を1つ増分したものと等しくなるようにセットされる。その結果、merge_idx_chromaに対応する復号された値が、merge_idx_luma以上である場合には、merge_idx_chromaは、復号された値を1つ増分したものと等しくなるようにセットされる(表9に示されているように)。
【0120】
【0121】
注1:デュアル・モードが使用可能にされる場合には、merge_idx_chromaの値は、merge_idx_lumaと異ならなければならない。
【0122】
slice_dual_mergeは、デュアル・モードが現行スライス内で使用可能にされるかどうかを示す。
【0123】
merge_idx_1は、このブロックに関して並べ換えられた後の候補セットのリスト内の最初のインデックス位置に対応する。存在しない場合には、sao_merge_idx_1は、(-1)であると推論される。
【0124】
dual_mode_block_enabledは、デュアル・モードがこのブロックに関して使用可能にされるかどうか、すなわち、構文要素merge_idx_2が存在するかどうかを示す。存在しない(デュアル・モードが、現行シーケンス、現行ピクチャ、または現行スライスに関して使用不能にされていると示される)場合には、dual_mode_block_enabledは、0と等しいと推論される。
【0125】
merge_idx_2は、このブロックに関して並べ換えられた後の候補セットのリスト内の2番目のインデックス位置に対応する。存在しない場合に、sao_merge_idx_2は、sao_merge_idx_1と等しいと推論される。
【0126】
slice_sao_luma_flagが1と等しい場合に、merge_idx_lumaは、フィルタ・ルマ・パラメータの候補セットのリスト内で、再構成されたルマ・ブロックのフィルタリングに使用される を識別するインデックスである。
【0127】
slice_sao_chroma_flagが1と等しい場合に、merge_idx_chromaは、フィルタ・クロマ・パラメータの候補セットのリスト内で、再構成されたクロマ・ブロック(1つまたは複数)のフィルタリングに使用されるフィルタ・クロマ・パラメータを識別するインデックスである。
【0128】
図9は、特定の非限定的な実施形態による、フィルタ・パラメータの複数の候補セットを入手し、ピクチャ部分のブロックごとに、ブロックをフィルタリングするのに使用される1つの候補セットを識別するインデックスを判定する方法の流れ図を表す。初めに、フィルタ・パラメータの候補セットのリストは、空であるかOFF候補のみを含むかのいずれかである。
【0129】
ステップS1300では、送信器が、RDOを使用してピクチャ部分のブロックごとにフィルタ・パラメータを判定する。このために、ピクチャ部分の各ブロックは、既に候補セットの現行リスト内にあるフィルタ・パラメータの候補セットを選択する(インデックスmerge_idxの符号化を伴うマージ・モード)か、候補セットの現行リストに追加されるフィルタ・パラメータの新しい候補セットを定義するか(フィルタ・パラメータの新しいセットの符号化を伴う新規モード)の選択を有する。新規モードが選択される場合、すなわち、新しい候補セットが定義される場合に、RDコストは、現行ブロックの歪み削減およびフィルタ・パラメータのコーディング・レートに基づく。マージ・モードが選択される場合に、RDコストは、現行ブロックの歪み削減およびインデックスmerge_idxのコーディング・レートに基づく。S1300の終りに、候補セットの最良リストと呼ばれるフィルタ・パラメータの候補セットのリストが入手される。
【0130】
変形実施形態では、ピクチャ部分のブロックは、フィルタ・パラメータの候補セットの現行リストを判定するために、異なるスキャン順に従ってスキャンされ得る。
図10は、ピクチャ部分のブロックの異なるスキャンを示す絵図の例である。この場合に、RDコストは、現行スキャン順に関してピクチャ部分に対して計算され、ステップS1302で、これまでに入手された最良のRDコストと比較される。現行スキャン順のRDコストが、これまでに入手された最良のRDコストより少ない場合には、ステップS1304で、現行候補セットが候補セットの最良リストとして記憶され、そうではない場合には、候補セットの最良リストは変更されず、この方法は、すべてのスキャン順がテストされるまで継続する。したがって、スキャン順にわたるループの終りに、最良のRDコスト・トレード・オフに対応する、候補セットの最良リストと命名されるフィルタ・パラメータの候補セットのリストが、所与のスキャン順に関して入手される。最後に、候補セットの最良リストは、候補セットの最良リストがラスタ・スキャン順とは異なるスキャン順に関して入手された場合に、ラスタ・スキャン順で並べ換えられる。
【0131】
特定の非限定的な実施形態では、ピクチャ部分のすべてのブロックは、モード新規である、すなわち、複数の候補セットの判定中にのみすなわちステップS1300中にのみ、モード・マージが使用不能にされる。この場合には、フィルタ・パラメータの新しい候補セットが、ピクチャ部分のブロックごとに判定される。
【0132】
ステップS1306では、ピクチャ部分のブロックごとに、前のステップで入手された候補セットの最良リストを使用して、マージ・モードで、このブロックの最良RDコストを提供するインデックスを選択することによって、インデックスが判定される。このインデックスは、候補セットの最良リストの候補セットのうちの1つを参照する。ステップS1306中に、ピクチャ部分のすべてのブロックは、マージ・モードである。入手されたインデックスが記憶され、RDコストが、ステップS1306で判定されたインデックスを用いてピクチャ部分に対して計算される。最良RDコストの値には、この計算されたRDコスト値がセットされる。このステップで、候補セットの最良リストは、変更されないままになる。
【0133】
ステップS1308では、候補セットのフィルタ・パラメータが、RDOによって洗練される(たとえば、SAOフィルタリングの場合にSAOタイプおよびオフセット)。このために、候補セットのフィルタ・パラメータは、フィルタリングにこの候補セットを使用して、ピクチャ部分のすべてのブロックに対して計算された歪み削減に基づいて洗練される。ピクチャ部分のうちでこの候補セットを使用する領域は、この候補セットを使用するブロックのすべてのサンプルすなわち、そのmerge_idxがこの候補セットを参照するブロックのすべてのサンプルを含む。
【0134】
変形形態では、候補セットの洗練の後に、新しいインデックスが、洗練された候補セットを使用してRDOによってピクチャ部分のブロックに関して判定される。このステップは、S1306と同一である。
【0135】
ステップS1308の終りに、RDコストが、ステップS1308で判定された洗練された候補セットおよびおそらくは新しいインデックスを用いてピクチャ部分に対して計算され得る。このRDコストは、これまでに入手された最良のRDコストと比較される。現行RDコストがこれまでに入手された最良のRDコストより少ない場合には、洗練された候補セットおよび新しいインデックスが、次のステップでの使用のために記憶され、そうではない場合には、候補セットの最良リストは、変更されないままになり、ステップS1308の前に入手されたインデックスが、次のステップの入力として保持される。
【0136】
オプションのステップ1310では、各領域R1およびR2に関して計算された対応するRDコストの和(RDcost1+RDcost2)が、そのフィルタ・パラメータがR1およびR2の和集合からなる領域Rに関して判定される単一の候補セットを使用する時に入手されるRDコストより多い場合に、領域R1およびR2に対応するフィルタ・パラメータの2つの候補セットC1およびC2が、単一の候補セットにマージされ得る。領域R1は、C1を使用する、すなわち、そのmerge_idxがC1を参照するピクチャ部分内のブロックのすべてのサンプルを含み、R2は、C2を使用する、すなわち、そのmerge_idxがC2を参照するピクチャ部分内のブロックのすべてのサンプルを含む。単一の候補セットのフィルタ・パラメータは、両方の領域Rのすべてのブロックに対して計算される歪み削減に基づいて判定される。2つの候補セットがマージされる時に、ブロックのインデックスが更新される。理論上、候補セットのすべての対が、マージに関してテストされ得る。実際には、最大のRDコスト削減を提供する候補セットの対がマージされ、この方法は、候補セットのフィルタ・パラメータを洗練するためにステップS1308に戻ることができる。RDコストは、ピクチャ部分に対して計算され、ステップS1312で、これまでに入手された最良のRDコストと比較される。RDコストが、これまでに入手された最良のRDコストより少ない場合には、マージされた候補セットを有する現行候補セットおよび更新されたインデックスが、ステップS1314で記憶され、そうではない場合には、候補セットの最良リストおよびインデックスは、変更されないままになり、この方法は、候補セットの新しい対に継続するか、ステップS1316に継続することができる。
【0137】
オプションのステップS1316では、我々は、候補セットの現行リストからの1つの候補セットの除去をテストし、RDコストが減少するか否かを評価する。1つの候補セットの除去の場合には、ブロックのインデックスが更新される。この方法は、その後、フィルタ・パラメータを洗練するために、ステップS1308に戻ることができる。RDコストが、ピクチャ部分に関して計算され、ステップS1318で、これまでに入手された最良のRDコストと比較される。RDコストが、これまでに入手された最良のRDコストより多い場合には、候補セットは、候補セットの現行リストから除去されない。この場合に、候補セットの最良リストおよびインデックスは、変更されないままになる。そうではない場合には、1つの候補セットの除去の後に入手された候補セットの現行リストおよび更新されたインデックスが、ステップS1320で記憶される。これは、推論される時のOFF候補を除くすべての候補セットについて行われ得る。
【0138】
ステップS1322では、成分ごとに個別に入手されたRDコスト値に基づいて、ピクチャ部分のフィルタリングを有効にするか否かを判断する。前のステップS1300からS1320では、RDコストは、すべての成分すなわちルマ成分およびクロマ成分を考慮して計算された。ステップS1322では、RDコストは、成分ごとに個別に計算される。前に判定されたフィルタ・パラメータを用いるピクチャ部分のブロックのフィルタリングが、そのブロックをフィルタリングしないことと比較して、ある成分に関するRDコストの減少をもたらす場合には、フィルタリングは、ピクチャ部分およびこの成分に関して有効にされる。そうではない場合には、フィルタリングは、この成分に関して有効にされない。この判断は、成分ごとに(すなわち、ルマおよびクロマに関して独立に)行われる。SAOフィルタリングの特定の事例では、フラグslice_sao_luma_flag/slice_sao_chroma_flagは、フィルタリングが有効にされる場合に強制的に真にされる。
【0139】
候補のリストが、使用の順序で並べ換えられる。
【0140】
特定の非限定的な実施形態では、停止条件が満足されるまで、ステップS1306からS1316が反復して繰り返され得る。停止条件は、
o候補セットのマージがこれ以上はない、
o候補セットをこれ以上除去できない、
oステップS1308でこれ以上の洗練が不可能である、または
o最大反復ループの回数に達した
とすることができる(これに限定はされない)。ステップの順序は、異なって配置され得る。たとえば、S1310の前にS1316を、かつ/またはS1306の前にS1308を実行することができる。S1310およびS1316など、ステップの一部は、オプションとすることができる。
【0141】
ステップS1300、S1308、S1310、およびS1316では、フィルタ・パラメータが、1つのブロックまたは複数のブロックからなる1つの領域に関して判定される。SAOフィルタリングの特定の事例では、フィルタ・パラメータは、2011年にMMSPで公表されたSample Adaptive Offset for HEVCと題するFu他の文書に開示されているように判定され得る。
【0142】
まず、タイプt(BO、EO_0、EO_90、EO_45、EO_130)およびSAOタイプt内のカテゴリc(BOのバンド・インデックスまたはEOの半ピーク、半谷、フル・ピーク、フル谷)ごとに、このカテゴリ内の領域iのサンプルの個数N
i,t,cと、再構成された信号と元の信号との間の差の対応する和e
i,t,cとを収集する。対応するオフセットは、a
i,t,cと表され、次のように推定され得る。
【数1】
【0143】
RDコストは、次式を使用して入手され、次式では、λは、ラグランジュ乗数であり、Di,t,cは、歪み削減であり、Ri,t,cは、対応するオフセットの推定されたレート(コーディングに使用されるビット数)である。
Ji,t,c=Di,t,c+λ.Ri,t,c
【0144】
文書Sample Adaptive Offset for HEVCで、Fuは、Di,t,cが、ai,t,c、ei,t,c、およびNi,t,cのみの関数として表現され得ることを示す。その結果、オフセットai,t,cの値が、RDコストJi,t,cを最小化するために判定/洗練され得る。
【0145】
候補セットに関して、SAOパラメータは、3つの成分のタイプt、カテゴリc、およびオフセットai,t,cの値であり、Ri,t,cは、これらのデータのコーディングに使用されるビットの(推定された)個数である。領域iは、フィルタリングにこの候補セットを使用するブロックからなる。
【0146】
モード・マージでコーディングされるブロックに関して、Ri,t,cは、merge-idxをコーディングするのに使用されるビットに(推定された)個数である。領域iは、ブロックである。
【0147】
総RDcostを導出するために、歪み削減は、すべての候補の歪み削減の和であり、レートは、候補レート(SAOパラメータ・タイプおよびオフセットのコーディング)とブロック・レート(マージ・インデックスのコーディング)との和である。
【0148】
図11は、特定の非限定的な実施形態による、復号されたピクチャを入手するためにビットストリームからピクチャを復号するように構成された受信器2000の例示的なアーキテクチャを表す。
【0149】
受信器2000は、1つまたは複数のプロセッサ2005を含み、プロセッサ2005は、たとえば、内部メモリ2030(たとえば、RAM、ROM、および/またはEPROM)と一緒にCPU、GPU、および/またはDSP(デジタル信号プロセッサの英語頭字語)を含むことができる。受信器2000は、出力情報を表示し、かつ/またはユーザがコマンドおよび/もしくはデータ(たとえば、復号されたピクチャ)を入力することを可能にするようにそれぞれ適合された1つまたは複数の通信インターフェース2010(たとえば、キーボード、マウス、タッチパッド、ウェブカム)と、受信器2000の外部であってもよい電源2020とを含む。受信器2000は、1つまたは複数のネットワーク・インターフェース(図示せず)を含むこともできる。復号器モジュール2040は、復号機能を実行するためにデバイス内に含まれ得るモジュールを表す。さらに、当業者に既知のように、復号器モジュール2040は、受信器2000の別々の要素として実施され得、あるいは、ハードウェアとソフトウェアとの組合せとしてプロセッサ(1つまたは複数)2005内に組み込まれ得る。
【0150】
ビットストリームは、ソースから入手され得る。異なる実施形態によれば、ソースは、下記とすることができるが、これに限定はされない。
-ローカル・メモリ、たとえば、ビデオ・メモリ、RAM、フラッシュ・メモリ、ハード・ディスク、
-ストレージ・インターフェース、たとえば、マス・ストレージ、ROM、光ディスク、または磁気サポートとのインターフェース、
-通信インターフェース、たとえば、有線インターフェース(たとえば、バス・インターフェース、広域ネットワーク・インターフェース、ローカル・エリア・ネットワーク・インターフェース)または無線インターフェース(IEEE 802.11インターフェースまたはBluetoothインターフェースなど)、
-画像取込回路(たとえば、たとえばCCD(すなわち、電荷結合素子)またはCMOS(すなわち、相補型金属酸化膜半導体)などのセンサ)。
【0151】
異なる実施形態によれば、復号されたピクチャは、宛先、たとえばディスプレイ・デバイスに送られ得る。一例として、復号されたピクチャは、リモート・メモリまたはローカル・メモリ内、たとえばビデオ・メモリまたはRAM、ハード・ディスク内に記憶される。変形形態では、復号されたピクチャは、ストレージ・インターフェース、たとえば、マス・ストレージ、ROM、フラッシュ・メモリ、光ディスク、または磁気サポートとのインターフェースに送られ、かつ/または通信インターフェース、たとえばポイント・ツー・ポイント・リンク、通信バス、ポイント・ツー・マルチポイント・リンク、またはブロードキャスト・ネットワークへのインターフェースを介して送信される。
【0152】
特定の非限定的な実施形態によれば、受信器2000は、メモリ2030内に記憶されたコンピュータ・プログラムをさらに含む。コンピュータ・プログラムは、命令を含み、この命令は、受信器2000、具体的にはプロセッサ2005によって実行される時に、受信器が
図13Aから
図13Cを参照して説明される復号方法を実行することを可能にする。変形形態によれば、コンピュータ・プログラムは、受信器2000の外部で非一時的デジタル・データ・サポート上、たとえば、すべて当技術分野で既知の、HDD、CD-ROM、DVD、読取専用および/もしくはDVDドライブならびに/または書込可能DVDドライブなどの外部記憶媒体上に記憶される。したがって、受信器2000は、コンピュータ・プログラムを読み取る機構を含む。さらに、受信器2000は、対応するUniversal Serial Bus(USB)ポート(図示せず)を介して1つまたは複数のUSBタイプのストレージ・デバイス(たとえば、「メモリ・スティック」)にアクセスすることができる。
【0153】
例示的で非限定的な実施形態によれば、受信器2000は、下記とすることができるが、これに限定はされない。
-モバイル・デバイス、
-通信デバイス、
-ゲーム・デバイス、
-セットトップ・ボックス、
-TVセット、
-タブレット(またはタブレット・コンピュータ)、
-ラップトップ、
-ビデオ・プレイヤ、たとえばBlu-rayプレイヤ、DVDプレイヤ、
-ディスプレイ、
-復号チップまたは復号デバイス/装置。
【0154】
図12は、
図13Aまたは
図13Bの復号方法を実行するように適合された例示的なビデオ復号器200、たとえばHEVCビデオ復号器のブロック図を示す。ビデオ復号器200は、受信器2000またはそのような受信器2000の一部の例である。例示的な復号器200では、ビットストリームが、下で説明するように復号器要素によって復号される。ビデオ復号器200は、一般に、ビデオ・データの符号化の一部としてビデオ復号を実行する、
図2で説明した符号化パスに相反する復号パスを実行する。
【0155】
具体的には、復号器の入力は、ビデオ符号器100によって生成され得るビデオ・ビットストリームを含む。ビットストリームは、まず、変換係数、動きベクトル、および他のコーディングされた情報を入手するためにエントロピ復号(230)される。変換係数は、残差を復号するために逆量子化(240)され、逆変換(250)される。その後、復号された残差は、復号/再構成されたピクチャ・ブロックを入手するために、予測されたサンプル・ブロック(プレディクタとも称する)と組み合わされる(255)。予測されたサンプル・ブロックは、イントラ予測(260)または動き補償された予測(すなわち、インター予測)(275)から入手(270)され得る。上で説明したように、AMVP技法およびマージ・モード技法が、動き補償中に使用され得、動き補償は、参照ブロックのサブ整数サンプルの補間された値を計算するために補間フィルタを使用することができる。ループ内フィルタ(265)が、再構成されたピクチャに適用される。ループ内フィルタは、デブロッキング・フィルタおよびSAOフィルタを含むことができる。フィルタリングされたピクチャは、参照ピクチャ・バッファ(280)で記憶される。
【0156】
図13Aは、特定の非限定的な実施形態による、ビットストリームからピクチャ部分のブロックを復号する方法の流れ図を表す。ピクチャ部分は、ピクチャ全体またはその部分の一部、たとえばスライスとすることができる。
【0157】
この方法は、ステップS200で開始する。ステップS210では、復号器200などの受信器2000が、ビットストリームにアクセスする。ステップS220では、受信器が、ビットストリームからフィルタ・パラメータの複数の候補セットを復号する。したがって、複数の候補セットは、それらが復号される順序に従って順序付けられる。
図7に関して、フィルタ・パラメータの3つの候補セット(c-0、c-1、およびc-2)が復号される。
図7の右側のピクチャ部分の各ブロックは、3つの候補セットのうちの1つからそのフィルタ・パラメータを継承する。
図7では、ブロックBlk_0、Blk_1、Blk_4、およびBlk_5が、同一のフィルタ・パラメータすなわち、候補セットc-0のフィルタ・パラメータを有し、ブロックBlk_2およびBlk_3が、同一のフィルタ・パラメータすなわち、候補セットc-1のフィルタ・パラメータを有し、ブロックBlk_6およびBlk_7が、同一のフィルタ・パラメータすなわち、候補セットc-2のフィルタ・パラメータを有する。
【0158】
特定の実施形態では、OFF候補セットと称するフィルタ・パラメータの特定の候補セットが、復号された候補セットのリストに追加される。一例として、OFF候補は、事前定義の位置、たとえば2番目の位置で、復号された候補セットの間に挿入される。OFF候補は、ビットストリームからは復号されない。OFF候補は、ブロックがフィルタリングされないことを示すのに使用される。
【0159】
有利なことに、フィルタ・パラメータの複数の候補セットが、スライスのヘッダから復号される。変形形態では、フィルタ・パラメータの複数の候補セットは、復号順でピクチャ部分の第1のブロック(たとえば、
図7のBlk_0)のレベルで復号される。一例として、
図8では、フィルタ・パラメータの3つの候補セットが、第1のブロックBlk_0の構文要素と共に符号化されている。
【0160】
別の実施形態では、受信器は、前記ビットストリームから、フィルタ・パラメータの複数の候補セットを表すデータを復号する。一例として、復号されるデータnum_sao_cand_minus1は、復号されるフィルタ・パラメータの候補セットの個数から1を引いたものである。num_sao_cand_minus1の値が、ピクチャ部分内、たとえば1スライス内のブロックの個数から1を引いたものより必ず小さいので、構文要素num_sao_cand_minus1を表すビットの個数は、log2(1つのピクチャ部分内のブロックの個数-1)より小さい。
【0161】
SAOフィルタリングに関するHEVCタイプの構文の例が、表1および表2に示されている。表2によれば、num_sao_cand_minus1が復号された後に、SAOパラメータの各候補セットが、sao_cand(idxCand)を呼び出すことによって復号される。OFF候補セットが、復号された候補セットのリストに追加されない場合には、構文は、表3によって示されるように変更される。表4は、本原理によるSAOパラメータのセットの復号を示す。
【0162】
以下のSAOパラメータが復号される:slice_sao_luma_flag、slice_sao_chroma_flag、sao_type_idx_luma、sao_type_idx_chroma、sao_offset_abs[cIdx][idxCand][i]、sao_offset_sign[cIdx][idxCand][i]、sao_band_position[cIdx][idxCand]、sao_eo_class_luma、sao_eo_class_chroma。
【0163】
ステップS230では、受信器が、前記ビットストリームから、フィルタ・パラメータの復号された候補セットのうちの1つを識別するインデックス(merge_idx)を、前記ピクチャの現行ブロックに関して復号する。座標(rx,ry)のブロックのインデックスmerge_idxの復号は、OFF候補セットが復号された候補セットのリストに追加される場合には表5によって示され、OFF候補セットが復号された候補セットのリストに追加されない場合には表6によって示される。
【0164】
図8を参照すると、インデックスは、ブロックごとに復号される(merge_idx)。このインデックスは、フィルタ・パラメータの候補セットのうちの1つを識別する。一実施形態では、すべてのブロックが、マージ・モードである、すなわち、すべてのブロックが、そのフィルタ・パラメータをフィルタ・パラメータの候補セットのうちの1つから継承する。これは、ブロックがマージ・モードであるか否か、すなわち、ブロックが隣接ブロックからそのフィルタ・パラメータを継承するか否かを示すフラグをブロックに関して復号する必要がないので、いくつかのビットを節約することを可能にする。具体的には、SAOパラメータが隣接するCTUの対応するSAOパラメータから導出されることを示すHEVCフラグsao_merge_left_flagおよびsao_merge_up_flagを復号する必要はもうない。
【0165】
特定の実施形態では、フィルタ・パラメータの複数の候補セットは、その最初の使用の順序と同一の順序でビットストリームから復号される。この場合に、所与のブロックのインデックスの最大の可能な値(idx_max)は、ブロック番号に伴って増加する。より具体的には、マージ・インデックスが、以前に復号されたどのブロックによってもまだ使用されていない候補セットに対応する場合に限って、idx_maxが増分される。一例として、blk_0のインデックスが0と等しい、すなわち、blk_0がc_0で定義されたフィルタ・パラメータを使用する場合に、blk_1のインデックスも0と等しい場合には、idx_maxは、blk_2に関して増分されないが、blk_1のインデックスが1と等しい、すなわち、blk_1が、まだ使用されていない候補セットであるc_1で定義されるフィルタ・パラメータを使用する場合には、idx_maxは、blk_2に関して増分される。
【0166】
しかし、merge_idxの値が、以前に復号されたブロックによってまだ使用されていない候補に対応するかどうかの情報が、構文解析ステージで使用不能である場合がある。
【0167】
したがって、変形形態では、idx_maxの値は、リスト内の最初の候補が必ず既に使用された候補(最初のブロックを除く)なので、merge_idxの解析された値が非0である場合に限って増分される。HEV標準規格の9.3.3.2で指定されるTruncated Rice(TR)2値化、cMaxの値はidx_maxである。
【0168】
変形形態では、値idx_maxは、現行ブロックの前に復号されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットの個数の別の増加関数である。
【0169】
ステップS240では、受信器が、前記ビットストリームから前記現行ブロックを復号する。復号されるブロックは、通常、ルマ・ブロックおよびクロマ・ブロックを含む。
【0170】
ブロックの復号は、必ずではないが通常、変換係数のブロックを入手するためのブロックを表すビットストリームの部分のエントロピ復号と、残差のブロックを入手するための変換係数のブロックの逆量子化および逆変換と、復号されたブロックを入手するための残差のブロックへのプレディクタの加算とを含む。場合により、ブロックS230およびS240の順序は、入れ替えられ得る。
【0171】
オプションのステップS250では、ステップS230で復号されたインデックスが候補セットのリストからフィルタ・パラメータのセットを取り出すのに使用される前に、フィルタ・パラメータの候補セットが並べ換えられる。特定の実施形態では、フィルタ・パラメータの候補セットは、ピクチャ部分のブロックが復号されるたびに並べ換えられる。並べ換えは、ブロックがフィルタリングされる前に達成される。
【0172】
第1の実施形態では、フィルタ・パラメータの候補セットは、現行ブロックのすぐ左に配置されたブロックが使用可能である時に、そのようなブロックに使用されるフィルタ・パラメータのセットが、フィルタリング・パラメータの候補セットのリスト内の最初の位置に置かれるように、並べ換えられる。
【0173】
別の実施形態では、フィルタ・パラメータの候補セットは、前のブロックと称する、現行ブロックの前に復号されたブロックのフィルタリングに使用されたフィルタ・パラメータの候補セットが、現行ブロックへのこの前のブロックの空間距離に依存する順序でリストされるように、並べ換えられる。一実施形態では、フィルタ・パラメータの候補セットは、空間的に最も近い隣接するブロックによって既に使用されたパラメータが、フィルタ・パラメータの候補セットのリストの最上部に現れるように並べ換えられる。複数のブロックが同一の候補セットを使用する場合には、現行ブロックに空間的に最も近いブロックだけが、考慮に入れられる。これは、使用された候補セットのマップを作成することによって行われ得る。フィルタリング・パラメータの候補セットのリストの動的な並べ換えの例が、
図14に関連して表10に示されている。候補セットは、現行ブロックが復号されるたびに並べ換えられる。この例では、次のまだ使用されていない候補が、リストの末尾に置かれる。リスト並べ換えのプロセスは、現行ブロックBlk_5の復号に関して
図15に示されている。Blk_5を復号する時に、最後に使用された候補セットは、{c_0,c_1,c_2,c_3}である。c_0は、Blk_0およびBlk_4によって使用され、c_1は、Blk_1によって使用され、c_2は、Blk_2によって使用され、c_3は、Blk_3によって使用された。ブロックBlk_4、Blk_1、Blk_2、Blk_3へのBlk_5のより小さい正方形ユークリッド距離は、それぞれ{1,1,2,5}である。候補セットc_0に関して、Blk_4からBlk_5への空間距離は考慮に入れられるが、Blk_0からBlk_5への距離は考慮に入れられない。というのは、Blk_4が、空間的にBlk_0よりBlk_5に近いからである。したがって、Blk_5を復号する時に、最も近い使用された候補セットは、c_0(左)、c_1(上)、c_2(上-右)、およびc_3(上-右-右)である。候補c_4は、まだ使用されておらず、したがって、リストの末尾に置かれる。
【表10】
表10
【0174】
変形形態では、現行ブロックの前に復号されたブロックのフィルタリングに使用されていないフィルタ・パラメータの少なくとも1つの候補セット、たとえば次に使用される最初の候補が、現行ブロックの前に復号された前記ブロックのフィルタリングに使用されたフィルタ・パラメータの最後の候補セットの位置の前である位置pos_first_newに挿入される。pos_first_newの値は、復号器側で先験的に既知である。たとえば、pos_first_newは、2をセットされ得、あるいは、ビットストリーム内で符号化され得る。この変形形態は、表11によって示される。この例では、次に使用される、まだ使用されていない候補は、位置2(表11では斜体で強調表示)に置かれる。Blk_5に関して、候補c_4は、リスト内の位置2に置かれるが、表10では、リストの末尾に置かれた。前に復号されたブロックのフィルタリングに使用された候補セットの個数が、厳密にpos_first_newより少ない場合には、前に復号されたブロックのフィルタリングに使用されていない最初の候補セットの位置は、pos_first_newの前に挿入され得る。前に復号されたブロックは、現行ブロックの前に復号されたブロックである。
【表11】
表11
【0175】
表10および11は、OFF候補セットが復号された候補セットのリストに追加されない場合を示す。OFF候補セットが復号された候補セットのリストに追加される場合には、merge_idxは、最初のブロックについて推論されるのではなく復号される。この後者の場合に、idx_maxの値は、表10および11で1つだけ増分される。
【0176】
別の実施形態では、pos_first_newは、ピクチャ部分内の現行ブロックの後で復号される残っているブロックの個数および前に復号されたブロックのフィルタリングにまだ使用されていない候補セットの個数の関数である。たとえば、位置pos_first_newは、新しい候補セットの使用の発生の確率から導出される。たとえば、位置pos_first_newは、PまたはP+1の整数部分と等しいものとすることができ、ここで、P=(復号すべき残っているブロックの個数)/(まだ使用されていない候補セットの個数)である。
【0177】
別の実施形態では、OFF候補と称するフィルタ・パラメータの特定の候補セットが、候補セットのリストに追加されるが、復号されない。ブロックのインデックスがこの特定の候補を識別する場合には、対応するブロックは、フィルタリングされない。
【0178】
一例では、OFF候補の位置pos_offは、リストの先頭に近く、たとえば、リスト内の最初の位置(pos_off=0)または2番目/3番目の位置(pos_off=1またはpos_off=2)である。特定の実施形態では、リスト内のOFF候補の位置pos_offは、リストが並べ換えられる場合に変更されない。変形形態では、その位置は、固定されない、すなわち、制限を伴って他の候補セットと同一の並べ換えルールに従う。制限は、リスト内のOFF候補の位置が、固定された位置、たとえば位置2を超えることができないことである。
【0179】
ステップS260で、受信器は、復号されたインデックスによって識別されるフィルタ・パラメータの候補セットを用いて、復号された現行ブロックをフィルタリングする。インデックスmerge_idxがOFF候補を識別する場合には、ブロックは、ステップS260でフィルタリングされない。特定の実施形態では、フィルタは、SAOフィルタであり、
図3を参照して開示されたフィルタリング・ステップが適用される。
【0180】
この方法は、ピクチャ部分内のすべてのブロックを復号し、フィルタリングするために、ステップS230からS260までをループすることができる。特定の非限定的な実施形態では、ピクチャ部分のすべてのブロックが、これらのブロックのフィルタリングを開始する前に復号され得る。変形形態では、ピクチャ部分のいくつかのブロックのフィルタリングは、ピクチャ部分のすべてのブロックが復号される前に開始することができる。
【0181】
この方法は、ステップS280で終了する。
【0182】
本原理による符号化および復号の方法および装置は、SAOフィルタリングに限定されない。この方法は、局所的に、たとえばブロック・レベルで適用され得るフィルタ・パラメータによって定義されるすべてのフィルタに適用され得る。
【0183】
図13Aの実施形態では、フィルタ・パラメータの候補セットの単一のリスト内でルマ・フィルタ・パラメータおよびクロマ・フィルタ・パラメータの候補セットを識別する単一のインデックスが復号される。
図13Aの方法の変形形態が、
図13Bに示されている。この変形形態では、ルマ成分およびクロマ成分が、別々に処理される。この動作のモードは、デュアル・モードと呼ばれる。デュアル・モードでは、第1のインデックスおよび第2のインデックスが復号される。第1のインデックスは、フィルタ・ルマ・パラメータの候補セットの第1のリスト内のルマ・フィルタ・パラメータの候補セットを識別し、第2のインデックスは、フィルタ・クロマ・パラメータの候補セットの第2のリスト内のクロマ・フィルタ・パラメータの候補セットを識別する。
【0184】
【0185】
この方法は、ステップS200で開始する。ステップS210では、復号器200などの受信器2000が、ビットストリームにアクセスする。
【0186】
ステップS222では、受信器が、ビットストリームからフィルタ・ルマ・パラメータの第1の複数の候補セットを復号する。
【0187】
ステップS224では、受信器が、ビットストリームからフィルタ・クロマ・パラメータの第2の複数の候補セットを復号する。
【0188】
ステップS232では、受信器が、前記ピクチャの現行ブロックに関して、前記ビットストリームからフィルタ・ルマ・パラメータの復号された候補セットのうちの1つを識別する第1のインデックス(merge_luma_idx)を復号する。
【0189】
ステップS234では、受信器が、現行ブロックに関して、前記ビットストリームからフィルタ・クロマ・パラメータの復号された候補セットのうちの1つを識別する第2のインデックス(merge_chroma_idx)を復号する。
【0190】
ステップS240では、受信器が、前記ビットストリームから前記現行ブロックを復号する。
【0191】
オプションのステップS252では、候補セットのリストからフィルタ・ルマ・パラメータのセットを識別するために第1のインデックスを使用する前に、フィルタ・ルマ・パラメータの候補セットが並べ換えられる。
【0192】
オプションのステップS254では、候補セットのリストからフィルタ・クロマ・パラメータのセットを識別するために第2のインデックスを使用する前に、フィルタ・クロマ・パラメータの候補セットが並べ換えられる。
【0193】
候補セットのリストの並べ換えは、ルマ成分およびクロマ成分に関して別々に行われ得る。変形形態では、並べ換えは共通である。たとえば、並べ換えは、まず、ルマ成分に関する候補セットのリストに関して行われ、クロマ成分(1つまたは複数)に関する候補セットのリストは、同一の形で並べ換えられる。
【0194】
ステップS265では、受信器が、それぞれ復号された第1のインデックスおよび第2のインデックスによって識別されるフィルタ・ルマ・パラメータの候補セットおよびフィルタ・クロマ・パラメータの候補セットを用いて、復号された現行ブロックをフィルタリングする。より正確には、復号されたルマ・ブロックが、第1のインデックスによって識別されるフィルタ・ルマ・パラメータの候補セットを用いてフィルタリングされ、復号されたクロマ・ブロック(1つまたは複数)が、第2のインデックスによって識別されるフィルタ・クロマ・パラメータの候補セットを用いてフィルタリングされる。
【0195】
図13Cによって示されるステップS238の特定の実施形態では、デュアル・モードが現行シーケンス(たとえば、SPS(シーケンス・パラメータ・セットの英語頭字語)から復号される)に関して、現行ピクチャ(たとえば、PPS(ピクチャ・パラメータ・セットの英語頭字語)から復号される)に関して、または現行スライス(たとえば、スライス・ヘッダから復号されまたはスライスの最初のブロック内で符号化される)に関して使用可能にされるか否かを示すフラグが復号される。そのようなフラグの例が、表9で言及されるslice_dual_mergeである。
【0196】
別の変形形態では、デュアル・モードが現行シーケンス、現行ピクチャ、現行スライスに関して使用可能にされるか否かを示すフラグは復号されず、デュアル・モードは、デフォルトですべてのスライスに関して使用可能にされる。
【0197】
変形形態では、デュアル・モードが、現行シーケンス、現行ピクチャ、または現行スライスに関して使用可能にされる場合に、デュアル・モードが現行ブロックに関して使用可能にされるかどうかを示す別のフラグ(表9のdual_mode_block_enabled)が、ステップS231で復号される(たとえば、インデックスの前に復号される)。
【0198】
デュアル・モードが現行ブロックに関して使用可能にされる(dual_mode_block_enabledが真または1と等しい)場合には、2つのインデックス(1つはルマ、1つはクロマに関する)が、現行ブロックに関してステップS232およびS234で復号される。そうではない、すなわち、dual_mode_block_enabledが偽または0と等しい場合には、ステップS235で、第1の複数の候補セット内の1つの候補セットおよび第2の複数の候補セット内の1つの候補セットを識別する単一のインデックスが現行ブロックに関して復号される。
【0199】
dual_mode_block_enabledが真であり、merge_idx_chromaに対応する復号された値がmerge_idx_luma以上である場合には、merge_idx_chromaは、1つ増分された復号された値と等しくなるようにセットされる(表9の注1参照)。
【0200】
この方法は、ピクチャ部分のすべてのブロックを復号し、フィルタリングするために、ステップS232からS265までにわたってループすることができる。
【0201】
この方法は、ステップS280で終了する。
【0202】
特定の実施形態では、フィルタ・ブロック、サイズ、たとえばSAOブロック・サイズは、CTUサイズとは異なる。この場合に、フィルタ・パラメータは、CTUサイズとは異なる、再構成されたピクチャの領域に適用される。フィルタリング・ステージでは、ピクチャまたはスライスは、それぞれがフィルタ・ブロックに対応する複数の領域に副分割される。フィルタ・パラメータは、フィルタ・ブロックごとに判定され、このフィルタ・ブロック上では一定である。フィルタ・ブロック・サイズは、フィルタ・パラメータが変化することのできない最小の領域のサイズである。たとえば、SAOフィルタリングが、再構成されたピクチャ内の1つの領域のサンプルを複数のカテゴリに分類し、各サンプルに、そのカテゴリに依存する特定のオフセットを加算する場合に、SAOブロック・サイズは、この領域のサイズになる。H.265では、SAOブロック・サイズは、1つのCTBのサイズと等しい。
【0203】
フィルタ・ブロック・サイズは、スライス・ヘッダ内で、ピクチャ・パラメータ・セット内で、またはシーケンス・パラメータ・セット内で指定され得、インデックスは、現行スライスに関して使用すべきフィルタ・ブロック・サイズおよび形状を示す。正方形または長方形のフィルタ・ブロック・サイズの例が、
図16に示されている。この例では、水平および垂直のフィルタ・ブロック・サイズは、右シフト(2のべきによる除算)または左シフト(2のべきによる乗算)を用いてCTUサイズから導出される。
図16では、フィルタ・ブロックは、灰色で表現される。
【0204】
一実施形態では、フィルタ・ブロック・サイズがCTUサイズと等しいのか、より小さい(たとえば、水平と垂直との両方で2つ減らされる)のかを示すために、たとえばスライス・ヘッダ内で、フラグが符号化される(それぞれ復号される)。
【0205】
変形形態では、フィルタ・ブロック・サイズが正方形ではない時に、空間距離の導出は、垂直および水平の、異なるフィルタ・ブロック・サイズを考慮に入れることができる。この場合に、空間距離は、サンプルの個数単位で表現された距離に比例する。別の変形形態では、空間距離の導出は、実際の垂直および水平のフィルタ・ブロック・サイズではなく、水平および垂直のフィルタ・ブロック位置だけを考慮する。この場合に、空間距離は、
図17に示されているように、フィルタ・ブロック・マップ内で表される距離に比例する。フィルタ・ブロック・マップは、フィルタ領域(またはSAOフィルタ領域)ごとに、フィルタ・パラメータの候補セットのそれぞれを識別するインデックスの値を用いて構築される。フィルタ・ブロック・マップX(またはY軸)座標は、SAOフィルタ領域サイズ/形状とは独立に、水平(または垂直)方向のフィルタ領域の個数に対応する。
【0206】
本明細書で説明される実施態様は、たとえば、方法またはプロセス、装置、ソフトウェア・プログラム、データ・ストリーム、または信号で実施され得る。単一の形態の実施態様の文脈でのみ議論される(たとえば、方法またはデバイスとしてのみ議論される)場合であっても、議論される特徴の実施態様は、他の形態(たとえば、プログラム)で実施され得る。装置は、たとえば、適当なハードウェア、ソフトウェア、およびハードウェアで実施され得る。方法は、たとえば、たとえばコンピュータ、マイクロプロセッサ、集積回路、またはプログラム可能論理デバイスを含む処理デバイス全般を指す、たとえばプロセッサなどの装置で実施され得る。プロセッサは、たとえば、コンピュータ、セル電話機、ポータブル/携帯情報端末(「PDA」)、およびエンドユーザの間での情報の通信を容易にする他のデバイスなどの通信デバイスをも含む。
【0207】
本明細書で説明される様々なプロセスおよび特徴の実施態様は、様々な異なる機器またはアプリケーション、特にたとえば機器またはアプリケーションで実施され得る。そのような機器の例は、符号器、復号器、復号器からの出力を処理するポストプロセッサ、符号器に入力を供給するプリプロセッサ、ビデオ・コーダ、ビデオ復号器、ビデオ、コーデック、ウェブ・サーバ、セットトップ・ボックス、ラップトップ、パーソナル・コンピュータ、セル電話機、PDA、および他の通信デバイスを含む。明瞭であるように、機器は、モバイルとすることができ、移動車両内に設置されることすら可能である。
【0208】
さらに、方法は、プロセッサによって実行される命令によって実施され得、そのような命令(および/または実施態様によって作られるデータ値)は、たとえば集積回路、ソフトウェア担体、またはたとえばハード・ディスク、コンパクト・ディスケット(「CD」)、光ディスク(たとえば、しばしばデジタル多用途ディスクまたはデジタル・ビデオ・ディスクと呼ばれるDVDなど)、ランダム・アクセス・メモリ(「RAM」)、または読取専用メモリ(「ROM」)などの他のストレージ・デバイスなどのプロセッサ可読媒体に記憶され得る。命令は、プロセッサ可読媒体上で有形に実施されるアプリケーション・プログラムを形成することができる。命令は、たとえば、ハードウェア内、ファームウェア内、ソフトウェア内、またはその組合せとすることができる。命令は、たとえば、オペレーティング・システム、別々のアプリケーション、またはこの2つの組合せに見出され得る。したがって、プロセッサは、たとえば、プロセスを実行するように構成されたデバイスと、プロセスを実行する命令を有するプロセッサ可読媒体(ストレージ・デバイスなど)を含むデバイスとの両方として特徴を表され得る。さらに、プロセッサ可読媒体は、命令に加えてまたはその代わりに、実施態様によって作られたデータ値を記憶することができる。
【0209】
当業者に明白であるように、実施態様は、たとえば記憶されまたは送信され得る情報を搬送するようにフォーマットされた様々な信号を作ることができる。情報は、たとえば、方法を実行する命令または説明される実施態様によって作られたデータを含むことができる。たとえば、信号は、説明される実施形態の構文を書き込むか読み取るルールをデータとして搬送し、または説明される実施形態によって書き込まれた実際の構文値をデータとして搬送するようにフォーマットされ得る。そのような信号は、たとえば電磁波(たとえば、スペクトルのラジオ周波数部分を使用する)またはベースバンド信号としてフォーマットされ得る。フォーマッティングは、たとえば、データ・ストリームを符号化することと、符号化されたデータ・ストリームを用いて搬送波を変調することとを含むことができる。信号が搬送する情報は、たとえば、アナログ情報またはデジタル情報とすることができる。信号は、既知のように、様々な異なる有線リンクまたは無線リンクを介して送信され得る。信号は、プロセッサ可読媒体上に記憶され得る。
【0210】
複数の実施態様を説明した。それでも、様々な変更を行えることを理解されたい。たとえば、異なる実施態様の要素を組み合わせ、補足し、変更し、または除去して、他の実施態様を作ることができる。さらに、当業者は、他の構造およびプロセスが、開示された構造およびプロセスと置換され得、結果の実施態様が、開示された実施態様と少なくとも実質的に同一の結果(1つまたは複数)を達成するために、少なくとも実質的に同一の形(1つまたは複数)で、少なくとも実質的に同一の機能(1つまたは複数)を実行することを理解しよう。したがって、上記および他の実施態様は、本願によって企図されている。
【手続補正書】
【提出日】2022-12-06
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
-フィルタ・パラメータの複数の候補セットを含む情報セットを復号することと、
-ピクチャ部分の現行ブロックに関して、少なくとも1つのインデックスを取得することであって、取得された各インデックスは、フィルタ・パラメータの前記複数の候補セットにおけるフィルタ・パラメータの前記候補セットのうちの1つを識別する、取得することと、
-前記現行ブロックを復号することと、
-前記少なくとも1つのインデックスによって識別されるフィルタ・パラメータの少なくとも1つの候補セットを用いて前記復号された現行ブロックをフィルタリングすることと
を含む方法。
【請求項2】
前記情報セットは、復号順で最初に復号される前記ピクチャ部分のブロックに関連する、請求項1に記載の方法。
【請求項3】
フィルタ・パラメータの候補セットの数を表すデータを復号することを含む、請求項1または2のいずれか1項に記載の方法。
【請求項4】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で復号される、請求項1または2のいずれか1項に記載の方法。
【請求項5】
前記現行ブロックをフィルタリングする前に、フィルタ・パラメータの前記候補セットを並べ換えることをさらに含む、請求項1または2のいずれか1項に記載の方法。
【請求項6】
前記現行ブロックのすぐ左に配置されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記セットが最初にリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5に記載の方法。
【請求項7】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記候補セットが、前記現行ブロックの前に復号されたブロックと前記現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5に記載の方法。
【請求項8】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、前記現行ブロックの前に復号された前記ブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5に記載の方法。
【請求項9】
前記現行ブロックの前に復号されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、前記現行ブロックの後に復号する前記ピクチャ部分のブロックの個数と前記現行ブロックの前に復号されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項5に記載の方法。
【請求項10】
フィルタ・パラメータの前記複数の候補セット内に、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入することをさらに含む、請求項1または2のいずれか1項に記載の方法。
【請求項11】
ブロックがフィルタリングされないことを指定するフィルタ・パラメータの前記候補セットは、事前定義の位置のフィルタ・パラメータの前記候補セットの間に挿入される、請求項10に記載の方法。
【請求項12】
前記情報セットは、前記現行ブロックが属するスライスのスライス・ヘッダから復号される、請求項1に記載の方法。
【請求項13】
-現行ブロックの再構成されたバージョンに対応する再構成されたブロックを判定することと、
-フィルタ・パラメータの複数の候補セットを取得し、前記現行ブロックに関する少なくとも1つのインデックスを判定することであって、取得された各インデックスは、フィルタ・パラメータの前記複数の候補におけるフィルタ・パラメータの前記候補セットのうちの1つを識別する、取得することと、
-前記少なくとも1つのインデックスによって識別されるフィルタ・パラメータの前記複数の候補セットのうちのフィルタ・パラメータの少なくとも1つの候補セットを用いて、前記再構成されたブロックをフィルタリングすることと、
-フィルタ・パラメータの前記複数の候補セットと、前記現行ブロックを表す第1の情報と、前記少なくとも1つのインデックスを表す第2の情報とを含む情報セットを符号化することと
を含む方法。
【請求項14】
前記情報セットは、前記現行ブロックが属するスライスのスライス・ヘッダ内で符号化される、請求項13に記載の方法。
【請求項15】
前記情報セットは、符号化順で最初に符号化する前記ピクチャ部分のブロックに関連する、請求項13に記載の方法。
【請求項16】
フィルタ・パラメータの候補セットの数を表すデータを符号化することを含む、請求項13から15のいずれか1項に記載の方法。
【請求項17】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で符号化される、請求項13から15のいずれか1項に記載の方法。
【請求項18】
前記現行ブロックをコーディングする前に、フィルタ・パラメータの前記候補セットを並べ換えることをさらに含む、請求項13から15のいずれか1項に記載の方法。
【請求項19】
-フィルタ・パラメータの複数の候補セットを含む情報セットを復号し、
-ピクチャ部分の現行ブロックに関して、少なくとも1つのインデックスを取得し、取得された各インデックスは、フィルタ・パラメータの前記複数の候補セットにおけるフィルタ・パラメータの前記候補セットのうちの1つを識別し、
-前記現行ブロックを復号し、
-前記少なくとも1つのインデックスによって識別されるフィルタ・パラメータの少なくとも1つの候補セットを用いて前記復号された現行ブロックをフィルタリングするように構成されたプロセッサ
を含む復号デバイス。
【請求項20】
前記情報セットは、復号順で最初に復号される前記ピクチャ部分のブロックに関連する、請求項19に記載の復号デバイス。
【請求項21】
前記プロセッサは、フィルタ・パラメータの候補セットの数を表すデータを復号するようにさらに構成された、請求項19または20のいずれか1項に記載の復号デバイス。
【請求項22】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で復号される、請求項19または20のいずれか1項に記載の復号デバイス。
【請求項23】
前記プロセッサは、前記現行ブロックをフィルタリングする前に、フィルタ・パラメータの前記候補セットを並べ換えるようにさらに構成された、請求項19または20のいずれか1項に記載の復号デバイス。
【請求項24】
前記現行ブロックのすぐ左に配置されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記セットが最初にリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項23に記載の復号デバイス。
【請求項25】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されるフィルタ・パラメータの前記候補セットが、前記現行ブロックの前に復号されたブロックと前記現行ブロックとの間の空間距離に依存する順序でリストされるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項23に記載の復号デバイス。
【請求項26】
前記現行ブロックの前に復号されたブロックをフィルタリングするのに使用されないフィルタ・パラメータの少なくとも1つの候補セットが、前記現行ブロックの前に復号された前記ブロックをフィルタリングするのに使用されるフィルタ・パラメータの最後の候補セットの前に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項23に記載の復号デバイス。
【請求項27】
前記現行ブロックの前に復号されたブロックによって使用されず、次に使用される最初の候補であるフィルタ・パラメータの候補セットが、前記現行ブロックの後に復号する前記ピクチャ部分のブロックの個数と前記現行ブロックの前に復号されるブロックによってまだ使用されていないフィルタ・パラメータの候補セットの個数との関数である位置に挿入されるように、フィルタ・パラメータの前記候補セットは並べ換えられる、請求項23に記載の復号デバイス。
【請求項28】
前記プロセッサは、フィルタ・パラメータの前記複数の候補セット内に、ブロックがフィルタリングされないことを指定するフィルタ・パラメータの候補セットを挿入するようにさらに構成された、請求項19または20のいずれか1項に記載の復号デバイス。
【請求項29】
ブロックがフィルタリングされないことを指定するフィルタ・パラメータの前記候補セットは、事前定義の位置のフィルタ・パラメータの前記候補セットの間に挿入される、請求項28に記載の復号デバイス。
【請求項30】
前記プロセッサは、前記現行ブロックが属するスライスのスライス・ヘッダから前記構文構造を復号するように構成された、請求項19に記載の復号デバイス。
【請求項31】
-現行ブロックの再構成されたバージョンに対応する再構成されたブロックを判定し、
-フィルタ・パラメータの複数の候補セットを取得し、前記現行ブロックに関する少なくとも1つのインデックスを判定し、取得された各インデックスは、フィルタ・パラメータの前記複数の候補セットにおけるフィルタ・パラメータの前記候補セットのうちの1つを識別し、
-前記少なくとも1つのインデックスによって識別されるフィルタ・パラメータの前記複数の候補セットのうちのフィルタ・パラメータの少なくとも1つの候補セットを用いて、前記再構成されたブロックをフィルタリングし、
-フィルタ・パラメータの前記複数の候補セットと、前記現行ブロックを表す第1の情報と、前記少なくとも1つのインデックスを表す第2の情報とを含む情報セットを符号化するように構成されたプロセッサ
を含む符号化デバイス。
【請求項32】
前記構文構造は、前記現行ブロックが属するスライスのスライス・ヘッダ内で符号化される、請求項31に記載の符号化デバイス。
【請求項33】
前記構文構造は、符号化順で最初に符号化する前記ピクチャ部分のブロックに関連する、請求項31に記載の符号化デバイス。
【請求項34】
前記プロセッサは、フィルタ・パラメータの候補セットの数を表すデータを符号化するように構成された、請求項31から33のいずれか1項に記載の符号化デバイス。
【請求項35】
フィルタ・パラメータの前記複数の候補セットの前記候補セットは、その使用の順序で符号化される、請求項31から33のいずれか1項に記載の符号化デバイス。
【請求項36】
前記プロセッサは、前記現行ブロックをコーディングする前に、フィルタ・パラメータの前記候補セットを並び換えるように構成された、請求項31から33のいずれか1項に記載の符号化デバイス。
【請求項37】
請求項1に記載の方法を実施するためのプログラムコード命令を記憶する非一時的情報記憶媒体。
【請求項38】
請求項13に記載の方法を実施するためのプログラムコード命令を記憶する非一時的情報記憶媒体。
【外国語明細書】