(57)【特許請求の範囲】
【請求項１】
変換係数を符号化する方法であって、
所定スキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各４×４グループの設定数の変換係数を符号化し、非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを記憶するステップであって、前記非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号は前記所定スキャン順序により前記変換係数ブロックの変換係数を符号化することにより求められる、ステップと、
最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとをビットストリームに書き込み、最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とをビットストリームに書き込むステップとを有する、方法。
【請求項２】
変換係数ブロックの変換係数を符号化するステップと、各グループの設定数の変換係数を符号化するステップとは、
所定数の変換係数の非ゼロ変換係数のマップを符号化するステップと、
前記設定数の変換係数の１より大きい変換係数のマップを符号化するステップと、
前記設定数の変換係数の１より大きい変換係数の絶対値を符号化するステップと、
設定数の変換係数の非ゼロ変換係数の正負の符号を符号化するステップと、を含む、請求項１に記載の方法。
【請求項３】
前記設定数は１６である、請求項１または２に記載の方法。
【請求項４】
前記所定スキャン順序は、４×４のナローレンジスキャンモードのスキャン順序である、
請求項１または２に記載の方法。
【請求項５】
変換係数を復号する方法であって、
所定スキャン順序でビットストリームの各サブブロック中の変換係数を解析し、各サブブロックに対応する非ゼロ変換係数のマップを求めるステップと、
前記所定スキャン順序で、前記ビットストリームの各サブブロック中の、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、及び非ゼロ変換係数の正負の符号を解析する、毎回、ビットストリームの各サブブロック中の設定数の変換係数を前記所定スキャン順序で解析するステップとを含む、方法。
【請求項６】
４×４のナローレンジスキャンモードのスキャン順序で、ビットストリームの各サブブロック中の、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、
ビットストリームの設定数の変換係数を解析するステップとを含む、
請求項５に記載の方法。
【請求項７】
前記設定数は１６である、請求項５または６に記載の方法。
【請求項８】
変換係数を符号化する装置であって、
符号化ユニットであって、
所定スキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各４×４グループの設定数の変換係数を符号化し；
最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとをビットストリームに書き込み、
最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とをビットストリームに書き込むように構成された符号化ユニットと、
前記符号化ユニットにより求められた、非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを格納するように構成された記憶ユニットであって、前記非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号は前記所定スキャン順序により前記変換係数ブロックの変換係数を符号化することにより求められる、記憶ユニットとを含む、装置。
【請求項９】
前記設定数は１６である、請求項８に記載の装置。
【請求項１０】
所定スキャン順序で変換係数ブロックの変換係数を符号化するように構成された前記符号化ユニットは、４×４のナローレンジスキャンモードのスキャン順序で変換係数ブロックの変換係数を符号化する、請求項８または９に記載の装置。
【請求項１１】
変換係数を復号する装置であって、
所定スキャン順序でビットストリームの各サブブロック中の変換係数を解析し、各サブブロックに対応する非ゼロ変換係数のマップを求め、前記所定スキャン順序で、前記ビットストリームの各サブブロック中の、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、及び非ゼロ変換係数の正負の符号を解析する、毎回、ビットストリームの各サブブロック中の設定数の変換係数を前記所定スキャン順序で解析するように構成された復号ユニットを有する、装置。
【請求項１２】
前記復号ユニットは具体的に、
４×４のナローレンジスキャンモードのスキャン順序でビットストリームを解析し、非ゼロ変換係数のマップを求め、ビットストリームの各サブブロック中の設定数の変換係数を解析し、及び
ナローレンジスキャンモードのスキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析し、ビットストリームの各サブブロック中の設定数の変換係数を解析するように構成されている、請求項１１に記載の装置。
【請求項１３】
前記設定数は１６である、請求項１１または１２に記載の装置。
【請求項１４】
コンピュータに請求項１ないし４いずれか一項に記載の方法を実行させるプログラムを記録したコンピュータ読み取り可能記憶媒体。
【請求項１５】
コンピュータに請求項５ないし７いずれか一項に記載の方法を実行させるプログラムを記録したコンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ処理テクノロジに関し、特に、変換係数を符号化及び復号する方法と装置に関する。
【背景技術】
【０００２】
従来のビデオコーディング技術におけるエントロピーコーディングでは、主にランレングスコーディングと算術コーディングを用いている。例えば、Ｈ．２６４コーディング標準では、コンテキストベース適応可変長コーダ（Context-based  Adaptive  Variable  Length  Coder、ＣＡＶＬＣ）と、コンテキストベース適応バイナリ算術コーダ（Context-based  Adaptive  Binary  Arithmetic  Coder、ＣＡＢＡＣ）とが使われている。これら２つのエントロピーコーディングモードでは、符号化された情報と、現在符号化する必要のある情報との間の相関をフルに利用する。具体的に、符号化された情報を用いて、現在符号化する必要のある情報のコードテーブルまたは確率モデルを構成する。これはコンテキストベースのエントロピーコーディングと呼ばれている。算術符号化のアイデアを用いるため、ＣＡＢＡＣは、ＣＡＶＬＣより符号化性能が高いが、複雑性が大幅に高くなる。コンテキスト情報を用いるので、現在のコーディング情報は、隣接するコーディング情報が完全に符号化されるまで、符号化できず、一方パラレル動作も実行できない。結果として、エントロピーコーディングアルゴリズムが符号化と復号におけるボトルネックとなる。符号化効率を高めるため、ＨＥＶＣ（High  Efficiency  Video  Coding）ビデオコーディング標準が取り決められている。これは次世代ビデオ圧縮標準であり、次のアルゴリズムコーディングプロセスを提案するものである：
Ａ．非ゼロ変換係数のマップを符号化する（有意性マップ）。このステップでは、符号化する必要がある変換係数ブロック全体を所定のスキャン順序で符号化する。これはワイドレンジスキャンモード、例えばワイドレンジＺ字型（ジグザグ）モードとも呼ばれている。所定のスキャン順序は、ワイドレンジ垂直モードまたはワイドレンジ水平モードのスキャン順序であってもよい。したがって、符号化をサブブロックモードで行う場合、ナローレンジ垂直モードまたはナローレンジ水平モードのスキャン順序が使われる。
【０００３】
ステップＡを実行するプロセスでは、各周波数がマップ中のある位置に対応している。周波数が０の場合、マップ中の対応する位置の値は０である；周波数が非ゼロ値である場合、マップ中の対応する位置の値は１である。また、現在周波数が最後の非ゼロ周波数であるか判断する。現在周波数が最後の非ゼロ周波数である場合、対応位置の値は１１（十一ではなく２つの１）である。そうでない場合、その位置の値は１０（十ではなく１と０）である。マップを符号化するプロセスでは、そのマップを表す０と１のシーケンス中に１１が現れたとき、変換係数ブロックが完全に符号化されたと判断する。
【０００４】
Ｂ．サブブロックモードで１より大きい変換係数のマップを符号化する。このステップでは、変換係数ブロック全体中の１より大きいサブブロックのマップが所定のスキャン順序で符号化される。これはナローレンジスキャンモード、例えばナローレンジジグザグモードとも呼ばれる。
【０００５】
Ｃ．ナローレンジジグザグモードを用いることにより、サブブロックモードにおいて１より大きい計数の絶対値を符号化する。
【０００６】
Ｄ．サブブロックモードにおいて、かつナローレンジジグザグモードを用いることにより、非ゼロ計数の正負の符号を符号化する。上記のステップＢないしＤは、すべてのサブブロックが完全に符号化されるまで、サイクリックベースで実行される。
【０００７】
上記のステップでは、サブブロックモードは、一例として、８×８変換係数ブロックを用いることにより、次のように定義される：左上の４×４変換係数ブロックが最初に符号化され、次に右上の４×４変換係数ブロック、左下の４×４変換係数ブロック、右下の４×４変換係数ブロックが続く。上記の４×４変換係数ブロックは８×８変換係数ブロックのサブブロックである。ワイドレンジジグザグモードのスキャン順序と、ナローレンジジグザグモードのスキャン順序を、それぞれ図１Ａと図１Ｂに示す。小さいボックスはそれぞれ周波数を表し、ボックス中の数字はスキャン順序を表す。ワイドレンジジグザグモードとナローレンジジグザグモードのスキャン順序が同じスキャン規則に基づいていることは明らかである。しかし、変換係数ブロック全体の観点から、スキャンされるオブジェクトが異なる場合、有意性マップを符号化するステップＡと、変換係数の絶対値（レベル）を符号化し、非ゼロ変換係数の正負の符号を符号化するステップＢないしステップＤとでは、スキャン順序が異なる。スキャン順序が異なるので、ステップＡを実行するプロセスと、ステップＢないしＤを実行するプロセスでそれぞれ１回ずつデータを読み込む必要がある。２つの順序タイプに対応する２つのテーブルルックアップモードは復号側で固定する必要があり、符号化及び復号のオーバーヘッドが大きくなり、効率が悪くなる。また、ステップＡにおいて、変換係数ブロックが比較的大きく、例えば３２×３２有意性マップの場合、これは通常大きい変換単位と呼ばれるが、大きい有意性マップを符号化すると、ハードウェア設計の際に大きな足かせとなる。
【０００８】
本出願は、２０１０年３月１０日に中国特許庁に出願した中国特許出願第２０１１１００５７６９４．９号（発明の名称「METHOD  AND  APPARATUS  FOR  ENCODING  AND  DECODING  TRANSFORM  COEFFICIENTS」）の優先権を主張するものである。上記出願はここにその全体を参照援用する。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明の実施形態により解決される技術的問題は、変換係数を符号化及び復号して、符号化及び復号にかかるオーバーヘッドを低減し、符号化及び復号の効率を改善する方法と装置を提供することである。
【課題を解決するための手段】
【００１０】
変換係数を符号化する方法は、所定のスキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各グループの設定された数の変換係数を符号化するステップと、求めた非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを格納するステップと、最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとを、符号化してビットストリームにするステップと、最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とを符号化し、ビットストリームにするステップとを含む。
【００１１】
変換係数を復号する方法は、所定のスキャン順序でビットストリームの変換係数を解析し、非ゼロ変換係数のマップを求めるステップと、所定スキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、毎回、ビットストリームの設定数の変換係数を解析するステップとを含む。
【００１２】
変換係数を符号化する装置は、符号化ユニットであって、所定のスキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各グループの設定された数の変換係数を符号化し、最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとを、符号化してビットストリームにし、最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とを符号化し、ビットストリームにする符号化ユニットと、符号化ユニットにより求められた、非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを格納するように構成された記憶ユニットとを含む。
【００１３】
変換係数を復号する装置は、復号ユニットであって、所定のスキャン順序でビットストリームの変換係数を解析し、非ゼロ変換係数のマップを求め、所定スキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析し、毎回、ビットストリームの設定数の変換係数を解析する復号ユニットを含む。
【００１４】
本発明の実施形態で与えられる技術的解決策によると、有意性マップを符号化するスキャン順序は、レベルを符号化し符号を符号化するプロセスのスキャン順序と同じであり、データは符号化プロセスで１回だけ読み込めばよく、復号側は１回のみの（of  only  one  order  type）テーブルルックアップモードがあればよい。また、有意性マップ（significance  map）はより小さい有意性マップに分割される。これにより符号化及び復号のオーバーヘッドを低減し、符号化及び復号の効率を高くできる。
【図面の簡単な説明】
【００１５】
本発明の実施形態または先行技術の技術的解決手段をより明確に説明するため、以下に実施形態または先行技術を説明するのに必要な添付図面を簡単に説明する。言うまでもなく、以下に説明する添付図面は、本発明の実施形態を示しており、本技術分野の当業者は、創作的努力をせずとも、これらの添付図面から他の図面に想到することもできるだろう。
【図１Ａ】ワイドレンジジグザグスキャン順序を示す図である。
【図１Ｂ】ナローレンジジグザグスキャン順序を示す図である。
【図２】本発明の一実施形態による方法を示すフローチャートである。
【図３】本発明の一実施形態による方法を示すフローチャートである。
【図４】本発明の一実施形態による符号化装置を示す構成図である。
【図５】本発明の一実施形態による復号装置を示す構造図である。
【発明を実施するための形態】
【００１６】
下記は、本発明の実施形態による添付図面を参照して本発明の実施形態における技術的解決策の明確かつ完全な説明である。言うまでもなく、説明する実施形態は、本発明の実施形態のすべてではなく、一部だけである。本技術分野の当業者によって創作的努力を要せずに本発明の実施形態に基づき得られる他の実施形態はすべて、本発明の保護範囲内に入る。
【００１７】
図２に示したように、変換係数を符号化する方法は、次のステップを含む：
２０１．所定のスキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各グループの設定数の変換係数を符号化するステップ；求めた非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを格納するステップ。
【００１８】
本発明の実施形態における変換係数ブロックは、８×８変換係数ブロック、３２×３２変換係数ブロック、またはその他のサイズの変換係数ブロックでありうる。変換係数ブロックのサイズは、本発明の実施形態のインプリメンテーションに影響せず、本発明の実施形態はこの点に限定されない。
【００１９】
より具体的に、２０１における、変換係数ブロックの変換係数を符号化するステップと、各グループの設定数の変換係数を符号化するステップとは：所定数の変換係数の非ゼロ変換係数のマップを符号化するステップと、前記設定数の変換係数の１より大きい変換係数のマップを符号化するステップと、前記設定数の変換係数の１より大きい変換係数の絶対値を符号化するステップと、設定数の変換係数の非ゼロ変換係数の正負の符号を符号化するステップと、を含む。
【００２０】
上記記憶位置はバッファであってもよい。所定数の変換係数は、プロセッサ性能、バッファサイズなどにより決定できる。実験によれば、設定数が１６であるとき、符号化効率が良くなることが分かっている。
【００２１】
あるいは、所定のスキャン順序は、ワイドレンジスキャンモードのスキャン順序でもよいし、ナローレンジスキャンモードのスキャン順序でもよい。二種類の所定スキャン順序に対応する例を、本発明の実施形態として以下に説明する。言うまでもなく、所定スキャン順序は、符号化側が復号側と対応する限り、他の順序でもよく、本発明の実施形態はこの点で限定されない。
【００２２】
２０２．最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとを、符号化してビットストリームにするステップと、最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とを符号化し、ビットストリームにするステップ。
【００２３】
本発明の実施形態で与えられる技術的解決策によると、有意性マップを符号化するスキャン順序は、レベルを符号化し符号を符号化するプロセスのスキャン順序と同じである。データは符号化プロセスで１回だけ読み込めばよく、復号側は１回のみの（of  only  one  order  type）テーブルルックアップモードがあればよい。また、有意性マップ（significance  map）はより小さい有意性マップに分割される。これにより符号化及び復号のオーバーヘッドを低減し、符号化及び復号の効率を高くできる。
【００２４】
図３に示したように、変換係数を復号する方法は、次のステップを含む：
３０１．所定のスキャン順序でビットストリームの変換係数を解析（parse）し、非ゼロ変換係数のマップを求める。
【００２５】
ステップ３０１において、所定スキャン順序は符号化側の所定スキャン順序と同じである。スキャン順序は、符号化側と復号側が同じスキャン順序とするために、プロトコルを用いて、またはネゴシエーションによって指定される。本発明の実施形態はこの点で限定されない。
【００２６】
３０２．所定スキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、毎回、ビットストリームの設定数の変換係数を解析するステップ。
【００２７】
所定のスキャン順序は、ワイドレンジスキャンモードのスキャン順序でもよいし、ナローレンジスキャンモードのスキャン順序でもよい。この場合、所定のスキャン順序でビットストリームの変換係数を解析（parse）し、非ゼロ変換係数のマップを求めるステップと、所定スキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、毎回、ビットストリームの設定数の変換係数を解析するステップとは、ワイドレンジスキャンモードのスキャン順序でビットストリームを解析し、非ゼロ変換係数のマップを求めるステップと、ワイドレンジスキャンモードのスキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、毎回、ビットストリームの設定数の変換係数を解析するステップと、またはナローレンジスキャンモードのスキャン順序でビットストリームを解析し、非ゼロ変換係数のマップを求めるステップと、毎回、ビットストリームの設定数の変換係数を解析するステップと、ナローレンジスキャンモードのスキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析するステップと、毎回、ビットストリームの設定数の変換係数を解析するステップ。
【００２８】
本発明の実施形態で与えられる技術的解決策によると、有意性マップを符号化するスキャン順序は、レベルを符号化し符号を符号化するプロセスのスキャン順序と同じである。データは符号化プロセスで１回だけ読み込めばよく、復号側は１回のみの（of  only  one  order  type）テーブルルックアップモードがあればよい。また、有意性マップ（significance  map）はより小さい有意性マップに分割される。これにより符号化及び復号のオーバーヘッドを低減し、符号化及び復号の効率を高くできる。
【００２９】
次の実施形態では、８×８変換係数ブロックを使い、１６変換係数が毎回スキャンまたは解析されると仮定する。
【００３０】
例１：所定スキャン順序はワイドレンジスキャンモードであると仮定する。所定スキャン順序はワイドレンジZ字型（ジグザグ）モードであれば、図１Ａを参照する。
【００３１】
符号化側は次の動作を順次実行する：
（１）８×８変換係数ブロックの所定スキャン順序で最初の１６係数の有意性マップを符号化し、符号化した有意性マップをバッファに格納する。
１より大きい係数のマップと、１より大きい係数の絶対値と、係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納するステップ。
【００３２】
（２）８×８変換係数ブロックの所定スキャン順序で次の１６係数の有意性マップを符号化し、符号化した有意性マップをバッファに格納する。
１より大きい係数のマップと、１より大きい係数の絶対値と、係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納するステップ。
【００３３】
（３）８×８変換係数ブロックの所定スキャン順序で次の１６係数の有意性マップを符号化し、符号化した有意性マップをバッファに格納する。１より大きい係数のマップと、１より大きい係数の絶対値と、係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納するステップ。
【００３４】
（４）８×８変換係数ブロックの所定スキャン順序で最後の１６係数の有意性マップを符号化し、バッファ内の有意性マップ情報と、求めた最後の１６係数の有意性マップ情報とを符号化して、ビットストリームにするステップ。１より大きい係数のマップと、１より大きい係数の絶対値と、係数の正負の符号とを順次符号化し、バッファ内のレベル及び符号情報と、求めた最後の１６係数のレベルと符号とを符号化して、ビットストリームにするステップ。符号化が完了すると、符号化側はビットストリームを復号側に送信できる。言うまでもなく、最後の係数の有意性マップを符号化すると、終了フラグ情報が取得される。
【００３５】
符号化側は次の動作を順次実行する：
（１）ビットストリームを読み込み、８×８変換係数ブロックの所定スキャン順序で有意性マップの数値を解析する。このステップでは、６４係数の有意性マップの数値を直接解析できる。
【００３６】
変換係数のコードは、変換係数のマップと変換係数の数値とを含み、変換係数の数値は変換係数の絶対値と、変換係数の符号とを含む。変換係数の絶対値は、１より大きい変換係数のマップ（このマップにより、絶対値が１である非ゼロ変換係数が分かる）と、１より大きい変換係数の絶対値とを含む。
【００３７】
（２）ビットストリームを読み込み、８×８変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、最初の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析する。
【００３８】
（３）ビットストリームを読み込み、８×８変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、次の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析する。
【００３９】
（４）ビットストリームを読み込み、８×８変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、次の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析する。
【００４０】
（５）ビットストリームを読み込み、８×８変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、最後の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析する。
【００４１】
例２：所定スキャン順序はナローレンジスキャンモードであると仮定する。所定スキャン順序はナローレンジZ字型（ジグザグ）モードであれば、図１Ｂを参照する。
【００４２】
符号化側は次の動作を順次実行する：
１．周波数ドメイン位置に左上の４×４点を取り、４×４点の所定スキャン順序で有意性マップを符号化し、符号化された有意性マップをバッファに格納する。１より大きい係数のマップと、１より大きい係数の絶対値と、非ゼロ係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納する。
【００４３】
２．周波数ドメイン位置に右上の４×４点を取り、４×４点の所定スキャン順序で有意性マップを符号化し、符号化された有意性マップをバッファに格納する。１より大きい係数のマップと、１より大きい係数の絶対値と、非ゼロ係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納する。
【００４４】
３．周波数ドメイン位置に左下の４×４点を取り、４×４点の所定スキャン順序で有意性マップを符号化し、符号化された有意性マップをバッファに格納する。１より大きい係数のマップと、１より大きい係数の絶対値と、非ゼロ係数の正負の符号とを順次符号化し、求めたレベルと符号とをバッファに格納する。
【００４５】
４．周波数ドメイン位置の右下の４×４点を取り、その４×４点の所定スキャン順序で有意性マップを符号化する。バッファ内の有意性マップ情報と、求めた最後の１６係数の有意性マップ情報（マップの終了情報を含む）とを符号化して、ビットストリームにする。１より大きい係数のマップと、１より大きい係数の絶対値と、非ゼロ係数の正負の符号とを順次符号化し、バッファ内のレベル及び符号情報と、求めた最後の１６係数のレベルと符号とを符号化して、ビットストリームにする。
【００４６】
符号化側は次の動作を順次実行する：
（１）ビットストリームを読み込む。
４×４点の所定スキャン順序で最初の１６点の有意性マップの数値を解析し、その数値をマップの左上サブブロックに格納する。
４×４点の所定スキャン順序で次の１６点の有意性マップの数値を解析し、その数値をマップの右上サブブロックに格納する。
４×４点の所定スキャン順序で次の１６点の有意性マップの数値を解析し、その数値をマップの左下サブブロックに格納する。
４×４点の所定スキャン順序で最後の１６点の有意性マップの数値を解析し、その数値をマップの右下サブブロックに格納する。
【００４７】
（２）ビットストリームを読み込み、４×４変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、最初の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析し、その結果を左上サブブロックの位置の係数として用いる。
【００４８】
（３）ビットストリームを読み込み、４×４変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、次の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析し、その結果を右上サブブロックの位置の係数として用いる。
【００４９】
（４）ビットストリームを読み込み、４ラ４変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、次の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析し、その結果を左下サブブロックの位置の係数として用いる。
【００５０】
（５）ビットストリームを読み込み、４×４変換係数ブロックの所定スキャン順序で、１より大きい係数のマップと、１より大きい係数の絶対値と、最後の１６係数のすべての非ゼロ係数の正負の符号とを、スキャン順序で解析し、その結果を右下サブブロックの位置の係数として用いる。
【００５１】
図４に示したように、変換係数を符号化する装置は、次の要素を含む：符号化ユニット４０１であって、該符号化ユニットは：所定のスキャン順序により変換係数ブロックの変換係数を符号化し、前記変換係数ブロックの最後のグループが符号化されるまで、各グループの設定された数の変換係数を符号化する；最後のグループが符号化される時、最後のグループで符号化される非ゼロ変換係数のマップを求めた後、記憶された非ゼロ変換係数のマップと、最後のグループで符号化される非ゼロ変換係数のマップとを、符号化してビットストリームにする；最後のグループで符号化される変換係数の絶対値と、非ゼロ変換係数の正負の符号とを求めた後、記憶された変換係数の絶対値と、記憶された非ゼロ変換係数の正負の符号と、最後のグループで符号化される変換係数の絶対値と、最後のグループで符号化される非ゼロ変換係数の正負の符号とを符号化し、ビットストリームにする。符号化ユニットにより求められた、非ゼロ変換係数のマップと、変換係数の絶対値と、非ゼロ変換係数の正負の符号とを格納するように構成された記憶ユニット４０２。
【００５２】
あるいは、符号化ユニット４０１は、所定スキャン順序で変換係数ブロックの変換係数を符号化するように構成され、次のものを含む：ワイドレンジスキャンモードのスキャン順序で変換係数ブロックの変換係数を符号化する手段；またはナローレンジスキャンモードのスキャン順序で変換係数ブロックの変換係数を符号化する手段。
【００５３】
本発明の実施形態で与えられる技術的解決策によると、有意性マップを符号化するスキャン順序は、レベルを符号化し符号を符号化するプロセスのスキャン順序と同じである；データは符号化プロセスで１回だけ読み込めばよく、復号側は１回のみの（of  only  one  order  type）テーブルルックアップモードがあればよい。また、有意性マップ（significance  map）はより小さい有意性マップに分割される。これにより符号化及び復号のオーバーヘッドを低減し、符号化及び復号の効率を高くできる。
【００５４】
図５に示したように、変換係数を符号化する装置は、次の要素を含む：復号ユニット５０１であって、該復号ユニットは：所定のスキャン順序でビットストリームの変換係数を解析（parse）し、非ゼロ変換係数のマップを求め、所定スキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析し、毎回、ビットストリームの設定数の変換係数を解析するように構成されている。
【００５５】
あるいは、符号化ユニット５０１は具体的に：ワイドレンジスキャンモードのスキャン順序でビットストリームを解析し、非ゼロ変換係数のマップを求め、ワイドレンジスキャンモードのスキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析し、毎回、ビットストリームの設定数の変換係数を解析するか、または復号ユニット５０１は具体的に：ナローレンジスキャンモードのスキャン順序でビットストリームを解析し、非ゼロ変換係数のマップを求め、毎回、ビットストリームの設定数の変換係数を解析し、及びナローレンジスキャンモードのスキャン順序で、ビットストリームの、１より大きい変換係数のマップ、１より大きい変換係数の絶対値、非ゼロ変換係数の正負の符号を解析し、毎回、ビットストリームの設定数の変換係数を解析する。
【００５６】
本発明の実施形態で与えられる技術的解決策によると、有意性マップを符号化するスキャン順序は、レベルを符号化し符号を符号化するプロセスのスキャン順序と同じである；データは符号化プロセスで１回だけ読み込めばよく、復号側は１回のみの（of  only  one  order  type）テーブルルックアップモードがあればよい。また、有意性マップ（significance  map）はより小さい有意性マップに分割される。これにより符号化及び復号のオーバーヘッドを低減し、符号化及び復号の効率を高くできる。
【００５７】
当業者には言うまでもなく、上記の実施形態の方法の全部または一部のステップは、プログラムにより命令されたハードウェアにより実行できる。プログラムは、ＲＯＭ、磁気ディスク、及びＣＤ−ＲＯＭなどのコンピュータ読み取り可能記憶媒体に記憶できる。
【００５８】
本発明の実施形態の技術は、デジタル信号処理の分野で利用でき、エンコーダとデコーダを用いて実施される。ビデオエンコーダとデコーダは、様々な通信装置や電子装置で広く利用され、例えば、デジタルテレビジョン、セットトップボックス、メディアゲートウェイ、携帯電話、無線装置、パーソナルデジタルアシスタント（ＰＤＡ）、ハンドヘルドまたはポータブルコンピュータ、ＧＰＳレシーバ／ナビゲータ、カメラ、ビデオプレーヤ、ビデオカメラ、ビデオレコーダ、監視装置、テレビ会議及びテレビ電話装置、などで利用される。かかる装置はプロセッサ、メモリ、及びデータ送信のためのインタフェースを含む。ビデオエンコーダとデコーダは、デジタル回路やチップを用いて、例えばＤＳＰ（デジタル信号プロセッサ）を用いて、またはソフトウェアコードにより駆動されそのソフトウェアコード中の方法を実行するプロセッサを用いて、直接実施できる。

【００５９】
本発明の実施形態による変換係数を符号化及び復号する方法と装置は、上記の詳細な説明の通りである。本発明の原理と実施を実施形態を参照して説明したが、実施形態は本発明の方法とコアアイデアの理解を助けることを意図したものである。また、本発明の実施と適用に関して、本発明のアイデアにより、当業者により修正と変形が可能である。それゆえ、明細書は本発明の限定と解すべきではない。
【図１Ａ】
0005881747.tif 000002
【図１Ｂ】
0005881747.tif 000003
【図２】
0005881747.tif 000004
【図３】
0005881747.tif 000005
【図４】
0005881747.tif 000006
【図５】
0005881747.tif 000007