(57)【特許請求の範囲】
【請求項１】
入力原画像データから符号化パラメータと一連の直交変換係数シーケンスとを生成する画像データ変換部と、前記符号化パラメータを基に符号化データ列に含まれるヘッダ情報を構築するヘッダ情報処理部と、前記一連の直交変換係数シーケンスを順次符号化して符号化データ列に含まれる連続する複数の可変長符号からなる画像情報を生成する可変長符号符号化部とを備える画像処理装置であって、
前記ヘッダ情報処理部及び前記可変長符号符号化部とによって共有される記憶手段と、
前記ヘッダ情報処理部及び前記可変長符号符号化部のいずれについて前記記憶手段へのアドレス入力を許可するかを制御するアドレス入力許可手段と
をさらに備え、
前記記憶手段は、前記ヘッダ情報処理部の作業領域、及び、該ヘッダ情報処理部により生成され前記可変長符号符号化部により参照される可変長符号テーブルの格納領域として使用されることを特徴とする画像処理装置。
【請求項２】
前記ヘッダ情報処理部から前記可変長符号符号化部に向けて前記一連の直行変換係数シーケンスに対する符号化処理の動作開始指示を行なう指示手段と、
前記可変長符号符号化部から前記ヘッダ情報処理部に向けて前記一連の直行変換係数シーケンスに対する符号化処理の動作終了を通知する通知手段と、
前記符号化処理の動作開始指示を行なった後前記ヘッダ情報処理部を任意のタイミングで動作停止状態に移行するように制御する第一の制御手段と、
動作停止状態にあるヘッダ情報処理部が前記符号化処理の動作終了通知を受けて再び動作状態に戻るように制御する第二の制御手段と
をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
入力符号化データ列のヘッダ情報を解析して符号化パラメータを得るヘッダ情報処理部と、入力符号化データ列の連続する複数の可変長符号からなる画像情報を順次復号化して処理単位である一連の直行変換係数シーケンスを得る可変長符号復号化部と、前記符号化パラメータと前記一連の直行変換係数シーケンスを基に画像データを再構成する画像データ再構成部とを備える画像処理装置であって、
前記ヘッダ情報処理部及び前記可変長符号復号化部とによって共有される記憶手段と、
前記ヘッダ情報処理部及び前記可変長符号復号化部のいずれについて前記記憶手段へのアドレス入力を許可するかを制御するアドレス入力許可手段と
をさらに備え、
前記記憶手段は、前記ヘッダ情報処理部の作業領域、及び、該ヘッダ情報処理部により生成され前記可変長符号復号化部により参照される可変長符号テーブルの格納領域として使用されることを特徴とする画像処理装置。
【請求項４】
前記ヘッダ情報処理部から前記可変長符号復号化部に向けて前記連続する複数の可変長符号に対する復号化処理の動作開始指示を行なう指示手段と、
前記可変長符号復号化部から前記ヘッダ情報処理部に向けて前記連続する複数の可変長符号に対する復号化処理の動作終了通知を行なう通知手段と、
前記復号化処理の動作開始指示を行なった後、前記ヘッダ情報処理部を任意のタイミングで動作停止状態に移行させる第一の制御手段と、
動作停止状態にあるヘッダ情報処理部を前記復号化処理の動作終了通知を受けて再び動作状態に戻す第二の制御手段と
をさらに備えることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
入力原画像データから符号化パラメータと一連の直交変換係数シーケンスとを生成する画像データ変換工程と、前記符号化パラメータを基に符号化データ列に含まれるヘッダ情報を構築するヘッダ情報処理工程と、前記一連の直交変換係数シーケンスを順次符号化して符号化データ列に含まれる連続する複数の可変長符号からなる画像情報を生成する可変長符号符号化工程とを備える画像処理方法であって、
前記ヘッダ情報処理工程において記憶装置へアドレス情報を入力するための第１のアドレス入力工程と、
前記可変長符号符号化工程において前記記憶装置へアドレス情報を入力するための第２のアドレス入力工程と、
前記第１のアドレス入力工程及び前記第２のアドレス入力工程において入力されるアドレス情報のいずれかを選択して、前記記憶装置への前記選択されたアドレス情報の入力を可能とするアドレス情報選択工程と
を備え、
前記記憶装置は、前記ヘッダ情報処理工程における作業領域、及び、前記ヘッダ情報処理工程において生成され前記可変長符号符号化工程において参照される可変長符号テーブルの格納領域として使用されることを特徴とする画像処理方法。
【請求項６】
入力符号化データ列のヘッダ情報を解析して符号化パラメータを得るヘッダ情報処理工程と、入力符号化データ列の連続する複数の可変長符号からなる画像情報を順次復号化して処理単位である一連の直行変換係数シーケンスを得る可変長符号復号化工程と、前記符号化パラメータと前記一連の直行変換係数シーケンスを基に画像データを再構成する画像データ再構成工程とを備える画像処理方法であって、
前記ヘッダ情報処理工程において記憶装置へアドレス情報を入力するための第１のアドレス入力工程と、
前記可変長符号復号化工程において前記記憶装置へアドレス情報を入力するための第２のアドレス入力工程と、
前記第１のアドレス入力工程及び前記第２のアドレス入力工程において入力されるアドレス情報のいずれかを選択して、前記記憶装置への前記選択されたアドレス情報の入力を可能とするアドレス情報選択工程と
を備え、
前記記憶装置は、前記ヘッダ情報処理工程における作業領域、及び、前記ヘッダ情報処理工程において生成され前記可変長符号復号化工程において参照される可変長符号テーブルの格納領域として使用されることを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデジタル画像信号あるいはデジタル・ビデオ信号を符号化データ列に圧縮符号化して記録蓄積あるいは伝送するデジタル画像符号化を行うための画像処理装置、方法又は記憶媒体、及び符号化データ列を伸張復号化してデジタル画像信号あるいはデジタル・ビデオ信号に再構成するデジタル画像復号化を行うための画像処理装置、方法又は記憶媒体に関するものである。
【０００２】
【従来の技術】
多くのデジタル・カメラおよびデジタル・ビデオ・カムコーダが商品化されている。それらの中には撮影モードを切り替えることによって動画像を撮影記録することができるデジタル・カメラ、あるいは撮影モードを切り替えることによって静止画像を撮影記録することができるデジタル・ビデオ・カムコーダのように、複数の符号化方式の符号化処理手段および復号化処理手段を備えるものがある。一般的に、符号化方式が異なるとその符号化データ列のシンタックスも異なる。また多くの符号化方式において、扱われる符号化データ列は可変長符号と固定長符号とが混在して構成されている。
【０００３】
符号化データ列に含まれる情報は大きく２つに分類される。そのひとつは、ビデオ・シーケンス全体の共通符号化パラメータや、ピクチャ毎に異なる符号化パラメータに代表される所謂ヘッダ情報であり、もうひとつは画像情報そのものである。前記ヘッダ情報は、その一部が可変長符号語で構成されることもあるが、基本的には連続する複数個の固定長符号で構成される。一方の画像情報は、符号化データ列を構成する主要素であり、符号化効率を優先してそのほとんどが連続する複数個の可変長符号で構成される。
【０００４】
このような固定長符号と可変長符号とが混在する一般的な符号化データ列を高速に処理（符号化処理あるいは復号化処理）するためには、ヘッダ情報を扱う専用の処理部と画像情報を扱う専用の処理部とをそれぞれ個別に備え、これら２つの処理部を協働させて動作させるといった構成をとる、符号化処理装置あるいは復号化処理装置が知られている。さらに、ヘッダ情報を扱う専用の処理部は汎用のマイクロプロセッサにより構成され、処理のシーケンスはプログラムにより記述される技術が知られている。
【０００５】
ヘッダ情報処理部は、読み書き可能なメモリを作業領域として使用し、プログラム中の関数を呼出す場合にレジスタの値を退避したり、頻繁に使用する定数を格納したり、一時的に使用する変数を格納する。一方、可変長符号符号化処理部あるいは可変長符号復号化処理部は、メモリに格納された可変長符号テーブルを参照して可変長符号化処理あるいは可変長復号化処理を実行する。ここにおいて両メモリは独立したメモリとして構成されている。
【０００６】
このような手法では、例えば復号化処理を行なう場合、ヘッダ情報処理部は可変長符号復号化部が一連の直交変換係数シーケンスに対する復号化処理を行なっている期間中であっても常に動作しており（その上でプログラムが動作中であり）、少しでもヘッダ情報処理部によって進めることができる処理を前もって行なうことにより、停止状態で待機させた場合と比較して、全体の復号化処理にかかる時間の短縮を図っている。尚、ここで直交変換とは周波数変換を意味する。これ以降も同様である。
【０００７】
しかし、一般的に可変長符号復号化部が処理単位である一連の直交変換係数シーケンスに対する復号化処理を行なっている期間中に、同時に動作するヘッダ情報処理部によって進めるべき処理あるいは進めて意味のある処理はそう多くは無い。
【０００８】
その代表例である動きベクトルの再構築処理に必要とされる演算はごくわずかの実行ステップ数で済み、実際あらかじめプログラムによって指示された一連の処理を終えたヘッダ情報処理部は、可変長符号復号化部からの復号化処理の終了通知信号による割り込みを待つだけのアイドル・ルーチンを繰り返し実行していることがほとんどである。
【０００９】
割り込み入力待ち状態で、アイドル・ルーチンに陥っているヘッダ情報処理部が消費する電力は、その復号化処理装置を搭載するシステムが携帯性を重視する機器であるならば、あながち無視できるものではない。
【００１０】
また一般に、ヘッダ情報処理部における割り込み処理に際しては、割り込み処理ルーチンへ移行する際と元のルーチンに戻る際に、それぞれ所定数の実行ステップが消費されてしまう。画像符号化処理装置あるいは復号化処理装置のように単位時間あたりの割り込みイベントの発生回数が相対的に多いシステムでは、この割り込み処理に伴うオーバーヘッドの総計もまた無視できないものになる。
【００１１】
そこで、可変長符号符号化部あるいは可変長符号復号化部に向けて所定の処理単位に対する符号化処理、あるいは復号化処理の動作開始指示を発行した後に、ヘッダ情報処理部は処理すべき実行ステップが完了した時点でプログラム停止状態に移行する構成を採用することにより、ヘッダ情報処理部の不要な継続的動作を、全体的な処理時間を延長すること無く回避するとともに、処理中の割込みをなくし、かつ、システムとしての消費電力を最小限に抑えることができる。
【００１２】
このような手法を用いた場合、ヘッダ情報処理部がプログラム動作中の期間は可変長符号化部あるいは可変長復号化部はほとんど動作停止状態にある。逆に、可変長符号符号化部あるいは可変長復号化部が動作中の期間は、ヘッダ情報処理部はほとんどプログラム停止状態にある。
【００１３】
したがって、例えばJPEG符号化方式においては、固定長符号化されたヘッダ情報が連続する複数の可変長符号に先行して符号化データ列に配置されており、可変長符号テーブルはヘッダ情報処理部がヘッダ情報処理処理あるいは解析処理を行っている期間は使用されない。逆に、可変長符号符号化部あるいは可変長符号復号化部が連続する複数の可変長符号の符号化処理あるいは復号化処理を行っている期間は、ヘッダ情報処理部が行うべき処理はほとんどないためメモリ上に必要とする作業領域は少ない。
【００１４】
しかしながら、前述したように可変長符号テーブルを格納するメモリと、ヘッダ情報処理部が作業領域として使用するメモリは、独立したメモリとして構成されており、それぞれに必要とされるメモリ容量を加算した容量が全体として必要であるために使用効率がよくない。
【００１５】
また、ヘッダ情報処理部によって生成される可変長符号テーブルは可変長符号符号化部あるいは可変長符号復号化部が所有するメモリ内へ両者を接続するバス等を介して書込まれるので、１つの符号に対応したデータを書込む場合においても複数サイクルかかっている。例えばJPEG符号化方式の勧告で規定されている一つの色成分に対するＡＣ成分用ハフマン符号テーブルの要素は１６２個もあるので、これをそれぞれの要素に複数サイクルかけてメモリに書込む場合に必要な合計のサイクル数は無視できないものになる。
【００１６】
【発明が解決しようとする課題】
よって、本発明が解決しようとする課題は、可変長符号テーブルを格納するメモリと、ヘッダ情報処理部が作業領域として使用するメモリを、独立したメモリとして構成することに起因していたそれぞれのメモリへの非効率な使用を回避するとともに、可変長符号テーブルへ要素を書込む場合に必要なサイクルを削減することである。
【００１７】
【課題を解決するための手段】
前記課題を解決するための本発明に係る画像処理装置は以下のような構成を備える。入力原画像データから符号化パラメータと一連の直交変換係数シーケンスとを生成する画像データ変換部と、前記符号化パラメータを基に符号化データ列に含まれるヘッダ情報を構築するヘッダ情報処理部と、前記一連の直交変換係数シーケンスを順次符号化して符号化データ列に含まれる連続する複数の可変長符号からなる画像情報を生成する可変長符号符号化部とを備える画像処理装置であって、前記ヘッダ情報処理部及び前記可変長符号符号化部とによって共有される記憶手段と、前記ヘッダ情報処理部及び前記可変長符号符号化部のいずれについて前記記憶手段へのアドレス入力を許可するかを制御するアドレス入力許可手段とをさらに備える。ここにおいて前記記憶手段は、前記ヘッダ情報処理部の作業領域、及び、該ヘッダ情報処理部により生成され前記可変長符号符号化部により参照される可変長符号テーブルの格納領域として使用されることを特徴とする。
【００１８】
上記の課題を解決するために本発明に係る画像処理装置は以下のような構成を備える。入力符号化データ列のヘッダ情報を解析して符号化パラメータを得るヘッダ情報処理部と、入力符号化データ列の連続する複数の可変長符号からなる画像情報を順次復号化して処理単位である一連の直行変換係数シーケンスを得る可変長符号復号化部と、前記符号化パラメータと前記一連の直行変換係数シーケンスを基に画像データを再構成する画像データ再構成部とを備える画像処理装置であって、前記ヘッダ情報処理部及び前記可変長符号復号化部とによって共有される記憶手段と、前記ヘッダ情報処理部及び前記可変長符号復号化部のいずれについて前記記憶手段へのアドレス入力を許可するかを制御するアドレス入力許可手段とをさらに備え、前記記憶手段は、前記ヘッダ情報処理部の作業領域、及び、該ヘッダ情報処理部により生成され前記可変長符号復号化部により参照される可変長符号テーブルの格納領域として使用されることを特徴とする。
【００１９】
【発明の実施の形態】
[第１の実施形態]
以下、本発明の第１の実施形態を図面とともに説明する。図１は、本発明を適用した画像符号化装置の実施形態を表わす機能ブロック図である。図１において、１はプログラムの記述に従って動作する汎用マイクロ・プロセッサなどで構成されるヘッダ情報処理部、２は可変長符号符号化部、３は原画像データ入力信号、４は画像データ変換部、５はメモリ、６は符号化パラメータ信号、７は符号化データ列出力信号、８は動作開始指示信号、９は動作終了通知信号、１０はメモリ、１１は可変長符号符号化部２からメモリ１０へ出力されるアドレス信号、１２はヘッダ情報処理部１からメモリ１０へ出力されるアドレス信号、１３はメモリ１０への書込みデータ信号線、１４はメモリ１０への制御信号線である。１５は、メモリ１０に格納されたデータを読み出すための読出しデータ信号である。
【００２０】
さらに図３は、図１に示した画像符号化装置の実施形態におけるヘッダ情報処理部１および可変長符号符号化部２に係わる動作手順を表わすタイム・チャートである。また、図４は、同様に動作手順を表すフローチャートである。また、図５は、メモリ１０の使用状況を表すメモリ・マップである。図６ａは、本発明における符号化処理のフローチャートを示す。図７は、本発明におけるメモリ１０へのアドレス情報の入力制御のフローチャート示す。
【００２１】
以後、上記画像符号化装置の実施形態における動作形態について、その圧縮符号化処理に係わる一連の動作、特にヘッダ情報処理部１と可変長符号符号化部２との間での動作状態の切り替えタイミングを中心に図１、図３、図４、図５、図６ａ及び図７を用いて説明する。
【００２２】
原画像データ入力信号３を介して入力された原画像データ（Ｓ６０１）は、画像データ変換部４において所定の大きさの矩形ブロックに分割された後、そのブロック単位に直交変換演算が施され、演算結果として得られた直交変換係数が所定の順序で一次元データ列に配列される。その後、別途指定された量子化ステップ値によってスカラー量子化がなされ、量子化後の直交変換係数に対して０の値を持つ無意係数の連続数を表わすランレングスと、０以外の値を持つ有意な係数との組み合わせで表現された一連の直交変換係数シーケンスに変換される（Ｓ６０２）。
【００２３】
画像データ変換部４において生成された、矩形ブロック単位の画像データを表現する一連の直交変換係数シーケンスは、メモリ５に順次格納される。また、同画像データ変換部４において画像データの変換処理に使用された、量子化ステップ値に代表される符号化パラメータは、別途符号化パラメータ信号６を介してヘッダ情報処理部１によって順次読み出される。
【００２４】
ヘッダ情報処理部１は、メモリ１０へのアドレス信号としてヘッダ情報処理部１が生成するアドレス信号１２が選択されるように制御信号１４に'０'を出力する（t０）。これ以降、制御信号１４の値が変更されるまでの期間（t０ - t２）、メモリ１０はヘッダ情報処理部１に独占して使用される（Ｓ７０１、Ｓ７０２）。この期間（t０ - t２）、ヘッダ情報処理部１は、メモリ１０を読み書き可能な作業領域として使用し、プログラム中の関数を呼出す場合にレジスタの値を退避したり、頻繁に使用する定数を格納したり、一時的に使用する変数を格納する。特に、図５ａに示されるように、可変長符号テーブルをメモリ１０へ設定するまでの期間は（t０ - t１）、メモリ１０の全領域がヘッダ情報処理部１の作業領域５０１として使用できる。
【００２５】
さらに、ヘッダ情報処理部１は、内部のプログラムによって、同画像データ変換部４から符号化パラメータを符号化パラメータ信号６を介して読み出して、符号化データ列に含まれるヘッダ情報を構築して、そのヘッダ情報を符号化データ列出力信号７に出力する（t０ - t２、Ｓ１０１、Ｓ６０３）。
【００２６】
ヘッダ情報の符号化データ列出力信号７への出力が完了した後に（t１）、ヘッダ情報処理部１は、符号化パラメータに基づいて可変長符号テーブルをメモリ１０へ書込みデータ信号線１３を介して設定する（t１ - t２）。メモリ１０はヘッダ情報処理部１によって独占的に使用されているので、メモリ１０の書込み動作にかかる単位時間だけで可変長符号テーブルの１つの要素を書込むことが可能である。図５ｂに示されるように、メモリ１０へ可変長符号テーブルが設定された後は、メモリ１０の多くの領域は可変長符号テーブルが占める（t２ - tn、５０２）。ヘッダ情報処理部１が使用できる作業領域５０１はわずかになるが、ヘッダ情報処理処理のほとんどは完了しているので、これ以降のヘッダ情報処理を行うには十分な容量である。
【００２７】
出力する符号化データ列で、次に配置すべき符号が、画像情報、すなわち前記画像データ変換部４によって生成された一連の直交変換係数シーケンスを符号化した、連続する複数の可変長符号である場合には、ヘッダ情報処理部１は、まず、メモリ１０へのアドレス信号として可変長符号符号化部２が生成するアドレス信号１１が選択されるように制御信号１４に'１'を出力する（t２）。これ以降、制御信号１４の値が変更されるまでの期間、メモリ１０は可変長符号符号化部２によって可変長符号テーブルを参照するために独占して使用される（t２ - t３、Ｓ７０１、Ｓ７０３）。
【００２８】
さらに、ヘッダ情報処理部１は、可変長符号符号化部２に向けて所定の処理単位（例えばリスタート・マーカが挿入される処理単位）に対する符号化処理の動作開始指示を発行する（t２、Ｓ１０２）。ヘッダ情報処理部１によって発行された符号化処理の動作開始指示は専用の動作開始指示信号８によって可変長符号符号化部２に通知される（t２、Ｓ１０２）。
【００２９】
可変長符号符号化部２は、メモリ１０へのアドレス生成出力部と、メモリ１０の出力データとして得られる可変長符号を時系列で連結し符号化データ列を構築する連結部と、それらを制御する制御部とから構成される。メモリ１０は、メモリ５が保持する変換係数シーケンスの要素であるランレングス符号をアドレスとした場合、対応する可変長符号をデータとして蓄積している。前記制御部は、動作開始指示信号８による指示を受けた後、前記アドレス生成出力部に対して、メモリ５より順次ランレングス符号を入力しメモリ１０へのアドレスとしてアドレス信号１１へ出力するように制御する。前記連結部は、メモリ１０からの読出しデータ信号１５を通して順次入力される任意ビット長の可変長符号を一時的に蓄積し、時系列に連結し数バイト単位などの一定量に達した時点において後段へ出力する。前記制御部は、あらかじめ設定された処理単位の処理完了を検出した場合、前記アドレス生成出力部および前記連結部の動作を停止し、動作終了通知信号９を通して処理単位の終了をヘッダ情報処理部１へ通知する。
【００３０】
可変長符号符号化部２は動作開始指示信号８からの符号化処理に対する動作の開始指示を受けると（Ｓ１０８）、メモリ５から一連の直交変換係数シーケンスを順次読み出し、それぞれの変換係数シーケンスに対して別途メモリ１０に設定された可変長符号テーブルを参照しながら対応する可変長符号に順次変換して（Ｓ６０４）、結果として得られた連続する複数の可変長符号を符号化データ列出力信号７に出力する（t２ - t３、Ｓ１０９、Ｓ６０５）。
【００３１】
変換した一連の直交変換係数シーケンスのデータ量が処理単位に達したならば（Ｓ１１０）、可変長符号符号化部２はメモリ５からの直交変換係数シーケンスの読出し動作を停止し、ヘッダ情報処理部１に向けて処理単位の符号化処理が終了したことを通知すべく、動作終了通知信号９を出力する（t３、Ｓ１１１）。
【００３２】
一方、ヘッダ情報処理部１は可変長符号符号化部２に対して符号化処理の動作開始指示を発行した後、速やかにプログラム停止状態に移行する命令を発行する（t２、Ｓ１０３）。プログラム停止状態は一般的にサスペンド状態とも呼ばれる状態である。プログラム停止状態にある時ヘッダ情報処理部１内のすべてのステートマシンは停止し、外部から供給されている動作クロックもストップしている状態である（Ｓ１０４）。よって、プログラム停止状態にある時のヘッダ情報処理部１が消費する電力はごく僅かである。
【００３３】
前記プログラム停止状態にあるヘッダ情報処理部１は、外部から印加されるレジューム・イベント入力によって再び通常のプログラム動作状態に復帰することができる（Ｓ１０５）。本実施形態においては可変長符号符号化部２が出力した動作終了通知信号９が、レジューム・イベント入力信号のひとつとしてヘッダ情報処理部１に接続されている。
【００３４】
可変長符号符号化部２が処理単位に対する符号化処理が終了したことを通知すべく、ヘッダ情報処理部１に向けて発行した動作終了通知信号９が検知されると、ヘッダ情報処理部１には動作クロックが供給され、内部のステートマシンもその動作を開始し、結果的に ヘッダ情報処理部１上でのプログラムの動作が再開される（t３、Ｓ１０６）。
【００３５】
まず、ヘッダ情報処理部１は、メモリ１０へのアドレス信号としてヘッダ情報処理部１が生成するアドレス信号１２が選択されるように制御信号１４に'０'を出力する（t３）。これ以降、制御信号１４の値が変更されるまでの期間（t３ - t４）、メモリ１０はヘッダ情報処理部１に独占して使用される（Ｓ７０１、Ｓ７０２）。次に、再びそのプログラム動作を開始したヘッダ情報処理部１は、処理すべき直交変換係数シーケンスのデータがまだ存在する場合には（Ｓ１０７）、次の処理単位に係わるヘッダ情報を構築して、そのヘッダ情報を符号化データ列出力信号７に出力する（t３ - t４、Ｓ１０１）。その後、ヘッダ情報処理部１は可変長符号符号化部２に向けて次の処理単位に対する符号化処理の動作開始指示を発行する（t４、Ｓ１０２）。
【００３６】
ヘッダ情報処理部１が可変長符号符号化部２に対して符号化処理の動作開始指示を発行した後（t２、Ｓ１０２）、次の処理単位に対する符号化処理のために必要とされる処理は通常わずかなものであるので、ヘッダ情報処理部１はそう大きな時間差無くプログラム停止状態に移行する（t２、Ｓ１０３）。上記実施形態においては、ヘッダ情報処理部１が可変長符号符号化部２に対して符号化処理の動作開始指示を発行する時間と、ヘッダ情報部１がプログラム停止状態に移行する時間は同時である（t２）。しかし、次の処理単位がスライスの境界に位置するような場合（ＭＰＥＧ符号化方式）、あるいは、リスタート・インターバルの境界に位置するような場合（ＪＰＥＧ符号化方式）のように、シンタックスの階層的に特殊な位置にある場合は、次の処理単位に対する符号化処理のために必要とされる実行ステップ数は比較的多い。
【００３７】
[第２の実施形態]
以下、本発明の第２の実施形態を図面とともに説明する。図２は、本発明を適用した画像復号化装置の実施形態を表わす機能ブロック図である。図２において、２１はプログラムの記述に従って動作する汎用マイクロ・プロセッサなどで構成されるヘッダ情報処理部、２２は可変長符号復号化部、２３は符号化データ列入力信号、２４はメモリ、２５は画像データ再構成部、２６は符号化パラメータ信号、２７は動作開始指示信号、２８は動作終了通知信号、２９は再構成画像データ出力信号、３０はメモリ、３１は可変長符号復号化部２２からメモリ３０へ出力されるアドレス信号、３２はヘッダ情報処理部２１からメモリ３０へ出力されるアドレス信号、３３はメモリ３０への書込みデータ信号線、３４はメモリ３０への制御信号線である。３５は、メモリ１０に格納されたデータを読み出すための読出しデータ信号である。
【００３８】
さらに図３は、図２に示した画像復号化装置の実施形態におけるヘッダ情報処理部２１および可変長符号復号化部２２に係わる動作手順を表わすタイム・チャートである。また、図４は、同様に動作手順を表すフローチャートである。また、図５は、メモリ３０の使用状況を表すメモリ・マップである。図６ｂは本発明における復号化処理のフローチャートである。図７は、本発明におけるメモリ３０へのアドレス情報の入力制御のフローチャートである。
【００３９】
以後、上記画像復号化装置の実施形態における動作形態について、その伸張復号化処理に係わる一連の動作、特にヘッダ情報処理部２１と可変長符号復号化部２２との間での動作状態の切り替えタイミングを中心に、図２、図３、図４、図５、図６ｂ及び図７を用いて説明する。
【００４０】
ヘッダ情報処理部１は、メモリ３０へのアドレス信号としてヘッダ情報処理部２１が生成するアドレス信号３２が選択されるように制御信号３４に'０'を出力する（t０）。これ以降、制御信号３４の値が変更されるまでの期間（t０ - t２）、メモリ３０はヘッダ情報処理部２１に独占して使用される（Ｓ７０１、Ｓ７０２）。この期間（t０ - t２）、ヘッダ情報処理部２１は、メモリ３０を読み書き可能な作業領域として使用し、プログラム中の関数を呼出す場合にレジスタの値を退避したり、頻繁に使用する定数を格納したり、一時的に使用する変数を格納する。特に、図５ａに示されるように、可変長符号テーブルをメモリ３０へ設定するまでの期間は（t０ - t１）、メモリ３０の全領域がヘッダ情報処理部２１の作業領域として使用できる。
【００４１】
符号化データ列入力信号２３を介して入力された符号化データ列（Ｓ６０６）は、ヘッダ情報処理部２１および可変長符号復号部２２の両方にそれぞれ供給される。ヘッダ情報処理部２１は内部プログラムによって符号化データ列入力信号２３から符号化データ列に含まれるヘッダ情報を読み出して、その内容を解析して得られた符号化パラメータを符号化パラメータ信号２６を介して画像データ再構成部２５に出力する（t０ - t２、Ｓ１０１、Ｓ６０７）。
【００４２】
符号化データ列中のヘッダ情報の解析処理が完了した後に（t１）、ヘッダ情報処理部２１は、取得された符号化パラメータに基づいて可変長符号テーブルをメモリ３０へ書込みデータ信号線３３を介して設定する（t１ - t２）。メモリ３０はヘッダ情報処理部２１によって独占的に使用されているので、メモリ３０の書込み動作にかかる単位時間だけで可変長符号テーブルの１つの要素を書込むことが可能である。図５ｂに示されるように、メモリ３０へ可変長符号テーブルが設定された後は、メモリ３０の多くの領域は可変長符号テーブルが占める（t２ - tn）。ヘッダ情報処理部２１が使用できる作業領域はわずかになるが、ヘッダ情報解析処理のほとんどは完了しているので、これ以降のヘッダ情報処理を行うには十分な容量である。
【００４３】
入力符号化データ列で次に続く符号が、画像情報、すなわち一連の直交変換係数シーケンスを符号化処理した連続する複数の可変長符号である場合には、ヘッダ情報処理部２１は、まず、メモリ３０へのアドレス信号として可変長符号複号化部２２が生成するアドレス信号３１が選択されるように制御信号３４に'１'を出力する（t２）。これ以降、制御信号３４の値が変更されるまでの期間、メモリ３０は可変長符号復号化部２２によって可変長符号テーブルを参照するために独占して使用される（t２ - t３、Ｓ７０１、Ｓ７０３）。さらに、ヘッダ情報処理部２１は、可変長符号復号化部２２に向けて所定の処理単位（例えばリスタート・マーカが挿入される処理単位）に対する復号化処理の動作開始指示を発行する（t２、Ｓ１０２）。ヘッダ情報処理部２１によって発行された復号化処理の動作開始指示は専用の動作開始指示信号２７によって可変長符号復号化部２２に通知される（t２、Ｓ１０２）。
【００４４】
可変長符号復号化部２２は、一定の単位で符号化データ列入力信号２３より入力した符号化データ列から可変長符号を抜き出す抽出部と、その可変長符号を入力しメモリ３０へのアドレスを生成し出力するアドレス生成出力部と、メモリ３０の出力データとして得られるランレングス符号を後段へ出力する出力部と、それらを制御する制御部とから構成される。メモリ３０は、符号化データ列入力信号２３より入力される要素である可変長符号に関連した値をアドレスとした場合、対応するランレングス符号をデータとして蓄積している。前記制御部は、動作開始指示信号２７による指示を受けた後、前記抽出部に対して、符号化データ列入力信号２３より順次符号化データ列を入力し可変長符号を抽出するように制御する。さらに前記制御部は、前記アドレス生成出力部に対して、前記抽出部より順次可変長符号を入力しメモリ３０へのアドレスへ変換した後アドレス信号３１へ出力するように制御する。前記出力部は、メモリ３０からの読出しデータ信号３５を通して順次入力されるランレングス符号を後段へ出力する。前記制御部は、あらかじめ設定された処理単位の処理完了を検出した場合、前記抽出部、前記アドレス生成出力部、前記出力部の動作を停止し、動作終了通知信号２８を通して処理単位の終了をヘッダ情報処理部２１へ通知する。
【００４５】
可変長符号復号化部２２は動作開始指示信号２７からの復号化処理に対する動作の開始指示を受けると（S１０８）、符号化データ列入力信号２３から連続する複数の可変長符号を順次読み出し、それぞれの可変長符号に対して別途メモリ３０に設定された可変長符号テーブルを参照しながら対応する直交変換係数シーケンスに順次変換して、結果として得られた一連の直交変換係数シーケンスをメモリ２４に出力する（t２ - t３、Ｓ１０９、Ｓ６０８）。
【００４６】
メモリ２４に格納された矩形ブロック単位の画像データを表現する、一連の直交変換係数シーケンスが、画像データ再構成部２５によって順次読み出される。また、画像データの変換処理に使用された、量子化ステップ値に代表される符号化パラメータは、別途符号化パラメータ信号２６を介してヘッダ情報処理部２１から同画像データ再構成部２５に順次供給されている。
【００４７】
メモリ２４から読み出された一連の直交変換係数シーケンスに含まれる有意係数に対して、別途指定された量子化ステップ値によってスカラー逆量子化がなされ、所定の順序で一次元データ列に配列されていた直交変換係数が再び二次元配列に戻された後、そのブロック単位に直交逆変換演算が施され、矩形ブロックの再構成画像データに復元され（Ｓ６０９）、最終的に再構成された画像データが再構成画像データ出力信号２９を介して出力される（Ｓ６１０）。
【００４８】
変換した一連の直交変換係数シーケンスのデータ量が処理単位に達したならば（Ｓ１１０）、可変長符号復号化部２２は符号化データ列入力信号２３からの可変長符号の読出し動作を停止し、ヘッダ情報処理部２１に向けて処理単位の復号化処理が終了したことを通知すべく動作終了通知信号２８を出力する（t３、Ｓ１１１）。
【００４９】
一方、ヘッダ情報処理部２１は可変長符号復号化部２２に対して復号化処理の動作開始指示を発行した後、速やかにプログラム停止状態に移行する命令を発行する（t２、Ｓ１０３）。プログラム停止状態は一般的にサスペンド状態とも呼ばれる状態である。プログラム停止状態にある時ヘッダ情報処理部２１内のすべてのステートマシンは停止し、外部から供給されている動作クロックもストップしている状態である（Ｓ１０４）。よって、プログラム停止状態にある時のヘッダ情報処理部２１が消費する電力はごく僅かである。
【００５０】
前記プログラム停止状態にあるヘッダ情報処理部２１は、外部から印加されるレジューム・イベント入力によって再び通常のプログラム動作状態に復帰することができる（Ｓ１０５）。本実施形態においては、可変長符号復号化部２２が出力した動作終了通知信号２８が、レジューム・イベント入力信号のひとつとしてヘッダ情報処理部２１に接続されている。
【００５１】
可変長符号復号化部２２が処理単位に対する復号化処理が終了したことを通知すべく、ヘッダ情報処理部２１に向けて発行した動作終了通知信号２８が検知されると、ヘッダ情報処理部２１には動作クロックが供給され、内部のステートマシンもその動作を開始し、結果的にヘッダ情報処理部２１上でのプログラムの動作が再開される（t３、Ｓ１０６）。まず、ヘッダ情報処理部２１は、メモリ３０へのアドレス信号としてヘッダ情報処理部２１が生成するアドレス信号３２が選択されるように制御信号３４に'０'を出力する（t３）。これ以降、制御信号３４の値が変更されるまでの期間（t３ - t４）、メモリ３０はヘッダ情報処理部２１に独占して使用される（Ｓ７０１、Ｓ７０２）。次に、再びそのプログラム動作を開始したヘッダ情報処理部２１は、処理すべき符号化データ列がまだ存在する場合には（Ｓ１０７）、符号化データ列入力信号２３から続くヘッダ情報を読み出してその情報の正当性を評価する（t３ - t４、Ｓ１０１）。その後、ヘッダ情報処理部２１は可変長符号復号化部２２に向けて次の処理単位に対する復号化処理の動作開始指示を発行する（t４、Ｓ１０２）。
【００５２】
ヘッダ情報処理部２１が可変長符号復号化部２２に対して復号化処理の動作開始指示を発行した後（t２、Ｓ１０２）、次の処理単位に対する復号化処理のために必要とされる処理は通常わずかなものであるので、ヘッダ情報処理部２１はそう大きな時間差無くプログラム停止状態に移行する（t２、Ｓ１０３）。上記実施形態においては、ヘッダ情報処理部２１が可変長符号復号化部２２に対して復号化処理の動作開始指示を発行する時間と、ヘッダ情報部２１がプログラム停止状態に移行する時間は同時である（t２）。しかし、次の処理単位がスライスの境界に位置するような場合（ＭＰＥＧ符号化方式）、あるいはリスタート・インターバルの境界に位置するような場合（ＪＰＥＧ符号化方式）のように、シンタックスの階層的に特殊な位置にある場合や、あるいは符号化データ列中で検出された符号誤りに対する各種補償動作が必要な場合は、次の処理単位に対する復号化処理のために必要とされる実行ステップ数は比較的多い。
【００５３】
[他の実施形態]
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００５４】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５５】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５６】
【発明の効果】
以上述べたように、本発明においては、固定長符号と可変長符号とが混在する一般的な符号化データ列を高速に処理（符号化処理あるいは復号化処理）するために、ヘッダ情報を扱う専用の処理部（ヘッダ情報処理部１およびヘッダ情報処理部２１）と、画像情報を扱う専用の処理部（可変長符号符号化部２および可変長符号復号化部２２）とを協働させて動作させる構成において、さらに、可変長符号符号化部と可変長符号復号化部により参照される可変長符号テーブルとヘッダ情報処理部が使用する作業領域を単一のメモリへ格納するように構成したので、メモリが効率的に使用できるようになり、また、全体として必要とされるメモリ容量を削減できる。
【００５７】
さらに、可変長符号テーブルへ要素を書込む場合に必要なサイクルが１サイクルに短縮され、全体の処理性能を向上させることができる。
【図面の簡単な説明】
【図１】本発明における画像符号化装置の実施形態を表わす機能ブロック図である。
【図２】本発明における画像復号化装置の実施形態を表わす機能ブロック図である。
【図３】本発明の画像符号化装置および画像復号化装置における動作形態を表わすタイムチャートである。
【図４】本発明の画像符号化、復号化処理の流れを示したフローチャートである。
【図５ａ】本発明のメモリ１０およびメモリ３０の使用状況を表すメモリ・マップである。
【図５ｂ】本発明のメモリ１０およびメモリ３０の使用状況を表すメモリ・マップである。
【図６ａ】本発明における符号化処理のフローチャートである。
【図６ｂ】本発明における復号化処理のフローチャートである。
【図７】本発明におけるメモリ１０及びメモリ３０へのアドレス情報の入力制御のフローチャートである。
【図１】
0003927801.tif 000002
【図２】
0003927801.tif 000003
【図３】
0003927801.tif 000004
【図４】
0003927801.tif 000005
【図５ａ】
0003927801.tif 000006
【図５ｂ】
0003927801.tif 000007
【図６ａ】
0003927801.tif 000008
【図６ｂ】
0003927801.tif 000009
【図７】
0003927801.tif 000010