明細書 復号化装置、 復号化方法、 ルックアップテーブルおよび復号ィ匕プログラム 技術分野
本発明は、 復号化装置、 復号化方法、 ルックアップテ一ブリレおよび復号ィ匕プロ グラムに関し、 特に、 動画像デ一夕の復号に適用して好適なものである。 背景技術
ィン夕ーネット上ゃ無線ネットワーク上での利用を主な夕ーゲットとして規格 化された動画像符号化方式として、 MPEG— 4 (Moving P i c tur e Experts Group P ha s e 4 ) 方式がある。
図 11は、 MP EG— 4方式による復号化装置の構成例を示すブロック図であ る。
図 11において、 可変長符号化された入力ビット系列が可変長復号器 1に入力 されると、 可変長復号器 1は、 符号表 15の参照結果に基づいて可変長符号を復 号し、 DCT (Discrete Cos ine T r an s f o r m)係数、 動きべクトルおよびヘッダ情報を得る。 なお、 符号表 15には、 可変長符号と D C T係数、 可変長符号と動きベクトルまたは可変長符号とへッダ情報との対応関 係が登録される。
可変長復号器 1で復号された D C T係数は並べ替え部 2に出力され、 ジグザグ スキャンまたはオル夕ネートスキャンされている DCT係数が、 ラス夕スキャン 順に並べ替えられる。
図 12は、 MPEG— 4方式による DC T係数のスキャン方法を示す図である 。 図 12において、 図 12 (a)はジグザグスキャン、 図 12 (b) は垂直優先 オル夕ネートスキャン、 図 12 (c)は水平優先オル夕ネートスキャン、 図 12 (d)はラス夕スキャンを示し、 8x8にブロック化された DC T係数はこれら の順序でスキャンされる。
なお、 インターマクロブロックについては、 全てジグザグスキャンが行われる
。 一方、 イントラマクロプロックについては、 A C成分の予測が無効の場合は、 ジグザグスキヤンが行われ、 対象プロックの予測が左に隣接するプロックから行 われる場合は、 図 12 (b) の垂直優先オル夕ネートスキャンが行われ、 対象ブ ロックの予測が上に隣接するプロックから行われる場合は、 図 12 ( c ) の水平 優先オル夕ネートスキャンが行われる。
なお、 マクロブロックとは、 フレーム内を 16 X 16画素のブロックに分割し た領域をいい、 インターマクロブロックでは、 現在のフレームと過去または未来 のフレームとの差分が符号ィ匕の対象とされ、 イントラマクロブロックでは、 現在 のフレームの信号が符号化の対象とされる。
ラス夕スキヤン順に並べ替えられた D C T係数は D C/ A C予測部 3に出力さ れ、 イントラブロックの全ての D C成分および予測処理された A C成分を対象と して、 DCT係数の予測値を加算することにより、 真の DCT係数に戻される。 D C/A C予測部 3で得られた D C T係数は逆量子化部 4に出力され、 逆量子 化が行われる。 ここで、 MPEG— 4方式では、 H. 263方式または MPEG 方式の逆量子化方法が適宜選択されて逆量子化される。 ただし、 MP EG方式の 逆量子ィ匕方法を選択した場合には、 MP E G— 2方式で採用されている逆 D C T ミスマッチ対策を行うことにより、 演算精度の誤差が低減される。
図 13は、 MP EG— 4方式による DC T係数の復号化方法を、 イン夕一マク 口プロックを例にとって示す図である。
図 13 (a) において、 可変長復号器 1は 8x8のブロックを初期ィ匕する。 そ して、 符号表 15を参照することにより、 ビット系列として入力された符号に対 応する DC T係数 QFを取得する。
図 13 (e) は、 符号表 12に登録されている符号と DC T係数 QFとの対応 関係を示す図である。
図 13 (e) において、 DCT係数 QF="1"、 "2"、 "3"、 "4"に対し、 "0 s"、 "10 s"、 "110 s"、 "1110 s"という符号がそれそれ割り当てられ ている。 なお、 "s"は、 0または 1の値をとり、 "s"=0ならば、 QFは正、 " s"=lならば、 QFは負を意味する。
可変長復号器 1は、 符号表 15から DCT係数 QFを取得すると、 図 13 (b
) に示すように、 その DCT係数 QFを、 図 13 (a) の初期ィ匕されたブロック 内に復号順に並べる。 例えば、 DCT係数 QFの復号結果として、 "4、 0、 - 2、 0、 1、 0、 0、 · · '"の値が順次得られたとすると、 これらの DCT係 数 QFをその順序でプロヅク内に並べる。
ここで、 図 13 ( b ) のブロックでは、 DC T係数 Q Fがジグザグスキヤン順 に並んでいる。 このため、 並べ替え部 2は、 図 13 (b) のブロック化された D CT係数 QFをスキャンし、 図 13 (c) に示すように、 図 13 (b) の DCT 係数 QFをラスタスキャン順に並べ替える。 この結果、 図 13 (b) のブロック では、 2番目に配置されている D C T係数 Q F二"— 2 "が 8番目に配置し直され 、 図 13 (b) のブロックでは、 4番目に配置されている DCT係数 QF="1" が 9番目に配置し直される。
DCT係数 QFの並べ替えが終了すると、 逆量子化部 4は、 図 13 (c) のブ ロック化された D C T係数 Q Fを順次スキヤンし、 D C T係数 Q Fが" 0"かどう かを判別する。 そして、 非零の DCT係数 QFの演算処理を行うことにより、 図 13 (c) の DCT係数 QFを逆量子化する。
ここで、 MP EG— 4方式では、 DCT係数 QFが正の場合の逆量子ィ匕は、 以 下の式によって行われる。
•イントラマクロプロヅクの場合:
H. 263方式で量子化されている場合、
F= (2 I QF I +1) · QP-d · · · (1)
MPE G方式で量子化されてレヽる場合、
F= I QF I · QP · QM/8 · · · (2)
•ィン夕ーマクロブロックの場合:
H. 263方式で量子化されている場合、
F= (2 I QF I +1) · QP-d · · · (3)
MP EG方式で量子ィ匕されている場合、
F= (2 I QF I +1) - QP - QM/16 · · · (4) ただし、
QPが奇数の場合: d=0
QPが偶数の場合: d= 1
また、 <3?は各0( 11係数、 Fは逆量子化後の値、 QPは量子化パラメ一夕、 Q Mは係数位置に対応する量子化行列の値である。
なお、 DCT係数 QFが負の場合、 (1) 〜 (4) 式の計算の最後に Fの符号 を反転させる。
ただし、 イントラブロックの DC成分は、 (1) または (2) 式に従わず、 量 子化パラメ一夕 Q Pに応じて定義された定数を乗ずる。
例えば、 量子化が H. 263方式で行われ、 逆量子化を行うブロックがイン夕 一ブロック、 量子化パラメ一夕 QPが 8とすると、 図 13 (c) のブロックの Q F="4"、 "― 2"、 "1"は、 逆量子化処理により、 図 13 (d) のブロックの F ="71"、 "一39"、 "23"にそれそれ変換される。
図 14は、 MPEG— 4方式による DC T係数の復号化方法を、 インターマク 口ブロックを (列にとって示すフ口一チャ一トである。
図 14において、 可変長復号器 1はプロックの初期化を行い (ステップ S 21 )、 符号表 15を参照しながら、 可変長符号化された DC T係数を復号する (ス テツプ S 23) o
そして、 プロヅク内の全ての D C T係数の復号が終了すると (ステップ S 22 ) 、 並べ替え部 2は、 復号された全ての DC T係数をスキャンすることにより ( ステップ S 24)、 DCT係数をラス夕スキャン順に並べ替える (ステップ S 2 5) 。
次に、 逆量子化部 4は、 プロック内の全ての D C T係数の逆量子ィ匕が終了した かどうかを判断し (ステヅプ S 26) 、 ブロック内の全ての DC T係数の逆量子 化が終了していない場合、 DCT係数が" 0"かどうかを判断する (ステップ S 2 7) 。 そして、 0(:丁係数が"0"でなぃ場合、 その DCT係数を逆量子化し (ス テツプ S 28 )、 以上の処理をプロック内の全ての D C T係数の逆量子化が終了 するまで繰り返す。
プロック化された逆量子化後の D C T係数は逆 D C T部 5に出力され、 逆離散 コサイン変換された後、 加算器 9に出力される。
一方、 可変長復号器 1で復号された動きべクトルは動き補償部 8に出力され、
近傍の動きべクトルから得られる予測値を加算することにより、 実際の動きべク トルを得る。 そして、 この動きベクトルと過去の参照フレーム 7とを用いて動き 補償を行い、 その補償結果を加算器 9に出力する。
加算器 9は、 逆 D C T部 5から出力される逆 D C T演算結果と動き補償部 8か ら出力される補償結果とを加算し、 その加算結果を現在のフレーム 6として出力 する。 この結果、 イントラマクロブロックの場合は、 逆 D C T演算結果が現在の フレーム 6として出力され、 イン夕一マクロブロックの場合は、 逆 D C T演算結 果と動き補償結果との加算値が現在のフレーム 6として出力される。
しかしながら、 の D C T係数の復号化方法では、 プロック内の全ての D C T係数を復号した後に、 それらの D C T係数の並べ替えが行われていた。
このため、 プロック内の D C T係数の復号および並べ替えを行うためには、 ブ ロック内の全ての D C T係数を 2回スキャン (図 1 4のステップ S 2 2、 S 2 5 ) する必要があり、 復号処理に占める負荷が大きくなるという問題があった。 さらに、 従来の D C T係数の復号化方法では、 図 1 3 ( b ) の 6 4個の全ての D C T係数の並べ替えが行われるため、 最初にプロヅクを" 0 "に初期ィ匕した後、 さらに" 0"を代入する処理が頻繁に行わ 無駄な並べ替えが発生するという問 題があった。 特に、 動画像では、 ブロック内に占める" 0 "の割合が多く、 並べ替 えに無馬太が多かった。
また、 従来の D C T係数の逆量子ィ匕方法では、 D C T係数の復号後に、 ( 1 ) 〜 (4 ) 式の演算処理を行う必要があり、 逆量子ィ匕処理にかかる負荷が大きかつ た。
さらに、 従来の D C T係数の逆量子化方法では、 D C T係数が" 0 "かどうかの 判別を、 図 1 3 ( c ) のブロック化された 6 4個全ての D C T係数について行う 必要があり、 逆量子化処理の効率が悪かった。
そこで、 本発明の第 1の目的は、 復号結果の並べ替えを行う際の負荷を軽減す ることが可能な復号化装置、 復号化方法、 ルックアップテーブルおよび復号化プ ログラムを提供することである。
また、 本発明の第 2の目的は、 逆量子化処理の効率を向上させることが可能な 復号化装置、 復号化方法および復号化プログラムを提供することである。
発明の開示
上述した課題を解決するために、 本発明に係る復号ィ匕装置によれば、 ブロック 化された符号化データの復号を行う復号手段と、 前記復号手段による復号結果に 0が含まれる場合、 その 0の個数分だけスキップした位置に前記復号結果を西己置 する配置手段とを備えている。
これにより、 復号結果が 0の値については、 プロヅクへの代入などの処理を省 略することが可能となり、 復号処理を高速ィ匕することが可能となる。
また、 本発明に係る復号ィ匕装置の別形態によれば、 前記配置手段は、 前記復号 結果の並べ替え後の位置に直接配置する。
これにより、 復号結果の並べ替えを行うために、 復号結果をスキャンする必要 がなくなることから、 復号処理を高速化することが可會 gとなる。
また、 本発明に係る復号ィ匕装置の別形態によれば、 ブロック化された符号ィ匕デ —夕の復号を行う復号手段と、 前記復号手段による復号結果に 0が含まれる場合 、 その 0の個数分だけスキップして前記復号結果を逆量子ィ匕する逆量子ィ匕手段と 、 前言 量子ィ匕結果を並べ替え後の位置に直接配置する配置手段とを備えている o
これにより、 復号結果の並べ替えを行うために、 復号結果をスキャンする必要 がなくなるとともに、 復号結果が 0の値については、 逆量子化処理を省略するこ とが可能となり、 復号処理を高速ィ匕することが可能となる。
また、 本発明に係る復号化装置の別形態によれば、 逆量子化で行われる演算処 理の一部を分担しつつ、 符号化デ一夕の復号を行う復号手段と、 前記復号手段で 行われた演算処理の残りを行うことにより、 前記復号手段からの出力結果を逆量 子化する逆量子ィ匕手段とを備えている。
これにより、 逆量子ィ匕処理にかかる負荷を軽減することが可能となり、 逆量子 化処理の効率を向上させることができる。
また、 本発明に係る復号化装置の別形態によれば、 復号結果の並べ替え順序が 登録された並べ替えテーブルと、 前記並べ替えテーブルを参照することにより、 復号を行いつつ復号結果の並べ替えを行う復号 ·並べ替え手段とを備えている。
これにより、 復号処理と並べ替え処理とで使われる同一の制御構造を共通ィ匕す ることができ、 同一の制御を何度も繰り返して行う必要がなくなることから、 復 号結果の並べ替えを行う際の負荷を軽減することが可能となる。
また、 本発明に係る復号化装置の別形態によれば、 ブロック内における D C T 係数の並べ替え順序が登録された並べ替えテーブルと、 D C T係数の復号を行う ごとに、 前記並べ替えテーブルで指定される順序で、 非零の D C T係数を初期化 されたブロックに配置する復号 ·並べ替え手段とを備えている。
これにより、 ブロック内の全ての D C T係数を 1回スキャンするだけで、 プロ ック内の D C T係数の復号および並べ替えを行うことが可能となるとともに、 最 初にプロヅクを" 0 "に初期化した後、 さらに" 0 "を代入する処理を省略すること が可能となり、 復号結果の並べ替えを行う際の負荷を軽減することができる。 また、 本発明に係る復号ィ匕装置の別形態によれば、 前記復号 '並べ替え手段は 、 復号結果に" 0 "の個数が含まれる場合、 その" 0 "の個数分だけ、 前記並べ替え テーブルの参照および前記プロックへの代入をスキヅプする。
これにより、 復号結果が" 0 "の値については、 並べ替えテーブルの参照やプロ ックへの代入を省略することが可能となり、 復号処理を高速化することが可能と なる。
また、 本発明に係る復号化装置の別形態によれば、 情報源の演算結果が、 前記 情報源に割り当てられた符号に対応して登録されているルヅクァップテーブルと 、 前記ルックアップテ一ブリレを参照することにより、 符号ィ匕された情報源の演算 結果を取得する取得手段と、 前記取得された演算結果に基づいて逆量子ィ匕を行う 逆量子化手段とを備えている。
これにより、 情報源の復号処理を行うだけで、 復号された情報源の演算結果を 得ることが可能となり、 情報源の復号時の負荷を増大させることなく、 逆量子化 で行われる演算処理の少なくとも一部を情報源の復号処理に受け持たせることが 可能となることから、 逆量子化処理の効率を向上させることができる。
また、 本発明に係る復号化装置の別形態によれば、 前記情報源が Xであるとす ると、 前記演算結果は 2 X + 1である。
これにより、 逆量子ィ匕処理で行われる演算処理の一部を復号と同時に行うこと
が可能となり、 他の処理にかかる負荷を増大させることなく、 逆量子化処理の効 率を向上させることができる。
また、 本発明に係る復号ィ匕装置の別形態によれば、 復号を行いつつ、 逆量子ィ匕 を行う復号 ·逆量子化手段と、 前記復号 ·逆量子化手段による逆量子化結果をブ ロック化するブロック化手段とを備えている。
これにより、 復号処理と逆量子化処理とで使われる同一の制御構造を共通ィ匕す ることができ、 同一の判断処理、 ループ処理あるいは分岐処理などの制御を何度 も繰り返して行う必要がなくなることから、 逆量子化処理を行う際の負荷を軽減 することが可能となる。
また、 本発明に係る復号ィ匕装置の別形態によれば、 情報源の演算結果が、 前記 情報源に割り当てられた符号に対応して登録されているルックアップテ一ブルを さらに備え、 前記復号 '逆量子化手段は、 前記ルックアップテーブルを参照する ことにより、 符号化された情報源の演算結果を取得し、 前記取得した演算結果に 基づいて逆量子ィ匕を行う。
これにより、 逆量子ィ匕のためだけに判断処理やループ処理などの制御を行う必 要がなくなるとともに、 逆量子ィ匕 で行われる演算処理の負荷も軽減すること が可能となり、 逆量子化処理の効率をより一層向上させることが可能となる。 また、 本発明に係る復号ィ匕装置の別形態によれば、 復号結果の並べ替え順序が 登録された並べ替えテ一ブノレをさらに備え、 前記復号 ·逆量子ィ匕手段は、 前記復 号結果の並べ替え順序の参照結果に基づいて、 前記復号結果の逆量子化を行う。 これにより、 逆量子化を行う際に、 復号結果の並べ替え順序を確定させる必要 がある場合においても、 復号結果をブロックに代入することなく、 逆量子化を行 うことが可能となり、 逆量子化処理を行う際の負荷を軽減することが可能となる また、 本発明に係る復号ィ匕装置の別形態によれば、 前記ブロック化手段は、 前 記並べ替えテーブルを参照することにより、 前記逆量子化結果を並べ替え後の順 序でブロック化する。
これにより、 復号、 並べ替えおよび逆量子ィ匕で使われる同一の制御構造を共通 化することができ、 これら 3つの処理で個別に行われていた同一の制御を一括し
て行うことが可能となることから、 逆量子化処理を行う際の負荷をより一層軽減 することが可能となる。
また、 本発明に係る復号ィ匕装置の別形態によれば、 ブロックの初期化を行う初 期化手段をさらに備え、 前記復号 -逆量子化手段は、 復号結果に" 0 "の個数が含 まれる場合、 その" 0 "の個数分だけ逆量子ィ匕をスキップする。
これにより、 逆量子ィ匕を行う場合に、 " 0 "かどうかの判断を省略することが可 能となり、 逆量子化処理の効率を向上させることができる。
また、 本発明に係る復号化装置の別形態によれば、 前記ブロック化手段は、 前 記" 0 "の個数分だけ、 前記並べ替えテーブルの参照および前記プロックへの代入 をスキップする。
これにより、 復号結果が" 0"の値については、 並べ替えテーブルの参照やプロ ヅクへの代入を省略することが可能となり、 非零の D C T係数のみについての処 理を行うだけで、 逆量子化を行うことが可能となることから、 復号処理を高速化 することが可能となる。
また、 本発明に係る復号化方法によれば、 符号の復号順序とは異なる順序で復 号結果を配置しつつ、 前記符号を復号する。
これにより、 復号の完了と同時に並べ替えも完了させることができ、 復号完了 後に、 改めて並べ替えを行う必要がなくなることから、 復号結果の並べ替えを行 う際の負荷を軽減して、 復号を高速ィ匕することが可能となる。
また、 本発明に係る復号ィ匕方法の別形態によれば、 D C T係数が配置されるブ ロックを初期化するステップと、 復号結果に" 0 "を示す情報が含まれる場合、 "
0 "についてはその後の処理をスキヅプして非零の D C T係数を前記プロックに 配置するステップとを備えている。
これにより、 非零の D C T係数についての処理を行うだけで、 D C T係数のブ ロック化を完成させることができ、 最初にブロックを" 0 "に初期化した後、 さら に" 0 "を代入するなどの無駄な処理を省くことが可能となることから、 D C T係 数の復号処理を効率よく行うことが可能となる。
また、 本発明に係る復号ィ匕方法の別形態によれば、 D C T係数が配置されるブ ロックを初期化するステツプと、 符号化された D C T係数を復号するステツプと
、 D C T係数の復号が行われるごとに、 非零の D C T係数の並べ替え順序を取得 するステツプと、 前記非零の D C T係数を前記取得された並べ替え順序で前言 刀 期化されたブロック内に配置するステップとを備えている。
これにより、 ブロック内の全ての D C T係数を 1回スキャンするだけで、 プロ ック内の D C T係数の復号と同時に並べ替えも行うことができ、 並べ替えを行う ためだけに、 プロック内の D C T係数を再度スキヤンする必要がなくなることか ら、 復号結果の並べ替えを行う際の負荷を軽減することが可能となる。
また、 本発明に係る復号化方法の別形態によれば、 復号と逆量子化を各ブロッ クごとに一括して行う。
これにより、 復号と逆量子化とで同一の判断処理やループ処理などの制御が行 われる場合、 これらの制御を 1度で済ますことが可能となり、 逆量子ィ匕を行う際 の負荷を軽減して、 復号を高速ィ匕することが可能となる。
また、 本発明に係る復号ィ匕方法の別形態によれば、 復号と並べ替えと逆量子ィ匕 とを各プロックごとに一括して行う。
これにより、 復号と並べ替えと逆量子化とで同一の判断処理やループ処理など の制御が行われる場合、 これらの制御を 1度で済ますことが可能となり、 逆量子 化を行う際の負荷を軽減して、 復号を高速ィ匕することが可能となる。
また、 本発明に係る復号ィ匕方法の別形態によれば、 符号を復号するごとに逆量 子化を行うステップと、 復号順序とは異なる順序で前記逆量子化結果をプロック 化するステップとを備えている。
これにより、 復号、 逆量子ィ匕および並べ替えで用いられる同一の判断処理ゃル ープ処理などの制御を共通ィ匕して、 これらの処理を一括して行うことが可能とな ることから、 逆量子ィ匕を行う際の負荷を軽減して、 復号を高速ィ匕することが可能 となる。
また、 本発明に係る復号ィ匕方法の別形態によれば、 D C T係数が配置されるブ ロックを初期化するステップと、 復号結果に" 0 "を示す情報が含まれる場合、 " 0 "については逆量子ィ匕処理をスキップするステップと、 復号された非零の D C T係数を逆量子ィ匕し、 前記逆量子化結果をプロックに配置するステツプとを備え ている。
これにより、 D C T係数が" 0 "かどうかの判断を行うことなく、 逆量子化 を行うことが可能となり、 逆量子化処理の効率を向上させることが可能となる。 また、 本発明に係る復号ィ匕方法の別形態によれば、 D C T係数が配置されるブ ロックを初期化するステップと、 復号結果に" 0 "を示す情報が含まれる場合、 " 0 "については逆量子ィ匕処理をスキップするステップと、 復号された非零の D C T係数の並べ替え順序を取得するステッブと、 前記非零の D C T係数を逆量子ィ匕 し、 前記逆量子ィ匕結果を前記並べ替え順序で前記プロヅク内に配置するステップ とを備えている。
これにより、 ブロック内の非零の D C T係数を 1回スキャンするだけで、 プロ ック内の D C T係数の復号、 並べ替えおよび逆量子化を行うことができ、 逆量子 化を行う際の負荷を軽減することが可能となる。
また、 本発明に係るルックアップテーブルによれば、 ジグザグスキャンまたは オルタネートスキャンされた D C T係数をラス夕スキャン順に並べ替えるための 配置位置が登録されている。
これにより、 ルックアップテーブルを参照することで、 D C T係数の復号時の 並べ替えを行うことが可能となる。
また、 本発明に係るルックアップテーブルの別形態によれば、 情報源の演算結 果が、 前記情報源に割り当てられた符号に対応して登録されている。
これにより、 情報源の復号時にルックアツプテ一ブルを参照するだけで、 情報 源の演算結果を取得することが可能となり、 情報源の復号後に演算処理を行う場 合の負荷を軽減することが可能となる。
また、 本発明に係る復号ィ匕プログラムによれば、 ブロック化された符号を入力 するステップと、 前記符号が復号されるごとに、 前記符号の配置状態とは異なる ように 復号結果を前記プロック内に配置するステツプとをコンピュータに実行 させる。
これにより、 復号化プログラムをインストールすることで、 復号結果の並べ替 えを行う際の負荷を軽減することができ、 ハード構成を変更することなく、 復号 を高速化することが可能となる。
また、 本発明に係る復号化プログラムの別形態によれば、 符号化データの復号を
行うステヅプと、 前記復号結果に 0が含まれる場合、 その 0の個数分だけスキッ プして前記復号結果をプロック内に配置するステップとをコンピュータに実行さ せる。
これにより、 復号化プログラムをインストールすることで、 復号結果が 0の値 については、 プロックへの代入を省略することが可能となり、 ハード構成を変更 することなく、 復号処理を高速ィ匕することが可能となる。
また、 本発明に係る復号化プログラムの別形態によれば、 ブロック化された符 号を入力するステップと、 前記符号を復号しつつ、 逆量子ィ匕を行うステップと、 配置順序を変更しつつ、 前記逆量子化結果をプロック化するステップとをコンビ ユー夕に実行させることを特徴とする。
これにより、 復号化プログラムをインストールすることで、 逆量子化を行う際 の負荷を軽減することができ、 ハード構成を変更することなく、 復号を高速化す ることが可能となる。 図面の簡単な説明
図 1は、 本発明の第 1実施形態に係わる復号化装置の構成を示すプロック図で ある。
図 2は、 本発明の第 2実施形態に係わる復号ィ匕装置の構成を示すプロック図で ある。
図 3は、 本発明の第 2実施形態に係わる D C T係数の復号化方法を示す図であ る。
図 4は、 本発明の第 2実施形態に係わる D C T係数の復号化方法を示すフ口一 チャートである。
図 5は、 本発明の第 3実施形態に係わる復号化装置の構成を示すプロック図で ある。
図 6は、 本発明の第 4 «形態に係わる復号ィ匕装置の構成を示すプロヅク図で める。
図 7は、 本発明の第 4実施形態に係わる D C T係数の復号化方法を示す図であ る。
図 8は、 本発明の第 5実施形態に係わる復号化装置の構成を示すプロック図で ある。
図 9は、 本発明の第 5実施形態に係わる D C T係数の復号化方法を示す図であ る。
図 1 0は、 本発明の第 5実; ί«態に係わる D C Τ係数の復号ィ匕方法を示すフロ —チャートである。
図 1 1は、 MP E G— 4方式による復号化装置の構成例を示すブロック図であ る。
図 1 2は、 MP E G— 4方式による D C T係数のスキャン方法を示す図である 図 1 3は、 MP E G— 4方式による D C T係数の復号化方法を示す図である。 図 1 4は、 MP E G— 4方式による D C T係数の復号化方法を示すフローチヤ —トである。 発明を実施するための最良の形態
以下、 本発明の ^形態に係わる復号ィ匕装置および復号ィ匕方法について、 図面 を参照しながら説明する。
図 1は、 本発明の第 1実施形態に係わる復号化装置の構成を示すプロック図で める。
図 1において、 復号化装置には、 復号手段 1 0 1および復号手段 1 0 2が設け られている。 ここで、 復号手段 1 0 1は、 ブロック化された符号化データの復号 を行い、 配置手段 1 0 2は、 復号手段 1 0 1による復号結果に 0が含まれる場合 、 その 0の個数分だけスキップした位置に復号結果を配置することにより、 復号 結果のブロック化を行う。
また、 復号化装置には、 並べ替えテーブル 1 0 3が設けら 並べ替えテ一ブ ル 1 0 3には、 復号結果の並べ替え順序が登録される。 例えば、 並べ替えテ一ブ ル 1 0 3には、 ジグザグスキャンまたはオル夕ネートスキャンされた D C T係数 をラスタスキヤン順に並べ替えるための配置位置を登録することができる。 そして、 配置手段 1 0 2は、 並べ替えテーブル 1 0 3を参照しつつ、 復号手段
1 0 1による復号結果をブロック内に配置することにより、 復号手段 1 0 1によ る復号結果を並べ替え後の位置に直接配置することができる。
これにより、 復号結果が 0の値については、 ブロックへの代入などの処理を省 略することが可能となるとともに、 復号結果の並べ替えを行うために、 復号結果 をスキャンする必要がなくなることから、 復号処理を高速ィ匕することが可能とな る。
図 2は、 本発明の第 2実施形態に係わる復号化装置の構成を示すプロック図で ある。 なお、 図 2の構成は、 図 1 1の可変長復号器 1および並べ替え部 2の代わ りに、 復号 '並べ替え部 1 1および並べ替えテーブル 1 2が設けられ、 その他の 構成は、 図 1 1と同様の構成を用いることができる。
ここで、 復号 ·並べ替え部 1 1は、 8 x 8のプロックを" 0 "に初期化し、 非零 の D C T係数を 1っ復号するごとに、 並べ替えテーブル 1 2を参照する。 そして 、 並べ替えテーブル 1 2で指定される順序で、 復号された非零の D C T係数を 8 X 8のプロック内に配置する。 非零の全ての D C T係数の復号および並べ替えが 終了すると、 ブロック化された D C T係数を D C/A C予測部 3に出力する。 ここで、 復号 ·並べ替え部 1 1は、 非零の D C T係数を、 例えば、 (" 0 "の個 数) と (非零の D C T係数の値) と (最後の非零係数であるか否かを示すフラグ ) との 3つを単位として復号する。 そして、 復号結果に含まれる (" 0 "の個数) だけ、 並べ替えテーブル 2の参照位置をスキップし、 そのスキップ後の参照位置 で示される配置位置に非零の D C T係数の値を代入する。
これにより、 並べ替えテープリレ 1 2の参照および復号結果のプロックへの代入 を、 非零の D C T係数について行うだけで、 1ブロック分の復号および並べ替え を完結させることができ、 復号処理を高速化することができる。 特に、 動画像は 、 ブロック内での" 0 "の占める割合が多いことから、 その効果が大きい。
並べ替えテーブル 1 2は、 ブロック内における D C T係数の並べ替え順序を登 録する。 例えば、 復号される D C T係数がジグザグスキャンされている場合、 そ の D C T係数をラスタスキヤン順に並べ替えるためのプロック内の位置を登録す る。
図 3 ( a) は、 ジグザグスキャンされている D C T係数をラス夕スキャン順に
並べ替えるための並べ替えテ一ブル 12の構成を示す図である。
図 3 (a) において、 ジグザグスキャンされている DCT係数をラスタスキヤ ン順に並べ替えるためには、 例えば、 0番目の位置の DC T係数を 0番目の位置 に、 1番目の位置の DC T係数を 1番目の位置に、 2番目の位置の DCT係数を 8番目の位置に、 3番目の位置の DC T係数を 16番目の位置に配置し直す必要 がある。 このため、 並べ替えテーブル 12には、 DCT係数の並べ替え後の位置 が 8x8のブロックにラス夕スキャン順に登録される。
図 3は、 本発明の一実施形態に係わる D C T係数の復号化方法を示す図である 。 図 3 (b) において、 図 2の復号 '並べ替え部 11は、 8x8のブロックを" 0"に初期化する。
続いて、 復号 -並べ替え部 11は、 最初の DC T係数を復号し、 復号結果とし て、 例えば、 ("0"の個数 =0) と (非零の DC T係数の値 ="4") と (最後の 非零係数であるか否かを示すフラグ二"偽") とが得られたとすると、 図 3 (a) の並べ替えテーブル 12の 0番目の位置を参照する。 この結果、 0番目の DCT 係数の復号結果の配置位置として 0番目が得られたとすると、 図 3 (c) に示す ように、 ブロックの 0番目の位置に" 4 "を配置する。
続いて、 復号 ·並べ替え部 11は、 次の DC T係数を復号し、 復号結果として 、 例えば、 ("0"の個数: = 1) と (非零の DC T係数の値 ="—2") と (最後の 非零係数であるか否かを示すフラグ二"偽") が得られたとすると、 図 3 (a) の 並べ替えテーブル 12の参照位置を" 0 "の個数分二 1だけスキップし、 並べ替え テーブル 12の 2番目の位置を参照する。 この結果、 今回の非零の DC T係数の 復号結果の配置位置として 8番目が得られたとすると、 図 3 (c) に示すように 、 非零の DC T係数の値 ="— 2"をプロヅクの 8番目の位置に配置する。
ここで、 図 3 (b) のブロックの初期ィ匕時に" 0"は既に代入されているため、 "—2"をブロックの 8番目の位置に配置する際に、 "0"のブロックへの代入を" 0"の個数分 = 1だけスキップした場合においても、 "0"の酉己置位置が空のまま になることはない。
続いて、 復号 ·並べ替え部 11は、 次の DC T係数を復号し、 復号結果として 、 例えば、 ("0"の個数二 1) と (非零の DC T係数の値 ="1") と (最後の非
零係数であるか否かを示すフラグ = "真") が得られたとすると、 図 3 (a)の並 ベ替えテーブル 12の参照位置を" 0"の個数分 = 1だけスキップし、 並べ替えテ —ブル 12の 4番目の位置を参照する。 この結果、 今回の非零の DC T係数の復 号結果の配置位置として 9番目が得られたとすると、 図 3 (c) に示すように、 非零の DC T係数の値 ="1"をブロックの 9番目の位置に配置する。 そして、 ( 最後の非零係数であるか否かを示すフラグ二"真") であるため、 1プロック分の 復号を終了し、 8 X 8の 1プロック分の復号結果を D C/A C予測部 3に出力す る。
このように、 復号を行いながら並べ替えを行うことにより、 復号の完了と同時 に並べ替えも完了させることができ、 復号された DCT係数をラス夕スキャン順 に並べ替えるために、 プロック化された D C T係数を改めてスキャンする必要が なくなることから、 復号 «を高速ィ匕することができる。
また、 復号された D C T係数を並べ替えながらプロヅクに配置することが可能 となることから、 並べ替え後の 64個の係数を保持するための記憶領域を用意す るだけで、 並べ替え前の 64個の係数を保持するための記憶領域を不要とするこ とができ、 記憶容量を削減することが可能となる。
また、 ブロック全体を" 0"に初期化して復号が開始されるため、 DCT係数が " 0 "の場合には、 その値をプロックに代入する必要がなくなり、 "0 "の個数分だ け処理をスキップすることが可能となることから、 処理のさらなる高速化が可能 となる。
なお、 上述した実施形態では、 復号 '並べ替え部 11は、 非零の DC T係数を 復号する場合、 ("0"の個数) と (非零の DCT係数の値) と (最後の非零係数 であるか否かを示すフラグ) との 3つを単位とする方法について説明したが、 こ れ以外の方法で復号するようにしてもよい。
例えば、 非零の DC T係数を、 ("0"の個数) と (非零の DC T係数の値) と の組を単位として復号するようにしてもよい。 この場合、 ブロック内のそれ以降 の係数が" 0"であることを示すための EOB (End of Block)符号 が復号された時に、 1ブロック分の復号を終了することができる。
図 4は、 本発明の一実施形態に係わる D CT係数の復号化方法を示すフローチ
ャ一トである。
図 4において、 復号 '並べ替え部 1は、 ブロックのネ刀期化を行う (ステップ S 1) o
次に、 ブロック内の非零の全ての DC T係数の復号が終了していない場合 (ス テツプ S2)、 可変長符号化された DC T係数を復号する。 そして、 その復号結 果に含まれる" 0"の個数分だけ、 並べ替えテーブル 12の参照位置をスキップし 、 そのスキップ後の参照位置で特定される配置位置を取得する。 そして、 復号さ れた非零の DCT係数を、 並べ替えテーブル 12から取得された配置位置に代入 する。
以上の動作を非零の全ての D C T係数について行い、 非零の全ての D C T係数 についての処理が終了すると、 ブロック化された DC T係数を DC/AC予測部 3に出力する。
このように、 並べ替えテーブル 12を参照し、 DCT係数の復号を行いつつ D CT係数の並べ替えを行うことにより、 非零の DC T係数を 1回スキャン (図 3 のステップ S 2 )するだけで、 ブロック内の全ての D C T係数の復号および並べ 替え結果を得ることが可能となり、 復号処理に占める負荷を軽減することができ る。
なお、 上述した «形態では、 MPEG—4方式に適用した場合について説明 したが、 これ以外の方式に適用してもよく、 例えば、 MPEG— 1、 2方式、 J PEG (J oint Photographic Experts Group ) 方式などに適用するようにしてもよい。
また、 並べ替えテーブル 12として、 DC T係数がジグザグスキャンされてい る場合を例にとって説明したが、 オル夕ネートスキャンに適用してもよい。 また 、 ジグザグスキャンまたはオル夕ネートスキャンに応じて、 並べ替えテ一ブル 1 2を切り替えるようにしてもよい。
図 5は、 本発明の第 3実施形態に係わる復号化装置の構成を示すプロック図で
¾)る。
図 5において、 復号化装置には、 復号手段 201および逆量子化手段 202が 設けられている。 ここで、 復号手段 201は、 逆量子化で行われる演算処理の一
部を分担しつつ、 符号化データの復号を行い、 逆量子化手段 2 0 2は、 復号手段 2 0 1で行われた演算処理の残りを行うことにより、 復号手段 2 0 1からの出力 結果を逆量子化する。
また、 復号化装置には、 演算テーブル 2 0 3が設けられ、 演算テーブル 2 0 3 には、 情報源に割り当てられた符号と、 情報源の演算結果との対応関係が登録さ れている。例えば、 情報源が Xであるとすると、 情報源の演算結果として 2 X + 1という値を登録することができる。
そして、 復号手段 2 0 1は、 符号化データが入力されると、 演算テーブル 2 0 3を参照することにより、 その符号ィ匕デ一夕に対応した情報源の演算結果を取得 し、 その情報源の演算結果を逆量子ィ匕手段 2 0 2に出力する。
そして、 逆量子化手段 2 0 2は、 復号手段 2 0 1から受け取った情報源の演算 結果に対して、 演算処理を行うことにより、 逆量子化を行う。
これにより、 復号手段 2 0 1が、 情報源の演算結果を演算テーブル 2 0 3から 取得するだけで、 逆量子化で行われる演算処理の一部を完了させることができ、 逆量子ィ匕手段 2 0 2が、 残りの演算処理を行うことで、 逆量子化を完了させるこ とができる。
このため、 復号手段 2 0 1における負荷を増大させることなく、 逆量子化手段 2 0 2で行われる逆量子化処理の負荷を軽減することができ、 逆量子化処理の効 率を向上させることができる。
図 6は、 本発明の第 4実施形態に係わる復号ィ匕装置の構成を示すプロック図で ある。 なお、 この第 4実施形態は、 符号ィ匕された D C T係数を復号する時に、 D C T係数そのものをテーブルから取得するのでなく、 D C T係数の演算結果をテ 一ブルから取得することにより、 D C T係数の復号時にかかる負荷を増大させる ことなく、 その後に行われる逆量子ィ匕処理の負荷を軽減できるようにしたもので ある。
ここで、 図 6の構成では、 図 1 1の可変長復号器 1および符号表 1 5の代わり に、 可変長復号器 1 3および演算表 1 4が設けられ、 その他の構成は図 1 1と同 様の構成を用いることができる。
図 6において、 可変長復号器 1 3は、 インターマクロブロックの場合、 図 1 1
の符号表 15の代わりに、 演算表 14を参照する。 そして、 ビット系列として入 力された符号に対応する DCT係数の演算結果を演算表 14から取得し、 その D C T係数の演算結果を並べ替え部 2に出力する。
また、 演算表 14には、 DC T係数の演算結果が、 その D C T係数に割り当て られた符号に対応して登録される。 ここで、 イン夕一マクロブロックを逆量子ィ匕 する場合、 (3) 、 (4) 式に示すように、 H. 263方式または MPEG方式 のいずれで量子ィ匕されている場合においても、 (2 I QF I +1) という演算が 亍われる。
このため、 演算表 14には、 DCT係数 QFに割り当てられた符号に対応して 、 (2 I QF I + 1) という演算結果 QFを登録する。
図 7 (e) は、 演算表 15に登録される DC T係数の演算結果の一例を示す図 である。
図 7 (e) において、 演算表 15では、 図 11の符号表 15で定義されている "0 s"、 "10 s,,、 "110 s"、 "1110 s"という符号に対応して、 DCT係 数 QFの演算結果 QF'= (2 I QF I +1) ="1 x2 + 1"、 "2x 2 + 1"、 " 3x2 + 1"、 "4x2 + 1"がそれそれ登録される。
可変長復号器 13は、 イン夕一マクロブロックの場合、 図 7 (e) の演算表 1 4を参照することにより、 入力された符号に対応する演算結果 (2 I QF I +1 ) を取得する。 そして、 入力された符号に含まれる" s"が 0ならば、 演算表 14 から取得した演算結果 (2 I QF I + 1) をそのままブロック化し、 入力された 符号に含まれる" s"が 1ならば、 演算表 11から取得した演算結果 (2 I QF I +1) の正負の符号を反転させてブロック化する。 そして、 8x8のブロック化 が終了すると、 そのプロック化された D C T係数の演算結果 Q を並べ替え部 2に出力する。
並べ替え部 2に出力されたインターマクロブロックは、 並べ替え部 2でラス夕 スキャン順に並べ替えられた後、 逆量子ィ匕部 4に出力され、 (3)、 (4) 式に 従って逆量子ィ匕が行われる。
ここで、 (3) 、 (4) 式で行われる演算のうち、 (2 | QF | +1) という 演算は既に行なわれているので、 この (2 I QF I +1) という演算を逆量子化
部 4で行う必要がなくなり、 逆量子化を行う際の負荷を軽減することができる。 図 7は、 本発明の第 4実施形態に係わるィンターマクロブロックの復号化方法 を示す図である。
図 7 (a) において、 図 6の可変長復号器 13は、 8x8のブロックを" 0"に 初期化する。 そして、 図 7 (e) の演算表 14を参照することにより、 ビット系 列として入力された符号に対応する非零の DC T係数 QFの演算結果 (2 I QF 1+1) を取得する。 そして、 図 7 (b) に示すように、 "s"の値に応じて正負 の判別が行なわれた DC T係数 QFの演算結果 QF'を、 図 7 (a) の初期化さ れたブ口ック内に復号順に並べる。
例えば、 0〇丁係数 の復号結果が、 "4、 0、 —2、 0、 1、 0、 0、 · • ·"であるとすると、 図 7 (e) の演算表 14を参照することにより、 "4、 0 、 ー2、 0、 1、 0、 0、 · · ·',という DC T係数 QFの復号結果を求めるこ となく、 "9、 0、 一5、 0、 3、 0、 0、 · · '"という DCT係数 QFの演算 結果 QFを直接求めることができる。
ここで、 図 7 (b) のインターマクロブロックでは、 DCT係数 QFの演算結 果 QF'がジグザグスキャン順に並んでいる。 このため、 並べ替え部 2は、 図 7
(b) のブロック化された DCT係数 QFの演算結果 QF'をスキャンし、 図 7
(c) に示すように、 図 7 (b) の DCT係数 QFの演算結果 QF'をラスタス キャン順に並べ替える。 この結果、 図 7 (b) のブロックでは 2番目に配置され ている DCT係数 QF="— 5"が、 図 7 (c) に示すように、 8番目に配置し直 され、 図 7 (b) のブロックでは 4番目に配置されている DCT係数 QF="3" が、 図 7 (c) に示すように、 9番目に配置し直される。
D C T係数 Q Fの演算結果 Q F'の並べ替えが終了すると、 逆量子化部 4は、 図 7 (c) のブロック化された DCT係数 QFの演算結果 QF'を順次スキャン する。 そして、 非零の DCT係数 QFの演算結果 こついて、 以下の演算処 理を行うことにより、 0〇丁係数(3?を逆量子ィ匕する。
例えば、 DCT係数 QFが H. 263方式で量子化されている場合、 以下の式 を用いることができる。
• QPが偶数の場合
F = QF QP- 1 (QF'>0) … (5)
F = QFへ QP+1 (QFXO) · · · (6)
• QPが奇数の場合
F二 QF QP … (7) ここで、 量子^:パラメ一夕 QPが 8とすると、 図 7 (c) のブロックの QF = "9"、 "一 5"、 "3"は、 (5)、 (6) 式により、 図 7 (d) のブロックの F = "71"、 "—39"、 "23"にそれそれ変換される。
なお、 上述した第 4実施形態では、 イン夕一マクロブロックを処理する方法に ついて説明したが、 イントラマクロブロックの場合は、 DC/AC予測部 3にお いて、 全ての DC成分および予測処理された AC成分を対象として、 DCT係数 の予測値の加算が行われる。 そして、 この D C/A C予測部 3での処理では、 ( 2 I QF I + 1) ではなく、 QFが使用される。 このため、 演算表 14から取得 した (2 I QF I +1) という演算結果を DC/AC予測部 3に出力すると、 D C/A C予測部 3での処理に却って負荷がかかる。
また、 イントラマクロブロックの場合は、 H. 263方式で量子化されている 場合、 (1) 式に示すように、 (2 I QF I +1) という値が逆量子ィ匕処理で使 われるが、 MP EG方式で量子化されている場合、 (2) 式に示すように、 QF の値が逆量子化処理でそのまま使われ、 (2 I QF I + 1) という値は必要ない このため、 イントラマクロブロックの場合は、 復号時に図 7の演算表 14を用 いるのではなく、 図 11の符号表 15を用いて復号を行うことが好ましい。 図 8は、 本発明の第 5実施形態に係わる復号化装置の構成を示すプロック図で ある。 なお、 この第 5実施形態は、 符号ィ匕された DC T係数を復号する時に、 逆 量子化処理も同時に行うことにより、 逆量子化処理の効率を向上できるようにし たものである。
ここで、 図 8の構成では、 図 11の可変長復号器 1および符号表 15の代わり に、 復号処理部 21および並べ替えテーブル 22が設けられ、 その他の構成は、 図 11と同様の構成を用いることができる。
図 8において、 復号処理部 21には、 インターブロック処理部 21 aおよびィ
ントラブロック復号部 2 lbが設けられている。
ィン夕ープロック処理部 21 aは、 ィン夕ープロックの D C T係数の復号を行 いつつ、 逆量子化を行う。 そして、 非零の逆量子ィ匕結果が得られるごとに、 並べ 替えテーブル 22を参照し、 非零の逆量子化結果を並べ替え後の順序でブロック 化する。 そして、 8x8の DC T係数のブロック化が終了すると、 そのブロック 化された逆量子ィ匕結果を逆 D C T部 5に出力する。
ここで、 イン夕一ブロック処理部 2 laは、 非零の DCT係数を、 例えば、 ( "0"の個数) と (非零の DCT係数の値) と (最後の非零係数であるか否かを示 すフラグ) との 3つを単位として復号し、 その (非零の DC T係数の値) を対象 として逆量子ィ匕を行う。 そして、 復号結果に含まれる ("0"の個数) だけ、 並べ 替えテーブル 22の参照位置をスキップし、 そのスキップ後の参照位置で示され る配置位置に非零の D C T係数の逆量子ィ匕結果を代入する。
これにより、 DC T係数が" 0 "かどうかを判断することなく逆量子化を行うこ とが可能となるとともに、 非零の DC T係数についての ¾を行うだけで、 1ブ ロック分の復号 ·並べ替えおよび逆量子ィ匕を完結させることができ、 復号処理を 高速ィ匕することができる。
なお、 DCT係数 QFが H. 263方式で量子化されている場合は、 (3)式 に示すように、 0。丁係数<3?を逆量子ィ匕する際に、 DCT係数 QFの並べ替え 後の位置を意識する必要はない。 このため、 逆量子化を行う際の並べ替えおよび 逆量子化の順序は問わない。
一方、 DCT係数 QFが MP EG方式で量子ィ匕されている場合、 (4)式に示 すように、 0〇丁係数<3?を逆量子化する際に、 0( 丁係数(3?の並べ替ぇ後の 位置に対応する量子ィ匕行列の値 QMが必要となる。 このため、 並べ替え後の順序 で DC T係数 QFのブロック化を行うことなく、 逆量子化を行うために、 逆量子 化を行う際に、 並べ替えテーブル 22を参照し、 この参照結果に基づいて量子ィ匕 行列の値 Q Mを取得するようにしてもよい。
イントラブロック復号部 2 lbは、 図 13 (e)の符号表 15を参照すること により、 イントラブロックの DC T係数を復号する。 そして、 復号された DC T 係数を並べ替え部 2に出力する。 なお、 イントラブロック復号部 2 lbでも、 並
ベ替えテーブル 22を参照しつつ、 復号と同時に並べ替えを行うようにしてもよ い。 これにより、 並べ替え部 2での処理をスキップすることができる。
並べ替えテーブル 22は、 プロック内における D C T係数の並べ替え順序を登 録する。 例えば、 復号される DCT係数がジグザグスキャンされている場合、 そ の DCT係数をラスタスキヤン順に並べ替えるためのブロック内の位置を登録す る。
図 9 (a) は、 ジグザグスキャンされている DC T係数をラス夕スキャン順に 並べ替えるための並べ替えテーブル 22の構成を示す図である。
図 9 (a) において、 ジグザグスキャンされている DCT係数をラスタスキヤ ン順に並べ替えるためには、 例えば、 0番目の位置の DC T係数を 0番目の位置 に、 1番目の位置の DC T係数を 1番目の位置に、 2番目の位置の DCT係数を 8番目の位置に、 3番目の位置の D C T係数を 16番目の位置に配置し直す必要 がある。 このため、 並べ替えテーブル 22には、 DCT係数の並べ替え後の位置 が 8x8のブロックにラス夕スキャン順に登録される。
図 9は、 本発明の第 5 形態に係わる DC T係数の復号ィ匕方法を、 イン夕一 マクロブロックを例にとって示す図である。 なお、 図 9の説明では、 量子化が H . 263方式で行われ、 量子化パラメ一夕 QPが 8とする。
図 9 (b) において、 図 8のインターブロック処理部 21 aは、 8x8のプロ ックを" 0"に初期ィ匕する。
続いて、 インターブロック処理部 2 l aは、 最初の DCT係数を復号し、 復号 結果として、 例えば、 ("0"の個数 =0) と (非零の DC T係数の値 ="4") と (最後の非零係数であるか否かを示すフラグ = "偽") とが得られたとすると、 図 9 (a) の並べ替えテ一プル 2の 0番目の位置を参照するとともに、 (非零の D CT係数の値 ="4") を逆量子ィ匕する。 この結果、 0番目の DC T係数の復号結 果の配置位置として 0番目が得られ、 (非零の DC T係数の値 ="4") の逆量子 化結果として" 71"が得られたとすると、 図 9 (c) に示すように、 逆量子化結 果 ="71"ブロックの 0番目の位置に配置する。
続いて、 インターブロック処理部 21 aは、 次の DCT係数を復号し、 復号結 果として、 例えば、 ("0"の個数 = 1) と (非零の DCT係数の値 ="ー2") と
(最後の非零係数であるか否かを示すフラグ = "偽") が得られたとすると、 図 9 (a) の並べ替えテーブル 22の参照位置を" 0"の個数分 = 1だけスキップし、 並べ替えテーブル 22の 2番目の位置を参照するとともに、 (非零の DCT係数 の値 ="—2") を逆量子ィ匕する。 この結果、 非零の DC T係数の復号結果の配置 位置として 8番目が得られ、 今回の (非零の DCT係数の値 ="ー2") の逆量子 化結果として"一 39"が得られたとすると、 図 9 (c) に示すように、 逆量子ィ匕 結果 ="—39"をブロックの 8番目の位置に配置する。
ここで、 "—39"をブロックの 8番目の位置に配置する際に、 "0"のブロック への代入を" 0"の個数分 = 1だけスキップした場合においても、 図 9 (b) のブ ロックの初期化時に" 0"は既に代入されているため、 "0"の配置位置が空のま まになることはない。
続いて、 イン夕一ブロック麵部 21 aは、 次の DCT係数を復号し、 復号結 果として、 例えば、 ("0"の個数 = 1) と (非零の DC T係数の値 ="1") と ( 最後の非零係数であるか否かを示すフラグ = "真") が得られたとすると、 図 9 ( a) の並べ替えテーブル 22の参照位置を" 0"の個数分二 1だけスキップし、 並 ベ替えテーブル 22の 4番目の位置を参照するとともに、 (非零の DC T係数の 値 ="1" ) を逆量子ィ匕する。 この結果、 非零の D C T係数の復号結果の配置位 置として 9番目が得られ、 今回の (非零の DC T係数の値 ="1") の逆量子化結 果として" 23"が得られたとすると、 図 9 (c) に示すように、 逆量子化結果 = "23"をブロックの 9番目の位置に配置する。 そして、 (最後の非零係数である か否かを示すフラグ二"真") であるため、 1ブロック分の復号を終了し、 8x8 の 1プロック分の逆量子化結果を逆 D C T部 5に出力する。
このように、 復号を行いながら逆量子化を行うことにより、 復号の完了と同時 に逆量子ィ匕も完了させることが可能となるとともに、 逆量子ィ匕を行う際に" 0"か どうかの判断を行う必要がなくなり、 復号処理を高速化することができる。 また、 逆量子化された D C T係数を並べ替えながらプロックに配置することが 可能となることから、 並べ替え後の 64個の係数を保持するための記憶領域を用 意するだけで、 並べ替え前の 64個の係数を保持するための記憶領域を不要とす ることができ、 記憶容量を削減することが可能となる。
また、 ブロック全体を" 0"に初期化して逆量子ィ匕が開始されるため、 逆量子ィ匕 結果が" 0"の場合には、 その値をブロックに代入する必要がなくなり、 "0"の個 数分だけ処理をスキップすることが可能となることから、 処理のさらなる高速ィ匕 が可能となる。
なお、 上述した第 5実施形態では、 イン夕一ブロック処理部 2 laは、 非零の DCT係数を復号する場合、 ("0"の個数) と (非零の DC T係数の値) と (最 後の非零係数であるか否かを示すフラグ) との 3つを単位とする方法について説 明したが、 これ以外の方法で復号するようにしてもよい。
例えば、 非零の DC T係数を、 ("0"の個数) と (非零の DC T係数の値) と の組を単位として復号するようにしてもよい。 この場合、 ブロック内のそれ以降 の係数が" 0"であることを示すための EOB (End of Block)符号 が復号された時に、 1ブロック分の復号および逆量子ィ匕を終了することができる また、 例えば、 H. 263方式で量子化されている場合、 図 13 (e)の符号 表 15を参照して非零の DC T係数 QFを復号し、 (3)式を用いて逆量子ィ匕し てもよいし、 図 7 (e)の演算表 14を参照して非零の DCT係数 QF'を復号 し、 (5)〜 (7)式を用いて逆量子ィ匕してもよい。
図 10は、 本発明の第 5実施形態に係わる D C T係数の復号化方法を、 イン夕 一マクロブロックを例にとって示すフローチャートである。
図 10において、 ィン夕ープロック処理部 21 aは、 プロヅクの初期化を行う (ステップ S 11) 。
次に、 ブロック内の非零の全ての DC T係数の復号が終了していない場合 (ス テヅプ S 12)、 可変長符号化された DC T係数を復号する。 そして、 その復号 結果に含まれる" 0"の個数分だけ、 並べ替えテーブル 22の参照位置をスキップ し、 そのスキップ後の参照位置で特定される配置位置を取得するとともに、 非零 の DC T係数を逆量子化する。 そして、 逆量子化された非零の DC T係数を、 並 ベ替えテーブル 22から取得された配置位置に代入する (ステップ S 13) 。 以上の動作を非零の全ての D C T係数について行い、 非零の全ての D C T係数 についての処理が終了すると、 プロック化された D C T係数の逆量子化結果を逆
DCT部 5に出力する。
このように、 並べ替えテーブル 22を参照 U DC T係数の復号、 並べ替えお よび逆量子化を一括して行うことにより、 非零の DCT係数を 1回スキャン (図 10のステップ312)するだけで、 ブロック内の全ての DC T係数の復号 '逆 量子ィ匕 ·並べ替えを同時に完了させることが可能となり、 復号処理に占める負荷 を軽減することができる。
なお、 上述した第 5実施形態では、 並べ替えテーブル 22を設けた場合につい て説明したが、 並べ替えテーブル 22を用いることなく、 復号と逆量子化をプロ ックごとに一括して行うようにしてもよい。
また、 イントラブロックを する場合、 図 7 (e)の演算表 14と図 13 ( e )の符号表 15との両方を設け、 H. 263方式または MP EG方式のいずれ かに応じて、 演算表 14と符号表 15とを切り替えて参照するようにしてもよい また、 上述した実施形態では、 MPEG— 4方式に適用した場合について説明 したが、 これ以外の方式に適用してもよく、 例えば、 MPEG— 1、 2方式、 J PEG ^ j oint Photographic Experts Group ) 方式などに適用するようにしてもよい。
また、 並べ替えテーブル 22として、 DC T係数がジグザグスキヤンされてい る場合を例にとって説明したが、 オル夕ネー卜スキャンに適用してもよい。 また 、 ジグザグスキャンまたはオル夕ネートスキャンに応じて、 並べ替えテーブルを 切り替えるようにしてもよい。 産業上の利用可能性
以上説明したように、 本発明によれば、 0をスキップしつつ、 復号結果の並べ 替えを行うことにより、 復号結果の並べ替えを行う際の負荷を軽減することが可 能となり、 復号を高速化することができる。