JP2006148237A - 復号化装置およびその方法 - Google Patents

復号化装置およびその方法 Download PDF

Info

Publication number
JP2006148237A
JP2006148237A JP2004332084A JP2004332084A JP2006148237A JP 2006148237 A JP2006148237 A JP 2006148237A JP 2004332084 A JP2004332084 A JP 2004332084A JP 2004332084 A JP2004332084 A JP 2004332084A JP 2006148237 A JP2006148237 A JP 2006148237A
Authority
JP
Japan
Prior art keywords
coefficient
decoding
identification signal
symbol
pipeline configuration
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.)
Granted
Application number
JP2004332084A
Other languages
English (en)
Other versions
JP4502383B2 (ja
JP2006148237A5 (ja
Inventor
Yukiro Chiba
幸郎 千葉
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004332084A priority Critical patent/JP4502383B2/ja
Publication of JP2006148237A publication Critical patent/JP2006148237A/ja
Publication of JP2006148237A5 publication Critical patent/JP2006148237A5/ja
Application granted granted Critical
Publication of JP4502383B2 publication Critical patent/JP4502383B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】 連続する非有意係数の数(ゼロラン長)とそれに続く有意係数(レベル)の組からなるシンボルを高速に復号化する。
【解決手段】 シンボルの有意係数をレベル復号化部203,DPCM復号化部,シリアルパラレル復号化部205からなる多段パイプラインによって復号化し、多段パイプラインの各段で処理される係数の種類を表す係数識別信号を多段パイプラインに同期してFF211,212,213で伝送する。ランレングス復号化部202は、シンボルに応じて係数識別信号を出力するとともに、シンボルのゼロラン長に応じてパイプラインへのシンボル供給をHOLD信号により制御する。そしてシリアルパラレル変換部205で伝送された係数識別信号に応じて、パイプラインにより復号化された有意係数が非有意係数と組み合わされて出力される。
【選択図】 図1

Description

本発明は復号化装置およびその方法に関し、特にランレングス符号化された符号を高速に復号する復号化装置およびその方法に関する。
従来、CD-ROMやハードディスク等の蓄積媒体に静止画像を保存・表示するための符号化方式として、ISO(国際標準化機構)により標準化されたJPEG方式が広く用いられている。また、動画像と音声を同様な蓄積媒体に保存・表示したり、通信路を介して放送、または双方向通信したりするための符号化方式として、ISOにより標準化されたMPEG方式が広く用いられている。
動画像と音声の符号化方式であるMPEG方式は、符号化効率の向上を目的として年々その符号化方式が改良されており、1992年にMPEG-1、1994年にMPEG-2、1999年にはMPEG-4がそれぞれ国際標準として規定されている。MPEG-4においては、符号化効率の向上はもちろんのこと、符号誤り訂正機能の強化や、符号化対象毎に最適な符号化を施すオブジェクト符号化の導入なども実現されている。さらには、MPEG-4シンタックス上のビジュアル層とオーディオ層を包含するファイル形式などを規定するシステム層においては、利用者が要求する任意の時刻の動画像または音声データに容易にアクセスできる仕組みを提供している。
上述したJPEG静止画符号化方式およびMPEG-1/2/4動画符号化方式のいずれの符号化処理においても、まず始めに静止画または動画の原信号はDCT変換された後直流成分であるDC係数と交流成分であるAC係数とに分別される。その後、両係数とも量子化され、更に異なる符号化が施される。まず、2次元情報であるAC係数に対しては、ジグザグスキャン方式を用いた1次元情報への変換が行われる。AC係数の高周波成分には"0"が多く発生するので、"0"以外のAC係数の値(有意係数;レベル)とその前に"0"がいくつあるか(非有意係数の数;ラン長)を組としたシンボルを生成し、それを、発生頻度の高い情報に対して短い符号長の符号語を割り当てるエントロピー符号化方式を採用しているハフマン符号化方式により、符号化する。
一方、JPEG静止画符号化方式およびMPEG-1/2/4動画符号化方式の復号処理は、上述した符号化処理と対照的にハフマン復号化から始まり、ランレングス復号化、ジグザグスキャン方式による1次元情報から2次元情報への復元、逆DCT変換を経て、再構成静止画・動画が生成される。
一般的なハフマン復号化処理(たとえば、特許文献1参照)では、符号化データを先頭から順次解析し、あらかじめ用意されたハフマン符号をアドレスとするハフマン・テーブルを参照して対応するシンボルに変換すると同時に、ハフマン・テーブルから得られる符号長の情報から当該ハフマン符号を符号化データ中から抜き取ることにより、一つのハフマン符号の復号化処理が完了する。
したがって、一般的なハフマン復号化処理では、一つのハフマン符号の復号が完了しないうちは続くハフマン符号の復号を開始することができない。すなわち、1サイクルで復号できるのは1シンボルのみであった。この問題を解決するために、様々な提案が今日までになされているものの、近年の半導体プロセス進化に伴うシステムLSIなどの動作周波数の向上によって、依然として1サイクルで1シンボル以上をハフマン復号化する画像復号化装置の実現は困難である。
このように、1サイクルあたり1シンボルによるハフマン復号化処理が行われた後、ランレングス復号化処理が行われる。従来、ランレングス復号化処理では、1サイクルあたりに入力される1シンボルをDC成分とAC成分からなるDCT係数に、1サイクルあたり1DCT係数の速度で変換している。
特開平4-284782号公報
しかしながら、近年のデジタルカメラなど携帯情報機器に搭載されるデジタル撮像素子の高解像度化や、高解像なHDTV放送の普及とインターネットなどのデジタル通信網の高速化に伴う高解像な静止画・動画コンテンツ流通の増加により、高解像で撮影された静止画や動画を高速に復号化する画像復号化装置の需要が高まってきている。
そこで本発明は、連続する非有意係数の数とそれに続く有意係数の組からなるシンボルを高速に復号化する復号化装置およびその方法を提供することを目的とする。
上記の目的を達成するために本発明に係る画像復号化装置は以下のような構成を備える。
即ち、連続する非有意係数の数とそれに続く有意係数の組からなるシンボルを復号化する復号化装置であって、前記シンボルの有意係数を多段パイプライン構成によって復号化する有意係数復号化手段と、前記多段パイプライン構成の各段で処理される係数の種類を表す係数識別信号を前記多段パイプライン構成に同期して伝送する係数伝送手段と、前記シンボルに応じて前記係数伝送手段に前記係数識別信号を出力するとともに、前記シンボルの連続する非有意係数の数に応じて前記有意係数復号化手段へのシンボル供給を制御する制御手段と、前記係数伝送手段によって伝送された前記係数識別信号に応じて、前記有意係数復号化手段により復号化された有意係数を非有意係数と組み合わせて出力する係数出力手段と、を備えることを特徴とする。
例えば、前記係数識別信号は、前記多段パイプライン構成の各段において処理される有意係数と非有意係数の組み合わせを表現することを特徴とする。
本発明によれば、1サイクルあたり1シンボルで入力される、連続する非有意係数の数とそれに続く有意係数の組からなるシンボルを復号化し、1サイクルあたり1つ以上のシンボルの復号結果を出力することにより、最小限の回路構成によって高速な復号化処理が可能となる。
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。
<第1実施形態>
以下、本発明に係る一実施形態として、MPEG符号化方式を用いる例を説明する。しかしながら本発明は動画符号化方式に限らず、静止画符号化方式であるJPEG符号化方式等に対しても同様に適用可能である。
図2は、本実施形態における画像復号化装置の機能構成を示すブロック図である。同図において、100は可変長復号化部、200は可変長復号化結果として出力されたラン長とレベルとの組からなるシンボルを入力して所望のDCT係数列を出力するシンボル復号化部、300はDCT係数列に逆量子化を施す逆量子化部、400は逆量子化されたDCT係数列から再構成画像を出力する逆DCT部、500は上記100〜400の構成による符号化データ復号演算処理を制御する制御部である。また、601は外部からの符号化データを入力する符号化データ入力信号、602は再構成画像を外部へ出力する再構成画像データ出力信号であり、上記100〜602によって、本実施形態の画像復号化装置1が構成される。
図1は、シンボル復号化部200の詳細構成を示すブロック図である。同図において、201は前段の可変長復号化部100から1サイクルあたり1シンボルを入力するシンボルデータ入力信号である。ここでシンボルとは、連続する非有意係数の数とそれに続く有意係数の組であり、すなわちラン長とレベルとの組からなる。
202は、ラン長に応じてシンボル復号化部200内におけるシンボルデータ復号化処理を制御するランレングス復号化部である。
また、203は、正負符号と振幅からなるレベルを復号化するレベル復号化部、204は、DC係数に対応したシンボルに対してDPCM復号化を行うDPCM復号化部である。205は、1サイクルあたりに1個のDCT係数を入力し、シンボル復号化部200のDCT係数データ出力信号のビット幅に応じて複数の係数を同時に出力するシリアルパラレル変換部、206は、1サイクルあたり2個のDCT係数として出力するDCT係数データ出力信号である。本実施形態では、レベル復号化部203、DPCM復号化部204、およびシリアルパラレル変換部205によってパイプライン構造をなし、これにより、入力されるシンボルデータをDCT係数データに復号する、一連のシンボル復号化演算処理が行われる。以下、レベル復号化部203、DPCM復号化部204、およびシリアルパラレル変換部205からなる構成をパイプライン部と称し、その動作の詳細については後述する。
207,208,209はフリップフロップ(以下、FF)であり、上記パイプライン部による一連のシンボル復号化演算処理を、3段のパイプライン構造へ分割する。
210は係数識別信号であり、パイプライン部による上記一連のシンボル復号化演算処理の初段に存在する処理対象のシンボルが、DC係数に対応したものであるかまたはAC係数に対応したものであるかなど、その種別を表す。
211,212,213はFFであり、係数識別信号210をパイプライン部に同期して後段へ伝達する。214,215,216はそれぞれ、各FF211,212,213から出力された係数識別信号である。
217は係数識別信号214の代わりに後段へ伝達される係数識別信号、218はランレングス復号化部202に制御されて係数識別信号214と217のいずれかを選択する係数識別信号選択部である。同様に、219は係数識別信号215の代わりに後段へ伝達される係数識別信号、220はランレングス復号化部202に制御されて係数識別信号215と219のいずれかを選択する係数識別信号選択部である。
221は、入力シンボルのラン長に応じて、以降のシンボルの入力と処理を遅らせるよう、パイプライン部における初段のFF207をHOLD状態に保つHOLD信号である。なおこのHOLD信号は、前段の可変長復号化部100に対し、シンボルの出力を遅らせるBusy信号として別途出力される。
図3は、ランレングス復号化部202が出力する係数識別信号210の、1個のDCT係数に対応した信号部分の各状態とその意味を示す表である。1個のDCT係数に対応した係数識別信号210は2ビットで構成され、値が"00"の場合は対応するパイプライン部の各段にDCT係数が存在しないことを意味する。また、値が"01"の場合はDC成分の係数が存在することを意味し、値が"10"の場合は値がゼロでないAC成分の係数(いわゆるAC成分の有意係数)が存在することを意味し、値が"11"の場合は値ゼロを持つAC係数が存在することを意味する。そして、以降に示す各図においては、係数識別信号210の値を代替するものとして、図3に示す記号"X","DC","AC","0"を用いて説明する。
図4は、ランレングス復号化部202が出力する2個のDCT係数に対応した係数識別信号210が取り得る各状態と、その意味を示す表である。パイプライン部においては1サイクルあたり1シンボルを復号化して1DCT係数を出力することができる。これに対して係数識別信号210が表現できる2個のDCT係数のうち、1個はパイプライン部による一連のシンボル復号化演算処理後に出力されるDCT係数に対応し、もう1個はシンボル復号化演算処理を行わなくとも出力すべきDCT係数の値が自明である、ゼロの値を持つAC係数に対応している。
ここで、係数識別信号210が表現できる2個のDCT係数のうち、先行して出力されるべきDCT係数をC1と呼び、C1に対応した係数識別信号210の一部を係数識別信号S1とし、引き続いて出力されるべきDCT係数をC2と呼び、C2に対応した係数識別信号210の一部を係数識別信号S2とする。すると図4の表に示されるように、係数識別信号S1とS2との取り得る組み合わせは8通りであり、表の右側部には係数識別信号S1およびS2のそれぞれが表す、係数C1の状態および係数C2の状態が示されている。
図4の表に示されるように、係数識別信号S1とS2の組み合わせが(00,00)の場合は、対応するパイプライン部の各段にDCT係数が1個も存在しないことを意味する。同様に、(S1,S2)が(01,00)の場合は係数C1としてDC係数が存在し係数C2は存在しないことを意味し、(01,11)の場合は係数C1としてDC係数が存在し係数C2としてゼロの値を持つAC係数が存在することを意味し、(10,00)の場合は係数C1として値がゼロでないAC係数が存在し係数C2は存在しないことを意味し、(10,11)の場合は係数C1として値がゼロでないAC係数が存在し係数C2としてゼロの値を持つAC係数が存在することを意味し、(11,00)の場合は係数C1としてゼロの値を持つAC係数が存在し係数C2は存在しないことを意味し、(11,10)の場合は係数C1としてゼロの値を持つAC係数が存在し係数C2として値がゼロでないAC係数が存在することを意味し、(11,11)の場合は係数C1としてゼロの値を持つAC係数が存在し係数C2としてもゼロの値を持つAC係数が存在することを意味する。
図5は、Nクロックサイクルにおける入力シンボルと係数識別信号214と215から、N+1クロックサイクルにおける係数識別信号214と215、および216を決定する論理を示した真理値表である。
図1に示すように入力される係数識別信号214と215、および入力シンボルの情報から、ランレングス復号化部202は本真理値表に従って、次のクロックサイクルにおける係数識別信号214と215、および216を決定することができる。
図5に示される各種シンボルに対応した各種係数識別信号の状態のうち、特にNクロックサイクルにおいて入力シンボルとしてラン長:3のAC係数が出現した場合について、以下に説明する。
まず、Nクロックサイクルにおける係数識別信号214によって表現される先行する係数C1および引き続く係数C2の状態がそれぞれ(DC/AC,X)である場合は、係数C1としてDC係数または値がゼロでないAC係数が存在し、係数C2は存在しないことを意味する。さらに、Nクロックサイクルにおける係数識別信号215によって表現される先行する係数C1および引き続く係数C2の状態がそれぞれ(don't care, don't care)である場合は、係数C1および係数C2は如何なる状態であっても構わないことを意味する。
Nクロックサイクルにおいて上記した状態である場合、N+1クロックサイクルにおいて係数識別信号214によって表現される先行する係数C1および引き続く係数C2の状態は(0,0)であり、係数識別信号215は(DC/AC,0)、係数識別信号216は(don't care, don't care)となる。なお、図中斜線で示される係数の状態は、ランレングス復号化部202によって(X)から(0)へ変更されたものであることを意味する。
具体的には、Nクロックサイクにおいては係数識別信号214によって表現された係数C2の状態(X)であったのに対して、N+1クロックサイクルでは係数識別信号215によって表現される係数C2の状態が(0)に変更されている。これは、Nクロックサイクルで出現した入力シンボルがラン長:3のAC係数であったことに応じて、係数が存在していなかった係数識別信号に対してゼロの値を持つAC係数を、パイプラインを1段飛び越えて挿入したものである。なお、この挿入は識別信号217を用いて行われる。
さらに、N+1クロックサイクルにおいて係数識別信号214によって表現される先行する係数C1および引き続く係数C2の状態は(0,0)であり、これは、Nクロックサイクルで出現した入力シンボルがラン長:3のAC係数であったことに応じて、残るゼロの値を持つ2個のAC係数を1クロックサイクルで伝達するものである。
ここで係数識別信号215と214においては、それぞれ1クロックサイクルあたり2個のDCT係数を伝達しており、高速なシンボル復号化処理が行われていることがわかる。このように本実施形態によれば、ラン長を有するAC係数の数が支配的である8x8画素からなるブロック、もしくはラン長が長いAC係数が多く存在するブロックに対するシンボル復号化処理では、限りなく2DCT係数/1クロックサイクルに近い高速処理が実現可能である。
以上、図5に示された真理値表のNクロックサイクルにおいて入力シンボルとしてラン長:3のAC係数が出現した場合で、かつ係数識別信号214と215が特定の状態であった場合について説明したが、本実施形態は他の状態においても同様の思考が適用されるため、その他の場合についての説明は省略する。
以下、シンボル復号化部202における具体的な動作例を、図6および図7を用いて説明する。
図6は、以下の動作例における入力シンボルのシーケンスを示す図である。入力シンボルのシーケンスは1つのブロックの可変長復号データ(ここでは量子化されたDCT係数)に対応し、図6に示されるように最初がDC係数、その次にラン長:3のAC係数、ラン長:1のAC係数、ラン長:4のAC係数、最後にEOB(End of Block)、の合計5つのシンボルからなっているとする。
図7は、図6に示されたシンボルのシーケンスを、シンボル復号化部200で復号化処理する場合において、ランレングス復号化部202から出力される係数識別信号214,215,216の時系列の変化を示したタイミングチャートである。同図において時間の流れは上から下方向であり、パイプライン処理の各段で処理されるデータの流れは左から右方向へ進む。
以後、本実施形態の復号化処理について、特にシンボル復号化部200に入力されたシンボルデータに対する復号化処理手順を、図1,図6および図7を用いて説明する。なお、必要に応じて図3,図4,図5も別途参照されたい。
図7に示すように、まず始めに時刻T0において、シンボルデータ入力信号201としてDC係数に対応したシンボルが入力される。なお、図7に示す時刻T0から1サイクル毎に、時刻T1,T2,・・・T6と進んでいく。
次に時刻T1において、DC係数はレベル復号化部203による復号化演算処理が行われるのと並行して、係数識別信号214でその状態が先行する係数C1として伝達される。一方、係数識別信号214で表現される係数C2は、時刻T1ではなにも存在しない。このとき、引き続いて入力されるシンボルとしては図6に示したように、ラン長:3のAC係数が出現する。
時刻T2において、DC係数はDPCM復号化部204による復号化演算処理が行われるのと並行して、係数識別信号215でその状態が先行する係数C1として伝達される。それとともに、時刻T1でラン長:3のAC係数に対応するシンボルが入力されたことに起因して、係数識別信号215の係数C2(時刻T1時点では係数が存在していない箇所)としてゼロの値を持つAC係数が伝達されるように、ランレングス復号化部202から係数識別信号217としてゼロの値を持つAC係数が伝達され、係数識別信号選択部218による選択により、係数識別信号215の係数C2における"X"は"0"に変更される。
なお、図7において一点鎖線で示される矢印は、係数識別信号選択部218或いは係数識別信号選択部220によるデータ選択により、係数識別信号214や215中の"X"を、係数識別信号217や219内の本来の係数である"0"に置換する処理を示している。
また、ラン長:3であるから残り2個の値ゼロを持つAC係数に対しては、パイプライン部によるシンボル復号化演算処理は行われず、係数識別信号214により2個の値ゼロを持つAC係数が存在する旨が伝達されるのみである。
なお時刻T2においては、値ゼロを持つ3個のAC係数に続く、値がゼロでない1個のAC係数がまだ処理されていないので、FF207には、ランレングス復号化部202からのHOLD信号221により、次の処理のためにその値がゼロでないAC係数(いわゆる有意係数)が保持されている。
次に時刻T3において、DC係数はシリアルパラレル変換部206へ入力され、係数識別信号216の状態により、DC係数と値ゼロを持つAC係数の組がDCT係数データ出力信号206として出力される。また係数識別信号215では、2個の値ゼロを持つAC係数が伝達される。
値ゼロを持つ3個のAC係数に続く、値がゼロでない1個のAC係数は、レベル復号化部203による復号化演算処理が行われるのと並行して、係数識別信号214でその状態が先行する係数C1として伝達される。一方、係数識別信号214で表現される係数C2は、時刻T3ではなにも存在しない。
時刻T3ではHOLD信号221による保持状態が解除されており、引き続いて入力されるシンボルとしては図6に示したように、ラン長:1のAC係数が出現する。
時刻T4において、ラン長:3のAC係数の残る2個の値ゼロを持つAC係数の状態が、係数識別信号216によってシリアルパラレル変換部206へ入力され、値ゼロを持つAC係数2個の組が、DCT係数データ出力信号206として出力される。
値ゼロを持つ3個のAC係数に続く、値がゼロでない1個のAC係数は、DPCM復号化部204の内部でバイパスされて後段へ伝達されるのと並行して、係数識別信号215でその状態が先行する係数C1として伝達される。
これととともに、時刻T3でラン長:1のAC係数に対応するシンボルが入力されたことに起因して、係数識別信号215の係数C2としてゼロの値を持つAC係数が伝達されるように、ランレングス復号化部202から係数識別信号217としてゼロの値を持つAC係数が伝達され、係数識別信号選択部218による選択により、係数識別信号215の係数C2における"X"は"0"に変更される(図中に一点鎖線で示される箇所)。
また、値ゼロを持つ1個のAC係数に続く、値がゼロでない1個のAC係数は、レベル復号化部203による復号化演算処理が行われるのと並行して、係数識別信号214でその状態が先行する係数C1として伝達される。
なお時刻T4では、入力シンボルとしては有効なデータが出現していない。これは、本発明が例外処理にも対応できる場合を説明するものであり、図2に示す可変長復号化部100からのシンボルの入力が遅れた場合に、この様な処理が発生する。この場合、係数識別信号214で表現される係数C2は、時刻T4ではなにも存在しない。
ただし、この様な例外処理は可変長復号化部100の機能に依存するものであるから、例外処理が発生しない装置ではその処理内容は異なる。その場合の時刻T4においては、係数識別信号214で表現される係数C2に何らかの値が入ることになる。
時刻T5において、ラン長:3のAC係数シンボルに対応した、値がゼロでないAC係数はシリアルパラレル変換部206へ入力され、係数識別信号216の状態により、AC係数と値ゼロを持つAC係数の組が、DCT係数データ出力信号206として出力される。値ゼロを持つ1個のAC係数に続く、値がゼロでない1個のAC係数は、DPCM復号化部204の内部でバイパスされて後段へ伝達されるのと並行して、係数識別信号215でその状態が先行する係数C1として伝達される。
一方、係数識別信号215で表現される係数C2は、時刻T5ではなにも存在しない。また、係数識別信号214で表現される係数C1および係数C2には、ともに時刻T4で有効な入力シンボルが出現しなかったことに起因して何も存在しない。そして、引き続いて入力されるシンボルとしては図6に示したように、ラン長:4のAC係数が出現する。
時刻T6において、ラン長:1のAC係数シンボルに対応した、値がゼロでないAC係数は、シリアルパラレル変換部206へ入力される。一方、時刻T5でラン長:4のAC係数に対応するシンボルが入力されたことに起因して、係数識別信号216の係数C2としてゼロの値を持つAC係数が伝達されるように、係数識別信号219および係数識別信号選択部220を介して係数C2が変更されている(図中に一点鎖線で示される箇所)。結果として、先行する値がゼロでないAC係数と、それに続く値ゼロを持つAC係数の組が、DCT係数データ出力信号206として出力される。
さらに、時刻T5でラン長:4のAC係数に対応するシンボルが入力されたことに起因して、係数識別信号215の係数C1およびC2としてゼロの値を持つAC係数が伝達されるように、ランレングス復号化部202から係数識別信号217としてゼロの値を持つAC係数が伝達され、係数識別信号選択部218による選択により、係数識別信号215の係数C2における"X"は"0"に変更される。(図中に一点鎖線で示される箇所)。
また、係数識別信号214で表現される係数C1としては、値ゼロを持つ4個のAC係数の最後の1個を伝達するとともに、引き続く値がゼロでないAC係数はレベル復号化部203による復号化演算処理が行われるのと並行して、係数識別信号214でその状態が先行する係数C2として伝達される。引き続き、ブロックの最後の入力シンボルとして、図6に示したようにEOB(End of Block)が出現する。
このように図7によれば、係数識別信号216として順次2個ずつ出力される係数の並びが「DC,0,0,0,AC,0,AC,0,・・・」であり、最後のシンボルEOBがランレングス復号化部202に入力されるまで、図6に示したシンボルシーケンスに対応していることが分かる。
以上説明したように本実施形態の画像復号化装置によれば、1サイクルあたり1シンボルで入力されるラン長とレベルとの組からなるシンボルを、最大で1サイクルで2個のDCT係数に復号して出力することができる。すなわち、最小限の回路構成によって、高速な復号化処理が可能となる。
なお、本実施形態では理解を容易とするために、シンボル復号化部200は1サイクルあたり2個のDCT係数を出力するとして説明をしたが、本発明はこの例に限定されない。例えば、各種処理の制御が複雑にはなるが、係数識別信号を保持するFFの段数(図1ではFF211,212,213の3段)を増加し、図7を用いて説明した様な「最終出力206として所定複数個のDCT係数が出力できるようなパイプライン処理」を実現できるよう、図5で説明した真理値表を調整すれば、1サイクルあたり2個を超える数のDCT係数を出力することも可能である。これによりシンボル復号化部200は、1サイクルあたり4つのDCT係数や8つのDCT係数などを出力することも可能である。
なお、本実施形態においては、ランレングス符号化の対象データを、JPEGやMPEG等で知られる「値ゼロを持つDCT係数」として説明をしたが、本発明はゼロランを符号化する方式に限らず、何らかのサンプル値をランレングス符号化する方式であれば有効である。その場合、図2で示した画像復号化部の可変長復号化部100及び逆量子化部300、および逆DCT部400は必ずしも必要ではなくなる。
[他の実施例]
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
本発明の一実施形態である画像復号化装置における、シンボル復号化部の詳細構成を示すブロック図である。 本実施形態における画像復号化装置の構成を示すブロック図である。 1個のDCT係数に対応した係数識別信号の種類を示す表である。 2個のDCT係数に対応した係数識別信号の組み合わせを示す表である。 入力シンボルと係数識別信号から次段の係数識別信号を決定する論理を示す真理値表である。 本実施形態のシンボル復号化例に用いられるシンボルシーケンスを示す図である。 本実施形態のシンボル復号化処理例における係数識別信号の時系列変化を示すタイミングチャートである。

Claims (20)

  1. 連続する非有意係数の数とそれに続く有意係数の組からなるシンボルを復号化する復号化装置であって、
    前記シンボルの有意係数を多段パイプライン構成によって復号化する有意係数復号化手段と、
    前記多段パイプライン構成の各段で処理される係数の種類を表す係数識別信号を前記多段パイプライン構成に同期して伝送する係数伝送手段と、
    前記シンボルに応じて前記係数伝送手段に前記係数識別信号を出力するとともに、前記シンボルの連続する非有意係数の数に応じて前記有意係数復号化手段へのシンボル供給を制御する制御手段と、
    前記係数伝送手段によって伝送された前記係数識別信号に応じて、前記有意係数復号化手段により復号化された有意係数を非有意係数と組み合わせて出力する係数出力手段と、
    を備えることを特徴とする復号化装置。
  2. 前記係数識別信号は、前記多段パイプライン構成の各段において処理される有意係数と非有意係数の組み合わせを表現することを特徴とする請求項1記載の復号化装置。
  3. 前記係数識別信号は、単一の有意係数と単一の非有意係数の組み合わせを表現することを特徴とする請求項2記載の復号化装置。
  4. 前記係数識別信号は、単一の有意係数と複数の非有意係数の組み合わせを表現することを特徴とする請求項2記載の復号化装置。
  5. 前記制御手段は、第1のクロックサイクルにおいて前記係数伝送手段で伝送される係数識別信号と入力シンボルに応じて、該第1のクロックサイクルに続く第2のクロックサイクルにおける係数識別信号を決定することを特徴とする請求項1乃至4のいずれかに記載の復号化装置。
  6. 前記制御手段による制御に応じて、前記係数伝送手段により伝送される係数識別信号を変更する係数変更手段をさらに有することを特徴とする請求項5記載の復号化装置。
  7. 前記シンボルは、ランレングス符号化されたデータであることを特徴とする請求項1乃至6のいずれかに記載の復号化装置。
  8. 前記非有意係数の値はゼロであり、該非有意係数の数はゼロラン長であることを特徴とする請求項7記載の復号化装置。
  9. 連続する第1のサンプルの数とそれに続く第2のサンプルとの組からなるシンボルを復号化する復号化装置であって、
    前記シンボルの第2のサンプルを多段パイプライン構成によって復号化する復号化手段と、
    前記多段パイプライン構成の各段で処理されるサンプルの種類を表す識別信号を前記多段パイプライン構成に同期して伝送する伝送手段と、
    前記シンボルに応じて前記伝送手段に前記識別信号を出力するとともに、前記シンボルの連続する第1のサンプルの数に応じて前記復号化手段へのシンボル供給を制御する制御手段と、
    前記伝送手段によって伝送された前記識別信号に応じて、前記復号化手段により復号化された第2のサンプルを第1のサンプルと組み合わせて出力する出力手段と、
    を備えることを特徴とする復号化装置。
  10. 前記識別信号は、前記多段パイプライン構成の各段において処理される第2のサンプルと第1のサンプルの組み合わせを表現することを特徴とする請求項9記載の復号化装置。
  11. 前記識別信号は、単一の第2のサンプルと単一の第1のサンプルの組み合わせを表現することを特徴とする請求項10記載の復号化装置。
  12. 前記識別信号は、単一の第2のサンプルと複数の第1のサンプルの組み合わせを表現することを特徴とする請求項10記載の復号化装置。
  13. 前記制御手段は、第1のクロックサイクルにおいて前記伝送手段で伝送される識別信号と入力シンボルに応じて、該第1のクロックサイクルに続く第2のクロックサイクルにおける識別信号を決定することを特徴とする請求項9乃至12のいずれかに記載の復号化装置。
  14. 前記制御手段による制御に応じて、前記伝送手段により伝送される識別信号を変更する変更手段をさらに有することを特徴とする請求項13記載の復号化装置。
  15. 前記シンボルは、ランレングス符号化されたデータであることを特徴とする請求項9乃至14のいずれかに記載の復号化装置。
  16. 前記第1のサンプルの値はゼロであり、該第1のサンプルの数はゼロラン長であることを特徴とする請求項15記載の復号化装置。
  17. 多段パイプライン構成を有し、連続する非有意係数の数とそれに続く有意係数の組からなるシンボルを復号化する復号化装置における復号化方法であって、
    前記多段パイプライン構成によって前記シンボルの有意係数を復号化し、
    前記シンボルに応じて、前記多段パイプライン構成の各段で処理される係数の種類を表す係数識別信号を出力し、
    前記係数識別信号を前記多段パイプライン構成に同期して伝送し、
    前記シンボルの連続する非有意係数の数に応じて、前記多段パイプライン構成へのシンボル供給を制御し、
    伝送された前記係数識別信号に応じて、復号化された有意係数を非有意係数と組み合わせて出力する
    ことを特徴とする復号化方法。
  18. 多段パイプライン構成を有し、連続する第1のサンプルの数とそれに続く第2のサンプルの組からなるシンボルを復号化する復号化装置における復号化方法であって、
    前記多段パイプライン構成によって前記シンボルの第2のサンプルを復号化し、
    前記シンボルに応じて、前記多段パイプライン構成の各段で処理されるサンプルの種類を表す識別信号を出力し、
    前記識別信号を前記多段パイプライン構成に同期して伝送し、
    前記シンボルの連続する第1のサンプルの数に応じて、前記多段パイプライン構成へのシンボル供給を制御し、
    伝送された前記識別信号に応じて、復号化された第2のサンプルを第1のサンプルと組み合わせて出力する
    ことを特徴とする復号化方法。
  19. 情報処理装置を制御することによって、該情報処理装置を請求項1乃至16の何れかに記載された復号化装置における前記制御手段として動作させることを特徴とするプログラム。
  20. 請求項19に記載されたプログラムが記録されたことを特徴とする記録媒体。
JP2004332084A 2004-11-16 2004-11-16 復号化装置およびその方法 Expired - Fee Related JP4502383B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004332084A JP4502383B2 (ja) 2004-11-16 2004-11-16 復号化装置およびその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004332084A JP4502383B2 (ja) 2004-11-16 2004-11-16 復号化装置およびその方法

Publications (3)

Publication Number Publication Date
JP2006148237A true JP2006148237A (ja) 2006-06-08
JP2006148237A5 JP2006148237A5 (ja) 2007-12-27
JP4502383B2 JP4502383B2 (ja) 2010-07-14

Family

ID=36627450

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004332084A Expired - Fee Related JP4502383B2 (ja) 2004-11-16 2004-11-16 復号化装置およびその方法

Country Status (1)

Country Link
JP (1) JP4502383B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62283778A (ja) * 1986-02-28 1987-12-09 Toshiba Corp 2値デ−タ伸長処理装置
JPH08167856A (ja) * 1994-10-12 1996-06-25 Matsushita Electric Ind Co Ltd ランレングス符号の復号回路
JPH118852A (ja) * 1998-06-19 1999-01-12 Mega Chips:Kk 画像圧縮伸張装置
JP2002094387A (ja) * 2000-09-19 2002-03-29 Matsushita Electric Ind Co Ltd 符号処理方法及び装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62283778A (ja) * 1986-02-28 1987-12-09 Toshiba Corp 2値デ−タ伸長処理装置
JPH08167856A (ja) * 1994-10-12 1996-06-25 Matsushita Electric Ind Co Ltd ランレングス符号の復号回路
JPH118852A (ja) * 1998-06-19 1999-01-12 Mega Chips:Kk 画像圧縮伸張装置
JP2002094387A (ja) * 2000-09-19 2002-03-29 Matsushita Electric Ind Co Ltd 符号処理方法及び装置

Also Published As

Publication number Publication date
JP4502383B2 (ja) 2010-07-14

Similar Documents

Publication Publication Date Title
JP4139330B2 (ja) 改良された可変長デコーダ
US7894532B2 (en) Variable-length encoding apparatus and method
JP5583106B2 (ja) データデコーディング
US8018996B2 (en) Arithmetic decoding apparatus and method
US6677869B2 (en) Arithmetic coding apparatus and image processing apparatus
US7501964B2 (en) Entropy coding for digital codecs
JP2012508485A (ja) Gpu加速を伴うソフトウエアビデオトランスコーダ
JP2008113374A (ja) エントロピー符号化装置
WO2007129508A1 (ja) 動画像処理方法、動画像処理方法のプログラム、動画像処理方法のプログラムを記録した記録媒体及び動画像処理装置
JP4785706B2 (ja) 復号装置及び復号方法
US7161509B2 (en) Variable-length code decoding apparatus and method
US20170359591A1 (en) Method and device for entropy encoding or entropy decoding video signal for high-capacity parallel processing
JP2006314097A (ja) 符号化装置及び符号化方法
WO2020263438A1 (en) Features of range asymmetric number system encoding and decoding
US7123656B1 (en) Systems and methods for video compression
US7643689B2 (en) Encoded data conversion method
JP4502383B2 (ja) 復号化装置およびその方法
JP2007074648A (ja) Cabac復号化装置
US8477051B2 (en) Variable-length code decoding apparatus, decoding system, and variable-length code decoding method
JP2006033161A (ja) 符号化処理装置
JP2005101731A (ja) 可変長符号復号化装置および可変長符号復号化方法
JP2010034802A (ja) 動画像符号化装置およびその制御方法
JP2004056417A (ja) 復号装置および復号方法
JP2004253889A (ja) 画像処理装置及び方法
JP2005277758A (ja) 画像復号装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071112

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071112

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100416

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100419

R150 Certificate of patent or registration of utility model

Ref document number: 4502383

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees