JPWO2002101934A1 - 復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラム - Google Patents

復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラム Download PDF

Info

Publication number
JPWO2002101934A1
JPWO2002101934A1 JP2003504549A JP2003504549A JPWO2002101934A1 JP WO2002101934 A1 JPWO2002101934 A1 JP WO2002101934A1 JP 2003504549 A JP2003504549 A JP 2003504549A JP 2003504549 A JP2003504549 A JP 2003504549A JP WO2002101934 A1 JPWO2002101934 A1 JP WO2002101934A1
Authority
JP
Japan
Prior art keywords
decoding
result
block
inverse quantization
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2003504549A
Other languages
English (en)
Inventor
萩原 典尚
典尚 萩原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JPWO2002101934A1 publication Critical patent/JPWO2002101934A1/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

復号装置には、ブロック化された符号化データの復号を行う復号手段101、復号手段101による復号結果に0が含まれる場合、その0の個数分だけスキップした位置に復号結果を配置することにより、復号結果のブロック化を行う配置手段102、および復号結果の並べ替え順序が登録された並べ替えテーブル103が設けられ、配置手段102は、0の個数分だけスキップしながら、並べ替えテーブル103を参照することにより、復号手段101による復号結果を並べ替え後の位置に配置する。

Description

技術分野
本発明は、復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラムに関し、特に、動画像データの復号に適用して好適なものである。
背景技術
インターネット上や無線ネットワーク上での利用を主なターゲットとして規格化された動画像符号化方式として、MPEG−4(Moving Picture Experts Group Phase4)方式がある。
図11は、MPEG−4方式による復号化装置の構成例を示すブロック図である。
図11において、可変長符号化された入力ビット系列が可変長復号器1に入力されると、可変長復号器1は、符号表15の参照結果に基づいて可変長符号を復号し、DCT(Discrete Cosine Transform)係数、動きベクトルおよびヘッダ情報を得る。なお、符号表15には、可変長符号とDCT係数、可変長符号と動きベクトルまたは可変長符号とヘッダ情報との対応関係が登録される。
可変長復号器1で復号されたDCT係数は並べ替え部2に出力され、ジグザグスキャンまたはオルタネートスキャンされているDCT係数が、ラスタスキャン順に並べ替えられる。
図12は、MPEG−4方式によるDCT係数のスキャン方法を示す図である。図12において、図12(a)はジグザグスキャン、図12(b)は垂直優先オルタネートスキャン、図12(c)は水平優先オルタネートスキャン、図12(d)はラスタスキャンを示し、8×8にブロック化されたDCT係数はこれらの順序でスキャンされる。
なお、インターマクロブロックについては、全てジグザグスキャンが行われる。一方、イントラマクロブロックについては、AC成分の予測が無効の場合は、ジグザグスキャンが行われ、対象ブロックの予測が左に隣接するブロックから行われる場合は、図12(b)の垂直優先オルタネートスキャンが行われ、対象ブロックの予測が上に隣接するブロックから行われる場合は、図12(c)の水平優先オルタネートスキャンが行われる。
なお、マクロブロックとは、フレーム内を16×16画素のブロックに分割した領域をいい、インターマクロブロックでは、現在のフレームと過去または未来のフレームとの差分が符号化の対象とされ、イントラマクロブロックでは、現在のフレームの信号が符号化の対象とされる。
ラスタスキャン順に並べ替えられたDCT係数はDC/AC予測部3に出力され、イントラブロックの全てのDC成分および予測処理されたAC成分を対象として、DCT係数の予測値を加算することにより、真のDCT係数に戻される。DC/AC予測部3で得られたDCT係数は逆量子化部4に出力され、逆量子化が行われる。ここで、MPEG−4方式では、H.263方式またはMPEG方式の逆量子化方法が適宜選択されて逆量子化される。ただし、MPEG方式の逆量子化方法を選択した場合には、MPEG−2方式で採用されている逆DCTミスマッチ対策を行うことにより、演算精度の誤差が低減される。
図13は、MPEG−4方式によるDCT係数の復号化方法を、インターマクロブロックを例にとって示す図である。
図13(a)において、可変長復号器1は8×8のブロックを初期化する。そして、符号表15を参照することにより、ビット系列として入力された符号に対応するDCT係数QFを取得する。
図13(e)は、符号表12に登録されている符号とDCT係数QFとの対応関係を示す図である。
図13(e)において、DCT係数QF=“1”、“2”、“3”、“4”に対し、“0s”、“10s”、“110s”、“1110s”という符号がそれぞれ割り当てられている。なお、“s”は、0または1の値をとり、“s”=0ならば、QFは正、“s”=1ならば、QFは負を意味する。
可変長復号器1は、符号表15からDCT係数QFを取得すると、図13(b)に示すように、そのDCT係数QFを、図13(a)の初期化されたブロック内に復号順に並べる。例えば、DCT係数QFの復号結果として、“4、0、−2、0、1、0、0、・・・”の値が順次得られたとすると、これらのDCT係数QFをその順序でブロック内に並べる。
ここで、図13(b)のブロックでは、DCT係数QFがジグザグスキャン順に並んでいる。このため、並べ替え部2は、図13(b)のブロック化されたDCT係数QFをスキャンし、図13(c)に示すように、図13(b)のDCT係数QFをラスタスキャン順に並べ替える。この結果、図13(b)のブロックでは、2番目に配置されているDCT係数QF=“−2”が8番目に配置し直され、図13(b)のブロックでは、4番目に配置されているDCT係数QF=“1”が9番目に配置し直される。
DCT係数QFの並べ替えが終了すると、逆量子化部4は、図13(c)のブロック化されたDCT係数QFを順次スキャンし、DCT係数QFが“0”かどうかを判別する。そして、非零のDCT係数QFの演算処理を行うことにより、図13(c)のDCT係数QFを逆量子化する。
ここで、MPEG−4方式では、DCT係数QFが正の場合の逆量子化は、以下の式によって行われる。
・イントラマクロブロックの場合:
H.263方式で量子化されている場合、
F=(2|QF|+1)・QP−d ・・・(1)
MPEG方式で量子化されている場合、
F=|QF|・QP・QM/8 ・・・(2)
・インターマクロブロックの場合:
H.263方式で量子化されている場合、
F=(2|QF|+1)・QP−d ・・・(3)
MPEG方式で量子化されている場合、
F=(2|QF|+1)・QP・QM/16 ・・・(4)
ただし、
QPが奇数の場合:d=0
QPが偶数の場合:d=1
また、QFは各DCT係数、Fは逆量子化後の値、QPは量子化パラメータ、QMは係数位置に対応する量子化行列の値である。
なお、DCT係数QFが負の場合、(1)〜(4)式の計算の最後にFの符号を反転させる。
ただし、イントラブロックのDC成分は、(1)または(2)式に従わず、量子化パラメータQPに応じて定義された定数を乗ずる。
例えば、量子化がH.263方式で行われ、逆量子化を行うブロックがインターブロック、量子化パラメータQPが8とすると、図13(c)のブロックのQF=“4”、“−2”、“1”は、逆量子化処理により、図13(d)のブロックのF=“71”、“−39”、“23”にそれぞれ変換される。
図14は、MPEG−4方式によるDCT係数の復号化方法を、インターマクロブロックを例にとって示すフローチャートである。
図14において、可変長復号器1はブロックの初期化を行い(ステップS21)、符号表15を参照しながら、可変長符号化されたDCT係数を復号する(ステップS23)。
そして、ブロック内の全てのDCT係数の復号が終了すると(ステップS22)、並べ替え部2は、復号された全てのDCT係数をスキャンすることにより(ステップS24)、DCT係数をラスタスキャン順に並べ替える(ステップS25)。
次に、逆量子化部4は、ブロック内の全てのDCT係数の逆量子化が終了したかどうかを判断し(ステップS26)、ブロック内の全てのDCT係数の逆量子化が終了していない場合、DCT係数が“0”かどうかを判断する(ステップS27)。そして、DCT係数が“0”でない場合、そのDCT係数を逆量子化し(ステップS28)、以上の処理をブロック内の全てのDCT係数の逆量子化が終了するまで繰り返す。
ブロック化された逆量子化後のDCT係数は逆DCT部5に出力され、逆離散コサイン変換された後、加算器9に出力される。
一方、可変長復号器1で復号された動きベクトルは動き補償部8に出力され、近傍の動きベクトルから得られる予測値を加算することにより、実際の動きベクトルを得る。そして、この動きベクトルと過去の参照フレーム7とを用いて動き補償を行い、その補償結果を加算器9に出力する。
加算器9は、逆DCT部5から出力される逆DCT演算結果と動き補償部8から出力される補償結果とを加算し、その加算結果を現在のフレーム6として出力する。この結果、イントラマクロブロックの場合は、逆DCT演算結果が現在のフレーム6として出力され、インターマクロブロックの場合は、逆DCT演算結果と動き補償結果との加算値が現在のフレーム6として出力される。
しかしながら、従来のDCT係数の復号化方法では、ブロック内の全てのDCT係数を復号した後に、それらのDCT係数の並べ替えが行われていた。
このため、ブロック内のDCT係数の復号および並べ替えを行うためには、ブロック内の全てのDCT係数を2回スキャン(図14のステップS22、S25)する必要があり、復号処理に占める負荷が大きくなるという問題があった。
さらに、従来のDCT係数の復号化方法では、図13(b)の64個の全てのDCT係数の並べ替えが行われるため、最初にブロックを“0”に初期化した後、さらに“0”を代入する処理が頻繁に行われ、無駄な並べ替えが発生するという問題があった。特に、動画像では、ブロック内に占める“0”の割合が多く、並べ替えに無駄が多かった。
また、従来のDCT係数の逆量子化方法では、DCT係数の復号後に、(1)〜(4)式の演算処理を行う必要があり、逆量子化処理にかかる負荷が大きかった。
さらに、従来のDCT係数の逆量子化方法では、DCT係数が“0”かどうかの判別を、図13(c)のブロック化された64個全てのDCT係数について行う必要があり、逆量子化処理の効率が悪かった。
そこで、本発明の第1の目的は、復号結果の並べ替えを行う際の負荷を軽減することが可能な復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラムを提供することである。
また、本発明の第2の目的は、逆量子化処理の効率を向上させることが可能な復号化装置、復号化方法および復号化プログラムを提供することである。
発明の開示
上述した課題を解決するために、本発明に係る復号化装置によれば、ブロック化された符号化データの復号を行う復号手段と、前記復号手段による復号結果に0が含まれる場合、その0の個数分だけスキップした位置に前記復号結果を配置する配置手段とを備えている。
これにより、復号結果が0の値については、ブロックへの代入などの処理を省略することが可能となり、復号処理を高速化することが可能となる。
また、本発明に係る復号化装置の別形態によれば、前記配置手段は、前記復号結果の並べ替え後の位置に直接配置する。
これにより、復号結果の並べ替えを行うために、復号結果をスキャンする必要がなくなることから、復号処理を高速化することが可能となる。
また、本発明に係る復号化装置の別形態によれば、ブロック化された符号化データの復号を行う復号手段と、前記復号手段による復号結果に0が含まれる場合、その0の個数分だけスキップして前記復号結果を逆量子化する逆量子化手段と、前記逆量子化結果を並べ替え後の位置に直接配置する配置手段とを備えている。
これにより、復号結果の並べ替えを行うために、復号結果をスキャンする必要がなくなるとともに、復号結果が0の値については、逆量子化処理を省略することが可能となり、復号処理を高速化することが可能となる。
また、本発明に係る復号化装置の別形態によれば、逆量子化で行われる演算処理の一部を分担しつつ、符号化データの復号を行う復号手段と、前記復号手段で行われた演算処理の残りを行うことにより、前記復号手段からの出力結果を逆量子化する逆量子化手段とを備えている。
これにより、逆量子化処理にかかる負荷を軽減することが可能となり、逆量子化処理の効率を向上させることができる。
また、本発明に係る復号化装置の別形態によれば、復号結果の並べ替え順序が登録された並べ替えテーブルと、前記並べ替えテーブルを参照することにより、復号を行いつつ復号結果の並べ替えを行う復号・並べ替え手段とを備えている。
これにより、復号処理と並べ替え処理とで使われる同一の制御構造を共通化することができ、同一の制御を何度も繰り返して行う必要がなくなることから、復号結果の並べ替えを行う際の負荷を軽減することが可能となる。
また、本発明に係る復号化装置の別形態によれば、ブロック内におけるDCT係数の並べ替え順序が登録された並べ替えテーブルと、DCT係数の復号を行うごとに、前記並べ替えテーブルで指定される順序で、非零のDCT係数を初期化されたブロックに配置する復号・並べ替え手段とを備えている。
これにより、ブロック内の全てのDCT係数を1回スキャンするだけで、ブロック内のDCT係数の復号および並べ替えを行うことが可能となるとともに、最初にブロックを“0”に初期化した後、さらに“0”を代入する処理を省略することが可能となり、復号結果の並べ替えを行う際の負荷を軽減することができる。
また、本発明に係る復号化装置の別形態によれば、前記復号・並べ替え手段は、復号結果に“0”の個数が含まれる場合、その“0”の個数分だけ、前記並べ替えテーブルの参照および前記ブロックへの代入をスキップする。
これにより、復号結果が“0”の値については、並べ替えテーブルの参照やブロックへの代入を省略することが可能となり、復号処理を高速化することが可能となる。
また、本発明に係る復号化装置の別形態によれば、情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されているルックアップテーブルと、前記ルックアップテーブルを参照することにより、符号化された情報源の演算結果を取得する取得手段と、前記取得された演算結果に基づいて逆量子化を行う逆量子化手段とを備えている。
これにより、情報源の復号処理を行うだけで、復号された情報源の演算結果を得ることが可能となり、情報源の復号時の負荷を増大させることなく、逆量子化で行われる演算処理の少なくとも一部を情報源の復号処理に受け持たせることが可能となることから、逆量子化処理の効率を向上させることができる。
また、本発明に係る復号化装置の別形態によれば、前記情報源がXであるとすると、前記演算結果は2X+1である。
これにより、逆量子化処理で行われる演算処理の一部を復号と同時に行うことが可能となり、他の処理にかかる負荷を増大させることなく、逆量子化処理の効率を向上させることができる。
また、本発明に係る復号化装置の別形態によれば、復号を行いつつ、逆量子化を行う復号・逆量子化手段と、前記復号・逆量子化手段による逆量子化結果をブロック化するブロック化手段とを備えている。
これにより、復号処理と逆量子化処理とで使われる同一の制御構造を共通化することができ、同一の判断処理、ループ処理あるいは分岐処理などの制御を何度も繰り返して行う必要がなくなることから、逆量子化処理を行う際の負荷を軽減することが可能となる。
また、本発明に係る復号化装置の別形態によれば、情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されているルックアップテーブルをさらに備え、前記復号・逆量子化手段は、前記ルックアップテーブルを参照することにより、符号化された情報源の演算結果を取得し、前記取得した演算結果に基づいて逆量子化を行う。
これにより、逆量子化のためだけに判断処理やループ処理などの制御を行う必要がなくなるとともに、逆量子化処理で行われる演算処理の負荷も軽減することが可能となり、逆量子化処理の効率をより一層向上させることが可能となる。
また、本発明に係る復号化装置の別形態によれば、復号結果の並べ替え順序が登録された並べ替えテーブルをさらに備え、前記復号・逆量子化手段は、前記復号結果の並べ替え順序の参照結果に基づいて、前記復号結果の逆量子化を行う。
これにより、逆量子化を行う際に、復号結果の並べ替え順序を確定させる必要がある場合においても、復号結果をブロックに代入することなく、逆量子化を行うことが可能となり、逆量子化処理を行う際の負荷を軽減することが可能となる。
また、本発明に係る復号化装置の別形態によれば、前記ブロック化手段は、前記並べ替えテーブルを参照することにより、前記逆量子化結果を並べ替え後の順序でブロック化する。
これにより、復号、並べ替えおよび逆量子化で使われる同一の制御構造を共通化することができ、これら3つの処理で個別に行われていた同一の制御を一括して行うことが可能となることから、逆量子化処理を行う際の負荷をより一層軽減することが可能となる。
また、本発明に係る復号化装置の別形態によれば、ブロックの初期化を行う初期化手段をさらに備え、前記復号・逆量子化手段は、復号結果に“0”の個数が含まれる場合、その“0”の個数分だけ逆量子化をスキップする。
これにより、逆量子化を行う場合に、“0”かどうかの判断を省略することが可能となり、逆量子化処理の効率を向上させることができる。
また、本発明に係る復号化装置の別形態によれば、前記ブロック化手段は、前記“0”の個数分だけ、前記並べ替えテーブルの参照および前記ブロックへの代入をスキップする。
これにより、復号結果が“0”の値については、並べ替えテーブルの参照やブロックへの代入を省略することが可能となり、非零のDCT係数のみについての処理を行うだけで、逆量子化を行うことが可能となることから、復号処理を高速化することが可能となる。
また、本発明に係る復号化方法によれば、符号の復号順序とは異なる順序で復号結果を配置しつつ、前記符号を復号する。
これにより、復号の完了と同時に並べ替えも完了させることができ、復号完了後に、改めて並べ替えを行う必要がなくなることから、復号結果の並べ替えを行う際の負荷を軽減して、復号を高速化することが可能となる。
また、本発明に係る復号化方法の別形態によれば、DCT係数が配置されるブロックを初期化するステップと、復号結果に“0”を示す情報が含まれる場合、“0”についてはその後の処理をスキップして非零のDCT係数を前記ブロックに配置するステップとを備えている。
これにより、非零のDCT係数についての処理を行うだけで、DCT係数のブロック化を完成させることができ、最初にブロックを“0”に初期化した後、さらに“0”を代入するなどの無駄な処理を省くことが可能となることから、DCT係数の復号処理を効率よく行うことが可能となる。
また、本発明に係る復号化方法の別形態によれば、DCT係数が配置されるブロックを初期化するステップと、符号化されたDCT係数を復号するステップと、DCT係数の復号が行われるごとに、非零のDCT係数の並べ替え順序を取得するステップと、前記非零のDCT係数を前記取得された並べ替え順序で前記初期化されたブロック内に配置するステップとを備えている。
これにより、ブロック内の全てのDCT係数を1回スキャンするだけで、ブロック内のDCT係数の復号と同時に並べ替えも行うことができ、並べ替えを行うためだけに、ブロック内のDCT係数を再度スキャンする必要がなくなることから、復号結果の並べ替えを行う際の負荷を軽減することが可能となる。
また、本発明に係る復号化方法の別形態によれば、復号と逆量子化を各ブロックごとに一括して行う。
これにより、復号と逆量子化とで同一の判断処理やループ処理などの制御が行われる場合、これらの制御を1度で済ますことが可能となり、逆量子化を行う際の負荷を軽減して、復号を高速化することが可能となる。
また、本発明に係る復号化方法の別形態によれば、復号と並べ替えと逆量子化とを各ブロックごとに一括して行う。
これにより、復号と並べ替えと逆量子化とで同一の判断処理やループ処理などの制御が行われる場合、これらの制御を1度で済ますことが可能となり、逆量子化を行う際の負荷を軽減して、復号を高速化することが可能となる。
また、本発明に係る復号化方法の別形態によれば、符号を復号するごとに逆量子化を行うステップと、復号順序とは異なる順序で前記逆量子化結果をブロック化するステップとを備えている。
これにより、復号、逆量子化および並べ替えで用いられる同一の判断処理やループ処理などの制御を共通化して、これらの処理を一括して行うことが可能となることから、逆量子化を行う際の負荷を軽減して、復号を高速化することが可能となる。
また、本発明に係る復号化方法の別形態によれば、DCT係数が配置されるブロックを初期化するステップと、復号結果に“0”を示す情報が含まれる場合、“0”については逆量子化処理をスキップするステップと、復号された非零のDCT係数を逆量子化し、前記逆量子化結果をブロックに配置するステップとを備えている。
これにより、DCT係数が“0”かどうかの判断を行うことなく、逆量子化処理を行うことが可能となり、逆量子化処理の効率を向上させることが可能となる。
また、本発明に係る復号化方法の別形態によれば、DCT係数が配置されるブロックを初期化するステップと、復号結果に“0”を示す情報が含まれる場合、“0”については逆量子化処理をスキップするステップと、復号された非零のDCT係数の並べ替え順序を取得するステップと、前記非零のDCT係数を逆量子化し、前記逆量子化結果を前記並べ替え順序で前記ブロック内に配置するステップとを備えている。
これにより、ブロック内の非零のDCT係数を1回スキャンするだけで、ブロック内のDCT係数の復号、並べ替えおよび逆量子化を行うことができ、逆量子化を行う際の負荷を軽減することが可能となる。
また、本発明に係るルックアップテーブルによれば、ジグザグスキャンまたはオルタネートスキャンされたDCT係数をラスタスキャン順に並べ替えるための配置位置が登録されている。
これにより、ルックアップテーブルを参照することで、DCT係数の復号時の並べ替えを行うことが可能となる。
また、本発明に係るルックアップテーブルの別形態によれば、情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されている。
これにより、情報源の復号時にルックアップテーブルを参照するだけで、情報源の演算結果を取得することが可能となり、情報源の復号後に演算処理を行う場合の負荷を軽減することが可能となる。
また、本発明に係る復号化プログラムによれば、ブロック化された符号を入力するステップと、前記符号が復号されるごとに、前記符号の配置状態とは異なるように、復号結果を前記ブロック内に配置するステップとをコンピュータに実行させる。
これにより、復号化プログラムをインストールすることで、復号結果の並べ替えを行う際の負荷を軽減することができ、ハード構成を変更することなく、復号を高速化することが可能となる。
また、本発明に係る復号化プログラムの別形態によれば、符号化データの復号を行うステップと、前記復号結果に0が含まれる場合、その0の個数分だけスキップして前記復号結果をブロック内に配置するステップとをコンピュータに実行させる。
これにより、復号化プログラムをインストールすることで、復号結果が0の値については、ブロックへの代入を省略することが可能となり、ハード構成を変更することなく、復号処理を高速化することが可能となる。
また、本発明に係る復号化プログラムの別形態によれば、ブロック化された符号を入力するステップと、前記符号を復号しつつ、逆量子化を行うステップと、配置順序を変更しつつ、前記逆量子化結果をブロック化するステップとをコンピュータに実行させることを特徴とする。
これにより、復号化プログラムをインストールすることで、逆量子化を行う際の負荷を軽減することができ、ハード構成を変更することなく、復号を高速化することが可能となる。
発明を実施するための最良の形態
以下、本発明の実施形態に係わる復号化装置および復号化方法について、図面を参照しながら説明する。
図1は、本発明の第1実施形態に係わる復号化装置の構成を示すブロック図である。
図1において、復号化装置には、復号手段101および復号手段102が設けられている。ここで、復号手段101は、ブロック化された符号化データの復号を行い、配置手段102は、復号手段101による復号結果に0が含まれる場合、その0の個数分だけスキップした位置に復号結果を配置することにより、復号結果のブロック化を行う。
また、復号化装置には、並べ替えテーブル103が設けられ、並べ替えテーブル103には、復号結果の並べ替え順序が登録される。例えば、並べ替えテーブル103には、ジグザグスキャンまたはオルタネートスキャンされたDCT係数をラスタスキャン順に並べ替えるための配置位置を登録することができる。
そして、配置手段102は、並べ替えテーブル103を参照しつつ、復号手段101による復号結果をブロック内に配置することにより、復号手段101による復号結果を並べ替え後の位置に直接配置することができる。
これにより、復号結果が0の値については、ブロックへの代入などの処理を省略することが可能となるとともに、復号結果の並べ替えを行うために、復号結果をスキャンする必要がなくなることから、復号処理を高速化することが可能となる。
図2は、本発明の第2実施形態に係わる復号化装置の構成を示すブロック図である。なお、図2の構成は、図11の可変長復号器1および並べ替え部2の代わりに、復号・並べ替え部11および並べ替えテーブル12が設けられ、その他の構成は、図11と同様の構成を用いることができる。
ここで、復号・並べ替え部11は、8×8のブロックを“0”に初期化し、非零のDCT係数を1つ復号するごとに、並べ替えテーブル12を参照する。そして、並べ替えテーブル12で指定される順序で、復号された非零のDCT係数を8×8のブロック内に配置する。非零の全てのDCT係数の復号および並べ替えが終了すると、ブロック化されたDCT係数をDC/AC予測部3に出力する。
ここで、復号・並べ替え部11は、非零のDCT係数を、例えば、(“0”の個数)と(非零のDCT係数の値)と(最後の非零係数であるか否かを示すフラグ)との3つを単位として復号する。そして、復号結果に含まれる(“0”の個数)だけ、並べ替えテーブル2の参照位置をスキップし、そのスキップ後の参照位置で示される配置位置に非零のDCT係数の値を代入する。
これにより、並べ替えテーブル12の参照および復号結果のブロックへの代入を、非零のDCT係数について行うだけで、1ブロック分の復号および並べ替えを完結させることができ、復号処理を高速化することができる。特に、動画像は、ブロック内での“0”の占める割合が多いことから、その効果が大きい。
並べ替えテーブル12は、ブロック内におけるDCT係数の並べ替え順序を登録する。例えば、復号されるDCT係数がジグザグスキャンされている場合、そのDCT係数をラスタスキャン順に並べ替えるためのブロック内の位置を登録する。
図3(a)は、ジグザグスキャンされているDCT係数をラスタスキャン順に並べ替えるための並べ替えテーブル12の構成を示す図である。
図3(a)において、ジグザグスキャンされているDCT係数をラスタスキャン順に並べ替えるためには、例えば、0番目の位置のDCT係数を0番目の位置に、1番目の位置のDCT係数を1番目の位置に、2番目の位置のDCT係数を8番目の位置に、3番目の位置のDCT係数を16番目の位置に配置し直す必要がある。このため、並べ替えテーブル12には、DCT係数の並べ替え後の位置が8×8のブロックにラスタスキャン順に登録される。
図3は、本発明の一実施形態に係わるDCT係数の復号化方法を示す図である。図3(b)において、図2の復号・並べ替え部11は、8×8のブロックを“0”に初期化する。
続いて、復号・並べ替え部11は、最初のDCT係数を復号し、復号結果として、例えば、(“0”の個数=0)と(非零のDCT係数の値=“4”)と(最後の非零係数であるか否かを示すフラグ=“偽”)とが得られたとすると、図3(a)の並べ替えテーブル12の0番目の位置を参照する。この結果、0番目のDCT係数の復号結果の配置位置として0番目が得られたとすると、図3(c)に示すように、ブロックの0番目の位置に“4”を配置する。
続いて、復号・並べ替え部11は、次のDCT係数を復号し、復号結果として、例えば、(“0”の個数=1)と(非零のDCT係数の値=“−2”)と(最後の非零係数であるか否かを示すフラグ=“偽”)が得られたとすると、図3(a)の並べ替えテーブル12の参照位置を“0”の個数分=1だけスキップし、並べ替えテーブル12の2番目の位置を参照する。この結果、今回の非零のDCT係数の復号結果の配置位置として8番目が得られたとすると、図3(c)に示すように、非零のDCT係数の値=“−2”をブロックの8番目の位置に配置する。
ここで、図3(b)のブロックの初期化時に“0”は既に代入されているため、“−2”をブロックの8番目の位置に配置する際に、“0”のブロックへの代入を“0”の個数分=1だけスキップした場合においても、“0”の配置位置が空のままになることはない。
続いて、復号・並べ替え部11は、次のDCT係数を復号し、復号結果として、例えば、(“0”の個数=1)と(非零のDCT係数の値=“1”)と(最後の非零係数であるか否かを示すフラグ=“真”)が得られたとすると、図3(a)の並べ替えテーブル12の参照位置を“0”の個数分=1だけスキップし、並べ替えテーブル12の4番目の位置を参照する。この結果、今回の非零のDCT係数の復号結果の配置位置として9番目が得られたとすると、図3(c)に示すように、非零のDCT係数の値=“1”をブロックの9番目の位置に配置する。そして、(最後の非零係数であるか否かを示すフラグ=“真”)であるため、1ブロック分の復号を終了し、8×8の1ブロック分の復号結果をDC/AC予測部3に出力する。
このように、復号を行いながら並べ替えを行うことにより、復号の完了と同時に並べ替えも完了させることができ、復号されたDCT係数をラスタスキャン順に並べ替えるために、ブロック化されたDCT係数を改めてスキャンする必要がなくなることから、復号処理を高速化することができる。
また、復号されたDCT係数を並べ替えながらブロックに配置することが可能となることから、並べ替え後の64個の係数を保持するための記憶領域を用意するだけで、並べ替え前の64個の係数を保持するための記憶領域を不要とすることができ、記憶容量を削減することが可能となる。
また、ブロック全体を“0”に初期化して復号が開始されるため、DCT係数が“0”の場合には、その値をブロックに代入する必要がなくなり、“0”の個数分だけ処理をスキップすることが可能となることから、処理のさらなる高速化が可能となる。
なお、上述した実施形態では、復号・並べ替え部11は、非零のDCT係数を復号する場合、(“0”の個数)と(非零のDCT係数の値)と(最後の非零係数であるか否かを示すフラグ)との3つを単位とする方法について説明したが、これ以外の方法で復号するようにしてもよい。
例えば、非零のDCT係数を、(“0”の個数)と(非零のDCT係数の値)との組を単位として復号するようにしてもよい。この場合、ブロック内のそれ以降の係数が“0”であることを示すためのEOB(End of Block)符号が復号された時に、1ブロック分の復号を終了することができる。
図4は、本発明の一実施形態に係わるDCT係数の復号化方法を示すフローチャートである。
図4において、復号・並べ替え部1は、ブロックの初期化を行う(ステップS1)。
次に、ブロック内の非零の全てのDCT係数の復号が終了していない場合(ステップS2)、可変長符号化されたDCT係数を復号する。そして、その復号結果に含まれる“0”の個数分だけ、並べ替えテーブル12の参照位置をスキップし、そのスキップ後の参照位置で特定される配置位置を取得する。そして、復号された非零のDCT係数を、並べ替えテーブル12から取得された配置位置に代入する。
以上の動作を非零の全てのDCT係数について行い、非零の全てのDCT係数についての処理が終了すると、ブロック化されたDCT係数をDC/AC予測部3に出力する。
このように、並べ替えテーブル12を参照し、DCT係数の復号を行いつつDCT係数の並べ替えを行うことにより、非零のDCT係数を1回スキャン(図3のステップS2)するだけで、ブロック内の全てのDCT係数の復号および並べ替え結果を得ることが可能となり、復号処理に占める負荷を軽減することができる。
なお、上述した実施形態では、MPEG−4方式に適用した場合について説明したが、これ以外の方式に適用してもよく、例えば、MPEG−1、2方式、JPEG(Joint Photographic Experts Group)方式などに適用するようにしてもよい。
また、並べ替えテーブル12として、DCT係数がジグザグスキャンされている場合を例にとって説明したが、オルタネートスキャンに適用してもよい。また、ジグザグスキャンまたはオルタネートスキャンに応じて、並べ替えテーブル12を切り替えるようにしてもよい。
図5は、本発明の第3実施形態に係わる復号化装置の構成を示すブロック図である。
図5において、復号化装置には、復号手段201および逆量子化手段202が設けられている。ここで、復号手段201は、逆量子化で行われる演算処理の一部を分担しつつ、符号化データの復号を行い、逆量子化手段202は、復号手段201で行われた演算処理の残りを行うことにより、復号手段201からの出力結果を逆量子化する。
また、復号化装置には、演算テーブル203が設けられ、演算テーブル203には、情報源に割り当てられた符号と、情報源の演算結果との対応関係が登録されている。例えば、情報源がXであるとすると、情報源の演算結果として2X+1という値を登録することができる。
そして、復号手段201は、符号化データが入力されると、演算テーブル203を参照することにより、その符号化データに対応した情報源の演算結果を取得し、その情報源の演算結果を逆量子化手段202に出力する。
そして、逆量子化手段202は、復号手段201から受け取った情報源の演算結果に対して、演算処理を行うことにより、逆量子化を行う。
これにより、復号手段201が、情報源の演算結果を演算テーブル203から取得するだけで、逆量子化で行われる演算処理の一部を完了させることができ、逆量子化手段202が、残りの演算処理を行うことで、逆量子化を完了させることができる。
このため、復号手段201における負荷を増大させることなく、逆量子化手段202で行われる逆量子化処理の負荷を軽減することができ、逆量子化処理の効率を向上させることができる。
図6は、本発明の第4実施形態に係わる復号化装置の構成を示すブロック図である。なお、この第4実施形態は、符号化されたDCT係数を復号する時に、DCT係数そのものをテーブルから取得するのでなく、DCT係数の演算結果をテーブルから取得することにより、DCT係数の復号時にかかる負荷を増大させることなく、その後に行われる逆量子化処理の負荷を軽減できるようにしたものである。
ここで、図6の構成では、図11の可変長復号器1および符号表15の代わりに、可変長復号器13および演算表14が設けられ、その他の構成は図11と同様の構成を用いることができる。
図6において、可変長復号器13は、インターマクロブロックの場合、図11の符号表15の代わりに、演算表14を参照する。そして、ビット系列として入力された符号に対応するDCT係数の演算結果を演算表14から取得し、そのDCT係数の演算結果を並べ替え部2に出力する。
また、演算表14には、DCT係数の演算結果が、そのDCT係数に割り当てられた符号に対応して登録される。ここで、インターマクロブロックを逆量子化する場合、(3)、(4)式に示すように、H.263方式またはMPEG方式のいずれで量子化されている場合においても、(2|QF|+1)という演算が行われる。
このため、演算表14には、DCT係数QFに割り当てられた符号に対応して、(2|QF|+1)という演算結果QF′を登録する。
図7(e)は、演算表15に登録されるDCT係数の演算結果の一例を示す図である。
図7(e)において、演算表15では、図11の符号表15で定義されている“0s”、“10s”、“110s”、“1110s”という符号に対応して、DCT係数QFの演算結果QF′=(2|QF|+1)=“1×2+1”、“2×2+1”、“3×2+1”、“4×2+1”がそれぞれ登録される。
可変長復号器13は、インターマクロブロックの場合、図7(e)の演算表14を参照することにより、入力された符号に対応する演算結果(2|QF|+1)を取得する。そして、入力された符号に含まれる“s”が0ならば、演算表14から取得した演算結果(2|QF|+1)をそのままブロック化し、入力された符号に含まれる“s”が1ならば、演算表11から取得した演算結果(2|QF|+1)の正負の符号を反転させてブロック化する。そして、8×8のブロック化が終了すると、そのブロック化されたDCT係数の演算結果QF′を並べ替え部2に出力する。
並べ替え部2に出力されたインターマクロブロックは、並べ替え部2でラスタスキャン順に並べ替えられた後、逆量子化部4に出力され、(3)、(4)式に従って逆量子化が行われる。
ここで、(3)、(4)式で行われる演算のうち、(2|QF|+1)という演算は既に行なわれているので、この(2|QF|+1)という演算を逆量子化部4で行う必要がなくなり、逆量子化を行う際の負荷を軽減することができる。
図7は、本発明の第4実施形態に係わるインターマクロブロックの復号化方法を示す図である。
図7(a)において、図6の可変長復号器13は、8×8のブロックを“0”に初期化する。そして、図7(e)の演算表14を参照することにより、ビット系列として入力された符号に対応する非零のDCT係数QFの演算結果(2|QF|+1)を取得する。そして、図7(b)に示すように、“s”の値に応じて正負の判別が行なわれたDCT係数QFの演算結果QF′を、図7(a)の初期化されたブロック内に復号順に並べる。
例えば、DCT係数QFの復号結果が、“4、0、−2、0、1、0、0、・・・”であるとすると、図7(e)の演算表14を参照することにより、“4、0、−2、0、1、0、0、・・・”というDCT係数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番目に配置し直される。
DCT係数QFの演算結果QF′の並べ替えが終了すると、逆量子化部4は、図7(c)のブロック化されたDCT係数QFの演算結果QF′を順次スキャンする。そして、非零のDCT係数QFの演算結果QF′について、以下の演算処理を行うことにより、DCT係数QFを逆量子化する。
例えば、DCT係数QFがH.263方式で量子化されている場合、以下の式を用いることができる。
・QPが偶数の場合
F=QF′・QP−1(QF′>0) ・・・(5)
F=QF′・QP+1(QF′<0) ・・・(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係数の予測値の加算が行われる。そして、このDC/AC予測部3での処理では、(2|QF|+1)ではなく、QFが使用される。このため、演算表14から取得した(2|QF|+1)という演算結果をDC/AC予測部3に出力すると、DC/AC予測部3での処理に却って負荷がかかる。
また、イントラマクロブロックの場合は、H.263方式で量子化されている場合、(1)式に示すように、(2|QF|+1)という値が逆量子化処理で使われるが、MPEG方式で量子化されている場合、(2)式に示すように、QFの値が逆量子化処理でそのまま使われ、(2|QF|+1)という値は必要ない。
このため、イントラマクロブロックの場合は、復号時に図7の演算表14を用いるのではなく、図11の符号表15を用いて復号を行うことが好ましい。
図8は、本発明の第5実施形態に係わる復号化装置の構成を示すブロック図である。なお、この第5実施形態は、符号化されたDCT係数を復号する時に、逆量子化処理も同時に行うことにより、逆量子化処理の効率を向上できるようにしたものである。
ここで、図8の構成では、図11の可変長復号器1および符号表15の代わりに、復号処理部21および並べ替えテーブル22が設けられ、その他の構成は、図11と同様の構成を用いることができる。
図8において、復号処理部21には、インターブロック処理部21aおよびイントラブロック復号部21bが設けられている。
インターブロック処理部21aは、インターブロックのDCT係数の復号を行いつつ、逆量子化を行う。そして、非零の逆量子化結果が得られるごとに、並べ替えテーブル22を参照し、非零の逆量子化結果を並べ替え後の順序でブロック化する。そして、8×8のDCT係数のブロック化が終了すると、そのブロック化された逆量子化結果を逆DCT部5に出力する。
ここで、インターブロック処理部21aは、非零のDCT係数を、例えば、(“0”の個数)と(非零のDCT係数の値)と(最後の非零係数であるか否かを示すフラグ)との3つを単位として復号し、その(非零のDCT係数の値)を対象として逆量子化を行う。そして、復号結果に含まれる(“0”の個数)だけ、並べ替えテーブル22の参照位置をスキップし、そのスキップ後の参照位置で示される配置位置に非零のDCT係数の逆量子化結果を代入する。
これにより、DCT係数が“0”かどうかを判断することなく逆量子化を行うことが可能となるとともに、非零のDCT係数についての処理を行うだけで、1ブロック分の復号・並べ替えおよび逆量子化を完結させることができ、復号処理を高速化することができる。
なお、DCT係数QFがH.263方式で量子化されている場合は、(3)式に示すように、DCT係数QFを逆量子化する際に、DCT係数QFの並べ替え後の位置を意識する必要はない。このため、逆量子化を行う際の並べ替えおよび逆量子化の順序は問わない。
一方、DCT係数QFがMPEG方式で量子化されている場合、(4)式に示すように、DCT係数QFを逆量子化する際に、DCT係数QFの並べ替え後の位置に対応する量子化行列の値QMが必要となる。このため、並べ替え後の順序でDCT係数QFのブロック化を行うことなく、逆量子化を行うために、逆量子化を行う際に、並べ替えテーブル22を参照し、この参照結果に基づいて量子化行列の値QMを取得するようにしてもよい。
イントラブロック復号部21bは、図13(e)の符号表15を参照することにより、イントラブロックのDCT係数を復号する。そして、復号されたDCT係数を並べ替え部2に出力する。なお、イントラブロック復号部21bでも、並べ替えテーブル22を参照しつつ、復号と同時に並べ替えを行うようにしてもよい。これにより、並べ替え部2での処理をスキップすることができる。
並べ替えテーブル22は、ブロック内におけるDCT係数の並べ替え順序を登録する。例えば、復号されるDCT係数がジグザグスキャンされている場合、そのDCT係数をラスタスキャン順に並べ替えるためのブロック内の位置を登録する。
図9(a)は、ジグザグスキャンされているDCT係数をラスタスキャン順に並べ替えるための並べ替えテーブル22の構成を示す図である。
図9(a)において、ジグザグスキャンされているDCT係数をラスタスキャン順に並べ替えるためには、例えば、0番目の位置のDCT係数を0番目の位置に、1番目の位置のDCT係数を1番目の位置に、2番目の位置のDCT係数を8番目の位置に、3番目の位置のDCT係数を16番目の位置に配置し直す必要がある。このため、並べ替えテーブル22には、DCT係数の並べ替え後の位置が8×8のブロックにラスタスキャン順に登録される。
図9は、本発明の第5実施形態に係わるDCT係数の復号化方法を、インターマクロブロックを例にとって示す図である。なお、図9の説明では、量子化がH.263方式で行われ、量子化パラメータQPが8とする。
図9(b)において、図8のインターブロック処理部21aは、8×8のブロックを“0”に初期化する。
続いて、インターブロック処理部21aは、最初のDCT係数を復号し、復号結果として、例えば、(“0”の個数=0)と(非零のDCT係数の値=“4”)と(最後の非零係数であるか否かを示すフラグ=“偽”)とが得られたとすると、図9(a)の並べ替えテーブル2の0番目の位置を参照するとともに、(非零のDCT係数の値=“4”)を逆量子化する。この結果、0番目のDCT係数の復号結果の配置位置として0番目が得られ、(非零のDCT係数の値=“4”)の逆量子化結果として“71”が得られたとすると、図9(c)に示すように、逆量子化結果=“71”ブロックの0番目の位置に配置する。
続いて、インターブロック処理部21aは、次のDCT係数を復号し、復号結果として、例えば、(“0”の個数=1)と(非零のDCT係数の値=“−2”)と(最後の非零係数であるか否かを示すフラグ=“偽”)が得られたとすると、図9(a)の並べ替えテーブル22の参照位置を“0”の個数分=1だけスキップし、並べ替えテーブル22の2番目の位置を参照するとともに、(非零のDCT係数の値=“−2”)を逆量子化する。この結果、非零のDCT係数の復号結果の配置位置として8番目が得られ、今回の(非零のDCT係数の値=“−2”)の逆量子化結果として“−39”が得られたとすると、図9(c)に示すように、逆量子化結果=“−39”をブロックの8番目の位置に配置する。
ここで、“−39”をブロックの8番目の位置に配置する際に、“0”のブロックへの代入を“0”の個数分=1だけスキップした場合においても、図9(b)のブロックの初期化時に“0”は既に代入されているため、“0”の配置位置が空のままになることはない。
続いて、インターブロック処理部21aは、次のDCT係数を復号し、復号結果として、例えば、(“0”の個数=1)と(非零のDCT係数の値=“1”)と(最後の非零係数であるか否かを示すフラグ=“真”)が得られたとすると、図9(a)の並べ替えテーブル22の参照位置を“0”の個数分=1だけスキップし、並べ替えテーブル22の4番目の位置を参照するとともに、(非零のDCT係数の値=“1”)を逆量子化する。この結果、非零のDCT係数の復号結果の配置位置として9番目が得られ、今回の(非零のDCT係数の値=“1”)の逆量子化結果として“23”が得られたとすると、図9(c)に示すように、逆量子化結果=“23”をブロックの9番目の位置に配置する。そして、(最後の非零係数であるか否かを示すフラグ=“真”)であるため、1ブロック分の復号を終了し、8×8の1ブロック分の逆量子化結果を逆DCT部5に出力する。
このように、復号を行いながら逆量子化を行うことにより、復号の完了と同時に逆量子化も完了させることが可能となるとともに、逆量子化を行う際に“0”かどうかの判断を行う必要がなくなり、復号処理を高速化することができる。
また、逆量子化されたDCT係数を並べ替えながらブロックに配置することが可能となることから、並べ替え後の64個の係数を保持するための記憶領域を用意するだけで、並べ替え前の64個の係数を保持するための記憶領域を不要とすることができ、記憶容量を削減することが可能となる。
また、ブロック全体を“0”に初期化して逆量子化が開始されるため、逆量子化結果が“0”の場合には、その値をブロックに代入する必要がなくなり、“0”の個数分だけ処理をスキップすることが可能となることから、処理のさらなる高速化が可能となる。
なお、上述した第5実施形態では、インターブロック処理部21aは、非零のDCT係数を復号する場合、(“0”の個数)と(非零のDCT係数の値)と(最後の非零係数であるか否かを示すフラグ)との3つを単位とする方法について説明したが、これ以外の方法で復号するようにしてもよい。
例えば、非零のDCT係数を、(“0”の個数)と(非零のDCT係数の値)との組を単位として復号するようにしてもよい。この場合、ブロック内のそれ以降の係数が“0”であることを示すためのEOB(End of Block)符号が復号された時に、1ブロック分の復号および逆量子化を終了することができる。
また、例えば、H.263方式で量子化されている場合、図13(e)の符号表15を参照して非零のDCT係数QFを復号し、(3)式を用いて逆量子化してもよいし、図7(e)の演算表14を参照して非零のDCT係数QF′を復号し、(5)〜(7)式を用いて逆量子化してもよい。
図10は、本発明の第5実施形態に係わるDCT係数の復号化方法を、インターマクロブロックを例にとって示すフローチャートである。
図10において、インターブロック処理部21aは、ブロックの初期化を行う(ステップS11)。
次に、ブロック内の非零の全てのDCT係数の復号が終了していない場合(ステップS12)、可変長符号化されたDCT係数を復号する。そして、その復号結果に含まれる“0”の個数分だけ、並べ替えテーブル22の参照位置をスキップし、そのスキップ後の参照位置で特定される配置位置を取得するとともに、非零のDCT係数を逆量子化する。そして、逆量子化された非零のDCT係数を、並べ替えテーブル22から取得された配置位置に代入する(ステップS13)。
以上の動作を非零の全てのDCT係数について行い、非零の全てのDCT係数についての処理が終了すると、ブロック化されたDCT係数の逆量子化結果を逆DCT部5に出力する。
このように、並べ替えテーブル22を参照し、DCT係数の復号、並べ替えおよび逆量子化を一括して行うことにより、非零のDCT係数を1回スキャン(図10のステップS12)するだけで、ブロック内の全てのDCT係数の復号・逆量子化・並べ替えを同時に完了させることが可能となり、復号処理に占める負荷を軽減することができる。
なお、上述した第5実施形態では、並べ替えテーブル22を設けた場合について説明したが、並べ替えテーブル22を用いることなく、復号と逆量子化をブロックごとに一括して行うようにしてもよい。
また、イントラブロックを処理する場合、図7(e)の演算表14と図13(e)の符号表15との両方を設け、H.263方式またはMPEG方式のいずれかに応じて、演算表14と符号表15とを切り替えて参照するようにしてもよい。
また、上述した実施形態では、MPEG−4方式に適用した場合について説明したが、これ以外の方式に適用してもよく、例えば、MPEG−1、2方式、JPEG(Joint Photographic Experts Group)方式などに適用するようにしてもよい。
また、並べ替えテーブル22として、DCT係数がジグザグスキャンされている場合を例にとって説明したが、オルタネートスキャンに適用してもよい。また、ジグザグスキャンまたはオルタネートスキャンに応じて、並べ替えテーブルを切り替えるようにしてもよい。
産業上の利用可能性
以上説明したように、本発明によれば、0をスキップしつつ、復号結果の並べ替えを行うことにより、復号結果の並べ替えを行う際の負荷を軽減することが可能となり、復号を高速化することができる。
【図面の簡単な説明】
図1は、本発明の第1実施形態に係わる復号化装置の構成を示すブロック図である。
図2は、本発明の第2実施形態に係わる復号化装置の構成を示すブロック図である。
図3は、本発明の第2実施形態に係わるDCT係数の復号化方法を示す図である。
図4は、本発明の第2実施形態に係わるDCT係数の復号化方法を示すフローチャートである。
図5は、本発明の第3実施形態に係わる復号化装置の構成を示すブロック図である。
図6は、本発明の第4実施形態に係わる復号化装置の構成を示すブロック図である。
図7は、本発明の第4実施形態に係わるDCT係数の復号化方法を示す図である。
図8は、本発明の第5実施形態に係わる復号化装置の構成を示すブロック図である。
図9は、本発明の第5実施形態に係わるDCT係数の復号化方法を示す図である。
図10は、本発明の第5実施形態に係わるDCT係数の復号化方法を示すフローチャートである。
図11は、MPEG−4方式による復号化装置の構成例を示すブロック図である。
図12は、MPEG−4方式によるDCT係数のスキャン方法を示す図である。
図13は、MPEG−4方式によるDCT係数の復号化方法を示す図である。
図14は、MPEG−4方式によるDCT係数の復号化方法を示すフローチャートである。

Claims (28)

  1. ブロック化された符号化データの復号を行う復号手段と、
    前記復号手段による復号結果に0が含まれる場合、その0の個数分だけスキップした位置に前記復号結果を配置する配置手段とを備えることを特徴とする復号化装置。
  2. 前記配置手段は、前記復号結果の並べ替え後の位置に直接配置することを特徴とする請求項1記載の復号化装置。
  3. ブロック化された符号化データの復号を行う復号手段と、
    前記復号手段による復号結果に0が含まれる場合、その0の個数分だけスキップして前記復号結果を逆量子化する逆量子化手段と、
    前記逆量子化結果を並べ替え後の位置に直接配置する配置手段とを備えることを特徴とする復号化装置。
  4. 逆量子化で行われる演算処理の一部を分担しつつ、符号化データの復号を行う復号手段と、
    前記復号手段で行われた演算処理の残りを行うことにより、前記復号手段からの出力結果を逆量子化する逆量子化手段とを備えることを特徴とする復号化装置。
  5. 復号結果の並べ替え順序が登録された並べ替えテーブルと、
    前記並べ替えテーブルを参照することにより、復号を行いつつ復号結果の並べ替えを行う復号・並べ替え手段とを備えることを特徴とする復号化装置。
  6. ブロック内におけるDCT係数の並べ替え順序が登録された並べ替えテーブルと、
    DCT係数の復号を行うごとに、前記並べ替えテーブルで指定される順序で、非零のDCT係数を初期化されたブロックに配置する復号・並べ替え手段とを備えることを特徴とする復号化装置。
  7. 前記復号・並べ替え手段は、復号結果に“0”の個数が含まれる場合、その個数分だけ、前記並べ替えテーブルの参照および前記ブロックへの代入をスキップすることを特徴とする請求項5記載の復号化装置。
  8. 情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されているルックアップテーブルと、
    前記ルックアップテーブルを参照することにより、符号化された情報源の演算結果を取得する取得手段と、
    前記取得された演算結果に基づいて逆量子化を行う逆量子化手段とを備えることを特徴とする復号化装置。
  9. 前記情報源がXであるとすると、前記演算結果は2X+1であることを特徴とする請求項8記載の復号化装置。
  10. 復号を行いつつ、逆量子化を行う復号・逆量子化手段と、
    前記復号・逆量子化手段による逆量子化結果をブロック化するブロック化手段とを備えることを特徴とする復号化装置。
  11. 情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されているルックアップテーブルをさらに備え、
    前記復号・逆量子化手段は、前記ルックアップテーブルを参照することにより、符号化された情報源の演算結果を取得し、前記取得した演算結果に基づいて逆量子化を行うことを特徴とする請求項9記載の復号化装置。
  12. 復号結果の並べ替え順序が登録された並べ替えテーブルをさらに備え、
    前記復号・逆量子化手段は、前記復号結果の並べ替え順序の参照結果に基づいて、前記復号結果の逆量子化を行うことを特徴とする請求項10または11記載の復号化装置。
  13. 前記ブロック化手段は、前記並べ替えテーブルを参照することにより、前記逆量子化結果を並べ替え後の順序でブロック化することを特徴とする請求項10〜12のいずれか1項記載の復号化装置。
  14. ブロックの初期化を行う初期化手段をさらに備え、
    前記復号・逆量子化手段は、復号結果に“0”の個数が含まれる場合、その“0”の個数分だけ逆量子化をスキップすることを特徴とする請求項10〜13記載の復号化装置。
  15. 前記ブロック化手段は、前記“0”の個数分だけ、前記並べ替えテーブルの参照および前記ブロックへの代入をスキップすることを特徴とする請求項14記載の復号化装置。
  16. 符号の復号順序とは異なる順序で復号結果を配置しつつ、前記符号を復号することを特徴とする復号化方法。
  17. DCT係数が配置されるブロックを初期化するステップと、
    復号結果に“0”を示す情報が含まれる場合、“0”についてはその後の処理をスキップして非零のDCT係数を前記ブロックに配置するステップとを備えることを特徴とする復号化方法。
  18. DCT係数が配置されるブロックを初期化するステップと、
    符号化されたDCT係数を復号するステップと、
    DCT係数の復号が行われるごとに、非零のDCT係数の並べ替え順序を取得するステップと、
    前記非零のDCT係数を前記取得された並べ替え順序で前記初期化されたブロック内に配置するステップとを備えることを特徴とする復号化方法。
  19. 復号と逆量子化を各ブロックごとに一括して行うことを特徴とする復号化方法。
  20. 復号と並べ替えと逆量子化とを各ブロックごとに一括して行うことを特徴とする復号化方法。
  21. 符号を復号するごとに逆量子化を行うステップと、
    復号順序とは異なる順序で前記逆量子化結果をブロック化するステップとを備えることを特徴とする復号化方法。
  22. DCT係数が配置されるブロックを初期化するステップと、
    復号結果に“0”を示す情報が含まれる場合、“0”については逆量子化処理をスキップするステップと、
    復号された非零のDCT係数を逆量子化し、前記逆量子化結果をブロックに配置するステップとを備えることを特徴とする復号化方法。
  23. DCT係数が配置されるブロックを初期化するステップと、
    復号結果に“0”を示す情報が含まれる場合、“0”については逆量子化処理をスキップするステップと、
    復号された非零のDCT係数の並べ替え順序を取得するステップと、
    前記非零のDCT係数を逆量子化し、前記逆量子化結果を前記並べ替え順序で前記ブロック内に配置するステップとを備えることを特徴とする復号化方法。
  24. ジグザグスキャンまたはオルタネートスキャンされたDCT係数をラスタスキャン順に並べ替えるための配置位置が登録されていることを特徴とするルックアップテーブル。
  25. 情報源の演算結果が、前記情報源に割り当てられた符号に対応して登録されていることを特徴とするルックアップテーブル。
  26. ブロック化された符号を入力するステップと、
    前記符号が復号されるごとに、前記符号の配置状態とは異なるように、復号結果を前記ブロック内に配置するステップとをコンピュータに実行させるための復号化プログラム。
  27. 符号化データの復号を行うステップと、
    前記復号結果に0が含まれる場合、その0の個数分だけスキップして前記復号結果をブロック内に配置するステップとをコンピュータに実行させるための復号化プログラム。
  28. ブロック化された符号を入力するステップと、
    前記符号を復号しつつ、逆量子化を行うステップと、
    配置順序を変更しつつ、前記逆量子化結果をブロック化するステップとをコンピュータに実行させるための復号化プログラム。
JP2003504549A 2001-06-06 2002-05-30 復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラム Withdrawn JPWO2002101934A1 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2001171739 2001-06-06
JP2001171739 2001-06-06
JP2001188181 2001-06-21
JP2001188181 2001-06-21
PCT/JP2002/005287 WO2002101934A1 (en) 2001-06-06 2002-05-30 Decoding apparatus, decoding method, lookup table, and decoding program

Publications (1)

Publication Number Publication Date
JPWO2002101934A1 true JPWO2002101934A1 (ja) 2004-09-30

Family

ID=26616474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003504549A Withdrawn JPWO2002101934A1 (ja) 2001-06-06 2002-05-30 復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラム

Country Status (5)

Country Link
US (1) US20040223550A1 (ja)
EP (1) EP1401106A4 (ja)
JP (1) JPWO2002101934A1 (ja)
CN (1) CN1496608A (ja)
WO (1) WO2002101934A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050105621A1 (en) * 2003-11-04 2005-05-19 Ju Chi-Cheng Apparatus capable of performing both block-matching motion compensation and global motion compensation and method thereof
JP2005184042A (ja) * 2003-12-15 2005-07-07 Sony Corp 画像復号装置及び画像復号方法並びに画像復号プログラム
US20100177819A1 (en) * 2007-05-29 2010-07-15 Lg Electronics Inc. Method and an apparatus for processing a video signal
JP2010103969A (ja) * 2008-09-25 2010-05-06 Renesas Technology Corp 画像復号方法、画像復号装置、画像符号化方法及び画像符号化装置
CN103489170B (zh) * 2013-09-05 2017-01-11 浙江宇视科技有限公司 一种jpeg图片合成、叠加osd信息方法及装置
WO2018211131A1 (en) * 2017-05-19 2018-11-22 Movidius Ltd. Methods and apparatus for improving data transformation in processing devices
EP4147389A1 (en) * 2020-05-04 2023-03-15 Telefonaktiebolaget LM ERICSSON (PUBL) Zigzag decoding of upstream-processed signals from independent receiver subarrays

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03266564A (ja) * 1990-03-16 1991-11-27 Canon Inc 画像符号化方式及びその装置
JP3222633B2 (ja) * 1993-06-28 2001-10-29 株式会社東芝 情報処理装置
JP3242788B2 (ja) * 1994-03-29 2001-12-25 三菱電機株式会社 信号処理装置及び信号処理方法
US5959872A (en) * 1996-10-28 1999-09-28 Samsung Electronics Co., Ltd. Apparatus and method for bidirectional scanning of video coefficients
US5959186A (en) * 1997-02-06 1999-09-28 Campbell Soup Company No-heat Jalapenos
US6731686B1 (en) * 2000-05-31 2004-05-04 Sun Microsystems, Inc. Apparatus and method for pipelining variable length decode and inverse quantization operations in a hybrid motion-compensated and transform coded video decoder
US6529554B1 (en) * 2000-06-29 2003-03-04 Intel Corporation Low branch-mispredict technique for MPEG run length encoding

Also Published As

Publication number Publication date
CN1496608A (zh) 2004-05-12
EP1401106A1 (en) 2004-03-24
EP1401106A4 (en) 2004-07-21
US20040223550A1 (en) 2004-11-11
WO2002101934A1 (en) 2002-12-19

Similar Documents

Publication Publication Date Title
US10841613B2 (en) Low-complexity intra prediction for video coding
JP3764457B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、及びプログラム
WO2012148139A2 (ko) 참조 픽쳐 리스트 관리 방법 및 이러한 방법을 사용하는 장치
JP6272759B2 (ja) 映像情報通知方法及び装置、並びにこれを利用した復号方法及び装置
JP2020005294A (ja) 処理方法
US7068850B2 (en) Decoding of predicted DC coefficient without division
JPWO2002101934A1 (ja) 復号化装置、復号化方法、ルックアップテーブルおよび復号化プログラム
AU2016277600B2 (en) Low-complexity intra prediction for video coding
Savadi et al. Retention of High Efficiency Video Coding (HEVC)
AU2015264787B2 (en) Low-complexity intra prediction for video coding
JP2005175629A (ja) 画像符号化装置、画像符号化方法および画像符号化プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060523

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20060703