(57)【特許請求の範囲】
【請求項１】
ビデオデータをデコードする方法であって、前記方法は、ビデオデコーダが実行し、
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを、前記ビデオデコーダが、受信することと、
前記フィルタ記述シンタックス及び追加の受信されるフィルタ情報に基づいてフィルタの前記セットを再構成することであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、再構成することと、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを決定することと、
フィルタの前記セットにおける前記フィルタへの前記活動メトリックの前記範囲の前記マッピングに基づいてフィルタの前記セットからフィルタを選択することと、
前記フィルタを適用することと、
を備える方法。
【請求項２】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項１に記載の方法。
【請求項３】
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を受信することをさらに備える、請求項１に記載の方法。
【請求項４】
さらに、
メモリの一部に前記フィルタ記述シンタックスに基づいてフィルタを格納することを割り当てることを
備える前記請求項１に記載の方法。
【請求項５】
前記ビデオデコーダは、多重フィルタを持つ４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項１に記載の方法。
【請求項６】
さらに、
フィルタの前記セットにおけるフィルタの形を特定する第２フィルタ記述シンタックスを受信することを備え、
フィルタの前記セットを再構成することは、さらに前記第２フィルタ記述シンタックスに基づく、
前記請求項１に記載の方法。
【請求項７】
前記活動メトリックは、和修正ラプラシアン値を備える、
前記請求項１に記載の方法。
【請求項８】
前記和修正ラプラシアン値は、次の式：
【数１】
0005602948.tif 000026
に従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、前記活動メトリックである、
前記請求項７に記載の方法。
【請求項９】
前記ビデオデコーダは、ビデオエンコーダのコンポーネントとして実施される、
前記請求項１に記載の方法。
【請求項１０】
ビデオエンコーディングの方法であって、前記方法は、ビデオエンコーダが実行し、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定することと、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成することと、
ビットストリームにおいてビデオデコーダへ前記フィルタ記述シンタックスを信号で送信することと、
前記ビットストリームにおいて前記ビデオデコーダへフィルタの前記セットを信号で送信することであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、信号で送信することと、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを再構成するための情報を前記ビットストリームにおいて信号で送信することと、
を備える方法。
【請求項１１】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項１０に記載の方法。
【請求項１２】
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を生成することをさらに備える、請求項１０に記載の方法。
【請求項１３】
前記ビデオエンコーダは、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項１０に記載の方法。
【請求項１４】
さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定することと、
フィルタの前記セットにおけるフィルタの前記形を特定する第２フィルタ記述シンタックスを生成することと、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信することと、
を備える前記請求項１０に記載の方法。
【請求項１５】
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信するように、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成するようにであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、再構成するように、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを決定するように、
フィルタの前記セットにおける前記フィルタへの前記活動メトリックの範囲の前記マッピングに基づいてフィルタの前記セットからのフィルタを選択するように、
前記フィルタを適用するように、
構成されるフィルタユニットと、
前記フィルタユニットのフィルタ処理された結果を格納するように構成されるメモリと、
を備えるビデオデコーディング機器。
【請求項１６】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項１５に記載のビデオデコーディング機器。
【請求項１７】
前記フィルタユニットはさらに、フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を受信するように構成される、請求項１５に記載のビデオデコーディング機器。
【請求項１８】
前記フィルタユニットは、さらに、前記フィルタ記述シンタックスに基づいてメモリの一部へフィルタを格納することを割り当てるように構成される、
前記請求項１５に記載のビデオデコーディング機器。
【請求項１９】
前記ビデオデコーディング機器は、多重入力を用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項１５に記載のビデオデコーディング機器。
【請求項２０】
前記フィルタユニットは、さらに、
フィルタの前記セットにおけるフィルタの形を特定する第２フィルタ記述シンタックスを受信するように、
前記第２フィルタ記述シンタックスに基づいてフィルタの前記セットを再構成するように構成される、
前記請求項１５に記載のビデオデコーディング機器。
【請求項２１】
前記活動メトリックは、和修正ラプラシアン値を備える、
前記請求項１５に記載のビデオデコーディング機器。
【請求項２２】
前記和修正ラプラシアン値は、次の式：
【数２】
0005602948.tif 000027
に従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、前記活動メトリックである、
前記請求項２１に記載のビデオデコーディング機器。
【請求項２３】
フィルタのセットにおいて含まれるためのフィルタの最大数を決定するように、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成するように、
ビットストリームにおいてビデオデコーダへ前記フィルタ記述シンタックスを信号で送信するように、
前記ビットストリームにおいて前記ビデオデコーダへフィルタの前記セットを信号で送信するようにであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、信号で送信するように、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを再構成するための情報を前記ビットストリームにおいて信号で送信するように、
構成されるビデオコーダと、
を備えるビデオエンコーディング機器。
【請求項２４】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項２３に記載のビデオエンコーディング機器。
【請求項２５】
前記ビデオコーダはさらに、フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を生成するように構成される、請求項２３に記載のビデオエンコーディング機器。
【請求項２６】
前記フィルタユニットは、多重入力を用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項２３に記載のビデオエンコーディング機器。
【請求項２７】
前記フィルタユニットは、さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定するように、
フィルタの前記セットにおけるフィルタの前記形を特定する第２フィルタ記述シンタックスを生成するように、
構成され、
前記ビデオデコーダは、さらに、前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信するように構成される、
前記請求項２３に記載のビデオエンコーディング機器。
【請求項２８】
ビデオデータをデコードするための装置であって、
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信するための手段と、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成するための手段であって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、手段と、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを決定するための手段と、
フィルタの前記セットにおける前記フィルタへの前記活動メトリックの前記範囲の前記マッピングに基づいてフィルタの前記セットからフィルタを選択するための手段と、
前記フィルタを適用するための手段と、
を備える装置。
【請求項２９】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項２８に記載の装置。
【請求項３０】
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を受信するための手段をさらに備える、請求項２８に記載の装置。
【請求項３１】
さらに、
前記フィルタ記述シンタックスに基づいてメモリの一部をフィルタを格納することに割り当てるための手段を備える、
前記請求項２８に記載の装置。
【請求項３２】
前記装置は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項２８に記載の装置。
【請求項３３】
さらに、
フィルタの前記セットにおけるフィルタの形を特定する第２フィルタ記述シンタックスを受信するための手段を備え、
フィルタの前記セットを再構成することは、さらに、前記第２フィルタ記述シンタックスに基づく、
前記請求項２８に記載の装置。
【請求項３４】
前記活動メトリックは、和修正ラプラシアン値を備える、
前記請求項２８に記載の装置。
【請求項３５】
前記和修正ラプラシアン値は、次の式：
【数３】
0005602948.tif 000028
に従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、前記活動メトリックである、
前記請求項３４に記載の装置。
【請求項３６】
前記装置は、ビデオエンコーディング機器を備える、
前記請求項２８に記載の装置。
【請求項３７】
ビデオデータをエンコーディングするための装置であって、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定するための手段と、
フィルタの前記最大数を特定するためのフィルタ記述シンタックスを生成するための手段と、
エンコード化されるビットストリームにおいてビデオデコーダへ前記フィルタ記述シンタックスを信号で送信するための手段と、
前記エンコード化されるビットストリームにおいて前記ビデオデコーダへフィルタ情報を信号で送信するための手段であって、ここで、前記フィルタ情報は、コード化されるユニットの現在のフィルタをコード化される異なるユニットのフィルタに対し定義する異なる値を含む、手段と、
前記エンコード化されるビットストリームにおいて前記ビデオデコーダへフィルタの前記セットを信号で送信するための手段であって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、手段と、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを再構成するための情報を前記ビットストリームにおいて信号で送信するための手段と、
を備える装置。
【請求項３８】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項３７に記載の装置。
【請求項３９】
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を生成するための手段をさらに備える、請求項３７に記載の装置。
【請求項４０】
前記装置は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記請求項３７に記載の装置。
【請求項４１】
さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定するための手段と、
フィルタの前記セットにおけるフィルタの前記形を特定するための第２フィルタ記述シンタックスを生成するための手段と、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信するための手段と、
を備える前記請求項３７に記載の装置。
【請求項４２】
実行される場合に、ビデオデータをデコードするための機器の１つ又はそれ以上のプロセッサに、
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信すること、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成することであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さく、前記フィルタ情報は、コード化されるユニットの現在のフィルタをコード化される異なるユニットのフィルタに対し定義する異なる値を含む、再構成すること、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを決定すること、
フィルタの前記セットにおける前記フィルタへの前記活動メトリックの前記範囲の前記マッピングに基づいてフィルタの前記セットからフィルタを選択すること、
前記フィルタを適用すること、をさせる、
その上に格納される命令を持つコンピュータ可読記録媒体。
【請求項４３】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項４２に記載のコンピュータ可読記録媒体。
【請求項４４】
実行される場合に、ビデオデータをデコードするための前記機器の前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を受信すること、をさせる、
その上に格納される追加の命令を持つ、請求項４２に記載のコンピュータ可読記録媒体。
【請求項４５】
さらに、前記１つ又はそれ以上のプロセッサに、
前記フィルタ記述シンタックスに基づいてメモリの一部をフィルタを格納することに割り当てさせる命令を備える、
前記請求項４２に記載のコンピュータ可読記録媒体。
【請求項４６】
ビデオデータをデコードするビデオのための前記機器は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）を実施する、
前記請求項４２に記載のコンピュータ可読記録媒体。
【請求項４７】
さらに、
前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットにおけるフィルタの形を特定する第２フィルタ記述シンタックスを受信させる命令を備え、
フィルタの前記セットを再構成することは、さらに、前記第２フィルタ記述シンタックスに基づく、
前記請求項４２に記載のコンピュータ可読記録媒体。
【請求項４８】
前記活動メトリックは、和修正ラプラシアン値を備える、
前記請求項４２に記載のコンピュータ可読記録媒体。
【請求項４９】
前記和修正ラプラシアン値は、次の式：
【数４】
0005602948.tif 000029
に従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、前記活動メトリックである、
前記請求項４８に記載のコンピュータ可読記録媒体。
【請求項５０】
ビデオデータをデコードするビデオのための前記機器は、ビデオエンコーダのコンポーネントとして実施される、
前記請求項４２に記載のコンピュータ可読記録媒体。
【請求項５１】
実行される場合に、ビデオデータをエンコードするための機器の１つ又はそれ以上のプロセッサに、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定すること、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成すること、
エンコードされるビットストリームにおいてビデオデコーダへ前記フィルタ記述シンタックスを信号で送信すること、
エンコードされる前記ビットストリームにおいて前記ビデオデコーダへフィルタ情報を信号で送信することであって、ここで、前記フィルタ情報は、コード化されるユニットの現在のフィルタをコード化される異なるユニットのフィルタに対し定義する異なる値を含む、信号で送信すること、
エンコードされる前記ビットストリームにおいて前記ビデオデコーダへフィルタの前記セットを信号で送信することであって、ここで、フィルタの前記セットにおけるフィルタの数は、前記最大数よりも小さい、信号で送信すること、
フィルタの前記セットにおけるフィルタへの活動メトリックの範囲のマッピングを再構成するための情報を前記ビットストリームにおいて信号で送信すること、をさせる、
その上に格納される命令を持つコンピュータ可読記録媒体。
【請求項５２】
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部であり、ビデオブロックの前記シリーズのビデオブロックのためのフィルタの前記セットにおけるフィルタの前記数は、前記ビデオブロックのために可能とされるフィルタの前記最大数よりも小さい、請求項５１に記載のコンピュータ可読記録媒体。
【請求項５３】
実行される場合に、ビデオデータをエンコードするための前記機器の前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットにおけるフィルタの前記数を特定するシンタックス要素を生成すること、をさせる、
その上に格納される追加の命令を持つ、請求項５１に記載のコンピュータ可読記録媒体。
【請求項５４】
ビデオデータをエンコードするための前記機器は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）を実施する、
前記請求項５１に記載のコンピュータ可読記録媒体。
【請求項５５】
さらに、
前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットのために使用されるためのフィルタの形を決定し、
フィルタの前記セットにおけるフィルタの前記形を特定する第２フィルタ記述シンタックスを生成し、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信させる、
命令を備える、
前記請求項５１に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、ビデオデータを圧縮するために使用されるブロックベースビデオコーディング及び、特にビデオブロックのフィルタリングにおける使用のためのシグナリングフィルタに関する技術に関連する。
【背景技術】
【０００２】
デジタルビデオの能力は、デジタルテレビ、デジタルダイレクト放送システム、及び、無線電話ハンドセット、無線放送システム、携帯情報端末（ＰＤＡ）、ラップトップコンピュータ、ディスクトップコンピュータ、タブレットコンピュータ、デジタルカメラ、デジタル記録機器、ビデオゲーム機器、ビデオゲームコントローラのような無線通信機器などを含む機器の幅広い範囲において組み込まれることができる。デジタルビデオ機器は、より効果的にデジタルビデオを送信し及び受信するため、ＭＰＥＧ−２、ＭＰＧＥ−４、又は、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＧＥ−４、Ｐａｒｔ１０、アドバンスドビデオコーディング（Advanced Video Coding）（ＡＶＧ）のようなビデオ圧縮技術を実施する。ビデオ圧縮技術は、ビデオシーケンスにおいて固有の余剰を減少させ又は除去するため空間及び時間予想を実行する。「Joint Collaborative Team − Video Coding」（ＪＣＴＶＣ）によって開発される高効率ビデオコーディング（High Efficiency Video Coding）（ＨＥＶＣ）のような新しいビデオ標準は、出現し発展し続けており、ここで、それは、ＭＧＥＧとＩＴＵ−Ｔとの共同である。この新しいＨＥＶＣ標準はまた、ときどきＨ．２６５とも呼ばれる。
【０００３】
ブロックベースビデオ圧縮技術は、空間予想及び／又は時間予想を実行し得る。内部コーディングは、コード化されるビデオの与えられるユニット内部のビデオブロック間で空間余剰を減少させ又は除去するため空間予想を信頼し、ここで、それは、ビデオフレーム、ビデオフレームの一部などを備え得る。反対に、相互コーディングは、ビデオシーケンスの連続のコード化されるユニットのブロック間で時間余剰を減少させ又は除去するため時間予想を信頼する。内部コーディングに関して、ビデオエンコーダは、コード化されるビデオの同一のユニット内の他のデータに基づいてデータを圧縮するため空間予想を実行する。相互コーディングに関して、ビデオエンコーダは、コード化されるビデオの２つ又はそれ以上の隣接のユニットの対応するビデオブロックの動きを追跡するため動作評価及び動作補償を実行する。
【０００４】
コード化されるビデオブロックは、予想ブロック、及びコード化されるブロックと予想ブロックとの間の違いを示すデータの残差ブロックを生成し又は特定するために使用されることができる予想情報によって示され得る。相互コーディングの事例において、１つ又はそれ以上の動作ベクトルは、先に又は後にコード化されるユニットからデータの予想ブロックを特定するために使用され、一方内部コーディングの事例において、予想モードは、コード化されるビデオブロックに関連するコード化されるユニット内のデータに基づいて予想ブロックを生成するために使用されることができる。内部コーディングと相互コーディングとの両者は、いくつかの異なる予想モードを定義し得、ここでそれらは、異なるブロックサイズ及びコーディングにおいて使用される予想技術を定義し得る。シンタックス要素の異なるタイプはまた、コーディングプロセスにおいて使用されるコーディング技術又はパラメータを制御し又は定義するため復号化されるビデオデータの一部として含まれ得る。
【０００５】
ブロックベース予想コーディングの後、ビデオエンコーダは、残差ブロックの通信に関連するビットレートをさらに減少させるため変換、量子化及びエントロピーコーディング処理を適用し得る。変換技術は、ウェーブレット変換、積分変換又は変換の他のタイプのような、離散コサイン変換又は概念的に類似する処理を備え得る。離散コサイン変換処理において、例として、変換処理は、ピクセル値のセットを変換係数に転換し、ここでそれは、周波数領域においてピクセル値のエネルギーを示し得る。量子化は、変換係数に適用され、任意の与えられる変換係数に関連するビットの数を限定する処理を一般的に含む。エントロピーコーディングは、量子化される一連の変換係数を集合的に圧縮する１つ又はそれ以上の処理を備える。
【０００６】
ビデオブロックのフィルタリングは、エンコーディング及びデコーディングループの一部として、又は再構成されるビデオブロック上のポストフィルタリング処理の一部として適用され得る。たとえば、フィルタリングは、ブロックベースビデオコーディングに共通なブロックノイズ又は他のアーティファクトを減少させるため一般に使用される。フィルタ係数（時々フィルタタップと呼ばれる）は、他の方法においてブロックノイズを減少させ及び／又はビデオクオリティを改善させることができるビデオブロックフィルタリングの所望のレベルを促進するために定義され又は選択され得る。たとえば、フィルタ係数のセットは、フィルタリングがビデオブロック又はビデオブロック内の他の位置の淵に沿ってどのように適用されるかを定義し得る。異なるフィルタ係数は、ビデオブロックの異なるピクセルに関連するフィルタリングの異なるレベルを生じ得る。たとえば、フィルタリングは、望まれないアーティファクトを除去することを助けるため隣接したピクセル値の量における違いを滑らかに又は鋭くし得る。
【発明の概要】
【０００７】
この開示は、ビデオエンコーディング及び／又はビデオでコーディング処理においてビデオデータのフィルタリングに関連する技術を記述する。この開示に従って、フィルタリングはエンコーダで適用され、フィルタ情報は、デコーダにエンコーダで適用されたフィルタリングを特定することを可能にするためビットストリームにおいてエンコードされる。エンコーダは、フィルタ情報を含むエンコードされるビデオデータを受信し、ビデオデータをデコードし、フィルタリング情報に基づいてフィルタリングを適用する。この方法において、デコーダは、エンコーダで適用された同一のフィルタリングを適用する。
【０００８】
この開示の技術に従って、ビデオデータは、コード化されるユニット（ＣＵ）と呼ばれるユニットにおいて符号化されることができる。コード化されるユニットは、４分木区分スキームを使用し、より小さなコード化されるユニット又はサブユニットへ区分されることができる。特定のコード化されるユニットのための４分木区分スキームを特定するシンタックスは、エンコーダからデコーダへ送信されることができる。各サブユニットに関連する多重入力又は単入力は、エンコードされるビデオデータをデコードし及び再構成することの処理中にフィルタ処理されることができる。デコーダによって受信されるビットストリームにおけるシンタックスは、特定のサブユニットのためエンコーダで使用されるフィルタを特定することができる。特定の入力のために使用されるフィルタは、活動メトリックフィルタ索引付けに基づいて選択されることができ、ここで、活動メトリックのためのある値は、フィルタのセット内の特定のフィルタに索引をつけられる。活動メトリックが和修正ラプラシアン値を使用して決定される事例において、活動メトリックフィルタ索引付けは、時々、和修正ラプラシアン索引付け又はただのラプラシアン索引付けと呼ばれる。
【０００９】
フィルタリングの異なるタイプは、ビデオデータのために決定される活動メトリックに基づいて適用され得る。活動メトリックは、ビデオデータ内のピクセルの１つ又はそれ以上のブロックに関連する活動を量で表し得る。活動メトリックは、ピクセルのセット内のピクセルの相違を示す相違メトリックを備え得る。たとえば、活動メトリックは、以下により詳細に説明されるような、和修正ラプラシアン関数値を含み得る。この開示の技術に従って、適用可能なループフィルタのような、フィルタユニットは、和修正ラプラシアンフィルタ索引付けに基づいて多重フィルタを利用するために構成されることができる。以下により詳細に説明されるように、この開示のフィルタリング技術は、４分木区分スキームを使用してさまざまなサイズのコード化されるユニット（ＣＵ）へ適用されることができる。４分木区分スキームを使用して区分されるコード化されるユニットのためのラプラシアンフィルタ索引付けを持つ多重フィルタを利用することによって、圧縮率及び再構成されるビデオクオリティの１つ又は両者によって測定されるような、ビデオコーディング性能は、改善され得る。いくつかの実施形態において、特定の入力のために使用されるフィルタは、活動メトリックに基づいてデコーダによって決定されるかわりにエンコーダからデコーダへ信号で送信され得る。
【００１０】
この開示において意図されるような、多重フィルタアプローチは、多数のフィルタ、及びそれゆえエンコーダからデコーダへ転送される必要がある多数のフィル係数を結果として生じることができる。本開示の態様は、ビデオエンコーダからビデオデコーダへフィルタ記述シンタックスを送信することを含む。フィルタ記述シンタックスは、ビデオデータをコード化するためビデオエンコーダによって使用されるフィルタ又はフィルタのセットを記述することができる。そのようなフィルタ記述シンタックスを含むことによって、ビデオエンコーダは、ビットをほとんど使用せずにフィルタ情報を送信することができ得、また特定のフィルタを適用するために必要とされる数値計算を減少させることによってデコーダの動作を改善し得る。
【００１１】
１つの例において、ビデオデータをデコードする方法は、フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを、ビデオデコーダで、受信することと、フィルタ記述シンタックス及び追加的に受信されるフィルタ情報に基づいてフィルタのセットを再構成することと、活動メトリックに基づいてコード化されるユニットへのフィルタのセットからフィルタを選択することと、フィルタを適用することと、を含む。
【００１２】
他の例において、ビデオエンコーディングの方法は、フィルタのセットにおいて含まれるためのフィルタの最大数を決定することと、フィルタの最大数を特定するためのフィルタ記述シンタックスを生成することと、ビデオデコーダへフィルタ記述シンタックスを送信することと、ビデオデコーダへフィルタのセットを送信することと、を含む。
【００１３】
他の例において、ビデオでコーディング機器は、フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信するためと、フィルタ記述シンタックス及び追加的に受信されるフィルタ情報に基づいてフィルタのセットを再構成するためと、活動メトリックに基づいてコード化されるユニットへフィルタのセットからのフィルタを適用するために構成されるフィルタユニットと、フィルタユニットのフィルタされる結果を格納するために構成されるメモリとを含む。
【００１４】
他の例において、ビデオエンコーディング機器は、フィルタのセットにおいて含まれるためのフィルタの最大数を決定するためとフィルタの最大数を特定するためのフィルタ記述シンタックス生成するために構成されるフィルタユニットと、ビデオデコーダへフィルタ記述シンタックスを送信するためとビデオデコーダへフィルタのセットを送信するために構成される送信ユニットと、を含む。
【００１５】
他の例において、ビデオデータをデコードするための装置は、フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信するための手段と、フィルタ記述シンタックス及び追加的に受信されるフィルタ情報に基づいてフィルタのセットを再構成されるための手段と、活動メトリックに基づいてコード化されるユニットへのフィルタのセットからのフィルタを選択するための手段と、フィルタを提供するための手段と、を含む。
【００１６】
他の例において、ビデオデータをエンコードするための装置は、フィルタセットにおいて含まれるためのフィルタの最大数を決定するための手段と、フィルタの最大数を特定するフィルタ記述シンタックスを生成するための手段と、ビデオデコーダへフィルタ記述シンタックスを送信するための手段と、ビデオデコーダへフィルタのセットを送信するための手段と、を含む。
【００１７】
この開示において記述される技術は、ハードウェア、ソフトウェア、ファームウェア又は、それらの任意の組み合わせにおいて実施され得る。ハードウェアにおいて実施される場合、装置は、集積回路、プロセッサ、離散論理、又はそれらの任意の組み合わせとして具体化され得る。ソフトウェアにおいて実施される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又はデジタル信号プロセッサ（ＤＳＰ）のような、１つ又はそれ以上のプロセッサにおいて実行され得る。技術を実行するソフトウェアは、コンピュータ可読媒体において最初に格納され、ロードされ、プロセッサにおいて実行され得る。
【００１８】
したがって、この開示はまた、実行されるときに、ビデオデータをデコードするための機器の１つ又はそれ以上のプロセッサに、フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信させ、フィルタ記述シンタックス及び追加的に受信されるフィルタ情報に基づいてフィルタのセットを再構成させ、活動メトリックに基づいてコード化されるユニットへのフィルタのセットからフィルタを選択させ、及びフィルタを適用させるその上の格納される命令を持つコンピュータ可読媒体を備えるコンピュータプログラム製品を意図する。
【００１９】
他の例において、じっこうされるときに、ビデオデータをエンコードするための機器の１つ又はそれ以上のプロセッサに、フィルタのセットにおいて含まれるためのフィルタの最大数を決定させ、フィルタの最大数を特定するためのフィルタ記述シンタックスを生成させ、ビデオデコーダへフィルタ記述シンタックスを送信させ、ビデオデコーダへフィルタのセットを送信させるその上に格納される命令を持つコンピュータ可読媒体を備えるコンピュータプログラム製品。
【図面の簡単な説明】
【００２０】
【図１】図１は、例示のビデオエンコーディング及びデコーディングシステムを示すブロック図である。
【図２Ａ】図２Ａは、最も大きいコードディングユニット（ＬＣＵ）へ適用される４分木区分の例を示す概念的なブロック図である。
【図２Ｂ】図２Ｂは、最も大きいコードディングユニット（ＬＣＵ）へ適用される４分木区分の例を示す概念的なブロック図である。
【図２Ｃ】図２Ｃは、図２Ａ及び２Ｂにおいて示されるＬＣＵのコード化されるユニットのための例示のフィルタ決定を示す概念図である。
【図２Ｄ】図２Ｄは、図２Ａ及び２Ｂにおいて示されるＬＣＵのコード化されるユニットのための例示のフィルタ決定を示す概念的なブロック図である。
【図３】図３は、この開示と一致する例示のビデオエンコーダを示すブロック図である。
【図４】図４は、この開示と一致する例示のビデオデコーダを示すブロック図である。
【図５】図５は、活動メトリックのための値の範囲を示す概念図である。
【図６】図６は、この開示と一致する例示のフィルタユニットを示すブロック図である。
【図７】図７は、この開示と一致するエンコード技術を示すフローブロック図である。
【図８】図８は、この開示と一致するデコード技術を示すフローブロック図である。
【詳細な説明】
【００２１】
この開示は、ビデオエンコーディング及び／又はビデオデコーディング処理においてビデオデータのフィルタリングに関連する技術を記述する。この開示に従って、フィルタリングは、エンコーダで適用され、フィルタ情報は、デコーダにエンコーダで適用されたフィルタリングを特定することを可能にするためビットストリームにおいてエンコードされる。デコーダは、フィルタ情報を含むエンコードされるビデオデータを受信し、ビデオデータをデコードし、及びフィルタリング情報に基づいてフィルタリングを適用する。この方法において、デコーダは、エンコーダで適用された同一のフィルタリングを適用する。
【００２２】
この開示の技術に従って、ビデオデータは、コード化されるユニット（ＣＵ）と呼ばれるユニットにおいてコード化されることができる。コード化されるユニットは、４分木区分スキームを使用して、より小さいコード化されるユニット又はサブユニットに区分されることができる。特定のコード化されるユニットのための４分木区分スキームを特定するシンタックスは、エンコーダからデコーダへ送信されることができる。与えられるＣＵの各サブユニットに関連する多重入力は、エンコードされるビデオデータをデコードし再構成することの処理中にフィルタ処理されることができる。この開示の技術に従って、フィルタ記述シンタックスは、セットにおいてフィルタがいくつあるか又はフィルタが取る形がなにかのような、フィルタのセットを記述する。デコーダによって受信されるビットストリームにおける追加的なシンタックスは、特定のサブユニットのためエンコーダで使用されるフィルタ（即ち、フィルタ係数）を特定することができる。特定の入力のために使用されるフィルタは、活動メトリックフィルタ索引付けに基づいて選択されることができ、ここで活動メトリックのためのある値は、フィルタのセット内の特定のフィルタに索引づけられる。活動メトリックが和修正ラプラシアン値を使用して決定される事例において、活動メトリックフィルタ索引付けは、和修正ラプラシアン索引付け又はただのラプラシアン索引付けと時々呼ばれる。和修正ラプラシアン値は、活動メトリックの１つの一般に使用されるタイプである。しかしながら、この発明の技術は、活動メトリックの他のタイプに関連して使用され得ることが意図される。追加的に、この開示の技術はまた、フィルタが１つより多い活動メトリックに基づいて選択されるフィルタリングスキームによって実施され得ることが意図される。
【００２３】
フィルタリングの異なるタイプは、ビデオデータのために決定される活動メトリックに基づいて適用され得る。活動メトリックは、ビデオデータ内のピクセルの１つ又はそれ以上のブロックに関連する活動を改善し得る。活動メトリックは、ピクセルのセット内のピクセルの相違を示す相違メトリックを備え得る。たとえば、活動メトリックは、以下により詳細に説明されるように、和修正ラプラシアン関数値を含み得る。この開示の技術に従って、適用可能なループフィルタのような、フィルタユニットは、和修正ラプラシアン索引付けに基づいて多重フィルタを利用するために構成されることができる。多重フィルタは、単入力又は多重入力に関連して使用され得る。以下により詳細に記述されるように、この開示において記述される多重入力は、エンコーディング及びデコーディング処理中に生産される中間ビデオブロックデータ又はイメージデータを一般的に参照する。たとえば、与えられるビデオブロックに関連する多重入力は、再構成されるブロックもしくはイメージ（ＲＩ）、仮デブロックされ再構成されるブロックもしくはイメージ（ｐＲＩ）、予想ブロックもしくはイメージ（ＰＩ）、及び／又は量子化される予想エラーイメージ（ＥＩ）を含むことができる。単入力スキームにおいて、フィルタは、ＲＩのような、上記の入力の１つへのみ適用され得る。また、以下により詳細に説明されるように、この開示のフィルタリング技術は、４分木区分スキームを使用して様々なサイズのコード化されるユニットへ適用されることができる。４分木スキームを使用して区分されるコード化されるユニットのためのラプラシアンフィルタ索引付けを持つ多重フィルタを利用することによって、圧縮率及び再構成されるビデオクオリティの１つ又は両者によって測定されるような、ビデオコーディング性能は、改善され得る。
【００２４】
この開示において意図されような、多重フィルタアプローチは、多数のフィルタ、及びそれゆえエンコーダからデコーダへ送信される必要がある多数のフィルタ係数を結果として生じる。追加的に、多数のフィルタは、フィルタを格納するためデコーダで必要とされるメモリの合計を上昇させることができ、またフィルタを適用するときに生じるコンピュータのオーバーヘッドを上昇させることができる。デコーダの性能を潜在的に改善するためはもちろんエンコーダからデコーダへ送信される必要があるフィルタ係数の数を潜在的に減少させるため、この開示の態様は、フィルタ又はフィルタのセットを記述するためフィルタ記述シンタックスの使用を含む。たとえば、フィルタ記述シンタックスは、フィルタのセットにおけるフィルタの数、フィルタのセットにおけるフィルタの最大数を特定し得、また、追加的に若しくはその代わりにフィルタのセットにおけるフィルタの形を特定し得る。
【００２５】
フィルタのセットにおいて含まれるためのフィルタの数及び／又はフィルタの最大数をエンコーダからデコーダへ運ぶためにフィルタ記述シンタックスを使用することによって、多数のフィルタが圧縮率又は再構成されるビデオクオリティのいずれかを改善する場合多数のフィルタを含むことによって、多数のフィルタが有益でない場合、少数のフィルタのみを含むみしたがって送信されるビットの数を減少させることによって改善され得る。フィルタの最大数を示すシンタックス要素は、フレーム又はスライスのような、より高いレベルのコード化されるユニットのためシンタックスにおいて含まれ得、他方、フィルタの数を示すシンタックス要素は、より高いレベルのコード化されるユニットの、ＬＣＵのような、より低いレベルのコード化されるユニットのためシンタックスにおいて含まれ得る。以下により詳細に説明されるように、活動メトリックの範囲へフィルタのセットのマッピングを信号で伝えるために必要とされるビットの数は、許可されるフィルタの最大数に依存し、ビデオブロックの与えられる任意のシリーズのためのフィルタのセットにおいて使用されるフィルタの数のみに依存しない。それゆえ、たとえばスライス又はヘッダのため、フィルタの最大数をデコーダに信号で送信することは、活動メトリックの範囲へのフィルタのマッピングに、より多数の最大フィルタを持つスライス又はヘッダのため必要とされるビットの数と比較してより小さいビットを使用してエンコーダからデコーダへ信号で送信されることを可能にし得る。より少ないフィルタ及びより小さい活動メトリックフィルタ索引はまた、必要なメモリの合計を減少させデータがメモリからアクセスされる速度を改善することによってデコーダの性能を改善することができる。
【００２６】
フィルタ記述シンタックスの他のタイプはまた、使用され得る。たとえば、フィルタの形を記述するフィルタ記述シンタックスは、エンコーダからデコーダへ送信され得る。以下により詳細に記述されるように、フィルタの形は、長方形のフィルタにおいて行の数及び列の数を一般に参照するが、この開示の技術はまた、長方形でない形をしたフィルタを含む、他のフィルタサポート又は構成に使用され得る。フィルタのセットにおいて使用されるフィルタの形をエンコーダからデコーダへ運ぶためフィルタ記述シンタックスを使用することによって、異なる形が圧縮又はビデオクオリティのいずれかを改善する場合、異なる形のフィルタは、使用されることができる。たとえば、いくつかの例において、フィルタのセットは、９×９フィルタを含み得るが、９×９フィルタがコーディング性能をかなり改善しない例において、９×５フィルタは、代わりに使用され得る。９×５フィルタを使用することによって、より少ないビットは、エンコーダからデコーダへフィルタ係数を送信するために必要とされ得る。追加的に、フィルタのセットにおいてフィルタの形を特定するフィルタ記述シンタックスの使用によって可能とされるような、異なる形のフィルタを使用することはまた、デコーダ性能を改善することができる。特に、ピクセル値は、行ごとにメモリから一般的に読まれ、したがって、減少される行の数を持つフィルタを使用することは、特定のフィルタリング動作を実行するための要求されるメモリリードの数を減少させることができる。
【００２７】
この開示の技術はインループフィルタリングに関して一般に記述されるだろうが、技術は、インループフィルタリング、ポストループフィルタリング及び切り替えられるフィルタリングのような他のフィルタリングスキームへ適用され得る。インループフィルタリングは、フィルタ処理されるデータが内部又は相互コーディングのために使用されるようなフィルタ処理されるデータがエンコーディング及びデコーディングループの一部であるフィルタリングを示す。ポストループフィルタリングは、エンコーディングループの後に再構成されるビデオデータへ適用されるフィルタリングを示す。ポストフィルタリングを用いて、フィルタ処理されていないデータは、予想の内部又は相互コーディングのために使用される。この開示の技術は、インループフィルタリング又はポストフィルタリングに限定されるものではなく、ビデオコーディング中に適用されるフィルタリングの広い範囲に適用し得る。追加的に、この開示の技術は、多重入力、ラプラシアンフィルタ索引付けを利用する多重フィルタスキームに関して一般に記述されるが、技術は、単入力、多重フィルタフィルタリングスキームのような他のフィルタリングスキームへ適用され得る。
【００２８】
この開示において、「コーディング」という用語は、エンコーディング又はデコーディングを示す。同様に、「コーディング」という用語は、任意のビデオエンコーダ、ビデオデコーダ又は組み合わされるエンコーダ／デコーダ（コーデック）を一般に示す。したがって、「コーダ」という用語は、ビデオエンコーダ又はビデオデコーダを実行する専門のコンピュータ機器又は装置を示すために本文中で使用される。
【００２９】
追加的に、この開示において、「フィルタ」という用語は、フィルタ係数のセットを一般に示す。たとえば、３×３フィルタは、９個のフィルタ係数のセットによって定義され得、５×５フィルタは、２５個のフィルタ係数のセットによって定義され得、９×５フィルタは、４５個のフィルタ係数にセットによって定義され得るなど。「フィルタのセット」という用語は、１つより多いフィルタのグループを一般に示す。たとえば、２つの３×３フィルタのセットは、９個のフィルタ係数の第１セットと９個のフィルタ係数の第２セットとを含むことができる。この開示において記述される技術に従って、フレーム、スライス又は最も大きいコーディングユニット（ＬＣＵ）のような、ビデオブロックのシリーズのため、フィルタのセットを示す情報は、ビデオブロックのシリーズのためヘッダにおいてエンコーダからデコーダへ送信される。時々「フィルタサポート」と呼ばれる「形」という用語は、特定のフィルタのためフィルタ係数の行の数及びフィルタ係数の列の数を一般に示す。たとえば、９×９は、第１の形の例であり、９×５は、第２の形の例であり、及び、５×９は、第３の形の例である。いくつかの例において、フィルタは、ダイアモンド形、ダイアモンドらしい形、円形、円のような形、六角形、八角形、十字形、Ｘ形、Ｔ形、他の幾何学形、又は、多角形若しくは構成を含む長方形でない形を取り得る。
【００３０】
図１は、この開示の技術を実施し得る例示のビデオエンコーディング及びデコーディングシステム１１０を示すブロック図である。図１において示されるように、システム１１０は、通信チャネル１１５を通じて行先機器１１６へエンコードされるビデオデータを送信するソース機器１１２を含む。ソース機器１１２及び行先機器１１６は、任意の機器の幅広い範囲を備え得る。いくつかの事例において、ソース機器１１２及び行先機器１１６は、いわゆるセルラ又は衛星無線電話のような、無線通信機器ハンドセットを備え得る。しかしながら、ビデオデータのフィルタリグにより一般にするこの開示の技術は、無線アプリケーション又はセッティングに限定される必要はなく、ビデオエンコーディング及び／又はデコーディング能力を含む非無線機器へ適用され得る。
【００３１】
図１の例において、ソース機器１１２は、ビデオソース１２０、ビデオエンコーダ１２２、変調器／復調器（モデム）１２３及び送信器１２４を含む。行先機器１１６は、受信機１２６、モデム１２７、ビデオエンコーダ１２８、及び表示機器１３０を含む。この開示に従って、ソース機器１１２のビデオエンコーダ１２２は、ビデオブロックフィルタリング処理において多重入力のためのフィルタ係数の１つ又はそれ以上のセットを選択し、そのときフィルタ係数の選択される１つ又はそれ以上のセットをエンコードするために構成され得る。フィルタ係数の１つ又はそれ上のセットからの特定のフィルタは、１つより多い入力のため活動メトリックに基づいて選択され得、フィルタ係数は、１つ又はそれ以上の入力をフィルタ処理するために使用され得る。この開示のフィルタリング技術は、エンコーダからデコーダへフィルタ係数をコード化し信号で送信するための任意の技術と一般に互換性がある。
【００３２】
この開示の技術に従って、ビデオエンコーダ１２２を含む機器は、フレーム又はスライスのためフィルタ係数の１つ又はそれ以上のセットをビデオデコーダ１２８を含む機器へ送信することができる。フレーム又はスライスのため、たとえば、ビデオエンコーダ１２２は、すべての入力によって使用されるためフィルタの１つのセットを送信し得、多重入力によって使用されるためフィルタの多数セット（たとえば、入力ごとに１セット）を送信し得る。フレーム又はスライス内の各ビデオブロック又はコード化されるユニットは、そのとき、フィルタ又はフィルタのセットのフィルタのいずれがビデオブロックの各入力のために使用されるか、又は、フィルタ又はフィルタのセットのフィルタのいずれが入力の１つ又はそれ以上に関連する活動メトリックに基づいて決定されることができるかを特定するための追加のシンタックスを含むことができる。
【００３３】
より具体的に、ソース機器１１２のビデオエンコーダ１２２は、フレーム又はスライスのためフィルタの１つ又はそれ上のセットを選択し、エンコーディング処理中にスライス又はフレームのコード化されるユニットに関連する入力へフィルタを（複数の）セットからのフィルタへ適用し、そのとき行先機器１１６のビデオデコーダ１２８への通信のためフィルタのセット（即ち、フィルタ係数のセット）をエンコードし得る。ビデオデコーダ１２２は、フィルタの（複数の）セットからのどの（複数の）フィルタが特定のコード化されるユニットを使用するかを選択するためにコード化されるコード化されるユニットの入力に関連する活動メトリックを決定し得る。デコーダ側で、行先機器１１６のビデオデコーダ１２８はまた、コード化されるユニットに関連する１つ又はそれ以上の入力のため活動メトリックを決定し得るので、ビデオデコーダ１２８は、フィルタの（複数の）セットからどの（複数の）フィルタがピックセルデータへ適用するかを決定し、又は、いくつかの例において、ビデオデコーダ１２８は、ビットストリームシンタックスにおいて受信されるフィルタ情報から直接フィルタ係数を決定し得る。ビデオデコーダ１２８は、フィルタ係数がどのようにエンコードされたか次第で直接デコーディング又は予想デコーディングに基づいてフィルタ係数を決定し得、ここで、それは、ビットストリームシンタックスの一部として信号で送信され得る。追加的に、ビットストリームは、フィルタのセットのためフィルタを記述するためフィルタ記述シンタックスを含み得る。フィルタ記述シンタックスに基づいて、デコーダ１２８は、エンコーダ１２２から受信される追加の情報に基づいてフィルタ係数を再構成することができる。図１の示されるシステム１１０は、単に例である。この開示のフィルタリング技術は、任意のエンコーディング又はデコーディング機器によって実行され得る。ソース機器１１２及び行先機器１１６は、単に、そのような技術をサポートすることができるコーディング機器の例である
ソース機器１１２のビデオエンコーダ１２２は、この開示の技術を使用してビデオソース１２０から受信されるビデオデータをエンコードし得る。ビデオソース１２０は、ビデオカメラ、過去に取られるビデオを含むビデオアーカイブ、又はビデオコンテンツプロバイダからのビデオ供給のような、ビデオキャプチャ機器を備え得る。さらなる代案として、ビデオソース１２０は、ソースビデオ、又はライブビデオの組み合わせとしてのコンピュータグラフィックベースデータ、アーカイブされるビデオ、及びコンピュータ生成のビデオを生成し得る。いくつかの事例において、ビデオソース１２０がビデオカメラである場合、ソース機器１１２及び行先機器１１６は、いわゆるカメラ電話又はビデオ電話を構成する。各事例において、キャプチャされ、プレキャプチャされ又はコンピュータ生成のビデオは、ビデオエンコーダ１２２によってエンコードされ得る。
【００３４】
ビデオデータがビデオエンコーダ１２２によってエンコードされると、そのときエンコードされるビデオ情報は、たとえば、符号分割多元接続（ＣＤＭＡ）、周波数分割多元接続（ＦＤＭＡ）、直交周波数分割多重（ＯＦＤＭ）、又は、任意の他の通信標準又は技術のような、通信標準に従ってモデム１２３によって変調され、送信器１２４を通じて行先機器１１６へ送信され得る。モデム１２３は、様々なミキサ、フィルタ、アンプ又は信号変調のために設計される他のコンポーネントを含み得る。送信器１２４は、データを送信するため、アンプ、フィルタ及び１つ又はそれ以上のアンテナを含むために設計される回路を含み得る。
【００３５】
行先機器１１６の受信機１２６は、チャネル１１５上で情報を受信し、モデム１２７は、情報を復調する。ビデオデコーダ１２８によって実行されるビデオデコーディング処理は、たとえば、インループデコーディングの一部として、又はデコーディングループに続くポストフィルタリングステップとして、フィルタリングを含み得る。どちらの仕方でも、特定のスライス又はフレームのためビデオデコーダ１２８によって適用されるフィルタのセットは、この開示の技術を使用してデコードされ得る。デコードされるフィルタ情報は、コード化されるビットストリームにおいてフィルタ記述シンタックスを特定することを含み得る。たとえば、予想コーディングがフィルタ係数のために使用される場合、異なるフィルタ係数の類似性は、チャネル１１５上で運ばれる情報の量を減少させるために活用され得る。特に、フィルタ（即ち、フィルタ係数のセット）は、異なるフィルタに関連するフィルタ係数の他のセットと比較して異なる値をとして予想としてコード化されることができる。たとえば、異なるフィルタは、異なるスライス又はフレームに関連し得る。そのような事例において、ビデオデコーダ１２８は、ビデオブロック、及び異なるフィルタが関連される異なるフレーム又はスライスを特定するフィルタ情報を備えるエンコードされるビットストリームを受信し得る。フィルタ情報はまた、異なるコード化されるユニットのフィルタと比較して現在のフィルタを定義する相違値を含み得る。特に、相違値は、異なるコード化されるユニットのために使用される異なるフィルタのフィルタ係数と比較して現在のフィルタのためのフィルタ係数を定義するフィルタ係数相違値を備え得る。
【００３６】
ビデオデコーダ１２８は、ビデオブロックをデコードし、フィルタ係数を生成し、及び生成されるフィルタ係数に基づいてデコードされるビデオブロックをフィルタ処理する。ビデオデコーダ１２８は、ビットストリームから検索されるフィルタ記述シンタックスに基づいてフィルタ係数を生成することができる。デコードされフィルタ処理されるビデオブロックは、デコードされるビデオデータを形成するためビデオフレーム内へ組み立てられることができる。表示装置１３０は、利用者へデコードされるビデオデータを表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、又は表示装置の他のタイプを備え得る。
【００３７】
通信チャネル１１５は、ラジオ周波数（ＲＦ）スペクトル又は１つ若しくはそれ以上の物理的送信線のような任意の無線又は有線通信媒体、又は、無線及び有線媒体の任意の組み合わせを備え得る。通信チャネル１１５は、ローカルエリアネットワーク、ワイドエリアネットワーク又は、インターネットのようなグローバルネットワークのような、パケットベースネットワークの一部を形成し得る。通信チャネル１１５は、ソース機器１１２から行先機器１１６へビデオデータを送信するため、任意の適切な通信媒体又は異なる通信媒体の集合を一般に表す。
【００３８】
ビデオエンコーダ１２２及びビデオデコーダ１２８は、あるいはＭＰＥＧ−４、Ｐａｒｔ１０、アドバンスドビデオコーディング（ＡＶＣ）と呼ばれる、ＩＴＵ−Ｔ  Ｈ．２６４標準のようなビデオ圧縮標準に従って動作し得、ここでそれは、説明の目的のためこの開示の一部において使用されるだろう。しかしながら、この開示の技術の多くは、新しく出現するＨＥＶＣ標準を含む、任意の他のビデオコーディング標準の多様性に適用される容易に適用され得る。一般に、エンコーダ及びデコーダでのフィルタリングを考慮に入れる任意の標準は、この開示の教示の様々な態様から利益を得る。
【００３９】
図１において示されないが、いくつかの態様において、ビデオエンコーダ１２２及びビデオデコーダ１２８は、オーディオエンコーダ及びデコーダにそれぞれ統合され得、共通データストリーム又は分離データストリームにおいてオーディオ及びビデオの両者のエンコーディングを取り扱うため、適切なＭＵＸ−ＤＥＭＵＸユニット、又は他のハードウェア及びソフトウェア、を含み得る。適用可能である場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３多重プロトコル、又はユーザデータグラムプロトコル（ＵＤＰ）のような他のプロトコルに従い得る。
【００４０】
ビデオエンコーダ１２２及びビデオデコーダ１２８は、１つ又はそれ以上のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、離散論理、ソフトウェア、ハードウェア、ファームウェア又はそれらの任意の組み合わせとしてそれぞれ実施され得る。ビデオエンコーダ１２２及びビデオデコーダ１２８のそれぞれは、１つ又はそれ以上のエンコード又はデコーダにおいて含まれ得、ここで、それらのどちらも、それぞれモバイル機器、加入者機器、放送機器、サーバなどにおいて組み合わされるエンコーダ／デコーダ（ＣＯＤＥＣ）の一部として統合され得る。
【００４１】
いくつかの事例において、機器１１２、１１６は、非常に対称的な方法において動作し得る。たとえば、機器１１２、１１６のそれぞれは、コンポーネントをエンコードし及びデコードするビデオを含み得る。それゆえ、システム１１０は、たとえば、ビデオストリーミング、ビデオプレイバック、ビデオ放送、又はビデオ電話通信のためなどに、ビデオ機器１１２、１１６の間の１ウェイ又は２ウェイビデオ送信をサポートし得る。
【００４２】
エンコーディング処理中に、ビデオエンコーダ１２２は、多数のコーディング技術又はステップを実行し得る。一般に、ビデオエンコーダ１２２は、ビデオデータをエンコードするために個々のビデオフレーム内のビデオブロックで動作する。１つの例において、ビデオブロックは、マイクロブロック又はマイクロブロックの区分に対応し得る。マイクロブロックは、ＩＴＵ  Ｈ．２６４及び他の標準によって定義されるビデオブロックの１つのタイプである。用語はまた、Ｎ×Ｎサイズの任意のビデオブロックを示すために一般に時々使用されるが、マイクロブロックは、データの１６×１６ブロックを一般的に示す。ＩＴＵ−Ｔ  Ｈ．２６４標準は、輝度コンポーネントのための１６×１６、１６×８、８×１６、８×８、８×４、４×８及び４×４のような様々なブロックサイズ及び彩度コンポーネントのための対応するスケールされるサイズにおいて相互予想はもちろん、輝度コンポーネントのための１６×１６、８×８又は４×４のような様々なブロックサイズ及び彩度コンポーネントのための８×８において内部予想をサポートする。この開示において、「Ｎ×Ｎ」は、垂直及び水平次元の観点からブロックのピクセル次元、たとえば、１６×１６ピクセル、を示す。一般に、１６×１６ブロックは、垂直方法において１６個のピクセルを水平方向において１６個のピクセルを持つだろう。同じように、Ｎ×Ｎブロックは、垂直方法においてＮ個のピクセルを水平方向においてＮ個のピクセルを一般に持ち、ここで、Ｎは、正の整数を表す。ブロックにおけるピクセルは、行及び列において取り決められ得る。
【００４３】
出現するＨＥＶＣ標準は、ビデオブロックのための新しい用語を定義する。特に、ビデオブロック（又は、それらの区分）は、「コード化されるユニット」（又は、ＣＵ）と呼ばれ得る。ＨＥＶＣ標準を用いて、最も大きいコード化されるユニット（ＬＣＵ）は、４分木スキームに従うより小さいＣＵといわゆる予想ユニット（ＰＵ）へさらに区分され得るスキームにおいて定義される異なるＣＵとへ分割される。ＬＣＵ、ＣＵ及びＰＵは、この開示の意味内のすべてのビデオブロックである。ＨＥＶＣ標準又は他のビデオコーディング標準と一致するビデオブロックの他のタイプはまた、使用され得る。したがって、「ビデオブロック」というフレーズは、任意のサイズのビデオブロックを示す。他のカラースペースはまた使用されることができるが、個々のＣＵは、与えられるピクセルのため彩度コンポーネントのためのスケールされるサイズ及び輝度コンポーネントのために含まれ得る。
【００４４】
ビデオブロックは、固定の又は変化するサイズを持ち得、特定されるコーディング標準に従うサイズが異なり得る。各ビデオフレームは、多数のスライスを含み得る。各スライスは、多数のビデオブロックを含み得、ここでそれらは、区分内へ整えられ、またサブブロックと呼ばれ得る。上に言及され以下により詳細に記述される４分木区分スキームに従って、Ｎ／２×Ｎ／２第１ＣＵは、Ｎ×Ｎ  ＬＣＵのサブブロックを備え得、Ｎ／４×Ｎ／４第２ＣＵはまた、第１ＣＵのサブブロックを備え得る。Ｎ／８×Ｎ×８  ＰＵは、第２ＣＵのサブブロックを備え得る。同様に、さらなる例として、１６×１６未満であるブロックサイズは、１６×１６の区分と又は１６×１６ビデオブロックのサブブロックと呼ばれ得る。同じように、Ｎ×Ｎブロックに関して、Ｎ×Ｎ未満のブロックサイズは、Ｎ×Ｎブロックの区分又はサブブロックと呼ばれ得る。ビデオブロックは、ピクセル領域におけるピクセルデータのブロック、又は、たとえば、離散コサイン変換（ＤＣＴ）、整数変換、ウェブレット変換若しくは、コード化されるブロック及び予想ビデオブロック間のピクセルの相違を表す残差ビデオブロックへの概念的に同様の変換のような変換の適用に次ぐ変換領域における変換係数のブロックを備え得る。いくつかの事例において、ビデオブロックは、変換領域における量子化される変換係数ののブロックを備え得る。
【００４５】
ビットストリーム内のシンタックスデータは、フレーム又はスライスのためＬＣＵを定義し得るが、ここでそれは、フレーム又はスライスのためのピクセルの数の観点から最も大きいコーディングユニットである。一般に、ＬＣＵ又はＣＵが特定のサイズの特徴を有しないこと以外は、ＬＣＵ又はＣＵは、Ｈ．２６４に従ってコード化されるマイクロブロックと同様の目的を持つ。代わりに、ＬＣＵサイズは、フレームごと又はスライスごとの基準で定義されることができ、ＬＣＵは、ＣＵへ分割されることができる。一般に、この開示におけるＣＵへの言及は、ＬＣＵの画像又はサブ−ＣＵの最も大きいコード化されるユニットを示し得る。ＬＣＵは、サブＣＵ内へ分割され得、各サブＣＵは、サブＣＵ内へ分割され得る。ビットストリームのためのシンタックスデータは、
ＣＵ深度と呼ばれる、ＬＣＵが分割され得る時間の最大数を定義し得る。したがって、ビットストリームはまた、最も小さいコーディングユニット（ＳＣＵ）を提起し得る。この開示はまた、任意のＬＣＵ、ＣＵ、ＰＵ、ＳＣＵ又はＴＵに言及するため「ブロック」及び「ビデオブロック」という用語を使用する。
【００４６】
上に紹介されるように、ＬＣＵは、４分木データ構造に関連し得る。一般に、４分木データ構造は、ＣＵごとに１つのノードを含み、ここでルートノートは、ＬＣＵに対応する。ＣＵが４つのサブＣＵ内へ分割される場合、ＣＵに対応するノードは、４つのリーフノードを含み、ここでそれらのそれぞれは、サブＣＵの１へ対応する。４分木データ構造の各ノードは、対応するＣＵへシンタックスデータを共有し得る。たとえば、４分木におけるノードは、ノードの対応するＣＵがサブＣＵ内へ分割されるかを示す分割フラグを含み得る。ＣＵのためのシンタックス要素は、繰り返し定義され得、ＣＵがサブＣＵ内へ分割されるかに依存し得る。
【００４７】
分割されないＣＵは、１つ又はそれ以上の予想ユニット（ＰＵ）を含み得る。一般に、ＰＵは、相当するＣＵの全部又は一部を表し、ＰＵのための参照サンプルを検索するためのデータを含む。たとえば、ＰＵが相互モードエンコードされる場合、ＰＵは、ＰＵのための相互予想モードを記述するデータを含み得る。他の例として、ＰＵが内部モードエンコードされる場合、ＰＵは、ＰＵのための動作ベクトルを定義するデータを含み得る。たとえば、動作ベクトルを定義するデータは、動作ベクトルの水平コンポーネント、動作ベクトルの垂直コンポーネント、動作ベクトルのための解像度（たとえば、１／４ピクセル精度又は１／８ピクセル精度）、動作ベクトルが指し示す参照フレーム、及び／又は動作ベクトルのための参照リスト（たとえば、リスト０又はリスト１）を記述し得る。たとえば、ＰＵを定義するＣＵのためのデータはまた、１つ又はそれ以上のＰＵ内へのＣＵの区分を示し得る。区分モードは、ＣＵがコード化されない、内部予想モードコーディングされる、又は相互予想モードコーディングされるかの間で異なり得る。
【００４８】
１つ又はそれ以上のＰＵを持つＣＵはまた、１つ又はそれ以上の変換ユニット（ＴＵ）を含み得る。ＴＵは、残差変換係数を含むデータ構造を備え、ここでそれは、一般的に量子化される。特に、ＰＵを使用する予想に次いで、ビデオエンコーダは、ＰＵに対応するＣＵの一部のため残差値を計算し得る。残差値は、ＴＵにおいて変換され、量子化され、スキャンされ、及び格納され得、ここでそれは、実行さえた変換のサイズに対応する可変サイズを持ち得る。したがって、ＴＵは、ＰＵのサイズに限定される必要はない。したがって、ＴＵは、同一のＣＵのため対応するＰＵよりも大きい又は小さくあり得る。いくつかの例において、ＴＵの最大サイズは、相当するＣＵのサイズであり得る。再び、ＴＵは、与えられるＣＵに関連する残差変換係数を含むデータ構造を備え得る。
【００４９】
図２Ａ及び２Ｂは、例示の４分木２５０及び相当する最も大きいコーディングユニット２７２を示す概念的なブロックである。図２Ａは、例示の４分木を描き、ここでそれは、階層式に整えられるノードを含む。４分木２５０のような４分木における各ノードは、子を持たないリーフノードであり、又は４つの子を持ち得る。図２Ａの例において、４分木２５０は、ルートノード２５２を含む。ルートノード２５２は、リーフノード２５６Ａ−２５６Ｃ（リーフノード２５６）及びノード２５４を含む４つの子ノードを持つ。ノード２５４は、リーフノードではなく、ノード２５４は、４つの子ノードを含み、ここでそれは、この例においてリーフノード２５８Ａ−２５８Ｄ（リーフノード２５８）である。
【００５０】
４分木２５０は、この例におけるＬＣＵ２７２のような、相当する最も大きいコーディングユニット（ＬＣＵ）の特性を記述するデータを含み得る。たとえば、その構造によって、４分木２５０は、サブＣＵ内へのＬＣＵの分割を記述し得る。ＬＣＵ２７２は、２Ｎ×２Ｎのサイズを持つと仮定する。この例において、ＬＣＵ２７２は、それぞれサイズＮ×Ｎである、４つのサブＣＵ２７６Ａ−２７６Ｃ（サブＣＵ２７６）及び２７４を持つ。サブＣＵ２７４は、それぞれサイズＮ／２×Ｎ／２である、４つのサブＣＵ２７８Ａ−２７８Ｄ（サブＣＵ２７８）内へさらに分割される。この例において、４分木２５０の構造は、ＬＣＵ２７２の分割に相当する。つまり、ルートノード２５２は、ＬＣＵ２７２に相当し、リーフノード２５６は、サブＣＵ２７６に相当し、ノード２５４は、サブＣＵ２７４に相当し、及びリーフノード２５８は、サブＣＵ２７８に相当する。
【００５１】
４分木のノードのためのデータは、ノードに対応するＣＵが分割されるかを記述し得る。ＣＵが分割される場合、４つの追加的なノードは、４分木２５０において存在し得る。いくつかの例において、４分木のノードは、次の疑似コードと同様に実施され得る：
quadtree_node {
boolean split_flag(1);
// signaling data
if (split_flag) {
quadtree_node child1;
quadtree_node child2;
quadtree_node child3;
quadtree_node child4;
}
}
分割フラグ（split_flag）値は、現在のノードに対応するＣＵが分割されるかを表している１ビット値であり得る。ＣＵが分割されない場合、分割フラグ値は、「０」であり得、一方、ＣＵが分割される場合、分割フラグ値は、「１」であり得る。４分木の例に関連して、分割フラグ値のアレイは、１０１００００００であり得る。
【００５２】
いくつかの例において、サブＣＵ２７６及びサブＣＵ２７８のそれぞれは、同様の内部予想モードを使用してエンコードされる内部予想であり得る。したがって、ビデオエンコーダ１２２は、ルートノード２５２における内部予想モードの指示を供給し得る。さらに、サブＣＵのあるサイズは、特定の内部予想モードのため多数の可能な変換を持ち得る。この開示の技術に従って、ビデオエンコーダ１２２は、ルートノード２５２においてそのようなサブＣＵへ使用するための変換の指示を供給し得る。たとえば、サイズＮ／２×Ｎ／２のサブＣＵは、利用可能な多数の可能な変換を持ち得る。ビデオエンコーダ１２２は、ルートノード２５２において使用するための変換を信号で送信し得る。したがって、ビデオデコーダ１２８は、ルートノード２５２において信号で送信される内部予想モードとルートノード２５２において信号で送信される変換に基づいてサブＣＵ２７８へ適用するための変換を決定し得る。
【００５３】
そのように、ビデオエンコーダ１２２は、リーフノード２５６及びリーフノード２５８におけるサブＣＵ２７６及びサブＣＵ２７８へ適用されるため変換を信号で送信する必要がないが、代わりに、内部予想モード及び、いくつかの例においてこの開示の技術に従って、ルートノード２５２において、サブＣＵのあるサイズへ適用するための変換を単に信号で送信し得る。この方法において、この技術は、ＬＣＵ２７２のような、ＬＣＵの各サブＣＵのためのシグナリング変換機能のオーバーヘッドコストを減少させ得る。
【００５４】
いくつかの例において、サブＣＵ２７６及び／又はサブＣＵ２７８のための内部予想モードは、ＬＣＵ２７２のための内部予想モードと異なり得る。ビデオエンコーダ１２２及びビデオデコーダ１２８は、ルートノード２５２で信号で送信される内部予想モードを、サブＣＵ２７６及び／又はサブＣＵ２７８のための利用可能な内部予想モードにマップする機能を用いて構成され得る。機能は、サブＣＵ２７６及び／又はサブ２７８のための内部予想モードへのＬＣＵ２７２のために利用可能な内部予想モードの多数対１のマッピングを供給し得る。
【００５５】
スライスは、ビデオブロック（又は、ＬＣＵ）内へ分割され得、各ビデオブロックは、図２Ａ−Ｂに関して記述される４分木構造に従って分割され得る。追加的に、図２Ｃにおいて示されるように、「ＯＮ」によって示される４分木サブブロックは、本文中に記述されるループフィルタによってフィルタ処理され得、一方、「ＯＦＦ」によって示される４分木サブブロックは、フィルタ処理されないこともあり得る。与えられるブロック又はサブブロックをフィルタするか否かの決定は、コード化される元のブロックと、フィルタ処理される結果及びフィルタ処理されない結果とを比較することによってエンコーダで決定され得る。図２Ｄは、図２Ｃにおいて示される４分木区分を結果として生じる区分決定を表す決定ツリーである。
【００５６】
特に、図２Ｃは、変化するサイズのより小さいビデオブロック内への４分木分配スキームに従って分割される比較的大きいビデオブロックを表し得る。各ビデオブロックは、フィルタリングがビデオブロックのために適用され又は避けられるべきか示すため、図２において表示（ｏｎ又はｏｆｆ）される。ビデオエンコーダは、コード化される元のビデオブロックと各ビデオブロックのフィルタ処理される及びフィルタ処理されないバージョンとを比較することでこのフィルタマップを定義し得る。
【００５７】
再度、図２Ｄは、図２Ｃにおいて示される４分木を結果として生じる区分決定に対応する決定ツリーである。図２Ｄにおいて、各円は、ＣＵに対応し得る。円が「１」フラグを含む場合、そのときその円は、４つのさらなるＣＵ内へさらに分割され、しかし、円が「０」フラグを含む場合、そのときその円は、さらに分割されない。各円（たとえば、ＣＵに対応する）はまた、関連する３つ組を含む。与えられるＣＵのための３つ組におけるフラグが１へセットされる場合、そのときフィルタリングは、そのＣＵに関して「ＯＮ」になり、しかし、与えられるＣＵの３つ組におけるフラグが０へセットされる場合、そのときフィルタリングは、オフになる。この方法において、図２Ｃ及び２Ｄは、エンコーダで生成され、それぞれ区分されるビデオブロック（たとえば、ＬＣＵ内の各ＣＵ）へフィルタリングを適用するか否かを、与えられるビデオブロック（たとえば、ＬＣＵ）のための４分木区分のレベルを伝達するためのエンコードされるビデオデータのスライスごとに少なくとも１度デコーダへ伝達されることができるフィルタマップとして個々に又は集合的に示され得る。
【００５８】
より小さいビデオブロックは、よりよい解像度を供給することができ、高いレベルの細部を含むビデオフレームの位置のために使用され得る。より大きなビデオブロックは、より大きなコーディング効果を供給することができ、引くレベルの細部を含むビデオフレームの位置のために使用され得る。スライスは、多数のビデオブロック又はサブブロックであると考えられ得る。各スライスは、ビデオフレームのビデオブロックの独立にデコード可能なシリーズであり得る。あるいはまた、フレーム自身は、ビデオブロックのデコード可能なシリーズであり得、またフレームの他の部分は、ビデオブロックのデコード可能なシリーズとして定義され得る。「ビデオブロックのシリーズ」という用語は、全体のフレーム、フレームのスライス、シーケンスと呼ばれもする画像のグループ（ＧＯＰ）、又は、適用可能なコーディング技術に従って定義される他の独立にデコード可能なユニットのようなビデオフレームの任意の独立にデコード可能な部分を示し得る。この開示の態様は、フレーム又はスライスに関連して記述され得、しかしそのような参照は、単に例である。一般的に任意のシリーズのビデオブロックがフレーム又はスライスの代わりに使用され得ることは、理解されるべきである。
【００５９】
それぞれコード化されるユニットが関連するシンタックスデータを含むように、シンタックスデータは、完全にコード化されるユニット基準によって定義され得る。フィルタ記述シンタックスを含む、本文中に記述されるフィルタ情報は、コード化されるユニットのためそのようなシンタックスの一部であり得るが、おそらくはコード化されるユニットの代わりに、フレーム、スライス、ＧＯＰ、ＬＣＵ、一連のビデオブロックのようなビデオブロックの一部であり得る。シンタックスデータは、フィルタのセット又は複数のセットがスライス又はフレームのコード化されるユニットを用いて使用されることを示す。追加的に、すべてのフィルタ情報は、必ずしもビデオブロックの共通のシリーズのヘッダにおいて含まれなければならないというわけではない。たとえば、フィルタ記述シンタックスは、フレームヘッダにおいて送信され得るが、一方他のフィルタ情報は、ＬＣＵのためヘッダにおいて送信される。
【００６０】
ビデオエンコーダ１２２は、コード化されるビデオブロックが予想ブロックを特定するため予想フレーム（又は、他のコード化されるユニット）と比較される予想コーディングを実行し得る。コード化される現在のビデオブロックと予想ブロックとの間の相違は、残差ブロックとしてコード化され、予想シンタックスは、予想ブロックを特定するために使用される。残差ブロックは、変換され量子化され得る。変換技術は、ＤＣＴ処理若しくは概念的に同様な処理、積分変換、ウェブレット変換、又は変換の他のタイプを備え得る。例としてＤＣＴ処理において、変換処理は、変換係数内へピクセル値のセットを転換し、ここで、それは、周波数領域においてピクセル値のエネルギーを示し得る。量子化は、一般的に変換係数へ適用され、任意の与えられる変換係数に関連するビットの数を限定する処理を一般に含む。
【００６１】
変換及び量子化の次に、エントロピーコーディングは、量子化され変換される残差ビデオブロックで実行され得る。エンコーディング中に定義されるフィルタ情報及び予想ベクトルのような、シンタックス要素はまた、それぞれコード化されるユニットのためエントロピーコーディングされるビットストリームにおいて含まれ得る。一般に、エントロピーコーディングは、一連の量子化される変換係数及び／又は他のシンタックス情報をひとまとめに備える１つ又はそれ以上の処理を備える。ジグザグスキャニング技術のような、スキャニング技術は、２次元ビデオブロックからの係数の１つ又はそれ以上の連続する１次元ベクトルを定義するため、たとえば、エントロピーコーディング処理の一部として、量子化される変換係数で実行される。他のスキャン順序又は適用可能な順序を含む、他のスキャン技術はまた、使用され、ことによるとエンコードされるビットストリームにおいて信号で送信される。任意の事例において、スキャンされる係数は、そのとき、たとえば、コンテクスト適応可変長符号化（ＣＡＶＬＣ）、コンテクスト適用算術符号化（ＣＡＢＡＣ）、又は他のエントロピーコーディング処理を通じて、任意のシンタックス情報に加えてエントロピーコーディングされる。
【００６２】
エンコーディング処理の一部として、エンコードされるビデオブロックは、後のビデオブロックの後の予想ベースコーディングのために使用されるビデオデータを生成するためにデコードされ得る。このステージで、フィルタリングは、ビデオクオリティを改善するために実行され、たとえば、デコードされるビデオからブロックノイズアーティファクトを取り除き得る。フィルタリングが「インループ」フィルタリングと呼ばれる事例において、フィルタ処理されるデータは、他のビデオブロックの予想のために使用され得る。あるいはまた、フィルタリングが「ポストフィルタリング」と呼ばれる事例において、他のビデオブロックの予想は、フィルタ処理されないデータに基づき得る。
【００６３】
フレームごと、スライスごと、又はＬＣＵごとに、エンコーダは、フィルタの１つ又はそれ以上のセットを選択し得、及びコード化されるユニットごとに、（複数の）セットから１つ又はそれ以上のフィルタを選択し得る。両者の選択は、ビデオクオリティを促進する方法において行われることができる。フィルタのそのようなセットは、フィルタの仮に定義されるセットから選択され得、また、ビデオクオリティを促進するために適用的に定義され得る。例として、異なるフィルタがフレーム又はスライスのコード化されるユニットの異なるピクセル又はピクセルのグループのために使用されるように、ビデオエンコーダ１２２は、与えられるフレーム又はスライスのためにフィルタのいくつかのセットを選択し定義し得る。特に、コード化されるユニットに関する各入力のため、フィルタ係数のいつくかのセットは、定義され得、及び、コード化されるユニットのピクセルに関連する活動メトリックは、フィルタのセットからどのフィルタがそのようなピクセルを使用するかを決定するために使用される。いくつかの例において、フィルタは、ピクセルごとにピクセルにために選択され適用され得る。しかしながら、他の例において、フィルタは、選択され、グループごとにピクセルに適用され、ここで、たとえば、各グループは、ピクセルの２×２ブロック又は４×４ブロックであり得る。
【００６４】
いくつかの事例において、ビデオエンコーダ１２２は、フィルタ係数のいつくかのセットを適用し、コード化されるブロックと元のブロックとの間のゆがみの観点から最もよいクオリティビデオ及び／又は、最も高いレベルの圧縮を作り出す１つ又はそれ以上のセットを選択し得る。任意の事例において、いったん選択されると、ビデオエンコーダ１２２によってそれぞれコード化されるユニットに適用されるフィルタ係数のセットは、エンコードされ、行先機器１１６のビデオエンコーダ１２８へ伝達されるので、ビデオデコーダ１２８は、それぞれ与えられコード化されるユニットの関するエンコーディング処理中に適用された同様のフィルタリングを適用することができる。
【００６５】
この開示において議論されるように、フィルタ記述シンタックスは、フィルタを再構成するために必要とされるビットの数を減少させるために使用されることができる。活動メトリックがどのフィルタがコード化されるユニットのために特定の入力を使用するかを決定するための使用される場合、特定のコード化されるユニットのためのフィルタの選択は、必ずしもビデオデコーダ１２８へ伝達される必要はない。代わりに、ビデオデコーダ１２８はまた、コード化されるユニットのため活動メトリックを計算し、及び、ビデオエンコーダ１２２によって過去に供給されるフィルタ情報に基づいて特定のフィルタへ活動メトリックをマッチさせることができる。
【００６６】
図３は、この開示と一致するビデオエンコーダ３５０を示すブロック図である。ビデオエンコーダ３５０は、機器１２０のビデオエンコーダ１２２又は異なる機器のビデオエンコーダに相当し得る。図３において示されるように、ビデオエンコーダ３５０は、予想ユニット３３２、加算器３４８並びに３５１及びメモリ３３４を含む。ビデオエンコーダ３５０はまた、逆量子化ユニット３４２及び逆変換ユニットはもちろん、変換ユニット２２８及び量子化ユニット３４０を含む。ビデオエンコーダ３５０はまた、デブロッキングフィルタ３４７及び適用可能なフィルタユニット３４９を含む。ビデオエンコーダ３５０はまた、エントロピーエンコーディングユニット３４６を含む。ビデオエンコーダ３５０のフィルタユニット３４９は、フィルタリング動作を実行し得、及び、またデコーディングのために使用される所望の又はより好ましいフィルタ又はフィルタのセットと特定するためフィルタ選択ユニット（ＦＳＵ）（３５３）を含み得る。フィルタユニット３４９はまた、選択されるフィルタを特定するフィルタ情報を生成し得るので、選択されるフィルタは、デコーディング処理中に使用されるための他の機器へフィルタ情報として効率的に伝達されることができる。
【００６７】
エンコーディング処理中に、ビデオエンコーダ３５０は、コード化されるための、ＬＣＵのような、ビデオブロックを受信し、予想ユニット３３２は、ビデオブロックで予想コーディング技術を実行する。上に議論される４分木区分スキームを使用して、予想ユニット３３２は、ビデオブロックを分割し、及び、異なるサイズのコーディングユニットで予想コーディング技術を実行することができる。相互コーディングに関して、予想ユニット３３２は、予想ブロックを定義するため、ビデオブロックのサブブロックを含む、エンコードされるためのビデオブロックを、１つ又はそれ以上のビデオ参照フレーム又はスライスにおける様々なブロックと比較する。内部コーディングに関して、予想
相互コーディングに関して、予想ユニット３３２は、予想ブロックを指し示す動作ベクトルと特定し及び動作ベクトルに基づいて予想ブロックを生成する動作評価及び動作補償を備え得る。一般的に、動作評価は、動作ベクトルを生成することの処理とみなされ、ここでそれは、動作を評価する。たとえば、動作ベクトルは、現在のフレーム内でコード化される現在のブロックと比較して予想フレーム内の予想ブロックの置き換えを指示し得る。動作補償は、動作評価に行って決定される動作ベクトルに基づいて予想ブロックを取りに行くこと又は生成することの処理と一般的にみなされる。内部コーディングに関して、予想ユニット３３２は、同様のコード化されるユニット内の隣接するデータに基づいて予想ブロックを生成する。１つ又はそれ以上の内部予想モードは、どのように内部予想ブロックが定義されることができるかを定義し得る。
【００６８】
予想ユニット３３２が予想ブロックを出力し及び加算器４８が残差ブロックを生成するためのコード化されるビデオブロックから予想ブロックを控除する後に、変換ユニット３８は、残差ブロックへ変換を適用する。変換は、離散コサイン変換（ＤＣＴ）又はＨＥＶＣ標準のようなコーディング標準によって定義されるもののような概念的に同様の変換を備え得る。ウェブレット変換、積分変換、サブバンド変換又は、変換の他のタイプはまた、使用されることができる。任意の事例において、変換ユニット３３８は、残差ブロックへ変換を適用し、残差変換係数のブロックを生成する。変換は、ピクセル領域から周波数領域へ残差情報を転換し得る。
【００６９】
量子化ユニット３４０は、そのときビットレートをさらに減少させるため残差変換係数を量子化する。たとえば、量子化ユニット３４０は、係数のそれぞれをコード化するために使用されるビットの数を限定し得る。量子化の後、エントロピーエンコーディングユニット３４６は、２次元の表現から１つ又はそれ以上の連続する１次元ベクトルへ量子化される係数ブロックをスキャンする。スキャン順序は、（ジグザグスキャニング、水平スキャニング、垂直スキャニング、組み合わせ、又は他の予め定義される順序のような）定義される順序又は過去のコーディング状況に基づいて定義されることによると適用可能なものを生じるためにプレプログラムされ得る。
【００７０】
このスキャニング処理の次に、エントロピーエンコーディングユニット３４６は、データのさらなる圧縮のため、ＣＡＶＬＣ又はＣＡＢＡＣのおうなエントロピーコーディング方式に従って量子化される変換係数（任意のシンタックス要素と共に）をエンコードする。エントロピーコーディングされるビットストリームにおいて含まれるシンタックス要素は、相互コーディングのための動作ベクトル又は内部コーディングのための予想モードのような、予想ユニット３３２からの予想シンタックスを含み得る。エントロピーコーディングされるビットストリームにおいて含まれるシンタックス要素はまた、フィルタユニット３４９からのフィルタ情報を含み得、ここでそれは、本文中に記述される方法においてエンコードされることができる。
【００７１】
ＣＡＶＬＣは、ＩＴＵ  Ｈ．２６４／ＭＰＥＧ４、ＡＶＣ標準によってサポートされるエントロピーエンコーディング技術の１つのタイプであり、ここでそれは、エントロピーエンコーディングユニット３４６によってベクトル化される基準に基づいて適用され得る。ＣＡＶＬＣは、変換係数及び／又はシンタックス要素の連続する「実行」を効果的に圧縮する方法において可変長符号化（ＶＬＣ）テーブルを使用する。ＣＡＢＡＣは、ＩＴＵ  Ｈ．２６４／ＭＰＥＧ４、ＡＶＣ標準によってサポートされるエントロピーコーディング技術の他のタイプであり、ここで、それは、エントロピーエンコーディングユニット３４６によってベクトル化される基準に基づいて適用され得る。ＣＡＢＡＣは、二値化、状況モデル選択、及び二進算術符号化を含むいくつかのステージを含む。この事例において、エントロピーエンコーディングユニット３４６は、ＣＡＢＡＣに従って変換係数及びシンタックス要素をコード化する。ＩＴＵ  Ｈ．２６４／ＭＰＥＧ４、ＡＶＣ標準のように、出現するＨＥＶＣ標準はまた、ＣＡＶＬＣ及びＣＡＢＡＣエントロピーコーディングの両者をサポートし得る。さらに、エントロピーコーディング技術の多くの他のタイプはまた存在し、新しいエントロピーコーディング技術は、将来においておそらく出現するだろう。この開示は、任意の特定のエントロピーコーディング技術に限定されるものではない。
【００７２】
エントロピーエンコーディングユニット３４６によるエントロピーコーディングの次に、エンコードされるビデオは、他の機器へ送信され、又は、より遅れての送信又は検索のためにアーカイブされ得る。再度、エンコードされるビデオは、エントロピーコーディングされるベクトル及び様々なシンタックスを備え得、ここでそれらは、デコーディング処理を適切に構成するためにデコーダによって使用されることができる。逆量子化ユニット３４２及び逆変換ユニット３４４は、ピクセル領域において残差ブロックを再構成するため、それぞれ逆量子化及び逆変換を適用する。加算器３５１は、ときどきプレデブロックされ再構成されるビデオイメージと呼ばれる、プレデブロックされ再構成されるビデオブロックを生成するために、再構成される残差ブロックを予想ユニット３３２によって生成される予想ブロックへ加算する。デブロッキングフィルタ３４７は、ブロックノイズ又は他のアーティファクトを除去することによってビデオクオリティを改善するためフィルタリングをプレオデブロックされ再構成されるビデオブロックへ適用し得る。デブロッキングフィルタ３４７の出力は、ポストデブロックされるビデオブロック、再構成されるビデオブロック、又は再構成されるイメージと呼ばれることができる。
【００７３】
フィルタユニット３４９は、多重入力を受信するための構成されることができる。図３の例において、フィルタユニット３４９は、入力として、ポストデブロックされ再構成されるイメージ（ＲＩ）、プレデブロックされ再構成されるイメージ（ｐＲＩ）、予想イメージ（ＰＩ）、及び再構成される残差ブロック（ＥＩ）を受信する。フィルタユニット３４９は、メモリ３３４内に格納するための再構成されるイメージを生成するため独立に又は組み合わせのいずれかで任意のこれらの入力を使用することができる。追加的に、以下により詳細に議論されるように、活動メトリックに基づいて、１つ又はそれ以上のフィルタは、（複数の）入力へ適用されるために選択されることができる。１つの例において、フィルタユニット３４９の出力は、ＲＩへ適用される１つの追加のフィルタであり得る。他の例において、フィルタユニット３４９の出力は、ｐＲＩへ適用される１つの追加のフィルタであり得る。他の例において、しかしながら、フィルタユニット３４９の出力は、多重入力に基づき得る。たとえば、フィルタユニット３４９は、再構成されるイメージを生成するためにＥＩ及びＰＩのフィルタ処理されるバージョンに関連して、ｐＲＩへ第１フィルタを適用し、そのとき、ｐＲＩのフィルタ処理されるバージョンを使用し得る。フィルタユニット３４９の出力が単入力へ適用される１つの追加のフィルタの結果である例において、実際は、フィルタユニット３４９は、他の入力にフィルタを適用し得るが、これらのフィルタは、すべてのゼロ係数を持ち得る。同様に、フィルタユニット３４９の出力が３つの入力へ３つのフィルタを適用することの結果である場合、実際は、フィルタユニット３４９は、４つの入力へフィルタを適用し得るが、フィルタは、すべてのゼロ係数を持ち得る。
【００７４】
フィルタユニット３４９はまた、単入力を受信するために構成され得る。たとえば、図３がフィルタユニット３４９内へ入力されるＰＩ、ＥＩ、ｐＲＩ及びＲＩを示すが、いくつかの実施形態において、ＲＩは、フィルタユニット３４９によって受信される入力のみであり得る。そのような実施形態において、フィルタユニット３４９は、ＲＩへフィルタを適用し得るので、ＲＩのフィルタ処理されるバージョンは、ＲＩのフィルタ処理されないバージョンよりも元のバージョンにより類似する。他の実施形態において、フィルタユニット３４９及びデブロッキングフィルタ３４７は、ｐＲＩへフィルタリングを適用する単一のフィルタリング内へ結合され得る。フィルタ記述シンタックスの使用を含む、この開示の技術は、多重フィルタを利用する単入力及び多重入力の両者に互換性がある。
【００７５】
フィルタユニット３４９によるフィルタリングは、フィルタ処理されないものよりもコード化されるビデオブロックによりぴったりとマッチする予想ビデオブロックを生成することによって圧縮を改善し得る。フィルタリングの後、再構成されるビデオブロックは、過去のビデオフレーム又は他のコード化されるユニットにおいてブロックを相互コード化するための参照ブロックとしての予想ユニット３３２によって使用され得る。フィルタユニット３４９が「インループ」で示されるが、フィルタ処理されないデータ（むしろフィルタ処理されるデータ）が過去のコード化されるユニットにおいてデータを予想することの目的のため使用されるであろう事例において、この開示の技術は、ポストフィルタを用いて使用されることができる。
【００７６】
スライス又はフレームに関して、フィルタユニット３４９は、ビデオクオリティを促進する方法において各入力のためフィルタのセットを選択し得る。たとえば、フィルタユニット３４９は、係数の仮に定義されるセットからフィルタのセットを選択し得、又は、ビデオクオリティ又は改善される圧縮を促進するためにフィルタを適用的に定義され得る。フィルタの同様の（複数の）セットがコード化されるユニットの異なるビデオブロックのピクセルのために使用されるように、フィルタユニット３４９は、与えられコード化されるユニットのためフィルタの１つ又はそれ以上のセットを選択し定義し得る。特定のフレーム、スライス、又はＬＣＵに関して、フィルタユニット３４９は、多重入力へフィルタのいくつかのセットを適用し得、ＦＳＵ３５３は、最もよいクオリティビデオ又は最も高いレベルの圧縮を生成するセットを選択し得る。あるいはまた、ＦＳＵ３５３は、多重入力と元のイメージとの間の自己相関及び相互相関を分析することによって新しいフィルタを仕込み得る。たとえば、フィルタの新しいセットは、自己及び相互相関に基づいてウイーナ・ホッフ方程式を解くことで決定され得る。フィルタの新しいセットが仕込まれ又はフィルタの存在するセットが選択されるかに関わらず、フィルタユニット３４９は、デコーダに特定のフレーム又はスライスのために使用されるためフィルタのセット又は複数のセットを特定もすることを可能にするビットストリームにおける包含のためシンタックスを生成する。
【００７７】
この開示に従って、フレーム又はスライス内のコード化されるユニットの各ピクセルに関して、フィルタユニット３４９は、フィルタのセットからどのフィルタがコード化されるユニット内のピクセルの１つ又はそれ以上のセットに関連する活動の量を図る活動メトリックに基づいて使用されるかを選択し得る。この方法において、ＦＳＵ３５３は、フレーム又はスライスのようなより高いレベルのコード化されるユニットのためフィルタのセットを決定し得るが、一方、フィルタユニット３４９は、（複数の）セットからどの（複数の）セットがより低いレベルのコード化されるユニットのピクセルに関連する活動に基づいてより引くレベルのコード化されるユニットの特定のピクセルのために使用されるかを決定する。活動は、コード化されるユニット内のピクセル値の相違の観点から示され得る。コード化されるユニットにおけるピクセル値におけるより大きい相違は、より高いレベルのピクセル活動を示し得るが、一方、ピクセル値におけるより小さい装置は、より低いレベルのピクセル活動を示し得る。異なるフィルタ（即ち、異なるフィルタ係数）は、ピクセル相違、即ち、活動、のレベルに基づいてより良いフィルタリング（たとえば、より高いイメージクオリティ）を結果として生じえる。ピクセル相違は、活動メトリックによって量を測定され得、ここで、それは以下により詳細に議論されるように和修正ラプラシアン値を備え得る。しかしながら、活動メトリックの他のタイプはまた、使用され得る。
【００７８】
各入力のための単フィルタの代わりに、Ｍ個のフィルタのセットは、各入力のために使用され得る。設計性能に依存して、たとえば、Ｍは、わずか２若しくは１６と同じほど、又はより大きい偶数であり得る。入力ごとの多数のフィルタは、ビデオクオリティを改善し得、しかしまたエンコーダからデコーダへフィルタのセットを信号で送信することに関連するオーバーヘッドを上昇させ得る。Ｍ個のフィルタのセットは、上に記述されるようなＦＳＵ３５３によって決定され、及び各フレーム又はスライスのためデコーダへ送信され得る。分割マップは、コード化されるユニットがどのように分けられるか及びコード化されるユニットの特定のサブユニットがフィルタ処理されるか否かを示すために使用されることができる。たとえば、分割マップは、各サブコーディングされるユニットがフィルタ処理されるかを信号で示す追加のビットはもちろん上に記述されるような分割フラグのアレイをコード化されるユニットのために含み得る。フィルタ処理されるべきコード化されるユニットのピクセルに関連する各入力に関して、フィルタのセットからの特定のフィルタは、活動メトリックに基づいて選択されることができる。活動メトリックは、次のようにピクセル（ｉ，ｊ）のため和修正ラプラシアンを使用して計算されることができる：
【数１】
0005602948.tif 000002
【００７９】
１つの例として、周辺のピクセルの７×７（Ｋ、Ｌ＝３）グループは、和修正ラプラシアン値の計算のために使用され得る。和修正ラプラシアン値の特定の範囲のために使用されるためのＭ個のフィルタのセットからの特定のフィルタはまた、Ｍ個のフィルタのセットを持つデコードへ送信されることができる。フィルタ係数は、前のフレーム又は他の技術のため送信される係数からの予想を使用してコード化されることができる。たとえば、ダイアモンド形サポート四角形サポートを持つ１×１、３×３、５×５、７×７及び９×９フィルタを含む様々な形及びサイズのフィルタは、使用され得る。
【００８０】
フィルタへの入力のための和修正ラプラシアン値の索引付けは、多数の方法において実施されることができる。たとえば、いくつかの実施形態において各入力がフィルタの唯一のセットを持ち得るが、一方、いくつかの実施形態において入力は、フィルタの共通のセットを共有する。追加的に、いくつかの実施形態において、各入力のための和修正ラプラシアン値は、各入力ための特定のフィルタを特定するために使用され得る。しかしながら他の実施形態において、単入力のための和修正ラプラシアン値は、すべての入力のためフィルタを特定するために使用され得る。また他の実施形態において、第１入力のための和修正ラプラシアン値は、第２の異なる入力のためフィルタを特定するために利用され得る。
【００８１】
この開示に従って、フィルタユニット３４９は、エンコードに必要とされるデータの量を減少させエンコーダ３５０から他の機器へフィルタ情報を運び得るフィルタ情報に関連するコーディング技術を実行する。再度、各フレーム又はスライスに関して、フィルタユニット３４９は、フレーム又はスライスのためコード化されるユニットのピクセルに適用されるためのフィルタ係数の１つ又はそれ以上のセットを定義し又は選択し得る。フィルタユニット３４９は、メモリ３３４において格納される再構成されるビデオフレームのビデオブロックをフィルタ処理するためフィルタ係数を適用し、ここでそれは、インループフィルタリングと一致する予想コーディングのために使用され得る。フィルタユニット３４９は、フィルタ情報としてフィルタ係数をエンコードすることができ、ここでそれは、エンコードされるビットストリームにおける包含のためエントロピーエンコーディングユニット３４６へ転送される。
【００８２】
フィルタ情報は、フィルタのセットにおいて含まれるためのフィルタの再々数を示すフィルタ記述シンタックスを含むことができる。たとえば、フィルタ記述シンタックスは、スライス又はフレームのようなより高いレベルのコード化されるユニットに関連するシンタックスにおいて含まれ得るが、ＬＣＵのような、より低いレベルのコード化されるユニットのためのフィルタの数は、より低いレベルのコード化されるユニットに関連するシンタックスにおいて信号で送信され得る。特定のより低いレベルのコード化されるユニットのためのフィルタのセットにおけるフィルタの数は、より低いレベルのコード化されるユニットのため可能とされるフィルタの最大数よりも少なくなり得る。たとえば、スライス又はフレームがセットごとに８個のフィルタの最大数を持つ場合、スライス又はフレームにおけるいくつかのＬＣＵは、セットごとに８個のフィルタを持ち得るが、他のＬＣＵは、２若しくは４又は１及び８の間の任意の他の数のみを持ち得る。
【００８３】
フィルタのセットにおいて含まれるためのフィルタの最大数をエンコーダからデコーダへ運ぶためフィルタ記述シンタックスを使用することによって、多数のフィルタが圧縮率又は再構成されるビデオクオリティのいずれかを改善する場合にフィルタユニット３４９が多数のフィルタを持つフィルタのセットを使用することができるので全体のコーディング性能は、改善され得るが、多数のフィルタが利益なく又は最小の利益しかない場合フィルタユニット３４９はまた、少数のフィルタを使用するのみであり得る。少数のフィルタを使用することは、フィルタ係数を再構成するために必要とされるビットの数を減少させることによってビデオエンコーダ３５０によって転送されるビットの全体数を減少させることができる。追加的に、フィルタの最大数を特定するためフィルタ記述シンタックスを使用することは、活動メトリックフィルタ索引を送信するために必要とされるビット数を減少させ得る。活動メトリックフィルタ索引のための領域の数は、たびたび、ビデオブロックの任意の特定のシリーズのために使用されるフィルタの数だけでなく、許可されるフィルタの最大数の結果である。たとえば、特定のフィルタのセットのためのフィルタの最大数が１６である場合、そのときセットのための活動メトリックフィルタ作新は、１６個の領域を持ち得る。４個のフィルタのような、より少数のフィルタセットを使用する場合でさえ、４個のフィルタはまだ、各領域のためにあるビット数を使用して１６個の藩地のそれぞれへマップされるべきである。しかしながら、フィルタのセットが８個のフィルタの最大数を持つ場合、そのとき４個のフィルタは、８個の領域へマップされる必要のみがあり、ここでそれらは、より少ないビットを要求し得る。追加的に、フィルタの最大数を特定するためにフィルタ記述シンタックスを使用することはまた、デコーダにより少ないビットを使用する活動メトリックフィルタ索引を格納することを可能にすることによってデコーダで活動メトリックフィルタ索引の記録を改善し、したがってより少ないメモリを活動メトリックフィルタ索引を格納することに割り当て得る。
【００８４】
フィルタ記述シンタックスの他のタイプはまた、使用され得る。たとえば、フィルタの形を記述するフィルタ記述シンタックスは、エンコーダからデコーダへ送信され得る。フィルタのセットにおいて使用されるためのフィルタの形を運ぶためフィルタ記述シンタックスを使用することによって、異なる形が圧縮率又は再構成されるビデオクオリティのいずれかを改善する場合、フィルタユニット３４９は、異なる形のフィルタを利用することができる。たとえば、いくつかの例において、フィルタユニット３４９は、９×９フィルタのセットを含み得るが、９×９フィルタがコーディング性能をかなり改善しない例において、フィルタユニット３４９は、代わりに９×５フィルタのセットを利用し得る。９×５フィルタを使用することによって、より少ないビットは、エンコーダからデコーダへフィルタ係数を送信するために必要とされる。
【００８５】
追加的に、この開示の技術は、ＦＳＵ３５３によって定義され又は選択されるフィルタ係数のいくつかが他のフレーム又はスライスのコード化されるユニットのピクセルに関連し適用される他のフィルタ係数によく類似し得る事実を利用し得る。フィルタの同様のタイプは、異なるフレーム又はスライス（たとえば、同様のフィルタサポート）へ適用され得るが、フィルタは、フィルタサポートの異なる索引に関連するフィルタ係数値の観点から異なり得る。したがって、そのようなフィルタ係数を運ぶために必要とされるデータの量を減少させるため、フィルタユニット３４９は、フィルタ係数間の任意の類似性を利用して、他のコード化されるユニットのフィルタ係数に基づくフィルタリングのために利用されるため１つ又はそれ以上のフィルタ係数を予想としてエンコードし得る。いくつかの事例において、しかしながら、たとえば任意の予想を使用することなく、直接フィルタ係数をエンコードすることがより望まれ得る。予想コーディング技術を使用してフィルタ係数をエンコードするとき及び任意の予想コーディング技術を使用せずに直接フィルタ係数をエンコードするときを定義するため活動メトリックの使用を利用する技術のような、様々な技術は、デコーダへフィルタ係数を効果的に通信することのために使用されることができる。追加的に、対称性はまた課され得るので、デコーダによって知られる係数（たとえば、５、−２、１０）のサブセットは、係数（たとえば、５、−２、１０、１０、−２，５）のフルセットを定義するために使用されることができる。対称性は、直接又は予想コーディングシナリオの両者において課され得る。
【００８６】
図４は、ビデオデコーダ４６０の例を示すブロック図であるが、ここでそれは、本文中に記述される方法においてエンコードされるビデオ列をデコードする。受信されるビデオ列は、イメージフレームのエンコードされるセット、フレームのセット、一般に画像のコード化されるグループ（ＧＯＰ）、又は、エンコードされるビデオブロック及びそのようなビデオブロックをどのようにデコードするかを定義するためのシンタックスを含むビデオブロックの広い様々なタイプのシリーズを備え得る。
【００８７】
ビデオデコーダ４６０は、エントロピーデコーディングユニット４５２を含み、ここでそれは、図３のエントロピーエンコーディングユニット３４６によって実行されるエンコードの相互のデコーディング機能を実行する。特に、エントロピーデコーディングユニット４５２は、ＣＡＶＬＣ若しくはＣＡＢＡＣ、又は、ビデオエンコーダ３５０によって使用されるエントロピーデコーディングの任意の他のタイプを実行し得る。１次元連続フォーマットにおいてエントロピーデコーディングされるビデオブロックは、２次元ブロックフォーマット内へ係数バックの１つ又はそれ以上の１次元ベクトルへ転換するために逆スキャンされ得る。ビデオブロックのために定義されるスキャン順序はもちろんベクトルの数及びサイズは、２次元ブロックがどのように再構成されるかを定義し得る。エントロピーデコーディングされる予想シンタックスは、エントロピーデコーディングユニット４５２から予想ユニット４５４へ送信され得、エントロピーデコーディングされるフィルタ情報は、エントロピーデコーディングユニット４５２からフィルタユニット４５９へ送信され得る。
【００８８】
ビデオデコーダ４６０はまた、予想ユニット４５４、逆量子化ユニット４５６、逆変換ユニット４５８、メモリ及び加算器４６４を含む。加えて、ビデオデコーダ４６０はまた、加算器４６４の出力をフィルタ処理するデブロッキングフィルタ４５７を含む。この開示と一致する、フィルタユニット４５９は、１つ又はそれ以上の入力へ適用されるため１つ又はそれ以上のフィルタを含むエントロピーデコーディングされるフィルタを受信し得る。図４に示されないが、デブロッキングフィルタ４５７はまた、適用されるための１つ又はそれ以上のフィルタを含むエントロピーデコーディングされるフィルタ情報を受信し得る。
【００８９】
フィルタユニット４５９によって適用されるフィルタは、フィルタ係数のセットによって定義され得る。フィルタユニット４５９は、エントロピーデコーディングユニット４５２から受信されるフィルタ情報に基づいてフィルタ係数のセットを生成するために構成され得る。フィルタ情報は、フィルタのセットにおけるフィルタの最大数及び／又はフィルタのセットにおけるフィルタの形を特定するフィルタ記述シンタックスを含み得る。フィルタ記述シンタックスは、たとえば、ＬＣＵヘッダ、フレームヘッダ、スライスヘッダ、ＧＯＰヘッダ、連続ヘッダなど、ビデオブロックのシリーズのヘッダにおいて含まれることができる。他の例において、フィルタ記述シンタックスは、フッタ又は他のデータ構造において含まれ得る。フィルタ記述シンタックスに基づいて、フィルタユニット４５９は、エンコーダで使用されるフィルタのセットを再構成することができる。
【００９０】
この開示において記述されるように、フィルタのセットにおいて含まれるためのフィルタの数を信号で送信するためフィルタ記述シンタックスを使用することによって、多数のフィルタが圧縮率又は再構成されるビデオクオリティのいずれかを改善する場合に全体のコーディング性能は、フィルタユニットに４５９に多数のフィルタを利用することを可能にすることによって改善され得るが、多数のフィルタが利益を供給しない又は最小の利益を供給するのみである場合にまたフィルタユニット４５９に少数のフィルタを利用することを許可する。より少ない数のフィルタを利用することは、ビデオデコーダ４６０が活動メトリックフィルタ索引を格納することに割り当てなければならないメモリの合計を減少させ得る。より少ないフィルタ及びより小さい活動メトリックフィルタ索引は、必要なメモリの量を減少させること及びメモリからデータにアクセスすることのスピードを改善することによってデコーダ性能を改善し得る。
【００９１】
フィルタ記述シンタックスの他のタイプはまた、使用され得る。たとえば、フィルタの形を記述するフィルタ記述シンタックスは、ビデオデコーダ４６０へ送信され得る。フィルタのセットにおいて使用されるためのフィルタの形をビデオデコーダ４６０へ運ぶためフィルタ記述シンタックスを使用することによって、異なる形が圧縮率又は再構成されるビデオクオリティのいずれかを改善する場合、フィルタユニット４５９は、異なる形のフィルタを利用することができる。たとえば、いくつかの事例において、フィルタのセットは、９×９フィルタを含み得るが、９×９フィルタがコーディング性能をかなり改善しない例において、９×５フィルタは、代わりに使用され得る。９×９の代わりに９×５フィルタを使用することによって、ビデオデコーダ４６０の全体の性能は、改善され得る。特に、フィルタユニット４５９は、一般的に行ごとにメモリからピクセル値を読み、したがって減少される行の数を持つフィルタを使用することは、特定のフィルタリング動作を実行するためにフィルタユニット４５９によって要求されるメモリリードの数を減少させることができる。
【００９２】
フィルタ情報はまた、係数の任意の与えられるセットのため使用されるエンコーディングの方法をデコーダへ信号で送信する追加のシグナリングシンタックスを含み得る。いくつかの実施形態において、たとえば、フィルタ情報はまた、係数の任意の与えられるセットが使用されるべき活動メトリックの範囲を含み得る。フィルタのデコーディングの次に、フィルタユニット４５９は、フィルタ係数の１つ又はそれ以上のセットとフィルタ係数の異なるセットが使用されるべき活動メトリックの領域を含むシグナリングシンタックスとに基づいてデコードされるビデオブロックのピクセル値をフィルタ処理することができる。活動メトリックの範囲は、使用されるエンコーディングのタイプ（たとえば、予想又は直接）を定義するために使用される活動メトリックの範囲を定義する活動値のセットによって定義され得る。
【００９３】
フィルタユニット４５９は、各フレーム又はスライスのためフィルタのセットをビットストリームにおいて受信し得る。フレーム又はスライス内の各コード化されるユニットに関して、フィルタユニット４５９は、（複数の）セットのどの（複数の）フィルタを各入力へ適用するかを決定するために多重入力（即ち、ＰＩ、ＥＩ、ｐＲＩ及びＲＩ）のためコード化されるユニットのデコードされるピクセルに関連する１つ又はそれ以上の活動メトリックを計算することができる。あるいはまた、フィルタユニット４５９は、ｐＲＩ又はＲＩのような、単入力のため活動メトリックを計算し得る。活動メトリックの第１範囲に関してフィルタユニット４５９は、第１フィルタを適用し、活動メトリックの第２範囲に関してフィルタユニット４５９は、第２フィルタを適用するなど。いくつかの実施形態において、任意の数の範囲及びフィルタが使用され得るが、４個の範囲が４個の異なるフィルタへマップし得る。フィルタは、フィルタサポート形状又は配列の任意のタイプを一般に仮定し得る。フィルタサポートは、フィルタ処理される与えられるピクセルに関連するフィルタの形を示し、及び、フィルタ係数は、フィルタサポートに従って隣接するピクセル値へ適用される重みを定義し得る。本開示の技術に従って、フィルタ記述シンタックスは、本文中に記述されるようなフィルタ係数情報に加えビットストリームにおいて含まれ得る。ビットストリームにおいて含まれる他のシンタックスデータは、異なるフィルタが使用される活動メトリックの範囲はもちろん、どのようにフィルタがエンコードされたが（たとえば、どのようにフィルタ係数がエンコードされたか）をデコーダへ信号で送信し得る。
【００９４】
予想ユニット４５４は、エントロピーデコーディングユニット４５２から（動作ベクトルのような）予想シンタックスを受信する。予想シンタックスを使用して、予想ユニット４５４は、ビデオブロックをコード化するために使用された予想ブロックを生成する。逆量子化ユニット４５６は、逆量子化を実行し、及び、逆変換ユニット４５８は、残差ビデオブロックの係数をもう一度ピクセル領域へ変更するに逆変換を実行する。加算器４６４は、ビデオブロックを再構成するために逆変換ユニット４５８によって相当する残差ブロック出力に各予想ブロックを結合する。
【００９５】
フィルタユニット４５９は、コード化されるユニットの各入力へ適用されるためフィルタ係数を生成し、及びそのときコード化されるユニットの再構成されるビデオブロックをフィルタ処理するためそのようなフィルタ係数を適用する。たとえば、フィルタリングは、ビデオブロックに関連して淵を滑らかにし及び／又はアーティファクトを除去する追加のデブロックフィルタリング、量子化ノイズを減少させるためのデノイズフィルタリング、又はコーディングクオリティを改善することができる任意の他のタイプを備え得る。フィルタ処理されるビデオブロックは、ビデオ情報のデコードされるフレーム（又は、他のデコード可能なユニット）を再構成するためメモリ４６２において蓄積される。デコードされるユニットは、表示のためのビデオデコーダ４６０から利用者へ出力され得るが、また後の予想デコーディングにおいて使用ために格納され得る。
【００９６】
ビデオコーディングのフィールドにおいて、デコードされるビデオ信号のクオリティを高めるためにエンコーダ及びデコーダでフィルタリングを適用することは、ありふれている。フィルタ処理されるフレームが将来のフレームの予想のために使用されない事例において、フィルタリングは、ポストフィルタを通じて適用されることができる。あるいはまた、フィルタ処理されるフレームが将来のフレームを予想するために使用され得る事例において、フィルタリングは、「インループ」で適用されるとことができる。望まれるフィルタは、元の信号とデコードされフィルタ処理される信号との間でのエラーを最小化することによって設計されることができる。一般的に、そのようなフィルタリングは、再構成されるイメージへ１つ又はそれ以上のフィルタを適用することに基づいている。たとえば、デブロッキングフィルタは、メモリにおいて格納されるイメージの前に再構成されるイメージへ適用され得、又は、デブロッキングフィルタ及び１次元フィルタは、メモリにおいて格納されるイメージの前に再構成されるイメージへ適用され得る。本開示の技術は、ただの再構成されるイメージ以外の入力へのフィルタの適用を含む。追加的に、以下により議論されるように、このような多重入力のためのフィルタは、ラプラシアンフィルタ索引付けに基づいて選択されることができる。
【００９７】
変換係数の量子化と同様の方法において、フィルタｈ（ｋ，ｌ）の係数はまた量子化され、ここでｋ＝−Ｋ，．．．，Ｋ及びｌ＝−Ｌ，．．．，Ｌである。Ｋ及びＬは、整数を示し得る。フィルタｈ（ｋ，ｌ）の係数は、
【数２】
0005602948.tif 000003
【００９８】
のように量子化され得、ここで、ｎｏｒｍＦａｃｔは、標準化因子でありｒｏｕｎｄは、望まれるビット深度への量子化を達成するための実行される丸め処理である。フィルタ係数の量子化は、エンコーディング中に図３のフィルタユニット３４９によって実行され得、及び逆量子化（de-quantization）又は逆量子化（inverse quantization）は、図４のフィルタユニット４５９によってデコードされるフィルタ係数で実行され得る。フィルタｈ（ｋ，ｌ）は、一般に任意のフィルタを表すことを意図される。たとえば、フィルタｈ（ｋ，ｌ）は、多重入力の任意の１つへ適用されることができる。いくつかの例において、ｈ（ｋ，ｌ）と同様な多重フィルタが上に記述されるように量子化され及び逆量子化され得る事例において、ビデオブロックに関連する多重入力は、異なるフィルタを利用するだろう。
【００９９】
量子化されるフィルタ係数は、エンコードされ、及びエンコードされるビットストリームの一部としてエンコーダ３５０に関連するソース機器からデコーダ４６０に関連する行先機器へ送信される。上の例において、他の値が使用されることができるが、ｎｏｒｍＦａｃｔの値は、普通は２ｎと同じである。量子化されるフィルタ係数ｆ（ｋ，ｌ）がより良い性能を供給するように、ｎｏｒｍＦａｃｔのより大きな値は、より正確な量子化を導く。しかしながら、ｎｏｒｍＦａｃｔのより大きな値は、デコーダへ送信するためにより多くのビットを要求する係数ｆ（ｋ，ｌ）を生成し得る。
【０１００】
デコーダ４６０でデコードされるフィルタ係数ｆ（ｋ，ｌ）は、適当な入力へ適用され得る。たとえば、デコードされるフィルタ係数がＲＩへ適用されるべき場合、フィルタ係数は、次のようにポストデブロックされ再構成されるイメージＲＩ（ｉ，ｊ）へ適用され得、ここで、それは、ｉ＝０，．．．，Ｍ及びｊ＝０，．．．，Ｎである：
【数３】
0005602948.tif 000004
【０１０１】
様々なＭ，Ｎ，Ｋ及びＬは、整数を示し得る。Ｋ及びＬは、−ＫからＫ及び−ＬからＬまでの２次元に広がるピクセルのブロックを定義し得る。他の入力へ適用されるフィルタは、類似する方法において適用されることができる。
【０１０２】
この開示の技術は、ポストフィルタ又はインループフィルタの性能を改善し得、及びまたフィルタ係数ｆ（ｋ，ｌ）へ送信するために必要とされるビットの数を減少させ得る。いくつかの事例において、異なるポストフィルタ又はインループフィルタの数は、たとえば、各フレーム、スライス、フレームの一部、フレームのグループ（ＧＯＰ）などのため、ビデオブロックの各シリーズのためデコーダへ送信される。各フィルタに関して、追加の情報は、与えられるフィルタが適用されるべきコード化されるユニット、マクロブロック及び／又はピクセルを特定するためにビットストリームにおいて含まれる。
【０１０３】
フレームは、フレーム番号及び／又はタイプ（たとえば、Ｉフレーム、Ｐフレーム又はＢフレーム）によって特定され得る。Ｉフレームは、内部予想される内部フレームを示す。Ｐフレームは、データの１つのリスト（たとえば、１つの前のフレーム）に基づいて予想されるビデオブロックを持つ予想フレームを示す。Ｂフレームは、データの２つのリスト（たとえば、前の及び後のフレーム）に基づいて予想される２方向の予想フレームを示す。マクロフレームは、マイクロブロックタイプをリスト化することによって特定されることができ、及び／又は量子化パラメータ値の範囲は、マクロブロックを再構成するために使用する。
【０１０４】
フィルタ情報はまた、活動メトリックと呼ばれる、イメージの個々の特徴の与えられる測定の値が徳手の範囲内であるピクセルのみが特定のフィルタによってフィルタ処理されるべきであることを示す。たとえば、ピクセル（ｉ，ｊ）に関して、活動メトリックは、次のように計算させる和修正ラプラシアン値を備え得る：
【数４】
0005602948.tif 000005
【０１０５】
ここで、―ＫからＫまで及び−ＬからＬまでに広がる２次元窓のため、ｋは、−ＫからＫまでのピクセル値の合計の値を示し、ｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、ＲＩ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、活動メトリックである。活動メトリックは、ｐＲＩ（ｉ，ｊ）、ＰＩ（ｉ，ｊ）及びＥＩ（ｉ，ｊ）のために同様に発見され得る。上に議論されるように、和修正ラプラシアン値は、活動メトリックの通常使用される１つのタイプであるが、この発明の技術は、活動メトリック又は活動メトリックの組み合わせの他のタイプに関して使用され得ることが意図される。追加的に、上に議論されるように、ピクセルごとにフィルタを選択するため活動メトリックを使用することよりもむしろ、活動メトリックはまた、グループことでピクセルを選択するために使用され得、ここで、たとえば、ピクセルのグループは、２×２又は４×４ブロックである。
【０１０６】
任意の入力に関して、フィルタ係数ｆ（ｋ，ｌ）は、前のコード化されるユニットのために送信される係数からの予想を使用してコード化され得る。コード化されるユニットｍの各入力（たとえば、各フレーム、スライス又はＧＯＰ）に関して、エンコーダは、Ｍ個のフィルタ
【数５】
0005602948.tif 000006
【０１０７】
のセットをデコードし送信し、ここで、ｉ＝０，．．．，Ｍ−１である。各フィルタに関して、ビットストリームは、フィルタが使用されるべき活動メトリック値ｖａｒの値の範囲を特定するためにエンコードされ得る。
【０１０８】
たとえば、エンコーダ３５０のフィルタユニット３４９は、フィルタ
【数６】
0005602948.tif 000007
【０１０９】
が、活動メトリック値ｖａｒが間隔〔０，ｖａｒ０）、即ち、ｖａｒ≧０及びｖａｒ＜ｖａｒ０内であるピクセルのために使用されるべきであることを示し得る。さらに、エンコーダ３５０のフィルタユニット３４９は、フィルタ
【数７】
0005602948.tif 000008
【０１１０】
が、活動メトリック値ｖａｒが間隔〔ｖａｒｉ―１，ｖａｒｉ）であるピクセルのために使用されるべきであることを示し得、ここで、ｉ＝１，．．．，Ｍ−２である。加えて、エンコーダ３５０のフィルタユニット３４９は、フィルタ
【数８】
0005602948.tif 000009
【０１１１】
が、活動メトリックｖａｒがｖａｒ＞ｖａｒＭ―２であるピクセルのために使用されるべきであることを示し得る。上に記述されるように、フィルタユニット３４９は、すべての入力のためフィルタの１つのセットを使用し得、あるいはまた、各入力のためフィルタの唯一のセットを使用し得る。
【０１１２】
フィルタ係数は、前のコード化されるユニットにおいて使用される再構成されるフィルタ係数を使用して予想されることができる。前のフィルタ係数は、
【数９】
0005602948.tif 000010
【０１１３】
として示され得、ここで、ｉ＝０，．．．，Ｎ−１である。この事例において、コード化されるユニットｎの数は、現在のフィルタの予想のために使用される１つ又はそれ以上のフィルタを特定するために使用され得、番号ｎは、エンコードされるビットストリームの一部としてデコーダへ送信され得る。加えて、情報は、エンコードされ、予想コーディングが使用される活動メトリックｖａｒの値を特定するためにデコーダへ送信されることができる。
【０１１４】
たとえば、現在コード化されるフレームｍに関して、係数
【数１０】
0005602948.tif 000011
【０１１５】
が活動メトリック値〔ｖａｒｒ―１，ｖａｒｒ）のために送信されることを仮定する。フレームｍのフィルタ係数は、フレームｎのフィルタ係数から予想される。フィルタ
【数１１】
0005602948.tif 000012
【０１１６】
が、活動メトリックがｖａｒ５―１＝ｖａｒｒ―１及びｖａｒ５＞ｖａｒｒである間隔〔ｖａｒ５―１，ｖａｒ５）内であるピクセルのためフレームｎにおいて使用されることを仮定する。この事例において、間隔〔ｖａｒｒ―１，ｖａｒｒ）は、間隔〔ｖａｒ５―１，ｖａｒ５）内に含まれる。加えて、ｖａｒｔ―１＝ｖａｒｒ―１及びｖａｒｔ＋１＝ｖａｒｒである間隔〔ｖａｒｔ―１，ｖａｒｔ＋１）のためでなく、活動メトリック〔ｖａｒｔ―１，ｖａｒｔ）のために使用されるべきであることを示す情報は、デコーダへ送信され得る。
【０１１７】
間隔〔ｖａｒｒ―１−１，ｖａｒｒ）、〔ｖａｒ５―１，ｖａｒ５）、〔ｖａｒｔ―１，ｖａｒｔ）及び〔ｖａｒｔ，ｖａｒｔ＋１）の１つの例示の関係は、図５において描かれる。この事例において、間隔〔ｖａｒｔ―１，ｖａｒｔ）において活動メトリックを用いてピクセルをフィルタ処理するために使用されるフィルタ係数
【数１２】
0005602948.tif 000013
【０１１８】
の最後の値は、係数
【数１３】
0005602948.tif 000014
【０１１９】
の合計と等しい。
【０１２０】
したがって、
【数１４】
0005602948.tif 000015
【０１２１】
加えて、活動メトリック〔ｖａｒｔ，ｖａｒｔ＋１）を用いてピクセルのために使用されるフィルタ係数は、フィルタ係数
【数１５】
0005602948.tif 000016
【０１２２】
に等しい。それゆえ、
【数１６】
0005602948.tif 000017
【０１２３】
フィルタ係数ｇ（ｋ，ｌ）の振幅は、ｋ及びｌ値に依存する。通常、最大の振幅を持つ係数は、係数ｇ（０，０）である。大きな振幅を持つことが予想される他の係数は、ｋ又はｌの値が０と等しい係数である。この現象は、係数を送信するために必要とされるビットの量をさらに減少させるために利用され得る。索引値ｋ及びｌは、知られるフィルタサポート内に位置を定義し得る。
【０１２４】
各フレームｍのための係数
【数１７】
0005602948.tif 000018
【０１２５】
は、パラメータｐに従って定義されるゴロム又は指数ゴロムコードのようなパラメータで表示される可変長コードを使用してコード化され得る。パラメータで表示される可変長コードを定義するパラメータｐの値を変更することによって、これらのコードは、ソース分配の広い範囲を効果的に示すために使用されることができる。係数ｇ（ｋ，ｌ）の分配（即ち、大きい又は小さい値を持つ見込み）は、ｋ及びｌの値に依存する。それゆえ、コーディング効率を上昇させるため、各フレームｍに関して、パラメータｐの値は、各ペア（ｋ，ｌ）のために送信される。パラメータｐは、係数
【数１８】
0005602948.tif 000019
【０１２６】
をエンコードする場合にパラメータで示される可変長コーディングのために使用されることができ、ここでｋ＝−Ｋ，．．．，Ｋ及びｌ＝−Ｌ，．．．，Ｌである。
【０１２７】
図６は、この開示の技術を実施するために構成されるフィルタユニット６００の例を示す。たとえば、フィルタユニット６００の機能性は、図３のフィルタユニット３４９又は図４のフィルタユニット４５９内へ統合され得る。フィルタユニット６００は、多数のフィルタモジュール６１０Ａ−Ｃ（ひとまとめに「フィルタモジュール６１０」）を含む。各フィルタモジュールは、１つ又はそれ以上の入力を受信するために構成されることができる。この特定の例において、フィルタモジュール６１０Ａは、入力ｐＲＩを受信し、及び、ｐＲＩ’として図６に示される、ｐＲＩのフィルタ処理されるバージョンを生成するためにフィルタを適用する。フィルタモジュール６１０Ｂは、入力ｐＲＩ’ＰＩ、及びＥＩを受信する。これら３つの入力を使用して、フィルタモジュール２  ６１０Ｂは、以下のように次の３つのフィルタを適用することによって、図６に示される、出力を生成することができる：
【数１９】
0005602948.tif 000020
【０１２８】
フィルタモジュール６１０Ｃは、次のように２つのフィルタを適用することによって出力（Ｒ’’）を生成することができる：
【数２０】
0005602948.tif 000021
【０１２９】
すべて０のフィルタを適用することによって、異なる出力は、達成されることができる。たとえば、フィルタモジュール６１０ＡがｐＲＩへすべて０のフィルタを適用し、及びフィルタモジュール６１０ＢがＰＩ及びＥＩへすべて０のフィルタを適用する場合、そのときフィルタモジュール６１０Ｂの出力は、フィルタモジュール６１０Ｃが単にＲＩのフィルタ処理されるバージョンであるだろうことを意味する、０で同様にあるだろう。他の実施形態において、様々な入力へ適用されるすべてのフィルタは、ラプラシアンフィルタ索引付けを通じるような、活動メトリックに基づいてフィルタのセットから選択されることができる。前に言及されるように、フィルタへの入力のための和修正ラプラシアン値の索引付けは、多数の方法において実施されることができる。たとえば、いくつかの実施形態において、各入力は、フィルタの唯一のセットを持ち得、他方いくつかの実施形態において、入力は、フィルタの共通のセットを共有する。追加的に、いくつかの実施形態において、各入力のための和修正ラプラシアン値は、各入力のため特定のフィルタを特定するために使用され得る。他の実施形態において、しかしながら、単入力のための和修正ラプラシアン値は、すべての入力ためにフィルタを特定するために使用され得る。また他の実施形態において、第１入力のための和修正ラプラシアン値は、第２の異なる入力のためフィルタを特定するために使用され得る。
【０１３０】
図７は、この開示と一致するエンコーディング技術を示すフローブロック図である。図３において示されるように、ビデオエンコーダ３５０は、ビデオブロックのシリーズのピクセルデータをエンコードする。ビデオブロックのシリーズは、フレーム、スライス、画像のグループ（ＧＯＰ）、ビデオデータの全体のシーケンス、又はビデオデータの他のデコード可能なセットを備え得る。ピクセルデータは、コード化されるユニットにおいて配列され得、ビデオエンコーダ３５０は、ＨＥＶＣ標準のようなビデオエンコーディング標準に従ってコード化されるユニットをエンコードすることによってピクセルデータをエンコードし得る。フレーム又はスライスに関して、ＦＳＵ３５３は、フレーム又はスライス（７１０）のために使用されるためフィルタのセットを特定することができる。ＦＳＵ３５３は、すべての入力のためフィルタの１つのセットを特定し得、又は、各入力のためフィルタのセットを特定し得る。フィルタのセットにおけるフィルタの形はもちろんフィルタのセットにおいて含まれるフィルタの最大数は、再構成されるビデオクオリティ、圧縮率、データ送信レート、又は他のメトリックのいくつかの組み合わせに基づいてＦＳＵ３５３によって決定され得る。
【０１３１】
ビデオエンコーディング処理の一部として、予想ユニット３３２は、予想ベースコーディングを実行し、及び、特定のコード化されるユニット（７２０）のため４分木ベース区分スキームを決定する。さらに、ビデオエンコーディング処理の一部として、ビデオエンコーダ３５０のフィルタユニット３４９は、ラプラシアンフィルタ索引付けに基づいて、フレーム、スライス又は、ＬＣＵ（７３０）の特定のコード化されるユニットのサブコード化されるユニットのために使用されるためのフィルタのセットから１つ又はそれ以上のフィルタを選択する。１つ又はそれ以上のフィルタは、上に記述されるように、１つ又はそれ以上の入力へ適用され得る。このフィルタリングは、元のイメージにより類似するデコードされるイメージを一般に生成することによってビデオコーディングを改善するために使用され得る。フィルタユニット３４９は、インループでるとして示され、ここでそれは、フィルタ処理されるデータがより遅いビデオブロックの予想エンコーディングのために使用されることを意味する。しかしながら、フィルタ処理されないデータがより遅いビデオブロックの予想エンコーディングのために使用されるであろう事例において、フィルタユニット３４９は、ポストループフィルタリングを代わりに適用することができる。
【０１３２】
ビデオエンコーダ３５０は、コード化されるユニットのためエンコードされるビットストリームを出力し、ここで、それは、エンコードされるピクセルデータとフィルタ記述シンタックスを持つエンコードされるフィルタデータとを含む（７４０）。エンコードされるフィルタデータは、使用されるためのフィルタのセットを特定するためにシグナリング情報を含み得、またどのようにフィルタがエンコードされたかと異なるフィルタが適用されるべき活動メトリックの範囲とを特定するシグナリング情報を含み得る。エンコードされるピクセルデータは、他のタイプのデータ内に、特定のコード化されるユニットのための分割マップを含み得る。
【０１３３】
図８は、この開示と一致するデコーディング技術を示すフローブロック図である。図８において示されるように、ビデオデコーダ４６０は、エンコードされるビデオデータとフィルタ記述シンタックスを持つエンコードされるフィルタデータとを受信する（８１０）。フィルタ記述シンタックスに基づいて、ビデオエンコーダ４６０は、フィルタのセットから特定のフィルタをいつ適用するかを決定するため活動メトリックのための範囲はもちろんフィルタの１つ又はそれ以上のセットを再構成するためフィルタデータをデコードする（８２０）。上に議論されるように、フィルタデータは、フィルタのセットにおける含まれるフィルタの最大数及び／又はフィルタのセットにおけるフィルタの形を信号で送信するフィルタ記述シンタックスを含み得る。図４に関連して上に記述されるように、再構成は、フィルタユニット４５９のため多数の入力（即ち、ＲＩ、ｐＲＩ、ＰＩ及びＥＩ）を生成することができる。ビデオデコーダ４６０は、ピクセルデータのブロックを生成するためビデオデータをデコードする（８３０）。ピクセルデータは、他のタイプのデータの中に、分割マップを含み得る。特に、ビデオデコーダ４６０は、新しく出現するＨＥＶＣ標準又は同様なブロックベースビデオコーディング標準のようなビデオ標準と一致するブロックベースビデオ再構成を実行することによってピクセルデータを生成し得る。
【０１３４】
コード化されるユニットのための分割マップに基づいて、ビデオデコーダ４６０は、コード化されるユニットのサブコード化されるユニットがフィルタユニット４５９によってフィルタ処理されるべきであるかを決定することができる。サブコード化されるユニットがフィルタ処理されるべきである場合、そのときフィルタユニット４５９は、サブコード化されるユニットのため１つ又はそれ以上の和修正ラプラシアン値を決定することができ、及び、ラプラシアンフィルタ索引付けに基づいてフィルタユニット４５９は、サブコード化されるユニットの１つ又はそれ以上の入力によって使用されるための１つ又はそれ以上のフィルタを特定することができる。
【０１３５】
先の開示は、詳細を運ぶためにいくつかの程度に単純化されている。たとえば、開示は、プレスライスごとに送信されるフィルタのセットを一般に記述するが、フィルタのセットはまた、シーケンスごと、画像のプレグループごと、スライスのプレグループごと、ＣＵごと、ＬＣＵごと、又はそのような基準ごとに送信され得る。一般に、フィルタは、１つ又はそれ以上のコード化されるユニットの任意のグループのために送信され得る。追加的に、実施形態において、コード化されるユニットごとの入力ごとの多数のフィルタ、フィルタごとに多数の係数、及び相違の異なる範囲のために定義されるフィルタのそれぞれを持つ相違の多数の異なるレベルの相違があり得る。たとえば、いくつかの事例において、コード化されるユニットの各入力のため定義される１６個又はそれ以上のフィルタと各フィルタに相当する相違の１６個の異なる範囲とがあり得る。追加的に、この開示がフィルタ情報を送信することを記述する場合、すべてのフィルタ情報が同様のコーディングレベルで送信されることを仮定するべきではない。たとえば、いくつかの実施形態において、フィルタ記述シンタックスのようないくつかのフィルタ情報は、フレームごと又はスライスごとに送信され得るが、一方、フィルタ係数のような他のフィルタ情報は、ＬＣＵごとに送信される。シーケンスレベル、ＧＯＰレベル、又は他のレベルのような、コーディングヒエラルキーの他のレベルでのシンタックスはまた、そのようなフィルタ情報のいくつか又はすべてを運ぶことのために定義されることができる。
【０１３６】
各入力のためのフィルタのそれぞれは、多数の係数を含み得る。ある例において、フィルタは、二次元において広がるフィルタサポートのために定義される８１個のフィルタ係数を持つ２次元フィルタを備える。しかしながら、各フィルタのため送信されるフィルタ係数の数は、いくつかの事例において８１よりも少なくなり得る。たとえば、係数対称性は、１次元におけるそのようなフィルタ係数に課せられ得、又は、４分円は、他の次元又は４分円における係数との関連で逆転され又は対称の値に相当し得る。エンコーダおよびデコーダが、係数の逆転され又は反転される値が他の係数を定義すると仮定する事例において、係数対称性は、８１個の異なる係数により少ない係数によって表現されることを許可し得る。たとえば、係数（５，−２，１０，１０，−２，５）は、エンコードされ、係数のサブセット（５，−２，１０）として送信される。この事例において、デコーダは、これら３個の係数が係数のより大きな対称のセット（５，−２，１０，１０，−２，５）を定義することを知り得る。
【０１３７】
この開示の技術は、無線ハンドセット、及び集積回路又は集積回路のセット（即ち、チップセット）を含む、広く様々な機器又は装置において実施され得る。任意のコンポーネント、モジュール又はユニットは、機能的な態様を強調するために記述され供給されており、異なるハードウェアユニットによる理解を必ずしも要求しない。
【０１３８】
したがって、本文中に記述される技術は、ハードウェア、ソフトウェア、ファームウェア又はそれらの任意の組み合わせにおいて実施され得る。ハードウェアにおいて実施される場合、モジュール、ユニット又はコンポーネントとして記述される任意の特徴は、融合される論理危機において一緒に又は互換性のある論器機器以外の離散として別々に実施され得る。ソフトウェアにおいて実施される場合、技術は、プロセッサにおいて実行される場合に、上に記述される方法の１つ又はそれ以上を実行する命令を備えるコンピュータ可読媒体によって少なくとも一部で実現され得る。コンピュータ可読媒体は、コンピュータ可読記録媒体を備え得、及び、コンピュータプログラム製品の一部を形成し得、ここでそれは、パッケージングマテリアルを含み得る。コンピュータ可読記録媒体は、シンクロネスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）のようなランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブルリードオンリーメモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気的又は光学的データ記録媒体などを備え得る。追加的に又はその代わりに、技術は、コンピュータによってアクセスされ読まれ及び／又は実行されることができる命令の形式又はデータ構造においてコードを運び又は通信するコンピュータ可読通信媒体によって少なくとも一部で実電され得る。
【０１３９】
コードは、デジタル信号プロセッサ（ＤＳＰ）、汎用プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、又は他の同党の集積若しくは離散論理回路のような、１つ又はそれ以上のプロセッサによって実行され得る。したがって、本文中に使用されるような「プロセッサ」という用語は、本文中に記述される技術の実施形態のために適切な任意の前の構造又は任意の他の構造を示し得る。加えて、いくつかの態様において、本文中に記述される機能性は、エンコーディング及びデコーディングのために構成される専用のソフトウェア又はハードウェアモジュール内で供給され、又は組み合わされるビデオコーデックにおいて統合され得る。また、技術は、１つ又はそれ以上の回路又は論理要素において完全に実施されることができる。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］
ビデオデータをデコードする方法であって、
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを、ビデオデコーダで、受信することと、
前記フィルタ記述シンタックス及び追加の受信されるフィルタ情報に基づいてフィルタの前記セットを再構成することと、
活動メトリックに基づいてフィルタの前記セットからフィルタを選択することと、
前記フィルタを適用することと、
を備える方法。
［２］
さらに、
メモリの一部に前記フィルタ記述シンタックスに基づいてフィルタを格納することを割り当てることを
備える前記［１］に記載の方法。
［３］
前記ビデオデコーダは、多重フィルタを持つ４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［１］に記載の方法。
［４］
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［１］に記載の方法。
［５］
さらに、
フィルタの前記セットの形を特定する第２フィルタ記述シンタックスを受信することを備え、
フィルタの前記セットを再構成することは、さらに前記第２フィルタ記述シンタックスに基づく、
前記［１］に記載の方法。
［６］
前記活動メトリックは、和修正ラプラシアン値を備える、
前記［１］に記載の方法。
［７］
前記和修正ラプラシアン値は、次の式：
【数２１】
0005602948.tif 000022
におよそ従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、活動メトリックである、
前記［６］に記載の方法。
［８］
ビデオデコーダは、ビデオエンコーダのコンポーネントとして実施される、
前記［１］に記載の方法。
［９］
ビデオエンコーディングの方法であって、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定することと、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成すること、
ビデオデコーダへ前記フィルタ記述シンタックスを送信することと、
前記ビデオデコーダへフィルタの前記セットを送信することと、
を備える方法。
［１０］
前記ビデオエンコーダは、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［９］に記載の方法。
［１１］
フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［９］に記載の方法。
［１２］
さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定することと、
フィルタの前記セットにおいてフィルタの前記形を特定する第２フィルタ記述シンタックスを生成することと、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信することと、
を備える前記［９］に記載の方法。
［１３］
フィルタのセットにおいて含まれるためのフィルタの最大数と特定する
フィルタ記述シンタックスを受信するように、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成するように、
活動メトリックに基づいてコード化されるユニットへフィルタの前記セットからのフィルタを適用するように、
構成されるフィルタユニットと、
前記フィルタユニットのフィルタ処理された結果を格納するように構成されるメモリと、
を備えるビデオデコーディング機器。
［１４］
フィルタユニットは、さらに、前記フィルタ記述シンタックスに基づいてメモリの一部へフィルタを格納することを割り当てるように構成される、
前記［１３］に記載のビデオデコーディング機器。
［１５］
ビデオデコーディング機器は、多重入力を用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［１３］に記載のビデオデコーディング機器。
［１６］
フィルタ記述シンタックス要素は、ビデオブロックのシリーズのヘッダの一部である、
前記［１３］に記載のビデオデコーディング機器。
［１７］
前記フィルタユニットは、さらに、
フィルタのセットにおいてフィルタの形を特定する第２フィルタ記述シンタックスを受信するように、
前記第２フィルタ記述シンタックスに基づいてフィルタの前記セットを再構成するように構成される、
前記［１３］に記載のビデオデコーディング機器。
［１８］
前記活動メトリックは、和修正ラプラシアン値を備える、
前記［１３］に記載のビデオデコーディング機器。
［１９］
前記和修正ラプラシアン値は、次の式：
【数２２】
0005602948.tif 000023
におおよそ従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、活動メトリックである、
前記［１８］に記載のビデオデコーディング機器。
［２０］
フィルタのセットにおいて含まれるためのフィルタの最大数を決定するように、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成するように、
構成されるフィルタユニットと、
ビデオデコーダへ前記フィルタ記述シンタックスを送信するように、
前記ビデオデコーダへフィルタの前記セットを送信するように、
構成される送信ユニットと、
を備えるビデオエンコーディング機器。
［２１］
フィルタユニットは、多重入力を用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［２０］に記載のビデオエンコーディング機器。
［２２］
前記フィルタ記述シンタックスは、ビデオブロックのヘッダの一部である、
前記［２０］に記載のビデオエンコーディング機器。
［２３］
前記フィルタユニットは、さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定するように、
フィルタの前記セットにおいてフィルタの前記形を特定する第２フィルタ記述シンタックスを生成するように、
構成され、
前記送信器は、さらに、前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信するように構成される、
前記［２０］に記載のビデオエンコーディング機器。
［２４］
ビデオデータをデコードするための装置あって、
フィルタのセットにおいて含まれるためのフィルタの最大数を特定するフィルタ記述シンタックスを受信するための手段と、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成するための手段と、
活動メトリックに基づいてフィルタの前記セットからフィルタを選択するための手段と、
前記フィルタを適用するための手段と、
を備える装置。
［２５］
さらに、
前記フィルタ記述シンタックスに基づいてメモリの一部をフィルタを格納することに割り当てるための手段を備える、
前記［２４］に記載の装置。
［２６］
前記装置は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［２４］に記載の装置。
［２７］
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［２４］に記載の装置。
［２８］
さらに、
フィルタの前記セットにおいてフィルタの形を特定する第２フィルタ記述シンタックスを受信するための手段を備え、
フィルタの前記セットを再構成することは、さらに、前記第２フィルタ記述シンタックスに基づく、
前記［２４］に記載の装置。
［２９］
前記活動メトリックは、和修正ラプラシアン値を備える、
前記［２４］に記載の装置。
［３０］
前記和修正ラプラシアン値は、次の式：
【数２３】
0005602948.tif 000024
におおよそ従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、活動メトリックである、
前記［２９］に記載の装置。
［３１］
前記装置は、ビデオエンコーディング機器を備える、
前記［２４］に記載の装置。
［３２］
ビデオデータをエンコーディングするための装置であって、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定するための手段と、
フィルタの前記最大数を特定するためのフィルタ記述シンタックスを生成するための手段と、
ビデオデコーダへ前記フィルタ記述シンタックスを送信するための手段と、
前記ビデオデコーダへフィルタの前記セットを送信するための手段と、
を備える装置。
［３３］
前記装置は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）スキームを実施する、
前記［３２］に記載の装置。
［３４］
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［３２］に記載の装置。
［３５］
さらに、
フィルタの前記セットのために使用されるためのフィルタの形を決定するための手段と、
フィルタの前記セットにおいてフィルタの前記形を特定するための第２フィルタ記述シンタックスを生成するための手段と、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信するための手段と、
前記［３２］に記載の装置。
［３６］
実行される場合に、ビデオデータをデコードするための機器の１つ又はそれ以上のプロセッサに、
フィルタのセットにおいて含まれるための最大数を特定するフィルタ記述シンタックスを受信させ、
前記フィルタ記述シンタックスと追加の受信されるフィルタ情報とに基づいてフィルタの前記セットを再構成させ、
活動メトリックに基づいてフィルタの前記セットからフィルタを選択させ、
前記フィルタを適用させる、
その上に格納される命令を持つコンピュータ可読記録媒体を備える
コンピュータプログラム製品。
［３７］
さらに、前記１つ又はそれ以上のプロセッサに、
前記フィルタ記述シンタックスに基づいてメモリの一部をフィルタを格納することに割り当てさせる命令を備える、
前記［３６］に記載のコンピュータプログラム製品。
［３８］
ビデオデータをデコードするビデオのための前記機器は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）を実施する、
前記［３６］に記載のコンピュータプログラム製品。
［３９］
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［３６］に記載のコンピュータプログラム製品。
［４０］
さらに、
前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットにおいてフィルタの形を特定する第２フィルタ記述シンタックスを受信させる命令を備え、
フィルタの前記セットを再構成することは、さらに、前記第２フィルタ記述シンタックスに基づく、
前記［３６］に記載のコンピュータプログラム製品。
［４１］
前記活動メトリックは、和修正ラプラシアン値を備える、
前記［３６］に記載のコンピュータプログラム製品。
［４２］
前記和修正ラプラシアン値は、次の式：
【数２４】
0005602948.tif 000025
におおよそ従って定義されるｖａｒ（ｉ，ｊ）を備え、ここで、−ＫからＫ及び−ＬからＬに広がる２次元窓のため、ｋは、−ＫからＫまでの合計の値を示し、及びｌは、−ＬからＬまでの合計の値を示し、ここで、ｉ及びｊは、ピクセルデータのピクセル座標を示し、Ｒ（ｉ，ｊ）は、座標ｉ及びｊで与えられるピクセル値を示し、及びｖａｒ（ｉ，ｊ）は、活動メトリックである、
前記［３６］に記載のコンピュータプログラム製品。
［４３］
ビデオデータをデコードするビデオのための前記機器は、ビデオエンコーダのコンポーネントとして実施される、
前記［３６］に記載のコンピュータプログラム製品。
［４４］
実行される場合に、ビデオデータをエンコードするための機器の１つ又はそれ以上のプロセッサに、
フィルタのセットにおいて含まれるためのフィルタの最大数を決定し、
フィルタの前記最大数を特定するフィルタ記述シンタックスを生成し、
ビデオデコーダへ前記フィルタ記述シンタックスを送信し、
前記ビデオデコーダへフィルタの前記セットを送信させる、
その上に格納される命令を持つコンピュータ可読媒体記録媒体を備える、
コンピュータプログラム製品。
［４５］
ビデオデータをエンコードするための前記機器は、多重フィルタを用いて４分木ベース適用ループフィルタ（ＱＡＬＦ）を実施する、
前記［４４］に記載のコンピュータプログラム製品。
［４６］
前記フィルタ記述シンタックスは、ビデオブロックのシリーズのヘッダの一部である、
前記［４４］に記載のコンピュータプログラム製品。
［４７］
さらに、
前記１つ又はそれ以上のプロセッサに、
フィルタの前記セットのために使用されるためのフィルタの形を決定し、
フィルタの前記セットにおいてフィルタの前記形を特定する第２フィルタ記述シンタックスを生成し、
前記ビデオデコーダへ前記第２フィルタ記述シンタックスを送信させる、
命令を備える、
前記［４４］に記載のコンピュータプログラム製品。
【図１】
0005602948.tif 000030
【図２Ａ】
0005602948.tif 000031
【図２Ｂ】
0005602948.tif 000032
【図２Ｃ】
0005602948.tif 000033
【図２Ｄ】
0005602948.tif 000034
【図３】
0005602948.tif 000035
【図４】
0005602948.tif 000036
【図５】
0005602948.tif 000037
【図６】
0005602948.tif 000038
【図７】
0005602948.tif 000039
【図８】
0005602948.tif 000040