(57)【特許請求の範囲】
【請求項１】
予測を使用して画像のブロックを再構築する方法であって、
再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックの参照サンプルを決定するステップと、
予測に先立ってフィルタが適用されるべきである前記参照サンプルのサブセットを選択するステップ、及び前記サブセットの選択された参照サンプルの事前予測フィルタリングを実行するステップと、
前記サブセットの前記フィルタリングされた参照サンプルを含む前記参照サンプルに基づいて予測によって前記ブロックを再構築するステップと
を含み、
前記サブセットの前記選択と、前記サブセットの前記参照サンプルの前記事前予測フィルタリングとが、予測による前記ブロックの再構築に先立って繰り返され、
最初の繰り返しは元の参照サンプルに対して実行されてフィルタリングされた参照サンプルを得、最後の繰り返しは、１又は複数の前の繰り返しにおいて得られた前記フィルタリングされた参照サンプルに対して実行される、方法。
【請求項２】
前記サブセットの前記参照サンプルをフィルタリングするためのフィルタパラメータが、前記サブセットの選択と事前予測フィルタリングとの前記繰り返しにおいて異なる、請求項１に記載の方法。
【請求項３】
前記異なる繰り返しにおいて選択される前記サブセットが、別個であるか又は重複している、請求項１又は２に記載の方法。
【請求項４】
前記繰り返しのうちの１つにおいて、参照サンプルの前記選択されたサブセットが、すべての参照サンプルを含む、請求項１から３の一項に記載の方法。
【請求項５】
３つの繰り返しがあり、最初の２つの繰り返しが元の参照サンプルに実行されて、フィルタリングされた参照サンプルが得られ、一方、第３の繰り返しが、前記最初の２つの繰り返しにおいて得られた前記フィルタリングされた参照サンプルに実行される、請求項１から４の一項に記載の方法。
【請求項６】
第１の繰り返しにおいて、前記それぞれのサブセットの参照サンプルは、再構築されるべき前記ブロックのサイズ及び／又は再構築されるべき前記ブロックを符号化するために利用された予測モードに基づいてフィルタリングされ、
第２の繰り返しにおいて、前記それぞれのサブセットの参照サンプルは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、
第３の繰り返しにおいて、デブロッキングフィルタが、前記第１又は第２の繰り返しにおいてフィルタリングされた前記参照サンプルに適用され、前記フィルタリングされた参照サンプルが、復号されたブロックの間の境界での参照サンプルである、請求項１から５の一項に記載の方法。
【請求項７】
復号されるべき前記ブロックに関する復号された残差を前記再構築されたブロックに付加して、復号されたブロックを得るステップと、
インループデブロッキングフィルタを前記復号されたブロックに適用するステップと
をさらに含む、請求項６に記載の方法。
【請求項８】
前記参照サンプルが、２つの１次元アレイを形成しており、一方のアレイが、復号されるべき前記ブロックの左又は右の１つ又は複数の復号された隣接するブロックのサンプルの列を含み、他方のアレイが、復号されるべき前記ブロックの上部又は底部の１つ又は複数の復号された隣接するブロックのサンプルの行を含む、請求項１から７の一項に記載の方法。
【請求項９】
事前予測フィルタリングが、前記参照サンプルの少なくとも１つのサブセットに平滑フィルタを適用するステップを含む、請求項１から８の一項に記載の方法。
【請求項１０】
インター予測が、画素の前記ブロックを再構築するために使用される、請求項１から９の一項に記載の方法。
【請求項１１】
前記参照サンプルが、前記ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定し、
事前予測フィルタリングをかけられる参照サンプルの前記サブセットのうちの１つは、残差が前記符号化されたビデオストリームにおいて符号化された、復号されたブロックに属する参照サンプルを含む、請求項６又は７に記載の方法。
【請求項１２】
前記参照サンプルが、前記ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定し、
インター予測に先立ってフィルタが適用されるべきである参照サンプルの前記サブセットを決定するステップが、前記２次元参照区域の前記参照サンプルにエッジ検出を実行した結果に基づいて参照サンプルの多数の別個のサブセットを決定するステップを含み、
事前予測フィルタリングを実行するステップが、異なるフィルタパラメータを使用して前記サブセットの前記参照サンプルをフィルタリングするステップを含む、請求項１０に記載の方法。
【請求項１３】
複数参照インター予測が、前記ブロックを再構築するために使用され、前記参照サンプルが、前記ブロックを再構築するときにインター予測のために使用されるべき異なる参照フレームから２次元参照区域のスタックを画定し、
予測に先立ってフィルタが適用されるべきである参照サンプルの前記サブセットを決定する前記ステップが、前記参照サンプルにエッジ検出を実行した結果に基づいて２次元参照区域の前記スタック内に参照サンプルの多数の別個のサブセットを決定するステップを含み、
事前予測フィルタリングを実行するステップが、異なるフィルタパラメータを使用して前記サブセットの前記参照サンプルをフィルタリングするステップを含み、
前記ブロックを再構築するステップが、フィルタリングされた参照サンプルの加重和を前記２次元参照区域の前記スタックから計算することによって前記ブロックを予測するステップを含む、請求項１０に記載の方法。
【請求項１４】
予測を使用して画像のブロックを再構築する装置であって、前記装置が、
再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックを記憶するための参照サンプルバッファと、
予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットを選択するように構成された処理ユニットと、
前記サブセットの前記選択された参照サンプルの事前予測フィルタリングを実行するように適合されたフィルタユニットと、
前記サブセットの前記フィルタリングされた参照サンプルを含む前記参照サンプルに基づいて予測によって前記ブロックを再構築するように構成された予測ユニットと
を備え、
前記処理ユニット及び前記フィルタユニットが、予測による前記ブロックの再構築に先立って、前記サブセットの選択と、前記サブセットの前記参照サンプルの前記事前予測フィルタリングとを繰り返すように構成され、
最初の繰り返しは元の参照サンプルに対して実行されてフィルタリングされた参照サンプルを得、最後の繰り返しは、１又は複数の前の繰り返しにおいて得られた前記フィルタリングされた参照サンプルに対して実行される、装置。
【請求項１５】
処理ユニットによって実行されるとき、処理ユニットに、請求項１から１３の一項に記載の方法を実行するようにさせる命令を記憶するコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測を使用して画像のブロックを再構築する方法と、ハードウェア及び／又はソフトウェアでのその実装に関する。より詳細には、本発明は、再構築されるべきブロックの予測サンプルへの雑音の影響を低減するために事前予測フィルタリング技法を使用する改善された予測技法、例えば、イントラ又はインター予測を使用するブロック予測に関する。本明細書で示唆する予測技法は、例えば、符号化装置又は復号装置で使用することができる。
【背景技術】
【０００２】
不可逆データ圧縮は、特に、通信、放送、エンターテインメント、及びセキュリティに非常に多くの用途を有する。ビデオ圧縮は、高品質及び高解像度のピクチャを既存の通信チャネルによって送信するのに大きい圧縮比が必要とされるので、難易度が高いタスクである。このタスクは、ワイヤレス及びモバイル通信、又はメディアの実時間符号化との関連でさらに一層難易度が高くなる。
【０００３】
最近採用されたＩＴＵ−Ｔ  Ｈ．２６５／ＨＥＶＣ標準（ＩＳＯ／ＩＥＣ  ２３００８−２：２０１３、「Ｉｎｆｏｒｍａｔｉｏｎ  ｔｅｃｈｎｏｌｏｇｙ  −  Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｃｏｄｉｎｇ  ａｎｄ  ｍｅｄｉａ  ｄｅｌｉｖｅｒｙ  ｉｎ  ｈｅｔｅｒｏｇｅｎｅｏｕｓ  ｅｎｖｉｒｏｎｍｅｎｔｓ  −  Ｐａｒｔ  ２：Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｖｉｄｅｏ  ｃｏｄｉｎｇ」、２０１３年  １１月）  は、コーディング効率と計算の複雑さとの間の妥当なトレードオフを提供する１組の最先端技術のビデオコーディングツールを公表している。ＩＴＵ−Ｔ  Ｈ．２６５／ＨＥＶＣ標準の概要が、Ｇａｒｙ  Ｊ．Ｓｕｌｌｉｖａｎ、「Ｏｖｅｒｖｉｅｗ  ｏｆ  ｔｈｅ  Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  （ＨＥＶＣ）  Ｓｔａｎｄａｒｄ」、ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｖｉｄｅｏ  Ｔｅｃｈｎｏｌｏｇｙ、２２巻、１２号、２０１２年１２月による論文に与えられており、その全内容が参照により明細書に組み込まれる。
【０００４】
ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣビデオコーディング標準と同様に、ＨＥＶＣ／Ｈ．２６５ビデオコーディング標準は、ソースピクチャのブロック、例えばコーディング単位（ＣＵ）への分割を提供している。ＣＵの各々は、より小さいＣＵ又は予測単位（ＰＵ）のいずれかにさらに分割され得る。ＰＵは、ＰＵの画素に適用される処理のタイプに従ってイントラ又はインター予測され得る。インター予測の場合には、ＰＵは、ＰＵに指定された動きベクトルを使用する動き補償によって処理される画素の区域を示す。イントラ予測に関して、ＰＵは、１組の変換単位（ＴＵ）に対する予測モードを指示する。ＴＵは、異なるサイズ（例えば、４×４、８×８、１６×１６、及び３２×３２画素）を有することができ、異なる方法で処理することができる。ＴＵに関して、変換コーディングが実行されている、すなわち、予測誤差が、離散コサイン変換（ＤＣＴ）により変換され、量子化されている。結果として生じる量子化変換係数は、ＣＧにグループ化され、各ＣＧは、１６個の量子化変換係数を有する。
【０００５】
上記のように、ピクチャのブロックを符号化するためのこれらの標準又は同様の専用コーデックのコアツールは、インター及びイントラ予測、スペクトル変換（例えば、離散コサイン変換又はその整数近似）、並びに量子化である。インター及びイントラ予測ツールを使用して、所与のブロックのための予測信号を生成する。符号器サイドにおいて、ソースブロックとその予測との間の差、いわゆる残差信号がスペクトルに変換され、すなわち、ソースブロック画素が周波数ドメインにおいて変換係数によって示される。さらに、係数は量子化される。非ゼロ及びゼロ量子化変換係数は、しばしば、それぞれ、有意係数及び非有意係数と呼ばれる。量子化変換係数及びサイド情報（例えば、イントラ符号化でのイントラ予測モード及びインター符号化での動きベクトル）を含むすべての構文要素が、２値化されるか又はエントロピ符号化される。圧縮化Ｈ．２６５／ＨＥＶＣビットストリームにおけるエントロピ符号化係数の一部は、８０％を超えることがある。
【０００６】
量子化変換係数を符号化する段階は以下の通りである。
−  最後の有意係数、すなわち、最後の非ゼロ量子化変換係数の位置の符号化。
−  すべての非ゼロ係数の位置を回復するために使用される有意性マップの符号化。
−  有意係数のサイン符号化。
−  有意係数のマグニチュード符号化。
これらの段階は、いわゆる係数群（ＣＧ）に分割されている量子化変換係数との関連で実行される。各ＣＧは、一般に４×４係数からなるサブセットである。
【０００７】
上記のように、最先端技術のビデオコーディング標準は、ソースピクチャ（画像）のブロックへの区画化に基づく。これらのブロックの処理は、サイズと、空間位置と、符号器によって指示されたコーディングモードとに依存する。コーディングモードは、予測のタイプに従って２つの群、すなわち、イントラ予測モード及びインター予測モードにクラス分けすることができる。イントラ予測は、同じ画像の画素を使用して、参照サンプルを生成し、それに基づいて、再構築されているブロックの画素のための予測値が予測される。イントラ予測は、空間予測と呼ばれることもある。インター予測モードは、時間予測のために設計され、前のピクチャ及び／又は次のピクチャの参照サンプルを使用して現在の画像のブロックの画素を予測する。
【０００８】
異なるタイプの冗長性に起因して、イントラ及びインターコーディングのための予測プロセスは異なる。イントラ予測は、一般に、参照サンプルの１次元バッファを構築する。インター予測は、２次元参照画素マトリクスのサブ画素補間を使用する。
【０００９】
しかしながら、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣの標準化の間、動き予測の第３の技法、すなわち、動き補償時間フィルタリング（ＭＣＴＦ）も考慮された。ＭＣＴＦは、画素のブロックを積み重ねることによって構築される画素の３次元アレイを処理する。これらのブロックの各々はそれ自体のピクチャから抽出され、これらのブロックの積重ねは、ビデオシーケンスのピクチャに指定されたものと同じ順序で実行される。ＭＣＴＦの出力は、２組のブロック、すなわち、高域通過ブロック（残差）及び低域通過ブロックである。これらのブロックをさらに処理して、予測及び残差ブロックを作り出す。
【００１０】
ＭＣＴＦの概要が、Ｊ．−Ｒ．Ｏｈｍ、「Ｃｏｍｐｌｅｘｉｔｙ  ａｎｄ  ｄｅｌａｙ  ａｎａｌｙｓｉｓ  ｏｆ  ＭＣＴＦ  ｉｎｔｅｒｆＲａｍｅ  ｗａｖｅｌｅｔ  ｓｔｒｕｃｔｕｒｅｓ」、ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１、Ｄｏｃｕｍｅｎｔ  Ｍ８５２０、２００２年７月に提供されている。ＭＣＴＦは、図１８に例示されているようなリフティングプロセスを利用することによって実装され、Ｈ．２６ｘビデオコーディング標準の動き補償特徴は、ＭＣＴＦ予測及びアップデートステップにおいて再使用され得る。
【００１１】
図１８に示すように、ビデオシーケンスの２つの連続するピクチャＡ及びＢに対して、ピラミッドベース動き補償変換を実行して、「時間」低域通過フレームＬ及び高域通過フレームＨが得られる。この「時間」予測は次のように書くことができ、
（外１）
0006324510.tif 000002
【００１２】
ここで、α及びβは、サブ画素補間で使用される重み付け係数である。
【００１３】
ピクチャコーディングは、視覚アーチファクトを再構築画像に導入することが知られている。これらのアーチファクトは、量子化雑音及びブロッキング効果によって引き起こされ得る。イントラ及びインター予測などの予測技法は、画素のブロックを予測するために参照サンプルとして既に復号された及び／又は再構築されたサンプルを使用し、それゆえに、この復号された情報の内部の雑音が予測精度に影響を及ぼすことがある。この雑音は、さらに、符号化されるべきブロックにとって残留信号のより高いエネルギーを意味することがあり、それは、ビットレートの増加によって、又は符号化されるストリームのビットレートの上昇を許容できない場合、目立つアーチファクトを受け入れることによって対処され得る。
【発明の概要】
【発明が解決しようとする課題】
【００１４】
これに鑑みて、本発明の１つの目的は、ピクチャ細部を抑制することなく、ブロックの予測サンプルへの雑音の影響を低減することができる予測技法を示唆することである。
【課題を解決するための手段】
【００１５】
前述及び他の目的は、独立請求項の特徴によって達成される。さらなる実装形態の形態は、従属請求項、説明、及び図から明らかである。
【００１６】
したがって、本発明の１つの態様は、再構築されるべきブロックの予測サンプルへの雑音の影響を低減するために事前予測フィルタリング技法を使用する改善された予測技法、例えば、イントラ予測又はインター予測を使用するブロック予測に関する。本明細書で示唆する予測技法は、例えば、符号化装置又は復号装置で使用することができる。画像の画素の所与のブロックを再構築するために使用される参照サンプルは、サブセットにカテゴリ化されるか又はセグメント化される。サブセットは違ったやり方で処理することができる、例えば、サブセットは別個のフィルタにかけることができる。そのようなフィルタの例は、参照サンプルのそれぞれのサブセットに適用される平滑フィルタ及び／又はデブロッキングフィルタを含む。
【００１７】
本発明の態様の第１の実装形態は、予測を使用して画像のブロックを再構築する方法に関する。この方法は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックの参照サンプルを決定するステップと、参照サンプルの第１のサブセット及び参照サンプルの第２のサブセットを選択するステップと、前記第１のサブセット及び前記第２のサブセットの選択された参照サンプルの事前予測フィルタリングを実行するステップであり、第１のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータが、第２のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータと異なる、実行するステップと、第１のサブセット及び第２のサブセットの前記事前予測フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によって前記ブロックを再構築するステップとを含む。
【００１８】
第１の実装形態のより詳細な実装形態である第２の実装形態において、この方法は、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードを決定するステップと、前記第１及び／又は第２のサブセットの参照サンプルを決定するステップ、及び／又はサイズ及び／又は予測モードに基づいて前記事前予測フィルタリングのためのパラメータを選択するステップとをさらに含む。
【００１９】
第１又は第２の実装形態のより詳細な実装形態である第３の実装形態において、イントラ予測がブロックを再構築するために使用され、再構築されるべきブロックを符号化するために利用された予測モードを決定するステップは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するステップを含む。イントラ予測が別の角度モードに従っている場合には、第１のサブセット及び第２のサブセットの参照サンプルの前記事前予測フィルタリングが実行される。イントラ予測が垂直モードに従っている場合には、事前予測フィルタリングが、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルに適用される。イントラ予測が水平モードに従っている場合には、事前予測フィルタリングが、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルに適用される。
【００２０】
第３の実装形態のより詳細な実装形態である第４の実装形態において、第１のサブセットが、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルを含み、第２のサブセットが、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルを含む。
【００２１】
第３又は第４の実装形態のより詳細な実装形態である第５の実装形態において、再構築されるべきブロックを符号化するために利用された予測モードを決定するステップは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するステップを含む。イントラ予測が対角線モードに従っている場合には、すべての参照サンプルが事前予測フィルタリングにかけられる。
【００２２】
第１から第５の実装形態のうちの１つのより詳細な実装形態である第６の実装形態において、前記第２のサブセットは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含む。さらに、前記ブロックは、前記フィルタリングされた第１のサブセットの参照サンプルと前記フィルタリングされた第２のサブセットの参照サンプルとを含む参照サンプルに基づいて予測によって再構築される。
【００２３】
第１から第６の実装形態のうちの１つのより詳細な実装形態である第７の実装形態において、この方法は、異なる復号されたブロックの事前予測フィルタリングされた参照サンプルにデブロッキングフィルタを適用するステップをさらに含み、前記事前予測フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００２４】
第８の実装形態は、予測を使用して画像のブロックを再構築する方法に関する。この方法は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックの参照サンプルを決定するステップと、予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットを選択するステップ、及び前記サブセットの選択された参照サンプルの事前予測フィルタリングを実行するステップと、前記サブセットの前記フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によって前記ブロックを再構築するステップとを含む。前記サブセットの前記選択と、前記サブセットの参照サンプルの事前予測フィルタリングとが、予測による前記ブロックの再構築に先立って繰り返される。
【００２５】
第８の実装形態のより詳細な実装形態である第９の実装形態において、サブセットの参照サンプルをフィルタリングするためのフィルタパラメータは、前記サブセットの選択と事前予測フィルタリングとの前記繰り返しにおいて異なる。
【００２６】
第８又は第９の実装形態のより詳細な実装形態である第１０の実装形態において、異なる繰り返しにおいて選択されるサブセットは、別個であるか又は重複している。
【００２７】
第８から第１０の実装形態のうちの１つのより詳細な実装形態である第１１の実装形態において、繰り返しのうちの１つにおいて、参照サンプルの選択されたサブセットは、すべての参照サンプルを含む。
【００２８】
第８から第１１の実装形態のうちの１つのより詳細な実装形態である第１２の実装形態において、３つの繰り返しがあり、最初の２つの繰り返しが元の参照サンプルに実行されて、フィルタリングされた参照サンプルが得られ、一方、第３の繰り返しが、最初の２つの繰り返しにおいて得られたフィルタリングされた参照サンプルに実行される。
【００２９】
第８から第１２の実装形態のうちの１つのより詳細な実装形態である第１３の実装形態において、第１の繰り返しにおいて、それぞれのサブセットの参照サンプルは、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードに基づいてフィルタリングされる。第２の繰り返しにおいて、それぞれのサブセットの参照サンプルは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、第３の繰り返しにおいて、デブロッキングフィルタが、第１又は第２の繰り返しにおいてフィルタリングされた参照サンプルに適用され、前記フィルタリングされた参照サンプルが、復号されたブロックの間の境界での参照サンプルである。
【００３０】
第７又は第１３の実装形態のより詳細な実装形態である第１４の実装形態において、この方法は、復号されるべき前記ブロックに関する復号された残差を前記再構築されたブロックに付加して、復号されたブロックを得るステップと、インループデブロッキングフィルタを、復号されたブロックに適用するステップとをさらに含む。
【００３１】
第１から第１４の実装形態のうちの１つのより詳細な実装形態である第１５の実装形態において、参照サンプルは、２つの１次元アレイを形成している。一方のアレイは、復号されるべきブロックの左又は右の１つ又は複数の復号された隣接するブロックのサンプルの列を含み、他方のアレイは、復号されるべきブロックの上部又は底部の１つ又は複数の復号された隣接するブロックのサンプルの行を含む。
【００３２】
第１から第１５の実装形態のうちの１つのより詳細な実装形態である第１６の実装形態において、事前予測フィルタリングは、参照サンプルの少なくとも１つのサブセットに平滑フィルタを適用するステップを含む。
【００３３】
第１、第２、及び第６から第１６の実装形態のうちの１つのより詳細な実装形態である第１７の実装形態において、インター予測が、画素のブロックを再構築するために使用される。
【００３４】
第１７の実装形態のより詳細な実装形態である第１８の実装形態において、参照サンプルは、前記ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定する。事前予測フィルタリングをかけられる参照サンプルのサブセットのうちの１つは、残差が、符号化されたビデオストリームにおいて符号化された、復号されたブロックに属する参照サンプルを含む。
【００３５】
第１７の実装形態のより詳細な実装形態である第１９の実装形態において、参照サンプルは、ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定する。インター予測に先立ってフィルタが適用されるべきである参照サンプルの前記サブセットを決定するステップは、前記２次元参照区域の参照サンプルにエッジ検出を実行した結果に基づいて参照サンプルの多数の別個のサブセットを決定するステップを含む。さらに、事前予測フィルタリングを実行するステップが、異なるフィルタパラメータを使用してサブセットの参照サンプルをフィルタリングするステップを含む。
【００３６】
第１７の実装形態のより詳細な実装形態である第２０の実装形態において、複数参照インター予測が、ブロックを再構築するために使用され、参照サンプルは、ブロックを再構築するときにインター予測のために使用されるべき異なる参照フレームから２次元参照区域のスタックを画定する。予測に先立ってフィルタが適用されるべきである参照サンプルの前記サブセットの決定は、参照サンプルにエッジ検出を実行した結果に基づいて２次元参照区域の前記スタック内に参照サンプルの多数の別個のサブセットを決定するステップを含む。しかも、事前予測フィルタリングを実行するステップは、異なるフィルタパラメータを使用してサブセットの参照サンプルをフィルタリングするステップを含み、ブロックを再構築するステップは、フィルタリングされた参照サンプルの加重和を２次元参照区域のスタックから計算することによって前記ブロックを予測するステップを含む。
【００３７】
第２１の実装形態は、予測を使用して画像のブロックを再構築する装置に関する。装置は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックを記憶するための参照サンプルバッファと、参照サンプルの第１のサブセット及び参照サンプルの第２のサブセットを前記参照サンプルバッファから選択するように構成された処理ユニットと、前記第１のサブセット及び前記第２のサブセットの選択された参照サンプルの事前予測フィルタリングを実行するように構成されたフィルタユニットであり、第１のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータが、第２のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータと異なる、フィルタユニットと、第１のサブセット及び第２のサブセットの前記事前予測フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によって前記ブロックを再構築するように構成された予測ユニットとを備える。
【００３８】
第２１の実装形態のより詳細な実装形態である第２２の実装形態において、前記処理ユニットは、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードを決定するように構成される。加えて、前記処理ユニットは、前記第１及び／又は第２のサブセットの参照サンプルを決定し、及び／又はサイズ及び／又は予測モードに基づいて前記事前予測フィルタリングのためのパラメータを選択するようにさらに構成される。
【００３９】
第２１又は第２２の実装形態のより詳細な実装形態である第２３の実装形態において、イントラ予測がブロックを再構築するために使用され、前記処理ユニットは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するように構成される。イントラ予測が別の角度モードに従っている場合には、前記処理ユニットは、フィルタユニットに、第１のサブセット及び第２のサブセットの参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。イントラ予測が垂直モードに従っている場合には、前記処理ユニットは、フィルタユニットに、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。イントラ予測が水平モードに従っている場合には、前記処理ユニットは、フィルタユニットに、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。
【００４０】
第２３の実装形態のより詳細な実装形態である第２４の実装形態において、第１のサブセットは、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルを含み、第２のサブセットは、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルを含む。
【００４１】
第２３又は第２４の実装形態のより詳細な実装形態である第２５の実装形態において、処理ユニットは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するように構成される。イントラ予測が対角線モードに従っている場合には、前記処理ユニットは、フィルタユニットに、すべての参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。
【００４２】
第２１から第２５の実装形態のうちの１つのより詳細な実装形態である第２６の実装形態において、前記第２のサブセットは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、予測ユニットは、前記フィルタリングされた第１のサブセットの参照サンプルと前記フィルタリングされた第２のサブセットの参照サンプルとを含む参照サンプルに基づいて前記ブロックを再構築するように構成される。
【００４３】
第２１から第２６の実装形態のうちの１つのより詳細な実装形態である第２７の実装形態において、装置は、予測に先立って異なる復号されたブロックの事前予測フィルタリングされた参照サンプルのデブロッキングを実行するように構成されたデブロッキングフィルタをさらに含み、前記事前予測フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００４４】
本発明の態様の第２８の実装形態は、予測を使用して画像のブロックを再構築するための装置に関する。装置は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックを記憶するための参照サンプルバッファと、予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットを選択するように構成された処理ユニットと、前記サブセットの選択された参照サンプルの事前予測フィルタリングを実行するように適合されたフィルタユニットと、前記サブセットの前記フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によって前記ブロックを再構築するように構成された予測ユニットとを備える。処理ユニット及び前記フィルタユニットは、予測による前記ブロックの再構築に先立って、前記サブセットの選択と、前記サブセットの参照サンプルの事前予測フィルタリングとを繰り返すように構成される。
【００４５】
第２８の実装形態のより詳細な実装形態である第２９の実装形態において、フィルタユニットは、前記繰り返しにおいてサブセットの参照サンプルをフィルタリングするために異なるパラメータを使用するように構成される。
【００４６】
第２８又は第２９の実装形態のより詳細な実装形態である第３０の実装形態において、前記処理ユニットは、異なる繰り返しにおいて、別個であるか又は重複しているサブセットを選択するように構成される。
【００４７】
第２８から第３０の実装形態のうちの１つのより詳細な実装形態である第３１の実装形態において、繰り返しのうちの１つにおいて、参照サンプルの選択されたサブセットは、すべての参照サンプルを含む。
【００４８】
第２８から第３１の実装形態のうちの１つのより詳細な実装形態である第３２の実装形態において、３つの繰り返しがあり、前記処理ユニット及び前記フィルタユニットは、最初の２つの繰り返しを元の参照サンプルに実行して、フィルタリングされた参照サンプルを得、第３の繰り返しを、最初の２つの繰り返しにおいて得られたフィルタリングされた参照サンプルに実行するように構成される。
【００４９】
第２８から第３２の実装形態のうちの１つのより詳細な実装形態である第３３の実装形態において、第１の繰り返しにおいて、前記フィルタユニットは、再構築されるべきブロックのサイズ、及び／又は再構築されるべきブロックを符号化するために利用された予測モードに基づいて、それぞれのサブセットの参照サンプルをフィルタリングし、第２の繰り返しにおいて、それぞれのサブセットの参照サンプルは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、第３の繰り返しにおいて、前記フィルタユニットは、デブロッキングフィルタを、第１又は第２の繰り返しにおいてフィルタリングされた参照サンプルに適用し、前記フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
第２７又は第３３の実装形態のより詳細な実装形態である第３４の実装形態において、装置は、復号されるべき前記ブロックの復号された残差を前記再構築されたブロックに付加して、復号されたブロックを得るように構成された総和ユニットと、デブロッキングを、復号されたブロックに適用するように構成されたインループデブロッキングフィルタとをさらに備える。
【００５０】
第２１から第３４の実装形態のうちの１つのより詳細な実装形態である第３５の実装形態において、フィルタユニットは、参照サンプルの少なくとも１つのサブセットに平滑フィルタを適用するように構成される。
【００５１】
第２１から第３５の実装形態のうちの１つのより詳細な実装形態である第３６の実装形態において、装置は、ビデオの画像を符号化するための符号化装置であるか、又はビデオストリームの符号化された画像を復号するための復号装置である。
【００５２】
第３７の実装形態は、処理ユニットによって実行されるとき、処理ユニットに、本明細書に記載する様々な実施態様のうちの１つに従って予測を使用して画像のブロックを再構築する方法を実行するようにさせる命令を記憶するコンピュータ可読記憶媒体に関する。
【００５３】
上記の態様の第１の例示的な実施形態は、予測を使用して画像のブロックを再構築する方法に関する。この方法では、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックの参照サンプルが決定され、参照サンプルの第１のサブセット及び参照サンプルの第２のサブセットが選択される。その上、第１のサブセット及び第２のサブセットの選択された参照サンプルの事前予測フィルタリングが実行され、第１のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータは、第２のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータと異なる。この事前予測フィルタリングに続いて、ブロックは、第１のサブセット及び第２のサブセットの事前予測フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によって再構築される。
【００５４】
第１の実施形態のより詳細な実装形態である第２の例示的な実施形態において、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードが決定され、第１及び／又は第２のサブセットの参照サンプルの決定、及び／又は事前予測フィルタリングのためのパラメータの選択が、サイズ及び／又は予測モードに基づく。
【００５５】
第１又は第２の実施形態のより詳細な実装形態である第３の例示的な実施形態において、イントラ予測がブロックを再構築するために使用される。この実施形態では、再構築されるべきブロックを符号化するために利用された予測モードの決定は、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかの決定を含む。イントラ予測が別の角度モードに従っている場合には、第１のサブセット及び第２のサブセットの参照サンプルの事前予測フィルタリングが、実行され得る。イントラ予測が垂直モードに従っている場合には、事前予測フィルタリングが、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルに適用され得る。イントラ予測が水平モードに従っている場合には、事前予測フィルタリングが、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルに適用され得る。
【００５６】
第３の実施形態のより詳細な実装形態である第４の例示的な実施形態において、第１のサブセットは、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルを含み、第２のサブセットは、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルを含む。
【００５７】
第３又は第４の実施形態のより詳細な実装形態である第５の例示的な実施形態において、さらに、イントラ予測のための対角線モードがある。この方法では、再構築されるべきブロックを符号化するために利用された予測モードの決定は、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するステップを含み、イントラ予測が対角線モードに従っている場合には、すべての参照サンプルが事前予測フィルタリングにかけられる。
【００５８】
第１から第５の実施形態のうちの１つのより詳細な実装形態である第６の例示的な実施形態において、第２のサブセットは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、ブロックは、フィルタリングされた第１のサブセットの参照サンプルとフィルタリングされた第２のサブセットの参照サンプルとを含む参照サンプルに基づいて予測によって再構築される。
【００５９】
第１から第６の実施形態のうちの１つのより詳細な実装形態である第７の例示的な実施形態において、この方法は、異なる復号されたブロックの事前予測フィルタリングされた参照サンプルにデブロッキングフィルタを適用するステップをさらに含み、事前予測フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００６０】
第８の例示的な実施形態は、本発明の上記の態様のさらなる実装形態を提供し、予測を使用して画像のブロックを再構築する別の方法を提供する。この方法は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックの参照サンプルを決定するステップと、予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットを選択するステップ、及びサブセットの選択された参照サンプルの事前予測フィルタリングを実行するステップと、サブセットのフィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によってブロックを再構築するステップとを含む。この方法では、サブセットの選択と、サブセットの参照サンプルの事前予測フィルタリングとが、予測によるブロックの再構築に先立って繰り返される。
【００６１】
第８の実施形態のより詳細な実装形態である第９の例示的な実施形態において、サブセットの参照サンプルをフィルタリングするためのフィルタパラメータは、サブセットの選択と事前予測フィルタリングとの繰り返しにおいて異なる。
【００６２】
第８又は第９の実施形態のより詳細な実装形態である第１０の例示的な実施形態において、異なる繰り返しにおいて選択されるサブセットは、別個であるか又は重複している。
【００６３】
第８から第１０の実施形態のうちの１つのより詳細な実装形態である第１１の例示的な実施形態において、繰り返しのうちの１つにおいて、参照サンプルの選択されたサブセットは、すべての参照サンプルを含む。
【００６４】
第８から第１１の実施形態のうちの１つのより詳細な実装形態である第１２の例示的な実施形態において、事前予測フィルタリングの３つの繰り返し（又は反復）がある。最初の２つの繰り返しが元の参照サンプルに実行されて、フィルタリングされた参照サンプルが得られ、一方、第３の繰り返しが、最初の２つの繰り返しにおいて得られたフィルタリングされた参照サンプルに実行される。
【００６５】
第８から第１２の実施形態のうちの１つのより詳細な実装形態である第１３の例示的な実施形態において、第１の繰り返しにおいて、それぞれのサブセットの参照サンプルは、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードに基づいてフィルタリングされ、第２の繰り返しにおいて、それぞれのサブセットの参照サンプルは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、第３の繰り返しにおいて、デブロッキングフィルタが、第１又は第２の繰り返しにおいてフィルタリングされた参照サンプルに適用され、フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００６６】
第７から第１３の実施形態のうちの１つのより詳細な実装形態である第１４の例示的な実施形態において、この方法は、復号されるべきブロックに関する復号された残差を、再構築されたブロックに付加して、復号されたブロックを得るステップと、インループデブロッキングフィルタを、復号されたブロックに適用するステップとをさらに含む。
【００６７】
第１から第１４の実施形態のうちの１つのより詳細な実装形態である第１５の例示的な実施形態において、参照サンプルは、２つの１次元アレイを形成し、一方のアレイは、復号されるべきブロックの左又は右の１つ又は複数の復号された隣接するブロックのサンプルの列を含み、他方のアレイは、復号されるべきブロックの上部又は底部の１つ又は複数の復号された隣接するブロックのサンプルの行を含む。
【００６８】
第８から第１５の実施形態のうちの１つのより詳細な実装形態である第１６の例示的な実施形態において、事前予測フィルタリングは、参照サンプルの少なくとも１つのサブセットに平滑フィルタを適用するステップを含む。
【００６９】
第１、第２、及び第６から第１６の実施形態のうちの１つのより詳細な実装形態である第１７の例示的な実施形態において、インター予測が、画素のブロックを再構築するために使用される。
【００７０】
第１７の実施形態のより詳細な実装形態である第１８の例示的な実施形態において、参照サンプルは、ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定する。さらに、事前予測フィルタリングをかけられる参照サンプルのサブセットのうちの１つは、残差が、符号化されたビデオストリームにおいて符号化された、復号されたブロックに属する参照サンプルを含む。
【００７１】
第１７の実施形態のより詳細な実装形態である第１９の例示的な実施形態において、参照サンプルは、ブロックを再構築するときにインター予測のために使用されるべき１つ又は複数の復号されたブロック内に２次元参照区域を画定する。この方法では、インター予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットの決定は、２次元参照区域の参照サンプルにエッジ検出を実行した結果に基づいて参照サンプルの多数の別個のサブセットを決定するステップを含む。さらに、事前予測フィルタリングは、異なるフィルタパラメータを使用してサブセットの参照サンプルをフィルタリングするステップを含む。
【００７２】
第１７の実施形態のより詳細な実装形態である第２０の例示的な実施形態において、複数参照インター予測が、ブロックを再構築するために使用され、参照サンプルは、ブロックを再構築するときにインター予測のために使用されるべき異なる参照フレームから２次元参照区域のスタックを画定する。この方法では、予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットの決定は、参照サンプルにエッジ検出を実行した結果に基づいて２次元参照区域のスタック内に参照サンプルの多数の別個のサブセットを決定するステップを含み、事前予測フィルタリングは、異なるフィルタパラメータを使用してサブセットの参照サンプルをフィルタリングするステップを含み、ブロックを再構築するステップは、フィルタリングされた参照サンプルの加重和を２次元参照区域のスタックから計算することによってブロックを予測するステップを含む。
【００７３】
第２１の例示的な実施形態は、上記の態様の別の実装形態を提供し、予測を使用して画像のブロックを再構築する装置に関する。装置は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックを記憶するための参照サンプルバッファと、参照サンプルの第１のサブセット及び参照サンプルの第２のサブセットを参照サンプルバッファから選択するように構成された処理ユニットと、第１のサブセット及び第２のサブセットの選択された参照サンプルの事前予測フィルタリングを実行するように構成されたフィルタユニットであり、第１のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータが、第２のサブセットの参照サンプルをフィルタリングするためのフィルタパラメータと異なる、フィルタユニットと、第１のサブセット及び第２のサブセットの事前予測フィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によってブロックを再構築するように構成された予測ユニットとを備える。
【００７４】
第２１の実施形態のより詳細な実装形態である第２２の例示的な実施形態において、処理ユニットは、再構築されるべきブロックのサイズ及び／又は再構築されるべきブロックを符号化するために利用された予測モードを決定するように構成され、処理ユニットは、第１及び／又は第２のサブセットの参照サンプルを決定し、及び／又はサイズ及び／又は予測モードに基づいて事前予測フィルタリングのためのパラメータを選択するようにさらに構成される。
【００７５】
第２１又は第２２の実施形態のより詳細な実装形態である第２３の例示的な実施形態において、イントラ予測がブロックを再構築するために使用され、処理ユニットは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するように構成される。イントラ予測が別の角度モードに従っている場合には、処理ユニットは、フィルタユニットに、第１のサブセット及び第２のサブセットの参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。さらにイントラ予測が垂直モードに従っている場合には、処理ユニットは、フィルタユニットに、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。しかも、イントラ予測が水平モードに従っている場合には、処理ユニットは、フィルタユニットに、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。
【００７６】
第２３の実施形態のより詳細な実装形態である第２４の実施形態において、第１のサブセットは、再構築されるべきブロックの左及び／又は左下に配置された参照サンプルを含み、第２のサブセットは、再構築されるべきブロックの上方及び／又は上方右に配置された参照サンプルを含む。
【００７７】
第２３又は第２４の実施形態のより詳細な実装形態である第２５の例示的な実施形態において、処理ユニットは、イントラ予測が、垂直モード、水平モード、又は角度モードに従っているかどうかを決定するように構成される。イントラ予測が対角線モードに従っている場合には、処理ユニットは、フィルタユニットに、すべての参照サンプルに事前予測フィルタリングを適用するようにさせるように構成される。
【００７８】
第２１から第２５の実施形態のうちの１つのより詳細な実装形態である第２６の例示的な実施形態において、第２のサブセットは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、予測ユニットは、フィルタリングされた第１のサブセットの参照サンプルとフィルタリングされた第２のサブセットの参照サンプルとを含む参照サンプルに基づいてブロックを再構築するように構成される。
【００７９】
第２１から第２６の実施形態のうちの１つのより詳細な実装形態である第２７の例示的な実施形態において、装置は、予測に先立って異なる復号されたブロックの事前予測フィルタリングされた参照サンプルのデブロッキングを実行するように構成されたデブロッキングフィルタを含む。事前予測フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００８０】
第２８の例示的な実施形態は、上記の態様の別の実装形態を提供し、予測を使用して画像のブロックを再構築する装置に関する。装置は、再構築されるべきブロックを予測するために使用されるべき１つ又は複数の既に復号されたブロックを記憶するための参照サンプルバッファと、予測に先立ってフィルタが適用されるべきである参照サンプルのサブセットを選択するように構成された処理ユニットと、サブセットの選択された参照サンプルの事前予測フィルタリングを実行するように適合されたフィルタユニットと、サブセットのフィルタリングされた参照サンプルを含む参照サンプルに基づいて予測によってブロックを再構築するように構成された予測ユニットとを備える。処理ユニット及びフィルタユニットは、予測によるブロックの再構築に先立って、サブセットの選択と、サブセットの参照サンプルの事前予測フィルタリングとを繰り返すように構成される。
【００８１】
第２８の実施形態のより詳細な実装形態である第２９の例示的な実施形態において、フィルタユニットは、繰り返しにおいてサブセットの参照サンプルをフィルタリングするために異なるパラメータを使用するように構成される。
又は第２９の実施形態のより詳細な実装形態である第３０の例示的な実施形態において、処理ユニットは、異なる繰り返しにおいて、別個であるか又は重複しているサブセットを選択するように構成される。
【００８２】
第２８から第３０の実施形態のうちの１つのより詳細な実装形態である第３１の例示的な実施形態において、繰り返し（反復と呼ぶこともできる）のうちの１つにおいて、選択されたサブセットの参照サンプルが、すべての参照サンプルを含む。
【００８３】
第２８から第３１の実施形態のうちの１つのより詳細な実装形態である第３２の例示的な実施形態において、３つの繰り返し（又は反復）がある。処理ユニット及びフィルタユニットは、最初の２つの繰り返しを元の参照サンプルに実行して、フィルタリングされた参照サンプルを得、第３の繰り返しを、最初の２つの繰り返しにおいて得られたフィルタリングされた参照サンプルに実行するように構成される。
【００８４】
第２８から第３２の実施形態のうちの１つのより詳細な実装形態である第３３の例示的な実施形態において、第１の繰り返しでは、フィルタユニットは、再構築されるべきブロックのサイズ、及び／又は再構築されるべきブロックを符号化するために利用された予測モードに基づいて、それぞれのサブセットの参照サンプルをフィルタリングし、第２の繰り返しにおいて、それぞれのサブセットの参照サンプルは、残差が、符号化されたビデオストリームにおいてコード化されなかった１つ又は複数のブロックの参照サンプルを含み、第３の繰り返しでは、フィルタユニットは、デブロッキングフィルタを、第１又は第２の繰り返しにおいてフィルタリングされた参照サンプルに適用し、フィルタリングされた参照サンプルは、復号されたブロックの間の境界での参照サンプルである。
【００８５】
第２７から第３３の実施形態のうちの１つのより詳細な実装形態である第３４の例示的な実施形態において、装置は、復号されるべきブロックの復号された残差を再構築されたブロックに付加して、復号されたブロックを得るように構成された総和ユニットと、デブロッキングを、復号されたブロックに適用するように構成されたインループデブロッキングフィルタとをさらに備える。
【００８６】
第２１から第３４の実施形態のうちの１つのより詳細な実装形態である第３５の例示的な実施形態において、フィルタユニットは、参照サンプルの少なくとも１つのサブセットに平滑フィルタを適用するように構成される。
【００８７】
第２１から第３５の実施形態のうちの１つのより詳細な実装形態である第３６の例示的な実施形態において、装置は、ビデオの画像を符号化するための符号化装置であるか、又はビデオストリームの符号化された画像を復号するための復号装置である、
本明細書で論じられる異なる実施形態のうちの１つによる上記の態様及びその実装形態は、さらに、コンピュータ可読な記憶媒体において実装することができる。そのような媒体は、処理ユニットによって実行されたとき、処理ユニットに、本明細書に記載する様々な実施形態のうちの１つに従って予測を使用して画像のブロックを再構築する方法を実行させる命令を記憶することができる。
【００８８】
本発明の以下の実施形態が、添付の図及び図面を参照してより詳細に説明される。図における同様の又は対応する詳細は、同じ参照番号を用いて示されている。
【図面の簡単な説明】
【００８９】
【図１】本発明の例示的な実施形態による、復号されるべきブロックのイントラ予測で使用される事前予測フィルタリングの例示的な流れ図である。
【図２】図１におけるサイズ及びモード依存事前予測フィルタリングの例示的な実装形態の流れ図である。
【図３】図２のサイズ及びモード依存事前予測フィルタリングにおける角度予測モードでの参照サンプルの処理の例示的な実装形態の流れ図である。
【図４】異なる角度予測モードに対する主要及びサイド参照サンプルを例示する図である。
【図５】本発明の一実施形態による画素の所与のブロックを再構築するための参照サンプルと、図１の事前予測フィルタリングのステップ１０２及び１０３による参照サンプルの処理とを例示する図である。
【図６】図１のステップ１０２に従った参照サンプルの処理のための本発明の一実施形態による参照サンプル処理を例示する図である。
【図７】本発明の例示的な実施形態による図１のステップ１０２に従った参照サンプルの処理の流れ図である。
【図８】本発明の例示的な実施形態による図１のステップ１０３に従った参照サンプルの処理の流れ図である。
【図９】本発明の一実施形態によるデブロッキングフィルタの例示的な実装形態を示す図である。
【図１０】本発明の一実施形態によるデブロッキングフィルタをパラメータ化するための例示的なハードウェア構造を示す図である。
【図１１】本発明の一実施形態による参照サンプルのサブセットの並行処理を例示する図である。
【図１２】本発明の一実施形態による、エッジフィルタを使用する２次元区域における参照サンプルの例示的なクラス分けを示す図である。
【図１３】本発明の一実施形態による参照サンプルのサブセットの別の並行処理を例示する図であり、サブセットは、例えば、図１２のクラス分けによって得られている。
【図１４】異なる画像の参照サンプルに基づいたブロックの事前予測を例示する図である。
【図１５】本発明の一実施形態による双予測プロセスを例示する例示的な流れ図である。
【図１６】本発明の一実施形態による符号化装置の例示の実施形態の簡単化したブロック図である。
【図１７】本発明の一実施形態による復号装置の例示の実施形態の簡単化されたブロック図である。
【図１８】ＭＣＴＦのためのリフティングプロセスを示す図である。
【図１９】本発明の一実施形態によるデブロッキングフィルタの別の例示的な実装形態を示す図である。
【発明を実施するための形態】
【００９０】
以下の段落は、異なる態様の様々な実装形態及び実施形態を説明している。既に上記したように、本発明の１つの態様は、例えば、符号化又は復号プロセスの一部として、画像のブロックを予測する際に使用することができる参照サンプルの事前予測フィルタリングに関する。本明細書で論じている予測技法への改善は、とりわけ、イントラ又はインター予測を使用するブロック予測に適用可能である。雑音を低減するための事前予測技法は、再構築されるべきブロックの予測サンプルに影響を及ぼす。画像の画素の所与のブロックを再構築するために使用される参照サンプル（画像の所与のブロックの画素のそれぞれの値を指すこともある）は、サブセットにカテゴリ化されるか又はセグメント化される。サブセットは違ったやり方で処理することができる、例えば、サブセットは別個のフィルタにかけることができる。そのようなフィルタの例は、参照サンプルのそれぞれのサブセットに適用される平滑フィルタ及び／又はデブロッキングフィルタを含む。
【００９１】
以下の実施形態では、既に前もって復号されている他のブロックの参照サンプルに基づいた画像の画素のブロックのイントラ予測が主として参照される、しかしながら、本明細書で論じる原理はインター予測にも適用することができることは明らかであるはずである。
【００９２】
図１は、本発明の例示的な実施形態による事前予測フィルタリングステップを例示する流れ図を示す。ここで、イントラ予測のために参照サンプルを処理する１次元の場合が仮定されている。一般に、限定はしないが、再構築されるべきブロックの参照サンプル（画素の値）は、再構築されるべきブロックを基準にして左（及び左底部）及び上部（及び上部右）の隣接するブロックから取られる。参照サンプルが取られるブロックの数は、例えば、再構築されるべきブロックのサイズ並びに隣接するブロックのサイズによって決まる。例えば、参照サンプルは、図５に例示するように、隣接する左のブロックの最右端の列のサンプル（画素値）、及び再構築されるべきブロックの上方（ブロックの上部）の隣接するブロックの底部の行のサンプル（画素値）とすることができる。参照サンプルは、例えば、参照サンプルバッファに供給することができ、予測ユニットは、予測バッファに記憶されているサンプルに基づいてブロックを予測する。現在のブロック（例えば、Ｈ．２６５ビデオコーディングにおけるＴＵ）を予測するのに必要とされる参照ブロック及び参照サンプルの数は、現在のブロックのサイズＮ×Ｍによって決まる。例示の目的で、図５に示すように、垂直方向では、参照サンプルは、左及び左底部のすべてのブロック５０２から、現在のブロックの左上角を基準として２Ｎの範囲で取られ、水平方向では、参照サンプルは、上方及び上方右のすべてのブロック５０１から、現在のブロックの左上角を基準として２Ｍの範囲で取られると仮定することができる。当然、ＭはＮと等しくてもよい。
【００９３】
例示の目的のために、事前予測フィルタリングの初めに、所与のブロックを再構築するための復号済み参照サンプルは、符号化又は復号装置の参照サンプルバッファに供給され、図１に示したステップ１０１、１０２、及び１０３においてアクセスすることができることを仮定することができる。ステップ１０１及び１０２の一方はオプションであり、その結果、ステップ１０１及び１０３が実行される、ステップ１０２及び１０３が実行される、又はステップ１０１、１０２、及び１０３がすべて実行されることに留意されたい。
【００９４】
参照サンプル処理のステップ１０１は、サイズ及びモード依存フィルタリングであり、それは、図２に関連して本明細書において以下でさらに詳細に論じられる。ステップ１０２は、残差信号がビデオビットストリームにおいて符号化されていない復号済みブロックから取られた参照サンプルの特別な処理である。ステップ１０３は、デブロッキングフィルタであり、それは、参照ブロックのブロック境界上の参照サンプルに適用される。ステップ１０１及び１０２が元の（「未修正の」）参照サンプルに作用している間、ステップ１０３は、ステップ１０１及び／又はステップ１０２で得られた処理済み参照サンプルを使用する。
【００９５】
図２は、予測モードに応じた予測による再構築の際のブロックの全体的処理の例示的な流れ図を示している。例えば、本発明をＨ．２６５ビデオコーディングに適用する場合、３５個のイントラ予測モードがあり得、そのうちの３３個は、角度予測モード（対角線、垂直、水平、及び「真の」角度モードを含む）である。イントラ予測の角度は、角度モードのインデクスＮａｍによって決まる。この依存性は直線的であり、すなわち、モードインデクスＮａｍの値が高いほど、予測角度の値は大きいことが示される。一般性を目的に、最小及び最大角度のモードインデクスは、それぞれ、Ｎmin及びＮｍａｘで表される。ＨＥＶＣ／Ｈ．２６５標準の特定の場合には、Ｎｍｉｎ＝２及びＮｍａｘ＝３４であり、一方、Ｎａｍ＝０は平坦モードを示し、Ｎａｍ＝１はＤＣモードを示す。平坦モードでは、予測画素は、２つの双一次補間、すなわち、水平及び垂直のものの合計として計算される。ＤＣ予測モードが選択された場合、予測画素は参照画素の平均値に等しい。しかしながら、３２画素未満のサイズを有するブロックのＤＣイントラ予測では、予測ブロックの第１の列及び第１の行は、対応する参照画素とこれらの参照画素の平均値との加重和として計算される。
【００９６】
図２に示すように、最初に、２０１において所与のブロックがＤＣモードを使用して予測されたかどうかがチェックされ（例えば、Ｎａｍ＝１であるかどうかをチェックすることによって）、ＤＣモードを使用している場合、事前予測フィルタリングは適用されなくてもよい。次に、２０２においてブロックが平坦モードを使用して予測されたかどうかがチェックされる（例えば、Ｎａｍ＝０であるかどうかをチェックすることによって）。平坦モードが使用されている場合、すべての参照サンプルが、１つのフィルタ、例えば、低域通過フィルタ（ＬＰＦ）などの平滑フィルタにかけられ得る。
【００９７】
再構築されるべきブロックの処理がＤＣモードでも平坦モードでもない場合、角度モードイントラ予測が所与のブロックに使用されている。本発明の例示的な実施形態による角度モードイントラ予測にかけられるブロックの処理２０４が、図３の流れ図に示されている。
【００９８】
上に示したように、モードインデクスＮａｍは、これらの角度モード、具体的には、水平方向、垂直方向、及び対角線方向から選択することができるいくつかの特別な方向、を示すことができる。これらの方向の各々は、それらに関連付けられた１組の公称モードインデクス
（外２）
0006324510.tif 000003
を有する。例えば、対角線モードは、モードインデクス
（外３）
0006324510.tif 000004
に関連付けることができ、垂直モードは、モードインデクス
（外４）
0006324510.tif 000005
に関連付けることができ、水平モードは、モードインデクス
（外５）
0006324510.tif 000006
に関連付けることができる。しかしながら、これらの例示的なインデクスは、限定するものではない。
【００９９】
所与の入力モードインデクスＮａｍが特定の方向に属するかどうかをチェックするために、特別な範囲Ｒａｍを指定することができる。範囲Ｒａｍは、再構築されるべきブロックのブロックサイズＳＴＵに基づいて決定することができる。例えば、ブロックが大きいほど、大きい範囲値を使用することができる。Ｎａｍが、特定の方向（
（外６）
0006324510.tif 000007
及びＲａｍによって定義される）に属するかどうかのチェックは、次のように
（外７）
0006324510.tif 000008
と書くことができる。
【０１００】
異なる角度モードでのサイズ及びモード適応フィルタリング２０４の例示的な流れ図が図３に示されている。この例示的な実施形態で利用可能な角度イントラ予測モードは、対角線モード、垂直モード、水平モード、及び（別の）角度モードである。
【０１０１】
ステップ２４０１において、モードインデクスＮａｍ及び再構築されるべきブロックのブロックサイズＳＴＵを取得して、角度イントラ予測、すなわち、垂直、水平、対角線、又は任意のものの場合を決定する。対角線モードでは、ブロックのサンプルの予測は、隣接する左（及びオプションとして左底部）及び上部ブロック（及びオプションとして上部右）から取られた参照サンプルに基づく。垂直モードでは、ブロックのサンプルの予測は、再構築されるべきブロックの上部／上方（及びオプションとして上部／上方右）の隣接する参照ブロックから取られた参照サンプルに基づく。対角線イントラ予測の場合が生じた場合、モードインデクスＮａｍ及びブロックサイズＳＴＵはイントラ予測の対角線の場合をもたらし、それは、例えば、
（外８）
0006324510.tif 000009
であるかどうかをチェックすることによって決定することができる。その場合、すべての参照サンプルは、フィルタ２４０３（以下で示す表の事例Ｄ）、例えば、低域通過フィルタ（ＬＰＦ）などの平滑フィルタにかけられる。
【０１０２】
モードが対角線モードでない場合、次に、イントラ予測モードが水平モードであるかどうかが２４０４においてチェックされ、ブロックのサンプルの予測は、再構築されるべきブロックの上方（及びオプションとして上方右）の隣接する参照ブロックから取られた参照サンプルに基づく。水平モードイントラ予測が使用されている場合、上方及び上方右のブロック（存在する場合）の参照サンプルが２４０５においてフィルタリングされ（以下に示す表の事例Ｃ）、垂直モードイントラ予測が使用されている場合、左及び左底部下のブロック（存在する場合）の参照サンプルが２４０７においてフィルタリングされている（以下に示す表の事例Ｂ）。
【０１０３】
モードインデクスＮａｍが上述のような水平、垂直、又は対角線の場合を決定しない場合、任意の角度予測の場合が生じる（図４を参照）。
【０１０４】
モードインデクスＮａｍが水平方向の方に向かってより多く生じている場合、再構築されるべきブロックの左（及び左底部）の隣接するブロックの参照サンプルが、第１のサブセット（主要参照サンプル）を形成し、再構築されるべきブロックの上方（及び上方右）の隣接するブロックの参照サンプルが、第２のサブセット（サイド参照サンプル）を形成している。主要参照サンプル及びサイド参照サンプルは、２４０８において、異なるフィルタ（すなわち、２つのフィルタのフィルタパラメータが互いに異なる）、例えば、ＬＰＦなどの平滑フィルタにかけられる（以下に示した表の事例Ａ）。
【０１０５】
モードインデクスＮａｍが垂直方向の方に向かってより多く生じている場合、主要及びサイド参照サンプルは、それに応じて、第２及び第１サブセットに対応する。
【０１０６】
上述で論じた場合のいずれかにおいて、フィルタリングされた参照サンプルは、ステップ１０３において使用する（又はステップ１０２において更新する）ために参照サンプルバッファに記憶することができる。
【０１０７】
以下の表は、図３に従って参照サンプルをモード及びサイズ依存事前予測フィルタリングするための例示的なフィルタ構成を例示的に示す。表のヘッダの文字は、上述の図３に関連して説明した変形（事例Ａ、Ｂ、Ｃ、Ｄ）を示す。ＴＵサイズは、構築されるべきブロックのサイズ（Ｎ×Ｎ画素）を示す。フィルタ係数が角括弧に与えられており、正規化されていない、すなわち、それらの各々は、それらの正規化の後の係数の合計が１に等しくなるようにフィルタ係数の合計で除算されるべきである。「［１］」として指定されたフィルタ係数は、フィルタリングが適用されるべきでない特定の場合を示す。
【表１】
0006324510.tif 000010
【０１０８】
表から分かるように、参照サンプルのフィルタリングは、イントラ予測モードと、構築されるべきブロックのサイズとによって決まる。
【０１０９】
上表において値ｆｉｌｔｅｒ＿ｆｌａｇが存在することに気づくことができる。この値はビデオビットストリームにおいて信号伝達され、上述の表によって指定されたフィルタ選択の追加の変形を示す。このフラグの信号伝達は、明示的に又は暗黙的に実行することができる。暗黙的な信号伝達は、例えば、参照により明細書に組み込まれるＧｏｒｄｏｎ  Ｃｌａｒｅ、Ｆｅｌｉｘ  Ｈｅｎｒｙ、Ｊｏｅｌ  Ｊｕｎｇ、「Ｓｉｇｎ  Ｄａｔａ  Ｈｉｄｉｎｇ」、Ｏｒａｎｇｅ  Ｌａｂ’ｓ  ｃｏｎｔｒｉｂｕｔｉｏｎ  ｔｏ  ＪＣＴ−ＶＣ  ｍｅｅｔｉｎｇ、ＪＣＴＶＣ−Ｇ２７３、Ｇｅｎｅｖａ、２０１１年１１月に記載されている信号データハイディングと類似のデータハイディング技法を使用して実装することができる。
【０１１０】
次に、図１に示したようなステップ１０２及び１０３をさらに詳細に説明する。ステップ１０２及び１０３の処理が、隣接する（既に復号された）ブロックからの参照サンプルを使用するブロックの再構築を示す図５を使用して例示される。図５に示されるように、再構築されるべきブロックはサイズＮ×Ｍ画素（ＭはＮと等しくてもよい）を有すると仮定される。垂直方向では、参照サンプルは、左及び左下のすべてのブロック５０２から、現在のブロックの左上角を基準として２Ｎの範囲で取られる（ここで、それらは、ブロック５０２の画素の最右端の列を形成する）。水平方向では、参照サンプルは、上方及び上方右のすべてのブロック５０１から、現在のブロックの左上角を基準として２Ｍの範囲で取られる（ここで、それらは、ブロック５０１の画素の最低位の行を形成する）。したがって、図５は、水平モード又は垂直のモード以外に対角線又は角度モードイントラ予測を仮定している（ここで、それぞれ、ブロック５０２又はブロック５０１のみからの参照サンプルがあることになる）。
【０１１１】
ステップ１０２及び１０３の１つの実装形態では、参照サンプルの組は、隣接ブロックの構成と、隣接ブロックにおける残差の存在とに従っていくつかのサブセットに分割される。ステップ１０２の１つの例示的な例示の実装形態では、参照サンプルは、残差がビデオストリームにおいてコード化されていないブロックからのものであるかどうかがチェックされる。Ｈ．２６５において、残差信号の存在は、２つのフラグの値を使用して決定することができる。
・変換スキップフラグ（ＴＳｋ）。それは、残差コーディングが、処理されている色成分について符号器サイドでスキップされたかどうかを示す。ＴＳｋが１に等しいということは、残差が処理されるべきでなく、したがって、ビットストリームが量子化変換係数を含まないことを意味する。
・ｃｂｆ＿ｌｕｍａ、ｃｂｆ＿ｃｂ、又はｃｂｆ＿ｃｒフラグ。フラグが０に等しい場合、それは、所与のブロックの特定の色成分について、変換された残差の量子化がいかなる非ゼロ量子化変換係数も生成しなかったことを意味する。ＣＢＦｋは、処理されている色成分に応じてこれらのフラグのうちの１つを表す。
【０１１２】
それらのブロックは予測のみから再構築されるが、残差信号は付加されないので、再構築されたブロック（したがって、このブロックからの参照サンプル）における雑音は、量子化雑音（残差信号に存在することになる）が付加されないとき低減され、その結果、参照サンプルはより平滑になる。それゆえに、１つの例示の実装形態によれば、残差信号なしに再構築された参照ブロックからの（未修正）参照サンプルは、ステップ１０１において参照サンプルの事前予測フィルタリングのために使用されたものよりも「弱い」別のフィルタを適用することによってフィルタリングされる（「未修正」とは、ステップ１０２のフィルタリングが、ステップ１０１のフィルタリングされた参照サンプルではなく元の参照サンプルに実行されることを表すことを意図していることに留意されたい）。より弱いフィルタの適用は、入力信号の歪みがより少ないことを意味する、すなわち、フィルタリングが弱いほど、入力信号と出力信号との間の平均２乗差の値が小さい。例えば、残差信号を有していない参照ブロックの参照サンプルをフィルタリングするためのフィルタ係数は、図１のステップ１０１で使用されるものと比較して、異なっている。再び上述の表を参照し、事例Ａを考えると、主要参照サンプルをフィルタリングするためのステップ１０１のフィルタ係数アレイ［２  ３  ６  ３  ２］は、ステップ１０１の［１  ６  １］フィルタの代わりに、ステップ１０２においてフィルタ係数［１  ２  １］に置き換えることができ、サイド参照サンプルはフィルタリングされない。係数の後者の変化は、［１］フィルタリングの形態で表すこともできる。ステップ１０２による参照サンプルの処理は、再構築されるべきブロックのサイズＳＴＵと、角度予測の方向とによって決まる。例えば、１つの例示的な実装形態では、ステップ１０２は、１６×１６画素以上のブロックに対してのみ、及び／又はイントラ予測モードが水平モード、垂直モード、又は対角線モードでない場合にのみ実行することができる。
【０１１３】
図７は、ステップ１０２におけるフィルタリングの例示的な流れ図を示し、残差信号がないブロックの参照サンプルが、反復プロセスにおける予測に先立ってフィルタリングされる。ブロックインデクスｋ及び参照サンプルインデクスｉは、７０１、７０２において初期化される。プロセスは、７０３において、次の隣接するブロックｋのＬｋ参照サンプルを選択し、７０４において、このブロックに対して、このブロックｋが残差信号を有しているかどうかをチェックする。ブロックｋが残差信号を有している場合、プロセスはステップ７０６に進む。
ブロックｋが残差信号を有していない場合、プロセスはステップ７０５に進み、次の隣接するブロックｋのＬｋ参照サンプルが、フィルタ、例えば、低域通過フィルタなどの平滑フィルタにかけられる。ここでは、ブロックサイズに関するさらなる制限は考慮されないが、当然、そのようなパラメータは、フィルタリングのための基準としてさらにチェックされ得ることに留意されたい。
【０１１４】
ステップ７０６及び７０７において、参照サンプルインデクスｉは、Ｌｋだけインクリメントされ、カウンタ変数ｋは、次の隣接するブロックを選択するために１だけインクリメントされる。処理は、参照サンプルインデクスが７０８において参照サンプルの総数Ｃを超えるとき終了する。ステップ７０５においてフィルタリングされた参照サンプルは、予測において後で使用するために参照サンプルバッファに記憶することができる。ステップ１０１及び１０２が両方とも参照サンプルの組に実行される場合、ステップ７０５においてフィルタリングされた参照サンプルは、参照サンプルバッファ中の対応する参照サンプルに上書きしていることに留意されたい。
【０１１５】
ステップ１０３において、デブロッキングフィルタが、ステップ１０１及び／又は１０２において以前にフィルタリングにかけられた参照サンプルバッファ中の参照サンプルに適用され得る。これは、さらに、デブロッキングが実行されるブロック境界において参照サンプルを発生させる、二重矢印を有する参照サンプルのブロックによって図５において示されている（図６も参照）。参照サンプルデブロッキングは、既知のビデオ符号化／復号標準で使用されるものと同じデブロッキングアルゴリズムを再使用することができる。例えば、参照サンプルデブロッキングのためのデブロッキングアルゴリズムは、Ｈ．２６５ビデオコーディング標準のインループフィルタリングの間に使用されるものとすることができる。しかしながら、参照サンプルデブロッキングプロセスの間、デブロッキングパラメータ（β及びｔｃ）は、デブロッキングインループによって使用されるものと異なるべきである。参照サンプルデブロッキングフィルタのための新しいデブロッキングパラメータは、例えば、オフセット（ΔＱＰ、Δβ、及びΔｔｃ）を使用して引き出すことができる。
βｍｏｄｉｆ＝β（ＱＰ＋ΔＱＰ）＋Δβ
ｔｃ  ｍｏｄｉｆ＝ｔｃ（ＱＰ＋ΔＱＰ）＋ｔｃ
【０１１６】
これらのオフセットの役割は、量子化パラメータ（ＱＰ）に対するβ及びｔｃの依存性を修正することである。オフセット（ΔＱＰ、Δβ、及びΔｔｃ）の導入は、依存性のグラフの水平又は垂直変位によって示すことができる。水平変位はΔＱＰ値によって制御され、β及びｔｃに対する垂直変位は、それぞれ、Δβ及びΔｔｃによって決定される。これらのオフセットの値は、定数値として定義することができ、又はＱＰの関数とすることができる。後者の場合は、ルックアップテーブルの形態で実装することができる、すなわち、ＱＰ値ごとに、３つのオフセット値｛ΔＱＰ、Δβ、及びΔｔｃ｝を定義することができる。
【０１１７】
ステップ１０３のデブロッキングプロセスの例示的な実装形態が、図８の流れ図に例示されている。ステップ８０１において、量子化パラメータ（ＱＰ）の値が得られる。その上、デブロッキングパラメータβ及びｔｃは、以前に定義された量子化パラメータを使用して、上述のように、８０２において計算される（すなわち、βｍｏｄｉｆ及びｔｃ  ｍｏｄｉｆが、参照サンプルデブロッキングのために使用される）。図７と同様に、次に、図８のプロセスは、再構築されるべきブロックに隣接するブロックを介して繰り返し、２つの隣接する参照ブロック（図５に示されるような）の境界のサンプルにデブロッキングフィルタを適用する。より具体的には、ブロックインデクスｋ（ブロックイテレータ）及び参照サンプルインデクスｉは、それぞれ、８０３、８０４において１及び０に初期化される。次に、インデクスｋ−１及びｋをもつブロックの境界に対応するＢｋ参照サンプルが、８０５において選択され、デブロッキングフィルタが、８０６において、上述で概説したように、選択されたＢｋ参照サンプルに適用される。ステップ８０７及び８０８において、参照サンプルインデクスｉは、現在のブロックｋの参照サンプルの数Ｌｋだけインクリメントされ、ブロックインデクスｋは次の隣接するブロックを選択するために１だけインクリメントされる。処理は、図７と同様に、参照サンプルインデクスｉが８０９において参照サンプルの総数Ｃを超えるとき終了する。
【０１１８】
１つの有利な実装形態では、参照サンプルデブロッキング及び再構築画像のインループデブロッキングは、図９に例示されるようなビデオ符号化又はビデオ復号装置において同じデブロッキングモジュールを使用することができる。デブロッキングフィルタ（モジュール）は、デブロッキングモード制御信号を受け取り、スイッチは、デブロッキングモード制御信号により、インループデブロッキングフィルタ動作又は参照サンプルデブロッキングフィルタ動作に切り替える。デブロックされたサンプルは、インループデブロッキングが実行される場合には復号済みピクチャバッファに書き込まれ、又は参照サンプルデブロッキングが実行される場合には参照サンプルバッファのいずれかに書き込まれる。
【０１１９】
図９によるそのようなデブロッキングフィルタモジュールのデータ流れが、図１０に例示されている。マルチプレクサ１００２は、デブロッキングのためのフィルタパラメータを読出し専用メモリ（ＲＯＭ）１００１から読み出すことができる。ＲＯＭ１００１は、例えば、Ｈ．２６５ビデオコーディング標準に従ってパラメータβ及びｔｃを記憶することができる。マルチプレクサ１００２及びデマルチプレクサ１００４は、デブロッキングモード制御信号によって制御される。この信号がインループデブロッキング動作を示す場合、デブロッキングパラメータβ及びｔｃは、デマルチプレクサ１００４からデブロッキングフィルタに出力される。デブロッキングモード制御信号が参照サンプルフィルタリングを示す場合、パラメータβ及びｔｃが再計算モジュール１００３に渡され、再計算モジュール１００３は、参照サンプルデブロッキングのための修正されたデブロッキングパラメータβｍｏｄｉｆ及びｔｃ  ｍｏｄｉｆを、パラメータβ及びｔｃに基づいて計算する。この場合、デマルチプレクサ１００４は、修正されたデブロッキングパラメータβｍｏｄｉｆ及びｔｃ  ｍｏｄｉｆをデブロッキングフィルタに出力する。再計算モジュール１００３は、ＲＯＭ１００１に記憶されているパラメータ値を調整する特別なハードウェアモジュールによって実装することができる。
【０１２０】
適応デブロッキングフィルタ実装形態の代替実装形態が、図１８に提示されている。デブロッキングの意思決定は、フィルタリングモードを定義する制御オートマトンによって実行される。オペレーショナルオートマトンは、制御オートマトンによって与えられるフィルタリングモードに従って入力バッファのサンプルをフィルタリングする。制御及びオペレーショナルオートマタは入力バッファの異なるサンプルを使用することができることに注目すべきである。
【０１２１】
参照サンプルデブロッキングは、インループデブロッキングプロセスの修正として実装することができる。詳細には、以下の修正を導入することができる。
・制御オートマトンのパラメータ、例えば、上述のようなデブロッキングパラメータβ及びｔｃ、
・制御オートマトン論理、すなわち、オペレーショナルオートマトン制御の手順、
・オペレーショナルオートマトン論理、すなわち、サンプル処理の手順、
・上述で列記された修正のすべて。
【０１２２】
一般に、参照サンプルの個別のサブセットの事前予測フィルタリングのハードウェア実装は、反復する（例えば、図７及び図８に示されているように）か、又は以下の図１１に例示されるように並列とすることができる。しかしながら、図１１に示したようにマルチスレッドを使用する事前予測フィルタリングの並列化は、非重複サブセットの処理に対してのみ可能とすることができる。本質的に、並行処理では、参照サンプルの異なるサブセットが最初に選択される１１０１。その後、参照サンプルの各サブセットは、専用ハードウェアにおいて他のサブセットと並行して処理され得る。この処理は、どの処理手順１１０３をサブセットのサンプルに適用すべきかを規定するサブセットクラス分け１１０２と、所与のサブセットの参照サンプルの後続の処理／フィルタリング１１０３とを含むことができる。
【０１２３】
事前予測フィルタリングの効率的なハードウェア実装を達成する別の選択肢は、パイプライン方式であり、サブセットクラス分け及び参照サンプル処理ステップが、別個のハードウェアモジュールにより処理され得る。しかしながら、最も好適な実装方策の選択は、ハードウェアプラットフォームとクラス分け及び処理動作の複雑さとに依存する。
【０１２４】
上述の実施形態は、１次元参照サンプルの使用によるイントラ予測に集中していた。しかしながら、参照サンプルクラス分け及び事前予測フィルタリングの上述の概念は、例えば動き予測（インター予測）に関しては、２次元の場合に一般化することができる。動き予測は、予測されているブロックに対して参照画素の区域を割り当てる。この区域は、２次元アレイ、すなわち、再構築される画素値のマトリクスである。これらの値は、それが１次元の場合について説明されたものと同様の量子化雑音問題を有する。量子化雑音は、参照区域の内部で違うように分布し得る。この差は、符号器／復号器サイドにおいて、例えば、図１２に示すようなクワッドツリーにより得られた区画に残差信号が存在する状態でデータを使用して参照画素をクラス分けすることによって推定することができる。
【０１２５】
しかしながら、さらに、参照サンプルクラス分けの他の方法を、２次元参照画素マトリクスのために定義することができる。別の例示的な実装形態では、サブセットへの参照サンプルのクラス分けは、さらに、インター予測に先立ってコンテンツ適応参照画素処理の機構を可能にするエッジ検出技法に基づくことができる。エッジ検出技法は、例えば、Ｃａｎｎｙエッジ検出器、Ｈｏｕｇｈ変換、Ｓｏｂｅｌ及びＰｒｅｗｉｔｔフィルタリングを使用することができる。そのような実施形態の例示的な流れ図が図１３に示されている。
【０１２６】
図１３において、参照サンプル画素は、１３０１において、エッジ検出プロセスによりクラス分けされる。そのようなクラス分けを実行する可能な方法のうちの１つは、局所勾配値を計算し、それに量子化を適用することである。各参照画素は、局所勾配の対応する量子化値に関連付けられることになり、したがって、この量子化値に従ってすべての画素をクラスにセグメント化することが可能となることになる。すべての参照画素クラスは、それ自体の組のパラメータ、例えば、フィルタリング強度、ぼかし強度、フィルタリングの方向などを使用して処理することができる。これらのパラメータの選択１３０２は、クラスの各々について別々に推定された統計量を使用して局所的に実行することができる。参照サンプル処理ステップは並列に実行できることに注目されたい。処理ブランチ１３０３の各々は、そのクラスに関連付けられており、したがって、前のステップにおいて得られたそれ自体の組のパラメータを使用すべきである。
【０１２７】
図１２及び図１３のコンテンツ適応処理は、さらに、例えば複数参照インター予測（例えば、双予測）によって使用されるような３次元参照画素アレイに一般化することができる。図１４は、このタイプのインター予測の一例を示している。予測されるブロックは、いくつかの参照ピクチャに属するいくつかの参照区域によって決まる。双予測プロセスを例示する流れ図が、図１５に示されている。参照区域は、３次元アレイに積層され、１５０１において、コンテンツ適応参照画素フィルタリングを使用して処理される。この操作は、図１３において提示したものと同じステップを有する。しかしながら、エッジ検出及び参照サンプル処理は、この場合、３次元アレイに対して実行される。参照サンプルのクラスを表す画素の組は、同様に３次元を有する。
【０１２８】
次のステップは、予測されているブロックの予測サンプルを計算することである。このタスクは、平均化の段階１５０２で実行される。予測されるサンプルの各々は、フィルタリングされた３次元アレイの対応するサンプルの加重和として定義することができる。
【０１２９】
本発明の別の実施形態は、ＭＣＴＦベースインターフレームコーディングに関する。上述した及び図１８におけるこのリフティング手順は、ピラミッド表示を達成できるように反復して適用することができる。参照サンプルの事前予測フィルタリングは、反復の間のＭＣＴＦフレームワークにおいて使用することができ、その結果、α及びβは、クラス分けの結果に従って調整することができる。図１３において説明したステップを使用して、所与の反復で計算されたＨ又はＬ値から構成された３次元画素アレイに対するクラスを得ることができる。しかしながら、この場合の参照サンプル処理ステップは、次の代替プロセスのうちの１つとして説明することができる。
−  α及びβの調整、
−  それらが次のリフティング反復に渡されるより前でのＬ値のフィルタリング。
【０１３０】
図１６は、本発明の例示的な実施形態による符号化装置の例示の実施形態の簡単化したブロック図を示している。
【０１３１】
ソースフレーム１６０１は、ＲＤＯ手順１６０２内でクワッドツリーに分割される。この手順は、レート歪みコスト（ＲＤコスト）に従って最良予測モード及びブロックのサイズを選択する。コストは、歪みの合計及び重み付けレートとして計算される。この手順は、残差信号の順方向周波数変換と、変換された残差信号のＲＤ最適化量子化１６０３とを含む。変換係数の量子化値を計算する場合、参照サンプル適応フィルタ（ＲＳＡＦ）１６０８によってさらに使用されることになるフィルタフラグを暗黙的に信号で送ることが可能である。
【０１３２】
１組のクワッドツリーへのソースフレーム１６０１の区画化は、ＬＣＵ区画化バッファ１６０４に記憶され、その結果、以前に符号化されたクワッドツリーの構成を回復することが可能である。
【０１３３】
モジュール１６０２によって作り出された量子化係数は、コンテキスト適応二進算術コーダ（ＣＡＢＡＣ）１６０５によって処理され、出力ビットストリームに書き込まれる。この操作の他に、量子化係数は逆量子化器１６０６に渡され、逆量子化器１６０６は、さらになる逆変換１６０７のために変換係数を準備する。逆変換は回復された残差信号を生成し、回復された残差信号には、空間ドメインにおいて加算器１６１１によって予測信号がさらに加算される。
【０１３４】
予測信号は、イントラ予測１６０９又はインター予測１６１０のいずれかによって生成することができる。イントラ予測１６０９は、予測信号を生成するために参照サンプルバッファ１６１２に記憶されている参照サンプルを使用する。インター予測１６１０は、予測信号生成のために復号ピクチャバッファ１６１８に記憶されている参照サンプルを使用する。
【０１３５】
図１に示したモード及びサイズ依存フィルタリングステップ１０１は、モード及びサイズデータがモジュール１６０２からＲＳＡＦ１６０８に渡されることを必要とする。ＬＣＵ区画化バッファ１６０４に記憶されているクワッドツリー区画化データが、さらに、ＲＳＡＦ１６０８によって使用されて、図１のステップ１０２が実行される。図１６から、ＲＳＡＦ１６０８は、参照サンプルバッファ１６１２を参照サンプルデブロッキングフィルタ１６１４と共有することにも気づくことができる。ＲＳＡＦ１６０８及びＲＳＤＦ１６１４による参照サンプルバッファ１６１２の共同使用の詳細は、ステップ１０３についての図１の説明に与えられている。ＲＳＤＦモジュールは、インループデブロッキングフィルタ１６１３と同じハードウェア１６１５を使用して実行することができる。しかしながら、ＲＳＤＦ１６１４は、なお、別個のモジュールとすることができる。インループデブロッキングフィルタ１６１５は、量子化１６０３によって導入されたブロッキングアーチファクトを低減する。デブロックされたピクチャは、非線形サンプル適応オフセット（ＳＡＯ）１６１６によってさらに処理される。しかしながら、ＳＡＯ１６１６の適用は必須ではない。
【０１３６】
結果として生じるピクチャ１６１７は、符号器から出力することができ、符号器によって作り出されたビットストリームから復号器によって作り出されるものと一致するはずである。この出力ピクチャは、復号ピクチャバッファ１６１８に記憶することができ、その結果、インター予測モジュール１６１０はそれを動き補償のために使用することができる。
【０１３７】
図１７は、本発明の例示的な実施形態による復号装置の例示の実施形態の簡単化されたブロック図を示している。符号化入力ビットストリーム１７０１は、エントロピ復号器１７０２によって処理される。復号値のうちのいくつかは量子化変換係数に対応する。これらの値は、逆量子化器１７０３によってさらに処理される。このプロセスの結果は、逆変換プロセス１７０５に好適である係数の値である。
【０１３８】
入力ビットストリームからエントロピ復号器によって回復された他の値を使用して、クワッドツリー区画化を回復することができる。回復されたクワッドツリーデータは、ＬＣＵ区画化バッファ１７０４にさらに書き込まれる。
【０１３９】
復号装置の構造と、復号装置が実行する処理ステップとは、符号器サイドについて上述したものと同じである（図１６を参照）。復号プロセスの出力は、再構築されたピクチャ１７０９であり、それは、復号される入力ビットストリーム１７０１が符号化プロセスの間に生成された場合、この符号化プロセスの間に得られ得るもの（図１６において１６１７として表された）と同じはずである。
【０１４０】
いくつかの態様が方法との関連で説明されたが、これらの態様は、そのような方法を実行するように適切に適合された対応する装置の説明をさらに表していることは明らかである。そのような装置において、（機能的又は有形的）ブロックは、１つ又は複数の方法ステップ又は方法ステップの特徴に対応することができる。同じように、対応する装置の対応するブロック又は項目又は特徴との関連で説明された態様は、さらに、対応する方法の個々の方法ステップに対応することができる。
【０１４１】
その上、本明細書で説明する方法は、さらに、プロセッサ、マイクロプロセッサ、プログラマブルコンピュータ、又は電子回路のようなハードウェア装置によって（又はハードウェア装置を使用して）実行することができる。最も重要な方法ステップのうちの１つ又は複数が、そのような装置によって実行され得る。装置が、機能ブロックに関して本明細書で説明されている場合、装置のそれらの要素は、ハードウェア要素／回路で完全に又は部分的に実装され得ることをさらに理解されるべきである。プロセッサ又はマイクロプロセッサなどのような個々のハードウェアを使用して、装置の１つ又は複数の要素の機能を実現することができる。
【０１４２】
加えて、情報又はデータが、ハードウェアにおける装置の機能要素の方法ステップを実装するプロセスにおいて記憶されるべきである場合、装置は、装置の１つ又は複数のハードウェア要素／回路に通信可能に結合され得るメモリ又は記憶媒体を含むことができる。
【０１４３】
ハードウェアで、又はソフトウェアで、又はそれらの組合せで本発明の態様を実装することも企図される。これは、それぞれの方法が実行されるようなプログラマブルコンピュータシステムと協働する（又は協働することができる）電子的に可読な制御信号又は命令を記憶したデジタル記憶媒体、例えば、フロッピーディスク、ＤＶＤ、ブルーレイ、ＣＤ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、又はＦＬＡＳＨメモリを使用することとすることができる。本明細書で説明した方法が実行されるようにプログラマブルコンピュータシステムと協働することができる電子的に可読な制御信号又は命令を有するデータ担体を備えることができる。
【０１４４】
さらに、プログラムコードをもつコンピュータプログラム製品の形態で本発明の態様を実装することが企図され、プログラムコードは、コンピュータプログラム製品がコンピュータ上で動作するときに方法を実行するように動作可能である。プログラムコードは、機械可読担体に記憶され得る。
【０１４５】
上述は例証にすぎず、本明細書で説明した構成及び詳細の修正及び変形は当業者には明らかであることを理解されよう。それゆえに、趣旨は、上述の記載及び説明によって提示された特定の詳細によってではなく間近に迫った特許請求の範囲によってのみ限定される。
【図１】
0006324510.tif 000011
【図２】
0006324510.tif 000012
【図３】
0006324510.tif 000013
【図４】
0006324510.tif 000014
【図５】
0006324510.tif 000015
【図６】
0006324510.tif 000016
【図７】
0006324510.tif 000017
【図８】
0006324510.tif 000018
【図９】
0006324510.tif 000019
【図１０】
0006324510.tif 000020
【図１１】
0006324510.tif 000021
【図１２】
0006324510.tif 000022
【図１３】
0006324510.tif 000023
【図１４】
0006324510.tif 000024
【図１５】
0006324510.tif 000025
【図１６】
0006324510.tif 000026
【図１７】
0006324510.tif 000027
【図１８】
0006324510.tif 000028
【図１９】
0006324510.tif 000029