(57)【特許請求の範囲】
【請求項１】
ビデオ符号化プロセス中にビデオデータのブロックに関連付けられる係数を符号化する方法であって、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化することを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化することは、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化することを含むコンテキスト適応型バイナリ算術符号化プロセスを実行することを備え、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化することは、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を決定し、前記水平座標が１つ以上のビンから成る第１の系列を備えるように、前記水平座標を二値化することと、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を決定し、前記垂直座標が１つ以上のビンから成る第２の系列を備えるように、前記垂直座標を二値化することと、
コンテキスト適応型バイナリ算術符号化プロセスを実行することによって、前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列を符号化することとを備える、方法。
【請求項２】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記方法は、
ビデオデータの第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することと、
前記第１のブロックを生成するために、前記第１の走査順を使用して前記連続する系列を前記第１のブロックにマッピングすることと、
を更に備え、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、請求項１に記載の方法。
【請求項３】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項１に記載の方法。
【請求項４】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項３に記載の方法。
【請求項５】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項３に記載の方法。
【請求項６】
前記コンテキスト適応型バイナリ算術符号化プロセスを実行することは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含むようにし、前記少なくとも１つのコンテキストは、前記系列内のそれぞれのビンの位置を含む、請求項１に記載の方法。
【請求項７】
前記水平座標及び前記垂直座標を符号化することは、
前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化することを備える、請求項１に記載の方法。
【請求項８】
前記第１の系列の前記少なくとも１つのビンを、前記第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて符号化することは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを備え、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項７に記載の方法。
【請求項９】
前記水平座標及び前記垂直座標を符号化することは、前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列をインターリーブされた様式で符号化することを備える、請求項１に記載の方法。
【請求項１０】
前記インターリーブされた様式で符号化することは、
標準コード化モードを使用して前記第１の系列の１つ以上の第１のビンを、前記標準コード化モードを使用して前記第２の系列の１つ以上の第２のビンを符号化する前に符号化し、続いて、バイパスコード化モードを使用して前記第１の系列の１つ以上の第３のビンを、前記バイパスコード化モードを使用して前記第２の系列の１つ以上の第４のビンを符号化する前に符号化することを備える、請求項９に記載の方法。
【請求項１１】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化することは、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを指示する有意係数フラグを生成することと、
前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成することと、
前記連続する系列を符号化することとを備える、請求項１に記載の方法。
【請求項１２】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化することは、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することと、前記１つ以上のグループの各々は前記係数の１つ以上を備える、
前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することと、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、
前記連続する系列を符号化することと、
を備える、請求項１に記載の方法。
【請求項１３】
ビデオ復号プロセス中にビデオデータのブロックに関連付けられる係数を復号する方法であって、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を復号する前に復号することを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を復号することは、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を復号することを含むコンテキスト適応型バイナリ算術復号プロセスを実行することを備え、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を復号することは、
コンテキスト適応型バイナリ算術復号プロセスを使用して水平構成要素に関連付けられる１つ以上のビンの第１の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号することと、
前記コンテキスト適応型バイナリ算術復号プロセスを使用して垂直構成要素に関連付けられる１つ以上のビンの第２の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号することと、
前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定することと、
を備える、方法。
【請求項１４】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記方法は、
前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、
ビデオデータの第２のブロックを生成するために、前記連続する系列を第２の走査順を使用して前記第２のブロックにマッピングすることと、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することと、
を更に備える、請求項１３に記載の方法。
【請求項１５】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項１３に記載の方法。
【請求項１６】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項１５に記載の方法。
【請求項１７】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項１５に記載の方法。
【請求項１８】
前記コンテキスト適応型バイナリ算術復号プロセスを実行することは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含むようにし、前記少なくとも１つのコンテキストは、前記系列内のそれぞれのビンの位置を含む、請求項１３に記載の方法。
【請求項１９】
前記水平座標及び前記垂直座標を復号することは、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号することを備える、請求項１３に記載の方法。
【請求項２０】
前記第１の系列の前記少なくとも１つのビンを、前記第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号することは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを備え、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項１９に記載の方法。
【請求項２１】
前記水平座標及び前記垂直座標を復号することは、前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列をインターリーブされた様式で復号することを備える、請求項１３に記載の方法。
【請求項２２】
前記インターリーブされた様式で復号することは、
標準コード化モードを使用して前記第１の系列の１つ以上のビンを、前記標準コード化モードを使用して前記第２の系列の１つ以上の第２のビンを復号する前に復号し、続いて、バイパスコード化モードを使用して前記第１の系列の１つ以上の第３のビンを、前記バイパスコード化モードを使用して前記第２の系列の１つ以上の第４のビンを復号する前に復号することを備える、請求項２１に記載の方法。
【請求項２３】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することと、前記有意係数フラグの各々は、それぞれの係数が非ゼロ係数であるか否かを指示する、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することと、
を備える、請求項１３に記載の方法。
【請求項２４】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することを備え、前記１つ以上のグループの各々は前記係数の１つ以上を備え、
前記１つ以上のグループの各々について、前記連続する系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含み、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは更に、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することを備える、請求項１３に記載の方法。
【請求項２５】
ビデオ符号化プロセス中にビデオデータのブロックに関連付けられる係数を符号化するための装置であって、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化するように構成されるビデオエンコーダを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記ビデオエンコーダは、
前記ビデオエンコーダが前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化することを含むコンテキスト適応型バイナリ算術符号化プロセスを実行するように構成され、
前記ビデオエンコーダはエントロピー符号化ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化するために、前記エントロピー符号化ユニットは、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を決定し、前記水平座標が１つ以上のビンから成る第１の系列を備えるように、前記水平座標を二値化し、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を決定し、前記垂直座標が１つ以上のビンから成る第２の系列を備えるように、前記垂直座標を二値化し、
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列を符号化するように構成される、装置。
【請求項２６】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記エントロピー符号化ユニットは、
ビデオデータの第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することと、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第１のブロックを生成するために、前記第１の走査順を使用して前記連続する系列を前記第１のブロックにマッピングすることとを行うように更に構成される、請求項２５に記載の装置。
【請求項２７】
前記水平座標及び前記垂直座標を符号化するために、前記エントロピー符号化ユニットは、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化するように構成される、請求項２５に記載の装置。
【請求項２８】
前記第１の系列の前記少なくとも１つのビンを、前記第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて符号化するために、前記ビデオエンコーダは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術符号化プロセスを実行するように構成され、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項２７に記載の装置。
【請求項２９】
前記水平座標及び前記垂直座標を符号化するために、前記ビデオエンコーダは、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列をインターリーブされた様式で符号化するように構成される、請求項２５に記載の装置。
【請求項３０】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記ビデオエンコーダは、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを指示する有意係数フラグを生成し、
前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成し、
前記連続する系列を符号化するように構成される、請求項２５に記載の装置。
【請求項３１】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記ビデオエンコーダは、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することと、前記１つ以上のグループの各々は前記係数の１つ以上を備える、
前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することと、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、
前記連続する系列を符号化することとを行うように構成される、請求項２５に記載の装置。
【請求項３２】
ビデオ復号プロセス中にビデオデータのブロックに関連付けられる係数を復号するための装置であって、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を復号する前に復号するように構成されるビデオデコーダを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を復号するために、前記ビデオデコーダは、
前記ビデオデコーダが、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を復号することを含むコンテキスト適応型バイナリ算術復号プロセスを実行するように構成され、
前記ビデオデコーダはエントロピー復号ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を復号するために、前記エントロピー復号ユニットは、
水平構成要素に関連付けられる１つ以上のビンの第１の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号し、
垂直構成要素に関連付けられる１つ以上のビンの第２の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号し、
前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定するように構成される、装置。
【請求項３３】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記ビデオデコーダは、
前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、
ビデオデータの第２のブロックを生成するために、前記連続する系列を第２の走査順を使用して前記第２のブロックにマッピングすることと、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することとを行うように更に構成される、請求項３２に記載の装置。
【請求項３４】
前記水平座標及び前記垂直座標を復号するために、前記ビデオデコーダは、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するように構成される、請求項３２に記載の装置。
【請求項３５】
前記第１の系列の前記少なくとも１つのビンを、前記第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号するために、前記ビデオデコーダは、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術復号プロセスを実行するように構成され、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項３４に記載の装置。
【請求項３６】
前記水平座標及び前記垂直座標を復号するために、前記ビデオデコーダは、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列の前記１つ以上のビンをインターリーブされた様式で復号するように構成される、請求項３２に記載の装置。
【請求項３７】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するために、前記ビデオデコーダは、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することと、前記有意係数フラグの各々は、それぞれの係数が非ゼロ係数であるか否かを指示する、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行うように構成される、請求項３２に記載の装置。
【請求項３８】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するために、前記ビデオデコーダは、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することと、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記連続する系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行うように構成される、請求項３２に記載の装置。
【請求項３９】
前記装置は、
集積回路と、
マイクロプロセッサと、
前記ビデオデコーダを含むワイヤレス通信機器とのうちの少なくとも１つを備える、請求項２６又は３２に記載の装置。
【請求項４０】
ビデオ符号化プロセス中にビデオデータのブロックに関連付けられる係数を符号化するための機器であって、
前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を符号化するための手段と、
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化ための手段とを備え、
前記走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を符号化するための手段は、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化するための手段を含む、コンテキスト適応型バイナリ算術符号化プロセスを実行するための手段を備え、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化するための前記手段は、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を決定し、前記水平座標が１つ以上のビンから成る第１の系列を備えるように、前記水平座標を二値化するための手段と、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を決定し、前記垂直座標が１つ以上のビンから成る第２の系列を備えるように、前記垂直座標を二値化するための手段と、
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列を符号化するための手段とを備える、機器。
【請求項４１】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記機器は、
ビデオデータの第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成するための手段と、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第１のブロックを生成するために、前記第１の走査順を使用して前記連続する系列を前記第１のブロックにマッピングするための手段と、
を更に備える、請求項４０に記載の機器。
【請求項４２】
前記水平座標及び前記垂直座標を符号化するための前記手段は、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化するための手段を備える、請求項４０に記載の機器。
【請求項４３】
前記１つ以上のビンから成る第１の系列の前記少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて符号化するための前記手段は、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術符号化プロセスを実行するための手段を備え、前記少なくとも１つのコンテキストは、前記座標のうちの前記他方の１つに対応する前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項４２に記載の機器。
【請求項４４】
前記水平座標及び前記垂直座標を符号化するための前記手段は、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列の前記１つ以上のビンをインターリーブされた様式で符号化するための手段を備える、請求項４０に記載の機器。
【請求項４５】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するための前記手段は、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを指示する有意係数フラグを生成するための手段と、
前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成するための手段と、
前記連続する系列を符号化するための手段とを備える、請求項４０に記載の機器。
【請求項４６】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するための前記手段は、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成するための手段と、前記１つ以上のグループの各々は前記係数の１つ以上を備える、
前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成するための手段と、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成するための手段と、
前記連続する系列を符号化するための手段とを備える、請求項４０に記載の機器。
【請求項４７】
ビデオ復号プロセス中にビデオデータのブロックに関連付けられる係数を復号するための機器であって、
前記ブロック内の他の非ゼロ係数の位置を識別する情報を復号する前に、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を復号するための手段、
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するための手段とを備え、
前記走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を復号するための手段は、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を復号するための手段を含む、コンテキスト適応型バイナリ算術復号プロセスを実行するための手段を備え、
前記ブロック内の前記２次元位置を復号するための前記手段は、
水平構成要素に関連付けられる１つ以上のビンの第１の系列を復号するための手段を含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号するための手段と、
垂直構成要素に関連付けられる１つ以上のビンの第２の系列を復号するための手段を含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号するための手段と、
前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定するための手段とを備える、機器。
【請求項４８】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記機器は、
前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成するための手段と、
ビデオデータの第２のブロックを生成するために、前記連続する系列を第２の走査順を使用して前記第２のブロックにマッピングするための手段と、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定するための手段とを更に備える、請求項４７に記載の機器。
【請求項４９】
前記水平座標及び前記垂直座標を復号するための前記手段は、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するための手段を備える、請求項４７に記載の機器。
【請求項５０】
前記１つ以上のビンから成る第１の系列の前記少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号するための前記手段は、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術復号プロセスを実行するための手段を備え、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項４９に記載の機器。
【請求項５１】
前記水平座標及び前記垂直座標を復号するための前記手段は、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列の前記１つ以上のビンをインターリーブされた様式で復号するための手段を備える、請求項４７に記載の機器。
【請求項５２】
前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するための前記手段は、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号するための手段と、前記有意係数フラグの各々は、それぞれの係数が非ゼロ係数であるか否かを指示する、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定するための手段とを備える、請求項４７に記載の機器。
【請求項５３】
前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するための前記手段は、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号するための手段と、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記連続する系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定するための手段とを備える、請求項４７に記載の機器。
【請求項５４】
実行されるとプロセッサにビデオ符号化プロセス中にビデオデータのブロックに関連付けられる係数を符号化させる命令を記憶するコンピュータ可読記憶媒体であって、前記命令は前記プロセッサに、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化させ、前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、前記プロセッサに、前記プロセッサが前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化することを含む、コンテキスト適応型バイナリ算術符号化プロセスを実行させる命令を備え、
前記命令はプロセッサに、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を決定させ、前記水平座標が１つ以上のビンから成る第１の系列を備えるように、前記水平座標を二値化させ、
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を決定させ、前記垂直座標が１つ以上のビンから成る第２の系列を備えるように、前記垂直座標を二値化させ、
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列を符号化させる、コンピュータ可読記憶媒体。
【請求項５５】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記コンピュータ可読記憶媒体は、前記プロセッサに、
ビデオデータの第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することと、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第１のブロックを生成するために、前記第１の走査順を使用して前記連続する系列を前記第１のブロックにマッピングすることとを行わせる命令を更に記憶する、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項５６】
前記プロセッサに、前記水平座標及び前記垂直座標を符号化させる前記命令は、前記プロセッサに、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化させる命令を備える、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項５７】
前記プロセッサに、前記１つ以上のビンから成る第１の系列の前記少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて符号化させる前記命令は、前記プロセッサに、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術符号化プロセスを実行させる命令を備え、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項５６に記載のコンピュータ可読記憶媒体。
【請求項５８】
前記プロセッサに、前記水平座標及び前記垂直座標を符号化させる前記命令は、前記プロセッサに、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列の前記１つ以上のビンをインターリーブされた様式で符号化させる命令を備える、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項５９】
前記走査順は第１の走査順を備え、前記命令は更に前記プロセッサに、
前記第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定させ、前記係数が非ゼロ係数であるか否かを指示する有意係数フラグを生成させ、
前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成させ、
前記連続する系列を符号化させる、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項６０】
前記命令は更に前記プロセッサに、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することと、前記１つ以上のグループの各々は前記係数の１つ以上を備える、
前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することと、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、
前記連続する系列を符号化することとを行わせる、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項６１】
実行されるとプロセッサにビデオ復号プロセス中にビデオデータのブロックに関連付けられる係数を復号させる命令を記憶するコンピュータ可読記憶媒体であって、前記命令は前記プロセッサに、
前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を復号する前に復号させ、前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を復号させる前記命令は、前記プロセッサに、前記プロセッサが前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を復号することを含む、コンテキスト適応型バイナリ算術復号プロセスを実行させる命令を備える、
前記命令はプロセッサに、
水平構成要素に関連付けられる１つ以上のビンの第１の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号させ、
垂直構成要素に関連付けられる１つ以上のビンの第２の系列を復号することを含む、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号させ、
前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定させる、コンピュータ可読記憶媒体。
【請求項６２】
前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記コンピュータ可読記憶媒体は、前記プロセッサに、
前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、
ビデオデータの第２のブロックを生成するために、前記連続する系列を第２の走査順を使用して前記第２のブロックにマッピングすることと、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、
前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することとを行わせる命令を更に記憶する、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項６３】
前記プロセッサに、前記水平座標及び前記垂直座標を復号させる前記命令は、前記プロセッサに、前記１つ以上のビンから成る第１の系列の少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号させる命令を備える、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項６４】
前記プロセッサに、前記１つ以上のビンから成る第１の系列の前記少なくとも１つのビンを、前記１つ以上のビンから成る第２の系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号させる前記命令は、前記プロセッサに、少なくとも１つのコンテキストに基づく少なくとも１つのコンテキストモデルを適用することを含む前記コンテキスト適応型バイナリ算術復号プロセスを実行させる命令を備え、前記少なくとも１つのコンテキストは、前記第２の系列の前記少なくとも１つのビンの前記値を含む、請求項６３に記載のコンピュータ可読記憶媒体。
【請求項６５】
前記プロセッサに、前記水平座標及び前記垂直座標を復号させる前記命令は、前記プロセッサに、前記１つ以上のビンから成る第１の系列の前記１つ以上のビン、及び前記１つ以上のビンから成る第２の系列の前記１つ以上のビンをインターリーブされた様式で復号させる命令を備える、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項６６】
前記命令は前記プロセッサに、
第１の走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記第１の走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することと、前記有意係数フラグの各々は、それぞれの係数が非ゼロ係数であるか否かを指示する、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行わせる、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項６７】
前記命令は前記プロセッサに、
前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することと、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記連続する系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、
前記ブロックに関連付けられる各係数について、前記連続する系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行わせる、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項６８】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項２５に記載の装置。
【請求項６９】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項６８に記載の装置。
【請求項７０】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項６８に記載の装置。
【請求項７１】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項３２に記載の装置。
【請求項７２】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項７１に記載の装置。
【請求項７３】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項７１に記載の装置。
【請求項７４】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項４０に記載の機器。
【請求項７５】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項７４に記載の機器。
【請求項７６】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項７４に記載の機器。
【請求項７７】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項４７に記載の機器。
【請求項７８】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項７７に記載の機器。
【請求項７９】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項７７に記載の機器。
【請求項８０】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項５４に記載のコンピュータ可読記憶媒体。
【請求項８１】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項８０に記載のコンピュータ可読記憶媒体。
【請求項８２】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項８０に記載のコンピュータ可読記憶媒体。
【請求項８３】
前記１つ以上のビンから成る第１の系列、及び前記１つ以上のビンから成る第２の系列は各々、単項符号語、切り捨て単項符号語、指数ゴロム符号語、又は連結符号語のうちの１つを備える、請求項６１に記載のコンピュータ可読記憶媒体。
【請求項８４】
前記切り捨て単項符号語は、
それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、前記座標の前記値に対応する可変数の第１のシンボル、前記第１のシンボルに続く第２のシンボルを備える単数符号語を備え、前記第１のシンボルは前記第２のシンボルとは異なる、
前記それぞれの座標が前記切り捨て値以上の値を有する場合は、前記切り捨て値に対応する所定数の前記第１のシンボルを備える、請求項８３に記載のコンピュータ可読記憶媒体。
【請求項８５】
前記連結符号語は、第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、請求項８３に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その全体が参照により本明細書に組み込まれる、２０１０年１２月３日に出願された米国仮特許出願第６１／４１９，７４０号の利益を主張する。
【０００２】
本開示は、ビデオ符号化に関し、より詳細には、ビデオブロックの係数に関連するシンタックス情報の符号化に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップ又はデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー又は衛星無線電話、所謂「スマートフォン」、ビデオ遠隔会議機器、ビデオストリーミング機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオ符号化（ＡＶＣ：Advanced Video Coding）、現在開発中の高効率ビデオ符号化（ＨＥＶＣ）規格によって定義された規格、及びそのような規格の拡張に記載されているビデオ圧縮技術など、ビデオ圧縮技術を実施する。ビデオ機器は、そのようなビデオ圧縮技術を実施することによって、デジタルビデオ情報をより効率的に送信、受信、コード化、復号、及び／又は記憶することができる。
【０００４】
ビデオ圧縮技術は、ビデオシーケンスに固有の冗長性を低減又は除去するために空間的（イントラピクチャ）予測及び／又は時間的（インターピクチャ）予測を実行する。ブロックベースのビデオ符号化のために、ビデオスライス（即ち、ビデオフレーム又はビデオフレームの一部）が複数のビデオブロックに区分されることができ、これらはツリーブロック、符号化ユニット（ＣＵ）及び／又は符号化ノードと呼ばれることがある。イントラ符号化（Ｉ）ピクチャスライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに関する空間的予測を使用してコード化される。インター符号化（Ｐ又はＢ）ピクチャスライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに関する空間的予測、又は他の参照ピクチャに関する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
空間的又は時間的予測の結果として、符号化されるべきブロックに対する予測ブロックがもたらされる。残差データは、符号化されるべき元のブロックと、予測ブロックとの間の画素差分を表す。インター符号化ブロックは予測ブロックを形成する参照サンプルのブロックを指摘する動きベクトル、及び、符号化ブロックと予測ブロックとの間の差分を指示する残差データに従ってコード化される。イントラ符号化ブロックは、イントラ符号化モード及び残差データに従ってコード化される。さらなる圧縮のために、残差データは、画素領域から変換領域に変換され得、結果として、その後量子化され得る残差変換係数がもたらされる。最初は２次元アレイに構成される量子化変換係数は、１次元ベクトルの変換係数を生成するために走査され得、エントロピー符号化が適用されて、さらなるなお一層の圧縮が達成され得る。
【発明の概要】
【０００６】
本開示は、ビデオ符号化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための技術を説明する。本技術は、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ、又は「有意」係数の位置を識別する情報、即ち、そのブロックの最後尾有意係数位置情報を、そのブロック内の他の有意係数の位置を識別する情報、即ち、そのブロックの有意係数位置情報を符号化する前に、符号化することを含む。本技術は、走査順によるブロック内の最後尾係数の位置を識別する、ブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾係数の位置を識別する、ブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することを更に含む。
【０００７】
本開示の技術は、符号化システムが、他のシステムと比較してより低い複雑度を有することを可能にし得、ブロックの最後尾係数位置情報、及びブロックの有意係数位置情報を符号化するときに、他の方法と比較してより効率的な符号化方法を可能にし得る。有意係数位置情報を符号化する前に最後尾係数位置情報を符号化することはこれらの符号化ステップを分離する効果を有し、これによって、情報を並列に符号化することが可能になり得、他のシステム、例えば、情報をインターリーブされた様式で符号化するシステムと比較してより低い複雑度を有する符号化システムを使用することが可能になり得る。
【０００８】
加えて、有意係数位置情報を符号化する前に最後尾係数位置情報が利用可能であることによって、その情報自体及びブロックの他の情報を符号化するために最後尾係数位置情報を使用することが可能になり得る。幾つかの例では、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、コンテキスト適応型バイナリ算術符号化（ＣＡＢＡＣ）プロセス）を実行するときに、最後尾係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのコンテキストとして使用され得る。このように最後尾係数位置情報を使用することは、結果として、その情報自体を符号化するための、及び、有意係数位置情報を符号化するための正確な統計を使用することになり得、これによって、例えば、他の方法を使用するときよりも小さいビット数を使用して、より効率的に情報を符号化することが可能になり得る。
【０００９】
他の例では、最後尾係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのシンタックス情報として使用され得、それによって、ここでも、他のシステムと比較してより低い複雑度を有する符号化システム、及び他の方法と比較してより効率的な符号化方法を使用することが可能になり得る。
【００１０】
一例として、最後尾係数位置情報は、例えば、走査順によるブロック内の最後尾係数の位置に応じて情報を符号化するための様々に異なる技術を使用して、その情報自体がどのように符号化されるべきかを決定するために使用され得、これによって、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。
【００１１】
別の例として、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するときに、最後尾係数位置情報は、有意係数位置情報を符号化するためのコンテキストを求めるために使用され得る。例えば、走査順によるブロック内の最後尾係数の前に位置する係数の有意性は、その走査順における最後尾係数から開始して最初の係数へと進む、逆の走査順において符号化され得る。この例では、各係数の有意性は、先行して符号化された係数の有意性をコンテキストとして使用することによって符号化され得、これは、結果として、有意係数位置情報を符号化するために正確な統計を使用することになり、他の方法を使用するときよりも効率的に情報を符号化することを可能にし得る。
【００１２】
また別の例として、最後尾係数位置情報は、有意係数位置情報をジョイント符号化するために使用され得る。例えば、有意係数位置情報は、走査順によるブロック内の最後尾係数の前に位置する複数の係数を１つ以上のグループに構成し、各グループ内の係数の有意性をジョイント符号化することによって符号化され得る。最後尾係数位置情報をこのように使用することによって、有意係数位置情報自体を並列に符号化することが可能になり得、これによって、ここでも、他のシステムよりも低い複雑度を有する符号化システムを使用すること、及び、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。
【００１３】
本開示の技術は、任意のＣＡＢＡＣ、確率間隔区分エントロピー符号化（ＰＩＰＥ：probability interval partitioning entropy coding）、又は別のコンテキスト適応型エントロピー符号化方法論とともに使用され得る。ＣＡＢＡＣは、本開示においては、本開示で広く説明する技術に関する限定としてではなく、例示のために記載されている。また、本技術は、例えば、ビデオデータに加えて、一般に他のタイプのデータの符号化に適用されてもよい。
【００１４】
従って、本開示の技術は、他のシステムと比較してより低い複雑度を有する符号化システム、及び、ブロックの最後尾係数位置情報、及びブロックの有意係数位置情報を符号化するときに、他の方法と比較してより効率的な符号化方法を使用することを可能にし得る。このように、本開示の技術を使用すると、情報を含む符号化ビットストリームに関して相対的にビットが節約され、情報を符号化するのに使用されるシステムの複雑度が相対的に低減され得る。
【００１５】
一例では、ビデオ符号化プロセス中にビデオデータブロックに関連付けられる係数を符号化する方法は、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を、ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化することを含み、走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を符号化することは、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後の非ゼロ係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後の非ゼロ係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを含む。
【００１６】
別の例では、ビデオ符号化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための装置は、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を、ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化するように構成されるビデオコーダを含み、走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を符号化するために、ビデオコーダは、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後の非ゼロ係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後の非ゼロ係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成される。
【００１７】
別の例では、ビデオ符号化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための機器は、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を、ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化するための手段を含み、走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を符号化するための手段は、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の１次元位置を符号化するための手段、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の２次元位置を符号化するための手段、及び、走査順によるブロック内の最後の非ゼロ係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後の非ゼロ係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化するための手段のうちの少なくとも１つを含む。
【００１８】
本開示で説明する技術は、ハードウェア、ソフトウェア、ファームウェア、又はその組合せで実装できる。ハードウェアで実装する場合、装置は、集積回路、プロセッサ、ディスクリート論理、又はそれらの任意の組合せとして実現され得る。ソフトウェアで実施する場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又はデジタル信号プロセッサ（ＤＳＰ）など、１つ以上のプロセッサで実行できる。本技術を実行するソフトウェアは、最初に有形コンピュータ可読媒体に記憶し、プロセッサにロードして実行することができる。
【００１９】
従って、本開示は、実行されるとプロセッサに、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を、ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化させる命令を備えるコンピュータ可読媒体をも企図し、プロセッサに、走査順によるブロック内の最後の非ゼロ係数の位置を識別する情報を符号化させる命令は、プロセッサに、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後の非ゼロ係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後の非ゼロ係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後の非ゼロ係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行させる命令を含む。
【００２０】
１つ以上の例の詳細は、添付の図面及び以下の説明に記載されている。他の特徴、目的、及び利点は、その説明及び図面、並びに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００２１】
【図１】本開示の技術に一致する、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前にコード化するための技術を実施し得るビデオコード化及び復号システムの一例を示すブロック図。
【図２】本開示の技術に一致する、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための技術を実施し得るビデオエンコーダの一例を示すブロック図。
【図３】本開示の技術に一致する、ビデオデータブロックのコード化された最後尾係数位置情報を、ブロックのコード化された有意係数位置情報を復号する前に復号するための技術を実施し得るビデオデコーダの一例を示すブロック図。
【図４Ａ】ビデオデータブロック及び対応する有意係数位置情報及び最後尾係数位置情報の一例を示す概念図。
【図４Ｂ】ビデオデータブロック及び対応する有意係数位置情報及び最後尾係数位置情報の一例を示す概念図。
【図４Ｃ】ビデオデータブロック及び対応する有意係数位置情報及び最後尾係数位置情報の一例を示す概念図。
【図５Ａ】ジグザグ走査順を使用して走査されるビデオデータブロックの例を示す概念図。
【図５Ｂ】水平走査順を使用して走査されるビデオデータブロックの例を示す概念図。
【図５Ｃ】垂直走査順を使用して走査されるビデオデータブロックの例を示す概念図。
【図６Ａ】ビデオデータブロックの最後尾係数位置情報の例を示す概念図。
【図６Ｂ】ビデオデータブロックの最後尾係数位置情報の例を示す概念図。
【図７】ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための方法の一例を示す流れ図。
【図８】ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報をコード化する前にコード化するための方法の一例を示す流れ図。
【図９】ビデオデータブロックの符号化された最後尾係数位置情報を、ブロックのコード化された有意係数位置情報を復号する前に復号するための方法の一例を示す流れ図。
【発明を実施するための形態】
【００２２】
本開示は、ビデオ符号化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための技術を説明する。本技術は、ブロックに関連付けられる走査順によるブロック内の最後の非ゼロ、又は「有意」係数の位置を識別する情報、即ち、そのブロックの最後尾係数位置情報を、そのブロック内の他の有意係数の位置を識別する情報、即ち、そのブロックの有意係数位置情報を符号化する前に、符号化することを含む。本技術は、走査順によるブロック内の最後尾係数の位置を識別する、ブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾係数の位置を識別する、ブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化すること、並びに、走査順によるブロック内の最後尾係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化すること、及び、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行することによって、ブロック内の最後尾有意係数位置情報を符号化することを更に含む。
【００２３】
本開示の技術は、符号化システムが、他のシステムと比較してより低い複雑度を有することを可能にし得、ブロックの最後尾係数位置情報、及びブロックの有意係数位置情報を符号化するときに、他の方法と比較してより効率的な符号化方法を可能にし得る。
【００２４】
本開示では、「符号化」という用語は、エンコーダにおいて行われるコード化、又はデコーダにおいて行われる復号を指す。同様に、「コーダ」という用語は、一般に、エンコーダ、デコーダ、又は複合エンコーダ／デコーダ（「コーデック」）を指す。コーダ、エンコーダ、デコーダ及びコーデックという用語は全て、本開示に一致するビデオデータの符号化（コード化及び／又は復号）のために設計される特定の機械を指す。
【００２５】
ブロックの有意係数位置情報を符号化する前にブロックの最後尾係数位置情報を符号化することはこれらの符号化ステップを分離する効果を有し、これによって、情報を並列に符号化することが可能になり得、他のシステムよりも低い複雑度を有する符号化システムを使用することが可能になり得る。例えば、幾つかの技術に従って実行されるように、走査順に従ってブロックの係数ごとに有意係数フラグを符号化し、続いて最後尾係数フラグを符号化することによって、インターリーブされた様式で情報を符号化する代わりに、本開示の技術は、情報の符号化を分離する。従って、本開示の技術を使用することによって、並列符号化アルゴリズムを使用して情報を符号化することが可能になり得、結果として、情報を符号化するための他のシステムよりも低い複雑度を有する符号化システムを使用することになり得る。
【００２６】
加えて、有意係数位置情報を符号化する前に最後尾係数位置情報が利用可能であることによって、その情報自体及びブロックの他の情報を符号化するために最後尾係数位置情報を使用することが可能になり得る。幾つかの例では、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、コンテキスト適応型バイナリ算術符号化（ＣＡＢＡＣ）プロセス）を実行するときに、最後尾係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのコンテキストとして使用され得る。このように最後尾係数位置情報を使用することは、結果として、その情報自体を符号化するための、及び、有意係数位置情報を符号化するための正確な統計を使用することになり得、これによって、例えば、他の方法を使用するときよりも小さいビット数を使用して、より効率的に情報を符号化することが可能になり得る。例えば、コンテキストモデルは、コンテキスト適応型エントロピー符号化プロセス、例えば、ＣＡＢＡＣプロセスの実行の一部として情報を符号化するのに使用される最後尾係数位置情報又は有意係数位置情報に関する統計、又は確率推定値を提供し得る。更に、コンテキストモデルに関する確率推定値は、そのコンテキストを所与として、最後尾係数位置情報又は有意係数位置情報のいずれかが現れる可能性がより高いか、又はより低いかを反映するために、符号化情報に基づいて更新され得る。特に、コンテキストモデルに関する更新された確率推定値は、同じコンテキストモデルを使用して後続のビデオデータブロックを符号化するのに使用され得る。
【００２７】
他の例では、最後尾係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのシンタックス情報として使用され得、それによって、ここでも、他のシステムよりも低い複雑度を有する符号化システム、及び他の方法よりも効率的な符号化方法を使用することが可能になり得る。
【００２８】
一例として、最後尾係数位置情報は、例えば、走査順によるブロック内の最後尾係数の位置に応じて情報を符号化するための様々に異なる技術を使用して、その情報自体がどのように符号化されるべきかを決定するためのシンタックス情報として使用され得、これによって、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。例えば、幾つかの事例においては、ブロックの、最後尾係数を含む有意係数は、例えば走査順において前の方のブロック位置のサブセット内に集中している場合があり、一方で他の事例においては、係数は例えば、走査順の全体にわたって、又はその殆んどにおいてブロック全体を通じて位置している場合がある。この例では、最後尾係数が走査順において前の方に位置する場合、１次元位置を符号化する方が、２次元位置を符号化するよりも使用する必要があるビットが少ない場合がある。同様に、最後尾係数が走査順において後ろの方に位置する場合、２次元位置を符号化する方が、１次元位置を符号化するよりも使用する必要があるビットが少ない場合がある。
【００２９】
例えば、１次元位置又は２次元位置を符号化することによって、固定された方法を使用して最後尾係数位置情報を符号化するのではなく、本開示の技術は、最後尾係数がブロック内の位置のある範囲内に位置するか否かを示すフラグを符号化し得る。例えば、その範囲は、走査順において相対的に前の方に現れるブロック内の位置に対応し得る。本技術は更に、最後尾係数がその範囲内に位置する場合には１次元位置を符号化し、そうでない場合は２次元位置を符号化し得る。最後尾係数位置情報をこのように使用することによって、固定された方法、又は他の方法を使用する場合よりも効率的に情報を符号化することが可能になり得る。
【００３０】
別の例として、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するときに、最後尾係数位置情報は、有意係数位置情報を符号化するためのコンテキストを求めるためのシンタックス情報として使用され得る。例えば、走査順によるブロック内の最後尾係数の前に位置する係数の有意性は、その走査順における最後尾係数から開始して最初の係数へと進む、逆の走査順において符号化され得る。この例では、各係数の有意性は、先行して符号化された係数の有意性をコンテキストとして使用することによって符号化され得、これは、結果として、有意係数位置情報を符号化するために正確な統計、又は確率推定値を使用することになり、他の方法を使用するときよりも効率的に情報を符号化することを可能にし得る。
【００３１】
また別の例として、最後尾係数位置情報は、有意係数位置情報をジョイント符号化するためのシンタックス情報として使用され得る。例えば、有意係数位置情報は、走査順による最後尾係数の前に位置する複数の係数を１つ以上のグループに構成し、各グループ内の係数の有意性をジョイント符号化することによって符号化され得る。最後尾係数位置情報をこのように使用することによって、有意係数位置情報自体を並列に符号化することが可能になり得、これによって、ここでも、他のシステムよりも低い複雑度を有する符号化システムを使用すること、及び、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。
【００３２】
本開示の技術は、任意のＣＡＢＡＣ、確率間隔区分エントロピー符号化（ＰＩＰＥ）、又は別のコンテキスト適応型エントロピー符号化方法論とともに使用され得る。ＣＡＢＡＣは、本開示においては、本開示で広く説明する技術に関する限定としてではなく、例示のために記載されている。また、本技術は、例えば、ビデオデータに加えて、一般に他のタイプのデータの符号化に適用されてもよい。
【００３３】
従って、本開示の技術は、他のシステムと比較してより低い複雑度を有する符号化システム、及び、ブロックの最後尾係数位置情報、及びブロックの有意係数位置情報を符号化するときに、他の方法と比較してより効率的な符号化方法を使用することを可能にし得る。このように、本開示の技術を使用すると、情報を含む符号化ビットストリームに関して相対的にビットが節約され、情報を符号化するときに使用されるシステムの複雑度が相対的に低減され得る。
【００３４】
図１は、本開示の技術に一致する、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための技術を実施し得るビデオコード化及び復号システム１０の一例を示すブロック図である。図１に示すように、システム１０は、通信チャネル１６を介してコード化ビデオを宛先機器１４に送信する信号源１２を含む。信号源１２及び宛先機器１４は、広範囲の機器のいずれかを備えることができる。場合によっては、信号源１２及び宛先機器１４は、所謂セルラー電話又は衛星無線電話のワイヤレスハンドセットなどのワイヤレス通信機器、又は通信チャネル１６を介してビデオ情報を通信することができ、その場合、通信チャネル１６がワイヤレスである任意のワイヤレス機器を備え得る。
【００３５】
しかしながら、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化することに関する本開示の技術は、ワイヤレス用途又は設定には必ずしも限定されない。これらの技術は、全般的に、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、ストリーミングインターネットビデオ送信、記憶媒体上に符号化されるか、又は記憶媒体から取り出されて復号されるコード化デジタルビデオを含む、コード化又は復号が実行される任意のシナリオ、又は他のシナリオに適用され得る。従って、通信チャネル１６は必要とされず、本開示の技術は、例えば、コード化及び復号装置との間にいかなるデータ通信もない、コード化が適用される、又は復号が適用される設定に適用され得る。
【００３６】
図１の例では、信号源１２は、ビデオ信号源１８と、ビデオエンコーダ２０と、変調器／復調器（モデム）２２と、送信機２４とを含む。宛先機器１４は、受信機２６と、モデム２８と、ビデオデコーダ３０と、表示装置３２とを含む。本開示によれば、信号源１２のビデオエンコーダ２０及び／又は宛先機器１４のビデオデコーダ３０は、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための技術を適用するように構成され得る。他の例では、信号源及び宛先機器は他の構成要素又は構成を含み得る。例えば、信号源１２は、外部カメラなどの外部ビデオ信号源１８からビデオデータを受信し得る。同様に、宛先機器１４は、一体型表示装置を含むのではなく、外部表示装置とインターフェースし得る。
【００３７】
図１の図示のシステム１０は一例にすぎない。ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための技術は、任意のデジタルビデオコード化及び／又は復号装置によって実施され得る。概して、本開示の技術はビデオコード化装置によって実行されるが、本技術は、一般に「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても実行され得る。その上、本開示の技術はまた、ビデオプリプロセッサによって実行され得る。信号源１２及び宛先機器１４は、信号源１２が宛先機器１４に送信するための符号化されたビデオデータを発生するような、符号化機器の例にすぎない。幾つかの例では、機器１２、１４の各々がビデオコード化構成要素と復号構成要素とを含むので、機器１２、１４は、実質的に対称的に動作し得る。従って、システム１０は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト又はビデオ電話通信のためのビデオ機器１２とビデオ機器１４との間の一方向又は双方向のビデオ送信をサポートすることができる。
【００３８】
信号源１２のビデオ信号源１８は、ビデオカメラなどの撮像装置、以前に撮影されたビデオを含んでいるビデオアーカイブ、及び／又はビデオコンテンツプロバイダからのビデオフィードを含み得る。さらなる代替として、ビデオ信号源１８は、信号源ビデオとしてのコンピュータグラフィックスベースのデータ、又はライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオ信号源１８がビデオカメラである場合、信号源１２及び宛先機器１４は、所謂カメラ付き電話又はビデオ電話を形成することができる。但し、上述のように、本開示で説明する技術は、一般にビデオ符号化に適用可能であり、ワイヤレス及び／又はワイヤードアプリケーションに適用可能であり得る。各場合において、撮影されたビデオ、以前に撮影されたビデオ又はコンピュータ生成ビデオは、ビデオエンコーダ２０によってコード化され得る。次いで、コード化ビデオ情報は、通信規格に従ってモデム２２によって変調され、送信機２４を介して宛先機器１４に送信され得る。モデム２２は、信号変調のために設計された様々なミキサ、フィルタ、増幅器又は他の構成要素を含むことができる。送信機２４は、増幅器、フィルタ、及び１つ以上のアンテナを含む、データを送信するために設計された回路を含むことができる。
【００３９】
宛先機器１４の受信機２６はチャネル１６を介して情報を受信し、モデム２８は情報を復調する。再び、上述のビデオコード化プロセスは、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための、本明細書で説明する技術のうちの１つ以上を実施し得る。チャネル１６を介して通信される情報は、ビデオデータブロック（例えば、マクロブロック又は符号化ユニット）の特性及び／又は処理、例えば、ブロックの最後尾係数位置情報及び有意係数位置情報、並びに他の情報を記述するシンタックス要素を含む、ビデオエンコーダ２０によって定義されるシンタックス情報を含み得、これはビデオデコーダ３０によっても使用される。表示装置３２は、復号されたビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、又は別のタイプの表示装置など、様々な表示装置のいずれかを備え得る。
【００４０】
図１の例では、通信チャネル１６は、無線周波数（ＲＦ）スペクトル又は１つ以上の物理伝送線路など、任意のワイヤレス若しくはワイヤード通信媒体、又はワイヤレス媒体とワイヤード媒体との任意の組合せを備え得る。通信チャネル１６は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信チャネル１６は、概して、ワイヤード媒体又はワイヤレス媒体の任意の好適な組合せを含む、ビデオデータを信号源１２から宛先機器１４に送信するのに好適な任意の通信媒体、又は様々な通信媒体の集合体を表す。通信チャネル１６は、信号源１２から宛先機器１４への通信を可能にするのに有用であり得るルータ、スイッチ、基地局、又は任意の他の機器を含み得る。他の例では、コード化又は復号装置は、そのような装置間で一切通信することなく本開示の技術を実施してもよい。例えば、コード号化装置は本開示の技術に一致してコード化ビットストリームをコード化及び記憶し得る。代替的に、復号装置が、コード化ビットストリームを受信するか又は取り出し、本開示の技術と一致してビットストリームを復号してもよい。
【００４１】
ビデオエンコーダ２０及びビデオデコーダ３０は、代替的にＭＰＥＧ−４、Ｐａｒｔ１０、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、ビデオ圧縮規格に従って動作し得る。但し、本開示の技術は、いかなる特定の符号化規格にも限定されない。他の例は、ＭＰＥＧ−２、ＩＴＵ−Ｔ Ｈ．２６３、及び現在開発中の高効率ビデオ符号化（ＨＥＶＣ）規格を含む。概して、本開示の技術は、ＨＥＶＣに関して説明されるが、これらの技術は、他のビデオ符号化規格と併せて同様に使用されてもよいことを理解されたい。図１には示されていないが、幾つかの態様では、ビデオエンコーダ２０及びビデオデコーダ３０は、それぞれオーディオエンコーダ及びデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、又は他のハードウェア及びソフトウェアを含んで、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方のコード化を処理し得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットはＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、又はユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠することができる。
【００４２】
ビデオエンコーダ２０及びビデオデコーダ３０は各々、１つ以上のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ及びデコーダ回路のいずれか、又はそれらの任意の組合せとして実施され得る。ビデオエンコーダ２０及びビデオデコーダ３０の各々は１つ以上のエンコーダ又はデコーダ中に含まれ得、そのいずれも複合エンコーダ／デコーダ（コーデック）の一部としてそれぞれのカメラ、コンピュータ、モバイル機器、加入者機器、ブロードキャスト機器、セットトップボックス、サーバなどに統合され得る。
【００４３】
ビデオシーケンスは、一般に一連のビデオフレームを含む。ピクチャのグループ（ＧＯＰ）は、概して、一連の１つ以上のビデオフレームを備える。ＧＯＰは、ＧＯＰ中に含まれる幾つかのフレームを記述するシンタックスデータを、ＧＯＰのヘッダ中、ＧＯＰの１つ以上のフレームのヘッダ中、又は他の場所に含み得る。各フレームは、それぞれのフレームのためのコード化モードを記述するフレームシンタックスデータを含み得る。ビデオエンコーダ、例えば、ビデオエンコーダ２０は、一般に、ビデオデータをコード化するために、個々のビデオフレーム内のビデオブロックに対して動作する。ＩＴＵ−Ｔ Ｈ．２６４規格によれば、ビデオブロックは、マクロブロック又はマクロブロックのパーティションに対応し得る。他の規格、例えば、下記により詳細に説明するＨＥＶＣによれば、ビデオブロックは、符号化ユニット（例えば、最大符号化ユニット）、又は符号化ユニットのパーティションに対応し得る。ビデオブロックは、サイズを固定することも変更することもでき、指定の符号化規格に応じてサイズが異なることがある。各ビデオフレームは、複数のスライス、即ち、ビデオフレームの部分を含み得る。各スライスは複数のビデオブロックを含み得、それらのビデオブロックは、サブブロックとも呼ばれるパーティションに構成され得る。
【００４４】
指定の符号化規格に応じて、ビデオブロックは、１６×１６、８×８、４×４、２×２などのような、様々な「Ｎ×Ｎ」サブブロックサイズに区分され得る。本開示では、「ＮxＮ」と「Ｎ by Ｎ」は、垂直寸法及び水平寸法に関するブロックの画素寸法、例えば、１６x１６画素又は１６by１６画素を指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６画素を有し（ｙ＝１６）、水平方向に１６画素を有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮ画素を有し、水平方向にＮ画素を有し、Ｎは、非負整数値を表す。ブロック中の画素は行と列に構成され得る。更に、ブロックは、必ずしも、水平方向に垂直方向と同じ数の画素を有する必要はない。例えば、ブロックは、Ｎ×Ｍ画素を備え得、Ｍは必ずしもＮに等しいとは限らない。一例として、ＩＴＵ−Ｔ Ｈ．２６４規格では、サイズが１６ by １６画素であるブロックがマクロブロックと呼ばれることがあり、１６ by １６画素未満であるブロックが１６ by１６マクロブロックのパーティションと呼ばれることがある。他の規格、例えば、ＨＥＶＣでは、ブロックはより一般的にそれらのサイズに関連して、例えば、各々が固定ではなく変動するサイズを有する符号化ユニット及びそのパーティションとして定義され得る。
【００４５】
ビデオブロックは、画素領域中の画素データのブロックを備え得、又は、例えば、所与のビデオブロックの残差データへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、若しくは概念的に同様の変換などの変換の適用後の、変換領域中の変換係数のブロックを備え得、残差データは、ブロックのビデオデータとブロックに対して生成される予測データとの間の画素差分を表す。場合によっては、ビデオブロックは、変換領域における量子化変換係数のブロックを備え得、所与のビデオブロックの残差データへの変換の適用後に、結果生じる変換係数も量子化される。
【００４６】
ブロック区分は、ブロックベースのビデオ符号化技術において重要な目的を果たす。ビデオデータを符号化するためにより小さいブロックを使用する結果として、ハイレベルの詳細を含むビデオフレームのロケーションに関するデータのより良好な予測がもたらされ得、従って、残差データとして表される結果としてのエラー（即ち、ソースビデオデータからの予測データの偏差）が低減され得る。残差データを低減する可能性がある一方、そのような技術は、しかしながら、ビデオフレームに対してブロックがどれだけより小さく区分されるかを指示する追加のシンタックス情報を必要とし得、結果として符号化ビデオビットレートが増大し得る。従って、幾つかの技術では、追加のシンタックス情報に起因する符号化ビデオデータのビットレートの増大に対して、残差データの望ましい低減を釣り合わせることに依存し得る。
【００４７】
一般に、ブロック、及びその様々なパーティション（即ち、サブブロック）は、ビデオブロックとみなされ得る。加えて、スライスは、複数のビデオブロック（例えば、マクロブロック、もしくは符号化ユニット）、及び／又はサブブロック（マクロブロックのパーティション、若しくはサブ符号化ユニット）とみなされ得る。各スライスはビデオフレームの単独で復号可能なユニットとすることができる。代替的に、フレーム自体を復号可能なユニットとすることができるか、又はフレームの他の部分を復号可能なユニットとして定義することができる。更に、シーケンスとも呼ばれるＧＯＰが復号可能なユニットとして定義される場合がある。
【００４８】
高効率ビデオ符号化（ＨＥＶＣ）と現在呼ばれる、新しいビデオ符号化規格を開発するための取り組みが現在進行中である。新興のＨＥＶＣ規格はＨ．２６５と呼ばれることもあり得る。この規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）と呼ばれるビデオ符号化機器のモデルに基づく。ＨＭは、例えば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣによる機器に勝るビデオ符号化機器の幾つかの能力を仮定する。例えば、Ｈ．２６４が９つのイントラ予測コード化モードを提供するのに対して、ＨＭは、例えば、イントラ予測コード化されるブロックのサイズに基づいて、３５ものイントラ予測符号化モードを提供する。
【００４９】
ＨＭは、ビデオデータのブロックを符号化ユニット（ＣＵ：coding unit）と称する。ＣＵとは、圧縮のために様々な符号化ツールが適用される基本ユニットとしての役割を果たす長方形の画像領域を指し得る。Ｈ．２６４では、これはマクロブロックと呼ばれる場合もある。ビットストリーム内のシンタックスデータは、画素の数に関する最大ＣＵ（ＬＣＵ）である最大符号化ユニットを定義し得る。概して、ＣＵは、ＣＵがサイズの差異を有しないことを除いて、Ｈ．２６４のマクロブロックと同様の目的を有する。従って、ＣＵはサブＣＵに区分、又は「分割（split）」され得る。
【００５０】
ＬＣＵは、ＬＣＵがどのように区分されるかを指示する４分木データ構造に関連付けられ得る。概して、４分木データ構造はＬＣＵのＣＵあたり１つのノードを含み、根ノードがＬＣＵに対応し、他のノードはＬＣＵのサブＣＵに対応する。所与のＣＵが４つのサブＣＵに分割された場合、分割されたＣＵに対応する４分木内のノードは４つの子ノードを含み、子ノードの各々はサブＣＵのうちの１つに対応する。４分木データ構造の各ノードは、対応するＣＵのシンタックス情報を与え得る。例えば、４分木のノードは、そのノードに対応するＣＵが４つのサブＣＵに分割されるか否かを指示する、ＣＵの分割フラグを含み得る。所与のＣＵのシンタックス情報は、再帰的に定義され得、ＣＵがサブＣＵに分割されるかどうかに依存し得る。
【００５１】
分割されないＣＵ（即ち、所与の４分木内の末端、又は「リーフ」ノードに対応するＣＵ）は、１つ以上の予測ユニット（ＰＵ）を含み得る。概して、ＰＵは、対応するＣＵの全部又は一部分を表し、ＣＵに対する予測を実行するために、そのＰＵの参照サンプルを取り出すためのデータを含む。例えば、ＣＵがイントラモードコード化されるとき、ＰＵは、ＰＵのイントラ予測モードを記述するデータを含み得る。別の例として、ＣＵがインターモード符号化されるとき、ＰＵは、ＰＵの動きベクトルを定義するデータを含み得る。動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（例えば、１／４画素精度又は１／８画素精度）、動きベクトルがポイントする参照フレーム、及び／又は動きベクトルの参照リスト（例えば、リスト０又はリスト１）を記述し得る。ＣＵの１つ以上のＰＵを定義するＣＵのデータはまた、例えば、ＣＵを１つ以上のＰＵに区分することを記述し得る。区分モードは、ＣＵがコード化されないか、イントラ予測モードコード化されるか、又はインター予測モードコード化されるかの間で異なり得る。
【００５２】
１つ以上のＰＵを有するＣＵは、１つ以上の変換ユニット（ＴＵ：transform unit）をも含み得る。上述のような、１つ以上のＰＵを使用するＣＵに対する予測の後、ビデオエンコーダは１つ以上のＰＵに対応するＣＵのそれぞれの部分について１つ以上の残差ブロックを計算し得る。残差ブロックはＣＵのビデオデータと、１つ以上のＰＵの予測データとの間の画素差分を表し得る。１組の残差値は、変換され、走査され、量子化されて、１組の量子化変換係数が定義され得る。ＴＵは、ＣＵに関して上述した４分木データ構造と実質的に同様である変換係数の区分情報を指示する区分データ構造を定義し得る。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。従って、ＴＵは、同じＣＵの対応するＰＵよりも大きいことも小さいこともある。幾つかの例では、ＴＵの最大サイズは、対応するＣＵのサイズに対応し得る。一例では、ＣＵに対応する残差サンプルが、「残差４分木」（ＲＱＴ）として既知の４分木構造を使用してより小さいユニットに更に区分化され得る。この事例では、ＲＱＴのリーフノードは、ＴＵとして参照され得、これに対して対応する残差サンプルが変換及び量子化され得る。
【００５３】
予測データと残差データとを生成するためのイントラ予測コード化又はインター予測コード化の後、及び変換係数を生成するための（Ｈ．２６４／ＡＶＣで使用される４×４又は８×８整数変換、若しくは離散コサイン変換ＤＣＴなどの）任意の変換の後、変換係数の量子化が実行され得る。量子化は、概して、係数を表すために使用されるデータ量をできるだけ低減するために変換係数を量子化するプロセスを指す。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減することができる。例えば、量子化中にｎビット値がｍビット値に切り捨てられ得、ｎはｍよりも大きい。
【００５４】
量子化後、量子化データ（即ち、量子化変換係数）のエントロピー符号化が実行され得る。エントロピー符号化は、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化することに関する本開示の技術に適合し得、コンテキスト適応型可変長符号化（ＣＡＶＬＣ）、ＣＡＢＡＣ、ＰＩＰＥ、又は別のエントロピー符号化方法論のような、他のエントロピー符号化技術も使用してもよい。例えば、量子化変換係数の絶対値及び対応する符号（例えば、「＋１」又は「−１」）として表される係数値が、エントロピー符号化技術を使用して符号化され得る。
【００５５】
上述の予測、変換、及び量子化は、指定の符号化規格に応じて、任意のビデオデータブロックに関して、例えば、ＣＵのＰＵ及び／又はＴＵ、若しくはマクロブロックに対して実行され得ることに留意されたい。従って、ビデオデータブロックの最後尾係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化することに関する、本開示の技術は、任意のビデオデータブロック、例えば、マクロブロック、又はＣＵのＴＵを含む、量子化変換係数の任意のブロックに適用され得る。更に、ビデオデータブロック（例えば、マクロブロック、又はＣＵのＴＵ）は、対応するビデオデータの輝度成分（Ｙ）、第１のクロミナンス成分（Ｕ）、及び第２のクロミナンス成分（Ｖ）の各々を含み得る。従って、本開示の技術は、所与のビデオデータブロックのＹ、Ｕ、及びＶ成分の各々に対して実行され得る。
【００５６】
上述のようにビデオデータブロックをコード化するために、所与のブロック内の有意係数の位置に関する情報も、生成及びコード化され得る。その後、有意係数の値が上述のようにコード化され得る。Ｈ．２６４／ＡＶＣ及び進行のＨＥＶＣ規格において、コンテキスト適応型エントロピー符号化プロセス、例えば、ＣＡＢＡＣプロセスを使用するとき、ビデオデータブロック内の有意係数の位置が、有意係数の値をコード化する前にコード化され得る。ブロック内の全ての有意係数の位置をコード化するプロセスは、有意性マップ（ＳＭ）コード化と呼ばれることがある。下記により詳細に説明する図４Ａ〜図４Ｃは、量子化変換係数の４×４ブロック及び対応するＳＭデータを示す概念図である。
【００５７】
一般的なＳＭコード化手順は、次のように説明され得る。所与のビデオデータブロックに関して、ＳＭはブロック内に少なくとも１つの有意係数がある場合にのみコード化され得る。所与のビデオデータブロック内に有意係数が存在することは、符号化ブロックパターンにおいて（例えば、シンタックス要素「coded_block_pattern」即ちＣＢＰを使用して）指示され得、これは、ビデオデータ内のある画素領域に関連付けられる（輝度ブロック及びクロミナンスブロックのような）一組のブロックに対して符号化されるバイナリ値である。ＣＢＰ内の各ビットは、（例えば、シンタックス要素「coded_block_flag」に対応する）符号化ブロックフラグと呼ばれ、その対応するブロック内に少なくとも１つの有意係数があるか否かを指示するのに使用される。言い換えれば、符号化ブロックフラグは、変換係数の単一ブロックの内部に有意係数があるか否かを指示する１ビットシンボルであり、ＣＢＰは１組の関連するビデオデータブロックに対する１組の符号化ブロックフラグである。
【００５８】
符号化ブロックフラグが対応するブロック内に有意係数がない（例えば、フラグが「０」に等しい）ことを指示する場合、そのブロックに関してそれ以上の情報はコード化されない場合がある。しかしながら、符号化ブロックフラグが、対応するブロック内に少なくとも１つの有意係数が存在することを指示する（例えば、フラグが「１」に等しい）場合、そのブロックに関連付けられる係数走査順に従うことによって、ブロックに対してＳＭがコード化され得る。走査順は、ブロック内の各係数の有意性が符号化される順序をＳＭコード化の一部として定義し得る。言い換えれば、走査は、係数の有意性を求めるために、係数の２次元ブロックを１次元表現に直列化し得る。異なる走査順（例えば、ジグザグ、水平、及び垂直）が使用されてもよい。同じく下記により詳細に説明する図５Ａ〜図５Ｃは、８×８ブロックのビデオデータに使用され得る様々な走査順のうちの幾つかの例を示す。しかしながら、本開示の技術は、対角走査順と、ジグザグ、水平、垂直、及び／又は対角走査順の組合せである走査順と、部分的にジグザグ、部分的に水平、部分的に垂直、及び／又は部分的に対角である走査順とを含む、多様な他の走査順に対しても適用されてもよい。加えて、本開示の技術は、以前に符号化されたビデオデータブロック（例えば、現在符号化されているブロックと同じブロックサイズ又は符号化モードを有するブロック）に関連付けられる統計に基づいて、それ自体が適応的である走査順をも考慮し得る。例えば、適応型走査順は、場合によってはそのブロックに関連付けられる走査順であり得る。
【００５９】
所与のブロック内に少なくとも１つの有意係数が存在することを指示する符号化ブロックフラグ、及びそのブロックに関する走査順が与えられると、ブロックに対するＳＭは次のようにコード化され得る。最初に、量子化変換係数の２次元ブロックが、走査順を使用して１次元アレイにマッピングされ得る。アレイ内の係数ごとに、走査順に従って、（例えば、シンタックス要素「significant_coeff_flag」に対応する）１ビット有意係数フラグがコード化され得る。即ち、アレイ内の各位置がバイナリ値を割り当てられ得、バイナリ値は、対応する係数が有意である場合には「１」にセットされ、有意でない（即ち、ゼロ）場合には「０」にセットされ得る。所与の有意係数フラグが「１」に等しく、対応する係数が有意であることを指示する場合、（例えば、シンタックス要素「last_significant_coeff_flag」に対応する）追加の１ビットの最後尾有意係数フラグもコード化され得、これは、対応する係数がアレイ内の（即ち、走査順を与えられているブロック内の）最後尾有意係数であるか否かを示し得る。具体的には、対応する係数がアレイ内の最後尾有意係数である場合に各最後尾有意係数フラグが「１」にセットされ、そうでない場合に「０」にセットされ得る。このようにして最後のアレイ位置に達し、ＳＭコード化プロセスが「１」に等しい最後尾有意係数フラグによって終了しなかった場合、アレイ（従って、走査順を与えられているブロック）内の最後尾の係数は有意であることが推測され得、その最後のアレイ位置については最後尾有意係数フラグはコード化されない場合がある。
【００６０】
図４Ｂ〜図４Ｃは、それぞれ、アレイ形式ではなくマップで表された、図４Ａに図示されているブロックのＳＭデータに対応する有意係数フラグ及び最後尾有意係数フラグの組の例を示す概念図である。上述のような有意係数フラグ及び最後尾有意係数フラグは、他の例では異なる値にセットされてもよい（例えば、対応する係数が有意である場合に有意係数フラグが「０」にセットされ、有意でない場合に「１」にセットされてもよく、対応する係数が最後尾有意係数である場合に最後尾有意係数フラグが「０」にセットされ、最後尾有意係数でない場合に「１」にセットされてもよい）ことに留意されたい。
【００６１】
上述したように、ＳＭがコード化された後、ブロック内の各有意係数の値（即ち、例えば、それぞれシンタックス要素「coeff_abs_level_minus1」及び「coeff_sign_flag」によって指示される各有意係数の絶対値及び符号）もコード化され得る。
【００６２】
上述の技術の１つの欠点は、ブロックの特定の係数に関する最後尾有意係数位置情報、例えば、last_significant_coeff_flagの符号化に関する決定が、その係数の対応する有意係数位置情報、例えば、significant_coeff_flagに依存することである。上述のインターリーブされた符号化技術を使用する結果として、情報を符号化するのに使用されるビデオコーダは、他のシステムと比較してより複雑になる場合がある。更に、最後尾有意係数位置情報及び有意係数位置情報は、例えば、コンテキスト適応型エントロピー符号化プロセス、例えばＣＡＢＡＣプロセスを実行することによって情報を符号化するときに不正確な統計を含むコンテキストモデルを使用することによって、又は他の有用なシンタックス情報を使用することなく非効率に符号化される場合に、圧縮ビデオビットレート全体のうちの高い割合を消費する場合がある。従って、最後尾有意係数位置情報及び有意係数位置情報の効率的な符号化を達成するために、及び、ビデオデータ圧縮全体のために、適切なコンテキストモデル設計及び適用、並びに他の有用なシンタックス情報を使用することが非常に重要である。
【００６３】
従って、本開示は、最後尾有意係数位置情報及び有意係数位置情報を符号化するときに他のシステムと比較してより低い複雑度（及び／又は改善された圧縮）を有し、他の方法を使用するときよりも効率的に情報を符号化する符号化システムを使用することを可能にし得る技術を説明する。特に、本開示は、ビデオデータブロックの最後尾有意係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための技術を提供する。ブロックの有意係数位置情報を符号化する前にブロックの最後尾有意係数位置情報を符号化することは、これらの符号化ステップを分離する効果を有し、これによって、情報を並列に符号化することが可能になり得、他のシステムよりも低い複雑度を有する符号化システムを使用することが可能になり得る。
【００６４】
加えて、本開示は、最後尾有意係数位置情報を、その情報自体及び有意係数位置情報を符号化するために使用するための技術を提供する。幾つかの例では、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するときに、最後尾有意係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのコンテキストとして使用され得る。他の例では、最後尾有意係数位置情報は、その情報自体を符号化するための、及び、有意係数位置情報を符号化するためのシンタックス情報として使用され得る。
【００６５】
一例として、信号源１２のビデオエンコーダ２０は、特定のビデオデータブロック（例えば、１つ以上のマクロブロック、又はＣＵのＴＵ）をコード化するように構成され得、宛先機器１４のビデオデコーダ３０は、例えば、モデム２８及び受信機２６から、ビデオエンコーダ２０からのコード化ビデオデータを受信するように構成され得る。本開示の技術によれば、一例として、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、ブロックに関連付けられる走査順によるブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成され得る。
【００６６】
一例として、ブロック内の１次元位置を符号化するために、ビデオデコーダ２０及び／又はビデオデコーダ３０は、走査順を使用して最後尾有意係数位置情報を符号化するように構成され得る。例えば、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、走査順における最初の係数で開始し、最後尾有意係数で終わる、走査順における１つ以上の係数の各々に対してビット、即ち「ビン」を符号化し得る。この例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって各ビンを符号化し得、少なくとも１つのコンテキストは、走査順によるブロック内のビンに対応する係数の位置を含み得る。各ビンを符号化するために使用されるコンテキストモデルに関する確率推定値が、ビンが特定の値（例えば、「０」又は「１」）に等しい確率を指示し得る。
【００６７】
別の例として、ブロック内の２次元位置を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、その情報自体を符号化するためのコンテキストとして使用するように構成され得る。次の例では、２次元位置は、ブロック内の水平座標及び垂直座標（例えば、ｘ座標及びｙ座標）を備え得、水平座標は位置の列番号に対応し、垂直座標は位置の行番号に対応する。例えば、行番号及び列番号は、ブロック内の基準、即ち「原点」位置、例えば「ＤＣ」位置とも呼ばれる、左上ブロック位置に対応する行番号及び列番号に関連し得る。
【００６８】
加えて、次の例では、各座標は、１つ以上のビンから成る系列によって表され、又は「二値化」され得、この系列は、１つ以上のビンを含む単項符号語を備える。ここでも、各ビンを符号化するために使用されるコンテキストモデルに関する確率推定値が、ビンが特定の値（例えば、「０」又は「１」）に等しい確率を指示し得る。これらの例では、所与の単項符号語の各ビンは、ブロック内の原点位置の行又は列から開始して、ブロック内の最後尾有意係数位置に対応する行又は列で終わる、行番号又は列番号に対応し得る。幾つかの例では、最後尾有意係数位置に対応するビンは「０」の値にセットされ得、一方で、符号語の残りの全てのビンは「１」の値にセットされ得る。他の例では、ビンは他の値にセットされ得る。本開示の技術に一致する他の例では、他のタイプの符号語、例えば、切り捨て単項符号語、指数ゴロム符号語、連結符号語、及び様々な符号化技術の組合せが使用されてもよいことに留意されたい。
【００６９】
一例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって、所与の座標に関して単項符号語の各ビンを符号化し得、少なくとも１つのコンテキストは、単項符号語内のビンの位置を含み得る。前に説明したように、単項符号語内のビンの位置は、ビンに対応するブロック内の位置の行番号又は列番号に対応し得る。言い換えれば、ビンを符号化するのに使用されるコンテキストは、ビンに対応するｘ方向又はｙ方向におけるブロック内の位置であり得る。
【００７０】
場合によっては、最後尾有意係数位置の水平座標及び垂直座標は相関してもよい。例えば、水平座標が小さい値に等しい場合、垂直座標は、大きい値よりも、小さい値に等しい可能性の方が高い。即ち、１つの座標の値が異なる結果として、他の座標に対する統計が異なる、即ち、他の座標の単項符号語に対する確率推定値が異なることになり得る。従って、最後尾有意係数位置の１つの座標を、その座標に対応する統計を使用して符号化するとき、例えば、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するとき、他の座標の値に関する情報を含む統計を使用する結果として、統計が正確になり得、従って、効率的な符号化が可能になり得る。
【００７１】
従って、別の例では、１つの座標（例えば、垂直）が別の座標（例えば、水平）の後に符号化される場合に最後尾有意係数位置情報を符号化するとき、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって１つの座標の単項符号語の各ビンを符号化し得、少なくとも１つのコンテキストは、前に説明したような、単項符号語内のビンの位置、及び、前に符号化された他の座標の値を含み得る。
【００７２】
同様に、場合によっては、最後尾有意係数位置の１つの座標の単項符号語の値が異なる結果として、他の座標の単項符号語のビンに対する確率推定値が異なることになり得る。従って、上述したように、最後尾有意係数位置の１つの座標の単項符号語のビンを、そのビンに対応する確率推定値を使用して符号化するとき、他の座標の単項符号語のビン、例えば、対応するビンの値に関する情報を含む確率推定値を使用する結果として、確率推定値が正確になり得、従って、効率的な符号化が可能になり得る。
【００７３】
例えば、水平座標及び垂直座標を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化するように構成され得る。例えば、他方の座標に対応する系列の少なくとも１つのビンは、一方の座標に対応する系列の少なくとも１つのビンに対応するビンであり得、例えば、このビンは、それらのそれぞれの符号語内の同じ又は類似のビン位置に位置し得る。一例として、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいて符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセスを実行するように構成され得、少なくとも１つのコンテキストは、他方の座標に対応する系列の少なくとも１つのビンの値を含む。従って、また別の例では、最後尾有意係数位置情報を符号化するとき、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、前に符号化されたビンをコンテキストとして使用して、水平座標及び垂直座標をインターリーブされた様式で符号化し得る。即ち、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって、所与の座標に関して単項符号語の各ビンを符号化し得、少なくとも１つのコンテキストは、前に説明したような単項符号語内のビンの位置、及び他方の座標の単項符号語の１つ以上の前にコード化されたビンの値を含み得る。
【００７４】
加えて、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、概して、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンをインターリーブされた様式で符号化するように構成され得る。幾つかの例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、各符号語の個々のビンをインターリーブされた様式で符号化し得る。他の例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、各符号語のビンのグループをインターリーブされた様式で符号化し得る。例えば、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンの各々の少なくとも１つのビンは、標準符号化モードを使用して符号化されるビンを備え得、系列の各々の少なくとも１つのビンは、バイパス符号化モードを使用して符号化されるビンを備え得る。
【００７５】
この例では、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンを符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、標準符号化モードを使用して符号化される一方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化し、その後、標準符号化モードを使用して符号化される他方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化し、続いて、バイパス符号化モードを使用して符号化される１つの座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化し、その後、バイパス符号化モードを使用して符号化される他方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化するように構成され得る。他の例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、バイパス符号化モードを使用して符号化される系列のビンをともに符号化するように構成され得る。
【００７６】
また別の例では、ビデオエンコーダ２０は、ブロック係数を走査順に基づいて連続する系列に構成し、即ち、係数を直列化し、これらの係数を第２の走査順を使用して第２のブロックにマッピングし得、第２のブロックは第１のブロックとは異なり、第２の走査順は第１の走査順とは異なる。その後、ビデオエンコーダ２０は、前に説明したような、水平座標及び垂直座標を使用して第２の走査順による第２のブロック内の最後尾有意係数位置をコード化し得る。次に、ビデオデコーダ３０が、第２の走査順による第２のブロック内の最後尾有意係数位置の水平座標及び垂直座標を復号し、ブロック係数を第２の走査順に基づいて連続する系列に構成し、係数を、第３の異なる走査順を使用して第３の異なるブロックにマッピングし得る。
【００７７】
この例では、元のブロックの最後尾有意係数を含む有意係数は、元の走査順において後ろの方よりも、前の方に位置する可能性の方が高い場合がある。ビデオエンコーダ２０及び／又はビデオデコーダ３０が上記のステップを実効する結果として、第２のブロック内の所与の位置が、その位置の水平座標及び垂直座標に応じて変動する、最後尾有意係数を含む確率がもたらされ得る。例えば、第２の走査順が水平走査順である場合において、最後尾有意係数が第２のブロックの第１の行に位置する確率は、最後尾有意係数が後ろの行に位置する確率よりも高いものであり得る。また、所与の行について、最後尾有意係数が第２のブロックの第１の列（即ち、行の前の方）に位置する確率も、最後尾有意係数が後ろの列（即ち、行の後ろの方）に位置する確率よりも高いものであり得る。言い換えれば、一方の座標の値が異なる結果として、他方の座標の単項符号語のビンに対する確率推定値が異なることになり得る。加えて、符号語内の他方の座標の単項符号語のビンの位置が異なる結果として、符号語のビンに対する確率推定値が異なることになり得る。即ち、ビンに対応する第２のブロック内の位置の行番号又は列番号が異なる結果として、ビンに対する確率推定値が異なることになり得る。同様の現象が、第２の走査順が別の走査順、例えば、垂直走査順であるときに発生し得る。
【００７８】
この例では、第２のブロック内の最後尾有意係数位置の一方の座標を、一方の座標に対応する統計、即ち、一方の座標の単項符号語のビンに対する確率推定値を使用して符号化するとき、他方の座標の値に関する情報を含む統計、及び符号語内の一方の座標の単項符号語のビンの位置を使用する結果として、統計が正確になり得、従って、効率的な符号化が可能になり得る。従って、この例では、１つの座標が別の座標の後に符号化される場合に最後尾有意係数位置情報を符号化するとき、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって一方の座標の単項符号語の各ビンを符号化し得、少なくとも１つのコンテキストは、前に説明したような、単項符号語内のビンの位置、及び、前に符号化された他の座標の値を含み得る。
【００７９】
上記の例によって示されるように、ブロック内の２次元位置を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、その情報自体を符号化するためのコンテキストとして使用し得る。他の例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって、有意係数位置情報を符号化するためのコンテキストとして使用し得る。これらの例では、有意係数位置情報を符号化するのに使用されるコンテキストモデルに対する確率推定値は、特定の係数が有意である確率（例えば、係数の有意係数フラグが「０」又は「１」に等しい確率）を指示し得る。具体的には、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置をコンテキストして使用して、走査順に従ってブロック内の最後尾有意係数の前に位置する係数の有意性を符号化し得る。
【００８０】
一例として、最後尾有意係数位置が走査順において所与の位置閾値の上に位置することは、１つのコンテキストに対応し得、一方で、この位置が位置閾値に、又はその下に位置することは、別のコンテキストに対応し得る。この例では、係数のうちの特定の１つが有意である可能性は、係数が、最後尾有意係数位置によって指示されるような、走査順において前の方に位置するか、又は後ろの方に位置するかに大きく依存し得る。即ち、最後尾有意係数位置が異なる結果として、係数の有意性に対する統計が異なることになり得る。
【００８１】
上述したものと同様に、この例では、有意係数位置情報を、対応する統計、即ち、各係数の有意性に対する確率推定値を使用して符号化するとき、最後尾有意係数位置に関する情報を含む統計を使用する結果として、統計が正確になり得、従って、効率的な符号化が可能になり得る。従って、この例では、有意係数位置情報を符号化するとき、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって各係数の有意性を符号化し得、少なくとも１つのコンテキストは、最後尾有意係数位置、及び、例えば、走査順によるブロック内の係数の位置を含み得る。
【００８２】
別の例として、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、有意係数位置情報を符号化するためのシンタックス情報として使用し得る。一例では、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、有意係数位置情報自体をコンテキストとして使用して、有意係数位置情報を符号化するために、最後尾有意係数位置情報を使用し得る。
【００８３】
例えば、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数から開始して走査順の最初の係数（例えば、ＤＣ位置に対応する）に向かって進む逆の走査順において、走査順によるブロック内の最後尾有意係数の前に位置する係数の有意性を符号化することによって、有意係数位置情報を符号化し得る。ビデオエンコーダ２０及び／又はビデオデコーダ３０は、例えば、コンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を再び実行することによって、前に符号化された係数の有意性をコンテキストとして使用することによって、各係数の有意性を符号化し得る。
【００８４】
このように、各係数の有意性を符号化するのに使用されるコンテキストモデルに対する確率推定値は、元の走査順において後ろの方に位置する係数の有意性の知識を組み込み得、この結果として正確な確率推定値が使用されることになり得、従って、効率的な符号化が可能になり得る。更に、所与の係数について、元の走査順において後ろの方に位置する係数の有意性は解っていない場合があるので、そのような有意性情報は、他の技術を使用しては得ることができない。
【００８５】
また別の例として、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、有意係数位置情報をジョイント符号化するために使用し得る。例えば、幾つかの技術によれば、係数の有意性は、一度に１つの係数ずつ符号化される。言い換えれば、係数が有意であるか否かの決定は、走査順に従って係数ごとに順次行われる。本開示の技術によれば、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、走査順に従って最後尾有意係数の前に位置する複数の係数を、１つ以上のグループに構成し、各グループ内の係数の有意性をジョイント符号化するために最後尾有意係数位置情報を使用し得、ここでも、並列符号化の実施態様、及び効率的な符号化が可能になり得る。
【００８６】
例えば、各グループについて、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、グループ内の係数が全てゼロ値か否かを示すフラグ、及び、係数のうちの少なくとも１つが有意であるときは、それぞれの係数が有意であるか否かを指示する、係数の各々に対する有意係数フラグを生成し得る。
【００８７】
また別の例として、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、その情報自体を符号化するためのシンタックス情報として使用し得る。例えば、幾つかの事例においては、ブロックの、最後尾有意係数を含む有意係数は、例えば走査順において前の方の、ＤＣ位置に極近接するブロック位置のサブセット内に集中している場合があり、一方で他の事例においては、係数は例えば、走査順の全体にわたって、又はその殆んどにおいてブロック全体を通じて位置している場合がある。
【００８８】
この例では、最後尾有意係数が走査順において前の方に位置する場合、１次元最後尾有意係数位置を符号化する方が、２次元最後尾有意係数位置を符号化するよりも使用する必要があるビットが少ない場合がある。同様に、最後尾有意係数が走査順において後ろの方に位置する場合、２次元位置を符号化する方が、１次元位置を符号化するよりも使用する必要があるビットが少ない場合がある。
【００８９】
従って、例えば、１次元位置又は２次元位置を符号化することによって、固定された方法を使用して最後尾有意係数位置を符号化するのではなく、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数がブロック内の位置のある範囲内に位置するか否かを示すフラグを符号化し、最後尾有意係数がその範囲内に位置する場合には１次元位置を符号化し、そうでない場合には２次元位置を符号化することによって、この現象を利用し得る。言い換えれば、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数が走査順において前の方に位置するか、又は後ろの方に位置するかを指示するための範囲に関連して最後尾有意係数の位置を使用し得る。
【００９０】
例えば、範囲は、ブロック内のサブブロック、例えば、１６×１６ブロック内の４×４サブブロック、又は、走査順によるブロック内の位置の範囲、例えば、走査順内の最初の１０個の位置として定義され得る。このように、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を、その情報自体に応じて別様に符号化し得、それによって効率的な符号化が可能になり得る。
【００９１】
従って、本開示の技術は、ビデオエンコーダ２０及び／又はビデオデコーダ３０が他のシステムと比較してより低い複雑度を有することを可能にし得、ビデオエンコーダ２０及び／又はビデオデコーダ３０が、他の方法を使用するときよりも効率的に最後尾有意係数位置情報及び有意係数位置情報を符号化することを可能にし得る。このように、本開示の技術を使用すると、情報を含む符号化ビットストリームに関して相対的にビットが節約され、情報を符号化するのに使用されるビデオエンコーダ２０及び／又はビデオデコーダ３０の複雑度が相対的に低減され得る。
【００９２】
ビデオエンコーダ２０及びビデオデコーダ３０はそれぞれ、適用可能なとき、１つ以上のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ又はデコーダ回路のいずれか、又はそれらの任意の組合せとして実装され得る。ビデオエンコーダ２０及びビデオデコーダ３０の各々は１つ以上のエンコーダ又はデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合され得る。ビデオエンコーダ２０及び／又はビデオデコーダ３０を含む装置は、集積回路、マイクロプロセッサ、及び／又はセルラー電話などのワイヤレス通信機器を備え得る。
【００９３】
図２は、本開示の技術に一致する、ビデオデータのブロックの最後尾有意係数位置情報を、ブロックの有意係数位置情報をコード化する前にコード化するための技術を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、マクロブロック又はＣＵ、若しくはそのパーティション又はサブパーティションを含むビデオフレーム内のブロックのイントラ符号化及びインター符号化を実行し得る。イントラ符号化は、所与のビデオフレーム内のビデオの空間的冗長性を低減又は除去するために空間的予測に依拠する。インター符号化は時間的予測を利用して、ビデオシーケンスの隣接フレーム内のビデオの時間的冗長性を低減又は除去する。イントラモード（Ｉモード）は、幾つかの空間ベースの圧縮モードのいずれかを指し、単方向予測（Ｐモード）又は双方向予測（Ｂモード）などのインターモードは、幾つかの時間ベースの圧縮モードのいずれかを指し得る。
【００９４】
図２に示すように、ビデオエンコーダ２０は、コード化されるべきビデオフレーム内の現在のビデオデータブロックを受信する。図２の例では、ビデオエンコーダ２０は、動き補償ユニット４４と、動き推定ユニット４２と、メモリ６４と、加算器５０と、変換モジュール５２と、量子化ユニット５４と、エントロピーコード化ユニット５６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換モジュール６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理するであろう。
【００９５】
コード化プロセス中に、ビデオエンコーダ２０は符号化されるビデオフレーム又はスライスを受信する。フレーム又はスライスは、複数のビデオブロックに区分され得る。動き推定ユニット４２及び動き補償ユニット４４は、時間圧縮を行うために、１つ以上の参照フレーム中の１つ以上のブロックに対する所与の受信ビデオブロックのインター予測符号化を実行し得る。イントラ予測モジュール４６は、空間圧縮を行うために、符号化されるべきブロックと同じフレーム又はスライス中の１つ以上の隣接ブロックに対する所与の受信ビデオブロックのイントラ予測符号化を実行し得る。
【００９６】
モード選択ユニット４０は、符号化結果（例えば、結果としての符号化レート及び歪みレベル）に基づいて、及び符号化されている所与の受信ブロックを含むフレーム又はスライスのフレーム若しくはスライスタイプに基づいて、符号化モードのうちの１つ、即ち、１つのモード又は複数のイントラ若しくはインター符号化モードを選択し、残差ブロックデータを生成するために、得られたイントラ符号化ブロック又はインター符号化ブロックを加算器５０に供給し、参照フレーム又は参照スライス中で使用するためのコード化ブロックを再構成するために、得られたイントラ符号化ブロック若しくはインター符号化ブロックを加算器６２に供給し得る。一般に、イントラ予測は、隣接する、前に符号化されたブロックに対して現在のブロックを予測することを伴い、一方、インター予測は、現在のブロックを時間的に予測するために、動き推定及び動き補償を伴う。
【００９７】
動き推定ユニット４２及び動き補償ユニット４４は、ビデオエンコーダ２０のインター予測要素を表す。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、例えば、現在のフレーム（又は、他の符号化ユニット）内の符号化されている現在のブロックに対する予測参照フレーム（又は、他の符号化ユニット）内の予測ブロックの変位を指示し得る。予測ブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、又は他の差分メトリックによって決定され得る画素差分に関して、符号化されるブロックにぴったり一致することがわかるブロックである。動きベクトルはまた、ブロックのパーティションの変位を指示し得る。動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチ又は生成することに関与し得る。この場合も、幾つかの例では、動き推定ユニット４２と動き補償ユニット４４とは機能的に統合され得る。
【００９８】
動き推定ユニット４２は、ビデオブロックをメモリ６４中の参照フレームのビデオブロックと比較することによってインター符号化フレームのビデオブロックの動きベクトルを計算し得る。動き補償ユニット４４はまた、参照フレーム、例えば、Ｉフレーム又はＰフレームのサブ整数画素をこの比較のために補間し得る。一例として、ＩＴＵ  Ｈ．２６４規格には、コード化されている現在のフレームよりも前の表示順序を有する参照フレームを含むリスト０、及びコード化されている現在のフレームよりも後の表示順序を有する参照フレームを含むリスト１の２つのリストが記載されている。従って、メモリ６４に記憶されたデータは、これらのリストに従って編成され得る。
【００９９】
動き推定ユニット４２は、メモリ６４からの１つ以上の参照フレームのブロックを現在のフレーム、例えば、Ｐフレーム又はＢフレームのコード化すべきブロックと比較し得る。メモリ６４中の参照フレームがサブ整数画素の値を含むとき、動き推定ユニット４２によって計算される動きベクトルは参照フレームのサブ整数画素ロケーションを参照し得る。動き推定ユニット４２及び／又は動き補償ユニット４４はまた、サブ整数画素位置の値がメモリ６４に記憶されていない場合、メモリ６４に記憶された参照フレームのサブ整数画素位置の値を計算するように構成され得る。動き推定ユニット４２は、計算された動きベクトルをエントロピーコード化ユニット５６と動き補償ユニット４４とに送り得る。動きベクトルによって識別される参照フレームブロックは、インター予測ブロック、又は、より一般的には予測ブロックと呼ばれることがある。動き補償ユニット４４は、予測ブロックに基づいて予測データを計算し得る。
【０１００】
イントラ予測モジュール４６は、上記で説明したように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測モジュール４６は、現在のブロックのコード化に使用するためのイントラ予測モードを決定することができる。幾つかの例では、イントラ予測モジュール４６は、例えば、別々のコード化パスの間など、様々なイントラ予測モードを使用して、現在のブロックをコード化することができ、イントラ予測モジュール４６（又は、幾つかの例において、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択することができる。例えば、イントラ予測モジュール４６は、様々なテストされたイントラ予測モードのためのレート歪み分析を使用してレート歪み値を計算し、テストされたモードの中の最良のレート歪み特性を有するイントラ予測モードを選択することができる。レート歪み分析は、一般に、コード化されたブロックと、コード化されたブロックを生成するためにコード化された元のコード化されていないブロックとの間の歪み（又はエラー）の量、ならびに、符号化されたブロックを生成するために使用されたビットレート（即ち、ビット数）を決定する。イントラ予測モジュール４６は、どのイントラ予測モードがブロックについての最良のレート歪み値を呈するかを決定するために、様々な符号化されたブロックについての歪み及びレートから比率を計算することができる。
【０１０１】
例えば、イントラ予測又はインター予測を使用して、現在のブロックを予測した後、ビデオエンコーダ２０は、符号化されている元のビデオブロックから、動き補償ユニット４４又はイントラ予測モジュール４６によって計算された予測データを減算することによって残差ビデオブロックを形成し得る。加算器５０は、この減算演算を実行し得る１つ以上の構成要素を表す。変換モジュール５２は、離散コサイン変換（ＤＣＴ）又は概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成し得る。変換モジュール５２は、概念的にＤＣＴと同様である、Ｈ．２６４規格によって定義される変換などの他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換又は他のタイプの変換をも使用することができる。いずれの場合も、変換モジュール５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成し得る。変換は、残差情報を画素領域から周波数領域などの変換領域に変換し得る。量子化ユニット５４は、ビットレートを更に低減するために残差変換係数を量子化し得る。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減することができる。量子化の程度は、量子化パラメータを調整することによって変更され得る。
【０１０２】
量子化後、エントロピーコード化ユニット５６は、ビデオデータブロックの最後尾有意係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための、本開示の技術を使用して、量子化変換係数をエントロピー符号化し得る。しかしながら、他のタイプのシンタックス要素については、エントロピーコード化ユニット５６は、ＣＡＶＬＣ、ＣＡＢＡＣ、ＰＩＰＥ、又は別のエントロピー符号化技術を含み得る、他のエントロピー符号化技術を実行し得る。エントロピーコード化ユニット５６によるエントロピー符号化の後に、コード化されたビデオは、別の機器に送信されるか、あるいは後で送信するか又は取り出すためにアーカイブされ得る。
【０１０３】
場合によっては、エントロピーコード化ユニット５６又はビデオエンコーダ２０の別のユニットは、上記で説明したようなエントロピー符号化量子化変換係数に加えて他の符号化機能を実行するように構成され得る。例えば、エントロピーコード化ユニット５６は、コード化ビデオビットストリームにおいて送信するのに適切なシンタックス要素を用いてブロック（例えば、マクロブロック、ＣＵ、又はＬＣＵ）、又はブロックを含むビデオフレームのヘッダ情報を構築し得る。幾つかの符号化規格によれば、そのようなシンタックス要素は、前に説明したような、ブロックの最後尾有意係数位置情報及び有意係数位置情報を含み得る。同じく前に説明したように、幾つかの技術に従ってこの情報を符号化することは、他のシステムと比較してより高い複雑度を有する符号化システムを必要とする場合があり、結果生じる符号化情報は、非効率に符号化される場合に、圧縮ビデオビットレート全体のうちの高い割合を消費する場合がある。従って、本開示は、最後尾有意係数位置情報及び有意係数位置情報を符号化するときに他のシステムと比較してより低い複雑度を有し、他の方法を使用するときよりも効率的に情報を符号化する符号化システムを使用することを可能にし得る技術を説明する。
【０１０４】
一例として、ビデオエンコーダ２０のエントロピーコード化ユニット５６は、特定のビデオデータブロック（例えば、１つ以上のマクロブロック、又はＣＵのＴＵ）をコード化するように構成され得る。例えば、図１に関連して上述したように、エントロピーコード化ユニット５６は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、エントロピーコード化ユニット５６は、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成され得る。
【０１０５】
一例として、ブロック内の１次元位置を符号化するためにエントロピーコード化ユニット５６は、走査順によるブロック内の最初の係数で開始して走査順によるブロック内の最後尾有意係数で終わり、走査順に従って進む、ブロックに関連付けられる１つ以上の係数の各々について、係数が、走査順によるブロック内の最後尾有意係数であるか否かを決定し、係数が、走査順によるブロック内の最後尾有意係数であるか否かを指示する最後尾有意係数フラグを生成するように構成され得る。エントロピーコード化ユニット５６は、１つ以上の係数に対する最後尾有意係数フラグを走査順に基づいて連続する系列に構成し、系列をコード化するように更に構成され得る。
【０１０６】
別の例として、ブロック内の２次元位置を符号化するために、エントロピーコード化ユニット５６は、走査順によるブロック内の最後尾有意係数の位置の水平座標を求め、走査順によるブロック内の最後尾有意係数の位置の垂直座標を求め、水平座標及び垂直座標をコード化するように構成され得る。この例では、ブロックは第１のブロックであり得、走査順は第１の走査順であり得、エントロピーコード化ユニット５６は、第２のブロックに関連付けられる係数を第２の走査順に基づいて連続する系列に構成し、ここで、第２のブロックは第１のブロックとは異なり、第２の走査順は第１の走査順とは異なり、第１のブロックを生成するために第１の走査順を使用して第１のブロックに系列をマッピングするように更に構成され得る。
【０１０７】
またこの例では、前に説明したように、水平座標及び垂直座標の各々をコード化するために、エントロピーコード化ユニット５６は、座標が１つ以上のビンから成る系列を備えるようにそれぞれの座標を二値化し、系列をコード化するように構成され得る。例えば、１つ以上のビンから成る系列は、単項符号語、切り捨て単項符号語、指数ゴロム符号語、及び連結符号語のうちの１つを備え得る。
【０１０８】
一例として、切り捨て単項符号語は、それぞれの座標が所定の切り捨て値未満の値を有する場合には可変数の第１のシンボル（例えば、「１」）、ここで可変数は座標の値に対応し、続く第２のシンボル（例えば、「０」）を備え、ここで、第１のシンボルは第２のシンボルとは異なり、座標が切り捨て値以上の値を有する場合には、所定数の第１のシンボル、切り捨て値に対応する所定数を備える。
【０１０９】
別の例として、連結符号語は、第１の符号語（例えば、第１の符号化方法を使用して生成される符号語）と第２の符号語（例えば、第２の符号化方法を使用して生成される符号語）とを連結したものを備え得、第１の符号語は第２の符号語とは異なる。この例では、連結符号語は、ビデオデータブロックが十分に大きく、それによって、それぞれの座標を表すために単項符号語、又は切り捨て単項符号語を使用すると、連結符号語よりも多くのビットが必要になり得る場合に使用され得る。
【０１１０】
同じく前に説明したように、水平座標及び垂直座標をコード化するために、エントロピーコード化ユニット５６は、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化するように構成され得る。一例として、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化するために、エントロピーコード化ユニット５６は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行するように構成され得、少なくとも１つのコンテキストは、他方の座標に対応する系列の少なくとも１つのビンの値を含む。
【０１１１】
加えて、エントロピーコード化ユニット５６は、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンをインターリーブされた様式でコード化するように構成され得る。例えば、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンの各々の少なくとも１つのビンは、標準符号化モードを使用して符号化されるビンを備え得、系列の各々の少なくとも１つのビンは、バイパス符号化モードを使用して符号化されるビンを備え得る。
【０１１２】
この例では、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンをインターリーブされた様式でコード化するために、エントロピーコード化ユニット５６は、標準符号化モードを使用してコード化される一方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンをコード化し、その後、標準符号化モードを使用して符号化される他方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化し、続いて、バイパス符号化モードを使用して符号化される一方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンをコード化し、その後、バイパス符号化モードを使用して符号化される他方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを符号化するように構成され得る。他の例では、エントロピーコード化ユニット５６は、バイパス符号化モードを使用して符号化される系列のビンをともにコード化するように構成され得る。
【０１１３】
[0121]別の例として、有意係数位置情報を符号化するために、走査順は第１の走査順であり得、エントロピーコード化ユニット５６は、走査順によるブロック内の最後尾有意係数で開始して走査順によるブロック内の最初の係数で終わり、第１の走査順に対して逆の第２の走査順に従って進む、ブロックに関連付けられる１つ以上の係数の各々について、係数が有意係数であるか否かを決定し、係数が有意係数であるか否かを指示する有意係数フラグを生成するように構成され得る。エントロピーコード化ユニット５６は、１つ以上の係数に対する有意係数フラグを第２の走査順に基づいて連続する系列に構成し、系列をコード化するように更に構成され得る。
【０１１４】
[0122}別の例として、有意係数位置情報を符号化するために、エントロピーコード化ユニット５６は、走査順によるブロック内の最初の係数で開始して走査順によるブロック内の最後尾有意係数で終わり、走査順に従って進む、ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成するように構成され、１つ以上のグループの各々は係数の１つ以上を備える。エントロピーコード化ユニット５６は、１つ以上のグループの各々について、係数の１つ以上が有意係数であるか否かを決定し、１つ以上のフラグを生成するように更に構成され得、１つ以上のフラグは、係数の１つ以上が全てゼロ値（即ち、非有意）係数であるか否かを指示するグループフラグを含み、係数の１つ以上の少なくとも１つが有意係数であるとき、１つ以上のフラグは、それぞれの係数が有意係数であるか否かを指示する、係数の１つ以上の各々に対する有意係数フラグを更に含む。エントロピーコード化ユニット５６は、１つ以上のグループに対する１つ以上のフラグを走査順に基づいて連続する系列に構成し、系列をコード化するように、また更に構成され得る。
【０１１５】
[0123]また別の例では、最後尾有意係数位置情報を符号化するために、及び、有意係数位置情報を符号化するために、エントロピーコード化ユニット５６は、エントロピーコード化ユニット５６が少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するように構成され得、少なくとも１つのコンテキストは、最後尾有意係数位置情報及び有意係数位置情報のうちの一方を含む。一例として、水平座標及び垂直座標の各々に対応する１つ以上のビンから成る系列をコード化するために、エントロピーコード化ユニット５６は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセスを実行することによって系列の各ビンをコード化するように構成され得、少なくとも１つのコンテキストは系列内のそれぞれのビンの位置を含む。前に説明したように、系列内のビンの位置は、ビンに対応するブロック内の位置の行番号又は列番号に対応し得る。言い換えれば、ビンを符号化するのに使用されるコンテキストは、ビンに対応するｘ方向又はｙ方向におけるブロック内の位置であり得る。この例では、エントロピーコード化ユニット５６を説明したように構成することによって、エントロピーコード化ユニット５６が、例えば、より少ないビット数を使用することによって、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。
【０１１６】
従って、本開示の技術は、エントロピーコード化ユニット５６が他のシステムと比較してより低い複雑度を有することを可能にし得、エントロピーコード化ユニット５６が、他の方法を使用するときよりも効率的に最後尾有意係数位置情報及び有意係数位置情報を符号化することを可能にし得る。このように、本開示の技術を使用すると、情報を含む符号化ビットストリームに関して相対的にビットが節約され、情報を符号化するのに使用されるエントロピーコード化ユニット５６の複雑度が相対的に低減され得る。
【０１１７】
逆量子化ユニット５８及び逆変換モジュール６０は、それぞれ逆量子化及び逆変換を適用して、例えば参照ブロックとして後で使用するために、画素領域中で残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックをメモリ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つ以上の補間フィルタを適用して、動き推定において使用するサブ整数画素値を計算し得る。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、メモリ６４に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインター符号化するために動き推定ユニット４２及び動き補償ユニット４４によって参照ブロックとして使用され得る。
【０１１８】
このように、ビデオエンコーダ２０は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成されるビデオコーダの一例を表し、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオコーダは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成される。
【０１１９】
[0127]図３は、本開示の技術に一致する、ビデオデータブロックのコード化された最後尾有意係数位置情報を、ブロックのコード化された有意係数位置情報を復号する前に復号するための技術を実施し得るビデオデコーダの一例を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測モジュール７４と、逆量子化ユニット７６と、逆変換ユニット７８と、メモリ８２と、加算器８０とを含む。ビデオデコーダ３０は、幾つかの例では、ビデオエンコーダ２０（図２）に関して説明したコード化パスとは概して逆の復号パスを実行し得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信した動きベクトルに基づいて予測データを生成し得る。
【０１２０】
ビデオデコーダ３０は、ビデオエンコーダ２０からコード化ビデオデータ（例えば、１つ以上のマクロブロック、又はＣＵのＴＵ）を受信するように構成され得る。本開示の技術によれば、一例として、ビデオデコーダ３０は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオデコーダ３０は、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成され得る。
【０１２１】
一例として、ブロック内の１次元位置を符号化するために、エントロピー復号ユニット７０は、走査順によるブロック内の最初の係数で開始して走査順によるブロック内の最後尾有意係数で終わり、走査順に従って進む、ブロックに関連付けられる１つ以上の係数に対する最後尾有意係数フラグの連続する系列を復号するように構成され得、最後尾有意係数フラグの各々は、それぞれの係数が、走査順によるブロック内の最後尾有意係数であるか否かを指示する。エントロピー復号ユニット７０は、ブロックに関連付けられる各係数について、系列に基づいて、係数が走査順によるブロック内の最後尾有意係数であるか否かを決定するように更に構成され得る。
【０１２２】
別の例として、ブロック内の２次元位置を符号化するために、エントロピー復号ユニット７０は、走査順によるブロック内の最後尾有意係数の位置の水平座標を復号し、走査順によるブロック内の最後尾有意係数の位置の垂直座標を復号するように構成され得る。エントロピー復号ユニット７０は、ブロックに関連付けられる各係数について、水平座標及び垂直座標に基づいて、係数が走査順によるブロック内の最後尾有意係数であるか否かを決定するように更に構成され得る。この例では、ブロックは第１のブロックであり得、走査順は第１の走査順であり得、エントロピー復号ユニット７０は、第１のブロックに関連付けられる係数を第１の走査順に基づいて連続する系列に構成し、第２のブロックを生成するために、第２の走査順を使用して第２のブロックに系列をマッピングするように更に構成され得、第２のブロックは第１のブロックとは異なり、第２の走査順は第１の走査順とは異なる。エントロピー復号ユニット７０は、第２のブロックに関連付けられる各係数について、第１のブロックに対する決定に基づいて、係数が第２の走査順による第２のブロック内の最後尾有意係数であるか否かを決定するように、また更に構成され得る。
【０１２３】
同じくこの例において、前に説明したように、水平座標及び垂直座標の各々は、１つ以上のビンから成る系列を備えるように二値化座標を備え得、水平座標及び垂直座標の各々を復号するために、エントロピー復号ユニット７０は、それぞれの系列を復号するように構成され得る。例えば、１つ以上のビンから成る系列は、単項符号語、切り捨て単項符号語、指数ゴロム符号語、及び連結符号語のうちの１つを備え得る。
【０１２４】
一例として、切り捨て単項符号語は、それぞれの座標が所定の切り捨て値未満の値を有する場合には可変数の第１のシンボル（例えば、「１」）、ここで可変数は座標の値に対応し、続く第２のシンボル（例えば、「０」）を備え、ここで、第１のシンボルは第２のシンボルとは異なり、座標が切り捨て値以上の値を有する場合には、所定数の第１のシンボル、切り捨て値に対応する所定数を備える。
【０１２５】
別の例として、連結符号語は、第１の符号語（例えば、第１の符号化方法を使用して生成される符号語）と第２の符号語（例えば、第２の符号化方法を使用して生成される符号語）とを連結したものを備え得、第１の符号語は第２の符号語とは異なる。この例では、連結符号語は、ビデオデータブロックが十分に大きく、それによって、それぞれの座標を表すために単項符号語、又は切り捨て単項符号語を使用すると、連結符号語よりも多くのビットが必要になり得る場合に使用され得る。
【０１２６】
同じく前に説明したように、水平座標及び垂直座標を復号するために、エントロピー復号ユニット７０は、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するように構成され得る。一例として、一方の座標に対応する系列の少なくとも１つのビンを、他方の座標に対応する系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するために、エントロピー復号ユニット７０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセスを実行するように構成され得、少なくとも１つのコンテキストは、他の座標に対応する系列の少なくとも１つのビンの値を含む。
【０１２７】
加えて、エントロピー復号ユニット７０は、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンをインターリーブされた様式で復号するように構成され得る。例えば、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンの各々の少なくとも１つのビンは、標準符号化モードを使用して符号化されるビンを備え得、系列の各々の少なくとも１つのビンは、バイパス符号化モードを使用してコード化されるビンを備え得る。
【０１２８】
[0136]この例では、一方の座標に対応する系列の１つ以上のビン、及び他方の座標に対応する系列の１つ以上のビンを復号するために、エントロピー復号ユニット７０は、標準符号化モードを使用して符号化される一方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを復号し、その後、標準符号化モードを使用して符号化される他の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを復号し、続いて、バイパス符号化モードを使用して符号化される一方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを復号し、その後、バイパス符号化モードを使用して符号化される他方の座標に対応する系列の１つ以上のビンの少なくとも１つのビンを復号するように構成され得る。他の例では、エントロピー復号ユニット７０は、バイパス符号化モードを使用して符号化される系列のビンをともに復号するように構成され得る。
【０１２９】
別の例として、有意係数位置情報を符号化するために、走査順は第１の走査順であり得、エントロピー復号ユニット７０は、走査順によるブロック内の最後尾有意係数で開始して走査順によるブロック内の最初の係数で終わり、第１の走査順に対して逆の第２の走査順に従って進む、ブロックに関連付けられる１つ以上の係数の各々に対する有意係数フラグの連続する系列を復号するように構成され得、有意係数フラグの各々は、それぞれの係数が有意係数であるか否かを指示する。エントロピー復号ユニット７０は、ブロックに関連付けられる各係数について、系列に基づいて、係数が有意係数であるか否かを決定するように更に構成され得る。
【０１３０】
別の例として、有意係数位置情報を符号化するために、エントロピー復号ユニット７０は、走査順によるブロック内の最初の係数で開始して走査順によるブロック内の最後尾有意係数で終わり、走査順に従って進む、ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を１つ以上のグループに復号するように構成され得、１つ以上のグループの各々は１つ以上の係数を備える。この例では、１つ以上のグループの各々について、系列は、係数の１つ以上が全てゼロ値（即ち、非有意）係数であるか否かを指示するグループフラグを含む１つ以上のフラグと、係数の１つ以上の少なくとも１つが有意係数であるとき、それぞれの係数が有意係数であるか否かを指示する、係数の１つ以上の各々に対する有意係数フラグとを備え得る。エントロピー復号ユニット７０は、ブロックに関連付けられる各係数について、系列に基づいて、係数が有意係数であるか否かを決定するように更に構成され得る。
【０１３１】
また別の例では、最後尾有意係数位置情報を符号化するために、及び、有意係数位置情報を符号化するために、エントロピー復号ユニット７０は、エントロピー復号ユニット７０が少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行するように構成され得、少なくとも１つのコンテキストは、最後尾有意係数位置情報及び有意係数位置情報のうちの一方を含む。一例として、水平座標及び垂直座標の各々に対応する１つ以上のビンから成る系列を復号するために、エントロピー復号ユニット７０は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセスを実行することによって系列の各ビンを復号するように構成され得、少なくとも１つのコンテキストは系列内のそれぞれのビンの位置を含む。前に説明したように、系列内のビンの位置は、ビンに対応するブロック内の位置の行番号又は列番号に対応し得る。言い換えれば、ビンを符号化するのに使用されるコンテキストは、ビンに対応するｘ方向又はｙ方向におけるブロック内の位置であり得る。この例では、エントロピー復号ユニット７０を説明したように構成することによって、エントロピー復号ユニット７０が、例えば、より少ないビット数を使用することによって、他の方法を使用するときよりも効率的に情報を符号化することが可能になり得る。
【０１３２】
従って、本開示の技術は、エントロピー復号ユニット７０が他のシステムと比較してより低い複雑度を有することを可能にし得、エントロピー復号ユニット７０が、他の方法を使用するときよりも効率的に最後尾有意係数位置情報及び有意係数位置情報を符号化することを可能にし得る。このように、本開示の技術を使用すると、情報を含む符号化ビットストリームに関して相対的にビットが節約され、情報を符号化するのに使用されるエントロピー復号ユニット７０の複雑度が相対的に低減され得る。
【０１３３】
動き補償ユニット７２は、ビットストリーム中で受信された動きベクトルを使用して、メモリ８２中の参照フレーム中の予測ブロックを識別し得る。イントラ予測モジュール７４は、ビットストリーム中で受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成し得る。
【０１３４】
イントラ予測モジュール７４は、例えば、隣接する、以前復号されたブロックの画素を使用して、コード化されたブロックをイントラ予測するためにコード化されたブロックに対するイントラ予測モードの指示を使用することができる。ブロックがインター予測モードコード化される例では、動き補償ユニット７２は、コード化されたブロックについての動き補償予測データを取り出すために、動きベクトルを定義する情報を受信することができる。いずれの場合も、動き補償ユニット７２又はイントラ予測モジュール７４は、加算器８０に予測ブロックを定義する情報を提供することができる。
【０１３５】
逆量子化ユニット７６は、ビットストリーム中で供給され、エントロピー復号ユニット７０によって復号された量子化ブロック係数を逆量子化（inverse quantize）、即ち、逆量子化（de-quantize）する。逆量子化プロセスは、例えば、Ｈ．２６４復号規格によって定義される、又はＨＥＶＣテストモデルによって実行されるなど、従来のプロセスを含み得る。逆量子化プロセスはまた、量子化の程度を決定し、同様に、適用する逆量子化の程度を決定するための、各ブロックについてビデオエンコーダ２０によって計算される量子化パラメータＱＰYの使用を含み得る。
【０１３６】
逆変換モジュール７８は、逆変換、例えば、逆ＤＣＴ、逆整数変換、又は概念的に同様の逆変換プロセスを変換係数に適用して、画素領域において残差ブロックを生成する。動き補償ユニット７２は動き補償ブロックを生成し、場合によっては、補間フィルタに基づいて補間を実行する。サブ画素精度をもつ動き推定に使用されるべき補間フィルタの識別子は、シンタックス要素中に含まれ得る。動き補償ユニット７２は、ビデオブロックのコード化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数画素の補間値を計算し得る。動き補償ユニット７２は、受信されたシンタックス情報に従って、ビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【０１３７】
動き補償ユニット７２は、コード化されたブロックのシンタックス情報の幾つかを使用して、コード化ビデオシーケンスの（１つ以上の）フレームをコード化するために使用されるブロックのサイズと、符号化ビデオシーケンスのフレーム又はスライスの各ブロックがどのように区分されるかを記述するパーティション情報と、各パーティションがどのようにコード化されるかを示すモードと、各インターコード化ブロック又はパーティションのための１つ以上の参照フレーム（及び参照フレームリスト）と、コード化ビデオシーケンスを復号するための他の情報とを決定する。
【０１３８】
イントラ予測モジュール７４は、例えば、上述したように、隣接する、以前復号されたブロックの画素を使用して、コード化されたブロックをイントラ予測するために、符号化されたブロックのシンタックス情報を使用することもできる。
【０１３９】
[0146]加算器８０は、残差ブロックを、動き補償ユニット７２又はイントラ予測モジュール７４によって生成される対応する予測ブロックと合計して、復号ブロックを形成する。必要に応じて、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタを適用して、復号ブロックをフィルタ処理することもできる。復号されたビデオブロックは、次いで、メモリ８２に記憶され、メモリは、参照ブロックを後続の動き補償に供給し、また、（図１の表示装置３２などの）表示装置上での提示のために復号されたビデオを生成する。
【０１４０】
このように、ビデオデコーダ３０は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成されるビデオコーダの一例を表し、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオコーダは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成される。
【０１４１】
図４Ａ〜図４Ｃは、ビデオデータブロック及び対応する有意係数位置情報及び最後尾有意係数位置情報の一例を示す概念図である。図４Ａに示すように、ビデオデータブロック、例えば、マクロブロック、又はＣＵのＴＵは、量子化変換係数を含み得る。例えば、図４Ａに示すように、ブロック４００は、前に説明した予測、変換、及び量子化技術を使用して生成される量子化変換係数を含み得る。この例について、ブロック４００は２Ｎ×２Ｎのサイズを有すると仮定し、ここでＮは２に等しい。従って、同じく図４Ａに示すように、ブロック４００は４×４のサイズを有し、１６個の量子化変換係数を含む。更に、ブロック４００に関連付けられる走査順は、下記により詳細に説明する図５Ａに示すようなジグザグ走査順であると仮定する。
【０１４２】
この例では、ジグザグ走査順によるブロック４００内の最後尾有意係数は、ブロック４００内の位置４０６に位置する「１」に等しい量子化変換係数である。他の例では、上述したように、ブロックはブロック４００のサイズよりも小さいサイズを有してもよいし、又は大きいサイズを有してもよく、ブロック４００よりも多い量子化変換係数を含んでもよいし、又は少ない量子化変換係数を含んでもよい。また他の例では、ブロック４００に関連付けられる走査順は異なる走査順、例えば、水平走査順、垂直走査順、対角走査順、又は別の走査順であってもよい。
【０１４３】
図４Ｂは、有意係数フラグデータ、即ち、前に説明したようなマップ又はブロック形式で表される有意係数フラグの一例を示す。図４Ｂの例では、ブロック４０２は、図４Ａに示されるブロック４００に対応し得る。言い換えれば、ブロック４０２の有意係数フラグは、ブロック４００の量子化変換係数に対応し得る。図４Ｂに示すように、ブロック４０２の「１」に等しい有意係数フラグは、ブロック４００の有意係数に対応する。同様に、ブロック４０２の「０」に等しい有意係数フラグは、ブロック４００のゼロ、又は非有意係数に対応する。
【０１４４】
この例では、ジグザグ走査順によるブロック４００内の最後尾有意係数に対応するブロック４０２の有意係数フラグは、ブロック４０２内の位置４０８に位置する「１」に等しい有意係数フラグである。他の例では、有意係数又は非有意係数を指示するために使用される有意係数フラグの値は変化してもよい（例えば、「０」に等しい有意係数フラグが有意係数に対応してもよく、「１」に等しい有意係数フラグが非有意係数に対応してもよい）。
【０１４５】
図４Ｃは、最後尾有意係数フラグデータ、即ち、同じく前に説明したようなマップ又はブロック形式で表される最後尾有意係数フラグの一例を示す。図４Ｃの例では、ブロック４０４は、それぞれ図４Ａ及び図４Ｂに示されるブロック４００及びブロック４０２に対応し得る。言い換えれば、ブロック４０４の最後尾有意係数フラグは、ブロック４００の量子化変換係数及びブロック４０２の有意係数フラグに対応し得る。
【０１４６】
図４Ｃに示すように、ブロック４０４内の位置４１０に位置するブロック４０４の「１」に等しい最後尾有意係数フラグは、ブロック４００の最後尾有意係数、及び、ジグザグ走査順によるブロック４０２の「１」に等しい有意係数フラグのうちの最後のものに対応する。同様に、ブロック４０４の「０」に等しい最後尾有意係数フラグ（即ち、残りの全ての最後尾有意係数フラグ）は、ブロック４００のゼロ、又は非有意係数、及び、ブロック４０２の「１」に等しい全ての有意係数フラグの、ジグザグ走査順によるそのような有意係数フラグの最後のもの以外のものに対応する。
【０１４７】
走査順による最後尾有意係数を指示するのに使用される最後尾有意係数フラグの値は変化してもよい（例えば、「０」に等しい最後尾有意係数フラグが走査順による最後尾有意係数に対応してもよく、「１」に等しい最後尾有意係数フラグが残りの全ての係数に対応してもよい）。いずれの場合も、ブロック４０２の有意係数フラグ及びブロック４０４の最後尾有意係数フラグは、ブロック４００のＳＭデータと総称されることがある。
【０１４８】
上述したように、ビデオデータブロックの有意係数位置情報は、ブロックに関連付けられる走査順を使用して、ブロックに対する有意係数フラグを、図４Ｂに示すブロック４０２に示されるような２次元ブロック表現から、１次元アレイに直列化することによって指示され得る。図４Ａ〜図４Ｂに示すブロック４００〜４０２の例において、再びジグザグ走査順を仮定して、ブロック４００の有意係数位置情報は、ブロック４０２の有意係数フラグを１次元アレイに直列化することによって指示され得る。即ち、ブロック４００の有意係数位置情報は、ジグザグ走査順によるブロック４０２の有意係数フラグのシーケンスを生成することによって指示され得る。
【０１４９】
この例では、生成されるシーケンスは、ジグザグ走査順によるブロック４０２の最初の６つの有意係数フラグを表す値「１１１１１１」に対応し得る。生成されるシーケンスは、ジグザグ走査順における最初のブロック位置（即ち、ＤＣ位置）から開始して、ジグザグ走査順によるブロック４００の最後尾有意係数に対応する（即ち、ブロック４０４の「１」に等しい最後尾有意係数フラグに対応する）ブロック位置で終わる、ブロック４００内のブロック位置の範囲に対応する有意係数フラグを含んでもよいことに留意されたい。
【０１５０】
同じく上述したように、本開示の技術によれば、ブロックの最後尾有意係数位置情報は、例えば、最後尾有意係数フラグを、ブロックに関連付けられる走査順を使用して、図４Ｃに示すブロック４０４に示されるような２次元ブロック表現から、１次元アレイに直列化することによって、ブロック内の最後尾有意係数位置を指示する１次元位置を使用して指示され得る。図４Ａ〜図４Ｃに示すブロック４００〜４０４の例において、再びジグザグ走査順を仮定して、ブロック４００の最後尾有意係数位置情報は、ブロック４０４の最後尾有意係数フラグを１次元アレイに直列化することによって指示され得る。即ち、ブロック４００の最後尾有意係数位置情報は、ジグザグ走査順によるブロック４０４の最後尾有意係数フラグのシーケンスを生成することによって指示され得る。この例では、生成されるシーケンスは、ジグザグ走査順によるブロック４０４の最初の６つの最後尾有意係数フラグを表す値「０００００１」に対応し得る。
【０１５１】
ここでも、生成されるシーケンスは、ジグザグ走査順における最初のブロック位置から開始して、ジグザグ走査順によるブロック４００の最後尾有意係数に対応する（即ち、ブロック４０４の「１」に等しい最後尾有意係数フラグに対応する）ブロック位置で終わる、ブロック４００内のブロック位置の範囲に対応する最後尾有意係数フラグを含んでもよいことに留意されたい。従って、この例では、ジグザグ走査順による「１」に等しい最後尾有意係数フラグに続く最後尾有意係数フラグは、シーケンス内に含まれない。概して、ビデオデータブロックに関連付けられる走査順に従って「１」に等しい最後尾有意係数フラグに続く最後尾有意係数フラグは、ブロックの最後尾有意係数位置情報を指示するためには必要とされないものであり得る。従って、幾つかの例では、これらのフラグは、情報を指示するのに使用される最後尾有意係数フラグの生成されるシーケンスから省かれる。
【０１５２】
上述したように、最後尾有意係数が走査順による最後のブロック位置（例えば、右下のブロック位置）内に位置する場合には、最後のブロック位置はブロックの最後尾有意係数を含むと推測され得るので、生成されるシーケンスはその位置に対応する最後尾有意係数フラグを含まない場合があることにも留意されたい。従って、この例では、生成されるシーケンスは、「０００００００００００００００」の値に対応し得、最後のブロック位置に対応する最後尾有意係数フラグはこのシーケンス内には含まれておらず、「１」に等しいと推測される。
【０１５３】
同じく上述したように、本開示の技術によれば、ブロックの最後尾有意係数位置情報は、２次元位置を使用して、例えば、ブロック内の最後尾有意係数位置を指示する水平座標及び垂直座標を使用して指示され得る。例えば、再び図４Ａ〜図４Ｃを参照すると、ブロック４００の最後尾有意係数位置情報は、「２」に等しい水平座標及び「０」に等しい垂直座標を使用して指示され得る。この座標は、ブロック４００内の位置４０６に対応し得、基準、即ち原点位置はＤＣ位置であり、これは、両方とも「０」に等しい水平座標と垂直座標に対応する。前に説明したように、座標は単項符号語を使用して表され得る。この例では、水平座標は単項符号語「１１０」に対応し得、垂直座標は単項符号語「０」に対応し得る。
【０１５４】
いずれの場合も、最後尾有意係数フラグのシーケンス、又は、この場合は単項符号語として表される水平座標及び垂直座標として表される最後尾有意係数位置情報は、有意係数フラグのシーケンスとして表される、ブロックの有意係数位置情報を符号化する前に符号化され得、それによって、情報を並列に符号化することが可能になり得、結果として符号化システムの複雑度が低くなり得る。同じく前に説明したように、最後尾有意係数位置情報及び有意係数位置情報は各々、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を使用して符号化され得、少なくとも１つのコンテキストは、最後尾有意係数位置情報及び有意係数位置情報のうちの一方を含み得、それによって、例えば、少ない数のビットを使用して情報を符号化して、効率的な符号化が可能になり得る。
【０１５５】
このように、図２のビデオエンコーダ２０及び／又は図３のビデオデコーダ３０は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオコーダは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成される。
【０１５６】
図５Ａ〜図５Ｃは、それぞれジグザグ走査順、水平走査順、及び垂直走査順を使用して走査されるビデオデータブロックの例を示す概念図である。図５Ａ〜図５Ｃに示すように、８×８ビデオデータブロック、例えば、マクロブロック、又はＣＵのＴＵは、円を用いて示されている、対応するブロック位置内の６４個の量子化変換係数を含み得る。例えば、ブロック５００〜５０４は各々、前に説明した予測、変換、及び量子化技術を使用して生成される６４個の量子化変換係数を含み得、やはり、各対応するブロック位置が円を用いて示されている。この例について、ブロック５００〜５０４は２Ｎ×２Ｎのサイズを有すると仮定し、ここでＮは４に等しい。従って、ブロック５００〜５０４は８×８のサイズを有する。
【０１５７】
図５Ａに示すように、ブロック５００に関連付けられる走査順はジグザグ走査順である。ジグザグ走査順は、ブロック５００の量子化変換係数を、図５Ａにおける矢印によって指示されるような対角様式で走査する。同様に、図５Ｂ及び図５Ｃに示すように、ブロック５０２及び５０４に関連付けられる走査順は、それぞれ水平走査順及び垂直走査順である。同じく図５Ｂ及び図５Ｃにおける矢印によって指示されるように、水平走査順は、ブロック５０２の量子化変換係数を、水平線ごとに、又は「ラスタ」様式で走査し、一方で、垂直走査順は、ブロック５０４の量子化変換係数を、垂直線ごとに、又は「回転ラスタ」様式で走査する。
【０１５８】
他の例では、上述したように、ブロックはブロック５００〜５０４のサイズよりも小さいサイズを有してもよいし、又は大きいサイズを有してもよく、より多い若しくはより少ない量子化変換係数及び対応するブロック位置を含んでもよい。これらの例では、ブロックに関連付けられる走査順は、ブロックの量子化変換係数を、図５Ａ〜図５Ｃの８×８ブロック５００〜５０４の例において示したものと実質的に同様に走査し得、例えば、４×４ブロック、又は１６×１６ブロックが、前に説明した走査順のいずれかに従って走査されてもよい。
【０１５９】
前に説明したように、本開示の技術は、対角走査順と、ジグザグ、水平、垂直、及び／又は対角走査順の組合せである走査順と、部分的にジグザグ、部分的に水平、部分的に垂直、及び／又は部分的に対角である走査順とを含む、多様な他の走査順に対しても適用されてもよい。加えて、本開示の技術は、以前に符号化されたビデオデータブロック（例えば、現在符号化されているブロックと同じブロックサイズ又は符号化モードを有するブロック）に関連付けられる統計に基づいて、それ自体が適応的である走査順をも考慮し得る。例えば、適応型走査順は、場合によってはビデオデータブロックに関連付けられる走査順であり得る。
【０１６０】
このように、図２のビデオエンコーダ２０及び／又は図３のビデオデコーダ３０は、ブロックに関連付けられる走査順（例えば、それぞれ図５Ａ〜図５Ｃに示すジグザグ、水平、又は垂直走査順）によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成され得る。
【０１６１】
図６Ａ〜図６Ｂは、ビデオデータブロックの最後尾有意係数位置情報の例を示す概念図である。図４Ａに関して上述したものと同様に、図６Ａに示すように、ブロック６００は量子化変換係数を含み得る。この例では、再びジグザグ走査順によるブロック６００の最後尾有意係数は、ブロック６００内の位置６０４に位置する「１」に等しい量子化変換係数である。前に説明したように、本開示の技術によれば、ブロック６００の最後尾有意係数位置情報は、水平座標及び垂直座標を備える２次元位置を使用して指示され得る。この例では、ブロック６００の最後尾有意係数位置情報は、「２」に等しい水平座標及び「０」に等しい垂直座標を使用して指示され得る。この例では、水平座標は単項符号語「１１０」に対応し得、垂直座標は単項符号語「０」に対応し得る。
【０１６２】
図６Ｂは、図６Ａのブロック６００の係数を、ブロック６００に関連付けられる走査順（例えば、ジグザグ走査順）に基づいて連続するシーケンスに構成し、シーケンスを水平走査順を使用してブロック６０２にマッピングすることによって生成される量子化変換係数のブロックの一例を示す。この例では、今回は水平走査順による、ブロック６０２の最後尾有意係数が、ブロック６０２内の位置６０６に位置する「１」に等しい量子化変換係数である。前に説明したように、本開示の技術によれば、ブロック６０２の最後尾有意係数位置情報は、水平座標及び垂直座標を備える２次元位置を使用して指示され得る。この例では、ブロック６０２の最後尾有意係数位置情報は、「１」に等しい水平座標及び「１」に等しい垂直座標を使用して指示され得、これらは各々単項符号語「１０」に対応し得る。
【０１６３】
前に説明したように、ブロック６００の係数を上述したようにブロック６０２にマッピングする結果として、ブロック６０２の最後尾有意係数位置情報の１つの座標の値が異なる結果として、他の座標の単項符号語のビンに対する確率推定値が異なることになり得る。加えて、同じく前に説明したように、符号語内の他の座標の単項符号語のビンの位置が異なる結果として、符号語のビンに対する確率推定値が異なることになり得る。即ち、ビンに対応するブロック６０２内の位置の行番号又は列番号が異なる結果として、ビンに対する確率推定値が異なることになり得る。従って、最後尾有意係数位置情報の一方の座標を、他方の座標を符号化した後に符号化するとき、一方の座標の単項符号語の各ビンは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって符号化され得、少なくとも１つのコンテキストは、前に説明したような、単項符号語内のビンの位置、及び、前に符号化された他の座標の値を含み得る。他の例では、シーケンスは、異なる走査順、例えば、垂直走査順を使用してブロック６０２にマッピングされ得、その結果として、水平座標及び垂直座標が異なることになり得、水平座標及び垂直座標の単項符号語のビンに対する確率推定値が異なることになり得る。
【０１６４】
このように、図２のビデオエンコーダ２０及び／又は図３のビデオデコーダ３０は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化するように構成され得、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化するために、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを実行するように構成され得る。
【０１６５】
図７は、ビデオデータブロックの最後尾有意係数位置情報を、ブロックの有意係数位置情報を符号化する前に符号化するための方法の一例を示す流れ図である。図７の技術は、一般に、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せのいずれで実施されようと、任意の処理ユニット又はプロセッサによって実行することができ、ソフトウェア又はファームウェアに実装されるとき、ソフトウェア又はファームウェアのための命令を実行するために、対応するハードウェアが提供され得る。例として、図７の技術は、ビデオエンコーダ２０（図１及び図２）及び／又はビデオデコーダ３０（図１及び図３）に関して説明するが、他の機器が同様の技術を実行するように構成され得ることを理解されたい。その上、図７に示されるステップは、本開示の技術から逸脱することなく、異なる順序で又は並行して実行されてもよく、追加のステップが追加されたり、幾つかのステップが省略されたりしてもよい。
【０１６６】
最初に、ビデオエンコーダ２０及び／又はビデオデコーダ３０が、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を符号化するためのコンテキストを決定し得る（７００）。例えば、ブロックはマクロブロック、又はＣＵのＴＵであり得る。更に、前に説明したように、ブロックに関連付けられる走査順は、ジグザグ走査順、水平走査順、垂直走査順、又は別の走査順であり得る。同じく前に説明したように、最後尾有意係数位置情報は、最後尾有意係数フラグのシーケンス、又はブロック内の最後尾有意係数位置の水平座標及び垂直座標として表され得る。同じく前に説明したように、最後尾有意係数位置情報を符号化するためのコンテキストは、その情報自体であり得る。
【０１６７】
ビデオエンコーダ２０及び／又はビデオデコーダ３０は、最後尾有意係数位置情報を更に符号化し得る（７０２）。例えば、情報は、上述したように、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって、ビデオエンコーダ２０の場合は符号化され得、又はビデオデコーダ３０の場合には復号され得る。情報が最後尾有意係数フラグのシーケンスとして表される例では、コンテキストモデルは、符号化されている最後尾有意係数フラグが走査順によるブロックの最後尾有意係数に対応する（例えば、最後尾有意係数フラグが「０」又は「１」に等しい）確率を指示する確率推定値を含み得る。情報がブロック内の最後尾有意係数位置の水平座標及び垂直座標を使用して表され、各座標が更に単項符号語として表される例では、コンテキストモデルは、符号化されている所与の座標の単項符号語のビンが特定の値（例えば、「０」又は「１」）に等しい可能性を指示する確率推定値を含み得る。いずれの場合も、これらの確率推定値を使用して、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、コンテキスト適応型エントロピー符号化プロセスを実行することによって最後尾有意係数位置情報を符号化し得る。
【０１６８】
[0175]ビデオエンコーダ２０及び／又はビデオデコーダ２０は更に、ブロック内の他の有意係数の位置を識別する情報を符号化するためのコンテキストを決定し得る（７０４）。前に説明したように、有意係数位置情報は、有意係数フラグのシーケンスとして表され得る。同じく前に説明したようにコンテキストは、最後尾有意係数位置情報及び有意係数位置情報を含み得る。
【０１６９】
ビデオエンコーダ２０及び／又はビデオデコーダ３０は、有意係数位置情報を更に符号化し得る（７０６）。ここでも、情報は、上述したように、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって、ビデオエンコーダ２０の場合はコード化され得、又はビデオデコーダ３０の場合には復号され得る。この例では、符号化されている有意係数フラグがブロックの有意係数に対応する（例えば、有意係数フラグが「０」又は「１」に等しい）可能性を指示する確率推定値を含み得る。ここでも、これらの確率推定値を使用して、ビデオエンコーダ２０及び／又はビデオデコーダ３０は、コンテキスト適応型エントロピー符号化プロセスを実行することによって有意係数位置情報を符号化し得る。
【０１７０】
このように、図７の方法は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化する方法の一例を表し、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化することは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを含む。
【０１７１】
図８は、ビデオデータブロックの最後尾有意係数位置情報を、ブロックの有意係数位置情報をコード化する前にコード化するための方法の一例を示す流れ図である。ここでも、図８の技術は、一般に、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せのいずれに実装されようと、任意の処理ユニット又はプロセッサによって実行することができ、ソフトウェア又はファームウェアに実装されるとき、ソフトウェア又はファームウェアのための命令を実行するために、対応するハードウェアが提供され得る。例として、図８の技術は、エントロピーコード化ユニット５６（図２）に関して説明するが、他の機器が同様の技術を実行するように構成され得ることを理解されたい。その上、図８に示されるステップは、本開示の技術から逸脱することなく、異なる順序で又は並行して実行されてもよく、追加のステップが追加されたり、幾つかのステップが省略されたりしてもよい。
【０１７２】
最初に、エントロピーコード化ユニット５６が、ビデオデータブロックを受信し得る（８００）。例えば、ブロックはマクロブロック、又はＣＵのＴＵであり得る。エントロピーコード化ユニット５６は更に、ブロックに関連付けられる走査順によるブロック内の最後尾有意係数の位置を識別する情報、即ち、ブロックの最後尾有意係数位置情報を求め得る（８０２）。上述したように、情報は、最後尾有意係数フラグのシーケンス、又はブロック内の最後尾有意係数位置の水平座標及び垂直座標を備え得る。エントロピーコード化ユニット５６は更に、最後尾有意係数位置をコード化するためのコンテキストを決定し得る（８０４）。例えば、コード化コンテキストは、最後尾有意係数位置情報自体を含み得る。エントロピーコード化ユニット５６は更に、最後尾有意係数位置情報をコード化し得る（８０６）。例えば、情報は、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによってコード化され得る。最終的に、エントロピーコード化ユニット５６は、コード化された情報をビットストリームに出力し得る（８０８）。
【０１７３】
エントロピーコード化ユニット５６は更に、ブロック内の他の有意係数の位置を識別する情報、即ち、ブロックの有意係数位置情報を求め得る（８１０）。上述したように、有意係数位置情報は、有意係数フラグのシーケンスを備え得る。エントロピーコード化ユニット５６は更に、有意係数位置情報を符号化するためのコンテキストを決定し得る（８１２）。例えば、符号化コンテキストは、最後尾有意係数位置、及び有意係数位置情報自体を含み得る。エントロピーコード化ユニット５６は更に、有意係数位置情報をコード化し得る（８１４）。例えば、情報は、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって符号化され得る。最終的に、エントロピーコード化ユニット５６は、コード化された情報をビットストリームに出力し得る（８１６）。
【０１７４】
このように、図８の方法は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化する方法の一例を表し、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化することは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを含む。
【０１７５】
図９は、ビデオデータブロックのコード化された最後尾有意係数位置情報を、ブロックのコード化された有意係数位置情報を復号する前に復号するための方法の一例を示す流れ図である。ここでも、図９の技術は、一般に、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せのいずれに実装されようと、任意の処理ユニット又はプロセッサによって実行することができ、ソフトウェア又はファームウェアに実装されるとき、ソフトウェア又はファームウェアのための命令を実行するために、対応するハードウェアが提供され得る。例として、図９の技術は、エントロピー復号ユニット７０（図３）に関して説明するが、他の機器が同様の技術を実行するように構成され得ることを理解されたい。その上、図９に示されるステップは、本開示の技術から逸脱することなく、異なる順序で又は並行して実行されてもよく、追加のステップが追加されたり、幾つかのステップが省略されたりしてもよい。
【０１７６】
最初に、エントロピー復号ユニット７０は、ビデオデータブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別するコード化された情報、即ち、ブロックの最後尾有意係数位置情報を受信し得る（９００）。ここでも、ブロックはマクロブロック、又はＣＵのＴＵであり得る。エントロピー復号ユニット７０は更に、コード化された最後尾有意係数位置を復号するためのコンテキストを決定し得る（９０２）。例えば、復号コンテキストは、最後尾有意係数位置情報自体を含み得る。エントロピー復号ユニット７０は更に、最後尾有意係数位置情報を復号し得る（９０４）。例えば、情報は、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって復号され得る。上述したように、復号された情報は、最後尾有意係数フラグのシーケンス、又はブロック内の最後尾有意係数位置の水平座標及び垂直座標を備え得る。
【０１７７】
その後、エントロピー復号ユニット７０は、ブロック内の他の有意係数の位置を識別する符号化された情報、即ち、ブロックの有意係数位置情報を受信し得る（９０６）。エントロピー復号ユニット７０は更に、コード化された有意係数位置を復号するためのコンテキストを決定し得る（９０８）。例えば、復号コンテキストは、最後尾有意係数位置情報、及び有意係数位置情報自体を含み得る。エントロピー復号ユニット７０は更に、コード化された有意係数位置情報を復号し得る（９１０）。例えば、情報は、決定されたコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピー符号化プロセス（例えば、ＣＡＢＡＣプロセス）を実行することによって復号され得る。上述したように、復号された情報は、有意係数フラグのシーケンスを備え得る。最終的に、エントロピー復号ユニット７０は、復号された最後尾有意係数位置情報及び復号された有意係数位置情報に基づいてブロックを復号し得る（９１２）。
【０１７８】
このように、図９の方法は、ブロックに関連付けられる走査順によるビデオデータブロック内の最後尾有意係数の位置を識別する情報を、ブロック内の他の有意係数の位置を識別する情報を符号化する前に符号化する方法の一例を表し、走査順によるブロック内の最後尾有意係数の位置を識別する情報を符号化することは、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の１次元位置を符号化すること、走査順によるブロック内の最後尾有意係数の位置を識別するブロック内の２次元位置を符号化すること、及び、走査順によるブロック内の最後尾有意係数がブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、走査順によるブロック内の最後尾有意係数がその範囲内に位置する場合に、ブロック内の１次元位置を符号化し、そうでない場合に、ブロック内の２次元位置を符号化することのうちの少なくとも１つを含む。
【０１７９】
１つ以上の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実施され得る。ソフトウェアで実装した場合、機能は、１つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、又はコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、若しくは（２）信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技術の実装のための命令、コード及び／又はデータ構造を取り出すために１つ以上のコンピュータあるいは１つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１８０】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージ、又は他の磁気ストレージ機器、フラッシュメモリ、又は命令若しくはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）及びディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）及びブルーレイ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１８１】
命令は、１つ以上のデジタル信号プロセッサ（ＤＳＰ）などの１つ以上のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、又は他の等価な集積回路もしくはディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、又は本明細書で説明する技術の実装に好適な他の構造のいずれかを指す。更に、幾つかの態様では、本明細書で説明した機能は、コード化及び復号のために構成された専用のハードウェア及び／又はソフトウェアモジュール内に提供され得、あるいは複合コーデックに組み込まれ得る。また、本技術は、１つ以上の回路又は論理要素中に十分に実装され得る。
【０１８２】
本開示の技術は、ワイヤレスハンドセット、集積回路（ＩＣ）、又はＩＣのセット（例えば、チップセット）を含む、多種多様な機器又は装置において実装され得る。本開示では、開示する技術を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び／又はファームウェアとともに、上記で説明した１つ以上のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作ハードウェアユニットの集合によって与えられ得る。
【０１８３】
様々な例について説明した。これら及び他の例は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオコード化プロセス中にビデオデータブロックに関連付けられる係数をコード化する方法であって、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化することを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化することは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の１次元位置を符号化することと、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化することと、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記ブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記範囲内に位置する場合に、前記ブロック内の前記１次元位置を符号化し、そうでない場合に、前記ブロック内の前記２次元位置を符号化することのうちの少なくとも１つを含む、方法。
［２］  符号化はコード化を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置をコード化することは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定し、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを指示する最後尾係数フラグを生成することと、前記１つ以上の係数に対する前記最後尾係数フラグを、前記走査順に基づいて連続する系列に構成することと、前記系列をコード化することと、を備える、［１］に記載の方法。
［３］  符号化はコード化を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置をコード化することは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を求めることと、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を求めることと、前記水平座標及び前記垂直座標をコード化することと、を備える、［１］に記載の方法。
［４］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記方法は、第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、構成することと、前記第１のブロックを生成するために、前記第１の走査順を使用して前記系列を前記第１のブロックにマッピングすることと、を更に備える、［３］に記載の方法。
［５］  前記水平座標及び前記垂直座標の各々をコード化することは、前記座標が１つ以上のビンから成る系列を備えるように前記それぞれの座標を二値化することと、前記系列をコード化することとを備える、［３］に記載の方法。
［６］  前記１つ以上のビンから成る系列は、単項符号語、切り捨て単項符号語、指数ゴロム符号語、及び連結符号語のうちの１つを備える、［５］に記載の方法。
［７］  前記切り捨て単項符号語は、前記それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、可変数の第１のシンボル、前記座標の前記値に対応する変数、それに続く第２のシンボルを備え、前記第１のシンボルは前記第２のシンボルとは異なり、前記座標が前記切り捨て値以上の値を有する場合は、所定数の前記第１のシンボル、前記切り捨て値に対応する前記所定数を備える、［６］に記載の方法。
［８］  前記連結符号語は、前記第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、［６］に記載の方法。
［９］  前記系列の各ビンをコード化することは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行することを備え、前記少なくとも１つのコンテキストは、前記系列内のそれぞれのビンの一部を含む、［５］に記載の方法。
［１０］  前記水平座標及び前記垂直座標をコード化することは、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化すること、を備える、［５］に記載の方法。
［１１］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいてコード化することは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行することを備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［１０］に記載の方法。
［１２］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式でコード化することを更に備える、［５］に記載の方法。
［１３］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンの各々のうちの少なくとも１つのビンは、標準コード化モードを使用してコード化されるビンを備え、前記系列の各々のうちの少なくとも１つのビンは、バイパスコード化モードを使用してコード化されるビンを備え、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンを前記インターリーブされた様式でコード化することは、前記標準コード化モードを使用してコード化される前記一方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを、前記標準コード化モードを使用してコード化される前記他方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンをコード化する前にコード化し、続いて、前記バイパスコード化モードを使用してコード化される前記一方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを、前記バイパスコード化モードを使用してコード化される前記他方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを符号化する前にコード化すること、を備える、［１２］に記載の方法。
［１４］  前記走査順は第１の走査順を備え、符号化はコード化を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報をコード化することは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを示す有意係数フラグを生成することと、前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成することと、前記系列をコード化することと
を備える、［１］に記載の方法。
［１５］  符号化はコード化を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報をコード化することは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備える、構成することと、前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することであって、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、決定し、生成することと、前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、前記系列をコード化することと、を備える、［１］に記載の方法。
［１６］  符号化は復号を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を復号することは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する最後尾係数フラグの連続する系列を復号することであって、前記最後尾係数フラグの各々は、前記それぞれの係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを指示する、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定することと、を備える、［１］に記載の方法。
［１７］  符号化は復号を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を復号することは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号することと、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号することと、前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定することと、を備える、［１］に記載の方法。
［１８］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記方法は、前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、第２のブロックを生成するために、前記系列を第２の走査順を使用して前記第２のブロックにマッピングすることであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、マッピングすることと、前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することと
を備える、［１７］に記載の方法。
［１９］  前記水平座標及び前記垂直座標の各々は、１つ以上のビンから成る系列を備えるように二値化座標を備え、前記水平座標及び前記垂直座標の各々を復号することは、前記それぞれの系列を復号することを備える、［１７］に記載の方法。
［２０］  前記１つ以上のビンから成る系列は、単項符号語、切り捨て単項符号語、指数ゴロム符号語、及び連結符号語のうちの１つを備える、［１９］に記載の方法。
［２１］  前記切り捨て単項符号語は、前記それぞれの座標が所定の切り捨て値よりも低い値を有する場合は、可変数の第１のシンボル、前記座標の前記値に対応する変数、それに続く第２のシンボルを備え、前記第１のシンボルは前記第２のシンボルとは異なり、前記座標が前記切り捨て値以上の値を有する場合は、所定数の前記第１のシンボル、前記切り捨て値に対応する前記所定数を備える、［２０］に記載の方法。
［２２］  前記連結符号語は、前記第１の符号語及び第２の符号語を連結したものを備え、前記第１の符号語は前記第２の符号語とは異なる、［２０］に記載の方法。
［２３］  前記系列の各ビンを復号することは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行することを備え、前記少なくとも１つのコンテキストは、前記系列内のそれぞれのビンの一部を含む、［１９］に記載の方法。
［２４］  前記水平座標及び前記垂直座標を復号することは、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号すること、を備える、［１９］に記載の方法。
［２５］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号することは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行することを備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［２４］に記載の方法。
［２６］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式で復号することを更に備える、［１９］に記載の方法。
［２７］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンの各々のうちの少なくとも１つのビンは、標準コード化モードを使用して復号されるビンを備え、前記系列の各々のうちの少なくとも１つのビンは、バイパスコード化モードを使用して復号されるビンを備え、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンを前記インターリーブされた様式で復号することは、前記標準コード化モードを使用して復号される前記一方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを、前記標準コード化モードを使用して復号される前記他方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを復号する前に復号し、続いて、前記バイパスコード化モードを使用して復号される前記一方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを、前記バイパスコード化モードを使用して復号される前記他方の座標に対応する前記系列の前記１つ以上のビンの前記少なくとも１つのビンを復号する前に復号すること、を備える、［２６］に記載の方法。
［２８］  前記走査順は第１の走査順を備え、符号化は復号を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することであって、前記有意係数フラグの各々は、前記それぞれの係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを示す、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することと、を備える、［１］に記載の方法。
［２９］  符号化は復号を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備える、復号することとを備え、前記１つ以上のグループの各々について、前記系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを示すグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含み、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号することは更に、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定すること、を備える、［１］に記載の方法。
［３０］  前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化すること、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化することは、各々、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピーコード化プロセスを実行することを備え、前記少なくとも１つのコンテキストは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報のうちの一方を含む、［１］に記載の方法。
［３１］  ビデオコード化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための装置であって、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化するように構成されるビデオコーダを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記ビデオコーダは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の１次元位置を符号化すること、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化すること、及び
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記ブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記範囲内に位置する場合に、前記ブロック内の前記１次元位置を符号化し、そうでない場合に、前記ブロック内の前記２次元位置を符号化することのうちの少なくとも１つを実行するように構成される、装置。
［３２］  前記ビデオコーダはエントロピー符号化ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を符号化するために、前記エントロピー符号化ユニットは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定し、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを指示する最後尾係数フラグを生成し、前記１つ以上の係数に対する前記最後尾係数フラグを、前記走査順に基づいて連続する系列に構成し、前記系列を符号化するように構成される、［３１］に記載の装置。
［３３］  前記ビデオコーダはエントロピーコード化ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化するために、前記エントロピーコード化ユニットは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を求め、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を求め、前記水平座標及び前記垂直座標をコード化するように構成される、［３１］に記載の装置。
［３４］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記エントロピーコード化ユニットは、第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、構成することと、前記第１のブロックを生成するために、前記第１の走査順を使用して前記系列を前記第１のブロックにマッピングすることとを行うように更に構成される、［３３］に記載の装置。
［３５］  前記水平座標及び前記垂直座標の各々をコード化するために、前記エントロピーコード化ユニットは、前記座標が１つ以上のビンから成る系列を備えるように前記それぞれの座標を二値化し、前記系列をコード化するように構成される、［３３］に記載の装置。
［３６］  前記水平座標及び前記垂直座標をコード化するために、前記エントロピーコード化ユニットは、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化するように構成される、［３５］に記載の装置。
［３７］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて符号化するために、前記エントロピーコード化ユニットは、前記エントロピーコード化ユニットが、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行するように構成され、前記少なくとも１つのコンテキストは、前記他の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［３６］に記載の装置。
［３８］  前記エントロピーコード化ユニットは、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式で符号化するように更に構成される、［３５］に記載の装置。
［３９］  前記ビデオコーダはエントロピーコード化ユニットを備え、前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記エントロピーコード化ユニットは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを示す有意係数フラグを生成し、前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成し、前記系列を符号化するように構成される、［３１］に記載の装置。
［４０］  前記ビデオコーダはエントロピーコード化ユニットを備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記エントロピーコード化ユニットは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備える、構成することと、前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することであって、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを示すグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを示す、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、決定し、生成することと、前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、前記系列をコード化することとを行うように構成される、［３１］に記載の装置。
［４１］  前記ビデオコーダはエントロピー復号ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を符号化するために、前記エントロピー復号ユニットは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する最後尾係数フラグの連続する系列を復号することであって、前記最後尾係数フラグの各々は、前記それぞれの係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを示す、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定こととを行うように構成される、［３１］に記載の装置。
［４２］  前記ビデオコーダはエントロピー復号ユニットを備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化するために、前記エントロピー復号ユニットは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号し、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号し、前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定するように構成される、［３１］に記載の装置。
［４３］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記エントロピー復号ユニットは、前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、第２のブロックを生成するために、前記系列を第２の走査順を使用して前記第２のブロックにマッピングすることであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、マッピングすることと、前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することとを行うように更に構成される、［４２］に記載の装置。
［４４］  前記水平座標及び前記垂直座標の各々は、１つ以上のビンから成る系列を備えるように二値化座標を備え、前記水平座標及び前記垂直座標の各々を復号するために、前記エントロピー復号ユニットは、前記それぞれの系列を復号するように構成される、［４２］に記載の装置。
［４５］  前記水平座標及び前記垂直座標を復号するために、前記エントロピー復号ユニットは、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するように構成される、［４４］に記載の装置。
［４６］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号するために、前記エントロピー復号ユニットは、前記エントロピー復号ユニットが、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行するように構成され、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［４５］に記載の装置。
［４７］  前記エントロピー復号ユニットは、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式で復号するように更に構成される、［４４］に記載の装置。
［４８］  前記ビデオコーダはエントロピー復号ユニットを備え、前記走査順は第１の走査順を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記エントロピー復号ユニットは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することであって、前記有意係数フラグの各々は、前記それぞれの係数が非ゼロ係数であるか否かを示す、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行うように構成される、［３１］に記載の装置。
［４９］  前記ビデオコーダはエントロピー復号ユニットを備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記エントロピー復号ユニットは、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを示すグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを示す、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することと行うように構成される、［３１］に記載の装置。
［５０］  前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化し、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するために、前記ビデオコーダは、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピーコード化プロセスを実行するように構成され、前記少なくとも１つのコンテキストは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報のうちの一方を含む、［３１］に記載の装置。
［５１］  前記装置は、集積回路と、マイクロプロセッサと、前記ビデオコーダを含むワイヤレス通信装置と、のうちの少なくとも１つを備える、［３１］に記載の装置。
［５２］  ビデオコード化プロセス中にビデオデータブロックに関連付けられる係数を符号化するための装置であって、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化するための手段を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化するための前記手段は、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の１次元位置を符号化するための手段と、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化するための手段と、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記ブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記範囲内に位置する場合に、前記ブロック内の前記１次元位置を符号化し、そうでない場合に、前記ブロック内の前記２次元位置を符号化するための手段と、のうちの少なくとも１つを含む、装置。
［５３］  符号化は符号化を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を符号化するための前記手段は、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定し、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを指示する最後尾係数フラグを生成するための手段と、前記１つ以上の係数に対する前記最後尾係数フラグを、前記走査順に基づいて連続する系列に構成するための手段と、前記系列を符号化するための手段と、を備える、［５２］に記載の装置。
［５４］  符号化はコード化を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置をコード化するための前記手段は、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を求めるための手段と、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を求めるための手段と、前記水平座標及び前記垂直座標をコード化するための手段と、を備える、［５２］に記載の装置。
［５５］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記装置は、第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成するための手段であって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、構成するための手段と、前記第１のブロックを生成するために、前記第１の走査順を使用して前記系列を前記第１のブロックにマッピングするための手段と、を更に備える、［５４］に記載の装置。
［５６］  前記水平座標及び前記垂直座標の各々をコード化するための前記手段は、前記座標が１つ以上のビンから成る系列を備えるように前記それぞれの座標を二値化するための手段と、前記系列をコード化するための手段とを備える、［５４］に記載の装置。
［５７］  前記水平座標及び前記垂直座標をコード化するための前記手段は、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化するための手段を備える、［５６］に記載の装置。
［５８］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいてコード化するための前記手段は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用するための手段を含むコンテキスト適応型エントロピーコード化プロセスを実行するための手段を備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［５７］に記載の装置。
［５９］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式でコード化するための手段を更に備える、［５６］に記載の装置。
［６０］  前記走査順は第１の走査順を備え、符号化はコード化を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報をコード化するための前記手段は、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを指示する有意係数フラグを生成するための手段と、前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成するための手段と、前記系列をコード化するための手段と
を備える、［５２］に記載の装置。
［６１］  符号化はコード化を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報をコード化するための前記手段は、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成するための手段であって、前記１つ以上のグループの各々は前記係数の１つ以上を備える、構成するための手段と、前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成するための手段であって、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、決定し、生成するための手段と、前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成するための手段と、前記系列をコード化するための手段と、を備える、［５２］に記載の装置。
［６２］  符号化は復号を備え、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を復号するための前記手段は、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する最後尾係数フラグの連続する系列を復号するための手段であって、前記最後尾係数フラグの各々は、前記それぞれの係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを示す、復号するための手段と、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定するための手段と、を備える、［５２］に記載の装置。
［６３］  符号化は復号を備え、前記ブロック内の前記２次元位置を復号するための前記手段は、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号するための手段と、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号するための手段と、前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定するための手段と
を備える、［５２］に記載の装置。
［６４］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記装置は、前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成するための手段と、第２のブロックを生成するために、前記系列を第２の走査順を使用して前記第２のブロックにマッピングするための手段であって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、マッピングするための手段と、前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定するための手段と
を更に備える、［６３］に記載の装置。
［６５］  前記水平座標及び前記垂直座標の各々は、１つ以上のビンから成る系列を備えるように二値化座標を備え、前記水平座標及び前記垂直座標の各々を復号するための前記手段は、前記それぞれの系列を復号するための手段を備える、［６３］に記載の装置。
［６６］  前記水平座標及び前記垂直座標を復号するための前記手段は、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号するための手段を備える、［６５］に記載の装置。
［６７］  前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号するための前記手段は、少なくとも１つのコンテキストに基づくコンテキストモデルを適用するための手段を含むコンテキスト適応型エントロピーコード化プロセスを実行するための手段を備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［６６］に記載の装置。
［６８］  前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式で復号するための手段を更に備える、［６５］に記載の装置。
［６９］  前記走査順は第１の走査順を備え、符号化は復号を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するための前記手段は、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号するための手段であって、前記有意係数フラグの各々は、前記それぞれの係数が非ゼロ係数であるか否かを決定し、前記係数が非ゼロ係数であるか否かを指示する、復号するための手段と、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定するための手段と、を備える、［５２］に記載の装置。
［７０］  符号化は復号を備え、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を復号するための前記手段は、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号するための手段であって、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを示す、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、復号するための手段と、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定するための手段と
を備える、［５２］に記載の装置。
［７１］  前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化するための前記手段、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化するための前記手段は、各々、少なくとも１つのコンテキストに基づくコンテキストモデルを適用するための手段を含む、コンテキスト適応型エントロピーコード化プロセスを実行するための手段を備え、前記少なくとも１つのコンテキストは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報のうちの一方を含む、［５２］に記載の装置。
［７２］  実行されるとプロセッサにビデオコード化プロセス中にビデオデータブロックに関連付けられる係数を符号化させる命令を備えるコンピュータ可読記憶媒体であって、前記命令は前記プロセッサに、前記ブロックに関連付けられる走査順に従って前記ブロック内の最後の非ゼロ係数の位置を識別する情報を、前記ブロック内の他の非ゼロ係数の位置を識別する情報を符号化する前に符号化させ、前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の１次元位置を符号化すること、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の２次元位置を符号化すること、及び
前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記ブロック内の位置の或る範囲内に位置するか否かを示すフラグを符号化し、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数が前記範囲内に位置する場合に、前記ブロック内の前記１次元位置を符号化し、そうでない場合に、前記ブロック内の前記２次元位置を符号化すること、のうちの少なくとも１つを実行するように構成される、コンピュータ可読記憶媒体。
［７３］  前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を符号化させる命令は、前記プロセッサに、前記１次元位置を符号化させる命令を備え、前記命令はプロセッサに、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定させ、前記係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを示す最後尾係数フラグを生成させ、前記１つ以上の係数に対する前記最後尾係数フラグを、前記走査順に基づいて連続する系列に構成させ、前記系列をコード化させる、［７２］に記載のコンピュータ可読記憶媒体。
［７４］  前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化させる命令は、前記プロセッサに、前記２次元位置をコード化させる命令を備え、前記命令はプロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を求めさせ、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を求めさせ、前記水平座標及び前記垂直座標をコード化させる、［７２］に記載のコンピュータ可読記憶媒体。
［７５］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記コンピュータ可読記憶媒体は、前記プロセッサに、第２のブロックに関連付けられる係数を、第２の走査順に基づいて連続する系列に構成することであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、構成することと、前記第１のブロックを生成するために、前記第１の走査順を使用して前記系列を前記第１のブロックにマッピングすることとを行わせる命令を更に備える、［７４］に記載のコンピュータ可読記憶媒体。
［７６］  前記プロセッサに、前記水平座標及び前記垂直座標の各々をコード化させる前記命令は、前記プロセッサに、前記座標が１つ以上のビンから成る系列を備えるように前記それぞれの座標を二値化させる命令と、前記プロセッサに、前記系列をコード化させる命令とを備える、［７４］に記載のコンピュータ可読記憶媒体。
［７７］  前記プロセッサに、前記水平座標及び前記垂直座標をコード化させる前記命令は、前記プロセッサに、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいてコード化させる命令を備える、［７６］に記載のコンピュータ可読記憶媒体。
［７８］  前記プロセッサに、前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいてコード化させる命令は、前記プロセッサに、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行させる命令を備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［７７］に記載のコンピュータ可読記憶媒体。
［７９］  前記プロセッサに、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式でコード化させる命令を更に備える、［７６］に記載のコンピュータ可読記憶媒体。
［８０］  前記走査順は第１の走査順を備え、前記プロセッサに、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報をコード化させる前記命令は、前記プロセッサに前記情報をコード化させる命令を備え、前記命令は前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数の各々について、前記係数が非ゼロ係数であるか否かを決定させ、前記係数が非ゼロ係数であるか否かを示す有意係数フラグを生成させ、前記１つ以上の係数に対する前記有意係数フラグを、前記第２の走査順に基づいて連続する系列に構成させ、前記系列をコード化させる、［７２］に記載のコンピュータ可読記憶媒体。
［８１］  前記プロセッサに、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、前記プロセッサに前記情報をコード化させる命令を備え、前記命令は前記プロセッサに、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数を１つ以上のグループに構成することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備える、構成することと、前記１つ以上のグループの各々について、前記係数の前記１つ以上が非ゼロ係数であるか否かを決定し、１つ以上のフラグを生成することであって、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、決定し、生成することと、前記１つ以上のグループに対する前記１つ以上のフラグを、前記走査順に基づいて連続する系列に構成することと、前記系列をコード化することとを行わせる、［７２］に記載のコンピュータ可読記憶媒体。
［８２］  前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記１次元位置を符号化させる命令は、前記プロセッサに、前記１次元位置を復号させる命令を備え、前記命令はプロセッサに、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する最後尾係数フラグの連続する系列を復号することであって、前記最後尾係数フラグの各々は、前記それぞれの係数が、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを示す、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定することとを行わせる、［７２］に記載のコンピュータ可読記憶媒体。
［８３］  前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記ブロック内の前記２次元位置を符号化させる命令は、前記プロセッサに、前記２次元位置を復号させる命令を備え、前記命令はプロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の水平座標を復号させ、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置の垂直座標を復号させ、前記ブロックに関連付けられる各係数について、前記水平座標及び前記垂直座標に基づいて、前記係数が前記走査順に従って前記ブロック内の前記最後の非ゼロ係数であるか否かを決定させる、［７２］に記載のコンピュータ可読記憶媒体。
［８４］  前記ブロックは第１のブロックを備え、前記走査順は第１の走査順を備え、前記コンピュータ可読記憶媒体は、前記プロセッサに、前記第１のブロックに関連付けられる前記係数を、前記第１の走査順に基づいて連続する系列に構成することと、第２のブロックを生成するために、前記系列を第２の走査順を使用して前記第２のブロックにマッピングすることであって、前記第２のブロックは前記第１のブロックとは異なり、前記第２の走査順は前記第１の走査順とは異なる、マッピングすることと、前記第２のブロックに関連付けられる各係数について、前記第１のブロックに関する決定に基づいて、前記係数が前記第２の走査順に従って前記第２のブロック内の前記最後の非ゼロ係数であるか否かを決定することとを行わせる命令を更に備える、［８３］に記載のコンピュータ可読記憶媒体。
［８５］  前記水平座標及び前記垂直座標の各々は、１つ以上のビンから成る系列を備えるように二値化座標を備え、前記プロセッサに、前記水平座標及び前記垂直座標の各々を復号させる前記命令は、前記プロセッサに、前記それぞれの系列を復号させる命令を備える、［８３］に記載のコンピュータ可読記憶媒体。
［８６］  前記プロセッサに、前記水平座標及び前記垂直座標を復号させる前記命令は、前記プロセッサに、前記座標のうちの一方に対応する、前記系列の少なくとも１つのビンを、他方の座標に対応する前記系列の少なくとも１つのビンの値に少なくとも部分的に基づいて復号させる命令を備える、［８５］に記載のコンピュータ可読記憶媒体。
［８７］  前記プロセッサに、前記座標のうちの前記一方に対応する、前記系列の前記少なくとも１つのビンを、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値に少なくとも部分的に基づいて復号させる命令は、前記プロセッサに、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含むコンテキスト適応型エントロピーコード化プロセスを実行させる命令を備え、前記少なくとも１つのコンテキストは、前記他方の座標に対応する前記系列の前記少なくとも１つのビンの前記値を含む、［８６］に記載のコンピュータ可読記憶媒体。
［８８］  前記プロセッサに、前記一方の座標に対応する前記系列の前記１つ以上のビン、及び前記他方の座標に対応する前記系列の前記１つ以上のビンをインターリーブされた様式で復号させる命令を更に備える、［８５］に記載のコンピュータ可読記憶媒体。
［８９］  前記走査順は第１の走査順を備え、前記プロセッサに、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、前記プロセッサに前記情報を復号させる命令を備え、前記命令は前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で開始して前記走査順に従って前記ブロック内の最初の係数で終わり、前記第１の走査順に対して逆の第２の走査順に従って進む、前記ブロックに関連付けられる１つ以上の係数に対する有意係数フラグの連続する系列を復号することであって、前記有意係数フラグの各々は、前記それぞれの係数が非ゼロ係数であるか否かを指示する、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行わせる、［７２］に記載のコンピュータ可読記憶媒体。
［９０］  前記プロセッサに、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、前記プロセッサに前記情報を復号させる命令を備え、前記命令は前記プロセッサに、前記走査順に従って前記ブロック内の最初の係数で開始して前記走査順に従って前記ブロック内の前記最後の非ゼロ係数で終わり、前記走査順に従って進む、１つ以上のグループに構成される、前記ブロックに関連付けられる１つ以上の係数に対するフラグの連続する系列を復号することであって、前記１つ以上のグループの各々は前記係数の１つ以上を備え、前記１つ以上のグループの各々について、前記系列は１つ以上のフラグを備え、前記１つ以上のフラグは、前記係数の前記１つ以上が全てゼロ値係数であるか否かを指示するグループフラグを含み、前記係数の前記１つ以上の少なくとも１つが非ゼロ係数であるとき、前記１つ以上のフラグは、前記それぞれの係数が非ゼロ係数であるか否かを指示する、前記係数の前記１つ以上の各々に対する有意係数フラグを更に含む、復号することと、前記ブロックに関連付けられる各係数について、前記系列に基づいて、前記係数が非ゼロ係数であるか否かを決定することとを行わせる、［７２］に記載のコンピュータ可読記憶媒体。
［９１］  前記プロセッサに、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令、及び、前記プロセッサに、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報を符号化させる前記命令は、各々、前記プロセッサに、少なくとも１つのコンテキストに基づくコンテキストモデルを適用することを含む、コンテキスト適応型エントロピーコード化プロセスを実行させる命令を備え、前記少なくとも１つのコンテキストは、前記走査順に従って前記ブロック内の前記最後の非ゼロ係数の前記位置を識別する前記情報、及び、前記ブロック内の前記他の非ゼロ係数の前記位置を識別する前記情報のうちの一方を含む、［７２］に記載のコンピュータ可読記憶媒体。
【図１】
0005868995.tif 000002
【図２】
0005868995.tif 000003
【図３】
0005868995.tif 000004
【図４Ａ】
0005868995.tif 000005
【図４Ｂ】
0005868995.tif 000006
【図４Ｃ】
0005868995.tif 000007
【図５Ａ】
0005868995.tif 000008
【図５Ｂ】
0005868995.tif 000009
【図５Ｃ】
0005868995.tif 000010
【図６Ａ】
0005868995.tif 000011
【図６Ｂ】
0005868995.tif 000012
【図７】
0005868995.tif 000013
【図８】
0005868995.tif 000014
【図９】
0005868995.tif 000015