JP2007259323A - 画像復号化装置 - Google Patents
画像復号化装置 Download PDFInfo
- Publication number
- JP2007259323A JP2007259323A JP2006083969A JP2006083969A JP2007259323A JP 2007259323 A JP2007259323 A JP 2007259323A JP 2006083969 A JP2006083969 A JP 2006083969A JP 2006083969 A JP2006083969 A JP 2006083969A JP 2007259323 A JP2007259323 A JP 2007259323A
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- unit
- data
- arithmetic code
- arithmetic
- 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.)
- Pending
Links
Images
Landscapes
- 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
【課題】算術符号復号化処理を行えると共に、算術符号復号化処理後に続く複数の別の復号化処理を所定のデータ単位でパイプライン処理することができ、しかも少ないバッファメモリ容量にて画像の復号化処理を破綻させることなく行える画像復号化装置を提供することである。
【解決手段】算術符号復号部102と、可変長符号復号部112と、共有のバッファメモリ106とを備えている。算術符号復号部102は、算術符号化された画像データを入力し、この算術符号化された画像データの算術符号の復号化のみで2値化された状態の符号列を出力する。可変長符号復号部112は、算術符号復号部102から出力される符号列を可変長符号復号化する。バッファメモリ106は、例えばDRAMで構成されていて、算術符号復号部102及び可変長符号復号部112の間でデータの授受(受け渡し)を行う共有のメモリである。
【選択図】図1
【解決手段】算術符号復号部102と、可変長符号復号部112と、共有のバッファメモリ106とを備えている。算術符号復号部102は、算術符号化された画像データを入力し、この算術符号化された画像データの算術符号の復号化のみで2値化された状態の符号列を出力する。可変長符号復号部112は、算術符号復号部102から出力される符号列を可変長符号復号化する。バッファメモリ106は、例えばDRAMで構成されていて、算術符号復号部102及び可変長符号復号部112の間でデータの授受(受け渡し)を行う共有のメモリである。
【選択図】図1
Description
本発明は、算術符号化された画像データの算術符号復号化及びこの算術符号復号化に続く別の一連の復号化処理を行う画像復号化装置に関する。
「ITU-T Recommendation H.264/ISO/IEC 14496-10 AVC」では、MPEG2などと異なり算術符号化という新しいエントロピー符号化方式が採用されている。算術符号化は、シンボル系列の出現確率に応じて確率数直線を区分分割し、分割された区間内の位置を示す2進小数値をその系列に対する符号とするものであり、符号列を算術演算により逐次的に構成していく符号化である。
H.264/AVC(Advanced Video Coding)においてエントロピー符号化の一つとして用いられている算術符号の復号化処理は、1つのビットの復号化処理が完了しないと、それに続く次の復号化処理を開始することができないため、並列化が困難である。
従来のMPEG2などの動画像符号復号化装置は、復号化処理を行う幾つかのハードウェア(可変長復号部、逆量子化部、逆DCT部、動き補償部など)が1つのCPUに接続し、パイプラインを構成し、ブロック単位でパイプライン動作で処理していた。
従来のMPEG2などの動画像符号復号化装置は、復号化処理を行う幾つかのハードウェア(可変長復号部、逆量子化部、逆DCT部、動き補償部など)が1つのCPUに接続し、パイプラインを構成し、ブロック単位でパイプライン動作で処理していた。
しかしながら、H.264/AVCに準拠した動画像符号復号化装置においては、復号化処理を行うハードウェアとしては、算術符号復号部、逆量子化/逆DCT部、動き補償/イントラ予測部、ブロッキングフィルタ部などが必要とされる。このようなハードウェア構成の場合は、逆量子化/逆DCT部、動き補償/イントラ予測部、ブロッキングフィルタ部などでの処理はマクロブロック単位で行える。しかし、算術符号復号部の処理時間は見積もることが難しく、マクロブロック処理用に割り当てられた処理時間を大きく超えることもある。従って、算術符号復号部の処理は、処理速度として非常に高速のものが要求された。それにも関わらず、算術符号復号部の処理速度が遅く、パイプライン動作で処理を行おうとすると、パイプライン処理が破綻してしまい目標とする性能を達成できない場合があった。
従来はこの問題を解決するために、CPUモジュール全体の周波数を上げて目標とする性能を満たす設計をする必要があった。しかし、算術符号復号部の処理性能を上げて算術符号復号部以外のハードウェアの処理時間と同等な処理時間とするように設計するには、回路規模を非常に大きくすることが必要であった。
例えば特許文献1には、H.264/AVCに準拠した算術符号化・復号の処理プロセスの具体的な実現方法として、高速処理可能な算術符号化・復号化装置が提案されている。しかしながら、この算術符号化・復号化装置は、算術符号化・復号化処理についてのみ述べられており、算術符号化・復号化処理以降に続く別の一連の復号化処理については述べられてなく、特に別の一連の復号化処理を所定のデータ単位即ちマクロブロック単位でパイプライン処理する例については全く記載されていない。
特開2005−130099号公報
そこで、本発明は上記の問題に鑑み、算術符号復号化処理を行えると共に、算術符号復号化処理後に続く複数の別の復号化処理を所定のデータ単位でパイプライン処理することができ、しかも少ないバッファメモリ容量にて画像の復号化処理を破綻させることなく行える画像復号化装置を提供することを目的とするものである。
本願発明の一態様によれば、算術符号化された画像データを入力とし、この算術符号化された画像データの算術符号の復号化のみで2値化された状態の符号列を出力とする算術符号復号部と、前記算術符号復号部から出力される前記符号列を復号する可変長符号復号部と、前記算術符号復号部及び前記可変長符号復号部の間でデータの授受を行う共有のバッファメモリと、を具備したことを特徴とする画像復号化装置が提供される。
また、本願発明のもう1つの態様によれば、算術符号化された画像データを入力とし、この算術符号化された画像データの算術符号を復号したデータを出力とする算術符号復号化手段と、前記算術符号復号化手段から出力されるデータを、パイプライン処理を行って出力する画像出力手段と、前記算術符号復号化手段及び前記画像出力手段の間でデータの授受を行う共有のバッファメモリと、を具備したことを特徴とする画像復号化装置が提供される。
さらに、本願発明のもう1つの態様によれば、算術符号化された画像データを入力し、この入力された画像データを予め決められた時間内に算術符号復号化処理を行って出力する第1の復号化処理手段と、前記第1の復号化処理手段で処理した画像データを、一時記憶するバッファメモリと、前記バッファメモリから読み出した画像データを入力し、この入力された画像データに対して所定のデータ単位で複数の別の復号化処理をパイプライン動作で行う第2の復号化処理手段と、を具備したことを特徴とする画像復号化装置が提供される。
本発明によれば、算術符号復号化処理を行える共に、算術符号復号化処理後に続く複数の別の復号化処理を所定のデータ単位でパイプライン処理することができ、しかも少ないバッファメモリ容量にて画像の復号化処理を破綻させることなく行うことができる画像復号化装置を提供することができる。
発明の実施の形態について図面を参照して説明する。
図1乃至図8で本発明の実施形態を説明する前に、図9を参照してH.264/AVCに準拠した動画像符号復号化装置として考えられる一般的な構成例を説明する。
図1乃至図8で本発明の実施形態を説明する前に、図9を参照してH.264/AVCに準拠した動画像符号復号化装置として考えられる一般的な構成例を説明する。
図9に示す動画像符号復号化装置は、復号化処理を行う複数(図では4つ)のハードウェア152〜155が1つのCPU151に接続し、パイプラインを構成している。CPU151は、制御信号線181でDMA(Direct Memory Access)コントローラ160に接続する一方、制御信号線182で4つのハードウェア152〜155に接続している。4つのハードウェアは、算術符号復号部152、逆量子化/逆整数変換部である逆量子化/逆DCT部153、動き補償/イントラ予測部154、デブロッキングフィルタ部155である。これらハードウェア152〜155は、CPU151の前記制御信号線182と、DMAコントローラ160に接続したデータ転送線172との間に、入出力メモリ156〜159を介在して並列に接続している。データ転送線171は、DMAコントローラ160とバッファメモリであるDRAM(Dynamic Random Access Memory)161とを接続している。
CPU151は、4つのハードウェア152〜155の起動及び終了を含む動作を監視し制御する一方、DMAコントローラ160を制御している。DMAコントローラ160は、CPUを介さずに各ハードウェアとDRAMとの間で直接データ転送を行わせる機能を有する。DRAM161は、図示しない画像生成手段から供給された算術符号化された画像データを保持している。画像生成手段は、DVDなどの蓄積媒体に対して画像データを記録再生する記録再生装置などである。
このような構成において、前記4つのハードウェア152〜155のうち、逆量子化/逆DCT部153、動き補償/イントラ予測部154、デブロッキングフィルタ部155などの処理は、マクロブロック単位で行える。しかし、算術符号復号部152の処理は、その特徴上、2値化したデータを1ビットごとに確率を決めて処理していかなければならず処理時間を見積もることが難しく、マクロブロック処理用の時間を超えることもある。従って、算術符号復号部152の処理は、マクロブロック単位よりも大きな単位(即ち、スライス、ピクチャ、或いは、所定時間(例えば1秒)単位など)で行うことが望ましい。
[第1の実施形態]
図1は本発明の第1の実施形態の画像復号化装置を示すブロック図である。
図1に示す画像復号化装置は、第1の復号化処理手段としての算術符号復号化装置100と、第2の復号化処理手段としての復号化処理装置110と、バッファメモリとしてのDRAM106とを備えている。
図1は本発明の第1の実施形態の画像復号化装置を示すブロック図である。
図1に示す画像復号化装置は、第1の復号化処理手段としての算術符号復号化装置100と、第2の復号化処理手段としての復号化処理装置110と、バッファメモリとしてのDRAM106とを備えている。
算術符号復号化装置100は、算術符号化された画像データを入力し、この算術符号化された画像データに対してマクロブロック単位よりも大きな単位(即ち、スライス、ピクチャ、或いは、予め決められた時間(例えば1秒)単位など)で算術符号の復号化を行い、binValストリームを出力する。binValストリームは、算術符号復号化のみで2値化を解いていない中間状態の符号列であって、例えばH.264/AVCに準拠した可変長の2値化符号列である。なお、「binVal」は、バイナリーバリュー(即ち2値)を意味する。
復号化処理装置110は、算術符号復号化装置100から出力される符号列を復号する可変長符号復号装置としてのbinValストリーム復号化部112を含み、マクロブロック単位で複数の予め決められた別の復号化処理をパイプライン動作で行う。
DRAM106は、算術符号復号化装置100と復号化処理装置110がデータの授受(受け渡し)を行うための共有のバッファメモリである。
DRAM106は、算術符号復号化装置100と復号化処理装置110がデータの授受(受け渡し)を行うための共有のバッファメモリである。
算術符号復号化装置100は、プログラムやデータを格納するメモリ101-1を備え、算術符号復号部102及びDMAコントローラ105を制御するCPU101と、算術符号化された画像データを入力し算術符号復号したbinValストリームを出力する算術符号復号部102と、DRAM106から出力される算術符号化された画像データを一時格納し、算術符号復号部102へ出力する入力メモリ103と、算術符号復号部102から出力される算術符号復号化したbinValストリームを一時格納し、DRAM106へ出力する出力メモリ104と、入力メモリ103及び出力メモリ104とDRAM106との間に介在してデータのDMA転送を行うDMAコントローラ105と、データ転送線131,132と、制御信号線141,142と、を有している。
復号化処理装置110は、プログラムやデータを格納するメモリ101-1を備え、制御信号線144,143を介して、binValストリーム復号化部112,逆量子化/逆整数変換部としての逆量子化/逆DCT部113,動き補償/イントラ予測部114,デブロッキングフィルタ部115及びDMAコントローラ120を制御するCPU111と、前記算術符号復号部102で復号化されたbinValストリームを復号するbinValストリーム復号化部112と、逆量子化/逆DCT変換などを行う逆量子化/逆DCT部113と、動き補償/イントラ予測部114と、ブロック歪みを減少させるためのデブロッキングフィルタ部115と、DRAM106から転送されるbinValストリームデータを一時格納し、binValストリーム復号化部112へ入力する入力メモリ116と、binValストリーム復号化部112で可変長符号復号化されたデータを一時格納し、逆量子化/逆DCT部113へ出力する入出力メモリ117と、逆量子化/逆DCT部113で逆量子化/逆DCT変換されたデータを一時格納し、動き補償/イントラ予測部114へ出力する入出力メモリ118と、動き補償/イントラ予測部114で動き補償/イントラ予測されたデータを一時格納し、デブロッキングフィルタ部115へ出力、及び、デブロッキングフィルタ部115からDRAM106へ出力する入出力メモリ119と、入出力メモリ116〜119とDRAM106との間に介在してデータのDMA転送を行うDMAコントローラ120と、データ転送線133,134と、制御信号線143,144と、を有している。
DRAM106は、画像生成手段(図示せず)から入力メモリ103へ供給するための入力画像データを記憶する機能と、出力メモリ104から出力される算術符号復号化されたbinValストリームを一時記憶する機能と、入出力メモリ119からのデブロッキング処理された出力画像データを記憶し、表示装置などの画像出力装置(図示せず)へ供給する機能とを少なくとも有し、算術符号復号化装置100と復号化処理装置110との間でデータの授受を行うための共有のバッファメモリである。
上記の構成において、図示しない画像生成手段から供給された算術符号化された画像データが予めDRAM106に格納され、算術符号復号化装置100内の入力メモリ103を経由して算術符号復号部102へ転送される。算術符号復号部102は、算術符号復号化処理のうち算術符号復号のみを行い、2値化されたままの中間データであるbinValストリームを出力メモリ104を経由してDRAM106に一時記憶する。
算術符号復号部102の復号処理は、予め決められた時間例えば1秒間ごとにその時間内に行われて、その復号されたデータがDRAM106に記憶される。予め決められた時間を経過すると、DRAM106はDMAコントローラ120の制御によってbinValストリームデータを入力メモリ116を経由して復号化処理装置110内のbinValストリーム復号化部112へ転送する。binValストリーム復号化部112は、算術符号復号化のみされた2値の中間状態の符号列を入力しマクロブロック単位で可変長符号復号し、入出力メモリ117を経由して逆量子化/逆DCT部113へ転送する。逆量子化/逆DCT部113は、可変長符号復号化されたデータをマクロブロック単位で逆量子化/逆DCT変換し、入出力メモリ118を経由して動き補償/イントラ予測部114へ転送する。動き補償/イントラ予測部114は、逆量子化/逆DCT変換されたデータをマクロブロック単位で動き補償/イントラ予測し、入出力メモリ119を経由してデブロッキングフィルタ部115へ転送する。そして、デブロッキングフィルタ部115は、動き補償/イントラ予測された画像データをマクロブロック単位でデブロッキングフィルタリング(ブロック歪み軽減)し、入出力メモリ119を経由してDRAM106へ転送する。DRAM106は、デブロッキングフィルタリングされた画像データを一旦記憶し、その記憶した画像データを図示しない画像出力装置に合った速度で読み出して出力する。
このような第1の実施形態の特徴を、以下に列記する。
(1)算術符号復号化装置100と復号化処理装置110との共有のバッファメモリであるDRAM106に、算術符号復号化装置100で算術符号復号化した中間データであるbinValストリームが予め決められた時間(例えば1秒)内に書き込まれた後に、その書き込まれたデータが復号化処理装置110に転送されて、マクロブロック単位で複数の予め決められた別の復号化処理(binValストリーム復号化,逆量子化/逆DCT変換,動き補償/イントラ予測,デブロッキングフィルタリングの各動作)がパイプライン処理で行われる。すなわち、DRAM106は、一時的に中間データを保存し、次の別の処理のために保持しておく機能を有し、画像復号化装置全体を通して共有のバッファメモリとして使用される。
(1)算術符号復号化装置100と復号化処理装置110との共有のバッファメモリであるDRAM106に、算術符号復号化装置100で算術符号復号化した中間データであるbinValストリームが予め決められた時間(例えば1秒)内に書き込まれた後に、その書き込まれたデータが復号化処理装置110に転送されて、マクロブロック単位で複数の予め決められた別の復号化処理(binValストリーム復号化,逆量子化/逆DCT変換,動き補償/イントラ予測,デブロッキングフィルタリングの各動作)がパイプライン処理で行われる。すなわち、DRAM106は、一時的に中間データを保存し、次の別の処理のために保持しておく機能を有し、画像復号化装置全体を通して共有のバッファメモリとして使用される。
(2)復号化処理装置110は、パイプライン処理を並列的に順次行う複数のハードウェアを備え、DRAM106に一時記憶されているbinValストリームをマクロブロック単位で読み出して、順次ハードウェア112〜115でマクロブロック単位でそれぞれの復号化処理を行う。
(3)算術符号復号化処理を、算術符号復号部102とbinValストリーム復号化部112とに分けることにより、少ない容量のバッファメモリにて動画像の復号化処理を破綻させることなく行うことができる。binValストリーム復号化部112による可変長符号復号化処理は、パイプライン処理側である復号化処理装置110に配置してbinValストリームをマクロブロック単位でパイプライン処理で行うことが可能である。従って、算術符号復号化処理の一部を高速化することができる。
(3)算術符号復号化処理を、算術符号復号部102とbinValストリーム復号化部112とに分けることにより、少ない容量のバッファメモリにて動画像の復号化処理を破綻させることなく行うことができる。binValストリーム復号化部112による可変長符号復号化処理は、パイプライン処理側である復号化処理装置110に配置してbinValストリームをマクロブロック単位でパイプライン処理で行うことが可能である。従って、算術符号復号化処理の一部を高速化することができる。
(4)算術符号復号化装置100は、H.264/AVCで定義されている例えばスライス単位で算術符号復号化処理を行った後、スライス単位ごとに処理を行っていき、スライス単位でDRAM106にbinValストリームデータを格納していく。DRAM106では、スライス単位ごとに格納されたデータを、予め決められた時間(例えば1秒)経過するごとに復号化処理装置110へ転送していく。H.264/AVCでは、1秒間にどれくらいのデータ量を処理しなければならないかが、規格上決められている。スライス単位の処理時間をt1、H.264/AVCで予め決められた処理時間をt2とすれば、t1≦t2の関係となる。
(5)(4)のことから、算術符号復号化装置100は算術符号復号化処理の時間が長くかかる場合が多く、処理時間を短くし、例えばマクロブロック単位の高速処理とするためには、回路規模が非常に大きくなる(算術符号復号化の処理時間は、ばらつきが大きく、かなり高いパフォーマンスのハードウェアを作らなければならない)が、算術符号復号化ハードウェアとして処理能力の低いものを使っても、DRAM106に一旦蓄えてから次段の復号化処理装置110にデータ転送して、マクロブロック単位のパイプライン処理に移行することができる。すなわち、前段の算術符号復号化のハードウェアの動作周波数をリーズナブルな周波数とすることが可能であり、処理速度として非常な高速なものを用意しなくても動作させることができる。
(6)算術符号復号化の処理単位を2つに分けることにより、算術符号復号部102を含む装置100と算術符号復号以降のbinValストリーム復号化を含む復号化処理を行う装置110の実行単位を独立にすることにより、後者の装置110の中で必要以上に周波数を上げることなく、マクロブロック単位のパイプラインを構成でき、復号化処理を行うことができる。
(7)算術符号復号を行う第1のCPUモジュール(100)と可変長符号復号以降を行う第2のCPUモジュール(110)で分け、かつ第1,第2のCPUモジュール間で共有のバッファメモリ(106)を有することにより、第1のCPUモジュールで処理したデータをバッファメモリで保持し、この保持したデータを直ぐに第2のCPUモジュールでの処理に使用することができ、各CPUモジュールごとにバッファメモリを設けるのに比べて、バッファメモリ上に保持するテンポラリのデータ量を削減できる。
(7)算術符号復号を行う第1のCPUモジュール(100)と可変長符号復号以降を行う第2のCPUモジュール(110)で分け、かつ第1,第2のCPUモジュール間で共有のバッファメモリ(106)を有することにより、第1のCPUモジュールで処理したデータをバッファメモリで保持し、この保持したデータを直ぐに第2のCPUモジュールでの処理に使用することができ、各CPUモジュールごとにバッファメモリを設けるのに比べて、バッファメモリ上に保持するテンポラリのデータ量を削減できる。
図2は前記算術符号復号部102の構成のブロック図を示している。
図2において、前記算術符号復号部102は、入力バッファメモリ(以下単に入力バッファという)201と、算術符号復号部202と、出力比較部204と、状態保持部205と、確率情報保持部206と、出力バッファァメモリ(以下単に出力バッファ)203と、を備えている。
図2において、前記算術符号復号部102は、入力バッファメモリ(以下単に入力バッファという)201と、算術符号復号部202と、出力比較部204と、状態保持部205と、確率情報保持部206と、出力バッファァメモリ(以下単に出力バッファ)203と、を備えている。
前記状態保持部205は、データの状態を保持するもので、文法上、どういう意味の符号列のものを復号しているかの状態(1番目,2番目,…)を保持している。
前記出力比較部204は、算術符号復号化が終了したか否かの判定をして、終了した段階で、このデータは何かを前記状態保持部205に保持する。
前記出力比較部204は、算術符号復号化が終了したか否かの判定をして、終了した段階で、このデータは何かを前記状態保持部205に保持する。
前記確率情報保持部206は、算術符号復号部202がこのデータを復号しているので、次のデータの確率は何かを知るためにある。確率情報保持部206は、次のビットを復号するときに利用されるもので、確率の分かったものを算術符号復号部202に入れて、次のビットの確率を計算している。つまり、確率情報保持部206は、状態保持部205でのデータの状態と、復号したデータの結果によって、次のデータの復号の確率を計算する。
算術符号復号部102では、算術符号化した画像データを入力し、1ビットずつ復号していくと、可変長符号化されたようなデータが出力される。このデータがbinValストリームである。
図3は前記binValストリーム復号化部112の構成のブロック図を示している。
図3において、前記binValストリーム復号化部112は、入力バッファ301と、可変長符号復号部302と、状態保持部303と、を備えている。
図3において、前記binValストリーム復号化部112は、入力バッファ301と、可変長符号復号部302と、状態保持部303と、を備えている。
可変長符号復号部302にはテーブルが多数用意されている。状態保持部303は、多数のテーブルのうちのどれを使いなさいという指示を出す。前記状態保持部303は、可変長符号復号部302がbinValストリーム(符号列)のどのシンボルを復号しているかをカウントしている。どの可変長符号復号化テーブルを使ったらよいかは、binValストリームの2値化符号列から分かる。このテーブルと一致するとこういう意味になるから次はこういう別のテーブルを使うというように、ストリーム復号化が進んでいく。
次に、図2の算術符号復号部102での処理、図3のbinValストリーム復号化部112での処理を、それぞれ図4のフローチャート、図5のフローチャートを参照して説明する。CPU101,CPU111のそれぞれの制御に基づく処理フローである。
以下に、図4を参照して、算術符号復号部102での処理を説明する。
(1)入力バッファ201が空であるか否か判定し、空であると、入力メモリ103より算術符号化されたデータを取り込み、取り込んだデータを入力バッファ201に一度保持する(ステップS1)。
(1)入力バッファ201が空であるか否か判定し、空であると、入力メモリ103より算術符号化されたデータを取り込み、取り込んだデータを入力バッファ201に一度保持する(ステップS1)。
(2)現在のデータの状態により、復号するデータの確率情報を確率情報保持部206で決定し、算術符号復号部202に入力する(ステップS2)。
(3)算術符号復号部202では、入力バッファ201からのデータ、及び確率情報により復号を行う。このときに、出力バッファ203には算術符号の復号のみを行い、まだ2値化されたままのデータ(binValストリーム)を出力する。また、算術符号復号部202からの出力を出力比較部204に入力し、次のデータの状態を決定して状態保持部205に入力する(ステップS3)。
(3)算術符号復号部202では、入力バッファ201からのデータ、及び確率情報により復号を行う。このときに、出力バッファ203には算術符号の復号のみを行い、まだ2値化されたままのデータ(binValストリーム)を出力する。また、算術符号復号部202からの出力を出力比較部204に入力し、次のデータの状態を決定して状態保持部205に入力する(ステップS3)。
(4)出力バッファ203がデータが一杯になったか否かを判定し、データが一杯になったらば出力メモリ104にデータを出力する。このデータをbinValストリームとする(ステップS5,S6)。
(5)状態保持部205の状態を更新し終了状態か否かを判定し、終了状態であれば、算術符号復号化の処理を終了し、終了状態でなければ、次のデータの算術符号復号化を行う(ステップS7)。
(6)状態保持部205の状態が終了状態であれば、算術符号復号化の処理を終了し、データをDRAM106に書き込む(ステップS8)。
(5)状態保持部205の状態を更新し終了状態か否かを判定し、終了状態であれば、算術符号復号化の処理を終了し、終了状態でなければ、次のデータの算術符号復号化を行う(ステップS7)。
(6)状態保持部205の状態が終了状態であれば、算術符号復号化の処理を終了し、データをDRAM106に書き込む(ステップS8)。
以下に、図5を参照して、binValストリーム復号化部112での処理を説明する。
(1)DRAM106に書き込まれているbinValストリームデータを読み出す(ステップS11)。
(2)入力バッファ301が空であるか否か判定し、空であると、入力メモリ116よりbinValストリームデータを取り込み、取り込んだデータを入力バッファ301に一度保持する(ステップS12,S13)。
(1)DRAM106に書き込まれているbinValストリームデータを読み出す(ステップS11)。
(2)入力バッファ301が空であるか否か判定し、空であると、入力メモリ116よりbinValストリームデータを取り込み、取り込んだデータを入力バッファ301に一度保持する(ステップS12,S13)。
(3)状態保持部303より現在のデータの状態を可変長符号復号部302に入力する。可変長符号復号部302にて現在の状態により可変長符号復号化テーブルを決定し、入力バッファ301からのデータと比較を行い、復号を行い、出力メモリ117にデータを出力する(ステップS14,S15)。
(4)状態保持部303の状態を更新し終了状態か否かを判定し、終了状態であれば、binValストリーム復号処理を終了し、終了状態でなければ次のデータのbinValストリーム復号処理を行う(ステップS16)。
(4)状態保持部303の状態を更新し終了状態か否かを判定し、終了状態であれば、binValストリーム復号処理を終了し、終了状態でなければ次のデータのbinValストリーム復号処理を行う(ステップS16)。
図6はBスライス時のマクロブロックタイプの2値化変換テーブルを示し、図7はBスライス時のサブマクロブロックタイプの2値化変換テーブルを示している。
図6、図7に示すようなBスライス時のマクロブロックタイプ、及びサブマクロブロックタイプの2値化変換テーブルが、H.264の規格書に定義されている。
図6、図7に示すようなBスライス時のマクロブロックタイプ、及びサブマクロブロックタイプの2値化変換テーブルが、H.264の規格書に定義されている。
図1における算術符号復号部102の出力、及び、binValストリーム復号化部112の入力のビット列(一部)が以下のようであった場合、
1111111100010110011000110
binValストリーム復号化部112中では、規格書に定義されている各符号列(シンタックス)の出現順及び図6、図7の2値化変換テーブルを用いて以下のように復号を行う。
1111111100010110011000110
binValストリーム復号化部112中では、規格書に定義されている各符号列(シンタックス)の出現順及び図6、図7の2値化変換テーブルを用いて以下のように復号を行う。
算術符号復号後 binValストリーム復号後の
の2値列 マイクロブロックタイプ値
111111 → 22(B_8x8)
11000 → 3(B_Bi_8x8)
101 → 2(B_L1_8x8)
100 → 1(B_L0_8x8)
11000 → 3(B_Bi_8x8)
[第2の実施形態]
図8は本発明の第2の実施形態の画像復号化装置を示すブロック図である。
本実施形態で、図1の実施形態と同一部部には同一符号を付して説明する。
図8に示す画像復号化装置は、算術符号復号化手段100Aと、画像出力手段110Aと、バッファメモリとしてのDRAM106と、を備えている。
の2値列 マイクロブロックタイプ値
111111 → 22(B_8x8)
11000 → 3(B_Bi_8x8)
101 → 2(B_L1_8x8)
100 → 1(B_L0_8x8)
11000 → 3(B_Bi_8x8)
[第2の実施形態]
図8は本発明の第2の実施形態の画像復号化装置を示すブロック図である。
本実施形態で、図1の実施形態と同一部部には同一符号を付して説明する。
図8に示す画像復号化装置は、算術符号復号化手段100Aと、画像出力手段110Aと、バッファメモリとしてのDRAM106と、を備えている。
前記算術符号復号化手段100Aは、図9の算術符号復号部152に相当する機能(即ち図1における算術符号復号部102とbinValストリーム復号化部112の両方の機能)を有するものであって、算術符号化された画像データを入力とし、この算術符号化された画像データの算術符号を復号したデータを出力とする。
前記画像出力手段110Aは、逆量子化/逆DCT部113、動き補償/イントラ予測部114、及び、デブロッキングフィルタ部115を含み、前記算術符号復号化手段100Aから出力されるデータを、パイプライン処理を行って出力する。
DRAM106は、算術符号復号化手段100Aと画像出力手段110Aとの間でデータの授受(受け渡し)を行う共有のバッファメモリである。
DRAM106は、算術符号復号化手段100Aと画像出力手段110Aとの間でデータの授受(受け渡し)を行う共有のバッファメモリである。
上記の構成においては、図示しない画像生成手段から供給された算術符号化された画像データは予めDRAM106に格納され、算術符号復号化手段100A内の入力メモリ103を経由して算術符号復号部102Aへ転送される。
算術符号復号化手段100Aは、図1のように処理単位を2つに分けることなく図1における算術符号復号部102とbinValストリーム復号化部112の両方の機能を備えており、内部では、算術符号の復号のみで2値化を解いていない可変長の2値化データを生成しかつその可変長の2値化データをbinValストリーム復号(即ち、図6、図7の2値化変換テーブルを用いて復号化)したものを出力する。従って、算術符号復号化手段100Aでは、H.264/AVCで規定される、予め決められた時間(例えば1秒)内に算術符号復号化処理が行われ、その算術符号復号化されたデータが出力メモリ104を経由してDRAM106に一時記憶される。
算術符号復号化手段100Aは、図1のように処理単位を2つに分けることなく図1における算術符号復号部102とbinValストリーム復号化部112の両方の機能を備えており、内部では、算術符号の復号のみで2値化を解いていない可変長の2値化データを生成しかつその可変長の2値化データをbinValストリーム復号(即ち、図6、図7の2値化変換テーブルを用いて復号化)したものを出力する。従って、算術符号復号化手段100Aでは、H.264/AVCで規定される、予め決められた時間(例えば1秒)内に算術符号復号化処理が行われ、その算術符号復号化されたデータが出力メモリ104を経由してDRAM106に一時記憶される。
予め決められた時間を経過すると、DRAM106は算術符号復号化されたデータを入力メモリ116を経由して画像出力手段110A内の逆量子化/逆DCT部113へ転送する。逆量子化/逆DCT部113は、算術符号復号化されたデータをマクロブロック単位で逆量子化/逆DCT変換し、入出力メモリ118を経由して動き補償/イントラ予測部114へ転送する。動き補償/イントラ予測部114は、逆量子化/逆DCT変換されたデータをマクロブロック単位で動き補償/イントラ予測し、入出力メモリ119を経由してデブロッキングフィルタ部115へ転送する。そして、デブロッキングフィルタ部115は、動き補償/イントラ予測された画像データをマクロブロック単位でデブロッキングフィルタリング(ブロック歪み軽減)し、入出力メモリ119を経由してDRAM106へ転送する。DRAM106は、デブロッキングフィルタリングされた画像データを一旦記憶し、その記憶した画像データを図示しない画像出力装置に合った速度で読み出して出力する。
このような第2の実施形態によれば、算術符号化された画像データを予め決められた時間内に算術符号復号化処理を行う装置100Aと、装置100Aで算術符号復号化処理された画像データをパイプライン動作を行って出力する装置110Aとで実行単位を分けたことにより、後者の装置110Aの中で必要以上に周波数を上げることなく、マクロブロック単位のパイプライン動作による復号化処理を行うことができる。
なお、以上述べた本発明の実施形態では、画像復号化装置は動画像の復号化を行うものであったが、本発明は動画像の復号化に限らず、静止画像の復号化についても適用することが可能である。また、本発明の実施形態では、データを処理する際の単位としてマクロブロック単位について説明しているが、本発明はマクロブロック単位に限らず、ブロック単位などであってもよい。
なお、以上述べた本発明の実施形態では、画像復号化装置は動画像の復号化を行うものであったが、本発明は動画像の復号化に限らず、静止画像の復号化についても適用することが可能である。また、本発明の実施形態では、データを処理する際の単位としてマクロブロック単位について説明しているが、本発明はマクロブロック単位に限らず、ブロック単位などであってもよい。
100…算術符号復号化装置(第1の復号化処理手段)
110…復号化処理装置(第2の復号化処理手段)
102…算術符号復号部
106…DRAM(バッファメモリ)
112…binValストリーム復号化部(可変長符号復号部)
100A…算術符号復号化手段
110A…画像出力手段
110…復号化処理装置(第2の復号化処理手段)
102…算術符号復号部
106…DRAM(バッファメモリ)
112…binValストリーム復号化部(可変長符号復号部)
100A…算術符号復号化手段
110A…画像出力手段
Claims (5)
- 算術符号化された画像データを入力とし、この算術符号化された画像データの算術符号の復号化のみで2値化された状態の符号列を出力とする算術符号復号部と、
前記算術符号復号部から出力される前記符号列を復号する可変長符号復号部と、
前記算術符号復号部及び前記可変長符号復号部の間でデータの授受を行う共有のバッファメモリと、
を具備したことを特徴とする画像復号化装置。 - 前記算術符号復号部から出力される前記符号列は、スライス単位であることを特徴とする請求項1に記載の画像復号化装置。
- 算術符号化された画像データを入力とし、この算術符号化された画像データの算術符号を復号したデータを出力とする算術符号復号化手段と、
前記算術符号復号化手段から出力されるデータを、パイプライン処理を行って出力する画像出力手段と、
前記算術符号復号化手段及び前記画像出力手段の間でデータの授受を行う共有のバッファメモリと、
を具備したことを特徴とする画像復号化装置。 - 前記画像出力手段は、逆量子化/逆整数変換部、動き補償/イントラ予測部、及び、デブロッキングフィルタ部を含むことを特徴とする請求項3に記載の画像復号化装置。
- 算術符号化された画像データを入力し、この入力された画像データを予め決められた時間内に算術符号復号化処理を行って出力する第1の復号化処理手段と、
前記第1の復号化処理手段で処理した画像データを、一時記憶するバッファメモリと、
前記バッファメモリから読み出した画像データを入力し、この入力された画像データに対して所定のデータ単位で複数の別の復号化処理をパイプライン動作で行う第2の復号化処理手段と、
を具備したことを特徴とする画像復号化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006083969A JP2007259323A (ja) | 2006-03-24 | 2006-03-24 | 画像復号化装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006083969A JP2007259323A (ja) | 2006-03-24 | 2006-03-24 | 画像復号化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007259323A true JP2007259323A (ja) | 2007-10-04 |
Family
ID=38633054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006083969A Pending JP2007259323A (ja) | 2006-03-24 | 2006-03-24 | 画像復号化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007259323A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008294669A (ja) * | 2007-05-23 | 2008-12-04 | Toshiba Corp | 画像符号化装置 |
JP2009177356A (ja) * | 2008-01-22 | 2009-08-06 | Canon Inc | 画像復号化装置及び画像復号化方法 |
JP2010041115A (ja) * | 2008-07-31 | 2010-02-18 | Canon Inc | 画像処理装置および画像処理方法 |
WO2012111315A1 (ja) * | 2011-02-16 | 2012-08-23 | パナソニック株式会社 | ストリーム生成装置、ストリーム生成方法、ストリーム処理装置、およびストリーム処理方法 |
CN112911278A (zh) * | 2021-01-28 | 2021-06-04 | 北京安兔兔科技有限公司 | 一种图像解码性能测试方法及装置 |
-
2006
- 2006-03-24 JP JP2006083969A patent/JP2007259323A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008294669A (ja) * | 2007-05-23 | 2008-12-04 | Toshiba Corp | 画像符号化装置 |
JP2009177356A (ja) * | 2008-01-22 | 2009-08-06 | Canon Inc | 画像復号化装置及び画像復号化方法 |
JP2010041115A (ja) * | 2008-07-31 | 2010-02-18 | Canon Inc | 画像処理装置および画像処理方法 |
WO2012111315A1 (ja) * | 2011-02-16 | 2012-08-23 | パナソニック株式会社 | ストリーム生成装置、ストリーム生成方法、ストリーム処理装置、およびストリーム処理方法 |
JPWO2012111315A1 (ja) * | 2011-02-16 | 2014-07-03 | パナソニック株式会社 | ストリーム生成装置、ストリーム生成方法、ストリーム処理装置、およびストリーム処理方法 |
CN112911278A (zh) * | 2021-01-28 | 2021-06-04 | 北京安兔兔科技有限公司 | 一种图像解码性能测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11647190B2 (en) | Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and program | |
US7898445B2 (en) | Entropy coding apparatus | |
JP6085065B2 (ja) | 画像圧縮伸長装置 | |
JP2015128318A (ja) | 画像符号化装置および画像符号化方法 | |
US9001882B2 (en) | System for entropy decoding of H.264 video for real time HDTV applications | |
JP2007300517A (ja) | 動画像処理方法、動画像処理方法のプログラム、動画像処理方法のプログラムを記録した記録媒体及び動画像処理装置 | |
US9380314B2 (en) | Pixel retrieval for frame reconstruction | |
US20110013696A1 (en) | Moving image processor and processing method for moving image | |
JP2010288166A (ja) | 動画像符号化装置、放送波記録装置及び、プログラム | |
JP2007259323A (ja) | 画像復号化装置 | |
JP3940672B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2010178319A (ja) | 画像符号化装置及び画像符号化方法 | |
JP2006279574A (ja) | 復号装置と方法 | |
JPH10271516A (ja) | 圧縮符号化装置、符号化方法、復号化装置および復号化方法 | |
US7586426B2 (en) | Image coding apparatus and method thereof | |
US8406306B2 (en) | Image decoding apparatus and image decoding method | |
JP2002112268A (ja) | 圧縮画像データ復号装置 | |
CN106686380B (zh) | 采用基于多块的流水线的增强型数据处理设备及操作方法 | |
US6512852B1 (en) | Method and apparatus for concatenating bits of odd-length words | |
CN115297331A (zh) | 一种视频数据处理方法、装置、设备及系统 | |
JP2018125882A (ja) | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム | |
US20120183234A1 (en) | Methods for parallelizing fixed-length bitstream codecs | |
US20110007082A1 (en) | Macroblock grouping in a destination video frame to improve video reconstruction performance | |
US20080273595A1 (en) | Apparatus and related method for processing macroblock units by utilizing buffer devices having different data accessing speeds | |
US10244248B2 (en) | Residual processing circuit using single-path pipeline or multi-path pipeline and associated residual processing method |