(57)【特許請求の範囲】
【請求項１】
画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号装置において、
ブロック単位の符号データが所定の目標符号量を超えないように符号量を制御する符号量制御手段と、
ブロック単位の符号データが所定の目標符号量に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加する書き込み位置調整手段と、
符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするメモリ手段と、
前記メモリ手段から読み出された固定長符号データを復号する固定長符号復号手段と、
メモリ手段から読み出された固定長符号データからスタッフビットを除去するダミーデータ除去手段とを有し、
所定のブロック単位に固定長符号データを前記メモリ手段に保存し、かつ、メモリ手段から読み出し、前記メモリから読み出されたスタッフビットを含む固定長符号データを前記固定長符号復号手段で復号し、前記メモリから読み出された固定長符号データから前記ダミーデータ除去手段によりスタッフビットを除去して可変長符号データに変換することを特徴とする画像符号化復号装置。
【請求項２】
画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号装置において、
ブロック単位の符号データが所定の第１の目標符号量を超えないように符号量を制御する符号量制御手段と、
ブロック単位の符号データが所定の第２の目標符号量（第２の目標符号量は第１の目標符号量以上である）に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加する書き込み位置調整手段と、
符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするメモリ手段と、
前記メモリ手段から読み出された固定長符号データを復号する固定長符号復号手段と、
メモリ手段から読み出された固定長符号データからスタッフビットを除去するダミーデータ除去手段とを有し、
所定のブロック単位に固定長符号データを前記メモリ手段に保存し、かつ、メモリ手段から読み出し、前記メモリから読み出されたスタッフビットを含む固定長符号データを前記固定長符号復号手段で復号し、前記メモリから読み出された固定長符号データから前記ダミーデータ除去手段によりスタッフビットを除去して可変長符号データに変換することを特徴とする画像符号化復号装置。
【請求項３】
直前ブロックのＤＣ係数を参照しないで符号化対象ブロックを可変長符号化する可変長符号化手段を設けることにより、直前ブロックに依存しない符号データを生成する請求項１または２記載の画像符号化復号装置。
【請求項４】
符号データのＤＣ係数のみ復号するＤＣ係数復号手段と、
直前ブロックのＤＣ係数との差分を符号化するＤＣ差分符号化手段と、
前記メモリ手段から読み出された符号データのＡＣ係数の符号とＤＣ差分符号化手段から出力されたＤＣ差分の符号を結合して可変長符号データを出力する符号結合手段とを有し、所定のブロック単位に可変長符号データを出力することを特徴とする請求項３記載の画像符号化復号装置。
【請求項５】
画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号用コンピュータプログラムにおいて、
符号量制御手段が、ブロック単位の符号データが所定の目標符号量を超えないように符号量を制御するステップと、
書き込み位置調整手段が、ブロック単位の符号データが所定の目標符号量に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加するステップと、
メモリ手段が、符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするステップと、
固定長符号復号手段が、前記メモリ手段から読み出された固定長符号データを復号するステップと、
ダミーデータ除去手段が、メモリ手段から読み出された固定長符号データからスタッフビットを除去するステップとをコンピュータに実行させ、
所定のブロック単位に固定長符号データを前記メモリ手段に保存し、かつ、メモリ手段から読み出し、前記メモリから読み出されたスタッフビットを含む固定長符号データを前記固定長符号復号手段で復号し、前記メモリから読み出された固定長符号データから前記ダミーデータ除去手段によりスタッフビットを除去して可変長符号データに変換することを特徴とする画像符号化復号用コンピュータプログラム。
【請求項６】
画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号用コンピュータプログラムにおいて、
符号量制御手段が、ブロック単位の符号データが所定の第１の目標符号量を超えないように符号量を制御するステップと、
書き込み位置調整手段が、ブロック単位の符号データが所定の第２の目標符号量（第２の目標符号量は第１の目標符号量以上である）に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加するステップと、
メモリ手段が、符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするステップと、
固定長符号復号手段が、前記メモリ手段から読み出された固定長符号データを復号するステップと、
ダミーデータ除去手段が、メモリ手段から読み出された固定長符号データからスタッフビットを除去するステップとをコンピュータに実行させ、
所定のブロック単位に固定長符号データを前記メモリ手段に保存し、かつ、メモリ手段から読み出し、前記メモリから読み出されたスタッフビットを含む固定長符号データを前記固定長符号復号手段で復号し、前記メモリから読み出された固定長符号データから前記ダミーデータ除去手段によりスタッフビットを除去して可変長符号データに変換することを特徴とする画像符号化復号用コンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、可変長符号化された画像データの切り貼り処理や回転処理に適した画像符号化復号装置に関するものである。
【０００２】
【従来の技術】
一般にカラープリンタなどで取り扱われる画像データはデータ量が大きく、例えば、Ａ４で６００ｄｐｉのＹＭＣＫ４色（３２［ｂｉｔ／ｐｉｘｅｌ］）のカラー画像データは１３９ＭＢ程度のデータ量となる。このため、通常は画像データを圧縮してデータ量を削減する符号化処理が施される。
【０００３】
例えば、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  ＥｘｐｅｒｔｓＧｒｏｕｐ）において標準化されたＪＰＥＧ  Ｂａｓｅｌｉｎｅ符号化方式（以下、ＪＰＥＧ方式）は、ディジタル化された画像データをＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）変換し、変換後の係数（以下、ＤＣＴ係数）を量子化して量子化インデックスを作成し、量子化インデックスをエントロピー符号化することによって画像データを符号化する。
【０００４】
ＪＰＥＧ方式では画像データを８×８画素のブロックに分割して符号化処理を実施する。各ブロックの８×８個の画素データは、２次元ＤＣＴ変換により８×８個のＤＣＴ係数に変換され、６４個のＤＣＴ係数は各係数ごとに量子化ステップサイズを定めた量子化テーブルを用いて、係数ごとに異なるステップサイズで量子化される。
【０００５】
量子化されたＤＣＴ係数の直流成分（以下、ＤＣ係数）は直前に符号化したブロックとのＤＣ係数の差分（以下、ＤＣ差分）が求められ、ＤＣ差分がグループ化される。このグループ化によりＤＣ差分はグループ番号とＤＣ差分の値を示す付加ビットに分けられ、グループ番号はハフマン符号化、ＤＣ差分は算術符号化によって符号化される。
【０００６】
ＤＣＴ係数の交流成分（以下、ＡＣ係数）はジグザグスキャンによって１次元に並び直され、連続する０の係数はランレングス符号化、０以外のＡＣ係数はグループ化されてハフマン符号化される。
【０００７】
ＪＰＥＧなどのように直前ブロックを参照する符号化方式では、回転処理を行う場合に問題が生ずる。図１４を用いて回転処理を行う場合の問題点を説明する。図１４は、２×２画素のブロックに分割された画像データに対して時計回りに９０度回転処理を行う場合を説明する図である。図１４において、細線で表されたものは画素、太線で表されたものはブロックであり、ａ〜ｐは各画素、ｘはブロックである。また、図１４（ａ）は回転前の参照ブロック、図１４（ｂ）は回転後の参照ブロックを示す図である。図１４（ａ）において、ブロックｘは画素ｃ、ｄ、ｇ、ｈからなる直前のブロックを参照して符号化される。ところが、画素ａ〜ｐに対して時計回りに９０度回転処理を行うと図１４（ｂ）のように各画素の位置が変更され、ブロックｘの直前ブロックが画素ａ、ｂ、ｅ、ｆからなるブロックとなる。このように回転処理を行うと復号時に参照するブロックが符号化時と異なってしまうため、回転処理を施した符号データは参照ブロックの位置がずれて正確に復号できなくなるという問題がある。符号データの回転処理を実施する場合は、回転処理の前に復号処理を実施し、復号された画像に回転処理を実施して、再度符号化処理を実施しなければならない。
【０００８】
次に可変長符号化方式に符号量制御を適用した従来例を説明する。
【０００９】
ＪＰＥＧなどハフマン符号化を用いる符号化方式は可変長符号化方式であるため、ブロック毎に符号データの長さが異なるという性質を有する。
【００１０】
可変長符号化方式で符号化された符号データをメモリやハードディスクなどの記憶媒体に保存する場合、保存する符号データが記憶容量の上限を越えないようにするため、所定の目標符号量を越えないような符号データにすることが望ましい。
【００１１】
例えば、第１の従来例として特開平１０−２００８９２号公報の提案がある。この提案を図１５に示す。図１５において、１５０４は量子化部、１５０９はＤＣＴ係数処理部、１５１１はゼロ検出回路、１５１２はカウンタ、１５１６は遅延調整回路、１５１７は比較器、１５１９は論理回路である。量子化部１５０４は、ＤＣＴ係数を受けとって量子化し、量子化されたＤＣＴ係数をＤＣＴ係数処理部１５０９に送出する。量子化されたＤＣＴ係数は、まずＤＣ成分が送られ、これに続いて６３個のＡＣ成分が送られる。これら量子化されたＤＣＴ係数は、遅延調整回路１５１６を介して論理回路１５１７で論理処理されて出力される。また、カウンタ１５１２はブロック中の非ゼロのＡＣ係数を計数し、計数値が所定値より小さいときは「１」を出力し、所定値以上になると「０」を出力する。カウンタ１５１２は、量子化部１５０４からＤＣ計数が出力されたタイミングでリセットされる。ゼロ検出回路１５１１およびカウンタ１５１２により非ゼロのＡＣ係数を係数する。カウンタ１５１２が所定値に達すると比較器１５１５の出力は「１」から「０」に反転し、この結果、それ以降の非ゼロのＡＣ係数も論理回路１５１７によって強制的にゼロにされる。
【００１２】
このように、第１の従来例では、量子化されたＡＣ係数の０でない値をカウントし、そのカウント値に基づいて量子化されたＡＣ係数の０でない部分をそのまま出力するか、量子化されたＡＣ係数の０でない部分を強制的に０にして出力するデータ処理部を有し、いくつかのＡＣ係数の０でない部分のデータを切り捨てることにより圧縮データ量を減少させるように構成して所定の目標符号量を越えないようにしている。
【００１３】
また、第２の従来例として特開平５−１６１１０８号公報の提案がある。この提案を図１６に示す。図１６において、１６２１はＦＤＣＴ部、１６２２は量子化部、１６２３は量子化テーブル（１）、１６２４は量子化テーブル（２）、１６２５はＤＰＣＭ部、１６２６はランレングス符号化部、１６２７はハフマン符号化部、１６２８は生成符号量カウンタ、１６２９はハフマン復号部、１６３０はＤＰＣＭ復調部、１６３１はランレングス復号部、１６３２は逆量子化部、１６３３は逆ＦＤＣＴ部である。生成符号量カウンタ１６２８はブロックラインごとに生成符号量を測定し、全符号量が目標符号量に納まるように量子化テーブル１６２３、１６２４をブロックラインごとに切り替える。
【００１４】
第２の従来例では、符号化中にブロックライン毎に符号量を測定する手段と、複数個の量子化テーブルと、前記量子化テーブルを切り換える手段とを備え、ブロックライン毎に符号量を測定し、その結果によってブロックライン毎に量子化テーブルを切り換えて生成符号量を所定の目標符号量に制御するようにしている。
【００１５】
【発明が解決しようとする課題】
しかしながら、所定の目標符号量を越えないようにする従来技術では、目標符号量に満たない符号データは可変長であるため、画像全体の符号データに対して各ブロックの符号データがどの位置にあるかを一意的に判別できない。
【００１６】
符号化された画像データに対して部分的な切り貼り処理や回転処理などを行う場合、処理対象の部分画像をアクセスする必要があるが、従来技術では処理対象となる符号データをアクセスする位置が判別できないので、先頭の符号データから処理対象の符号データまで復号する必要があり、処理対象以外の符号データも復号するため、切り貼り処理や回転処理などの処理効率が低下するという問題があった。
【００１７】
また、上記で説明しているように直前ブロックを参照する符号化方式では、回転処理により復号時の参照ブロックが符号化時と異なってしまうので、回転処理を実施する前に符号データを復号する必要があり、処理対象以外の符号データも復号するため、処理効率が低下するという問題があった。
【００１８】
【課題を解決するための手段】
本発明によれば、上述の問題を解消するために、特許請求の範囲に記載のとおりの構成を採用している。
【００１９】
すなわち、本発明の一側面によれば、画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号装置に：ブロック単位の符号データが所定の目標符号量を超えないように符号量を制御する符号量制御手段と；ブロック単位の符号データが所定の目標符号量に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加する書き込み位置調整手段と；符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするメモリ手段とを設け；所定のブロック単位に固定長符号データを保存、または、読み出しすることができるようにしている。
【００２０】
この構成においては、ブロックの符号量が目標符号量と合致するので、固定量符号データとなり、ブロック単位で切出が容易となり、切り貼り処理や回転処理等を簡便に行うことができる。
【００２１】
なお、目的符号量より大きな固定の所定値までダミーのスタッフビットを付加してもよい。
【００２２】
この構成において、上述の構成の画像符号化復号装置は、前記メモリ手段から読み出された固定長符号データを復号する固定長符号復号手段を設けることにより、スタッフビットを含む固定長符号データを復号することが好ましい。
【００２３】
また、上述の構成の画像符号化復号装置は、前記メモリ手段から読み出された固定長符号データからスタッフビットを除去するダミーデータ除去手段を設けることにより、スタッフビットを含む固定長符号データをスタッフビットを含まない可変長符号データに変換することが好ましい。
【００２４】
また、本発明の他の側面によれば、上述の問題を解消するために、画像を所定のブロック単位にＤＣＴ変換し、ＤＣＴ変換されたデータを量子化し、量子化されたデータを可変長符号化して符号データを出力する画像符号化復号装置に：ブロック単位の符号データが所定の目標符号量を超えないように符号量を制御する符号量制御手段と；ブロック単位の符号データが所定の目標符号量に満たない場合に次ブロックの符号データの書き込み位置を所定の位置に移す書き込み位置調整手段と；符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするメモリ手段とを設け、所定のブロック単位に符号データを保存、または、読み出しすることができるようにしている。
【００２５】
この構成においても、ブロックの符号量が目標符号量と合致するので、固定量符号データとなり、ブロック単位で切出が容易となり、切り貼り処理や回転処理等を簡便に行うことができる。
【００２６】
なお、書き込み位置は、基本的には目標符号量に対応したものであるが、目標符号量より大きな所定の符号量に対応したものでもよい。
【００２７】
また、上述の構成の画像符号化復号装置は、直前ブロックのＤＣ係数を参照しないで符号化対象ブロックを可変長符号化する可変長符号化手段を設けることにより、直前ブロックに依存しない符号データを生成するようにすることが好ましい。
【００２８】
さらに、上述の本発明の一側面または他の側面に従って構成された画像符号化復号装置は、符号データのＤＣ係数のみ復号するＤＣ係数復号手段と、直前ブロックのＤＣ係数との差分を符号化するＤＣ差分符号化手段と、前記メモリ手段から読み出された符号データのＡＣ係数の符号とＤＣ差分符号化手段から出力されたＤＣ差分の符号を結合して可変長符号データを出力する符号結合手段とを設けることにより、所定のブロック単位に可変長符号データを出力することが好ましい。
【００２９】
なお、本発明は、画像符号化復号装置に関するものであるが、画像符号化または画像復号の一方の機能しか持たない装置も、その技術的範囲に含まれる。
【００３０】
また、本発明は、方法の態様としても実現可能であり、少なくともその一部をコンピュータソフトウェアとして実現可能なことはもちろんである。
【００３１】
本発明の上述の側面および本発明の他の側面は特許請求の範囲に記載されるとおりであり、以下、実施例を用いて詳細に説明される。
【００３２】
【発明の実施の態様】
以下、本発明を詳細に説明する。まず、原理的な構成を説明する。
【００３３】
［原理的な構成］
図１は本発明の画像符号化復号装置の原理的な構成例を示しており、この図において、画像符号化復号装置は、可変長符号化手段１、符号量制御手段２、書き込み位置調整手段３、メモリ手段４、ダミーデータ除去手段５、ＤＣ係数復号手段６、ＤＣ差分符号化手段７、符号結合手段８、および固定長符号復号手段９を含んで構成されている。
【００３４】
可変長符号化手段１は、画像データ１０を入力して所定のブロック単位にＤＣＴ変換を施し、直前ブロックのＤＣ係数を参照して可変長符号化し、もしくは直前ブロックのＤＣ係数を参照しないで可変長符号化し、符号量制御信号１２がオフであるかぎりブロック最後のＡＣ係数まで符号化処理を継続し、符号量制御信号１２がオンになると直前に符号化したＡＣ係数の符号データを削除し、ＥＯＢ（Ｅｎｄ  ｏｆ  Ｂｌｏｃｋ）を付加して符号化処理を打ち切り、可変長符号データ１１を出力する。
【００３５】
符号量制御手段２は、可変長符号データ１１の符号量をカウントし、所定の目標符号量と比較して、符号データが目標符号量よりも大きくなった場合、符号量制御信号１２をオンにして可変長符号化手段１に出力することにより所定の目標符号量を超えないように符号量を制御する。
【００３６】
書き込み位置調整手段３は、可変長符号データ１１が所定の目標符号量に満たない場合、目標符号量に達するまでダミーのスタッフビットを付加して所定の目標符号量にして符号データ１３を出力する。書き込み位置調整手段３は、次ブロックの符号データの書き込み位置を所定の位置に移す構成でもよい。
【００３７】
メモリ手段４は、ブロック毎の所定の位置に符号データ１３を保存し、ブロック毎の所定の位置から符号データ１４を読み出して、切り貼り処理や回転処理がブロック単位に実施できるようにする。
【００３８】
ダミーデータ除去手段５は、メモリ手段４から読み出された符号データ１４からスタッフビットを除去して可変長符号データ１５を出力する。
【００３９】
ＤＣ係数復号手段６は、スタッフビットが除去された可変長符号データ１５に対して、ＤＣ係数のみ復号してＤＣ係数１６を出力する。
【００４０】
ＤＣ差分符号化手段７は、直前ブロックのＤＣ係数を保持し、符号化対象ブロックのＤＣ係数１６との差分を符号化してＤＣ差分符号データ１７を出力する。
【００４１】
符号結合手段８は、可変長符号データ１５のＡＣ係数符号データとＤＣ差分符号データ１７を結合して可変長符号データ１８を出力する、または、可変長符号データ１５をそのまま可変長符号データ１８として出力する。
【００４２】
固定長符号復号手段９は、符号データ１４にスタッフビットが含まれる場合、スタッフビットを削除してから復号処理を実施し、復号画像データ１９を出力する。
【００４３】
この構成によれば、ブロック毎の所定の位置に符号データ１３が保存され、ブロック毎の所定の位置から符号データ１４を読み出すことができ、切り貼り処理や回転処理等をブロック単位に実施できる。
【００４４】
［実施例］
つぎに本発明の具体的な実施例について説明する。まず、実施例の画像符号化復号装置の構成について説明する。
【００４５】
図２は、実施例の画像符号化復号装置を示しており、この図において、画像符号化復号装置は、ブロック化回路２０１、ＤＣＴ変換回路２０２、量子化テーブル選択回路２０３、ＤＣＴ係数量子化回路２０４、ＤＣ係数符号化回路２０５、ＡＣ係数符号化回路２０６、可変長符号構成回路２０７、符号量制御回路２０８、ビットスタッフ回路２０９、ページメモリ２１０、スタッフビット除去回路２１１、ＤＣ係数復号回路２１２、ＤＣ差分符号化回路２１３、および符号結合回路２１４を含んで構成されている。
【００４６】
ブロック化回路２０１は、ラスタ・スキャン順に１画素づつ入力される画像データ２２０から８×８画素のブロック単位の画像を構成してブロック画像２２１として出力する。
【００４７】
ＤＣＴ変換回路２０２は、ブロック画像２２１をＤＣＴ変換してＤＣＴ係数２２２を出力する。
【００４８】
量子化テーブル選択回路２０３は、ＤＣＴ係数２２２を分析して量子化テーブル２２３を選択する。
【００４９】
ＤＣＴ係数量子化回路２０４は、ＤＣＴ係数２２２を量子化テーブル２２３に基づいて量子化する。
【００５０】
ＤＣ係数符号化回路２０５は、直前ブロックのＤＣ係数を参照しないで符号化対象ブロックのＤＣ係数２２４を符号化して、ＤＣ係数符号データ２２５を出力する、もしくは、直前ブロックのＤＣ係数を参照し、ＤＣ差分を符号化してＤＣ係数符号データ２２５を出力する。
【００５１】
ＡＣ係数符号化回路２０６は、ＤＣＴ変換のＡＣ係数２２６を符号化してＡＣ係数符号データ２２７を出力する。符号化打ち切り信号２２９が入力されないかぎりブロック最後のＡＣ係数まで符号化処理を継続し、符号化打ち切り信号２２９が入力されると直前に符号化したＡＣ係数の符号データを削除し、ＥＯＢ（Ｅｎｄ  ｏｆ  Ｂｌｏｃｋ）を付加して符号化処理を打ち切る。
【００５２】
可変長符号構成回路２０７は、ＤＣ係数符号データ２２５とＡＣ係数符号データ２２７を結合して可変長符号データ２２８を出力する。
【００５３】
符号量制御回路２０８は、可変長符号データ２２８の符号量をカウントし、所定の目標符号量と比較して、符号データが目標符号量よりも大きくなった場合、符号化打ち切り信号２２９をＡＣ係数符号化回路２０６に出力して所定の目標符号量を超えないように符号量を制御する。
【００５４】
ビットスタッフ回路２０９は、可変長符号データ２２８の符号量が所定の目標符号量に満たない場合は、目標符号量に達するまでダミーのスタッフビットを付加して固定長符号データ２３０を出力し、可変長符号データ２２８の符号量が所定の目標符号量である場合は、そのまま固定長符号データ２３０として出力する。
【００５５】
ページメモリ２１０は、固定長符号データ２３０をブロック単位に保存する、または、ブロック単位に固定長符号データ２３１を読み出しする。
【００５６】
スタッフビット除去回路２１１は、ページメモリ２１０から読み出された固定長符号データ２３１にダミーのスタッフビットが付加されていない場合は、そのまま可変長符号データ２３２として出力し、固定長符号データ２３１にダミーのスタッフビットが付加されている場合は、スタッフビットを除去して可変長符号データ２３２を出力する。
【００５７】
ＤＣ係数復号回路２１２は、スタッフビットが除去された可変長符号データ２３２からＤＣ係数のみを復号してＤＣ係数２３３を出力する。
【００５８】
ＤＣ差分符号化回路２１３は、直前ブロックのＤＣ係数を保持しておき、符号化対象ブロックのＤＣ係数２３３との差分を符号化してＤＣ差分符号データ２３４を出力する。
【００５９】
符号結合回路２１４は、可変長符号データ２３２のＡＣ係数符号データとＤＣ差分符号データ２３４を結合して可変長符号データ２３５を出力する、または、可変長符号データ２３２をそのまま可変長符号データ２３５として出力する。
【００６０】
つぎに、実施例の画像符号化復号装置の動作について図２〜図１３を参照して説明する。
【００６１】
図２において、ブロック化回路２０１は、画像データ２２０を図７に示すフロー処理により８×８画素のブロックに分割し、ブロック画像２２１としてＤＣＴ変換回路２０２に出力する。
【００６２】
ＤＣＴ変換回路２０２は、ブロック画像２２１を図８と図９に示す２次元ＤＣＴ変換により８×８個のＤＣＴ係数２２２に変換し、ＤＣＴ係数２２２を量子化テーブル選択回路２０３とＤＣＴ係数量子化回路２０４に出力する。
【００６３】
量子化テーブル選択回路２０３は、図３（ｂ）に示すフロー処理により量子化テーブル２２３を選択する。図３（ｂ）の記号は図３（ａ）に示すとおりである。ＤＣＴ係数２２２の低周波数成分の合計値が第１の閾値以上であり、かつ、ＡＣ係数全体に対する高周波成分の割合が第２の閾値以下である場合は第１の量子化テーブルを選択し、そうでない場合は第２の量子化テーブルを選択して、ＤＣＴ係数量子化回路２０４が使用する量子化テーブル２２３を選択する。
【００６４】
ＤＣＴ係数量子化回路２０４は、ＤＣＴ係数２２２を各係数ごとに量子化ステップサイズを定めた量子化テーブル２２３を用いて量子化する。さらに量子化した係数のうち直流成分であるＤＣ係数２２４をＤＣ係数符号化回路２０５へ出力し、それ以外のＡＣ係数２２６をＡＣ係数符号化回路２０６へ出力する。
【００６５】
ＤＣ係数符号化回路２０５は、図１１の表に従ってＤＣ係数をグループ化し、グループ化されたＤＣ係数をグループ番号とＤＣ係数の値を示す付加ビットに対応づけ、グループ番号を１次元ハフマン符号化し、付加ビットをつけて、ＤＣ係数符号データ２２５として可変長符号構成回路２０７に出力する。ＤＣ係数符号化回路２０５は、直前ブロックのＤＣ係数を参照してもよい。この場合は、符号化対象ブロックと直前ブロックのＤＣ差分を図１１の表に従ってグループ化し、グループ化されたＤＣ差分をグループ番号とＤＣ差分の値を示す付加ビットに対応づけ、グループ番号を１次元ハフマン符号化し、付加ビットをつけて、ＤＣ係数符号データ２２５として可変長符号構成回路２０７に出力する。
【００６６】
ＡＣ係数符号化回路２０６は、２次元に配置されたＡＣ係数を図１２におけるジグザグスキャンによって図９に示す実線矢印の順序で１次元に並び換え、各係数が０かどうかを判定する。０の場合、連続するランの長さをカウントする。０でない場合は図１３の表に従ってグループ化する。グループ化されたＡＣ係数をグループ番号とＡＣ係数の値を示す付加ビットに対応づけ、ラン長（ＮＮＮＮ）とグループ番号（ＳＳＳＳ）を２次元ハフマン符号化し、付加ビットをつけて、ＡＣ係数符号データ２２７として可変長符号構成回路２０７に出力する。
【００６７】
可変長符号構成回路２０７は、ＤＣ係数符号データ２２５とＡＣ係数符号データ２２７を結合して可変長符号データ２２８を出力する。
【００６８】
符号量制御回路２０８は、可変長符号データ２２８の符号量をカウントし、所定の目標符号量と比較して、符号データが目標符号量よりも大きくなった場合、符号化打ち切り信号２２９をＡＣ係数符号化回路２０６に出力する。符号化打ち切り信号２２９によりＡＣ係数符号化回路２０６は直前に符号化したＡＣ係数の符号データを削除し、ＥＯＢ（Ｅｎｄ  ｏｆ  Ｂｌｏｃｋ）（ＮＮＮＮ＝０，ＳＳＳＳ＝０）を付加して符号化処理を打ち切ることにより、所定の目標符号量を超えないように符号量を制御する。例えば、図４において、第ｉブロックの符号データは目標符号量より小さいので符号化打ち切り信号２２９は出力しないが、第ｊブロックの符号データは目標符号量を超えているので符号化打ち切り信号２２９を出力する。符号化打ち切り信号２２９により第ｊブロックの符号データはｊ５の符号が削除されてＥＯＢが付加される。
【００６９】
ビットスタッフ回路２０９は、図５に示すフロー処理により可変長符号データ２２８の符号量が所定の目標符号量に満たない場合は、目標符号量に達するまでダミーのスタッフビットを付加して固定長符号データ２３０を出力し、可変長符号データ２２８の符号量が所定の目標符号量である場合は、そのまま固定長符号データ２３０としてページメモリ２１０に出力する。
【００７０】
ページメモリ２１０は、固定長符号データ２３０をブロック単位に保存する。各ブロックの符号データは固定長であるため、切り貼り処理や回転処理を実施する場合には、処理対象のブロックの番号から符号データの位置が一意的に決定できるので、先頭の符号から処理対象の符号データまで復号しなくても処理対象の符号データにアクセス可能である。また、切り貼り処理や回転処理が施された固定長符号データ２３１をページメモリ２１０から読み出しできる。
【００７１】
スタッフビット除去回路２１１は、図６に示すフロー処理によりページメモリ２１０から読み出された固定長符号データ２３１にダミーのスタッフビットが付加されていない場合は、そのまま可変長符号データ２３２として出力し、固定長符号データ２３１にダミーのスタッフビットが付加されている場合は、スタッフビットを除去して可変長符号データ２３２を出力する。
【００７２】
ＤＣ係数復号回路２１２は、スタッフビットが除去された可変長符号データ２３２からＤＣ係数のみを復号してＤＣ係数２３３をＤＣ差分符号化回路２１３に出力し、ＤＣ差分符号化回路２１３は、直前ブロックのＤＣ係数を保持しておき、符号化対象ブロックのＤＣ係数２３３との差分を符号化してＤＣ差分符号データ２３４を符号結合回路２１４に出力する。
【００７３】
符号結合回路２１４は、可変長符号データ２３２のＡＣ係数符号データとＤＣ差分符号データ２３４を結合して可変長符号データ２３５を出力する。符号結合回路２１４は、可変長符号データ２３２をそのまま可変長符号データ２３５として出力してもよい。
【００７４】
【発明の効果】
以上で説明したように、本発明によれば、例えば、ブロック単位の符号データが所定の目標符号量を超えないように符号量を制御する符号量制御手段と、ブロック単位の符号データが所定の目標符号量に満たない場合に目標符号量に達するまでダミーのスタッフビットを付加する、もしくは、次ブロックの符号データの書き込み位置を所定の位置に移す書き込み位置調整手段と、符号データをブロック毎の所定の位置に保存、または、ブロック毎の所定の位置から読み出しするメモリ手段を設け、可変長符号化された画像データをブロック毎の所定の位置に保持することにより、符号データに対する部分的な切り貼り処理や回転処理などに対して、先頭の符号データから処理対象の符号データまで復号しなくても処理対象の符号データに直接アクセスできるようにしているので、処理対象以外の符号データを復号する必要がなくなり処理効率のよい画像符号化復号装置を提供することができる。
【００７５】
さらに、直前ブロックのＤＣ係数を参照しないで符号化対象ブロックを可変長符号化する可変長符号化手段を設け、直前ブロックに依存しない符号データを生成することにより、ブロックごとの符号データの依存性をなくしているので、切り貼り処理や回転処理の対象となるブロック単位で処理が可能となり、処理対象以外の符号データを復号する必要がなくなるので、切り貼り処理や回転処理に適した画像符号化復号装置を提供することができる。
【００７６】
さらに、メモリ手段から読み出された固定長符号データからスタッフビットを除去するダミーデータ除去手段と、符号データのＤＣ係数のみ復号するＤＣ係数復号手段と、直前ブロックのＤＣ係数との差分を符号化するＤＣ差分符号化手段と、スタッフビットが除去された可変長符号データのＡＣ係数の符号とＤＣ差分符号化手段から出力されたＤＣ差分の符号を結合して可変長符号データを出力する符号結合手段を設け、固定長符号データを符号長の短い可変長符号データに変換することにより、保存処理や伝送処理に適した可変長符号データを出力する画像符号化復号装置を提供することができる。
【００７７】
【図面の簡単な説明】
【図１】  本発明の原理的な構成例を示すブロック図である。
【図２】  本発明の実施例の構成を示すブロック図である。
【図３】  実施例の量子化テーブル選択回路２０３の処理フロー例を示す図である。
【図４】  実施例の符号量制御回路２０８の動作を説明する図である。
【図５】  実施例のビットスタッフ回路２０９の処理フロー例を示す図である。
【図６】  実施例のスタッフビット除去回路２１１の処理フロー例を示す図である。
【図７】  実施例のブロック化回路２０１の処理フロー例を示す図である。
【図８】  実施例の２次元ＤＣＴ変換の例を示す図である。
【図９】  実施例のブロック内のＤＣ係数とＡＣ係数、ジグザグスキャン順序の例を示す図である。
【図１０】  実施例のＤＣ係数符号化回路２０５の例を示す図である。
【図１１】  実施例のＤＣ係数のグループ化の例を示す図である。
【図１２】  実施例のＡＣ係数符号化回路の例を示す図である。
【図１３】  実施例のＡＣ係数のグループ化の例を示す図である。
【図１４】  回転処理による参照ブロックのずれを説明する図である。
【図１５】  第１の従来例の構成を示す図である。
【図１６】  第２の従来例の構成を示す図である。
【符号の説明】
１      可変長符号化手段
２      符号量制御手段
３      位置調整手段
４      メモリ手段
５      ダミーデータ除去手段
６      ＤＣ係数復号手段
７      ＤＣ差分符号化手段
８      符号結合手段
９      固定長符号復号手段
１０      画像データ
１１      可変長符号データ
１２      符号量制御信号
１３      符号データ
１４      符号データ
１５      可変長符号データ
１６      ＤＣ係数
１７      ＤＣ差分符号データ
１８      可変長符号データ
１９      復号画像データ
２０１      ブロック化回路
２０２      ＤＣＴ変換回路
２０３      量子化テーブル選択回路
２０４      ＤＣＴ係数量子化回路
２０５      ＤＣ係数符号化回路
２０６      ＡＣ係数符号化回路
２０７      可変長符号構成回路
２０８      符号量制御回路
２０９      ビットスタッフ回路
２１０      ページメモリ
２１１      スタッフビット除去回路
２１２      ＤＣ係数復号回路
２１３      ＤＣ差分符号化回路
２１４      符号結合回路
２２０      画像データ
２２１      ブロック画像
２２２      ＤＣＴ係数
２２３      量子化テーブル
２２４      ＤＣ係数
２２５      ＤＣ係数符号データ
２２６      ＡＣ係数
２２７      ＡＣ係数符号データ
２２８      可変長符号データ
２２９      符号化打ち切り信号
２３０      固定長符号データ
２３１      固定長符号データ
２３２      可変長符号データ
２３３      ＤＣ係数
２３４      ＤＣ差分符号データ
２３５      可変長符号データ
【図１】
0003835273.tif 000002
【図２】
0003835273.tif 000003
【図３】
0003835273.tif 000004
【図４】
0003835273.tif 000005
【図５】
0003835273.tif 000006
【図６】
0003835273.tif 000007
【図７】
0003835273.tif 000008
【図８】
0003835273.tif 000009
【図９】
0003835273.tif 000010
【図１０】
0003835273.tif 000011
【図１１】
0003835273.tif 000012
【図１２】
0003835273.tif 000013
【図１３】
0003835273.tif 000014
【図１４】
0003835273.tif 000015
【図１５】
0003835273.tif 000016
【図１６】
0003835273.tif 000017