(57)【要約】  ビデオデコーダが、ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数が１つのマージグループに等しいと決定することと、少なくとも１つのマージグループのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示す第１のフラグを受信することと、１つのマージグループのために第２のフラグを受信することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、第２のフラグが第２の値に等しいと決定することと、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定することと行うように構成される。
2019519141.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を備える、方法。
【請求項２】
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項１に記載の方法。
【請求項３】
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定することが、前記差分値を１つまたは複数の予測フィルタに加算することを備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、請求項１に記載の方法。
【請求項４】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項３に記載の方法。
【請求項５】
前記複数のクラスのためのマージグループの前記数が１に等しいと決定することは、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信することを備える、請求項１に記載の方法。
【請求項６】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項１に記載の方法。
【請求項７】
ビデオブロックの前記グループがスライスを備える、請求項１に記載の方法。
【請求項８】
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、請求項１に記載の方法。
【請求項９】
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しい１に等しいことを決定したことに応答して、前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
をさらに備える、請求項１に記載の方法。
【請求項１０】
ビデオデータを符号化するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を備える、方法。
【請求項１１】
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項１０に記載の方法。
【請求項１２】
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、請求項１０に記載の方法。
【請求項１３】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項１２に記載の方法。
【請求項１４】
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
をさらに備える、請求項１０に記載の方法。
【請求項１５】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項１０に記載の方法。
【請求項１６】
ビデオブロックの前記グループがスライスを備える、請求項１０に記載の方法。
【請求項１７】
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、請求項１０に記載の方法。
【請求項１８】
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
をさらに備える、請求項１０に記載の方法。
【請求項１９】
ビデオデータを復号するためのデバイスであって、前記デバイスが、
前記ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を行うように構成された、
デバイス。
【請求項２０】
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項１９に記載のデバイス。
【請求項２１】
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定するために、前記１つまたは複数のプロセッサが、前記差分値を１つまたは複数の予測フィルタに加算するように構成され、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、請求項１９に記載のデバイス。
【請求項２２】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項２１に記載のデバイス。
【請求項２３】
前記複数のクラスのためのマージグループの前記数が１に等しいと決定するために、前記１つまたは複数のプロセッサが、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信するように構成された、請求項１９に記載のデバイス。
【請求項２４】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項１９に記載のデバイス。
【請求項２５】
ビデオブロックの前記グループがスライスを備える、請求項１９に記載のデバイス。
【請求項２６】
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、請求項１９に記載のデバイス。
【請求項２７】
前記１つまたは複数のプロセッサは、
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
を行うようにさらに構成された、請求項１９に記載のデバイス。
【請求項２８】
ビデオデータを符号化するためのデバイスであって、前記デバイスが、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を行うように構成された、
デバイス。
【請求項２９】
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項２８に記載のデバイス。
【請求項３０】
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、請求項２８に記載のデバイス。
【請求項３１】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項３０に記載のデバイス。
【請求項３２】
前記１つまたは複数のプロセッサは、
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
を行うようにさらに構成された、請求項２８に記載のデバイス。
【請求項３３】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項２８に記載のデバイス。
【請求項３４】
ビデオブロックの前記グループがスライスを備える、請求項２８に記載のデバイス。
【請求項３５】
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、請求項２８に記載のデバイス。
【請求項３６】
前記１つまたは複数のプロセッサは、
前記複数のクラスがビデオブロックの第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための複数のクラスのためのマージグループの数が１に等しい１に等しいことを決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
を行うようにさらに構成された、請求項２８に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、２０１６年５月９日に出願された米国仮出願第６２／３３３，７８３号の利益を主張する。
【０００２】
[0002]本開示はビデオコーディングに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ能力は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、最近確定された高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法などのビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間（イントラピクチャ）予測および／または時間（インターピクチャ）予測を実施する。ブロックベースのビデオコーディングでは、ビデオスライス（すなわち、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間予測、または他の参照ピクチャ中の参照サンプルに対する時間予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームを呼ばれることがある。
【０００５】
[0005]空間予測または時間予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化された変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]本開示は、ビデオデータのフィルタ処理に関係する技法について説明する。本開示の技法は、たとえば、適応ループフィルタ処理または他のタイプのループフィルタ処理のために使用され得る。
【０００７】
[0007]一例によれば、ビデオデータを復号するための方法は、ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループ（merged group）の数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中で、ビデオブロックのグループのために、第１のフラグを受信することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、第１のフラグが第１の値に等しいと決定することと、ビデオデータ中で、１つのマージグループのために、第２のフラグを受信することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値（all zero values）であることを示す、第２のフラグが第２の値に等しいと決定することと、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定することとを含む。
【０００８】
[0008]別の例によれば、ビデオデータを符号化するための方法は、ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、ビデオブロックのグループのためのフィルタ係数情報のセットを決定することと、複数のクラスのためのマージグループの数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、を含む。
【０００９】
[0009]別の例によれば、ビデオデータを復号するためのデバイスは、ビデオデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを含み、１つまたは複数のプロセッサは、ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中で、ビデオブロックのグループのために、第１のフラグを受信することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、第１のフラグが第１の値に等しいと決定することと、ビデオデータ中で、１つのマージグループのために、第２のフラグを受信することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、第２のフラグが第２の値に等しいと決定することと、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定することとを行うように構成される。
【００１０】
[0010]別の例によれば、ビデオデータを符号化するためのデバイスは、ビデオデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを含み、１つまたは複数のプロセッサは、ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、ビデオブロックのグループのためのフィルタ係数情報のセットを決定することと、複数のクラスのためのマージグループの数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、を行うように構成される。
【００１１】
[0011]別の例によれば、ビデオデータを復号するためのデバイスは、ビデオデータのビデオブロックのグループのための複数のクラスのためのマージグループの数を決定するための手段と、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定するための手段と、ビデオデータ中で、ビデオブロックのグループのために、第１のフラグを受信するための手段と、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、第１のフラグが第１の値に等しいと決定するための手段と、ビデオデータ中で、１つのマージグループのために、第２のフラグを受信するための手段と、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、第２のフラグが第２の値に等しいと決定するための手段と、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定するための手段とを含む。
【００１２】
[0012]別の例によれば、ビデオデータを符号化するためのデバイスは、ビデオデータのビデオブロックのグループのためのフィルタのセットを決定するための手段と、ビデオブロックのグループのためのフィルタ係数情報のセットを決定するための手段と、複数のクラスのためのマージグループの数を決定するための手段と、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定するための手段と、ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成するための手段と、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成するための手段と、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、を含む。
【００１３】
[0013]別の例によれば、コンピュータ可読記憶媒体は、１つまたは複数のプロセッサによって実行されたとき、１つまたは複数のプロセッサに、ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中で、ビデオブロックのグループのために、第１のフラグを受信することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、第１のフラグが第１の値に等しいと決定することと、ビデオデータ中で、１つのマージグループのために、第２のフラグを受信することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、第２のフラグが第２の値に等しいと決定することと、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定することとを行わせる命令を記憶する。
【００１４】
[0014]別の例によれば、コンピュータ可読記憶媒体は、１つまたは複数のプロセッサによって実行されたとき、１つまたは複数のプロセッサに、ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、ビデオブロックのグループのためのフィルタ係数情報のセットを決定することと、複数のクラスのためのマージグループの数を決定することと、ここにおいて、複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定することと、ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す、ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、ここにおいて、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す、を行わせる命令を記憶する。
【００１５】
[0015]本開示の１つまたは複数の態様の詳細が添付の図面および以下の説明に記載されている。本開示で説明される技法の他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１６】
【図１】[0016]本開示で説明される技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0017]アクティビティメトリックおよび方向メトリックのための範囲の、フィルタへのマッピングを示す概念図。
【図３Ａ】[0018]例示的なフィルタ形状を示す概念図。
【図３Ｂ】例示的なフィルタ形状を示す概念図。
【図３Ｃ】例示的なフィルタ形状を示す概念図。
【図４】[0019]フィルタ係数シグナリングのための３つのカテゴリーをもつ７×７フィルタ形状の一例を示す図。
【図５】[0020]本開示で説明される技法を実装し得る例示的なビデオエンコーダを示すブロック図。
【図６】[0021]本開示で説明される技法を実装し得る例示的なビデオデコーダを示すブロック図。
【図７】[0022]本開示の技法による、ビデオデータを復号するための技法を示す流れ図。
【図８】[0023]本開示の技法による、ビデオデータを符号化するための技法を示す流れ図。
【図９】[0024]本開示の技法による、ビデオデータを復号するための技法を示す流れ図。
【発明を実施するための形態】
【００１７】
[0025]ビデオコーディングは、一般に、同じピクチャ中のビデオデータのすでにコーディングされたブロックからビデオデータのブロックを予測すること（すなわち、イントラ予測）または異なるピクチャ中のビデオデータのすでにコーディングされたブロックからビデオデータのブロックを予測すること（すなわち、インター予測）のいずれかを伴う。いくつかの事例では、ビデオエンコーダは、予測ブロックを元のブロックと比較することによって残差データをも計算する。したがって、残差データは、予測ブロックと元のブロックとの間の差分を表す。ビデオエンコーダは、残差データを変換および量子化し、変換および量子化された残差データを符号化ビットストリーム中でシグナリングする。ビデオデコーダは、予測ブロック単独でよりもぴったり元のビデオブロックに一致する再構築されたビデオブロックを生成するために、残差データを予測ブロックに加算する。復号されたビデオの品質をさらに改善するために、ビデオデコーダは、再構築されたビデオブロックに対して１つまたは複数のフィルタ処理演算を実施することができる。これらのフィルタ処理演算の例は、デブロッキングフィルタ処理と、サンプル適応オフセット（ＳＡＯ）フィルタ処理と、適応ループフィルタ処理（ＡＬＦ）とを含む。これらのフィルタ処理演算のためのパラメータは、ビデオエンコーダによって決定され、符号化ビデオビットストリーム中で明示的にシグナリングされるか、またはパラメータが符号化ビデオビットストリーム中で明示的にシグナリングされる必要なしにビデオデコーダによって暗黙的に決定されるかのいずれかであり得る。
【００１８】
[0026]本開示は、ビデオ符号化および／またはビデオ復号プロセスにおいて再構築されたビデオデータをフィルタ処理することに関連する技法について説明し、より詳細には、本開示は、ＡＬＦに関係する技法について説明する。ただし、説明される技法は、フィルタパラメータのシグナリングを明示的に必要とする、他のタイプのループフィルタ処理など、他のフィルタ処理方式にも適用され得る。本開示によれば、フィルタ処理がエンコーダにおいて適用され、エンコーダにおいて適用されたフィルタ処理をデコーダが識別することを可能にするために、フィルタ情報がビットストリーム中で符号化される。ビデオエンコーダは、いくつかの異なるフィルタ処理シナリオをテストし、たとえば、レートひずみ分析に基づいて、再構築されたビデオ品質と圧縮品質との間の所望のトレードオフを生成するフィルタまたはフィルタのセットを選定し得る。ビデオデコーダは、フィルタ情報を含む符号化ビデオデータを受信するか、または暗黙的にフィルタ情報を導出するかのいずれかを行い。、ビデオデータを復号し、フィルタ処理情報に基づいてフィルタ処理を適用する。このようにして、ビデオデコーダは、ビデオエンコーダにおいて適用された同じフィルタ処理を適用する。
【００１９】
[0027]本開示は、フィルタを送信するための、特にサイド情報、たとえばフィルタパラメータをコーディングするための、ＡＬＦに関係する技法について説明する。本明細書で説明される技法は、ＨＥＶＣの拡張または次世代のビデオコーディング規格など、高度なビデオコーデックとともに使用され得る。
【００２０】
[0028]本開示で使用されるビデオコーディングという用語は、ビデオ符号化またはビデオ復号のいずれかを総称的に指す。同様に、ビデオコーダという用語は、ビデオエンコーダまたはビデオデコーダを総称的に指すことがある。その上、ビデオ復号に関して本開示で説明されるいくつかの技法は、ビデオ符号化にも適用され得、その逆も同様である。たとえば、頻繁に、ビデオエンコーダとビデオデコーダとは、同じプロセスまたは逆のプロセスを実施するように構成される。また、ビデオエンコーダは、一般に、ビデオデータをどのように符号化するかを決定するプロセスの一部としてビデオ復号を実施する。
【００２１】
[0029]図１は、本開示で説明される技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを生成するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。いくつかの場合には、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００２２】
[0030]宛先デバイス１４は、リンク１６を介して復号されるべき符号化ビデオデータを受信し得る。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、リンク１６は、ソースデバイス１２が、符号化ビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得る任意の他の機器を含み得る。
【００２３】
[0031]代替的に、符号化データは、出力インターフェース２２からストレージデバイス２６に出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイス２６からアクセスされ得る。ストレージデバイス２６は、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイス２６は、ソースデバイス１２によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイス２６から、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、その符号化ビデオデータを宛先デバイス１４に送信することとが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。ストレージデバイス２６からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００２４】
[0032]本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２５】
[0033]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。いくつかの場合には、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ソースデバイス１２において、ビデオソース１８は、ビデオキャプチャデバイス、たとえば、ビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、本開示で説明される技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。
【００２６】
[0034]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオデータは、ソースデバイス１２の出力インターフェース２２を介して宛先デバイス１４に直接送信され得る。符号化ビデオデータは、さらに（または代替的に）、復号および／または再生のための宛先デバイス１４または他のデバイスによる後のアクセスのためにストレージデバイス２６上に記憶され得る。
【００２７】
[0035]宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。いくつかの場合には、入力インターフェース２８は、受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を介して符号化ビデオデータを受信する。リンク１６を介して通信され、またはストレージデバイス２６上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０など、ビデオデコーダが使用するためのビデオエンコーダ２０によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体上に記憶されるか、またはファイルサーバ記憶される符号化ビデオデータとともに含まれ得る。
【００２８】
[0036]ディスプレイデバイス３２は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号ビデオデータをユーザに表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００２９】
[0037]ビデオエンコーダ２０およびビデオデコーダ３０は、最近確定された高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＩＳＯ／ＩＥＣ  ＭＰＥＧ−４，Ｐａｒｔ１０，アドバンストビデオコーディング（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格または業界規格、あるいはスケーラブルビデオコーディング（ＳＶＣ）およびマルチビュービデオコーディング（ＭＶＣ）拡張など、そのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、およびＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌを含む。
【００３０】
[0038]本開示の技法は、説明を簡単にするためにＨＥＶＣ用語を利用し得る。しかしながら、本開示の技法がＨＥＶＣに限定されると仮定されるべきでなく、実際は、本開示の技法が、ＨＥＶＣの後継規格およびその拡張において実装され得ることが明示的に企図される。
【００３１】
[0039]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびオーディオデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３２】
[0040]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、本開示の技法を実施するために１つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３３】
[0041]上記で紹介されたように、ＪＣＴ−ＶＣはＨＥＶＣ規格の開発を確定した。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づいていた。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを与えるが、ＨＭは３５個ものイントラ予測符号化モードを与え得る。
【００３４】
[0042]ＩＴＵ−Ｔ  ＶＣＥＧ（Ｑ６／１６）およびＩＳＯ／ＩＥＣ  ＭＰＥＧ（ＪＴＣ１／ＳＣ２９／ＷＧ１１）が、現在、（スクリーンコンテンツコーディングおよび高ダイナミックレンジコーディングのための、ＨＥＶＣ規格の現在の拡張と短期での拡張とを含む）現在のＨＥＶＣ規格の圧縮能力を潜在的に超える圧縮能力をもつ将来のビデオコーディング技術の規格化の潜在的ニーズを研究している。そのグループは、このエリアにおけるそれらの専門家によって提案された圧縮技術設計を評価するために、ジョイントビデオ探査チーム（ＪＶＥＴ：Joint Video Exploration Team）として知られるジョイントコラボレーション作業においてこの探査活動に関して協働している。ＪＶＥＴは、２０１５年１０月１９〜２１日の間、初めて開かれた。参照ソフトウェアのバージョン、すなわち、ジョイント探査モデル２（ＪＥＭ２：Joint Exploration Model 2）が、https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/tags/HM-16.6-JEM-2.0/からダウンロードされ得る。ＪＥＭ２のためのアルゴリズムは、その記述が参照により本明細書に組み込まれる、Ｊ．Ｃｈｅｎ、Ｅ．Ａｌｓｈｉｎａ、Ｇ．Ｊ．Ｓｕｌｌｉｖａｎ、Ｊ．−Ｒ．Ｏｈｍ、Ｊ．Ｂｏｙｃｅ、「Algorithm description of Joint Exploration Test Model 2」、ＪＶＥＴ−Ｂ１００１、サンディエゴ、２０１６年３月に記載されている。
【００３５】
[0043]ＨＥＶＣおよび他のビデオコーディング仕様では、ビデオシーケンスは一般に一連のピクチャを含む。ピクチャは「フレーム」と呼ばれることもある。１つの例示的な手法では、ピクチャは、ＳL、ＳCb、およびＳCrと示される３つのサンプルアレイを含み得る。そのような例示的な手法では、ＳLはルーマサンプルの２次元アレイ（すなわち、ブロック）である。ＳCbはＣｂクロミナンスサンプルの２次元アレイである。ＳCrはＣｒクロミナンスサンプルの２次元アレイである。クロミナンスサンプルは、本明細書では「クロマ」サンプルと呼ばれることもある。他の事例では、ピクチャはモノクロームであり得、ルーマサンプルのアレイのみを含み得る。
【００３６】
[0044]ピクチャの符号化表現を生成するために、ビデオエンコーダ２０はコーディングツリーユニット（ＣＴＵ：coding tree unit）のセットを生成し得る。ＣＴＵの各々は、ルーマサンプルのコーディングツリーブロックと、クロマサンプルの２つの対応するコーディングツリーブロックと、それらのコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別々の色平面を有するピクチャでは、ＣＴＵは、単一のコーディングツリーブロックと、そのコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。コーディングツリーブロックはサンプルのＮ×Ｎブロックであり得る。ＣＴＵは「ツリーブロック」または「最大コーディングユニット」（ＬＣＵ：largest coding unit）と呼ばれることもある。ＨＥＶＣのＣＴＵは、Ｈ．２６４／ＡＶＣなど、他の規格のマクロブロックに広い意味で類似し得る。しかしながら、ＣＴＵは、必ずしも特定のサイズに限定されるとは限らず、１つまたは複数のコーディングユニット（ＣＵ）を含み得る。スライスは、ラスタ走査順序で連続的に順序付けられた整数個のＣＴＵを含み得る。
【００３７】
[0045]コード化ＣＴＵを生成するために、ビデオエンコーダ２０は、コーディングツリーブロックをコーディングブロックに分割するためにＣＴＵのコーディングツリーブロックに対して４分木区分を再帰的に実施し得、したがって「コーディングツリーユニット」という名称がある。コーディングブロックはサンプルのＮ×Ｎブロックであり得る。ＣＵは、ルーマサンプルアレイとＣｂサンプルアレイとＣｒサンプルアレイとを有するピクチャのルーマサンプルのコーディングブロックと、そのピクチャのクロマサンプルの２つの対応するコーディングブロックと、それらのコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別々の色平面を有するピクチャでは、ＣＵは、単一のコーディングブロックと、そのコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造とを備え得る。
【００３８】
[0046]ビデオエンコーダ２０は、ＣＵのコーディングブロックを１つまたは複数の予測ブロックに区分し得る。予測ブロックは、同じ予測が適用されるサンプルの矩形（すなわち、正方形または非正方形）ブロックである。ＣＵの予測ユニット（ＰＵ：prediction unit）は、ルーマサンプルの予測ブロックと、クロマサンプルの２つの対応する予測ブロックと、それらの予測ブロックを予測するために使用されるシンタックス構造とを備え得る。モノクロームピクチャまたは３つの別々の色平面を有するピクチャでは、ＰＵは、単一の予測ブロックと、その予測ブロックを予測するために使用されるシンタックス構造とを備え得る。ビデオエンコーダ２０は、ＣＵの各ＰＵのルーマ予測ブロック、Ｃｂ予測ブロック、およびＣｒ予測ブロックのための予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを生成し得る。
【００３９】
[0047]ビデオエンコーダ２０は、ＰＵのための予測ブロックを生成するためにイントラ予測またはインター予測を使用し得る。ビデオエンコーダ２０がＰＵの予測ブロックを生成するためにイントラ予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連するピクチャの復号サンプルに基づいてＰＵの予測ブロックを生成し得る。ビデオエンコーダ２０が、ＰＵの予測ブロックを生成するためにインター予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連するピクチャ以外の１つまたは複数のピクチャの復号サンプルに基づいて、ＰＵの予測ブロックを生成し得る。
【００４０】
[0048]ビデオエンコーダ２０がＣＵの１つまたは複数のＰＵのための予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを生成した後に、ビデオエンコーダ２０は、ＣＵのためのルーマ残差ブロックを生成し得る。ＣＵのルーマ残差ブロック中の各サンプルは、ＣＵの予測ルーマブロックのうちの１つ中のルーマサンプルとＣＵの元のルーマコーディングブロック中の対応するサンプルとの間の差分を示す。さらに、ビデオエンコーダ２０はＣＵのためのＣｂ残差ブロックを生成し得る。ＣＵのＣｂ残差ブロック中の各サンプルは、ＣＵの予測Ｃｂブロックのうちの１つ中のＣｂサンプルとＣＵの元のＣｂコーディングブロック中の対応するサンプルとの間の差分を示し得る。ビデオエンコーダ２０は、ＣＵのためのＣｒ残差ブロックをも生成し得る。ＣＵのＣｒ残差ブロック中の各サンプルは、ＣＵの予測Ｃｒブロックのうちの１つ中のＣｒサンプルとＣＵの元のＣｒコーディングブロック中の対応するサンプルとの間の差分を示し得る。
【００４１】
[0049]さらに、ビデオエンコーダ２０は、ＣＵのルーマ残差ブロックとＣｂ残差ブロックとＣｒ残差ブロックとを１つまたは複数のルーマ変換ブロックとＣｂ変換ブロックとＣｒ変換ブロックとに分解するために４分木区分を使用し得る。変換ブロックは、同じ変換が適用されるサンプルの矩形（たとえば、正方形または非正方形）ブロックである。ＣＵの変換ユニット（ＴＵ：transform unit）は、ルーマサンプルの変換ブロックと、クロマサンプルの２つの対応する変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とを備え得る。したがって、ＣＵの各ＴＵは、ルーマ変換ブロックとＣｂ変換ブロックとＣｒ変換ブロックとに関連し得る。ＴＵに関連するルーマ変換ブロックはＣＵのルーマ残差ブロックのサブブロックであり得る。Ｃｂ変換ブロックはＣＵのＣｂ残差ブロックのサブブロックであり得る。Ｃｒ変換ブロックはＣＵのＣｒ残差ブロックのサブブロックであり得る。モノクロームピクチャまたは３つの別々の色平面を有するピクチャでは、ＴＵは、単一の変換ブロックと、その変換ブロックのサンプルを変換するために使用されるシンタックス構造とを備え得る。
【００４２】
[0050]ビデオエンコーダ２０は、ＴＵのためのルーマ係数ブロックを生成するために、ＴＵのルーマ変換ブロックに１つまたは複数の変換を適用し得る。係数ブロックは変換係数の２次元アレイであり得る。変換係数はスカラー量であり得る。ビデオエンコーダ２０は、ＴＵのためのＣｂ係数ブロックを生成するために、ＴＵのＣｂ変換ブロックに１つまたは複数の変換を適用し得る。ビデオエンコーダ２０は、ＴＵのためのＣｒ係数ブロックを生成するために、ＴＵのＣｒ変換ブロックに１つまたは複数の変換を適用し得る。
【００４３】
[0051]係数ブロック（たとえば、ルーマ係数ブロック、Ｃｂ係数ブロックまたはＣｒ係数ブロック）を生成した後に、ビデオエンコーダ２０は、係数ブロックを量子化し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。ビデオエンコーダ２０が係数ブロックを量子化した後に、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素をエントロピー符号化し得る。たとえば、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素に対してコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：Context-Adaptive Binary Arithmetic Coding）を実施し得る。
【００４４】
[0052]ビデオエンコーダ２０は、コード化ピクチャと関連データとの表現を形成するビットのシーケンスを含むビットストリームを出力し得る。ビットストリームは、ネットワークアブストラクションレイヤ（ＮＡＬ：Network Abstraction Layer）ユニットのシーケンスを備え得る。ＮＡＬユニットは、ＮＡＬユニット中のデータのタイプの指示と、必要に応じてエミュレーション防止ビットが点在させられたローバイトシーケンスペイロード（ＲＢＳＰ：raw byte sequence payload）の形態でそのデータを含んでいるバイトとを含んでいる、シンタックス構造である。ＮＡＬユニットの各々は、ＮＡＬユニットヘッダを含み、ＲＢＳＰをカプセル化する。ＮＡＬユニットヘッダは、ＮＡＬユニットタイプコードを示すシンタックス要素を含み得る。ＮＡＬユニットのＮＡＬユニットヘッダによって指定されるＮＡＬユニットタイプコードは、ＮＡＬユニットのタイプを示す。ＲＢＳＰは、ＮＡＬユニット内にカプセル化された整数個のバイトを含んでいるシンタックス構造であり得る。いくつかの事例では、ＲＢＳＰは０ビットを含む。
【００４５】
[0053]異なるタイプのＮＡＬユニットは、異なるタイプのＲＢＳＰをカプセル化し得る。たとえば、第１のタイプのＮＡＬユニットはＰＰＳのためのＲＢＳＰをカプセル化し得、第２のタイプのＮＡＬユニットはコード化スライスのためのＲＢＳＰをカプセル化し得、第３のタイプのＮＡＬユニットはＳＥＩメッセージのためのＲＢＳＰをカプセル化し得、以下同様である。（パラメータセットおよびＳＥＩメッセージのためのＲＢＳＰとは対照的に）ビデオコーディングデータのためのＲＢＳＰをカプセル化するＮＡＬユニットは、ＶＣＬ  ＮＡＬユニットと呼ばれることがある。
【００４６】
[0054]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。さらに、ビデオデコーダ３０は、ビットストリームからシンタックス要素を取得するために、ビットストリームをパースし得る。ビデオデコーダ３０は、ビットストリームから取得されたシンタックス要素に少なくとも部分的に基づいてビデオデータのピクチャを再構築し得る。ビデオデータを再構築するためのプロセスは、概して、ビデオエンコーダ２０によって実施されるプロセスの逆であり得る。さらに、ビデオデコーダ３０は、現在ＣＵのＴＵに関連する係数ブロックを逆量子化し得る。ビデオデコーダ３０は、現在ＣＵのＴＵに関連する変換ブロックを再構築するために、係数ブロックに対して逆変換を実施し得る。ビデオデコーダ３０は、現在ＣＵのＰＵのための予測ブロックのサンプルを現在ＣＵのＴＵの変換ブロックの対応するサンプルに加算することによって、現在ＣＵのコーディングブロックを再構築し得る。ピクチャの各ＣＵのためのコーディングブロックを再構築することによって、ビデオデコーダ３０はピクチャを再構築し得る。
【００４７】
[0055]ビデオコーディングの分野において、復号されたビデオ信号の品質を向上させるためにフィルタ処理を適用することは、一般的である。フィルタは、フィルタ処理されたフレームが将来のフレームの予測のために使用されないポストフィルタとして、またはフィルタ処理されたフレームが将来のフレームを予測するために使用されるループ内フィルタとして適用され得る。フィルタは、たとえば、元の信号と復号されたフィルタ処理された信号との間の誤差を最小限に抑えることによって設計され得る。同様に、変換係数に対して、フィルタｈ（ｋ，ｌ）、ｋ＝−Ｋ，．．．，Ｋ、ｌ＝−Ｋ，．．．Ｋの係数は、以下の式に従って量子化され、
【００４８】
【数１】
2019519141.tif 000003
【００４９】
コーディングされ、デコーダに送られ得る。ｎｏｒｍＦａｃｔｏｒは、たとえば、２nに等しく設定され得る。ｎｏｒｍＦａｃｔｏｒのより大きい値は、一般に、より正確な量子化につながり、量子化されたフィルタ係数ｆ（ｋ，ｌ）は、一般に、より良い性能を与える。一方、ｎｏｒｍＦａｃｔｏｒのより大きい値はまた、一般に、より多くのビットを送信することを必要とする係数ｆ（ｋ，ｌ）を生成する。
【００５０】
[0056]ビデオデコーダ３０において、復号されたフィルタ係数ｆ（ｋ，ｌ）は、以下のように再構築された画像Ｒ（ｉ，ｊ）に適用され、
【００５１】
【数２】
2019519141.tif 000004
【００５２】
ここで、ｉおよびｊは、フレーム内のピクセルの座標である。
【００５３】
[0057]ＪＥＭにおいて採用されたループ内適応ループフィルタが、その記述が参照により本明細書に組み込まれる、Ｊ．Ｃｈｅｎ、Ｙ．Ｃｈｅｎ、Ｍ．Ｋａｒｃｚｅｗｉｃｚ、Ｘ．Ｌｉ、Ｈ．Ｌｉｕ、Ｌ．Ｚｈａｎｇ、Ｘ．Ｚｈａｏ、「Coding tools investigation for next generation video coding」、ＳＧ１６−ジュネーブ−Ｃ８０６、２０１５年１月において最初に提案された。ＡＬＦは、ＨＥＶＣにおいて提案され、様々なワーキングドラフト、およびテストモデルソフトウェア、すなわち、ＨＥＶＣテストモデル（または「ＨＭ」）中に含まれたが、ＡＬＦは、ＨＥＶＣの最終バージョン中に含まれなかった。関連技術の間で、ＨＥＶＣテストモデルバージョンＨＭ−３．０におけるＡＬＦ設計が、最も効率的な設計として主張された。（その内容全体が参照により本明細書に組み込まれる、Ｔ．Ｗｉｅｇａｎｄ、Ｂ．Ｂｒｏｓｓ、Ｗ．Ｊ．Ｈａｎ、Ｊ．Ｒ．Ｏｈｍ、およびＧ．Ｊ．Ｓｕｌｌｉｖａｎ、「WD3: Working Draft 3 of High-Efficiency Video Coding」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のジョイントコラボレーティブチームオンビデオコーディング（ＪＣＴ−ＶＣ）、ＪＣＴＶＣ−Ｅ６０３、第５回会合：ジュネーブ、スイス、２０１１年３月１６〜２３日、以下「Working Draft 3」参照）。したがって、ＨＭ−３．０からのＡＬＦ設計は本明細書で導入される。
【００５４】
[0058]ＨＭ−３．０中に含まれるＡＬＦのバージョンは、ピクチャレベル最適化に基づく。すなわち、ＡＬＦ係数は、全フレームがコーディングされた後に導出される。ブロックベースの適応（ＢＡ）および領域ベースの適応（ＲＡ）と呼ばれる、ルーマ成分のための２つのモードがあった。これらの２つのモードは、同じフィルタ形状、同じフィルタ処理演算、ならびに同じシンタックス要素を共有する。ＢＡとＲＡとの間の１つの相違は分類方法であり、ここで、分類は、概して、フィルタのセットからのどのフィルタをピクセルまたはピクセルのブロックに適用すべきかを決定するために、ピクセルまたはピクセルのブロックを分類することを指す。
【００５５】
[0059]１つの例示的な手法では、ＢＡにおける分類はブロックレベルにおけるものである。ルーマ成分の場合、全ピクチャ中の４×４ブロックが、（たとえば、最高３つの方向の）１次元（１Ｄ）ラプラシアン方向と、（たとえば、最高５つのアクティビティ値の）２次元（２Ｄ）ラプラシアンアクティビティとに基づいて分類される。１つの例示的な手法では、ピクチャ中の各４×４ブロックは、１次元（１Ｄ）ラプラシアン方向と２次元（２Ｄ）ラプラシアンアクティビティとに基づいてグループインデックスを割り当てられる。方向Ｄｉｒbおよび非量子化アクティビティＡｃｔbの１つの例示的な計算が、以下の式（２）〜（５）に示されており、ここで、
【００５６】
【数３】
2019519141.tif 000005
【００５７】
は、４×４ブロックの左上ピクセル位置に対する相対座標（ｉ，ｊ）をもつ再構築されたピクセルを示し、Ｖi,jおよびＨi,jは、（ｉ，ｊ）に位置するピクセルの垂直勾配および水平勾配の絶対値である。したがって、方向Ｄｉｒbは、４×４ブロック中で垂直勾配の絶対値と水平勾配の絶対値とを比較することによって生成され、Ａｃｔbは、４×４ブロック中の両方向における勾配の和である。Ａｃｔbは、上記で説明された「WD3: Working Draft 3 of High-Efficiency Video Coding」文書に記載されているように、両端値を含む０〜４の範囲にさらに量子化される。
【００５８】
【数４】
2019519141.tif 000006
【００５９】
【数５】
2019519141.tif 000007
【００６０】
【数６】
2019519141.tif 000008
【００６１】
【数７】
2019519141.tif 000009
【００６２】
[0060]１つの例示的な手法では、したがって、各ブロックは、１５（５×３）個のグループ（すなわち、以下のようなクラス）のうちの１つにカテゴリー分類され得る。インデックスは、ブロックのＤｉｒbおよびＡｃｔbの値に従って各４×４ブロックに割り当てられる。グループインデックスをＣによって示し、Ｃを
【００６３】
【数８】
2019519141.tif 000010
【００６４】
に等しく設定し、ここで、
【００６５】
【数９】
2019519141.tif 000011
【００６６】
は、Ａｃｔbの量子化された値である。したがって、ＡＬＦパラメータの最高１５個のセットが、ピクチャのルーマ成分のためにシグナリングされ得る。シグナリングコストを節約するために、グループは、グループインデックス値に沿ってマージされ得る。各マージグループについて、ＡＬＦ係数のセットがシグナリングされる。
【００６７】
[0061]図２は、ＢＡ分類のために使用されるこれらの１５個の（クラスとも呼ばれる）グループを示す概念図である。図２の例では、フィルタは、アクティビティメトリックのための値の範囲（すなわち、範囲０〜範囲４）および方向メトリックにマッピングされる。図２中の方向メトリックは、式４からの上記の０、１、および２の値に対応し得る、無方向、水平、および垂直の値を有するものとして示されている。図２の特定の例は、１５個のカテゴリーにマッピングされる、６つの異なるフィルタ（すなわち、フィルタ１、フィルタ２．．．フィルタ６）を示すが、より多いまたはより少ないフィルタが同様に使用され得る。図２は、グループ２２１〜２３５として識別される１５個のグループをもつ例を示すが、より多いまたはより少ないグループも使用され得る。たとえば、アクティビティメトリックのための５つの範囲の代わりに、より多いまたはより少ない範囲が使用され、より多いグループを生じ得る。さらに、３つの方向のみの代わりに、追加または代替の方向（たとえば、４５度方向および１３５度方向）も使用され得る。
【００６８】
[0062]以下でより詳細に説明されるように、ブロックの各グループに関連するフィルタは、１つまたは複数のマージフラグを使用してシグナリングされ得る。１次元グループマージングの場合、グループが前のグループと同じフィルタにマッピングされるかどうかを示すために、単一のフラグが送られ得る。２次元マージングの場合、グループが第１の隣接ブロック（たとえば、水平ネイバーまたは垂直ネイバーのうちの一方）と同じフィルタにマッピングされるかどうかを示すために、第１のフラグが送られ得、そのフラグが偽である場合、そのグループが第２の隣接ブロック（たとえば、水平ネイバーまたは垂直ネイバーの他方）にマッピングされるかどうかを示すために、第２のフラグが送られ得る。
【００６９】
[0063]クラスは、マージグループと呼ばれるものにグループ化され得、ここで、マージグループ中の各クラスは同じフィルタにマッピングする。一例としての図２を参照すると、グループ２２１、２２２、および２２３は、第１のマージグループにグループ化され得、グループ２２４および２２５は、第２のマージグループにグループ化され得、以下同様である。一般に、あるフィルタにマッピングされるすべてのクラスが同じマージグループ中にある必要があるとは限らないが、マージグループ中のすべてのクラスは同じフィルタにマッピングされる必要がある。言い換えれば、２つのマージグループは同じフィルタにマッピングし得る。
【００７０】
[0064]ブロッキネスを低減し、および／または場合によっては他の方法でビデオ品質を改善することができる、ビデオブロックフィルタ処理の望ましいレベルを促進するために、フィルタ係数が定義または選択され得る。フィルタ係数のセットは、たとえば、ビデオブロックのエッジまたはビデオブロック内の他のロケーションに沿って、フィルタ処理がどのように適用されるかを定義し得る。異なるフィルタ係数は、ビデオブロックの異なるピクセルに対するフィルタ処理の異なるレベルを生じ得る。フィルタ処理は、たとえば、不要なアーティファクトをなくすのを助けるために、隣接ピクセル値の強度における差分を平滑化または先鋭化し得る。
【００７１】
[0065]本開示では、「フィルタ」という用語は、概して、フィルタ係数のセットを指す。たとえば、３×３フィルタは、９つのフィルタ係数のセットによって定義され得、５×５フィルタは、２５個のフィルタ係数のセットによって定義され得、９×５フィルタは、４５個のフィルタ係数のセットによって定義され得、以下同様である。「フィルタのセット」という用語は、概して、２つ以上のフィルタのグループを指す。たとえば、２つの３×３フィルタのセットは、９つのフィルタ係数の第１のセットと、９つのフィルタ係数の第２のセットとを含むことができる。「フィルタサポート」と呼ばれることがある「形状」という用語は、概して、特定のフィルタのための、フィルタ係数の行の数と、フィルタ係数の列の数とを指す。たとえば、９×９は第１の形状の一例であり、７×７は第２の形状の一例であり、５×５は第３の形状の一例である。いくつかの事例では、フィルタは、ダイヤモンド形状、ダイヤモンド様形状、円形形状、円形様形状、六角形形状、八角形形状、クロス形状、Ｘ形状、Ｔ形状、他の幾何学的形状、あるいは多数の他の形状または構成を含む非矩形形状をとり得る。
【００７２】
[0066]１つの例示的な手法では、最高３つの円形対称フィルタ形状がサポートされる。１つのそのような例示的な手法では、３つのフィルタ形状は図３Ａ〜図３Ｃに示されているフィルタ形状である。示されている例では、図３Ａは５×５ダイヤモンドを示し、図３Ｂは７×７ダイヤモンドを示し、図３Ｃは、切頭９×９ダイヤモンドを示す。図３Ａ〜図３Ｃ中の例はダイヤモンド形状であるが、他の形状が使用され得る。最も一般的な場合では、フィルタの形状にかかわらず、フィルタマスク中の中心ピクセルが、フィルタ処理されているピクセルである。他の例では、フィルタ処理されるピクセルは、フィルタマスクの中心からオフセットされ得る。
【００７３】
[0067]１つの例示的な手法では、ＡＬＦ係数の単一のセットが、ピクチャ中のクロマ成分の各々に適用される。１つのそのような手法では、５×５ダイヤモンド形状フィルタが常に使用され得る。
【００７４】
[0068]そのような例では、ビデオデコーダ３０は、以下の式（６）に示されている計算に基づいてＩ’i,jになるように各ピクセルサンプル
【００７５】
【数１０】
2019519141.tif 000012
【００７６】
をフィルタ処理し得、ここで、Ｌはフィルタ長を示し、ｆm,nはフィルタ係数を表し、ｏはフィルタオフセットまたはＤＣ係数を示す。
【００７７】
【数１１】
2019519141.tif 000013
【００７８】
１つの例示的な手法では、１つのフィルタのみが２つのクロマ成分のためにサポートされる。
【００７９】
[0069]１つの例示的な手法では、ＡＬＦがスライスのために有効にされたとき、フィルタの総数（またはマージグループの総数）が、ビデオエンコーダ２０からビデオデコーダ３０に最初にシグナリングされる。いくつかの実装形態では、そのようなシグナリングは、クロマ成分が１つの関連するフィルタを有するにすぎないので、ルーマ成分のために必要であるにすぎないことがある。他の実装形態では、そのようなシグナリングは、ルーマ成分とクロマ成分の両方のために含まれ得る。選択されたフィルタ形状を示す、（たとえば、３つの）サポートされたフィルタ形状の数のフィルタサポートインデックスもシグナリングされ得る。いくつかの例では、フィルタのセット中のすべてのフィルタは同じ形状を有する。
【００８０】
[0070]ビデオデコーダ３０は、フィルタインデックスをクラスに割り当てるための情報をも受信し得る。Ｃの非連続値を有するクラスがマージされ得、これは、それらのクラスが同じフィルタにマッピングされることを意味する。一例として、図２を参照すると、使用される走査順序に応じて、各クラスは、マージ左フラグ、マージ右フラグ、マージ上フラグ、またはマージ下フラグのうちの１つまたは複数を受信し得る。各クラスのための１つのフラグを、そのクラスがマージされるか否かを示すためにコーディングすることによって、フィルタインデックスは、ビデオデコーダ３０によって導出され得る。たとえば、各クラスのために、ビデオデコーダ３０はフラグを受信し得る。フラグが第１の値である場合、ビデオデコーダ３０は、前のクラスのために使用された同じフィルタインデックスにクラスをマッピングすることができる。フラグが第２の値である場合、ビデオデコーダ３０は、異なるフィルタインデックスにクラスがマッピングすると決定し、そのフィルタインデックスを導出することができる。ビデオデコーダ３０は、たとえば、新しいフィルタインデックスが前のクラスのフィルタインデックスよりも１大きいかまたはそれよりも１小さいことを導出し得る。
【００８１】
[0071]一例では、ビデオデコーダ３０は、フィルタのうちの少なくとも１つがコーディングされるべきでないかどうかを示すためのｆｒｏｃｅＣｏｅｆｆ０フラグを受信し得、これは、フィルタ係数のための値がビットストリーム中で明示的にコーディングされないことを意味する。ｆｒｏｃｅＣｏｅｆｆ０フラグが０等しいとき、フィルタのすべてはコーディングされるべきであり、これは、ビデオデコーダ３０が、たとえば、実際の値としてまたは実際の値と予測子値との間の差分としてのいずれかで、ビットストリーム中で係数を受信することを意味する。ｆｒｏｃｅＣｏｅｆｆ０フラグが１に等しいとき、（ＣｏｄｅｄＶａｒＢｉｎによって示される）追加のフラグが、フィルタがシグナリングされるべきであるか否かを示すために各マージグループのためにコーディングされ得る。フィルタがシグナリングされないとき、ビデオデコーダ３０は、フィルタに関連するフィルタ係数のすべてを０に等しく設定する。一般に、マージングの後に１つのフィルタのみがある、または言い換えれば１つのマージグループのみがあるとき、ｆｒｏｃｅＣｏｅｆｆ０フラグはシグナリングされない。
【００８２】
[0072]複数のマージグループのための複数のフィルタがシグナリングされる必要があるとき、異なる方法が使用され得る。第１の例では、すべてのフィルタは、フィルタ情報に直接コーディングされ得る。この例では、フィルタ係数の値は、予測符号化技法を使用せずにビットストリームに符号化され得る。別の例では、第１のフィルタのフィルタ係数は直接コーディングされ得、残りのフィルタはフィルタ情報に予測コーディングされる。この場合、フィルタ係数の値は、前にコーディングされたフィルタに関連するフィルタ係数に対する残差値または差分によって定義され得る。前にコーディングされたフィルタは、現在のフィルタのフィルタインデックスと、予測子として使用されているフィルタのフィルタインデックスとが連続するような、最も最近コーディングされたフィルタであり得る。一例では、上記の２つの方法のうちの１つの使用を示すために、マージグループの数が１よりも大きく、ｆｒｏｃｅＣｏｅｆｆ０が０に等しいとき、１つのフラグがコーディングされ得る。
【００８３】
[0073]図４は、フィルタ係数のゴロム符号化を示す。図４に示されている例では、１つのフィルタサポートが複数のカテゴリーにスプリットされる。示されている例では、７×７ダイヤモンドフィルタ形状は３つのカテゴリーを有する。各正方形が１つのフィルタ係数を示す。同じ数をもつ正方形は、同じゴロムパラメータを用いてコーディングされる。
【００８４】
[0074]１つのそのような例示的な手法では、フィルタ係数のシグナリングは、２つの部分、すなわち、ゴロムパラメータと係数とを含む。ゴロムパラメータについて、１つの例示的な手法では、（ｋＭｉｎによって示される）ゴロムパラメータの１つの値が第１にシグナリングされ、その後に、各カテゴリーのための１ビットフラグが続く。１ビットフラグは、ｉ（７×７ダイヤモンド対称フィルタサポートについて、両端値を含む１から３までのｉ）が１よりも大きいとき、前のカテゴリー（ｉ−１）のために使用されるゴロムパラメータと比較して、またはｉが１に等しいとき、ｋＭｉｎと比較して、カテゴリーｉのパラメータは同じであるのか、１だけ増加されるのかを示す。選択されたゴロムパラメータに基づいて、係数の絶対値が次いでコーディングされ、その後に、符号フラグが続く。
【００８５】
[0075]時間予測もフィルタ係数を予測するために利用され得る。１つの例示的な手法では、参照ピクチャのＡＬＦ係数が、記憶され、現在ピクチャのＡＬＦ係数として再利用されることを可能にされる。現在ピクチャのために、ビデオコーダは、参照ピクチャのために記憶されたＡＬＦ係数を使用することを選定し、新しいＡＬＦ係数のシグナリングをバイパスし得る。この場合、参照ピクチャのうちの１つへのインデックスのみがシグナリングされ、示された参照ピクチャの記憶されたＡＬＦ係数は、現在ピクチャのために単に継承される。１つのそのような例示的な手法では、時間予測の使用を示すために、インデックスを送る前に、１つのフラグが第１にコーディングされる。いくつかの例では、現在ピクチャの参照ピクチャでない、前にコーディングされたピクチャに関連するＡＬＦ係数が、ＡＬＦ時間予測でも利用され得る。
【００８６】
[0076]次に、ジオメトリ変換ベース適応ループフィルタ処理（ＧＡＬＦ：geometric transformation-based adaptive loop filtering）が説明される。ＧＡＬＦでは、分類は、対角勾配を考慮に入れて修正され、ジオメトリ変換がフィルタ係数に適用され得る。ＧＡＬＦは、その記述が参照により本明細書に組み込まれる、Ｍ．Ｋａｒｃｚｅｗｉｃｚ、Ｌ．Ｚｈａｎｇ、Ｗ．−Ｊ．Ｃｈｉｅｎ、Ｘ．Ｌｉ、「Improvements on adaptive loop filter」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１の探査チーム（ＪＶＥＴ）、Ｄｏｃ．ＪＶＥＴ−Ｂ００６０＿ｒ１、第２回会合：サンディエゴ、米国、２０１６年２月２０〜２６日に記載されている。
【００８７】
[0077]１つの例示的な手法では、各２×２ブロックは、以下のように、それの方向性とアクティビティ（Ａ）の量子化された値とに基づいて、２５個のクラス（Ｃ）のうちの１つにカテゴリー分類される：
【００８８】
【数１２】
2019519141.tif 000014
【００８９】
水平勾配、垂直勾配、および２つの対角勾配の値が、１−Ｄラプラシアンを使用して計算される。
【００９０】
【数１３】
2019519141.tif 000015
【００９１】
【数１４】
2019519141.tif 000016
【００９２】
【数１５】
2019519141.tif 000017
【００９３】
【数１６】
2019519141.tif 000018
【００９４】
[0078]インデックスｉおよびｊは、２×２ブロック中の左上ピクセルの座標を指す。方向性Ｄを割り当てるために、水平および垂直勾配の最大値と最小値との比、
【００９５】
【数１７】
2019519141.tif 000019
【００９６】
と、２つの対角勾配の最大値と最小値との比、
【００９７】
【数１８】
2019519141.tif 000020
【００９８】
とが互いに比較され、しきい値ｔ1およびｔ2のセットを用いて、
ステップ１．
【００９９】
【数１９】
2019519141.tif 000021
【０１００】
と
【０１０１】
【数２０】
2019519141.tif 000022
【０１０２】
の両方である場合、Ｄは０に設定される。
ステップ２．
【０１０３】
【数２１】
2019519141.tif 000023
【０１０４】
である場合、ステップ３から続き、他の場合、ステップ４から続く。
ステップ３．
【０１０５】
【数２２】
2019519141.tif 000024
【０１０６】
である場合、Ｄは２に設定され、他の場合、Ｄは１に設定される。
ステップ４．
【０１０７】
【数２３】
2019519141.tif 000025
【０１０８】
である場合、Ｄは４に設定され、他の場合、Ｄは３に設定される。
アクティビティ値Ａは次のように計算される。
【０１０９】
【数２４】
2019519141.tif 000026
【０１１０】
Ａは、両端値を含む０〜４の範囲にさらに量子化され、量子化された値は
【０１１１】
【数２５】
2019519141.tif 000027
【０１１２】
として示される。
【０１１３】
[0079]ビデオコーダはフィルタ係数のジオメトリ変換を実施し得る。対角、垂直反転および回転を含む３つのジオメトリ変換が以下で説明される。
【０１１４】
【数２６】
2019519141.tif 000028
【０１１５】
ここで、Ｋはフィルタのサイズであり、０≦ｋ、ｌ≦Ｋ−１は係数座標であり、したがって、ロケーション（０，０）が左上隅にあり、ロケーション（Ｋ−１，Ｋ−１）が右下隅にある。変換は、そのブロックのために計算された勾配値に応じてフィルタ係数ｆ（ｋ，ｌ）に適用される。変換と、式８〜１１を使用して計算された４つの勾配との間の関係が、表１に記載されている。
【０１１６】
【表１】
2019519141.tif 000029
【０１１７】
[0080]時間予測が利用可能でない（たとえば、イントラフレーム）ときのコーディング効率を改善するために、固定フィルタのセット（たとえば、１６個の固定フィルタ）が、各クラスに割り当てられ得る。このコンテキストでは、固定フィルタは、追加のシグナリングなしにビデオエンコーダとビデオデコーダの両方によって知られているあらかじめ定義されたフィルタを指す。固定フィルタの使用を示すために、各クラスのためのフラグがシグナリングされ、必要な場合、選定された固定フィルタのインデックスがシグナリングされる。固定フィルタが所与のクラスのために選択されたときでも、適応フィルタの係数ｆ（ｋ，ｌ）は依然としてこのクラスのために送られ得、その場合、再構築された画像に適用されるフィルタの係数は、係数の両方のセットの和である。クラスの数は、異なる固定フィルタがクラスのために選定された場合でも、ビットストリーム中でシグナリングされた同じ係数ｆ（ｋ，ｌ）を共有することができる。
【０１１８】
[0081]ＧＡＬＦのために３つの事例が定義される。第１の事例では、２５個のクラスのフィルタのいずれも、固定フィルタから予測されない。第２の事例では、クラスのすべてのフィルタが、固定フィルタから予測される。第３の事例では、いくつかのクラスに関連するフィルタが、固定フィルタから予測され、クラスの残りに関連するフィルタが、固定フィルタから予測されない。３つの事例のうちの１つを示すために、インデックスが第１にコーディングされ得る。さらに、以下が適用される。  
事例１の場合、固定フィルタのインデックスをさらにシグナリングする必要はない。  
さもなければ、事例２の場合、各クラスのための選択された固定フィルタのインデックスがシグナリングされる。  
さもなければ（事例３の場合）、各クラスのための１ビットが最初にシグナリングされ、固定フィルタが使用される場合、インデックスがさらにシグナリングされる。
【０１１９】
[0082]１つの例示的な手法では、フィルタ係数を表すために必要とされるビットの数を低減するために、異なるクラスがマージされ得る。しかしながら、上記のＷｉｅｇａｎｄらに記載されている手法の場合とは異なり、クラスの任意のセットが、Ｃの非連続値を有するクラスまたは非隣接クラスさえ、マージされ得る。マージされるクラスを詳述する情報が、２５個のクラスの各々のためにインデックスｉCを送ることによって与えられ、ここで、ｉCは、クラスに割り当てられたフィルタインデックスを示す。同じインデックスｉCを有するクラスは、同じフィルタ、たとえば、同じフィルタ係数、同じフィルタ形状などを共有する。１つのそのような手法では、インデックスｉCは、切頭固定長方法を用いてコーディングされる。ＧＡＬＦのいくつかの例示的な実装形態では、コーディングされるフィルタ係数は、最適な導出されたフィルタ係数と予測されたフィルタ係数（たとえば、固定フィルタから選択されたフィルタ）との間の差分であり得る。
【０１２０】
[0083]同様に、いくつかの例示的な手法では、ｆｏｒｃｅＣｏｅｆ０フラグも使用される。ｆｏｒｃｅＣｏｅｆ０フラグが１に等しいとき、マージグループ（コーディングされるべきすべてのフィルタ）の各々のためのＣｏｄｅｄＶａｒＢｉｎによって示される１ビットフラグが、シグナリングされたフィルタ係数がすべて０であるかどうかを示すためにさらにシグナリングされる。その上、このフラグが１に等しいとき、予測コーディング、すなわち、現在のフィルタと前にコーディングされたフィルタとの間の差分をコーディングすることが無効にされる。ＧＡＬＦでは、シグナリングされるフィルタ係数は、実際のフィルタ係数またはフィルタ係数差分であり得る。
【０１２１】
[0084]固定フィルタからの予測が可能にされるとき、上述のシグナリング／コーディングされるべきフィルタは、再構築された画像に適用されるフィルタと選択された固定フィルタとの間の差分であり得ることに留意されたい。この場合、同じｉCをもつ異なるクラスは、同じフィルタ係数差分を有し得る。しかしながら、再構築された画像に適用されるフィルタは、異なる選択された固定フィルタにより異なり得る。本開示は、概して、フィルタをシグナリングするための技法について説明し得る。しかしながら、別段に記載されていない限り、（１つまたは複数の）フィルタは、概して、実際のフィルタ係数値、または実際のフィルタと予測されたフィルタとの間の差分値のいずれかであり得る、フィルタ係数情報を指すことを理解されたい。
【０１２２】
[0085]係数などの他の情報は、たとえばＪＥＭ２．０の場合と同様の方法でコーディングされ得る。ＡＬＦ／ＧＡＬＦ設計のための既存の提案は、いくつかの潜在的問題を有し得る。第１の例として、ＡＬＦパラメータシグナリングのための現在の設計を用いて、複数のクラスが異なるフィルタインデックスに割り当てられ得るが、コーディングされるべきフィルタの係数は、すべて０である。そのような場合、フィルタ／マージグループの総数をシグナリングする、およびそれらのクラスのためのフィルタインデックスをシグナリングするために、不要なビットが浪費され得る。第２の例として、ｆｒｏｃｅＣｏｅｆｆ０が１に等しいとき、フィルタ係数の値、すなわち、最も最近の前にコーディングされたフィルタに関連するフィルタ係数に対する残差値または差分の予測コーディングは、常に無効にされ得、これは効率を低減し得る。第３の例として、現在の手法では、より大きいインデックスをもつカテゴリーに対して係数の値が上がるという仮定に基づいて、１つのカテゴリーのゴロムパラメータは、１つの前のカテゴリーの値と比較して、常に同じであるかまたは１だけ増加される。しかしながら、前にフィルタまたは固定フィルタからの予測が可能にされるとき、そのようなことは当てはまらない。
【０１２３】
[0086]上述の問題を解決するために、以下の技法が開示される。以下の技法は、個々にまたは代替的に、任意の組合せで適用され得る。以下の技法は、ビデオエンコーダ２０またはビデオデコーダ３０のいずれかによって適用され得る。いくつかの事例では、ビデオデコーダ３０は、ビデオエンコーダ２０によって実施される符号化処理とは逆である復号プロセスを実施し得る。一例として、ビデオエンコーダ２０がある情報を送信する場合、ビデオデコーダ３０はそのような情報を受信し得る。
【０１２４】
[0087]以下の説明では、（固定フィルタまたは前にコーディングされたフィルタからの潜在的予測の後に）コーディングされるべき１つのフィルタのフィルタ係数が、（ＤＣ係数有りでまたは無しで）すべて０であるとき、そのようなフィルタは０フィルタと称される。
【０１２５】
[0088]本開示は、グループ化の後に２つまたはそれ以上のフィルタがあるときのコーディングシナリオのための技法を導入する。ビデオデコーダは、たとえば、同じグループに属する同じフィルタインデックスを有する各クラスのためのフィルタインデックスを受信することによって、グループ化を実施し得る。そのようなシナリオのための１つの例示的な技法では、複数のクラスに関連するフィルタが０フィルタであるとき、これらのクラスのためのフィルタインデックス（すなわち、上記のｉC）は同じ値に割り当てられ得る。すなわち、これらのクラスは一緒にグループ化され得る。
【０１２６】
[0089]１つのそのような例では、これらのクラスについて、フィルタインデックスは、１つの所与の番号、たとえば、最大フィルタインデックス（フィルタの総数またはフィルタの総数−１）または最小フィルタインデックスに設定され得る。さらに、これらのフィルタのシグナリング（たとえば、符号化ビットストリーム中での送信および受信）はスキップされ得る。最終的に、フィルタの総数は、（０フィルタがある場合）０フィルタでないフィルタの総数＋１、または（０フィルタがない場合）０フィルタでないフィルタの総数＋０として定義され得る。
【０１２７】
[0090]そのようなシナリオのための別の例示的な技法によれば、ｆｒｏｃｅＣｏｅｆｆ０が１に等しい（すなわち、あるマージグループのための少なくとも１つの０フィルタ）とき、フィルタ係数の値、すなわち、前にコーディングされたフィルタに関連するフィルタ係数に対する残差値または差分の予測コーディングは、依然として適用され得る。１つの例示的な手法では、０フィルタでないフィルタは、前にコーディングされたフィルタのうちの１つまたは複数から予測され得る。別の例示的な手法では、０フィルタでないフィルタは、０フィルタでない前にコーディングされたフィルタのうちの１つまたは複数から予測されるにすぎないことがある。また別の例示的な手法では、再構築された画像に適用されるフィルタの係数は、シグナリングされた係数、固定フィルタ係数および／またはそれの前にコーディングされたフィルタの関数であり得る。１つのそのような例示的な手法では、関数は合計として定義される。
【０１２８】
[0091]本開示はまた、グループ化の後に１つのフィルタのみがあるときのコーディングシナリオのための技法を導入する。そのようなシナリオでは、フィルタが０フィルタであるとき、フィルタサポート情報はコーディングされないことがある。その上、固定フィルタからの予測が可能にされるとき、フィルタサポートは、固定フィルタのフィルタサポートとして定義され得る。
【０１２９】
[0092]そのようなシナリオのための別の例では、１つのマージグループのみがあるとき、フィルタのうちの少なくとも１つが０フィルタであるかどうかを示すｆｒｏｃｅＣｏｅｆｆ０フラグは、依然としてシグナリングされ得る。すなわち、１つのマージグループおよび１つの０フィルタのみの事例が可能にされる。たとえば、ビデオブロックのグループのために、ビデオデコーダ３０は、複数のクラスのためのマージグループの数が１に等しいと決定し、ブロックのグループのためのフィルタのセットからの少なくとも１つのフィルタがビデオデータ中でコーディングされないことを示すように設定されたｆｒｏｃｅＣｏｅｆｆ０フラグを受信し、ビデオデータ中で、１つのマージグループのために、１つのマージグループにマッピングされたフィルタが全０フィルタ（all zero filter）であることを示すＣｏｄｅｄＶａｒＢｉｎを受信し得る。
【０１３０】
[0093]別の例では、１つのマージグループのみがあり、フィルタが固定フィルタのうちの１つから予測されるとき、１つの例示的な手法では、ｆｏｒｃｅＣｏｅｆｆ０フラグはシグナリングされる。そうではなく、１つのマージグループのみがあり、フィルタが固定フィルタのうちの１つから予測されないとき、ｆｏｒｃｅＣｏｅｆｆ０フラグのシグナリングはスキップされ得、フィルタ係数はコーディングされ得る。
【０１３１】
[0094]１つの例示的な手法では、グループ化の後のフィルタの総数にかかわらず、コーディングされるべき１つのフィルタのすべての係数が０であることを示すフラグ（ＣｏｄｅｄＶａｒＢｉｎ）のシグナリングは削除され得、代わりに、これらのフラグの値はシグナリングされたフィルタインデックスから導出され得る。一例では、最大または最小フィルタインデックスが１つのクラスのために使用されるとき、コーディングされるべき対応するフィルタのフィルタ係数はすべて０であり得る。
【０１３２】
[0095]１つの例示的な手法では、グループ化の後のフィルタの総数にかかわらず、各クラスのためのフィルタのインデックスをコーディングするのではなく、各フィルタに関連するクラスインデックスをコーディングする。１つのそのような例示的な手法では、各フィルタについて、このフィルタを使用する最も小さいクラスインデックスが、直接コーディングされる。残りのクラスの各々について、クラスが同じフィルタを使用する場合、それの前のクラスインデックスと比較されたクラスインデックスの差分がコーディングされる。
【０１３３】
[0096]別のそのような例示的な手法では、同じフィルタをもつクラスのすべてがコーディングされたことを示すために、特殊な値がコーディングされる。代替的に、同じフィルタを使用するクラスの総数がコーディングされる。
【０１３４】
[0097]また別の例示的な手法では、ビデオコーダは、必要に応じて、各フィルタのためのクラスインデックスをコーディングすることと、各クラスのためのフィルタのインデックスをコーディングすることとの間で切り替える。１つのそのような例示的な手法では、２つの方法のうちの選択された１つを示すために、フラグがシグナリングされる。別のそのような手法では、フラグは、０フィルタを除くシグナリングされるべきフィルタの総数に依存し得る。
【０１３５】
[0098]次に、ゴロムパラメータのシグナリングが説明される。１つの例示的な手法では、フィルタ係数をコーディングするとき、第１のゴロムパラメータおよび第１のカテゴリーのための１ビットフラグをコーディングするのではなく、第１のカテゴリーのゴロムパラメータが直接コーディングされる。１つの例示的な手法では、カテゴリーｉのためのゴロムパラメータとカテゴリー（ｉ−１）のためのゴロムパラメータとの間の差分がさらにコーディングされる。
【０１３６】
[0099]１つの例示的な手法では、連続するカテゴリーのための２つのゴロムパラメータの差分は、１よりも大きいかまたは０よりも小さくなり得る。
【０１３７】
[0100]１つの例示的な手法では、フィルタ係数をコーディングするとき、ゴロムパラメータを昇順で常に保持するのではなく、ゴロムパラメータは、前のカテゴリーのために使用されるゴロムパラメータと比較して増加または減少され得る。１つのそのような例示的な手法では、ゴロムパラメータ増分または減分の範囲は、異なるカテゴリーについて異なり得る。すなわち、それの前のものと比較された差分を示す、同じコード化値／復号値は、異なるカテゴリーについて異なる値にマッピングされ得る。別のそのような例示的な手法では、ｄｅｆａｕｌｔＧによって示される１つのゴロムパラメータが第１にシグナリングされ、その後に、１つのカテゴリーのためのゴロムパラメータとｄｅｆａｕｌｔＧとの間の差分が続く。
【０１３８】
[0101]次に、クロマ成分のための予測コーディングおよびフィルタが説明される。１つの例示的な手法では、（固定フィルタからの可能な予測の後に）シグナリングされるべきフィルタについて、それらの各々は、予測コーディングを使用すべきか否かを選択し得る。１つのそのような例示的な手法では、フィルタのうちの少なくとも１つが予測コーディングを使用するかどうかを示すために、１ビットフラグが第１にシグナリングされ得る。さらに、コーディングされるべき第１のフィルタ以外の各フィルタについて、予測コーディングの使用を示すために、１つのフラグがシグナリングされ得る。代替的に、各フィルタに関連するフラグは、たとえば、固定フィルタから予測されないフィルタが１つのクラスを関連させるかどうかなど、いくつかの条件に基づいてスキップされ得る。
【０１３９】
[0102]１つの例示的な手法では、フィルタを予測するために最近の前にコーディングされたフィルタを常に使用するのではなく、その１つのフィルタは、連続的にコーディングされない、前にコーディングされた１つまたは複数の他のフィルタから予測され得る。
【０１４０】
[0103]１つの例示的な手法では、フィルタは、複数の前にコーディングされたフィルタから予測され得る。また、予測子が、２つまたはそれ以上の前にコーディングされたフィルタの関数によって生成され得る。
【０１４１】
[0104]１つの例示的な手法では、前にコーディングされたフィルタからの予測が可能にされるとき、前にコーディングされたフィルタのうちのどのフィルタがさらにシグナリングされ得るかを示すために、インデックスが使用される。代替的に、１つの例示的な手法では、現在のフィルタのフィルタインデックスとそれの予測されたフィルタのフィルタインデックスとの差分がシグナリングされ得る。
【０１４２】
[0105]１つの例示的な手法では、各クロマ成分について、異なるフィルタが使用され得る。１つのそのような例示的な手法では、２つのフィルタがシグナリングされ、各フィルタは１つのクロマ成分に適用される。別のそのような例示的な手法では、第２のクロマ成分のフィルタが予測コーディングされる。１つのそのような例示的な手法では、２つのフィルタ間のフィルタ係数の差分がコーディングされる。別のそのような例示的な手法では、異なる色成分が同じフィルタを使用すべきであるのか異なるフィルタを使用すべきであるのかを示すために、１つのフラグが第１にシグナリングされる。
【０１４３】
[0106]１つの例示的な手法では、クロマ成分のためのフィルタは、ルーマ成分のためのフィルタのうちの１つから継承される。フィルタは、たとえば、スライスごとにまたはブロックごとに継承され得る。１つのそのような例示的な手法では、クロマ成分のためのフィルタ係数のシグナリングはスキップされ得る。１つのそのような例示的な手法では、ルーマ成分のためのクラス０のフィルタが、クロマ成分のうちの１つまたは複数によって継承され得る。別のそのような例示的な手法では、ルーマ成分のために使用される最小インデックスをもつフィルタが、クロマ成分のうちの１つまたは複数によって継承される。
【０１４４】
[0107]図５は、本開示で説明される技法を実装し得る例示的なビデオエンコーダ２０を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実施し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間冗長性を低減または除去するために空間予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間冗長性を低減または除去するために時間予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベース圧縮モードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベース圧縮モードのいずれかを指すことがある。
【０１４５】
[0108]図５の例では、ビデオエンコーダ２０は、ビデオデータメモリ３３と、区分ユニット３５と、予測処理ユニット４１と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。予測処理ユニット４１は、動き推定ユニット（ＭＥＵ）４２と、動き補償ユニット（ＭＣＵ）４４と、イントラ予測ユニット４６とを含む。ビデオブロック再構築のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換処理ユニット６０と、加算器６２と、ＡＬＦユニット６４と、復号ピクチャバッファ（ＤＰＢ：decoded picture buffer）６６とを含む。
【０１４６】
[0109]図５に示されているように、ビデオエンコーダ２０は、ビデオデータを受信し、受信されたビデオデータをビデオデータメモリ３３に記憶する。ビデオデータメモリ３３は、ビデオエンコーダ２０の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオデータメモリ３３に記憶されるビデオデータは、たとえば、ビデオソース１８から取得され得る。ＤＰＢ６６は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオエンコーダ２０によってビデオデータを符号化する際に使用するための参照ビデオデータを記憶する参照ピクチャメモリであり得る。ビデオデータメモリ３３およびＤＰＢ６６は、同期ＤＲＡＭ（ＳＤＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ（登録商標））、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ３３およびＤＰＢ６６は、同じメモリデバイスまたは別々のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ３３は、ビデオエンコーダ２０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【０１４７】
[0110]区分ユニット３５はビデオデータメモリ３３からビデオデータを取り出し、ビデオデータをビデオブロックに区分する。この区分はまた、たとえば、ＬＣＵおよびＣＵの４分木構造に従って、スライス、タイル、または他のより大きいユニットへの区分、ならびにビデオブロック区分を含み得る。ビデオエンコーダ２０は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示している。スライスは、複数のビデオブロックに（および、場合によっては、タイルと呼ばれるビデオブロックのセットに）分割され得る。予測処理ユニット４１は、誤差結果（たとえば、コーディングレートおよびひずみレベル）に基づいて現在ビデオブロックについて、複数のイントラコーディングモードのうちの１つ、または複数のインターコーディングモードのうちの１つなど、複数の可能なコーディングモードのうちの１つを選択し得る。予測処理ユニット４１は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器５０に与え、参照ピクチャとして使用するための符号化ブロックを再構築するために加算器６２に与え得る。
【０１４８】
[0111]予測処理ユニット４１内のイントラ予測ユニット４６は、空間圧縮を行うために、コーディングされるべき現在ブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して現在ビデオブロックのイントラ予測コーディングを実施し得る。予測処理ユニット４１内の動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を行うために、１つまたは複数の参照ピクチャ中の１つまたは複数の予測ブロックに対して現在ビデオブロックのインター予測コーディングを実施する。
【０１４９】
[0112]動き推定ユニット４２は、ビデオシーケンスの所定のパターンに従ってビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスをＰスライスまたはＢスライスとして指定し得る。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実施される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。
【０１５０】
[0113]予測ブロックは、絶対差分和（ＳＡＤ）、２乗差分和（ＳＳＤ）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきビデオブロックのＰＵにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ２０は、ＤＰＢ６６に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対して動き探索を実施し、分数ピクセル精度で動きベクトルを出力し得る。
【０１５１】
[0114]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、ＤＰＢ６６に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【０１５２】
[0115]動き補償ユニット４４によって実施される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成すること、場合によってはサブピクセル精度への補間を実施することを伴い得る。現在ビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。ビデオエンコーダ２０は、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。ピクセル差分値は、ブロックのための残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器５０は、この減算演算を実施する１つまたは複数の構成要素を表す。動き補償ユニット４４はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【０１５３】
[0116]予測処理ユニット４１が、イントラ予測またはインター予測のいずれかを介して、現在ビデオブロックのための予測ブロックを生成した後、ビデオエンコーダ２０は、現在ビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック中の残差ビデオデータは、１つまたは複数のＴＵ中に含まれ、変換処理ユニット５２に適用され得る。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ：discrete cosine transform）または概念的に同様の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット５２は、残差ビデオデータをピクセル領域から周波数領域などの変換領域に変換し得る。
【０１５４】
[0117]変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化された変換係数を含む行列の走査を実施し得る。代替的に、エントロピー符号化ユニット５６が走査を実施し得る。
【０１５５】
[0118]量子化の後に、エントロピー符号化ユニット５６は、量子化された変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングあるいは別のエントロピー符号化方法または技法を実施し得る。エントロピー符号化ユニット５６によるエントロピー符号化の後に、符号化ビットストリームは、ビデオデコーダ３０に送信されるか、あるいはビデオデコーダ３０が後で送信するかまたは取り出すためにアーカイブされ得る。エントロピー符号化ユニット５６はまた、コーディングされている現在ビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。
【０１５６】
[0119]逆量子化ユニット５８および逆変換処理ユニット６０は、参照ピクチャの参照ブロックとして後で使用するためにピクセル領域において残差ブロックを再構築するために、それぞれ逆量子化および逆変換を適用する。動き補償ユニット４４は、残差ブロックを参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、再構築された残差ブロックに１つまたは複数の補間フィルタを適用し得る。加算器６２は、再構築されたブロックを生成するために、再構築された残差ブロックを、動き補償ユニット４４よって生成された動き補償予測ブロックに加算する。
【０１５７】
[0120]ＡＬＦユニット６４は、再構築されたブロック（たとえば、加算器６２の出力）をフィルタ処理し、参照ブロックとして使用するために、フィルタ処理された再構築されたブロックをＤＰＢ６６に記憶する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。図５には明示的に示されていないが、ビデオエンコーダ２０は、デブロックフィルタ、サンプル適応オフセット（ＳＡＯ）フィルタ、または他のタイプのループフィルタなどの、追加のフィルタを含み得る。デブロックフィルタは、たとえば、再構築されたビデオからブロッキネスアーティファクトを除去するために、フィルタブロック境界にデブロッキングフィルタ処理を適用し得る。ＳＡＯフィルタは、全体的コーディング品質を改善するために、再構築されたピクセル値にオフセットを適用し得る。（ループ中またはループ後の）追加のループフィルタも使用され得る。
【０１５８】
[0121]ＡＬＦユニット６４は、他の構成要素とともに、本開示で説明される様々な技法を実施するように構成され得る。ＡＬＦユニット６４は、たとえば、上記で説明されたシンタックス要素など、シンタックス要素のための値を決定し得、エントロピー符号化ユニット５６は、たとえば、符号化ビデオデータのビットストリーム中のそれらのシンタックス要素を符号化し得る。
【０１５９】
[0122]ＡＬＦユニット６４はまた、ビデオブロックの、個々のピクセルのために、またはサブブロック（たとえば、２×２、４×４、または何らかの他のサイズのサブブロック）のために、１つまたは複数のメトリックのための値を決定することによって、ビデオブロックにフィルタ処理を適用し、１つまたは複数のメトリックに基づいて、ピクセルまたはサブブロックのためのクラスを決定し得る。ＡＬＦユニット６４は、たとえば、上記で説明された式２〜５または式７〜１４を使用して、メトリックのための値とクラスとを決定し得る。ＡＬＦユニット６４は、次いで、決定されたクラスにマッピングされた、フィルタのセットからのフィルタを使用して、ピクセルまたはサブブロックをフィルタ処理し得る。
【０１６０】
[0123]図６は、本開示で説明される技法を実装し得る例示的なビデオデコーダ３０を示すブロック図である。図６のビデオデコーダ３０は、たとえば、図５のビデオエンコーダ２０に関して上記で説明されたシグナリングを受信するように構成され得る。図６の例では、ビデオデコーダ３０は、ビデオデータメモリ７８と、エントロピー復号ユニット８０と、予測処理ユニット８１と、逆量子化ユニット８６と、逆変換処理ユニット８８と、加算器９０と、ＤＰＢ９４とを含む。予測処理ユニット８１は、動き補償ユニット８２とイントラ予測ユニット８４とを含む。ビデオデコーダ３０は、いくつかの例では、図５からのビデオエンコーダ２０に関して説明された符号化パスとは概して逆の復号パスを実施し得る。
【０１６１】
[0124]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビットストリームを受信する。ビデオデコーダ３０は、受信された符号化ビデオビットストリームをビデオデータメモリ７８に記憶する。ビデオデータメモリ７８は、ビデオデコーダ３０の構成要素によって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ７８に記憶されたビデオデータは、たとえば、リンク１６を介して、ストレージデバイス２６から、またはカメラなどのローカルビデオソースから、または物理データ記憶媒体にアクセスすることによって取得され得る。ビデオデータメモリ７８は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコード化ピクチャバッファ（ＣＰＢ）を形成し得る。ＤＰＢ９４は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオデコーダ３０によってビデオデータを復号する際に使用するための参照ビデオデータを記憶する参照ピクチャメモリであり得る。ビデオデータメモリ７８およびＤＰＢ９４は、ＤＲＡＭ、ＳＤＲＡＭ、ＭＲＡＭ、ＲＲＡＭ、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ７８およびＤＰＢ９４は、同じメモリデバイスまたは別々のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ７８は、ビデオデコーダ３０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【０１６２】
[0125]ビデオデコーダ３０のエントロピー復号ユニット８０は、量子化された係数、動きベクトル、および他のシンタックス要素を生成するために、ビデオデータメモリ７８に記憶されたビデオデータをエントロピー復号する。エントロピー復号ユニット８０は、動きベクトルと他のシンタックス要素とを予測処理ユニット８１にフォワーディングする。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【０１６３】
[0126]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされたとき、予測処理ユニット８１のイントラ予測ユニット８４は、シグナリングされたイントラ予測モードと、現在のフレームまたはピクチャの前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化スライス（たとえば、ＢスライスまたはＰスライス）としてコーディングされたとき、予測処理ユニット８１の動き補償ユニット８２は、エントロピー復号ユニット８０から受信された動きベクトルおよび他のシンタックス要素に基づいて現在ビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、ＤＰＢ９４に記憶された参照ピクチャに基づいて、デフォルトの構築技法を使用して、参照フレームリスト、すなわち、リスト０とリスト１とを構築し得る。
【０１６４】
[0127]動き補償ユニット８２は、動きベクトルと他のシンタックス要素とをパースすることによって現在ビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在ビデオブロックのための予測ブロックを生成するために、その予測情報を使用する。たとえば、動き補償ユニット８２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスのための参照ピクチャリストのうちの１つまたは複数のための構築情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のうちのいくつかを使用する。
【０１６５】
[0128]動き補償ユニット８２はまた、補間フィルタに基づいて補間を実施し得る。動き補償ユニット８２は、参照ブロックのサブ整数ピクセルのための補間値を計算するために、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット８２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、予測ブロックを生成するためにその補間フィルタを使用し得る。
【０１６６】
[0129]逆量子化ユニット８６は、ビットストリーム中で与えられ、エントロピー復号ユニット８０によって復号された量子化された変換係数を逆量子化、すなわち、量子化解除（de-quantize）する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ２０によって計算される量子化パラメータの使用を含み得る。逆変換処理ユニット８８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０１６７】
[0130]予測処理ユニットが、たとえば、イントラまたはインター予測を使用して現在ビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換処理ユニット８８からの残差ブロックを動き補償ユニット８２によって生成された対応する予測ブロックと加算することによって、再構築されたビデオブロックを形成する。加算器９０は、この加算演算を実施する１つまたは複数の構成要素を表す。ＡＬＦユニット９２は、たとえば、本開示で説明されるＡＬＦ技法のうちの１つまたは複数を使用して、再構築されたビデオブロックをフィルタ処理する。
【０１６８】
[0131]ＡＬＦユニット９２は、ビデオデコーダ３０のエントロピー復号ユニット８０など、他の構成要素とともに、本開示で説明される様々な技法を実施するように構成され得る。ＡＬＦユニット９２は、たとえば、上記で説明されたシンタックス要素など、シンタックス要素をエントロピー復号ユニット８０または他の場所から受信し、それらのシンタックス要素に基づいて、１つまたは複数のフィルタのセットを決定し得る。
【０１６９】
[0132]ＡＬＦユニット９２は、たとえば、ビデオブロックの、個々のピクセルのために、またはサブブロック（たとえば、２×２、４×４、または何らかの他のサイズのサブブロック）のために、１つまたは複数のメトリックのための値を決定することによって、ビデオブロックをフィルタ処理し、１つまたは複数のメトリックに基づいて、ピクセルまたはサブブロックのためのクラスを決定し得る。ＡＬＦユニット９２は、たとえば、上記で説明された式２〜５または式７〜１４を使用して、メトリックのための値とクラスとを決定し得る。ＡＬＦユニット９２は、次いで、決定されたクラスにマッピングされた、フィルタのセットからのフィルタを使用して、ピクセルまたはサブブロックをフィルタ処理し得る。
【０１７０】
[0133]図６には明示的に示されていないが、ビデオデコーダ３０はまた、デブロッキングフィルタ、ＳＡＯフィルタ、または他のタイプのフィルタのうちの１つまたは複数を含み得る。ピクセル遷移を平滑化するか、または場合によってはビデオ品質を改善するために、（コーディングループ中またはコーディングループ後のいずれかの）他のループフィルタも使用され得る。所与のフレームまたはピクチャ中の復号ビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶するＤＰＢ９４に記憶される。ＤＰＢ９４は、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の提示のために、復号されたビデオを記憶する追加のメモリの一部であるか、または追加のメモリとは別個であり得る。
【０１７１】
[0134]図７は、本開示の技法による、ビデオデータを復号するための技法を示す流れ図である。図７の技法は、たとえば、ビデオデコーダ３０によって実施され得るが、図７の技法は、ビデオデコーダの特定のタイプに限定されない。図７の例では、ビデオデコーダ３０は、ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定する（１００）。ビデオブロックのグループは、たとえば、ビデオデータのスライスであり得るか、あるいは、ＳＰＳまたはＰＰＳなど、あるパラメータセットが適用されるすべてのブロックであり得る。ビデオブロックのグループはまた、ＬＣＵのＣＵなど、より大きいブロックのサブブロックであり得る。複数のクラスの各クラスは、図２に関して上記で説明されたメトリックなど、メトリックのための対応する値を有し、複数のクラスの各クラスは、フィルタのセットからのフィルタにマッピングされる。各マージグループは、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える。
【０１７２】
[0135]ビデオデコーダ３０は、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定する（１０２）。複数のクラスのためのマージグループの数が１に等しいと決定するために、ビデオデコーダ３０は、たとえば、ビデオデータ中で、フィルタのセット中のフィルタの総数が１に等しいことを示すシンタックスを受信し得る。
【０１７３】
[0136]ビデオデコーダは、ビデオデータ中で、ビデオブロックのグループのために、第１のフラグ（たとえば、上記で説明されたｆｒｏｃｅＣｏｅｆｆ０フラグ）を受信する（１０４）。第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す。ビデオデコーダ３０は、第１のフラグが第１の値に等しいと決定する（１０６）。ビデオデコーダ３０は、ビデオデータ中で、１つのマージグループのために、第２のフラグ（たとえば、上記で説明されたＣｏｄｅｄＶａｒＢｉｎフラグ）を受信する（１０８）。第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す。ビデオデコーダ３０は、第２のフラグが第２の値に等しいと決定する（１１０）。
【０１７４】
[0137]ビデオデコーダ３０は、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定する（１１２）。いくつかの例では、１つのマージグループにマッピングされたフィルタ係数情報は、フィルタ係数値であり得る。そのような場合、フィルタのセットからの１つまたは複数のフィルタは、少なくとも１つの全０フィルタを含み、ここで、全０フィルタのためのすべての係数は０に等しい。他の例では、１つのマージグループにマッピングされたフィルタ係数情報は、差分値であり得る。そのような場合、差分値はすべて０に等しく、全０値を使用する、フィルタのセットからの１つまたは複数のフィルタを決定するために、ビデオデコーダ３０は、差分値を１つまたは複数の予測フィルタに加算し得る。そのような例では、フィルタのセットは、１つまたは複数の予測フィルタと同じであるか、またはそれらを含み得る。１つまたは複数の予測フィルタは、たとえば、１つまたは複数の固定フィルタであり得る。
【０１７５】
[0138]ビデオブロックの第２のグループのために、ビデオデコーダ３０は、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定し得る。ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの第２のグループのための１つのマージグループに等しいと決定したことに応答して、ビデオデコーダ３０は、ビデオデータ中で、ビデオブロックの第２のグループのために、第１のフラグの第２のインスタンスを受信し得る。ビデオデコーダ３０は、第１のフラグの第２のインスタンスが第２の値に等しいと決定し得、ビデオデコーダ３０は、ビデオデータ中で、ビデオブロックの第２のグループのための１つのマージグループのために、第２のフラグの第２のインスタンスを受信することをスキップし得る。第２のフラグの第２のインスタンスを受信することをスキップするために、ビデオデコーダ３０は、ビデオデータ中でビデオブロックの第２のグループのための１つのマージグループのために第１の値を受信することなしに、第２のフラグの第２のインスタンスが第１の値に等しいと推論し得る。ビデオデコーダ３０は、ビデオデータ中で、ビデオブロックの第２のグループのための１つのマージグループのためのフィルタ係数情報を受信し得、ここで、ビデオブロックの第２のグループのための１つのマージグループのためのフィルタ係数情報は、少なくとも１つの非０係数を備える。
【０１７６】
[0139]図８は、本開示の技法による、ビデオデータを符号化するための技法を示す流れ図である。図８の技法は、たとえば、ビデオエンコーダ２０によって実施され得るが、図８の技法は、ビデオエンコーダの特定のタイプに限定されない。図８の例では、ビデオエンコーダ２０は、ビデオデータのビデオブロックのグループのためのフィルタのセットを決定する（１２０）。ビデオブロックのグループは、たとえば、ビデオデータのスライスであり得るか、あるいは、ＳＰＳまたはＰＰＳなど、あるパラメータセットが適用されるすべてのブロックであり得る。ビデオブロックのグループはまた、ＬＣＵのＣＵなど、より大きいブロックのサブブロックであり得る。
【０１７７】
[0140]ビデオエンコーダ２０は、ビデオブロックのグループのためのフィルタ係数情報のセットを決定する（１２２）。いくつかの例では、フィルタ係数情報のセットはフィルタ係数値であり得るが、他の例では、フィルタ係数情報のセットは、フィルタのセット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を含み得る。１つまたは複数の予測フィルタは、たとえば、１つまたは複数の固定フィルタであり得る。
【０１７８】
[0141]ビデオエンコーダ２０は、複数のクラスのためのマージグループの数を決定する（１２４）。複数のクラスの各クラスは、メトリックのための対応する値を有し、複数のクラスの各クラスは、フィルタのセットからのフィルタにマッピングされる。各マージグループは、フィルタ係数情報の同じセットにマッピングされる１つまたは複数のクラスを含む。ビデオエンコーダ２０は、複数のクラスが１つのマージグループを含むことを示す、複数のクラスのためのマージグループの数が１に等しいことを決定する（１２６）。ビデオエンコーダ２０は、ビデオデータ中に含めるために、第１の値に設定された第１のフラグ（たとえば、上記で説明されたｆｒｏｃｅＣｏｅｆｆ０フラグ）を生成する（１２８）。第１のフラグのための第１の値は、マージグループのうちの少なくとも１つのためのフィルタ係数情報がビデオデータ中でコーディングされないことを示し、第１のフラグのための第２の値は、マージグループのすべてのためのフィルタ係数情報がビデオデータ中でコーディングされることを示す。ビデオエンコーダ２０は、ビデオデータ中に含めるために、第２の値に設定された第２のフラグ（たとえば、上記で説明されたＣｏｄｅｄＶａｒＢｉｎフラグ）を生成する（１３０。第２のフラグのための第１の値は、１つのマージグループにマッピングされたフィルタ係数情報がビデオデータ中でコーディングされることを示し、第２のフラグのための第２の値は、１つのマージグループにマッピングされたフィルタ係数情報が全０値であることを示す。
【０１７９】
[0142]ビデオブロックの第２のグループのために、ビデオエンコーダ２０は、ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、１つのマージグループに等しいと決定し、ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの第２のグループのための１つのマージグループに等しいと決定したことに応答して、ビデオデータ中にビデオブロックの第２のグループのための１つのマージグループのために第２のフラグの第２のインスタンスを含めることなしに、ビデオデータ中に含めるために、ビデオブロックの第２のグループのために、第２の値に設定された第１のフラグの第２のインスタンスを生成し得る。
【０１８０】
[0143]図９は、本開示の技法による、ビデオデータを復号するための技法を示す流れ図である。図９の技法は、たとえば、ビデオデコーダ３０によって実施され得るが、図９の技法は、ビデオデコーダの特定のタイプに限定されない。図９の例では、ビデオデコーダ３０は、ビデオデータのルーマブロックのグループのために、ルーマブロックのグループのための２つまたはそれ以上のフィルタのセットを決定する（１４０）。ルーマブロックのグループからのルーマブロックのために、ビデオデコーダ３０は、ルーマブロックのための１つまたは複数のメトリックを決定する（１４２）。１つまたは複数のメトリックに基づいて、ビデオデコーダ３０は、フィルタのセットからフィルタを選択する（１４４）。ビデオデコーダ３０は、選択されたフィルタを使用してルーマブロックをフィルタ処理する（１４６）。
【０１８１】
[0144]ビデオデコーダ３０は、ルーマブロックのグループのためのフィルタのセットからクロマフィルタを選択する（１４８）。ビデオデコーダ３０は、クロマフィルタを使用してクロマブロックをフィルタ処理する（１５０）。したがって、ルーマブロックのために決定されたフィルタのセットからのフィルタを再利用することによって、ビデオデコーダ３０は、クロマブロックのためのフィルタ導出プロセスを潜在的に簡略化する。いくつかの例では、ビデオデコーダ３０は、ブロックベースのクロマフィルタ処理のために使用されるべきルーマフィルタを選択し得、他の例では、ビデオデコーダ３０は、スライスベースまたは何らかの他のベースでのクロマフィルタ処理のためのルーマフィルタを選択し得る。いくつかの例では、選択されたルーマフィルタは、クロマブロックをフィルタ処理するために利用可能な唯一のフィルタ（または唯一の非０フィルタ）であり得る。
【０１８２】
[0145]一例では、２つまたはそれ以上のフィルタのセット中の各フィルタは、１つまたは複数のクラスに関連し、ルーマブロックのグループのためのフィルタのセットからクロマフィルタを選択するために、ビデオデコーダ３０は、特定のクラスに関連するフィルタを決定し、特定のクラスに関連するフィルタをクロマフィルタとして選択する。別の例では、２つまたはそれ以上のフィルタのセット中の各フィルタは、フィルタインデックスに関連し、各フィルタインデックスは、１つまたは複数のクラスにマッピングする。ルーマブロックのグループのためのフィルタのセットからクロマフィルタを選択するために、ビデオデコーダ３０は、最小フィルタインデックスに関連するフィルタをクロマフィルタとして選択する。
【０１８３】
[0146]１つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得るか、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つまたは複数のコンピュータまたは１つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１８４】
[0147]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１８５】
[0148]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、上記の構造、または本明細書で説明される技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用ハードウェアおよび／またはソフトウェアモジュール内に与えられるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【０１８６】
[0149]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示される技法を実施するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットが説明されたが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明されたように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明された１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
【０１８７】
[0150]様々な例が説明された。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2019519141.tif 000030
【図２】
2019519141.tif 000031
【図３Ａ】
2019519141.tif 000032
【図３Ｂ】
2019519141.tif 000033
【図３Ｃ】
2019519141.tif 000034
【図４】
2019519141.tif 000035
【図５】
2019519141.tif 000036
【図６】
2019519141.tif 000037
【図７】
2019519141.tif 000038
【図８】
2019519141.tif 000039
【図９】
2019519141.tif 000040
【手続補正書】
【提出日】平成31年1月8日(2019.1.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、アクティビティメトリックのための方向および値の範囲に関連し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスは、前記マージグループのうちの同じマージグループに属し、
前記複数のクラスのためのマージグループの前記数が１に等しいこと、および前記複数のクラスがすべて、前記マージグループのうちの１つのマージグループのみに属すること、を決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を備える、方法。
【請求項２】
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項１に記載の方法。
【請求項３】
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定することが、前記差分値を１つまたは複数の予測フィルタに加算することを備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、請求項１に記載の方法。
【請求項４】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項３に記載の方法。
【請求項５】
前記複数のクラスのためのマージグループの前記数が１に等しいと決定することは、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信することを備える、請求項１に記載の方法。
【請求項６】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項１に記載の方法。
【請求項７】
ビデオブロックの前記グループがスライスを備える、請求項１に記載の方法。
【請求項８】
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しい１に等しいことを決定したことに応答して、前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示すことと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
をさらに備える、請求項１に記載の方法。
【請求項９】
ビデオデータを符号化するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、アクティビティメトリックのための方向および値の範囲に関連し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスは、前記マージグループのうちの同じマージグループに属し、
前記複数のクラスのためのマージグループの前記数が１に等しいこと、および前記複数のクラスがすべて、前記マージグループのうちの１つのマージグループのみに属すること、を決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を備える、方法。
【請求項１０】
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項９に記載の方法。
【請求項１１】
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、請求項９に記載の方法。
【請求項１２】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項１１に記載の方法。
【請求項１３】
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
をさらに備える、請求項９に記載の方法。
【請求項１４】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項９に記載の方法。
【請求項１５】
ビデオブロックの前記グループがスライスを備える、請求項９に記載の方法。
【請求項１６】
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
をさらに備える、請求項９に記載の方法。
【請求項１７】
ビデオデータを復号するためのデバイスであって、前記デバイスが、
前記ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、アクティビティメトリックのための方向および値の範囲に関連し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスは、前記マージグループのうちの同じマージグループに属し、
前記複数のクラスのためのマージグループの前記数が１に等しいこと、および前記複数のクラスがすべて、前記マージグループのうちの１つのマージグループのみに属すること、を決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を行うように構成された、
デバイス。
【請求項１８】
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項１７に記載のデバイス。
【請求項１９】
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定するために、前記１つまたは複数のプロセッサが、前記差分値を１つまたは複数の予測フィルタに加算するように構成され、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、請求項１７に記載のデバイス。
【請求項２０】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項１９に記載のデバイス。
【請求項２１】
前記複数のクラスのためのマージグループの前記数が１に等しいと決定するために、前記１つまたは複数のプロセッサが、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信するように構成された、請求項１７に記載のデバイス。
【請求項２２】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項１７に記載のデバイス。
【請求項２３】
ビデオブロックの前記グループがスライスを備える、請求項１７に記載のデバイス。
【請求項２４】
前記１つまたは複数のプロセッサは、
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
を行うようにさらに構成された、請求項１７に記載のデバイス。
【請求項２５】
ビデオデータを符号化するためのデバイスであって、前記デバイスが、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、アクティビティメトリックのための方向および値の範囲に関連し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスは、前記マージグループのうちの同じマージグループに属し、
前記複数のクラスのためのマージグループの前記数が１に等しいこと、および前記複数のクラスがすべて、前記マージグループのうちの１つのマージグループのみに属すること、を決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を行うように構成された、
デバイス。
【請求項２６】
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、請求項２５に記載のデバイス。
【請求項２７】
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、請求項２５に記載のデバイス。
【請求項２８】
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、請求項２７に記載のデバイス。
【請求項２９】
前記１つまたは複数のプロセッサは、
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
を行うようにさらに構成された、請求項２５に記載のデバイス。
【請求項３０】
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、請求項２５に記載のデバイス。
【請求項３１】
ビデオブロックの前記グループがスライスを備える、請求項２５に記載のデバイス。
【請求項３２】
前記１つまたは複数のプロセッサは、
前記複数のクラスがビデオブロックの第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための複数のクラスのためのマージグループの数が１に等しい１に等しいことを決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
を行うようにさらに構成された、請求項２５に記載のデバイス。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１８７
【補正方法】変更
【補正の内容】
【０１８７】
[0150]様々な例が説明された。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータを復号するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を備える、方法。
［Ｃ２］
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、Ｃ１に記載の方法。
［Ｃ３］
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定することが、前記差分値を１つまたは複数の予測フィルタに加算することを備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、Ｃ１に記載の方法。
［Ｃ４］
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、Ｃ３に記載の方法。
［Ｃ５］
前記複数のクラスのためのマージグループの前記数が１に等しいと決定することは、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信することを備える、Ｃ１に記載の方法。
［Ｃ６］
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、Ｃ１に記載の方法。
［Ｃ７］
ビデオブロックの前記グループがスライスを備える、Ｃ１に記載の方法。
［Ｃ８］
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、Ｃ１に記載の方法。
［Ｃ９］
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しい１に等しいことを決定したことに応答して、前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
をさらに備える、Ｃ１に記載の方法。
［Ｃ１０］
ビデオデータを符号化するための方法であって、前記方法は、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を備える、方法。
［Ｃ１１］
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、Ｃ１０に記載の方法。
［Ｃ１２］
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、Ｃ１０に記載の方法。
［Ｃ１３］
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、Ｃ１２に記載の方法。
［Ｃ１４］
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
をさらに備える、Ｃ１０に記載の方法。
［Ｃ１５］
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、Ｃ１０に記載の方法。
［Ｃ１６］
ビデオブロックの前記グループがスライスを備える、Ｃ１０に記載の方法。
［Ｃ１７］
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、Ｃ１０に記載の方法。
［Ｃ１８］
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
をさらに備える、Ｃ１０に記載の方法。
［Ｃ１９］
ビデオデータを復号するためのデバイスであって、前記デバイスが、
前記ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのために、複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタのセットからのフィルタにマッピングされ、ここにおいて、各マージグループが、同じフィルタ係数情報にマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中で、ビデオブロックの前記グループのために、第１のフラグを受信することと、ここにおいて、前記第１のフラグのための第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記第１のフラグが前記第１の値に等しいと決定することと、
前記ビデオデータ中で、前記１つのマージグループのために、第２のフラグを受信することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
前記第２のフラグが前記第２の値に等しいと決定することと、
前記全０値を使用する、フィルタの前記セットからの１つまたは複数のフィルタを決定することと
を行うように構成された、
デバイス。
［Ｃ２０］
前記１つのマージグループにマッピングされた前記フィルタ係数情報がフィルタ係数値を備え、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、Ｃ１９に記載のデバイス。
［Ｃ２１］
前記１つのマージグループにマッピングされた前記フィルタ係数情報が差分値を備え、ここにおいて、前記差分値がすべて０に等しく、ここにおいて、前記全０値を使用する、フィルタの前記セットからの前記１つまたは複数のフィルタを決定するために、前記１つまたは複数のプロセッサが、前記差分値を１つまたは複数の予測フィルタに加算するように構成され、ここにおいて、フィルタの前記セットからの前記１つまたは複数のフィルタが、少なくとも１つの非０係数をもつ少なくとも１つのフィルタを備える、Ｃ１９に記載のデバイス。
［Ｃ２２］
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、Ｃ２１に記載のデバイス。
［Ｃ２３］
前記複数のクラスのためのマージグループの前記数が１に等しいと決定するために、前記１つまたは複数のプロセッサが、前記ビデオデータ中で、フィルタの前記セット中のフィルタの総数が１に等しいことを示すシンタックスを受信するように構成された、Ｃ１９に記載のデバイス。
［Ｃ２４］
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、Ｃ１９に記載のデバイス。
［Ｃ２５］
ビデオブロックの前記グループがスライスを備える、Ｃ１９に記載のデバイス。
［Ｃ２６］
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、Ｃ１９に記載のデバイス。
［Ｃ２７］
前記１つまたは複数のプロセッサは、
ビデオブロックの第２のグループのための複数のクラスのためのマージグループの数が、ビデオブロックの前記第２のグループについて１に等しいと決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中で、ビデオブロックの前記第２のグループのために、前記第１のフラグの第２のインスタンスを受信することと、
前記第１のフラグの前記第２のインスタンスが、前記第１のフラグのための前記第２の値に等しいと決定することと、
前記ビデオデータ中で前記第２のフラグの第２のインスタンスを受信することなしに、前記第２のフラグの前記第２のインスタンスが、前記第２のフラグのための前記第１の値に等しいと推論することと、
前記ビデオデータ中で、ビデオブロックの前記第２のグループのための前記１つのマージグループのためのフィルタ係数情報を受信することと、ここにおいて、ビデオブロックの前記第２のグループのための前記１つのマージグループのための前記フィルタ係数情報が、少なくとも１つの非０係数を備える、
を行うようにさらに構成された、Ｃ１９に記載のデバイス。
［Ｃ２８］
ビデオデータを符号化するためのデバイスであって、前記デバイスが、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのビデオブロックのグループのためのフィルタのセットを決定することと、
ビデオブロックの前記グループのためのフィルタ係数情報のセットを決定することと、
複数のクラスのためのマージグループの数を決定することと、ここにおいて、前記複数のクラスの各クラスが、メトリックのための対応する値を有し、ここにおいて、前記複数のクラスの各クラスが、フィルタの前記セットからのフィルタにマッピングされ、ここにおいて、各マージグループが、フィルタ係数情報の同じセットにマッピングされた１つまたは複数のクラスを備える、
前記複数のクラスが１つのマージグループを含むことを示す、前記複数のクラスのためのマージグループの前記数が１に等しいことを決定することと、
前記ビデオデータ中に含めるために、第１の値に設定された第１のフラグを生成することと、ここにおいて、前記第１のフラグのための前記第１の値は、前記マージグループのうちの少なくとも１つのためのフィルタ係数情報が前記ビデオデータ中でコーディングされないことを示し、前記第１のフラグのための第２の値は、前記マージグループのすべてのためのフィルタ係数情報が前記ビデオデータ中でコーディングされることを示す、
前記ビデオデータ中に含めるために、第２の値に設定された第２のフラグを生成することと、ここにおいて、前記第２のフラグのための第１の値は、前記１つのマージグループにマッピングされたフィルタ係数情報が前記ビデオデータ中でコーディングされることを示し、ここにおいて、前記第２のフラグのための前記第２の値は、前記１つのマージグループにマッピングされた前記フィルタ係数情報が全０値であることを示す、
を行うように構成された、
デバイス。
［Ｃ２９］
フィルタ係数情報の前記セットがフィルタ係数値を備え、ここにおいて、フィルタの前記セットが、全０フィルタを備え、ここにおいて、前記全０フィルタのためのすべての係数が０に等しい、Ｃ２８に記載のデバイス。
［Ｃ３０］
前記フィルタ係数情報が、フィルタの前記セット中のフィルタのフィルタ係数と、１つまたは複数の予測フィルタのフィルタ係数との間の差分値を備える、Ｃ２８に記載のデバイス。
［Ｃ３１］
前記１つまたは複数の予測フィルタが、１つまたは複数の固定フィルタを備える、Ｃ３０に記載のデバイス。
［Ｃ３２］
前記１つまたは複数のプロセッサは、
前記ビデオデータ中に含めるために、前記複数のクラスのためのマージグループの前記数が１に等しいことを示すシンタックスを生成すること
を行うようにさらに構成された、Ｃ２８に記載のデバイス。
［Ｃ３３］
ビデオブロックの前記グループが、ルーマビデオブロックのグループを備える、Ｃ２８に記載のデバイス。
［Ｃ３４］
ビデオブロックの前記グループがスライスを備える、Ｃ２８に記載のデバイス。
［Ｃ３５］
メトリックのための前記対応する値が、アクティビティメトリックのための値と方向メトリックのための値とを備える、Ｃ２８に記載のデバイス。
［Ｃ３６］
前記１つまたは複数のプロセッサは、
前記複数のクラスがビデオブロックの第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための複数のクラスのためのマージグループの数が１に等しい１に等しいことを決定することと、
前記複数のクラスがビデオブロックの前記第２のグループのための１つのマージグループを含むことを示す、ビデオブロックの前記第２のグループのための前記複数のクラスのためのマージグループの前記数が１に等しいことを決定したことに応答して、前記ビデオデータ中にビデオブロックの前記第２のグループのための前記１つのマージグループのために前記第２のフラグの第２のインスタンスを含めることなしに、前記ビデオデータ中に含めるために、ビデオブロックの前記第２のグループのために、前記第２の値に設定された前記第１のフラグの第２のインスタンスを生成することと
を行うようにさらに構成された、Ｃ２８に記載のデバイス。
【国際調査報告】
2019519141.tif 000041
2019519141.tif 000042
2019519141.tif 000043