(57)【要約】  ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタの連続制御を与えるための技法が記載される。デブロッキングフィルタが、１つまたは複数のデブロッキング判断に基づいて定義される。従来、量子化パラメータおよびベータオフセットパラメータが、デブロッキング判断のしきい値を求めるベータパラメータ（β）値を特定するために用いられてきた。ベータオフセットパラメータの値は、結果として、β値の変化または増分をもたらす。β値の小さな増分について、しきい値を丸める結果として、変化が生じず、デブロッキング判断の不連続制御を生じる場合がある。この技法は、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従ってデブロッキングフィルタのための少なくとも１つのデブロッキング判断を計算することを含む。ベータオフセットパラメータに適用される乗数値は、変更されたしきい値の整数を変化させる。
2015516764.tif 000002
【特許請求の範囲】
【請求項１】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を復号することと、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算すること、ここにおいて、前記しきい値は、前記変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される、と、
を備える、ビデオデータを復号する方法。
【請求項２】
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項１に記載の方法。
【請求項３】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することとをさらに備える、請求項２に記載の方法。
【請求項４】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項２に記載の方法。
【請求項５】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項２に記載の方法。
【請求項６】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項２に記載の方法。
【請求項７】
前記デブロッキング判断の前記変更されたしきい値を求めることをさらに含み、前記求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、とを含む、請求項１に記載の方法。
【請求項８】
前記インデックスパラメータを計算することは、前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々のために別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、請求項７に記載の方法。
【請求項９】
前記インデックスパラメータを計算することは、前記デブロッキング判断のための最も小さい元のしきい値に従って選択された前記ベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、請求項７に記載の方法。
【請求項１０】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項７に記載の方法。
【請求項１１】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項７に記載の方法。
【請求項１２】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項７に記載の方法。
【請求項１３】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、請求項７に記載の方法。
【請求項１４】
前記ベータオフセットパラメータを復号することは、前記ベータオフセットパラメータを求めるために、ビデオエンコーダから受信された構文要素を復号することを備える、請求項１に記載の方法。
【請求項１５】
ディスプレイデバイス上に提示すること、またはリファレンスブロックとして使用することのうちの少なくとも一方のために、前記少なくとも１つのデブロッキング判断に従って定義された前記デブロッキングフィルタを、前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、請求項１に記載の方法。
【請求項１６】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を符号化することと、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算すること、ここにおいて、前記しきい値は、前記変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される、と、
を備える、ビデオデータを符号化する方法。
【請求項１７】
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項１６に記載の方法。
【請求項１８】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することと、
をさらに備える、請求項１７に記載の方法。
【請求項１９】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項１７に記載の方法。
【請求項２０】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項１７に記載の方法。
【請求項２１】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項１７に記載の方法。
【請求項２２】
前記デブロッキング判断の前記変更されたしきい値を求めることをさらに含み、前記求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、請求項１６に記載の方法。
【請求項２３】
前記インデックスパラメータを計算することは、前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々について別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、請求項２２に記載の方法。
【請求項２４】
前記インデックスパラメータを計算することは、前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、請求項２２に記載の方法。
【請求項２５】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項２２に記載の方法。
【請求項２６】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項２２に記載の方法。
【請求項２７】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項２２に記載の方法。
【請求項２８】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータの場合に４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、請求項２２に記載の方法。
【請求項２９】
前記ベータオフセットパラメータを符号化することは、前記ベータオフセットパラメータをビデオデコーダに指示するために構文要素を符号化することを備える、請求項１６に記載の方法。
【請求項３０】
リファレンスブロックとして使用するために前記少なくとも１つのデブロッキング判断に従って定義された前記デブロッキングフィルタを前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、請求項１６に記載の方法。
【請求項３１】
ビデオデータを記憶するメモリと、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングし、前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定し、変更されたしきい値の整数を変化させる前記ベータオフセットパラメータの乗数値に基づいて前記変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算するように構成されるプロセッサと、
を備える、ビデオコーディングデバイス。
【請求項３２】
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項３１に記載のビデオコーディングデバイス。
【請求項３３】
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算し、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するように構成される、請求項３２に記載のビデオコーディングデバイス。
【請求項３４】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３５】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３６】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３７】
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、前記デブロッキング判断の前記変更されたしきい値を求めることのために構成される、請求項３１に記載の方法。
【請求項３８】
前記プロセッサは、
前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々に別々のインデックスパラメータを計算し、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するように構成される、請求項３７に記載のビデオコーディングデバイス。
【請求項３９】
前記プロセッサは、
前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算し、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するように構成される、請求項３７に記載のビデオコーディングデバイス。
【請求項４０】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４１】
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて場合に４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４２】
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４３】
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４４】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングするための手段と、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定するための手段と、
変更されたしきい値の整数を変化させる前記ベータオフセットパラメータの乗数値に基づいて変更された前記しきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算するための手段と、
を備える、ビデオコーディングデバイス。
【請求項４５】
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項４４に記載のビデオコーディングデバイス。
【請求項４６】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算するための手段と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段と、
をさらに備える、請求項４５に記載のビデオコーディングデバイス。
【請求項４７】
前記デブロッキング判断の前記変更されたしきい値を求めるための手段をさらに備え、前記求めるための手段は、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算するための手段、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、請求項４４に記載のビデオコーディングデバイス。
【請求項４８】
前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々に別々のインデックスパラメータを計算するための手段と、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するための手段と、
をさらに備える、請求項４７に記載のビデオコーディングデバイス。
【請求項４９】
前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算するための手段と、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するための手段と、
をさらに備える、請求項４７に記載のビデオコーディングデバイス。
【請求項５０】
実行されるとき、１つまたは複数のプロセッサに、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングさせ、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定させ、
変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更された前記しきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算させる、
ビデオデータをコーディングするための命令を備えるコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、２０１２年４月１３日に出願された米国仮出願第６１／６２４，０８８号の恩典を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関し、より詳細には、ビデオデータをデブロックすることに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、またはＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）によって定義された規格、現在開発中のＨｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）規格、およびそのような規格の拡張に記載されているビデオ圧縮技法のような、ビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライスが、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに分割され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中のリファレンスサンプルに対する空間的予測を使用して符号化される。ピクチャのインターコーディングされた（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の近隣ブロック中のリファレンスサンプルに対する空間的予測、または他のリファレンスピクチャ中のリファレンスサンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、リファレンスピクチャはリファレンスフレームと呼ばれることがある。
【０００５】
[0005]空間的または時間的予測の結果として、コーディングされるべきブロックのための予測ブロックがもたらされる。残差データは、コーディングされるべき元のブロックと、予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成するリファレンスサンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、予測ブロックがどのように作成されるかを定義するイントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて残差変換係数をもたらすことができ、その残差変換係数は、次いで量子化することができる。量子化変換係数は、最初に２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査することができ、なお一層の圧縮を達成するためにエントロピーコーディングを適用することができる。
【発明の概要】
【０００６】
[0006]包括的には、本開示は、ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタ（deblocking filter）の連続制御を提供するための技法を記載する。デブロッキングフィルタは、１つまたは複数のデブロッキング判断（deblocking decision）に基づいて定義される。従来、デブロッキング判断のしきい値、たとえば、β、β／８または３β／１６を決定するベータパラメータ（「β」）値を決定するために、量子化パラメータ（「ＱＰ」）およびベータオフセットパラメータが用いられてきた。ベータオフセットパラメータの値は、結果として、ＱＰ値だけの場合のβの値からのベータパラメータ値の変化、または増分（「Δβ」）をもたらす。ベータオフセットパラメータが結果としてベータパラメータ値の小さな増分（たとえば、Δβ＝４）をもたらすとき、しきい値を丸める結果として、しきい値のうちの少なくともいくつかへの変化が生じなくなり、それぞれのデブロッキング判断の制御が不連続になる場合がある。
【０００７】
[0007]本開示の技法は、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従って、デブロッキングフィルタのための少なくとも１つのデブロッキング判断を計算することを含む。その技法によれば、ベータオフセットパラメータに適用される乗数値は、変更されたしきい値の整数を変化させる。一例では、しきい値は、ベータオフセットパラメータの乗数値を元のしきい値に加えることによって直接変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。別の例では、しきい値は、ベータオフセットパラメータ乗数値に基づいてβ値を特定することによって間接的に変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させるΔβを結果として生成する。このようにして、本技法は、ベータオフセットパラメータに基づいてデブロッキングフィルタの連続制御の動きを与える。
【０００８】
[0008]一例では、本開示は、ビデオデータを復号する方法に向けられ、その方法は、ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータを復号することと、デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ値を特定することと、変更されたしきい値に従ってデブロッキングフィルタのためのデブロッキング判断を計算することとを備え、しきい値は、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される。
【０００９】
[0009]別の例では、本開示はビデオデータを符号化する方法に向けられ、その方法は、ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータを符号化することと、デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ値を特定することと、変更されたしきい値に従ってデブロッキングフィルタのためのデブロッキング判断を計算することとを備え、しきい値は、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される。
【００１０】
[0010]さらなる例では、本開示は、ビデオデータを記憶するメモリと、ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータをコーディングし、デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ値を特定し、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従ってデブロッキングフィルタのためのデブロッキング判断を計算するように構成されるプロセッサとを備える、ビデオコーディングデバイスに向けられる。
【００１１】
[0011]別の例では、本開示は、ビデオコーディングデバイスに向けられ、そのビデオコーディングデバイスは、ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータをコーディングするための手段と、デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ値を特定するための手段と、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従ってデブロッキングフィルタのためのデブロッキング判断を計算するための手段とを備える。
【００１２】
[0012]さらなる例では、本開示は、ビデオデータをコーディングするための命令を備えるコンピュータ可読媒体に向けられ、その命令は、実行されるとき、１つまたは複数のプロセッサに、ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータをコーディングさせ、デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ値を特定させ、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従ってデブロッキングフィルタのためのデブロッキング判断を計算させる。
【００１３】
[0013]１つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面から、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１４】
【図１】[0014]本開示で説明される技法を利用して、ベータオフセットパラメータを用いてデブロッキングフィルタの連続制御を与えることができる例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0015]本開示において記述される技法を実施して、デブロッキング判断のしきい値を変更するベータオフセットパラメータの乗数値に基づいてデブロッキングフィルタを制御することができるビデオエンコーダの一例を示すブロック図。
【図３】[0016]本開示において記述される技法を実施して、デブロッキング判断のしきい値を変更するベータオフセットパラメータの乗数値に基づいてデブロッキングフィルタを制御することができるビデオデコーダの一例を示すブロック図。
【図４】[0017]一例のデブロッキングフィルタの構成要素を示すブロック図。
【図５】[0018]２つのビデオブロック間のエッジ付近のピクセル位置を示す概念図。
【図６】[0019]本開示において記述される技法の一例による、ベータオフセットパラメータの乗数値に基づいて直接変更されたしきい値に従ってビデオブロックのためのデブロッキングフィルタのためのデブロッキング判断を計算する一例の動作を示す流れ図。
【図７】[0020]図６に示される動作において変更されたしきい値に従ってデブロッキングフィルタのための異なるデブロッキング判断を計算する一例を示す流れ図。
【図８】[0021]本発明において記述される技法の一例による、ベータオフセットパラメータの乗数値に基づいて間接的に変更されたしきい値に従ってビデオブロックのためのデブロッキングフィルタのためのデブロッキング判断を計算する一例の動作を示す流れ図。
【図９】[0022]本発明において記述される技法の一例による、ベータオフセットパラメータの乗数値に基づいて間接的に変更されたしきい値に基づいてビデオブロックのためのデブロッキングフィルタのための異なるデブロッキング判断を計算する一例の動作を示す流れ図。
【詳細な説明】
【００１５】
[0023]本開示は、ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタの連続制御を与えるための技法を記載する。高効率ビデオコーディング（ＨＥＶＣ）規格において、デブロッキングフィルタは、適用されるとき、復号されたビデオブロックのエッジからブロッキネスアーティファクト（blockiness artifacts）を除去する。所与のビデオブロックのためのデブロッキングフィルタは、そのビデオブロックのための１つまたは複数のデブロッキング判断からの結果に基づいて定義される。デブロッキング判断は、デブロッキングパラメータ値βに基づくしきい値に従って計算され、デブロッキングフィルタの強度が、デブロッキングパラメータ値ｔCに従って求められる。ビデオブロックの符号化と復号の両方に、同じデブロッキングフィルタが用いられるのを確実にするために、デブロッキングパラメータ値を特定するのに、デブロッキングオフセットパラメータがビットストリーム内の構文要素（syntax element）としてビデオデコーダにシグナリングされる。このようにして、ビデオブロックのためのデブロッキングフィルタは、シグナリングされたデブロッキングオフセットパラメータに基づいて制御される。デブロッキングオフセットパラメータは、スライスヘッダおよびピクチャレイヤパラメータセットのうちの１つまたは複数においてシグナリングされ得る。ピクチャレイヤパラメータセットは、ピクチャパラメータセット（ＰＰＳ）か適応パラメータセット（ＡＰＳ）のいずれかを備えることができる。
【００１６】
[0024]従来、ベータパラメータ（「β」）値のためのインデックスパラメータを計算するために、量子化パラメータ（「ＱＰ」）値およびベータオフセットパラメータ（「ｂｅｔａ＿ｏｆｆｓｅｔ」）が用いられてきた。デブロッキング判断のしきい値を決定するβ値を特定するために、インデックスパラメータが用いられる。たとえば、ビデオブロックのためのデブロッキング判断は、元のしきい値がβに等しいオン／オフデブロッキング判断、元のしきい値がβ／８に等しい強／弱デブロッキング判断、および元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちの１つまたは複数を含むことができる。ベータオフセットパラメータの値は、結果として、ＱＰ値だけの場合のβ値からのベータパラメータ値の変化または増分（「Δβ」）をもたらす。ベータオフセットパラメータが、結果として、ベータパラメータ値がわずかな増分（たとえば、Δβ＝４）をもたらすとき、しきい値β／８および３β／１６を丸める結果として、初期β値によっては、しきい値に対する変化は生じず、それぞれのデブロッキング判断に不連続な制御をもたらす場合がある。
【００１７】
[0025]本開示の技法は、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従って、デブロッキングフィルタのための少なくとも１つのデブロッキング判断を計算することを含む。その技法によれば、ベータオフセットパラメータに適用される乗数値は、ベータオフセットパラメータの任意の値、そして結果として生成されたΔβの場合に、変更されたしきい値の整数を変化させるように選択される。乗数値は１以上の整数値を備える。場合によっては、デブロッキング判断の各々に異なる乗数値が選択される場合もある。場合によっては、デブロッキング判断のうちの２つ以上に対して単一の乗数値が選択される場合もある。
【００１８】
[0026]一例では、しきい値は、ベータオフセットパラメータの乗数値を元のしきい値に加えることによって直接変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。この場合、量子化パラメータだけに基づくインデックスパラメータを用いて、デブロッキングフィルタのすべてのデブロッキング判断に対して１つのβ値が特定され得る。変更されたしきい値は、オン／オフデブロッキング判断の場合にβ＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに、強／弱デブロッキング判断の場合にβ／８＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに、弱フィルタ幅デブロッキング判断の場合に３β／１６＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しくすることができ、ただし、Ａ、ＢおよびＣはデブロッキング判断ごとの乗数値である。
【００１９】
[0027]別の例では、しきい値は、ＱＰ値およびベータオフセットパラメータの乗数値に基づくインデックスパラメータを用いてβ値を特定することによって、間接的に変更され得る。場合によっては、ベータオフセットパラメータの乗数値は、ベータオフセット制御値と呼ばれる場合もある。その技法によれば、ベータオフセット制御値は、変更されたしきい値において整数を変化させるΔβを結果として生じるように選択された乗数値を含む。β値を特定するために用いられたインデックスパラメータ（「Ｑ」）はＱＰ＋Ｎ＊β＿ｏｆｆｓｅｔに等しくすることができ、ただし、Ｎはデブロッキング判断のうちの１つまたは複数のための乗数値である。インデックスパラメータＱが２７より大きいとき、正のβ＿ｏｆｆｓｅｔ値の場合に、ベータパラメータ値はΔβ＝２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔである。変更されたしきい値は、β＋Δβを用いて求められたデブロッキング判断のための元のしきい値に等しい。上記の例のいずれにおいても、それらの技法は、ベータオフセットパラメータに基づいてデブロッキングフィルタの連続制御の動きを与える。
【００２０】
[0028]図１は、本開示で説明される技法を利用して、ベータオフセットパラメータを用いてデブロッキングフィルタの連続制御を与えることができる例示的なビデオ符号化および復号システムを示すブロック図である。本開示の技法によれば、しきい値は、変更されたしきい値において整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される。
【００２１】
[0029]図１に示されるように、システム１０は、宛先デバイス１４によって後の時点で復号されることになる符号化されたビデオデータを生成する発信元デバイス１２を含む。発信元デバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備えることができる。場合によっては、発信元デバイス１２および宛先デバイス１４は、ワイヤレス通信に対応することができる。
【００２２】
[0030]宛先デバイス１４は、リンク１６を介して、復号されることになる符号化されたビデオデータを受信することができる。リンク１６は、発信元デバイス１２から宛先デバイス１４に符号化されたビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備えることができる。一例では、リンク１６は、発信元デバイス１２が、符号化されたビデオデータをリアルタイムに宛先デバイス１４に直接送信できるようにする通信媒体を備えることができる。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路などの、任意のワイヤレスまたは有線通信媒体を備えることができる。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースネットワークの一部を形成することができる。通信媒体は、発信元デバイス１２から宛先デバイス１４への通信を容易にするために有用な場合があるルータ、スイッチ、基地局、または任意の他の機器を含むことができる。
【００２３】
[0031]別の例では、リンク１６は、発信元デバイス１２によって生成された符号化されたビデオデータを記憶することができ、宛先デバイス１４が必要に応じてディスクアクセスまたはカードアクセスを介してアクセスできる記憶媒体に対応することができる。記憶媒体は、様々なローカルにアクセスされるデータ記憶媒体、たとえばブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、または符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体のうちのいずれかを含むことができる。さらなる一例では、リンク１６は、発信元デバイス１２によって生成された符号化されたビデオを保持することができ、宛先デバイス１４が必要に応じてストリーミングまたはダウンロードを介してアクセスできる、ファイルサーバまたは別の介在する記憶デバイスに対応することができる。ファイルサーバは、符号化されたビデオデータを記憶することができ、ビデオデータを宛先デバイス１４に送信することができる任意のタイプのサーバとすることができる。例示的なファイルサーバは、ウェブサーバ（たとえば、ウェブサイト用）、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブを含む。宛先デバイス１４は、インターネット接続を含む、任意の標準的なデータ接続を通して符号化されたビデオデータにアクセスすることができる。これは、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに適しているワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含むことができる。ファイルサーバからの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはその両方の組合せとすることができる。
【００２４】
[0032]本開示の技法は、必ずしもワイヤレスの応用形態または設定に限定されるとは限らない。本技法は、無線によるテレビ放送、ケーブルテレビ送信、衛星テレビ送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の応用形態など、様々なマルチメディアの応用形態のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはテレビ電話などの応用形態をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２５】
[0033]図１の例では、発信元デバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含むことができる。発信元デバイス１２において、ビデオソース１８は、たとえばビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／もしくはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、またはそのようなソースの組合せを含むことができる。一例として、ビデオソース１８がビデオカメラである場合、発信元デバイス１２および宛先デバイス１４は、いわゆるカメラ付き携帯電話またはテレビ電話を形成することができる。しかしながら、本開示において記述される技法は、概してビデオコーディングに適用可能な場合があり、ワイヤレスおよび／または有線の応用形態に適用され得る。
【００２６】
[0034]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化されたビデオデータは、発信元デバイス１２の出力インターフェース２２を介して宛先デバイス１４に直接送信され得る。また、符号化されたビデオデータは、復号および／または再生のために、宛先デバイス１４によって後でアクセスするために、記憶媒体またはファイルサーバ上に記憶され得る。
【００２７】
[0035]宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。場合によっては、入力インターフェース２８は、受信機および／またはモデムを含むことができる。宛先デバイス１４の入力インターフェース２８は、リンク１６を介して符号化されたビデオデータを受信する。リンク１６を介して通信されるか、またはデータ記憶媒体上で提供される符号化されたビデオデータは、ビデオデータを復号する際に、たとえばビデオデコーダ３０などのビデオデコーダによって使用するために、ビデオエンコーダ２０によって生成される様々な構文要素を含むことができる。そのような構文要素は、通信媒体によって送信されるか、記憶媒体上に記憶されるか、またはファイルサーバに記憶される符号化されたビデオデータとともに含まれ得る。
【００２８】
[0036]ディスプレイデバイス３２は、宛先デバイス１４と一体化され得るか、またはその外部に存在することができる。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスとすることができる。概して、ディスプレイデバイス３２は、復号されたビデオデータをユーザに対して表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備えることができる。
【００２９】
[0037]ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオ圧縮規格に従って動作することができ、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）に準拠することができる。代替的には、ビデオエンコーダ２０およびビデオデコーダ３０は、代わりにＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４標準規格などの、他のプロプライエタリ規格もしくは業界規格、またはそのような規格の拡張に従って動作することができる。しかしながら、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３を含む。
【００３０】
[0038]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびデコーダと統合される場合があり、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するのに適したＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含むことができる。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠することができる。
【００３１】
[0039]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリートロジック、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなど、様々な適切なエンコーダ回路のいずれかとして実現され得る。本技法が部分的にソフトウェアで実現されるとき、デバイスは、適切な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してハードウェアにおいてその命令を実行して、本開示の技法を実行することができる。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれる場合があり、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合される場合がある。
【００３２】
[0040]ビデオコーディング共同研究部会（ＪＣＴ−ＶＣ：Joint Collaborative Team on Video Coding）はＨＥＶＣ規格の開発に取り組んでいる。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３３個ものイントラ予測符号化モードを提供することができる。
【００３３】
[0041]概して、ＨＭのワーキングモデルは、ビデオフレームまたはピクチャが１つまたは複数のスライスに分割される場合があり、各スライスがコーディング順に一連のコーディングツリーユニット（ＣＴＵ）または最大コーディングユニット（ＬＣＵ）に分割される場合があることを記述する。ＣＴＵは、輝度（luma）サンプルと彩度（chroma）サンプルの両方を含み、Ｈ．２６４規格のマクロブロックと類似の目的を有する。たとえば、各ＣＴＵは、１つの輝度コーディングツリーブロック（ＣＴＢ）と、２つの彩度ＣＴＢとを含むことができる。各ＣＴＵはコーディングユニット（ＣＵ）に分割される場合があり、各ＣＴＢはクワッドツリーに従ってコーディングブロックに分割される場合がある。たとえば、クワッドツリーのルートノードとしてのＣＴＢは、４つの子ノードに分割される場合があり、各子ノードは、次に親ノードとなる場合があり、別の４つの子ノードに分割される場合がある。クワッドツリーのリーフノードとしての、最終的な、分割されない子ノードは、コーディングブロックを備える。コーディングされたビットストリームに関連付けられる構文データは、ＣＴＢが分割される場合がある最大回数を定義することができ、コーディングブロックの最小サイズをも定義することができる。この構文データは、ＣＴＢのＣＴＵに含まれる場合がある。
【００３４】
[0042]ＣＵは、１つの輝度コーディングブロックおよび２つの彩度コーディングブロックを含むことができる。ＣＵは、関連付けられる予測ユニット（ＰＵ）および変換ユニット（ＴＵ）を有することができる。各ＰＵは、１つの輝度予測ブロックおよび２つの彩度予測ブロックを含むことができ、かつ各ＴＵは１つの輝度変換ブロックおよび２つの彩度変換ブロックを含むことができる。各コーディングブロックは、同じ予測が当てはまるサンプルに対するブロックを備える１つまたは複数の予測ブロックに分割される場合がある。また、各コーディングブロックは、同じ変換が適用されるサンプルのブロックを備える１つまたは複数の変換ブロックに分割される場合もある。
【００３５】
[0043]ＣＵのサイズはコーディングブロックのサイズに対応する。ＣＵのサイズは、８×８ピクセルから最大６４×６４ピクセル以上のサイズまでに及ぶことができる。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを定義することができる。ＣＵに含まれる構文データは、たとえば、コーディングブロックを１つまたは複数の予測ブロックに分割することを記述することができる。分割モードは、ＣＵが、スキップモード符号化もしくはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかによって異なる場合がある。予測ブロックは、形状が方形または非方形になるように分割され得る。ＣＵに含まれる構文データは、たとえば、クワッドツリーに従って、コーディングブロックを１つまたは複数の変換ブロックに分割することも記述することができる。変換ブロックは、形状が方形または非方形になるように分割され得る。
【００３６】
[0044]概して、ＰＵは、予測プロセスに関連するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵは、ＰＵのイントラ予測モードを記述するデータを含むことができる。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、予測ブロックと、ＰＵ内の予測ブロックのための動きベクトルを定義するデータとを含むことができる。ＰＵのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指すリファレンスピクチャ、および／または動きベクトルのためのリファレンスピクチャリスト（たとえば、リスト０またはリスト１）を記述することができる。
【００３７】
[0045]概して、ＴＵは、変換プロセスおよび量子化プロセスのために使用される。予測後に、ビデオエンコーダ２０は、ＰＵ内に含まれる予測ブロックに対応する残差値を計算することができる。残差値は、エントロピーコーディングのためのシリアル化変換係数（serialized transform coefficient）を生成するために、変換係数に変換され、量子化され、ＴＵ内に含まれる変換ブロックとして走査され得るピクセル差分値を備える。本開示は通常、ＣＵのコーディングノード、ＰＵの予測ノード、またはＴＵの変換ノードを指すために「ビデオブロック」という用語を使用する。いくつかの特定の場合において、本開示は、ＣＴＵ、ＣＵ、ＰＵまたはＴＵを指すために「ビデオブロック」という用語を使用する場合もある。
【００３８】
[0046]ビデオシーケンスは通常、一連のビデオフレームまたはピクチャを含む。ピクチャグループ（ＧＯＰ）は、概して、ビデオピクチャのうちの一連の１つまたは複数のビデオピクチャを備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述する構文データを、ＧＯＰのヘッダ中、ピクチャのうちの１つまたは複数のピクチャのヘッダ中、または他の場所に含むことができる。ピクチャの各スライスは、スライスごとの符号化モードを記述するスライス構文データを含むことができる。ビデオエンコーダ２０は通常、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコーディングノードに対応することができる。ビデオブロックは、固定サイズまたは変動サイズを有することができ、指定のコーディング規格に応じてサイズが異なる場合がある。
【００３９】
[0047]一例として、ＨＭは、種々のサイズのＰＵ内の予測ブロックに関する予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、かつ２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称分割をサポートする。非対称分割では、ＣＵの一方向は分割されないが、他の方向は２５％と７５％とに分割される。２５％の分割に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に分割された２Ｎ×２Ｎ  ＣＵを指す。
【００４０】
[0048]本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために交換可能に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは一般に、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック内のピクセルは行と列に構成され得る。さらに、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有する必要はない。たとえば、ブロックはＮ×Ｍピクセルを備えることもでき、ただし、Ｍは必ずしもＮに等しいとは限らない。
【００４１】
[0049]ＣＵのＰＵ内に含まれる予測ブロックのイントラ予測コーディングまたはインター予測コーディング後に、ビデオエンコーダ２０は、ＣＵのＴＵに含まれる残差データを計算することができる。予測ブロックは、（ピクセル領域とも呼ばれる）空間領域においてピクセルデータを備えることができ、かつ変換ブロックは、変換、たとえば、変換ブロック内の残差データへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後に、変換領域において係数を備えることができる。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応することができる。ビデオエンコーダ２０は、ＣＵのコーディングブロックための残差データを含む変換ブロックを形成し、その後、変換ブロックを変換して、コーディングブロックのための変換係数を生成することができる。
【００４２】
[0050]変換係数を生成するための任意の変換後に、ビデオエンコーダ２０は、変換係数の量子化を実行することができる。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために、変換係数が量子化され、さらなる圧縮を提供するプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深さを低減することができる。
【００４３】
[0051]いくつかの例では、ビデオエンコーダ２０は、量子化された変換係数を走査して、エントロピー符号化され得るシリアル化されたベクトルを生成するために、所定の走査順序を利用することができる。他の例では、ビデオエンコーダ２０は適応走査を実行することができる。量子化された変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率区間分割エントロピーコード（ＰＩＰＥ：probability interval partitioning entropy code）または別のエントロピー符号化方法に従って１次元ベクトルをエントロピー符号化することができる。また、ビデオエンコーダ２０は、ビデオデータを復号する際にビデオデコーダ３０が使用するための、符号化されたビデオデータに関連する構文要素をエントロピー符号化することもできる。
【００４４】
[0052]ＣＡＢＡＣを実行するために、ビデオエンコーダ２０は、送信されることになるシンボルに、コンテキストモデル内のコンテキストを割り当てることができる。コンテキストは、たとえば、シンボルの隣接値が０でないか否かに関連する場合がある。ＣＡＶＬＣを実行するために、ビデオエンコーダ２０は、送信されることになるシンボルのための可変長コードを選択することができる。ＶＬＣにおけるコードワードは、相対的短いコードが、より確からしいシンボルに対応し、コードが長くなるほど、確からしくないシンボルに対応するように構成され得る。このようにして、ＶＬＣの使用は、たとえば、送信されることになる各シンボルのために等長コードワードを使用することよりも優れた、ビット節約を達成することができる。確率決定は、シンボルに割り当てられたコンテキストに基づくことができる。
【００４５】
[0053]宛先デバイス１４内のビデオデコーダ３０にビットストリームにおいて符号化されたビデオデータをシグナリングすることに加えて、ビデオエンコーダ２０も、符号化されたビデオデータを復号し、後にコーディングされるブロックのためのイントラ予測またはインター予測プロセス中にリファレンスブロックとして使用するためにビデオフレームまたはピクチャ内のブロックを再構成することができる。しかしながら、ビデオフレームまたはピクチャを複数のブロックに分け、それらのブロックを符号化し、その後、ブロックを復号した後に、ブロック間のエッジにおいて知覚可能なアーティファクトが発生するおそれがある。これらの「ブロッキネス」アーティファクトを除去するために、ビデオエンコーダ２０は、リファレンスブロックとして記憶するより前に、復号されたビデオブロックにデブロッキングフィルタをかけることができる。同様に、ビデオデコーダ３０は、発信元デバイス１２のビデオエンコーダ２０からビットストリーム内で受信されたビデオデータを復号し、ビデオデータを表示するために、ならびに後に復号されるビデオデータについてのリファレンスブロックとしてそれらのブロックを使用するために、ビデオデータの復号されたブロックに同じまたは同様のデブロッキングフィルタをかけるように構成され得る。
【００４６】
[0054]リファレンスブロックとして使用するためのブロックを記憶する前に、ビデオエンコーダ２０またはビデオデコーダ３０などのビデオコーディングデバイスによって実行されるデブロッキングフィルタ処理は、フィルタ処理がコーディングループ内で実行されるという点で、一般に「ループ内」フィルタ処理と呼ばれる。したがって、他のブロックの予測コーディングのために用いられるリファレンスピクチャデータは、デブロッキングフィルタによってフィルタ処理される。ビデオエンコーダ２０とビデオデコーダ３０の両方を同じデブロッキング技法を適用するように構成することによって、デブロッキングフィルタ処理が、フィルタ処理されたブロックをリファレンスブロックとして使用する、後にコーディングされるビデオデータに対して誤りを導入しないように、ビデオコーディングデバイスは同期され得る。
【００４７】
[0055]ビデオエンコーダ２０およびビデオデコーダ３０は、概して、コーディングブロック、予測ブロックおよび変換ブロックのエッジを含む、ビデオブロックのエッジごとに、エッジをデブロックするためにデブロッキングフィルタを適用すべきか否かを判断するように構成され得る。より具体的には、ビデオコーディングデバイスは、デブロッキングフィルタを定義するために、１つまたは複数のデブロッキング判断を計算するように構成され得る。たとえば、デブロッキング判断は、そのエッジのためのデブロッキングフィルタをオンにするか否か、そして、デブロッキングフィルタがオンにされる場合には、そのエッジに対するデブロッキングフィルタのタイプおよび幅を規定することができる。デブロッキング判断は、１組みのサポートピクセル、または単に「サポート」と呼ばれる、エッジに対して垂直なピクセルの１つまたは複数のラインに基づいて計算される。概して、デブロッキング判断は、サポートピクセル内の高周波変化を検出するように構成される。通常、高周波数変化が検出されるとき、デブロッキング判断は、エッジにおいて知覚可能なアーティファクトが存在するという指示、およびエッジをデブロックするために、特定のタイプおよび幅のデブロッキングフィルタが適用されるべきであるという指示を与える。デブロッキングフィルタおよびサポートピクセルが、図４および図５に関して以下にさらに詳細に記載される。
【００４８】
[0056]デブロッキング判断は、サポートピクセルに基づいてビデオエンコーダ２０およびビデオデコーダ３０において計算される関数を含み、その関数の結果はしきい値と比較される。デブロッキング判断のしきい値を決定するベータパラメータ（「β」）値、たとえば、β、β／８、または３β／１６を特定するために、量子化パラメータ（「ＱＰ」）およびベータオフセットパラメータが用いられる。ベータオフセットパラメータは、ＱＰ値だけに基づいて選択された値とは異なるβ値を選択できるようにすることによって、デブロッキングフィルタの制御を与える。このようにして、ベータオフセットパラメータの値は、結果として、ＱＰ値だけの場合のβ値より大きい、ベータパラメータ値の変化または増分（「Δβ」）をもたらす。しかしながら、ベータオフセットパラメータの結果として、ベータパラメータ値がわずかに増加するとき（たとえば、Δβ＝４）、しきい値を丸める結果として、初期β値によっては、しきい値のうちの少なくともいくつかに変化が生じなくなり、それぞれのデブロッキング判断の不連続な制御をもたらす場合がある。
【００４９】
[0057]本開示の技法は、ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタの連続制御、または少なくともより連続的な制御を与える。より具体的には、本技法は、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従ってデブロッキングフィルタのための少なくとも１つのデブロッキング判断を計算することを含む。ベータオフセットパラメータに適用される乗数値は、変更されたしきい値の整数を変化させる。一例では、しきい値は、ベータオフセットパラメータの乗数値を元のしきい値に加えることによって直接変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。別の例では、しきい値は、ベータオフセットパラメータの特定の乗数値に基づいてβ値を特定することによって間接的に変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させるΔβを結果として生成する。いずれの例でも、本技法は、ベータオフセットパラメータに基づいてデブロッキングフィルタの連続制御の動きを与える。
【００５０】
[0058]図２は、デブロッキング判断のしきい値を変更するベータオフセットパラメータの乗数値に基づいてデブロッキングフィルタを制御するために本開示において記載される技法を実施することができるビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングとインターコーディングとを実行することができる。イントラコーディングは、空間的予測を利用して、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去する。インターコーディングは、時間的予測を利用して、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去する。イントラモード（Ｉモード）は、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指す場合がある。
【００５１】
[0059]図２の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、動き推定ユニット４２と、動き補償ユニット４４と、イントラ予測処理ユニット４６と、リファレンスピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換処理ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ６３も含まれる。
【００５２】
[0060]図２に示されるように、ビデオエンコーダ２０は、符号化されることになるビデオスライス内の現在のビデオブロックを受信する。スライスは、複数のビデオブロックに分けられ得る。モード選択ユニット４０は、誤差結果に基づいて、現在のビデオブロックについて、コーディングモードのうちの１つ、すなわちイントラモードまたはインターモードを選択することができる。イントラモードまたはインターモードが選択される場合には、モード選択ユニット４０が結果として生成されたイントラコーディングブロックまたはインターコーディングブロックを、残差ブロックを生成する加算器５０に、およびリファレンスピクチャとして使用するために符号化されたブロックを再構成する加算器６２に与える。イントラ予測処理ユニット４６は、空間圧縮を行うために、コーディングされることになる現在のブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対する現在のビデオブロックのイントラ予測コーディングを実行する。動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を行うために、１つまたは複数のリファレンスピクチャ中の１つまたは複数の予測ブロックに対する現在のビデオブロックのインター予測コーディングを実行する。
【００５３】
[0061]インターコーディングの場合、動き推定ユニット４２は、ビデオシーケンスのための所定のパターンに従ってビデオスライスのためのインター予測モードを判断するように構成され得る。所定のパターンは、シーケンス中のビデオスライスをＰスライスまたはＢスライスに指定することができる。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、リファレンスピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のＣＵに関連付けられるＰＵの変位を指示することができる。
【００５４】
[0062]リファレンスブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって求められ得るピクセル差分に関して、コーディングされることになるＣＵのＰＵ内に含まれる予測ブロックに厳密に一致することがわかっているブロックである。いくつかの例では、ビデオエンコーダ２０は、リファレンスピクチャメモリ６４に記憶されたリファレンスピクチャの整数未満のピクセル位置のための値を計算することができる。たとえば、ビデオエンコーダ２０は、リファレンスピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を計算することができる。それゆえ、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力することができる。
【００５５】
[0063]動き推定ユニット４２は、ＰＵの位置をリファレンスピクチャの予測ブロックの位置と比較することによって、インターコーディングスライスにおけるＣＵのＰＵのための動きベクトルを計算する。リファレンスピクチャは、第１のリファレンスピクチャリスト（リスト０）または第２のリファレンスピクチャリスト（リスト１）から選択することができ、それらのリファレンスピクチャリストの各々は、リファレンスピクチャメモリ６４に記憶された１つまたは複数のリファレンスピクチャを特定する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００５６】
[0064]動き補償ユニット４４によって実行される動き補償は、動き推定によって判断された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを伴うことができる。現在のビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルがリファレンスピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定することができる。ビデオエンコーダ２０は、コーディングされている現在のビデオブロックのピクセル値からリファレンスブロックのピクセル値を減算することによって、残差ビデオブロックを形成し、ピクセル差分値を形成する。ピクセル差分値は、ブロックのための残差データを形成し、輝度差分成分と彩度差分成分の両方を含むことができる。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。また、動き補償ユニット４４は、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するための、ビデオブロックとビデオスライスとに関連付けられる構文要素も生成することができる。
【００５７】
[0065]動き補償ユニット４４が、現在のビデオブロックについてのリファレンスブロックを生成した後に、ビデオエンコーダ２０は、現在のビデオブロックからリファレンスブロックを減算することによって、残差ビデオブロックを形成する。残差ブロックにおける残差ビデオデータは、１つまたは複数のＴＵに含まれ、変換処理ユニット５２に適用される変換ブロック内に含まれ得る。変換処理ユニット５２は、変換、たとえば離散コサイン変換（ＤＣＴ）または概念的に同様の変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット５２は、ピクセル領域からの残差ビデオデータを周波数領域などの変換領域に変換することができる。
【００５８】
[0066]変換処理ユニット５２は、結果として生成された変換係数を量子化ユニット５４に送ることができる。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連付けられるビット深さを低減することができる。量子化の程度は、量子化パラメータ（「ＱＰ」）を調整することによって変更され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を実行することができる。代替的には、エントロピー符号化ユニット５６が走査を実行することができる。
【００５９】
[0067]量子化後に、エントロピー符号化ユニット５６は、量子化変換係数を符号化する。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、または別のエントロピー符号化技法を実行することができる。エントロピー符号化ユニット５６によるエントロピー符号化後に、符号化されたビットストリームは、ビデオデコーダ３０に送信されるか、またはビデオデコーダ３０が後で送信するかまたは取り出すためにアーカイブされ得る。また、エントロピー符号化ユニット５６は、コーディングされている現在のビデオスライスのための動きベクトルと他の構文要素とをエントロピー符号化することができる。
【００６０】
[0068]逆量子化ユニット５８および逆変換処理ユニット６０は、それぞれ逆量子化および逆変換を適用して、ピクセル領域内の残差ブロックを再構成する。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成されたリファレンスブロックに加算して、元のビデオブロックの再構成されたものを生成する。再構成されたビデオブロックは、リファレンスピクチャのリファレンスブロックとして後に使用するために、リファレンスピクチャメモリ６４に記憶され得る。その後、再構成されたビデオブロックは、ブロックのエッジにおいてブロッキネスアーティファクトを除去するために、デブロッキングフィルタ６３によってフィルタ処理される。場合によっては、ビデオエンコーダ２０は、再構成されたビデオブロックに１つまたは複数の補間フィルタを適用して、リファレンスブロックとして使用するためのビデオブロックの整数未満のピクセル値を計算することもできる。フィルタ処理されたブロックは、その後、リファレンスピクチャメモリ６４内にリファレンスピクチャのリファレンスブロックとして記憶される。フィルタ処理されたブロックは、後続のビデオフレームまたはピクチャ内のブロックをインター予測するために、動き推定ユニット４２および動き補償ユニット４４によってリファレンスブロックとして使用され得る。
【００６１】
[0069]デブロッキングフィルタ６３は、境界強度計算およびデブロッキング判断からの結果に基づいて、コーディングブロック、予測ブロックおよび変換ブロックのエッジを含む、再構成されたビデオブロックの特定のエッジをフィルタ処理する。たとえば、デブロッキングフィルタ６３は、再構成されたビデオブロックの所与のエッジ付近のサポートピクセルに基づいてデブロッキング判断の関数を計算し、エッジをデブロックすべきか否か、およびいかにデブロックすべきかを判断する。デブロッキングフィルタ６３は、知覚可能なブロッキネスアーティファクトを除去するために、エッジにおいてピクセル値に高周波数変化が検出されるとき、ビデオブロックのエッジ付近のピクセルの値を変更することができる。
【００６２】
[0070]境界強度計算およびデブロッキング判断は、デブロッキングパラメータ値ｔCおよびβによる。いくつかの例では、ビデオエンコーダ２０のデブロッキングフィルタ６３は、インデックスパラメータ（「Ｑ」）を用いる式に基づいて、デブロッキングパラメータ値ｔCおよびβの各々を特定することができる。他の例では、ビデオエンコーダ２０のデブロッキングフィルタ６３は、インデックスパラメータ（「Ｑ」）を用いる、表１のようなデブロッキングパラメータテーブルにおいてデブロッキングパラメータ値ｔCおよびβの各々を特定することができる。表１に示されるように、Ｑ値の各値はβ値およびｔC値にマッピングされる。デブロッキングフィルタ６３は、別々のインデックスパラメータを計算して、表１内のデブロッキングパラメータ値の各々を特定することができる。
【表１】
2015516764.tif 000003
【００６３】
[0071]デブロッキングパラメータ値の各々のインデックスパラメータは、ビデオブロックのための量子化パラメータ（「ＱＰ」）に少なくとも部分的に基づいて計算される。ＨＥＶＣ規格では、インデックスパラメータはＱＰ値およびオプションのデブロッキングオフセットパラメータに基づいて計算され、デブロッキングオフセットパラメータによって、ＱＰ値だけに直接マッピングされる値とは異なるデブロッキングパラメータ値を特定できるようになる。一例として、β値を探すためのインデックスパラメータ（「Ｑ＿ｂｅｔａ」）およびｔC値を探すためのインデックスパラメータ（「Ｑ＿ｔＣ」）は、式１および式２において以下に与えられるように計算され得る。それらの式によれば、Ｑ＿ｂｅｔａ値は、輝度ＱＰ（「ＱＰY」）値およびベータオフセットパラメータ（「ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ２」）に基づいて計算され、かつＱ＿ｔＣ値は、ＱＰY、境界強度（「Ｂｓ」）およびｔCオフセットパラメータ（「ｔｃ＿ｏｆｆｓｅｔ＿ｄｉｖ２」）に基づいて計算される。
【数１】
2015516764.tif 000004
【００６４】
[0072]デブロッキングフィルタ６３は、特定されたベータパラメータ（「β」）値に基づいて求められるしきい値に従って、再構成されたビデオブロックの所与のエッジ付近のサポートピクセルに基づいてデブロッキング判断を計算する。たとえば、デブロッキング判断は、しきい値がβに等しいオン／オフデブロッキング判断、しきい値がβ／４およびβ／８に等しい強／弱デブロッキング判断、およびしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を含むことができる。デブロッキング判断関数の各々の式が以下に与えられる。サポートピクセルは以下の式において形式［ｐ｜ｑ］ＩJを用いて示され、ただし、ｐがエッジの第１の側にあるブロックに対応し、ｑはエッジの第２の側にあるブロックに対応し、Ｉはエッジからの距離に対応し、Ｊはエッジに対して垂直な位置に対応する。サポートピクセルの位置が図５に示される。
【００６５】
[0073]オン／オフデブロッキング判断は、デブロッキングフィルタをビデオブロックの所与のエッジに適用すべきか否かを指示する。オン／オフデブロッキング判断は、以下の式に基づいて計算され得る。
【数２】
2015516764.tif 000005
【００６６】
ビデオブロックのエッジセグメント（ｉ＝０．．．３）の場合に、（ｄ0＋ｄ3）＜βである場合には、デブロッキングフィルタは「オン」であり、そうでない場合には、デブロッキングフィルタは「オフ」である。ビデオブロックのエッジセグメント（ｉ＝４．．．７）の場合に、（ｄ4＋ｄ7）＜βである場合には、デブロッキングフィルタは「オン」であり、そうでない場合には、デブロッキングフィルタは「オフ」である。
【００６７】
[0074]ビデオブロックのエッジにデブロッキングフィルタが適用されるとき、強／弱デブロッキング判断は、デブロッキングフィルタが弱フィルタであるか、または強フィルタであるかを指示する。強／弱デブロッキング判断は、以下の式に基づいて計算され得る。
【数３】
2015516764.tif 000006
【００６８】
ビデオブロックのエッジセグメント（ｉ＝０．．．３）の場合に、上記の式に従ってｓｗ0およびｓｗ3がいずれも真である場合には、デブロッキングフィルタは「強フィルタ」であり、そうでない場合には、デブロッキングフィルタは「弱フィルタ」である。ビデオブロックのエッジセグメント（ｉ＝４．．．７）の場合に、上記の式に従ってｓｗ4およびｓｗ7がいずれも真である場合には、デブロッキングフィルタは「強フィルタ」であり、そうでない場合には、デブロッキングフィルタは「弱フィルタ」である。
【００６９】
[0075]ビデオブロックのエッジに適用されるデブロッキングフィルタが弱フィルタであるとき、弱フィルタ幅デブロッキング判断は、弱フィルタによって影響を及ぼされることになるビデオブロックのエッジ付近のピクセルの数を示す。たとえば、ビデオブロックのエッジに適用される弱フィルタは、エッジの各側にある１つまたは２つのサンプルのいずれかを補正することができる。弱フィルタ幅デブロッキング判断は、以下の式に基づいて計算され得る。
【数４】
2015516764.tif 000007
【００７０】
ビデオブロックのセグメント（ｉ＝０．．．３）の場合に、（ｄｐ0＋ｄｐ3）＜３β／１６である場合には、弱デブロッキングフィルタは、エッジの各側において「２つのサンプルを変更する」ことになり、そうでない場合には、弱デブロッキングフィルタは「１つのサンプルを変更する」ことになる。ビデオブロックのセグメント（ｉ＝４．．．７）の場合に、（ｄｐ4＋ｄｐ7）＜３β／１６である場合には、弱デブロッキングフィルタは、エッジの各側において「２つのサンプルを変更する」ことになり、そうでない場合には、弱デブロッキングフィルタは「１つのサンプルを変更する」ことになる。
【００７１】
[0076]先に提示されたデブロッキング判断式において、デブロッキング判断のためのしきい値は、β、β／４、β／８および３β／１６を含むβ値に基づいて決定される。式１に関して先に説明されたように、β値は、ＱＰ値およびベータオフセットパラメータに基づいて特定される。ベータオフセットパラメータは、ＱＰ値に直接マッピングされるパラメータ値とは異なるβ値を選択できるようにすることによって、デブロッキングフィルタ６３の制御を与える。このようにして、ベータオフセットパラメータの値は、結果として、所与のＱＰ値だけにマッピングされるβ値から、ベータオフセットパラメータの変化または増分（「Δβ」）をもたらす。
【００７２】
[0077]表１によれば、Ｑ＞２７の値の場合に、Ｑ値が１ステップ増加するごとに、β値は２だけ増加する。たとえば、β＝１８はＱ＝２８にマッピングされ、β＝２０はＱ＝２９にマッピングされる。ベータオフセットパラメータが１に等しく設定される場合、ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ２＝１およびＱ＝ＱＰY＋２である。それゆえ、所与のＱＰ値の場合に、ベータオフセットパラメータの結果として、Ｑ＞２７の場合に、Δβ＝４であるように、Ｑ値が２だけ増加し、β値が４だけ増加する。たとえば、ベータオフセットパラメータが１に等しく、ＱＰ値が２８に等しい場合、Ｑ＝３０およびβ＝２２である。Ｑ＝ＱＰ＝２８の場合のβ＝１８とＱ＝ＱＰ＋２＝３０の場合のβ＝２２との間の変化または増分はΔβ＝４である。
【００７３】
[0078]デブロッキング判断のためのしきい値は、非整数しきい値が最も小さい整数値に丸められるような整数計算を用いて特定されたβ値に基づいて計算される。たとえば、β＝１０である場合には、しきい値β／８は整数１に丸められ、β＋Δβ＝β＋４＝１４である場合には、しきい値β／８はそれでも整数１に丸められる。場合によっては、整数計算は、β値を特定するために用いられるベータオフセットパラメータと、結果として生成されたしきい値との間の不連続な制御の動きにつながるおそれがある。一例として、ベータオフセットパラメータが１に等しい結果として、Ｑ＞２７の場合にΔβ＝４になるとき、初期β値によっては、しきい値β／８および３β／１６において整数変化が生じない場合がある。しきい値（β＋４）／８はβ／８に丸められることになり、しきい値（３＊（β＋４））／１６は３β／１６に丸められることになり、結果としてしきい値に変化は生じない。Ｑ＞２７の場合、ブロッキングアーティファクトが目に見えるようになり、特定のビデオコンテンツの場合にデブロッキングフィルタの制御が有用であることに留意されたい。
【００７４】
[0079]本開示は、ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタの連続制御を与えるための技法を記載する。本技法によれば、ビデオエンコーダ２０のデブロッキングフィルタ６３が、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従って少なくとも１つのデブロッキング判断を計算する。ベータオフセットパラメータに適用される乗数値は、ベータオフセットパラメータの任意の値の場合に、そして結果として生成されたΔβの場合に、変更されたしきい値の整数を変化させるように選択される。乗数値は１以上の整数値を備える。場合によっては、デブロッキング判断の各々に異なる乗数値が選択される場合もある。場合によっては、デブロッキング判断のうちの２つ以上に対して単一の乗数値が選択される場合もある。デブロッキング判断のためのしきい値を変更するために用いられる技法のいくつかの例が、概して、デブロッキングフィルタ６３に関して以下に記載され、図３からのビデオデコーダ３０のデブロッキングフィルタ９１に関してさらに詳細に説明される。
【００７５】
[0080]一例では、しきい値は、ベータオフセットパラメータの乗数値を元のしきい値に加えることによって直接変更することができ、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。この場合、β値は輝度量子化パラメータ値、すなわち、Ｑ＿ｂｅｔａ＝ＱＰYのみに基づいてすべてのデブロッキング判断の場合に特定され得る。変更されたしきい値は、オン／オフデブロッキング判断の場合にβ＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに、強／弱デブロッキング判断の場合にβ／８＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに、弱フィルタ幅デブロッキング判断の場合に３β／１６＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しくすることができ、ただし、Ａ、ＢおよびＣはデブロッキング判断ごとの乗数値である。
【００７６】
[0081]場合によっては、Ａ、ＢおよびＣの各々は異なる値に等しくすることができる。場合によっては、Ａ、ＢおよびＣのうちの１つまたは複数は同じ値に等しくすることができる。一例では、ベータオフセットパラメータが１に等しく、Ａ＝４およびＢ＝Ｃ＝１であるとき、変更されたしきい値は、オン／オフデブロッキング判断の場合にβ＋４に、強／弱デブロッキング判断の場合にβ／８＋１に、および弱フィルタ幅デブロッキング判断の場合に３β／１６＋１に等しい。このようにして、ベータオフセットパラメータの乗数値は、ベータオフセットパラメータの任意の値の場合にしきい値の整数を変化させ、ベータオフセットパラメータに基づいてデブロッキングフィルタ６３の連続制御を与える。
【００７７】
[0082]別の例では、しきい値は、ＱＰ値およびベータオフセットパラメータの乗数値に基づいてβ値を特定することによって間接的に変更され得る。場合によっては、ベータオフセットパラメータの乗数値は、ベータオフセット制御値と呼ばれる場合もある。本技法によれば、ベータオフセット制御値は、変更されたしきい値の整数を変化させるΔβを結果として生成するほど十分に大きくなるように選択された乗数値を含むように変更される。この例では、Ｑ＿ｂｅｔａ＝ＱＰY＋Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔであり、ただし、Ｎはデブロッキング判断の１つまたは複数のための乗数値である。Ｑが２７より大きいとき、Δβ＝２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔである。その際、変更されたしきい値は、β＋Δβを用いて求められたデブロッキング判断のための元のしきい値に等しい。
【００７８】
[0083]上記の式１とは異なり、デブロッキングフィルタ６３の不連続制御の動きを回避するために、しきい値に従って乗数値が選択される。場合によっては、乗数値は、しきい値のうちの最も小さいしきい値、たとえば、β／８に基づいてすべてのデブロッキング判断の場合に同じになるように選択され得る。この場合、すべてのデブロッキング判断のためのしきい値を求めるために、単一のβが特定され得る。ベータオフセットパラメータが１に等しいとき、Ｎ＝４の結果として、Δβ＝８になり、変更されたしきい値は、オン／オフデブロッキング判断の場合にβ＋８に、強／弱デブロッキング判断の場合にβ／８＋１に、弱フィルタ幅デブロッキング判断の場合に３β／１６＋１に等しい。
【００７９】
[0084]場合によっては、デブロッキング判断のそれぞれのしきい値に基づいてデブロッキング判断のために異なる乗数値が選択され得る。この場合、異なるデブロッキング判断のためのしきい値を求めるために、異なるβ値が特定される。オン／オフデブロッキング判断の場合、ベータオフセットパラメータが１に等しいとき、Ｎ＝２の結果として、Δβ＝４であり、変更されたしきい値はβ＋４に等しい。別の例では、Ｎ＝１を設定することによって、オン／オフデブロッキング判断のより精細な制御が達成される場合があり、結果として、Δβ＝２であり、変更されたしきい値はオン／オフデブロッキング判断の場合にβ＋２に等しい。弱／強デブロッキング判断の場合、ベータオフセットパラメータが１に等しいとき、Ｎ＝４の結果として、Δβ＝８であり、変更されたしきい値は、β／８＝１に等しい。弱／強デブロッキング判断の場合、ベータオフセットパラメータが１に等しいとき、Ｎ＝３の結果として、Δβ＝６であり、変更されたしきい値は、β／８＝１に等しい。上記の場合のいずれにおいても、ベータオフセットパラメータの乗数値は、ベータオフセットパラメータの任意の値の場合にしきい値の整数を変化させ、ベータオフセットパラメータに基づいてデブロッキングフィルタ６３の連続制御を与える。
【００８０】
[0085]デブロッキングフィルタ６３のためのデブロッキングパラメータ値を特定するためにデブロッキングオフセットパラメータを用いることに加えて、ビデオエンコーダ２０は、デブロッキングオフセットパラメータをビデオデコーダ３０のようなビデオデコーダにもシグナリングする。このようにして、ビデオデコーダ３０は、同じまたは類似のデブロッキングフィルタを定義し、復号されたビデオブロックに適用するために、ビデオエンコーダ２０と同じデブロッキングパラメータ値を特定することができる。
【００８１】
[0086]ビデオエンコーダ２０のエントロピーコーディングユニット５６は、ビデオデコーダ３０にシグナリングするために、ピクチャパラメータセットおよびスライスヘッダのうちの１つまたは複数においてデブロッキングオフセットパラメータを指示するように構成される構文要素を符号化する。一例として、デフォルトデブロッキングオフセットパラメータがＰＰＳにおいてシグナリングされる場合があり、ＰＰＳに関連付けられるピクチャの１つまたは複数のスライスヘッダ内でシグナリングされる異なるデブロッキングオフセットパラメータによってオーバーライドされる場合がある。ピクチャレイヤパラメータセットは、ピクチャパラメータセット（ＰＰＳ）または適応パラメータセット（ＡＰＳ）のうちのいずれかを備えることができる。ＰＰＳは、ＰＰＳを参照するピクチャ間で変化する可能性が低いデータを含んでいるピクチャレイヤパラメータセットである。ＡＰＳは、いくつかのビデオコーディングプロセスにおいて与えられる場合がある。ＡＰＳは、ピクチャごとに変化する可能性があるピクチャ適応データとともに使用するように意図されたピクチャレイヤパラメータセットである。
【００８２】
[0087]本開示の技法によれば、１つまたは複数のデブロッキング判断のためのベータオフセットパラメータに適用される変更された乗数値は、あらかじめ選択され、ビデオエンコーダ２０のデブロッキングフィルタ６３において、およびビデオデコーダ３０のデブロッキングフィルタにおいて設定される。これにより、ビデオエンコーダ２０のエントロピーコーディングユニット５６は、ビデオデコーダ３０に乗数値をシグナリングする必要はない。
【００８３】
[0088]オフセットパラメータ値を指示するために定義される構文要素は、関連付けられる乗数値に従って命名される場合がある。従来、構文要素は、インデックスパラメータを計算してデブロッキングパラメータ値を特定するために用いられるとき、その値が２で乗算されるので、ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ２およびｔｃ＿ｏｆｆｓｅｔ＿ｄｉｖ２と呼ばれてきた。本開示の技法によれば、ベータオフセットパラメータを指示するために用いられる構文要素は、変更された乗数値を反映するために名称を変更される場合がある。たとえば、しきい値を直接変更する場合、構文要素は、ｂｅｔａ＿ｏｆｆｓｅｔと名称を変更され得る。しきい値を間接的に変更する場合、構文要素は、ｂｅｔａ＿ｏｆｆｓｅｔまたはｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ４と名称を変更され得る。本記述は、概して、ベータオフセットパラメータを参照するためにｂｅｔａ＿ｏｆｆｓｅｔという用語を用いるが、これは、ベータパラメータ値を指示するために用いられる構文要素名に関して限定するものと解釈されるべきではない。
【００８４】
[0089]図３は、デブロッキング判断のしきい値を変更するベータオフセットパラメータの乗数値に基づいてデブロッキングフィルタを制御するために、本開示において記載される技法を実施することができるビデオデコーダ３０の一例を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット８０と、予測処理ユニット８１と、逆量子化ユニット８６と、逆変換処理ユニット８８と、加算器９０と、デブロッキングフィルタ９１と、リファレンスピクチャメモリ９２とを含む。予測処理ユニット８１は、動き補償ユニット８２とイントラ予測処理ユニット８４とを含む。ビデオデコーダ３０は、いくつかの例では、図２のビデオエンコーダ２０に関して説明された符号化パスとは概して逆の復号パスを実行することができる。
【００８５】
[0090]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化されたビデオスライスのビデオブロックと、関連付けられる構文要素とを表す符号化されたビデオビットストリームを受信する。ビットストリーム中に表されたビデオブロックが圧縮されたビデオデータを含むとき、エントロピー復号ユニット８０はビットストリームを復号して、量子化係数と、動きベクトルと、他の構文要素とを生成する。エントロピー復号ユニット８０は、動きベクトルと他の構文要素とを予測処理ユニット８１に転送する。ビデオデコーダ３０は、シーケンスレベル、ピクチャレベル、ビデオスライスレベルおよび／またはビデオブロックレベルのうちの１つまたは複数において構文要素を受信することができる。
【００８６】
[0091]ビデオスライスがイントラコーディング（Ｉ）スライスとしてコーディングされるとき、イントラ予測ユニット８４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、以前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのためのリファレンスデータを生成することができる。ビデオフレームがインターコーディングされた（すなわち、ＢまたはＰ）スライスとしてコーディングされるとき、動き補償ユニット８２は、エントロピー復号ユニット８０から受信された動きベクトルと他の構文要素とに基づいて、現在のビデオスライスのビデオブロックのためのリファレンスブロックを生成する。リファレンスブロックは、リファレンスピクチャリストの１つの中のリファレンスピクチャの１つから生成され得る。ビデオデコーダ３０は、リファレンスピクチャメモリ９２に記憶されたリファレンスピクチャに基づいて、デフォルト構成技法を使用して、リファレンスピクチャリスト、リスト０およびリスト１を構成することができる。
【００８７】
[0092]動き補償ユニット８２は、動きベクトルと他の構文要素とを構文解析することによって現在ビデオスライスのビデオブロックについての予測情報を判断し、その予測情報を用いて、復号されている現在ビデオブロックのためのリファレンスブロックを生成する。たとえば、動き補償ユニット８２は、受信された構文要素のうちのいくつかを用いて、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスのリファレンスピクチャリストのうちの１つまたは複数についての構成情報と、スライスの各インター符号化ビデオブロックについての動きベクトルと、スライスのインター符号化ビデオブロックごとのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを判断する。
【００８８】
[0093]動き補償ユニット８２は、補間フィルタに基づいて補間を実行することもできる。動き補償ユニット８２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用されるような補間フィルタを用いて、リファレンスブロックの整数未満ピクセルのための補間値を計算することができる。動き補償ユニット８２は、受信された構文要素からビデオエンコーダ２０によって使用された補間フィルタを判断し、その補間フィルタを使用してリファレンスブロックを生成することができる。
【００８９】
[0094]逆量子化ユニット８６は、ビットストリーム中で与えられ、エントロピー復号ユニット８０によって復号された量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、ビデオスライス中の各ビデオブロックについてビデオエンコーダ２０によって計算される量子化パラメータ（「ＱＰ」）を使用して、量子化の程度を判断し、同様に、適用されるべき逆量子化の程度を判断することを含むことができる。逆変換ユニット８８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【００９０】
[0095]動き補償ユニット８２が動きベクトルおよび他の構文要素に基づいて現在のビデオブロックについてリファレンスブロックを生成した後に、ビデオデコーダ３０は、逆変換処理ユニット８８からの残差ブロックを、動き補償ユニット８２によって生成された対応するリファレンスブロックと加算することによって、復号されたビデオブロックを形成する。加算器９０は、この加算演算を実行する１つまたは複数の構成要素を表す。ブロッキネスアーティファクトを除去するために、加算器９０から受信された復号されたビデオブロックをフィルタ処理するデブロッキングフィルタ９１が適用される。復号されたビデオブロックは、次いで、リファレンスピクチャメモリ９２に記憶され、リファレンスピクチャメモリ９２は、その後の動き補償のためにリファレンスピクチャのリファレンスブロックを記憶する。また、リファレンスピクチャメモリ９２は復号済みピクチャバッファ（ＤＰＢ）とも呼ばれ、復号されたビデオを、図１のディスプレイデバイス３２などのディスプレイデバイス上で後に表示するために記憶する。
【００９１】
[0096]ビデオデコーダ３０のデブロッキングフィルタ９１は、デブロッキングフィルタ６３に関して説明した技法のいずれかまたはすべてを実行するように構成され得るという点で、図２のビデオエンコーダ２０のデブロッキングフィルタ６３に実質的に準拠する。たとえば、デブロッキングフィルタ９１は、境界強度計算およびデブロッキング判断からの結果に基づいて、コーディングブロック、予測ブロックおよび変換ブロックのエッジを含む、復号されたビデオブロックの特定のエッジをフィルタ処理する。たとえば、デブロッキングフィルタ９１は、再構成されたビデオブロックの所与のエッジ付近のサポートピクセルに基づいてデブロッキング判断の関数を計算し、エッジをデブロックすべきか否か、およびいかにデブロックすべきかを判断する。デブロッキングフィルタ９１は、知覚可能なブロッキネスアーティファクトを除去するために、エッジにおいてピクセル値に高周波数変化が検出されるとき、ビデオブロックのエッジ付近のピクセルの値を変更することができる。デブロッキングプロセスについては、図４に示されるデブロッキングフィルタ１００に関して以下でより詳細に説明される。
【００９２】
[0097]図２からのビデオエンコーダ２０のデブロッキングフィルタ６３に関して先に説明されたように、境界強度計算およびデブロッキング判断は、表１または式のような、いずれかのデブロッキングパラメータテーブルに基づいてインデックスパラメータを用いて特定されるデブロッキングパラメータ値ｔCおよびβによる。ＨＥＶＣ規格では、インデックスパラメータはＱＰ値およびオプションのデブロッキングオフセットパラメータに基づいて計算され、デブロッキングオフセットパラメータによって、ＱＰ値だけに直接マッピングされる値とは異なるデブロッキングパラメータ値を特定できるようになる。たとえば、上記の式１によれば、β値を探すためのインデックスパラメータ（「Ｑ＿ｂｅｔａ」）は、ＱＰY値およびベータオフセットパラメータ（「ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ２」）に基づいて計算される。
【００９３】
[0098]デブロッキングオフセットパラメータは、ビデオビットストリーム内の符号化された構文要素として、ビデオエンコーダ２０のようなビデオエンコーダからビデオデコーダ３０にシグナリングされ得る。ビデオビットストリームを受信すると、ビデオデコーダ３０のエントロピー復号ユニット８０が、そのビットストリーム内に含まれる構文要素を復号する。デブロッキングオフセットパラメータ構文要素は、ビデオエンコーダ２０のデブロッキングフィルタ６３を制御するために用いられるデブロッキングオフセットパラメータを指示する。その際、ビデオデコーダ３０は、同じデブロッキングオフセットパラメータを用いて、デブロッキングフィルタ９１のためのデブロッキングパラメータ値を特定する。デブロッキングオフセットパラメータを指示する構文要素は、ピクチャレイヤパラメータセットおよびスライスヘッダのうちの１つまたは複数においてシグナリングされ得る。ピクチャレイヤパラメータセットは、ピクチャパラメータセット（ＰＰＳ）か適応パラメータセット（ＡＰＳ）のいずれかを備えることができる。
【００９４】
[0099]デブロッキングフィルタ９１は、特定されたベータパラメータ（「β」）値に基づいて求められたしきい値に従って、再構成されたビデオブロックの所与のエッジ付近のサポートピクセルに基づいてデブロッキング判断を計算する。ベータオフセットパラメータは、ＱＰ値に直接マッピングされるパラメータ値とは異なるβ値を選択できるようにすることによって、デブロッキングフィルタ９１の制御を与える。このようにして、ベータオフセットパラメータの値は、結果として、所与のＱＰ値だけにマッピングされるβ値から、ベータオフセットパラメータの変化または増分（「Δβ」）をもたらす。たとえば、表１によれば、Ｑ＞２７の値の場合、β値は、Ｑ値が１ステップ増加するごとに、２だけ増加する。ベータオフセットパラメータが１に等しく設定される場合、ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ２＝１およびＱ＝ＱＰY＋２である。それゆえ、所与のＱＰ値の場合に、ベータオフセットパラメータの結果として、Ｑ＞２７の場合にΔβ＝４であるように、Ｑ値が２だけ増加し、β値が４だけ増加する。
【００９５】
[0100]デブロッキング判断のためのしきい値は、特定されたβ値に基づいて計算される。たとえば、デブロッキング判断は、しきい値がβに等しいオン／オフデブロッキング判断、しきい値がβ／４およびβ／８に等しい強／弱デブロッキング判断、およびしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を含むことができる。図２のビデオエンコーダ２０のデブロッキングフィルタ６３に関して先に説明されたように、しきい値は、非整数しきい値が最も小さい整数に丸められることになる整数計算を使用し、それにより、β値を特定するために用いられるベータオフセットパラメータと結果として生成されるしきい値との間に不連続な制御の動きが生じるおそれがある。一例として、ベータオフセットパラメータが１に等しい結果として、Ｑ＞２７の場合にΔβ＝４になるとき、初期β値によっては、しきい値β／８および３β／１６において整数変化が生じない場合がある。Ｑ＞２７の場合、ブロッキングアーティファクトが目に見えるようになり、特定のビデオコンテンツの場合にデブロッキングフィルタの制御が有用であることに留意されたい。
【００９６】
[0101]本開示は、ベータオフセットパラメータを用いてビデオブロックのためのデブロッキングフィルタの連続制御を与えるための技法を記載する。その技法によれば、ビデオデコーダ３０のデブロッキングフィルタ９１が、ベータオフセットパラメータの乗数値に基づいて変更されたしきい値に従って少なくとも１つのデブロッキング判断を計算する。ベータオフセットパラメータに適用される乗数値は、ベータオフセットパラメータの任意の値の場合に、そして結果として生成されたΔβの場合に、変更されたしきい値の整数を変化させるように選択される。乗数値は１以上の整数値を備える。場合によっては、デブロッキング判断の各々に異なる乗数値が選択される場合もある。場合によっては、デブロッキング判断のうちの２つ以上に対して単一の乗数値が選択される場合もある。
【００９７】
[0102]一例では、デブロッキング判断のうちの１つまたは複数のデブロッキング判断のためのしきい値が、ベータオフセットパラメータの乗数値に元のしきい値を加えることによって直接変更される場合があり、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。一例では、β値を探すために用いられるインデックスパラメータは、量子化パラメータのみに基づいて計算され、すなわち、Ｑ＿ｂｅｔａ＝ＱＰYである。ベータオフセットパラメータの乗数値は、ベータオフセット制御値と呼ばれる場合もあり、もはやβ値を特定するために用いられるのではなく、代わりに、デブロッキング判断のためのしきい値を直接調整するために用いられる。
【００９８】
[0103]概して、デブロッキング判断のための直接変更されたしきい値は、次のように計算することができ、ただし、Ａ、ＢおよびＣはそれぞれのデブロッキング判断のための乗数値である。
【数５】
2015516764.tif 000008
【００９９】
[0104]場合によっては、Ａ、ＢおよびＣは同じ値に等しい場合がある。場合によっては、Ａ、ＢおよびＣのうちの１つまたは複数が異なる値に等しい場合がある。いずれの場合も、デブロッキングフィルタ９１は、デブロッキングフィルタのすべてのデブロッキング判断の場合にＱＰ値のみに基づいて単一のβ値を特定することができる。このようにして、異なるデブロッキング判断の場合に別々のインデックスパラメータを用いて別々のβ値を特定するために、乗数値は、デブロッキングフィルタ９１を必要とすることなくデブロッキング判断の各々に個々に変更され得る。
【０１００】
[0105]１つの具体例では、ベータオフセットパラメータが１に等しく、乗数値Ａ＝４であり、乗数値ＢおよびＣ＝１であるとき、デブロッキング判断のための変更されたしきい値は、次のように計算され得る。
【数６】
2015516764.tif 000009
【０１０１】
[0106]図２のビデオエンコーダ２０のデブロッキングフィルタ６３に関して先に説明されたように、オフセットパラメータを指示するために定義される構文要素は、関連付けられる乗数値に従って命名され得る。本開示の技法によれば、ベータオフセットパラメータを指示するために用いられる構文要素は、変更された乗数値を反映するために名称を変更され得る。たとえば、しきい値を直接変更する場合、構文要素は、ｂｅｔａ＿ｏｆｆｓｅｔと名称を変更され得る。
【０１０２】
[0107]上記の例では、デブロッキング判断のためのしきい値は、ベータオフセット制御値として知られる、ベータオフセットパラメータの乗数値によって直接変更される。それゆえ、ベータオフセット制御値の任意の整数値が、しきい値の整数を変化させ、ベータオフセットパラメータに基づいてデブロッキングフィルタ９１の連続制御を与える。
【０１０３】
[0108]別の例では、デブロッキング判断のうちの１つまたは複数のデブロッキング判断のためのしきい値が、ＱＰ値およびベータオフセットパラメータの乗数値に基づいてインデックスパラメータを用いてβ値を特定することによって間接的に変更され得る。ベータオフセットパラメータの乗数値は、ベータオフセット制御値と呼ばれる場合もある。本技法によれば、ベータオフセット制御値は、変更されたしきい値の整数を変化させるΔβを結果として生成するほど十分に大きくなるように選択された乗数値を含むように変更される。それゆえ、変更されたベータオフセット制御値は、結果として、ベータオフセットパラメータの同じ値の場合にΔβを増加させる。このようにして、ベータオフセットパラメータの任意の値が、結果として、デブロッキングフィルタを定義するデブロッキング判断のためのしきい値を変更できるΔβをもたらすことができる。それゆえ、本技法は、Δβ値が小さいことに起因する、デブロッキングフィルタの不連続な制御の動きを回避する。
【０１０４】
[0109]この例では、Ｑ＿ｂｅｔａ＝ＱＰY＋Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔであり、ただし、Ｎはデブロッキング判断の１つまたは複数のための乗数値である。Ｑが２７より大きいとき、Δβ＝２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔである。その際、変更されたしきい値は、β＋Δβを用いて求められたデブロッキング判断のための元のしきい値に等しい。上記の式１とは異なり、Ｎ＝２の場合、本技法は、デブロッキングフィルタ９１の不連続な制御の動きを回避するために、しきい値に従って乗数値を選択することを含む。
【０１０５】
[0110]第１の場合、異なるデブロッキング判断の場合にベータオフセットパラメータの異なる乗数値に基づいて、別々のベータパラメータ値が特定され得る。デブロッキング判断のそれぞれのしきい値に基づいて異なるデブロッキング判断の場合に異なる乗数値が選択され得る。この場合、デブロッキングフィルタ９１は、異なるデブロッキング判断のための別々のβ値を特定するために、別々のインデックスパラメータ、すなわち、Ｑ＿ｏｎｏｆｆ、Ｑ＿ｓｔｒｏｎｇ＿ｗｅａｋおよびＱ＿ｗｅａｋ＿ｗｉｄｔｈを計算することになる。
【０１０６】
[0111]元のしきい値がβに等しいオン／オフデブロッキング判断の場合、結果として生成される任意のΔβがしきい値の整数を変化させることになるので、乗数値は１以上の任意の整数に等しくなるように選択され得る。オン／オフデブロッキング判断のための乗数値が２に等しく設定される場合、オン／オフデブロッキング判断のための変更されたしきい値は、次のように計算され得る。
【数７】
2015516764.tif 000010
【０１０７】
ベータオフセットパラメータが１に等しいとき、Ｑ＞２７の場合にΔβ＝４であり、オン／オフデブロッキング判断のための変更されたしきい値はβ＋４に等しい。
【０１０８】
[0112]オン／オフデブロッキング判断のための乗数値が１に等しく設定される場合、デブロッキングフィルタ９１にオン／オフデブロッキング判断のより精細な制御を与えるために、ベータオフセットパラメータの乗数値は、結果として、より小さいΔβをもたらす。オン／オフデブロッキング判断のための変更されたしきい値は次のように計算され得る。
【数８】
2015516764.tif 000011
【０１０９】
ベータオフセットパラメータが１に等しいとき、Ｑ＞２７の場合にΔβ＝２であり、オン／オフデブロッキング判断のための変更されたしきい値はβ＋２に等しい。
【０１１０】
[0113]最も小さい元のしきい値がβ／８に等しい強／弱デブロッキング判断の場合、しきい値の整数を変化させるだけの十分に大きいΔβを結果として生成するために、乗数値は、４以上の任意の整数に等しくなるように選択され得る。強／弱デブロッキング判断のための乗数値が４に等しく設定される場合、強／弱デブロッキング判断のための変更されたしきい値は次のように計算され得る。
【数９】
2015516764.tif 000012
【０１１１】
ベータオフセットパラメータが１に等しいとき、Ｑ＞２７の場合にΔβ＝８であり、強／弱デブロッキング判断のための変更されたしきい値はβ／８＋１に等しい。
【０１１２】
[0114]元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断の場合、しきい値の整数を変化させるだけの十分に大きいΔβを結果として生成するために、乗数値は、３以上の任意の整数に等しくなるように選択され得る。弱フィルタ幅デブロッキング判断の場合の乗数値が３に等しく設定される場合、弱フィルタ幅デブロッキング判断のための変更されたしきい値は次のように計算され得る。
【数１０】
2015516764.tif 000013
【０１１３】
ベータオフセットパラメータが１に等しいとき、Ｑ＞２７の場合にΔβ＝６であり、弱フィルタ幅デブロッキング判断のための変更されたしきい値３β／１６＋１に等しい。上記の例において、ベータオフセットパラメータ構文要素はｂｅｔａ＿ｏｆｆｓｅｔに名称を変更され得る。
【０１１４】
[0115]第２の場合、異なるデブロッキング判断のすべての場合にベータオフセットパラメータの単一の乗数値に基づいて、単一のベータパラメータ値が特定され得る。デブロッキング判断のための最も小さいしきい値に基づいて、異なるデブロッキング判断に対して単一の乗数値が選択され得る。この場合、デブロッキングフィルタ９１は、異なるデブロッキング判断のすべてに対して単一のβ値を特定するために、単一のインデックスパラメータ、すなわち、Ｑ＿ｂｅｔａを計算することになる。
【０１１５】
[0116]元のしきい値がβに等しいオン／オフデブロッキング判断、元のしきい値がβ／８に等しい強／弱デブロッキング判断および元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を仮定すると、最も小さいしきい値はβ／８に等しい。しきい値β／８の整数を変化させるのに十分に大きいΔβを結果として生成するために、単一の乗数値は、４以上の任意の整数に等しくなるように選択され得る。
【０１１６】
[0117]デブロッキング判断のための乗数値が４に等しく設定される場合、デブロッキング判断のための変更されたしきい値は次のように計算され得る。
【数１１】
2015516764.tif 000014
【０１１７】
ベータオフセットパラメータが１に等しいとき、Ｑ＞２７の場合にΔβ＝８であり、オン／オフデブロッキング判断のための変更されたしきい値はβ＋８に等しい。この場合、乗数値は結果として、より大きいΔβをもたらし、そのΔβはデブロッキングフィルタ９１に、オン／オフデブロッキング判断のより粗い制御を与え、所与のベータパラメータ値の場合に、オン／オフデブロッキング判断をより大きくジャンプさせる。さらに、ベータオフセットパラメータが１に等しく、Δβ＝８の場合、強／弱デブロッキング判断のための変更されたしきい値はβ／８＋１に等しく、かつ弱フィルタ幅デブロッキング判断のための変更されたしきい値は３β／１６＋１に等しい。この例では、ベータオフセットパラメータ構文要素は、すべてのデブロッキング判断の場合に４に等しい乗数値に基づいて、ｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ４と名称を変更され得る。
【０１１８】
[0118]図２のビデオエンコーダ２０のデブロッキングフィルタ６３に関して先に説明されたように、オフセットパラメータを指示するために定義される構文要素は、関連付けられる乗数値に従って命名され得る。本開示の技法によれば、ベータオフセットパラメータを指示するために用いられる構文要素は、変更された乗数値を反映するために名称を変更され得る。たとえば、しきい値を間接的に変更する場合、構文要素は、ｂｅｔａ＿ｏｆｆｓｅｔまたはｂｅｔａ＿ｏｆｆｓｅｔ＿ｄｉｖ４と名称を変更され得る。本記述は、概して、ベータオフセットパラメータを参照するためにｂｅｔａ＿ｏｆｆｓｅｔという用語を用いるが、これは、ベータパラメータ値を指示するために用いられる構文要素名に関して限定するものと解釈されるべきではない。
【０１１９】
[0119]上記の例では、デブロッキング判断のためのしきい値は、ＱＰ値と、ベータオフセット制御値として知られる、ベータオフセットパラメータの乗数値とに基づいて、インデックスパラメータを用いてβ値を特定することによって、間接的に変更される。ベータオフセット制御値は、ベータオフセットパラメータの任意の値に基づいてデブロッキングフィルタ９１の連続制御を与えるために、変更されたしきい値の整数を変化させるΔβを結果として生成するように選択された乗数値を含む。
【０１２０】
[0120]図４は、例示的なデブロッキングフィルタ１００の構成要素を示すブロック図である。概して、図２のデブロッキングフィルタ６３と図３のデブロッキングフィルタ９１のいずれかまたは両方は、デブロッキングフィルタ１００の構成要素と同一、または実質的に同様の構成要素を含むことができる。ビデオエンコーダ、ビデオデコーダ、ビデオエンコーダ／デコーダ（コーデック）など、他のビデオコーディングデバイスも、デブロッキングフィルタ１００と実質的に同様の構成要素を含むことができる。デブロッキングフィルタ１００は、ハードウェア、ソフトウェア、もしくはファームウェア、またはそれらの組合せで実現され得る。ソフトウェアまたはファームウェアで実現されるとき、（１つまたは複数のプロセッサまたは処理ユニット、およびソフトウェアまたはファームウェアのための命令を記憶するためのメモリなどの）対応するハードウェアも与えられ得る。
【０１２１】
[0121]図４の例では、デブロッキングフィルタ１００は、デブロッキング判断ユニット１０４と、メモリに記憶されたサポート定義１０２と、デブロッキングフィルタ処理ユニット１０６と、メモリに記憶されたデブロッキングパラメータ１０８と、エッジ位置特定ユニット１０３と、エッジロケーションデータ構造１０５とを含む。デブロッキングフィルタ１００の構成要素のいずれかまたはすべては機能的に統合され得る。デブロッキングフィルタ１００の構成要素は、説明のために別々に示されているにすぎない。概して、デブロッキングフィルタ１００は、たとえば、リファレンスデータをブロックについて残差データと結合する加算構成要素から、復号されたブロックのためのデータを受信する。データは、ブロックがいかに予測されたかについての指示をさらに含むことができる。以下に記載される例では、デブロッキングフィルタ１００は、ＣＴＵまたはＣＵに関連付けられる復号されたビデオブロックを含むデータと、ＣＴＵまたはＣＵのための分割データとを受信するように構成される。
【０１２２】
[0122]デブロッキングフィルタ１００は、デブロッキングフィルタ１００のメモリ中に、または対応するビデオコーディングデバイスによって与えられる外部メモリ中にエッジロケーションデータ構造１０５を保持することができる。いくつかの例では、エッジ位置特定ユニット１０３は、ＣＴＵがＣＵにいかに分割されるかを示す、ＣＵクワッドツリーの形において、ＣＴＵのための分割データを受信することができる。他の例では、エッジ位置特定ユニット１０３は、ＣＵがＰＵおよびＴＵにいかに分割されるかを指示するＣＵのための分割データを受信することができる。その後、エッジ位置特定ユニット１０３は、分割データを分析して、デブロッキングのための候補であるＣＵ、ＰＵおよびＴＵに関連付けられる復号されたビデオブロック間のエッジを判断することができる。
【０１２３】
[0123]エッジロケーションデータ構造１０５は、水平次元と、垂直次元と、水平エッジおよび垂直エッジを表す次元とを有する配列を備えることができる。概して、ビデオブロック間のエッジは、ＣＴＵの最小サイズのＣＵに関連付けられる２つのコーディングブロック間で、またはＣＵのＰＵに関連付けられる予測ブロックとＣＵのＴＵに関連付けられる変換ブロックとの間で生じる場合がある。たとえば、ＣＴＵがＮ×Ｎのサイズを有すると仮定し、ＣＴＵの最小サイズＣＵがサイズＭ×Ｍであると仮定すると、配列は、［Ｎ／Ｍ］×［Ｎ／Ｍ］×２のサイズを備えることができ、ただし、２はＣＵ間のエッジの２つの取り得る方向（水平および垂直）を表す。ＣＴＵが６４×６４ピクセルと８×８最小サイズＣＵとを有する例では、配列は、［８］×［８］×［２］エントリを備えることができる。各エントリは、概して、２つのコーディングブロック間で取り得るエッジに対応することができる。他の例では、エッジロケーションデータ構造１０５は、配列内にさらなるエントリを含むことができるか、または予測ブロックと変換ブロックとの間の取り得るエッジを指示する別の配列を含むことができる。
【０１２４】
[0124]実際には、エッジロケーションデータ構造１０５のエントリの各々に対応するＣＴＵ内の位置の各々にエッジが存在しないことがある。したがって、データ構造の値は偽に初期化され得る。概して、エッジ位置特定ユニット１０３は、分割データを分析して、ＣＴＵのＣＵ、ＣＵのＰＵおよびＣＵのＴＵに関連付けられる２つのビデオブロック間のエッジの場所を判断し、エッジロケーションデータ構造１０５中の対応する値を真に設定することができる。概して、配列のエントリは、対応するエッジがデブロッキングのための候補としてＣＴＵ内に存在するか否かを記述することができる。すなわち、エッジ位置特定ユニット１０３が、ＣＴＵのＣＵ、ＣＵのＰＵおよびＣＵのＴＵに関連付けられる２つの隣接ビデオブロック間のエッジが存在すると判断するとき、エッジ位置特定ユニット１０３は、エッジが存在することを示すためにエッジロケーションデータ構造１０５中の対応するエントリの値を（たとえば、「真」の値に）設定することができる。
【０１２５】
[0125]デブロッキング判断ユニット１０４は、概して、２つの隣接ブロックについて、２つのブロック間のエッジがデブロックされるべきか否かを判断する。デブロッキング判断ユニット１０４は、エッジロケーションデータ構造１０５を使用してエッジの場所を判断することができる。エッジロケーションデータ構造１０５の値がブール値を有するとき、デブロッキング判断ユニット１０４は、いくつかの例では、「真」値はエッジの存在を示し、「偽」値はエッジが存在しないことを示すと判断することができる。
【０１２６】
[0126]概して、デブロッキング判断ユニット１０４は、１つまたは複数のデブロッキング判断関数を用いて、デブロッキングフィルタ処理ユニット１０６の動作を規定するオン／オフデブロッキング判断、強／弱デブロッキング判断および弱フィルタ幅デブロッキング判断のうちの１つまたは複数を計算するように構成される。それらの関数は、ブロック間のエッジを横断するピクセルのラインに適用される複数の係数を含むことができる。たとえば、それらの関数は、エッジに対して垂直である８つのピクセルのラインに適用される場合があり、それらのピクセルのうちの４つは、２つのブロックのうちの一方にあり、他の４つのピクセルは、２つのブロックのうちの他方にある。サポート定義１０２は関数のためのサポートを定義する。概して、「サポート」は、関数が適用されるピクセルに対応する。サポートのセットの様々な例について、図５に関して以下でより詳細に説明される。
【０１２７】
[0127]デブロッキング判断ユニット１０４は、サポート定義１０２によって定義されるようなサポートの１つまたは複数のセットに１つまたは複数のデブロッキング判断関数を適用し、関数の結果を、デブロッキングパラメータ１０８によって規定されるようなしきい値と比較するように構成され得る。このようにして、デブロッキング判断ユニット１０４は最初に、オン／オフデブロッキング判断を計算し、ビデオデータの２つのブロック間の特定のエッジがデブロックされるべきであるか否かを判断することができる。デブロッキング判断ユニット１０４を起点とする破線は、フィルタ処理されることなしに出力されるブロックのためのデータを表す。デブロッキング判断ユニット１０４が、２つのブロック間のエッジがフィルタ処理されるべきでないと判断した場合、デブロッキングフィルタ１００は、データを改変することなしに、ブロックのためのデータを出力することができる。すなわち、そのデータはデブロッキングフィルタ処理ユニット１０６をバイパスすることができる。
【０１２８】
[0128]デブロッキング判断ユニット１０４が、エッジがデブロックされるべきであると判断したとき、デブロッキング判断ユニット１０４は、エッジをデブロックするために、デブロッキングフィルタ処理ユニット１０６にエッジ付近のピクセルの値をフィルタ処理させることができる。デブロッキングフィルタ処理ユニット１０６は、デブロッキングフィルタの定義を検索し、デブロッキング判断ユニット１０４およびデブロッキングパラメータ１０８からエッジ付近のピクセルをフィルタ処理する。デブロッキング判断ユニット１０４は、サポート定義１０２において定義されるサポートピクセルと、デブロッキングパラメータ１０８によって定義されるしきい値とに基づいて、強／弱デブロッキング判断および弱フィルタ幅デブロッキング判断を計算することができる。
【０１２９】
[0129]概して、エッジのフィルタ処理は、デブロックされることになる現在エッジの近傍からのピクセルの値を使用する。したがって、デブロッキング判断関数とデブロッキングフィルタの両方は、エッジの両側に、あるサポート領域を有することができる。エッジの近傍にあるピクセルにデブロッキングフィルタを適用することによって、デブロッキングフィルタ処理ユニット１０６は、エッジ付近の高周波遷移が減衰するように、ピクセルの値を平滑化することができる。このようにして、エッジ付近のピクセルへのデブロッキングフィルタの適用は、エッジ付近のブロッキネスアーティファクトを低減することができる。
【０１３０】
[0130]図５は、２つのビデオブロック１２０と１２２との間のエッジ１２４付近のピクセル位置を示す概念図である。いくつかの例では、エッジ１２４は、ＣＵにおいて定義されるＴＵの２つの変換ブロック間のＴＵエッジ、またはＣＵにおいて定義されるＰＵの２つの予測ブロック間のＰＵエッジなどの内側ＣＵエッジを備えることができる。他の例では、エッジ１２４は、ＣＴＵ内に含まれるＣＵの２つのコーディングブロック間の外側ＣＵエッジを備えることができる。ピクセル位置の各々は、形式［ｐ｜ｑ］ＩJを使用して指定され、ただし、ｐはブロック１２０に対応し、ｑはブロック１２２に対応し、Ｉは、エッジ１２４からの距離に対応し、Ｊは、ブロック１２０および１２２の上から下への行インジケータに対応する。
【０１３１】
[0131]いくつかの例では、デブロッキング判断関数およびデブロッキングフィルタのために用いられるサポートピクセルのセットのために選択されるピクセルの数は、デブロッキングのための最も小さいブロック、たとえば、８×８ピクセルに対応する。このようにして、サポートのために使用されるピクセルのライン、たとえば、８ピクセルのラインは、エッジのいずれかの側に、たとえば、エッジの左側および右側に、またはエッジの上方および下方にピクセルを有する、２つのブロック間のエッジを横切って延在する。図５に示される垂直エッジ１２４の場合、サポートピクセルは、共通のラインに沿って、左側に４ピクセルおよび右側に４ピクセルを含むことができる。この例では、０≦Ｘ≦７である所与のラインＸの場合に、ピクセルｐ３X〜ｑ３Xの各々がサポートとして使用され得る。
【０１３２】
[0132]図６は、本開示において記載される技法による、ベータオフセットパラメータの乗数値に基づいて間接的に変更されたしきい値に従ってビデオブロックのためのデブロッキングフィルタためのデブロッキング判断を計算する一例の動作を示す流れ図である。この例の動作において、特定のデブロッキング判断のための変更されたしきい値は、デブロッキング判断のための元のしきい値と、変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値との和に等しい。図６に示される動作は、図３からのビデオデコーダ３０のデブロッキングフィルタ９１に関して説明される。他の例では、ビデオデコーダ２０のデブロッキングフィルタ６３が類似の動作を実行することができる。
【０１３３】
[0133]ビデオデコーダ３０は、ビデオエンコーダ２０のようなビデオエンコーダから、符号化されたビデオブロックと、ビデオブロックに関連付けられるコーディング情報を指示する符号化された構文要素とを含むビデオビットストリームを受信する。ビデオビットストリームは、スライスヘッダおよびピクチャレイヤパラメータセットのうちの１つまたは複数内のデブロッキングオフセットパラメータを指示するように定義される構文要素を含むことができる。ビデオビットストリームを受信すると、エントロピー復号ユニット８０が、所与の復号されたビデオブロックのためのデブロッキングフィルタ９１を制御するために用いられる、ベータオフセットパラメータ、たとえば、ｂｅｔａ＿ｏｆｆｓｅｔを指示する構文要素を復号する（１３０）。
【０１３４】
[0134]ビデオデコーダ３０のデブロッキングフィルタ９１は、復号されたビデオブロックの量子化パラメータ（「ＱＰ」）値のみに基づいてインデックスパラメータ（「Ｑ＿ｂｅｔａ」）を計算する（１３２）。その後、デブロッキングフィルタ９１は、インデックスパラメータを用いて、上記に与えられた表１のようなデブロッキングパラメータテーブル内のベータパラメータ（「β」）値を特定する（１３４）。デブロッキングフィルタ９１は、デブロッキング判断のための元のしきい値と、ベータオフセットパラメータの乗数値との和に等しい変更されたしきい値に従ってデブロッキング判断を計算し、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる（１３６）。
【０１３５】
[0135]このようにして、デブロッキング判断のためのしきい値は、ベータオフセット制御値として知られる、ベータオフセットパラメータの乗数値によって直接変更される。それゆえ、ベータオフセット制御値の任意の整数値が、しきい値の整数を変化させ、ベータオフセットパラメータに基づいてデブロッキングフィルタ９１の連続制御を与える。
【０１３６】
[0136]図７は、図６に示される動作において変更されたしきい値に従ってデブロッキングフィルタのための異なるデブロッキング判断を計算する一例を示す流れ図である。図７に示される動作は、図３からのビデオデコーダ３０のデブロッキングフィルタ９１に関して説明される。他の例では、ビデオデコーダ２０のデブロッキングフィルタ６３が類似の動作を実行することができる。
【０１３７】
[0137]図６のステップ１３６に関して先に説明されたように、デブロッキングフィルタ９１は、デブロッキング判断のための元のしきい値と、ベータオフセットパラメータの乗数値との和に等しい変更されたしきい値に従ってデブロッキング判断を計算し、ベータオフセットパラメータの乗数値は、変更されたしきい値の整数を変化させる。復号されたビデオブロックの所与のエッジの場合に、デブロッキングフィルタ９１は、オン／オフデブロッキング判断を計算して、そのエッジをデブロックするか否かを判断し、デブロッキングフィルタ９１はさらに、弱／強デブロッキング判断および弱フィルタ幅デブロッキング判断を計算して、エッジをデブロックするフィルタのタイプおよび幅を判断することができる。
【０１３８】
[0138]ブロッキングフィルタ９１は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しい変更されたしきい値に従って復号されたビデオブロックの所与のエッジのためのオン／オフデブロッキング判断を計算し、ただし、Ａは１以上の整数乗数値である（１４０）。復号されたビデオブロックのエッジのためのフィルタがオンされるとき、その際、デブロッキングフィルタ９１は、β／８＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しい変更されたしきい値に従って強／弱デブロッキング判断を計算し、ただし、Ｂは１以上の整数乗数値である（１４２）。復号されたビデオブロックのエッジに適用されるフィルタが弱フィルタであるとき、デブロッキングフィルタ９１は、３β／１６＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しい変更されたしきい値に従って弱フィルタ幅デブロッキング判断を計算し、ただし、Ｃは１以上の整数乗数値である（１４４）。
【０１３９】
[0139]いくつかの例では、乗数値Ａ、ＢおよびＣはそれぞれ、異なる整数値に等しくすることができる。他の例では、乗数値Ａ、ＢおよびＣのうちの２つ以上が同じ値を有することができる。１つの具体例では、ベータオフセットパラメータが１に等しく、乗数値Ａ＝４および乗数値ＢおよびＣ＝１であるとき、オン／オフデブロッキング判断のための変更されたしきい値はβ＋４に等しく、強／弱デブロッキング判断のための変更されたしきい値はβ／８＋１に等しく、かつ弱フィルタ幅デブロッキング判断のための変更されたしきい値は３β／１６＋１に等しい。
【０１４０】
[0140]図８は、本開示において記載される技法による、ベータオフセットパラメータの乗数値に基づいて間接的に変更されたしきい値に従ってビデオブロックのためのデブロッキングフィルタのためのデブロッキング判断を計算する一例の動作を示す流れ図である。この例の動作では、ベータパラメータ値を特定するために、ベータオフセットパラメータが用いられ、結果として、変更されたしきい値の整数を変化させるベータパラメータ値の増分をもたらす。図８に示される動作は、図３からのビデオデコーダ３０のデブロッキングフィルタ９１に関して説明される。他の例では、ビデオデコーダ２０のデブロッキングフィルタ６３が類似の動作を実行することができる。
【０１４１】
[0141]ビデオデコーダ３０は、ビデオエンコーダ２０のようなビデオエンコーダから、符号化されたビデオブロックと、ビデオブロックに関連付けられるコーディング情報を指示する符号化された構文要素とを含むビデオビットストリームを受信する。ビデオビットストリームは、スライスヘッダおよびピクチャレイヤパラメータセットのうちの１つまたは複数内のデブロッキングオフセットパラメータを指示するように定義される構文要素を含むことができる。ビデオビットストリームを受信すると、エントロピー復号ユニット８０が、所与の復号されたビデオブロックのためのデブロッキングフィルタ９１を制御するために用いられる、ベータオフセットパラメータ、たとえば、ｂｅｔａ＿ｏｆｆｓｅｔを指示する構文要素を復号する（１５０）。
【０１４２】
[0142]ビデオデコーダ３０のデブロッキングフィルタ９１は、復号されたビデオブロックの量子化パラメータ（「ＱＰ」）値と、ベータオフセットパラメータの乗数値との和に基づいてインデックスパラメータ（「Ｑ＿ｂｅｔａ」）を計算する（１５２）。その後、デブロッキングフィルタ９１は、インデックスパラメータを用いて、上記に与えられた表１のようなデブロッキングパラメータテーブル内のベータパラメータ（「β」）値を特定する（１５４）。ベータオフセットパラメータに適用される乗数値は、デブロッキング判断のための元のしきい値に従って選択され、結果として、ベータパラメータ値に所与の増分（「Δβ」）をもたらす。デブロッキングフィルタ９１は、β＋Δβを用いて求められるデブロッキング判断のための元のしきい値に等しい変更されたしきい値に従ってデブロッキング判断を計算し、ただし、ベータオフセットパラメータの乗数値は、結果として、変更されたしきい値の整数を変化させるΔβをもたらす（１５６）。
【０１４３】
[0143]このようにして、デブロッキング判断のためのしきい値は、ＱＰ値と、ベータオフセット制御値として知られる、ベータオフセットパラメータの乗数値とに基づいてβ値を特定することによって間接的に変更される。ベータオフセット制御値は、ベータオフセットパラメータの任意の値に基づいてデブロッキングフィルタ９１の連続制御を与えるために、変更されたしきい値の整数を変化させるΔβを結果としてもたらすほど十分に大きい乗数値を含むように変更される。
【０１４４】
[0144]図９は、本開示において記載される技法による、ベータオフセットパラメータの乗数値に基づいて間接的に変更されたしきい値に基づいてビデオブロックのためのデブロッキングフィルタのための異なるデブロッキング判断を計算する一例の動作を示す流れ図である。図９に示される動作は、図３からのビデオデコーダ３０のデブロッキングフィルタ９１に関して説明される。他の例では、ビデオデコーダ２０のデブロッキングフィルタ６３が類似の動作を実行することができる。
【０１４５】
[0145]この例の動作では、デブロッキング判断の各々に、ベータパラメータ値を特定するために、ベータオフセットパラメータの乗数値が用いられ、結果として、そのデブロッキング判断のための変更されたしきい値の整数を変化させるベータパラメータ値の増分をもたらす。場合によっては、デブロッキング判断のための元のしきい値のうちの最も小さいしきい値に基づいて、すべてのデブロッキング判断の場合に単一の乗数値が選択され得る。場合によっては、デブロッキング判断のそれぞれの元のしきい値に基づいてデブロッキング判断のために異なる乗数値が選択され得る。
【０１４６】
[0146]ビデオデコーダ３０は、ビデオエンコーダ２０のようなビデオエンコーダから、符号化されたビデオブロックと、ビデオブロックに関連付けられるコーディング情報を指示する符号化された構文要素とを含むビデオビットストリームを受信する。ビデオビットストリームは、スライスヘッダおよびピクチャレイヤパラメータセットのうちの１つまたは複数内のデブロッキングオフセットパラメータを指示するように定義される構文要素を含むことができる。ビデオビットストリームを受信すると、エントロピー復号ユニット８０が、所与の復号されたビデオブロックのためのデブロッキングフィルタ９１を制御するために用いられる、ベータオフセットパラメータ（「ｂｅｔａ＿ｏｆｆｓｅｔ」）を指示する構文要素を復号する（１６０）。
【０１４７】
[0147]すべてのデブロッキング判断の場合に単一の乗数値が用いられる場合には（１６２のＹＥＳ分岐）、デブロッキングフィルタ９１は、すべてのデブロッキング判断の場合に単一のインデックスパラメータ（「Ｑ＿ｂｅｔａ」）を計算する（１６４）。その際、デブロッキングフィルタ９１は、単一のインデックスパラメータを用いて単一のベータパラメータ（「β」）値を特定する（１６６）。ベータオフセットパラメータに適用される単一の乗数値は、デブロッキング判断のための最も小さい元のしきい値に従って選択される場合があり、結果として、ベータパラメータ値の所与の増分（「Δβ」）をもたらす。オン／オフデブロッキング判断、強／弱デブロッキング判断および弱フィルタ幅デブロッキング判断を仮定すると、最も小さいしきい値はβ／８に等しい。しきい値β／８の整数を変化させるほど十分に大きいΔβを結果として生成するために、単一の乗数値（「Ｎ」）は、４以上の任意の整数に等しくなるように選択され得る。
【０１４８】
[0148]デブロッキングフィルタ９１は、β＋Δβを用いて求められるデブロッキング判断のための元のしきい値に等しい変更されたしきい値に従ってすべてのデブロッキング判断を計算し、ただし、４に等しく設定されたデブロッキング判断のための乗数値の結果として、Ｑ＞２７の場合にΔβ＝８＊ｂｅｔａ＿ｏｆｆｓｅｔがもたらされる（１６８）。この例では、ｂｅｔａ＿ｏｆｆｓｅｔ＝１であるとき、オン／オフデブロッキング判断のための変更されたしきい値はβ＋８に等しく、強／弱デブロッキング判断のための変更されたしきい値はβ／８＋１に等しく、かつ弱フィルタ幅デブロッキング判断のための変更されたしきい値は３β／１６＋１に等しい。
【０１４９】
[0149]デブロッキング判断の各々に異なる乗数値が用いられる場合には（１６２のＮＯ分岐）、デブロッキングフィルタ９１は、異なるデブロッキング判断のために別々のインデックスパラメータ（「Ｑ＿ｏｎｏｆｆ」、「Ｑ＿ｓｔｒｏｎｇ＿ｗｅａｋ」および「Ｑ＿ｗｅａｋ＿ｗｉｄｔｈ」）を計算する（１７０）。その際、デブロッキングフィルタ９１は、別々のインデックスパラメータを用いて別々のベータパラメータ（「β」）値を特定する（１７２）。ベータオフセットパラメータに適用される異なる乗数値は、デブロッキング判断のためのそれぞれの元のしきい値に基づいて異なるデブロッキング判断のために選択される場合があり、結果として、ベータパラメータ値の異なる増分（「Δβ」）をもたらす。
【０１５０】
[0150]元のしきい値がβに等しいオン／オフデブロッキング判断の場合、結果として生成される任意のΔβがしきい値の整数を変化させることになるので、乗数値は１以上の任意の整数に等しくなるように選択され得る。デブロッキングフィルタ９１は、β＋Δβに等しい変更されたしきい値に従ってオン／オフデブロッキング判断を計算し、ただし、２に等しく設定された乗数値の結果として、Ｑ＞２７の場合にΔβ＝４＊ｂｅｔａ＿ｏｆｆｓｅｔがもたらされる（１７４）。
【０１５１】
[0151]最も小さい元のしきい値がβ／８に等しい強／弱デブロッキング判断の場合、しきい値の整数を変化させるほど十分に大きいΔβを結果として生成するために、乗数値は、４以上の任意の整数に等しくなるように選択され得る。デブロッキングフィルタ９１は、（β＋Δβ）／８に等しい変更されたしきい値に従って強／弱デブロッキング判断を計算し、ただし、４に等しく設定された乗数値の結果として、Δβ＝８＊ｂｅｔａ＿ｏｆｆｓｅｔがもたらされる（１７６）。
【０１５２】
[0152]元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断の場合、しきい値の整数を変化させるほど十分に大きいΔβを結果として生成するために、乗数値は、３以上の任意の整数に等しくなるように選択され得る。デブロッキングフィルタ９１は、（３＊（β＋Δβ））／１６に等しい変更されたしきい値に従って弱フィルタ幅デブロッキング判断を計算し、ただし、３に等しく設定される乗数値の結果として、Δβ＝６＊ｂｅｔａ＿ｏｆｆｓｅｔがもたらされる（１７８）。
【０１５３】
[0153]１つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実現され得る。ソフトウェアで実現される場合には、それらの機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含むことができる。このようにして、コンピュータ可読媒体は、全般に、（１）非一時的である有形コンピュータ可読記憶媒体、または（２）信号または搬送波などの通信媒体に対応することができる。データ記憶媒体は、本開示で説明された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体とすることができる。コンピュータプログラム製品はコンピュータ可読媒体を含むことができる。
【０１５４】
[0154]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、フラッシュメモリ、または命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用することができ、かつコンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、任意の接続も当然、コンピュータ可読媒体と呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含むのではなく、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１５５】
[0155]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路もしくはディスクリート論理回路などの１つまたは複数のプロセッサによって実行され得る。したがって、本明細書では、「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法を実施するのに適した他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用のハードウェアおよび／もしくはソフトウェアモジュール内に設けることができるか、または複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素内に十分に実現され得る。
【０１５６】
[0156]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実現され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、適切なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含む、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１５７】
[0157]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2015516764.tif 000015
【図２】
2015516764.tif 000016
【図３】
2015516764.tif 000017
【図４】
2015516764.tif 000018
【図５】
2015516764.tif 000019
【図６】
2015516764.tif 000020
【図７】
2015516764.tif 000021
【図８】
2015516764.tif 000022
【図９】
2015516764.tif 000023
【手続補正書】
【提出日】平成26年12月11日(2014.12.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を復号することと、
前記デブロッキングフィルタのための複数のデブロッキング判断の各々の元のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
前記ベータオフセットパラメータに基づいて前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々の変更されたしきい値を求めることと、
前記デブロッキング判断のそれぞれの前記変更されたしきい値に従って前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々を計算すること、ここにおいて、前記変更されたしきい値は、前記変更されたしきい値の整数を変化させるために選択された前記ベータオフセットパラメータの乗数値に基づいて、前記デブロッキング判断のそれぞれの前記元のしきい値から変更される、と、
を備える、ビデオデータを復号する方法。
【請求項２】
前記デブロッキング判断のそれぞれの前記変更されたしきい値は、前記デブロッキング判断それぞれの前記元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項１に記載の方法。
【請求項３】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することと、
をさらに備える、請求項２に記載の方法。
【請求項４】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項２に記載の方法。
【請求項５】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項２に記載の方法。
【請求項６】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項２に記載の方法。
【請求項７】
前記複数のデブロッキング判断の各々の前記変更されたしきい値を求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記デブロッキング判断それぞれの前記変更されたしきい値は、β＋Δβを用いて求められた前記デブロッキング判断それぞれの元のしきい値に等しい、とを含む、請求項１に記載の方法。
【請求項８】
前記インデックスパラメータを計算することは、前記デブロッキング判断のそれぞれの１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、前記複数の異なるデブロッキング判断の各々のために別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、請求項７に記載の方法。
【請求項９】
前記インデックスパラメータを計算することは、前記デブロッキング判断のための前記元のしきい値の中の最も小さい元のしきい値に従って選択された前記ベータオフセットパラメータの単一の乗数値に基づいて、前記複数の異なるデブロッキング判断の２つ以上のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、請求項７に記載の方法。
【請求項１０】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項７に記載の方法。
【請求項１１】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項７に記載の方法。
【請求項１２】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項７に記載の方法。
【請求項１３】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた前記デブロッキング判断それぞれの前記元のしきい値に等しい、請求項７に記載の方法。
【請求項１４】
前記ベータオフセットパラメータを復号することは、前記ベータオフセットパラメータを求めるために、ビデオエンコーダから受信された構文要素を復号することを備える、請求項１に記載の方法。
【請求項１５】
ディスプレイデバイス上に提示すること、またはリファレンスブロックとして使用することのうちの少なくとも一方のために、前記複数のデブロッキング判断に従って定義された前記デブロッキングフィルタを、前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、請求項１に記載の方法。
【請求項１６】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を符号化することと、
前記デブロッキングフィルタのための複数のデブロッキング判断の各々の元のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
前記ベータオフセットパラメータに基づいて前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々の変更されたしきい値を求めることと、
前記デブロッキング判断のそれぞれの変更されたしきい値に従って前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々を計算すること、ここにおいて、前記変更されたしきい値は、前記変更されたしきい値の整数を変化させるために選択された前記ベータオフセットパラメータの乗数値に基づいて、前記デブロッキング判断のそれぞれの前記元のしきい値から変更される、と、
を備える、ビデオデータを符号化する方法。
【請求項１７】
前記デブロッキング判断それぞれの前記変更されたしきい値は、前記デブロッキング判断それぞれの前記元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項１６に記載の方法。
【請求項１８】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することと、
をさらに備える、請求項１７に記載の方法。
【請求項１９】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項１７に記載の方法。
【請求項２０】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項１７に記載の方法。
【請求項２１】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項１７に記載の方法。
【請求項２２】
前記複数のデブロッキング判断の各々の前記変更されたしきい値を求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記デブロッキング判断それぞれの前記変更されたしきい値は、β＋Δβを用いて求められた前記ブロッキング判断それぞれの前記元のしきい値に等しい、と、
を含む、請求項１６に記載の方法。
【請求項２３】
前記インデックスパラメータを計算することは、前記デブロッキング判断のうちのそれぞれの１つのための前記元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、前記複数の異なるデブロッキング判断の各々について別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、請求項２２に記載の方法。
【請求項２４】
前記インデックスパラメータを計算することは、前記デブロッキング判断のための前記元のしきい値のうちの最も小さい元のしきい値に従って選択された前記ベータオフセットパラメータの単一の乗数値に基づいて、前記複数の異なるデブロッキング判断の２つ以上のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、請求項２２に記載の方法。
【請求項２５】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項２２に記載の方法。
【請求項２６】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項２２に記載の方法。
【請求項２７】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項２２に記載の方法。
【請求項２８】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータの場合に４に等しく設定され、前記デブロッキング判断のそれぞれの前記変更されたしきい値はβ＋Δβを用いて求められた前記デブロッキング判断それぞれの前記元のしきい値に等しい、請求項２２に記載の方法。
【請求項２９】
前記ベータオフセットパラメータを符号化することは、前記ベータオフセットパラメータをビデオデコーダに指示するために構文要素を符号化することを備える、請求項１６に記載の方法。
【請求項３０】
リファレンスブロックとして使用するために前記複数のデブロッキング判断に従って定義された前記デブロッキングフィルタを前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、請求項１６に記載の方法。
【請求項３１】
ビデオデータを記憶するメモリと、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングし、前記デブロッキングフィルタのための複数のデブロッキング判断の各々の元のしきい値を求めるために用いられるベータパラメータ（β）値を特定し、前記ベータオフセットパラメータに基づいて前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々の変更されたしきい値を求めることと、前記デブロッキング判断それぞれの前記変更されたしきい値に従って前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々を計算するように構成されるプロセッサと、
を備え、
前記変更されたしきい値は、前記変更されたしきい値の整数を変化させるために選択された前記ベータオフセットパラメータの乗数値に基づいて、前記デブロッキング判断のそれぞれの前記元のしきい値から変更される、ビデオコーディングデバイス。
【請求項３２】
前記デブロッキング判断のそれぞれの前記変更されたしきい値は、前記デブロッキング判断それぞれの前記元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項３１に記載のビデオコーディングデバイス。
【請求項３３】
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算し、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するように構成される、請求項３２に記載のビデオコーディングデバイス。
【請求項３４】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３５】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３６】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、請求項３２に記載のビデオコーディングデバイス。
【請求項３７】
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記デブロッキング判断のそれぞれの前記変更されたしきい値は、β＋Δβを用いて求められた前記デブロッキング判断のそれぞれの前記元のしきい値に等しい、と、
を含む、前記複数のデブロッキング判断の各々の前記変更されたしきい値を求めることのために構成される、請求項３１に記載の方法。
【請求項３８】
前記プロセッサは、
前記デブロッキング判断のうちの前記それぞれの１つのための前記元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、前記複数の異なるデブロッキング判断の各々に別々のインデックスパラメータを計算し、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するように構成される、請求項３７に記載のビデオコーディングデバイス。
【請求項３９】
前記プロセッサは、
前記デブロッキング判断のための前記元のしきい値の最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、前記複数の異なるデブロッキング判断のうちの２つ以上のための単一のインデックスパラメータを計算し、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するように構成される、請求項３７に記載のビデオコーディングデバイス。
【請求項４０】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４１】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて場合に４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４２】
前記デブロッキング判断のそれぞれが、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４３】
前記デブロッキング判断のそれぞれが、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記ブロッキング判断のそれぞれの前記変更されたしきい値はβ＋Δβを用いて求められた前記デブロッキング判断のそれぞれの前記元のしきい値に等しい、請求項３７に記載のビデオコーディングデバイス。
【請求項４４】
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングするための手段と、
前記デブロッキングフィルタのための複数のデブロッキング判断の各々の元のしきい値を求めるために用いられるベータパラメータ（β）値を特定するための手段と、
前記ベータオフセットパラメータに基づいて前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々の変更されたしきい値を求めるための手段と、
前記デブロッキング判断のそれぞれの前記変更されたしきい値に従って前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々を計算するための手段、ここにおいて、前記変更されたしきい値は、前記変更されたしきい値の整数を変化させるために選択された前記ベータオフセットパラメータの乗数値に基づいて、前記デブロッキング判断のそれぞれの前記元のしきい値から変更される、と、
を備える、ビデオコーディングデバイス。
【請求項４５】
前記デブロッキング判断のそれぞれの前記変更されたしきい値は、前記ブロッキング判断のそれぞれの元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、請求項４４に記載のビデオコーディングデバイス。
【請求項４６】
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算するための手段と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段と、
をさらに備える、請求項４５に記載のビデオコーディングデバイス。
【請求項４７】
前記複数のデブロッキング判断の各々の前記変更されたしきい値を求めるための手段は、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算するための手段、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記デブロッキング判断のそれぞれの前記変更されたしきい値は、β＋Δβを用いて求められた前記デブロッキング判断のそれぞれの前記元のしきい値に等しい、と、
を含む、請求項４４に記載のビデオコーディングデバイス。
【請求項４８】
前記デブロッキング判断のうちの前記それぞれの１つのための前記元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、前記複数の異なるデブロッキング判断の各々に別々のインデックスパラメータを計算するための手段と、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するための手段と、
をさらに備える、請求項４７に記載のビデオコーディングデバイス。
【請求項４９】
前記デブロッキング判断のための前記元のしきい値の最も小さい元のしきい値に従って選択された前記ベータオフセットパラメータの単一の乗数値に基づいて、前記複数の異なるデブロッキング判断の２つ以上のための単一のインデックスパラメータを計算するための手段と、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するための手段と、
をさらに備える、請求項４７に記載のビデオコーディングデバイス。
【請求項５０】
実行されるとき、１つまたは複数のプロセッサに、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングさせ、
前記デブロッキングフィルタのための複数のデブロッキング判断の各々の元のしきい値を求めるために用いられるベータパラメータ（β）値を特定させ、
前記ベータオフセットパラメータに基づいて前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々の変更されたしきい値を求めさせ、
前記デブロッキング判断のそれぞれの前記変更されたしきい値に従って前記デブロッキングフィルタのための前記複数のデブロッキング判断の各々を計算させる、
ビデオデータをコーディングするための命令を備え、
前記変更されたしきい値は、前記変更されたしきい値の整数を変化させるために選択された前記ベータオフセットパラメータの乗数値に基づいて、前記デブロッキング判断のそれぞれの前記元のしきい値から変更される、
コンピュータ可読媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１５７
【補正方法】変更
【補正の内容】
【０１５７】
[0157]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願の出願当初の特許請求の範囲に記載の発明を付記する。
［Ｃ１］
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を復号することと、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算すること、ここにおいて、前記しきい値は、前記変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される、と、
を備える、ビデオデータを復号する方法。
［Ｃ２］
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、［Ｃ１］に記載の方法。
［Ｃ３］
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することとをさらに備える、［Ｃ２］に記載の方法。
［Ｃ４］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、［Ｃ２］に記載の方法。
［Ｃ５］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、［Ｃ２］に記載の方法。
［Ｃ６］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、［Ｃ２］に記載の方法。
［Ｃ７］
前記デブロッキング判断の前記変更されたしきい値を求めることをさらに含み、前記求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、とを含む、［Ｃ１］に記載の方法。
［Ｃ８］
前記インデックスパラメータを計算することは、前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々のために別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、［Ｃ７］に記載の方法。
［Ｃ９］
前記インデックスパラメータを計算することは、前記デブロッキング判断のための最も小さい元のしきい値に従って選択された前記ベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、［Ｃ７］に記載の方法。
［Ｃ１０］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、［Ｃ７］に記載の方法。
［Ｃ１１］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、［Ｃ７］に記載の方法。
［Ｃ１２］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、［Ｃ７］に記載の方法。
［Ｃ１３］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、［Ｃ７］に記載の方法。
［Ｃ１４］
前記ベータオフセットパラメータを復号することは、前記ベータオフセットパラメータを求めるために、ビデオエンコーダから受信された構文要素を復号することを備える、［Ｃ１］に記載の方法。
［Ｃ１５］
ディスプレイデバイス上に提示すること、またはリファレンスブロックとして使用することのうちの少なくとも一方のために、前記少なくとも１つのデブロッキング判断に従って定義された前記デブロッキングフィルタを、前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ１６］
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）を符号化することと、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定することと、
変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算すること、ここにおいて、前記しきい値は、前記変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更される、と、
を備える、ビデオデータを符号化する方法。
［Ｃ１７］
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、［Ｃ１６］に記載の方法。
［Ｃ１８］
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算することと、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定することと、
をさらに備える、［Ｃ１７］に記載の方法。
［Ｃ１９］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、［Ｃ１７］に記載の方法。
［Ｃ２０］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、［Ｃ１７］に記載の方法。
［Ｃ２１］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、［Ｃ１７］に記載の方法。
［Ｃ２２］
前記デブロッキング判断の前記変更されたしきい値を求めることをさらに含み、前記求めることは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、［Ｃ１６］に記載の方法。
［Ｃ２３］
前記インデックスパラメータを計算することは、前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々について別々のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記異なるデブロッキング判断の各々について前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定することを備える、［Ｃ２２］に記載の方法。
［Ｃ２４］
前記インデックスパラメータを計算することは、前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算することを備え、
前記ベータパラメータ値を特定することは、前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定することを備える、［Ｃ２２］に記載の方法。
［Ｃ２５］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、［Ｃ２２］に記載の方法。
［Ｃ２６］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、［Ｃ２２］に記載の方法。
［Ｃ２７］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、［Ｃ２２］に記載の方法。
［Ｃ２８］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータの場合に４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、［Ｃ２２］に記載の方法。
［Ｃ２９］
前記ベータオフセットパラメータを符号化することは、前記ベータオフセットパラメータをビデオデコーダに指示するために構文要素を符号化することを備える、［Ｃ１６］に記載の方法。
［Ｃ３０］
リファレンスブロックとして使用するために前記少なくとも１つのデブロッキング判断に従って定義された前記デブロッキングフィルタを前記ビデオブロックの再構成されたバージョンに適用することをさらに備える、［Ｃ１６］に記載の方法。
［Ｃ３１］
ビデオデータを記憶するメモリと、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングし、前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定し、変更されたしきい値の整数を変化させる前記ベータオフセットパラメータの乗数値に基づいて前記変更されたしきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算するように構成されるプロセッサと、を備える、ビデオコーディングデバイス。
［Ｃ３２］
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、［Ｃ３１］に記載のビデオコーディングデバイス。
［Ｃ３３］
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算し、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するように構成される、［Ｃ３２］に記載のビデオコーディングデバイス。
［Ｃ３４］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記変更されたしきい値は、β＋Ａ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ａは前記乗数値である、［Ｃ３２］に記載のビデオコーディングデバイス。
［Ｃ３５］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記変更されたしきい値は、（β／８）＋Ｂ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｂは前記乗数値である、［Ｃ３２］に記載のビデオコーディングデバイス。
［Ｃ３６］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記変更されたしきい値は、（３β／１６）＋Ｃ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しく、ただし、Ｃは前記乗数値である、［Ｃ３２］に記載のビデオコーディングデバイス。
［Ｃ３７］
前記プロセッサは、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算すること、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定すること、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、前記デブロッキング判断の前記変更されたしきい値を求めることのために構成される、［Ｃ３１］に記載の方法。
［Ｃ３８］
前記プロセッサは、
前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々に別々のインデックスパラメータを計算し、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するように構成される、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ３９］
前記プロセッサは、
前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算し、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するように構成される、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ４０］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき２＊Ｎ＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについてＮに等しく設定され、前記変更されたしきい値はβ＋Δβに等しい、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ４１］
前記デブロッキング判断が、前記元のしきい値がβ／８に等しい強／弱デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて場合に４に等しく設定され、前記変更されたしきい値は（β＋Δβ）／８に等しい、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ４２］
前記デブロッキング判断が、前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断を備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき６＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて３に等しく設定され、前記変更されたしきい値は（３（β＋Δβ））／１６に等しい、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ４３］
前記デブロッキング判断が、前記元のしきい値がβに等しいオン／オフデブロッキング判断、前記元のしきい値がβ／８に等しい弱／強デブロッキング判断または前記元のしきい値が３β／１６に等しい弱フィルタ幅デブロッキング判断のうちのいずれかを備えるとき、前記乗数値は、前記インデックスパラメータが２７より大きいとき８＊ｂｅｔａ＿ｏｆｆｓｅｔに等しいΔβに結果としてなる前記ベータオフセットパラメータについて４に等しく設定され、前記変更されたしきい値はβ＋Δβを用いて求められた元のしきい値に等しい、［Ｃ３７］に記載のビデオコーディングデバイス。
［Ｃ４４］
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングするための手段と、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定するための手段と、
変更されたしきい値の整数を変化させる前記ベータオフセットパラメータの乗数値に基づいて変更された前記しきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算するための手段と、
を備える、ビデオコーディングデバイス。
［Ｃ４５］
前記デブロッキング判断の前記変更されたしきい値は、元のしきい値と、前記ベータオフセットパラメータの前記乗数値との和に等しく、前記乗数値は整数を備える、［Ｃ４４］に記載のビデオコーディングデバイス。
［Ｃ４６］
前記ビデオブロックの量子化パラメータ値に基づいてインデックスパラメータを計算するための手段と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段と、
をさらに備える、［Ｃ４５］に記載のビデオコーディングデバイス。
［Ｃ４７］
前記デブロッキング判断の前記変更されたしきい値を求めるための手段をさらに備え、前記求めるための手段は、
前記ビデオブロックの量子化パラメータ値と、前記ベータオフセットパラメータの前記乗数値との和に基づいてインデックスパラメータを計算するための手段、ここにおいて、前記乗数値は整数を備える、と、
デブロッキングパラメータテーブルまたは式のうちの一方に基づいて前記インデックスパラメータを用いて前記ベータパラメータ値を特定するための手段、ここにおいて、前記ベータオフセットパラメータの前記乗数値は、結果として、前記変更されたしきい値の整数を変化させる前記ベータパラメータ値の増分（Δβ）をもたらし、前記変更されたしきい値は、β＋Δβを用いて求められた元のしきい値に等しい、と、
を含む、［Ｃ４４］に記載のビデオコーディングデバイス。
［Ｃ４８］
前記デブロッキング判断のうちの特定の１つのための元のしきい値に従って選択された前記ベータオフセットパラメータの異なる乗数値に基づいて、いくつかの異なるデブロッキング判断の各々に別々のインデックスパラメータを計算するための手段と、
前記異なるデブロッキング判断の各々に前記別々のインデックスパラメータを用いて別々のベータパラメータ値を特定するための手段と、
をさらに備える、［Ｃ４７］に記載のビデオコーディングデバイス。
［Ｃ４９］
前記デブロッキング判断のための最も小さい元のしきい値に従って選択されたベータオフセットパラメータの単一の乗数値に基づいて、２つ以上の異なるデブロッキング判断のための単一のインデックスパラメータを計算するための手段と、
前記２つ以上の異なるデブロッキング判断のために前記単一のインデックスパラメータを用いて単一のベータパラメータ値を特定するための手段と、
をさらに備える、［Ｃ４７］に記載のビデオコーディングデバイス。
［Ｃ５０］
実行されるとき、１つまたは複数のプロセッサに、
ビデオブロックのためのデブロッキングフィルタを制御するベータオフセットパラメータ（ｂｅｔａ＿ｏｆｆｓｅｔ）をコーディングさせ、
前記デブロッキングフィルタのための少なくとも１つのデブロッキング判断のしきい値を求めるために用いられるベータパラメータ（β）値を特定させ、
変更されたしきい値の整数を変化させるベータオフセットパラメータの乗数値に基づいて変更された前記しきい値に従って前記デブロッキングフィルタのための前記デブロッキング判断を計算させる、
ビデオデータをコーディングするための命令を備えるコンピュータ可読媒体。
【国際調査報告】
2015516764.tif 000024
2015516764.tif 000025
2015516764.tif 000026
2015516764.tif 000027