(57)【特許請求の範囲】
【請求項１】
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングの方法であって、前記方法が、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用することであって、前記１Ｄスイッチ式フィルタが、コード化ビットストリーム中でシグナリングされるインデックスによって定義される、フィルタ係数の第１のセットを備える、１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用することであって、前記１Ｄ適応フィルタが、係数値として、あるいは前のフィルタ係数または既知のフィルタ係数に対するデルタとして前記コード化ビットストリーム中でシグナリングされる、フィルタ係数の第２のセットを備える、１Ｄ適応フィルタを適用することと
を含む、分離可能適応ループフィルタを適用すること
を備える、方法。
【請求項２】
前記方法がエンコーダにおいて適用され、前記方法が、
あらかじめ定義されたフィルタのセットから前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタの前記インデックスをあらかじめ定義された１Ｄスイッチ式フィルタの前記セットに対して識別するシンタックス要素を生成することと、
前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することと
をさらに備え、
前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項１に記載の方法。
【請求項３】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成すること
をさらに備える、請求項２に記載の方法。
【請求項４】
前記方法が、符号化ビデオデータのシーケンスの第１のスライスに対して適用され、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記方法が、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用することと
をさらに備える、請求項１に記載の方法。
【請求項５】
前記方法が、スライスのコード化ユニット（ＣＵ）のサブセットに対して実行され、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項１に記載の方法。
【請求項６】
前記方法がエンコーダによって実行され、前記方法が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成すること
をさらに備える、請求項５に記載の方法。
【請求項７】
前記方法がデコーダによって実行され、前記方法が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信すること
をさらに備える、請求項５に記載の方法。
【請求項８】
前記方法が、前記再構成ビデオデータのデブロックフィルタリングの後に実行され、デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）の境界に対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項１に記載の方法。
【請求項９】
前記方法がデコーダにおいて適用され、前記方法が、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタの前記インデックスを受信することと、
前記１Ｄ適応フィルタに関する係数の前記第２のセットを識別する情報を受信することと
をさらに備え、
前記インデックスを受信することと、係数の前記第２のセットを識別する前記情報を受信することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項１に記載の方法。
【請求項１０】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信すること
をさらに備える、請求項９に記載の方法。
【請求項１１】
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、請求項１に記載の方法。
【請求項１２】
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングを実行するビデオコーダ装置であって、前記ビデオコーダ装置が、
水平または垂直のいずれかである第１の次元において前記ビデオデータをフィルタリングする１次元（１Ｄ）スイッチ式フィルタであって、前記１Ｄスイッチ式フィルタが、コード化ビットストリーム中でシグナリングされるインデックスによって定義される、フィルタ係数の第１のセットを備える、１Ｄスイッチ式フィルタと、
前記第１の次元に垂直である第２の次元において前記ビデオデータをフィルタリングする１Ｄ適応フィルタであって、前記１Ｄ適応フィルタが、係数値として、あるいは前のフィルタ係数または既知のフィルタ係数に対するデルタとして前記コード化ビットストリーム中でシグナリングされる、フィルタ係数の第２のセットを備える、１Ｄ適応フィルタと
を含む、分離可能適応ループフィルタ
を備える、ビデオコーダ装置。
【請求項１３】
前記ビデオコーダ装置が、フィルタユニットを含むエンコーダを備え、前記フィルタユニットが、
あらかじめ定義されたフィルタのセットから前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタの前記インデックスをあらかじめ定義された１Ｄスイッチ式フィルタの前記セットに対して識別する、シンタックス要素を生成することと、
前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することと
を行い、
前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項１２に記載のビデオコーダ装置。
【請求項１４】
スライス当たり少なくとも１回、前記フィルタユニットが、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成する、
請求項１３に記載のビデオコーダ装置。
【請求項１５】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、符号化ビデオデータのシーケンスの第１のスライスに対して適用され、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、第２のスライスについて、前記ビデオコーダ装置が、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータをフィルタリングする第１の１Ｄスイッチ式フィルタと、
前記第１の次元に垂直である第２の次元において前記ビデオデータをフィルタリングする第２の１Ｄスイッチ式フィルタと
を含む、請求項１２に記載のビデオコーダ装置。
【請求項１６】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、スライスのコード化ユニット（ＣＵ）のサブセットに対して適用され、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項１２に記載のビデオコーダ装置。
【請求項１７】
前記ビデオコーダ装置が、フィルタユニットを含むエンコーダを備え、前記フィルタユニットが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成する、
請求項１６に記載のビデオコーダ装置。
【請求項１８】
前記ビデオコーダ装置がデコーダを備え、前記デコーダが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信する、
請求項１６に記載のビデオコーダ装置。
【請求項１９】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、前記再構成ビデオデータのデブロックフィルタリングの後に適用され、デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）の境界に対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項１２に記載のビデオコーダ装置。
【請求項２０】
前記ビデオコーダ装置がデコーダを備え、前記デコーダが、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタの前記インデックスを受信することと、
前記１Ｄ適応フィルタに関する係数の前記第２のセットを識別する情報を受信することと
を行い、
前記デコーダが、前記インデックスを受信することと、係数の前記第２のセットを識別する前記情報を受信することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行い、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項１２に記載のビデオコーダ装置。
【請求項２１】
スライス当たり少なくとも１回、前記デコーダが、前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信する、請求項２０に記載のビデオコーダ装置。
【請求項２２】
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、請求項１２に記載のビデオコーダ装置。
【請求項２３】
前記装置が、
集積回路と、
マイクロプロセッサと、
ビデオエンコーダを含むワイヤレス通信デバイスと、
ビデオデコーダを含むワイヤレス通信デバイスと
のうちの少なくとも１つを備える、請求項１２に記載のビデオコーダ装置。
【請求項２４】
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングを実行するデバイスであって、前記デバイスが、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用するための手段であって、前記１Ｄスイッチ式フィルタが、コード化ビットストリーム中でシグナリングされるインデックスによって定義される、フィルタ係数の第１のセットを備える、１Ｄスイッチ式フィルタを適用するための手段と、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用するための手段であって、前記１Ｄ適応フィルタが、係数値として、あるいは前のフィルタ係数または既知のフィルタ係数に対するデルタとして前記コード化ビットストリーム中でシグナリングされる、フィルタ係数の第２のセットを備える、１Ｄ適応フィルタを適用するための手段と
を含む、分離可能適応ループフィルタを適用するための手段
を備える、デバイス。
【請求項２５】
前記デバイスがエンコーダを備え、前記デバイスが、
あらかじめ定義されたフィルタのセットから前記１Ｄスイッチ式フィルタを選択するための手段と、
前記１Ｄスイッチ式フィルタの前記インデックスをあらかじめ定義された１Ｄスイッチ式フィルタの前記セットに対して識別する、シンタックス要素を生成するための手段と、
前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別するための手段と
をさらに備え、
選択するための前記手段と、生成するための前記手段と、前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別するための前記手段とが、前記選択することと、前記生成することと、前記識別することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回実行し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項２４に記載のデバイス。
【請求項２６】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成するための手段
をさらに備える、請求項２５に記載のデバイス。
【請求項２７】
前記デバイスが、符号化ビデオデータのシーケンスの第１のスライスに対して操作を実行し、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記デバイスが、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用するための手段と、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用するための手段と
をさらに備える、請求項２４に記載のデバイス。
【請求項２８】
前記デバイスが、スライスのコード化ユニット（ＣＵ）のサブセットに対して操作を実行し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項２４に記載のデバイス。
【請求項２９】
前記デバイスがエンコーダを備え、前記デバイスが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成するための手段
をさらに備える、請求項２８に記載のデバイス。
【請求項３０】
前記デバイスがデコーダを備え、前記デバイスが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信するための手段
をさらに備える、請求項２８に記載のデバイス。
【請求項３１】
前記デバイスが、前記再構成ビデオデータのデブロックフィルタリングのための手段をさらに備え、前記１Ｄスイッチ式フィルタを適用するための前記手段と、１Ｄ適応フィルタを適用するための前記手段とが、デブロックフィルタリングのための前記手段の後に動作し、デブロックフィルタリングのための前記手段が、スライスのコード化ユニット（ＣＵ）の境界に対して動作し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項２４に記載のデバイス。
【請求項３２】
前記デバイスがデコーダを備え、前記デバイスが、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタの前記インデックスを受信するための手段と、
前記１Ｄ適応フィルタに関する係数の前記第２のセットを識別する情報を受信するための手段と
をさらに備え、
前記インデックスを受信するための前記手段と、係数の前記第２のセットを識別する前記情報を受信するための前記手段とが、前記インデックスを受信することと、前記係数を識別する前記情報を受信することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行い、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項２４に記載のデバイス。
【請求項３３】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信するための手段
をさらに備える、請求項３２に記載のデバイス。
【請求項３４】
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、請求項２４に記載のデバイス。
【請求項３５】
プロセッサにおいて実行されると、ビデオコーディングプロセス中に再構成ビデオデータのループフィルタリングを実行することを前記プロセッサに行わせる命令を記憶した、コンピュータ可読記憶媒体であって、前記命令が、実行されると、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用することであって、前記１Ｄスイッチ式フィルタが、コード化ビットストリーム中でシグナリングされるインデックスによって定義される、フィルタ係数の第１のセットを備える、１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用することであって、前記１Ｄ適応フィルタが、係数値として、あるいは前のフィルタ係数または既知のフィルタ係数に対するデルタとして前記コード化ビットストリーム中でシグナリングされる、フィルタ係数の第２のセットを備える、１Ｄ適応フィルタを適用することと
を含む、分離可能適応ループフィルタを適用すること
を前記プロセッサに行わせる、コンピュータ可読記憶媒体。
【請求項３６】
前記プロセッサがエンコーダを備え、前記命令が、
あらかじめ定義された１Ｄフィルタのセットから前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタの前記インデックスをあらかじめ定義された１Ｄスイッチ式フィルタの前記セットに対して識別する、シンタックス要素を生成することと、
前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することと
を前記プロセッサに行わせ、
ここで、前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３７】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成すること
を前記プロセッサに行わせる命令をさらに記憶した、請求項３６に記載のコンピュータ可読記憶媒体。
【請求項３８】
前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、符号化ビデオデータのシーケンスの第１のスライスに対して行われ、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記コンピュータ可読記憶媒体が、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用することと
を前記プロセッサに行わせる命令をさらに記憶した、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３９】
前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、スライスのコード化ユニット（ＣＵ）のサブセットに対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項４０】
前記プロセッサがエンコーダを備え、前記コンピュータ可読記憶媒体が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成すること
を前記プロセッサに行わせる命令をさらに記憶した、請求項３９に記載のコンピュータ可読記憶媒体。
【請求項４１】
前記プロセッサがデコーダを備え、前記コンピュータ可読記憶媒体が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信すること
を前記プロセッサに行わせる命令をさらに記憶した、請求項３９に記載のコンピュータ可読記憶媒体。
【請求項４２】
前記再構成ビデオデータのデブロックフィルタリングを実行することを前記プロセッサに行わせる命令をさらに記憶し、前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、前記デブロックフィルタリングの後に行われ、前記デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）の境界に対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項４３】
前記プロセッサがデコーダを備え、前記コンピュータ可読記憶媒体が、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタの前記インデックスを受信することと、
前記１Ｄ適応フィルタに関するフィルタ係数の前記第２のセットを識別する情報を受信することと
を前記プロセッサに行わせる命令をさらに記憶し、
前記インデックスを受信することと、フィルタ係数の前記第２のセットを識別する前記情報を受信することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
請求項３５に記載のコンピュータ可読記憶媒体。
【請求項４４】
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信すること
を前記プロセッサに行わせる命令をさらに記憶した、請求項４３に記載のコンピュータ可読記憶媒体。
【請求項４５】
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項４６】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタは、ビデオシーケンス内のビデオデータのスライスごとに、１Ｄスイッチ式フィルタリングのみを使用すべきか、または１Ｄスイッチ式フィルタリングと１Ｄ適応フィルタリングとの組合せを使用すべきかを決定することに基づいて適用される、請求項１に記載の方法。
【請求項４７】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタは、ビデオシーケンス内のビデオデータのスライスごとに、１Ｄスイッチ式フィルタリングのみを使用すべきか、または１Ｄスイッチ式フィルタリングと１Ｄ適応フィルタリングとの組合せを使用すべきかを決定することに基づいて適用される、請求項１２に記載のビデオコーダ装置。
【請求項４８】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタは、ビデオシーケンス内のビデオデータのスライスごとに、１Ｄスイッチ式フィルタリングのみを使用すべきか、または１Ｄスイッチ式フィルタリングと１Ｄ適応フィルタリングとの組合せを使用すべきかを決定することに基づいて適用される、請求項２４に記載のデバイス。
【請求項４９】
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタは、ビデオシーケンス内のビデオデータのスライスごとに、１Ｄスイッチ式フィルタリングのみを使用すべきか、または１Ｄスイッチ式フィルタリングと１Ｄ適応フィルタリングとの組合せを使用すべきかを決定することに基づいて適用される、請求項３５に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、内容全体が参照により本明細書に組み込まれる、２０１１年１月５日に出願された米国仮出願第６１／４３０，１２８号、および２０１１年３月９日に出願された米国仮出願第６１／４５１，０１１号の利益を主張する。
【０００２】
本開示は、ビデオデータを圧縮するために使用されるブロックベースのビデオコーディング技法に関し、より詳細には、ブロックベースのビデオコーディング中に実行されるフィルタリング技法に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、無線電話ハンドセットなどのワイヤレス通信デバイス、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、デジタルカメラ、デジタル記録デバイス、ビデオゲームデバイス、ビデオゲーム機、パーソナルマルチメディアプレーヤなどを含む、広範囲にわたるデバイスに組み込まれ得る。そのようなビデオデバイスは、ビデオデータを圧縮するために、ＭＰＥＧ−２、ＭＰＥＧ−４、またはＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）において記述されるようなビデオ圧縮技法を実装し得る。ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的予測および時間的予測を実行する。（最終的にＩＴＵ−Ｔ  Ｈ．２６５とも呼ばれ得る）高効率ビデオコーディング（ＨＥＶＣ）規格などの新しい規格が出現し、発展し続けている。
【０００４】
多くのビデオコーディング規格および技法は、ブロックベースのビデオコーディングを使用する。ブロックベースのビデオコーディング技法は、ビデオフレーム（またはその一部分）のビデオデータをビデオブロックに分割し、次いで予測ブロックベースの圧縮技法を使用してビデオブロックを符号化する。ビデオブロックは、さらにビデオブロック区分に分割され得る。ビデオブロック（またはそれらの区分）は、「コード化ユニット」とも呼ばれ、１つまたは複数のビデオ固有の符号化技法ならびに一般的なデータ圧縮技法を使用して符号化され得る。新生のＨＥＶＣ規格では、最大コード化ユニット（ＬＣＵ）が４分木（quadtree）区分スキームに従ってますます小さいコード化ユニット（ＣＵ）に分割され得、様々なＣＵは、さらに、いわゆる予測ユニット（ＰＵ：prediction unit）に区分され得る。ＣＵ（またはＰＵ）は、動き推定、動き補償、１つまたは複数の可能な変換サイズを有する変換ユニット（ＴＵ）に対して行われる離散コサイン変換（ＤＣＴ）などの変換コーディング、量子化、および可変長コーディングを使用して符号化され得る。ビデオデータをどのように復号すべきかをデコーダに知らせるために、たとえば、ビデオスライスヘッダまたはビデオブロックヘッダ中で、シンタックス情報が、しばしば、符号化ビデオデータとともにシグナリングされる。
【０００５】
フィルタリング技法は、符号化および復号プロセスの一部として実行され得る。フィルタリングは、アーティファクトを除去することまたはピクセル境界を平滑化することによってビデオ品質を改善し得る。ビデオブロック境界間のフィルタリングは、デブロック（deblock）フィルタリングとも呼ばれ、フィルタリングは、ブロック境界に位置しないピクセルにも適用され得る。そのようなフィルタリングは、「インループ（in loop）」または「ポストループ（post loop）」であり得る。「インループ」フィルタリングの場合、フィルタリングされたピクセルが、他のビデオデータの予測コーディング（たとえば、動き推定および動き補償）において使用され得る再構成ビデオデータを形成する。対照的に、「ポストループ」フィルタリングの場合、フィルタリングされていないビデオデータが、他のビデオデータの予測コーディングにおいて使用される再構成データを形成する。したがって、「ポストループ」フィルタリングの場合、フィルタリングは、コーディングループの外で行われ、再構成および表示されるデータのみに適用される。したがって、「ポストループ」フィルタリングの場合、フィルタリングされたデータは、予測コーディングのために使用されず、代わりに、フィルタリングされていないデータが予測コーディングのために使用される。
【発明の概要】
【０００６】
本開示は、ビデオ符号化プロセスまたはビデオ復号プロセス中に行われるピクセルフィルタリングに関する。詳細には、本開示は、ピクセル境界を平滑化し、場合によっては再構成ビデオデータからアーティファクトを除去するために一般に使用される、いわゆる「ポストループ」ピクセルフィルタリングまたはいわゆる「インループ」ピクセルフィルタリングに関する。本開示によれば、分離可能適応ループフィルタ（すなわち、インループまたはポストループ）は、１次元（１Ｄ）適応フィルタおよび１Ｄスイッチ式フィルタを含み得る。１Ｄスイッチ式フィルタは、原信号と復号されたフィルタリングされた信号との間の誤差を実質的に最小限に抑えることによって、あらかじめ定義されたフィルタセットから選択され得る。１Ｄスイッチ式フィルタは、一方向に、通常は水平方向または垂直方向に適用されることができる。次いで、１Ｄ適応フィルタは、１Ｄスイッチ式フィルタに対して垂直な方向に適用される。ただし、第１に１Ｄ適応フィルタを適用し、次いで第２に１Ｄスイッチフィルタを適用することも可能である。いずれの場合も、この設計に基づいて、２つの異なる分離可能１Ｄ適応フィルタを使用する技法と同様のコーディング性能を保持しながら、反復フィルタ設計問題（すなわち、場合によっては膨大な量の計算が生じること）を回避または低減することができる。
【０００７】
一例では、本開示は、ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングの方法について説明する。本方法は、水平または垂直のいずれかである第１の次元においてビデオデータに１Ｄスイッチ式フィルタを適用することと、第１の次元に垂直である第２の次元においてビデオデータに１Ｄ適応フィルタを適用することとを備える。
【０００８】
別の例では、本開示は、ビデオコーディングプロセス中に再構成ビデオデータのループフィルタリングを実行するビデオコーダ装置について説明する。該ビデオコーダ装置は、水平または垂直のいずれかである第１の次元においてビデオデータをフィルタリングする１Ｄスイッチ式フィルタと、第１の次元に垂直である第２の次元においてビデオデータをフィルタリングする１Ｄ適応フィルタとを備える。
【０００９】
別の例では、本開示は、ビデオコーディングプロセス中に再構成ビデオデータのループフィルタリングを実行するデバイスについて説明する。該デバイスは、水平または垂直のいずれかである第１の次元においてビデオデータに１Ｄスイッチ式フィルタを適用するための手段と、第１の次元に垂直である第２の次元においてビデオデータに１Ｄ適応フィルタを適用するための手段とを備える。
【００１０】
本開示で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せで実装され得る。ハードウェアで実装される場合、装置は、集積回路、プロセッサ、ディスクリート論理、またはそれらの任意の組合せとして実現され得る。ソフトウェアで実装される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはデジタル信号プロセッサ（ＤＳＰ）など、１つまたは複数のプロセッサで実行され得る。当該技法を実行するソフトウェアは、最初に有形コンピュータ可読記憶媒体に記憶され、プロセッサにロードされて実行され得る。
【００１１】
したがって、本開示はまた、プロセッサにおいて実行されると、ビデオコーディングプロセス中に再構成ビデオデータのループフィルタリングを実行することをプロセッサに行わせる命令を備えるコンピュータ可読記憶媒体であって、命令が、実行されると、水平または垂直のいずれかである第１の次元においてビデオデータに１Ｄスイッチ式フィルタを適用することと、第１の次元に垂直である第２の次元においてビデオデータに１Ｄ適応フィルタを適用することとをプロセッサに行わせる、コンピュータ可読記憶媒体を企図する。
【００１２】
本開示の１つまたは複数の態様の詳細を添付の図面および以下の説明に記載する。本開示で説明する技法の他の特徴、目的、および利点は、これらの説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１３】
【図１】本開示の技法のうちの１つまたは複数を実装し得るビデオ符号化および復号システムを示すブロック図。
【図２】本開示の１つまたは複数の例に一致する例示的なビデオエンコーダを示すブロック図。
【図３】本開示の１つまたは複数の例に一致する例示的なビデオデコーダを示すブロック図。
【図４】４分木区分スキームに従って区分されるビデオブロックの概念図。
【図５】図４に示した４分木区分を生じる、区分決定を表す決定木（decision tree）を示す図。
【図６】本開示に一致する技法を示す流れ図。
【図７】本開示に一致する技法を示す流れ図。
【図８】本開示に一致する技法を示す流れ図。
【図９】本開示に一致する技法を示す流れ図。
【図１０】本開示に一致する技法を示す流れ図。
【図１１】本開示に一致する技法を示す流れ図。
【図１２】本開示に一致する技法を示す流れ図。
【図１３】本開示に一致する技法を示す流れ図。
【詳細な説明】
【００１４】
本開示は、ビデオ符号化プロセスまたはビデオ復号プロセス中に行われるピクセルフィルタリングに関する。詳細には、本開示は、ピクセル境界を平滑化し、場合によっては再構成ビデオデータからアーティファクトを除去するために一般に使用される、いわゆる「ポストループ」ピクセルフィルタリングまたはいわゆる「インループ」ピクセルフィルタリングに関する。場合によっては、ループフィルタリング（たとえば、インループフィルタリングまたはポストループフィルタリング）は、ビデオブロックのエッジをフィルタリングするデブロックフィルタリングプロセスの後に行われ得る。ループフィルタリングでは、フィルタリングが適用されることができ、フィルタリングされたブロックは、フィルタリングが元のブロックに対する符号化ブロックのビデオ品質を改善したかどうかを判定するために、元のブロックと比較されることができる。スライス中のビデオブロックのうちのどれがフィルタリングされるべきかを指定するために、フィルタマップが、（たとえば、スライスがビデオフレームまたはその一部分である）符号化データのスライスとともに生成され、送られることができる。ビデオブロックは、新生の高効率ビデオコーディング（ＨＥＶＣ）規格において定義される「コード化ユニット」または「予測ユニット」を含み得、４分木構造に従って定義されることができる。ＨＥＶＣ規格は、ＩＴＵ  Ｈ．２６５とも呼ばれる。
【００１５】
ループフィルタリング（たとえば、インループまたはポストループピクセルフィルタリング）は、２次元において行われ得る。すなわち、垂直ピクセル境界および水平ピクセル境界がフィルタリングされるように２次元フィルタリングが行われ得る。本開示の一態様は、垂直フィルタリングが水平フィルタリングから分離される「分離可能」フィルタリング手法を使用する。分離可能フィルタリングの場合、１次元（１Ｄ）フィルタリングが第１の次元（たとえば、垂直または水平）において行われることができ、次いで、１Ｄフィルタリングが、第１の次元とは異なる第２の次元において再び行われることができる。１Ｄフィルタリングが行われる順序（垂直の後に水平または水平の後に垂直）は、分離可能フィルタを用いた結果に影響を及ぼさない。
【００１６】
本開示の別の態様は、いわゆる「適応フィルタリング」を使用する。適応フィルタリングの場合、フィルタリングプロセスにおいて適用されるフィルタ係数は、望ましい、場合によっては最適であるフィルタリングを達成するように、データに基づいて、エンコーダにおいて適応的に決定されることができる。適応フィルタ係数は、各フレームまたはスライスについてエンコーダからデコーダに通信されることができ、したがって、デコーダは、エンコーダにおいて適応的に決定され、適用されたのと同じフィルタ係数を適用することができる。
【００１７】
本開示のさらに別の態様は、いわゆる「スイッチ式フィルタリング」を使用する。スイッチ式フィルタリングの場合、フィルタ係数のあらかじめ定義されたセットが、エンコーダおよびデコーダにおいて記憶される。エンコーダは、任意のコード化ユニットについてフィルタ係数の最良のセットを選択することができ、デコーダにシンタックス要素を通信することができる。この場合、シンタックス要素は、デコーダが、エンコーダにおいて適応的に決定され、適用されたのと同じフィルタ係数を適用することができるように、（あらかじめ定義されたセットから）フィルタ係数の選択されたセットを識別するインデックスを備え得る。適応フィルタリングは、スイッチ式フィルタリングよりも望ましいフィルタリングを達成し得るが、スイッチ式フィルタリングは、適応フィルタリングに比べて計算上の利点（すなわち、計算の簡単さ）を有する。適応フィルタリングが使用されるときにはフィルタ係数自体が送られるので、適応フィルタリングは、通常、スイッチ式フィルタリングに比べてビットストリーム中でより多くのシンタックス情報を必要とする。したがって、適応フィルタリングまたはスイッチ式フィルタリングの使用は、符号化の精度と、計算の複雑さと、達成され得る圧縮のレベルとに影響を及ぼし得る設計トレードオフと見なされ得る。
【００１８】
本開示によれば、分離可能適応ループフィルタ（たとえば、インループまたはポストループ）には、１Ｄ適応フィルタおよび１Ｄスイッチ式フィルタが含まれ得る。１Ｄスイッチ式フィルタは、原信号と復号されたフィルタリングされた信号との間の誤差を実質的に最小限に抑えることによって、あらかじめ定義されたフィルタセットから選択され得る。１Ｄスイッチ式フィルタは、一方向、通常は水平方向または垂直方向に適用されることができる。１Ｄ適応フィルタは、次いで、１Ｄスイッチ式フィルタに対して垂直な方向に適用されることができる。ただし、初めに１Ｄ適応フィルタを適用し、次いで、２番目に１Ｄスイッチフィルタを適用することも可能である。いずれの場合も、この設計に基づいて、２つの異なる分離可能１Ｄ適応フィルタを使用する技法と同様であるコーディング性能を保持しながら、反復フィルタ設計問題を回避または軽減することができる。
【００１９】
本開示の技法はまた、ループフィルタ情報を符号化デバイスから復号デバイスに通信するためのシグナリングスキームを使用することができ、シグナリングは、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ得る。スライスは、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し得る。ＬＣＵは、ＨＥＶＣフレームワーク内のコード化ユニットを指し得るものであり、コード化ユニット自体は、４分木区分に従ってより小さいコード化ユニットへと再分割され得る。４分木区分では、方形ＬＣＵが４つの方形コード化ユニットに分割され、それらのコード化ユニットはまた、４分木区分に従ってより小さいコード化ユニットへと再分割され得る。フラグは、さらなる４分木区分が使用されたかどうかを示すために各ＣＵに関連付けられることができる。ＬＣＵは、４つのＣＵへと再分割され得、４つのＣＵは、それぞれ、さらに、より小さいＣＵへと分割され得る。ＨＥＶＣ規格は、元のＬＣＵの４分木区分の最高３つのレベルまでをサポートし得る。ＬＣＵを様々なＣＵに区分した後、様々なＣＵは、さらに、方形または他の矩形となり得るビデオブロックである予測ユニット（ＰＵ）へと区分され得る。
【００２０】
本開示によれば、エンコーダは、エンコーダにおいてビデオデータを再構成するために、１Ｄスイッチ式フィルタおよび１Ｄ適応フィルタを選択し、選択されたフィルタを適用する。さらに、エンコーダは、選択されたフィルタをデコーダにシグナリングするためのシンタックス情報を生成する。そのようなフィルタシグナリングは、符号化ビデオデータのシーケンスについてスライス当たり１回行われ得る。シグナリングは、固定長コーディングまたは可変長コーディングに従って実装されることができ、また、たとえば、フィルタ係数が前のフィルタ係数または既知のフィルタ係数に対する残差（またはデルタ）を使用してコーディングされる予測コーディングを組み込み得る。
【００２１】
方向シグナリングは、フィルタのいずれかについての水平方向と垂直方向とを含む、すべての可能な方向でのシグナリングを可能にするように設計され得る。場合によっては、スイッチ式フィルタセットは、スイッチ式フィルタのために定義された方向に応じて別様に設計され得る。適応フィルタは、フレキシブルなフィルタタップサイズまたは固定のフィルタタップサイズを有し得る。また、フィルタのフィルタサポート（すなわち、形状）は選択可能であり得る。いくつかの例では、適応フィルタが使用されない場合の複雑さを低減するために、２つの別個のスイッチフィルタが、いくつかの場合に（すなわち、いくつかのスライスについて）、可能にされ得る。
【００２２】
いくつかの例では、ピクチャ品質を改善するために、再構成ピクチャについて、復号ループにおいて、デブロッキングフィルタが適用され得る。本開示によれば、一部または全部のビデオブロック（たとえば、一部または全部のＣＵまたはＰＵ）についての復号されたピクチャ品質をさらに改善するために、デブロッキングフィルタの後に復号ループに１Ｄ適応ループフィルタおよび１Ｄスイッチ式ループフィルタが追加され得る。ピクチャ品質を維持し、計算を低減するために、非分離可能フィルタが、Ｉスライスをフィルタリングするために適用されることができ、分離可能１Ｄフィルタが、ＰスライスおよびＢスライスのフィルタリングなどにおいてのみ適用されることができる。このようにして、本開示の技法は、特定のタイプのビデオスライスに選択的に適用されることができ、他のタイプのビデオスライスには他の技法が使用されることができる。
【００２３】
スライスはビデオブロック（またはＬＣＵ）に分割され得、各ビデオブロックは４分木構造に従って区分され得る。図４および図５に、スライス（たとえば、ＬＣＵ）内のビデオブロックがどのようにサブブロック（たとえば、より小さいＣＵ）に区分され得るかの一例を示す。図４に示すように、「オン」によって示される４分木サブブロックは、本明細書で説明するループフィルタによってフィルタリングされ得るが、「オフ」によって示される４分木サブブロックはフィルタリングされない。所与のブロックまたはサブブロックをフィルタリングすべきか否かの決定は、フィルタリングされた結果とフィルタリングされていない結果とをコーディングされている元のブロックと比較することによって、エンコーダにおいて決定されることができる。図５は、図４に示される４分木区分を生じる、区分決定を表す決定木である。図４および図５は、個別にまたは集合的に、エンコーダにおいて生成され、符号化ビデオデータのスライス当たり少なくとも１回デコーダに通信され得る、フィルタマップと見なされ得る。
【００２４】
本開示の技法は、インループフィルタリングまたはポストループフィルタリングに適用し得る。インループフィルタリングとポストループフィルタリングとは、いくつかの点で互いに類似している。インループフィルタリングの場合、コーディングループ中で再構成ビデオデータのフィルタリングが行われ、これは、フィルタリングされたデータが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。対照的に、ポストループフィルタリングの場合、コーディングループの外で再構成ビデオデータのフィルタリングが行われ、これは、データのフィルタリングされていないバージョンが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。したがって、ポストループフィルタリングの場合、フィルタリングは、再構成ビデオデータを生成するために適用され得るが、そのようなフィルタリングは、他の予測符号化において使用するためにそのようなデータを記憶する目的でそのデータに適用されない。本開示に一致する、インループフィルタリングまたはポストループフィルタリングのうちの少なくとも１つの次元は、フィルタリングプロセスにおいて適用されるフィルタリング係数がプロセス中に適応的に定義されるという点で適応型であり得る。他方の次元は、両方の次元における適応フィルタリングに比べて複雑さを低減するようにスイッチ式フィルタ手法を使用し得る。
【００２５】
本開示では、「コーディング」という用語は符号化または復号を指す。同様に、「コーダ」という用語は、概して、任意のビデオエンコーダ、ビデオデコーダ、または複合エンコーダ／デコーダ（コーデック）を指す。したがって、「コーダ」という用語は、本明細書では、ビデオ符号化またはビデオ復号を実行する専用コンピュータデバイスまたは装置を指すために使用される。本開示のフィルタリング技法はエンコーダまたはデコーダに適用可能であり得る。場合によっては、適用されるべきフィルタリングのタイプをデコーダに通知するために、フィルタシンタックス要素がビットストリームへと符号化され得る。本開示はまた、たとえば、符号化データのスライスに関連付けられたヘッダ要素またはフッタ要素において、フィルタシンタックス情報を符号化することによってフィルタ情報を符号化する能力を改善し得る符号化情報を通信するためのフォーマットを定義する。
【００２６】
図１は、本開示の技法を実装し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示すように、システム１０は、通信チャネル１５を介して符号化ビデオを宛先デバイス１６に送信するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１６は、広範囲のデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１６は、いわゆるセルラー無線電話または衛星無線電話などのワイヤレス通信デバイスハンドセットを備え得る。ただし、より一般的にはビデオコーディング中のビデオブロックおよび／またはピクセルフィルタリングに適用する本開示の技法は、必ずしもワイヤレスアプリケーションまたは設定に限定されるものではなく、ビデオ符号化および／または復号機能を含む非ワイヤレスデバイスに適用され得る。
【００２７】
図１の例では、ソースデバイス１２は、ビデオソース２０と、ビデオエンコーダ２２と、変調器／復調器（モデム）２３と、送信機２４とを含み得る。宛先デバイス１６は、受信機２６と、モデム２７と、ビデオデコーダ２８と、ディスプレイデバイス３０とを含み得る。本開示によれば、ソースデバイス１２のビデオエンコーダ２２は、ビデオ符号化プロセス中に再構成ビデオデータのループフィルタリングを実行するように構成され得る。ビデオ符号化プロセス自体は、符号化データを再構成するために復号ループを含み得るものであり、本開示のループフィルタリングは、符号化プロセスのその復号ループの一部としてビデオエンコーダ２２において行われ得る。ループフィルタリングは、デブロックフィルタリングプロセスに続いて行われることができ、水平または垂直のいずれかである第１の次元におけるビデオデータへの１次元（１Ｄ）スイッチ式フィルタの適用、および第１の次元に垂直である第２の次元におけるビデオデータへの１Ｄ適応フィルタの適用を含み得る。
【００２８】
フィルタは、符号化プロセスの一部として選択されることができ、エンコーダ２２は、デコーダに対してフィルタを識別するために、ビットストリームへとシンタックス情報を符号化することができる。この符号化シンタックス情報は、１Ｄ適応フィルタに関するフィルタ係数と、１Ｄスイッチ式フィルタを識別するためのインデックス値とを含み得る。さらに、エンコーダ２２は、選択的方法、たとえば、いくつかのビデオブロックをフィルタリングし、他のビデオブロックをフィルタリングしない方法において、ループフィルタリングを適用することができる。エンコーダは、各ブロックをフィルタリングし、フィルタリングが再構成ビデオブロックを改善したのか劣化させたのかを判定するように、フィルタリングされたブロックとフィルタリングされていないブロックとを、符号化されている元のビデオブロックと比較することができる。エンコーダ２２は、符号化データのスライスのどのブロックがフィルタリングされるべきであり、どのブロックがフィルタリングされないままであるべきかをシグナリングするフィルタマップを生成することができる。フィルタシンタックス情報の符号化およびフィルタマップに関するさらなる詳細を以下に与える。
【００２９】
同様のフィルタリング技法は、また、宛先デバイス１６のビデオデコーダ２８によって実行され得る。すなわち、ビデオデコーダ２８は、また、水平または垂直のいずれかである第１の次元においてビデオデータに１Ｄスイッチ式フィルタを適用し、第１の次元に垂直である第２の次元においてビデオデータに１Ｄ適応フィルタを適用するように構成され得る。復号側では、宛先デバイス１６は、フィルタマップおよびフィルタシンタックス情報を、符号化データのスライス当たり少なくとも１回受信することができ、スライスは、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットを指す。このように、ビデオデコーダ２８は、エンコーダ２２がビットストリーム中で与える情報に基づいて、エンコーダ２２によって定義されたループフィルタリングを適用することができる。
【００３０】
やはり、図１に示されたシステム１０は例示にすぎない。本開示のフィルタリング技法は、任意の符号化デバイスまたは復号デバイスによって実行され得る。ソースデバイス１２および宛先デバイス１６は、そのような技法をサポートできるコーディングデバイスの例にすぎない。
【００３１】
ソースデバイス１２のビデオエンコーダ２２は、本開示の技法を使用してビデオソース２０から受信されたビデオデータを符号化し得る。ビデオソース２０は、ビデオカメラ、前にキャプチャされたビデオを含んでいるビデオアーカイブ、またはビデオコンテンツプロバイダからのビデオフィードなど、ビデオキャプチャデバイスを備え得る。さらなる代替例として、ビデオソース２０は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース２０がビデオカメラである場合、ソースデバイス１２および宛先デバイス１６は、いわゆるカメラ付き携帯電話またはビデオ電話を形成し得る。各場合において、キャプチャされたビデオ、プリキャプチャされたビデオまたはコンピュータ生成ビデオは、ビデオエンコーダ２２によって符号化され得る。
【００３２】
ビデオデータがビデオエンコーダ２２によって符号化されると、符号化されたビデオ情報は、次いで、たとえば、符号分割多元接続（ＣＤＭＡ）、直交周波数分割多重化（ＯＦＤＭ）あるいは他の任意の通信規格または技法などの通信規格に従ってモデム２３によって変調され得る。次いで、符号化および変調されたデータは、送信機２４を介して宛先デバイス１６に送信され得る。モデム２３は、信号変調のために設計された様々なミキサ、フィルタ、増幅器または他のコンポーネントを含み得る。送信機２４は、増幅器、フィルタ、および１つまたは複数のアンテナを含む、データを送信するために設計された回路を含み得る。宛先デバイス１６の受信機２６は、チャネル１５を介して情報を受信し、モデム２７はその情報を復調する。やはり、ビデオデコーダ２８によって実行されるビデオ復号プロセスは、ビデオエンコーダ２２のフィルタリング技法と同様のフィルタリング技法を含み得る。
【００３３】
通信チャネル１５は、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体、あるいはワイヤレス媒体とワイヤード媒体との任意の組合せを備え得る。通信チャネル１５は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信チャネル１５は、概して、ビデオデータをソースデバイス１２から宛先デバイス１６に送信するための、好適な任意の通信媒体、または様々な通信媒体の集合体を表す。
【００３４】
ビデオエンコーダ２２およびビデオデコーダ２８は、新生のＨＶＥＣ規格などのビデオ圧縮規格に実質的に従って動作し得る。ただし、本開示の技法は、様々な他のビデオコーディング規格のコンテキストに容易に適用され得る。詳細には、エンコーダまたはデコーダにおけるループフィルタリングを可能にする規格は、本開示の教示から恩恵を受け得る。
【００３５】
図１には示されていないが、いくつかの態様では、ビデオエンコーダ２２およびビデオデコーダ２８は、それぞれオーディオエンコーダおよびデコーダと統合されることができ、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を扱うために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含むことができる。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３６】
ビデオエンコーダ２２およびビデオデコーダ２８は、それぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せとして実装され得る。ビデオエンコーダ２２およびビデオデコーダ２８の各々は、１つまたは複数のエンコーダまたはデコーダ中に含まれ得るものであり、そのいずれも、複合エンコーダ／デコーダ（コーデック）の一部として、それぞれのモバイルデバイス、加入者デバイス、ブロードキャストデバイス、サーバなどに統合され得る。本開示では、コーダという用語はエンコーダまたはデコーダを指し、コーダ、エンコーダおよびデコーダという用語はすべて、本開示に一致するビデオデータのコーディング（符号化または復号）のために設計された特定の機械を指す。
【００３７】
場合によっては、デバイス１２、１６は、実質的に対称的に動作し得る。たとえば、デバイス１２、１６の各々は、ビデオ符号化コンポーネントとビデオ復号コンポーネントとを含み得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、またはビデオテレフォニーのためのビデオデバイス１２、１６間の一方向または双方向のビデオ送信をサポートし得る。
【００３８】
符号化プロセス中に、ビデオエンコーダ２２は、いくつかのコーディング技法または操作を実行し得る。一般に、ビデオエンコーダ２２は、ビデオブロックを符号化するために、個々のビデオフレーム（または、スライスなど、ビデオの他の独立して定義されたユニット）内のビデオブロックに対して操作を実行する。フレーム、スライス、フレームの部分、ピクチャグループ、または他のデータ構造は、複数のビデオブロックを含むビデオ情報のユニットとして定義され得る。コード化ユニット内のビデオブロックは、固定サイズまたは可変サイズを有し得、指定のコーディング規格に応じてサイズが異なり得る。場合によっては、各ビデオフレームは、独立して復号可能な一連のスライスを含み得、各スライスは、さらに小さいブロックへと配置され得る一連のビデオブロックを含み得る。
【００３９】
マクロブロックは、ＩＴＵ  Ｈ．２６４規格および他の規格によって定義されるビデオブロックの１つのタイプである。マクロブロックは一般に１６×１６データブロックを指す。ＩＴＵ−Ｔ  Ｈ．２６４規格は、ルーマ成分については１６×１６、８×８、または４×４、クロマ成分については８×８など、様々なブロックサイズにおいてイントラ予測をサポートし、ルーマ成分については１６×１６、１６×８、８×１６、８×８、８×４、４×８および４×４、およびクロマ成分については対応するスケーリングされたサイズなど、様々なブロックサイズにおいてインター予測をサポートする。新生のＨＥＶＣ規格は、ビデオブロックのための新しい用語を定義している。具体的には、ＨＥＶＣでは、ビデオブロック（またはそのパーティション）は「コード化ユニット」とも呼ばれる。ＨＥＶＣ規格では、最大コード化ユニット（ＬＣＵ）が４分木区分スキームに従ってさらに小さいコード化ユニット（ＣＵ）へと分割されることができ、該スキームにおいて定義される様々なＣＵは、さらに、いわゆる予測ユニット（ＰＵ）へと区分され得る。ＬＣＵ、ＣＵ、およびＰＵは、すべて、本開示の意味内のビデオブロックである。ＨＥＶＣ規格または他のビデオコーディング規格に一致する他のタイプのビデオブロックも使用され得る。したがって、「ビデオブロック」という表現は、任意のサイズのビデオブロックを指す。さらに、ビデオブロックは、ピクセル領域中のビデオデータのブロック、または離散コサイン変換（ＤＣＴ）領域、ＤＣＴと同様の領域、ウェーブレット領域などの変換領域中のデータのブロックを指すこともある。しかしながら、本開示の技法に従うほとんどの事例では、本開示のフィルタリングは、ピクセル領域において行われる。
【００４０】
ビデオエンコーダ２２は、コーディングされているビデオブロックが、予測ブロックを識別するために予測フレーム（または他のコード化ユニット）と比較される、予測コーディングを実行し得る。予測コーディングのこのプロセスは、動き推定および動き補償とも呼ばれる。動き推定は、１つまたは複数の予測フレーム（または他のコード化ユニット）の１つまたは複数の予測ビデオブロックに対するビデオブロックの動きを推定する。動き補償は、１つまたは複数の予測フレームあるいは他のコード化ユニットから所望の予測ビデオブロックを生成する。動き補償は、しばしば、フラクショナル精度（fractional precision）で予測データを生成するために補間フィルタリングが実行される補間プロセスを含む。
【００４１】
予測ブロックを生成した後に、コーディングされている現在のビデオブロックと予測ブロックとの間の差は残差ブロックとしてコーディングされ、予測ブロックを識別するために（動きベクトルなどの）予測シンタックスが使用される。残差ブロックは、変換され、量子化され得る。変換技法は、ＤＣＴプロセスまたは概念的に類似のプロセス、整数変換、ウェーブレット変換、または他のタイプの変換を含み得る。ＤＣＴプロセスでは、一例として、変換プロセスは、ピクセル値（たとえば、残差値）のセットを、周波数領域におけるピクセル値のエネルギーを表し得る変換係数に変換する。ＩＴＵ  Ｈ．２６４規格は、ＣＵごとに異なり得る変換ユニット（ＴＵ）に従う変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義されたＣＵのサイズに従ってサイズ決定されるが、常にそうであるとは限らない。量子化は、通常、変換係数に適用され、一般に、所与の変換係数に関連付けられたビット数を制限するプロセスを伴う。
【００４２】
変換および量子化の後に、量子化および変換された残差ビデオブロックに対してエントロピーコーディングが実行され得る。符号化中に定義されるフィルタシンタックス情報および予測ベクトルなど、シンタックス要素も、エントロピーコード化ビットストリーム中に含まれ得る。概して、エントロピーコーディングは、一連の量子化された変換係数および／または他のシンタックス情報をまとめて圧縮する１つまたは複数のプロセスを備える。２次元ビデオブロックから係数の１つまたは複数のシリアル化１次元ベクトルを定義するために、量子化された変換係数に対してジグザグ走査技法などの走査技法が実行される。走査された係数は、次いで、たとえば、コンテンツ適応型可変長コーディング（ＣＡＶＬＣ：content adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、または別のエントロピーコーディングプロセスによって、シンタックス情報とともにエントロピーコーディングされる。
【００４３】
符号化プロセスの一部として、符号化されたビデオブロックは、後続のビデオブロックの後続の予測ベースコーディングのために使用されるビデオデータを生成するために復号され得る。これは、しばしば、符号化プロセスの復号ループと呼ばれ、概して、デコーダデバイスによって実行される復号を模倣する。復号ループでは、ビデオ品質を改善し、たとえば、ピクセル境界を平滑化し、場合によっては復号されたビデオからアーティファクトを除去するために、本開示のループフィルタリングが採用され得る。このループフィルタリングはインループであることもポストループであることもある。やはり、インループフィルタリングの場合、コーディングループ中で再構成ビデオデータのフィルタリングが行われ、これは、フィルタリングされたデータが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。対照的に、ポストループフィルタリングの場合、コーディングループの外で再構成ビデオデータのフィルタリングが行われ、これは、データのフィルタリングされていないバージョンが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。ループフィルタリングは、しばしば、ビデオブロック境界に現れるブロッキネスアーティファクトを除去するために、一般に、隣接するビデオブロックの境界上にまたはその近くにあるピクセルにフィルタリングを適用する、別個のデブロックフィルタリングプロセスに後続する。
【００４４】
図２は、本開示に一致するビデオエンコーダ５０を示すブロック図である。ビデオエンコーダ５０は、デバイス２０のビデオエンコーダ２２、または異なるデバイスのビデオエンコーダに対応し得る。図２に示すように、ビデオエンコーダ５０は、予測ユニット３２と、加算器４８および５１と、メモリ３４とを含む。ビデオエンコーダ５０は、また、変換ユニット３８および量子化ユニット４０、ならびに逆量子化ユニット４２および逆変換ユニット４４も含む。ビデオエンコーダ５０は、また、エントロピーコーディングユニット４６とフィルタユニット４７とを含む。フィルタユニット４７は本開示に一致するフィルタリングを実行する。具体的には、フィルタユニット４７は、水平または垂直のいずれかである第１の次元においてビデオデータに１Ｄスイッチ式フィルタを適用し、第１の次元に垂直である第２の次元においてビデオデータに１Ｄ適応フィルタを適用する。さらに、フィルタユニット４７は、フィルタを選択し、デコーダに対して、フィルタを識別するために、符号化されたビットストリームに含めるためのシンタックス情報を生成し得る。生成されたシンタックス情報は、１Ｄ適応フィルタに関するフィルタ係数と、１Ｄスイッチ式フィルタを識別するためのインデックス値とを含み得る。
【００４５】
いくつかの例では、フィルタユニット４７は、選択的方法でループフィルタリングを適用することができ、たとえば、いくつかのビデオブロックをフィルタリングし、他のビデオブロックをフィルタリングしないことができる。フィルタユニット４７は、各ブロックをフィルタリングし、フィルタリングが再構成ビデオブロックを改善したのか劣化させたのかを決定するために、フィルタリングされたブロックとフィルタリングされていないブロックとを、符号化されている元のビデオブロックと比較することができる。フィルタユニット４７は、また、符号化データのスライスのどのブロックがフィルタリングされるべきであり、どのブロックがフィルタリングされないままであるべきかをシグナリングするフィルタマップを生成し得る。このフィルタマップ、ならびに他のフィルタシンタックス情報は、フィルタユニット４７からエントロピー符号化ユニット４６に通信され得る。フィルタシンタックス情報、たとえば、フィルタマップ、１Ｄスイッチ式フィルタに関するインデックスおよび１Ｄ適応フィルタに関する係数は、符号化ビデオスライスに関連付けられたスライスヘッダ（または他の構文データ構造）中に含まれ得る。やはり、スライスは、概して、フレーム全体またはフレームの一部分を指し、通常、ＬＣＵのセットと、ＬＣＵまたはＬＣＵ中に含まれるより小さいビデオブロックに適用可能なスライスレベルシンタックス情報とを含む。
【００４６】
概して、符号化プロセス中に、ビデオエンコーダ５０が、コーディングされるべきビデオブロックを受信し、予測ユニット３２が予測コーディング技法を実行する。ビデオブロックは、上記で略述したようにＣＵまたはＰＵを備え得るか、あるいは概して、ブロックベースのビデオコーディング技法または規格に一致するビデオデータの任意のブロックを備え得る。インターコーディングの場合、予測ユニット３２は、予測ブロックを定義するために、符号化されるべきビデオブロックを、１つまたは複数のビデオ参照フレームまたはスライス（たとえば、参照データの１つまたは複数の「リスト」）中の様々なブロックと比較する。イントラコーディングの場合、予測ユニット３２は、同じコード化ユニット内の隣接するデータに基づいて予測ブロックを生成する。予測ユニット３２は、予測ブロックを出力し、加算器４８は、残差ブロックを生成するために、コーディングされているビデオブロックから予測ブロックを減算する。
【００４７】
インターコーディングの場合、予測ユニット３２は、予測ブロックを指し示す動きベクトルを識別し、動きベクトルに基づいて予測ブロックを生成する、動き推定ユニットおよび動き補償ユニットを備え得る。通常、動き推定は、動きを推定する、動きベクトルを生成するプロセスと考えられる。たとえば、動きベクトルは、現在のフレーム内のコーディングされている現在のブロックに対する予測フレーム内の予測ブロックの変位を示し得る。動き補償は、通常、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成するプロセスと考えられる。イントラコーディングの場合、予測ユニット３２は、同じコード化ユニット内の隣接するデータに基づいて予測ブロックを生成する。１つまたは複数のイントラ予測モードは、イントラ予測ブロックがどのように定義され得るかを定義することができる。
【００４８】
インターコーディングのための動き補償は、サブピクセル解像度への補間を含み得る。したがって、予測ユニット３２は、予測データを、１／２ピクセル解像度、１／４ピクセル解像度、またはさらに精細な解像度まで補間するために、１つまたは複数の補間フィルタを含み得る。これにより、動き推定プロセスが、そのようなサブピクセル解像度までビデオブロックの動きを推定することが可能になる。
【００４９】
予測ユニット３２が予測ブロックを出力した後、そして、加算器４８が、残差ブロックを生成するために、コーディングされているビデオブロックから予測ブロックを減算した後に、変換ユニット３８が残差ブロックに変換を適用する。変換は、離散コサイン変換（ＤＣＴ）、またはＩＴＵ  Ｈ．２６４規格もしくはＨＥＶＣ規格によって定義される変換など、概念的に類似の変換を含み得る。いくつかの例では、ＨＥＶＣ規格に従って、変換のサイズは、たとえば、所与のＬＣＵに対して行われる区分のレベルに応じて、異なるＣＵに対して変動し得る。変換ユニット（ＴＵ）は、変換サイズを設定するために定義され得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用されることができる。いずれの場合も、変換ユニットは、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、一般に、残差情報をピクセル領域から周波数領域に変換し得る。
【００５０】
次いで、量子化ユニット４０が、ビットレートをさらに低減するために残差変換係数を量子化する。量子化ユニット４０は、たとえば、係数の各々をコーディングするために使用されるビット数を制限し得る。量子化の後に、エントロピーコーディングユニット４６は、データを走査し、エントロピー符号化し得る。たとえば、エントロピーコーディングユニット４６は、量子化係数ブロックを２次元表現から１つまたは複数のシリアル化１次元ベクトルに走査し得る。走査順序は、（ジグザグ走査または別のあらかじめ定義された順序などの）定義された順序で行われるように事前プログラムされ得るか、または場合によっては、前のコーディング統計値に基づいて適応的に定義され得る。この走査プロセスの後に、エントロピー符号化ユニット４６が、エントロピーコーディング方法に従って（本明細書で説明するフィルタシンタックス情報などのシンタックス要素とともに）量子化変換係数を符号化する。エントロピーコーディングユニット４６によって使用され得るエントロピーコーディング技法の例には、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）およびコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が含まれる。エントロピーコード化ビットストリーム中に含まれるシンタックス要素は、インターコーディングについては動きベクトルまたはイントラコーディングについては予測モードなど、予測ユニット３２からの予測シンタックスを含み得る。エントロピーコード化ビットストリーム中に含まれるシンタックス要素は、また、本明細書で説明する方法で符号化され得るフィルタユニット４７からのフィルタ情報をも含み得る。
【００５１】
ＣＡＶＬＣは、エントロピーコーディングユニット４６によってベクトル化ベースで適用され得る、ＩＴＵ  Ｈ．２６４規格と新生のＨＥＶＣ規格とによってサポートされるエントロピーコーディング技法の１つのタイプである。ＣＡＶＬＣは、変換係数および／またはシンタックス要素のシリアル化「ラン」を効果的に圧縮する方式で可変長コーディング（ＶＬＣ）テーブルを使用する。ＣＡＢＡＣは、エントロピーコーディングユニット４６によってベクトル化ベースで適用され得る、ＩＴＵ  Ｈ．２６４規格またはＨＥＶＣ規格によってサポートされる別のタイプのエントロピーコーディング技法である。ＣＡＢＡＣは、２値化、コンテキストモデル選択、およびバイナリ算術コーディングを含むいくつかのステージを必要とし得る。この場合、エントロピーコーディングユニット４６は、ＣＡＢＡＣに従って変換係数およびシンタックス要素をコーディングする。多くの他のタイプのエントロピーコーディング技法も存在し、新しいエントロピーコーディング技法が将来出現する可能性がある。本開示は、いかなる特定のエントロピーコーディング技法にも限定されない。
【００５２】
エントロピー符号化ユニット４６によるエントロピーコーディングの後に、符号化されたビデオは、別のデバイスに送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。この場合も、符号化されたビデオは、復号プロセスを適切に構成するためにデコーダによって使用され得る、エントロピーコード化ベクトルと（本明細書で説明するフィルタ情報を含む）様々なシンタックス情報とを備え得る。逆量子化ユニット４２および逆変換ユニット４４が、それぞれ、逆量子化および逆変換を適用して、ピクセル領域において残差ブロックを再構成する。加算器５１は、再構成された残差ブロックを、予測ユニット３２によって生成された予測ブロックに加算して、メモリ３４に記憶するための再構成されたビデオブロックを生成する。しかしながら、そのような記憶より前に、フィルタユニット４７は、ビデオ品質を改善するためにビデオブロックにフィルタリングを適用し得る。フィルタユニット４７によるそのようなフィルタリングは、アーティファクトを低減し、ピクセル境界を平滑化し得る。さらに、フィルタリングは、コーディングされているビデオブロックへの厳密な一致を含む予測ビデオブロックを生成することによって、圧縮を改善し得る。
【００５３】
この場合も、フィルタユニット４７は、メモリ３４に記憶するためのビデオデータを再構成するために、本開示に一致する、１Ｄスイッチ式フィルタと１Ｄ適応フィルタとを適用し、選択されたフィルタを適用する。さらに、フィルタユニット４７は、選択されたフィルタをデコーダにシグナリングするためのシンタックス情報を生成する。そのようなフィルタシンタックス情報は、符号化ビデオデータのシーケンスについてスライス当たり１回行われるように生成され、たとえば、スライスヘッダの一部として、ビットストリームに含めるためのエントロピーコーディングユニット４６にフォワーディングされ得る。特に、フィルタユニット４７は、１Ｄスイッチ式フィルタを選択し、１Ｄスイッチ式フィルタのセットに対して１Ｄスイッチ式フィルタのインデックスを識別するシンタックス要素を生成し、１Ｄ適応フィルタに関する係数を識別し得る。フィルタユニット４７は、１Ｄスイッチ式フィルタを選択し、シンタックス要素を生成し、１Ｄ適応フィルタに関する係数を識別し得、これらは、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ得、ここで、スライスは、ビデオフレームの一部または全部を定義するＬＣＵのセットに対応する。場合によっては、フィルタユニット４７はまた、１Ｄスイッチ式フィルタまたは１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成することができ、これもまた、スライス当たり少なくとも１回行われ得る。いくつかのスライスについて、たとえば、複雑さをさらに低減するために、フィルタユニット４７は、水平または垂直のいずれかである第１の次元においてビデオデータに第１の１Ｄスイッチ式フィルタを適用し、第１の次元に垂直である第２の次元において第２の１Ｄ適応フィルタを適用し得る。
【００５４】
フィルタリングは、スライスのＣＵのサブセットに対してのみ実行され得る。この場合、フィルタユニット４７は、フィルタリングされるスライスのコード化ユニットのサブセットを定義するフィルタマップを生成し得る。フィルタユニット４７は、実際に、あらゆるビデオブロック（たとえば、スライスのあらゆるＣＵおよびＰＵ）をフィルタリングし得るが、フィルタリングがビデオ品質を改善したか否かを決定し得る。改善した場合、フィルタユニット４７は、フィルタリングがそのビデオブロックについてオンにされるべきであることを示すために、フィルタマップ中でフラグをコーディングすることによってその所与のビデオブロックに対してフィルタリングをオンにすることができる。本開示のフィルタリングは、「ループフィルタリング」（たとえば、いわゆる「インループフィルタリング」またはいわゆる「ポストループ」フィルタリング）とも呼ばれる。ループフィルタリングは、ビデオブロックのエッジをフィルタリングするデブロックフィルタリングプロセスの後に行われ得る。したがって、フィルタユニット４７はまた、いくつかの例では、本開示で説明するループフィルタリングよりも前にデブロックフィルタリングを実行し得る。
【００５５】
図３は、本明細書で説明する方法で符号化されたビデオシーケンスを復号するビデオデコーダ６０の一例を示すブロック図である。本開示のフィルタリング技法は、いくつかの例ではビデオデコーダ６０によって実行され得る。ビデオデコーダ６０において受信されたビデオシーケンスは、画像フレームの符号化されたセット、フレームスライスのセット、共通コード化されたグループオブピクチャ（ＧＯＰ）、または符号化されたビデオブロック（ＣＵおよび場合によってはＰＵなど）と、そのようなビデオブロックのどのように復号すべきかを定義するためのシンタックス情報とを含む、ビデオ情報の多種多様なユニットを備え得る。
【００５６】
ビデオデコーダ６０は、図２のエントロピー符号化ユニット４６によって実行される符号化の相互復号機能を実行するエントロピー復号ユニット５２を含む。特に、エントロピー復号ユニット５２は、ＣＡＶＬＣまたはＣＡＢＡＣ復号、あるいはビデオエンコーダ５０によって使用された他の任意のタイプのエントロピー復号を実行し得る。１次元シリアル化フォーマットのエントロピー復号されたビデオブロックは、１つまたは複数の１次元係数ベクトルから２次元ブロックフォーマットへと変換され得る。ベクトルの数およびサイズ、ならびにビデオブロックについて定義された走査順序は、２次元ブロックがどのように再構成されるかを定義し得る。エントロピー復号された予測シンタックスは、エントロピー復号ユニット５２から予測ユニット５４に送られることができ、エントロピー復号されたフィルタ情報は、エントロピー復号ユニット５２からフィルタユニット５７に送られることができる。
【００５７】
ビデオデコーダ６０はまた、予測ユニット５４、逆量子化ユニット５６、逆変換ユニット５８、メモリ６２、および加算器６４を含む。さらに、ビデオデコーダ６０は、加算器６４の出力をフィルタリングするフィルタユニット５７も含む。本開示に従って、フィルタユニット５７は、エントロピー復号されたフィルタ情報を受信し、本開示に一致するループフィルタリングを適用し得る。ビデオエンコーダ５０と同様に、ビデオデコーダ６０は、予測ユニット５４とフィルタユニット５７とを含む。ビデオデコーダ６０の予測ユニット５４は、動き補償要素、および場合によっては動き補償プロセスにおけるサブピクセル補間のための１つまたは複数の補間フィルタを含み得る。
【００５８】
ビデオエンコーダ５０の場合と同様に、ビデオデコーダ６０では、フィルタユニット５７は、メモリ３４に記憶するためのビデオデータを再構成するために、本開示に一致する、１Ｄスイッチ式フィルタおよび１Ｄ適応フィルタを適用し、選択されたフィルタを適用する。復号側では、ビデオデコーダ６０は、フィルタリングされるスライスのコード化ユニットのサブセットを定義するフィルタマップを受信し、フィルタマップがそのようなフィルタリングについて識別するそれらのビデオブロックにフィルタリングを適用することができる。ビデオデコーダ６０は、１Ｄスイッチ式フィルタのセットに対して１Ｄスイッチ式フィルタを識別する１Ｄスイッチ式フィルタのインデックスを受信し、１Ｄ適応フィルタについての係数を識別する情報を受信することができる。このシンタックス情報（たとえば、フィルタマップ、１Ｄスイッチ式フィルタに関するインデックスおよび１Ｄ適応フィルタに関する係数）は、ビットストリーム中で符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回受信され得る。シンタックス情報は、また、１Ｄスイッチ式フィルタまたは１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報をも含み得る。
【００５９】
本開示によれば、エンコーダは、１Ｄスイッチ式フィルタおよび１Ｄ適応フィルタを選択し、選択されたフィルタを適用して、エンコーダにおいてビデオデータを再構成する。さらに、エンコーダは、選択されたフィルタをデコーダにシグナリングするためのシンタックス情報を生成する。次いで、デコーダは、エンコーダによって選択され、定義されたのと同じフィルタリングを適用する。説明したように、フィルタシグナリングは、符号化ビデオデータのシーケンスについてスライス当たり１回行われ得る。一例として、シグナリングは、以下の擬似コードに従って定義され得る。  
１．  １Ｄスイッチ式フィルタ（または適応フィルタ）について方向をシグナリングする  
２．  １Ｄスイッチ式フィルタのフィルタインデックスをシグナリングする  
３．  １Ｄ適応フィルタの係数をシグナリングする  
このシグナリングのすべては、固定長コーディングまたは可変長コーディングに従って実装されることができ、また、たとえば、フィルタ係数が前のフィルタ係数または既知のフィルタ係数に対する残差（またはデルタ）を使用してコーディングされる予測コーディングも組み込み得る。
【００６０】
方向シグナリングは、フィルタのどちらについても水平方向と垂直方向とを含む、フィルタが適用され得るすべての可能な方向をカバーするように設計され得る。場合によっては、スイッチ式フィルタセットは、スイッチ式フィルタについて定義された方向に応じて別様に設計され得る。適応フィルタは、フレキシブルなフィルタタップサイズまたは固定のフィルタタップサイズを有し得る。また、フィルタのフィルタサポート（すなわち、形状）は選択可能であり得る。いずれのそのようなフィルタ特徴（たとえば、フィルタサイズ、フィルタ形状、フィルタ係数など）も、符号化データのスライス当たり少なくとも１回エンコーダからデコーダに通信され得る。
【００６１】
別の例では、適応フィルタが使用されない場合の複雑さを低減するために、いくつかの場合に（すなわち、いくつかのスライスについて）、２つの別個のスイッチフィルタが可能にされ得る。この場合、シグナリングは、以下の擬似コードによって定義され得る。  
１．  ２つの１Ｄスイッチフィルタが適用されるかどうかをシグナリングする。  
はいの場合、２に進む。そうでない場合、５に進む。  
２．  １Ｄスイッチ式フィルタについての方向をシグナリングする。  
３．  １Ｄスイッチ式フィルタのフィルタインデックスをシグナリングする。  
４．  ８に進む。  
５．  １Ｄスイッチ式フィルタ（または適応フィルタ）についての方向をシグナリングする。  
６．  １Ｄスイッチフィルタのフィルタインデックスをシグナリングする。  
７．  １Ｄ適応フィルタの係数をシグナリングする。  
８．  終了
説明したように、デブロッキングフィルタが、画質を改善するために、デコーダによって、またはエンコーダの復号ループにおいて、再構成ピクチャについて適用されることができる。本開示によれば、一部または全部のビデオブロック（たとえば、一部または全部のＣＵまたはＰＵ）についての復号された画質をさらに改善するために、１Ｄ適応ループフィルタおよび１Ｄスイッチ式ループフィルタが、デブロッキングフィルタの後で（エンコーダおよびデコーダにおける）復号プロセスに追加されることができる。画質を維持し、計算を低減するために、非分離可能フィルタが、Ｉスライスをフィルタリングするために適用され、分離可能１Ｄフィルタが、ＰスライスおよびＢスライスのフィルタリングにおいてのみ適用されることなどが可能である。このようにして、本開示の技法は、特定のタイプのビデオスライスに選択的に適用され、他のタイプのビデオスライスには他の技法が使用されることができる。
【００６２】
スライスは、ビデオブロック（またはＬＣＵ）に分割されることができ、各ビデオブロックは、４分木構造に従って区分され得る。上述のように、図４および図５は、スライス（たとえば、ＬＣＵ）内のビデオブロックがどのようにサブブロック（たとえば、より小さいＣＵ）に区分され得るかに関する一例を示す。図４に示すように、「ＯＮ」によって示される４分木サブブロックは、本明細書で説明するループフィルタによってフィルタリングされることができ、「ＯＦＦ」によって示される４分木サブブロックは、フィルタリングされない。所与のブロックまたはサブブロックをフィルタリングすべきか否かの決定は、フィルタリングされた結果とフィルタリングされていない結果とをコーディングされている元のブロックに対して比較することによって、エンコーダにおいて決定され得る。図５は、図４に示した４分木区分を生じる、区分決定を表す決定木である。
【００６３】
具体的には、図４は、４分木区分スキームに従って、様々なサイズのより小さいビデオブロックに区分された大きいビデオブロックを表し得る。図４では、各ビデオブロックは、そのビデオブロックに関してフィルタリングが適用されるべきかまたは回避されるべきかを示すために、（ＯＮまたはＯＦＦで）標示されている。ビデオエンコーダは、各ビデオブロックのフィルタリングされたバージョンとフィルタリングされていないバージョンとをコーディングされている元のビデオブロックと比較することによって、このフィルタマップを定義することができる。
【００６４】
再び、図５は、図４に示した４分木区分を生じる、区分決定に対応する決定木である。図５において、各円はＣＵに対応し得る。円が「１」フラグを含む場合、そのＣＵは、もう４つのＣＵにさらに区分されるが、円が「０」フラグを含む場合、そのＣＵはそれ以上区分されない。（たとえば、ＣＵに対応する）各円は、また、関連する三角形を含む。所与のＣＵに関する三角形中のフラグが１に設定された場合、そのＣＵに関するフィルタリングは「オン」になるが、所与のＣＵに関する三角形中のフラグが０に設定された場合、フィルタリングはオフになる。このようにして、図４および図５は、個別にまたはまとめて、各区分されたビデオブロック（たとえば、ＬＣＵ内の各ＣＵ）にフィルタリングを適用すべきか否かの、所与のビデオブロック（たとえば、ＬＣＵ）についての４分木区分のレベルを通信するために、エンコーダにおいて生成され、符号化ビデオデータのスライス当たり少なくとも１回デコーダに通信され得る、フィルタマップと見なされ得る。
【００６５】
図６は、ビデオエンコーダまたはビデオデコーダによって実行され得るプロセスを示す流れ図である。他のデバイスまたはコーダも該プロセスを実行できるが、図６については、図２のビデオエンコーダ５０および図３のビデオデコーダ６０の観点から説明する。図６に示すように、ビデオエンコーダ５０またはビデオデコーダ６０は、符号化プロセスまたは復号プロセスの一部として再構成ビデオデータを生成する（６０１）。符号化プロセスの場合、再構成ビデオデータのこの生成は、ビデオエンコーダ５０の復号ループに対応し得る。
【００６６】
ビデオエンコーダ５０のフィルタユニット４７またはビデオデコーダ６０のフィルタユニット５７は、再構成ビデオデータのループフィルタリングのために１Ｄスイッチ式フィルタを適用する（６０２）。上述のように、このループフィルタは、スライスのビデオブロックのサブセットのみに対して実行されることができ、デブロックフィルタリングプロセスに後続することができ、デブロックフィルタリングプロセスもフィルタユニット４７および５７によって実行され得る。いずれの場合にも、フィルタユニット４７またはフィルタユニット５７は、次いで、符号化データのループフィルタリングのために１Ｄ適応フィルタを適用する（６０３）。１Ｄ適応フィルタと１Ｄスイッチ式フィルタとの使用は、２つの１Ｄ適応フィルタを用いて達成され得る品質のレベルに近いフィルタリング品質を提供できるが、２つの１Ｄ適応フィルタの使用に比べて複雑さを低減する形でフィルタリング品質を提供する。また、１Ｄ適応フィルタと１Ｄスイッチ式フィルタとの適用の順序を逆転させることができることに留意されたい。言い換えれば、１Ｄフィルタは、分離可能フィルタであり得る。しかしながら、他の場合には、フィルタリングのために使用される１Ｄ適応フィルタは、１Ｄスイッチ式フィルタに関するインデックスが１Ｄ適応フィルタに基づいて定義される１Ｄスイッチ式フィルタのセットに適用されるように、１Ｄスイッチ式フィルタのセットを定義するためにも使用され得る。この後者の場合、１Ｄフィルタは、分離可能フィルタでないことがある。
【００６７】
図７は、本開示に一致する、ビデオエンコーダによって実行され得るプロセスを示す流れ図である。他のデバイスまたはコーダも該プロセスを実行できるが、図７については、図２のビデオエンコーダ５０の観点から説明する。図７に示すように、ビデオエンコーダ５０のフィルタユニット４７は、異なるフィルタ係数を適用し、フィルタリングの品質を評価することなどによって、１Ｄ適応フィルタの係数を決定する（７０１）。適応フィルタ係数を決定するこのプロセスは、徹底探索であり得るか、または可能な係数のより制限された探索を伴うことができる。
【００６８】
フィルタユニット４７はまた、１Ｄスイッチ式フィルタのセットから１Ｄスイッチ式フィルタを選択し得る（７０２）。１Ｄスイッチ式フィルタを選択するプロセスは、フィルタ係数の異なるセットが検討されるという点で適応フィルタリングプロセスと同様であり得る。しかしながら、１Ｄスイッチ式フィルタが、あらかじめ定義された候補のより限定されセットから選択されるので、１Ｄスイッチ式フィルタを選択するプロセスはまた、適応フィルタリングに比べてより単純なプロセスであり得る。
【００６９】
選択されると、フィルタユニット４７は、たとえば、水平次元および垂直次元（またはその逆）において、１Ｄ適応フィルタおよび１Ｄスイッチ式フィルタを適用する（７０３）。２つの異なる１Ｄフィルタが互いに対して垂直に配向される限り、対角フィルタリング（diagonal filtering）も使用されることができる。いずれの場合も、フィルタユニット４７は、あらかじめ定義されたスイッチ式フィルタのセットに対して選択された１Ｄスイッチ式フィルタを識別するために、（フィルタインデックスなどの）シンタックス要素を符号化する（７０４）。さらに、フィルタユニット４７は、１Ｄ適応フィルタの係数を識別するためにさらなるシンタックス要素を符号化する（７０５）。この符号化は、符号化ビットストリームが各スライスを復号するために必要とされるフィルタ情報を含むように、符号化データのスライス当たり少なくとも１回行われ得る。
【００７０】
図８は、本開示に一致する、ビデオエンコーダによって実行され得るプロセスを示す流れ図である。図８は、図７に非常に類似しており、他のデバイスまたはコーダも該プロセスを実行できるが、図８については、図２のビデオエンコーダ５０の観点から説明する。図８に示すように、ビデオエンコーダ５０のフィルタユニット４７は、異なるフィルタ係数を適用し、フィルタリングの品質を評価することなどによって、１Ｄ適応フィルタの係数を決定する（８０１）。この場合も、適応フィルタ係数を決定するこのプロセスは、徹底探索であり得るか、または可能な係数のより制限された探索を伴うことができる。
【００７１】
フィルタユニット４７はまた、１Ｄスイッチ式フィルタのセットから１Ｄスイッチ式フィルタを選択し得る（８０２）。選択されると、フィルタユニット４７は、たとえば、水平次元および垂直次元（またはその逆）において、１Ｄ適応フィルタおよび１Ｄスイッチ式フィルタを適用する（８０３）。他の例では、対角フィルタリングも使用されることができる。いずれの場合も、フィルタユニット４７は、選択された１Ｄスイッチ式フィルタをあらかじめ定義されたスイッチ式フィルタのセットに対して識別するために、（フィルタインデックスなどの）シンタックス要素を符号化する（８０４）。さらに、フィルタユニット４７は、１Ｄ適応フィルタの係数を識別するためにさらなるシンタックス要素を符号化する（８０５）。さらに、フィルタユニット４７は、１Ｄフィルタのうちの少なくとも１つに関連付けられた方向（たとえば、水平または垂直）を識別するためにさらに別のシンタックス要素を符号化し得る（８０６）。フィルタのうちの１つの方向が与えられれば、他の１Ｄフィルタに関連付けられた方向は、デコーダによって示され得る。他の例の場合と同様に、フィルタ情報のこの符号化は、符号化ビットストリームが各スライスを復号するために必要とされるフィルタ情報を含むように、符号化データのスライス当たり少なくとも１回行われ得る。
【００７２】
図９は、本開示に一致する、ビデオエンコーダによって実行され得るプロセスを示す別の流れ図である。図９は、図７および図８と同様であり、他のデバイスまたはコーダも該プロセスを実行できるが、図９については、図２のビデオエンコーダ５０の観点から説明する。図９に示すように、ビデオエンコーダ５０のフィルタユニット４７は、異なるフィルタ係数を適用し、フィルタリングの品質を評価することなどによって、１Ｄ適応フィルタの係数を決定する（９０１）。この場合も、適応フィルタ係数を決定するこのプロセスは、徹底探索であり得るか、または可能な係数のより制限された探索を伴うことができる。
【００７３】
フィルタユニット４７はまた、１Ｄスイッチ式フィルタのセットから１Ｄスイッチ式フィルタを選択し得る（９０２）。選択されると、フィルタユニット４７は、たとえば、水平次元および垂直次元（またはその逆）において、１Ｄ適応フィルタおよび１Ｄスイッチ式フィルタを適用する（９０３）。他の例では、対角フィルタリングも使用されることができる。いずれの場合も、フィルタユニット４７は、選択された１Ｄスイッチ式フィルタをあらかじめ定義されたスイッチ式フィルタのセットに対して識別するために、（フィルタインデックスなどの）シンタックス要素を符号化する（９０４）。さらに、フィルタユニット４７は、１Ｄ適応フィルタの係数を識別するためにさらなるシンタックス要素を符号化する（９０５）。
【００７４】
図９の例では、フィルタユニット４７は、スライス内のどのブロックがフィルタリングされるべきであり、どのブロックがフィルタリングされないままであるべきかを定めるために、フィルタマップを生成し得る（９０６）。フィルタユニット４７は、そのようなブロックをフィルタリングすべきか否かを決定するために、フィルタリングされたブロックとフィルタリングされていないブロックとをコーディングされているビデオブロックと比較することができる。上述のように、図４および図５は、個別にまたはまとめて、各区分されたビデオブロック（たとえば、ＬＣＵ内の各ＣＵ）にフィルタリングを適用すべきか否かの、所与のビデオブロック（たとえば、ＬＣＵ）に関する４分木区分のレベルを通信するために、エンコーダにおいて生成されて符号化ビデオデータのスライス当たり少なくとも１回デコーダに通信されることのできる、フィルタマップと見なされ得る。ビデオコーディングデバイス（たとえば、ソースデバイス１２）は、適切なフィルタリングがフィルタマップとシンタックス要素とに基づいて宛先デバイスによって適用され得るように、符号化データのスライスとともにフィルタマップおよびシンタックス要素を通信し得る（９０７）。たとえば、フィルタマップおよびシンタックス要素は、スライスヘッダ、スライスフッタ、またはスライスに関するシンタックスを定義するためにデコーダによって知られているビットストリームの他のデータ要素において通信されることができる。フィルタマップは、符号化データのスライスに関連付けられた「フィルタシンタックス情報」の一部とも呼ばれ得る。
【００７５】
図１０は、本開示に一致する、ビデオエンコーダによって実行され得るプロセスを示す別の流れ図である。この場合、ビデオエンコーダは、ビデオシーケンス内のビデオデータの異なるスライスに対して異なるタイプのフィルタリングを実行し得る。特に、図１０によれば、いくつかのスライスは、（本開示に一致する）１Ｄ適応フィルタと１Ｄスイッチ式フィルタとに従ってフィルタリングされ得るが、他のフレームは、スイッチ式フィルタのみを使用し得る。他のデバイスまたはコーダも該プロセスを実行できるが、図１０については、図２のビデオエンコーダ５０の観点から説明する。図１０に示すように、ビデオエンコーダ５０は、符号化プロセスの一部として再構成ビデオデータを生成する（１００１）。符号化プロセスの場合、再構成ビデオデータのこの生成は、ビデオエンコーダ５０の復号ループに対応し得る。
【００７６】
ビデオエンコーダ５０のフィルタユニット４７またはビデオデコーダ６０のフィルタユニット５７は、スイッチ式フィルタリングのみを使用すべきか、またはスイッチ式フィルタリングと適応フィルタリングとの組合せを使用すべきかを決定する（１００２）。この決定は、利用可能な処理能力、利用可能な帯域幅、適応フィルタリングが前のスライス中で行われたか否か、ビデオ品質、または他のファクタなど、多種多様なファクタに基づいて実行され得る。所与のスライスについて、フィルタユニット４７が、スイッチ式フィルタリングと適応フィルタリングとの組合せが適用されるべきであると決定した場合、フィルタユニット４７は、１Ｄスイッチ式フィルタも適用し（１００３）、１Ｄ適応フィルタも適用する（１００４）。しかしながら、フィルタユニット４７が、所与のスライスについて、スイッチ式のみのフィルタリングがそのスライスに適用されるべきであると決定した場合、フィルタユニット４７は、第１の１Ｄスイッチ式フィルタを適用し（１００５）、第２の１Ｄスイッチ式フィルタを適用する（１００６）。フィルタユニットは、決定（組合せまたはスイッチ式のみ）、ならびにその決定に関連した適切なフィルタシンタックス情報を示すためにシンタックスを生成することができる。
【００７７】
図１１は、本開示に一致する、ビデオデコーダによって実行され得るプロセスを示す流れ図である。他のデバイスも該プロセスを実行し得るが、図１１については、図３のビデオデコーダ６０の観点から説明する。図１１に示すように、ビデオデコーダのエントロピー復号ユニット５２は、ビデオデータのスライスを受信し（１１０１）、スライスとともに１Ｄ適応フィルタの係数を受信し（１１０２）、スライスとともに１Ｄスイッチ式フィルタのインデックスを受信する（１１０３）。この情報は、たとえばスライスヘッダからエントロピー復号され、フィルタユニット５７にフォワーディングされ得る。この情報に基づいて、フィルタユニット５７は、スライスについての再構成ビデオデータのループフィルタリングのために、受信された係数を使用した適切な１Ｄ適応フィルタと、適切な１Ｄスイッチ式フィルタとを適用する（１１０５）。
【００７８】
図１２は、本開示に一致する、ビデオデコーダによって実行され得るプロセスを示す別の流れ図である。図１２は、図１１に非常に類似しており、他のデバイスも該プロセスを実行し得るが、図１２については、図３のビデオデコーダ６０の観点から説明する。図１２に示すように、ビデオデコーダのエントロピー復号ユニット５２は、ビデオデータのスライスを受信し（１２０１）、スライスとともに１Ｄ適応フィルタの係数を受信し（１２０２）、スライスとともに１Ｄスイッチ式フィルタのインデックスを受信し（１２０３）、１Ｄフィルタのうちの少なくとも１つの方向を示す情報を受信する（１２０４）。１Ｄフィルタのうちの１つの方向が与えられれば、デコーダ６０は、第１の１Ｄフィルタに垂直であるように他の１Ｄフィルタの方向を示すことが可能であり得る。この情報は、たとえばスライスヘッダからエントロピー復号され、フィルタユニット５７にフォワーディングされ得る。この情報に基づいて、フィルタユニット５７は、スライスについての再構成ビデオデータのループフィルタリングのために、受信された係数を使用した適切な１Ｄ適応フィルタと、適切な１Ｄスイッチ式フィルタとを適用する（１２０５）。
【００７９】
図１３は、本開示に一致する、ビデオデコーダによって実行され得るプロセスを示すさらに別の流れ図である。他のデバイスも該プロセスを実行し得るが、図１３については、図３のビデオデコーダ６０の観点から説明する。図１２に示すように、ビデオデコーダのエントロピー復号ユニット５２は、ビデオデータのスライスを受信し（１３０１）、スライスとともに１Ｄ適応フィルタの係数を受信し（１３０２）、スライスとともに１Ｄスイッチ式フィルタのインデックスを受信し（１３０３）、スライスのどのブロックをフィルタリングすべきかを定めるためにスライスとともにフィルタマップを受信する（１３０４）。フィルタユニット５７は、フィルタマップに基づいて、スライス内の特定のブロックのループフィルタリングのために、適切な１Ｄ適応フィルタと１Ｄスイッチ式フィルタとを適用する（１３０５）。
【００８０】
本開示の技法は、ワイヤレスハンドセット、および集積回路（ＩＣ）またはＩＣのセット（すなわち、チップセット）を含む、多種多様なデバイスまたは装置において実現され得る。いずれのコンポーネント、モジュール、またはユニットも、機能的態様を強調するために説明され、提供されたものであり、異なるハードウェアユニットによる実現を必ずしも必要とするわけではない。
【００８１】
したがって、本明細書で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。モジュールまたはコンポーネントとして説明する任意の特徴は、集積論理デバイスにおいて一緒に、または個別であるが相互動作可能な論理デバイスとして別々に実装され得る。ソフトウェアにおいて実装される場合、これらの技法は、実行されたときに、上記で説明した方法の１つまたは複数を実行する命令を備えるコンピュータ可読媒体によって、少なくとも部分的に実現され得る。コンピュータ可読のデータ記憶媒体は、パッケージング材料を含み得るコンピュータプログラム製品の一部を形成し得る。
【００８２】
コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気または光学データ記憶媒体などの有形コンピュータ可読記憶媒体を備え得る。本技法は、追加的にまたは代替的に、命令またはデータ構造の形態でコードを搬送または通信し、コンピュータによってアクセスされ、読み取られ、および／または実行されることのできる、コンピュータ可読通信媒体によって少なくとも部分的に実現され得る。
【００８３】
命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ）、または他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内で提供されることができ、あるいは複合ビデオエンコーダ／デコーダ（コーデック）に組み込まれることができる。また、本技法は、１つまたは複数の回路または論理要素において完全に実装され得る。
【００８４】
本開示の様々な態様について説明した。これらおよび他の態様は、特許請求の範囲内に含まれる。
以下に、本願の出願当初請求項に記載された発明を付記する。
［Ｃ１］
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングの方法であって、前記方法が、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用することと、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用することと
を備える、方法。
［Ｃ２］
前記方法がエンコーダにおいて適用され、前記方法が、
前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタのインデックスを１Ｄスイッチ式フィルタのセットに対して識別するシンタックス要素を生成することと、
前記１Ｄ適応フィルタに関する係数を識別することと
をさらに備え、
前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関する前記係数を識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ１］に記載の方法。
［Ｃ３］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成すること
をさらに備える、［Ｃ２］に記載の方法。
［Ｃ４］
前記方法が、符号化ビデオデータのシーケンスの第１のスライスに対して適用され、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記方法が、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用することと
をさらに備える、［Ｃ１］に記載の方法。
［Ｃ５］
前記方法が、スライスのコード化ユニット（ＣＵ）のサブセットに対して実行され、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ１］に記載の方法。
［Ｃ６］
前記方法がエンコーダによって実行され、前記方法が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成すること
をさらに備える、［Ｃ５］に記載の方法。
［Ｃ７］
前記方法がデコーダによって実行され、前記方法が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信すること
をさらに備える、［Ｃ５］に記載の方法。
［Ｃ８］
前記方法が、前記再構成ビデオデータのデブロックフィルタリングの後に実行され、デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）のエッジに対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ１］に記載の方法。
［Ｃ９］
前記方法がデコーダにおいて適用され、前記方法が、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタのインデックスを受信することと、
前記１Ｄ適応フィルタに関する係数を識別する情報を受信することと
をさらに備え、
前記インデックスを受信することと、前記係数を識別する前記情報を受信することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ１］に記載の方法。
［Ｃ１０］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信すること
をさらに備える、［Ｃ９］に記載の方法。
［Ｃ１１］
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、［Ｃ１］に記載の方法。
［Ｃ１２］
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングを実行するビデオコーダ装置であって、前記ビデオコーダ装置が、
水平または垂直のいずれかである第１の次元において前記ビデオデータをフィルタリングする１次元（１Ｄ）スイッチ式フィルタと、
前記第１の次元に垂直である第２の次元において前記ビデオデータをフィルタリングする１Ｄ適応フィルタと
を備える、ビデオコーダ装置。
［Ｃ１３］
前記ビデオコーダ装置が、フィルタユニットを含むエンコーダを備え、前記フィルタユニットが、
前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタのインデックスを１Ｄスイッチ式フィルタのセットに対して識別する、シンタックス要素を生成することと、
前記１Ｄ適応フィルタに関する係数を識別することと
を行い、
前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関する前記係数を識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ１４］
スライス当たり少なくとも１回、前記フィルタユニットが、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成する、
［Ｃ１３］に記載のビデオコーダ装置。
［Ｃ１５］
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、符号化ビデオデータのシーケンスの第１のスライスに対して適用され、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、第２のスライスについて、前記ビデオコーダ装置が、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータをフィルタリングする第１の１Ｄスイッチ式フィルタと、
前記第１の次元に垂直である第２の次元において前記ビデオデータをフィルタリングする第２の１Ｄスイッチ式フィルタと
を含む、［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ１６］
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、スライスのコード化ユニット（ＣＵ）のサブセットに対して適用され、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ１７］
前記ビデオコーダ装置が、フィルタユニットを含むエンコーダを備え、前記フィルタユニットが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成する、
［Ｃ１６］に記載のビデオコーダ装置。
［Ｃ１８］
前記ビデオコーダ装置がデコーダを備え、前記デコーダが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信する、
［Ｃ１６］に記載のビデオコーダ装置。
［Ｃ１９］
前記１Ｄスイッチ式フィルタおよび前記１Ｄ適応フィルタが、前記再構成ビデオデータのデブロックフィルタリングの後に適用され、デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）のエッジに対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ２０］
前記ビデオコーダ装置がデコーダを備え、前記デコーダが、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタのインデックスを受信することと、
前記１Ｄ適応フィルタに関する係数を識別する情報を受信することと
を行い、
前記デコーダが、前記インデックスを受信することと、前記係数を識別する前記情報を受信することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行い、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ２１］
スライス当たり少なくとも１回、前記デコーダが、前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信する、［Ｃ２０］に記載のビデオコーダ装置。
［Ｃ２２］
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ２３］
前記装置が、
集積回路と、
マイクロプロセッサと、
ビデオエンコーダを含むワイヤレス通信デバイスと、
ビデオデコーダを含むワイヤレス通信デバイスと
のうちの少なくとも１つを備える、［Ｃ１２］に記載のビデオコーダ装置。
［Ｃ２４］
ビデオコーディングプロセス中の再構成ビデオデータのループフィルタリングを実行するデバイスであって、前記デバイスが、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用するための手段と、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用するための手段と
を備える、デバイス。
［Ｃ２５］
前記デバイスがエンコーダを備え、前記デバイスが、
前記１Ｄスイッチ式フィルタを選択するための手段と、
前記１Ｄスイッチ式フィルタのインデックスを１Ｄスイッチ式フィルタのセットに対して識別する、シンタックス要素を生成するための手段と、
前記１Ｄ適応フィルタに関する係数を識別するための手段と
をさらに備え、
選択するための前記手段と、生成するための前記手段と、前記１Ｄ適応フィルタに関する前記係数を識別するための前記手段とが、前記選択することと、前記生成することと、前記識別することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回実行し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ２４］に記載のデバイス。
［Ｃ２６］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成するための手段
をさらに備える、［Ｃ２５］に記載のデバイス。
［Ｃ２７］
前記デバイスが、符号化ビデオデータのシーケンスの第１のスライスに対して操作を実行し、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記デバイスが、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用するための手段と、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用するための手段と
をさらに備える、［Ｃ２４］に記載のデバイス。
［Ｃ２８］
前記デバイスが、スライスのコード化ユニット（ＣＵ）のサブセットに対して操作を実行し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ２４］に記載のデバイス。
［Ｃ２９］
前記デバイスがエンコーダを備え、前記デバイスが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成するための手段
をさらに備える、［Ｃ２８］に記載のデバイス。
［Ｃ３０］
前記デバイスがデコーダを備え、前記デバイスが、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信するための手段
をさらに備える、［Ｃ２８］に記載のデバイス。
［Ｃ３１］
前記デバイスが、前記再構成ビデオデータのデブロックフィルタリングのための手段をさらに備え、前記１Ｄスイッチ式フィルタを適用するための前記手段と、１Ｄ適応フィルタを適用するための前記手段とが、デブロックフィルタリングのための前記手段の後に動作し、デブロックフィルタリングのための前記手段が、スライスのコード化ユニット（ＣＵ）のエッジに対して動作し、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ２４］に記載のデバイス。
［Ｃ３２］
前記デバイスがデコーダを備え、前記デバイスが、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタのインデックスを受信するための手段と、
前記１Ｄ適応フィルタに関する係数を識別する情報を受信するための手段と
をさらに備え、
前記インデックスを受信するための前記手段と、前記係数を識別する前記情報を受信するための前記手段とが、前記インデックスを受信することと、前記係数を識別する前記情報を受信することとを、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行い、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ２４］に記載のデバイス。
［Ｃ３３］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信するための手段
をさらに備える、［Ｃ３２］に記載のデバイス。
［Ｃ３４］
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、［Ｃ２４］に記載のデバイス。
［Ｃ３５］
プロセッサにおいて実行されると、ビデオコーディングプロセス中に再構成ビデオデータのループフィルタリングを実行することを前記プロセッサに行わせる命令を備える、コンピュータ可読記憶媒体であって、前記命令が、実行されると、
水平または垂直のいずれかである第１の次元において前記ビデオデータに１次元（１Ｄ）スイッチ式フィルタを適用することと、
前記第１の次元に垂直である第２の次元において前記ビデオデータに１Ｄ適応フィルタを適用することと
を前記プロセッサに行わせる、コンピュータ可読記憶媒体。
［Ｃ３６］
前記プロセッサがエンコーダを備え、前記命令が、
前記１Ｄスイッチ式フィルタを選択することと、
前記１Ｄスイッチ式フィルタのインデックスを１Ｄスイッチ式フィルタのセットに対して識別する、シンタックス要素を生成することと、
前記１Ｄ適応フィルタに関する係数を識別することと
を前記プロセッサに行わせ、
ここで、前記１Ｄスイッチ式フィルタを選択することと、前記シンタックス要素を生成することと、前記１Ｄ適応フィルタに関する前記係数を識別することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ３５］に記載のコンピュータ可読記憶媒体。
［Ｃ３７］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を定義するシンタックス要素を生成すること
を前記プロセッサに行わせる命令をさらに備える、［Ｃ３６］に記載のコンピュータ可読記憶媒体。
［Ｃ３８］
前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、符号化ビデオデータのシーケンスの第１のスライスに対して行われ、スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応し、前記コンピュータ可読記憶媒体が、第２のスライスについて、
水平または垂直のいずれかである前記第１の次元において前記ビデオデータに第１の１Ｄスイッチ式フィルタを適用することと、
前記第１の次元に垂直である前記第２の次元において第２の１Ｄスイッチ式フィルタを適用することと
を前記プロセッサに行わせる命令をさらに備える、［Ｃ３５］に記載のコンピュータ可読記憶媒体。
［Ｃ３９］
前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、スライスのコード化ユニット（ＣＵ）のサブセットに対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ３５］に記載のコンピュータ可読記憶媒体。
［Ｃ４０］
前記プロセッサがエンコーダを備え、前記コンピュータ可読記憶媒体が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを生成すること
を前記プロセッサに行わせる命令をさらに備える、［Ｃ３９］に記載のコンピュータ可読記憶媒体。
［Ｃ４１］
前記プロセッサがデコーダを備え、前記コンピュータ可読記憶媒体が、
フィルタリングされる前記スライスのコード化ユニットの前記サブセットを定義するフィルタマップを受信すること
を前記プロセッサに行わせる命令をさらに備える、［Ｃ３９］に記載のコンピュータ可読記憶媒体。
［Ｃ４２］
前記再構成ビデオデータのデブロックフィルタリングを実行することを前記プロセッサに行わせる命令をさらに備え、前記１Ｄスイッチ式フィルタを適用することと、前記１Ｄ適応フィルタを適用することとが、前記デブロックフィルタリングの後に行われ、前記デブロックフィルタリングが、スライスのコード化ユニット（ＣＵ）のエッジに対して行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、［Ｃ３５］に記載のコンピュータ可読記憶媒体。
［Ｃ４３］
前記プロセッサがデコーダを備え、前記コンピュータ可読記憶媒体が、
前記１Ｄスイッチ式フィルタを１Ｄスイッチ式フィルタのセットに対して識別する、前記１Ｄスイッチ式フィルタのインデックスを受信することと、
前記１Ｄ適応フィルタに関する係数を識別する情報を受信することと
を前記プロセッサに行わせる命令をさらに備え、
前記インデックスを受信することと、前記係数を識別する前記情報を受信することとが、符号化ビデオデータのシーケンスについてスライス当たり少なくとも１回行われ、前記スライスが、ビデオフレームの一部または全部を定義する最大コード化ユニット（ＬＣＵ）のセットに対応する、
［Ｃ３５］に記載のコンピュータ可読記憶媒体。
［Ｃ４４］
スライス当たり少なくとも１回、
前記１Ｄスイッチ式フィルタまたは前記１Ｄ適応フィルタのいずれかに関連付けられた方向を識別する情報を受信すること
を前記プロセッサに行わせる命令をさらに備える、［Ｃ４３］に記載のコンピュータ可読記憶媒体。
［Ｃ４５］
前記ループフィルタリングが、
ポストループフィルタリングと、
インループフィルタリングと
のうちの１つを備える、［Ｃ３５］に記載のコンピュータ可読記憶媒体。
【図１】
0005813783.tif 000002
【図２】
0005813783.tif 000003
【図３】
0005813783.tif 000004
【図４】
0005813783.tif 000005
【図５】
0005813783.tif 000006
【図６】
0005813783.tif 000007
【図７】
0005813783.tif 000008
【図８】
0005813783.tif 000009
【図９】
0005813783.tif 000010
【図１０】
0005813783.tif 000011
【図１１】
0005813783.tif 000012
【図１２】
0005813783.tif 000013
【図１３】
0005813783.tif 000014