(57)【要約】      （修正有）【課題】１次元コンテキストパターンの総数を低減することにより復号効率を改善する復号方法を提供する。【解決手段】ビデオデコーダはエントロピー符号化ビットストリームの中でブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信する（１６０２）。２つ以上の走査タイプのための１次元コンテキストパターンを選択する（１６０４）。選択されたコンテキストパターンに基づいて複数の有意性シンタックス要素にコンテキストを割り当てる（１６０６）。割り当てられたコンテキストに基づいて複数の有意性シンタックス要素をＣＡＢＡＣ復号する（１６０８）。【選択図】図１６
2018110405.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することとを備える、方法。
【請求項２】
前記コンテキストパターンを選択することが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項３】
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する、前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項４】
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項５】
前記コンテキストパターンを選択することが、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項６】
前記現在のサブブロックが４×４サブブロックを備え、および前記ブロックが８×８ブロックを備える、請求項１に記載の方法。
【請求項７】
前記コンテキストパターンを選択することが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項８】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、ここにおいて、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、
請求項７に記載の方法。
【請求項９】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、および、ここにおいて、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項７に記載の方法。
【請求項１０】
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、および、ここにおいて、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項７に記載の方法。
【請求項１１】
ビデオデータを復号するためのデバイスであって、前記デバイスが、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することとを行うように構成されたビデオデコーダを備える、デバイス。
【請求項１２】
前記コンテキストパターンを選択するために、前記ビデオデコーダが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択するように構成された、請求項１１に記載のデバイス。
【請求項１３】
前記コンテキストパターンを選択するために、前記ビデオデコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および、前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項１１に記載のデバイス。
【請求項１４】
前記コンテキストパターンを選択するために、前記ビデオデコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項１１に記載のデバイス。
【請求項１５】
前記コンテキストパターンを選択するために、前記ビデオデコーダが、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項１１に記載のデバイス。
【請求項１６】
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、請求項１１に記載のデバイス。
【請求項１７】
前記コンテキストパターンを選択するために、前記ビデオデコーダが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択するように構成された、請求項１１に記載のデバイス。
【請求項１８】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項１７に記載のデバイス。
【請求項１９】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項１７に記載のデバイス。
【請求項２０】
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、そして前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項１７に記載のデバイス。
【請求項２１】
前記デバイスが、
集積回路と、
マイクロプロセッサと、
前記ビデオデコーダを含むワイヤレス通信デバイスとのうちの１つを備える、請求項１１に記載のデバイス。
【請求項２２】
実行されたとき、ビデオデータを復号するためのデバイスの１つまたは複数のプロセッサに、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのための複数のコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記複数の有意性シンタックス要素を復号することと、
を行わせる命令を記憶したコンピュータ可読記憶媒体。
【請求項２３】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択させる、命令を備える請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２４】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２５】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、請求項２２に記載のコンピュータ可読記憶媒体。
【請求項２６】
ビデオデータを符号化するための方法であって、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成することと、
コンテキストパターンを選択することであって、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、選択することと、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記変換係数の前記有意性シンタックス要素を符号化することと、
前記符号化された複数の有意性シンタックス要素を出力することとを備える、方法。
【請求項２７】
前記コンテキストパターンを選択することが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択することを備える、請求項２６に記載の方法。
【請求項２８】
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２６に記載の方法。
【請求項２９】
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２６に記載の方法。
【請求項３０】
前記コンテキストパターンを選択することが、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２６に記載の方法。
【請求項３１】
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、請求項２６に記載の方法。
【請求項３２】
前記コンテキストパターンを選択することが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択することを備える、請求項２６に記載の方法。
【請求項３３】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項３２に記載の方法。
【請求項３４】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項３２に記載の方法。
【請求項３５】
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項３２に記載の方法。
【請求項３６】
ビデオデータを符号化するためのデバイスであって、前記デバイスが、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記複数の有意性シンタックス要素を符号化することと、
前記符号化された複数の有意性シンタックス要素を出力することとを行うように構成されたビデオエンコーダを備える、デバイス。
【請求項３７】
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択するように構成された、請求項３６に記載のデバイス。
【請求項３８】
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３６に記載のデバイス。
【請求項３９】
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３６に記載のデバイス。
【請求項４０】
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３６に記載のデバイス。
【請求項４１】
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、請求項３６に記載のデバイス。
【請求項４２】
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択するように構成された、請求項３６に記載のデバイス。
【請求項４３】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項４２に記載のデバイス。
【請求項４４】
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項４２に記載のデバイス。
【請求項４５】
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、請求項４２に記載のデバイス。
【請求項４６】
ビデオデータを符号化するためのデバイスであって、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成するための手段と、
コンテキストパターンを選択するための手段と、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てるための手段と、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記変換係数の前記有意性シンタックス要素を符号化するための手段と、
前記符号化された有意性シンタックス要素を出力するための手段とを備える、デバイス。
【請求項４７】
前記コンテキストパターンを選択するための前記手段が、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項４６に記載のデバイス。
【請求項４８】
前記コンテキストパターンを選択するための前記手段が、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項４６に記載のデバイス。
【請求項４９】
前記コンテキストパターンを選択するための前記手段が、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項４６に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
[0001]本出願は、各々の内容全体が参照により本明細書に組み込まれる、
２０１２年４月１６日に出願された米国仮出願第６１／６２５，０３９号、および
２０１２年７月２日に出願された米国仮出願第６１／６６７，３８２号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関し、より詳細には、ビデオコーディングにおいてシンタックス要素をコーディングするための技法に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ビデオコーディング規格に従って定義されるビデオ圧縮技法を実装する。デジタルビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。ビデオコーディング規格は、ＩＴＵ−Ｔ
Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそれのスケーラブルビデオコーディング（ＳＶＣ：Scalable Video Coding）拡張とマルチビュービデオコーディング（ＭＶＣ：Multiview Video Coding）拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４を含む。さらに、高効率ビデオコーディング（ＨＥＶＣ：High-Efficiency Video Coding）は、ＩＴＵ−Ｔビデオコーディングエキスパーツグループ（ＶＣＥＧ：Video Coding Experts Group）とＩＳＯ／ＩＥＣモーションピクチャエキスパーツグループ（ＭＰＥＧ：Motion Picture Experts Group）とのビデオコーディング共同研究部会（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発されているビデオコーディング規格である。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコーディングでは、ビデオスライス（すなわち、ビデオフレームまたはビデオフレームの一部）はビデオブロックに区分され得、これらのビデオブロックは、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることがある。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックの予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコード化ブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。量子化の変換係数は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]概して、本開示は、複数の変換係数コーディングにおいて、有意係数フラグ（significant coefficient flag）および係数グループフラグなど、複数の変換係数の有意性（significance）を表すデータを符号化および復号するための技法について説明する。複数の変換係数に関連するシンタックス要素をＣＡＢＡＣ（コンテキスト適応型バイナリ算術コーディング：Context Adaptive Binary Arithmetic Coding）コーディングするために使用されるべきコンテキストを判断するための様々な技法が説明される。
【０００７】
[0007]たとえば、いくつかの技法では、ビデオエンコーダおよびビデオデコーダは、水平走査、垂直走査、および対角走査の走査タイプのために同じ複数のコンテキストパターンからコンテキストパターンを選択する。言い換えれば、サブブロックが垂直方向に走査されるのか、水平方向に走査されるのか、対角方向に走査されるのかにかかわらず、ビデオエンコーダおよびビデオデコーダは、すべての３つの走査タイプのために同じコンテキストパターンからコンテキストパターンを選択し得る。ビデオエンコーダおよびビデオデコーダは、それぞれ、変換ブロックの複数の有意性シンタックス要素をＣＡＢＡＣ符号またはＣＡＢＡＣ復号するために、選択されたコンテキストパターン内のコンテキストを利用する。
【０００８】
[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]本開示の技法による、予測シンタックス要素を復号することを示すフローチャート。
【発明を実施するための形態】
【００２２】
[0038]本明細書ではＨＥＶＣ  ＷＤ７と呼ばれ、http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v5.zipから入手可能な、高効率ビデオコーディング（ＨＥＶＣ）規格のワーキングドラフト７（ＷＤ７）において提案されているものなど、いくつかの例に従って設計されたビデオコーダは、４×４サブブロック係数グループに対するデータアクセスとは異なる非正方形係数グループに対するデータアクセスを必要とし得る。これは、ビデオコーダの実装中に追加のハードウェアおよびソフトウェア複雑さを課し得る。追加のハードウェアおよびソフトウェア複雑さは、非正方形係数グループが削除され、４×４サブブロック係数が対角、垂直、または水平走査タイプのうちの１つに従って走査される場合に低減され得る。しかしながら、この変更は、ＨＥＶＣ  ＷＤ７に従って定義されたコンテキスト導出が、サブブロックが有意係数を含むかどうかを示すシンタックス要素にコンテキストを割り当てるために使用されるとき、コーディング効率を低減し得る。したがって、本開示は、改善されたコーディング効率を与え得る、サブブロックが有意係数を含むかどうかを示すシンタックス要素にコンテキストを割り当てるための技法について説明する。
【００２３】
[0039]たとえば、これらの他の技法（すなわち、必ずしも、本開示で説明される技法によるとは限らない技法）のうちのいくつかでは、コンテキストパターンは、変換ユニット（ＴＵ（transform unit）または変換ブロック）の複数の変換係数の有意性を示すシンタックス要素（複数の有意性シンタックス要素と呼ばれる）のコーディングのために、変換ユニットの可能なサイズのサブセットのために使用される。また、これらの他の技法は、限られた走査タイプのためのコンテキストパターンを使用した。したがって、コンテキストパターンが使用され得るかどうかに関する判断が行われ得るように、ＴＵのサイズを判断しなければならないことによって、計算リソースが浪費される。
【００２４】
[0040]本開示で説明される技法では、様々な異なるサイズのＴＵのための複数の走査タイプ（たとえば、水平走査、垂直走査、および対角走査）のために同じコンテキストパターンが使用される。たとえば、ビデオエンコーダまたはビデオデコーダは、８×８ＴＵの４×４サブブロックのための走査タイプにかかわらず（たとえば、４×４サブブロックが水平方向に走査されるのか、垂直方向に走査されるのか、または対角方向に走査されるのかにかかわらず）、４×４サブブロックのために同じ複数のコンテキストパターンからコンテキストパターンを選択し得る。より詳細に説明されるように、複数のコンテキストパターンの各々は、１つまたは複数の隣接サブブロックが有意複数の変換係数（たとえば、非０変換係数）を含むかどうかの条件に関連する。同じくより詳細に説明されるように、本開示は、ビデオエンコーダまたはビデオデコーダがコンテキストパターンをそれらから選択する複数のコンテキストパターンの特性について説明する。このようにして、ビデオエンコーダおよびビデオデコーダは、８×８ブロック（すなわち、８×８ＴＵ）の４×４サブブロックを含む、サブブロックの複数の有意性シンタックス要素のための複数の走査タイプ（たとえば、水平走査、垂直走査、および対角走査）について、複数の有意性シンタックス要素のためのコンテキストを判断するために同じコンテキストパターンを使用することができるので、計算効率が実現され得る。
【００２５】
[0041]上記の例では、コンテキストパターンは２次元コンテキストパターンであり得る。ただし、本開示の態様はそのように限定されない。いくつかの例では、ビデオエンコーダおよびビデオデコーダはコンテキストパターン（たとえば、１次元コンテキストパターンとして記憶されたコンテキストパターン）を選択する。たとえば、いくつかのコンテキストパターンは２次元コンテキストパターンとして定義され得る。２次元コンテキストパターンから１次元コンテキストパターンを事前計算することが可能であり得る。事前計算は符号化および復号プロセスの速度を上げ得る。たとえば、複数の変換係数は２次元ブロックから１次元ブロックに変換され得る。事前計算された１次元パターンを用いて、１次元ブロックに対して２次元コンテキストパターンを使用することと比較して、変換係数が１次元ブロックに変換されるので、複数の有意性シンタックス要素を符号化または復号するために１次元パターンが使用される場合、符号化および復号効率が実現され得る。２次元コンテキストパターンから１次元コンテキストパターンを事前計算することは、あらゆる例において必要とされるとは限らず、１次元コンテキストパターンを判断する限定された方法と見なされるべきでないことを理解されたい。
【００２６】
[0042]１次元コンテキストパターンが計算され得る様々な方法があり得る。一例として、２次元コンテキストパターンは、３つの１次元コンテキストパターン（たとえば、走査タイプごとに１つ）を生成するために、対角方向に走査され、水平方向に走査され、垂直方向に走査され得る。本開示で説明される技法では、２次元コンテキストパターンは、生成される１次元コンテキストパターンの総数を低減する特性を備え得る。
【００２７】
[0043]たとえば、１次元コンテキストパターンを生成するために水平方向、垂直方向、および対角方向にそれぞれ走査される４つの２次元コンテキストパターンがある場合、１次元コンテキストパターンは合計１２個になるであろう。いくつかの例では、４つの２次元コンテキストパターンは、２つの異なる走査が同じ１次元コンテキストパターンを生じるような方法で構成されたコンテキストを含み得る。
【００２８】
[0044]たとえば、２次元コンテキストパターンのうちの１つは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを含み得る。別の例として、２次元コンテキストパターンのうちの１つは、水平方向に走査されたときに、２次元コンテキストパターンのうちの別のものが垂直方向に走査された場合に生じるであろう同じ１次元ベクトルである１次元コンテキストパターンを生じるコンテキストを含み得る。別の例として、２次元コンテキストパターンのうちの１つは、水平方向、垂直方向、または対角方向に走査されたときに同じ１次元コンテキストパターンを生じるコンテキストを含み得る。
【００２９】
[0045]このようにして、コンテキストパターンの異なる走査から生じる得られた１次元コンテキストパターンには重複があり得、これは、記憶される必要がある１次元コンテキストパターンの総数を低減する。これは、１つのコンテキストパターンがサブブロックの２つ以上の走査タイプのために使用されることを可能にする。
【００３０】
[0046]たとえば、上記で説明されたように、２次元コンテキストパターンのうちの１つは、水平方向、垂直方向、および対角方向に走査されたときに同じ１次元コンテキストパターンを生じるコンテキストを含む。したがって、このコンテキストパターンでは、１次元コンテキストパターンがコンテキストパターン走査のすべての３つのタイプについて同じであるので、ただ１つの１次元コンテキストパターンが記憶される。
【００３１】
[0047]別の例として、２次元コンテキストパターンのうちの１つは、水平方向または垂直方向に走査されたときに同じ１次元コンテキストパターンを生じるコンテキストを含む。この場合、対角走査のための１次元コンテキストパターンが記憶され、水平走査から生じる１次元コンテキストパターンと垂直走査から生じる１次元コンテキストパターンとが同じであるので、水平走査のための１次元コンテキストパターンまたは垂直走査のための１次元コンテキストパターンの両方ではなくいずれかが記憶される。これらの例では、２次元コンテキストパターンから計算されたこれらの１次元コンテキストパターンは、事前計算され、記憶され得、これは、符号化および復号プロセスの速度を上げ得る。
【００３２】
[0048]その上、いくつかの例では、１次元コンテキストパターンは、必ずしも、２次元コンテキストパターンから計算される必要があるとは限らない。そうではなく、１次元コンテキストパターンは、１次元コンテキストパターンとしてあらかじめ選択され、記憶され得る。これらの例でも、１次元コンテキストパターンは、現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し得る。
【００３３】
[0049]デジタルビデオデバイスは、デジタルビデオ情報をより効率的に符号化および復号するためのビデオ圧縮技法を実装する。ビデオ圧縮技法は、ＪＣＴ−ＶＣによって現在開発中のＨＥＶＣ規格などのビデオコーディング規格に従って定義され得る。ＨＥＶＣの規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）と呼ばれるビデオコーディングデバイスのモデルに基づく。ＨＭは、以前のビデオコーディング規格、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣの開発中に利用可能なビデオコーディングデバイスに対するビデオコーディングデバイスの能力の改善を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＥＶＣは３５個ものイントラ予測符号化モードを提供する。さらに、ＨＥＶＣ規格化の取り組みの一部として、ＪＣＴ−ＶＣは、ＨＥＶＣ規格のドラフトへの個々の変更が全体的コーディング性能にどのように影響を及ぼし得るかを評価するために使用され得るテスト条件を定義した。コーディング性能を評価するために使用される１つの基準は、いわゆるＢＤレートである。
【００３４】
[0050]「ＨＥＶＣワーキングドラフト７」または「ＷＤ７」と呼ばれるＨＥＶＣの最近のワーキングドラフト（ＷＤ）は、文書ＪＣＴＶＣ−Ｉ１００３＿ｄ４、Ｂｒｏｓｓら、「High efficiency video coding (HEVC) text specification draft 7」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのビデオコーディング共同研究部会（ＪＣＴ−ＶＣ）、第９回会合：スイス、ジュネーブ、２０１２年４月〜５月に記載されている。さらに、ＨＥＶＣの別の最近のワーキングドラフト、ワーキングドラフト９（ＷＤ９）は、文書ＪＣＴＶＣ−Ｋ１００３＿ｖ７、Ｂｒｏｓｓら、「High Efficiency Video Coding (HEVC) Text Specification Draft 9」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのビデオコーディング共同研究部会（ＪＣＴ−ＶＣ）、第１１回会合：中国、上海、２０１２年１０月に記載されている。ＷＤ９の最新バージョンは、http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v29.zipから見つけられる。
【００３５】
[0051]本開示の技法は、ＩＴＵ−Ｔ  Ｈ．２６４規格および今度のＨＥＶＣ規格に関して説明されるが、本開示の技法は、概して、任意のビデオコーディング規格に適用可能である。本出願では、例示のために、開発中のＨＥＶＣ規格の現在提案されている態様のいくつかに従うコーディングが説明される。ただし、本開示で説明される技法はまた、ＩＴＵ−Ｔ  Ｈ．２６４または他の規格に従って定義されるビデオコーディングプロセスあるいはプロプライエタリビデオコーディングプロセスなど、他のビデオコーディングプロセスのために有用であり、それらのプロセスに適用され得る。
【００３６】
[0052]ビデオシーケンスは、一般に、ピクチャとも呼ばれる一連のビデオフレームを含む。ピクチャのグループ（ＧＯＰ：group of pictures）は、概して、一連の１つまたは複数のビデオフレームを備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、ピクチャのうちの１つまたは複数のヘッダ中、または他の場所に含み得る。各フレームは複数のスライスを含み得る。ピクチャの各スライスは、それぞれのスライスのコーディングモードを記述するスライスシンタックスデータを含み得る。各スライスは複数のビデオブロックまたはコーディングユニットを含み得る。ビデオブロックは、固定サイズまたは可変サイズを有し得、指定のコーディング規格に応じてサイズが異なり得る。
【００３７】
[0053]ビデオブロックは、ビデオシーケンスに固有の冗長性を低減または除去するために、空間的（フレーム内）予測および／または時間的（フレーム間）予測技法を適用することによって符号化され得る。空間的予測は「イントラモード」（Ｉモード）と呼ばれることがあり、時間的予測は「インターモード」（ＰモードまたはＢモード）と呼ばれることがある。予測技法は、参照サンプルのブロックと呼ばれることもある、ビデオデータの予測ブロックを生成する。コーディングされるべき元のビデオデータのブロックが予測ブロックと比較される。ビデオデータの元のブロックと予測ブロックとの間の差分は残差データと呼ばれることがある。残差データは、一般に、予測ブロックのピクセル値とビデオデータの元のブロックのピクセル値との間の差分のアレイである。
【００３８】
[0054]変換、たとえば、離散コサイン変換（ＤＣＴ：discrete cosine transform）または概念的に同様の変換、整数変換、ウェーブレット変換、または他のタイプの変換が、複数の変換係数の対応するセットを生成するために、コーディングプロセス中に残差データに適用され得る。したがって、ビデオの元のブロックは、複数の変換係数に対して逆変換を実行し、残差データを予測ブロックに加算することによって復元され得る。複数の変換係数はまた、量子化され得る。量子化は、一般に、係数を表すために使用されるデータの量をできるだけ低減するために複数の変換係数が量子化され、さらなる圧縮を行うプロセスを指す。すなわち、複数の変換係数の値は、定義されたビット深度によるビットストリングとして表され得る。たとえば、量子化中にｎビット値がｍビット値に切り捨てられ得、ただし、ｍはｎよりも小さい。場合によっては、量子化は、低い値の複数の変換係数を０として表すことになり得る。量子化複数の変換係数は複数の変換係数レベルと呼ばれることがある。
【００３９】
[0055]量子化の後、量子化複数の変換係数は、たとえば、コンテンツ適応型可変長コーディング（ＣＡＶＬＣ：content adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、または確率間隔区分エントロピーコーディング（ＰＩＰＥ：probability interval partitioning entropy coding）などのエントロピーコーディング方法に従ってエントロピー符号化され得る。予測モードを定義するシンタックス要素などのシンタックス要素もエントロピーコーディングされ得る。ＣＡＶＬＣを実行するために、ビデオエンコーダは、送信されるべきシンボルのための可変長コードを選択し得る。ＶＬＣにおけるコードワードは、相対的により短いコードが優勢シンボルに対応し、より長いコードが劣勢シンボルに対応するように構成され得る。ＣＡＢＡＣを実行するために、ビデオエンコーダは、送信されるべきシンボルにコンテキストモデル内のコンテキストを割り当て得る。
【００４０】
[0056]いくつかのエントロピー符号化技法では、量子化複数の変換係数を走査して、エントロピー符号化され得る量子化複数の変換係数のシリアル化ベクトルを生成するために、あらかじめ定義された走査順序が使用され得る。したがって、予測ビデオコーディングに従って、ピクセル差分値を備える残差値は、エントロピーコーディングのためのシリアル化複数の変換係数（serialized transform coefficient）を生成するために、複数の変換係数に変換され、量子化され、走査され得る。
【００４１】
[0057]ビデオコーディングでは、一例として、ビデオフレームは１つまたは複数のスライスに区分され、スライスは、連続する整数個のコーディングユニットを含む。コーディングユニット（ＣＵ）は、概して、ビデオ圧縮のために様々なコーディングツールが適用される基本ユニットとして働く矩形画像領域を指す。概して、本開示の技法は、ＣＵのデータを変換し、量子化し、走査し、エントロピーコーディングすることに関する。ＣＵは、一般に正方形であり、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４などの他のビデオコーディング規格に記載されているいわゆる「マクロブロック」と同様であると見なされ得る。ＣＵは、ビデオサンプル値のアレイと見なされ得る。ビデオサンプル値は、画素、ピクセル、またはペルと呼ばれることもある。ＣＵは、通常、Ｙとして示されるルミナンス成分と、ＵおよびＶとして示される２つのクロマ成分とを有する。２つのクロマ成分は、それぞれ、ＣbおよびＣr成分として示されることもある。ＣＵのサイズは、水平方向および垂直方向のサンプルの数によって定義され得る。したがって、ＣＵはＮ×ＮまたはＮ×Ｍ  ＣＵと記述され得る。本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有する必要があるとは限らない。たとえば、ブロックはＮ×Ｍピクセルを備え得、ただし、Ｍは必ずしもＮに等しいとは限らない。
【００４２】
[0058]より良好なコーディング効率を達成するために、ＣＵはビデオコンテンツに応じて可変サイズを有し得る。ＨＥＶＣによれば、ビットストリーム内のシンタックスデータは、サンプルの数に関してフレームまたはピクチャのための最大のＣＵである最大コーディングユニット（ＬＣＵ：largest coding unit）を定義し得る。一般に、ＬＣＵは６４×６４ルーマサンプルを含むが、ＬＣＵのサイズはコーディング適用例に応じて変動し得る。ＬＣＵは「コーディングツリーユニット」と呼ばれることもある。他の寸法のＣＵは、ＬＣＵをサブＣＵに再帰的に区分することによって生成され得る。サブＣＵへのＬＣＵの区分は、「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造を使用して実行され得る。したがって、ＬＣＵはツリーブロックと呼ばれることもある。４分木区分によれば、ＬＣＵなど、４分木のルートノードは、４つのより小さいノードに分割され得、各子ノードは、次に、別の４つのより小さいノードにさらに分割され得る。ビットストリームのためのシンタックスデータは、ＣＵ深度と呼ばれる、ＬＣＵが分割され得る最大回数を定義し得る。それに応じて、ビットストリームは最小コーディングユニット（ＳＣＵ：smallest coding unit）をも定義し得る。一般に、ＳＣＵは８×８ルーマサンプルを含む。したがって、一例では、４つの３２×３２ＣＵは、６４×６４ＬＣＵを４つのサブＣＵに区分することによって生成され得、３２×３２ＣＵの各々は１６個の８×８ＣＵにさらに区分され得る。
【００４３】
[0059]ＣＵは、１つまたは複数の関連する予測ユニット（ＰＵ：prediction unit）および／または変換ユニット（ＴＵ）を含み得る。概して、ＰＵは、ＣＵのためのビデオデータの予測ブロックを生成するために使用されるデータを含む。ＰＵは「予測パーティション」と呼ばれることもある。ＣＵに関連するシンタックスデータは、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。ＰＵは、形状が正方形または非正方形であり得る。ＰＵ中に含まれるタイプデータは、ＣＵが、スキップモード符号化またはダイレクトモード符号化されるのか、イントラ予測モード符号化されるのか、あるいはインター予測モード符号化されるのかに応じて異なり得る。たとえば、ＣＵがイントラモード符号化されるべきであるとき、ＰＵは、イントラ予測モードを記述するデータを含み得、ＣＵがインターモード符号化されるべきであるとき、ＰＵは、ＰＵのための動きベクトルを定義するデータを含み得る。ＰＵのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリストを記述し得る。ＣＵのＰＵを使用した予測の後、ビデオコーダはＣＵの残差データを計算し得る。
【００４４】
[0060]ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００４５】
[0061]上記で説明されたように、残差データをピクセル領域から変換領域に変換するために、残差データに変換が適用され得る。ＨＥＶＣ規格は、ＣＵごとに異なり得るＴＵに従う変換を可能にする。ＴＵは、一般に、所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵのサイズはＣＵのサイズと同じであり得るか、またはＣＵは複数のＴＵに区分され得る。ＴＵは、一般にＰＵと同じサイズであるかまたはＰＵよりも小さい。ＨＥＶＣでは、ＣＵに関連するシンタックスデータは、４分木に従ってＣＵを１つまたは複数のＴＵに区分することを記述し得る。
【００４６】
[0062]概して、ＴＵは、残差データを複数の変換係数に変換するプロセスのために使用される。ＴＵは、形状が正方形または非正方形であり得る。たとえば、８×８残差値のブロックは８×８複数の変換係数のセットに変換され得る。複数の変換係数のこのセットは、より一般的には変換ブロックと呼ばれることがある。たとえば、ある変換は、サンプルの１６×１６アレイに関連する残差値に対して実行され得るか、または、ある変換は、サンプルの４つの８×８アレイの各々に対して実行され得る。より大きいＴＵは、概して、再構成画像中のより知覚できる「ブロッキネス」とともにより多くの圧縮を与えるが、より小さいＴＵは、概して、あまり知覚できない「ブロッキネス」とともにより少ない圧縮を与える。ＴＵサイズの選択はレートひずみ最適化分析に基づき得る。利用可能なＴＵサイズは、３２×３２、１６×１６、および８×８ＴＵを含み得る。本開示は、一般に、ＣＵのコーディングノードを指すために「ビデオブロック」という用語を使用することに留意されたい。いくつかの特定の場合において、本開示は、コーディングノードならびにＰＵおよびＴＵを含む、ツリーブロック、すなわち、ＬＣＵまたはＣＵを指すためにも「ビデオブロック」という用語を使用し得る。
【００４７】
[0063]概念的に、変換ブロックまたはＴＵは複数の変換係数の２次元（２Ｄ）行列であり得る。上記で説明されたように、ビデオコーダは、変換ブロックに対して量子化演算を実行し得る。量子化複数の変換係数を走査して、量子化複数の変換係数のシリアル化ベクトルを生成するために、あらかじめ定義された走査順序が使用され得る。量子化複数の変換係数のシリアル化ベクトルは、次いで、さらなる圧縮を行うためにエントロピー符号化され得る。
【００４８】
[0064]いくつかの例では、１６×１６ＴＵおよび３２×３２ＴＵでは、量子化複数の変換係数のシリアル化ベクトルを生成するために４×４サブブロック走査が使用される。たとえば、サブブロックは、右上から左下への走査を使用して逆方向に走査される。また、サブブロック内では、複数の変換係数は、右下から左上への走査を使用して逆方向に走査される。このタイプの走査は対角４×４サブブロック走査と呼ばれることがある。いくつかの例では、８×８ＴＵも、１つの可能な走査として対角４×４サブブロック走査を使用し得る。図１は、ビデオブロックのための係数グループおよび走査の一例を示す概念図である。図１は、サブブロックの各々に対して対角走査が実行される、４つの４×４サブブロックに分割された８×８ビデオブロックを示している。サブブロックは係数グループと呼ばれることもある。図１では、各係数グループは、より太い内側の線を使用して識別および分離されている。図１に示されているように、４つの係数グループがあり、各係数グループは１６個の係数を含む。図１におけるサブブロック内の走査は、矢印を使用して示されている。
【００４９】
[0065]対角４×４サブブロック走査に加えて、モード依存係数走査が、いくつかの８×８イントラ予測モードのための非正方形水平および垂直走査を可能にする。８×８ＴＵの非正方形水平および垂直走査では、係数グループは非正方形水平走査のための８×２矩形（すなわち、走査順序における１６個の連続する係数）として定義される。同様にして、係数グループは非正方形垂直走査のための２×８矩形として定義される。図２Ａ〜図２Ｂに、それぞれ、８×８ＴＵの水平走査および垂直走査をもつ非正方形係数グループを示す。図２Ａ〜図２Ｂでは、各係数グループは、より太い内側の線を使用して識別および分離されている。図２Ａ〜図２Ｂに示されているように、４つの係数グループがあり、各係数グループは１６個の係数を含む。図２Ａでは、サブブロックは、右から左への走査を使用して走査される。図２Ｂに示されているように、サブブロックは、下から上への走査を使用して走査される。図２Ａ〜図２Ｂにおけるサブブロック内の走査は、矢印を使用して示されている。ＨＥＶＣ  ＷＤ７に従って設計されたビデオコーダは、標準４×４サブブロック係数グループに対するデータアクセスとは異なる非正方形係数グループに対するデータアクセスを必要とし得ることに留意されたい。これは、ビデオコーダの実装中に追加のハードウェアおよびソフトウェア複雑さを課し得る。
【００５０】
[0066]したがって、対角４×４サブブロック走査ならびに非正方形水平および垂直走査に加えて、水平および垂直サブブロック走査も、非正方形水平および垂直走査の代替として８×８ＴＵの４×４サブブロックのために提案された。サブブロック水平および垂直走査の例は、各々が参照により本明細書に組み込まれる、（１）Ｒｏｓｅｗａｒｎｅ，Ｃ．、Ｍａｅｄａ，Ｍ．「Non-CE11: Harmonisation of 8x8 TU residual scan」ＪＣＴ−ＶＣ  Ｃｏｎｔｒｉｂｕｔｉｏｎ  ＪＣＴＶＣ−Ｈ０１４５、（２）Ｙｕ，Ｙ．、Ｐａｎｕｓｏｐｏｎｅ，Ｋ．、Ｌｏｕ，Ｊ．、Ｗａｎｇ，Ｌ．「Adaptive Scan for Large Blocks for HEVC；ＪＣＴ−ＶＣ  Ｃｏｎｔｒｉｂｕｔｉｏｎ  ＪＣＴＶＣ−Ｆ５６９、（３）２０１２年７月１７日に出願された米国特許出願第１３／５５１，４５８号に記載されている。８×８ＴＵのために使用され得る２つの例示的な水平および垂直４×４サブブロック走査が図３Ａ〜３Ｂに示されている。図３Ａ〜図３Ｂでは、各係数グループは、より太い内側の線を使用して識別および分離されている。図１に示されたグループと同様に、図３Ａ〜３Ｂでは、右上から左下への走査を使用して逆方向に走査される４つの４×４係数グループがある。サブブロック内の走査は、矢印を使用して示されている。
【００５１】
[0067]提案ＪＣＴＶＣ−Ｈ０１４５に従って、非正方形水平および垂直走査の代替として水平４×４サブブロック走査および垂直４×４サブブロック走査を使用しながら、８×８ＴＵの可能な走査として、対角４×４サブブロック、水平４×４サブブロック走査、および垂直４×４サブブロック走査のセットを使用することが、８×８ＴＵのための可能な走査として、対角４×４サブブロック、水平８×２矩形走査、および垂直２×８矩形走査のセットを使用することと比較して、イントラ構成について０．３％の性能ＢＤレート損失を生じたことに留意されたい。すなわち、図２Ａ〜図２Ｂに示された走査の代わりに図３Ａ〜図３Ｂに示された走査を使用することは、いくつかのテストケースにおいて０．３％だけコーディング性能を減少させた。
【００５２】
[0068]ビデオコーディングの例では、各サブブロックは、５つのコーディングパス、すなわち、（１）有意性パス、（２）１超（greater than one）パス、（３）２超（greater than two）パス、（４）符号パス、および（５）係数レベル剰余（coefficient level remaining）パスを使用してコーディングされる。有意性コーディングは、サブブロック内の係数のいずれかが１以上の値を有するかどうかを示すためのシンタックス要素を生成することを指す。すなわち、１以上の値をもつ係数は有意と見なされる。有意性のコーディングは２つの部分を含む。有意性コーディングの第１の部分では、非０係数がサブブロック中にあるかどうかを示すシンタックス要素が、各係数グループ（すなわち、４×４サブブロック）についてコーディングまたは推論される。そのようなシンタックス要素の一例は係数グループフラグ（ＣＧＦ：coefficient group flag）と呼ばれる。ＨＥＶＣ  ＷＤ７では、ＣＧＦはシンタックス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇによって表され得る。ＨＥＶＣ  ＷＤ９では、係数グループフラグのシンタックス要素名は、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇからｃｏｄｅｄ＿ｓｕｂ＿ｂｌｏｃｋ＿ｆｌａｇ（係数グループが４×４サブブロックであるので、ＣＳＢＦと呼ばれることもある）に変更された。本開示は、係数グループフラグをＣＧＦと呼び、ＣＧＦはｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇシンタックス要素またはｃｏｄｅｄ＿ｓｕｂ＿ｂｌｏｃｋ＿ｆｌａｇシンタックス要素のいずれかに対応し得る。
【００５３】
[0069]有意コーディングの第２の部分では、ＣＧＦが１である（すなわち、非０係数がサブブロック中にある）場合、複数の変換係数が有意（すなわち、１以上の値）であるか否かを示すシンタックス要素が係数グループ中の各複数の変換係数について生成される。そのようなシンタックス要素の例は複数の有意性シンタックス要素と呼ばれ、それらの例は有意係数フラグである。ＨＥＶＣ  ＷＤ７およびＷＤ９では、有意係数フラグはシンタックス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇによって表される。
【００５４】
[0070]言い換えれば、係数の有意性のコーディングでは、２つのタイプのシンタックス要素がコーディングされる。非０係数がコーディンググループ中にあるかどうかを示す第１のシンタックス要素（たとえば、ＣＧＦ）が各コーディンググループ（すなわち、サブブロック）についてコーディングされる。第１のシンタックス要素が、少なくとも１つの非０係数がコーディンググループ中にあることを示す場合、係数が０であるのか非０係数であるのかを示す第２のシンタックス要素（たとえば、複数の有意性シンタックス要素またはｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇ）がコーディンググループ中の各係数についてコーディングされる。
【００５５】
[0071]１超パスは、有意係数の絶対値が１よりも大きいかどうかを示すためのシンタックス要素を生成する。一例では、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ（略して「ｇｒ１Ｆｌａｇ」）と呼ばれるシンタックス要素は、有意係数が１よりも大きい絶対値を有するかどうかに関する指示を与える。同様にして、２超パスは、１よりも大きい係数の絶対値が２よりも大きいかどうかを示すためのシンタックス要素を生成する。一例では、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇ（略して「ｇｒ２Ｆｌａｇ」）と呼ばれるシンタックス要素は、１よりも大きい係数が２よりも大きい絶対値を有するかどうかに関する指示を与える。
【００５６】
[0072]符号パスは、有意係数についての符号情報を示すためのシンタックス要素を生成する。一例では、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ（略して「ｓｉｇｎＦｌａｇ」）と呼ばれるシンタックス要素は有意係数についての符号情報を示し得る。たとえば、ｓｉｇｎＦｌａｇのための値０は正号を示し得、値１は負号を示し得る。係数レベル剰余パスは、複数の変換係数レベルの残りの絶対値（たとえば、剰余値）を示すシンタックス要素を生成する。一例では、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎ（略して「ｌｅｖｅｌＲｅｍ」）と呼ばれるシンタックス要素がこの指示を与え得る。一例として、ｇｒ２Ｆｌａｇが所与の係数について存在しない限り、ｌｅｖｅｌＲｅｍシンタックス要素はシグナリングされ得ないが、そのような限定が常に必要とされるとは限らない。一例では、ｌｅｖｅｌの値をもつ係数は、（ａｂｓ（ｌｅｖｅｌ）−ｘ）としてコーディングされ得、ただし、ｘの値は、ｇｒ１Ｆｌａｇおよびｇｒ２Ｆｌａｇの存在に依存する。たとえば、ｇｒ２Ｆｌａｇが存在する場合、ｘは３に等しくなり得る。いくつかの例では、ｌｅｖｅｌの値は、剰余があるいずれの係数についても（ａｂｓ（ｌｅｖｅｌ）−３）としてコーディングされ得る。５パス手法は、複数の変換係数をコーディングするために使用され得る１つの例示的な技法にすぎず、本明細書で説明される技法は、他の技法に等しく適用可能であり得ることに留意されたい。
【００５７】
[0073]さらに、上記で説明されたシンタックス要素に加えて、ＴＵ内の最後有意係数の位置がビットストリーム中でシグナリングされ得る。ＴＵ中の最後有意係数の位置は、ＴＵに関連する走査順序に依存する。最後有意係数を識別するための走査順序は、上記で説明された走査順序のうちのいずれか、または別の所定の走査順序であり得る。ＨＥＶＣ  ＷＤ７では、ブロック内の最後有意係数の位置は、ｘ座標値とｙ座標値とを指定することによって示される。ｘ座標値は、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｘ＿ｐｒｅｆｉｘシンタックス要素とｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｘ＿ｓｕｆｆｉｘシンタックス要素とを使用して示され得る。ｙ座標値は、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｙ＿ｐｒｅｆｉｘシンタックス要素とｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｙ＿ｓｕｆｆｉｘシンタックス要素とを使用して示され得る。
【００５８】
[0074]このようにして、上記で説明されたシンタックス要素は、複数の変換係数のいわゆる有意性マップをシグナリングするために使用され得、有意性マップは、ＴＵに関する有意係数の位置を示した。図４は、変換ブロック中の複数の変換係数と変換マップに関連する有意性マップとの間の関係を示す概念図である。図４に示されているように、有意性マップは、変換ブロック中の有意係数値、すなわち、０よりも大きい値の各インスタンスを示す「１」を含む。また、この例では、ＣＦＧの値は、少なくとも１つの非０係数がコーディンググループ（すなわち、サブブロック）中にあることを示す「１」である。
【００５９】
[0075]たとえば、図４中の左側のサブブロックは例示的な複数の変換係数（たとえば、量子化複数の変換係数）を示す。図示のように、サブブロック中に少なくとも１つの非０係数があり、したがってＣＦＧは１である。また、図４中の右側の有意性マップは、サブブロック中の各複数の変換係数のための複数の有意性シンタックス要素（たとえば、有意係数フラグ）を含む。たとえば、すべての対応する複数の変換係数のための有意係数フラグ値１は、これらの複数の変換係数の値が０でないことを示し（すなわち、非０変換係数）、すべての対応する複数の変換係数のための値０は、これらの複数の変換係数の値が０であることを示す。
【００６０】
[0076]ＨＥＶＣでは、上記で説明されたｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇおよびｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇなど、量子化複数の変換係数に関係するシンタックス要素および他のシンタックス要素は、ＣＡＢＡＣ（コンテキスト適応型バイナリ算術コーディング）を使用してエントロピーコーディングされ得る。シンタックス要素にＣＡＢＡＣコーディングを適用するために、「ビン」と呼ばれる一連の１つまたは複数のビットを形成するためにシンタックス要素に２値化が適用され得る。さらに、コーディングコンテキストはシンタックス要素のビンに関連付けられ得る。コーディングコンテキストは、特定の値を有するビンをコーディングする確率を識別し得る。たとえば、コーディングコンテキストは、（この事例では、「優勢シンボル」の一例を表す）０の値のビンをコーディングする０．７の確率と、１の値のビンをコーディングする０．３の確率とを示し得る。コーディングコンテキストを識別した後に、コンテキストに基づいてビンが算術的にコーディングされ得る。場合によっては、特定のシンタックス要素またはそのビンに関連するコンテキストは、他のシンタックス要素またはコーディングパラメータに依存し得る。
【００６１】
[0077]たとえば、ＣＧＦコンテキスト導出は、対応する係数グループの走査順序に依存する。たとえば、対角４×４サブブロック走査に従って走査される係数グループでは（たとえば、１６×１６ＴＵおよび３２×３２ＴＵおよびいくつかの８×８ＴＵの場合）、ＣＧＦコンテキスト（すなわち、シンタックス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇのコンテキスト）は、係数グループの右側のサブブロックのＣＧＦ（ＣＧＦR）と、係数グループの下側のサブブロックのＣＧＦ（ＣＧＦB）とに依存する。図２Ａ〜図２Ｂに示された非正方形水平および垂直走査では（たとえば、８×８ＴＵの場合）、係数グループのＣＧＦコンテキストは、前にコーディングされた係数グループのＣＧＦのみに依存する。水平走査の場合、前のコード化係数グループは係数グループの下側のコード化係数グループを指す。垂直走査の場合、前の係数グループは係数グループの右側の係数グループを指す。
【００６２】
[0078]ＨＥＶＣ  ＷＤ７では、ＣＧＦのコンテキスト導出は、対角４×４サブブロック走査（すなわち、ＣＧＦRとＣＧＦBとに依存する）と非正方形水平および垂直走査（すなわち、前のＣＧＦのみに依存する）とでは異なるので、４×４対角サブブロック係数グループのためのＣＧＦコンテキスト導出と、非正方形水平および垂直走査のためのＣＧＦコンテキスト導出とのために異なる論理パスが必要とされ、これは、同じくハードウェアおよびソフトウェア複雑さを課し得ることに留意されたい。
【００６３】
[0079]ＨＥＶＣ  ＷＤ７では、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素に割り当てられるコンテキストは、（１）４×４サブブロック内の複数の変換係数の位置、（２）現在のサブブロックの右側のサブブロックのＣＧＦ（ＣＧＦR）および現在のサブブロックの下側のサブブロックのＣＧＦ（ＣＧＦB）、ならびに（３）サブブロックがＤＣ係数を含んでいるかどうかに依存する。その全体が参照により本明細書に組み込まれる、Ｋｕｍａｋｕｒａ，Ｔ．、Ｆｕｋｕｓｈｉｍａ，Ｓ．「Non-CE3: Simplified context derivation for significant map」ＪＣＴ−ＶＣ  Ｃｏｎｔｒｉｂｕｔｉｏｎ  ＪＣＴＶＣ−Ｉ０２９６は、４×４サブブロック内の係数が、ＣＧＦRおよびＣＧＦBの値とサブブロック内の係数の位置とに応じてコンテキストを割り当てられる、一例を与えている。
【００６４】
[0080]図５Ａ〜図５Ｄに、ＣＧＦRとＣＧＦBとに応じた４×４サブブロックの有意係数フラグのコンテキスト割当ての４つの異なるパターンを示す。図５Ａ〜図５Ｄでは、コンテキスト番号付けが０から開始しているが、これは説明のためであり、ＨＥＶＣ  ＷＤ７において使用される実際のコンテキスト番号を反映しておらず、相対的なコンテキスト番号付けにすぎないことに留意されたい。図５Ａ〜図５Ｄに示されているように、各コンテキストパターンは１６個のコンテキスト値を含み、各コンテキスト値は、それぞれの位置にある係数に対応する。さらに、図５Ａ〜図５Ｄに示されているように、コンテキストパターンは、ＣＧＦRおよびＣＧＦBの値に基づいて判断される。このようにして、図５Ａ〜図５Ｄにおけるパターンは、コンテキストが、４×４サブブロック内の複数の変換係数の位置とＣＧＦRおよびＣＧＦBの値とに基づいて有意係数フラグに割り当てられる、一例を示す。図５Ａ〜図５Ｄに示されたコンテキスト割当ては、走査を使用して生成されたベクトル内の有意係数のあり得るロケーションに基づいて、図３Ａ〜図３Ｂに示された水平または垂直サブブロック走査のために最適ではないことに留意されたい。
【００６５】
[0081]さらに、一例では、コンテキストパターン内のコンテキストの値は、対応するサブブロックがＤＣ係数を含むかどうかに基づいて変更され得る。ＤＣ係数は、変換の第１の係数であり得、一例として、概して、ブロック全体中の平均量エネルギーを示し得る。ルーマ複数の変換係数では、４×４サブブロックがＤＣ係数を含んでいない場合、コンテキストオフセットが適用され得る。いくつかの例では、コンテキストオフセット３が適用される。一例として、４×４サブブロックがＤＣ係数を含まず、コンテキストパターンから導出されたコンテキスト割当てが２である場合、使用される実際のコンテキストは５であり得る。言い換えれば、コンテキスト導出プロセスはどちらの場合もまったく同じであり得る（すなわち、パターンは、ＣＧＦRおよびＣＧＦBの値に基づいてパターンのセットから選択される）が、コンテキストの異なるセットがＤＣサブブロックと非ＤＣサブブロックとのために使用される。すなわち、ＤＣブロックと非ＤＣブロックは同じコンテキストを共有しない。
【００６６】
[0082]本開示は、「ＤＣサブブロック」という用語を、ブロックのＤＣ係数を含む、ブロック（たとえば、ＴＵ）のサブブロックを指すために使用する。たとえば、ＴＵのＤＣ係数が左上端の係数であると仮定すると、ＤＣ係数を含むＴＵの左上端のサブブロックはＤＣサブブロックと呼ばれることがある。さらに、一例では、クロマ複数の変換係数の場合、４×４サブブロックがＤＣ係数を含んでいるかどうかに基づくコンテキストオフセット判断が適用されない。すなわち、コンテキストは、クロマ複数の変換係数についてＤＣサブブロックと非ＤＣサブブロックとのために共有される。したがって、場合によっては、３つのコンテキストのみが、クロマ成分に関連する複数の変換係数のために使用される。さらに、場合によっては、ＤＣ係数は、すべてのＴＵサイズのために共有される別個のコンテキストを常に使用し得る。さらに、ＨＥＶＣ  ＷＤ７では、８×８ＴＵのための有意性マップコンテキスト導出は、コンテキスト割当てのためにスケーリングされた８×８テーブルを使用し、したがって、８×８ＴＵのための有意性マップコーディングは、１６×１６ＴＵおよび３２×３２ＴＵのための有意性マップコンテキスト導出と統合されない。
【００６７】
[0083]本開示は、コーディンググループフラグシンタックス要素（すなわち、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇまたはｃｏｄｅｄ＿ｓｕｂ＿ｂｌｏｃｋ＿ｆｌａｇ）および有意係数シンタックス要素（すなわち、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇ）など、変換ブロック中に含まれる複数の変換係数に関連するシンタックス要素をコーディングするためのいくつかの技法について説明する。特に、本開示は、図３Ａ〜図３Ｂにおける走査順序が、図２Ａ〜図２Ｂに示された非正方形係数グループの代替として使用され得る技法について説明する。さらに、本開示は、複数の変換係数に関連するシンタックス要素のためのコンテキスト導出技法について説明し、本技法は、図３Ａ〜図３Ｂに示されたサブブロック走査の特性に基づく。一例では、コンテキスト導出技法は、図３Ａ〜図３Ｂに示された走査が、図２Ａ〜図２Ｂに示された走査の代わりに使用されるとき、上記で説明されたＢＤレート性能損失を緩和し得る。
【００６８】
[0084]図６は、本開示で説明される技法を利用してコンテキストを割り当てるために構成され得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図６に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを生成するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。ただし、本開示の技法は、必ずしもワイヤレス適用例または環境に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするために構成され得る。
【００６９】
[0085]図６の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ソースデバイス１２において、ビデオソース１８は、たとえばビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、本開示で説明される技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ１２によって符号化され得る。符号化ビデオデータは、リンク１６を介してソースデバイス２０の出力インターフェース２２を介して宛先デバイス１４に直接送信され得る。符号化ビデオデータは、さらに（または代替として）、復号および／または再生のための宛先デバイス１４または他のデバイスによる後のアクセスのためにストレージデバイス３２上に記憶され得る。
【００７０】
[0086]リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータをトランスポートすることが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、リンク１６は、ソースデバイス１２が、符号化ビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルあるいは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得る、ルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００７１】
[0087]ストレージデバイス３２は、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散したまたはローカルでアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイス３２は、ソースデバイス１２によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイス３２から、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を介して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適である、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。
【００７２】
[0088]図６の例では、宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３４とを含む。場合によっては、入力インターフェース２８は、受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を介してまたはストレージデバイス３２から符号化ビデオデータを受信する。リンク１６を介して通信され、またはストレージデバイス３２上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０など、ビデオデコーダが使用するためのビデオエンコーダ２０によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体上に記憶されるか、またはファイルサーバ上に記憶される符号化ビデオデータとともに含まれ得る。
【００７３】
[0089]ディスプレイデバイス３４は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み得、また、外部ディスプレイデバイスとインターフェースするために構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。ディスプレイデバイス３４は、復号されたビデオデータをユーザに対して表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００７４】
[0090]ビデオエンコーダ２０およびビデオデコーダ３０は、上記で説明されたように、現在開発中のＨＥＶＣ規格などのビデオ圧縮規格に従って動作し得、概して、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、ＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。さらに、ビデオエンコーダ２０およびビデオデコーダ３０は、本明細書で説明される技法を組み込むために変更されたビデオ圧縮規格に従って動作し得る。
【００７５】
[0091]図６には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ：user datagram protocol）などの他のプロトコルに準拠し得る。
【００７６】
[0092]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（ＣＯＤＥＣ）の一部として統合され得る。
【００７７】
[0093]図７は、本開示で説明する技法を実装し得る例示的なビデオエンコーダ２０を示すブロック図である。図８の例では、ビデオエンコーダ２０は、モード選択ユニット３５と、予測処理ユニット４１と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化処理ユニット５４と、エントロピー符号化ユニット５６とを含む。予測処理ユニット４１は、動き推定ユニット４２と、動き補償ユニット４４と、イントラ予測モジュール４６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化処理ユニット５８と、逆変換モジュール６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ（図７に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。追加のループフィルタ（ループ内またはループ後）もデブロッキングフィルタに加えて使用され得る。予測処理ユニット４１および変換処理ユニット５２は、上記で説明されたＰＵおよびＴＵと混同されるべきでないことに留意されたい。
【００７８】
[0094]図７に示されているように、ビデオエンコーダ２０はビデオデータを受信し、モード選択ユニット３５はデータをビデオブロックに区分する。この区分は、たとえば、ＬＣＵおよびＣＵの４分木構造に従って、スライス、タイル、または他のより大きいユニットへの区分、ならびにビデオブロック区分をも含み得る。ビデオエンコーダ２０は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックに（および、場合によっては、タイルと呼ばれるビデオブロックのセットに）分割され得る。予測処理ユニット４１は、誤り結果（たとえば、コーディングレートおよびひずみレベル）に基づいて現在のビデオブロックのために、複数のイントラコーディングモードのうちの１つ、または複数のインターコーディングモードのうちの１つなど、複数の可能なコーディングモードのうちの１つを選択し得る。予測処理ユニット４１は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器５０に与え、参照ピクチャとして使用するための符号化ブロックを再構成するために加算器６２に与え得る。
【００７９】
[0095]予測処理ユニット４１内のイントラ予測ユニット４６は、空間圧縮を行うために、コーディングされるべき現在のブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対する現在のビデオブロックのイントラ予測コーディングを実行し得る。予測処理ユニット４１内の動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を行うために、１つまたは複数の参照ピクチャ中の１つまたは複数の予測ブロックに対する現在のビデオブロックのインター予測コーディングを実行する。
【００８０】
[0096]動き推定ユニット４２は、ビデオシーケンスの所定のパターンに従ってビデオスライスのためのインター予測モードを判断するために構成され得る。所定のパターンは、シーケンス中のビデオスライスをＰスライスまたはＢスライスに指定し得る。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。
【００８１】
[0097]予測ブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって判断され得るピクセル差分に関して、コーディングされるべきビデオブロックのＰＵにぴったり一致することが発見されるブロックである。いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに関して動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００８２】
[0098]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００８３】
[0099]動き補償ユニット４４によって実行される動き補償は、動き推定によって判断された動きベクトルに基づいて予測ブロックをフェッチまたは生成すること、場合によってはサブピクセル精度への補間を実行することを伴い得る。現在のビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、参照ピクチャリストのうちの１つにおいて動きベクトルが指す予測ブロックの位置を特定し得る。ビデオエンコーダ２０は、コーディングされている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって残差ビデオブロックを形成する。ピクセル差分値は、ブロックの残差データを形成し、ルーマとクロマの両方の差分成分を含み得る。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。動き補償ユニット４４はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するための、ビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【００８４】
[0100]イントラ予測ユニット４６は、上記で説明されたように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測ユニット４６は、現在のブロックを符号化するために使用すべきイントラ予測モードを判断し得る。いくつかの例では、イントラ予測ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化し得、イントラ予測ユニット４６（または、いくつかの例では、モード選択ユニット３５）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。たとえば、イントラ予測ユニット４６は、様々なテストされるイントラ予測モードのためにレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を判断する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを判断するために、様々な符号化ブロックのひずみおよびレートから比を計算し得る。
【００８５】
[0101]いずれの場合も、ブロックのためのイントラ予測モードを選択した後に、イントラ予測ユニット４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に与え得る。エントロピー符号化ユニット５６は、本明細書で説明されるエントロピー技法に従って、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、送信ビットストリーム中に、複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックのための符号化コンテキストの定義と、コンテキストの各々のために使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および修正されたイントラ予測モードインデックステーブルの指示とを含み得る、構成データを含め得る。
【００８６】
[0102]予測処理ユニット４１が、インター予測またはイントラ予測のいずれかを介して、現在のビデオブロックのための予測ブロックを生成した後、ビデオエンコーダ２０は、現在のビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロックにおける残差ビデオデータは、１つまたは複数のＴＵに含まれ得、変換処理ユニット５２に適用され得る。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を使用して、残差ビデオデータを残差複数の変換係数に変換し得る。変換処理ユニット５２は、ピクセル領域からの残差ビデオデータを周波数領域などの変換領域に変換し得る。場合によっては、変換処理ユニット５２は、（水平方向と垂直方向の両方における）２次元（２Ｄ）変換をＴＵ中の残差データに適用し得る。いくつかの例では、変換処理ユニット５２は、代わりに、ＴＵの各々中の残差データに、水平方向１Ｄ変換を適用すること、垂直方向１Ｄ変換を適用すること、または変換を適用しないことがある。
【００８７】
[0103]変換処理ユニット５２は、得られた複数の変換係数を量子化処理ユニット５４に送り得る。量子化処理ユニット５４は、ビットレートをさらに低減するために複数の変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深さを低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化処理ユニット５４は、次いで、量子化複数の変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【００８８】
[0104]上記で説明されたように、変換ブロックに対して実行される走査は変換ブロックのサイズに基づき得る。量子化処理ユニット５４および／またはエントロピー符号化ユニット５６は、図１、図２Ａ〜図２Ｂ、および図３Ａ〜３Ｂに関して上記で説明されたサブブロック走査の任意の組合せを使用して、８×８、１６×１６、および３２×３２変換ブロックを走査し得る。一例では、３２×３２変換ブロックおよび１６×１６変換ブロックは、図１に関して上記で説明された４×４対角サブブロック走査を使用して走査され得、８×８変換ブロックは、図１および図３Ａ〜図３Ｂに関して上記で説明された４×４サブブロック走査を使用して走査され得る。２つ以上の走査が変換ブロックのために利用可能であるとき、エントロピー符号化ユニット５６は、変換ブロックに対応する予測ユニットに関連する予測モードなど、変換ブロックに関連するコーディングパラメータに基づいて走査を選択し得る。エントロピー符号化ユニット５６に関するさらなる詳細は、図８に関して以下で説明される。
【００８９】
[0105]逆量子化処理ユニット５８および逆変換処理ユニット６０は、それぞれ逆量子化および逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するためにピクセル領域において残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックを参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための参照ブロックを生成する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット４２と動き補償ユニット４４とによって参照ブロックとして使用され得る。
【００９０】
[0106]量子化の後に、エントロピー符号化ユニット５６は量子化複数の変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングあるいは別のエントロピー符号化方法または技法を実行し得る。エントロピー符号化ユニット５６によるエントロピー符号化の後に、符号化ビットストリームは、ビデオデコーダ３０に送信されるか、あるいはビデオデコーダ３０が後で送信するかまたは取り出すためにアーカイブされ得る。エントロピー符号化ユニット５６はまた、コーディングされている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。エントロピー符号化ユニット５６は、ＣＡＢＡＣを使用して、上記で説明された、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇ、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇ、およびｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇシンタックス要素などのシンタックス要素をエントロピー符号化し得る。
【００９１】
[0107]図８は、本開示で説明される技法を実装し得る例示的なエントロピー符号化ユニット５６を示すブロック図である。図８に示されたエントロピー符号化ユニット５６はＣＡＢＡＣエンコーダであり得る。例示的なエントロピー符号化ユニット５６は、２値化ユニット５０２と、バイパス符号化エンジン５０４と正規符号化エンジン５０８とを含む算術符号化ユニット５１０と、コンテキストモデリングユニット５０６とを含み得る。
【００９２】
[0108]エントロピー符号化ユニット５６は、上記で説明されたｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇまたはｃｏｄｅｄ＿ｓｕｂ＿ｂｌｏｃｋ＿ｆｌａｇシンタックス要素のいずれか、ならびにｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇ、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ、およびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎシンタックス要素など、１つまたは複数のシンタックス要素を受信し得る。２値化ユニット５０２は、シンタックス要素を受信し、ビンストリング（すなわち、バイナリストリング）を生成する。２値化ユニット５０２は、たとえば、ビンストリングを生成するために、固定長コーディング、単項コーディング、短縮単項コーディング、短縮ライスコーディング、ゴロムコーディング、指数ゴロムコーディング、およびゴロムライスコーディングといった技法のうちのいずれか１つまたは組合せを使用し得る。さらに、場合によっては、２値化ユニット５０２は、シンタックス要素をバイナリストリングとして受信し、ビン値を単にパススルーし得る。一例では、２値化ユニット５０２は、シンタックス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇを受信し、ビンストリングを生成する。
【００９３】
[0109]算術符号化ユニット５１０は、２値化ユニット５０２からビンストリングを受信し、そのビンストリングに対して算術符号化を実行するために構成される。図８に示されているように、算術符号化ユニット５１０は、バイパス経路または正規コーディング経路からビン値を受信し得る。バイパス経路に従うビン値は、バイパスコーディングされたものとして識別されるビン値であり得、正規符号化経路に従うビン値は、ＣＡＢＡＣコーディングされたものとして識別され得る。上記で説明されたＣＡＢＡＣプロセスに従って、算術符号化ユニット５１０がバイパス経路からビン値を受信した場合、バイパス符号化エンジン５０４は、ビン値に割り当てられた適応型コンテキストを利用せずに、ビン値に対して算術符号化を実行し得る。一例では、バイパス符号化エンジン５０４は、ビンの可能な値について等しい確率を仮定し得る。
【００９４】
[0110]算術符号化ユニット５１０が正規経路を介してビン値を受信した場合、コンテキストモデリングユニット５０６は、正規符号化エンジン５０８が、コンテキストモデリングユニット５０６によって与えられたコンテキスト割当てに基づいて算術符号化を実行し得るように、コンテキスト変数（たとえば、コンテキスト状態）を与え得る。コンテキスト割当ては、今度のＨＥＶＣ規格などのビデオコーディング規格に従って定義され得る。さらに、一例では、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、本明細書で説明される技法に基づいて、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇおよびｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素のビンにコンテキストを割り当てるために構成され得る。本技法は、ＨＥＶＣまたは別のビデオコーディング規格に組み込まれ得る。コンテキストモデルはメモリに記憶され得る。コンテキストモデリングユニット５０６は、特定のビンのためのコンテキストとコンテキスト変数とを判断するために、一連のインデックス付きデーブルを含み、および／またはマッピング関数を利用し得る。ビン値を符号化した後、正規符号化エンジン５０８は、実際のビン値に基づいてコンテキストを更新し得る。
【００９５】
[0111]上記で説明されたように、図５Ａ〜図５Ｄに示されたコンテキスト割当ては、図３Ａ〜図３Ｂに示された水平または垂直４×４サブブロック走査のために最適ではない。たとえば、図５Ａおよび図５Ｄに示されたパターンは、対角線に沿って分割されたコンテキスト割当て領域を有する。これらの領域は、水平または垂直４×４サブブロック走査が適用されるとき、有意係数の予想されるロケーションと対応しない。また、水平４×４サブブロック走査の第１の行は、第２の行よりも有意である、はるかに高い確率を有する。同様にして、垂直４×４サブブロック走査の第１の列は、第２の列よりも有意である、はるかに高い確率を有する。したがって、図５Ａ〜図５Ｄに示されたコンテキストパターンは、水平４×４サブブロック走査または垂直４×４サブブロック走査に従って走査された有意係数フラグに対してより最適なコンテンツ割当てを行うために変更され得る。したがって、ＨＥＶＣ  ＷＤ７に従って定義されたコンテキスト割当てに基づいて算術符号化を実行することに加えて、正規符号化エンジン５０８は、本明細書で開示される技法に従って導出されたコンテキストに基づいて算術符号化を実行するために構成され得る。
【００９６】
[0112]図９Ａ〜図９Ｄに、水平４×４サブブロック走査または垂直４×４サブブロック走査に関する有意係数の予想される位置に基づくコンテキストパターンを示す。図９Ａ〜図９Ｄでは、図５Ａ〜図５Ｄに示されたコンテキストパターンの場合と同様に、コンテキスト番号付けが０から開始しているが、これは説明のためであり、実際のコンテキスト番号を反映しておらず、相対的なコンテキスト番号付けにすぎないことに留意されたい。図９Ａ〜図９Ｄは、ＣＧＦRとＣＧＦBとに応じて４×４サブブロックの有意係数フラグのコンテキスト割当てのために使用され得る４つの異なるパターンを示しており、ただし、ＣＧＦRは、右側のコーディンググループ（すなわち、右サブブロック）のためのコンテキストグループフラグを指し、ＣＧＦBは、下側のコーディンググループ（すなわち、下サブブロック）のためのコンテキストグループフラグを指す。この場合も、コンテキストグループフラグシンタックス要素は、コーディンググループの複数の変換係数のいずれかが非０であるかどうかを示す。
【００９７】
[0113]本開示で説明される技法によれば、ビデオエンコーダ２０は、複数の有意性シンタックス要素を符号化するためにコンテキストパターンを選択し、ビデオデコーダ３０は、複数の有意性シンタックス要素を復号するためにコンテキストパターンを選択する。図９Ａ〜図９Ｄは、ビデオエンコーダ２０およびビデオデコーダ３０が符号化および復号のためにコンテキストパターンをそれらから選択し得る複数の２次元コンテキストパターンの例を示している。いくつかの例では、ビデオエンコーダ２０およびビデオデコーダ３０は、複数の走査タイプのために同じコンテキストパターン（たとえば、図９Ａ〜図９Ｄに示されているもの）からコンテキストパターンを選択し得る。たとえば、水平走査の場合、ビデオエンコーダ２０およびビデオデコーダ３０は同じコンテキストパターンから選択し得る。垂直走査の場合、ビデオエンコーダ２０およびビデオデコーダ３０は、水平走査のためのものと同じコンテキストパターンから選択し得る。対角走査の場合、ビデオエンコーダ２０およびビデオデコーダ３０は、水平走査および垂直走査のためのものと同じコンテキストパターンから選択し得る。
【００９８】
[0114]概して、図９Ａ〜図９Ｄに示されたコンテキストパターンは、図５Ａ〜図５Ｄに示されたそれぞれのパターンと比較して、より少ない対角方向割当て挙動と、より多くの行／列方向割当て挙動とを有すると言われ得る。エントロピー符号化ユニット５６は、図９Ａ〜図９Ｄに示されたコンテキストパターンに基づいてｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために構成され得る。
【００９９】
[0115]図９Ａ〜図９Ｄに示されているように、各コンテキストパターンは１６個のコンテキスト値を含み、各コンテキスト値は、それぞれの位置にある係数に対応する。図９Ｄにおけるコンテキストパターン（すなわち、ＣＧＦB＝１、ＣＧＦR＝１の場合）は、すべての位置について均一（すなわち、コンテキスト＝２）であることに留意されたい。図９Ｄは、コンテキストパターンが均一でない図５Ｄとは対照的であり得る。さらに、図９Ｂに示されたＣＧＦB＝０、ＣＧＦR＝１の場合のコンテキストパターン、および図９Ｃに示されたＣＧＦB＝１、ＣＧＦR＝０の場合のコンテキストパターンは、それぞれ、第１の行および列に、図５Ｂおよび図５Ｃに示されたコンテキストパターンよりも多くの重要性を与える。また、図９Ａに示されたＣＧＦB＝０、ＣＧＦR＝０の場合のコンテキストパターンは、図５Ａに示されたコンテキストパターンと比較して、より方形であり、左上係数により多くの重要性を与える。
【０１００】
[0116]一例では、エントロピー符号化ユニット５６は、水平および垂直４×４サブブロック走査の場合には、図９Ａ〜図９Ｄに示されたコンテキストパターンに基づいてｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当て、対角４×４サブブロック走査の場合には、図５Ａ〜図５Ｄに示されたコンテキストパターンに基づいてｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために構成され得る。別の例では、コンテキストパターンの総数を制限するために、エントロピー符号化ユニット５６は、対角、水平、および垂直４×４サブブロック走査のすべてについて、図９Ａ〜図９Ｄに示されたコンテキストパターンに基づいてｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために構成され得る。
【０１０１】
[0117]さらに、図５Ａ〜図５Ｄおよび図９Ａ〜図９Ｄに示されたコンテキストパターンの組合せが、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために使用され得る。たとえば、水平４×４サブブロック走査は、ＣＧＦBおよびＣＢＦRのそれぞれの値について、図５Ａ、図９Ｂ、図５Ｃ、および図９Ｄに示されたコンテキストパターンを使用し得る。この例では、水平４×４サブブロック走査は、垂直特性をもつパターン（すなわち、図９Ｃに示されたパターン）を使用しない。これは、水平走査の統計値が、通常、図９Ｃに示された分布に一致しないので、コーディングを改善し得る。別の例では、水平４×４サブブロック走査の場合、事例（ＣＧＦB＝１、ＣＢＦR＝０）のための図９Ｃに示されたパターンを使用する代わりに、図９Ｄに示されたパターンが、事例（ＣＧＦB＝１、ＣＢＦR＝０）と事例（ＣＧＦB＝１、ＣＢＦR＝１）の両方ために使用され得る。この例では、所与の走査のための異なるＣＧＦ構成のためにパターン共有が行われる。そのようなパターン共有は他の走査タイプにも適用され得る。
【０１０２】
[0118]上記で説明されたように、一例では、量子化処理ユニット５４および／またはエントロピー符号化ユニット５６は、図１に関して上記で説明された４×４対角サブブロック走査を使用して３２×３２変換ブロックと１６×１６変換ブロックとを走査し得、８×８変換ブロックは、図１および図３Ａおよび図３Ｂに関して上記で説明された４×４サブブロック走査を使用して走査され得る。一例では、エントロピー符号化ユニット５６は、８×８変換ブロックのために使用されるコンテキストパターンに基づいてｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために使用されるコンテキストパターンに基づいて、３２×３２および１６×１６変換ブロックのためのｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために構成され得る。
【０１０３】
[0119]一例では、エントロピー符号化ユニット５６は、３２×３２、１６×１６、および８×８変換ブロックの各々のためのコンテキストを導出するために、図９Ａ〜図９Ｄに示されたコンテキストパターンを使用し得る。別の例では、エントロピー符号化ユニット５６は、４×４対角サブブロック走査が適用されるとき、３２×３２、１６×１６、および８×８変換ブロックのためのコンテキストを導出するために、図５Ａ〜図５Ｂに示されたものなど、コンテキストパターンのセットを使用し、４×４水平サブブロック走査または４×４垂直サブブロック走査のいずれかが適用されるとき、８×８変換ブロックのためのコンテキストを導出するために、図９Ａ〜図９Ｄに示されたものなど、コンテキストパターンの異なるセットを使用し得る。この例では、コンテキストの導出は、異なるサイズのＴＵのために共有され得、走査タイプに依存し得る。
【０１０４】
[0120]さらに、コンテキストを導出し、ＤＣおよび非ＤＣサブブロックに割り当てる場合と同様に、コンテキスト導出は、３２×３２、１６×１６、および８×８変換ブロックの各々のために共有され得るが、実際のコンテキストは、各サイズの変換ブロックについて異なり得る。たとえば、３２×３２、１６×１６、および８×８変換ブロックのために使用される実際のコンテキストの各々は、図５Ａ〜図５Ｂに示されたコンテキストパターンに基づき得るが、ＴＵのサイズに基づいてコンテキストパターンの各々にオフセットが適用され得る。この例では、３２×３２、１６×１６、および８×８変換ブロックの各々は、実際のコンテキストではなく、コンテキスト導出を共有するであろう。別の例では、コンテキスト導出は、ＴＵのサイズまたは走査タイプにかかわらず、すべてのサブブロックについて同じであり得る（たとえば、図９Ａ〜図９Ｄに示されたパターンがすべての場合に使用され得る）が、実際のコンテキストの３つのセット、すなわち、大きいＴＵ（１６×１６および３２×３２）のためのコンテキストの１つのセット、対角走査を伴う８×８ＴＵのためのコンテキストの１つのセット、および水平または垂直走査を使用するときの８×８ＴＵのためのコンテキストの１つのセットがあり得る。これらのセットは、コンテキストパターンのセットに異なるオフセットを適用することによって定義され得る。したがって、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、すべての走査順序のための統合されたコンテキスト導出を使用してｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇにコンテキストを割り当てるために構成され得る。
【０１０５】
[0121]上記で説明されたように、ＤＣサブブロックのためのｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇには、非ＤＣサブブロックのためのｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇとは異なるコンテキストのセットが割り当てられ得る。すなわち、実際のコンテキストを判断するときに、コンテキストパターンにオフセットが適用され得る。これの理由は、４×４対角サブブロック走査が使用されるとき、ＤＣサブブロックの統計値が、一般に、非ＤＣサブブロックの統計値とははるかに異なることである。しかしながら、サブブロックが４×４水平または垂直サブブロック走査を使用して走査されるとき、ＤＣサブブロックの統計値と非ＤＣサブブロックの統計値とは類似していることがある。たとえば、水平サブブロック走査を使用する８×８ＴＵの場合、ＤＣサブブロックの右側のサブブロックは、他の非ＤＣサブブロックよりもＤＣサブブロックと類似している統計値を有し得る。同様に、垂直走査の場合、ＤＣサブブロックの下側のサブブロックは、他の非ＤＣサブブロックよりもＤＣサブブロックと類似している統計値を有し得る。
【０１０６】
[0122]非ＤＣサブブロックのうちの１つが、ＤＣサブブロックと類似している統計値を有し得ることを補償するために、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、ＤＣサブブロックおよび隣接する非ＤＣサブブロックのためにコンテキストの第１のセットを使用するために構成され得、コンテキストの第２のセットが、他の非ＤＣサブブロックにコンテキストを割り当てるために使用され得る。たとえば、水平４×４サブブロック走査が８×８ＴＵのために使用されるとき、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、サブブロックの第１の行にコンテキストを割り当てるためにコンテキストの第１のセットを使用し、サブブロックの第２の行にコンテキストを割り当てるためにコンテキストの第２のセットを使用するために構成され得る。たとえば、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、図５Ａ〜図５Ｄに示されたコンテキストパターンを使用し、第２の行のために図９Ａ〜図９Ｄに示されたコンテキストパターンを使用するために構成され得る。さらに、ＤＣサブブロックが、依然として一意のコンテキストセットを有し得るように、非ＤＣサブブロックにオフセットがさらに適用され得る。同様にして、垂直サブブロック走査タイプの場合、コンテキストパターンは列ベースで割り当てられ得る。さらに、この概念は、３つ以上の列または行をもつより大きいＴＵに拡張され得る。サブブロックの行または列に基づいてコンテキストを導出し、割り当てる技法は、すべてのサイズのＴＵに適用され得る。したがって、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、サブブロック走査タイプと変換ブロック内のサブブロックのロケーションとに基づいて、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇにコンテキストを割り当てるために構成され得る。
【０１０７】
[0123]上記で説明されたように、図９Ａ〜図９Ｄは、ビデオエンコーダ２０が、変換ブロックのサブブロックの複数の変換係数の複数の有意性シンタックス要素を符号化するためのコンテキストを判断するために選択する例示的なコンテキストパターンを示している。いくつかの例では、サブブロックの複数の走査タイプのために（すなわち、サブブロックが水平方向、垂直方向、または対角方向に走査されるべきである場合）、ビデオエンコーダ２０は、図９Ａ〜図９Ｄに示されたコンテキストパターンのうちの１つからコンテキストパターンを選択し得る。言い換えれば、ビデオエンコーダ２０がコンテキストパターンをそれらから選択し得るコンテキストパターンは、複数の走査タイプ（たとえば、水平走査、垂直走査、および対角走査）について同じであり得る。
【０１０８】
[0124]さらに、図９Ａ〜図９Ｄに示されたように、コンテキストパターンの各々は、１つまたは複数の隣接サブブロックが非０変換係数を含むかどうかの条件に関連する。たとえば、１つまたは複数の隣接サブブロックは、第１の隣接サブブロックと第２の隣接サブブロックとを含む。いくつかの例では、コンテキストパターンの各々は、第１の隣接サブブロック（たとえば、現在のサブブロックの下側にある下サブブロック）が非０変換係数を含むかどうか、および第２の隣接サブブロック（たとえば、現在のサブブロックの右側にある右サブブロック）が非０変換係数を含むかどうかの条件に関連する。上記で説明されたように、ＣＧＦBは、下サブブロックが非０変換係数を含むかどうかを示し、ＣＧＦRは、右サブブロックが非０変換係数を含むかどうかを示す。
【０１０９】
[0125]ビデオエンコーダ２０は、以下で説明されるように、様々なファクタに基づいて、図９Ａ〜図９Ｄに示されたコンテキストパターンのうちの１つを選択し得る。いずれの場合も、ビデオエンコーダ２０は、選択されたコンテキストパターンに基づいて、複数の変換係数の複数の有意性シンタックス要素の各々にコンテキストを割り当て得る。
【０１１０】
[0126]たとえば、ビデオエンコーダ２０が、第１の隣接サブブロックが非０変換係数を含まず、第２の隣接サブブロックが少なくとも１つの非０変換係数を含む（すなわち、ＣＧＦBが０に等しく、ＣＧＦRが１に等しい）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の第１の行に、現在のサブブロックのための複数の変換係数の有意性要素の他の行のためのコンテキストとは異なるコンテキストを割り当て得る。たとえば、ＣＧＦBが０に等しく、ＣＧＦRが１に等しい場合、図９Ｂは、変換ブロックの第１の行が、サブブロックの第１の行の複数の有意性シンタックス要素を符号化するために、サブブロックの他の行のためのコンテキストとは異なるコンテキスト２（またはオフセット３を仮定して５）を割り当てられることを示す。
【０１１１】
[0127]ビデオデコーダ３０は実質的に同様の方法で機能し得る。たとえば、ビデオデコーダ３０が、図９Ｂに示されたコンテキストパターン（たとえば、ＣＧＦBが０に等しく、ＣＧＦRが１に等しいという条件）を選択した場合、ビデオデコーダ３０は、それに応じて、変換ブロックのサブブロックの複数の有意性シンタックス要素にコンテキストを割り当てる。たとえば、ビデオエンコーダ２０と同様に、ビデオデコーダ３０は、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の第１の行に、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の他の行のためのコンテキストとは異なるコンテキストを割り当てる。
【０１１２】
[0128]別の例として、ビデオエンコーダ２０が、第１の隣接サブブロックが少なくとも１つの非０変換係数を含み、第２の隣接サブブロックが非０変換係数を含まない（すなわち、ＣＧＦBが１に等しく、ＣＧＦRが０に等しい）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の第１の列に、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の他の列のためのコンテキストとは異なるコンテキストを割り当て得る。たとえば、ＣＧＦBが１に等しく、ＣＧＦRが０に等しい場合、図９Ｃは、変換ブロックの第１の列が、サブブロックの第１の列の複数の有意性シンタックス要素を符号化するために、サブブロックの他の列のためのコンテキストとは異なるコンテキスト２（またはオフセット３を仮定して５）を割り当てられることを示す。
【０１１３】
[0129]ビデオデコーダ３０は実質的に同様の方法で機能し得る。たとえば、ビデオデコーダ３０が、図９Ｃに示されたコンテキストパターン（たとえば、ＣＧＦBが１に等しく、ＣＧＦRが０に等しいという条件）を選択した場合、ビデオデコーダ３０は、それに応じて、変換ブロックのサブブロックの複数の有意性シンタックス要素にコンテキストを割り当てる。たとえば、ビデオエンコーダ２０と同様に、ビデオデコーダ３０は、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素の第１の列に、現在のサブブロックのための複数の変換係数の有意性要素の他の列のためのコンテキストとは異なるコンテキストを割り当てる。
【０１１４】
[0130]別の例として、ビデオエンコーダ２０が、第１の隣接サブブロックが少なくとも１つの非０変換係数を含み、第２の隣接サブブロックが少なくとも１つの非０変換係数を含む（すなわち、ＣＧＦBが１に等しく、ＣＧＦRが１に等しい）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素に同じコンテキストを割り当て得る。たとえば、ＣＧＦBが１に等しく、ＣＧＦRが１に等しい場合、図９Ｄは、複数の有意性シンタックス要素のためのすべてのコンテキストが同じ（すなわち、２）であることを示す。
【０１１５】
[0131]ビデオデコーダ３０は実質的に同様の方法で機能し得る。たとえば、ビデオデコーダ３０が、図９Ｄに示されたコンテキストパターン（たとえば、ＣＧＦBが１に等しく、ＣＧＦRが１に等しいという条件）を選択した場合、ビデオデコーダ３０は、それに応じて、変換ブロックのサブブロックの複数の有意性シンタックス要素にコンテキストを割り当てる。たとえば、ビデオエンコーダ２０と同様に、ビデオデコーダ３０は、現在のサブブロックのための複数の変換係数の有意性要素に同じコンテキストを割り当てる。
【０１１６】
[0132]ＣＧＦBが０に等しく、ＣＧＦRが０に等しい場合、ビデオエンコーダ２０は、図９Ａに示されたコンテキストパターンを選択し、それに応じて、変換ブロックのサブブロックの複数の有意性シンタックス要素にコンテキストを割り当て得る。ビデオデコーダ３０は、ＣＧＦBが０に等しく、ＣＧＦRが０に等しい場合、実質的に同様の方法で機能し得る。
【０１１７】
[0133]さらに、図９Ａ〜図９Ｄに示されたコンテキストパターンは、上記で説明されたもの以外の特性を含み得る。たとえば、（たとえば、ＣＧＦBが０に等しく、ＣＧＦRが０に等しいときの）コンテキストパターンの特性のうちの１つは、コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元ベクトルを生じるコンテキストを含むことである。
【０１１８】
[0134]たとえば、図９Ａに示されたコンテキストパターンが右下から左上に水平方向に走査された場合、得られた１次元ベクトルは、［０  ０  ０  ０  ０  １  １  １  ０  １  １  １  ０  １  １  ２］である。図９Ａに示されたコンテキストパターンが右下から左上に垂直方向に走査された場合、得られた１次元ベクトルは、［０  ０  ０  ０  ０
１  １  １  ０  １  １  １  ０  １  １  ２］である。見られ得るように、これらの２つの１次元ベクトルは同じである。
【０１１９】
[0135]コンテキストパターンの特性の別の例として、コンテキストパターンのうちの２つは、コンテキストパターンのうちの１つの水平走査と、コンテキストパターンのうちの別の１つの垂直走査とが同じ１次元ベクトルを生じるような、互いの転置である。たとえば、右下から左上への図９Ｂに示されたコンテキストパターンの水平走査は１次元ベクトル［０  ０  ０  ０  ０  ０  ０  ０  １  １  １  １  ２  ２  ２  ２］を生じる。右下から左上への図９Ｃに示されたコンテキストパターンの垂直走査は１次元ベクトル［０
０  ０  ０  ０  ０  ０  ０  １  １  １  １  ２  ２  ２  ２］を生じる。見られ得るように、これらの２つの１次元ベクトルは同じである。
【０１２０】
[0136]コンテキストパターンの特性の別の例として、コンテキストパターンのうちの１つは、水平方向、垂直方向、対角方向に走査された場合に同じ１次元ベクトルを生じるコンテキストを含む。たとえば、図９Ｄに示されたコンテキストパターンのコンテキストの水平走査、垂直走査、または対角走査は同じ１次元ベクトル［２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２  ２］を生じる。
【０１２１】
[0137]上記で説明されたように、ビデオエンコーダ２０は、様々なファクタに基づいて、図９Ａ〜図９Ｄに示されたコンテキストパターンのうちの１つを選択する。一例として、ビデオエンコーダ２０は、下および右サブブロックのＣＧＦに基づいてコンテキストパターンを選択する。ただし、追加のファクタもあり得る。たとえば、ビデオエンコーダ２０は、走査タイプに基づいてコンテキストパターンを選択し得る。走査タイプがサブブロックの水平走査である場合、ビデオエンコーダ２０は、図９Ｂに示されたコンテキストパターンを選択し得る。走査タイプがサブブロックの垂直走査である場合、ビデオエンコーダ２０は、図９Ｃに示されたコンテキストパターンを選択し得る。ビデオデコーダ３０は同様の方法で機能し得る。
【０１２２】
[0138]いくつかの例では、上記で説明されたように、ビデオエンコーダ２０は、どのコンテキストパターンを選択すべきかを判断するために、ビデオエンコーダ２０が評価するコンテンツパターンからコンテキストパターンを除外し得る。たとえば、サブブロックの走査タイプが水平である場合、ビデオエンコーダ２０は、ＣＧＦBが１に等しく、ＣＧＦRが０に等しい場合でも、図９Ｃに示されたコンテキストパターンはコンテキストパターンとして選択され得ないと判断し得る。この場合、ビデオエンコーダ２０は、図９Ｄに示されたコンテキストパターンを選択し得る。たとえば、サブブロックの走査タイプが水平である場合、ビデオエンコーダ２０は図９Ｃに示されたコンテキストパターンを除外し得る。残りのコンテキストパターンから、ビデオエンコーダ２０は、図９Ｄに示されたコンテキストパターンを選択し得る。この場合、ＣＧＦBおよびＣＧＦRの異なる値のためにコンテキストパターン共有が行われ得る。たとえば、水平走査では、ビデオエンコーダ２０は、ＣＧＦBが０に等しく、ＣＧＦRが１に等しい場合、またはＣＧＦBが１に等しく、ＣＧＦRが１に等しい場合、図９Ｄに示されたコンテキストパターンを選択し得る。
【０１２３】
[0139]垂直走査の走査タイプでは、ビデオエンコーダ２０は、ＣＧＦBが０に等しく、ＣＧＦRが１に等しい場合でも、図９Ｂに示されたコンテキストパターンを除外し得ることを除いて、ビデオエンコーダ２０は同様の方法で機能し得る。この例では、ビデオエンコーダ２０は、残りの複数のコンテキストパターンからコンテキストパターンを選択する。ビデオデコーダ３０は同様の方法で機能する。
【０１２４】
[0140]たとえば、ビデオエンコーダ２０およびビデオデコーダ３０は、現在のサブブロックの走査タイプを判断し、現在のサブブロックの判断された走査タイプに基づいて、複数のコンテキストパターンから、コンテキストパターンとして選択され得ない少なくとも１つのコンテキストパターンを判断する。ビデオエンコーダ２０およびビデオデコーダ３０は、判断された少なくとも１つのコンテキストパターンを除く複数のコンテキストパターンに基づいてコンテキストパターンを選択する。いくつかの例では、ビデオエンコーダ２０およびビデオデコーダ３０は、下隣接サブブロックが非０変換係数を含むかどうか、および右隣接サブブロックが非０変換係数を含むかどうかにかかわらず、判断された少なくとも１つのコンテキストパターンを除く複数のコンテキストパターンに基づいてコンテキストパターンを選択する。
【０１２５】
[0141]図５Ａ〜図５Ｄおよび図９Ａ〜図９Ｄでは、コンテキストパターンは、２Ｄブロックとして図示および定義されている。ただし、いくつかの実際的実装形態では、ビデオエンコーダ２０などのビデオエンコーダは、コンテキスト割当てプロセスの速度を上げるために、選択されたサブブロック走査タイプに従って２Ｄブロックを１Ｄベクトルとして表し、１Ｄベクトルを記憶し得る。この状況では、異なるサブブロック走査タイプを使用したサブブロックにコンテキストを割り当てるために同じ２Ｄコンテキストパターンが使用される場合でも、選択されたサブブロック走査タイプに基づいて、異なる１Ｄベクトルが取得され得る。たとえば、水平走査に従って走査された、図９Ｃに示されたコンテキストパターンの１Ｄベクトルは、以下の１Ｄベクトル表現を有するであろう。
【数１】
2018110405.tif 000003
【０１２６】
一方、垂直走査に従って走査された、図９Ｃに示されたコンテキストパターンは、以下の１Ｄベクトル表現を有するであろう。
【数２】
2018110405.tif 000004
【０１２７】
[0142]この場合、ビデオエンコーダ２０などのビデオエンコーダが、１Ｄベクトル（すなわち、１次元コンテキストパターン）としてコンテキストパターンを記憶する場合、各コンテキストパターンについていくつかのベクトルがあり得る。各コンテキストパターンについてのいくつかの異なる１Ｄベクトルの記憶を克服する１つの方法は、コンテキストパターンを１Ｄベクトル（すなわち、１次元コンテキストパターン）として直接定義し、２つ以上のサブブロック走査タイプのために同じベクトルを使用することによる方法である。たとえば、一定値（すなわち、すべて２）をもつコンテキストパターンは、走査タイプにかかわらず同じ走査１Ｄを与える。この例では、１Ｄベクトルは、同じコンテキスト（たとえば、２）または複数の有意性シンタックス要素のすべてを指定し得る。１Ｄベクトルは以下のように表され得る。
【数３】
2018110405.tif 000005
【０１２８】
[0143]別の例では、１次元コンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキストを定義し、走査順序における第２および第３の複数の有意性シンタックス要素のために第２のコンテキストを定義し、走査順序における残りの複数の有意性シンタックス要素のために第３のコンテキストを定義する。たとえば、１Ｄベクトルは、第１の有意係数フラグのためにコンテキスト２を指定し、第２および第３の割当てのためにコンテキスト１を指定し、残りの割当てのためにコンテキスト０を指定し得、以下のように表され得る。
【数４】
2018110405.tif 000006
【０１２９】
[0144]別の可能なコンテキストパターンは、Ｓｃａｎ＿Ｐａｔｔｅｒｎ＝［１  ０  ０
０  ０  ０  ０  ０  ０  ０  ０  ０  ０  ０  ０  ０］である。この例では、コンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキスト（たとえば、１）を定義し、走査順序における残りの複数の有意性シンタックス要素のために第２のコンテキスト（たとえば、０）を定義する。図１０は、サブブロック中の係数のためのコンテキスト割当てのパターンの一例を示す概念図である。図１０に示されたコンテキストパターンのための得られた走査パターンは、上記で定義されたように、対角、水平および垂直４×４サブブロック走査について同じである。コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、１Ｄベクトル（すなわち、１次元コンテキストパターン）としてコンテキストパターンを記憶するために構成され得る。一例では、同じ記憶された走査パターンが、対角、水平および垂直４×４サブブロック走査など、複数のサブブロック走査タイプのためのｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇにコンテキストを割り当てるために使用され得る。
【０１３０】
[0145]いくつかの例では、１次元コンテキストパターンは、図９Ａ〜図９Ｄに示されたものなどの２次元コンテキストパターンから事前計算され得る。たとえば、図９Ａ〜９Ｄに示されたコンテキストパターンは、１次元コンテキストパターンを生成するために、水平方向、垂直方向、および対角方向に走査され得る。したがって、この例では、最高１２個の１次元コンテキストパターンがあり得る。しかしながら、図９Ａ〜図９Ｄに示されたコンテキストパターンの特性は、１２個よりも少ない１次元コンテキストパターンが事前計算され、記憶されるような特性であり得る。
【０１３１】
[0146]たとえば、上記で説明されたように、図９Ａに示されたコンテキストパターンの水平走査と垂直走査は同じ１次元ベクトルを生じる。したがって、図９Ａに示されたコンテキストパターンの水平、垂直、および対角走査は、３つではなく、２つの一意の１次元コンテキストパターンを生じる。
【０１３２】
[0147]また、図９Ｂおよび図９Ｃに示されたコンテキストパターンについて、それらのうちの一方では、３つ（すなわち、走査タイプごとに１つ）の一意の１次元コンテキストパターンがあり得る。しかしながら、他方では、ただ２つの一意の１次元コンテキストパターンがあり得る。これは、図９Ｂに示されたコンテキストパターンの水平走査と、図９Ｃに示されたコンテキストパターンの垂直走査とが同じ１次元コンテキストパターンを生じるからである。したがって、図９Ｂおよび図９Ｃに示されたコンテキストパターン間には合計５つの一意の１次元コンテキストパターンがある。言い換えれば、複数の１次元コンテキストパターンのうちの１つは、図９Ｂに示されたコンテキストパターン（たとえば、第１の２次元コンテキストパターン）から事前計算される。第１の２次元コンテキストパターンは、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを含む。第１の２次元パターンが図９Ｂに示されたものであるときの、第２の２次元コンテキストパターンの一例は、図９Ｃに示された２次元コンテキストパターンである。
【０１３３】
[0148]図９Ｄに示されたコンテキストパターンでは、ただ１つの一意の１次元コンテキストパターンがある（すなわち、対角、水平、および垂直走査が、すべて、同じ１次元コンテキストパターンを生じる）。たとえば、図９Ｄに示されたコンテキストパターンが、１次元パターンを事前計算するために使用されるとき、（垂直方向に走査されたのか、水平方向に走査されたのか、または対角方向に走査されたのかにかかわらず）得られた１次元パターンは、サブブロックの複数の変換係数の複数の有意性シンタックス要素のすべてのために同じコンテキスト（たとえば、２）を定義するコンテキストパターンを生じる。したがって、図９Ａ〜図９Ｄに示されたコンテキストパターンの特性は、合計８つ（すなわち、図９Ａから２つ、図９Ｂおよび図９Ｃから５つ、および図９Ｄから１つ）の１次元コンテキストパターンを生じ、これは、コンテキストパターンが図９Ａ〜図９Ｄに示されたコンテキストパターンの特性を備えない場合に記憶される必要があるであろう１２個の１次元コンテキストパターンよりも少ない。
【０１３４】
[0149]上記で説明されたように、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てることに加えて、一例では、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇにコンテキストを割り当てるために構成され得る。上記で説明されたように、ＨＥＶＣ  ＷＤ７では、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇのコンテキスト導出は、走査順序（すなわち、対角４×４走査が適用されるのか、非正方形水平走査が適用されるのか、または非正方形垂直走査が適用されるのか）に依存する。非正方形走査の代わりに、図３Ａ〜図３Ｂに示された走査が使用される場合、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇのコンテキスト導出は、ＨＥＶＣ  ＷＤ７で説明されているコンテキスト導出から変更され得る。一例では、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、サブブロックに関連するＴＵの走査タイプおよびサイズにかかわらず、サブブロックのすべてのために同じコンテキスト導出を使用してｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇにコンテキストを割り当てるために構成され得る。しかしながら、一例では、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇに割り当てられる実際のコンテキストは、サブブロックが、対角４×４サブブロック走査を使用して走査されるのか、水平４×４サブブロック走査を使用して走査されるのか、垂直４×４サブブロック走査を使用して走査されるのかに基づいて異なり得る。一例では、４×４対角走査が適用されるときには、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇにコンテキストを割り当てるためにコンテキストの第１のセットが使用され得、水平または垂直４×４サブブロック走査が適用されるときには、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇにコンテキストを割り当てるためにコンテキストの第２のセットが使用され得る。一例では、コンテキストの第２のセットは、第１のコンテキストセットにオフセットを追加することによって導出され得る。
【０１３５】
[0150]したがって、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６がｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇおよびｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために使用したいくつかの技法がある。エントロピー符号化ユニット５６は、上記で説明された技法の任意の組合せを使用して、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇおよびｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素にコンテキストを割り当てるために構成され得る。
【０１３６】
[0151]図１１は、本開示の技法による、ビデオデータを符号化することの一例を示すフローチャートである。図１１におけるプロセスは、概して、ビデオエンコーダ２０によって実行されるものとして以下で説明されるが、プロセスは、ビデオエンコーダ２０、エントロピー符号化ユニット５６、および／またはコンテキストモデリングユニット５０６の任意の組合せによって実行され得る。
【０１３７】
[0152]図１１に示されるように、ビデオエンコーダ２０は、ブロックの現在のサブブロックの複数の変換係数のための複数の有意性シンタックス要素を生成する（１１０２）。複数の変換係数の複数の有意性シンタックス要素（たとえば、有意性係数フラグ）は、複数の変換係数の値が０（すなわち、０複数の変換係数）であるのか非０（すなわち、非０変換係数）であるのかを示す。いくつかの例では、サブブロックは４×４サブブロックであり、ブロックは８×８変換ブロックである。
【０１３８】
[0153]ビデオエンコーダ２０は、現在のサブブロックの複数の変換係数の複数の有意性シンタックス要素のための複数の走査タイプ（たとえば、水平走査、垂直走査、および対角走査）のために同じ複数の２次元コンテキストパターンからコンテキストパターンを選択する（１１０４）。コンテキストパターンの例としては、図９Ａ〜図９Ｄに示されたコンテキストパターンがある。本開示で説明される技法では、ビデオエンコーダ２０は、サブブロックが水平方向、垂直方向、または対角方向に走査される場合、同じ複数の２次元コンテキストパターンから選択し得る。言い換えれば、走査タイプは水平または垂直であり、ビデオエンコーダ２０は、走査タイプが対角である場合、ビデオエンコーダ２０がそれらから選択する同じ複数の２次元コンテキストパターンの中から選択する。
【０１３９】
[0154]また、上記で説明されたように、コンテキストパターンの各々は、１つまたは複数の隣接サブブロックが非０変換係数を含むかどうかの条件に関連する。たとえば、１つまたは複数の隣接サブブロックは、第１の隣接サブブロックと第２の隣接サブブロックとを含み、コンテキストパターンの各々は、第１の隣接サブブロックが非０変換係数を含むかどうか、および第２の隣接サブブロックが非０変換係数を含むかどうかの条件に関連し得る（すなわち、各コンテキストは、ＣＧＦBおよびＣＧＦRの値が１であるのか０であるのかの条件に関連する）。
【０１４０】
[0155]ビデオエンコーダ２０は、選択されたコンテキストパターンに基づいて、複数の変換係数の複数の有意性シンタックス要素の各々にコンテキストを割り当てる（１１０６）。たとえば、上記で説明されたように、ビデオエンコーダ２０が、ＣＧＦBが０に等しく、ＣＧＦRが１に等しい（すなわち、下サブブロックが非０変換係数を含まず、右ブロックが少なくとも１つの非０変換係数を含む）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、サブブロックの複数の有意性シンタックス要素の第１の行に、他の行のためのコンテキストとは異なるコンテキスト（たとえば、コンテキスト２、またはオフセット３をもつコンテキスト５）を割り当てる。
【０１４１】
[0156]ビデオエンコーダ２０が、ＣＧＦBが１に等しく、ＣＧＦRが０に等しい（すなわち、下サブブロックが少なくとも１つの非０変換係数を含み、右ブロックが非０変換係数を含まない）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、サブブロックの複数の有意性シンタックス要素の列に、他の列のためのコンテキストとは異なるコンテキスト（たとえば、コンテキスト２、またはオフセット３をもつコンテキスト５）を割り当てる。ビデオエンコーダ２０が、ＣＧＦBが１に等しく、ＣＧＦRが１に等しい（すなわち、下サブブロックが少なくとも非０変換係数を含み、右ブロックが少なくとも１つの非０変換係数を含む）という条件に関連するコンテキストパターンを選択した場合、ビデオエンコーダ２０は、現在のサブブロックの複数の有意性シンタックス要素に同じコンテキスト（たとえば、コンテキスト２、またはオフセット３をもつコンテキスト５）を割り当てる。
【０１４２】
[0157]ビデオエンコーダ２０は、割り当てられたコンテキストに基づいて複数の有意性シンタックス要素をＣＡＢＡＣ符号化する（１１０８）。ビデオエンコーダ２０は、符号化された複数の有意性シンタックス要素を符号化ビットストリームの一部として出力する（１１１０）。
【０１４３】
[0158]図１２は、本開示の技法による、ビデオデータを符号化することの一例を示すフローチャートである。図１２におけるプロセスは、概して、ビデオエンコーダ２０によって実行されるものとして以下で説明されるが、プロセスは、ビデオエンコーダ２０、エントロピー符号化ユニット５６、および／またはコンテキストモデリングユニット５０６の任意の組合せによって実行され得る。
【０１４４】
[0159]図１２に示されるように、ビデオエンコーダ２０は、ブロックの現在のサブブロックの複数の変換係数のための複数の有意性シンタックス要素を生成する（１２０２）。複数の変換係数の複数の有意性シンタックス要素（たとえば、有意性係数フラグ）は、複数の変換係数の値が０（すなわち、０複数の変換係数）であるのか非０（すなわち、非０変換係数）であるのかを示す。いくつかの例では、サブブロックは４×４サブブロックであり、ブロックは８×８変換ブロックである。
【０１４５】
[0160]ビデオエンコーダ２０はコンテキストパターン（たとえば、１次元コンテキストパターンとして記憶されたコンテキストパターン）を選択する（１２０４）。いくつかの例では、コンテキストパターンは、現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する。たとえば、選択されたコンテキストパターンは、水平走査、垂直走査、および対角走査の走査タイプのためのものである。
【０１４６】
[0161]一例として、選択されたコンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキストを定義し、走査順序における第２および第３の複数の有意性シンタックス要素のために第２のコンテキストを定義し、走査順序における残りの複数の有意性シンタックス要素のために第３のコンテキストを定義する。別の例として、選択されたコンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキストを定義し、走査順序における残りの複数の有意性シンタックス要素のために第２のコンテキストを定義する。別の例として、選択されたコンテキストパターンは、複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する。
【０１４７】
[0162]いくつかの例では、選択されたコンテキストパターンは、１次元コンテキストパターンとして記憶された複数のコンテキストパターンから選択される。たとえば、複数のコンテキストパターンは、図９Ａ〜図９Ｄに示された２次元コンテキストパターンから事前計算され、記憶される。一例として、複数のコンテキストパターンのうちの１つは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを含む２次元コンテキストパターンから事前計算される。そのような２次元コンテキストパターンの一例は、図９Ａに示されたコンテキストパターンである。別の例として、複数のコンテキストパターンのうちの１つは、水平方向、垂直方向、または対角方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを含む２次元コンテキストパターンから事前計算される。そのような２次元コンテキストパターンの一例は、図９Ｄに示されたコンテキストパターンである。
【０１４８】
[0163]別の例として、複数のコンテキストパターンのうちの１つは、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを含む第１の２次元コンテキストパターンから事前計算される。第１の２次元コンテキストパターンの一例は、図９Ｂに示されたコンテキストパターンである。第２の２次元コンテキストパターンの一例は、図９Ｃに示されたコンテキストパターンである。
[0164]ビデオエンコーダ２０は、選択されたコンテキストに基づいて複数の有意性シンタックス要素にコンテキストを割り当てる（１２０６）。ビデオエンコーダ２０は、割り当てられたコンテキストに基づいて複数の有意性シンタックス要素をＣＡＢＡＣ符号化する（１２０８）。ビデオエンコーダ２０は、符号化された複数の有意性シンタックス要素を符号化ビットストリームの一部として出力する（１２１０）。
【０１４９】
[0165]図１３は、本開示で説明される技法を実装し得る例示的なビデオデコーダ３０を示すブロック図である。図１３の例では、ビデオデコーダ３０は、エントロピー復号ユニット８０と、予測処理ユニット８１と、逆量子化処理ユニット８６と、逆変換処理ユニット８８と、加算器９０と、参照ピクチャメモリ９２とを含む。予測処理ユニット８１は、動き補償ユニット８２と、イントラ予測モジュール８４とを含む。ビデオデコーダ３０は、いくつかの例では、図７のビデオエンコーダ２０に関して説明された符号化パスとは概して逆の復号パスを実行し得る。
【０１５０】
[0166]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット８０は、量子化係数、動きベクトル、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット８０は、動きベクトルと他のシンタックス要素とを予測モジュール８１に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【０１５１】
[0167]図１４は、本開示で説明される技法を実装し得る例示的なエントロピー復号ユニット７０を示すブロック図である。エントロピー復号ユニット７０は、エントロピー符号化ビットストリームを受信し、そのビットストリームからのシンタックス要素を復号する。シンタックス要素は、上記で説明された、シンタックス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇ、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇ、およびｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇシンタックス要素を含み得る。図１４の例示的なエントロピー復号ユニット７０は、バイパス復号エンジン７０４と正規復号エンジン７０６とを含み得る算術復号ユニット７０２を含む。例示的なエントロピー復号ユニット７０はまた、コンテキストモデリングユニット７０８と逆２値化ユニット７１０とを含む。例示的なエントロピー復号ユニット７０は、図８に関して説明された例示的なエントロピー符号化ユニット５６の逆の機能を実行し得る。このようにして、エントロピー復号ユニット７０は、本明細書で説明される技法に基づいてエントロピー復号を実行し得る。
【０１５２】
[0168]算術復号ユニット７０２は符号化ビットストリームを受信する。図１４に示されるように、算術復号ユニット７０２は、バイパス経路または正規コーディング経路に従って、符号化されたビン値を処理し得る。符号化されたビン値がバイパス経路に従って処理されるべきであるのか、正規経路に従って処理されるべきであるのかについての指示は、より高いレベルのシンタックスを用いてビットストリーム中でシグナリングされ得る。上記で説明されたＣＡＢＡＣプロセスに従って、算術復号ユニット７０２がバイパス経路からビン値を受信した場合、バイパス復号エンジン７０４は、ビン値に割り当てられたコンテキストを利用せずに、ビン値に対して算術符号化を実行し得る。一例では、バイパス復号エンジン７０４は、ビンの可能な値について等しい確率を仮定し得る。
【０１５３】
[0169]算術復号ユニット７０２が正規経路を介してビン値を受信した場合、コンテキストモデリングユニット７０８は、正規復号エンジン７０６が、コンテキストモデリングユニット７０８によって与えられたコンテキスト割当てに基づいて算術符号化を実行し得るように、コンテキスト変数を与え得る。コンテキスト割当ては、ＨＥＶＣなどのビデオコーディング規格に従って定義され得る。コンテキストモデルはメモリに記憶され得る。コンテキストモデリングユニット７０８は、符号化ビットストリームのコンテキストとコンテキスト変数部分とを判断するために、一連のインデックス付きデーブルを含み、および／またはマッピング関数を利用し得る。さらに、一例では、コンテキストモデリングユニット５０６および／またはエントロピー符号化ユニット５６は、本明細書で説明される技法に基づいて、ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｇｒｏｕｐ＿ｆｌａｇおよびｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆｉｃｉｅｎｔ＿ｆｌａｇシンタックス要素のビンにコンテキストを割り当てるために構成され得る。ビン値を復号した後、正規コーディングエンジン７０６は、復号されたビン値に基づいてコンテキストを更新し得る。さらに、逆２値化ユニット７１０は、ビン値に対して逆２値化を実行し、ビン照合関数を使用してビン値が有効であるかどうかを判断し得る。逆２値化ユニット７１０はまた、照合判断に基づいてコンテキストモデリングユニットを更新し得る。したがって、逆２値化ユニット７１０は、コンテキスト適応型復号技法に従ってシンタックス要素を出力する。
【０１５４】
[0170]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされたとき、予測モジュール８１のイントラ予測モジュール８４は、シグナリングされたイントラ予測モードと、現在のフレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化（すなわち、ＢまたはＰ）スライスとしてコーディングされたとき、予測モジュール８１の動き補償ユニット８２は、エントロピー復号ユニット８０から受信された動きベクトルおよび他のシンタックス要素に基づいて、現在のビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ９２に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト０およびリスト１を構成し得る。
【０１５５】
[0171]動き補償ユニット８２は、動きベクトルと他のシンタックス要素とをパースすることによって現在のビデオスライスのビデオブロックのための予測情報を判断し、その予測情報を使用して、復号されている現在のビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット８２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスの参照ピクチャリストのうちの１つまたは複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを判断するために、受信されたシンタックス要素のいくつかを使用する。
【０１５６】
[0172]動き補償ユニット８２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット８２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。この場合、動き補償ユニット８２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを判断し、その補間フィルタを使用して予測ブロックを生成し得る。
【０１５７】
[0173]逆量子化処理ユニット８６は、ビットストリーム中で与えられ、エントロピー復号ユニット８０によって復号された、量子化複数の変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度を判断し、同様に、適用されるべき逆量子化の程度を判断するための、ビデオスライス中の各ビデオブロックについてビデオエンコーダ２０によって計算される量子化パラメータの使用を含み得る。逆変換処理ユニット８８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを複数の変換係数に適用する。
【０１５８】
[0174]場合によっては、逆変換処理ユニット８８は、（水平方向と垂直方向の両方における）２次元（２Ｄ）逆変換を係数に適用し得る。本開示の技法によれば、逆変換処理ユニット８８は、代わりに、ＴＵの各々中の残差データに、水平方向１Ｄ逆変換を適用すること、垂直方向１Ｄ逆変換を適用すること、または変換を適用しないことがある。ビデオエンコーダ２０において残差データに適用される変換のタイプは、適切なタイプの逆変換を複数の変換係数に適用するために、ビデオデコーダ３０にシグナリングされ得る。
【０１５９】
[0175]動き補償ユニット８２が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換処理ユニット８８からの残差ブロックを動き補償ユニット８２によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器９０は、この加算演算を実行する１つまたは複数の構成要素を表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化するために、または場合によってはビデオ品質を改善するために、他のループフィルタが（コーディングループ中またはコーディングループ後のいずれかで）使用され得る。所与のフレームまたはピクチャ中の復号ビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ９２に記憶される。参照ピクチャメモリ９２はまた、図６のディスプレイデバイス３４などのディスプレイデバイス上での後の表示のための、復号ビデオを記憶する。
【０１６０】
[0176]図１５は、本開示の技法による、ビデオデータを復号することの一例を示すフローチャートである。図１５におけるプロセスは、概して、ビデオデコーダ３０によって実行されるものとして以下で説明されるが、プロセスは、ビデオデコーダ３０、エントロピー復号ユニット５６、および／またはコンテキストモデリングユニット７０８の任意の組合せによって実行され得る。
【０１６１】
[0177]図１５に示されるように、ビデオデコーダ３０は、エントロピー符号化ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信する（１５０２）。サブブロックは４×４サブブロックであり得、ブロックは８×８変換ブロックであり得る。ビデオエンコーダ２０（たとえば、図１１のブロック１１０４）と同様に、ビデオデコーダ３０は、現在のサブブロックの複数の変換係数の複数の有意性シンタックス要素のための複数の走査タイプ（たとえば、水平走査、垂直走査、および対角走査）のために２次元コンテキストパターンのうちの同じ複数のコンテキストパターンからコンテキストパターンを選択する（１５０４）。この例では、コンテキストパターンの各々は、１つまたは複数の隣接ブロック（たとえば、第１の隣接サブブロックおよび第２の隣接ブロック）が非０変換係数を含むかどうかの条件に関連する。
【０１６２】
[0178]ビデオデコーダ３０は、ビデオエンコーダ２０（たとえば、図１１のブロック１１０６）に関して上記で説明されたのと同様の方法で、選択されたコンテキストパターンに基づいて、複数の変換係数の複数の有意性シンタックス要素の各々にコンテキストを割り当てる（１５０６）。たとえば、ＣＧＦBが０に等しく、ＣＧＦRが１に等しいという条件に関連するコンテキストパターンが選択された場合、ビデオデコーダ３０は、第１の行に他の行のためのコンテキストとは異なるコンテキストを割り当てる。ＣＧＦBが１に等しく、ＣＧＦRが０に等しいという条件に関連するコンテキストパターンが選択された場合、ビデオデコーダ３０は、第１の列に他の列のためのコンテキストとは異なるコンテキストを割り当てる。ＣＧＦBが１に等しく、ＣＧＦRが１に等しいという条件に関連するコンテキストパターンが選択された場合、ビデオデコーダ３０は複数の有意性シンタックス要素に同じコンテキストを割り当てる。ビデオデコーダ３０は、割り当てられたコンテキストに基づいて、ＣＡＢＡＣが複数の有意性シンタックス要素を復号する（１５０８）。
【０１６３】
[0179]図１６は、本開示の技法による、ビデオデータを復号することの一例を示すフローチャートである。図１６におけるプロセスは、概して、ビデオデコーダ３０によって実行されるものとして以下で説明されるが、プロセスは、ビデオデコーダ３０、エントロピー復号ユニット７０、および／またはコンテキストモデリングユニット７０８の任意の組合せによって実行され得る。
【０１６４】
[0180]図１６に示されるように、ビデオデコーダ３０は、エントロピー符号化ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信する（１６０２）。サブブロックは４×４サブブロックであり得、ブロックは８×８変換ブロックであり得る。ビデオエンコーダ２０（たとえば、図１２のブロック１２０４）と同様に、ビデオデコーダ３０は、１次元コンテキストパターンとして記憶されたコンテキストパターンを選択する（１６０４）。コンテキストパターンは、２つ以上の走査タイプ（たとえば、水平、対角、および垂直走査タイプ）のためのものであり得る。
【０１６５】
[0180]図１６に示されるように、ビデオデコーダ３０は、エントロピー符号化ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信する（１６０２）。サブブロックは４×４サブブロックであり得、ブロックは８×８変換ブロックであり得る。ビデオエンコーダ２０（たとえば、図１２のブロック１２０４）と同様に、ビデオデコーダ３０はコンテキストパターン（たとえば、１次元コンテキストパターンとして記憶されたコンテキストパターン）を選択する（１６０４）。コンテキストパターンは、２つ以上の走査タイプ（たとえば、水平、対角、および垂直走査タイプ）のためのものであり得る。
【０１６６】
[0181]一例として、上記で説明されたように、選択されたコンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキストを定義し、走査順序における第２および第３の複数の有意性シンタックス要素のために第２のコンテキストを定義し、走査順序における残りの複数の有意性シンタックス要素のために第３のコンテキストを定義する。別の例として、上記で説明されたように、選択されたコンテキストパターンは、走査順序における第１の複数の有意性シンタックス要素のために第１のコンテキストを定義し、走査順序における残りの複数の有意性シンタックス要素のために第２のコンテキストを定義する。別の例として、選択されたコンテキストパターンは、複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する。
【０１６７】
[0182]いくつかの例では、選択されたコンテキストパターンは、１次元コンテキストパターンとして記憶された複数のコンテキストパターンから選択される。たとえば、複数のコンテキストパターンは、図９Ａ〜図９Ｄに示された２次元コンテキストパターンから事前計算され、記憶される。一例として、複数のコンテキストパターンのうちの１つは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを含む２次元コンテキストパターンから事前計算される。そのような２次元コンテキストパターンの一例は、図９Ａに示されたコンテキストパターンである。別の例として、複数のコンテキストパターンのうちの１つは、水平方向、垂直方向、または対角方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを含む２次元コンテキストパターンから事前計算される。そのような２次元コンテキストパターンの一例は、図９Ｄに示されたコンテキストパターンである。
【０１６８】
[0183]別の例として、複数のコンテキストパターンのうちの１つは、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを含む第１の２次元コンテキストパターンから事前計算される。第１の２次元コンテキストパターンの一例は、図９Ｂに示されたコンテキストパターンである。第２の２次元コンテキストパターンの一例は、図９Ｃに示されたコンテキストパターンである。
【０１６９】
[0184]ビデオデコーダ３０は、選択されたコンテキストに基づいて複数の有意性シンタックス要素にコンテキストを割り当てる（１６０６）。ビデオデコーダ２０は、割り当てられたコンテキストに基づいて、ＣＡＢＡＣが複数の有意性シンタックス要素を復号する（１６０８）。
【０１７０】
[0185]１つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１７１】
[0186]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１７２】
[0187]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または本明細書で説明された技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０１７３】
[0188]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示された技法を実行するために構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットが説明されたが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明されたように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明された１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１７４】
[0189]様々な例が説明された。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2018110405.tif 000007
【図２Ａ】
2018110405.tif 000008
【図２Ｂ】
2018110405.tif 000009
【図３Ａ】
2018110405.tif 000010
【図３Ｂ】
2018110405.tif 000011
【図４】
2018110405.tif 000012
【図５Ａ】
2018110405.tif 000013
【図５Ｂ】
2018110405.tif 000014
【図５Ｃ】
2018110405.tif 000015
【図５Ｄ】
2018110405.tif 000016
【図６】
2018110405.tif 000017
【図７】
2018110405.tif 000018
【図８】
2018110405.tif 000019
【図９Ａ】
2018110405.tif 000020
【図９Ｂ】
2018110405.tif 000021
【図９Ｃ】
2018110405.tif 000022
【図９Ｄ】
2018110405.tif 000023
【図１０】
2018110405.tif 000024
【図１１】
2018110405.tif 000025
【図１２】
2018110405.tif 000026
【図１３】
2018110405.tif 000027
【図１４】
2018110405.tif 000028
【図１５】
2018110405.tif 000029
【図１６】
2018110405.tif 000030
【手続補正書】
【提出日】平成30年2月21日(2018.2.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、前記方法は、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を受信することと、
複数のコンテキストパターンから１つのコンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することと
を備える、方法。
【請求項２】
前記コンテキストパターンを選択することは、水平走査および垂直走査の走査タイプのために前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項３】
前記コンテキストパターンを選択することは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項４】
前記コンテキストパターンを選択することは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項５】
前記コンテキストパターンを選択することは、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項１に記載の方法。
【請求項６】
前記現在のサブブロックは４×４サブブロックを備え、前記ブロックは８×８ブロックを備える、請求項１に記載の方法。
【請求項７】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査と、前記第３の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、請求項１に記載の方法。
【請求項８】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査、前記第３の２次元コンテキストパターンの垂直走査、および前記第３の２次元コンテキストパターンの対角走査を表すように記憶される、請求項１に記載の方法。
【請求項９】
ビデオデータを復号するためのデバイスであって、前記デバイスは、
複数のコンテキストパターンを記憶するように構成されたメモリユニットと、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を受信することと、
前記複数のコンテキストパターンから１つのコンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することと
を行うように構成されたビデオデコーダと
を備える、デバイス。
【請求項１０】
前記コンテキストパターンを選択するために、前記ビデオデコーダは、水平走査および垂直走査の走査タイプのために前記コンテキストパターンを選択するように構成された、請求項９に記載のデバイス。
【請求項１１】
前記コンテキストパターンを選択するために、前記ビデオデコーダは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項９に記載のデバイス。
【請求項１２】
前記コンテキストパターンを選択するために、前記ビデオデコーダは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項９に記載のデバイス。
【請求項１３】
前記コンテキストパターンを選択するために、前記ビデオデコーダは、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項９に記載のデバイス。
【請求項１４】
前記現在のサブブロックは４×４サブブロックを備え、前記ブロックは８×８ブロックを備える、請求項９に記載のデバイス。
【請求項１５】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査と、前記第３の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、請求項９に記載のデバイス。
【請求項１６】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査、前記第３の２次元コンテキストパターンの垂直走査、および前記第３の２次元コンテキストパターンの対角走査を表すように記憶される、請求項９に記載のデバイス。
【請求項１７】
前記デバイスは、
集積回路、
マイクロプロセッサ、または
前記ビデオデコーダを含むワイヤレス通信デバイス
のうちの１つを備える、請求項９に記載のデバイス。
【請求項１８】
実行されたとき、ビデオデータを復号するためのデバイスの１つまたは複数のプロセッサに、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を受信することと、
複数のコンテキストパターンから１つのコンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することと、
を行わせる命令を記憶した、非一時的コンピュータ可読記憶媒体。
【請求項１９】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令は、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、請求項１８に記載の非一時的コンピュータ可読記憶媒体。
【請求項２０】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令は、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、請求項１８に記載の非一時的コンピュータ可読記憶媒体。
【請求項２１】
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令は、前記１つまたは複数のプロセッサに、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、請求項１８に記載の非一時的コンピュータ可読記憶媒体。
【請求項２２】
ビデオデータを符号化するための方法であって、前記方法は、
ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を生成することと、
複数のコンテキストパターンから１つのコンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を符号化することと、
前記符号化された有意性シンタックス要素を出力することと
を備える、方法。
【請求項２３】
前記コンテキストパターンを選択することは、水平走査および垂直走査の走査タイプのために前記コンテキストパターンを選択することを備える、請求項２２に記載の方法。
【請求項２４】
前記コンテキストパターンを選択することは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２２に記載の方法。
【請求項２５】
前記コンテキストパターンを選択することは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２２に記載の方法。
【請求項２６】
前記コンテキストパターンを選択することは、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、請求項２２に記載の方法。
【請求項２７】
前記現在のサブブロックは４×４サブブロックを備え、前記ブロックは８×８ブロックを備える、請求項２２に記載の方法。
【請求項２８】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査と、前記第３の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、請求項２２に記載の方法。
【請求項２９】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査、前記第３の２次元コンテキストパターンの垂直走査、および前記第３の２次元コンテキストパターンの対角走査を表すように記憶される、請求項２２に記載の方法。
【請求項３０】
ビデオデータを符号化するためのデバイスであって、前記デバイスは、
複数のコンテキストパターンを記憶するように構成されたメモリユニットと、
ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を生成することと、
前記複数のコンテキストパターンから前記コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を符号化することと、
前記符号化された有意性シンタックス要素を出力することと
を行うように構成されたビデオエンコーダと
を備える、デバイス。
【請求項３１】
前記コンテキストパターンを選択するために、前記ビデオエンコーダは、水平走査および垂直走査の走査タイプのために前記コンテキストパターンを選択するように構成された、請求項３０に記載のデバイス。
【請求項３２】
前記コンテキストパターンを選択するために、前記ビデオエンコーダは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３０に記載のデバイス。
【請求項３３】
前記コンテキストパターンを選択するために、前記ビデオエンコーダは、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３０に記載のデバイス。
【請求項３４】
前記コンテキストパターンを選択するために、前記ビデオエンコーダは、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、請求項３０に記載のデバイス。
【請求項３５】
前記現在のサブブロックは４×４サブブロックを備え、前記ブロックは８×８ブロックを備える、請求項３０に記載のデバイス。
【請求項３６】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査と、前記第３の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、請求項３０に記載のデバイス。
【請求項３７】
前記複数のコンテキストパターンのうちの第２のコンテキストパターンは、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じる第３の２次元コンテキストパターンのコンテキストを備え、前記第２のコンテキストパターンのみが、前記第３の２次元コンテキストパターンの水平走査、前記第３の２次元コンテキストパターンの垂直走査、および前記第３の２次元コンテキストパターンの対角走査を表すように記憶される、請求項３０に記載のデバイス。
【請求項３８】
ビデオデータを符号化するためのデバイスであって、前記デバイスは、
ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を生成するための手段と、
複数のコンテキストパターンから１つのコンテキストパターンを選択するための手段と、ここにおいて、前記コンテキストパターンは、前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別し、前記複数のコンテキストパターンは、それぞれの１次元コンテキストパターンとして記憶され、複数の２次元コンテキストパターンから生成され、各１次元コンテキストパターンは、前記２次元コンテキストパターンの水平、垂直、または対角走査からのコンテキスト値を含み、前記複数のコンテキストパターンのうちの第１のコンテキストパターンは、水平方向に走査された第１の２次元コンテキストパターンおよび垂直方向に走査された第２の２次元コンテキストパターンのコンテキスト値と同じであるコンテキスト値を備え、前記第１のコンテキストパターンのみが、前記第１の２次元コンテキストパターンの水平走査と、前記第２の２次元コンテキストパターンの垂直走査との両方を表すように記憶される、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てるための手段と、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）は、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を符号化するための手段と、
前記符号化された有意性シンタックス要素を出力するための手段と
を備える、デバイス。
【請求項３９】
前記コンテキストパターンを選択するための前記手段は、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項３８に記載のデバイス。
【請求項４０】
前記コンテキストパターンを選択するための前記手段は、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項３８に記載のデバイス。
【請求項４１】
前記コンテキストパターンを選択するための前記手段は、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、請求項３８に記載のデバイス。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１７４
【補正方法】変更
【補正の内容】
【０１７４】
[0189]様々な例が説明された。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータを復号するための方法であって、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンは前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することと
を備える、方法。
［Ｃ２］
前記コンテキストパターンを選択することが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択することを備える、Ｃ１に記載の方法。
［Ｃ３］
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する、前記コンテキストパターンを選択することを備える、Ｃ１に記載の方法。
［Ｃ４］
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、Ｃ１に記載の方法。
［Ｃ５］
前記コンテキストパターンを選択することが、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、Ｃ１に記載の方法。
［Ｃ６］
前記現在のサブブロックが４×４サブブロックを備え、および前記ブロックが８×８ブロックを備える、Ｃ１に記載の方法。
［Ｃ７］
前記コンテキストパターンを選択することが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択することを備える、Ｃ１に記載の方法。
［Ｃ８］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、ここにおいて、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、
Ｃ７に記載の方法。
［Ｃ９］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、および、ここにおいて、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ７に記載の方法。
［Ｃ１０］
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、および、ここにおいて、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ７に記載の方法。
［Ｃ１１］
ビデオデータを復号するためのデバイスであって、前記デバイスが、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記有意性シンタックス要素を復号することと
を行うように構成されたビデオデコーダを備える、デバイス。
［Ｃ１２］
前記コンテキストパターンを選択するために、前記ビデオデコーダが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択するように構成された、Ｃ１１に記載のデバイス。
［Ｃ１３］
前記コンテキストパターンを選択するために、前記ビデオデコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および、前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ１１に記載のデバイス。
［Ｃ１４］
前記コンテキストパターンを選択するために、前記ビデオデコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ１１に記載のデバイス。
［Ｃ１５］
前記コンテキストパターンを選択するために、前記ビデオデコーダが、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ１１に記載のデバイス。
［Ｃ１６］
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、Ｃ１１に記載のデバイス。
［Ｃ１７］
前記コンテキストパターンを選択するために、前記ビデオデコーダが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択するように構成された、Ｃ１１に記載のデバイス。
［Ｃ１８］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ１７に記載のデバイス。
［Ｃ１９］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、そして、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ１７に記載のデバイス。
［Ｃ２０］
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、そして前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ１７に記載のデバイス。
［Ｃ２１］
前記デバイスが、
集積回路と、
マイクロプロセッサと、
前記ビデオデコーダを含むワイヤレス通信デバイスとのうちの１つを備える、Ｃ１１に記載のデバイス。
［Ｃ２２］
実行されたとき、ビデオデータを復号するためのデバイスの１つまたは複数のプロセッサに、
ビットストリーム中で、ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を受信することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのための複数のコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記複数の有意性シンタックス要素を復号することと、
を行わせる命令を記憶したコンピュータ可読記憶媒体。
［Ｃ２３］
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択させる、命令を備えるＣ２２に記載のコンピュータ可読記憶媒体。
［Ｃ２４］
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、Ｃ２２に記載のコンピュータ可読記憶媒体。
［Ｃ２５］
前記１つまたは複数のプロセッサに、前記コンテキストパターンを選択させる前記命令が、前記１つまたは複数のプロセッサに、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択させる命令を備える、Ｃ２２に記載のコンピュータ可読記憶媒体。
［Ｃ２６］
ビデオデータを符号化するための方法であって、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成することと、
コンテキストパターンを選択することであって、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、選択することと、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記変換係数の前記有意性シンタックス要素を符号化することと、
前記符号化された複数の有意性シンタックス要素を出力することと
を備える、方法。
［Ｃ２７］
前記コンテキストパターンを選択することが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択することを備える、Ｃ２６に記載の方法。
［Ｃ２８］
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、および前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択することを備える、Ｃ２６に記載の方法。
［Ｃ２９］
前記コンテキストパターンを選択することが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択することを備える、Ｃ２６に記載の方法。
［Ｃ３０］
前記コンテキストパターンを選択することが、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択することを備える、Ｃ２６に記載の方法。
［Ｃ３１］
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、Ｃ２６に記載の方法。
［Ｃ３２］
前記コンテキストパターンを選択することが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択することを備える、Ｃ２６に記載の方法。
［Ｃ３３］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ３２に記載の方法。
［Ｃ３４］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ３２に記載の方法。
［Ｃ３５］
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ３２に記載の方法。
［Ｃ３６］
ビデオデータを符号化するためのデバイスであって、前記デバイスが、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成することと、
コンテキストパターンを選択することと、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てることと、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記複数の変換係数の前記複数の有意性シンタックス要素を符号化することと、
前記符号化された複数の有意性シンタックス要素を出力することと
を行うように構成されたビデオエンコーダを備える、デバイス。
［Ｃ３７］
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、水平走査、垂直走査、および対角走査の走査タイプのために前記コンテキストパターンを選択するように構成された、Ｃ３６に記載のデバイス。
［Ｃ３８］
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ３６に記載のデバイス。
［Ｃ３９］
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ３６に記載のデバイス。
［Ｃ４０］
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、前記複数の有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するように構成された、Ｃ３６に記載のデバイス。
［Ｃ４１］
前記現在のサブブロックが４×４サブブロックを備え、前記ブロックが８×８ブロックを備える、Ｃ３６に記載のデバイス。
［Ｃ４２］
前記コンテキストパターンを選択するために、前記ビデオエンコーダが、１次元コンテキストパターンとしてそれぞれ記憶された複数のコンテキストパターンから前記コンテキストパターンを選択するように構成された、Ｃ３６に記載のデバイス。
［Ｃ４３］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、水平方向または垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ４２に記載のデバイス。
［Ｃ４４］
前記複数のコンテキストパターンのうちの１つが２次元コンテキストパターンから事前計算され、前記２次元コンテキストパターンが、対角方向、水平方向、および垂直方向に走査された場合に同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ４２に記載のデバイス。
［Ｃ４５］
前記複数のコンテキストパターンのうちの１つが第１の２次元コンテキストパターンから事前計算され、前記第１の２次元コンテキストパターンが、水平方向に走査された場合に、第２の２次元コンテキストパターンが垂直方向に走査されたときと同じ１次元コンテキストパターンを生じるコンテキストを備える、Ｃ４２に記載のデバイス。
［Ｃ４６］
ビデオデータを符号化するためのデバイスであって、
ブロックの現在のサブブロックのための複数の変換係数の複数の有意性シンタックス要素を生成するための手段と、
コンテキストパターンを選択するための手段と、ここにおいて、前記コンテキストパターンが前記現在のサブブロックの２つ以上の走査タイプのためのコンテキストを識別する、
前記選択されたコンテキストパターンに基づいて、前記現在のサブブロックのための前記複数の変換係数の前記複数の有意性シンタックス要素にコンテキストを割り当てるための手段と、
コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）が、前記割り当てられたコンテキストに基づいて、前記現在のサブブロックの前記変換係数の前記有意性シンタックス要素を符号化するための手段と、
前記符号化された有意性シンタックス要素を出力するための手段と
を備える、デバイス。
［Ｃ４７］
前記コンテキストパターンを選択するための前記手段が、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、前記走査順序における第２および第３の有意性シンタックス要素のために第２のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第３のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、Ｃ４６に記載のデバイス。
［Ｃ４８］
前記コンテキストパターンを選択するための前記手段が、走査順序における第１の有意性シンタックス要素のために第１のコンテキストを定義し、そして前記走査順序における残りの有意性シンタックス要素のために第２のコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、Ｃ４６に記載のデバイス。
［Ｃ４９］
前記コンテキストパターンを選択するための前記手段が、前記有意性シンタックス要素のすべてのために同じコンテキストを定義する前記コンテキストパターンを選択するための手段を備える、Ｃ４６に記載のデバイス。
【外国語明細書】
2018110405000001.pdf